برای پیکربندی Edge پس از نصب، از ترکیبی از فایلهای .properties
و ابزارهای Edge استفاده میکنید. برای مثال، برای پیکربندی TLS/SSL در رابط کاربری Edge، فایلهای .properties
را برای تنظیم ویژگیهای لازم ویرایش میکنید. برای تغییرات در فایلهای .properties
باید مؤلفه Edge آسیبدیده را مجدداً راهاندازی کنید.
Apigee به تکنیک ویرایش فایل های .properties
به عنوان کد با پیکربندی (گاهی به اختصار CwC) اشاره می کند. اساساً، کد با پیکربندی یک ابزار جستجوی کلید/مقدار بر اساس تنظیمات در فایلهای .properties
است. در کد با پیکربندی، کلیدها به عنوان توکن نامیده می شوند. بنابراین، برای پیکربندی Edge، توکنها را در فایلهای .properties
تنظیم میکنید.
کد با پیکربندی به اجزای Edge اجازه میدهد مقادیر پیشفرض را که همراه با محصول ارسال میشوند، تنظیم کنند، به تیم نصب اجازه میدهد آن تنظیمات را بر اساس توپولوژی نصب لغو کند، و سپس به مشتریان اجازه میدهد تا هر ویژگی را که انتخاب میکنند لغو کنند.
اگر به آن به عنوان یک سلسله مراتب فکر می کنید، تنظیمات به صورت زیر مرتب می شوند و تنظیمات مشتری بالاترین اولویت را برای لغو هرگونه تنظیمات از تیم نصب کننده یا Apigee دارند:
- مشتری
- نصب کننده
- جزء
مقدار فعلی یک توکن را تعیین کنید
قبل از اینکه یک مقدار جدید برای یک نشانه در یک فایل .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 و فایلهای ویژگیهایی را که میتوانید برای پیکربندی آن مؤلفهها ویرایش کنید، فهرست میکند:
جزء | نام مؤلفه | فایل پیکربندی قابل ویرایش |
---|---|---|
کاساندرا | 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 |
رابط کاربری کلاسیک (بر رابط کاربری Edge جدید تأثیری نمیگذارد) | edge-ui | /opt/apigee/customer/application/ui.properties |
رابط کاربری Edge (فقط رابط کاربری Edge جدید؛ رابط کاربری کلاسیک را تحت تاثیر قرار نمی دهد) | apigee-management-ui | n/a (از فایل پیکربندی نصب استفاده کنید) |
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/postgressql.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 کامپوننت را مشخص می کند. مقادیر ممکن عبارتند از:
|
یک مقدار رمز تنظیم کنید
شما فقط می توانید فایل های .properties
را در پوشه /opt/apigee/customer/application
تغییر دهید. هر جزء دارای فایل .properties
خود در آن دایرکتوری است. به عنوان مثال، router.properties
و management-server.properties
. برای فهرست کامل فایلهای ویژگیها، مکان فایلهای .properties را ببینید.
برای ایجاد فایل .properties
:
- یک فایل متنی جدید در یک ویرایشگر ایجاد کنید. نام فایل باید با لیست نشان داده شده در جدول بالا برای فایل های مشتری مطابقت داشته باشد.
- همانطور که در مثال زیر نشان داده شده است، مالک فایل را به "apigee:apigee" تغییر دهید:
chown apigee:apigee /opt/apigee/customer/application/router.properties
اگر کاربری که سرویس Edge را اجرا می کند را از کاربر "apigee" تغییر دادید، از
chown
برای تغییر مالکیت به کاربری که سرویس Edge را اجرا می کند استفاده کنید.
هنگامی که Edge را ارتقا می دهید، فایل های .properties
در پوشه /opt/apigee/customer/application
خوانده می شوند. این بدان معناست که ارتقاء تمام ویژگی هایی را که روی کامپوننت تنظیم کرده اید حفظ می کند.
برای تعیین مقدار یک توکن:
- فایل
.properties
جزء را ویرایش کنید. - مقدار توکن را اضافه یا تغییر دهید. مثال زیر مقدار ویژگی
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/*
برای افزودن یک مقدار جدید به لیستی مانند این، معمولاً مقدار جدید را به انتهای لیست اضافه می کنید.
- کامپوننت را دوباره راه اندازی کنید:
/opt/apigee/apigee-service/bin/apigee-service component_name restart
جایی که component_name یکی از موارد زیر است:
apigee-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 Router) -
edge-ui
(واسط کاربری کلاسیک)
به عنوان مثال، پس از ویرایش
router.properties
، روتر را مجددا راه اندازی کنید:/opt/apigee/apigee-service/bin/apigee-service edge-router restart
- (اختیاری) با استفاده از گزینه
configure -search
بررسی کنید که مقدار رمز روی مقدار جدید شما تنظیم شده باشد. به عنوان مثال:/opt/apigee/apigee-service/bin/apigee-service edge-router configure -search conf_http_HTTPRequest.line.limit
برای اطلاعات بیشتر در مورد
configure -search
، به تعیین مقدار فعلی یک نشانه مراجعه کنید.
یک نشانه را پیدا کنید
در بیشتر موارد، توکن هایی که باید تنظیم کنید در این راهنما مشخص می شوند. با این حال، اگر نیاز دارید که مقدار یک رمز موجود را که نام کامل یا مکان آن مطمئن نیستید لغو کنید، از grep
برای جستجو در فهرست source
مؤلفه استفاده کنید.
به عنوان مثال، اگر میدانید که در نسخه قبلی 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}
مثال زیر مقدار توکن session.maxAge
UI را نشان می دهد:
/opt/apigee/edge-ui/source/conf/application.conf:session.maxAge={T}conf_application_session.maxage{/T}
رشته بین تگهای {T}{/T} نام رمزی است که میتوانید در فایل .properties
رابط کاربری تنظیم کنید.
رمزی را تنظیم کنید که در حال حاضر نظر داده شده است
برخی از نشانهها در فایلهای پیکربندی Edge توضیح داده میشوند. اگر بخواهید رمزی را تنظیم کنید که در فایل پیکربندی نصب یا مؤلفه توضیح داده شود، تنظیمات شما نادیده گرفته می شود.
برای تنظیم مقدار نشانه ای که در یک فایل پیکربندی Edge توضیح داده می شود، از دستور خاصی به شکل زیر استفاده کنید:
conf/filename+propertyName=propertyValue
به عنوان مثال، برای تنظیم ویژگی به نام 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+
پیشوند قرار دهید. این مکان و نام فایل پیکربندی حاوی ویژگی و به دنبال آن "+" است.
پس از راه اندازی مجدد پردازشگر پیام، فایل /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
پروکسی فوروارد را برای درخواستهای بخش Send Requests از Trace UI پیکربندی کنید
این بخش نحوه پیکربندی پروکسی فوروارد برای درخواستهای بخش ارسال درخواستها در Trace UI با اعتبارنامههای پروکسی اختیاری را توضیح میدهد. برای پیکربندی پروکسی فوروارد:
-
/opt/apigee/customer/application/ui.properties
را ویرایش کنید و مطمئن شوید که فایل متعلق بهapigee:apigee
است. - موارد زیر را اضافه کنید (تغییر مقادیر به پیکربندی پروکسی خاص خود):
conf_application_http.proxyhost=proxy.example.com conf_application_http.proxyport=8080 conf_application_http.proxyuser=apigee conf_application_http.proxypassword=Apigee123!
- رابط کاربری کلاسیک را ذخیره و راه اندازی مجدد کنید.
یک قالب ثبت سفارشی را در Apigee Router/Nginx اضافه کنید
در برخی موارد، باید فرمت پیشفرض Apigee Router/Nginx را تغییر دهید یا متغیرهایی را اضافه کنید. برای بهروزرسانی پیکربندی فرمت پیشفرض Apigee Router/Nginx log:
- یک فایل
router.properties
، اگر وجود ندارد، با مسیر زیر ایجاد کنید:/opt/apigee/customer/application/router.properties
- برای ایجاد یک پیکربندی جدید
log_format
با نامrouter_new
، محتوای زیر را به فایلrouter.properties
اضافه کنید: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 نمایش داده می شود.
- برای اعمال پیکربندی جدید، روتر را مجددا راه اندازی کنید:
apigee-service edge-router restart
- بررسی کنید که آیا پیکربندی جدید
log_format
(router_new
) به فایل/opt/nginx/conf.d/0-default.conf
اضافه شده است یا خیر:cat /opt/nginx/conf.d/0-default.conf | grep router_new -A 10
- برخی از درخواستهای API را به یک پروکسی API ارسال کنید و فرمت گزارش جدید را در فایل تأیید کنید
/opt/apigee/var/log/edge-router/nginx/${org}~${env}.${port}_access_log file