Activation/désactivation de la joignabilité du serveur (processeur de messages/routeur)

Edge for Private Cloud v. 4.17.01

Il est recommandé de désactiver l'accessibilité sur un serveur pendant la maintenance, par exemple pour un redémarrage ou une mise à niveau du serveur. Lorsque l'accessibilité est désactivée, aucun trafic n'est dirigé vers le serveur. Par exemple, lorsque l'accessibilité est désactivée sur un processeur de messages, les routeurs ne dirigent aucun trafic vers ce processeur de messages.

Par exemple, pour mettre à niveau un processeur de messages, vous pouvez utiliser la procédure suivante :

  1. Désactivez l'accessibilité sur le processeur de messages.
  2. Mettez à niveau le processeur de messages.
  3. Activez l'accessibilité sur le processeur de messages.

Désactiver/activer l'accessibilité sur un processeur de messages

Pour désactiver l'accessibilité sur le processeur de messages, il vous suffit de l'arrêter :

> /opt/apigee/apigee-service/bin/apigee-service edge-message-processor stop

Le processeur de messages traite d'abord tous les messages en attente avant de s'arrêter. Toutes les nouvelles requêtes sont acheminées vers d'autres processeurs de messages disponibles.

Pour redémarrer le processeur de messages, utilisez les commandes suivantes :

> /opt/apigee/apigee-service/bin/apigee-service edge-message-processor start
 > /opt/apigee/apigee-service/bin/apigee-service edge-message-processor wait_for_ready

La commande wait_for_ready renvoie le message suivant lorsque le processeur de messages est prêt à traiter les messages :

Checking if message-processor is up: message-processor is up.

Désactiver/activer l'accessibilité sur un routeur

Dans un environnement de production, vous disposez généralement d'un équilibreur de charge devant les routeurs Edge. Les équilibreurs de charge surveillent le port 15999 sur les routeurs pour s'assurer que la route est disponible.

Configurez l'équilibreur de charge pour qu'il effectue une vérification d'état HTTP ou TCP sur le routeur à l'aide de l'URL suivante :

http://router_IP:15999/ v1/servers/self/reachable

Cette URL renvoie un code de réponse HTTP 200 si le routeur est accessible.

Pour rendre un routeur inaccessible, vous pouvez bloquer le port 15999 sur le routeur. Si l'équilibreur de charge ne peut pas accéder au routeur sur le port 15999, il ne transfère plus les requêtes au routeur. Par exemple, vous pouvez bloquer le port en utilisant la commande iptables suivante sur le nœud du routeur :

>  sudo iptables -A INPUT -i eth0 -p tcp --dport 15999 -j REJECT

Pour rendre le routeur disponible ultérieurement, videz les tables d'adresses IP :

> sudo iptables -F

Vous utilisez peut-être iptables pour gérer d'autres ports sur le nœud. Vous devez donc en tenir compte lorsque vous videz iptables ou que vous l'utilisez pour bloquer le port 15999. Si vous utilisez iptables pour d'autres règles, vous pouvez utiliser l'option -D pour annuler la modification spécifique :

> sudo iptables -D INPUT -i eth0 -p tcp --dport 15999 -j REJECT

Vérifier l'état du routeur ou du processeur de messages

Pour obtenir l'état d'un routeur, envoyez une requête au port 8081 du routeur :

> curl -v http://<routerIP>:8081/v1/servers/self/up

Si le routeur est opérationnel, la requête renvoie "true" dans la réponse et HTTP 200. Notez que cet appel vérifie uniquement si le routeur est opérationnel. Le contrôle de l'accessibilité du routeur à partir d'un équilibreur de charge est déterminé par le port 15999.

Pour obtenir l'état d'un processeur de messages, procédez comme suit :

> curl http://<mpIP>:8082/v1/servers/self/up