Benachrichtigungsrichtlinien erstellen

Auf dieser Seite wird gezeigt, wie Sie Benachrichtigungsrichtlinien für Anthos-Cluster auf VMware-Clustern (GKE On-Prem) erstellen.

Hinweis

Sie benötigen die folgenden Berechtigungen, um Benachrichtigungsrichtlinien zu erstellen:

  • monitoring.alertPolicies.create
  • monitoring.alertPolicies.delete
  • monitoring.alertPolicies.update

Sie haben diese Berechtigungen, wenn Sie eine der folgenden Rollen haben:

  • monitoring.alertPolicyEditor
  • monitoring.editor
  • Projektbearbeiter
  • Projektinhaber

Rufen Sie die IAM-Seite in der Google Cloud Console auf, um Ihre Rollen zu prüfen.

Richtlinie erstellen: API-Server für Administratorcluster nicht verfügbar

In dieser Übung erstellen Sie eine Benachrichtigungsrichtlinie für Kubernetes API-Server von Administratorclustern. Mit dieser Richtlinie können Sie festlegen, dass Sie benachrichtigt werden, wenn der API-Server eines Administratorclusters nicht verfügbar ist.

  1. Laden Sie die Richtlinienkonfigurationsdatei herunter: admin-cluster-apiserver-unavailable.json.

  2. Erstellen Sie die Richtlinie:

    gcloud alpha monitoring policies create --policy-from-file=POLICY_CONFIG
    

    Ersetzen Sie POLICY_CONFIG durch den Pfad der soeben heruntergeladenen Konfigurationsdatei.

  3. Rufen Sie die Benachrichtigungsrichtlinien auf:

    Console

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

      Zu Monitoring

    2. Wählen Sie links Benachrichtigungen aus.

    3. Unter Richtlinien finden Sie eine Liste Ihrer Benachrichtigungsrichtlinien.

      Wählen Sie aus der Liste API-Server für GKE On-Prem-Administratorcluster nicht verfügbar (kritisch) aus, um Details zu Ihrer neuen Richtlinie aufzurufen. Unter Bedingungen finden Sie eine Beschreibung der Richtlinie. Beispiel:

      Policy violates when ANY condition is met
      
      GKE on-prem admin cluster API server uptime is absent
      
      GKE on-prem admin cluster API server uptime is less than 99.99% per minute
      

    gcloud

    gcloud alpha monitoring policies list

    Die Ausgabe enthält detaillierte Informationen zur Richtlinie. Beispiel:

    combiner: OR
    conditions:
    - conditionAbsent:
        aggregations:
        - alignmentPeriod: 60s
          crossSeriesReducer: REDUCE_MEAN
          groupByFields:
          - resource.label.project_id
          - resource.label.location
          - resource.label.cluster_name
          - resource.label.namespace_name
          - resource.label.container_name
          perSeriesAligner: ALIGN_MAX
        duration: 300s
        filter: resource.type = "k8s_container" AND resource.labels.namespace_name = "kube-system"
          AND metric.type = "kubernetes.io/anthos/container/uptime" AND resource.label."container_name"=monitoring.regex.full_match("kube-apiserver")
        trigger:
          count: 1
      displayName: GKE on-prem admin cluster API server uptime is absent
      name: projects/…/alertPolicies/17065318077071152828/conditions/17065318077071154437
    - conditionThreshold:
        aggregations:
        - alignmentPeriod: 120s
          crossSeriesReducer: REDUCE_MEAN
          groupByFields:
          - resource.label.project_id
          - resource.label.location
          - resource.label.cluster_name
          - resource.label.namespace_name
          - resource.label.container_name
          perSeriesAligner: ALIGN_MAX
        comparison: COMPARISON_LT
        duration: 300s
        filter: resource.type = "k8s_container" AND resource.labels.namespace_name = "kube-system"
          AND metric.type = "kubernetes.io/anthos/container/uptime" AND resource.label."container_name"=monitoring.regex.full_match("kube-apiserver")
        thresholdValue: 119.0
        trigger:
          count: 1
      displayName: GKE on-prem admin cluster API server uptime is less than 99.99% per
        minute
      name: projects/…/alertPolicies/17065318077071152828/conditions/17065318077071151950
    creationRecord:
      mutateTime: …
      mutatedBy: …
    displayName: GKE on-prem admin cluster API server unavailable (critical)
    enabled: true
    mutationRecord:
      mutateTime: …
      mutatedBy: …
    name: projects/xxxxxx/alertPolicies/17065318077071152828
    

Zusätzliche Benachrichtigungsrichtlinien erstellen

Dieser Abschnitt enthält Beschreibungen und Konfigurationsdateien für eine Reihe empfohlener Benachrichtigungsrichtlinien.

Führen Sie die gleichen Schritte aus, die Sie in der vorherigen Anleitung verwendet haben, um eine Richtlinie zu erstellen:

  1. Klicken Sie auf den Link in der rechten Spalte, um die Konfigurationsdatei herunterzuladen.

  2. Führen Sie gcloud alpha monitoring policies create aus, um die Richtlinie zu erstellen.

Verfügbarkeit der Komponenten der Steuerungsebene für Administratorcluster

Name der Benachrichtigung Beschreibung Benachrichtigungsrichtlinie in Cloud Monitoring definieren
API-Server für GKE On-Prem-Administratorcluster nicht verfügbar (kritisch) API-Server des Administratorclusters ist nicht aktiv oder Betriebszeit liegt unter 99,99 % pro Minute admin-cluster-apiserver-unavailable.json
Planer für GKE On-Prem-Administratorcluster nicht verfügbar (kritisch) Der Planer für den Administratorcluster ist nicht aktiv oder Betriebszeit liegt unter 99,99 % pro Minute admin-cluster-scheduler-unavailable.json
Controller-Manager für GKE On-Prem-Administratorcluster nicht verfügbar (kritisch) Controller-Manager für Administratorcluster ist nicht aktiv oder Betriebszeit liegt unter 99,99 % pro Minute admin-cluster-controller-manager-unavailable.json
GKE On-Prem-Administratorcluster-etcd nicht verfügbar (kritisch) Administratorcluster-etcd ist nicht aktiv oder Betriebszeit liegt unter 99,99 % pro Minute admin-cluster-etcd-unavailable.json

Verfügbarkeit der Komponenten der Steuerungsebene für Nutzercluster

Die Warnungen auf der Steuerungsebene des Nutzerclusters basieren auf Messwerten. Bei den meisten Clustermesswerten ist das Feld cluster_name der Name des Clusters selbst. Bei Messwerten der Nutzercluster-Steuerungsebene ist jedoch das Feld cluster_name der Name des Administratorclusters und das Feld namespace_name der Name des Nutzerclusters.

Dies finden Sie in einem Screenshot unter Dashboard für die Betriebszeit der Steuerungsebene erstellen.

Name der Benachrichtigung Beschreibung Benachrichtigungsrichtlinie in Cloud Monitoring definieren
API-Server für GKE On-Prem-Nutzercluster nicht verfügbar (kritisch) API-Server des Nutzerclusters ist nicht aktiv oder Betriebszeit liegt unter 99,99 % pro Minute user-cluster-apiserver-unavailable.json
Planer für GKE On-Prem-Nutzercluster nicht verfügbar (kritisch) Der Nutzercluster-Planer ist nicht aktiv oder Betriebszeit liegt unter 99,99 % pro Minute user-cluster-scheduler-unavailable.json
Controller-Manager für GKE On-Prem-Nutzercluster nicht verfügbar (kritisch) Controller-Manager für Nutzercluster ist nicht aktiv oder Betriebszeit liegt unter 99,99 % pro Minute user-cluster-controller-manager-unavailable.json
GKE On-Prem-Nutzercluster-etcd nicht verfügbar (kritisch) Nutzercluster-etcd ist nicht aktiv oder Betriebszeit liegt unter 99,99 % pro Minute user-cluster-etcd-unavailable.json

Kubernetes-System

Name der Benachrichtigung Beschreibung Benachrichtigungsrichtlinie in Cloud Monitoring definieren
GKE On-Prem-Pod-Absturzschleife (kritisch) Pod befindet sich in einer Absturzschleife pod-crash-looping.json
GKE On-Prem-Pod seit mehr als einer Stunde nicht bereit (kritisch) Pod ist seit mehr als einer Stunde nicht einsatzbereit pod-not-ready-1h.json
Hohe Auslastung von GKE On-Prem nichtflüchtigen Volumes (kritisch) Es wird erwartet, dass das nichtflüchtige Volume voll sein wird persistent-volume-usage-high.json
GKE On-Prem-Knoten seit mehr als einer Stunde nicht bereit (kritisch) Knoten ist seit mehr als einer Stunde nicht einsatzbereit node-not-ready-1h.json

Kubernetes-Leistung

Name der Benachrichtigung Beschreibung Benachrichtigungsrichtlinie in Cloud Monitoring definieren
Fehlerrate der GKE On-Prem-Administratorcluster-API überschreitet 10 % (kritisch) API-Server des Administratorclusters gibt bei mehr als 10 % der Anfragen Fehler zurück admin-cluster-apiserver-error-ratio-10-percent.json
Fehlerrate der GKE On-Prem-Administratorcluster-API überschreitet 5 % (Warnung) API-Server des Administratorclusters gibt bei mehr als 5 % der Anfragen Fehler zurück admin-cluster-apiserver-error-ratio-5-percent.json
Fehlerrate der GKE On-Prem-Nutzercluster-API überschreitet 10 % (kritisch) API-Server des Nutzerclusters gibt bei mehr als 10 % der Anfragen Fehler zurück user-cluster-apiserver-error-ratio-10-percent.json
Fehlerrate der GKE On-Prem-Nutzercluster-API überschreitet 5 % (Warnung) API-Server des Nutzerclusters gibt bei mehr als 5 % der Anfragen Fehler zurück user-cluster-apiserver-error-ratio-5-percent.json

Benachrichtigungen erhalten

Nachdem Sie eine Benachrichtigungsrichtlinie erstellt haben, können Sie einen oder mehrere Benachrichtigungskanäle für die Richtlinie definieren. Es gibt verschiedene Arten von Benachrichtigungskanälen. Beispielsweise können Sie sich per E-Mail, mit einem Slack-Kanal oder mit einer mobilen App benachrichtigen lassen. Sie können die Kanäle auswählen, die Ihren Anforderungen entsprechen.

Eine Anleitung zum Konfigurieren von Benachrichtigungskanälen finden Sie unter Benachrichtigungskanäle verwalten.