Перезапуск маршрутизаторов и процессоров сообщений без влияния на трафик

Вы просматриваете документацию по Apigee Edge.
Перейдите к документации по Apigee X.
Информация

В этом документе рассказывается, как перезапустить маршрутизаторы и процессоры сообщений (MP), не влияя на входящий трафик API. В некоторых случаях может потребоваться перезапустить маршрутизаторы и МП. Вот несколько примеров:

  • Если хранилище ключей, на которое напрямую ссылается виртуальный хост, целевой сервер или целевая конечная точка, обновляется без использования ссылок.
  • Когда прокси API частично развернуты на нескольких процессорах сообщений.

Подготовка

Если вы не знакомы с маршрутизаторами и процессорами сообщений, прочитайте статью Обзор Edge для частного облака.

Перезапуск маршрутизаторов без влияния на трафик

В этом разделе описаны действия, которые необходимо выполнить, чтобы перезапустить маршрутизаторы без влияния на входящий трафик API.

  1. Войдите в аккаунт маршрутизатора, который нужно перезапустить.
  2. Заблокируйте порт проверки состояния на маршрутизаторе, используя следующую команду: Это гарантирует, что маршрутизатор будет считаться неисправным и трафик не будет направляться на него.
    sudo iptables -A INPUT -i eth0 -p tcp --dport 15999 -j REJECT
        
  3. Подождите две минуты, чтобы убедиться, что весь трафик обработан, а затем перезапустите маршрутизатор. Для этого выполните команду sleep следующим образом:
    for i in {001..120}; do sleep 1; printf "\r ${i}"; done
        
  4. Остановите сервис Apigee Monit, выполнив следующие действия:
    apigee-service apigee-monit stop
        
  5. Остановите сервис Apigee Router, выполнив следующие действия:
    apigee-service edge-router stop
        
  6. Запустите сервис Apigee Router следующим образом:
    apigee-service edge-router start
        
  7. Дождитесь, пока сервис Apigee Router запустится и будет готов обрабатывать входящий трафик, используя следующую команду:
    apigee-service edge-router wait_for_ready
        
  8. Запустите сервис Apigee Monit, выполнив следующие действия:
    apigee-service apigee-monit start
        
  9. Сбросьте таблицы IP-адресов, чтобы разблокировать порт проверки состояния 15999 и разрешить маршрутизатору снова обрабатывать трафик, выполнив следующие команды:
    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

Поэтапный перезапуск процессоров сообщений без влияния на трафик

В этом разделе описаны шаги, которые необходимо выполнить, чтобы перезапустить процессоры сообщений (MP) без влияния на входящий трафик API.

  1. Войдите в Message Processor, который нужно перезапустить.
  2. Определите порт проверки работоспособности Message Processor, используя следующую команду:
    curl 0:8082/v1/servers/self -s | jq '.tags.property' | jq '.[] | select(.name=="http.port")'
        
  3. Заблокируйте порт проверки состояния (определенный на шаге 2) на Message Processor. Это гарантирует, что Message Processor будет считаться неисправным и трафик не будет направляться на этот Message Processor.
    sudo iptables -A INPUT -i eth0 -p tcp --dport port # -j REJECT
        

    где port # – номер порта, возвращенный командой, выполненной на шаге 2.

  4. Подождите две минуты, чтобы убедиться, что весь трафик обработан, прежде чем перезапускать Message Processor. Для этого выполните команду sleep следующим образом:
    for i in {001..120}; do sleep 1; printf "\r ${i}"; done
        
  5. Остановите сервис Apigee Monit, выполнив следующие действия:
    apigee-service apigee-monit stop
        
  6. Остановите сервис Message Processor Apigee следующим образом:
    apigee-service edge-message-processor stop
        
  7. Запустите сервис Apigee Message Processor следующим образом:
    apigee-service edge-message-processor start
        
  8. Дождитесь, пока сервис Message Processor Apigee запустится и будет готов обрабатывать входящий трафик. Для этого выполните следующую команду:
    apigee-service edge-message-processor wait_for_ready
        
  9. Запустите сервис Apigee Monit, выполнив следующие действия:
    apigee-service apigee-monit start
        
  10. Сбросьте таблицы IP-адресов, чтобы разблокировать порт проверки работоспособности и разрешить Message Processor снова обрабатывать трафик, выполнив следующие команды:
    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 # – номер порта, возвращенный командой, выполненной на шаге 2.