Wenn Sie Ihre Arbeitslasten so konfigurieren, dass sie auf einen einzelnen Maschinentyp oder eine einzelne Zone angewiesen sind, kann dies Ihre Fähigkeit einschränken, bei Nachfragespitzen auf verfügbare Ressourcen zuzugreifen. Um die Bereitstellung von Rechenressourcen zu optimieren und dafür zu sorgen, dass Ihre Arbeitslasten auch bei Nachfragespitzen ausgeführt werden, müssen Sie eine flexible Compute Engine-Infrastruktur entwerfen. Mit der Infrastrukturflexibilität können Sie mehrere Zonen, Maschinentypen oder Startzeiten anstelle einer festen Konfiguration angeben. Compute Engine wählt automatisch aus Ihren bevorzugten Optionen aus. So können Sie die Ressourcenverfügbarkeit maximieren, das Preis-Leistungs-Verhältnis verbessern und die neueste Hardware sicher einführen.
In diesem Dokument werden die Dimensionen der Infrastrukturflexibilität, ihre Vorteile und die Auswahl des richtigen Ansatzes für Ihre Arbeitslast erläutert. Außerdem werden die relevanten Compute Engine-Funktionen, Designüberlegungen und Schritte für die Einführung beschrieben. Dieses Dokument richtet sich an Lösungsarchitekten, Infrastrukturbetreiber und Cloud-Entwickler, die Recheninfrastruktur entwerfen oder verwalten.
Infrastrukturflexibilität
Sie können die Flexibilität der Infrastruktur in den folgenden drei Dimensionen gestalten:
Standortflexibilität (wo): Compute Engine-Instanzen über mehrere Zonen in einer Region verteilen, um den Zugriff auf verfügbare Ressourcen zu maximieren, oder automatisch eine einzelne Zone mit verfügbarer Kapazität für latenzempfindliche Arbeitslasten auswählen.
Flexibilität beim Maschinentyp (was): Geben Sie eine sortierte Liste kompatibler Maschinentypen an, damit für Ihre Arbeitslast bei Bedarf Alternativen verwendet werden können.
Zeitliche Flexibilität (wann): Anfragen für Ressourcen mit hoher Nachfrage, z. B. Beschleuniger, in die Warteschlange stellen, anstatt eine sofortige Bereitstellung für Arbeitslasten zu erzwingen, die nicht sofort gestartet werden müssen.
Vorteile einer flexiblen Infrastruktur
Die Einführung einer flexiblen Compute Engine-Infrastruktur bietet die folgenden Vorteile:
Automatisiert die Kapazitätsverwaltung bei Nachfragespitzen. Ihre Arbeitslasten finden und verwenden automatisch Ressourcen über mehrere Maschinentypen und Zonen hinweg. So wird sichergestellt, dass Ihre Skalierungsanfragen erfolgreich sind, auch wenn Ihre bevorzugte Hardware vorübergehend nicht verfügbar ist.
Vereinfacht die Kapazitätsverwaltung: Sie können den operativen Aufwand für die manuelle Suche nach verfügbarer Hardware reduzieren. Compute Engine leitet Ihre Anfragen automatisch basierend auf Ihren Fallback-Einstellungen weiter, wodurch betriebliche Engpässe reduziert werden.
Kapazitätsrisiken während der Umstellung auf die neueste Hardware werden minimiert. Sie können Ihre Bereitstellungen so konfigurieren, dass die neuesten Hardwaregenerationen priorisiert und ältere Generationen als Fallback beibehalten werden. Diese Einstellung macht es weniger riskant, die neuesten und stark nachgefragten Maschinen zu verwenden, da Ihre Bereitstellung automatisch Kapazität für ältere Maschinen anfordern kann, wenn die neuesten nicht verfügbar sind.
Kosten für Baseline- und Spitzen-Traffic optimieren: Sie können Kapazität nur für Ihren bekannten Baseline-Traffic reservieren und Maschinentyp-Fallbacks verwenden, um unvorhersehbare Spitzen zu bewältigen. Dieser Ansatz reduziert die Kosten für ungenutzte Sicherungskapazität. Sie können auch Rabatte für flexible Compute-Zusicherungen verwenden, um Rabatte für verschiedene Maschinenserien und Regionen zu erhalten. So wird verhindert, dass On-Demand-Preise berechnet werden, wenn Ihre Arbeitslast die Maschinenserie oder Region wechselt.
Vergleich der Flexibilitätsdimensionen
Sie können Standortflexibilität mit Maschinentyp- oder Zeitflexibilität kombinieren. Maschinentyp- und Zeitflexibilität sind jedoch in einer einzelnen Bereitstellung nicht kompatibel. Sie müssen zwischen Hardware-Fallbackoptionen wählen oder in einer Warteschlange warten, bis Ressourcen verfügbar werden.
Die folgende Tabelle vergleicht die einzelnen Flexibilitätsdimensionen, damit Sie die Optionen besser bewerten können. Informationen dazu, welcher Ansatz für Ihren speziellen Anwendungsfall geeignet ist, finden Sie unter Eignung und Empfehlungen für Arbeitslasten.
| Standortflexibilität (wo) | Flexibilität bei Maschinentypen (was) | Zeitliche Flexibilität (wann) | |
|---|---|---|---|
| Verfügbarkeit verbessern | Maximiert den Zugriff auf verfügbare Ressourcen in mehreren Zonen in einer Region. | Die Wahrscheinlichkeit von Fehlern aufgrund nicht verfügbarer Ressourcen wird verringert, da auf alternative, kompatible Maschinentypen zurückgegriffen wird. | Stark nachgefragte Ressourcen werden abgerufen, indem Anfragen in eine Warteschlange gestellt werden, bis Kapazität verfügbar ist. |
| Zeitachse für die Bereitstellung | Sofort | Sofort | In der Warteschlange |
| Bereitstellungsmethode | Stellt Compute-Instanzen basierend auf der Verfügbarkeit in den ausgewählten Zonen bereit. | Stellt Compute-Instanzen basierend auf der Verfügbarkeit für die ausgewählten Maschinentypen bereit. | Stellt Compute-Instanzen bereit, wenn die gesamte angeforderte Kapazität verfügbar ist. |
| Maschinentypunterstützung | Unterstützt einzelne oder mehrere Maschinentypen in verschiedenen Zonen. | Es werden mehrere Maschinentypen verwendet. | Unterstützt nur einen Maschinentyp. |
Eignung von Arbeitslasten und Empfehlungen
Die Einführung von Infrastrukturflexibilität hängt von der Architektur und den Leistungsanforderungen Ihrer Arbeitslast ab. Die folgende Tabelle enthält eine Zusammenfassung der empfohlenen Flexibilitätsdimensionen und ‑konfigurationen für einige gängige Arbeitslasttypen, damit Sie den besten Ansatz auswählen können.
| Arbeitslasttyp | Empfehlung zur Flexibilität |
|---|---|
| Zustandslose Batchverarbeitung, entkoppeltes High-Throughput-Computing (HTC) |
Flexibilität bei Standort und Maschinentyp: Verwenden Sie die Richtlinie zur Instanzflexibilität mit einer der folgenden Optionen:
Mit diesen Ansätzen können Ihre Arbeitslasten über verschiedene Zonen und Maschinentypen hinweg skaliert werden, um die Ressourcenverfügbarkeit zu maximieren. |
| KI-/ML-Training, ‑Abstimmung und Batchjobs in großem Umfang | Zeitliche Flexibilität: Verwenden Sie Bereitstellungsmodelle, die den Dynamic Workload Scheduler (DWS) verwenden. Dieser Ansatz verbessert den Zugriff auf Ressourcen mit hoher Nachfrage, z. B. Beschleuniger, da Anfragen in eine Warteschlange gestellt werden, anstatt eine sofortige On-Demand-Bereitstellung zu erfordern. |
| Mikrodienste und Web-Frontends | Flexibilität bei Standort und Maschinentyp: Verwenden Sie regionale MIGs mit der Zielverteilungsform BALANCED und einer Richtlinie zur Instanzflexibilität. Wählen Sie Maschinentypen mit passenden vCPU- und Arbeitsspeicherzahlen für eine vorhersagbare automatische Skalierung aus. Aktivieren Sie außerdem „Update bei Reparatur“, damit für alle neu erstellten Compute-Instanzen die neueste Konfiguration für die Instanzflexibilität verwendet wird. |
| Hochverfügbarkeitsdatenbanken | Standort- und Maschinentypflexibilität: Verwenden Sie regionale MIGs mit der Zielverteilungsform |
| Systeme mit strengen Latenzanforderungen | Standortflexibilität: Verwenden Sie regionale MIGs mit der Verteilungsform ANY_SINGLE_ZONE. Diese Form bietet Flexibilität bei der Standortwahl, da alle Zonen in der Region nach ausreichender Kapazität durchsucht werden. Gleichzeitig wird dafür gesorgt, dass alle Instanzen in derselben Zone platziert werden, um eine niedrige Latenz zu gewährleisten. |
Flexible Konfigurationen können zu Hardwareabweichungen führen, die sich auf die Anwendungsleistung auswirken können. Wenn Sie Flexibilität einplanen, müssen Sie die Kompromisse zwischen der Maximierung der Ressourcenverfügbarkeit und der Aufrechterhaltung einer konsistenten Leistung abwägen. Weitere Informationen finden Sie im folgenden Abschnitt Flexible Infrastruktur bewerten und einführen.
Wichtige Flexibilitätsfunktionen in Compute Engine
Um die Kapazitätsverwaltung zu automatisieren, können Sie die Flexibilität in mehreren Ebenen Ihrer Infrastruktur implementieren. Compute Engine bietet Funktionen, die Flexibilität in Bezug auf Standort, Maschinentyp und Zeit ermöglichen. Sie können diese Funktionen unabhängig voneinander konfigurieren oder kombinieren, um sie an die Anforderungen Ihrer Arbeitslast anzupassen.
Funktionen für Standortflexibilität
Funktionen zur Standortflexibilität maximieren die Ressourcenverfügbarkeit, indem Compute-Instanzen auf mehrere Zonen in einer Region verteilt werden. Um diesen Vorteil zu maximieren, sollten Sie Regionen auswählen, in denen Ihre bevorzugten Maschinentypen in allen Zonen verfügbar sind.
Sie können die Standortflexibilität auf die folgenden Bereitstellungstypen anwenden:
MIGs:Bei regionalen MIGs wird die Kapazität sowohl bei der Instanzerstellung als auch bei der Wartung in Echtzeit geprüft, um Compute-Instanzen bereitzustellen, wenn Ressourcen verfügbar sind. Wenn einer Zone während einer Instanzreparatur die Kapazität fehlt, können die MIGs, die die Formen
ANYoderBALANCEDverwenden, die fehlgeschlagene Compute-Instanz automatisch in einer anderen Zone neu erstellen. Die besten Ergebnisse erzielen Sie, wenn Sie die Zielverteilungsform entsprechend dem Ziel Ihrer Arbeitslast konfigurieren:ANY:Empfohlen für maximale Verfügbarkeit. Verwenden Sie diese Form, um die Ressourcenverfügbarkeit zu maximieren. Bei dieser Form werden Recheninstanzen einer beliebigen Zone mit verfügbarer Kapazität zugewiesen und nicht verwendete Reservierungen priorisiert.BALANCED:Empfohlen für Hochverfügbarkeit. Verwenden Sie diese Form für HA-Arbeitslasten. Die Recheninstanzen werden gleichmäßig auf die Zonen verteilt, um vor zonalen Ausfällen zu schützen. Dabei werden Zonen mit verfügbaren Ressourcen priorisiert.ANY_SINGLE_ZONE:Empfohlen für niedrige Latenz. Verwenden Sie diese Form für strenge Latenzgrenzen. Dabei werden alle Compute-Instanzen in einer MIG einer einzelnen Zone mit den meisten verfügbaren Ressourcen zugewiesen.
Weitere Informationen finden Sie unter Regionale MIGs.
Nicht verwaltete Instanzgruppen: Diese Gruppen unterstützen keine Standortflexibilität. Erstellen Sie stattdessen Compute-Instanzen im Bulk mit der
regionInstances.bulkInsertAPI, mit der bis zu 5.000 unabhängige Compute-Instanzen mit der ZielverteilungsformANY_SINGLE_ZONEbereitgestellt werden können. Mit dieser Anfrage werden Compute-Instanzen in einer einzelnen Zone erstellt, die Sie Ihrer nicht verwalteten Gruppe hinzufügen können. Bei eigenständigen Compute-Instanzen wird die Kapazität von Compute Engine nur während der Anfrage zum Erstellen der Compute-Instanz ausgewertet, um die Zone auszuwählen.Weitere Informationen finden Sie unter Nicht verwaltete VMs gruppieren.
Eigenständige Compute-Instanzen:Verwenden Sie die regionale Anfrage zum Erstellen von Bulk-Instanzen (
regionInstances.bulkInsertAPI) mit einer Zielverteilungsform (ANY,BALANCEDoderANY_SINGLE_ZONE) und legen Sie eine Mindestanzahl fest. Mit der Mindestanzahl können Sie so viele Compute-Instanzen wie möglich bereitstellen lassen, anstatt dass die Anfrage vollständig fehlschlägt, wenn nicht sofort die volle Kapazität verfügbar ist. Bei eigenständigen Compute-Instanzen wird die Kapazität von Compute Engine nur während der Anfrage zum Erstellen der Instanz ausgewertet, um die Zone auszuwählen.Weitere Informationen finden Sie unter Informationen zur Bulk-Erstellung von VMs.
Funktionen für die Flexibilität des Maschinentyps
Mit den Funktionen zur Flexibilität von Maschinentypen können Sie für Ihre Bereitstellung eine priorisierte Liste alternativer Maschinentypen verwenden. Wenn Ihre primäre Auswahl nicht verfügbar ist, greift Compute Engine automatisch auf Ihre sekundären Maschinentypen zurück. Sie konfigurieren diese Funktion, indem Sie eine Instanzflexibilitätsrichtlinie definieren, die aus einer einzelnen oder einer sortierten Liste mit mehreren Instanzauswahlen besteht.
Sie können eine Richtlinie für die Instanzflexibilität auf die folgenden Bereitstellungstypen anwenden:
MIGs:Hängen Sie eine Richtlinie für Instanzflexibilität an eine MIG an, damit die Gruppe bei Nachfragespitzen automatisch auf alternative Hardware zurückgreift. Wenn in Ihrer MIG Spot-VMs verwendet werden, werden mit dieser Richtlinie automatisch Fallback-Maschinentypen mit längeren geschätzten Betriebszeiten und einem geringeren Risiko für vorzeitiges Beenden priorisiert. Weitere Informationen finden Sie unter Instanzflexibilität in MIGs.
Nicht verwaltete Instanzgruppen:Da diese Gruppen keine Richtlinien zur Instanzenflexibilität unterstützen, können Sie die Instanzen mit der
regionInstances.bulkInsertAPI bereitstellen und sie dann Ihrer Gruppe hinzufügen. Fügen Sie in Ihre API-Anfrage eine Richtlinie zur Instanzflexibilität ein und geben Sie entweder eine einzelne Zone (locationPolicy.zones.zone) an oder verwenden Sie die ZielverteilungsformANY_SINGLE_ZONE. Die FormANY_SINGLE_ZONEbietet den zusätzlichen Vorteil der Standortflexibilität, da automatisch die Zone mit den meisten verfügbaren Ressourcen ausgewählt wird. Bei eigenständigen Instanzen wendet Compute Engine Ihre Flexibilitätsrichtlinie nur während der Anfrage zum Erstellen der Instanz an.Weitere Informationen zum Erstellen von Compute-Instanzen im Bulk finden Sie unter VMs im Bulk mit Instanzflexibilität erstellen. Informationen zum Hinzufügen von VMs zu einer Gruppe finden Sie unter Nicht verwaltete VMs gruppieren.
Eigenständige Compute-Instanzen:Für Arbeitslasten, die keine Instanzgruppen erfordern, z. B. unabhängige Batchverarbeitungsjobs, können Sie die
regionInstances.bulkInsertAPI mit einer Richtlinie zur Instanzflexibilität verwenden, um die Compute-Instanzen bereitzustellen. Bei eigenständigen Instanzen wendet Compute Engine Ihre Flexibilitätsrichtlinie nur während der Anfrage zum Erstellen der Instanz an.Weitere Informationen finden Sie unter Informationen zur Instanzflexibilität für VMs, die im Bulk erstellt wurden.
Nahtlose Skalierung für verschiedene Maschinentypen
Wenn Sie die Flexibilität des Maschinentyps konfigurieren, können Ihre Fallback-Maschinentypen unterschiedliche Hardwarearchitekturen oder Laufwerkspezifikationen haben. Wenn diese Spezifikationen für die Maschinentypen in einer Instanzauswahl inkompatibel sind, kann die Bereitstellung fehlschlagen.
Wenn Sie Maschinentypen mit inkompatiblen Spezifikationen verwenden möchten, müssen Sie in Ihrer Richtlinie zur Instanzflexibilität Attributüberschreibungen definieren. Diese Überschreibungen sorgen dafür, dass Compute Engine automatisch das richtige Boot-Image, den richtigen Festplattentyp oder die richtige Prozessor-Baseline für die jeweilige Hardware anwendet, wenn ein alternativer Maschinentyp verwendet wird. Mit dieser Funktion kann Ihre Bereitstellung nahtlos auf verschiedene Maschinentypen skaliert werden. Die Wahrscheinlichkeit einer erfolgreichen Bereitstellung ist dadurch höher.
Weitere Informationen finden Sie unter Funktionsweise von Überschreibungen für Festplatten und CPU-Plattformen.
Funktionen für mehr zeitliche Flexibilität
Mit den Funktionen für Zeitflexibilität können Ihre Arbeitslasten, die nicht sofort gestartet werden müssen, auf Ressourcen mit hoher Nachfrage wie Beschleuniger warten, anstatt eine sofortige Bereitstellung zu erfordern.
Um Zeitflexibilität zu implementieren, verwenden Sie je nach den Anforderungen Ihrer Arbeitslast die folgenden Funktionen, die DWS verwenden:
Wenn Sie Ihre Kapazitätsanfragen in die Warteschlange stellen möchten, bis Ressourcen verfügbar sind, verwenden Sie das Bereitstellungsmodell „Flex-Start“.
Wenn Sie zukünftige Kapazität für ein bestimmtes geplantes Datum und eine bestimmte geplante Uhrzeit reservieren möchten, verwenden Sie vorausschauende Reservierungen im Kalendermodus.
Flexible Infrastruktur bewerten und einführen
Bevor Sie die Flexibilität von Standort oder Maschinentyp konfigurieren, müssen Sie prüfen, ob der von Ihnen ausgewählte Standort und die Maschinentypen miteinander und mit den Anforderungen Ihrer Arbeitslast kompatibel sind. Die folgenden Abschnitte enthalten wichtige Überlegungen zur Bewertung und eine Strategie für die schrittweise Einführung, die Ihnen bei der erfolgreichen Entwicklung und Implementierung Ihrer flexiblen Infrastruktur helfen sollen.
Überlegungen zur Bewertung
Hier sind einige wichtige Überlegungen zur Bewertung einer flexiblen Infrastruktur:
Standortflexibilität:Die Verteilung Ihrer Arbeitslast auf mehrere Zonen kann sich auf die Netzwerklatenz auswirken und die Kosten für die zonenübergreifende Datenübertragung erhöhen.
Weitere Informationen finden Sie in folgenden Dokumenten:
- Wenn Sie Latenzdaten für Traffic zwischen Compute-Instanzen in Zonen aufrufen möchten, lesen Sie den Abschnitt Google Cloud Latenz-Dashboard.
- Informationen zum Berechnen der Kosten für die Datenübertragung im Zusammenhang mit zonenübergreifendem Traffic finden Sie unter Preise für die VM-VM-Datenübertragung in Google Cloud.
Flexibilität bei Maschinentypen:Wenn auf alternative Maschinentypen zurückgegriffen wird, kann dies zu Schwankungen bei Anwendungsleistung und Kosten führen. Die Flexibilität des Maschinentyps über Generationen hinweg erfordert häufig, dass Sie Überschreibungen für Laufwerke und CPU-Plattformen implementieren. Sie müssen prüfen, ob die Maschinentypen, die Sie verwenden möchten, die technischen Voraussetzungen Ihrer Anwendung erfüllen.
Weitere Informationen finden Sie in folgenden Dokumenten:
- Einen Vergleich der Spezifikationen der verschiedenen Maschinenserien finden Sie unter Vergleich der Maschinenserien.
- Informationen zu Preisen für Compute-Instanzen finden Sie unter Preise für virtuelle Maschinen.
Einführungsstrategie
Je nachdem, ob Sie eine neue Bereitstellung entwerfen oder eine vorhandene migrieren, wählen Sie die entsprechende Strategie aus:
Für eine neue Arbeitslast:Wenn Sie eine neue Bereitstellung entwerfen, empfehlen wir, Flexibilität in Ihr Infrastrukturdesign aufzunehmen. Folgen Sie der Anleitung unter Eignung und Empfehlungen für Arbeitslasten, um die empfohlenen Flexibilitätsdimensionen für Ihren Arbeitslasttyp zu ermitteln. Wählen Sie dann den Bereitstellungstyp aus, der Ihre Arbeitslast am besten unterstützt. Weitere Informationen zu den Bereitstellungstypen und ihren Flexibilitätskonfigurationen finden Sie im Abschnitt Wichtige Flexibilitätsfunktionen.
Für eine vorhandene Bereitstellung:Wenn Sie eine Bereitstellung, die eine einzelne Zone oder einen einzelnen Maschinentyp verwendet, zu einer flexiblen Infrastruktur migrieren möchten, empfehlen wir, die Flexibilität schrittweise einzuführen, um das Risiko zu minimieren. Sie können eine Strategie für die schrittweise Einführung verwenden, z. B.:
Standortflexibilität erhöhen: Zonale Arbeitslasten zu einer regionalen MIG mit der Verteilungsform
BALANCEDoderANYmigrieren Wenn Sie eine regionale MIG mit der FormEVENverwenden, ändern Sie sie inBALANCED. Diese Änderung ist wichtig für MIGs, die skaliert werden. Eine vorübergehende Kapazitätsbeschränkung in einer Zone blockiert den Scale-out-Vorgang nicht. Wenn Sie stattdessen eigenständige Compute-Instanzen erstellen möchten, verwenden Sie dieregionInstances.bulkInsertAPI.Fügen Sie alternative Maschinentypen hinzu, die dieselbe Architektur haben. Hängen Sie eine Richtlinie für Instanzflexibilität an, in der Maschinentypen mit derselben CPU-Architektur und Datenträgerunterstützung angegeben sind, z. B.
n2-standard-8undn2d-standard-8.Alternative Maschinentypen aus verschiedenen Generationen hinzufügen und CUDs anpassen: Verwenden Sie die neuesten Maschinengenerationen wie
n4-standard-8und bei Bedarf Laufwerküberschreibungen. Außerdem können Sie mit flexiblen Compute-CUDs Rabatte für die Fallback-Nutzung abdecken.
Damit sowohl neue Bereitstellungen als auch inkrementelle Migrationen sicher und erfolgreich verlaufen, empfehlen wir den folgenden Rollout-Workflow:
Validieren und vergleichen: Testen Sie Ihre Anwendung in einer Nichtproduktionsumgebung mit allen ausgewählten Maschinenfamilien, Laufwerkkombinationen und Zonen.
In die Produktion überführen und skalieren: Führen Sie Ihre Richtlinien für Instanz-Flexibilität oder Verteilungsformen für regionale verwaltete Instanzgruppen schrittweise für eine Teilmenge Ihrer Produktionsflotte ein, bevor Sie sie global skalieren.
Beobachten und optimieren: Behalten Sie Ihre Fallback-Raten, Leistungsmesswerte und Kosten im Blick, um Ihre priorisierte Liste von Maschinentypen zu optimieren. Wenn Sie MIGs verwenden, können Sie mit dem Monitoring-Dashboard für die MIG-Instanzverteilung die Verteilung von Compute-Instanzen auf Maschinentypen und Zonen in Echtzeit verfolgen. Eine Anleitung finden Sie unter Instanzverteilung in MIGs überwachen.
Best Practices
Wenn Sie die in den folgenden Abschnitten beschriebenen Best Practices anwenden, können Sie die Effizienz und Stabilität Ihrer flexiblen Infrastruktur maximieren.
Best Practices für Standortflexibilität
Kapazitätsbewusste regionale Platzierung verwenden: Stellen Sie Arbeitslasten mit regionalen MIGs oder durch regionales Bulk-Erstellen von VMs bereit. Wählen Sie die Verteilungsform
BALANCEDoderANYaus, da Compute Engine mit diesen Formen die Echtzeitkapazität in allen Zonen der Region bewerten kann, um Recheninstanzen automatisch dort zu platzieren, wo Ressourcen verfügbar sind.Regionen auswählen, die den Maschinentyp in mehreren Zonen unterstützen:Stellen Sie Arbeitslasten in Regionen bereit, in denen die ausgewählten Maschinentypen in allen Zonen unterstützt werden. So wird sichergestellt, dass für Funktionen zur Standortflexibilität die maximale Anzahl an alternativen Zonen zur Verfügung steht, um Anfragen bei einer vorübergehenden Kapazitätsbeschränkung weiterzuleiten. Eine Liste der Regionen und Zonen finden Sie unter Verfügbare Regionen und Zonen.
Verfügbarkeit für Spot-VM-Bereitstellungen prüfen Wenn in Ihrer Bereitstellung Spot-VMs verwendet werden, prüfen Sie die Echtzeitverfügbarkeit und die erwartete Betriebszeit von Spot-VMs für mehrere Maschinentypen und Standorte. Wählen Sie eine Region oder Zone mit hoher verfügbarer Kapazität und einer für Ihre Arbeitslast geeigneten Betriebszeit aus, um das Risiko von Preemption zu verringern. Weitere Informationen finden Sie unter Verfügbarkeit von Spot-VMs ansehen (Vorschau).
Best Practices für die Flexibilität von Maschinentypen
Maschinenfamilien diversifizieren: Vermeiden Sie Richtlinien, die sich innerhalb einer einzelnen Familie nur durch die Anzahl der CPU-Kerne unterscheiden, z. B.
n2-standard-4undn2-standard-8. Lokalisierte Kapazitätsbeschränkungen können sich gleichzeitig auf die gesamte Maschinenfamilie auswirken. Um die Verfügbarkeit zu verbessern, sollten Sie mehrere Maschinengenerationen und Architekturen verwenden, z. B.n4-standard-8undn2-standard-8.Neue Maschinentypen mit älteren als Fallback verwenden: Nehmen Sie die neuesten Maschinenfamilien zusammen mit älteren Familien in Ihre Richtlinie für Instanzflexibilität auf, um die Verfügbarkeit zu maximieren.
Überschreibungen für Festplatten und CPU-Plattformen konfigurieren Wenn Sie Maschinentypen aus verschiedenen Generationen kombinieren, kann es zu Unterschieden bei Festplatten und CPU-Plattformen kommen. Definieren Sie in Ihrer Flexibilitätsrichtlinie Überschreibungen für Laufwerke und CPU-Plattformen, damit Ihre Infrastruktur nahtlos über Maschinengenerationen hinweg skaliert wird. Konfigurieren Sie beispielsweise Hyperdisk Balanced für N4-Instanzen und Persistent Disk für N2-Fallbacks.
Kleinere Maschinentypen priorisieren: Verwenden Sie je nach Eignung für Ihre Arbeitslast Maschinentypen mit weniger vCPUs und Arbeitsspeicher. Anstatt sich beispielsweise auf einen einzelnen Maschinentyp wie
n2-standard-64zu verlassen, sollten Sie prüfen, ob Ihre Arbeitslast auf vier Compute-Instanzen skaliert werden kann, die jeweils den Maschinentypn2-standard-16verwenden. Kleinere Maschinentypen haben in der Regel eine höhere Ressourcenverfügbarkeit.Maschinentypen mit ähnlicher Leistung auswählen: Geben Sie alternative Maschinentypen mit ähnlichen Größen von vCPU und Arbeitsspeicher an. Kombinieren Sie beispielsweise
n2d-standard-8,n4-standard-8undn4a-standard-8in der Flexibilitätsrichtlinie Ihrer Instanz. Dieser Ansatz sorgt für eine gleichbleibende Anwendungsleistung und verbessert gleichzeitig die Ressourcenverfügbarkeit.Update während der Reparatur in MIGs aktivieren Standardmäßig repariert eine verwaltete Instanzgruppe eine ausgefallene Compute-Instanz mit dem ursprünglichen Maschinentyp. Dies kann fehlschlagen, wenn die Hardware vorübergehend nicht verfügbar ist. Aktivieren Sie „Update bei Reparatur“, damit bei Reparaturen automatisch auf verfügbare Maschinentypen in Ihrer Flexibilitätsrichtlinie zurückgegriffen wird. Weitere Informationen finden Sie unter Instanzflexibilität und VM-Reparaturen.
Spot-VMs mit Fallbacks einbinden Für fehlertolerante Arbeitslasten sollten Sie Spot-VMs mit Standort- und Maschinentypflexibilität kombinieren. Wenn Compute Engine eine Spot-VM vorzeitig beendet, können Sie mit diesen Flexibilitätsfunktionen automatisch nach alternativen Maschinentypen oder Zonen suchen. Mit dieser Strategie können Sie die Ressourcenverfügbarkeit für Ihre Arbeitslast zu geringeren Kosten als bei der Standardbereitstellung aufrechterhalten.
Best Practices für Zeitflexibilität
Die richtigen Arbeitslasten anvisieren: Implementieren Sie Zeitflexibilität für Arbeitslasten mit flexiblen Startzeiten, die jedoch Ressourcen mit hoher Nachfrage wie Beschleuniger erfordern. Diese Anforderung umfasst das Vortraining kleiner Modelle, die Feinabstimmung von Modellen, HPC-Simulationen (High Performance Computing) und Batchinferenz.
Wählen Sie die passende Funktion für Ihre Zeitachse aus. Mit dem Bereitstellungsmodell „Flex-Start“ können Sie Anfragen für Jobs mit definierter Dauer in die Warteschlange stellen, die bis zu sieben Tage lang ausgeführt werden. Wenn Sie Ressourcen mit hoher Nachfrage für bis zu 90 Tage oder länger benötigen, verwenden Sie das reservierungsgebundene Bereitstellungsmodell.
Wartezeiten für Flex-Start-VMs optimieren Wenn Sie versuchen, Flex-Start-VMs zu erstellen, geben Sie eine längere Wartezeit an, wenn Ihre Arbeitslast in einer bestimmten Zone ausgeführt werden muss. Wenn Sie länger warten, erhöht sich die Wahrscheinlichkeit, dass Compute Engine die angeforderten Ressourcen bereitstellen kann. Wenn Sie eigenständige Flex-Start-VMs erstellen möchten und Ihre Arbeitslast in einer beliebigen Zone in einer Region gestartet werden kann, geben Sie eine Wartezeit von null Sekunden an. Wenn die Erstellungsanfrage fehlschlägt, weil Ressourcen nicht verfügbar sind, versuchen Sie sofort, die Erstellungsanfrage in einer anderen Zone zu stellen.
Reservierungen und Rabatte an die Arbeitslastflexibilität anpassen
Um die Ressourcenverfügbarkeit und die Kosten in Einklang zu bringen, sollten Sie Ihre Rabatte für zugesicherte Nutzung (Committed Use Discounts, CUDs) an die Kapazitätsstrategie anpassen, die Sie für Ihre Arbeitslast ausgewählt haben:
Konstante Nutzung über mehrere Maschinentypen hinweg:Wenn Ihre Arbeitslast mehrere Maschinentypen unterstützt und eine konstante Nutzung aufweist, konfigurieren Sie die Flexibilität des Maschinentyps und verwenden Sie flexible CUDs für Compute. Durch die Flexibilität des Maschinentyps wird die Wahrscheinlichkeit einer erfolgreichen Bereitstellung erhöht, da alternative Hardware verwendet wird, wenn für Ihre primäre Auswahl keine Kapazität verfügbar ist. Flexible Compute-CUDs sind ausgabenbasierte Rabatte, die auf Ihre zulässigen Compute-Ausgaben angewendet werden, unabhängig von der spezifischen Maschinenreihe, die von Compute Engine bereitgestellt wird.
Stabile Baseline mit Trafficspitzen:Wenn Ihre Arbeitslast eine vorhersehbare Baseline hat, aber unvorhersehbare Spitzen auftreten können, sichern Sie Ihre vorhersehbare Baseline mit Reservierungen und ressourcenbasierten CUDs. Um Trafficspitzen zu bewältigen, konfigurieren Sie die Flexibilität des Maschinentyps und verwenden Sie flexible CUDs für Compute Engine, um die alternativen Fallback-Maschinen abzudecken. Weisen Sie in Ihrer Richtlinie für Instanzflexibilität die Einstellungen so zu:
Höchste Priorität:reservierte Maschinentypen mit ressourcenbasierten CUDs
Niedrigere Präferenzen:alternative Maschinentypen und flexible CUDs für Compute verwenden
Compute Engine verwendet zuerst Ihre ressourcenbasierten Zusicherungen und dann Ihre flexiblen Zusicherungen für Compute, um die verbleibende berechtigte Nutzung abzudecken.
Arbeitslasten mit streng festgelegter Hardware:Wenn Ihre Arbeitslast auf einem einzelnen Maschinentyp basiert, verwenden Sie Reservierungen und ressourcenbasierte CUDs. Reservierungen bieten eine hohe Kapazitätsgarantie für bestimmte Hardware und sollten für geschäftskritische Arbeitslasten in Betracht gezogen werden. Ressourcenbasierte CUDs bieten Rabatte für diese kontinuierliche, vorhersehbare Nutzung.
Weitere Informationen finden Sie unter Reservierungstyp auswählen und Rabatte für zugesicherte Nutzung für Compute Engine.
Überlegungen zum Design von Reservierungen
Wenn Ihre Strategie Reservierungen umfasst, sollten Sie die folgenden Designüberlegungen berücksichtigen:
Reservierte Maschinentypen priorisieren: Wenn Sie Reservierungen mit Maschinentypflexibilität verwenden, fügen Sie die reservierten Maschinentypen der höchsten Priorität in der Richtlinie zur Instanzflexibilität hinzu. Mit dieser Konfiguration kann Compute Engine Ihre Reservierungen gegenüber On-Demand-Kapazität priorisieren.
Umfang Ihrer Reservierungen bewerten Vermeiden Sie es, Reservierungen aufgrund vorübergehender Kapazitätsbeschränkungen zu erstellen. Wenn Ihre Arbeitslast Standortflexibilität nutzt, z. B. regionale MIGs, verteilt Compute Engine Instanzen möglicherweise auf andere Zonen in der Region. Eine strikte zonale Reservierung kann in diesem Szenario zu ungenutzten, inaktiven Ressourcen führen.
Beschränkungen
Beim Entwerfen einer flexiblen Infrastruktur gelten die folgenden allgemeinen Einschränkungen. Detailliertere Einschränkungen finden Sie auf den jeweiligen Funktionsseiten im Abschnitt „Einschränkungen“.
Inkompatibilität von Funktionen: Sie können die Flexibilität des Maschinentyps und die Zeitflexibilität nicht in einer einzigen Bereitstellung kombinieren. Features, die Zeitflexibilität ermöglichen, unterstützen nur eine einzige Maschinentypkonfiguration pro Anfrage.
Flexibilität bei der Erstellung: Bei Compute-Instanzen, die im Bulk erstellt werden, gelten die Kapazitätsbewertung und die Richtlinie zur Instanzflexibilität nur während der ersten Anfrage zum Erstellen von Compute-Instanzen. In großen Mengen erstellte Compute-Instanzen werden bei Reparaturen oder beim Skalieren Ihrer Infrastruktur nicht automatisch zu alternativen Zonen oder Maschinentypen weitergeleitet.
Bereitstellung in einer einzelnen Zone: Zonale MIGs unterstützen keine Flexibilitätsfunktionen und werden nicht empfohlen. Wenn Sie die Flexibilität von Maschinentypen für ein Design mit einer einzelnen Zone nutzen möchten, erstellen Sie eine regionale MIG und wählen Sie explizit nur eine Zone aus.