この記事では、InfluxData Telegraf エージェントを Linux 仮想マシンにデプロイして構成し、Azure Monitor にメトリックを送信する方法について説明します。
注
InfluxData Telegraf はオープンソース エージェントであり、Azure Monitor で正式にはサポートされていません。 Telegraf コネクタに関する問題については、InfluxData で Telegraf の GitHub ページをご覧ください
InfluxData Telegraf エージェント
Telegrafは、150 を超えるさまざまなソースからのメトリックの収集を可能にする、プラグイン駆動型エージェントです。 Linux 仮想マシン (VM) で実行されるワークロードに応じて、特殊な入力プラグインを使用してメトリックを収集するようにエージェントを構成できます。 たとえば、MySQL、NGINX、および Apache があります。 出力プラグインを使用することで、エージェントは選択した出力先に出力できます。 Telegraf エージェントは Azure Monitor のカスタム メトリック REST API と直接統合されます。 また、Azure Monitor 出力プラグインをサポートします。 このプラグインを使用すると、エージェントは Linux VM でワークロード固有のメトリックを収集し、カスタム メトリックとして Azure Monitor に送信できます。
VM に接続します
Telegraf をインストールする VM への SSH 接続を作成します。 仮想マシンの概要ページで [接続] ボタンを選択します。
[ 仮想マシンへの接続 ] ページで、ポート 22 経由でドメイン ネーム システム (DNS) 名で接続するための既定のオプションをそのまま使用します。 [VM ローカル アカウントを使用してログインする] に、接続コマンドが表示されます。 コマンドをコピーするには、ボタンを選択します。 SSH 接続コマンドの例を次に示します。
ssh azureuser@XXXX.XX.XXX
Azure Cloud Shell や Bash on Ubuntu on Windows などのシェルに SSH 接続コマンドを貼り付けるか、または任意の SSH クライアントを使用して接続を作成します。
Telegraf をインストールして構成する
VM に Telegraf Debian パッケージをインストールするには、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
注
上記のコードでは、 cpu と memの 2 つの入力プラグインのみが有効になります。 コンピューター上で実行されるワークロードに応じて、さらに多くの入力プラグインを追加できます。 たとえば、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 Monitor に出力するようになります。
Azure portal で Telegraf メトリックをグラフ化する
Azure Portalを開きます。
新しい [監視] タブに移動します。次に、 [メトリック] を選択します。
リソース セレクターで VM を選択します。
[Telegraf/CPU] 名前空間を選択し、 [usage_system] メトリックを選択します。 このメトリックをディメンションによってフィルター処理したり、分割したりすることを選択できます。
その他の構成
前のチュートリアルでは、いくつかの基本的な入力プラグインからメトリックを収集するように Telegraf エージェントを構成する方法について説明します。Telegraf エージェントでは、150 を超える入力プラグインがサポートされており、その他の構成オプションもサポートされています。 InfluxData は、 サポートされているプラグインの一覧 と 、それらを構成する方法の手順を公開しました。
また、このチュートリアルでは、Telegraf エージェントを使用して、エージェントがデプロイされている VM に関するメトリックを出力しました。 Telegraf エージェントは、他のリソースのメトリックのコレクターとフォワーダーとして使用することもできます。 他の Azure リソースのメトリックを出力するようにエージェントを構成する方法については、「Azure Monitor Custom Metrics Output for Telegraf」(Telegraf による Azure Monitor へのカスタム メトリックの出力) を参照してください。
リソースをクリーンアップする
必要がなくなったら、リソース グループ、仮想マシン、およびすべての関連リソースを削除できます。 そのためには、仮想マシンのリソース グループを選択し、 [削除] を選択します。 削除するリソース グループの名前を確認します。
次のステップ
- カスタム メトリックの詳細を確認します。