Przeglądasz dokumentację Apigee Edge.
Przejdź do
Dokumentacja Apigee X. informacje.
Ten dokument wyjaśnia, jak ponownie uruchamiać routery i procesory wiadomości (MP) bez wpływu na ruchu przychodzącego 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 wskazywany w hoście wirtualnym, na serwerze docelowym lub w miejscu docelowym punkt końcowy jest aktualizowany bez użycia odwołań.
- Gdy serwery proxy interfejsu API są częściowo wdrożone w kilku MP.
Zanim zaczniesz
Jeśli nie wiesz, czym są routery i procesory wiadomości, przeczytaj Omówienie Edge dla chmury prywatnej.
Krótkotrwałe ponowne uruchamianie routerów bez wpływu na ruch
W tej sekcji opisano kroki używane do ponownego uruchomienia routerów bez wpływu na przychodzący ruch interfejsu API.
- Zaloguj się do routera, który chcesz ponownie uruchomić.
-
Zablokuj port kontroli stanu w routerze za pomocą tego polecenia. Dzięki temu
router jest uznawany za niesprawny i żaden ruch nie będzie do niego kierowany.
sudo iptables -A INPUT -i eth0 -p tcp --dport 15999 -j REJECT
-
Odczekaj dwie minuty, aby mieć pewność, że ruch odbywa się bez problemów.
i ponownie uruchom router. Aby to zrobić, uruchom polecenie
sleep
w następujący sposób:for i in {001..120}; do sleep 1; printf "\r ${i}"; done
-
Zatrzymaj usługę Apigee Monit w ten sposób:
apigee-service apigee-monit stop
-
Zatrzymaj usługę Apigee Router:
apigee-service edge-router stop
-
Uruchom usługę Apigee Router w ten sposób:
apigee-service edge-router start
-
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
-
Uruchom usługę Apigee Monit w ten sposób:
apigee-service apigee-monit start
-
Opróżnianie tabel adresów IP, aby odblokować port kontroli stanu 15999 i umożliwić routerowi obsługę
aby zwiększyć ruch, 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
Krótkotrwałe ponowne uruchomienie procesorów wiadomości bez wpływu na ruch
W tej sekcji opisano kroki używane do ponownego uruchamiania procesorów wiadomości bez na przychodzący ruch API.
- Zaloguj się do procesora wiadomości, który chcesz ponownie uruchomić.
-
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")'
-
Zablokuj port kontroli stanu (zidentyfikowany w kroku 2) w procesorze wiadomości. Dzięki temu masz pewność,
że procesor wiadomości jest uznawany za niesprawny i żaden ruch nie będzie na nie kierowany
Procesor komunikatów.
sudo iptables -A INPUT -i eth0 -p tcp --dport port # -j REJECT
Gdzie port # to numer portu zwrócony w wyniku polecenia wykonanego w kroku 2.
-
Odczekaj dwie minuty, aby mieć pewność, że ruch odbywa się bez problemów.
Uruchom ponownie procesor wiadomości. Aby to zrobić, uruchom polecenie
sleep
w następujący sposób:for i in {001..120}; do sleep 1; printf "\r ${i}"; done
-
Zatrzymaj usługę Apigee Monit w ten sposób:
apigee-service apigee-monit stop
-
Zatrzymaj usługę przetwarzania wiadomości Apigee w ten sposób:
apigee-service edge-message-processor stop
- Sarta usługa przetwarzania wiadomości Apigee w następujący sposób:
apigee-service edge-message-processor start
-
Poczekaj, aż usługa procesora wiadomości Apigee zostanie uruchomiona i będzie gotowa do obsługi
ruch przychodzący za pomocą tego polecenia:
apigee-service edge-message-processor wait_for_ready
-
Uruchom usługę Apigee Monit w ten sposób:
apigee-service apigee-monit start
- Opróżnianie tabel adresów IP, aby odblokować port kontroli stanu i umożliwić procesorowi wiadomości
aby ponownie obsłużyć ruch, 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 w wyniku polecenia wykonanego w kroku 2.