
Ich finde es etwas verwirrend, wie Google Cloud Auto Scaler, Managed Instance Group, Target Pools und Network Load Balancer zusammenarbeiten. Die Dokumentation ist etwas spärlich und es gibt keine explizite Verbindung zwischen der Verwendung eines NLB (wir brauchen das, da wir HTTPS benötigen, also reicht der aktuelle HTTP Load Balancer nicht aus) und einem Auto Scaler. Ich würde denken, dass der Hauptanwendungsfall für Auto Scaler die Verwaltung von Instanzen hinter einem NLB wäre.
Problem 1: Es scheint nicht so, dass, wenn wir einmal einen Zielpool einer verwalteten Instanzgruppe zuweisen (über [set-target-pool][1]), die bereits vorhandenen Instanzen diesem Zielpool zugewiesen werden (vielleicht ist das unser Fehler).
Problem 2: Es scheint, dass verwaltete Gruppeninstanzen nicht in die Rotation des NLB gelangen, es sei denn, sie haben eine öffentliche (wenn auch temporäre) IP. Könnte wieder einmal unser Fehler sein, aber sollte eine private IP nicht ausreichen?
Problem 3: Wenn eine Instanz in der verwalteten Instanzgruppe fehlerhaft wird (z. B. wenn sie nicht mehr auf HTTP reagiert), entfernt der NLB sie aus der Rotation (über die Integritätsprüfung), aber der Auto Scaler scheint damit zufrieden zu sein und betrachtet sie als eine gültige laufende Instanz.
Was fehlt uns?
Antwort1
HTTPS-Load-Balancing istjetzt in Alpha verfügbarund kann für Sie nun die beste Lösung darstellen.
Problem 1: Der Instance Group Manager erwartet, dass seine Gruppen vollständig homogen sind. Wenn also eineverwaltete Instanzgruppeist so konfiguriert, dass seine Instanzen einem Zielpool hinzugefügt werden. Es ist ganz natürlich, dass sowohl die vorhandenen als auch die zukünftigen Instanzen hinzugefügt werden. Wenn Sie aufteilen müssen, sodass einige Instanzen dem Zielpool hinzugefügt werden und andere nicht, müssen Sie die Instanzgruppen trennen.
Problem 2: Es ist möglich, den Netzwerklastenausgleich nur mit Instanzen zu verwenden, die über private IP-Adressen verfügen. Die Weiterleitungsregel muss jedoch eine externe IP-Adresse haben.
Problem 3: Sie haben Recht, Autoscaler führt keine Integritätsprüfungen durch und zerstört eine Instanz, die die Integritätsprüfungen des Lastenausgleichs nicht besteht, nicht automatisch. Wenn Sie dies derzeit möchten, müssen Sie dies manuell tun (ich empfehle die Verwendung des „Recreate“-Aufrufs des Instance Group Managers).