Reparaturen in einer MIG deaktivieren

In diesem Dokument wird beschrieben, wie Sie Reparaturen von ausgefallenen und fehlerhaften VMs in einer verwalteten Instanzgruppe (Managed Instance Group, MIG) deaktivieren und, falls diese bereits deaktiviert sind, die MIG so konfigurieren, dass VMs repariert werden.

Standardmäßig repariert eine MIG eine fehlgeschlagene VM in der Gruppe automatisch, indem sie die VM neu erstellt. Wenn Sie eine anwendungsbasierte Systemdiagnose konfiguriert haben, repariert die MIG auch fehlerhafte VMs, auf denen Ihre Anwendung die Systemdiagnose nicht bestanden hat. Die Reparatur einer VM, die auf einer anwendungsbasierten Systemdiagnose beruht, wird auch als automatische Reparatur bezeichnet.

Wenn Sie nicht möchten, dass eine MIG eine fehlgeschlagene oder fehlerhafte VM repariert, können Sie die Reparaturen in der MIG deaktivieren. Das Deaktivieren von Reparaturen ist in Szenarien nützlich, in denen Sie Fehler bei einer ausgefallenen VM beheben, eine eigene Reparaturlogik implementieren oder den Systemzustand von Anwendungen überwachen möchten, ohne fehlerhafte VMs zu reparieren.

Wenn Sie prüfen möchten, ob Reparaturen in einer MIG bereits deaktiviert sind, prüfen Sie die Reparaturkonfiguration in einer MIG.

Weitere Informationen zu Reparaturen in einer MIG finden Sie unter VMs für Hochverfügbarkeit reparieren.

Hinweise

  • Richten Sie die Authentifizierung ein, falls Sie dies noch nicht getan haben. Bei der Authentifizierung wird Ihre Identität für den Zugriff auf Google Cloud Dienste und APIs überprüft. Zur Ausführung von Code oder Beispielen aus einer lokalen Entwicklungsumgebung können Sie sich so bei Compute Engine authentifizieren:

    Wählen Sie den Tab für die geplante Verwendung der Beispiele auf dieser Seite aus:

    Console

    Wenn Sie über die Google Cloud Console auf Google Cloud -Dienste und -APIs zugreifen, müssen Sie die Authentifizierung nicht einrichten.

    gcloud

    1. Installieren Sie die Google Cloud CLI. Initialisieren Sie die Google Cloud CLI nach der Installation mit dem folgenden Befehl:

      gcloud init

      Wenn Sie einen externen Identitätsanbieter (IdP) verwenden, müssen Sie sich zuerst mit Ihrer föderierten Identität in der gcloud CLI anmelden.

  • Legen Sie eine Standardregion und -zone fest.
  • REST

    Wenn Sie die REST API-Beispiele auf dieser Seite in einer lokalen Entwicklungsumgebung verwenden möchten, verwenden Sie die Anmeldedaten, die Sie der gcloud CLI bereitstellen.

      Installieren Sie die Google Cloud CLI.

      Wenn Sie einen externen Identitätsanbieter (IdP) verwenden, müssen Sie sich zuerst mit Ihrer föderierten Identität in der gcloud CLI anmelden.

    Weitere Informationen finden Sie in der Dokumentation zur Google Cloud -Authentifizierung unter Für die Verwendung von REST authentifizieren.

Reparaturen in einer MIG deaktivieren

Wenn Sie Reparaturen in einer MIG deaktivieren, werden standardmäßig sowohl Reparaturen fehlgeschlagener VMs als auch die automatische Reparatur deaktiviert. Wenn Sie nur die automatische Reparatur deaktivieren möchten, lesen Sie den Abschnitt Automatische Reparatur deaktivieren.

Console

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

    Zu den Instanzgruppen

  2. Klicken Sie auf den Namen der verwaltete Instanzgruppe, in der Sie die Reparatur deaktivieren möchten.

  3. Klicken Sie auf Bearbeiten.

  4. Klicken Sie auf Instance-Lebenszyklus und Autohealing, um den Bereich zu maximieren.

    1. Legen Sie im Abschnitt Aktion bei Fehler das Feld Standardaktion bei Fehler auf Keine Aktion fest.
    2. Wenn Sie die automatische Reparatur konfiguriert haben und nicht möchten, dass die MIG die automatische Reparatur deaktiviert, legen Sie im Abschnitt Automatische Reparatur das Feld Bei fehlgeschlagener Systemdiagnose auf Instanz reparieren fest.
  5. Klicken Sie auf Speichern.

gcloud

Wenn Sie Reparaturen in einer MIG deaktivieren möchten, verwenden Sie den Befehl update: Dadurch wird die automatische Reparatur standardmäßig deaktiviert.

gcloud compute instance-groups managed update MIG_NAME \
    --default-action-on-vm-failure=do-nothing \
    --zone=ZONE

Wenn die automatische Reparatur in der MIG konfiguriert ist und Sie sie nicht standardmäßig deaktivieren möchten, verwenden Sie den Befehl update, um das Flag --action-on-vm-failed-health-check auf repair zu setzen. So wird sichergestellt, dass die automatische Reparatur fehlerhafter VMs weiterhin funktioniert, auch wenn die Reparatur fehlgeschlagener VMs deaktiviert ist.

gcloud compute instance-groups managed update MIG_NAME \
    --default-action-on-vm-failure=do-nothing \
    --action-on-vm-failed-health-check=repair \
    --zone=ZONE

Ersetzen Sie Folgendes:

  • MIG_NAME: Name der Instanzgruppe.
  • ZONE: Zone, in der sich die MIG befindet Verwenden Sie bei einer regionalen MIG das Flag --region=REGION.

REST

So deaktivieren Sie Reparaturen in einer MIG mit den API-Methoden: Dadurch wird die automatische Reparatur standardmäßig deaktiviert.

Mit dem folgenden Aufruf können Sie beispielsweise die Größe einer zonalen MIG anpassen. Dadurch wird die automatische Reparatur standardmäßig deaktiviert.

PATCH https://compute.googleapis.com/compute/v1/projects/PROJECT_ID/zones/ZONE/instanceGroupManagers/MIG_NAME

{
  "instanceLifecyclePolicy":
    {
      "defaultActionOnFailure": "DO_NOTHING"
    }
  }

Wenn die automatische Reparatur in der MIG konfiguriert ist und Sie sie nicht standardmäßig deaktivieren möchten, verwenden Sie die API-Methoden wie unten beschrieben, um das Flag onFailedHealthCheck auf REPAIR zu setzen. So wird sichergestellt, dass die automatische Reparatur fehlerhafter VMs weiterhin funktioniert, auch wenn die Reparatur fehlgeschlagener VMs deaktiviert ist.

Mit dem folgenden Aufruf können Sie beispielsweise in einer zonalen MIG:

PATCH https://compute.googleapis.com/compute/v1/projects/PROJECT_ID/zones/ZONE/instanceGroupManagers/MIG_NAME

{
  "instanceLifecyclePolicy":
    {
      "defaultActionOnFailure": "DO_NOTHING",
      "onFailedHealthCheck": "REPAIR"
    }
  }

Ersetzen Sie Folgendes:

  • PROJECT_ID: Ihre Projekt-ID.
  • MIG_NAME: Name der MIG.
  • ZONE: die Zone, in der sich die verwaltete Instanzgruppe befindet. Verwenden Sie bei einer regionalen MIG regions/REGION in der URL.

Beschränkungen

Wenn eine MIG eine der folgenden Eigenschaften hat, können Sie die Reparaturen in der MIG nicht deaktivieren, indem Sie das Feld defaultActionOnFailure auf DO_NOTHING setzen:

Automatische Reparatur deaktivieren

Wenn Sie eine Systemdiagnose für Anwendungen in einer MIG konfiguriert haben und nicht möchten, dass die MIG fehlerhafte VMs repariert, können Sie die automatische Reparatur separat deaktivieren. Dadurch wird die Reparatur ausgefallener VMs nicht deaktiviert.

Console

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

    Zu den Instanzgruppen

  2. Klicken Sie auf den Namen der MIG, für die Sie die automatische Reparatur deaktivieren möchten.

  3. Klicken Sie auf Bearbeiten.

  4. Klicken Sie auf Instance-Lebenszyklus und Autohealing, um den Bereich zu maximieren.

  5. Legen Sie im Abschnitt Automatische Reparatur das Feld Bei fehlgeschlagener Systemdiagnose auf Keine Aktion fest.

  6. Klicken Sie auf Speichern.

gcloud

Wenn Sie die automatische Reparatur in einer vorhandenen MIG deaktivieren möchten, verwenden Sie den Befehl update und setzen Sie das Flag --action-on-vm-failed-health-check auf do-nothing.

Verwenden Sie beispielsweise den folgenden Befehl für eine zonale MIG:

gcloud compute instance-groups managed update MIG_NAME \
    --action-on-vm-failed-health-check=do-nothing \
    --zone=ZONE

Ersetzen Sie Folgendes:

  • MIG_NAME: Name der MIG.
  • ZONE: die Zone, in der sich die verwaltete Instanzgruppe befindet. Verwenden Sie bei einer regionalen MIG das Flag --region=REGION.

REST

Wenn Sie die automatische Reparatur in einer MIG deaktivieren möchten, verwenden Sie die API-Methoden wie im Folgenden dargestellt und setzen Sie das Flag --action-on-vm-failed-health-check auf do-nothing.

Mit der folgenden Anfrage können Sie beispielsweise die automatische Reparatur in einer zonalen MIG deaktivieren:

PATCH https://compute.googleapis.com/compute/v1/projects/PROJECT_ID/zones/ZONE/instanceGroupManagers/MIG_NAME

{
  "instanceLifecyclePolicy":
   {
     "onFailedHealthCheck": "DO_NOTHING"
   }
}

Ersetzen Sie Folgendes:

  • PROJECT_ID: Ihre Projekt-ID.
  • ZONE: Die Zone, in der sich die MIG befindet. Verwenden Sie bei einer regionalen MIG regions/REGION in der URL.
  • MIG_NAME: Name der Instanzgruppe.

Reparaturen oder Autohealing aktivieren

Standardmäßig repariert eine MIG ausgefallene VMs. Wenn die automatische Reparatur konfiguriert ist, repariert die MIG auch fehlerhafte VMs. Wenn Sie Reparaturen oder Autohealing oder beides deaktiviert haben, können Sie sie wieder aktivieren.

Console

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

    Zu den Instanzgruppen

  2. Klicken Sie auf den Namen der verwaltete Instanzgruppe, für die Sie die Reparatur aktivieren möchten.

  3. Klicken Sie auf Bearbeiten.

  4. Klicken Sie auf Instance-Lebenszyklus und Autohealing, um den Bereich zu maximieren.

    • Wenn Sie ausgefallene VMs reparieren möchten, legen Sie im Abschnitt Aktion bei Fehler das Feld Standardaktion bei Fehler auf Instanz reparieren fest.
    • Wenn Sie fehlerhafte VMs reparieren möchten, legen Sie im Abschnitt Automatische Reparatur das Feld Bei fehlgeschlagener Systemdiagnose auf Instanz reparieren fest. Wenn Sie diesen Wert auf Standardaktion festlegen, verwendet die automatische Reparatur dieselbe Einstellung, die Sie für das Feld Standardaktion bei Fehler konfiguriert haben.
  5. Wenn Sie fertig sind, klicken Sie auf Speichern, um die Änderungen zu übernehmen.

gcloud

Verwenden Sie den Befehl update, um Reparaturen in einer MIG zu aktivieren. Dadurch wird auch die automatische Reparatur aktiviert, wenn der Wert des Flags --action-on-vm-failed-health-check default-action ist.

gcloud compute instance-groups managed update MIG_NAME \
    --default-action-on-vm-failure=repair

Wenn Sie die automatische Reparatur separat deaktiviert haben und sie wieder aktivieren möchten, verwenden Sie den Befehl update:

gcloud compute instance-groups managed update MIG_NAME \
    --action-on-vm-failed-health-check=default-action OR repair

Ersetzen Sie Folgendes:

  • Ersetzen Sie dabei MIG_NAME durch den Namen einer MIG.
  • default-action OR repair: Wenn Sie möchten, dass die automatische Reparatur dieselbe Einstellung verwendet, die Sie für Reparaturen von fehlgeschlagenen VMs konfiguriert haben, legen Sie den Wert auf default-action fest. Wenn Sie beispielsweise die Reparatur fehlgeschlagener VMs deaktivieren, wird auch die automatische Reparatur deaktiviert. Wenn Sie die Reparaturen fehlerhafter VMs separat steuern möchten, legen Sie den Wert auf repair fest.

REST

So aktivieren Sie Reparaturen in einer MIG mit der API-Methode: Dadurch wird auch die automatische Reparatur aktiviert, wenn der Wert des Felds onFailedHealthCheck DEFAULT_ACTION ist.

Stellen Sie beispielsweise die folgende Anfrage in einer zonalen MIG:

    PATCH https://compute.googleapis.com/compute/v1/projects/PROJECT_ID/zones/ZONE/instanceGroupManagers/MIG_NAME
    {
      "instanceLifecyclePolicy": {
        "defaultActionOnFailure": "REPAIR"
      }
    }
  

Wenn Sie die automatische Reparatur separat deaktiviert haben und sie wieder aktivieren möchten, verwenden Sie die API-Methode so:

  PATCH https://compute.googleapis.com/compute/v1/projects/PROJECT_ID/zones/ZONE/instanceGroupManagers/MIG_NAME
  {
    "instanceLifecyclePolicy": {
      "onFailedHealthCheck": "DEFAULT_ACTION OR REPAIR"
    }
  }

Ersetzen Sie Folgendes:

  • PROJECT_ID: Ihre Projekt-ID.
  • ZONE: Zone, in der sich die MIG befindet Verwenden Sie bei einer regionalen MIG regions/REGION in der URL.
  • MIG_NAME: Name der MIG.
  • DEFAULT_ACTION OR REPAIR: Wenn Sie möchten, dass die automatische Reparatur dieselbe Einstellung wie für die Reparatur fehlgeschlagener VMs verwendet, legen Sie den Wert auf DEFAULT_ACTION fest. Wenn Sie beispielsweise die Reparatur fehlgeschlagener VMs deaktivieren, wird auch die automatische Reparatur deaktiviert. Wenn Sie die automatische Reparatur separat konfigurieren möchten, legen Sie den Wert auf REPAIR fest.

Nächste Schritte