Windows Virtual Desktop (WVD) リソースを簡単に作る!

Windows Virtual Desktop を簡単に作成しよう!

タイトルのまんまなんですが、沢山作ることがある場合はパラメーターだけ変えてサクサク作りたいですよね。
セッションホストだけはポータルから作る必要があるのですが、以下を一つのスクリプトで作成出来るものを作りました。

  • WVD WorkSpace
  • WVD Application Group (Desktop)
  • WVD Host Pool
  • Application Group へのセキュリティグループ関連付け

上記作成後にセッションホストを追加する必要があります。(手順は後述)

事の経緯

検証やお仕事でもWVDリソースの作成をスムーズかつ手間をかけたくない。
Azコマンドで対応されてない。
じゃあ PowerShellで出来るところまでやっちゃおう。が発端です。
ちなみに ARM Template も公開されていますが今回はPowerShellです。
スクリプトを実行する前提条件としては以下です。

  • Azure AD Domain Services もしくは Hybrid AD Join が出来る環境がある
  • 権限付与するセキュリティグループが作成済みである
  • PowerShell に該当モジュール(Az 及び AzrueAD)がインストール済みである

まずはダウンロード

GitHubに公開していますので以下よりダウンロードしてください。

github.com

パラメーター準備

パラメーター 説明
RGName リソースグループ名
RGLocation リソースグループを作成するリージョン
HPName Host Poolの名前
HPDescription Host Poolの説明
HPFriendlyName Host Poolの表示名
MaxSessionLimit Host Poolへ接続させる最大セッション数
APName Application Groupの名前
APDescription Application Groupの説明
APFriendlyName Application Groupの表示名
WSName WorkSpaceの名前
WSDescription WorkSpaceの説明
WSFriendlyName WorkSpaceの表示名
WVDLocation WVDリソースを配置するリージョン
ConnectUser Azureへ接続・構築するユーザー
WVDGroupName WVDへのアクセス許可するセキュリティグループ

WVDLocationはWVDを管理するWordSpace、HostPool、Application Groupを展開するリージョンです。
2020年12月現在は以下のリージョンがサポートされています。

  • 米国西部
  • 米国西部 2
  • 米国中西部
  • 米国中南部
  • 米国中部
  • 米国中北部
  • 米国東部
  • 米国東部 2

保管されるデータとリージョンについては以下を参照ください。

docs.microsoft.com

セッションホスト作成

セッションホストの作成はPowerShellでは現状サポートされていないため、Azure Portalから作成します。
1. 今までの手順で作成したHostPoolを開きます。 f:id:tsukatoh:20201201183639p:plain

  1. Basicはそのままで次へ進みます。
    f:id:tsukatoh:20201201183652p:plain

  2. リージョンは事前に作成しているネットワーク(ドメイン参加できる経路を持ったもの)と同じリージョンを選択します。
    仮想マシンイメージはMarcketplaceにあるものか、ご自身で作成して事前にAzureへイメージとして保管したものを選択できます。
    仮想ネットワーク、サブネットを選択して、VMドメイン参加させるためにドメイン参加可能な管理者アカウントを入力して次へ進みます。
    f:id:tsukatoh:20201201183702p:plain

  3. 設定内容に問題なければ作成します。
    f:id:tsukatoh:20201201183715p:plain

接続してみる

リモートデスクトップクライアントもしくはWebブラウザよりサインインして接続してみます。

f:id:tsukatoh:20201201183726p:plain

リモートデスクトップクライアントがサポートされているプラットフォームは以下です。

docs.microsoft.com