WVD ARM 向けの管理ダッシュボードを作る!

WVD ARM 向けの管理ダッシュボードを作る!

今回は ARM 版 WVD で管理ダッシュボードを作成する方法を紹介します。ユーザーのセッション状況やセッションホストのパフォーマンスを統合的に監視できる基盤を構成できます。Non-ARM WVD よりも診断設定の連携が簡単になりました。

事前準備

  • WVD ARM の環境を構築する。
  • アカウントに次のロールを付与する。
    • 監視共同作成者
    • Log Analytics 共同作成者
    • セキュリティ管理者

手順

Log Analytics ワークスペースの展開

Azure ポータルで[すべてのサービス]>[Log Analytics ワークスペース]をクリックします。[追加]をクリックします。

  • [サブスクリプション]:リソースを展開するサブスクリプションを指定します。
  • [リソース グループ]:リソースを展開するリソースグループを指定します。
  • [名前]:Log Analytics ワークスペースの名前を指定します。
  • [地域]:ワークスペースを展開するリージョンを指定します。
  • [価格レベル]:[従量課金制]

パラメーターを指定し、リソース作成します。

WVD リソースの診断設定

作成済みの WVD サービスのリソースでログを取得できるように設定します。

ホストプールリソースを選択し、メニューから[診断情報]をクリックします。

[診断設定を追加する]をクリックし、診断設定を行います。[診断設定の名前]で設定の名前を指定します。[カテゴリの詳細]で取得するログの種類を指定します。全てにチェックを入れて問題ないです。[宛先の詳細]では[Log Analytics への送信]にチェックを入れて、ログを保存するワークスペースを指定します。

設定したら[保存]をクリックします。ワークスペースとアプリケーショングループリソースでも同様に設定しておきます。

VM の情報取得設定

WVD セッションホストの仮想マシンリソースを選択し、メニューから[ログ]をクリックします。[有効にする]をクリックして仮想マシンを接続する Log Analytics を指定します。

パフォーマンスカウンターの収集

Log Analytics ワークスペースリソースを開きます。メニューから[詳細設定]をクリックします。

[データ]>[Windows パフォーマンスカウンター]をクリックします。Windows 仮想マシンから取得するカウンターの種類を選択します。設定の保存は1回につき20個までなので2回に分けて設定します。サンプリングは 60 秒ごとにします。

1回目は次のカウンターを指定します。

  • Terminal Services Session(*)\% Processor Time
  • Terminal Services(*)\Active Sessions
  • Terminal Services(*)\Inactive Sessions
  • Terminal Services(*)\Total Sessions
  • LogicalDisk(*)\% Free Space
  • LogicalDisk(*)\Avg. Disk sec/Read
  • LogicalDisk(*)\Avg. Disk sec/Write
  • LogicalDisk(*)\Current Disk Queue Length
  • LogicalDisk(*)\Disk Reads/sec
  • LogicalDisk(*)\Disk Transfers/sec
  • LogicalDisk(*)\Disk Writes/sec
  • LogicalDisk(*)\Free Megabytes
  • Processor(_Total)\% Processor Time
  • Memory(*)\% Committed Bytes In Use
  • Network Adapter(*)\Bytes Received/sec
  • Network Adapter(*)\Bytes Sent/sec
  • Process(*)\% Processor Time
  • Process(*)\% User Time
  • Process(*)\IO Read Operations/sec

2回目は次のカウンターを指定します。

  • Process(*)\IO Write Operations/sec
  • Process(*)\Thread Count
  • Process(*)\Working Set
  • RemoteFX Graphics(*)\Average Encoding Time
  • RemoteFX Graphics(*)\Frames Skipped/Second – Insufficient Client Resources
  • RemoteFX Graphics(*)\Frames Skipped/Second – Insufficient Network Resources
  • RemoteFX Graphics(*)\Frames Skipped/Second – Insufficient Server Resources
  • RemoteFX Network(*)\Current TCP Bandwidth
  • RemoteFX Network(*)\Current TCP RTT
  • RemoteFX Network(*)\Current UDP Bandwidth
  • RemoteFX Network(*)\Current UDP RTT
  • PhysicalDisk(*)\Avg. Disk Bytes/Read
  • PhysicalDisk(*)\Avg. Disk Bytes/Write
  • PhysicalDisk(*)\Avg. Disk sec/Write
  • PhysicalDisk(*)\Avg. Disk sec/Read
  • PhysicalDisk(*)\Avg. Disk Bytes/Transfer
  • PhysicalDisk(*)\Avg. Disk sec/Transfer

設定したら[保存]をクリックします。サンプリング間隔は短くするとログの取得データ量が増えるので必要に応じて調節します。

Azure Monitor でワークブックを作成

Log Analytics ワークスペースリソースを開きます。メニューから[ブック]をクリックします。上部から[ブック]をクリックします。

メニューから[詳細エディター]をクリックします。エディターに次の URL の JSON をコピー & ペーストします。[適用]をクリックします。

https://github.com/wvdcommunity/AzureMonitor/blob/master/wvd-springrelease-workbook.json

ここまでしたら[編集が完了しました]をクリックします。

ダッシュボード完成

Log Analytics ワークスペースの[ブック]をクリックし、先ほど作成したブック(WVD-book など)を確認します。

タブが分かれており、ユーザーセッションやコンピューターのパフォーマンス情報を確認することができます。

各グラフやモジュールはそれぞれダッシュボードにピン留めすることも可能です。

参考

https://techcommunity.microsoft.com/t5/windows-it-pro-blog/proactively-monitor-arm-based-windows-virtual-desktop-with-azure/ba-p/1508735