
Mein Ziel
Ich möchte meine Domain ( dashboards.example.com
) mit meiner Google VM-Instanz auf Port 3000 verbinden, um Metabase zu präsentieren. Dazu verwende ich ein Google DNS und einen Load Balancer.
Mein Problem
Beim Versuch, dies zu tun und über „ auf Metabase zuzugreifen “ zu gelangen, https://dashboards.example.com
wird mir ein schwarzer Bildschirm mit der Meldung angezeigt no unhealthy upstream
. Darüber hinaus zeigen die Integritätsprüfungen der Lastverteiler ( http
& https
) an, dass die Backend-Dienste fehlerhaft sind.
Gibt es jemanden, der weiß, was ich übersehe? Ich glaube, ich übersehe etwas, aber obwohl ich das ganze Internet durchsuche, kann ich die Lösung nicht finden.
Ich habe beispielsweise versucht, meinen Computer neu zu starten oder den Domänen- und Browser-Cache zu leeren.
Das GCP-Setup
DNS
Mein A
Klassen-DNS verweist auf die beiden IP-Adressen der Load Balancer (global extern). Wenn ich die Domäne anpinge, dashboards.example.com
wird mir korrekt die IP von einem der Load Balancer angezeigt.
Lastenausgleich
HTTPSIch habe einen globalen externen HTTPS-Load Balancer mit einem von Google verwalteten SSL-Zertifikat. Das Frontend hat eine temporäre IP-Adresse und verwendet Port
443
. Die Netzwerkdienstebene istpremium
. Das Backendbackend-https
zeigt auf eine Instanzgruppe und verwendet dasHTTPS
Protokoll mit dem benannten Porthttps
. Die Instanzgruppe ist ineurope-west4
und ich habe die Portnummer hinzugefügt3000
. Die Integritätsprüfung zeigt auch auf diesen Port. Die Routing-Route ist die Basisroute mithost
undpath
leer, während sie auf dasselbe Backend zeigt.HTTPIch habe auch einen globalen externen HTTP-Load Balancer. Das Frontend hat eine temporäre IP-Adresse und verwendet Port
80
. Die Netzwerkdienstebene istpremium
. Das Backendbackend-http
(ein anderes Backend, das auf dieselbe Instanzgruppe verweist) verwendet dasHTTP
Protokoll mit dem benannten Porthttp
. Die Instanzgruppe ist ineurope-west4
und ich habe die Portnummer hinzugefügt3000
. Die Integritätsprüfung verweist auch auf diesen Port. Die Routing-Route ist die grundlegende mithost
undpath
leer, während sie auf dasselbe Backend verweist.
Dann schlagen in der Übersicht die Integritätsprüfungen bereits fehl, ich kann nicht herausfinden, warum.
Instanzgruppe
Die Instanzgruppe befindet sich in Zone europe-west4-a
und enthält eine VM-Instanz. Darüber hinaus verfügt sie über zwei benannte Ports namens https
&, http
die beide zum Port führen 3000
.
Vernetzung
Alles wird im selben Subnetz oder VPC hinzugefügt. Ich habe Firewall-Regeln hinzugefügt, um Datenverkehr von den Integritätsprüfungen, SSH und den Lastenausgleichsmodulen zu allen Instanzen im Netzwerk auf dem TCP-Port zuzulassen 3000
.
Extra Eine weitere seltsame Sache, die mir auffällt, ist, dass die Integritätsprüfungen in Ordnung zu sein scheinen, sobald ich die VM herunterfahre.
Kann jemand meinen Fehler erkennen?
Ich habe Dinge wie einen Neustart meines Rechners oder das Leeren des Domänen- und Browser-Caches ausprobiert. Ich habe auch mehrmals versucht, die Lastverteiler neu zu konfigurieren. Leider ohne Erfolg.