Benachrichtigungen zu Cluster-Upgrades erhalten

Google Kubernetes Engine (GKE) veröffentlicht Upgrade-Benachrichtigungen in Pub/Sub, damit Sie einen Kanal für den Empfang von GKE-Informationen zu Ihren Clustern haben und somit wichtige Vorhersagen für Ihren Cluster erhalten.

Benachrichtigungen zu GKE-Upgrades bieten folgende Vorteile:

  • Sie werden benachrichtigt, wenn Ihre Clusterupgrades sowohl von Nutzern als auch durch GKE initiiert wurden. Damit erhalten Sie einen besseren Einblick in die Hintergrundvorgänge Ihres Clusters.
  • Pub/Sub ist sehr erweiterbar, sodass Sie die Verarbeitung eingehender Benachrichtigungen flexibel gestalten können. Sie können beispielsweise Slack integrieren, um Benachrichtigungen an einen Slack-Kanal weiterzuleiten, oder Cloud Functions initialisieren, um benutzerdefinierte Prozesse auszuführen.

Arten von Upgradebenachrichtigungen

GKE sendet die folgende Benachrichtigung für Clusterupgrades: UpgradeEvent.

UpgradeEvent

Wenn Sie oder GKE ein Upgrade initiieren, sendet GKE eine UpgradeEvent-Benachrichtigung, damit Sie wissen, dass ein Upgrade erfolgt.

Die Benachrichtigung wird zu Beginn des Upgradevorgangs gesendet. Die Vorgangs-ID wird im UpgradeEvent übergeben.

Upgrade-Benachrichtigungen aktivieren

Mit den folgenden Aufgaben können Sie GKE-Upgrade-Benachrichtigungen auf einem neuen oder vorhandenen Cluster aktivieren:

  1. Erstellen Sie in Ihrem Projekt ein Pub/Sub-Thema und geben Sie einen Themennamen an.

  2. Verwenden Sie einen der folgenden Befehle, um GKE-Upgrade-Benachrichtigungen auf einem Cluster zu aktivieren:

    Für neue Cluster:

    gcloud beta container clusters create cluster-name \
        --notification-config=pubsub=ENABLED,pubsub-topic=projects/project/topics/topic-name
    

    Für bestehende Cluster:

    gcloud beta container clusters update cluster-name \
        --notification-config=pubsub=ENABLED,pubsub-topic=projects/project/topics/topic-name
    

    Dabei gilt:

    • cluster-name: Der Name Ihres Clusters.
    • project ist die Projekt-ID oder Nummer Ihres Clusters und Themas. Das Thema muss sich im selben Projekt wie der Cluster befinden.
    • topic-name ist der Name Ihres Pub/Sub-Themas.
  3. Erstellen Sie ein Pub/Sub-Abo für Ihr Thema.

GKE hat keine Einschränkungen, wie Sie Themen mit Clustern in Beziehung setzen, solange sich die Themen im selben Projekt wie die Cluster befinden. Sie können ein Thema für alle Cluster erstellen oder mehrere Themen für Gruppen von Clustern erstellen.

Einrichtung der Benachrichtigungen prüfen

Gehen Sie folgendermaßen vor, um zu prüfen, ob Upgradebenachrichtigungen korrekt für Ihren Cluster eingerichtet sind:

  1. Aktualisieren Sie einen Knotenpool in Ihrem Cluster:

    gcloud container clusters upgrade cluster-name \
        --cluster-version version \
        --node-pool node-pool-name
    

    Dabei gilt:

    • cluster-name ist der Name des Clusters, der den Knotenpool enthält.
    • version ist die Version, auf die der Knotenpool aktualisiert werden soll.
    • node-pool-name ist der Name des Knotenpools.
  2. Suchen Sie in Ihrem Pub/Sub-Abo eine Benachrichtigung.

Upgrade-Benachrichtigungen deaktivieren

Gehen Sie folgendermaßen vor, um Benachrichtigungen für GKE-Upgrades zu deaktivieren:

  1. Aktualisieren Sie den Cluster, um Benachrichtigungen zu deaktivieren:

    gcloud beta container clusters update cluster-name \
        --notification-config=pubsub=DISABLED
    

    Dabei gilt:

    • cluster-name ist der Name Ihres vorhandenen Clusters.
  2. Optional können Sie das Pub/Sub-Thema löschen, das Sie für Benachrichtigungen erstellt haben.

Benachrichtigungskonfiguration lesen

Verwenden Sie den folgenden Befehl, um die Benachrichtigungskonfiguration zu lesen:

gcloud beta container clusters describe cluster-name

Die Ausgabe sieht etwa so aus:

name: c1
location: us-central1-c
notificationConfig:
  enabled: True
  topic: AnotherTopic

Benachrichtigungen verarbeiten

Pub/Sub-Nachrichten enthalten zwei Felder: Daten (String) und Attribute (String-zu-String-Zuordnung).

Bei GKE-Benachrichtigungen sendet GKE eine für Menschen lesbare Nachricht im Datenfeld. Die Attribute enthalten generische Benachrichtigungsinformationen wie die Projektnummer, den Clusternamen und den Clusterstandort sowie den spezifischen Benachrichtigungstyp, z. B. UpgradeEvent.

Benachrichtigungen enthalten unabhängig von der Nutzlast immer die folgenden Attribute:

Attributname Beispiel Beschreibung
Projektnummer 123456789 Die Projektnummer des Clusters.
ClusterLocation us-central1-c Der Standort des Clusters.
ClusterName my-cluster Der Name des Clusters.
TypeURL type.googleapis.com/google.container.v1beta1.UpgradeEvent Die Art der Benachrichtigung.
Nutzlast {"resourceType":"MASTER", "operation":"operation-1595889094437-87b7254a", "operationStartTime":"2020-07-27T22:31:34.437652293Z", "currentVersion":"1.15.12-gke.2", "targetVersion":"1.15.12-gke.9"} Ein JSON-parsbarer String mit benachrichtigungsspezifischen Informationen.

Nächste Schritte