マイクロソフト純正 VDI 登場! Azure Virtual Desktop とは?

消え去りし、Remote App サービスから幾年月、、ついに!ついに!
マイクロソフト純正 [RDSH][VDI]サービスが ”Microsoft Azure”に登場です!!

※Azure Virtual Desktop Classic 2019年 9月 30日に「GA」致しました!
※Azure Virtual Desktop 2020年 7月 27日に「GA」致しました!
AVD と AVD Classic との違いとは?

[AVDのメリット]
① Win10 Multi-sessionによる集約率向上によるコスト削減
② Win10 をサポートするアプリケーションに対応
③ 拡張セキュリティ更新プログラム(ESU)の無償適用
④ Azure ハイブリッド特典の適用
⑤ Azureリージョン間をまたぐ構成が可能
⑥ ユーザープロファイル管理機能を提供
⑦ 最寄りのAzureリージョンから接続が可能
⑧ O365に最も近い、クライアントを提供

[提供機能]
RDSH:サーバーOSによる[デスクトップ配信]と[アプリケーション配信]
VDI:クライアントOSによる[デスクトップ配信]と[アプリケーション配信]
※ストアアプリのアプリケーション配信はできません。

[利用可能なOS]
・Windows 10/11 Enterprise Multi-Session (SAC)
・Windows 10/11 Enterprise Single-Session (SAC)
・Windows 7 Enterprise
・Windows Server 2022
・Windows Server 2019
・Windows Server 2016
・Windows Server 2012 R2

※Multi-sessionとは、1台のサーバーで複数のデスクトップを提供する機能

[Domain Users] での動作の違い
Single-Session:言語切替(可) 再起動(可)
Multi-session:言語切替(不可) 再起動(不可)


さっそく、構成を確認してみましょう!

【AVD管理基盤 コンポーネント】
・RD Gateway / RD Web Access:AzureADと連携し、ユーザーセッションを受ける
・Connection Broker:メタデータを基に負荷分散機能を提供
・DataBase:メタデータの保持

【Azureコンポーネント】
・AzureAD:ユーザー認証のため必須 ※ADとの同期が必須
・Active Directory x2:ユーザー認証のため必須 ※オンプレでも可
※AzureAD Domain Service でも可能
・AzureAD Connect x1:AzureADとの同期のため ※オンプレでも可
・Host Pool:配信用 デスクトップ・アプリケーションを実行するサーバー
※VMサイズはリージョンに依存
・ファイルサーバー:ユーザープロファイル保存用 ※任意

AVD管理基盤側のコンポーネントは、マイクロソフトにて運用管理されるので手間いらず。Host Poolなどは、通常の仮想ネットワーク上に構築できるので、自由度の高い構成が組めます。もちろん、NSGやUDRなどを利用する事も可能。

[構成上の注意]
・社内端末から利用する際に、すべての通信をExpressRoute内に閉じることはできません。
・ユーザーが同期されたAADテナント配下にセッションホストを作成する必要があります。
※AVD Classicでは、同期されたAADテナント以外のテナントにセッションホストを作成可能

※設定についてはこちら「Azure Virtual Desktop (AVD) を構築する!


接続の流れを見てみましょう!

①User Deviceから、RD Web Access / RD Gatewayに接続する。
②RD Web Access / RD Gatewayは、AzureAD(エンタープライズ アプリケーション)に対して認証情報の確認を行う。
認証が成功すると、User Deviceに許可されたアイコン(アプリ/デスクトップ)を表示する。
③リソースが選択されると、Connction Brokerは、最適なHost Poolをアサインする。
④Connction BrokerはUser Deviceに対し、許可されたHost Pool[AppGroup]を通知する。
ユーザーがSessionHostを選択すると、参加しているADに対して、AzureAD認証で使用したアカウントの同期(元or先)アカウントの存在確認が走る。
⑤Host Poolに接続するために、Active Directoryにて認証を行う。
認証が成功すると、User Deviceにリソース(アプリ/デスクトップ)を表示する。
※接続後の通信は必ず、RD Gateway経由となる。

AVDにインバウンド接続が無い理由

Session Hostが作成されると、RD Gatewayに対して、TLS接続を行います。※SxSStack
AVD ClientがAzureAD認証を通過すると、RD Gatewayに対して、TLS接続を行います。
この時点で、AVD Client~Session Host間でTLS Tunnel接続が確立しました。
このTLS Tunnel接続の中をRDPを使いSession Hostに接続します。


配信方法を見てみましょう!

配信方法は、2パターンあります。
※Windows 10(Single)+Pooled=1つのSession Hostに対して複数人割り当てが行われる。
最大セッション数を「1」にすると良い。2以上だと、先人が押し出される。
※Windows 10(Multi)+Personal=Session Hostに対して1人しか割り当てないので意味なし
※Windows 7 + アプリケーション配信(Remote App)は利用不可

【 Personal 】
[配信方法:固定 データ保持:Local Disk]
ユーザーが接続すると必ず同じデスクトップが割り当てられます。ユーザーがデスクトップ上で加えた変更はローカルディスクに保存されます。
※アプリケーション配信(Remote App)は利用できません。

【 Pooled 】
[配信方法:ランダム データ保持:Local Disk]
ユーザーが接続する度にランダムにデスクトップが割り当てられます。ユーザーがデスクトップ上で加えた変更はローカルディスクに保存されます。


負荷分散方法

AVDでの負荷分散とは、ユーザーとセッションホストを割り当てる機能を指します。
・Personalを選択すると、[自動] or [直接]から選択
・Pooledを選択すると、[幅優先] or [深さ優先]から選択

【 自動 】
初回接続時に、ユーザーが割り当てられていないサーバーに対してランダムに割り当てられる。以降かならず、同じサーバーに割り当てられる。

【 直接 】
作成済みのセッションホストに対してい、管理者が手動でユーザーを割り当てます。
以降かならず、同じサーバーに割り当てられる。

【 幅優先 】
[分散方法:最小セッション数]
Host Pool内で一番セッション数が少ないサーバーに対し接続。いわゆる、ラウンドロビン

【 深さ優先 】
[分散方法:最大セッション数]
Host Pool内で一番セッション数が多いサーバーに対し接続。
指定の最大セッション数に達すると、次のサーバーに割り振られる。


ライセンスを見てみましょう!

【必要なライセンス】 ※どれか1つ
・Microsoft 365 E3 / E5 / A3 / A5 / F3 / Business Premium
・Windows Enterprise E3 / E5 / A3 / A5
・Windows VDA E3 / E5

・RDS-SA CAL [User/Device]  ※ServerOSの場合は、これだけでOK

※RD Gatewayからのデータ送信料は不要です。
※AVDを展開するテナントに紐づいている必要はありません。

詳細はこちら
AzureでVDIを構築する際に適用すべきライセンスとは?
利用シーン別! AVD で必要となるライセンスとは?