Tworzenie kopii zapasowych DPE vApp kończy się niepowodzeniem z błędem "vmwappimage error <19591>" z powodu problemów z bilansem obciążenia
Summary: Tworzenie kopii zapasowych vApp DPE ulega awarii z błędem „vmwappimage Error <19591>: httpPost: http_code: 500 sending to url 'https://localhost:8080/vcp-ba-vappplugin-ws/vapp'” z powodu problemu z bilansem obciążenia. Bilanse obciążenia, np. bilans obciążenia CloudFlare, mogą wywoływać błąd „HTTP 524 Origin Time-out” powodujący awarię kopii zapasowych. ...
Symptoms
W dzienniku kopii zapasowej może pojawić się następujący komunikat o błędzie:
2021-02-08 10:02:50 vmwappimage Info <19594>: httpPost: url https://localhost:8080/vcp-ba-vappplugin-ws/vapp 2021-02-08 10:03:22 vmwappimage Error <19591>: httpPost: http_code: 500 sending to url 'https://localhost:8080/vcp-ba-vappplugin-ws/vapp' 2021-02-08 10:03:22 vmwappimage Info <9772>: Starting graceful (staged) termination, Prep-for-backup message to ADS failed (wrap-up stage) 2021-02-08 10:03:22 vmwappimage Error <0000>: Prep-for-backup message to ADS failed 2021-02-08 10:03:22 vmwappimage Info <19594>: httpPost: url https://localhost:8080/vcp-ba-vappplugin-ws/vapp 2021-02-08 10:03:45 vmwappimage Error <19591>: httpPost: http_code: 500 sending to url 'https://localhost:8080/vcp-ba-vappplugin-ws/vapp' 2021-02-08 10:03:45 vmwappimage Error <17707>: Post backup-complete message to ADS failed. 2021-02-08 10:03:45 vmwappimage Info <16038>: Final summary, cancelled/aborted 0, snapview 0, exitcode 157: miscellaneous error
vcdsdk.log VPA w "/var/log/vcp/srv/vcdsdk.log" zawiera następujący błąd:
> 2021-02-12 11:58:37,368 [AMQP listener 9] INFO (RestUtil.java:329) - Response - <html> > <head><title>524 Origin Time-out</title></head> > <body bgcolor="white"> > <center><h1>524 Origin Time-out</h1></center> > <hr><center>cloudflare-nginx</center> > </body> > </html>
Etapy włączania debugowania interfejsu API w chmurze:
- Zaloguj się do węzła głównego VCP
- Edytowanie plików
/etc/vcp/srv/vcpsrv-log4j2.xml - Oryginalna zawartość:
<Logger name="com.vmware" level="info" additivity="true" />
Zmień ten wiersz na następujący:
<Logger name="com.vmware" level="debug" additivity="true" /> - Uruchom ponownie usługę bg i srv,
vcp-cli bg update -p <MASTER-PASSWORD> <BG-INSTANCE-NAME>
vcp-cli srv update -p <MASTER-PASSWORD> <SRV-CELL-INSTANCE-NAME>
Wykonanie nslookup FQDN vCloud Director z VPA pokazuje wiele adresów IP.
Klient potwierdza, że ma skonfigurowany bilans obciążenia.
Cause
Bramy kopii zapasowej próbujące nawiązać połączenie z platformą vCloud Director natrafiają na bilans obciążenia CloudFlare. Żądanie API kończy się niepowodzeniem w module równoważenia obciążenia CloudFlare, powodując problem.
Moduł równoważenia obciążenia CloudFlare z kodem powrotu zapewnia następujące elementy:
2021-02-12 11:58:37,368 [AMQP listener 9] INFO (RestUtil.java:329) - Response - <html> > <head><title>524 Origin Time-out</title></head> > <body bgcolor="white"> > <center><h1>524 Origin Time-out</h1></center> > <hr><center>cloudflare-nginx</center> > </body> > </html>
Resolution
-
Potwierdź z klientem, czy ma skonfigurowany moduł równoważenia obciążenia między komponentami VPA, takimi jak bramki zapasowe itd., a modułem vCloud Director.
-
Dodaj wpisy pliku hosta lokalnego dla wszystkich maszyn wirtualnych kontenera Docker, aby ręcznie wymusić na komponentach DPE łączenie się z vCloud Director przy użyciu prywatnego adresu IP z pominięciem bilansu obciążenia.
-
W przypadku DPE w wersjach poniżej 19.4 wpisy plików hosta można tworzyć na poszczególnych maszynach wirtualnych DPE, takich jak maszyna wirtualna SRV-Cell, maszyna wirtualna bramy kopii zapasowych itd
-
W przypadku DPE w wersji 19.4 i nowszych zmiany należy wprowadzić w każdym kontenerze Docker.
- Otwórz połączenie SSH z maszyną wirtualną VPA
- Uruchom następujące polecenie, aby pobrać listę kontenerów platformy Docker:
docker ps - Uruchom następujące polecenie, aby wejść do kontenera platformy Docker:
docker exec -it <first 2 digits of containerid> /bin/bash - Uruchom następujące polecenie, aby zaktualizować rekordy plików hostów lokalnych:
echo "IP_ADDRESS FQDN SHORTNAME" >> /etc/hosts