Redémarrer les routeurs et les processeurs de message sans impact sur le trafic

Vous consultez la documentation d'Apigee Edge.
Consultez la documentation Apigee X.
en savoir plus

Ce document explique comment redémarrer des routeurs et des processeurs de messages sans affecter le trafic d'API entrant. Il se peut que vous deviez redémarrer les routeurs et les MP dans certaines circonstances. Voici quelques exemples:

  • Lorsqu'un keystore à qui l'hôte virtuel fait directement référence, le serveur cible ou le point de terminaison cible est mis à jour sans utiliser de références.
  • Lorsque les proxys d'API sont partiellement déployés sur quelques MP.

Avant de commencer

Si vous ne connaissez pas les routeurs et les processeurs de messages, consultez la présentation de Edge pour le cloud privé.

Redémarrage progressif des routeurs sans impact sur le trafic

Cette section décrit la procédure à suivre pour redémarrer les routeurs sans affecter le trafic de l'API entrant.

  1. Connectez-vous au routeur qui doit être redémarré.
  2. Bloquez le port de vérification de l'état sur le routeur à l'aide de la commande suivante. Cela garantit que le routeur est considéré comme non opérationnel et qu'aucun trafic ne sera acheminé vers celui-ci.
    sudo iptables -A INPUT -i eth0 -p tcp --dport 15999 -j REJECT
        
  3. Attendez deux minutes pour vous assurer que tout le trafic en cours est géré correctement avant de redémarrer le routeur. Pour ce faire, exécutez la commande sleep comme suit :
    for i in {001..120}; do sleep 1; printf "\r ${i}"; done
        
  4. Pour arrêter le service Apigee Monit, procédez comme suit :
    apigee-service apigee-monit stop
        
  5. Pour arrêter le service Apigee Router, procédez comme suit :
    apigee-service edge-router stop
        
  6. Démarrez le service Apigee Router comme suit :
    apigee-service edge-router start
        
  7. Attendez que le service Apigee Router soit démarré et prêt à gérer le trafic entrant à l'aide de la commande suivante :
    apigee-service edge-router wait_for_ready
        
  8. Démarrez le service Apigee Monit comme suit :
    apigee-service apigee-monit start
        
  9. Videz les tables IP pour débloquer le port de vérification de l'état 15999 et permettre au routeur de gérer à nouveau le trafic en exécutant les commandes suivantes :
    sudo iptables -F
    sudo iptables -L
        
sudo iptables -A INPUT -i eth0 -p tcp --dport 15999 -j REJECT
for i in {001..120}; do sleep 1; printf "\r ${i}"; done
apigee-service apigee-monit stop
apigee-service edge-router stop
apigee-service edge-router start
apigee-service edge-router wait_for_ready
apigee-service apigee-monit start
sudo iptables -F
sudo iptables -L

Redémarrage progressif des processeurs de messages sans impact sur le trafic

Cette section décrit la procédure à suivre pour redémarrer les processeurs de messages sans affecter le trafic d'API entrant.

  1. Connectez-vous au processeur de messages qui doit être redémarré.
  2. Identifiez le port de vérification de l'état du processeur de messages à l'aide de la commande suivante :
    curl 0:8082/v1/servers/self -s | jq '.tags.property' | jq '.[] | select(.name=="http.port")'
        
  3. Bloquez le port de vérification de l'état (identifié à l'étape 2) sur le processeur de messages. Cela garantit qu'il est considéré comme non opérationnel et qu'aucun trafic ne sera acheminé vers celui-ci.
    sudo iptables -A INPUT -i eth0 -p tcp --dport port # -j REJECT
        

    port # correspond au numéro de port renvoyé par la commande effectuée à l'étape 2.

  4. Attendez deux minutes pour vous assurer que tout le trafic en cours est correctement géré avant de redémarrer le processeur de messages. Pour ce faire, exécutez la commande sleep comme suit :
    for i in {001..120}; do sleep 1; printf "\r ${i}"; done
        
  5. Pour arrêter le service Apigee Monit, procédez comme suit :
    apigee-service apigee-monit stop
        
  6. Pour arrêter le service de processeur de messages Apigee, procédez comme suit :
    apigee-service edge-message-processor stop
        
  7. Démarrez le service de processeur de messages Apigee comme suit :
    apigee-service edge-message-processor start
        
  8. Attendez que le service de processeur de messages Apigee soit démarré et prêt à gérer le trafic entrant à l'aide de la commande suivante :
    apigee-service edge-message-processor wait_for_ready
        
  9. Démarrez le service Apigee Monit comme suit :
    apigee-service apigee-monit start
        
  10. Videz les tables IP pour débloquer le port de vérification de l'état et permettre au processeur de messages de gérer à nouveau le trafic en exécutant les commandes ci-dessous :
    sudo iptables -F
    sudo iptables -L
        
curl 0:8082/v1/servers/self -s | jq '.tags.property' | jq '.[] | select(.name=="http.port")'

sudo iptables -A INPUT -i eth0 -p tcp --dport port # -j REJECT
for i in {001..120}; do sleep 1; printf "\r ${i}"; done
apigee-service apigee-monit stop
apigee-service edge-message-processor stop
apigee-service edge-message-processor start
apigee-service edge-message-processor wait_for_ready
apigee-service apigee-monit start
sudo iptables -F
sudo iptables -L

port # correspond au numéro de port renvoyé par la commande effectuée à l'étape 2.