كيفية ضبط Edge

لضبط Edge بعد التثبيت، عليك استخدام مجموعة من .properties ملفات وأدوات Edge. على سبيل المثال، لضبط بروتوكول أمان طبقة النقل (TLS)/بروتوكول طبقة المقابس الآمنة (SSL) في واجهة مستخدم New Edge، عليك تعديل .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
خادم الإدارة 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
واجهة مستخدم New Edge edge-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
Zookeeper 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-zookeeper (ZooKeeper)
  • ‫edge-management-server (خادم الإدارة)
  • ‫edge-management-ui (واجهة مستخدم Edge الجديدة)
  • edge-message-processor (معالج الرسائل)
  • edge-postgres-server (خادم Postgres)
  • ‫edge-qpid-server (Qpid Server)
  • edge-router (جهاز توجيه الحافة)

ضبط قيمة رمز مميّز

يمكنك فقط تعديل ملفات .properties في الدليل /opt/apigee/customer/application. لكل مكوّن ملف ‎ .properties خاص به في هذا الدليل. على سبيل المثال، router.properties وmanagement-server.properties. للاطّلاع على قائمة كاملة بملفات الخصائص، يُرجى الاطّلاع على موقع ملفات ‎ .properties.

لإنشاء ملف .properties‎:

  1. أنشئ ملفًا نصيًا جديدًا في أحد المحرّرات. يجب أن يتطابق اسم الملف مع القائمة الموضّحة في الـ جدول أعلاه لملفات العملاء.
  2. غيِّر مالك الملف إلى "apigee:apigee"، كما يوضّح المثال التالي:
    chown apigee:apigee /opt/apigee/customer/application/router.properties

    إذا غيّرت المستخدم الذي يشغّل خدمة Edge من المستخدم "apigee"، استخدِم chown لتغيير الملكية إلى المستخدم الذي يشغّل خدمة Edge service.

عند ترقية Edge، تتم قراءة ملفات .properties في الدليل /opt/apigee/customer/application. يعني ذلك أنّ الترقية ستحتفظ بأي خصائص تضبطها على المكوّن.

لضبط قيمة رمز مميّز:

  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-zookeeper (ZooKeeper)
    • ‫edge-management-server (خادم الإدارة)
    • ‫edge-management-ui (واجهة مستخدم Edge الجديدة)
    • edge-message-processor (معالج الرسائل)
    • edge-postgres-server (خادم Postgres)
    • ‫edge-qpid-server (Qpid Server)
    • edge-router (جهاز توجيه الحافة)

    على سبيل المثال، بعد تعديل 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، يُرج101} الاطّلاع على تحديد القيمة الحالية لرمز مميّز.

تحديد موقع رمز مميّز

في معظم الحالات، يتم تحديد الرموز المميّزة التي عليك ضبطها في هذا الدليل. ومع ذلك، إذا كنت بحاجة إلى إلغاء قيمة رمز مميّز حالي لا تعرف اسمه الكامل أو موقعه الجغرافي، استخدِم grep للبحث في دليل source الخاص بالمكوّن.

على سبيل المثال، إذا كنت تعرف أنّك تريد ضبط HTTPRequest.line.limit السمة وتريد معرفة قيمة الرمز المميّز المستخدَمة لضبطها، استخدِم الأمر grep للبحث عن السمة في الدليل /opt/apigee/edge-management-server/source:

grep -ri "HTTPRequest.line.limit" /opt/apigee/edge-management-server/source

من المفترض أن يظهر لك نتيجة بالتنسيق التالي:

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

يوضّح المثال التالي قيمة الرمز المميّز HTTPRequest.line.limit لخادم الإدارة:

/opt/apigee/edge-management-server/source/conf/http.properties:HTTPRequest.line.limit={T}conf_http_HTTPRequest.line.limit{/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

تفعيل بروتوكول HTTP/2 أو إيقافه في واجهة مستخدم New Edge

يوضّح هذا القسم كيفية تفعيل بروتوكول HTTP/2 أو إيقافه في واجهة مستخدم New Edge (edge-management-ui).

  1. أنشئ الملف /opt/apigee/customer/application/management-ui.properties أو عدِّله وتأكَّد من أنّ المستخدم apigee:apigee هو مالك الملف.
  2. أضِف عملية الإلغاء التالية لتفعيل بروتوكول HTTP/2 أو إيقافه:
    conf_uebe_disable_http2={true or false}
  3. احفظ التغييرات وأعِد تشغيل واجهة مستخدم New Edge (edge-management-ui).

إضافة تنسيق سجلّ مخصّص في Apigee Router/Nginx

في بعض الحالات، قد تحتاج إلى تغيير تنسيق سجلّ Apigee Router/Nginx التلقائي أو إضافة متغيرات. لتعديل إعدادات تنسيق سجلّ Apigee Router/Nginx التلقائي التكوين:

  1. أنشئ ملف router.properties، إذا لم يكن موجودًا، باستخدام المسار الموضّح أدناه:
    /opt/apigee/customer/application/router.properties
  2. أضِف المحتوى التالي إلى الملف router.properties لإنشاء إعدادات log_format جديدة بالاسم router_new:
    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. أرسِل بعض طلبات بيانات من واجهة برمجة التطبيقات إلى خادم وكيل لواجهة برمجة التطبيقات وتحقَّق من تنسيق السجلّ الجديد في الملف
    /opt/apigee/var/log/edge-router/nginx/${org}~${env}.${port}_access_log file