Damit der Telegraf-Agent Metriken für einige der Anwendungsdienste erfassen kann, müssen Sie Änderungen auf den Zielmaschinen vornehmen. Nachdem Sie diese Änderungen vorgenommen haben, startet der Agent die Erfassung von Metriken. Sie müssen über SSH eine sichere Verbindung zu der virtuellen Maschine herstellen, auf der Sie den Agenten bereitgestellt haben, und die Konfigurationsdateien ändern.
Apache HTTPD
Damit der Agent Metriken erfasst, ändern Sie die Konfigurationsdatei unter /etc/httpd/conf.modules.d/status.conf, und aktivieren Sie den mod_status für das HTTPD-Plug-In.
<IfModule mod_status.c> <Location /server-status> SetHandler server-status </Location> ExtendedStatus On </IfModule>
Wenn die Konfigurationsdatei nicht verfügbar ist, müssen Sie eine erstellen. Starten Sie den HTTPD-Dienst nach der Änderung der Konfigurationsdatei mit dem folgenden Befehl neu:
systemctl restart httpd
Java-Anwendung
Die Unterstützung für die Java-Anwendungsüberwachung ist derzeit auf Anwendungen beschränkt, die jolokia-basierte JMX-Überwachung unterstützen. Derzeit werden im Rahmen der Java-Plug-In-Aktivierung die beiden Dateien „jolokia.jar“ und „jolokia.war“ im „Installationspfad“ abgelegt. Wenn es sich bei der zu überwachenden Java-Anwendung um einen Servlet-Container handelt, wird die Datei „jolokia.war“ automatisch in dem „Installationspfad“ bereitgestellt, den Sie bei der Konfiguration der Java-Anwendung in VMware Aria Operations angegeben haben. Wenn die automatische Bereitstellung nicht unterstützt wird oder nicht aktiviert ist, starten Sie die Anwendung nach der Aktivierung des Plug-Ins neu oder lesen Sie die Produktdokumentation der Anwendung für die manuelle Bereitstellung der WAR-Datei.
Aktivieren Sie für alle anderen Java-Anwendungen zuerst das Plug-In und fügen Sie dann den Pfad zur Datei „jolokia.jar“ unter "-javaagent:" JVM-Flag als Befehlszeilenparameter hinzu. Beispiel: In "-javaagent:/<path_to_jolokia>/jolokia.jar" steht <path_to_jolokia> für den „Installationspfad“, der bei der Anwendungskonfiguration angegeben wurde. Starten Sie die Anwendung neu.
- Die Jolokia-basierte JMX-Überwachung wird unterstützt.
- Wenn Auto Deploy deaktiviert ist, wird die manuelle .war-Bereitstellung für die Servlet-Containeranwendung unterstützt.
- "- javaagent:" JVM-Flag wird als Teil des Befehlszeilenparameters (JVM_OPTS) hinzugefügt
Nginx
Fügen Sie die folgenden Zeilen zur Konfigurationsdatei unter /etc/nginx/nginx.conf hinzu:
http { server { location /status { stub_status on; access_log off; allow all; } } }
Starten Sie den Nginx-Dienst mit dem folgenden Befehl neu:
systemctl restart nginx
Postgres
Ändern Sie in der Konfigurationsdatei unter /var/lib/pgsql/data/pg_hba.conf den Wert von local all postgres peer
in local all postgres md5
, und starten Sie den Dienst mit dem folgenden Befehl neu:
sudo service postgresql restart
Cassandra
Zum Überwachen der Anwendung „Cassandra-Datenbank“ muss das Jolokia jar als JVM-Eingabe in der Cassandra-Datenbankanwendung enthalten sein. Führen Sie die folgenden Schritte aus:
Ändern Sie /etc/default/cassandra.
echo "export JVM_EXTRA_OPTS=\"-javaagent:/usr/share/java/jolokia-jvm-1.6.0-agent.jar=port=8778,host=localhost\"" | sudo tee -a /etc/default/cassandra
Hinweis:Sie können die aktuelle Version des Jolokia-Agenten von https://jolokia.org/download.html herunterladen. Bei einer Bereitstellung einer JAR-Datei müssen Sie den Anwendungsdienst neu starten, nachdem Sie den vollständigen Dateipfad der JAR-Datei in das JMX-Argument des JAVA-Prozesses eingeschlossen haben, den Sie überwachen.
Alternativ können Sie den Agenten aktivieren, indem Sie die Datei cassandra-env.sh ändern. Fügen Sie die folgende Zeile am Ende der cassandra-env.shein:
JVM_OPTS="$JVM_OPTS -javaagent:/usr/share/java/jolokia-jvm-1.6.0-agent.jar=port=8778,host=localhost"
Nachdem Sie die Eingaben der JVM angezeigt bekommen, starten Sie den Dienst Cassandra neu.
Oracle-Datenbank
Zum Überwachen der Oracle-Datenbank führen Sie die folgenden Schritte aus:
Laden Sie die Instant-Clientbibliothek herunter. Sie finden Sie unter: https://www.oracle.com/database/technologies/instant-client/downloads.html.
Sie müssen die Oracle Instant Library herunterladen und in den PFAD aufgenommen haben.
- Installieren Sie Python 3.6 oder höher. Installieren Sie das cx_Oracle-Modul.
python3 -m pip install cx_Oracle --upgrade
Erstellen Sie einen Benutzer.
CREATE USER <UserName> IDENTIFIED BY <yourpassword>; GRANT select_catalog_role TO <UserName>; GRANT CREATE SESSION TO <UserName>;
- Für eine Windows-VM:
- Fügen Sie den Pfad der Oracle Instant Client-Bibliothek und den Python-Pfad an die PATH-Umgebungsvariable an.
- Installieren Sie den ARC Agent.
- Für eine Linux-VM:
- Installieren Sie den ARC Agent.
- Rufen Sie die Datei exec_oracle_python.sh(wget --no-check-certificate https://<CP_IP>/downloads/salt/content-accessories/exec_oracle_python.sh) von /opt/vmware/ucp/ ab.
- Füllen Sie /opt/vmware/ucp/exec_oracle_python.sh mit absoluten Werten für LD_LIBRARY_PATH, ORACLE_HOME, PYTHON_BIN und TNS_ADMIN aus.
LD_LIBRARY_PATH: Pfad zur Oracle Instant Client-Bibliothek. Beispiel: /opt/vmware/ucp/instantclient_21_4.
ORACLE_HOME: Verzeichnis im Dateisystem, in dem die Oracle-Software installiert ist. Beispiel: /u01/app/oracle/product/19.3.0/dbhome_1/.
PYTHON_BIN: Pfad zur ausführbaren Python-Datei. Beispiel: /usr/bin/python.
TNS_ADMIN: Umgebungsvariable, die auf das Verzeichnis verweist, in dem sich die SQL*Net-Konfigurationsdateien befinden. Beispiel: /u01/app/oracle/product/19.3.0/dbhome_1/network/admin.
- Aktivieren Sie das Oracle DB-Plug-In.
Active MQ 5.16 und höhere Versionen
Um Active MQ 5.16 und höhere Versionen zu aktivieren, führen Sie die folgenden Schritte aus:
Navigieren Sie zu /opt/activemq/apache-activemq-5.16.0/webapps/api/WEB-INF/classes/jolokia-access.xml
Entfernen Sie die folgenden Zeilen oder wandeln Sie sie in Kommentare um:
<cors> <strict-checking/> </cors>
Aktivieren Sie den Active MQ-Dienst.
Microsoft SQL Server
Das Benutzerkonto muss über die folgenden Berechtigungen verfügen, um den Microsoft SQL Server-Anwendungsdienst mit Telegraf zu überwachen.
USE master; GO CREATE LOGIN [telegraf] WITH PASSWORD = N'mystrongpassword'; GO GRANT VIEW SERVER STATE TO [telegraf]; GO GRANT VIEW ANY DEFINITION TO [telegraf]; GO