ملفات الإعداد غير صالحة

أنت تعرض مستندات Apigee Edge.
انتقل إلى مستندات Apigee X.
معلومات

المشكلة

يتم تنفيذ جهاز توجيه Edge باستخدام NGINX. أثناء عملية ترقية Edge، أو عندما عند تغيير تهيئة جهاز التوجيه، قد تظهر لك أخطاء في تهيئة NGINX. عندما حدوث أخطاء، تضع Edge علامة على جميع ملفات إعداد NGINX التي تسببت في حدوث المشكلة /opt/nginx/conf.d:

-rw-r--r-- 1 apigee apigee 522 Jul 20 08:41 0-default.conf.bad 
-rw-r--r-- 1 apigee apigee 577 Jul 20 08:42 0-fallback.conf 
-rw-r--r-- 1 apigee apigee 1062 Jul 20 08:18 0-map.conf 
-rw-r--r-- 1 apigee apigee 1887 Jul 20 08:42 custorg_test_default.conf.bad

رسائل الخطأ

لن تظهر لك أي رسائل خطأ. ومع ذلك، قد لا تتمكّن من تنفيذ واجهة برمجة التطبيقات. خوادم الوكيلة بسبب ملفات التهيئة السيئة.

الأسباب المحتملة

يتم عادةً وضع علامة على ملفات تهيئة NGINX تشير إلى أنّه غير صحيح إما بسبب تعيين القيم غير الصحيحة على سمات NGINX في ملف /opt/apigee/customer/application/router.properties أو إجراء تغييرات غير صحيحة على المضيف الظاهري.

التشخيص

  1. أزِل اللاحقة .bad من أسماء الملفات في دليل /opt/nginx/conf.d حتى تنتهي بـ .conf.
  1. شغِّل أداة إعداد NGINX لتحديد سبب التعذُّر:
    /opt/nginx/scripts/apigee-nginx configtest
    

الدقة

  1. إذا حدَّد اختبار التكوين سبب ملفات الإعداد السيئة، عليك حلّ المشكلة من خلال وإجراء التغييرات المناسبة على الخاصية المحددة في صفحة ملف /opt/apigee/customer/application/router.properties أو المضيف الظاهري
  1. أزِل الدليل /opt/nginx/conf.d:
    rm -rf /opt/nginx/conf.d
    
  1. أعِد تشغيل جهاز التوجيه:
    /opt/apigee/apigee-service/bin/apigee-service edge-router restart
    
  1. من المفترض ألا تظهر بعد الآن ملفات إعداد سيئة في /opt/nginx/conf.d .

في حال استمرار المشكلة، يُرجى التواصل مع فريق دعم Apigee Edge.

إليك مثال يوضح كيفية حل المشكلة بناءً على المعلومات المقدمة من اختبار تهيئة NGINX.

المثال 1: ضبط قيمة غير صحيحة لسمة NGINX

  1. لنفترض أنك عدّلت الموقع "proxy_busy_buffers_size" إلى 128 كيلوبايت في ملف /opt/apigee/customer/application/router.properties، كما هو موضح أدناه:
    conf_load_balancing_load.balancing.driver.proxy.busy.buffer.size=128k 
    

تسبّب ذلك في وضع علامة على ملفات الإعداد بأنّها غير صالحة في /opt/apigee/nginx/conf.d. الدليل.

  1. شغِّل أمر NGINX configtest لتحديد سبب الفشل:
    /opt/nginx/scripts/apigee-nginx configtest
    nginx: [emerg] "proxy_busy_buffers_size" must be equal to or greater than the maximum of the value of "proxy_buffer_size" and one of the "proxy_buffers" in /opt/nginx/conf/nginx.conf:47
    nginx: configuration file /opt/nginx/conf/nginx.conf test failed
    

تشير نتائج configtest إلى أن قيمة الخاصية يجب أن يكون proxy_busy_buffers_size مساويًا له أو أكبر منه proxy_buffer_size، ولكن يبدو أنه تم ضبطه بقيمة غير صحيحة.

  1. التحقّق من القيم المعيّنة للخصائص proxy_buffer_size وproxy_مشغول_buffers_size في ملف 0-default.conf:
    proxy_buffer_size 512k;
    proxy_busy_buffers_size 128k;
    
  1. حدِّث قيمة الخادم الوكيل_مشغول_باقة_التخزين المؤقت إلى 512 كيلوبايت في ملف /opt/apigee/customer/application/router.properties:
    conf_load_balancing_load.balancing.driver.proxy.busy.buffer.size=512k
    
  1. إزالة المجلد "/opt/nginx/conf.d":
    rm -rf /opt/nginx/conf.d
    
  1. أعِد تشغيل جهاز التوجيه:
    /opt/apigee/apigee-service/bin/apigee-service edge-router restart
    

تم إصلاح المشكلة وإزالة ملفات الإعدادات السيئة.

المثال 2: تعذُّر ترقية NGINX (الإصدار 18.01 من السحابة الإلكترونية الخاصة فقط)

لنفترض أنك قمت بتشغيل configtest وتم استرداد الردود التالية:

/apigee-nginx configtest

 nginx: the configuration file /opt/nginx/conf/nginx.conf syntax is ok
 nginx: [emerg] zero size shared memory zone "perclient"
 nginx: configuration file /opt/nginx/conf/nginx.conf test failed

يشير هذا الإخفاق إلى تعذُّر إتمام العملية في ترقية NGINX من 1.10.x إلى 1.12.x. هناك خطأ معروف متعلّق بترقية Edge Private Cloud إلى الإصدار 18.01.

لتشخيص هذه المشكلة بشكل صحيح (فقط إذا كنت تستخدم Private Cloud 18.01)، يمكنك تنفيذ ما يلي:

rpm -aq | grep apigee-nginx

من المفترض أن يعرض هذا الأمر عدد الدورات في الدقيقة المثبَّتة كإصدار 1.12.x. وإذا لم يحدث ذلك، اتّبِع الخطوات التالية:

  1. أوقِف مكوّن جهاز توجيه الحافة.
  2. احتفِظ بنسخة احتياطية من مكوّن جهاز توجيه الحافة.
  3. نفِّذ الأمر التالي للترقية إلى apigee-nginx 1.2.x:
  4. sudo yum update apigee-nginx
  5. حذف كل الملفات البالغ عددها *.bad ضمن /opt/apigee/nginx/conf.d.
  6. أعِد تشغيل مكوِّن جهاز توجيه الحافة.