Fichiers de configuration incorrects

<ph type="x-smartling-placeholder"></ph> Vous consultez la documentation Apigee Edge.
Accédez à la page Documentation sur Apigee X.
En savoir plus

Symptôme

Le routeur Edge est mis en œuvre à l'aide de NGINX. Au cours du processus de mise à niveau Edge, ou lorsque modifier la configuration du routeur, vous risquez de voir des erreurs de configuration NGINX. Lorsque ces des erreurs se produisent, Edge marque tous les fichiers de configuration NGINX à l'origine du problème /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

Messages d'erreur

Aucun message d'erreur ne s'affiche. Cependant, vous ne pourrez peut-être pas exécuter votre API proxys en raison de fichiers de configuration incorrects.

Causes possibles :

En général, les fichiers de configuration NGINX sont marqués comme incorrects, soit parce qu'une ou plusieurs valeurs incorrectes sont définies sur Propriété(s) NGINX dans le fichier /opt/apigee/customer/application/router.properties ou si des modifications incorrectes sont apportées à un hôte virtuel.

Diagnostic

  1. Supprimez le suffixe .bad des noms de fichiers dans le /opt/nginx/conf.d pour qu'ils se terminent par .conf.
  1. Exécutez l'outil NGINX configtest pour déterminer la raison de l'échec:
    /opt/nginx/scripts/apigee-nginx configtest
    

Solution

  1. Si le test de configuration identifie la raison des fichiers de configuration incorrects, corrigez le problème en apportez les modifications appropriées à la propriété spécifique dans le /opt/apigee/customer/application/router.properties ou à un hôte virtuel.
  1. Supprimez le répertoire /opt/nginx/conf.d:
    rm -rf /opt/nginx/conf.d
    
  1. Redémarrez le routeur:
    /opt/apigee/apigee-service/bin/apigee-service edge-router restart
    
  1. Vous ne devriez plus voir de fichiers de configuration incorrects dans le /opt/nginx/conf.d .

Si le problème persiste, contactez l'assistance Apigee Edge.

Voici un exemple qui montre comment résoudre le problème à partir des informations fournies par le test de configuration NGINX.

Exemple 1: Valeur incorrecte définie pour une propriété NGINX

  1. Imaginons que vous ayez mis à jour la propriété proxy_busy_buffers_size. à 128 Ko dans le fichier /opt/apigee/customer/application/router.properties, comme illustré ci-dessous:
    conf_load_balancing_load.balancing.driver.proxy.busy.buffer.size=128k 
    

Les fichiers de configuration ont donc été marqués comme incorrects dans /opt/apigee/nginx/conf.d .

  1. Exécutez la commande NGINX configtest pour déterminer la raison de l'échec:
    /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
    

Les résultats du test configtest indiquent que la valeur de la propriété proxy_busy_buffers_size doit être supérieur ou égal à proxy_buffer_size, mais qui semble être défini sur une valeur incorrecte.

  1. Vérifiez les valeurs définies pour les propriétés proxy_buffer_size et proxy_supported_buffers_size dans le fichier 0-default.conf:
    proxy_buffer_size 512k;
    proxy_busy_buffers_size 128k;
    
  1. Mettez à jour la valeur de proxy_étendue_buffers_size sur 512 K dans le champ Fichier /opt/apigee/customer/application/router.properties:
    conf_load_balancing_load.balancing.driver.proxy.busy.buffer.size=512k
    
  1. Supprimez le dossier /opt/nginx/conf.d:
    rm -rf /opt/nginx/conf.d
    
  1. Redémarrez le routeur:
    /opt/apigee/apigee-service/bin/apigee-service edge-router restart
    

Le problème a été résolu et les fichiers de configuration incorrects ont été supprimés.

Exemple 2: Le processus ne parvient pas à mettre à niveau NGINX (Private Cloud 18.01 uniquement)

Supposons que vous exécutiez configtest et que vous receviez les réponses suivantes:

/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

Cet échec indique que le processus n'a pas réussi à mettre à niveau NGINX de la version 1.10.x vers la version 1.12.x. Il existe un bug connu lié à la mise à niveau du cloud privé Edge vers la version 18.01.

Pour diagnostiquer correctement ce problème (uniquement si vous utilisez Private Cloud 18.01), procédez comme suit:

rpm -aq | grep apigee-nginx

Cette commande doit renvoyer le rpm installé en tant que version 1.12.x. Si ce n'est pas le cas, procédez comme suit:

  1. Arrêtez le composant de routeur périphérique.
  2. Sauvegardez le composant de routeur périphérique.
  3. Exécutez la commande suivante pour passer à apigee-nginx 1.2.x:
  4. sudo yum update apigee-nginx
  5. Supprimer tous les fichiers *.bad sous /opt/apigee/nginx/conf.d.
  6. Redémarrez le composant de routeur périphérique.