DCR Generatorを使用したDCR収集ルールの設定

Log Analytics エージェントに設定した収集設定をAzure Monitor エージェント用収集設定Data Collection Rule(DCR)に変更するツールを紹介します。

もちろん、Log Analytics エージェント収集設定を確認しながら、Azure Monitor エージェント設定を手動で実施することも問題ありません。

今回紹介するのは、手動での変更が多すぎて大変すぎる、または、設定ミスをなくしたいなど諸事情により、手動での設定を行わない想定で行う構築方法の紹介です。

この記事内ではわかりやすくするため、Log Analytics エージェントは「古い」と表現し、Azure Monitor エージェントは「新しい」と表現します。

以下の流れとなります。

  1. Azure PowerShellからAzureに接続し、古い収集設定を読み取る
  2. 古い設定を新しい設定用のARMテンプレートとして出力する
  3. Azureでカスタムテンプレートのデプロイを起動し、ARMテンプレートを読み込む
  4. DCRが作成される

以下のURLを参考に進めていきます。

https://learn.microsoft.com/ja-jp/azure/azure-monitor/agents/azure-monitor-agent-migration-tools#installing-and-using-dcr-config-generator

以下のURLから、「WorkspaceConfigToDCRMigrationTool.ps1」をダウンロードします。

https://github.com/microsoft/AzureMonitorCommunity/tree/master/Azure%20Services/Azure%20Monitor/Agents/Migration%20Tools/DCR%20Config%20Generator

実行結果

小さな赤枠内、あらかじめデータ収集エンドポイント(DCE)を作成しておくか問われるので「y」にする。

※yにしないと出力に失敗するのでyにしておきましょう。すでに作成済みのDCEを指定しても問題ありません。

大きな赤枠内は再度入力を促されるので必要事項を入力します。

自動的にレガシー設定のエージェント設定がリスト表示されています。

リストから番号を選択します。ここでは「5」のsamplecsv_cl_dcr_arm_template.jsonを選択しました。

成功するとdcr作成用のARMファイルが2点出力されます。

(OS名orレガシーカスタムテーブル名)_dcr_arm_template.jsonと(OS名orレガシーカスタムテーブル名)_dcr_arm_payload.json

Azure Portalに移動します。

Azure > カスタムテンプレートのデプロイの順に移動します。

エディターで独自のテンプレートを作成するを選択します。

先に出力したtemplate.jsonファイルを読み込み画面下の「OK」で戻ります。

DCR名は好きに変更して問題ありません。他はARM出力したときと同じ値にしてください。

DCEは初めての作成、既存のDCEでもどちらでも問題ありません。

作成を押下します。

デプロイが完了しました。

作成されたDCRを確認してみます。

カスタムログテーブル、ファイル出力パターンも古い設定をDCRに引き継ぎできました。

ワークスペース設定も問題ありません。

リソースにはVMは自分で指定する必要があります。その時にDCEが複数あると適当なDCEが割り当てられる時があるので都度修正してください。