Ponowne uruchamianie routerów i podmiotów przetwarzających wiadomości bez wpływu na ruch

Przeglądasz dokumentację Apigee Edge.
Otwórz dokumentację Apigee X.
Informacje

Ten dokument wyjaśnia, jak ponownie uruchamiać routery i procesory wiadomości (MP) bez wpływu na ruch przychodzący przez interfejs API. W pewnych okolicznościach konieczne może być ponowne uruchomienie routerów i MP. Oto kilka przykładów:

  • Gdy magazyn kluczy jest bezpośrednio odwołuje się do hosta wirtualnego, serwer docelowy lub docelowy punkt końcowy są aktualizowane bez użycia odwołań.
  • Gdy serwery proxy API są częściowo wdrożone na kilku Mpix.

Zanim zaczniesz

Jeśli nie wiesz, czym są routery i procesory wiadomości, przeczytaj omówienie Edge for Private Cloud.

Kroczące ponowne uruchomienie routerów bez wpływu na ruch

W tej sekcji opisano kroki używane do ponownego uruchamiania routerów bez wpływu na przychodzący ruch API.

  1. Zaloguj się do routera, który chcesz ponownie uruchomić.
  2. Zablokuj port kontroli stanu w routerze, używając tego polecenia. Dzięki temu router będzie uznawany za nieprawidłowy i nie będzie do niego kierowany żaden ruch.
    sudo iptables -A INPUT -i eth0 -p tcp --dport 15999 -j REJECT
        
  3. Odczekaj 2 minuty, aby upewnić się, że cały ruch przychodzący jest prawidłowo obsługiwany, zanim ponownie uruchomisz router. Możesz to zrobić, uruchamiając polecenie sleep w ten sposób:
    for i in {001..120}; do sleep 1; printf "\r ${i}"; done
        
  4. Zatrzymaj usługę Apigee Monit w ten sposób:
    apigee-service apigee-monit stop
        
  5. Zatrzymaj usługę Apigee Router w ten sposób:
    apigee-service edge-router stop
        
  6. Uruchom Apigee Router w ten sposób:
    apigee-service edge-router start
        
  7. Poczekaj, aż usługa Apigee Router zostanie uruchomiona i będzie gotowa do obsługi ruchu przychodzącego za pomocą tego polecenia:
    apigee-service edge-router wait_for_ready
        
  8. Uruchom Apigee Monit w ten sposób:
    apigee-service apigee-monit start
        
  9. Wyczyść tabele IP, aby odblokować port kontroli stanu 15999 i zezwolić routerowi na ponowne obsługę ruchu, uruchamiając te polecenia:
    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

kroczące ponowne uruchomienie procesorów wiadomości bez wpływu na ruch;

W tej sekcji opisano kroki potrzebne do ponownego uruchomienia procesorów wiadomości (MP) bez wpływu na ruch przychodzący przez interfejs API.

  1. Zaloguj się do podmiotu przetwarzającego wiadomości, który musi zostać ponownie uruchomiony.
  2. Zidentyfikuj port kontroli stanu procesora wiadomości za pomocą tego polecenia:
    curl 0:8082/v1/servers/self -s | jq '.tags.property' | jq '.[] | select(.name=="http.port")'
        
  3. Zablokuj port kontroli stanu (zidentyfikowany w kroku 2) procesora wiadomości. Dzięki temu procesor wiadomości będzie uznawany za nieprawidłowy i nie będzie do niego kierowany żaden ruch.
    sudo iptables -A INPUT -i eth0 -p tcp --dport port # -j REJECT
        

    Gdzie port # to numer portu zwrócony z polecenia wykonanego w kroku 2.

  4. Odczekaj 2 minuty, aby upewnić się, że cały ruch przychodzący jest prawidłowo obsługiwany, zanim ponownie uruchomisz procesor wiadomości. Możesz to zrobić, uruchamiając polecenie sleep w ten sposób:
    for i in {001..120}; do sleep 1; printf "\r ${i}"; done
        
  5. Zatrzymaj usługę Apigee Monit w ten sposób:
    apigee-service apigee-monit stop
        
  6. Zatrzymaj usługę Apigee Message Processor w ten sposób:
    apigee-service edge-message-processor stop
        
  7. Skonfiguruj usługę Apigee Message Processor w ten sposób:
    apigee-service edge-message-processor start
        
  8. Poczekaj, aż usługa Apigee Message Processor zostanie uruchomiona i będzie gotowa do obsługi ruchu przychodzącego za pomocą tego polecenia:
    apigee-service edge-message-processor wait_for_ready
        
  9. Uruchom Apigee Monit w ten sposób:
    apigee-service apigee-monit start
        
  10. Wyczyść tabele IP, aby odblokować port kontroli stanu i zezwolić procesorowi wiadomości na ponowne obsługę ruchu, uruchamiając poniższe polecenia:
    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

Gdzie port # to numer portu zwrócony z polecenia wykonanego w kroku 2.