DCR Generatorを使用したDCR収集ルールの設定
Log Analytics エージェントに設定した収集設定をAzure Monitor エージェント用収集設定Data Collection Rule(DCR)に変更するツールを紹介します。
もちろん、Log Analytics エージェント収集設定を確認しながら、Azure Monitor エージェント設定を手動で実施することも問題ありません。
今回紹介するのは、手動での変更が多すぎて大変すぎる、または、設定ミスをなくしたいなど諸事情により、手動での設定を行わない想定で行う構築方法の紹介です。
この記事内ではわかりやすくするため、Log Analytics エージェントは「古い」と表現し、Azure Monitor エージェントは「新しい」と表現します。
以下の流れとなります。
- Azure PowerShellからAzureに接続し、古い収集設定を読み取る
- 古い設定を新しい設定用のARMテンプレートとして出力する
- Azureでカスタムテンプレートのデプロイを起動し、ARMテンプレートを読み込む
- DCRが作成される
以下のURLを参考に進めていきます。
以下のURLから、「WorkspaceConfigToDCRMigrationTool.ps1」をダウンロードします。
# 構成情報を変数に入力
$subId = "サブスクリプションID"
$rgName = "リソースグループ名"
$workspaceName = "ワークスペース名"
$dcrName = "DCR名"
$folderPath = "Azure Resource Manager(ARM)を出力するパス>"
# 実行コマンド
.\WorkspaceConfigToDCRMigrationTool.ps1 -SubscriptionId $subId -ResourceGroupName $rgName -WorkspaceName $workspaceName -DCRName $dcrName -OutputFolder $outputFolderPath
実行結果
小さな赤枠内、あらかじめデータ収集エンドポイント(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が割り当てられる時があるので都度修正してください。