Logging und Monitoring konfigurieren

Anthos-Cluster on Bare Metal bietet mehrere Optionen für das Logging und Monitoring von Clustern, darunter cloudbasierte verwaltete Dienste, Open-Source-Tools und validierte Kompatibilität mit kommerziellen Lösungen von Drittanbietern. Auf dieser Seite werden diese Optionen beschrieben. Außerdem erhalten Sie grundlegende Informationen zur Auswahl der richtigen Lösung für Ihre Umgebung.

Optionen für Anthos-Cluster on Bare Metal

Sie haben mehrere Logging- und Monitoring-Optionen für "Anthos-Cluster on Bare Metal"-Cluster:

  • Cloud Logging und Cloud Monitoring sind standardmäßig für Bare-Metal-Systemkomponenten aktiviert.
  • Prometheus und Grafana sind im Cloud Marketplace verfügbar.
  • Validierte Konfigurationen mit Lösungen von Drittanbietern

Cloud Logging und Cloud Monitoring

Die Operations-Suite von Google Cloud ist die integrierte Beobachtbarkeitslösung für Google Cloud. Sie bietet eine vollständig verwaltete Logging-Lösung, Messwerterfassung, Monitoring, Dashboards und Benachrichtigungen. Cloud Monitoring überwacht "Anthos-Cluster on Bare Metal"-Cluster ähnlich wie cloudbasierte GKE-Cluster.

Die Agents können auf zwei verschiedenen Logging- und Monitoring-Ebenen konfiguriert werden:

  • Nur Systemkomponenten (Standard).
  • Systemkomponenten und Anwendungen.

Logging und Monitoring sind die ideale Lösung, wenn Sie eine einzelne, einfach zu konfigurierende und leistungsstarke cloudbasierte Beobachtbarkeitslösung wünschen. Wir empfehlen Logging und Monitoring, wenn Sie Arbeitslasten nur in Anthos-Cluster on Bare Metal oder in GKE und Anthos-Cluster on Bare Metal ausführen. Für Anwendungen mit Komponenten, die in Anthos-Cluster on Bare Metal und einer herkömmlichen lokalen Infrastruktur ausgeführt werden, können Sie andere Lösungen für eine End-to-End-Ansicht dieser Anwendungen in Betracht ziehen.

Prometheus und Grafana

Prometheus und Grafana sind zwei beliebte Open-Source-Monitoring-Produkte im Cloud Marketplace:

  • Prometheus erfasst Anwendungs- und Systemmesswerte.

  • Alertmanager kümmert sich um das Senden von Benachrichtigungen über verschiedene Mechanismen.

  • Grafana ist ein Dashboard-Tool.

Prometheus und Grafana können in jedem Administrator- und Nutzercluster aktiviert werden. Prometheus und Grafana werden für Anwendungsteams empfohlen, die bereits Erfahrung mit diesen Produkten haben, oder für operative Teams, die Anwendungsmesswerte im Cluster behalten möchten, sowie zur Behebung von Problemen, wenn die Netzwerkverbindung unterbrochen wird.

Drittanbieterlösungen

Google hat mit mehreren Drittanbietern für Logging- und Monitoring-Lösungen zusammengearbeitet, damit deren Produkte mit Anthos-Cluster on Bare Metal kompatibel sind. Dazu gehören Datadog, Elastic und Splunk. Weitere validierte Drittanbieter werden in Zukunft hinzugefügt.

Die folgenden Lösungsleitfäden stehen für die Verwendung von Drittanbieterlösungen mit Anthos-Cluster on Bare Metal zur Verfügung:

So funktionieren Logging und Monitoring für Anthos-Cluster on Bare Metal

Cloud Logging und Cloud Monitoring werden in jedem Cluster installiert und aktiviert, wenn Sie einen neuen Administrator- oder Nutzercluster erstellen.

Die Stackdriver-Agents enthalten mehrere Komponenten für jeden Cluster:

  • Stackdriver-Operator (stackdriver-operator-*). Verwaltet den Lebenszyklus aller anderen auf dem Cluster bereitgestellten Stackdriver-Agents.

  • Benutzerdefinierte Stackdriver-Ressource. Eine Ressource, die im Rahmen des Installationsprozesses für Anthos-Cluster on Bare Metal automatisch erstellt wird.

  • Stackdriver Log Forwarder (stackdriver-log-forwarder-*). Ein Fluent Bit-DaemonSet, das Logs von jeder Maschine an Cloud Logging weiterleitet. Der Log-Forwarder puffert die Logeinträge auf dem Knoten lokal und sendet sie bis zu 4 Stunden noch einmal. Wenn der Zwischenspeicher voll ist oder der Log-Forwarder die Cloud Logging API länger als vier Stunden nicht erreichen kann, werden Logs gelöscht.

  • Anthos Metadata Agent (stackdriver-metadata-agent-). Ein Modul, das Metadaten für Kubernetes-Ressourcen wie Pods, Deployments, Knoten usw. an die Config Monitoring for Ops API sendet. Anhand dieser Daten können Sie Messwertabfragen anreichern und Abfragen nach Deployment-Name, Knotenname oder auch Kubernetes-Dienstname ausführen.

Mit dem folgenden Befehl rufen Sie alle von Stackdriver installierten Agents auf:

  kubectl -n kube-system get pods | grep stackdriver

Die Ausgabe dieses Befehls sieht wie folgt aus:

stackdriver-log-forwarder-bpf8g               1/1     Running   0   4h31m
stackdriver-log-forwarder-cht4m               1/1     Running   0   4h31m
stackdriver-log-forwarder-fth5s               1/1     Running   0   4h31m
stackdriver-log-forwarder-kw4j2               1/1     Running   0   4h29m
stackdriver-metadata-agent-cluster-level...   1/1     Running   0   4h31m
stackdriver-operator-76ddb64d57-4tcj9         1/1     Running   0   4h37m

Cloud Monitoring-Messwerte

Eine Liste der von Cloud Monitoring erfassten Messwerte finden Sie unter Anthos On-Prem- und Anthos on Bare Metal-Messwerte.

Stackdriver-Agents für Anthos-Cluster on Bare Metal konfigurieren

Die mit Anthos-Cluster on Bare Metal installierten Stackdriver-Agents erfassen Daten zu Systemkomponenten gemäß Ihren Einstellungen und Ihrer Konfiguration in einem der unten aufgeführten Modi. Damit können Sie Probleme in Ihren Anthos-Cluster on Bare Metal-Clustern erfassen und beheben.

Nur Systemkomponenten (Standardmodus)

Bei der Installation werden Stackdriver-Agents standardmäßig so konfiguriert, dass sie Logs und Messwerte erfassen, einschließlich Leistungsdetails (z. B. CPU- und Arbeitsspeicherauslastung) und vergleichbarer Metadaten für von Google bereitgestellte Systemkomponenten. Dazu gehören alle Arbeitslasten im Administratorcluster und in Nutzerclustern Arbeitslasten in den Namespaces kube-system, gke-system, gke-connect, istio-system und config-management-system.

Stackdriver deaktiviert

Stackdriver-Agents können vollständig deaktiviert werden. Dazu löschen Sie die benutzerdefinierte Stackdriver-Ressource.

Bevor Sie Stackdriver deaktivieren, sollten Sie sich auf der Supportseite informieren, wie sich dies auf die SLAs des Google Cloud-Supports auswirkt.

So deaktivieren Sie Stackdriver für Anthos-Cluster on Bare Metal:

kubectl -n kube-system delete stackdrivers stackdriver

Stackdriver-Agents erfassen lokal gespeicherte Daten entsprechend Ihrer Speicher- und Aufbewahrungskonfiguration. Die Daten werden in das bei der Installation angegebene Google Cloud-Projekt repliziert. Dazu wird ein Dienstkonto verwendet, das berechtigt ist, Daten in das Projekt zu schreiben. Stackdriver-Agents können jederzeit wie oben beschrieben deaktiviert werden. Von Stackdriver-Agents erfasste Daten lassen sich wie alle anderen Messwert- und Logdaten verwalten und löschen, wie in der Cloud Monitoring-Dokumentation erläutert.

Standardmäßige CPU- und Speicheranforderungen und Limits für eine Stackdriver-Komponente überschreiben

Cluster mit einer hohen Pod-Dichte führen zu einem höheren Logging und Monitoring. In extremen Fällen melden Stackdriver-Komponenten möglicherweise das Limit für die CPU- und Speicherauslastung oder wegen kontinuierlicher Neustarts aufgrund von Ressourcenlimits. In diesem Fall können Sie eine Überschreibung für Anfragen und Limits festlegen.

Metrics Server

Der Metrics Server ist die Quelle der Containerressourcenmesswerte für verschiedene Autoscaling-Pipelines. Metrics Server ruft Messwerte aus kubelets ab und stellt sie über die Metrics API von Kubernetes bereit. HPA und VPA bestimmen dann anhand dieser Messwerte, wann das Autoscaling ausgelöst werden soll. Der Messwertserver wird mit Add-on-Resizer skaliert.

In extremen Fällen, in denen eine hohe Pod-Dichte zu viel Logging und Monitoring verursacht, wird Metrics Server unter Umständen aufgrund von Ressourcenbeschränkungen gestoppt und neu gestartet. In diesem Fall können Sie die Anfrage überschreiben.

Konfigurationsanforderungen für Logging und Monitoring

Es gibt mehrere Konfigurationsanforderungen, um Cloud Logging und Cloud Monitoring mit Anthos-Cluster on Bare Metal zu aktivieren. Diese Schritte sind auf der Seite "Google-Dienste aktivieren" unter Dienstkonto für die Verwendung mit Logging und Monitoring konfigurieren und in der folgenden Liste aufgeführt:

  1. Im Google Cloud-Projekt muss ein Cloud Monitoring-Arbeitsbereich erstellt werden. Klicken Sie dazu auf Monitoring in der Google Cloud Console und folgen Sie dem Workflow.
  2. Sie müssen die folgenden Stackdriver APIs aktivieren:

  3. Sie müssen dem Dienstkonto, das von den Stackdriver-Agents verwendet wird, die folgenden IAM-Rollen zuweisen:

    • logging.logWriter
    • monitoring.metricWriter
    • stackdriver.resourceMetadata.writer
    • monitoring.dashboardEditor
    • opsconfigmonitoring.resourceMetadata.writer

Preise

Für die Systemlogs und -messwerte von Anthos fallen keine Gebühren an.

In einem "Anthos-Cluster on Bare Metal"-Cluster enthalten die Anthos-Systemlogs und -Messwerte Folgendes:

  • Logs und Messwerte aus allen Komponenten in einem Administratorcluster
  • Logs und Messwerte aus Komponenten in diesen Namespaces in einem Nutzercluster:kube-system .gke-system .gke-connect ,knative-serving .istio-system ,monitoring-system .config-management-system ,gatekeeper-system .cnrm-system

Weitere Informationen finden Sie unter Preise für die Operations-Suite von Google Cloud.

Wenn Sie weitere Informationen wünschen und mehr über Guthaben für Cloud Logging-Messwerte wissen möchten, wenden Sie sich an den Vertrieb.