Überwachung auf Basis von Open-Source-Software (OSS)

In regulierten Branchen wie dem Finanz- und Gesundheitswesen muss die kritische Infrastruktur überwacht werden, während die Daten streng innerhalb der regionalen Grenzen verbleiben.

Open-Source-Software (OSS) kann die derzeit in Cloud de Confiance by S3NSverfügbaren Cloud Monitoring- und Cloud Logging-Funktionen ergänzen und erweitern. In diesem Beispiel erfahren Sie, wie Sie eine vollständige souveräne Beobachtbarkeitslösung in Cloud de Confiance by S3NS erstellen, indem Sie weit verbreitete Open-Source-Tools hinzufügen.

Die Architektur verwendet OpenTelemetry, Grafana Mimir und Grafana Loki (unterstützt von Cloud Storage), Grafana und Fluent Bit, um Messwerte, Logs, Visualisierungen und Benachrichtigungen für die Google Kubernetes Engine (GKE) und Compute Engine zu generieren. Alle Daten verbleiben in der souveränen Region und es fallen keine SaaS-Gebühren von Drittanbietern an.

Wir empfehlen Ihnen, die entsprechenden Versionshinweise für zukünftige Updates der Cloud de Confiance by S3NS Beobachtbarkeitsfunktionen zu abonnieren.

Sie können diese Lösung bereitstellen, indem Sie der zugehörigen Referenzimplementierung mit Terraform folgen.

Zielgruppe

Diese Lösung ist für Unternehmen gedacht, die Arbeitslasten in souveränen Cloud de Confiance by S3NS Umgebungen überwachen müssen. Sie richtet sich an folgende Stakeholder:

  • Site Reliability Engineers (SREs) und DevOps-Leiter , die automatisierte, skalierbare Messwertspeicher- und Log-Pipelines bereitstellen, um den Zustand von Anwendungen zu überwachen und System-SLAs (Service Level Agreements) zu verfolgen, ohne dass Exporter manuell gewartet werden müssen.
  • Compliance- und Sicherheitsbeauftragte , die dafür sorgen, dass vertrauliche Anwendungsprotokolle, Messwerte und Betriebssignale innerhalb der souveränen Grenzen verbleiben und kein Datenabfluss zu nicht souveränen SaaS-Lösungen erfolgt.
  • Cloud-Architekten für Unternehmen , die eine standardisierte OpenTelemetry-Grundlage schaffen, die sofortige Cloud-Migrationen ermöglicht und einen reibungslosen Übergang zur Cloud-Überwachung durch Erstanbieter bietet.

Hauptfunktionen

  • Souveräne Beobachtbarkeit und lokale Datenaufbewahrung: Anwendungsmesswerte für Compute Engine- und GKE-Logs in der lokalen souveränen Infrastruktur mit Cloud Storage-Buckets erfassen, verarbeiten und speichern.
  • Standardaufnahme von OpenTelemetry: OpenTelemetry-Collector für pullbasiertes Prometheus-Scraping und pushbasierte OpenTelemetry Protocol-Messwerte (OTLP) verwenden. Dieser Ansatz unterstützt die zukünftige Kompatibilität mit Cloud Monitoring durch Erstanbieter.
  • Skalierbarer, Cloud Storage-basierter Messwertspeicher: Grafana Mimir und Grafana Loki so konfigurieren, dass Cloud Storage als hochverfügbares, kostengünstiges Prometheus-Messwertblock-Backend verwendet wird.
  • Einheitliche Telemetrie-Visualisierung: Vorkonfigurierte Grafana-Dashboards ansehen auf denen Anwendungsmesswerte in Echtzeit, Grafana Loki-Logstreams und Compute Engine-VM-Stdout-Logs angezeigt werden, und Cloud Logging Datenquellen einbinden.
  • Compute Engine-VM-Logging-Pipeline: Fluent Bit und OpenTelemetry Collector Contrib automatisch auf Compute Engine-VMs installieren, um systemd-journald und stdout-Logs zu Grafana Loki, Cloud Logging oder beiden zu streamen. Sie können auch VM-Hostmesswerte und synthetische OTLP-Anwendungsmesswerte erfassen, um sie über mTLS an Mimir weiterzuleiten.
  • Flexible Bereitstellungsautomatisierung: Infrastruktur als Code (IaC) von Terraform und Kubernetes-Paketverwaltung mit Helm für eine konsistente Einrichtung und Entfernung der Umgebung verwenden.

Architektur

Diese Architektur verwendet OpenTelemetry-Collector, Grafana Mimir, Grafana Loki, kube-state-metrics, Fluent Bit, cert-manager und Grafana, um Compute Engine- und GKE-Arbeitslasten mit Cloud Storage für Messwerte und Cloud Logging für Logs zu überwachen. Mimir und Loki in der Virtual Private Cloud (VPC) verwenden interne Application Load Balancer über mTLS, damit Compute Engine-VMs Messwerte und Logs senden können. Grafana wird extern über HTTPS mit einem regionalen GKE-Gateway bereitgestellt.

Compute Engine-VMs und GKE-Cluster verwenden Open-Source-Monitoring-Tools, die Daten in Cloud Storage speichern und in Cloud Logging und Cloud Monitoring eingebunden sind.

Komponenten

Komponente Technologie Zweck
Telemetrie-Collector OpenTelemetry-Collector Zentrale Telemetrie-Pipeline zum Verarbeiten von OpenTelemetry Protocol-Messwerten (OTLP) HTTP/gRPC, zum Scraping von Prometheus-Endpunkten und zum Weiterleiten an Mimir.
Messwertdatenbank Grafana Mimir Hochverfügbare, langfristige Prometheus-Messwertspeicherdatenbank mit persistenten Blöcken in Cloud Storage.
Logdatenbank Grafana Loki Horizontal skalierbare, mandantenfähige Logaggregationsdatenbank, die Blöcke und TSDB-Indizes in Cloud Storage speichert.
Objektspeicher Cloud Storage Stellt dedizierte Buckets für Mimir-Messwerte, Loki-Logs und gemeinsam genutzte Monitoring-Artefakte bereit.
Clusterstatusmesswerte kube-state-metrics Überwacht den Kubernetes API-Server und generiert Messwerte zum Status von Clusterobjekten (z. B. Bereitstellungen, Knoten oder Pods). Wird vom OpenTelemetry-Collector mit ServiceMonitor extrahiert.
PKI und Zertifikate cert-manager und PKI-Aussteller Bootstraps eine interne Root-CA und ClusterIssuer, um TLS-/mTLS-Zertifikate für Clusterkomponenten und eigenständige Compute Engine-VMs auszugeben.
Google Kubernetes Engine-Log-Collector Fluent Bit (DaemonSet) Erfasst Container-Stdout-Logs auf allen GKE-Knoten, reichert sie mit Kubernetes-Metadaten an und leitet sie mit OTLP mTLS an den GKE-OTel-Collector weiter.
VM-Log-Collector Fluent Bit und OpenTelemetry Contrib Erfasst OS- und Anwendungs-Stdout-Logs auf eigenständigen Compute Engine-VMs mit systemd-journald und streamt sie zu Cloud Logging.
Zentrale Protokollierung Cloud Logging Zentralisierte Logsenke für Compute Engine-VM- und Plattformlogs.
Visualisierung und Benachrichtigungen Grafana Dashboard-Visualisierungsebene, die mit Datenquellen für Mimir, Grafana Loki, Cloud Monitoring und Cloud Logging vorkonfiguriert ist.
Push-Demo-App Python (Beacon-App) Demo-Mikrodienst, der alle 5 Sekunden synthetische OTLP-Messwerte ausgibt, die an den OpenTelemetry-Collector gesendet werden.
Pull-Demo-App Python (Sensor-App) Demo-Mikrodienst, um einen Standard-Prometheus-Endpunkt /metrics bereitzustellen, der vom OpenTelemetry-Collector extrahiert wird.
Demo-App Python Demoanwendung, die auf Compute Engine-VMs ausgeführt wird, um strukturierte JSON-Logs in stdout zu erstellen.
Bereitstellung Terraform und Helm Automatisiert die Bereitstellung von Virtual Private Cloud, GKE-Cluster, Cloud Storage-Bucket, IAM-Rollen (Identity and Access Management), Compute Engine-VM und Helm-Diagramm.

Referenzimplementierung

Eine Referenzimplementierung dieser Lösung mit Terraform finden Sie in GitHub. Dies ist ein Proof-of-Concept-Prototyp, der zu Demonstrationszwecken erstellt wurde. Die Implementierung wurde nicht geprüft oder für Produktionsanwendungsfälle gesichert.

Informationen zu den Voraussetzungen und Bereitstellungsanleitungen finden Sie unter Souveräne Beobachtbarkeit und Überwachung mit Grafana und OpenTelemetry.