Effektives GCP-Monitoring für Performance- und Kostenoptimierung
Nutzen Sie GCP-Monitoring, um ein optimales Performance- und Kostenmanagement für Ihre Google-Cloud-Umgebung zu erhalten. Erfahren Sie mehr über die Google-Monitoring-Services und die GCP-Monitoring-API.
Was ist GCP-Monitoring?
GCP-Monitoring (Google Cloud Platform) ist der Teilbereich des Cloud-Monitorings, der sich mit der Überwachung von Google-Cloud-Services und -Ressourcen befasst. Mit GCP-Monitoring sammeln, analysieren und visualisieren Sie verschiedene Metriken und Protokolle von GCP-Ressourcen. Dazu gehören virtuelle Maschinen, Container, Datenbanken, Load Balancer, Anwendungen und andere Services. Wie in jedem Monitoring-Bereich auch helfen Ihnen diese Metriken dabei, Probleme zu identifizieren und zu beheben, die Performance zu optimieren und die allgemeine Zuverlässigkeit Ihrer Anwendungen sicherzustellen.
In der Regel erfolgt GCP-Monitoring durch die Visualisierung aller gesammelten Metriken in verschiedenen Dashboards. Die meisten der auf dem Markt befindlichen GCP-Monitoring-Lösungen bieten zahlreiche Dashboards, die die Daten in leicht lesbare Grafiken und Tabellen organisieren. Mit Google Cloud Monitoring bietet Google eine eigene Software, die zahlreiche Metriken und Logs abruft und diese in Dashboards zusammenfasst.
Im Laufe des Artikels befassen wir uns mit den verschiedenen Cloud-Services die das GCP-Monitoring umfasst. Die GCP-Überwachung geht jedoch über die reine Datenerfassung hinaus und umfasst ebenfalls Alerts, Berichte, die Überwachung von Cloud-Kosten und vieles mehr. Einfachheitshalber konzentrieren wir uns daher zunächst auf die verschiedenen Kernbereiche.
Kernbereiche des GCP-Monitorings
Mit der Überwachung Ihrer Google-Cloud gewährleisten Sie eine optimale Performance, die Sicherheit Ihrer Daten und Anwendungen und lokalisieren verbesserungswürdige Bereiche.
GCP-Performance-Monitoring
Performance ist ein Schlüsselfaktor in jeder Infrastruktur und einer der Hauptgründe für die Nutzung eines Cloud-Anbieters wie GCP. Mit seinen verteilten Netzwerken und Rechenkapazitäten bietet GCP neben allen anderen Cloud-Anbietern wichtige Voraussetzungen für eine bestmögliche Performance. Dennoch können Sie nur mit einem Monitoring der Performance sicherstellen, dass es keine Flaschenhälse an einer Stelle gibt.
Die Standard-Software von Google, Cloud Monitoring, aggregiert Metriken, Protokolle und Trace-Daten, stellt sie in verschiedenen Dashboards dar und überwacht somit die GCP-Ressourcen und -Services. Dabei konzentriert sich das GCP-Performance-Monitoring auf die grundlegenden Metriken wie etwa CPU-Nutzung der VM, Netzwerknutzung und -bandbreite, Verhältnis der Anzahl der aktiven Verbindungen zu verwalteten Datenbanken, Fehlerraten in einem virtuellen Netzwerk und Speichernutzung der verschiedenen Cloud-Anwendungen. Je nachdem, wie Sie Ihre Google-Cloud nutzen, umfasst Ihr Monitoring möglicherweise noch viele weitere Metriken.
Google stellt für das GCP-Performance-Monitoring den Cloud Profiler zur Verfügung. Dieser konzentriert sich auf die Erfassung der CPU- und Speichernutzung Ihrer Cloud-Anwendungen und erstellt ein statistisches Profil für jede dieser Anwendungen. Ein solches Profil hilft Ihnen, Änderungen vorzunehmen und die Performance Ihrer Anwendungen zu verbessern. Cloud Profiler ordnet die Metriken den spezifischen Teilen des Anwendung-Quellcodes zu und zeigt Ihnen an, welcher Teil der Anwendung die meisten Ressourcen verbraucht, wie Sie die Kosten begrenzen und die Performance optimieren.
Zum GCP-Performance-Monitoring gehört auch die Überwachung der vorhandenen Load Balancer. Als virtueller Semaphor für virtuelle Netzwerke und Anwendungen verteilt ein Load Balancer Lasten optimal und vermeidet somit die Überlastung einer einzelnen Ressource oder eines einzelnen Services. Im Rahmen der GCP-Überwachung sammelt und analysiert die Google-Cloud-Monitoring-Software Metriken, die von den GCP-Load-Balancern stammen, darunter Latenz, Anzahl der Anfragen, Anzahl der Bytes für jede Anfrage und Anzahl der Pakete. Wenn Sie diese Metriken im Auge behalten, erkennen Sie auch, wie effizient der Load Balancer arbeitet und ob eine Feinabstimmung sinnvoll ist.
GCP-Netzwerk-Monitoring
Der Bereich des GCP-Netzwerk-Monitorings konzentriert sich auf virtuelle Netzwerke. Unabhängig davon, ob Sie eine reine Cloud-Infrastruktur oder eine hybride Infrastruktur betreiben, müssen Sie sicherstellen, dass alle Teile richtig miteinander verbunden sind, funktionieren sowie optimal konfiguriert und effizient sind. Dabei unterstützen Sie GCP-Monitoring-Lösungen.
Bei der Überwachung von GCP-Netzwerken überwachen Sie in erster Linie die grundlegende Netzwerkkonnektivität und die Performance der eigentlichen Netzwerke. Im ersten Schritt überprüfen Sie die Kommunikation der Pfade zwischen allen Komponenten, die eine Cloud-Infrastruktur bilden. Anschließend folgt die Identifizierung des Verkehrsstatus, der Trends und möglicher Engpässe. Weitere wichtige Bestandteile des Netzwerk-Monitorings sind unter anderen Firewalls, DNS und VPNs.
GCP wird mit dem Network Intelligence Center geliefert, einer Konsole für Google Clouds und deren Beobachtbarkeit, Überwachung und Fehlerbehebung. Es verfügt über fünf Module zur Visualisierung von Netzwerktopologie, Paketverlusten und Latenzzeiten, zur Anzeige der verwendeten Firewall-Regeln, zur Analyse von Netzwerkproblemen und zum Testen der Netzwerkkonnektivität. Diese Module integrieren natürlich Metriken, die sich mit dem GCP-Performance- und dem GCP-Security-Monitoring überschneiden. Network Intelligence Center ist ein simples Produkt, das für den Einstieg oder für kleine Netzwerke ausreicht, bei Infrastrukturen mit Tausenden von Hosts und Services jedoch an seine Grenzen stößt. Monitoring-Lösungen von Drittanbietern wie Checkmk liefern effizientere und skalierbare Monitoring-Ergebnisse und sind dabei nicht nur auf das GCP-Cloud-Monitoring beschränkt.
GCP-Security-Monitoring
Das GCP-Security-Monitoring überprüft Ihre GCP-Ressourcen und -Services, um Eindringlinge, Sicherheitsbedrohungen und potenzielle Schwachstellen zu erkennen. Dieser Bereich der Cloud-Überwachung schützt Ihre GCP-Ressourcen, indem er mögliche Sicherheitsvorfälle erkennt und Sie umgehend darüber informiert.
Die Sicherung von Clouds erfordert viel Aufwand und viele Kontrollen. Sie überprüfen zum einen die Sicherheit von Daten und Kommunikation und verhindern zum anderen Sicherheitsvorfälle. Häufig überwachen Sie GCP-Logs, um verdächtige Verhaltensweisen und mögliche unsichere Ereignisse in GCP-Anwendungen und -Ressourcen zu erkennen. GCP umfasst Google Logging, ein vollständig verwaltetes Log-Management-System, das die Speicherung, Suche, Analyse und Alarmierung von Logs beinhaltet. Google Logs Explorer ist in die Google Cloud Console integriert und das Hauptinstrument für die Abfrage der Logs in GCP.
Beim GCP-Security-Monitoring sind jedoch nicht nur Logs wichtig. Intrusion-Detection-Systeme (IDS) und Intrusion-Prevention-Systeme (IPS) überwachen aktiv Netzwerke, um unbefugte Zugriffe und Eindringlinge zu erkennen und hoffentlich zu verhindern. Google hat mit Cloud IDS den ersten Teil in GCP integriert. Es erkennt Netzwerkbedrohungen wie Malware und Spyware und überwacht die Kommunikation innerhalb und zwischen VPCs (Virtual Private Clouds). Es handelt sich zwar nicht um ein IPS, ermöglicht es Ihnen aber dennoch sicherheitsrelevante Probleme in Ihrer GCP-Infrastruktur zu erkennen.
Eine nützliche Software für das Security-Monitoring von GCP-Anwendungen und -Containern ist der Google Web Security Scanner. Dieser identifiziert Schwachstellen in den Anwendungen App Engine, Google Kubernetes Engine (GKE) und Compute Engine. Security Scanner fungiert als Crawler von öffentlichen Web-URLs und spürt Schwachstellen auf, indem er wiederholt so viele Eingaben und Event-Handler wie möglich übermittelt. Er implementiert bei weitem kein vollständiges GCP-Security-Monitoring für Cloud-Anwendungen, ist aber dennoch eine hilfreiche Software.
Application- und VM-Monitoring in GCP
Unabhängig davon, ob Ihre Infrastruktur die Leistung der VMs der Compute Engine nutzt oder eher die App Engine für die Ausführung von Anwendungen einsetzt: Beide Services treiben ein Unternehmen an – und machen die Überwachung dieser beiden Services demnach zu einem Muss.
Google Cloud Monitoring und Google Logging sammeln Metriken von Cloud-Anwendungen und virtuellen Maschinen. Diese sind Teil von Google Clouds Operation Suite, früher bekannt als Stackdriver. Es beinhaltet nicht nur die Logging- und Überwachungsfunktionen von GCP, sondern bietet Ihnen noch einige weitere Funktionen, wie etwa das Versenden von Alerts nach vorher festgelegten Richtlinien, die Verwaltung und Skalierung der Prometheus-Infrastruktur, das Erstellen von benutzerdefinierten Dashboards, die Überprüfung der Uptime und die Durchführung von Sicherheitsaudits. Dabei handelt es sich um eine ziemlich umfangreiche Monitoring-Lösung, die sich jedoch auf GCP beschränkt.
GCP bietet auch Google Error Reporting, eine Lösung zur Fehlerberichterstattung. Sie ermöglicht ein grundlegendes GCP-Anwendung-Monitoring, indem sie Fehler in Anwendungen identifiziert und Ihnen hilft, diese zu verstehen. Zudem unterstützt sie viele gängige Programmiersprachen wie Go, Java, .NET, PHP, Node.js, Python und Ruby. Durch die Integration mit Google Logging sendet sie Fehler als Logs zur weiteren Analyse.
Google-Cloud-Storage-Monitoring
GCP bietet Cloud-Storage als Service für das Hosting von Daten an. Mit verschiedenen Tiers für verschiedene gewünschte Verfügbarkeitslevel ist Cloud-Storage ein flexibler Service für die Speicherung unstrukturierter Daten. Dateien sind ein Teil von Webanwendungen und als solche von entscheidender Bedeutung für die Gesundheit der Infrastruktur Ihres Unternehmens. GCP-Cloud-Storage-Monitoring ist daher eine logische Ergänzung zu den anderen Überwachungsmaßnahmen.
Dabei helfen Ihnen Google Cloud Monitoring und Google Logging. Diese sammeln wichtige Metriken wie Storage-Nutzung, Datenübertragungsraten, Fehlerraten und sicherheitsrelevante Ereignisse. Sie geben Ihnen außerdem darüber Aufschluss, wie und von wem der Storage-Service genutzt wird und ob eine Skalierung erforderlich ist.
Google Cloud Monitoring ist zwar eine integrierte und einfach zu bedienende GCP-Monitoring-Lösung, ist aber in größeren Infrastrukturen und bei fortgeschrittenen Anwendungsfällen nicht ausreichend leistungsfähig. Google-Monitoring-Lösungen von Drittanbietern sind möglicherweise besser für Ihre Anforderungen geeignet. Checkmk und ähnliche Lösungen ermöglichen eine flexiblere Anpassung und mehr Effizienz, ohne dass die von Google selbst integrierten Tools überflüssig werden.
GCP-Datenbank-Monitoring
Wie jeder andere Cloud-Anbieter bietet auch GCP Datenbanken an. Cloud SQL, Cloud Firestore und Cloud Bigtable sind nur einige der Möglichkeiten, die Sie bei der Einrichtung einer Datenbank in der Google-Cloud haben. Natürlich müssen alle diese Services Teil Ihrer GCP-Monitoring-Strategie sein.
GCP-Datenbank-Services zeigen eine Reihe von Metriken an, darunter CPU-Auslastung, Speichernutzung, Festplatten-I/-O, Netzwerkverkehr, Abfragelatenz, Nutzung des Verbindungspools und mehr. Neben der Unterstützung für das Sammeln von Datenbank-Logs in Google Cloud Monitoring gibt es eine beinahe vollständige Auswahl von Daten für die Beurteilung der Gesundheit von Datenbanken.
Zusätzlich zu der Gesundheit ist auch die Performance der Datenbanken sehr wichtig. GCP-Monitoring beinhaltet eine spezielle Software für diese Aufgabe namens Query Insights. Dabei handelt es sich um einen Analysator für Abfragen von Cloud-SQL-Datenbanken, der Ihnen bei der Erkennung, Diagnose und Vorbeugung von Performance-Problemen bei Abfragen hilft. Es ist ein hilfreicher Troubleshooter für SQL-Abfragen und lässt sich gut mit den GCP-Logs und der Google-Cloud-Überwachung kombinieren.
GCP-Kosten überwachen
Die Kosten einer Cloud sind ebenfalls ein heikles Thema. Die Auswahl des richtigen Cloud-Anbieters, der auf Ihre Anforderungen passt, sowie die Sicherstellung, dass Sie nicht zu viel Geld für überdimensionierte Ressourcen ausgegeben, ist ebenfalls Bestandteil der Cloud-Überwachung. Schließlich bieten die meisten Cloud-Monitoring-Lösungen eine Möglichkeit, Ihre Ressourcennutzung zu überprüfen und deren relative Kosten zu berechnen.
Auch GCP hat eine solche Möglichkeit. Google Cost Management ist ein Dashboard, das Informationen über die Nutzung von GCP-Ressourcen und -Services sammelt, um Ihnen einen Einblick in Ihre aktuellen Kostentrends und -prognosen zu geben. Zusätzlich können Sie Richtlinien festlegen, durch die die Software Ihnen Empfehlungen zur Kostendämpfung und besseren Nutzung Ihres Budgets gibt. Die Software sendet Ihnen außerdem einen Alert, sollte ein Service laufen und Kosten verursachen, obwohl Sie ihn eigentlich nicht benötigen.
GCP-Monitoring-Lösungen von Drittanbietern wie Checkmk verfügen ebenfalls über eigene Funktionen zur Kostenkontrolle. Durch den Einsatz von Monitoring-Agenten oder Monitoring-APIs können diese Lösungen die GCP-Nutzungskosten nahezu in Echtzeit überprüfen und sind dabei in der Regel auch noch Multi-Cloud-fähig. Durch die Aggregation der Kosten über alle Ihre Cloud-Services und -Ressourcen hinweg müssen Sie nicht mehr zwischen mehreren Cloud-Dashboards wechseln und die Kosten einzeln überprüfen.
Welche GCP-Monitoring-Lösungen gibt es?
GCP-Monitoring erfolgt entweder über die integrierten Dashboards in Google Cloud Monitoring oder über eine externe GCP-Monitoring-Software. Eine solche Software nutzt Monitoring-Agenten, die entweder in der Cloud selbst laufen oder über die Verbindung mit der Google Cloud Monitoring API.
Die Cloud-Monitoring-API ist eine Schnittstelle für Monitoring-Lösungen, damit diese verschiedene Metriken von GCP-Services und -Ressourcen abfragen können. Die API wird als REST und als gRPC angeboten. Mit einer speziellen Sprache, Monitoring Query Language (MQL), können Sie die API abfragen und Ihre Daten abrufen, filtern und manipulieren. Es ist keine komplexe Sprache, und jeder, der mit JSON und REST-APIs einigermaßen vertraut ist, kann sie in wenigen Minuten verwenden.
Über die API können Sie zudem mithilfe von MQL oder einer der Sprachen, die über eigene GCP-Monitoring-Bibliotheken verfügen, eine Reihe von Überwachungsaufgaben durchführen und ein individuelles Monitoring-System einrichten. Dies ist eine großartige Funktion, wenn Google Cloud Monitoring Ihre eigenen Bedürfnisse mal nicht abdecken sollte. Wenn Google Cloud Monitoring jedoch öfter nicht Ihren Anforderungen entspricht, wie es oftmals in großen Unternehmen der Fall ist, bleiben GCP-Monitoring-Lösungen von Drittanbietern die einzige praktikable Lösung.
Checkmk nutzt beispielsweise die Monitoring-API sowie benutzerdefinierte Agenten und geht damit über die integrierten GCP-Dashboards hinaus. In Anbetracht der Tatsache, dass sowohl Google Cloud Monitoring als auch die API Kosten verursachen, die mit zunehmender Nutzung steigen, kann die lizenzierte Version einer externen GCP-Monitoring-Software im Endeffekt günstiger sein. Aufgrund der besseren Anpassbarkeit, der Abdeckung fortgeschrittener Anwendungsfälle und der Multi-Cloud-Unterstützung ist eine Monitoring-Software eines Drittanbieters oft die bessere Lösung für die Überwachung von GCP-Clouds.
Warum ist Google-Cloud-Monitoring wichtig?
Das GCP-Monitoring ist für Unternehmen, die GCP nutzen, von immenser Bedeutung. Die Monitoring-Services von Google gewährleisten zum Großteil den reibungslosen Betrieb von cloudbasierten Anwendungen und Infrastrukturen. Mit einem effektiven GCP-Monitoring können Sie die Gesundheit und die Performance von GCP-Ressourcen verfolgen, potenzielle Probleme erkennen, bevor sie auftreten, und Abhilfemaßnahmen ergreifen, ehe sie eskalieren. Wie wir gesehen haben, werden durch den Einsatz von GCP-Monitoring-Lösungen wie Google Cloud Monitoring oder Checkmk wichtige Metriken gesammelt und in verschiedenen Dashboards dargestellt, sodass Sie Ihre GCP-Services und -Ressourcen auf einen Blick im Auge behalten können.
Die Monitoring-Services von Google bieten häufig Echtzeiteinblicke in das Verhalten von GCP-Services, sodass Sie Ihre Ressourcen analysieren und optimieren können. Mithilfe der GCP-Monitoring-API oder Ad-hoc-Monitoring-Agenten greifen Sie zudem systematisch auf Monitoring-Daten zu und integrieren diese in Ihre bestehenden Monitoring-Systeme oder benutzerdefinierten Dashboards. Der Schlüssel zu einer effektiven GCP-Monitoring-Strategie liegt in der Anpassung dieser Daten und der Einrichtung von Alerts beim Auftreten vordefinierter Ereignisse oder beim Überschreiten von Schwellwerten.
Nicht zuletzt hilft das GCP-Monitoring beim Kostenmanagement, indem es Ihnen ermöglicht, die Ressourcennutzung zu überwachen und Optimierungsmöglichkeiten zu identifizieren. Indem Sie die Nutzung aller Ihrer GCP-Cloud-Ressourcen verfolgen, treffen Sie fundiertere Entscheidungen zur Kostenoptimierung, um die richtige Größe der Ressourcen festzulegen und unnötige Ausgaben zu vermeiden.
Daher ist GCP-Monitoring für alle relevant, die die Google Cloud Platform nutzen. Egal ob Sie nur Google Cloud Monitoring und Google Logging oder ob Sie eine Monitoring-Software wie Checkmk verwenden, sollte GCP-Monitoring ein Teil Ihres Monitoring-Systems sein.