Überwachen Sie Ihre Instanzen

So erhalten Sie Prometheus-Echtzeitmetriken von Ihren Stackhero-Instanzen

Stackhero hilft Ihnen, Echtzeitmetriken von Ihren Instanzen im Prometheus-Format abzurufen. Diese nahtlose Integration erleichtert die Visualisierung von Daten mit Grafana-Dashboards und das Auslösen von Warnungen über Prometheus (per E-Mail, SMS, Slack, Mattermost und mehr) für alle Ihre Stackhero-Dienste in nur wenigen Minuten.

Grafana-Dashboard zeigt eine Instanz in EchtzeitGrafana-Dashboard zeigt eine Instanz in Echtzeit

Stackhero bietet einen HTTP-Endpunkt für die "Service Discovery", der Echtzeitmetriken von Ihren Instanzen im Prometheus-Format zurückgibt.

Hier ist der Überblick:

  1. Ihr Prometheus-Server verbindet sich alle 15 Sekunden mit der Stackhero-API, um Echtzeitmetriken von Ihren Instanzen abzurufen.
  2. Ihr Prometheus-Server löst Warnungen über den Alert Manager aus, wenn definierte Bedingungen erfüllt sind.
  3. Ihr Grafana-Server verbindet sich mit Ihrem Prometheus-Server, um Dashboards anzuzeigen, die Ihre Stackhero-Instanzen zeigen.

Um zu beginnen, müssen Sie ein Token generieren, das Ihr Prometheus-Server verwenden kann, um sich mit der Stackhero-API zu verbinden.

  • Melden Sie sich bei Ihrem Stackhero-Dashboard an.
  • Navigieren Sie im linken Menü zu Prometheus.
  • Klicken Sie auf Token erstellen.
  • Fügen Sie eine Beschreibung hinzu und beschränken Sie bei Bedarf den IP-Zugriff (lassen Sie 0.0.0.0/0, um alle IPs zuzulassen).
  • Kopieren Sie die generierte Prometheus-Konfiguration.

Erstellung eines Prometheus-Tokens im Stackhero-DashboardErstellung eines Prometheus-Tokens im Stackhero-Dashboard

Haben Sie noch keinen Prometheus-Server? Mit Stackhero können Sie in nur 2 Minuten ein verwaltetes Prometheus starten!

Öffnen Sie Ihre prometheus.yml-Konfigurationsdatei und fügen Sie den "stackhero"-Job (zuvor generiert) am Ende der Datei hinzu.

Hier ist ein Beispiel für eine Konfiguration:

  - job_name: "stackhero"
    scheme: "https"
    basic_auth:
      username: "<ORGANIZATION_ID>"
      password: "<TOKEN>"
    http_sd_configs:
    - url: "https://api.stackhero.io/v1/prometheus/targets"
      refresh_interval: "15s" # Setzen Sie es nicht auf weniger als 15 Sekunden!
      basic_auth:
        username: "<ORGANIZATION_ID>"
        password: "<TOKEN>"

Navigieren Sie zu Ihrem Prometheus-Dashboard und gehen Sie zu Status > Service Discovery. Sie sollten einen "stackhero"-Service-Discovery-Eintrag registriert sehen.

Prometheus-Dashboard zeigt Stackhero-Service-DiscoveryPrometheus-Dashboard zeigt Stackhero-Service-Discovery

Gehen Sie anschließend zu Status > Targets. Sie sollten einen Endpunkt für jede Stackhero-Instanz sehen.

Prometheus-Dashboard zeigt Stackhero-ZielePrometheus-Dashboard zeigt Stackhero-Ziele

Herzlichen Glückwunsch! Ihr Prometheus-Server ruft jetzt automatisch Echtzeitmetriken für alle Ihre Dienste ab.

Haben Sie noch keinen Grafana-Server? Mit Stackhero können Sie in nur 2 Minuten ein verwaltetes Grafana starten!

Sie können ein vorkonfiguriertes Dashboard in Grafana nutzen, um die Metriken Ihrer Instanzen anzuzeigen.

  1. Gehen Sie in der Weboberfläche von Grafana zu Create > Import.
  2. Setzen Sie im Abschnitt Import via grafana.com die ID auf 1860 und klicken Sie auf die Schaltfläche Load.
  3. Wählen Sie auf der nächsten Seite Ihre Prometheus-Datenquelle aus und klicken Sie auf Import.

Grafana generiert ein Dashboard, das die von Prometheus abgerufenen Daten sofort anzeigt!

Grafana-Dashboard zeigt eine Instanz in EchtzeitGrafana-Dashboard zeigt eine Instanz in Echtzeit

Oben links auf dem Bildschirm können Sie die Instanz auswählen, die Sie anzeigen möchten, indem Sie auf die host-Liste klicken.

Auswahl einer Instanz in der "host"-ListeAuswahl einer Instanz in der "host"-Liste

Herzlichen Glückwunsch, Sie können jetzt alle Ihre Instanzen in Echtzeit überwachen!