Loading
BLOG 開発者ブログ

2020年6月16日

Windows Virtual Desktop の構築に挑戦

 

Windows Virtual Desktop(以下、WVD)は2019年に一般提供が開始されたDaas(Desktop as a Service)サービスです。

昨今のコロナ禍において、自社のテレワーク環境導入に向けてWVDの構築に挑戦したので共有します。

背景

こんにちは。
エンタープライズビジネスグループの maruoka.n です。

新型コロナウィルスの流行に伴い、初めてテレワークというものを経験しています。

家で仕事をすることは時間が有効に使えるなどメリットがある反面
セキュリティ面でのリスクもあります。

そこで在宅勤務を行うにあたり肝となるのが仮想デスクトップ(VDI)の存在です。
従来、VDIの導入にはGatewayやブローカーといったサーバが必要でしたが
WVDではこのサーバー部分もサービスに含めて提供されています。

WVDの構築

注)この構築手順は3月末時点での構築手順となっています。
2020年春のアップデートで発表されたAzurePortalで完結する構築手順については一般提供が開始され次第確認してみます。

1.Azure環境の構築

必要となるAzureの環境は以下の4つです。
・リソースグループ
・仮想ネットワーク
・オンプレミスActiveDirectory用仮想マシン
・AzureADConnect用仮想マシン

※仮想ネットワークのDNSはオンプレミスActiveDirectoryのプライベートIPアドレスを設定します。

作成した仮想ネットワーク>[設定]DNSサーバー>「カスタム」 を選択することで設定が可能です。

2.アクセス許可の設定

WVDを利用するためのアクセス許可をAzureテナントに設定します。

2-1.エンタープライズアプリケーションの設定

専用サイトから設定を行います。
https://rdweb.wvd.microsoft.com/

サイトを開くと下記画面が表示されます。

・Consent Option:「Server App」「Client App」が選択できるので、それぞれ設定します。
・AAD Tenant GUID or Name:AzureADのテナントIDを設定します。

※AzureADのテナントIDは、AzureActiveDirectoryの概要ページから確認できます。
(下図の赤枠部分がテナントIDです。)

「ServerApp」と「Client App」それぞれでアクセス許可を設定すると、
AzureADの画面から[Windows Virtual Desktop]と[Windows Virtual Desktop Client]が作成されているのが確認できます。

2-2.管理者用アカウントにWVDのアクセス許可を割り当てる

AzureActiveDirectory > エンタープライズアプリケーション>すべてのアプリケーション>Windows Virtual Desktop>
ユーザーとグループの割り当て>ユーザーの追加 を選択します。

ユーザーの一覧から管理者用アカウントを選択し、最後に「割り当て」ボタンを押下します。

ユーザーとグループの一覧画面に戻り、設定した管理者用アカウントの「割り当てられたロール」がTenantCreaterとなっていれば成功です。

3.WVDテナントの作成

※以下、コマンドの実行は管理者で実行したPowerShell上で行います。

3-1.WVD用モジュールをインストールする

Install-Module -Name Microsoft.RDInfra.RDPowerShell
Import-Module -Name Microsoft.RDInfra.RDPowerShell

 

3-2.WVD環境に管理者用アカウントでサインインする

Add-RdsAccount -DeploymentUrl “https://rdbroker.wvd.microsoft.com”

コマンド実行後、マイクロソフトのサインイン画面に遷移するので
「2.アクセス許可の設定」でTenantCreaterに割り当てた管理者用アカウントでサインインします。

3-3.WVDテナントを作成し、AzureADテナントとの紐づけを行う

New-RdsTenant -Name <WVDのテナント名> -AadTenantId <AzureADのテナントID> -AzureSubscriptionId <AzureのサブスクリプションID>

<WVDのテナント名>:任意のWVDテナント名を入力します。

<AzureのテナントID>:「2-1.エンタープライズアプリケーションの設定」で確認したテナントIDを入力します。

<AzureのサブスクリプションID>: WVDを展開するサブスクリプションのIDを入力します。

※AzurePortal > サブスクリプション > WVDを展開するサブスクリプションを選択 > 「概要」メニュー からサブスクリプションIDが確認できます。

4.ホストプールの作成

※ホストプールとはWVD環境内にある1つまたは複数の同一仮想マシンをまとめたものを指します。

Azure Portalホーム画面 > リソースの作成 > Windows Virtual Desktop – Provision a host pool を検索すると
下記画面が表示されるので、「作成」を選択します。

下記のような各種設定画面に遷移します。

サブスクリプション:WVDを展開するサブスクリプション
リソースグループ :ホストプールを管理するリソースグループを選択もしくは新規作成をします。
リージョン:目的に適したリージョンを選択します。(今回の場合WVDの作成及び利用を東日本で行う想定の為、東日本を選択しています。)
Hostpool name:ホストプールの名前を記入します。この名前が実際にWVD利用時にホストプールの名前として表示されます。
Desktop type:マルチセッション仮想マシンを利用する場合は「Pooled」、各ユーザーにそれぞれ仮想マシンを割り当てる場合は「Personal」を選択します。
Default desktop users:ホストプールへの接続を許可するAzureADのユーザーを記載します。(後から設定できるのでこの時点では空白でも良いです。)
Service metadata location:現時点でUnited Statesのみ選択が可能
Usage Profile:前ページで「Pooled」を選択した際に表示される項目です。1サーバーあたりの接続目安数を設定できます。
Total users:VDIの利用者数
Virtual machine size:ホストプールとする仮想マシンのサイズを選択します。
Virtual machine name prefix:ここで記入した文字が、ホストプール作成時の接頭辞になります。
(例)HostPool-VDIと入力したとき → HostPool-VDI-0,HostPool-VDI-1 … といった名前のホストプールが作成されます。
Disk type:Premium SSD, Standard SSD, Standard HDD から選択します。
AD domain join UPN:ドメイン参加用のUPNを指定します。
Virtual network:仮想デスクトップを展開する仮想ネットワークを指定します。
vmSubnet:仮想デスクトップを展開するサブネットを指定します。
Windows Virtual Desktop tenant group name:「Default Tenant Group」から変更ができません。
Windows Virtual Desktop tenant name:3-3. で登録したWVDのテナント名を入力します。
Windows Virtual Desktop tenant RDS Owner:2-1. 設定した管理者用アカウントの情報を入力します。
ここまで入力したら、「確認および作成」のボタンを押下します。
検証に成功後、画面下部にある作成ボタンを押下するとデプロイが始まります。
デプロイが完了したらホストプールの作成は終了です。
 

5.WVDへの接続

WVD専用のクライアントアプリをインストールする方法もありますが
ここではブラウザから接続する方法を示します。(本記事では Microsoft Edgeを使用しています。)

1.下記URLに接続します。

https://rdweb.wvd.microsoft.com/webclient

Microsoftのサインイン画面が表示されます。

 

 

サインイン情報を入力すると、登録したデスクトップが表示されます。

(本アカウントに2つのデスクトップを作成したため2つ表示されています)

起動させるデスクトップをクリックすると、資格情報の入力画面が表示されます。

資格情報の認証に成功すると、デスクトップが表示されます。

まとめ

今回はWVDの構築方法を見ていきました。

PowerShellを利用する箇所があるため少し難しく感じましたが、ホストプールの作成自体はAzurePortalから可能なので比較的構築しやすいと思いました。 (GUIが英語のみ対応だったので少し読み取るのが難しかったですが…)
構築がしやすいため、開発コストの削減が期待できます。

また、サーバー部分もWVDのサービスに含まれているため、複雑なインフラストラクチャの管理を考えなくて良いのもユーザーにとっては利点となります。

ホストプールの言語設定などのカスタマイズや、構築中に陥ったデプロイの失敗などはまた別の機会に記載できればと思います。

maruoka.nのブログ