Erfassen von benutzerdefinierten Metriken für eine Linux-VM mit dem InfluxData Telegraf-Agent
In diesem Artikel wird erklärt, wie Sie den Telegraf-Agent InfluxData auf einem virtuellen Linux-Computer so bereitstellen und konfigurieren, dass dieser Daten an Azure Monitor sendet.
Hinweis
InfluxData Telegraf ist ein Open-Source-Agent und wird nicht offiziell von Azure Monitor unterstützt. Weitere Informationen zu Problemen mit dem Telegraf-Connector finden Sie auf der GitHub-Seite von Telegraf unter InfluxData.
InfluxData Telegraf-Agent
Telegraf ist ein Plug-In-gesteuerter Agent zur Erfassung von Metriken aus über 150 verschiedenen Quellen. Abhängig von den Workloads, die auf Ihrer VM ausgeführt werden, können Sie den Agent für die Verwendung spezieller Eingabe-Plug-Ins konfigurieren, um Metriken zu erfassen. Beispiele sind NGINX, MySQL und Apache. Über Ausgabe-Plug-Ins kann der Agent dann Schreibvorgänge an von Ihnen gewählten Zielen ausführen. Der Telegraf-Agent arbeitet direkt mit der Azure Monitor-REST-API für benutzerdefinierte Metriken zusammen. Er unterstützt ein Azure Monitor-Ausgabe-Plug-In. Über dieses Plug-In kann der Agent workloadspezifische Metriken auf Ihrer Linux-VM erfassen und als benutzerdefinierte Metriken an Azure Monitor übermitteln.
Herstellen der Verbindung zur VM
Erstellen Sie eine SSH-Verbindung mit der VM, auf der Sie Telegraf installieren möchten. Wählen Sie auf der Seite „Übersicht“ des virtuellen Computers die Schaltfläche Verbinden aus.
Übernehmen Sie auf der Seite zum Herstellen der Verbindung mit dem virtuellen Computer die Standardoptionen, um basierend auf dem DNS-Namen eine Verbindung über Port 22 herzustellen. Unter Mit lokalem VM-Konto anmelden wird ein Verbindungsbefehl angezeigt. Wählen Sie die Schaltfläche aus, um den Befehl zu kopieren. Das folgende Beispiel zeigt den Befehl für die SSH-Verbindung:
ssh azureuser@XXXX.XX.XXX
Fügen Sie den Befehl für die SSH-Verbindung in eine Shell wie Azure Cloud Shell oder Bash unter Ubuntu/Windows ein, oder verwenden Sie einen SSH-Client Ihrer Wahl, um die Verbindung zu erstellen.
Installieren und Konfigurieren von Telegraf
Führen Sie die folgenden Befehle über Ihre SSH-Sitzung aus, um das Debian-Paket für Telegraf auf dem virtuellen Computer zu installieren:
Fügen Sie das Repository hinzu:
# download the package to the VM
curl -s https://repos.influxdata.com/influxdb.key | sudo apt-key add -
source /etc/lsb-release
sudo echo "deb https://repos.influxdata.com/${DISTRIB_ID,,} ${DISTRIB_CODENAME} stable" | sudo tee /etc/apt/sources.list.d/influxdb.list
sudo curl -fsSL https://repos.influxdata.com/influxdata-archive_compat.key | sudo apt-key --keyring /etc/apt/trusted.gpg.d/influxdata-archive_compat.gpg add
Installiere das Paket:
sudo apt-get update
sudo apt-get install telegraf
Die Konfigurationsdatei von Telegraf definiert die Vorgänge von Telegraf. Standardmäßig wird eine Beispielkonfigurationsdatei unter dem Pfad /etc/telegraf/telegraf/telegraf.conf installiert. Die Beispielkonfigurationsdatei listet alle möglichen Ein- und Ausgabe-Plug-Ins auf. Wir erstellen jedoch eine benutzerdefinierte Konfigurationsdatei und sorgen dafür, dass der Agent diese Datei verwendet. Hierzu verwenden wir folgende Befehle:
# generate the new Telegraf config file in the current directory
telegraf --input-filter cpu:mem --output-filter azure_monitor config > azm-telegraf.conf
# replace the example config with the new generated config
sudo cp azm-telegraf.conf /etc/telegraf/telegraf.conf
Hinweis
Der obige Code aktiviert lediglich zwei Eingabe-Plug-Ins: cpu und mem. Sie können weitere Eingabe-Plug-Ins hinzufügen – je nachdem, welche Workload auf Ihrem Computer ausgeführt wird. Beispiele wären Docker, MySQL und NGINX. Eine vollständige Liste der Eingabe-Plug-Ins finden Sie im Abschnitt Zusätzliche Konfiguration.
Damit der Agent die neue Konfiguration verwenden kann, erzwingen wir mithilfe der folgenden Befehle einen Neustart des Agents:
# stop the telegraf agent on the VM
sudo systemctl stop telegraf
# start and enable the telegraf agent on the VM to ensure it picks up the latest configuration
sudo systemctl enable --now telegraf
Nun sammelt der Agent die Metriken von jedem der angegebenen Eingabe-Plug-Ins und sendet sie an Azure Monitor.
Darstellen der Telegraf-Metriken im Azure-Portal
Öffnen Sie das Azure-Portal.
Navigieren Sie zur neuen Registerkarte Überwachen. Wählen Sie dann Metriken aus.
Wählen Sie in der Ressourcenauswahl Ihren virtuellen Computer aus.
Wählen Sie den Namespace Telegraf/CPU und die Metrik usage_system aus. Sie können nach den Dimensionen dieser Metrik filtern oder eine entsprechende Aufteilung vornehmen.
Zusätzliche Konfiguration
Die obige exemplarische Vorgehensweise enthält Informationen dazu, wie Sie den Telegraf-Agent konfigurieren, um Metriken aus einigen wenigen grundlegenden Eingabe-Plug-Ins zu erfassen. Der Telegraf-Agent unterstützt über 150 Eingabe-Plug-Ins, von denen wiederum einige zusätzliche Konfigurationsoptionen unterstützen. InfluxData hat eine Liste der unterstützten Plug-Ins und Anweisungen zu deren Konfiguration veröffentlicht.
Darüber hinaus haben Sie in dieser exemplarischen Vorgehensweise mithilfe des Telegraf-Agents Metriken zu dem virtuellen Computer ausgegeben, auf dem der Agent bereitgestellt wurde. Der Telegraf-Agent kann auch als Collector und zur Weiterleitung von Metriken für andere Ressourcen verwendet werden. Informationen zur Konfiguration des Agent für die Ausgabe von Metriken für andere Azure-Ressourcen finden Sie im Artikel zur benutzerdefinierten Metrikausgabe von Azure Monitor für Telegraf.
Bereinigen von Ressourcen
Wenn die Ressourcengruppe, der virtuelle Computer und die dazugehörigen Ressourcen nicht mehr benötigt werden, können Sie sie löschen. Wählen Sie hierzu die Ressourcengruppe für den virtuellen Computer und anschließend Löschen aus. Bestätigen Sie dann den Namen der zu löschenden Ressourcengruppe.
Nächste Schritte
- Erfahren Sie mehr über benutzerdefinierte Metriken.