Was ist Prometheus?

1. Was ist Prometheus?

Prometheus ist ein Open-Source-Überwachungs- und Warnsystem, das verteilte Systeme überwachen und alarmieren kann. Es handelt sich um ein speicherunabhängiges Zeitreihen-Datenverwaltungssystem, mit dem Sie Daten zu Ihren Anwendungen einfach abfragen, analysieren und alarmieren können.
Prometheus verfügt über eine leistungsstarke Abfragesprache und Visualisierungstools, die Ihnen helfen, den Zustand Ihres Systems schnell zu verstehen.
Cloud Native kann Smart Cloud (kostenpflichtig) nutzen.

2. Hauptfiguren

Prometheus-Server: Verantwortlich für das Sammeln, Speichern und Abfragen von Überwachungsdaten.
Exporteur: Verantwortlich für das Sammeln von Überwachungsdaten verschiedener Anwendungen und deren Bereitstellung für den Prometheus-Server.
Alertmanager: Verantwortlich für die Verarbeitung von Alarminformationen und das Versenden von Benachrichtigungen.

3. Beteiligte Rollen und ihre Funktionen

Prometheus-Server: Verantwortlich für das Sammeln, Speichern und Abfragen von Überwachungsdaten.
Zu seinen Hauptfunktionen gehören:
Sammeln von Überwachungsdaten, die vom Exporteur bereitgestellt werden.
Speichern und verwalten Sie Zeitreihendaten.
Bietet PromQL-Abfragesprache und Visualisierungstools.

Exporteur: Verantwortlich für das Sammeln von Überwachungsdaten verschiedener Anwendungen und deren Bereitstellung für den Prometheus-Server.
Zu seinen Hauptfunktionen gehört
das Sammeln von Anwendungsüberwachungsdaten und deren Konvertierung in das Prometheus-Format.
Stellen Sie dem Prometheus-Server Überwachungsdaten zur Verfügung.

Alertmanager: Verantwortlich für die Verarbeitung von Alarminformationen und das Versenden von Benachrichtigungen.
Zu den Hauptfunktionen gehören:
Überwachung von Alarmregeln und Senden von Benachrichtigungen, wenn ein Alarm ausgelöst wird.
Warnmeldungen verarbeiten und verwalten.

4. Der beste Weg, zwischen Charakteren zu kommunizieren

Exporter和Prometheus Server之间的通信是通过HTTP协议实现的,而Alertmanager和Prometheus Server之间的通信也是通过HTTP协议实现的。

5. Zu überwachende Indikatoren

Systemressourcenindikatoren wie CPU-Auslastung, Speichernutzung, Netzwerkverkehr usw.
Anwendungsmetriken wie Bearbeitungszeit der Anfrage, Erfolgsquote der Anfrage, Fehlerquote usw.
Speicherindikatoren wie Festplattennutzung, Speicherkapazität usw.

6. Prozess und seine Hauptfunktionen

Prometheus-Server: Verantwortlich für das Sammeln, Speichern und Abfragen von Überwachungsdaten. Zu den Hauptprozessen gehören:
Prometheus-Serverprozess: Wird zum Sammeln von vom Exporter bereitgestellten Überwachungsdaten, zum Speichern und Verwalten von Zeitreihendaten, zum Bereitstellen von PromQL-Abfragesprache und Visualisierungstools usw. verwendet.
Exporteur: Verantwortlich für das Sammeln von Überwachungsdaten verschiedener Anwendungen und deren Bereitstellung für den Prometheus-Server. Zu den Hauptprozessen gehören:
Exporter-Prozess: Wird zum Sammeln der Überwachungsdaten der Anwendung und zum Konvertieren in das Prometheus-Format sowie zum Bereitstellen der Überwachungsdaten an den Prometheus-Server usw. verwendet.
Alertmanager: Verantwortlich für die Verarbeitung von Alarminformationen und das Versenden von Benachrichtigungen. Zu den Hauptprozessen gehören:
Alertmanager-Prozess: Wird zur Überwachung von Alarmregeln, zur Verarbeitung und Verwaltung von Alarminformationen usw. verwendet.

7. Wie kann jede Komponente in einem Hadoop-Cluster am umfassendsten überwacht werden?

In einem Hadoop-Cluster kann Prometheus zur Überwachung verschiedener Komponenten eingesetzt werden. Für Hadoop-bezogene Komponenten muss der entsprechende Exporter zum Sammeln von Überwachungsdaten verwendet werden. Im Folgenden sind einige häufig verwendete Exporter aufgeführt:
Knotenexporter: Wird zum Sammeln von Systemressourcenindikatoren der Maschine verwendet.
JMX-Exporter: Wird zum Sammeln von JMX-Indikatoren von Java-Anwendungen wie Hadoop, HBase usw. verwendet.
Kafka-Exporter: Wird zum Sammeln von Kafka-Indikatoren verwendet.
ZooKeeper-Exporter: Wird zum Sammeln von ZooKeeper-Indikatoren verwendet.
YARN Exporter: Wird zum Sammeln von YARN-Indikatoren verwendet.
HDFS-Exporter: Wird zum Sammeln von HDFS-Indikatoren verwendet.
Hive-Exporter: Wird zum Sammeln von Hive-Indikatoren verwendet.
HBase Exporter: Wird zum Sammeln von HBase-Indikatoren verwendet.
Wenn Sie Prometheus zur Überwachung eines Hadoop-Clusters verwenden, müssen Sie den Exporter und die entsprechenden Warnregeln konfigurieren und diese in Prometheus Server und Alertmanager integrieren. Dies ermöglicht eine umfassende Überwachung und Alarmierung des Hadoop-Clusters.

Prometheus umfasst hauptsächlich die folgenden Prozesse:

  1. Prometheus-Serverprozess: Der Kernprozess von Prometheus, der für das Abrufen und Speichern von Überwachungsdaten, das Ausführen von Alarmregeln und die Bereitstellung von API-Schnittstellen zum Abfragen und Anzeigen von Überwachungsdaten verantwortlich ist.
  2. Alertmanager-Prozess: Verantwortlich für den Empfang und die Verarbeitung der vom Prometheus-Server gesendeten Alarminformationen sowie für die Durchführung von Alarmbenachrichtigungs- und -verarbeitungsvorgängen.
  3. Pushgateway-Prozess: Bietet ein Gateway zum vorübergehenden Speichern und Übertragen von Indikatordaten, um einige kurzfristige Aufgaben oder Stapelverarbeitungsaufgaben zu erleichtern, um Indikatordaten zur Statistik und Überwachung an Prometheus zu übertragen.
  4. Exporterprozess: Wird zum Exportieren von Überwachungsdaten anderer Systeme oder Anwendungen in ein Format verwendet, das Prometheus lesen kann, z. B. zum Exportieren von Betriebssystemindikatordaten in Indikatordaten im Prometheus-Format.
  5. Prometheus-Web-UI-Prozess: Bietet eine visuelle Verwaltungs- und Überwachungsschnittstelle, um die Benutzerbedienung und -verwaltung zu erleichtern.

おすすめ

転載: blog.csdn.net/Wxh_bai/article/details/130050208