In diesem Dokument wird beschrieben, wie Sie Probleme bei der Nutzung von Reservierungen zonaler Compute Engine-Ressourcen beheben.
Schwierige Erfassung der Nutzung von Reservierungen
Problem: Es ist nicht möglich zu sehen, welche VMs eine Reservierung nutzen. Sie können jedoch den Reservierungsverbrauch prüfen, um zu sehen, wie viele VMs eine Reservierung nutzen.
Lösung: Wenn Sie eine VM erfolgreich erstellen können, die auf eine bestimmte Reservierung abzielt, nutzt die VM die im Affinitätsattribut angegebene Reservierung (reservationAffinity
) der VM. Andernfalls schlägt das Erstellen der VM fehl, da die Attribute nicht übereinstimmen oder in der Zone der VM keine Ressourcen verfügbar sind.
Weitere Informationen zum Überwachen des Verbrauchs von Reservierungen finden Sie unter Nutzung von Reservierungen prüfen.
Weniger VMs für die Nutzung verfügbar
Problem: Die Anzahl der physisch reservierten VMs (Feld assuredCount
) stimmt nicht mit der Anzahl der in einer Reservierung angegebenen reservierten VMs (Feld count
) überein. Das bedeutet, dass für Ihr Projekt und alle Projekte, für die eine freigegebene Reservierung freigegeben ist, weniger VMs reserviert werden.
Dieses Problem kann folgende Ursachen haben:
Das Nutzerprojekt einer freigegebenen Reservierung wurde sperriert oder in eine andere Organisation migriert. In diesem Fall verringert die Compute Engine das Feld
assuredCount
um die Anzahl der VMs, die vom Nutzerprojekt genutzt werden.Das Projekt, in dem die Reservierung erstellt wurde, wurde gesperrt. In diesem Fall legt die Compute Engine das Feld
assuredCount
auf0
fest.Ein Fehler des Gastgebers hat Auswirkungen auf die Reservierung.
Lösung: Sofern das Projekt, in dem die Reservierung erstellt wurde, nicht gesperrt wurde, wird in der Compute Engine innerhalb von 24 Stunden versucht, eine Abweichung zwischen den Feldern assuredCount
und count
in einer Reservierung automatisch zu beheben. Bis diese Abweichung behoben ist, wird Ihnen in Google Cloud nur die physisch reservierte Kapazität in Rechnung gestellt.
Probleme für VMs, die keine Reservierungen nutzen
Wenn eine VM eine Reservierung nicht nutzen kann, kann dies an einem oder mehreren der folgenden Probleme liegen:
Die Attribute der Reservierung und der VM stimmen nicht überein
Das Kontingent für die freigegebenen Reservierungen wurde überschritten
In diesem Abschnitt wird beschrieben, wie Sie jedes dieser Probleme identifizieren, die einzelnen Probleme beheben und die Reservierungsverbrauch prüfen.
Nicht übereinstimmende VM-Attribute
Problem: Eine VM kann keine Reservierung mit unterschiedlichen VM-Attributen verbrauchen.
Wenn Sie feststellen möchten, welche Attribute zwischen der VM und der Reservierung nicht übereinstimmen, rufen Sie die Attribute der Reservierung und der VM auf. Gehen Sie dazu so vor:
Vergleichen Sie dann die beiden Ausgaben, um sicherzustellen, dass die folgenden Attribute genau übereinstimmen:
project
- Wenn die Reservierung für mehrere Projekte freigegeben ist (d. h., wenn für die Reservierung das Feld
shareType
aufSPECIFIC_PROJECTS
gesetzt ist), können sich die VMs im Projekt befinden, in dem die Reservierung erstellt wurde (Inhaberprojekt), oder in Projekten, für die die Reservierung freigegeben ist (Nutzerprojekte).
- Wenn die Reservierung für mehrere Projekte freigegeben ist (d. h., wenn für die Reservierung das Feld
zone
machineType
guestAccelerators.acceleratorType
(falls zutreffend)guestAccelerators.acceleratorCount
(falls zutreffend)minCpuPlatform
- Die VM und die Reservierung müssen genau die gleiche
minCpuPlatform
-Konfiguration haben. Wenn Sie beispielsweise beim Erstellen einer VMminCpuPlatform
aufIntel Broadwell
festlegen, entspricht der WertminCpuPlatform
in einer Reservierung nicht dem WertAutomatic
.
- Die VM und die Reservierung müssen genau die gleiche
localSsds.interface
(falls zutreffend)- Die Reservierung und die VM müssen die gleiche Anzahl lokaler SSD-Laufwerke mit einem übereinstimmenden
localSsds.interface
-Attribut für jedes lokale SSD-Laufwerk haben.
- Die Reservierung und die VM müssen die gleiche Anzahl lokaler SSD-Laufwerke mit einem übereinstimmenden
resourcePolicies
(falls zutreffend)- Nur, wenn eine Reservierung eine Richtlinie für kompakte Platzierung angibt.
locationHint
(falls zutreffend)- Nur, wenn in einer Reservierung das Feld
locationHint
angegeben ist. Sie können das FeldlocationHint
nur angeben, wenn Sie VMs mit REST erstellen.
- Nur, wenn in einer Reservierung das Feld
Lösung: Nachdem Sie die nicht übereinstimmenden Attribute ermittelt haben, können Sie Folgendes tun:
Wenn die VM-Attribute nicht mit der Reservierung übereinstimmen, führen Sie einen der folgenden Schritte aus:
Löschen Sie die VM und erstellen Sie eine neue VM mit Attributen, die mit den Attributen der Reservierung übereinstimmen.
Aktualisieren Sie die VM so, dass sie den Attributen der Reservierung entspricht.
Wenn die Attribute der Reservierung mit den Attributen der VM übereinstimmen sollen, löschen Sie die Reservierung und erstellen Sie eine neue Reservierung, die den Attributen der VM entspricht. Optional können Sie eine bestimmte Reservierung erstellen. Wenn Sie VMs erstellen, um eine bestimmte Reservierung zu nutzen, treten Fehler auf, wenn die Attribute der VM nicht mit den Attributen der Reservierung übereinstimmen.
Prüfen Sie nach dem Aktualisieren der VM oder Erstellen einer neuen Reservierung, ob die VM die Reservierung nutzt, indem Sie den Reservierungsverbrauch prüfen.
Reservierungsaffinität ist falsch
Problem: Die Reservierungsaffinität der VM ist falsch konfiguriert. Die Reservierungsaffinität einer VM steuert die Reservierungen, die eine VM nutzen kann. So prüfen Sie die Reservierungsaffinität Ihrer VM:
Rufen Sie die Details einer Reservierung auf und prüfen Sie, ob es sich um eine automatisch genutzte oder eine bestimmte Reservierung handelt. Weitere Informationen finden Sie unter Verbrauchstyp.
Sehen Sie sich die Details der VM an und prüfen Sie die Reservierungsaffinität.
Lösung: Wenn die Reservierungsaffinität der VM und der Reservierung nicht übereinstimmt, haben Sie folgende Möglichkeiten:
Erstellen Sie eine neue VM mit einem Reservierungsaffinitätsattribut, das mit dem Typ der Reservierung übereinstimmt.
Aktualisieren Sie das Attribut
reservationAffinity
in der VM, um anzugeben, ob die VM eine übereinstimmende Reservierung oder eine bestimmte Reservierung nutzen kann. Um das Update der VM abzuschließen, müssen Sie die VM neu starten.
Informationen zum Prüfen, ob die VM die Reservierung verbraucht, finden Sie unter Nutzung von Reservierungen prüfen.
Reservierung ist bereits vollständig genutzt
Problem: Die Anzahl der VMs, die diese Reservierung verbrauchen, entspricht der Gesamtzahl der reservierten VMs der Reservierung. Dies bedeutet, dass die Reservierung vollständig verbraucht wurde.
Lösung: Um zu prüfen, ob die Reservierung vollständig verbraucht wird, rufen Sie die Details der Reservierung auf und prüfen Sie dann, ob die Anzahl der VMs, die die Reservierung verbrauchen, der Gesamtzahl der reservierten VMs in der Reservierung entspricht.
Wenn die Reservierung vollständig verbraucht wurde, haben Sie folgende Möglichkeiten:
Erhöhen Sie die Anzahl der reservierten VMs, indem Sie die Anzahl der reservierten VMs in einer Reservierung ändern.
Wenn die Reservierung bereits die maximale Anzahl an VMs reserviert, erstellen Sie eine neue Reservierung.
Reduzieren Sie die Anzahl der VMs, die die Reservierung verbrauchen. Weitere Informationen finden Sie unter VMs, die unbeabsichtigt Reservierungen verbrauchen.
Wenn die Reservierung nicht vollständig verbraucht wird, aber die VM die Reservierung nicht nutzt, können Sie das Problem weiter beheben. Gehen Sie dazu so vor:
Erstellen Sie eine bestimmte Reservierung mit übereinstimmenden Attributen.
Erstellen Sie eine VM, um die Reservierung zu verbrauchen. Wenn die Attribute der VM und der Reservierung nicht übereinstimmen, schlägt das Erstellen der VM fehl.
Ressourcenkontingent für freigegebene Reservierungen überschritten
Problem: Eine VM verbraucht keine freigegebene Reservierung, da Ihr Projekt nicht über ein ausreichendes Kontingent für die Ressourcen verfügt, die Sie nutzen möchten.
Lösung: Für freigegebene Reservierungen gelten zusätzliche Kontingentanforderungen. Wenn Sie das Kontingent in Ihrem Projekt erhöhen müssen, um die reservierten Ressourcen zu nutzen, lesen Sie den Hilfeartikel Höheres Kontingent anfordern in der Dokumentation zu Cloud-Kontingenten.
Die Anzahl der VMs wird nach dem Beenden oder Löschen einer VM nicht wiederhergestellt
Problem: Wenn Sie eine VM beenden, anhalten oder löschen, die eine Reservierung nutzt, muss der Vorgang abgeschlossen sein, bevor die VM nicht mehr auf die Reservierung angerechnet und die zuvor genutzte stehen Ressourcen wieder zur Verfügung.
Lösung: Warten Sie einige Minuten, bis der Vorgang zum Anhalten, Anhalten oder Löschen auf den VMs abgeschlossen ist. Um dann zu bestätigen, dass die angehaltenen, gesperrten oder gelöschten VMs nicht mehr auf die Reservierung angerechnet werden, prüfen Sie die Gesamtzahl der genutzten VMs in der Reservierung mit einer der folgenden Methoden:
Empfohlen: Beobachten Sie die Reservierung und achten Sie auf Änderungen der Messungen der Reservierung.
Rufen Sie die Details der Reservierung auf und prüfen Sie, ob der Wert des Felds
inUseCount
gesunken ist. Wenn der Wert nicht abnimmt, haben eine oder mehrere VMs begonnen, die Reservierung zu nutzen, während der Vorgang zum Anhalten, Sperren oder Löschen abgeschlossen wurde.
VM, die unbeabsichtigt Reservierungen verbraucht
Problem: Wenn Sie Reservierungen erstellen, die automatisch verbraucht werden (Standardeinstellung), verbraucht eine VM möglicherweise diese Reservierungen unbeabsichtigt.
Lösung: Führen Sie einen der folgenden Schritte aus, um zu verhindern, dass eine oder mehrere VMs versehentlich eine Reservierung verbrauchen: