Edge কীভাবে কনফিগার করতে হয়

ইনস্টলেশনের পরে Edge কনফিগার করতে, আপনি .properties ফাইল ও Edge ইউটিলিটি ব্যবহার করেন। যেমন, Edge UI-তে TLS/SSL কনফিগার করতে, প্রয়োজনীয় প্রপার্টি সেট করতে .properties ফাইল এডিট করুন। .properties ফাইলে করা পরিবর্তন প্রয়োগ করতে প্রভাবিত Edge কম্পোনেন্ট রিস্টার্ট করতে হবে।

Apigee, .properties ফাইল এডিট করার টেকনিককে কনফিগারেশন সহ কোড (কখনও কখনও CwC হিসেবে সংক্ষিপ্ত করা হয়) হিসেবে উল্লেখ করে। মূলত, কোড উইথ কনফিগার হল একটি কী/ভ্যালু লুক-আপ টুল যা .properties ফাইলের সেটিংসের উপর ভিত্তি করে কাজ করে। কনফিগারেশন সহ কোডে, কীগুলিকে টোকেন হিসেবে উল্লেখ করা হয়। তাই, Edge কনফিগার করতে, আপনি .properties ফাইলে টোকেন সেট করেন।

কনফিগারেশন সহ কোড, Edge কম্পোনেন্টকে ডিফল্ট ভ্যালু সেট করতে দেয় যা প্রোডাক্টের সাথে শিপ করা হয়, ইনস্টলেশন টিমকে ইনস্টলেশন টপোলজি অনুযায়ী সেইসব সেটিংস ওভাররাইড করতে দেয়, এবং তারপর গ্রাহকদের তাদের বেছে নেওয়া যেকোনও প্রপার্টি ওভাররাইড করতে দেয়।

আপনি যদি এটিকে একটি হায়ারার্কি হিসেবে দেখেন, তাহলে সেটিংসগুলি নিম্নলিখিতভাবে সাজানো হয়, যেখানে গ্রাহকের সেটিংসের সর্বোচ্চ অগ্রাধিকার থাকে যাতে ইনস্টলার টিম বা Apigee-এর যেকোনও সেটিংস ওভাররাইড করা যায়:

  1. গ্রাহক
  2. ইনস্টলার
  3. কম্পোনেন্ট

টোকেনের বর্তমান ভ্যালু নির্ধারণ করা

.properties ফাইলে টোকেনের জন্য নতুন ভ্যালু সেট করার আগে, আপনাকে নিম্নলিখিত কমান্ড ব্যবহার করে প্রথমে এর বর্তমান ভ্যালু নির্ধারণ করতে হবে:

/opt/apigee/apigee-service/bin/apigee-service component_name configure -search token

যেখানে component_name হল কম্পোনেন্টের নাম এবং token হল টোকেন যা পরীক্ষা করতে হবে।

এই কমান্ড কম্পোনেন্টের .properties ফাইলের হায়ারার্কি সার্চ করে টোকেনের বর্তমান ভ্যালু নির্ধারণ করে।

নিচের উদাহরণটি রাউটারের জন্য conf_http_HTTPRequest.line.limit টোকেনের বর্তমান ভ্যালু চেক করে:

/opt/apigee/apigee-service/bin/apigee-service edge-router configure -search conf_http_HTTPRequest.line.limit

আপনি নিম্নলিখিত আউটপুট দেখতে পাবেন:

Found key conf_http_HTTPRequest.line.limit, with value, 4k, in /opt/apigee/edge-router/token/default.properties

টোকেনের ভ্যালু # দিয়ে শুরু হলে, সেটি কমেন্ট আউট করা হয়েছে এবং আপনাকে এটি পরিবর্তন করতে বিশেষ সিনট্যাক্স ব্যবহার করতে হবে। আরও তথ্যের জন্য, বর্তমানে কমেন্ট করা টোকেন সেট করুন দেখুন।

আপনি টোকেনের সম্পূর্ণ নাম না জানলে, প্রপার্টির নাম বা কীওয়ার্ড দিয়ে সার্চ করতে grep-এর মতো টুল ব্যবহার করুন । আরও তথ্যের জন্য, টোকেন লোকেট করুন দেখুন।

প্রপার্টি ফাইল

এডিট করা যায় ও যায় না এমন কম্পোনেন্ট কনফিগারেশন ফাইল আছে। এই বিভাগে এইসব ফাইলের বর্ণনা দেওয়া আছে।

এডিট করা যায় এমন কম্পোনেন্ট কনফিগারেশন ফাইল

নিচের সারণীতে Apigee কম্পোনেন্ট ও প্রপার্টি ফাইলের তালিকা দেওয়া হল, যেগুলি আপনি এডিট করে সেইসব কম্পোনেন্ট কনফিগার করতে পারবেন:

কম্পোনেন্ট কম্পোনেন্টের নাম এডিট করা যায় এমন কনফিগারেশন ফাইল
Cassandra apigee-cassandra /opt/apigee/customer/application/cassandra.properties
Apigee SSO apigee-sso /opt/apigee/customer/application/sso.properties
ম্যানেজমেন্ট সার্ভার edge-management-server /opt/apigee/customer/application/management-server.properties
মেসেজ প্রসেসর edge-message-processor /opt/apigee/customer/application/message-processor.properties
apigee-monit apigee-monit /opt/apigee/customer/application/monit.properties
ক্লাসিক UI (নতুন Edge UI-এর উপর কোনও প্রভাব ফেলে না) edge-ui /opt/apigee/customer/application/ui.properties
Edge UI (শুধুমাত্র নতুন Edge UI; ক্লাসিক UI-এর উপর প্রভাব ফেলে না) apigee-management-ui /opt/apigee/customer/application/management-ui.properties
OpenLDAP apigee-openldap /opt/apigee/customer/application/openldap.properties
Postgres সার্ভার edge-postgres-server /opt/apigee/customer/application/postgres-server.properties
PostgreSQL ডেটাবেস apigee-postgresql /opt/apigee/customer/application/postgresql.properties
Qpid সার্ভার edge-qpid-server /opt/apigee/customer/application/qpid-server.properties
Qpidd apigee-qpidd /opt/apigee/customer/application/qpidd.properties
রাউটার edge-router /opt/apigee/customer/application/router.properties
চিড়িয়াখানার কর্মী apigee-zookeeper /opt/apigee/customer/application/zookeeper.properties

আপনি যদি এইসব কম্পোনেন্ট কনফিগারেশন ফাইলের মধ্যে কোনও একটিতে কোনও প্রপার্টি সেট করতে চান কিন্তু সেটি বিদ্যমান না থাকে, তাহলে উপরে তালিকাভুক্ত লোকেশনে সেটি তৈরি করতে পারবেন।

এছাড়াও, আপনাকে অবশ্যই নিশ্চিত করতে হবে যে প্রপার্টি ফাইলের মালিক "apigee" ব্যবহারকারী:

chown apigee:apigee /opt/apigee/customer/application/configuration_file.properties

এডিট করা যায় না এমন কম্পোনেন্ট কনফিগারেশন ফাইল

এডিট করা যায় এমন কম্পোনেন্ট কনফিগারেশন ফাইল ছাড়াও, এমন কনফিগারেশন ফাইল থাকে যা আপনি এডিট করতে পারবেন না।

তথ্যমূলক (এডিট করা যায় না) ফাইলের মধ্যে নিম্নলিখিত বিষয়গুলি অন্তর্ভুক্ত:

মালিক ফাইলের নাম বা ডিরেক্টরি
ইনস্টল করা
/opt/apigee/token
কম্পোনেন্ট
/opt/apigee/component_name/conf

যেখানে component_name কম্পোনেন্টকে শনাক্ত করে। সম্ভাব্য ভ্যালুর মধ্যে এগুলি অন্তর্ভুক্ত:

  • apigee-cassandra (Cassandra)
  • apigee-openldap (OpenLDAP)
  • apigee-postgresql (PostgreSQL ডেটাবেস)
  • apigee-qpidd (Qpidd)
  • apigee-sso (Edge SSO)
  • apigee-zookeeper (ZooKeeper)
  • edge-management-server (ম্যানেজমেন্ট সার্ভার)
  • edge-management-ui (নতুন Edge UI)
  • edge-message-processor (মেসেজ প্রসেসর)
  • edge-postgres-server (Postgres সার্ভার)
  • edge-qpid-server (Qpid সার্ভার)
  • edge-router (এজ রাউটার)
  • edge-ui (ক্লাসিক UI)

টোকেন ভ্যালু সেট করা

আপনি শুধুমাত্র /opt/apigee/customer/application ডিরেক্টরিতে .properties ফাইলগুলি পরিবর্তন করতে পারবেন। প্রতিটি কম্পোনেন্টের নিজস্ব .properties ফাইল সেই ডিরেক্টরিতে থাকে। যেমন, router.properties এবং management-server.properties. প্রপার্টি ফাইলের সম্পূর্ণ তালিকা দেখতে, .properties ফাইলের লোকেশন দেখুন।

.properties ফাইল তৈরি করতে:

  1. এডিটরে নতুন টেক্সট ফাইল তৈরি করুন। গ্রাহকের ফাইলের জন্য উপরে দেখানো টেবিলে দেখানো তালিকার সাথে ফাইলের নাম অবশ্যই মিলতে হবে।
  2. নিচের উদাহরণে দেখানো হয়েছে সেইভাবে ফাইলের মালিককে "apigee:apigee" হিসেবে পরিবর্তন করুন:
    chown apigee:apigee /opt/apigee/customer/application/router.properties

    আপনি যদি "apigee" ব্যবহারকারী থেকে Edge পরিষেবা চালানো ব্যবহারকারীকে পরিবর্তন করে থাকেন, তাহলে Edge পরিষেবা চালানো ব্যবহারকারীর মালিকানা পরিবর্তন করতে chown ব্যবহার করুন।

আপনি Edge আপগ্রেড করলে, /opt/apigee/customer/application ডিরেক্টরির .properties ফাইলগুলি পড়া হয়। এর অর্থ হল, আপগ্রেড করার পরে কম্পোনেন্টে আপনার সেট করা যেকোনও প্রপার্টি থেকে যাবে।

টোকেনের ভ্যালু সেট করতে:

  1. কম্পোনেন্টের .properties ফাইল এডিট করুন।
  2. টোকেনের ভ্যালু যোগ বা পরিবর্তন করুন। নিচে দেওয়া উদাহরণটি conf_http_HTTPRequest.line.limit প্রপার্টির ভ্যালু "10k" হিসেবে সেট করে:
    conf_http_HTTPRequest.line.limit=10k

    টোকেন একাধিক মান নিলে, প্রতিটি মান কমা দিয়ে আলাদা করুন, যেমনটি নিম্নলিখিত উদাহরণে দেখানো হয়েছে:

    conf_security_rbac.restricted.resources=/environments,/environments/*,/environments/*/virtualhosts,/environments/*/virtualhosts/*,/pods,/environments/*/servers,/rebuildindex,/users/*/status,/myuri/*

    এই ধরনের তালিকায় নতুন ভ্যালু যোগ করতে, সাধারণত তালিকার শেষে নতুন ভ্যালু যোগ করা হয়।

  3. কম্পোনেন্ট রিস্টার্ট করুন:
    /opt/apigee/apigee-service/bin/apigee-service component_name restart

    যেখানে component_name হল নিম্নলিখিতগুলির মধ্যে একটি:

    • apigee-cassandra (Cassandra)
    • apigee-openldap (OpenLDAP)
    • apigee-postgresql (PostgreSQL ডেটাবেস)
    • apigee-qpidd (Qpidd)
    • apigee-sso (Edge SSO)
    • apigee-zookeeper (ZooKeeper)
    • edge-management-server (ম্যানেজমেন্ট সার্ভার)
    • edge-management-ui (নতুন Edge UI)
    • edge-message-processor (মেসেজ প্রসেসর)
    • edge-postgres-server (Postgres সার্ভার)
    • edge-qpid-server (Qpid সার্ভার)
    • edge-router (এজ রাউটার)
    • edge-ui (ক্লাসিক UI)

    যেমন, router.properties এডিট করার পরে, রাউটার রিস্টার্ট করুন:

    /opt/apigee/apigee-service/bin/apigee-service edge-router restart
  4. (ঐচ্ছিক) configure -search বিকল্প ব্যবহার করে টোকেন ভ্যালু আপনার নতুন ভ্যালুতে সেট করা হয়েছে কিনা তা চেক করুন। যেমন:
    /opt/apigee/apigee-service/bin/apigee-service edge-router configure -search conf_http_HTTPRequest.line.limit

    configure -search সম্পর্কে আরও তথ্যের জন্য, এখানে দেখুন: টোকেনের বর্তমান ভ্যালু নির্ধারণ করুন।

টোকেন খুঁজে পাওয়া

বেশিরভাগ ক্ষেত্রে, আপনাকে যেসব টোকেন সেট করতে হবে সেগুলি এই নির্দেশিকায় শনাক্ত করা হয়েছে। তবে, আপনি যদি এমন কোনও আগে থেকে থাকা টোকেনের ভ্যালু ওভাররাইড করতে চান যার সম্পূর্ণ নাম বা লোকেশন সম্পর্কে আপনি নিশ্চিত নন, তাহলে কম্পোনেন্টের source ডিরেক্টরি সার্চ করতে grep ব্যবহার করুন।

যেমন, আপনি যদি জানেন যে Edge-এর আগের কোনও রিলিজে আপনি session.maxAge প্রপার্টি সেট করেছেন এবং এটি সেট করার জন্য ব্যবহৃত টোকেন ভ্যালু জানতে চান, তাহলে /opt/apigee/edge-ui/source ডিরেক্টরিতে প্রপার্টির জন্য grep দেখুন:

grep -ri "session.maxAge" /opt/apigee/edge-ui/source

আপনি নিম্নলিখিত ফর্ম্যাটে ফলাফল দেখতে পাবেন:

/opt/apigee/component_name/source/conf/application.conf:property_name={T}token_name{/T}

নিম্নলিখিত উদাহরণে UI-এর session.maxAge টোকেনের ভ্যালু দেখানো হয়েছে:

/opt/apigee/edge-ui/source/conf/application.conf:session.maxAge={T}conf_application_session.maxage{/T}

{T}{/T} ট্যাগের মধ্যে থাকা স্ট্রিং হল টোকেনের নাম যা আপনি UI-এর .properties ফাইলে সেট করতে পারেন।

বর্তমানে কমেন্ট করা আছে এমন টোকেন সেট করুন

Edge কনফিগারেশন ফাইলে কিছু টোকেন কমেন্ট করা আছে। আপনি যদি এমন কোনও টোকেন সেট করার চেষ্টা করেন যা ইনস্টল বা কম্পোনেন্ট কনফিগারেশন ফাইলে কমেন্ট করা আছে, তাহলে আপনার সেটিং উপেক্ষা করা হবে।

Edge কনফিগারেশন ফাইলে কমেন্ট করা টোকেনের ভ্যালু সেট করতে, নিম্নলিখিত ফর্ম্যাটে বিশেষ সিনট্যাক্স ব্যবহার করুন:

conf/filename+propertyName=propertyValue

যেমন, Message Processor-এ HTTPClient.proxy.host নামের প্রপার্টি সেট করতে, প্রথমে প্রপার্টির টোকেন নির্ধারণ করতে grep:

grep -ri /opt/apigee/edge-message-processor/ -e "HTTPClient.proxy.host"

grep কমান্ড টোকেনের নাম সহ ফলাফল রিটার্ন করে। # প্রিফিক্স দিয়ে চিহ্নিত করা প্রপার্টির নাম কীভাবে কমেন্ট আউট করা হয়েছে তা লক্ষ্য করুন:

source/conf/http.properties:#HTTPClient.proxy.host={T}conf_http_HTTPClient.proxy.host{/T}
token/default.properties:conf_http_HTTPClient.proxy.host=
conf/http.properties:#HTTPClient.proxy.host=

এই প্রপার্টির ভ্যালু সেট করতে, এডিট করুন /opt/apigee/customer/application/message-processor.properties, কিন্তু একটি বিশেষ সিনট্যাক্স ব্যবহার করুন, যেমনটি নিম্নলিখিত উদাহরণে দেখানো হয়েছে:

conf/http.properties+HTTPClient.proxy.host=myhost.name.com

এই ক্ষেত্রে, আপনাকে অবশ্যই প্রপার্টির নামের আগে conf/http.properties+ যোগ করতে হবে। এটি হল প্রপার্টি সহ কনফিগারেশন ফাইলের লোকেশন ও নাম, এর পরে "+" চিহ্নটি রয়েছে।

Message Processor রিস্টার্ট করার পরে, ফাইলটি পরীক্ষা করে দেখুন /opt/apigee/edge-message-processor/conf/http.properties:

cat /opt/apigee/edge-message-processor/conf/http.properties

ফাইলের শেষে, আপনি প্রপার্টি সেট দেখতে পাবেন, এই ফর্ম্যাটে:

conf/http.properties:HTTPClient.proxy.host=myhost.name.com

Trace UI-এর 'অনুরোধ পাঠান' বিভাগ থেকে আসা অনুরোধের জন্য ফরওয়ার্ড প্রক্সি কনফিগার করা

এই বিভাগে বর্ণনা করা হয়েছে যে কীভাবে ঐচ্ছিক প্রক্সি ক্রেডেনশিয়াল সহ Trace UI-এর অনুরোধ পাঠান বিভাগ থেকে আসা অনুরোধের জন্য ফরওয়ার্ড প্রক্সি কনফিগার করতে হয়। ফরওয়ার্ড প্রক্সি কনফিগার করতে:

  1. /opt/apigee/customer/application/ui.properties এডিট করুন এবং নিশ্চিত করুন যে ফাইলটি apigee:apigee-এর মালিকানাধীন।
  2. নিম্নলিখিত ওভাররাইড যোগ করুন (আপনার নির্দিষ্ট প্রক্সি কনফিগারেশনে ভ্যালু পরিবর্তন করা):
    conf_application_http.proxyhost=proxy.example.com
    conf_application_http.proxyport=8080
    conf_application_http.proxyuser=apigee
    conf_application_http.proxypassword=Apigee123!
  3. ক্লাসিক UI সেভ করে রিস্টার্ট করুন।

API প্রক্সি তালিকা পৃষ্ঠার জন্য পৃষ্ঠাঙ্কন চালু/বন্ধ করা এবং ব্যাচ সাইজ কনফিগার করা

এই বিভাগে, API প্রক্সি তালিকার জন্য কীভাবে পৃষ্ঠা নম্বর সহ API চালু বা বন্ধ করতে হয় এবং পৃষ্ঠা নম্বর সহ API-এর ব্যাচ সাইজ কীভাবে কনফিগার করতে হয় তা ব্যাখ্যা করা হয়েছে। আমরা পেজিনেশন চালু/বন্ধ করতে এবং পেজিনেটেড API-এর ব্যাচ সাইজ কনফিগার করতে দুটি নতুন কনফিগার করা যায় এমন ওভাররাইড যোগ করেছি।

  1. /opt/apigee/customer/application/ui.properties তৈরি/এডিট করুন এবং নিশ্চিত করুন যে ফাইলটি apigee:apigee-এর মালিকানাধীন।
  2. API প্রক্সি তালিকা পৃষ্ঠার জন্য পৃষ্ঠাঙ্কন চালু বা বন্ধ করতে নিম্নলিখিত ওভাররাইড যোগ করুন।
    conf_apigee-base_apigee.feature.apiproxypaginationenabled={true or false}
  3. প্রক্সি তালিকা পৃষ্ঠার জন্য পেজিনেটেড API-এর ব্যাচ সাইজ কনফিগার করতে নিম্নলিখিত ওভাররাইড যোগ করুন(ঐচ্ছিক)।
    conf_apigee-base_apigee.pagination.apiproxypaginationbatchsize={batch_override_value}
  4. ক্লাসিক UI সেভ করে রিস্টার্ট করুন।

নতুন Edge UI-তে http/2 প্রোটোকল চালু বা বন্ধ করা

এই বিভাগে কীভাবে http/2 প্রোটোকল চালু বা বন্ধ করতে পারবেন তা ব্যাখ্যা করা হয়েছে।

  1. /opt/apigee/customer/application/management-ui.properties তৈরি/এডিট করুন এবং নিশ্চিত করুন যে ফাইলটি apigee:apigee-এর মালিকানাধীন।
  2. http/2 প্রোটোকল চালু বা বন্ধ করতে নিম্নলিখিত ওভাররাইড যোগ করুন।
    conf_uebe_disable_http2={true or false}
  3. New Edge UI সেভ করে রিস্টার্ট করুন।

Apigee Router/Nginx-এ কাস্টম লগ ফর্ম্যাট যোগ করা

কিছু ক্ষেত্রে, আপনাকে ডিফল্ট Apigee Router/Nginx লগ ফর্ম্যাট পরিবর্তন করতে হবে অথবা ভেরিয়েবল যোগ করতে হবে। ডিফল্ট Apigee Router/Nginx লগ ফর্ম্যাট কনফিগারেশন আপডেট করতে:

  1. নিচে দেখানো পাথ সহ router.properties ফাইল তৈরি করুন, যদি এটি না থাকে:
    /opt/apigee/customer/application/router.properties
  2. router.properties ফাইলে নিম্নলিখিত কন্টেন্ট যোগ করে router_new নামের নতুন log_format কনফিগারেশন তৈরি করুন:
    conf_load_balancing_load.balancing.driver.nginx.global.http.parameters.template.extra=log_format router_new 'time_iso8601\\\\thostname\\\\tremote_addr:remote_port\\\\t'\\\\n\\n 'upstream_addr\\\\trequest_time\\\\t-\\\\t-\\\\t'\\\\n\\n 'status\\\\tupstream_status\\\\trequest_length\\\\t'\\\\n\\n 'body_bytes_sent\\\\t'\\\\n\\n 'request\\\\tupstream_http_x_apigee_message_id\\\\t'\\\\n\\n 'http_user_agent\\\\thost\\thostname-pid-connection-connection_requests\\\\tmy_nginx_var_xff\\t'\\\\n\\n 'upstream_http_x_apigee_fault_flag\\\\tupstream_http_x_apigee_fault_source\\\\tupstream_http_x_apigee_fault_code\\\\t'\\\\n\\n 'upstream_http_x_apigee_fault_policy\\tupstream_http_x_apigee_fault_flow\\tupstream_http_x_apigee_fault_revision\\t'\\\\n\\n 'upstream_http_x_apigee_dp_color\\\\tmy_x_apigee_target_latency\\\\t'\\\\n\\n 'upstream_http_x_apigee_proxy\\\\tupstream_http_x_apigee_proxy_basepath\\\\t'\\\\n\\n 'self_region\\\\tself_pod\\\\tself_color\\\\tssl_protocol\\\\tssl_client_verify\\\\tssl_session_id\\\\tssl_session_reused\\\\tupstream_pod\\\\tupstream_region';\\\\n\\n\n
    conf_load_balancing_load.balancing.driver.nginx.access.log={conf_load_balancing_load.balancing.driver.nginx.log.dir}/{org}~{env}.{port}_access_log router_new

    উপরে উল্লিখিত কমান্ডে ভেরিয়েবলগুলি প্রয়োজনমতো আপডেট করুন। নিচের ফাইলে আপনি log_format-এর জন্য ডিফল্ট কনফিগারেশন ভ্যালু দেখতে পাবেন:

    /opt/apigee/edge-router/conf/load_balancing.properties

    Nginx ভেরিয়েবলের একটি তালিকা http://nginx.org/en/docs/varindex.html লিঙ্কে দেখানো হয়েছে।

  3. নতুন কনফিগারেশন প্রয়োগ করতে রাউটার রিস্টার্ট করুন:
    apigee-service edge-router restart
  4. নতুন log_format কনফিগারেশন (router_new) ফাইলে যোগ করা হয়েছে কিনা তা চেক করুন /opt/nginx/conf.d/0-default.conf:
        
    cat /opt/nginx/conf.d/0-default.conf | grep router_new -A 10
  5. API প্রক্সিতে কিছু API অনুরোধ পাঠান এবং ফাইলে নতুন লগ ফর্ম্যাট যাচাই করুন
    /opt/apigee/var/log/edge-router/nginx/${org}~${env}.${port}_access_log file