Monitoring von lokalen Ressourcen mit BindPlane

Dieses Dokument ist Teil einer zweiteiligen Reihe darüber, wie Sie Cloud Logging und Cloud Monitoring in lokale Infrastrukturen und Anwendungen einbinden.

  • Cloud Logging: Hier erfahren Sie, wie Cloud Logging das Logging lokaler Ressourcen unterstützt.
  • Cloud Monitoring (dieses Dokument): Lesen Sie, wie Sie mit Cloud Monitoring lokale Ressourcen überwachen.

Aus folgenden Gründen sollten Sie Logging und Monitoring zum Protokollieren und Überwachen Ihrer lokalen Ressourcen in Betracht ziehen:

  • Sie benötigen eine temporäre Lösung, während Sie die Infrastruktur zu Google Cloud verschieben, und Sie möchten Ihre lokalen Ressourcen überwachen, bis sie außer Betrieb genommen werden.
  • Möglicherweise haben Sie eine heterogene Computerumgebung mit verschiedenen Cloud- und lokalen Ressourcen.

In beiden Fällen können Sie sowohl mit den Logging und Monitoring APIs als auch mit BindPlane Einblick in Ihre lokalen Ressourcen erhalten. Dieses Dokument richtet sich an DevOps-Entwickler, Manager und Führungskräfte, die an einer Monitoringstrategie für Ressourcen in Google Cloud und den verbleibenden lokalen Infrastrukturen und Anwendungen interessiert sind.

Messwerte mit Monitoring aufnehmen

Sie können Messwerte auf zwei Arten in Monitoring aufnehmen:

  • Verwenden Sie das BindPlane-Tool von observIQ, um Messwerte aus Ihren lokalen oder anderen Cloudquellen aufzunehmen.
  • Verwenden Sie OpenCensus, um in die Cloud Monitoring API zu schreiben.

BindPlane verwenden, um Messwerte aufzunehmen

Im folgenden Diagramm sehen Sie, wie BindPlane Messwerte sammelt und wie diese Messwerte in Monitoring aufgenommen werden.

Verwendung von Monitoring und BindPlane zum Überwachen lokaler Ressourcen

observIQ bietet mehrere Versionen von BindPlane: Open Source (selbst gehostet), SaaS und Enterprise. Weitere Informationen zu diesen Versionen finden Sie auf der Vergleichsseite für BindPlane.

Vorteile:

  • Er benötigt eine Konfiguration und keine Instrumentierung der Anwendungen, was die Implementierungszeit verkürzt.
  • Er ist in den Kosten für die Verwendung von Monitoring enthalten.
  • Er unterstützt die Konfiguration durch Monitoring-Produkt und -Support.
  • Er kann auf Messwerte erweitert werden, die nicht von der Standardkonfiguration bereitgestellt werden.

Nachteile:

  • Er benötigt das BindPlane-Tool von observIQ, um Messwerte an Monitoring weiterzuleiten, wodurch das Gesamtsystem komplexer wird.

Diese Option ist die empfohlene Methode, da sie den geringsten Aufwand erfordert. Diese Lösung erfordert eine Konfiguration statt einer Programmentwicklung.

OpenCensus verwenden, um in die Monitoring API zu schreiben

Im folgenden Diagramm sehen Sie, wie OpenCensus Messwerte sammelt und wie diese Messwerte in Monitoring aufgenommen werden.

Verwendung der Monitoring API zum direkten Überwachen lokaler Ressourcen

Wenn Sie die Monitoring API direkt verwenden, müssen Sie Ihren Anwendungen Instrumentierungscode hinzufügen, um Messwerte direkt an die API zu senden. Sie können dies direkt tun, indem Sie die Monitoring API zum Schreiben von Messwerten verwenden oder Ihre Anwendung mit dem Monitoring-Exporter für OpenCensus instrumentieren. OpenCensus ist ein Open-Source-Projekt, das eine Standarddatenstruktur für Traces und Messwerte definiert. OpenCensus bietet den Vorteil, dass mehrere Back-Ends unterstützt werden, einschließlich Monitoring. OpenCensus implementiert auch alle grundlegenden technischen Details für die Verwendung der Monitoring API.

Vorteile:

  • Es bietet Flexibilität, da die erforderliche Instrumentierung mit dem OpenCensus Exporter einfach implementiert werden kann.

Nachteile:

  • Es erfordert eine separate Lösung für Infrastrukturmesswerte. Dazu muss ein benutzerdefinierter Agent geschrieben werden.
  • Es benötigt eine Instrumentierung der Anwendung, was höhere Implementierungskosten bedeuten kann.
  • Es erfordert Open-Source-Bibliotheken.

Diese Option ist nicht die empfohlene Methode, da sie den höchsten Aufwand erfordert und Infrastrukturmesswerte nicht berücksichtigt.

BindPlane verwenden

Dieses Dokument umfasst die Verwendung des Tools BindPlane von observIQ zur Aufnahme von Messwerten in Monitoring. Der BindPlane-Dienst definiert eine Reihe von Quellen, nimmt diese Messwerte auf und sendet sie dann an Monitoring als Ziel. BindPlane unterstützt Quellen von Compute Engine, Amazon Elastic Compute Cloud (Amazon EC2), Linux, Windows und Kubernetes.

Quellen, Collectors und Ziele

BindPlane bietet die folgenden Funktionen:

  • Quellen: Elemente, die Messwerte generieren, z. B. Google Kubernetes Engine (GKE), Amazon Elastic Container Service für Kubernetes (Amazon EKS) oder Microsoft Azure Container Service.
  • Collectors: Schlanke Prozesse, die Ihre Umgebung aus der Ferne überwachen und Messwertdaten an BindPlane weiterleiten.
  • Ziele: Dienste, an die BindPlane die Messwerte weiterleitet. In diesem Fall ist das Ziel der Prozess auf BindPlane, der die Monitoring API verwendet, um Messwerte in Monitoring zu schreiben.

Ausführlichere Informationen zu Quellen, Collectors und Zielen finden Sie in der Einführung in BindPlane.

Anwendungsbeispiel

ExampleOrganization verfügt beispielsweise über Ressourcen, die in Google Cloud, Microsoft Azure und mithilfe von vSphere in lokalen Ressourcen bereitgestellt werden. In Google Cloud werden ein GKE-Cluster und eine einfache Demoanwendung bereitgestellt, mit der die Website des Unternehmens ausgeführt wird. In der Microsoft Azure-Umgebung führt Azure Kubernetes Service (AKS) eine Reihe von Mikrodiensten aus, die externen Entwicklern einen REST API-Endpunkt bieten. In der vSphere-Umgebung unterstützen MySQL, Oracle und Microsoft SQL Server mehrere Unternehmensanwendungen.

Mit Ressourcen in jeder Umgebung möchte ExampleOrganization jede Komponente beobachten, ganz gleich, wo die Komponente bereitgestellt wird. Da Messwerte aus jeder Umgebung mithilfe von BindPlane an Logging und Monitoring gesendet werden, sind alle Messwerte zu Monitoring- und Benachrichtigungszwecken an einem einzigen Ort gespeichert.

Messwerte von BindPlane an Monitoring senden

Nachdem BindPlane eingerichtet wurde und Messwerte sendet, erreichen diese Ihren Monitoringarbeitsbereich. Anschließend können Sie mit Monitoring Dashboards aus den Zeitachsen anzeigen, konfigurieren, erstellen und dort Benachrichtigungen empfangen, wie auch für beliebige andere Messwerte oder Zeitachsen in Monitoring. Weitere Informationen finden Sie unter Messwerte, Zeitachsen und Ressourcen.

Messwerte in Monitoring verwenden

Im vorherigen Beispiel wurde BindPlane so konfiguriert, dass Messwerte aus Google Cloud, Microsoft Azure und lokalen Quellen gesendet werden. Die folgenden drei Messwerte werden in Monitoring angezeigt:

  • GKE-Clustermesswerte
  • AKS-Clustermesswerte
  • Lokale vSphere-Datenbankmesswerte

GKE-Clustermesswerte

Für die GKE-Clustermesswerte in Monitoring auf der Seite "Google Kubernetes Engine" werden drei Ansichten der Kubernetes-Komponenten angezeigt, die im Monitoring Arbeitsbereich ausgeführt werden. Dazu gehören die Ansichten "Infrastructure" (Infrastruktur), "Workloads" (Arbeitslasten) und "Services" (Dienste). Es sind vier Dienste für den Cluster implementiert, die Messwerte melden.

Ansicht von vier Diensten, die von Monitoring überwacht werden

Die Messwerte, Logs und Konfigurationen sind für jeden Pod verfügbar.

Pod-Detailansicht eines bestimmten Dienstes

AKS-Clustermesswerte

In derselben Monitoringumgebung werden Messwerte für AKS gesammelt. Die Messwerte werden in Monitoring angezeigt und können für alle Zwecke in Monitoring verwendet werden, einschließlich Dashboards, Benachrichtigungen und des Metrics Explorer.

Der Metrics Explorer von Monitoring bietet eine Möglichkeit, Messwerte zu suchen, zu filtern und auf ihnen basierende Diagramme zu erstellen. Beachten Sie, dass die von BlindPlane gesendeten Messwerte das Präfix workload.googleapis.com/THIRD_PARTY_APP_NAME im Messwertnamen haben.

Metrics Explorer mit angezeigtem Ressourcentyp "Generic Node"

Mit dem Metrics Explorer kann ein Diagramm für den Messwert erstellt werden.

Diagramm für den Messwert "CPU Used"

Wie bei allen Messwerten in Monitoring können Sie aus diesen Messwerten Dashboards wie im folgenden Screenshot erstellen. Das Dashboard stellt von AKS erstellte Messwerte dar, die von BindPlane gesammelt, in Monitoring gespeichert und in einem Dashboard angezeigt werden.

AKS-Dashboard mit vier Diagrammen

Lokale vSphere-Clustermesswerte

Der letzte Teil dieses Beispiels enthält Datenbankmesswerte von vSphere. Die Messwerte aus vSphere werden in Monitoring angezeigt und können wie alle anderen Messwerte in Monitoring verwendet werden. Die Oracle-Messwerte von vSphere werden im Metrics Explorer angezeigt.

vSphere-Messwerte in Monitoring

Wie bei allen Messwerten in Monitoring können die Messwerte verwendet werden, um Benachrichtigungen wie die im folgenden Screenshot zu erstellen.

Konfigurationsbildschirm zum Erstellen einer Benachrichtigung basierend auf Triggern

Die Benachrichtigung stellt Messwerte dar, die von Oracle in vSphere erstellt, von BindPlane gesammelt, in Monitoring gespeichert und zum Konfigurieren einer Benachrichtigung verwendet werden.

Fenster zur Benachrichtigungsrichtlinie

Fazit

Monitoring bietet Dashboards, Benachrichtigungen und Reaktionen auf Vorfälle, damit Sie Informationen zu Ihren Plattformen erhalten. Mit Monitoring und BindPlane erhalten Sie Statistiken zu Ihren lokalen Ressourcen.

Nächste Schritte