Azure Virtual Desktop (AVD) クイックスタート

Azure Virtual Desktop環境を簡単に作れる機能がAzure Portalに実装されました。

# 鍵となるポイント (選択肢)
- 2つの構築パターン
    - **新規の環境**
        - 一番手間がない、全自動、2時間以内で使えるようになる!
        - AD DSも仮想ネットワークも作成してくれる
        - できた環境に、後から設定調整も可能
    - 既存環境の中に追加
        - (Windows Server上、Azureのマネージドサービス問わず)ADのドメインサービスが既存であったり、ネットワーク環境を整えてから作成したい場合
- 2つのセッションパターン
    - **マルチセッション**
        - VMを複数人で共有
        - FSLogixとプロファイル置き場として必要なストレージアカウントも自動作成
        - コストの観点からまずはこちらで初めて見るのがおすすめ
    - シングルセッション
        - VMを個人で占有可能なので、カスタマイズが自由で他人の影響を受けない

ここでは、「**新規の環境**」に「**マルチセッション**」で作成することを想定して解説。

# 新規環境を作成
## 必要条件
- Azureサブスクリプション
- サブスクリプションの所有者ロール
    - **職場または学校アカウント(365などでAzure ADが入っている)の場合:** 一部しか権限を割り当てられていないかもしれないのでご確認ください
    - **Microsoftアカウント(outlook.comとか個人アドレス)の場合:** ドメインプレフィックスの文字数制限にご注意ください

> **Microsoftアカウント** の場合、自動でonmicrosoft.comのドメイン名を生成されていると思いますが、このプレフィックスの文字列が15文字を超えるとAzure DS Domain Servicesの仕様によりADのマネージドサービスが作成されません。例えば、Microsoftアカウントが`hoge@outlook.com`の場合、`hogeoutlookcom123.onmicrosoft.com`のようなドメインが自動生成され、プレフィックスの`hogeoutlookcom123`が15文字を超えるので、このままでは動作しません。
15文字以下であれば自動生成されたonmicrosoft.comのもので利用できるのでそのまま進めばよいですが、この問題を回避するためには、カスタムドメインをAzure ADにセットする必要があります。
カスタムドメインのセットの仕方は[こちら](https://www.ether-zone.com/azure-ad-custom-domain/)が参考になります。
![prereq1.png](https://qiita-image-store.s3.ap-northeast-1.amazonaws.com/0/684720/812afad9-7c56-5692-ec8e-6e023a120794.png)

## 構築
Azure Virtual Desktopを開きます。
![avd.png](https://qiita-image-store.s3.ap-northeast-1.amazonaws.com/0/684720/20fa5564-a3c1-87d0-ec31-cc78744886c3.png)

`作業の開始`から`開始`を選んで環境作成を開始します。
![avd-2.png](https://qiita-image-store.s3.ap-northeast-1.amazonaws.com/0/684720/4d89ebe9-2b7c-f392-1060-fc8484c84d2a.png)

下記の画面に、必要な情報を入れます。
![empty1.png](https://qiita-image-store.s3.ap-northeast-1.amazonaws.com/0/684720/4c8eca74-5cc4-4f3a-cc80-e20482ba7fb9.png)

> **注:** `場所`はAVDのメタデータの場所しか選べません。ご利用の場所から一番近いリージョンを選ぶには、[Azure Speed Test](http://azurespeedtest.azurewebsites.net/)が便利です。また、`Azure 管理者ユーザー名`の情報はAzure Portalにログインしているユーザーで、かつAzure AD テナントに "全体管理者" 特権を持っている必要があるのでご注意ください。`ドメイン管理者のユーザー名`は、このウイザード中に新規に作成しますので既存である必要はありません。

![empty2.png](https://qiita-image-store.s3.ap-northeast-1.amazonaws.com/0/684720/8910c215-2db8-301a-f947-6b453b98055f.png)
![empty3.png](https://qiita-image-store.s3.ap-northeast-1.amazonaws.com/0/684720/31b9162c-5d1a-ecc2-2a60-dea661d22631.png)

> **注:** 2021年7月25日現在、ここで作成したユーザーのパスワードがAzure AD DSに伝わっていないようで、Azure ADにはログインできますが、OSを利用するためのAD認証が通りません。Azure ADでユーザーのパスワードを再登録する必要があります。

これで作成を開始すると、指定した情報に基づいて展開が始まります。
私の環境では1.5時間ぐらいで展開が終わりました。

# 接続テスト
## ユーザーアカウント
テストユーザーアカウントで作成したアカウントでログインできます。ただし、2021年7月25日現在、ウィザード作成中にパスワード同期が正しく行われないため、再設定する必要があります。
![test1.png](https://qiita-image-store.s3.ap-northeast-1.amazonaws.com/0/684720/0f668a10-ec07-51a8-a0ae-f092ab1aeb6e.png)
新規ユーザーを作成する場合は、Azure ADにユーザーを作った後、`AVDValidationUsers`グループにそのユーザーを追加することでAVDが利用できるようになります。

## Webクライアントで接続
AVDの利用者はどの会社の方も全員同じURLにアクセスして接続します。
下記のURLにアクセスし、テストアカウントでログインします。
https://rdweb.wvd.microsoft.com/arm/webclient
![test3.png](https://qiita-image-store.s3.ap-northeast-1.amazonaws.com/0/684720/02e909dc-25cd-53bb-3e0d-849b5c2b811b.png)

Webクライアントでは、日本語キーボードを使う場合、最初のみ下記のように設定します。
> Webクライアントで日本語キーボードマップを使うには、OSに日本語の言語パックがインストールされている必要があります。ただし、このクイックスタートで作成されるOSは英語なので、ここでの設定が有効になりませんので、下で解説している日本語Windowsの際に使えます。
「[リモート セッションで入力方式エディター (IME) を使用する](https://docs.microsoft.com/ja-jp/windows-server/remote/remote-desktop-services/clients/remote-desktop-web-client#use-an-input-method-editor-ime-in-the-remote-session)」

![test2.png](https://qiita-image-store.s3.ap-northeast-1.amazonaws.com/0/684720/a530aeba-a602-4ddf-70aa-260af939e360.png)


## デスクトップクライアントで接続
Windowsクライアントにソフトウェアをインストールして利用します。
下記のものが用意されていますので、環境に合わせてインストールします。クライアントに管理者権限がなくても大丈夫です。

- [Windows (64 ビット)](https://go.microsoft.com/fwlink/?linkid=2068602)
- [Windows (32 ビット)](https://go.microsoft.com/fwlink/?linkid=2098960)
- [Windows ARM64](https://go.microsoft.com/fwlink/?linkid=2098961)

クライアントをインストールして起動すると、最初は下記の画面になりますので**登録**ボタンを押して進みます。
![wvd5.png](https://qiita-image-store.s3.ap-northeast-1.amazonaws.com/0/684720/1f0d697b-5b7d-9dfe-b19a-abfa9ef57b41.png)

ログインすると下記の画面が出ますが、ここでは検証用として**いいえ**で進みましょう。
![wvd7.png](https://qiita-image-store.s3.ap-northeast-1.amazonaws.com/0/684720/7ff81daa-7e05-08c7-9680-1d384772aa7e.png)

ログインが終わると、利用できるワークスペースが表示されます。
![test4.png](https://qiita-image-store.s3.ap-northeast-1.amazonaws.com/0/684720/e962fe91-f88e-0cbb-42cb-175d7cc18779.png)

# ここから
これで、動く環境ができました。
日本語Windows + M365 Apps + FSLogixのイメージを作る場合は、[こちら](https://qiita.com/takeokams/items/4e0753047822b13bbcf7)の記事を用意しています。

仮想デスクトップの時刻をクライアントに合わせるためのグループポリシー設定は[こちら](https://qiita.com/takeokams/items/ef26b60306d1cb5eee27#%E3%82%B0%E3%83%AB%E3%83%BC%E3%83%97%E3%83%9D%E3%83%AA%E3%82%B7%E3%83%BC%E3%81%AE%E8%A8%AD%E5%AE%9A)を参考にしてください。

# 削除の方法
最後に、環境を削除する場合は、ここで作成したリソースグループ(3つあります)を削除します。
次に、Azure ADに作ったユーザーやグループも削除します。