Reservierungen nutzen und verwalten

Mit Sammlungen den Überblick behalten Sie können Inhalte basierend auf Ihren Einstellungen speichern und kategorisieren.

In diesem Dokument wird beschrieben, wie Reservierungen für zonale Compute Engine-Ressourcen genutzt und verwaltet werden. Reservierungen bieten ein sehr hohes Maß an Sicherheit beim Beschaffen von Kapazitäten für zonale Ressourcen von Compute Engine. Jede Reservierung bietet Sicherheit für eine oder mehrere VM-Instanzen mit denselben Attributen. Informationen zu Reservierungen finden Sie unter Zonale Reservierungen von Compute Engine-Ressourcen. Informationen zum Erstellen von Reservierungen finden Sie unter Reservierung für ein einzelnes Projekt erstellen oder Freigegebene Reservierung erstellen.

Vorbereitung

Reservierte Instanzen nutzen

Legen Sie beim Erstellen einer VM-Instanz mithilfe des Attributs für Reservierungsaffinität der Instanz fest, ob die Instanz eine verfügbare übereinstimmende Reservierung (Standard), eine bestimmte Reservierung oder gar keine Reservierung verwendet. Das Attribut für die Reservierungsaffinität sieht so aus:

  • Abschnitt Mit VM-Instanz verwenden in der Google Cloud Console
  • Flag --reservation-affinity in gcloud CLI
  • Feld "reservationAffinity" in der Compute Engine API

In allen Fällen kann eine VM nur dann eine Reservierung nutzen, wenn folgende Attribute für die VM und die Reservierung genau übereinstimmen:

  • Projekt
  • Zone
  • Maschinentyp
  • Mindest-CPU-Plattform
  • GPU-Typ und -Anzahl
  • Typ und Anzahl der lokalen SSDs

Damit eine Instanz eine bestimmte Reservierung nutzt, muss diese Reservierung mit dem entsprechenden erforderlichen Attribut der spezifischen Reservierung erstellt werden.

Weitere Informationen finden Sie unter Funktionsweise von Reservierungen.

Instanzen einer übereinstimmenden Reservierung nutzen

In diesem Nutzungsmodell gelten vorhandene und neue Instanzen automatisch für die Reservierung, wenn die Attribute dieser Instanz mit den Attributen der reservierten Instanz übereinstimmen. Dieses Modell ist nützlich, wenn Sie viele VMs erstellen und löschen sowie die Reservierungen nach Möglichkeit verwenden möchten.

Bei Verwendung dieses Nutzungsmodells werden alle Einzelprojektreservierungen vor freigegebenen Reservierungen genutzt, da letztere allgemein verfügbar sind. Weitere Informationen zur automatischen Nutzung von Instanzen finden Sie unter Nutzungsreihenfolge.

Um dieses Modell zu verwenden, schließen Sie beim Erstellen Ihrer Reservierungen das Flag --require-specific-reservation aus, damit übereinstimmende Instanzen diese Reservierungen automatisch nutzen können.

Console

  1. Erstellen Sie eine Reservierung mit Ressourcen, die von VM-Instanzen mit einem Reservierungsaffinitätsattribut verwendet werden können, das für die Nutzung von Reservierungen konfiguriert ist (Standard). Sie können entweder eine eigenständige Reservierung erstellen oder eine Reservierung, die mit einer Nutzungszusicherung verbunden ist.

    1. Öffnen Sie in der Google Cloud Console die Seite Rabatte für zugesicherte Nutzung.

      Zur Seite "Rabatte für zugesicherte Nutzung"

    2. Erstellen Sie mit einer der folgenden Optionen eine Reservierung:

      • Klicken Sie auf Reservierung erstellen, um eine eigenständige Reservierung zu erstellen.

      • Klicken Sie zum Erstellen einer Reservierung, die mit einer Nutzungszusicherung verbunden ist, auf Zusicherung erwerben. Nachdem Sie die anderen Optionen angegeben haben, klicken Sie im Abschnitt Reservierungen auf Element hinzufügen. Weitere Informationen zum Kauf einer Nutzungszusicherung mit einer angehängten Reservierung finden Sie unter Reservierungen mit Rabatten für zugesicherte Nutzung kombinieren.

    3. Geben Sie im Feld Name einen Namen für die Reservierung ein. Geben Sie für dieses Beispiel reservation-01 ein.

    4. Wählen Sie die Region und die Zone aus, in der Sie Ressourcen reservieren möchten. Wählen Sie für dieses Beispiel us-central1 als Region und us-central1-a als Zone aus.

    5. Wählen Sie den gewünschten Freigabetyp:

      • Um eine Reservierung für ein einzelnes Projekt zu erstellen, wählen Sie Lokal aus.
      • Um eine freigegebene Reservierung für mehrere Projekte zu erstellen, wählen Sie Freigegeben aus. Klicken Sie auf Projekte hinzufügen und wählen Sie die gewünschten Projekte aus der Organisation des aktuellen Projekts aus, um diese Reservierung für andere Projekte freizugeben.
    6. Wählen Sie unter Mit VM-Instanz verwenden die Option Reservierung automatisch verwenden aus, damit alle übereinstimmenden VM-Instanzen diese Reservierung automatisch verwenden können.

    7. Geben Sie im Feld Anzahl der VM-Instanzen die Anzahl der VM-Instanzen ein, die Sie reservieren möchten. Geben Sie für dieses Beispiel 2 ein.

    8. Geben Sie die Ressourcen an, die Sie für die einzelnen VM-Instanzen reservieren möchten:

      • Wenn Sie VMs reservieren möchten, die einer vorhandenen Instanzvorlage entsprechen, wählen Sie Instanzvorlage verwenden und dann eine Instanzvorlage aus der Liste aus.
      • Wählen Sie andernfalls Maschinentyp angeben und geben Sie Folgendes an:
        1. Wählen Sie in den Feldern Maschinenfamilie, Reihe und Maschinentyp eine Maschinenfamilie, eine Reihe und einen Maschinentyp aus.
        2. Optional: Geben Sie eine Mindest-CPU-Plattform und/oder GPUs an:
          1. Klicken Sie zum Erweitern des Abschnitts CPU-Plattform und GPU auf den Erweiterungspfeil .
          2. Optional: Wählen Sie in der Liste CPU-Formular eine Option aus, um eine Minimalanforderung für die CPU-Plattform anzugeben.
          3. Optional: Klicken Sie zum Hinzufügen von GPUs auf GPU hinzufügen. Wählen Sie dann in den Feldern GPU-Typ und Anzahl der GPUs den Typ und die Anzahl der GPUs für jede VM aus.
        3. Optional: Fügen Sie lokale SSDs hinzu:
          1. Wählen Sie im Feld Anzahl der Laufwerke die Anzahl der lokalen SSDs für jede VM aus.
          2. Wählen Sie im Feld Schnittstellentyp die Schnittstelle für die lokalen SSDs aus.

      Wählen Sie für dieses Beispiel Maschinentyp angeben aus. Wählen Sie dann den Maschinentyp n2-standard-32 für die Maschinenfamilie General-purpose und die Maschinenserie N2 aus und wählen Sie die Mindest-CPU-Plattform Intel Cascade Lake aus.

    9. Schließen Sie das Erstellen der Reservierung ab:

      • Wenn Sie eine eigenständige Reservierung erstellen, klicken Sie auf Erstellen.

      • Wenn Sie eine Reservierung erstellen, die mit einer Nutzungszusicherung verbunden ist:

        1. Klicken Sie auf Fertig, um das Festlegen der Attribute für diese Reservierung abzuschließen.
        2. Klicken Sie auf Kaufen, um das Erstellen der Zusicherung und der angehängten Reservierungen abzuschließen.
  2. Erstellen Sie in demselben Projekt oder in einem Projekt, für das die Reservierung freigegeben ist, eine VM-Instanz, die auf eine beliebige offene Reservierung abzielt.

    Die Attribute der VM-Instanz müssen mit den Attributen der VM-Instanz in reservation-01 übereinstimmen, einschließlich Zone, Maschinentyp (Maschinenfamilie, vCPUs, Arbeitsspeicher), Mindestanforderung an die CPU-Plattform, GPU-Anzahl und -Typ. sowie lokale SSD-Schnittstelle und -Größe.

    Weitere Informationen zum Erstellen einer VM-Instanz finden Sie unter VM-Instanz erstellen und starten.

    1. Rufen Sie in der Google Cloud Console die Seite Instanz erstellen auf.

      Zur Seite „Instanz erstellen“

    2. Geben Sie einen Namen für Ihre VM an.

    3. Wählen Sie in den folgenden Abschnitten eine Konfiguration aus, die genau mit allen Attributen Ihrer Reservierung übereinstimmt, einschließlich eventueller optionaler Attribute. In diesem Beispiel müssen Sie folgende VM-Instanzattribute mit reservation-01 abgleichen:

      • Region: us-central1
      • Zone: us-central1-a
      • Maschinentyp: n2-standard-32
      • Mindest-CPU-Plattform: Intel Cascade Lake
      • GPUs: keine
      • Lokale SSDs: keine
    4. Maximieren Sie den Abschnitt Netzwerk, Laufwerke, Sicherheit, Verwaltung, Einzelmandanten und anschließend den Bereich Verwaltung. Wählen Sie in der Liste Reservierungen Automatisch erstellte Reservierung verwenden.

    5. Klicken Sie auf Erstellen, um die VM zu erstellen.

gcloud

  1. Erstellen Sie eine offene Reservierung mit dem Namen reservation-01.

    gcloud compute reservations create reservation-01 \
        --vm-count=2 \
        --machine-type=n2-standard-32 \
        --min-cpu-platform "Intel Cascade Lake" \
        --zone=us-central1-a
    
  2. Erstellen Sie eine VM-Instanz, die auf eine beliebige offene Reservierung abzielt und deren Attribute mit den Instanzattributen von reservation-01 übereinstimmen, einschließlich jener für Zone, Maschinentyp (Maschinenfamilie, vCPUs und Speicher), Mindest-CPU-Plattform, GPU-Anzahl und -Typ sowie lokale SSD-Anzahl und -Schnittstelle.

    gcloud compute instances create instance-1 \
        --machine-type=n2-standard-32 \
        --min-cpu-platform="Intel Cascade Lake" \
        --zone=us-central1-a \
        --reservation-affinity=any
    

API

  1. Erstellen Sie eine offene Reservierung mit dem Namen reservation-01.

    POST https://compute.googleapis.com/compute/v1/projects/my-project/zones/us-central1-a/reservations
    
    {
      "name":"reservation-01",
      "specificReservation":{
        "count":"2",
        "instanceProperties":{
          "machineType":"n2-standard-32",
          "minCpuPlatform": "Intel Cascade Lake",
        }
      },
      "specificReservationRequired": false
    }
    
  2. Erstellen Sie eine VM-Instanz, die auf eine beliebige offene Reservierung abzielt und deren Attribute mit den Instanzattributen von reservation-01 übereinstimmen, einschließlich jener für Zone, Maschinentyp (Maschinenfamilie, vCPUs und Speicher), Mindest-CPU-Plattform, GPU-Anzahl und -Typ sowie lokale SSD-Anzahl und -Schnittstelle.

    POST https://compute.googleapis.com/compute/v1/projects/my-project/zones/us-central1-a/instances
    
    {
      "name": "instance-1",
      "machineType": "zones/us-central1-a/machineTypes/n2-standard-32",
      "minCpuPlatform": "Intel Cascade Lake",
      "reservationAffinity":
      {
        "consumeReservationType": "ANY_RESERVATION"
      },
      ...
    }
    

Instanzen einer bestimmten Reservierung nutzen

In diesem Nutzungsmodell nutzen nur neue Instanzen, die namentlich auf eine bestimmte Reservierung abzielen, diese Reservierung, und die Reservierung wird nicht automatisch genutzt. Dieses Modell ist beispielsweise nützlich, wenn Sie bestimmte Kapazitäten für besondere Ereignisse bereithalten möchten.

Geben Sie beim Erstellen der Reservierung an, dass Instanzen auf die spezifische Reservierung abzielen müssen. Verwenden Sie dazu eine der folgenden Methoden:

  • Klicken Sie in der Google Cloud Console das Kästchen Bestimmte Reservierung auswählen an.
  • Fügen Sie in der gcloud CLI das Flag --require-specific-reservation ein.
  • Legen Sie in der Compute Engine API das Feld specificReservationRequired auf true fest.

Erstellen Sie dann VMs, die ausdrücklich auf diese Reservierung abzielen und dieselben Attribute haben.

Wenn Sie zum Erstellen von VMs in einer regional verwalteten Instanzgruppe Instanzvorlagen verwenden, erstellen Sie in allen zutreffenden Zonen identische Reservierungen mit demselben Namen. Wählen Sie die Reservierungen dann in der Instanzvorlage der Gruppe namentlich aus.

Erstellen Sie beispielsweise eine spezifische Reservierung mit dem Namen reservation-02 und erstellen Sie dann eine übereinstimmende Instanz, die auf diese Reservierung abzielt und mit den Instanzattributen der Reservierung übereinstimmt.

Führen Sie je nach Art der zu verwendenden Instanz die folgenden Schritte aus: Eine bestimmte Reservierung für ein einzelnes Projekt nutzen oder Eine bestimmte freigegebene Reservierung nutzen.

Eine bestimmte Reservierung für ein einzelnes Projekt nutzen

Verwenden Sie die Cloud Console, die gcloud CLI oder die Compute Engine API, wenn Sie eine bestimmte Reservierung für ein einzelnes Projekt nutzen möchten.

Console

  1. Erstellen Sie eine Reservierung mit Ressourcen, die nur von VM-Instanzen verwendet werden können, für die ausdrücklich diese Reservierung namentlich gewählt wurde. Sie können entweder eine eigenständige Reservierung erstellen oder eine Reservierung, die mit einer Nutzungszusicherung verbunden ist.

    1. Öffnen Sie in der Google Cloud Console die Seite Rabatte für zugesicherte Nutzung.

      Zur Seite "Rabatte für zugesicherte Nutzung"

    2. Erstellen Sie mit einer der folgenden Optionen eine Reservierung:

      • Klicken Sie auf Reservierung erstellen, um eine eigenständige Reservierung zu erstellen.

      • Klicken Sie zum Erstellen einer Reservierung, die mit einer Nutzungszusicherung verbunden ist, auf Zusicherung erwerben. Nachdem Sie die anderen Optionen angegeben haben, klicken Sie im Abschnitt Reservierungen auf Element hinzufügen. Weitere Informationen zum Kauf einer Nutzungszusicherung mit einer angehängten Reservierung finden Sie unter Reservierungen mit Rabatten für zugesicherte Nutzung kombinieren.

    3. Geben Sie im Feld Name einen Namen für die Reservierung ein. Geben Sie für dieses Beispiel reservation-02 ein.

    4. Wählen Sie die Region und die Zone aus, in der Sie Ressourcen reservieren möchten. Wählen Sie für dieses Beispiel us-central1 als Region und us-central1-a als Zone aus.

    5. Wenn Sie angeben möchten, dass es sich bei Ihrer Reservierung um eine Reservierung für ein einzelnes Projekt handelt, wählen Sie als Freigabetyp Lokal aus.

    6. Wählen Sie unter Mit VM-Instanz verwenden die Option Spezifische Reservierung auswählen aus, damit diese Reservierung nur von übereinstimmenden VM-Instanzen verwendet werden kann, für die die Reservierung namentlich ausgewählt wurde.

    7. Geben Sie im Feld Anzahl der VM-Instanzen die Anzahl der VM-Instanzen ein, die Sie reservieren möchten. Geben Sie für dieses Beispiel 10 ein.

    8. Geben Sie die Ressourcen an, die Sie für die einzelnen VM-Instanzen reservieren möchten:

      • Wenn Sie VMs reservieren möchten, die einer vorhandenen Instanzvorlage entsprechen, wählen Sie Instanzvorlage verwenden und dann eine Instanzvorlage aus der Liste aus.
      • Wählen Sie andernfalls Maschinentyp angeben und geben Sie Folgendes an:
        1. Wählen Sie in den Feldern Maschinenfamilie, Reihe und Maschinentyp eine Maschinenfamilie, eine Reihe und einen Maschinentyp aus.
        2. Optional: Geben Sie eine Mindest-CPU-Plattform und/oder GPUs an:
          1. Klicken Sie zum Erweitern des Abschnitts CPU-Plattform und GPU auf den Erweiterungspfeil .
          2. Optional: Wählen Sie in der Liste CPU-Formular eine Option aus, um eine Minimalanforderung für die CPU-Plattform anzugeben.
          3. Optional: Klicken Sie zum Hinzufügen von GPUs auf GPU hinzufügen. Wählen Sie dann in den Feldern GPU-Typ und Anzahl der GPUs den Typ und die Anzahl der GPUs für jede VM aus.
        3. Optional: Fügen Sie lokale SSDs hinzu:
          1. Wählen Sie im Feld Anzahl der Laufwerke die Anzahl der lokalen SSDs für jede VM aus.
          2. Wählen Sie im Feld Schnittstellentyp die Schnittstelle für die lokalen SSDs aus.

      Wählen Sie für dieses Beispiel Maschinentyp angeben aus. Wählen Sie dann den Maschinentyp n2-standard-32 für die Maschinenfamilie General-purpose und die Maschinenserie N2 aus und wählen Sie die Mindest-CPU-Plattform Intel Cascade Lake aus.

    9. Schließen Sie das Erstellen der Reservierung ab:

      • Wenn Sie eine eigenständige Reservierung erstellen, klicken Sie auf Erstellen.

      • Wenn Sie eine Reservierung erstellen, die mit einer Nutzungszusicherung verbunden ist:

        1. Klicken Sie auf Fertig, um das Festlegen der Attribute für diese Reservierung abzuschließen.
        2. Klicken Sie auf Kaufen, um das Erstellen der Zusicherung und der angehängten Reservierungen abzuschließen.
  2. Erstellen Sie im selben Projekt eine VM-Instanz, die per Namen auf die jeweilige Reservierung abzielt.

    Die Attribute der VM-Instanz müssen mit den Attributen der VM-Instanz dieser spezifischen Reservierung übereinstimmen, einschließlich Zone, Maschinentyp (Maschinenfamilie, vCPUs, Arbeitsspeicher), Mindestanforderung an die CPU-Plattform, GPU-Anzahl und -Typ. sowie lokale SSD-Schnittstelle und -Größe.

    Weitere Informationen zum Erstellen einer VM-Instanz finden Sie unter VM-Instanz erstellen und starten.

    1. Rufen Sie in der Google Cloud Console die Seite Instanz erstellen auf.

      Zur Seite „Instanz erstellen“

    2. Geben Sie einen Namen für Ihre VM an.

    3. Wählen Sie in den folgenden Abschnitten eine Konfiguration aus, die genau mit allen Attributen Ihrer Reservierung übereinstimmt, einschließlich eventueller optionaler Attribute. In diesem Beispiel müssen Sie folgende VM-Instanzattribute mit reservation-02 abgleichen:

      • Region: us-central1
      • Zone: us-central1-a
      • Maschinentyp: n2-standard-32
      • Mindest-CPU-Plattform: Intel Cascade Lake
      • GPUs: keine
      • Lokale SSDs: keine
    4. Maximieren Sie den Abschnitt Netzwerk, Laufwerke, Sicherheit, Verwaltung, Einzelmandanten und anschließend den Bereich Verwaltung. Wählen Sie in der Liste Reservierungen die Option Spezifische Reservierung auswählen und dann den Reservierungsnamen mit den gewünschten Attributen aus, die Ihre Instanz verbrauchen darf. Wählen Sie für dieses Beispiel reservation-02 aus.

    5. Klicken Sie auf Erstellen, um die VM zu erstellen.

gcloud

  1. Erstellen Sie mit dem Flag --require-specific-reservation eine Reservierung mit dem Namen reservation-02. Diese reservierten Ressourcen können nur von Instanzen verwendet werden, die ausdrücklich namentlich auf diese Reservierung abzielen.

    gcloud compute reservations create reservation-02 \
        --machine-type=n2-standard-32 \
        --min-cpu-platform "Intel Cascade Lake" \
        --vm-count=10 \
        --zone=us-central1-a \
        --require-specific-reservation
    
  2. Erstellen Sie mit den Flags --reservation-affinity und --reservation eine VM-Instanz, die namentlich auf reservation-02 abzielt.

    Achten Sie darauf, dass die Instanzattribute mit den Instanzattributen der Reservierung übereinstimmen, einschließlich Zone, Maschinentyp (Maschinenfamilie, vCPUs und Arbeitsspeicher), Mindest-CPU-Plattform, GPU-Anzahl und -Typ sowie Schnittstelle und Größe der lokalen SSD.

    gcloud compute instances create instance-2 \
        --machine-type=n2-standard-32 \
        --min-cpu-platform "Intel Cascade Lake" \
        --zone=us-central1-a \
        --reservation-affinity=specific \
        --reservation=reservation-02
    

API

  1. Erstellen Sie mit dem auf true festgelegten Feld specificReservationRequired eine Reservierung mit dem Namen reservation-02.

    POST https://compute.googleapis.com/compute/v1/projects/my-project/zones/us-central1-a/reservations
    
    {
      "name":"reservation-02",
      "specificReservation":{
        "count":"10",
        "instanceProperties":{
          "machineType":"n2-standard-32",
          "minCpuPlatform": "Intel Cascade Lake",
        }
      },
      "specificReservationRequired": true
    }
  2. Erstellen Sie mit Feld reservationAffinity eine VM-Instanz, die namentlich auf reservation-02 abzielt.

    Achten Sie darauf, dass die Instanzattribute mit den Instanzattributen der Reservierung übereinstimmen, einschließlich Zone, Maschinentyp (Maschinenfamilie, vCPUs und Arbeitsspeicher), Mindest-CPU-Plattform, GPU-Anzahl und -Typ sowie Schnittstelle und Größe der lokalen SSD.

    POST https://compute.googleapis.com/compute/v1/projects/my-project/zones/us-central1-a/instances
    
    {
      "name": "instance-2",
      "machineType": "zones/us-central1-a/machineTypes/n2-standard-32",
      "minCpuPlatform": "Intel Cascade Lake",
      "reservationAffinity":
      {
        "consumeReservationType": "SPECIFIC_RESERVATION",
        "key": "compute.googleapis.com/reservation-name",
        "values":
        ["reservations/reservation-02"
        ]
      },
      ...
    }

Eine bestimmte freigegebene Reservierung nutzen

Verwenden Sie die Google Cloud Console, die gcloud CLI oder die Compute Engine API, um eine bestimmte freigegebene Reservierung zu nutzen.

Console

  1. Erstellen Sie eine freigegebene Reservierung mit Ressourcen, die nur von VM-Instanzen verwendet werden können, für die ausdrücklich diese Reservierung namentlich ausgewählt wurde. Sie können entweder eine eigenständige freigegebene Reservierung oder eine freigegebene Reservierung erstellen, die mit einer Nutzungszusicherung verbunden ist.

    1. Wählen Sie in der Google Cloud Console das Inhaberprojekt aus, in dem Sie die freigegebene Reservierung erstellen möchten, und rufen Sie die Seite Rabatte für zugesicherte Nutzung auf.

      Zur Seite "Rabatte für zugesicherte Nutzung"

    2. Erstellen Sie mit einer der folgenden Optionen eine Reservierung:

      • Klicken Sie auf Reservierung erstellen, um eine eigenständige Reservierung zu erstellen.

      • Klicken Sie zum Erstellen einer Reservierung, die mit einer Nutzungszusicherung verbunden ist, auf Zusicherung erwerben. Nachdem Sie die anderen Optionen angegeben haben, klicken Sie im Abschnitt Reservierungen auf Element hinzufügen. Weitere Informationen zum Kauf einer Nutzungszusicherung mit einer angehängten Reservierung finden Sie unter Reservierungen mit Rabatten für zugesicherte Nutzung kombinieren.

    3. Geben Sie im Feld Name einen Namen für die Reservierung ein. Geben Sie für dieses Beispiel reservation-02 ein.

    4. Wählen Sie die Region und die Zone aus, in der Sie Ressourcen reservieren möchten. Wählen Sie für dieses Beispiel us-central1 als Region und us-central1-a als Zone aus.

    5. Um anzugeben, dass Ihre Reservierung eine freigegebene Reservierung ist, wählen Sie Freigegeben als Freigabetyp aus.

    6. Klicken Sie auf Projekte hinzufügen und wählen Sie die Projekte aus der Organisation des aktuellen Projekts aus, für die Sie die Reservierung freigeben möchten.

    7. Wählen Sie unter Mit VM-Instanz verwenden die Option Spezifische Reservierung auswählen aus, damit diese Reservierung nur von übereinstimmenden VM-Instanzen verwendet werden kann, für die die Reservierung namentlich ausgewählt wurde.

    8. Geben Sie im Feld Anzahl der VM-Instanzen die Anzahl der VM-Instanzen ein, die Sie reservieren möchten. Geben Sie für dieses Beispiel 10 ein.

    9. Geben Sie die Ressourcen an, die Sie für die einzelnen VM-Instanzen reservieren möchten:

      • Wenn Sie VMs reservieren möchten, die einer vorhandenen Instanzvorlage entsprechen, wählen Sie Instanzvorlage verwenden und dann eine Instanzvorlage aus der Liste aus.
      • Wählen Sie andernfalls Maschinentyp angeben und geben Sie Folgendes an:
        1. Wählen Sie in den Feldern Maschinenfamilie, Reihe und Maschinentyp eine Maschinenfamilie, eine Reihe und einen Maschinentyp aus.
        2. Optional: Geben Sie eine Mindest-CPU-Plattform und/oder GPUs an:
          1. Klicken Sie zum Erweitern des Abschnitts CPU-Plattform und GPU auf den Erweiterungspfeil .
          2. Optional: Wählen Sie in der Liste CPU-Formular eine Option aus, um eine Minimalanforderung für die CPU-Plattform anzugeben.
          3. Optional: Klicken Sie zum Hinzufügen von GPUs auf GPU hinzufügen. Wählen Sie dann in den Feldern GPU-Typ und Anzahl der GPUs den Typ und die Anzahl der GPUs für jede VM aus.
        3. Optional: Fügen Sie lokale SSDs hinzu:
          1. Wählen Sie im Feld Anzahl der Laufwerke die Anzahl der lokalen SSDs für jede VM aus.
          2. Wählen Sie im Feld Schnittstellentyp die Schnittstelle für die lokalen SSDs aus.

      Wählen Sie für dieses Beispiel Maschinentyp angeben aus. Wählen Sie dann den Maschinentyp n2-standard-32 für die Maschinenfamilie General-purpose und die Maschinenserie N2 aus und wählen Sie die Mindest-CPU-Plattform Intel Cascade Lake aus. 1. Schließen Sie das Erstellen der Reservierung ab:

      • Wenn Sie eine eigenständige Reservierung erstellen, klicken Sie auf Erstellen.

      • Wenn Sie eine Reservierung erstellen, die mit einer Nutzungszusicherung verbunden ist:

        1. Klicken Sie auf Fertig, um das Festlegen der Attribute für diese Reservierung abzuschließen.
        2. Klicken Sie auf Kaufen, um das Erstellen der Zusicherung und der angehängten Reservierungen abzuschließen.
  2. Erstellen Sie in demselben Projekt oder in einem Projekt, für das die Reservierung freigegeben ist, eine VM-Instanz, die auf eine bestimmte Reservierung abzielt.

    Die Attribute der VM-Instanz müssen mit den Attributen der VM-Instanz dieser spezifischen Reservierung übereinstimmen, einschließlich Zone, Maschinentyp (Maschinenfamilie, vCPUs, Arbeitsspeicher), Mindestanforderung an die CPU-Plattform, GPU-Anzahl und -Typ. sowie lokale SSD-Schnittstelle und -Größe.

    1. Rufen Sie in der Google Cloud Console die Seite Instanz erstellen auf.

      Zur Seite „Instanz erstellen“

    2. Geben Sie einen Namen für Ihre VM an.

    3. Wählen Sie in den folgenden Abschnitten eine Konfiguration aus, die genau mit allen Attributen Ihrer Reservierung übereinstimmt, einschließlich eventueller optionaler Attribute. In diesem Beispiel müssen Sie folgende VM-Instanzattribute mit reservation-02 abgleichen:

      • Region: us-central1
      • Zone: us-central1-a
      • Maschinentyp: n2-standard-32
      • Mindest-CPU-Plattform: Intel Cascade Lake
      • GPUs: keine
      • Lokale SSDs: keine
    4. Maximieren Sie den Abschnitt Netzwerk, Laufwerke, Sicherheit, Verwaltung, Einzelmandanten und anschließend den Bereich Verwaltung. Wählen Sie in der Liste Reservierungen die Option Bestimmte Reservierung auswählen und führen Sie dann folgende Schritte aus:

      1. Wählen Sie ein Reservierungsprojekt aus, das freigegebene Reservierungen für Ihr aktuelles Projekt enthält. Wählen Sie für dieses Beispiel das Projekt aus, mit dem Sie reservation-02 erstellt haben.
      2. Wählen Sie den Reservierungsnamen der freigegebenen Reservierung aus, die diese VM-Instanz nutzen soll. Wählen Sie für dieses Beispiel reservation-02 aus.
    5. Klicken Sie auf Erstellen, um die VM zu erstellen.

gcloud

  1. Erstellen Sie mit dem Flag --require-specific-reservation eine Reservierung mit dem Namen reservation-02. Diese reservierten Ressourcen können nur von Instanzen verwendet werden, die ausdrücklich namentlich auf diese Reservierung abzielen.

    gcloud compute reservations create reservation-02 \
        --machine-type=n2-standard-32 \
        --min-cpu-platform "Intel Cascade Lake" \
        --vm-count=10 \
        --zone=us-central1-a \
        --project=my-owner-project \
        --share-setting=projects \
        --share-with=project-1,project-2 \
        --require-specific-reservation
    
  2. Erstellen Sie mit den Flags --reservation-affinity und --reservation eine VM-Instanz, die namentlich auf reservation-02 abzielt. Um diese Reservierung von allen Nutzerprojekten zu nutzen, für die diese Reservierung freigegeben wird, müssen Sie auch das Projekt angeben, mit dem die Reservierung erstellt wurde: my-owner-project.

    Achten Sie darauf, dass die Instanzattribute mit den Instanzattributen der Reservierung übereinstimmen, einschließlich Zone, Maschinentyp (Maschinenfamilie, vCPUs und Arbeitsspeicher), Mindest-CPU-Plattform, GPU-Anzahl und -Typ sowie Schnittstelle und Größe der lokalen SSD.

    gcloud compute instances create instance-2 \
        --machine-type=n2-standard-32 \
        --min-cpu-platform "Intel Cascade Lake" \
        --zone=us-central1-a \
        --reservation-affinity=specific \
        --reservation=projects/my-owner-project/reservations/reservation-02
    

API

  1. Erstellen Sie mit dem auf true festgelegten Feld specificReservationRequired eine Reservierung mit dem Namen reservation-02.

    POST https://compute.googleapis.com/compute/v1/projects/my-owner-project/zones/us-central1-a/reservations
    
    {
      "name":"reservation-02",
      "specificReservation":{
        "count":"10",
        "instanceProperties":{
          "machineType":"n2-standard-32",
          "minCpuPlatform": "Intel Cascade Lake"
        }
      },
      "shareSettings": {
        "shareType": "SPECIFIC_PROJECTS",
        "projectMap": {
          "project-1": {
            "projectId": "project-1"
          },
          "project-2": {
            "projectId": "project-2"
          }
        }
      }
      "specificReservationRequired": true
    }
  2. Erstellen Sie mit Feld reservationAffinity eine VM-Instanz, die namentlich auf reservation-02 abzielt. Um diese Reservierung von allen Nutzerprojekten zu nutzen, für die diese Reservierung freigegeben wird, müssen Sie auch das Projekt angeben, mit dem die Reservierung erstellt wurde: my-owner-project.

    Achten Sie darauf, dass die Instanzattribute mit den Instanzattributen der Reservierung übereinstimmen, einschließlich Zone, Maschinentyp (Maschinenfamilie, vCPUs und Arbeitsspeicher), Mindest-CPU-Plattform, GPU-Anzahl und -Typ sowie Schnittstelle und Größe der lokalen SSD.

    POST https://compute.googleapis.com/compute/v1/projects/project-2/zones/us-central1-a/instances
    
    {
      "name": "instance-2",
      "machineType": "zones/us-central1-a/machineTypes/n2-standard-32",
      "minCpuPlatform": "Intel Cascade Lake",
      "reservationAffinity":
      {
        "consumeReservationType": "SPECIFIC_RESERVATION",
        "key": "compute.googleapis.com/reservation-name",
        "values":
        ["projects/my-owner-project/reservations/reservation-02"
        ]
      },
      ...
    }

Instanzen ohne Nutzung von Reservierungen erstellen

Wenn Sie explizit vermeiden möchten, dass Ressourcen einer Reservierung genutzt werden, legen Sie das Attribut für die Reservierungsaffinität fest, um beim Erstellen der VM keine Reservierungen zu verwenden. Sie können auch implizit vermeiden, dass Ihre Reservierungen verwendet werden. Erstellen Sie dazu eine Instanz, die nicht mit den Instanzattributen Ihrer Reservierungen übereinstimmt.

Console

  1. Erstellen Sie eine VM, die explizit keine Reservierung nutzt.

    1. Rufen Sie in der Google Cloud Console die Seite Instanz erstellen auf.

      Zur Seite „Instanz erstellen“

    2. Erstellen Sie eine VM. Weitere Informationen finden Sie unter VM-Instanz erstellen und starten.

    3. Maximieren Sie den Bereich Netzwerk, Laufwerke, Sicherheit, Verwaltung, einzelne Mandanten und gehen Sie so vor:

      1. Maximieren Sie den Bereich Verwaltung.
      2. Damit diese VM keine vorhandenen Reservierungen nutzt, wählen Sie in der Liste Reservierungen die Option Nicht verwenden aus.
    4. Klicken Sie auf Erstellen.

gcloud

Erstellen Sie eine Instanz, die explizit keine Reservierung nutzt.

gcloud compute instances create instance-3 --reservation-affinity=none

Oder erstellen Sie eine Instanz, die nicht mit den Instanzattributen Ihrer Reservierungen übereinstimmt. Informationen zum Überprüfen Ihrer Reservierungsattribute finden Sie unter Reservierungen auflisten und beschreiben.

API

Erstellen Sie eine Instanz, die explizit keine Reservierung nutzt.

POST https://compute.googleapis.com/compute/v1/projects/my-project/zones/us-central1-a/instances

{
  "machineType": "zones/us-central1-a/machineTypes/n2-standard-32",
  "name": "instance-3",
  "reservationAffinity":
  {
    "consumeReservationType": "NO_RESERVATION"
  },
  ...
}

Oder erstellen Sie eine Instanz, die nicht mit den Instanzattributen Ihrer Reservierungen übereinstimmt. Informationen zum Überprüfen Ihrer Reservierungsattribute finden Sie unter Reservierungen auflisten und beschreiben.

Fehlerbehebung

Nutzung von Reservierungen prüfen und Probleme mit der Nutzung von Reservierungen beheben

Reservierungen auflisten und beschreiben

Sie können Reservierungen, die von Ihrem aktuellen Projekt erstellt wurden, nur auflisten und beschreiben. Folglich werden freigegebene Reservierungen nur für das Eigentümerprojekt aufgelistet. Sie können die für ein Projekt freigegebenen Reservierungen oder alle Reservierungen in einer Organisation nicht auflisten. Sie können auch die Liste aller Nutzerprojekte für eine freigegebene Reservierung aufrufen, wenn Sie diese Reservierung beschreiben. Empfehlungen zum Verwalten freigegebener Reservierungen finden Sie unter Best Practices für freigegebene Reservierungen.

Rufen Sie mit der Google Cloud Console, der gcloud CLI oder der Compute Engine API die Liste der Reservierungen auf, die von Ihrem Projekt erstellt wurden, sowie die Details der einzelnen Reservierungen.

Console

  1. Öffnen Sie in der Google Cloud Console die Seite Rabatte für zugesicherte Nutzung.

    Zur Seite "Rabatte für zugesicherte Nutzung"

  2. Wählen Sie den Tab Reservierungen, um alle Reservierungen aufzulisten, die im aktuellen Projekt erstellt wurden.

    In der Liste wird in jeder Zeile eine Reservierung und in jeder Spalte ein Attribut beschrieben. In der Spalte Verwendete Maschinen werden z. B. die Auslastung und Gesamtkapazität jeder Reservierung beschrieben: Der Wert 25 (50) stellt eine Reservierung für 50 Instanzen dar. 25 von diese Instanzen wurden verbraucht und werden aktuell verwendet.

    Optional: Wenn Sie ändern möchten, welche Reservierungen und Attribute angezeigt werden, verwenden Sie den Filter und die Spaltenanzeigeoptionen .

  3. Klicken Sie in der Liste auf den Namen einer Reservierung, um alle Attribute einer Reservierung zu beschreiben. Die Seite Reservierungsdetails wird geöffnet.

gcloud

Rufen Sie eine Liste Ihrer Reservierungen mit dem Befehl gcloud compute reservations list auf:

gcloud compute reservations list [--filter="zone:('ZONE')"]

NAME             IN_USE_COUNT   COUNT   ZONE
reservation-04   25             50      us-central1-a
reservation-05   0              100     us-central1-b

Beschreiben Sie Ihre Reservierungen mit dem Befehl gcloud compute reservations describe:

gcloud compute reservations describe RESERVATION_NAME --zone=ZONE

kind: compute#reservation
name: reservation-04
selfLink: https://compute.googleapis.com/compute/v1/projects/my-project/zones/us-central1-a/reservations/reservation-04
specificReservation:
  count: '50'
  inUseCount: '25'
  instanceProperties:
    guestAccelerators:
    - acceleratorCount: 1
      acceleratorType: nvidia-tesla-k80
    localSsds:
    - diskSizeGb: '375'
      interface: SCSI
    machineType: n1-standard-2
    minCpuPlatform: Any CPU Platform
specificReservationRequired: false
status: READY
zone: https://compute.googleapis.com/compute/v1/projects/my-project/zones/us-central1-a    

Sie können die Werte count und inUseCount verwenden, um die Nutzung der einzelnen Reservierungen zu bestimmen. In diesem Beispiel sind 50 Instanzen für Reservierung-04 reserviert. 25 dieser Instanzen wurden aus der Reservierung genutzt und werden derzeit verwendet.

Um eine Instanz zu erstellen, die diese Reservierung verwendet, denken Sie daran, die Instanzattribute der Reservierung abzugleichen. Beispiel:

gcloud compute instances create my-instance \
    --accelerator=type=nvidia-tesla-k80,count=1 \
    --local-ssd=size=375,interface=scsi \
    --machine-type n1-standard-2 \
    --zone us-central1-a 

API

Geben Sie in der API Ihre Reservierungen an, indem Sie eine GET-Anfrage an die Methode reservations.list stellen.

GET https://compute.googleapis.com/compute/v1/projects/PROJECT_ID/zones/ZONE/reservations/RESERVATION_NAME

{
  "id": "4100668622331754141",
  "creationTimestamp": "2019-09-27T08:21:14.707-07:00",
  "selfLink": "https://www.googleapis.com/compute/v1/projects/my-project/zones/us-central1-a/reservations/reservation-05",
  "zone": "https://www.googleapis.com/compute/v1/projects/my-project/zones/us-central1-a",
  "name": "reservation-05",
  "specificReservation": {
    "instanceProperties": {
      "machineType": "n1-standard-2"
    },
    "count": "100",
    "inUseCount": "0"
  },
  "specificReservationRequired": false,
  "status": "READY",
  "kind": "compute#reservation"
},
{
  "id": "2533514314332214789",
  "creationTimestamp": "2019-09-27T08:21:14.707-07:00",
  "selfLink": "https://www.googleapis.com/compute/v1/projects/my-project/zones/us-central1-a/reservations/reservation-04",
  "zone": "https://www.googleapis.com/compute/v1/projects/my-project/zones/us-central1-a",
  "name": "reservation-04",
  "specificReservation": {
    "instanceProperties": {
      "machineType": "n1-standard-2",
      "guestAccelerators": [
        {
          "acceleratorType": "nvidia-tesla-k80",
          "acceleratorCount": 1
        }
      ],
      "minCpuPlatform": "Any CPU Platform",
      "localSsds": [
        {
          "diskSizeGb": "375",
          "interface": "SCSI"
        }
      ]
    },
    "count": "50",
    "inUseCount": "25"
  },
  "specificReservationRequired": false,
  "status": "READY",
  "kind": "compute#reservation"
}

Beschreiben Sie eine Reservierung, indem Sie die Methode reservations.get aufrufen.

GET https://compute.googleapis.com/compute/v1/projects/PROJECT_ID/zones/ZONE/reservations/RESERVATION_NAME

{
  "id": "2533514314332214789",
  "creationTimestamp": "2019-09-27T08:21:14.707-07:00",
  "selfLink": "https://www.googleapis.com/compute/v1/projects/my-project/zones/us-central1-a/reservations/reservation-04",
  "zone": "https://www.googleapis.com/compute/v1/projects/my-project/zones/us-centra1-a",
  "name": "reservation-04",
  "specificReservationRequired": false,
  "status": "READY",
  "kind": "compute#reservation",
  "specificReservation": {
    "instanceProperties": {
      "machineType": "n1-standard-2",
      "guestAccelerators": [
        {
          "acceleratorType": "nvidia-tesla-k80",
          "acceleratorCount": 1
        }
      ],
      "minCpuPlatform": "Any CPU Platform",
      "localSsds": [
        {
          "diskSizeGb": "375",
          "interface": "SCSI"
        }
      ]
    },
    "count": "50",
    "inUseCount": "25"
  }
}

Sie können die Werte count und inUseCount verwenden, um die Nutzung der einzelnen Reservierungen zu bestimmen. In diesem Beispiel sind 50 Instanzen reserviert. 25 dieser Instanzen wurden aus der Reservierung genutzt und werden derzeit verwendet.

Reservierungen ändern

Passen Sie die Größe einer Reservierung an, wenn Sie die Anzahl der reservierten VMs ändern möchten. Ändern Sie, welche Projekte eine gemeinsame Reservierung nutzen können, wenn Sie den Verbrauch begrenzen oder erweitern möchten.

Wenn Sie andere Attribute einer Reservierung ändern möchten, müssen zuerst eine neue Reservierung erstellen und dann die ältere Reservierung löschen.

Größe einer Reservierung ändern

Sie können die Größe der VMs in einer Reservierung mithilfe der gcloud CLI oder der API anpassen (vergrößern oder verkleinern).

gcloud

Ändern Sie die Größe Ihrer Reservierung mit dem Befehl gcloud compute reservations update. Beispiel:

Angenommen, Sie erstellen eine Reservierung für zwei VM-Instanzen:

gcloud compute reservations create reservation-01 \
    --machine-type=n2-standard-32 \
    --zone=us-central1-a \
    --vm-count=2

Verwenden Sie den folgenden Befehl, um die Größe der Beispielreservierung von zwei in zehn VM-Instanzen zu ändern:

gcloud compute reservations update reservation-01 \
    --zone=us-central1-a \
    --vm-count=10

API

Erstellen Sie mit der API eine POST-Anfrage an die Methode reservations.resize und schließen Sie den neuen specificSkuCount in den Anfragetext ein. Der folgende Anfragetext aktualisiert die VM-Anzahl der Reservierung auf 10:

POST https://compute.googleapis.com/compute/v1/projects/<var>PROJECT_ID</var>/zones/<var>ZONE</var>/reservations/<var>RESERVATION_NAME</var>/resize

{"specificSkuCount": "10"}

Die Aktualisierungsanfrage ist erfolgreich, wenn zum Zeitpunkt der Anfrage genügend Ressourcen in der Zielzone und ausreichend Kontingent in der Zielregion vorhanden sind.

Nutzerprojekte für eine freigegebene Reservierung ändern

Verwenden Sie zum Ändern der Nutzerprojekte für eine freigegebene Reservierung die Google Cloud Console, die gcloud CLI oder die Compute Engine API. Sie können die Projekte sehen, für die eine Reservierung freigegeben wird. Beschreiben Sie dazu die Reservierung.

Console

  1. Öffnen Sie in der Google Cloud Console die Seite Rabatte für zugesicherte Nutzung.

    Zur Seite "Rabatte für zugesicherte Nutzung"

  2. Wählen Sie den Tab Reservierungen aus.

  3. Klicken Sie auf den Namen der freigegebenen Reservierung, für die Sie die Nutzerprojekte ändern möchten.

  4. Klicken Sie auf Bearbeiten.

  5. Passen Sie die Liste der ausgewählten Projekte an:

    • Um die Freigabe der Reservierung für ein bestimmtes Nutzerprojekt zu beenden, klicken Sie neben dem Projektnamen auf Löschen.
    • Um die Reservierung für weitere Projekte freizugeben, klicken Sie auf Projekte hinzufügen und wählen die Projekte aus der Organisation des Eigentümerprojekts, für die Sie die Reservierung freigeben möchten.
  6. Klicken Sie auf Speichern, um Ihre Änderungen an der freigegebenen Reservierung zu bestätigen.

gcloud

Mit der gcloud CLI können Sie die Liste der Projekte ändern, die eine freigegebene Reservierung nutzen können. Fügen Sie dafür Projekte hinzu, entfernen Sie Projekte oder ersetzen Sie die gesamte Liste.

  • Verwenden Sie den Befehl gcloud compute reservations update mit dem Flag --add-share-with, um der Liste der Projekte, die eine freigegebene Reservierung nutzen können, ein oder mehrere Projekte hinzuzufügen.

    gcloud compute reservations update RESERVATION_NAME \
      --zone=ZONE \
      --project=OWNER_PROJECT_ID
      --add-share-with=CONSUMER_PROJECT_IDS \
    

    Dabei gilt:

    • RESERVATION_NAME: der Name der freigegebenen Reservierung, die Sie ändern möchten.
    • ZONE: die Zone, in der die Reservierung erstellt wurde.
    • OWNER_PROJECT_ID: die Projekt-ID des Inhaberprojekts. Das ist das Projekt, mit dem Sie diese Reservierung erstellt haben.
    • CONSUMER_PROJECT_IDS: eine durch Kommas getrennte Liste mit einer oder mehreren Projekt-IDs von Projekten, für die Sie diese Reservierung freigeben möchten. Beispiel: project-1,project-2. Fügen Sie nicht das Feld OWNER_PROJECT_ID ein. Es kann diese Reservierung bereits standardmäßig nutzen.
  • Wenn Sie ein oder mehrere Projekte aus der Liste der Projekte entfernen möchten, die eine freigegebene Reservierung nutzen können, verwenden Sie den Befehl gcloud compute reservations update mit dem Flag --remove-share-with.

    gcloud compute reservations update RESERVATION_NAME \
      --zone=ZONE \
      --project=OWNER_PROJECT_ID
      --remove-share-with=CONSUMER_PROJECT_IDS \
    

    Dabei gilt:

    • RESERVATION_NAME: der Name der freigegebenen Reservierung, die Sie ändern möchten.
    • ZONE: die Zone, in der die Reservierung erstellt wurde.
    • OWNER_PROJECT_ID: die Projekt-ID des Inhaberprojekts. Das ist das Projekt, mit dem Sie diese Reservierung erstellt haben.
    • CONSUMER_PROJECT_IDS: eine durch Kommas getrennte Liste mit einer oder mehreren Projekt-IDs von Projekten, für die Sie diese Reservierung nicht mehr freigeben möchten Beispiel: project-1,project-2 Sie können die Freigabe dieser Reservierung für die OWNER_PROJECT_ID nicht mehr beenden.
  • Um die Liste der Projekte zu ersetzen, die eine freigegebene Reservierung nutzen können, verwenden Sie den Befehl gcloud compute reservations update mit dem Flag --share-with.

    gcloud compute reservations update RESERVATION_NAME \
      --zone=ZONE \
      --project=OWNER_PROJECT_ID
      --share-with=CONSUMER_PROJECT_IDS \
    

    Dabei gilt:

    • RESERVATION_NAME: der Name der freigegebenen Reservierung, die Sie ändern möchten.
    • ZONE: die Zone, in der die Reservierung erstellt wurde.
    • OWNER_PROJECT_ID: die Projekt-ID des Inhaberprojekts. Das ist das Projekt, mit dem Sie diese Reservierung erstellt haben.
    • CONSUMER_PROJECT_IDS: eine durch Kommas getrennte Liste mit einer oder mehreren Projekt-IDs aller Projekte, denen Sie die Nutzung dieser Reservierung gestatten möchten. Beispiel: project-1,project-2. Fügen Sie alle vorhandenen Nutzerprojekt-IDs hinzu, für die Sie diese Reservierung weiterhin freigeben möchten, und lassen Sie alle Projekt-IDs weg, für die Sie diese Reservierung nicht mehr freigeben möchten. Fügen Sie dann alle neuen Nutzerprojekt-IDs hinzu, für die Sie diese Reservierung ebenfalls freigeben möchten. Diese Projekte müssen sich in derselben Organisation wie das Inhaberprojekt befinden. Fügen Sie nicht das Feld OWNER_PROJECT_ID ein. Es kann diese Reservierung bereits standardmäßig nutzen.

API

Erstellen Sie mit der API eine PATCH-Anfrage an die Methode reservations.update. Verwenden Sie im Anfragetext das Feld shareSettings.projectMap, um die Liste der Projekte zu ersetzen, für die diese Reservierung freigegeben wird.

PATCH https://compute.googleapis.com/compute/v1/projects/OWNER_PROJECT_ID/zones/ZONE/reservations/RESERVATION_NAME?paths=sharedSettings.projects

{
  "shareSetting": {
    "shareType": "SPECIFIC_PROJECTS",
    "projectMap": {
      "CONSUMER_PROJECT_ID_1": {
        "projectId": "CONSUMER_PROJECT_ID_1"
      },
      "CONSUMER_PROJECT_ID_2": {
        "projectId": "CONSUMER_PROJECT_ID_2"
      }
    }
  }
}

Dabei gilt:

  • OWNER_PROJECT_ID: die Projekt-ID des Inhaberprojekts. Das ist das Projekt, mit dem Sie diese Reservierung erstellt haben.
  • ZONE: die Zone, in der die Reservierung erstellt wurde.
  • RESERVATION_NAME: der Name der Reservierung, die Sie ändern möchten. Derzeit muss dies eine freigegebene Reservierung sein.
  • CONSUMER_PROJECT_ID_1 und CONSUMER_PROJECT_ID_2: die Projekt-IDs von einem oder mehreren Projekten, für die Sie diese Reservierung freigeben möchten. Fügen Sie alle vorhandenen Nutzerprojekt-IDs hinzu, für die Sie diese Reservierung weiterhin freigeben möchten, und lassen Sie alle Projekt-IDs weg, für die Sie diese Reservierung nicht mehr freigeben möchten. Fügen Sie dann alle neuen Nutzerprojekt-IDs hinzu, für die Sie diese Reservierung ebenfalls freigeben möchten. Diese Projekte müssen sich in derselben Organisation wie das Inhaberprojekt befinden. Fügen Sie nicht das Feld OWNER_PROJECT_ID ein. Es kann diese Reservierung bereits standardmäßig nutzen.

Nachdem Sie geändert haben, welche Projekte eine Reservierung nutzen können, kann sich die Nutzung der Reservierung ändern. Zum Beispiel verbrauchen alle entfernten Nutzerprojekte keine Ressourcen mehr aus dieser Reservierung. Wenn diese Reservierung so konfiguriert wurde, dass sie automatisch auf alle neuen oder vorhandenen Instanzen angewendet wird, die den Attributen der Reservierung entsprechen (Standardverhalten), können außerdem alle hinzugefügten Nutzerprojekte beginnen, Ressourcen aus dieser Reservierung zu verbrauchen. Wenn Sie den Verbrauch dieser Reservierung überwachen möchten, finden Sie weitere Informationen unter Reservierungen auflisten und beschreiben.

Reservierung löschen

Sie können Reservierungen, die nicht an eine Nutzungszusicherung gebunden sind, über die gcloud CLI oder die API löschen.

Console

  1. Öffnen Sie in der Google Cloud Console die Seite Rabatte für zugesicherte Nutzung.

    Zur Seite "Rabatte für zugesicherte Nutzung"

  2. Klicken Sie auf Reservierungen, um eine Liste Ihrer Reservierungen anzusehen.

  3. Klicken Sie das Kästchen neben jeder Reservierung an, die Sie löschen möchten.

  4. Klicken Sie auf Reservierung löschen.

gcloud

Sie können Reservierungen mithilfe des Befehls delete freigeben:

gcloud compute reservations delete RESERVATION_NAME --zone ZONE

Dabei gilt:

  • RESERVATION_NAME: der Name der Reservierung, die Sie löschen möchten.
  • ZONE: die Zone, in der sich die Reservierung befindet.

API

Erstellen Sie mit der API eine DELETE-Anfrage an die Methode reservation.delete.

DELETE https://compute.googleapis.com/compute/v1/projects/<var>PROJECT_ID</var>/zones/<var>ZONE</var>/reservations/<var>RESERVATION_NAME</var>

Dabei gilt:

  • PROJECT_ID: die Projekt-ID des Projekts, das Sie zum Erstellen dieser Reservierung verwendet haben.
  • RESERVATION_NAME: der Name der Reservierung, die Sie löschen möchten.
  • ZONE: die Zone, in der sich die Reservierung befindet.

Sobald der Löschbefehl erfolgreich ausgeführt wurde, wird Ihnen die Reservierung nicht mehr in Rechnung gestellt und die Ressourcen sind nicht mehr für Sie reserviert. Das Löschen einer Reservierung hat keine Auswirkung auf ausgeführte Instanzen, die mit dieser Reservierung verbunden sind. Die ausgeführten Instanzen werden weiterhin ausgeführt und für diese Instanzen werden weiterhin Gebühren berechnet.

Reservierungen mit Rabatten für zugesicherte Nutzung kombinieren

Rabatte für zugesicherte Nutzung bieten stark ermäßigte Preise für Ihre Ressourcen im Gegenzug für ein- oder dreijährige Ressourcenzusicherungen. Dabei werden jedoch keine Kapazitäten in bestimmten Zonen reserviert. Mit Reservierungen wird dafür gesorgt, dass die Kapazitäten in bestimmten Zonen vorhanden sind, selbst wenn die reservierten VMs nicht ausgeführt werden. Wenn Sie einer Zusicherung Reservierungen hinzufügen, erhalten Sie ermäßigte reservierte Ressourcen.

Sie müssen Reservierungen erstellen und einer Zusicherung hinzufügen, wenn Sie diese erwerben. Sie können einer einzelnen Zusicherung mehrere Reservierungen hinzufügen. Eine Reservierung kann jedoch nur eine Zusicherung haben.

Nachdem Sie eine Zusicherung mit einer bereits hinzugefügten Reservierung erworben haben, können Sie die Reservierung während der Dauer der Zusicherung nicht löschen. Wenn Ihre Zusicherung abläuft oder storniert wird, löscht Compute Engine automatisch alle verbundenen Reservierungen.

Sie können die vorhandenen verbundenen Reservierungen einer Zusicherung jedoch durch neue ersetzen. Weitere Informationen dazu, was in Reservierungen, die für eine Zusicherung erstellt werden, geändert werden kann und was nicht, finden Sie unter Reservierungen ersetzen, die mit Zusicherungen verbunden sind.

Zugesicherte Ressourcen, für die keine verbundenen Reservierungen erforderlich sind

Wenn Sie eine Zusicherung für vCPUs und/oder Arbeitsspeicher erwerben möchten, müssen Sie diese Ressourcen nicht reservieren. Trotzdem können Sie weiterhin vCPUs und/oder Arbeitsspeicher reservieren und die Reservierung der Zusicherung anhängen, falls Compute Engine die Kapazität für diese zugesicherten Ressourcen speichern soll. Informationen zum Erwerb von Zusicherungen für vCPUs und/oder Arbeitsspeicher ausschließlich, nicht zur Reservierung, finden Sie unter Zusicherungen für Maschinentypen erwerben.

Zugesicherte Ressourcen, für die verbundene Reservierungen erforderlich sind

Wenn Sie eine Zusicherung für GPUs und/oder lokale SSDs erwerben, müssen Sie diese Ressourcen auch reservieren. Sie können Ihre zugesicherten GPUs und/oder lokalen SSDs mit einer einzelnen oder einer Kombination von Reservierungen reservieren. Ihre Zusicherung für GPUs und/oder lokale SSDs kann auch vCPUs und/oder Arbeitsspeicher enthalten, aber Sie müssen die vCPUs oder den Arbeitsspeicher nicht reservieren. Informationen zum Kauf von Zusicherungen mit GPUs und/oder lokalen SSDs finden Sie unter Zusicherungen mit angehängten Reservierungen erwerben.

Mehr oder weniger als die zugesicherten Ressourcen reservieren

Wenn Sie Ihrer Zusicherung Reservierungen zuweisen, können Sie mehr oder weniger vCPUs und/oder Arbeitsspeicher reservieren, als Ihrer Zusicherung entspricht. Wenn Sie beispielsweise eine Zusicherung für 30 GB Arbeitsspeicher erwerben, können Sie 10 GB Arbeitsspeicher oder 50 GB Arbeitsspeicher oder gar keinen Arbeitsspeicher reservieren. Wenn Ihre Zusicherung jedoch GPUs und/oder lokale SSDs enthält, müssen Sie die genaue Anzahl von GPUs und/oder lokalen SSDs reservieren und anhängen, die Ihrer Zusicherung entsprechen. Wenn Sie beispielsweise eine Zusicherung für 30 GB Arbeitsspeicher und 4 GPUs erwerben, können Sie eine beliebige Speichermenge reservieren. Allerdings muss die Reservierung (oder die Kombination aus Reservierungen), die Sie hinzufügen, genau vier GPUs haben. Daher können Sie vCPUs und/oder Arbeitsspeicher auch dann reservieren und anhängen, wenn Sie dafür keine Zusicherung haben. Dies ist aber für GPUs und/oder lokale SSDs nicht möglich.

Zusicherungen mit verbundenen Reservierungen erwerben

Wenn Sie eine Zusicherung mit verbundenen Reservierungen erwerben, achten Sie darauf, dass Ihre Zusicherung und die Reservierungen die folgenden Kriterien erfüllen:

  • Die Zusicherung und die verbundenen Reservierungen müssen sich in derselben Region befinden.
  • Die Reservierung muss sich auf dieselbe Maschinenreihe wie die Zusicherung beziehen.
  • Wenn die Zusicherung GPUs enthält, müssen der GPU-Typ in der Reservierung und die Zusicherung übereinstimmen.
  • Bei GPUs und lokalen SSDs muss die Anzahl der reservierten Ressourcen jedes Ressourcentyps genau mit der Anzahl der für diesen Ressourcentyp zugesicherten Ressourcen übereinstimmen. Wenn Sie beispielsweise eine Zusicherung für 4 V100-GPUs erwerben möchten, müssen die mit der Zusicherung verbundenen Reservierungen insgesamt 4 V100-GPUs haben. Die Anzahl der vCPUs und die Menge an Arbeitsspeicher können jedoch unter der von Ihnen zugesicherten Nutzung liegen.
  • Bei GPUs erwerben Sie Nutzungszusicherungen für die spezifischen GPU-Typen, die Sie verwenden möchten. Sie können beispielsweise Zusicherungen für NVIDIA P100- oder NVIDIA V100-GPUs erwerben, aber Sie können keine Zusicherungen verwenden, die für NVIDIA P100-GPUs erworben wurden, um NVIDIA V100-GPUs abzudecken.

Sie können eine Zusicherung mit einer angehängten Reservierung über die Google Cloud Console, die gcloud CLI oder die API erwerben.

Console

Wählen Sie das Projekt aus, mit dem Sie die Zusicherung erwerben möchten, bevor Sie eine Zusicherung mit der Cloud Console erwerben. Wenn die Rabattfreigabe für ein Rechnungskonto aktiviert ist, können Sie die Zusicherung über jedes Projekt über dieses Rechnungskonto erwerben. Führen Sie nach der Auswahl des Projekts die folgenden Schritte aus:

  1. Öffnen Sie in der Google Cloud Console die Seite Rabatte für zugesicherte Nutzung.

    Zur Seite "Rabatte für zugesicherte Nutzung"

  2. Klicken Sie auf Zusicherung kaufen, um eine neue Zusicherung zu kaufen.

  3. Geben Sie der Zusicherung einen Namen und wählen Sie die Region aus, auf die sie angewendet werden soll.

  4. Wählen Sie die Zusicherungsart für Ihre GPUs und/oder lokalen SSDs aus:
    Für allgemeine Zwecke (N2) für N2-Maschinentypen
    Für allgemeine Zwecke (N2D) für N2D-Maschinentypen
    Für allgemeine Zwecke (N1) für N1-Maschinentypen
    Computing-optimiert (C2) für C2-Maschinentypen
    Beschleunigungsoptimiert (A2) für beschleunigungsoptimierte Maschinentypen

  5. Wählen Sie als Dauer der Zusicherung 1 oder 3 Jahre aus.

  6. Geben Sie die Anzahl der Kerne und den Umfang an Arbeitsspeicher ein, die Sie erwerben möchten. Wenn Sie nur die Nutzung von GPUs oder lokalen SSDs zusichern möchten, nicht aber die von vCPUs und Arbeitsspeicher, geben Sie für die zugesicherte Menge von vCPUs und Arbeitsspeicher 0 an.

  7. Klicken Sie auf GPUs hinzufügen und wählen Sie den GPU-Typ und die Anzahl der GPUs aus, deren Nutzung Sie zusichern möchten.

  8. Klicken Sie auf Lokale SSD hinzufügen und geben Sie die Anzahl der Laufwerke ein, deren Nutzung Sie zusichern möchten.

  9. Klicken Sie im Abschnitt Reservierungen auf Element hinzufügen, um eine Reservierung zu erstellen und der Zusicherung hinzuzufügen.

    1. Geben Sie im Feld Name einen Namen für die Reservierung ein.
    2. Wählen Sie die Region und die Zone aus, in der Sie Ressourcen reservieren möchten.
    3. Wählen Sie den gewünschten Freigabetyp:
      • Um eine Reservierung für ein einzelnes Projekt zu erstellen, wählen Sie Lokal aus.
      • Um eine freigegebene Reservierung für mehrere Projekte zu erstellen, wählen Sie Freigegeben aus. Klicken Sie auf Projekte hinzufügen und wählen Sie die gewünschten Projekte aus der Organisation des aktuellen Projekts aus, um diese Reservierung für andere Projekte freizugeben.
    4. Wählen Sie im Feld Mit VM-Instanz verwenden eine der folgenden Optionen:

      • Wenn Sie die Ressourcen der Reservierung nur zum Erstellen übereinstimmender VMs verwenden möchten, die ausdrücklich namentlich auf diese Reservierung abzielen, wählen Sie Spezifische Reservierung auswählen.
      • Damit übereinstimmende VM-Instanzen diese Reservierung automatisch verwenden können, wählen Sie Reservierung automatisch verwenden aus.
    5. Geben Sie im Feld Anzahl der VM-Instanzen die Anzahl der VM-Instanzen ein, die Sie reservieren möchten.

    6. Geben Sie die Ressourcen an, die Sie für die einzelnen VM-Instanzen reservieren möchten:

      • Wenn Sie VMs reservieren möchten, die einer vorhandenen Instanzvorlage entsprechen, wählen Sie Instanzvorlage verwenden und dann eine Instanzvorlage aus der Liste aus.
      • Wählen Sie andernfalls Maschinentyp angeben und geben Sie Folgendes an:
        1. Wählen Sie in den Feldern Maschinenfamilie, Reihe und Maschinentyp eine Maschinenfamilie, eine Reihe und einen Maschinentyp aus.
        2. Optional: Geben Sie eine Mindest-CPU-Plattform und/oder GPUs an:
          1. Klicken Sie zum Erweitern des Abschnitts CPU-Plattform und GPU auf den Erweiterungspfeil .
          2. Optional: Wählen Sie in der Liste CPU-Formular eine Option aus, um eine Minimalanforderung für die CPU-Plattform anzugeben.
          3. Optional: Klicken Sie zum Hinzufügen von GPUs auf GPU hinzufügen. Wählen Sie dann in den Feldern GPU-Typ und Anzahl der GPUs den Typ und die Anzahl der GPUs für jede VM aus.
        3. Optional: Fügen Sie lokale SSDs hinzu:
          1. Wählen Sie im Feld Anzahl der Laufwerke die Anzahl der lokalen SSDs für jede VM aus.
          2. Wählen Sie im Feld Schnittstellentyp die Schnittstelle für die lokalen SSDs aus.
    7. Klicken Sie auf Fertig, um das Festlegen der Attribute für diese Reservierung abzuschließen.

  10. Klicken Sie auf die Schaltfläche Kaufen, um die Zusicherung zu kaufen.

  11. Lesen Sie die Kaufbedingungen und klicken Sie auf Kaufen, wenn Sie den Kauf der Zusicherung abschließen möchten.

gcloud

Verwenden Sie den Befehl gcloud compute commmitments create, um eine Zusicherung zu kaufen, und Flags, um eine Reservierung hinzuzufügen.

Zum Beispiel umfasst die folgende Zusicherung 4 GPUs und eine neue Reservierung für diese 4 GPUs zur Verwendung auf 2 n1-standard-32-Instanzen in us-central1-a.

gcloud compute commitments create commitment-01 \
    --region=us-central1 \
    --resources=vcpu=96,memory=624GB \
    --resources-accelerator=type=nvidia-tesla-v100,count=4 \
    --plan 12-month \
    --reservation=reservation-01 \
    --reservation-zone=us-central1-a \
    --machine-type=n1-standard-32 \
    --accelerator=type=nvidia-tesla-v100,count=2 \
    --vm-count=2

Wenn Sie die Nutzung von GPUs oder lokalen SSDs zusichern möchten, nicht aber die von vCPUs und Arbeitsspeicher, geben Sie für die zugesicherte Menge von vCPUs und Arbeitsspeicher 0 an.

gcloud compute commitments create commitment-01 \
    --region=us-west2 \
    --resources=vcpu=0,memory=0 \
    --resources-accelerator=type=nvidia-tesla-p4,count=1 \
    --plan 12-month \
    --reservation=reservation-01 \
    --reservation-zone=us-west2-b \
    --machine-type=n1-standard-2 \
    --accelerator=type=nvidia-tesla-p4,count=1 \
    --vm-count=1

Wenn Sie beim Erwerb einer Zusicherung mehrere Reservierungen erstellen möchten, verwenden Sie eine YAML-Datei, in der die Reservierungsattribute enthalten sind. Beispiel:

gcloud compute commitments create commitment-01 \
    --region=us-central1 \
    --resources=vcpu=96,memory=624,local-ssd=750 \
    --resources-accelerator=type=nvidia-tesla-v100,count=1 \
    --plan 12-month \
    --reservations-from-file=YAML_FILE

Die folgende YAML-Datei enthält beispielsweise 2 Reservierungen. Die erste Reservierung res-01 enthält 1 n1-standard-2-Instanz mit 1 GPU. Dies ist eine ausgewählte Reservierung. Das bedeutet, dass Sie diese Reservierung zur Verwendung ihrer reservierten Instanzen ausdrücklich namentlich auswählen müssen. Die zweite Reservierung res-02 enthält 1 VM-Instanz n1-standard-2 mit 2 Arten von angehängten lokalen SSDs.

- reservation: res-01
  reservation_zone: us-central1-a
  require_specific_reservation: true
  vm_count: 1
  machine_type: n1-standard-2
  accelerator:
  - count: 1
    type: nvidia-tesla-v100
- reservation: res-02
  reservation_zone: us-central1-a
  vm_count: 1
  machine_type: n1-standard-2
  local_ssd:
  - interface: scsi
    size: 375
  - interface: nvme
    size: 375

API

Zum Definieren der Reservierungsattribute können Sie die Methode regionCommitments.insert verwenden und das Feld reservations einfügen. Die folgende Zusicherung umfasst zum Beispiel 4 GPUs und eine Reservierung für die 4 GPUs zur Verwendung auf 2 Instanzen in us-central1-a.

POST https://compute.googleapis.com/compute/v1/projects/PROJECT_ID/regions/REGION/commitments

{
  "name": "commitment-01",
  "plan": "TWELVE_MONTH",
  "resources":
  [
    {
      "amount": "96",
      "type": "VCPU"
    },
    {
      "amount": "638976",
      "type": "MEMORY"
    },
    {
      "acceleratorType": "nvidia-tesla-v100",
      "amount": "4",
      "type": "ACCELERATOR"
    }
  ],
  "reservations":
  [
    {
      "name": "reservation-01",
      "specificReservation":
      {
        "count": "2",
        "instanceProperties":
        {
          "guestAccelerators":
          [
            {
              "acceleratorCount": 2,
              "acceleratorType": "nvidia-tesla-v100"
            }
          ],
          "machineType": "n1-standard-8"
        }
      },
      "specificReservationRequired": false,
      "zone": "us-central1-a"
    }
  ]
}

Wenn Sie nur die Nutzung von GPUs oder lokalen SSDs zusichern möchten, nicht aber die von vCPUs und Arbeitsspeicher, geben Sie für die zugesicherte Menge von vCPUs und Arbeitsspeicher 0 an. Beispiel:

POST https://compute.googleapis.com/compute/v1/projects/PROJECT_ID/regions/REGION/commitments

{
  "name": "commitment-01",
  "plan": "TWELVE_MONTH",
  "resources":
  [
    {
      "amount": "0",
      "type": "VCPU"
    },
    {
      "amount": "0",
      "type": "MEMORY"
    },
    {
      "acceleratorType": "nvidia-tesla-v100",
      "amount": "4",
      "type": "ACCELERATOR"
    }
  ],
  "reservations":
  [
    {
      "name": "reservation-01",
      "specificReservation":
      {
        "count": "2",
        "instanceProperties":
        {
          "guestAccelerators":
          [
            {
              "acceleratorCount": 2,
              "acceleratorType": "nvidia-tesla-v100"
            }
          ],
          "machineType": "n1-standard-8"
        }
      },
      "specificReservationRequired": false,
      "zone": "us-central1-a"
    }
  ]
}

Die Zusicherung mit den verbundenen Reservierungen wird nur dann erfolgreich erstellt, wenn zum Zeitpunkt der Anfrage genügend Ressourcen des angegebenen Maschinentyps in der Zielzone und ausreichend Kontingente vorhanden sind.

Wenn Sie eine Zusicherung mit einer verbundenen Reservierung erstellen, können Sie die Reservierung während der Dauer der Zusicherung nicht löschen. Wenn Ihre Zusicherung abgelaufen ist, löscht Compute Engine automatisch alle verbundenen Reservierungen. Das Löschen von Reservierungen hat keine Auswirkungen auf ausgeführte Instanzen, die mit diesen Reservierungen verbunden sind. Die ausgeführten Instanzen werden weiterhin ausgeführt und für diese Instanzen werden weiterhin Gebühren berechnet.

Wenn Sie die Attribute Ihrer zugesicherten Reservierungen ändern müssen, lesen Sie die Informationen unter Reservierungen ändern, die mit Zusicherungen verbunden sind.

Reservierungen ersetzen, die mit Zusicherungen verbunden sind

Ersetzen Sie die vorhandenen verbundenen Reservierungen Ihrer Zusicherung durch neue, wenn Sie die Typen und Anzahl der VMs ändern möchten, die Ihre zugesicherten Ressourcen verwenden. Wenn Sie die vorhandene verbundene Reservierung einer Zusicherung durch eine neue Reservierung ersetzen, können Sie die folgenden Änderungen vornehmen:

  • Sie können VMs von einem anderen Maschinentyp reservieren. Sie müssen jedoch weiterhin VMs aus derselben Maschinenfamilie reservieren, um weiterhin Rabatte für zugesicherte Nutzung für Ihre reservierten Ressourcen zu erhalten.
  • Sie können die Anzahl der VMs, die Sie reservieren möchten, ändern.
  • Sie können die Anzahl der GPUs und lokalen SSDs ändern, die pro VM angehängt werden.

Sie können jeweils nur eine verbundene Reservierung durch genau eine neue verbundene Reservierung ersetzen. Sie können die ersetzten Reservierungen als lokale oder freigegebene Reservierungen festlegen.

Wenn Sie die verbundene Reservierung Ihrer Zusicherung durch eine neue ersetzen, muss die neue Reservierung die folgenden Anforderungen erfüllen:

  • Die neue Reservierung muss sich im selben Projekt wie die Zusicherung befinden.

  • Die neue Reservierung muss sich in derselben Zone wie die ursprüngliche Reservierung befinden.

  • Die Anzahl und die Typen der GPUs in der neuen Reservierung müssen mit den GPUs in der ursprünglichen Reservierung übereinstimmen.

  • Die Menge und die Typen lokaler SSDs in der neuen Reservierung müssen mit denen der ursprünglichen Reservierung übereinstimmen.

  • Sie können nur bis zu 100 VMs pro Anfrage ändern. Wenn Sie eine Änderung vornehmen möchten, die mehr als 100 VMs umfasst, teilen Sie die Änderung in mehrere kleinere Anfragen auf oder wenden Sie sich an den Google Cloud-Support.

Sie können die Reservierungen einer Zusicherung über die gcloud CLI oder die API ersetzen. Nachdem Sie die neuen Reservierungen erstellt haben, können Sie die erforderlichen Änderungen an den VMs vornehmen.

gcloud

Verwenden Sie den Befehl gcloud beta compute commitments update-reservations, um Reservierungen zu aktualisieren, die mit Zusicherungen verbunden sind.

Angenommen, Sie erstellen eine Zusicherung mit der folgenden Reservierung:

  • res-1 hat 4 n1-standard-2-Instanzen mit jeweils 1 P100-GPU (insgesamt 8 vCPUs und 4 P100-GPUs). Die insgesamt reservierten Ressourcen umfassen die 4 P100-GPUs.

Sie können die Beispielzusicherung mit dem folgenden Befehl erstellen:

gcloud beta compute commitments create my-commitment-with-reservations \
    --region=asia-east1 \
    --resources=vcpu=10,memory=32GB \
    --resources-accelerator=type=nvidia-tesla-p100,count=4 \
    --plan 12-month \
    --reservations-from-file=one-reservation.yaml

Die Datei one-reservation.yaml enthält Folgendes:

- reservation: res-1
  reservation_zone: asia-east1-a
  require_specific_reservation: true
  vm_count: 4
  machine_type: n1-standard-2
  accelerator:
  - count: 1
    type: nvidia-tesla-p100

Sie können die Beispielzusicherung aktualisieren, um die vorhandene verbundene Reservierung durch eine neue zu ersetzen. In diesem Beispiel möchten Sie die verbundene Reservierung res-1 durch eine neue Reservierung res-2 ersetzen. Dazu gehen Sie so vor:

  • res-1 mit 4 n1-standard-2-Instanzen mit jeweils 1 P100-GPU (insgesamt 8 vCPUs und 4 P100-GPUs) löschen.
  • res-2 mit 2 n1-standard-2-Instanzen mit jeweils 2 P100-GPUs (insgesamt 4 vCPUs und 4 P100-GPUs) erstellen und hinzufügen.

Dabei bleibt die Gesamtzahl der reservierten GPUs innerhalb der Verpflichtung konstant bei 4.

Führen Sie den folgenden Befehl aus, um die Beispielaktualisierung vorzunehmen:

gcloud beta compute commitments update-reservations my-commitment-with-reservations \
    --region=us-central1 \
    --reservations-from-file=two-reservations.yaml

Die Datei two-reservations.yaml enthält Folgendes:

- reservation: res-1
  reservation_zone: asia-east1-a
  require_specific_reservation: true
  vm_count: 1
  machine_type: n1-standard-2
  accelerator:
  - count: 1
    type: nvidia-tesla-p100
- reservation: res-2
  reservation_zone: asia-east1-a
  require_specific_reservation: true
  vm_count: 3
  machine_type: n1-standard-2
  accelerator:
  - count: 1
    type: nvidia-tesla-p100

API

Verwenden Sie die Methode regionCommitments.updateReservations.

Angenommen, Sie erstellen eine Zusicherung mit der folgenden Reservierung:

  • res-1 hat 4 n1-standard-2-Instanzen mit jeweils 1 nvidia-tesla-p100-GPU (8 vCPUs und 4 P100-GPUs). Die insgesamt reservierten Ressourcen umfassen die 4 P100-GPUs.

Sie können die Beispielzusicherung mit dem folgenden Befehl erstellen:

POST https://compute.googleapis.com/compute/beta/projects/my-project/regions/asia-east1/commitments/my-commitment-with-reservation/updateReservations

{
  "name": "my-commitment-with-reservation",
  "plan": "TWELVE_MONTH",
  "reservations":
  [
    {
      "name": "res-1",
      "specificReservation":
      {
        "count": "4",
        "instanceProperties":
        {
          "guestAccelerators":
          [
            {
              "acceleratorCount": 1,
              "acceleratorType": "nvidia-tesla-p100"
            }
          ],
          "machineType": "n1-standard-2"
        }
      },
      "specificReservationRequired": true,
      "zone": "asia-east1-a"
    }
  ],
  "resources":
  [
    {
      "amount": "10",
      "type": "VCPU"
    },
    {
      "amount": "32768",
      "type": "MEMORY"
    },
    {
      "acceleratorType": "nvidia-tesla-p100",
      "amount": "4",
      "type": "ACCELERATOR"
    }
  ]
}

Sie können die Beispielzusicherung aktualisieren, um die vorhandene verbundene Reservierung durch eine neue Reservierung zu ersetzen.

Beispiel: Sie möchten die verbundene Reservierung res-1 durch die neue Reservierung res-2 für ein einzelnes Projekt ersetzen. Gehen Sie dazu so vor:

  • res-1 mit 4 n1-standard-2-Instanzen mit jeweils 1 P100-GPU (insgesamt 8 vCPUs und 4 P100-GPUs) löschen.
  • res-2 mit 2 n1-standard-2-Instanzen mit jeweils 2 P100-GPUs (insgesamt 4 vCPUs und 4 P100-GPUs) erstellen und hinzufügen.

Dabei bleibt die Gesamtzahl der reservierten GPUs innerhalb der Verpflichtung konstant bei 4.

Verwenden Sie die folgende API-Anfrage, um die Beispielaktualisierung vorzunehmen:

POST https://compute.googleapis.com/compute/beta/projects/my-project/regions/asia-east1/commitments/my-commitment-with-reservation/updateReservations

{
  "reservations":
  [
    {
      "name": "res-2",
      "specificReservation":
      {
        "count": "2",
        "instanceProperties":
        {
          "guestAccelerators":
          [
            {
              "acceleratorCount": 1,
              "acceleratorType": "nvidia-tesla-p100"
            }
          ],
          "machineType": "n1-standard-2"
        }
      },
      "specificReservationRequired": true,
      "zone": "asia-east1-a"
    }
  ]
}

Sie können auch die Beispielzusicherung aktualisieren, um die vorhandene verbundene Reservierung durch eine neue freigegebene Reservierung zu ersetzen. Angenommen, Sie möchten die verbundene Reservierung res-1 für ein einzelnes Projekt durch die Reservierung res-3 ersetzen, die für project-1 und project-2 freigegeben ist. Senden Sie dazu die folgende API-Anfrage:

POST https://compute.googleapis.com/compute/beta/projects/my-project/regions/asia-east1/commitments/my-commitment-with-reservation/updateReservations

{
  "reservations":
  [
    {
      "name": "res-3",
      "specificReservation":
      {
        "count": "6",
        "instanceProperties":
        {
          "guestAccelerators":
          [
            {
              "acceleratorCount": 1,
              "acceleratorType": "nvidia-tesla-p100"
            }
          ],
          "machineType": "n1-standard-2"
        }
      },
      "shareSettings": {
        "shareType": "SPECIFIC_PROJECTS",
        "projectMap": {
          "project-1": {
            "projectId": "project-1"
          },
          "project-2": {
            "projectId": "project-2"
          }
        }
      },
      "specificReservationRequired": true,
      "zone": "asia-east1-a"
    }
  ]
}

Nutzungsberichte zu Reservierungen ansehen

Exportieren Sie detaillierte Berichte zur Nutzung von Compute Engine mit dem Exportfeature in einen Cloud Storage-Bucket. Weitere Informationen finden Sie unter Nutzungsberichte ansehen.

Der Nutzungsbericht enthält folgende Angaben:

  • Genutzte reservierte Ressourcen. Diese Einträge werden als normale Ressourcen in Bezug auf vCPUs, Arbeitsspeicher, GPUs und lokale SSDs angezeigt.
  • Ungenutzte reservierte Ressourcen. Diese Einträge haben normale SKU-Namen und Reservierungsressourcen-URIs.
  • Die Gesamtzahl der reservierten Ressourcen. Diese Einträge haben Reservierungs-SKU-Namen und Reservierungsressourcen-URIs. Mit diesen Einträgen sind keine Kosten verbunden. Berechnen Sie anhand dieser Einträge, wie viel von Ihren Reservierungen Sie nutzen.
Messung MeasurementId-Format Resource URI-Format
Genutzte reservierte Ressourcen com.google.cloud/services/compute-engine/SKU_NAME https://compute.googleapis.com/compute/v1/projects/PROJECT_ID/zones/ZONE/RESOURCE_TYPE/RESOURCE_NAME.

Beispiel: https://compute.googleapis.com/compute/v1/projects/my-project/zones/us-central1-a/instances/my-instance
Ungenutzte reservierte Ressourcen com.google.cloud/services/compute-engine/SKU_NAME https://compute.googleapis.com/compute/v1/projects/PROJECT_ID/zones/ZONE/reservations/RESERVATION_NAME.

Beispiel: https://compute.googleapis.com/compute/v1/projects/my-project/zones/europe-west1-b/reservations/my-reservation
Reservierte Ressourcen insgesamt com.google.cloud/services/compute-engine/ReservationSKU_NAME https://compute.googleapis.com/compute/v1/projects/PROJECT_ID/zones/ZONE/reservations/RESERVATION_NAME.

Beispiel: https://compute.googleapis.com/compute/v1/projects/my-project/zones/europe-west1-b/reservations/my-reservation

Das folgende Snippet aus einem Nutzungsbericht für eine Reservierung namens my-reservation enthält z. B. folgende Informationen:

  • Zeile 1 gibt den reservierten RAM an, der aktuell genutzt wird. Die ResourceId der Zeile zeigt, dass dieser RAM von einer Instanz namens my-instance genutzt wird.
  • Zeile 2 gibt reservierten RAM an, der nicht genutzt wird. Die ResourceId der Zeile gibt an, dass der reservierte RAM von my-reservation genutzt wird. Er wird noch nicht von einer Instanz verwendet.
  • Zeile 3 gibt den gesamten reservierten RAM an.
Report Date,MeasurementId,Quantity,Unit,Resource URI,ResourceId,Location
2019-06-06,com.google.cloud/services/compute-engine/VmimageN2StandardRam,166970074857472,byte-seconds,https://compute.googleapis.com/compute/v1/projects/my-project/zones/us-central2-a/instances/my-instance,1775485842510981624,us-central2-a
2019-06-06,com.google.cloud/services/compute-engine/VmimageN2StandardRam,166970074857472,byte-seconds,https://compute.googleapis.com/compute/v1/projects/my-project/zones/us-central2-a/reservations/my-reservation,7.58809E+17,us-central2-a
2019-06-06,com.google.cloud/services/compute-engine/ReservationN2StandardRam,333940149714944,byte-seconds,https://compute.googleapis.com/compute/v1/projects/my-project/zones/us-central2-a/reservations/my-reservation,7.58809E+17,us-central2-a
...

Nächste Schritte