So überwachen Sie mehrere JVM-Prozesse in Zabbix

So überwachen Sie mehrere JVM-Prozesse in Zabbix

1. Szenariobeschreibung:

Unsere Umgebung verwendet Microservices. Jedes Programm hat einen separaten Prozess und eine separate Portnummer. Einige Ergebnisse der JPS-Abfrage können jedoch doppelte Namen aufweisen, sodass einige Skripte für dieses Szenario nicht geeignet sind.

2. Voraussetzungen:

Zur Überwachung des JVM-Prozesses auf jedem Agenten muss ein Zabbix-Server verwendet werden (die Überwachungselemente werden speziell in der Vorlage angezeigt).

3. Bereiten Sie die Umgebung vor:

1.jvm.py-Skript (kein Original, direkt von Github kopiert, die Github-Adresse ist hier angehängt, Sie können direkt zur Zieladresse gehen, um die entsprechenden Anweisungen anzuzeigen)

2. https://github.com/qiueer/zabbix/blob/master/Tomcat/usage.txt (zabbix/Tomcat/{jvm.py|Qiueer-Template JMX Generic.xml} Vorlage und Skriptadresse)

3.jdk-8u201-linux-x64.tar.gz

4.Iptables konfigurieren oder deaktivieren

4. Formale Installation

1. Installieren Sie JDK auf jedem Agenten und konfigurieren Sie Umgebungsvariablen (zuerst in das angegebene Verzeichnis hochladen). Jeder Agent führt die folgenden Vorgänge aus.

~]# tar zxvf jdk-8u201-linux-x64.tar.gz
~]# vim /etc/profile // Fügen Sie den folgenden Inhalt hinzu #JAVA-Umgebungsvariable export JAVA_HOME=/usr/local/jdk1.8.0_201
  exportiere JRE_HOME=${JAVA_HOME}/jre
  export CLASSPATH=.:${JAVA_HOME}/lib:${JRE_HOME}/lib:$CLASSPATH
  export JAVA_PATH=${JAVA_HOME}/bin:${JRE_HOME}/bin
  export PATH=$PATH:${JAVA_PATH}
~]# Quelle /etc/Profil
~]# ln -s /usr/local/jdk1.8.0_201/bin/java /bin/java // Wenn Sie diesen Link nicht erstellen, können Sie einige Informationen über JVM nicht abrufen.

2. Laden Sie cmdline und jvm.py zum Testen in das angegebene Verzeichnis hoch (dies muss jeder Agent tun).

zabbix_agentd.d]# Kennwort
  /etc/zabbix/zabbix_agentd.d
zabbix_agentd.d]# mkdir-Skript
Skript]#ll
  -rw-r--r-- 1 wenkai person 20124 10. September 18:55 cmdline-jmxclient-0.10.3.jar // Hochladen in das Verzeichnis /etc/zabbix/zabbix_agentd.d/script -rw-r-xr-x 1 root root 13941 10. September 18:57 jvm.py
script]# python jvm.py --list // Wenn Daten im JSON-Format gefunden werden können, ist das Skript verfügbar script]# python jvm.py -b 'java.lang:type=Memory' -k 'HeapMemoryUsage.committed' -p 30497
1020067840

3. Konfigurieren Sie die Weboberflächenvorlage, laden Sie die Vorlage Qiueer-Template JMX Generic.xml auf den lokalen Computer herunter und importieren Sie sie in Zabbix, um eine neue Vorlage zu erstellen. Die Vorlage ist mit automatischen Erkennungsregeln, verschiedenen Überwachungselementen und Triggern ausgestattet.

4. Warten Sie nach Abschluss der Konfiguration einen Moment, um die Daten auf dem überwachten Host wie folgt zu finden …

Hinweis: Einige Überwachungselemente in der Vorlage sind auf unsere Dienste nicht anwendbar und können hier deaktiviert werden.

Zusammenfassen

Oben ist die vom Herausgeber vorgestellte Methode zur Überwachung mehrerer JVM-Prozesse durch Zabbix. Ich hoffe, sie ist für alle hilfreich. Wenn Sie Fragen haben, hinterlassen Sie mir bitte eine Nachricht und der Herausgeber wird Ihnen rechtzeitig antworten. Ich möchte auch allen für ihre Unterstützung der Website 123WORDPRESS.COM danken!
Wenn Sie diesen Artikel hilfreich finden, können Sie ihn gerne abdrucken und dabei bitte die Quelle angeben. Vielen Dank!

Das könnte Sie auch interessieren:
  • So überwachen Sie Oracle-Datenbanken mit Zabbix Agent2
  • So stellen Sie zabbix_agent in Docker bereit
  • Installations- und Konfigurationsmethode von Zabbix Agent auf der Linux-Plattform
  • Installieren und konfigurieren Sie Zabbix Agentd unter Windows
  • Zabbix implementiert Batch-Überwachung des Portstatus
  • Detaillierter Ablauf des Zabbix-Überwachungsprozesses und des Port-Through-Agenten

<<:  Eine kurze Diskussion über 12 klassische Probleme in Angular

>>:  Detaillierte Erläuterung verschiedener Möglichkeiten zum Exportieren von Daten in Mysql

Artikel empfehlen

Anzeigen und Analysieren des MySQL-Ausführungsstatus

Wenn Sie den Eindruck haben, dass ein Problem mit...

HTML-Tabellen-Markup-Tutorial (14): Tabellenkopf

<br />In der HTML-Sprache können Sie der Tab...

Detaillierte Einführung in den HTML-Head-Tag

Der HTML-Kopfteil enthält viele Tags und Elemente,...

So verwenden Sie display:olck/none zum Erstellen einer Menüleiste

Die Auswirkung der Vervollständigung einer Menüle...

Analyse der Implementierung der MySQL-Anweisungssperre

Zusammenfassung: Analyse von zwei MySQL SQL-Anwei...

Eine Minute, um die Laufruhe von HTML+Vue+Element-UI zu erleben

Technik-Fan html-Webseite, müssen Sie wissen Von ...

Grundlegende Anwendungsmethoden für eingebettete und externe JavaScript-Links

Inhaltsverzeichnis Grundlegende Anwendung eingebe...

Wie MySQL implizite Standardwerte verarbeitet

Einige Studenten sagten, dass sie auf das Problem...

Einrichten der React-Native-Umgebung und grundlegende Einführung

Umgebungsvorbereitung 1. Umweltkonstruktion React...

MySQL-Abfrageoptimierung: Ursachen und Lösungen für langsame Abfragen

Freunde, die in der Entwicklung tätig sind, insbe...

Eine kurze Einführung in die MySQL-Speicher-Engine

1. MySql-Architektur Bevor wir die Speicher-Engin...