File di configurazione non validi

Stai visualizzando la documentazione di Apigee Edge.
Consulta la documentazione di Apigee X.
info

Sintomo

Il router Edge viene implementato utilizzando NGINX. Durante il processo di upgrade di Edge o quando modifichi la configurazione del router, potresti visualizzare errori di configurazione di NGINX. Quando si verificano questi errori, Edge contrassegna tutti i file di configurazione di NGINX che hanno causato il problema in /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

Messaggi di errore

Non vedrai alcun messaggio di errore. Tuttavia, potresti non essere in grado di eseguire i proxy API a causa dei file di configurazione errati.

Possibili cause

In genere, i file di configurazione di NGINX vengono contrassegnati come errati perché sono stati impostati valori errati per le proprietà di NGINX nel file /opt/apigee/customer/application/router.properties o sono state apportate modifiche errate a un host virtuale.

Diagnosi

  1. Rimuovi il suffisso .bad dai nomi dei file nella directory /opt/nginx/conf.d in modo che terminino con .conf.
  1. Esegui lo strumento configtest di NGINX per determinare il motivo dell'errore:
    /opt/nginx/scripts/apigee-nginx configtest

Risoluzione

  1. Se il test di configurazione identifica il motivo dei file di configurazione errati, risolvi il problema apportando le modifiche appropriate alla proprietà specifica nel /opt/apigee/customer/application/router.properties file o nell'host virtuale.
  1. Rimuovi la directory /opt/nginx/conf.d:
    rm -rf /opt/nginx/conf.d
  1. Riavvia il router:
    /opt/apigee/apigee-service/bin/apigee-service edge-router restart
  1. Non dovresti più vedere file di configurazione errati nella /opt/nginx/conf.d directory.

Se il problema persiste, contatta l'assistenza Apigee Edge.

Ecco un esempio che mostra come risolvere il problema in base alle informazioni fornite da il test di configurazione di NGINX.

Esempio 1: valore errato impostato per una proprietà NGINX

  1. Supponiamo che tu abbia aggiornato la proprietà “proxy_busy_buffers_size” a 128K nel file /opt/apigee/customer/application/router.properties, come mostrato di seguito:
    conf_load_balancing_load.balancing.driver.proxy.busy.buffer.size=128k 

In questo modo, i file di configurazione vengono contrassegnati come errati nella directory /opt/apigee/nginx/conf.d.

  1. Esegui il comando configtest di NGINX per determinare il motivo dell'errore:
    /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

I risultati di configtest indicano che il valore della proprietà proxy_busy_buffers_size deve essere maggiore o uguale a proxy_buffer_size, ma sembra che sia stato impostato un valore errato.

  1. Controlla i valori impostati per le proprietà proxy_buffer_size e proxy_busy_buffers_size nel 0-default.conf file:
    proxy_buffer_size 512k;
    proxy_busy_buffers_size 128k;
  1. Aggiorna il valore di proxy_busy_buffers_size a 512K nel /opt/apigee/customer/application/router.properties file:
    conf_load_balancing_load.balancing.driver.proxy.busy.buffer.size=512k
  1. Rimuovi la cartella /opt/nginx/conf.d:
    rm -rf /opt/nginx/conf.d
  1. Riavvia il router:
    /opt/apigee/apigee-service/bin/apigee-service edge-router restart

Il problema è stato risolto e i file di configurazione errati sono stati rimossi.

Esempio 2: il processo non riesce ad eseguire l'upgrade di NGINX (solo Private Cloud 18.01)

Supponiamo che tu esegua configtest e riceva le seguenti risposte:

/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

Questo errore indica che il processo non è riuscito a eseguire l'upgrade di NGINX dalla versione 1.10.x alla versione 1.12.x. Esiste un bug noto relativo all'upgrade di Edge Private Cloud alla versione 18.01.

Per diagnosticare correttamente questo problema (solo se utilizzi Private Cloud 18.01):

rpm -aq | grep apigee-nginx

Questo comando dovrebbe restituire l'rpm installato come versione 1.12.x. In caso contrario, segui questi passaggi:

  1. Arresta il componente edge-router.
  2. Esegui il backup del componente edge-router.
  3. Esegui questo comando per eseguire l'upgrade ad apigee-nginx 1.2.x:
  4. sudo yum update apigee-nginx
  5. Elimina tutti i file *.bad in /opt/apigee/nginx/conf.d.
  6. Riavvia il componente edge-router.