Apigee Edge belgelerini görüntülüyorsunuz.
Apigee X belgelerine gidin. bilgi
Belirti
Edge yönlendirici, NGINX kullanılarak uygulanır. Edge yükseltme işlemi sırasında veya yönlendiricinin yapılandırması değiştirilirken NGINX yapılandırma hataları görebilirsiniz. Bu hatalar oluştuğunda Edge, soruna neden olan tüm NGINX yapılandırma dosyalarını /opt/nginx/conf.d olarak işaretler:
-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
Hata mesajları
Herhangi bir hata mesajı görmezsiniz. Ancak, kötü yapılandırma dosyaları nedeniyle API proxy'lerinizi yürütemeyebilirsiniz.
Olası nedenler
Genellikle NGINX yapılandırma dosyaları, /opt/apigee/customer/application/router.properties dosyasındaki NGINX özelliklerine yanlış değerler ayarlandığı veya bir sanal ana bilgisayarda yanlış değişiklikler yapıldığı için kötü olarak işaretlenir.
Teşhis
/opt/nginx/conf.ddizinindeki dosya adlarından .bad sonekini kaldırarak dosya adlarının .conf ile bitmesini sağlayın.
- Hatanın nedenini belirlemek için NGINX configtest aracını çalıştırın:
/opt/nginx/scripts/apigee-nginx configtest
Çözünürlük
- Yapılandırma testi, kötü yapılandırma dosyalarının nedenini belirlerse
/opt/apigee/customer/application/router.propertiesdosyasında veya sanal ana makinede ilgili mülkte uygun değişiklikleri yaparak sorunu düzeltin.
/opt/nginx/conf.ddizinini kaldırın:rm -rf /opt/nginx/conf.d
- Yönlendiriciyi yeniden başlatın:
/opt/apigee/apigee-service/bin/apigee-service edge-router restart
- Artık
/opt/nginx/conf.ddizininde hatalı yapılandırma dosyaları görmemeniz gerekir.
Sorun devam ederse Apigee Edge Destek Ekibi ile iletişime geçin.
Aşağıda, NGINX yapılandırma testi tarafından sağlanan bilgilere göre sorunun nasıl düzeltileceğini gösteren bir örnek verilmiştir.
1. örnek: Bir NGINX özelliği için yanlış değer ayarlanmış
- Aşağıda gösterildiği gibi,
/opt/apigee/customer/application/router.propertiesdosyasında "proxy_busy_buffers_size" özelliğini 128 KB olarak güncellediğinizi varsayalım:conf_load_balancing_load.balancing.driver.proxy.busy.buffer.size=128k
Bu durum, yapılandırma dosyalarının /opt/apigee/nginx/conf.d dizininde kötü olarak işaretlenmesine neden oldu.
directory.
- Hatanın nedenini belirlemek için NGINX configtest komutunu çalıştırın:
/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 sonuçları, proxy_busy_buffers_size özelliği değerinin proxy_buffer_size değerine eşit veya bu değerden büyük olması gerektiğini gösteriyor ancak yanlış bir değerle ayarlanmış gibi görünüyor.
0-default.confdosyasında proxy_buffer_size ve proxy_busy_buffers_size özellikleri için ayarlanan değerleri kontrol edin:proxy_buffer_size 512k; proxy_busy_buffers_size 128k;
/opt/apigee/customer/application/router.propertiesdosyasında proxy_busy_buffers_size değerini 512K olarak güncelleyin:conf_load_balancing_load.balancing.driver.proxy.busy.buffer.size=512k
/opt/nginx/conf.dklasörünü kaldırın:rm -rf /opt/nginx/conf.d
- Yönlendiriciyi yeniden başlatın:
/opt/apigee/apigee-service/bin/apigee-service edge-router restart
Sorun düzeltildi ve hatalı yapılandırma dosyaları kaldırıldı.
2. örnek: İşlem, NGINX'i yükseltemiyor (yalnızca Private Cloud 18.01)
configtest komutunu çalıştırdığınızı ve aşağıdaki yanıtları aldığınızı varsayalım:
/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
Bu hata, işlemin NGINX'i 1.10.x sürümünden 1.12.x sürümüne yükseltemediğini gösterir. Edge Private Cloud'u 18.01 sürümüne yükseltmeyle ilgili bilinen bir hata vardır.
Bu sorunu doğru şekilde teşhis etmek için (yalnızca Private Cloud 18.01 kullanıyorsanız) aşağıdakileri yapın:
rpm -aq | grep apigee-nginx
Bu komut, yüklü rpm'yi 1.12.x sürümü olarak döndürmelidir. Görünmüyorsa aşağıdaki adımları uygulayın:
- Kenar yönlendirici bileşenini durdurun.
- Edge yönlendirici bileşenini yedekleyin.
- apigee-nginx 1.2.x'e yükseltmek için şu komutu çalıştırın:
/opt/apigee/nginx/conf.d.klasöründeki tüm*.baddosyalarını silme- Edge-router bileşenini yeniden başlatın.
sudo yum update apigee-nginx