Zum Inhalt springen

MongoDB Flex mit STACKIT Observability verbinden

Um eine visuelle Darstellung Ihrer Metriken zu erhalten und Ihre Metriken zu speichern, können Sie den Service STACKIT Observability nutzen. In den folgenden Schritten erfahren Sie, wie Sie MongoDB in Ihre Instanz des Observability-Service integrieren.

Bevor Sie die Grafana Alloy-Umgebung konfigurieren, müssen Sie den benötigten Service-Account vorbereiten. Diese Anleitung verwendet hierfür das STACKIT Portal. Sie können auch die STACKIT CLI verwenden.

Einen Service-Account erstellen und Zugriff auf die API gewähren

Abschnitt betitelt „Einen Service-Account erstellen und Zugriff auf die API gewähren“
  1. Navigieren Sie zu IAM und Verwaltung > Service-Accounts.

  2. Klicken Sie auf + Service-Account erstellen.

  3. Geben Sie dem neuen Service-Account einen Namen und klicken Sie auf Erstellen. Der Account wurde erstellt.

  4. Wechseln Sie in den Account, indem Sie auf seinen Namen klicken.

  5. Navigieren Sie zu Service-Account-Schlüssel.

  6. Klicken Sie auf + Service-Account-Schlüssel erstellen.

  7. Wählen Sie Neues Schlüsselpaar erstellen und klicken Sie auf Erstellen.

  8. Laden Sie die neu erstellten Zugangsdaten herunter. Sie benötigen mindestens die JSON-Datei, die alle relevanten Informationen enthält.

  9. Navigieren Sie zu IAM und Verwaltung > Zugriff.

  10. Klicken Sie auf + Zugriff gewähren.

  11. Fügen Sie die E-Mail-Adresse (ID) des neu erstellten Service-Accounts hinzu.

  12. Wählen Sie die Rolle MongoDB Flex Reader aus und klicken Sie auf Speichern.

  1. Navigieren Sie zu Logging & Monitoring > Observability.

  2. Wählen Sie Ihre Observability-Instanz aus.

  3. Navigieren Sie zu API > Zugangsdaten.

  4. Klicken Sie auf + Zugangsdaten erstellen und anschließend auf Erstellen.

Hilfs-Skripte vorbereiten und Grafana Alloy konfigurieren

Abschnitt betitelt „Hilfs-Skripte vorbereiten und Grafana Alloy konfigurieren“
  1. Kopieren Sie die JSON-Datei, die Sie unter Vorbereitung heruntergeladen haben, auf Ihre virtuelle Maschine.

    In dieser Anleitung kopieren wir sie nach /usr/local/etc/stackit/sa/service-account.json. Wenn Sie einen anderen Ort wählen, müssen Sie die Befehle in den folgenden Schritten anpassen.

  2. Erstellen Sie einen Cronjob zur Aktualisierung des Bearer-Tokens.

    Versuchen Sie manuell, ein Token mit der STACKIT CLI abzurufen.

    Terminal-Fenster
    stackit auth activate-service-account --service-account-key-path /usr/local/etc/stackit/sa/service-account.json --only-print-access-token

    Die maximale Lebensdauer eines Tokens beträgt 60 Minuten, daher muss das Token vorher erneuert werden. Um diesen Schritt zu automatisieren, können Sie diesen Befehl in die Crontab eintragen und das Token in eine neue Datei schreiben. Auch diese Datei sollte geschützt werden.

    */5 * * * * /usr/bin/stackit auth activate-service-account --service-account-key-path /usr/local/etc/stackit/sa/service-account.json --only-print-access-token > /run/secrets/bearer_token 2>/dev/null
  3. Grafana Alloy konfigurieren Konfigurieren Sie nun Grafana Alloy nach Ihren Bedürfnissen. Verwenden Sie den folgenden Codeschnipsel, um die MongoDB Flex-Metriken abzurufen und sie an STACKIT Observability weiterzuleiten. Ersetzen Sie projectID, region, mongoDBFlexInstanceID, jobName, ObservabilityInstanceID und observabilityAPIUsername durch die entsprechenden Werte.

    prometheus.scrape "mongodb" {
    targets = [
    {
    __address__ = "mongodb-prom-proxy.api.stackit.cloud:443",
    __metrics_path__ = "/v2/projects/[projectID]/regions/[region]/instances/[mongoDBFlexInstanceID]/metrics",
    },
    ]
    forward_to = [
    prometheus.remote_write.observability.receiver,
    ]
    job_name = "[jobName]"
    scheme = "https"
    scrape_interval = "5m"
    authorization {
    type = "Bearer"
    credentials_file = "/run/secrets/bearer_token"
    }
    }
    prometheus.remote_write "observability" {
    endpoint {
    url = "[https://push.metrics.stackit5.argus.eu01.stackit.cloud/instances/](https://push.metrics.stackit5.argus.eu01.stackit.cloud/instances/)`ObservabilityInstanceID`/api/v1/receive"
    basic_auth {
    username = "[observabilityAPIUsername]"
    password_file = "/run/secrets/observability_write_password"
    }
    }
    }
  4. Starten Sie den Container oder Service neu.

  5. Testen Sie Grafana Alloy.

    Öffnen Sie Ihre Grafana Alloy-Instanz mit einem Browser. Das Dashboard zeigt die definierten Komponenten mit ihrem Status an. Die Spalte “Health” sollte für Ihre Konfigurationen “healthy” anzeigen, entsprechend dem untenstehenden Screenshot.

    Grafana Alloy Dashboard zeigt einen gesunden Status

  1. Navigieren Sie zu Logging & Monitoring > Observability.

  2. Wählen Sie Ihre Observability-Instanz aus.

  3. Navigieren Sie zu Grafana und folgen Sie dem Link zum Grafana Dashboard.

  4. Melden Sie sich mit Ihren Zugangsdaten (oder SSO) an.

  5. Navigieren Sie in Grafana zu Explore > Metrics.

  6. Klicken Sie auf + New metric exploration.

    Suchen Sie auf der Seite für die Metrikerkundung nach mongodb_. Sie sollten nun die MongoDB Flex-Metriken sehen:

    MongoDB Flex Metriken in Grafana

Verbessern Sie die Arbeit mit STACKIT Grafana durch den Import unserer Vorlage

Abschnitt betitelt „Verbessern Sie die Arbeit mit STACKIT Grafana durch den Import unserer Vorlage“

Wir bieten eine STACKIT Grafana-Vorlage an, die auf STACKIT MongoDB Flex zugeschnitten ist. Besuchen Sie den Referenzartikel Observability-Metriken von MongoDB Flex, um die Datei herunterzuladen.