खराब कॉन्फ़िगरेशन फ़ाइलें

आपको 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 कॉन्फ़िगरेशन फ़ाइलों को खराब के तौर पर मार्क किया जाता है. ऐसा या तो गलत वैल्यू पर सेट होने की वजह से होता है /opt/apigee/customer/application/router.properties फ़ाइल में NGINX प्रॉपर्टी या वर्चुअल होस्ट में गलत बदलाव किए गए हैं.

संक्रमण की जांच

  1. इसमें मौजूद फ़ाइल नामों से .bad सफ़िक्स हटाएं /opt/nginx/conf.d डायरेक्ट्री, ताकि वे .conf पर खत्म हों.
  1. गड़बड़ी की वजह पता करने के लिए, NGINX configtest टूल चलाएं:
    /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 कॉन्फ़िगरेशन की जांच करना ज़रूरी है.

पहला उदाहरण: NGINX प्रॉपर्टी के लिए गलत वैल्यू सेट की गई

  1. मान लें कि आपने “proxy_busy_buffers_size” प्रॉपर्टी को अपडेट किया है /opt/apigee/customer/application/router.properties फ़ाइल में 128K तक, जैसा कि दिखाया गया है नीचे दिया गया है:
    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_buffer_size 0-default.conf फ़ाइल में:
    proxy_buffer_size 512k;
    proxy_busy_buffers_size 128k;
    
  1. /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
    
    अभी तक किसी भी व्यक्ति ने चेक इन नहीं किया है

समस्या को ठीक कर दिया गया और खराब कॉन्फ़िगरेशन वाली फ़ाइलें हटा दी गईं.

दूसरा उदाहरण: NGINX (सिर्फ़ प्राइवेट Cloud 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. /opt/apigee/nginx/conf.d. से कम की सभी *.bad फ़ाइलें मिटाएं
  6. एज-रूटर कॉम्पोनेंट को रीस्टार्ट करें.