1. はじめに
1-1 ご挨拶
初めまして、井村と申します。
本記事は、Azure仮想マシンのカスタムメトリックをAzureポータルのダッシュボードに表示させる方法について、検証を兼ねてまとめたものです。
1-2 カスタムメトリックとは
カスタムメトリックとは、仮想マシンのゲストOSレベルのメトリックを指します。
対照的に、ホストレベルのメトリックはプラットフォーム(標準)メトリックと呼ばれます。
仮想マシンのカスタムメトリックを取得するには、Azure Monitor エージェントのインストールが必要です。
2. 構築
2-1 データ収集ルール
Log Analyticsワークスペースはすでに作成済みです。
仮想マシンも2台構築し、データディスクを設定済みです。
この環境に対して、必要なカスタムメトリックを収集するために「データ収集ルール」を設定します。
カスタムメトリックの詳細については、こちらの記事が非常に参考になりますので、ぜひご覧ください!
(以下、手順はそのままで問題ありません。画像も適切です。)
1 . Azure ポータルで「データ収集ルール」と検索し、「作成」を選択します。
2 . 基本タブは以下の通りです。今回はプラットフォームを「all」にしていますが、注意事項があるため、リンクを残しておきます。
3 . リソースタブでは、構築した仮想マシンを「リソースの追加」から選択します。
4 . 「収集と配信」タブで取得するメトリックを選択します。必要なメトリックのみ選択してください。
CPU使用率
メモリ使用率
ディスク空き容量率
\LogicalDisk(*)\% Free Space
上記を入力後、追加します。
5 . ターゲットは事前に作成したLog Analyticsワークスペースを選択します。保存後、データ収集ルールを作成します。
しばらくすると、Log Analyticsワークスペースにログが格納されます。
2-2 グラフ
ダッシュボードに表示するためのグラフを作成します。
1 . 事前に作成したLog Analyticsワークスペースへ移動しログを選択します。
2 . クエリハブのポップアップを閉じます(×を押します)。
3 . 簡易モードからKQLモードに変更します。
4 . CPU使用率を取得するため以下のKQLを実行します。
Perf
| where ObjectName == "Processor Information"
and CounterName == "% Processor Time"
and InstanceName == "_Total"
| summarize AvgCPU = avg(CounterValue) by bin(TimeGenerated, 5m), Computer
| order by TimeGenerated asc
5 . グラフを整えます。変更点は以下2点になります。
- UTCをローカル時間に変更
- 積上げ縦棒を非積み上げ縦棒
以上でグラフが出来上がります。ダッシュボードに追加します。
6 . 保存からピン留め先Azureダッシュボードを選択します。
7 . 新規作成タブを選択し任意の名前を入力後、作成してピン留めします。
8 . 上記の作業をメモリ使用率、ディスク空き容量率のグラフを作成します。
Perf
| where ObjectName == "Memory"
and CounterName == "% Committed Bytes In Use"
| summarize AvgMemoryUsage = avg(CounterValue) by bin(TimeGenerated, 5m), Computer
| order by TimeGenerated asc
Perf
| where ObjectName == "LogicalDisk"
and CounterName == "% Free Space"
and InstanceName == "E:"
| summarize AvgFreeSpace = avg(CounterValue) by bin(TimeGenerated, 5m), Computer
| order by TimeGenerated asc
データ収集ルールを作成するとデフォルトでHeartbeatも取得できます。死活監視に利用できます。
Heartbeat
| summarize Count = count() by bin(TimeGenerated, 5m), Computer
| order by TimeGenerated asc
3. 確認
ダッシュボードを確認します。
1 . ダッシュボードを選択します。
2 . 時間帯をローカルに変更します。
3 . タイトルの編集を選択します。
4 . タイトルを変更し更新します。
5 . グラフの自動更新も任意で設定します。
6 . グラフの位置を修正します。修正したいグラフを選択します。
7 . グラフを任意の大きさ、位置に変更し保存します。
8 . これでダッシュボードが完成です。
4. おまけ
今回はログからKQLを実行してグラフを作成しました。ですがデータ収集ルールでターゲットを「Azure Monitor Metrics(preview)」で直接グラフにすることが出来ます。
Azure Monitorからメトリックを選択しスコープを「仮想マシン」、メトリック名前空間を「仮想マシンのゲスト」を選択します。
メトリックはカスタムメトリックが選択できます。
グラフが完成します。
複数のリソースを選択できます。
グラフが更新されます。
ですが、ダッシュボードに追加するとグラフが表示されません。こちらは要調査になります。
5. 終わり
本記事を最後まで読んでいただき、ありがとうございました。
ダッシュボードをもっと本番運用に使えるよう理解したいです。





























