Verbinden von Grafana mit Azure Monitor Prometheus-Metriken
Artikel
Die am häufigsten verwendete Methode zum Analysieren und Darstellen von Prometheus-Daten ist ein Grafana-Dashboard. Sie können Prometheus-Metriken in Azure mit folgenden Methoden erfassen:
In diesem Artikel wird erläutert, wie Sie von Azure gehostete Prometheus-Metriken als Datenquelle für Azure Managed Grafana, selbstgehostetes Grafana auf einem virtuellen Azure-Computer oder eine Grafana-Instanz konfigurieren, die außerhalb von Azure ausgeführt wird.
Abfrageendpunkt des Azure Monitor-Arbeitsbereichs
In Azure werden Prometheus-Daten in einem Azure Monitor-Arbeitsbereich gespeichert. Beim Konfigurieren der Prometheus-Datenquelle in Grafana verwenden Sie den Abfrageendpunkt für Ihren Azure Monitor-Arbeitsbereich. Öffnen Sie zum Ermitteln des Abfrageendpunkts die Seite Übersicht für Ihren Azure Monitor-Arbeitsbereich im Azure-Portal.
Wenn Sie eine Azure Managed Grafana-Instanz erstellen, wird sie automatisch mit einer verwalteten Systemidentität konfiguriert. Die Identität verfügt über die Rolle Überwachungsdatenleser auf Abonnementebene. Mit dieser Rolle kann die Identität alle Überwachungsdaten für das Abonnement lesen. Diese Identität wird für die Authentifizierung von Grafana in Azure Monitor verwendet. Sie müssen nichts tun, um die Identität zu konfigurieren.
Erstellen Sie die Prometheus-Datenquelle in Grafana.
Führen Sie die folgenden Schritte aus, um Prometheus als Datenquelle zu konfigurieren:
Öffnen Sie Ihren Azure Managed Grafana-Arbeitsbereich im Azure-Portal.
Wählen Sie den Endpunkt aus, um den Grafana-Arbeitsbereich anzuzeigen.
Wählen Sie Verbindungen und dann Datenquellen aus.
Wählen Sie Datenquelle hinzufügen aus.
Suchen Sie nach Prometheus, und wählen Sie diese Option aus.
Fügen Sie den Abfrageendpunkt aus Ihrem Azure Monitor-Arbeitsbereich in das Feld Prometheus-Server-URL ein.
Wählen Sie unter „Authentifizierung“ die Option Azure-Authentifizierung aus.
Wählen Sie unter Azure-Authentifizierung die Option Verwaltete Identität im Dropdownmenü Authentifizierung aus.
Scrollen Sie auf der Seite nach unten, und wählen Sie Speichern und testen aus.
Selbstverwaltete Grafana-Instanz
Im folgenden Abschnitt wird beschrieben, wie Sie selbstverwaltetes Grafana auf einem virtuellen Azure-Computer für die Verwendung von von Azure gehosteten Prometheus-Daten konfigurieren.
Konfigurieren der Systemidentität
Verwenden Sie die folgenden Schritte, um den Zugriff auf alle Azure Monitor-Arbeitsbereiche in einer Ressourcengruppe oder einem Abonnement zuzulassen:
Öffnen Sie die Seite Identität für Ihre VM im Azure-Portal.
Legen Sie den Status auf EIN fest.
Wählen Sie Speichern.
Wählen Sie Azure-Rollenzuweisungen aus, um den vorhandenen Zugriff in Ihrem Abonnement zu überprüfen.
Wenn die Rolle Überwachungsdatenleser für Ihr Abonnement oder Ihre Ressourcengruppe nicht aufgeführt ist, wählen Sie + Rollenzuweisung hinzufügen aus.
Wählen Sie im Dropdownmenü Bereich entweder Abonnement oder Ressourcengruppe aus. Abonnement ermöglicht den Zugriff auf alle Azure Monitor-Arbeitsbereiche im Abonnement. Ressourcengruppe ermöglicht nur den Zugriff auf Azure Monitor-Arbeitsbereiche in der ausgewählten Ressourcengruppe.
Wählen Sie das Abonnement oder die Ressourcengruppe aus, in dem bzw. der sich Ihr Azure Monitor-Arbeitsbereich befindet.
Wählen Sie im Dropdownmenü Rolle die Option Überwachungsdatenleser aus.
Wählen Sie Speichern.
Konfigurieren von Grafana für die Azure-Authentifizierung
Die Grafana-Versionen 9.x und höher unterstützen die Azure-Authentifizierung, sie ist jedoch nicht standardmäßig aktiviert. Um die Azure-Authentifizierung zu aktivieren, aktualisieren Sie Ihre Grafana-Konfiguration, und starten Sie die Grafana-Instanz neu. Um Ihre grafana.ini-Datei zu finden, lesen Sie das Dokument Konfigurieren von Grafana aus Grafana Labs.
Führen Sie die folgenden Schritte aus, um die Azure-Authentifizierung zu aktivieren:
Suchen und öffnen Sie die Datei grafana.ini auf Ihrer VM.
Ändern Sie im Abschnitt [auth] der Konfigurationsdatei die Einstellung azure_auth_enabled in true.
Ändern Sie im Abschnitt [azure] der Konfigurationsdatei die Einstellung managed_identity_enabled in true.
Starten Sie die Grafana-Instanz neu.
Erstellen der Prometheus-Datenquelle in Grafana
Konfigurieren Sie Prometheus mithilfe der folgenden Schritte als Datenquelle:
Öffnen Sie Grafana in Ihrem Browser.
Wählen Sie Verbindungen und dann Datenquellen aus.
Wählen Sie Datenquelle hinzufügen aus.
Suchen Sie nach Prometheus, und wählen Sie diese Option aus.
Fügen Sie den Abfrageendpunkt aus Ihrem Azure Monitor-Arbeitsbereich in das Feld Prometheus-Server-URL ein.
Wählen Sie unter „Authentifizierung“ die Option Azure-Authentifizierung aus.
Wählen Sie unter Azure-Authentifizierung die Option Verwaltete Identität im Dropdownmenü Authentifizierung aus.
Scrollen Sie auf der Seite nach unten, und wählen Sie Speichern und testen aus.
Außerhalb von Azure gehostetes Grafana
Wenn Ihre Grafana-Instanz nicht in Azure gehostet wird, können Sie mithilfe von Microsoft Entra ID eine Verbindung mit Ihren Prometheus-Daten in Ihrem Azure Monitor-Arbeitsbereich herstellen.
Richten Sie die Microsoft Entra ID-Authentifizierung mit den folgenden Schritten ein:
Sie registrieren eine App mit Microsoft Entra ID.
Gewähren Sie der App Zugriff auf Ihren Azure Monitor-Arbeitsbereich.
Konfigurieren Sie Ihre selbstgehostete Grafana-Instanz mit den Anmeldeinformationen der App.
Sie registrieren eine App mit Microsoft Entra ID
Um eine App zu registrieren, öffnen Sie die Übersichtsseite von Active Directory im Azure-Portal.
Wählen Sie App-Registrierung aus.
Geben Sie auf der Seite „Anwendung registrieren“ einen Namen für die Anwendung ein.
Wählen Sie Registrieren.
Notieren Sie die Anwendungs-ID (Client) und die Verzeichnis-ID (Mandant). Sie werden in den Grafana-Authentifizierungseinstellungen verwendet.
Wählen Sie auf der Übersichtsseite der App Certificates and Secrets (Zertifikate und Geheimnisse) aus.
Wählen Sie auf der Registerkarte „Geheime Clientschlüssel“ die Option Neuer geheimer Clientschlüssel aus.
Geben Sie eine Beschreibung ein.
Wählen Sie in der Dropdownliste expiry (einen Ablaufzeitraum) aus, und wählen Sie Add (Hinzufügen) aus.
Hinweis
Erstellen Sie einen Prozess, um das Geheimnis zu erneuern, und aktualisieren Sie Ihre Grafana-Datenquelleneinstellungen, bevor das Geheimnis abläuft.
Sobald das Geheimnis abläuft, ist Grafana nicht mehr in der Lage, Daten aus Ihrem Azure Monitor-Arbeitsbereich abzufragen.
Kopieren und speichern Sie den Wert des geheimen Clientschlüssels.
Hinweis
Werte von geheimen Clientschlüsseln können nur unmittelbar nach der Erstellung angezeigt werden. Speichern Sie das Geheimnis unbedingt, bevor Sie die Seite verlassen.
Gewähren des App-Zugriffs auf Ihren Arbeitsbereich
Erlauben Sie Ihrer App, Daten aus Ihrem Azure Monitor-Arbeitsbereich abzufragen.
Öffnen Sie den Azure Monitor-Arbeitsbereich im Azure-Portal.
Notieren Sie auf der Übersichtsseite Ihren Abfrageendpunkt. Der Abfrageendpunkt wird beim Einrichten Ihrer Grafana-Datenquelle verwendet.
Wählen Sie Zugriffssteuerung (IAM) aus.
Wählen Sie Hinzufügen und dann auf der Seite Zugriffssteuerung (IAM) die Option Rollenzuweisung hinzufügen aus.
Suchen Sie auf der Seite Rollenzuweisung hinzufügen nach Überwachung.
Wählen Sie Überwachungsdatenleser und dann die Registerkarte Mitglieder aus.
Sie haben Ihre App-Registrierung erstellt und das Abfragen von Daten aus Ihrem Azure Monitor-Arbeitsbereich ermöglicht. Der nächste Schritt besteht darin, Ihre Prometheus-Datenquelle in Grafana einzurichten.
Konfigurieren von Grafana für die Azure-Authentifizierung
Grafana unterstützt jetzt das Herstellen einer Verbindung mit dem verwalteten Azure Monitor-Dienst für Prometheus über die Prometheus-Datenquelle. Bei selbstgehosteten Grafana-Instanzen ist eine Konfigurationsänderung erforderlich, um die Azure-Authentifizierungsoption in Grafana verwenden zu können. Nehmen Sie bei Grafana-Instanzen, die nicht von Azure verwaltet werden, die folgenden Änderungen vor:
Die Grafana-Versionen 9.x und höher unterstützen die Azure-Authentifizierung, sie ist jedoch nicht standardmäßig aktiviert. Um die Azure-Authentifizierung zu aktivieren, aktualisieren Sie Ihre Grafana-Konfiguration, und starten Sie die Grafana-Instanz neu. Um Ihre grafana.ini-Datei zu finden, lesen Sie das Dokument Konfigurieren von Grafana aus Grafana Labs.
Suchen und öffnen Sie die Datei grafana.ini auf Ihrer VM.
Identifizieren Sie Ihre Grafana-Version.
Legen Sie für Grafana 9.0 im Abschnitt [feature_toggles]prometheus_azure_auth auf true fest.
Legen Sie für Grafana 9.1 und höhere Versionen im Abschnitt [auth] die Einstellung azure_auth_enabled auf true fest.
Starten Sie die Grafana-Instanz neu.
Erstellen der Prometheus-Datenquelle in Grafana
Konfigurieren Sie Prometheus mithilfe der folgenden Schritte als Datenquelle:
Öffnen Sie Grafana in Ihrem Browser.
Wählen Sie Verbindungen und dann Datenquellen aus.
Wählen Sie Datenquelle hinzufügen aus.
Suchen Sie nach Prometheus, und wählen Sie diese Option aus.
Fügen Sie den Abfrageendpunkt aus Ihrem Azure Monitor-Arbeitsbereich in das Feld URL ein.
Wählen Sie unter „Authentifizierung“ die Option Azure-Authentifizierung aus. Aktivieren Sie für frühere Grafana-Versionen unter Authentifizierung die Option Azure-Authentifizierung
Wählen Sie im Abschnitt Azure-Authentifizierung aus der Dropdownliste Authentifizierung die Option App-Registrierung aus.
Geben Sie die Direkte ID (Mandant), Anwendungs-ID (Client-ID) und den geheimen Clientschlüssel ein, der beim Erstellen der App-Registrierung generiert wurde.
Scrollen Sie auf der Seite nach unten, und wählen Sie Speichern und testen aus.
Häufig gestellte Fragen
Dieser Abschnitt enthält Antworten auf häufig gestellte Fragen.
Mir fehlen alle oder einige meiner Metriken. Wie behebe ich dieses Problem?
Sie können hier den Leitfaden zur Problembehandlung zum Erfassen von Prometheus-Metriken vom verwalteten Agent verwenden.
Warum fehlen Metriken mit zwei Bezeichnungen mit demselben Namen, aber unterschiedlicher Groß-/Kleinschreibung?
Von Azure verwaltetes Prometheus ist ein System, bei dem die Groß-/Kleinschreibung nicht beachtet wird. Es behandelt Zeichenfolgen (z. B. Metriknamen, Bezeichnungsnamen oder Bezeichnungswerte) als die gleiche Zeitreihe, wenn sie sich nur durch die Groß-/Kleinschreibung der Zeichenfolge von einer anderen Zeitreihe unterscheiden. Weitere Informationen finden Sie unter Übersicht über Prometheus-Metriken.
Warum sehe ich einige Lücken in Metrikdaten?
Bei Knotenaktualisierungen kann eine Lücke von 1 bis 2 Minuten in den Metrikdaten für Metriken auftreten, die von unseren Collectors auf Clusterebene erfasst wurden. Diese Lücke tritt auf, da der Knoten, auf dem die Daten ausgeführt werden, im Rahmen eines normalen Aktualisierungsprozesses aktualisiert wird. Dieser Aktualisierungsprozess wirkt sich auf clusterweite Ziele aus, z. B. kube-state-metrics und benutzerdefinierte Anwendungsziele, die angegeben werden. Dies tritt auf, wenn Ihr Cluster manuell oder per automatischer Aktualisierung aktualisiert wird. Dies ist das erwartete Verhalten, und es tritt aufgrund der Aktualisierung des Knotens auf, auf dem er ausgeführt wird. Dieses Verhalten wirkt sich nicht auf unsere empfohlenen Warnungsregeln aus.