Reinicia los routers y los procesadores de mensajes sin afectar el tráfico

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

En este documento, se explica cómo reiniciar routers y procesadores de mensajes (MP) sin afectar el tráfico entrante de la API. Es posible que, en determinadas circunstancias, debas reiniciar los routers y MP. Estos son algunos ejemplos:

  • Cuando un almacén de claves al que se hace referencia directamente en el host virtual, el servidor de destino o el extremo de destino se actualiza sin usar referencias.
  • Cuando los proxies de API se implementan de forma parcial en algunos MP

Antes de comenzar

Si no estás familiarizado con los routers y procesadores de mensajes, consulta la descripción general de Edge para la nube privada.

Reinicio progresivo de los routers sin impacto en el tráfico

En esta sección, se describen los pasos utilizados para reiniciar los routers sin afectar el tráfico de API entrante.

  1. Accede al router que debe reiniciarse.
  2. Bloquea el puerto de verificación de estado en el router con el siguiente comando. Esto garantiza que el router se considere en mal estado y que no se enrute ningún tráfico a él.
    sudo iptables -A INPUT -i eth0 -p tcp --dport 15999 -j REJECT
        
  3. Espera dos minutos para asegurarte de que cualquier tráfico en tránsito se controle sin problemas antes de reiniciar el router. Para ello, ejecuta el comando sleep de la siguiente manera:
    for i in {001..120}; do sleep 1; printf "\r ${i}"; done
        
  4. Detén el servicio Apigee Monit de la siguiente manera:
    apigee-service apigee-monit stop
        
  5. Detén el servicio Router de Apigee de la siguiente manera:
    apigee-service edge-router stop
        
  6. Inicia el servicio de router de Apigee de la siguiente manera:
    apigee-service edge-router start
        
  7. Espera hasta que el servicio del router de Apigee se inicie y esté listo para controlar el tráfico entrante con el siguiente comando:
    apigee-service edge-router wait_for_ready
        
  8. Inicia el servicio de monetización de Apigee de la siguiente manera:
    apigee-service apigee-monit start
        
  9. Limpia las tablas de IP para desbloquear el puerto de verificación de estado 15999 y permite que el router vuelva a controlar el tráfico mediante la ejecución de los siguientes comandos:
    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

Reinicio progresivo de los procesadores de mensajes sin impacto en el tráfico

En esta sección, se describen los pasos que se usan para reiniciar Message Processor (MP) sin afectar el tráfico entrante de la API.

  1. Accede al Message Processor que se debe reiniciar.
  2. Identifica el puerto de verificación de estado de Message Processor con el siguiente comando:
    curl 0:8082/v1/servers/self -s | jq '.tags.property' | jq '.[] | select(.name=="http.port")'
        
  3. Bloquea el puerto de verificación de estado (identificado en el paso 2) en Message Processor. Esto garantiza que el procesador de mensajes se considere en mal estado y que no se enrute ningún tráfico a este procesador de mensajes.
    sudo iptables -A INPUT -i eth0 -p tcp --dport port # -j REJECT
        

    Donde port # es el número de puerto que muestra el comando realizado en el paso 2.

  4. Espera dos minutos para asegurarte de que cualquier tráfico en tránsito se controle sin problemas antes de reiniciar Message Processor. Para ello, ejecuta el comando sleep de la siguiente manera:
    for i in {001..120}; do sleep 1; printf "\r ${i}"; done
        
  5. Detén el servicio Apigee Monit de la siguiente manera:
    apigee-service apigee-monit stop
        
  6. Detén el servicio de Apigee Message Processor de la siguiente manera:
    apigee-service edge-message-processor stop
        
  7. Envía el servicio de procesador de mensajes de Apigee de la siguiente manera:
    apigee-service edge-message-processor start
        
  8. Espera hasta que el servicio de Apigee Message Processor se inicie y esté listo para controlar el tráfico entrante con el siguiente comando:
    apigee-service edge-message-processor wait_for_ready
        
  9. Inicia el servicio de monetización de Apigee de la siguiente manera:
    apigee-service apigee-monit start
        
  10. Limpia las tablas de IP para desbloquear el puerto de verificación de estado y permite que Message Processor vuelva a controlar el tráfico mediante la ejecución de los siguientes comandos:
    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

Donde port # es el número de puerto que muestra el comando realizado en el paso 2.