Als Cloud Architect oder IT-Administrator müssen Sie beim Ausführen einer Anwendung in Compute Engine eine VM-Topologie entwerfen, die Sie effizient bereitstellen und betreiben können.
Compute Engine bietet eine Reihe von Bereitstellungsoptionen: Sie können beispielsweise eine Gruppe von VMs bereitstellen, die Sie als eine einzige Entität verwalten, oder Sie können die VMs als einzelne Ressourcen bereitstellen und verwalten. Jeder Ansatz hat unterschiedliche Vorteile und Einschränkungen. Wie wählen Sie eine optimale Bereitstellungsstrategie aus?
- Bewerten Sie zuerst die wichtigsten Anforderungen Ihrer Anwendung.
- Prüfen Sie die verfügbaren Bereitstellungsoptionen und ihre jeweiligen Vorzüge.
- Wählen Sie eine Strategie aus, die Ihren Anforderungen entspricht und die Funktionen von Compute Engine optimal nutzt.
Arbeitslast bewerten
Beantworten Sie die folgenden Fragen, um die wichtigsten Anforderungen der Arbeitslast zu analysieren, die Sie bereitstellen möchten. Anhand Ihrer Antworten können Sie die Funktionen der einzelnen Bereitstellungsoptionen (siehe nächster Abschnitt) den Anforderungen Ihrer Arbeitslast zuordnen.
Anwendungsstatus
Ist die Anwendung zustandsorientiert?
- Eine zustandsorientierte Anwendung speichert bestimmte Daten wie die Client- oder Sitzungs-ID, bis diese Daten nicht mehr benötigt werden. In einer Online-Shopping-App kann der Einkaufswagendienst beispielsweise Details von Artikeln speichern, die beim Einkauf hinzugefügt oder entfernt werden, und den endgültigen Einkaufswagenstatus beibehalten, wenn der Nutzer den Bezahlprozess startet.
- Eine zustandslose Anwendung muss keine Client-, Transaktions- oder Sitzungsdaten speichern. Beispielsweise kann ein Webserver eine Sitzung schließen, nachdem der Inhalt bereitgestellt wurde, den der Client angefordert hat.
Weitere Informationen zu zustandsorientierten und zustandslosen Anwendungen finden Sie unter Wie sich zustandsorientierte Arbeitslasten von zustandslosen Arbeitslasten unterscheiden.
Sollten instanzspezifische Metadaten beibehalten werden, wenn Ihre VMs neu gestartet werden oder wenn Compute Engine die VMs neu erstellt (automatische Reparatur)?
Wird bereitgestellt
- Soll die VM eine Mischung aus Maschinentypen oder Images verwenden? Brauchen einige VMs beispielsweise speicheroptimierte Maschinentypen, während andere VMs für allgemeine Zwecke nutzen?
- Soll die Infrastruktur automatisch auf Änderungen der Last abgestimmt werden, um ein optimales Gleichgewicht zwischen Kosten und Antwortzeit aufrechtzuerhalten?
- Können alle VMs in einer einzigen Zone, einem VPC-Netzwerk und einem Subnetz ausgeführt werden?
- Soll die Anwendung in derselben Zone wie bestimmte andere Ressourcen ausgeführt werden? Erfordert die Anwendung beispielsweise eine Verbindung mit niedriger Latenz zu einer Datenbank?
Vorgänge
- Möchten Sie die VMs als einzelne Gruppe verwalten? Möchten Sie beispielsweise das Roll-out von Anwendungsaktualisierungen auf allen VMs automatisieren?
- Müssen Sie die VMs mit einem benutzerdefinierten oder Drittanbietertool verwalten?
- Benötigen Sie die Kontrolle über fehlgeschlagene VMs? Wenn beispielsweise eine VM ausfällt, soll sie beendet bleiben, während Sie die Ursache für den Fehler ermitteln?
- Benötigen Sie die Kontrolle über die Sequenz oder den Zeitplan Ihrer VMs zum Starten/Beenden/Anhalten/Wiederaufnehmen? Möchten Sie beispielsweise die VMs an Wochenenden oder zu bestimmten Tageszeiten beenden, um Kosten zu sparen?
Robustheit
- Erfordert die Anwendung Schutz vor zonalen Fehlern? Mit anderen Worten: Wenn eine Zone ausgefallen ist, soll die Anwendung dann weiterhin Anfragen von VMs in anderen Zonen in der Region verarbeiten?
- Wenn eine VM aus irgendeinem Grund beendet wird oder abstürzt oder wenn die Anwendung nicht auf Anfragen reagiert, sollte Compute Engine die VM automatisch neu erstellen?
- Benötigt die Anwendung feste interne oder externe IP-Adressen für die Host-VMs?
Nachdem Sie Ihre Anforderungen geprüft haben, können Sie sich mit den Bereitstellungsoptionen von Compute Engine vertraut machen.
Verfügbare Bereitstellungsoptionen prüfen
Prüfen und lernen Sie die Funktionen und relativen Vorteile der Optionen kennen, die Sie für die Bereitstellung Ihrer Arbeitslasten auf Compute Engine in Betracht ziehen können.
- Eigenständige VMs
- Bei dieser Option wählen Sie den Maschinentyp, das Image, die Laufwerke und andere Attribute für jede bereitgestellte VM einzeln aus. Außerdem verwalten Sie die VMs als separate Ressourcen.
- Nicht verwaltete Instanzgruppe
- Sie können eigenständige VMs bereitstellen und einer Instanzgruppe hinzufügen. You can then use the unmanaged instance group as a backend to a load balancer.
- Verwaltete Instanzgruppe (Managed Instance Group, MIG)
Eine MIG ist eine Gruppe identischer oder ähnlich konfigurierter Instanzen, die Sie mithilfe einer Instanzvorlage bereitstellen.
Sie können eine MIG zustandsorientiert machen, damit bestimmte Laufwerke oder Metadaten beibehalten werden.
Für eine zustandslose MIG können Sie das Autoscaling aktivieren und eine Skalierungsrichtlinie konfigurieren.
Sie können beim Erstellen einer MIG die VMs in einer einzelnen Zone bereitstellen oder sie für Hochverfügbarkeit auf mehrere Zonen in einer Region verteilen.
In der folgenden Tabelle sind die wichtigsten Features der einzelnen Bereitstellungsoptionen zusammengefasst.
Leistungsvermögen | Eigenständige VMs | Nicht verwaltete Instanzgruppe | Zustandsorientierte MIG | Zustandslose MIG |
---|---|---|---|---|
Vorlagenbasierte Bereitstellung einer Gruppe von VMs | ||||
Mischung aus Maschinentypen und Images | ||||
Feste interne oder externe IP-Adressen | ||||
Automatische Reparatur fehlgeschlagener VMs | ||||
Kontrolle über Start-Stopp- und Anhalten-Wiederaufnahme- Operationen | ||||
Gruppe von VMs als Load-Balancer-Backend festlegen | ||||
Laufwerks- und Metadatenerhaltung, für zustandsorientierte Arbeitslasten | ||||
Kontrollierte Aktualisierung bestimmter VMs | ||||
Automatisches Rolling Update aller VMs | ||||
Automatische (und vorausschauende) horizontale Skalierung |
Die folgenden Diagramme zeigen beispielhafte Bereitstellungen nebeneinander, um die wichtigsten Unterschiede zu verdeutlichen.
Eigenständige VMs | Zustandsorientierte MIG | Zustandslose MIG |
---|---|---|
In diesem Beispiel werden drei VMs einzeln erstellt. | Dieses Beispiel zeigt eine MIG mit drei ähnlich konfigurierten VMs, die mithilfe einer Instanzvorlage bereitgestellt werden. |
Dieses Beispiel zeigt eine MIG mit drei identischen VMs, die mithilfe einer Instanzvorlage bereitgestellt werden. |
|
|
|
Sie haben jetzt Ihre Arbeitslast bewertet, die von Compute Engine angebotenen Bereitstellungsoptionen überprüft und sind bereit, einen Bereitstellungsansatz auszuwählen.
Bereitstellungsstrategie auswählen
Die hier beschriebenen Empfehlungen basieren auf einer Zuordnung bestimmter Arbeitslasteigenschaften zu den Funktionen der einzelnen Compute Engine-Bereitstellungsoptionen.
Verwenden Sie den folgenden Entscheidungsprozess. Den visuellen Leitfaden finden Sie im Entscheidungsbaum weiter unten in diesem Dokument.
Wählen Sie zwischen eigenständigen VMs und Instanzgruppen.
Voraussetzungen Empfohlene Bereitstellungsstrategie Mindestens eine der folgenden Anforderungen ist für Ihre Arbeitslast essenziell. - Die Anwendung muss auf VMs ausgeführt werden, die eine Mischung aus Maschinentypen oder Images verwenden.
- Die Anwendung benötigt feste interne oder externe IP-Adressen für die Host-VMs.
- Sie benötigen die Kontrolle über fehlgeschlagene VMs.
- Sie benötigen die Kontrolle über die Start-, Stopp- und Anhalten-Wiederaufnahme-Operationen Ihrer VMs.
- Sie müssen ein benutzerdefiniertes Skript oder ein Drittanbietertool verwenden, um VMs bereitzustellen und zu entfernen.
Wählen Sie eigenständige VMs.
Wenn alle eigenständigen VMs in einer einzigen Zone, einem VPC-Netzwerk und einem Subnetz ausgeführt werden können, sollten Sie die VMs eventuell einer nicht verwalteten Instanzgruppe hinzufügen. Anschließend können Sie die nicht verwaltete Instanzgruppe als Backend für einen Load-Balancer verwenden.
Überspringen Sie den Rest dieses Entscheidungsprozesses.
Keine der oben genannten Anforderungen ist für Ihren Anwendungsfall essenziell. Verwenden Sie eine MIG, um eine Compute Engine-Topologie einzurichten, die einfach zu verwalten, hochverfügbar und skalierbar ist.
Fahren Sie mit dem nächsten Schritt fort.
Wählen Sie zwischen einer zustandsorientierten und einer zustandslosen MIG.
Voraussetzungen Empfohlener MIG-Typ Die Anwendung muss die Laufwerke und Metadaten beibehalten; das heißt, die Anwendung ist zustandsorientiert. Wählen Sie eine zustandsorientierte MIG und konfigurieren Sie die Laufwerke, die Compute Engine bei Unterbrechungen durch Ereignisse wie VM-Neuerstellung, automatische Reparatur und Aktualisierungen beibehalten soll.
Fahren Sie mit dem nächsten Schritt fort.
Die Anwendung ist nicht zustandsorientiert. Wählen Sie eine zustandslose MIG und nutzen Sie die Autoscaling-Funktion. Bei disruptiven Vorgängen erstellt Compute Engine Laufwerke gemäß der Instanzvorlage neu.
Fahren Sie mit dem nächsten Schritt fort.
Wählen Sie zwischen einer zonalen und einer regionalen MIG.
Voraussetzungen Empfohlener MIG-Typ Die Anwendung muss in einer einzelnen Zone ausgeführt werden oder der Schutz vor Zonenausfällen ist nicht essenziell. Wählen Sie eine zonale MIG. Die Anwendung muss auch dann weiter ausgeführt werden, wenn ein Zonenausfall auftritt. Wählen Sie eine regionale MIG.
Entscheidungsbaum
Das folgende Diagramm führt Sie durch die Faktoren, die bei der Entscheidung für Ihre Compute Engine-Bereitstellungsstrategie zu berücksichtigen sind:
Nächste Schritte
- Weitere Informationen zu Instanzvorlagen.
- Weitere Informationen zur Funktionsweise zustandsorientierter MIGs.
- Weitere Informationen zu regionalen MIGs.
- Eine MIG erstellen.
- Instanzgruppen automatisch skalieren.
- Vorhandene Arbeitslast zu einer zustandsorientierten MIG migrieren.