使用 InfluxData Telegraf 代理程式收集 Linux VM 的自定義計量

警告

這篇文章參考 CentOS,這是接近生命週期結束 (EOL) 狀態的 Linux 發行版本。 請據以考慮您的使用方式和規劃。 如需詳細資訊,請參閱 CentOS 生命週期結束指引

本文說明如何在Linux虛擬機上部署及設定 InfluxData Telegraf代理程式,以將計量傳送至 Azure 監視器。

注意

InfluxData Telegraf 是 開放原始碼 代理程式,Azure 監視器未正式支援。 如需 Telegraf 連接器的問題,請參閱 Telegraf GitHub 頁面: InfluxData

InfluxData Telegraf 代理程式

Telegraf 是外掛程式驅動代理程式,可從超過 150 個不同來源收集計量。 視 VM 上執行的工作負載而定,您可以將代理程式設定為使用特製化輸入外掛程式來收集計量。 範例包括 MySQL、NGINX 和 Apache。 藉由使用輸出外掛程式,代理程式就可以寫入您選擇的目的地。 Telegraf 代理程式已直接與 Azure 監視器自定義計量 REST API 整合。 它支援 Azure 監視器輸出外掛程式。 使用此外掛程式,代理程式可以在 Linux VM 上收集工作負載特定的計量,並將其作為自定義計量提交至 Azure 監視器。

顯示 Telegraph 代理程式概觀的圖表。

連線至 VM

建立要安裝Telegraf之 VM 的 SSH 連線。 選取虛擬機概觀頁面上的 [連線] 按鈕。

[虛擬機概觀] 頁面的螢幕快照,其中已醒目提示 [聯機] 按鈕。

在 [連線 至虛擬機] 頁面中,保留透過埠 22 依 DNS 名稱連線的預設選項。 在 [使用 VM 本機帳戶登入] 中,會顯示連線命令。 選取按鈕以複製命令。 下列範例顯示 SSH 連線命令的外觀:

ssh azureuser@XXXX.XX.XXX

將 SSH 連線命令貼到殼層中,例如 Windows 上的 Ubuntu 上的 Azure Cloud Shell 或 Bash,或使用您選擇的 SSH 用戶端來建立連線。

安裝和設定Telegraf

若要將 Telegraf Debian 套件安裝到 VM 上,請從 SSH 工作階段執行下列命令:

新增存放庫:

# 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

安裝套件:

   sudo apt-get update
   sudo apt-get install telegraf

Telegraf 的組態檔會定義Telegraf的作業。 根據預設,範例組態檔會安裝在路徑 /etc/telegraf/telegraf.conf。 範例組態檔會列出所有可能的輸入和輸出外掛程式。不過,我們將建立自定義組態檔,並讓代理程式執行下列命令來使用它:

# 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

注意

上述程式代碼只啟用兩個輸入外掛程式: cpumem。 視在計算機上執行的工作負載而定,您可以新增更多輸入外掛程式。 範例包括 Docker、MySQL 和 NGINX。 如需輸入外掛程式的完整清單,請參閱 其他組態 一節。

最後,若要讓代理程序開始使用新的組態,我們會強制代理程式停止並啟動,方法是執行下列命令:

# 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

現在代理程式會從指定的每個輸入外掛程式收集計量,並將其發出至 Azure 監視器。

在 Azure 入口網站 中繪製您的 Telegraf 計量

  1. 開啟 Azure 入口網站

  2. 流覽至新的 [監視] 索引標籤 。然後選取 [ 計量]。

  3. 在資源選取器中選取您的 VM。

  4. 選取 Telegraf/CPU 命名空間,然後選取 usage_system 計量。 您可以選擇依此計量上的維度進行篩選,或加以分割。

    顯示已選取電報計量的計量圖表螢幕快照。

其他設定

上述逐步解說提供如何設定 Telegraf 代理程式以從幾個基本輸入外掛程式收集計量的資訊。Telegraf 代理程式支持超過 150 個輸入外掛程式,有些支援其他組態選項。 InfluxData 已發佈支援的外掛程式清單,以及如何設定這些外掛程式的指示。

此外,在本逐步解說中,您已使用Telegraf代理程式發出部署代理程式之 VM 的相關計量。 Telegraf 代理程式也可以做為其他資源的計量收集器和轉寄站。 若要瞭解如何設定代理程式來發出其他 Azure 資源的計量,請參閱 Telegraf 的 Azure 監視器自定義計量輸出。

清除資源

不再需要它們時,您可以刪除資源群組、虛擬機和所有相關資源。 若要這樣做,請選取虛擬機的資源群組,然後選取 [ 刪除]。 然後確認要刪除的資源群組名稱。

下一步