Vous consultez la documentation Apigee Edge.
Accédez à la
documentation**Apigee X**. info
Problème constaté
Le routeur Edge est implémenté à l'aide de NGINX. Lors du processus de mise à niveau d'Edge ou lorsque
vous modifiez la configuration du routeur, des erreurs de configuration NGINX peuvent s'afficher. Lorsque ces
erreurs se produisent, Edge marque tous les fichiers de configuration NGINX qui ont causé le problème dans
/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. Toutefois, il est possible que vous ne puissiez pas exécuter vos proxys d'API en raison de fichiers de configuration incorrects.
Causes possibles :
En règle générale, les fichiers de configuration NGINX sont marqués comme incorrects, car des valeurs incorrectes sont définies pour
les propriétés NGINX dans le fichier /opt/apigee/customer/application/router.properties ou des modifications incorrectes sont apportées à un hôte virtuel.
Diagnostic
- Supprimez le suffixe .bad des noms de fichiers dans le
/opt/nginx/conf.drépertoire afin qu'ils se terminent par .conf.
- Exécutez l'outil configtest NGINX pour déterminer la raison de l'échec :
/opt/nginx/scripts/apigee-nginx configtest
Solution
- Si le test de configuration identifie la raison pour laquelle les fichiers de configuration sont incorrects, résolvez le problème en
apportant les modifications appropriées à la propriété spécifique dans le
/opt/apigee/customer/application/router.propertiesfichier ou l'hôte virtuel.
- Supprimez le répertoire
/opt/nginx/conf.d:rm -rf /opt/nginx/conf.d
- Redémarrez le routeur :
/opt/apigee/apigee-service/bin/apigee-service edge-router restart
- Les fichiers de configuration incorrects ne devraient plus s'afficher dans le
/opt/nginx/conf.drépertoire.
Si le problème persiste, contactez l'assistance Apigee Edge.
Voici un exemple qui montre comment résoudre le problème en fonction des informations fournies par le test de configuration NGINX.
Exemple 1 : Valeur incorrecte définie pour une propriété NGINX
- Supposons que vous ayez mis à jour la propriété "proxy_busy_buffers_size"
sur 128K dans le fichier
/opt/apigee/customer/application/router.properties, comme indiqué ci-dessous :conf_load_balancing_load.balancing.driver.proxy.busy.buffer.size=128k
Les fichiers de configuration ont alors été marqués comme incorrects dans le répertoire /opt/apigee/nginx/conf.d.
- Exécutez la commande configtest NGINX 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 de configtest indiquent que la valeur de la propriété proxy_busy_buffers_size doit être supérieure ou égale à proxy_buffer_size, mais semble être définie avec une valeur incorrecte.
- Vérifiez les valeurs définies pour les propriétés
proxy_buffer_size et proxy_busy_buffers_size
dans le fichier
0-default.conf:proxy_buffer_size 512k; proxy_busy_buffers_size 128k;
- Remplacez la valeur de proxy_busy_buffers_size par 512K dans le
/opt/apigee/customer/application/router.propertiesfichier :conf_load_balancing_load.balancing.driver.proxy.busy.buffer.size=512k
- Supprimez le dossier
/opt/nginx/conf.d:rm -rf /opt/nginx/conf.d
- 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 obteniez 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 à la version 1.12.x. Un bug connu est lié à la mise à niveau d'Edge Private Cloud 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 :
- Arrêtez le composant edge-router.
- Sauvegardez le composant edge-router.
- Exécutez cette commande pour effectuer la mise à niveau vers apigee-nginx 1.2.x :
- Supprimez tous les fichiers
*.badsous/opt/apigee/nginx/conf.d. - Redémarrez le composant edge-router.
sudo yum update apigee-nginx