Archivos de configuración incorrectos

Estás consultando la documentación de Apigee Edge.
Consulta la documentación de Apigee X.
Información

Síntoma

El router perimetral se implementa mediante NGINX. Durante el proceso de actualización de Edge o cuando cambias la configuración del router, es posible que veas errores de configuración de NGINX. Cuando se producen estos errores, Edge marca todos los archivos de configuración de NGINX que causaron el problema en /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

Mensajes de error

No verás ningún mensaje de error. Sin embargo, es posible que no puedas ejecutar los proxies de API debido a los archivos de configuración incorrectos.

Causas posibles

Por lo general, los archivos de configuración de NGINX se marcan como incorrectos, ya sea porque los valores incorrectos se configuran en las propiedades NGINX en el archivo /opt/apigee/customer/application/router.properties o porque se realizan cambios incorrectos en un host virtual.

Diagnóstico

  1. Quita el sufijo .bad de los nombres de archivo en el directorio /opt/nginx/conf.d para que terminen en .conf.
  1. Ejecuta la herramienta configtest NGINX para determinar el motivo de la falla:
    /opt/nginx/scripts/apigee-nginx configtest
    

Resolución

  1. Si la prueba de configuración identifica el motivo de los archivos de configuración incorrectos, realiza los cambios adecuados en la propiedad específica del archivo /opt/apigee/customer/application/router.properties o del host virtual para solucionar el problema.
  1. Quita el directorio /opt/nginx/conf.d:
    rm -rf /opt/nginx/conf.d
    
  1. Reinicia el router:
    /opt/apigee/apigee-service/bin/apigee-service edge-router restart
    
  1. Ya no deberías ver archivos de configuración incorrectos en el directorio /opt/nginx/conf.d .

Si el problema persiste, comunícate con el equipo de asistencia de Apigee Edge.

En el siguiente ejemplo, se muestra cómo solucionar el problema según la información que proporciona la prueba de configuración de NGINX.

Ejemplo 1: Valor incorrecto establecido para una propiedad NGINX

  1. Supongamos que actualizaste la propiedad "proxy_busy_buffers_size" a 128 K en el archivo /opt/apigee/customer/application/router.properties, como se muestra a continuación:
    conf_load_balancing_load.balancing.driver.proxy.busy.buffer.size=128k 
    

Esto hizo que los archivos de configuración se marquen como incorrectos en el directorio /opt/apigee/nginx/conf.d.

  1. Ejecuta el comando NGINX configtest para determinar el motivo de la falla:
    /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
    

Los resultados de configtest indican que el valor para la propiedad proxy_busy_buffers_size debe ser igual o mayor que proxy_buffer_size, pero parece estar configurado con un valor incorrecto.

  1. Verifica los valores establecidos para las propiedades proxy_buffer_size y proxy_busy_buffers_size en el archivo 0-default.conf:
    proxy_buffer_size 512k;
    proxy_busy_buffers_size 128k;
    
  1. Actualiza el valor de proxy_busy_buffers_size a 512 K en el archivo /opt/apigee/customer/application/router.properties:
    conf_load_balancing_load.balancing.driver.proxy.busy.buffer.size=512k
    
  1. Quita la carpeta /opt/nginx/conf.d:
    rm -rf /opt/nginx/conf.d
    
  1. Reinicia el router:
    /opt/apigee/apigee-service/bin/apigee-service edge-router restart
    

Se solucionó el problema y se quitaron los archivos de configuración incorrectos.

Ejemplo 2: El proceso no puede actualizar NGINX (solo en la nube privada 18.01)

Supongamos que ejecutas configtest y obtienes las siguientes respuestas:

/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

Esta falla indica que el proceso no pudo actualizar NGINX de 1.10.x a 1.12.x. Hay un error conocido relacionado con la actualización de Edge Private Cloud a la versión 18.01.

Para diagnosticar este problema de forma correcta (solo si estás en la nube privada 18.01), sigue estos pasos:

rpm -aq | grep apigee-nginx

Este comando debería mostrar las rpm instaladas como la versión 1.12.x. De lo contrario, sigue estos pasos:

  1. Detén el componente del router perimetral.
  2. Crea una copia de seguridad del componente del router perimetral.
  3. Ejecuta este comando para actualizar a apigee-nginx 1.2.x:
  4. sudo yum update apigee-nginx
  5. Borrar *.bad archivo en /opt/apigee/nginx/conf.d.
  6. Reinicia el componente del router perimetral.