Einführung
Die Integration von Alertmanager mit Microsoft Teams ermöglicht es Ihnen, Warnmeldungen direkt in Teams-Kanälen zu empfangen, was die schnelle Zusammenarbeit mit Ihrem Team erleichtert, um Probleme umgehend zu lösen. Dieser Leitfaden verwendet Prometheus-MSTeams, einen leichtgewichtigen Go Web Server, der entwickelt wurde, um die Lücke zwischen Prometheus Alertmanager und Microsoft Teams zu schließen.
Alertmanager selbst kann Benachrichtigungen nicht korrekt für den Microsoft Teams Webhook formatieren. Diese Einschränkung macht den Einsatz von Prometheus-MSTeams erforderlich, das die POST-Alarmmeldungen von Prometheus Alertmanager in ein mit Teams kompatibles Format umwandelt. In unserem Setup werden wir Prometheus-MSTeams mithilfe eines Helm-Diagramms in Kubernetes bereitstellen, um eine nahtlose Integration und ein effizientes Alarmmanagement innerhalb Ihres Kubernetes-Clusters zu gewährleisten.
Schritt 1: Prometheus-MSTeams Chart herunterladen und installieren
Laden Sie die Tabelle herunter:
helm repo add prometheus-msteams https://prometheus-msteams.github.io/prometheus-msteams/
Installieren Sie die Karte:
helm upgrade --install msteams prometheus-msteams/prometheus-msteams -n monitoring
Nach der Installation müssen Sie unbedingt überprüfen, ob die Pods und die Bereitstellung korrekt ausgeführt werden. Dazu können Sie die folgenden Befehle ausführen:
Überprüfen Sie den Status der Bereitstellung:
kubectl get deployments -n monitoring

Überprüfen Sie den Status der Pods:
kubectl get pods -n monitoring

Überprüfen Sie den Status der Dienste:
kubectl get svc -n monitoring

Schritt 2: Erstellen Sie einen neuen Kanal in MS Teams
Um den neuen Kanal zu konfigurieren, navigieren Sie einfach zu "Connectors", fügen einen "Incoming Webhook" hinzu und geben einen Namen Ihrer Wahl an.


Kopieren Sie die URL und speichern Sie sie.

Schritt 3: Konfiguration des Connectors für den Teams-Kanal in Prometheus-MSTeams hinzufügen
Wir müssen die ConfigMap für die Prometheus-MSTeams-Konfiguration bearbeiten:
kubectl edit cm prometheus-msteams-config -n monitoring

In diesem Schritt konfigurieren wir einen neuen Konnektor mit dem Namen "alertmanager-teams" in Prometheus-MSTeams, wobei wir die eingehende Webhook-URL verwenden, die zuvor in Microsoft Teams erstellt wurde.
Schritt 4: Konfigurieren Sie den Alertmanager so, dass er den neuen Connector als Empfänger verwendet
http://prometheus-msteams:2000/alertmanager-teams als Empfänger für MS Teams hinzufügen.

Erläuterung der URL:
Die URL "http://prometheus-msteams:2000/alertmanager-teams" gibt an, wie Alertmanager Alarme an Prometheus-MSTeams sendet, die für Microsoft Teams-Benachrichtigungen formatiert sind:
http://prometheus-msteams: This is the hostname of the Prometheus-MSTeams service in your Kubernetes cluster, assuming it’s accessible via the service name prometheus-msteams.
:2000: Dies ist die Portnummer, an der Prometheus-MSTeams auf eingehende Alarme wartet, hier konfiguriert als Port 2000.
alertmanager-teams: Dieser Pfad stellt den Namen des Konnektors (Endpunkts) in Prometheus-MSTeams dar, von dem er Alarme erwartet.
Schritt 5: Bestätigen Sie, dass Alertmanager Alarme an den Teams-Kanal sendet
Nachdem Sie Alertmanager mit dem neuen Connector als Empfänger konfiguriert haben, ist es wichtig, dass Sie überprüfen, ob die Benachrichtigungen korrekt an Ihren Microsoft Teams-Kanal gesendet werden.


Schlussfolgerung
Die Integration von Alertmanager mit Microsoft Teams über Prometheus-MSTeams stellt sicher, dass Alerts korrekt formatiert und effizient an Ihre Teams-Kanäle übermittelt werden. Diese Integration verbessert die Fähigkeit Ihres Teams, umgehend auf Probleme innerhalb Ihres Kubernetes-Clusters zu reagieren.
Entdecken Sie die Dienstleistungen von ITGix und erfahren Sie mehr über unser Know-how.

