【第2回】AVDを活用し、DXを進める(構築編-クラウド オンリー)~前編~の続き
皆さん、こんにちは。今回は、Azure Virtual Desktop (AVD) を活用し、DX を進めるシリーズのブログ第2弾となります。クラウドオンリーのシーンベースとして、AVD環境を構築する手順(OSイメージの用意からホストのメンテナンスまで)を前編/後編に分けてご紹介いたします。
それでは、早速ですが後編の本題に入ります。
構築手順
今回は、以下の構成図で環境を構築します。
AVD構築するためには、大まかに以下の流れとなります。
- ライセンスの購入
- OSイメージの用意
- AVDネットワークアーキテクチャの設計
- AAD DSの構成
- FSLogixのストレージの設計
- ドメイン側の準備
- ホストプールの作成
- セッションホストへの接続
それでは、後編の「5.FSLogixのストレージ設計」に入ります。
5. FSLogixのストレージの設計
リソース |
要件 |
安定状態での IOPS |
10 |
サインイン時とサインアウト時の IOPS |
50 |
次の表では、FSLogix プロファイルで各ユーザーをサポートするために必要なリソースの数を示します。
例えば、同時に100ユーザーがサインインとサインアウトする際に、概算値では、
50 * 100 = 5000 IOPS
が必要となりますが、実際の運用する際に、テスト環境で必要のIOPSを確認すること強くお勧めします。
テスト環境を構築して、パフォーマンスモニターにて、以下の時の情報を計測してください。
- ユーザーがサインイン時の[最大] IOPS/Throughput
- ユーザーがサインアウト時の[最大] IOPS/Throughput
また、Azure上では、以下の複数オプションが提供されています。
Azure Standard Files
最大要求レート (最大 IOPS) |
·10,000、大きなファイル共有機能が有効2 ·100 ミリ秒あたり 1,000 または 100 要求、既定値 |
1 つのファイル共有の最大イングレス |
·最大 300 MiB/秒、大きなファイル共有機能が有効2 ·最大 60 MiB/秒、既定値 |
1 つのファイル共有の最大エグレス |
·最大 300 MiB/秒、大きなファイル共有機能が有効2 ·最大 60 MiB/秒、既定値 |
Azure Premium Files
最大要求レート (最大 IOPS) |
·ベースライン IOPS:400 + GiB あたり 1 IOPS (最大 100,000) ·IOPS バースト: 最大 (4000, 3 x GiB あたり IOPS) (最大 100,000) |
1 つのファイル共有の最大イングレス |
40 MiB/s + 0.04 * プロビジョニング済み GiB |
1 つのファイル共有の最大エグレス |
60 MiB/s + 0.06 * プロビジョニ |
※現時点のMS資料の公開資料:https://docs.microsoft.com/ja-jp/azure/storage/files/storage-files-scale-targets#azure-file-share-scale-targets
S2D/SoFS
以下の記事によると、S2Dを利用する場合、最大の1370万のIOPSが達成できます。しかしながら、こちらはコストも高いし、スケールアップに難点があり、運用が辛すぎるかと思います。そのため、一般的な使い方であれば、お勧めしません。
記憶域スペース Direct を使用した 1,370 万 IOPS: ハイパーコンバージド インフラストラクチャの新しい業界記録
Azure NetApp Files (ANF)
共有またはボリュームの最大 IOPS |
Ultra および Premium
|
共有またはボリュームの最大スループット |
Ultra および Premium Standard |
ストレージの選定は重要ですが、万が一選定したストレージが相応しくない場合、ストレージを変更することも可能です。少しダウンタイムが発生しますが、それ程心配する必要もないかと思います。
また、FSLogix プロファイル コンテナーの一般的なベスト プラクティスは以下となります。ぜひご参照ください。
- 最適なパフォーマンスを得るには、ストレージ ソリューションと FSLogix プロファイル コンテナーを同じデータセンターの場所に置く必要があります。
- パフォーマンスのボトルネックを回避するため、プロファイル コンテナー用の VHD(X) ファイルは、ウイルス対策のスキャンから除外します。
- 2 つのアクティブなセッションを使用して、ホスト プールごとに個別のプロファイル コンテナーを使用することをお勧めします。
Azure Filesの構成 (環境を構築する手順)
本ブログでは、Azure Files Standard を例として、環境を構築する手順をご紹介します。
(1) Azure portal メニュー上または [ホーム] ページから [リソースの作成] を選択します。
(2) 検索バーに [ストレージ アカウント] と入力し、検索候補から [ストレージ アカウント] を選択します。
(3) [ストレージ アカウント] ページで [作成] を選択します。
(4) [基本] で以下のように必要の情報を入力します。
① サブスクリプションを選択する。 AAD DSと同じ。
② リソースグループを選択する。 AAD DSと同じ。
③ ストレージアカウント名を指定する。 この名前はグローバルに一意である必要がありますが
任意の名前を使用できます。例:avdfilespoc
④ 地域を [東日本] に選択する。
⑤ パフォーマンスを [Standard] に選択する。
⑥ 冗長化を [LRS] に選択する。
(5) [ネットワーク] で [接続方法] を [プライベートエンドポイント] に選択します。
(6) [プライベートエンドポイントの追加] をクリックします。
(7) [プライベートエンドポイントの作成] ページで、以下のように必要の情報を入力してから、[OK] をクリックします。
① サブスクリプションを選択する。 AAD DSと同じ。
② リソースグループを選択する。 AAD DSと同じ。
③ 場所を [東日本] に選択する。
④ 名前を指定する。例:files
⑤ ストレージのサブリソースを[file]に選択する。
⑥ 仮想ネットワークを規定のままでよい。
⑦ サブネットをvmSubnetに選択する。
⑧ [プライベートDSNゾーン と統合する] を [はい] にする。
⑨ [プライベートDSNゾーン] を規定のままでよい。つまり、新規作成する。
(8) [確認および作成] をクリックします。
(9) [作成] をクリックします。
(10)デプロイが完了したら、[リソースに移動] をクリックする。
(11)[ファイル共有] を選択し、Active Directoryにて、[構成さていません] をクリックします。
(12)[Azure Active Directory Domain Services] にて、[セットアップ] をクリックします。
(13)[IDベースのアクセス] ページで、 [Azure Active Directory Domain Services] を [有効] に変更してから、[保存] をクリックします。
(14)[ファイル共有] を選択し、[+ファイル共有] をクリックします。
(15)[新しいファイル共有] ページで、名前にprofilesを入力し、クォータに5120を入力してから、[作成] をクリックします。
(16)作成したファイル共有の右側の […] をクリックして、[接続] を選択します。
(17)[認証方法] を [ストレージアカウント キー] を選択してから、画面に表示されている接続するためのPowerShellを記録します。
(18)[アクセス制御(IAM)] を選択し、[追加]=>[ロールの割り当ての追加] の順で選択します。
(19)[役割] を [ストレージ ファイル データの SMB 共有の管理者特権共同作成者 ] に選択します。
(20)管理者アカウントを選択してから、[保存] をクリックします。
6. ドメイン側の準備
ドメイン側の準備は以下の手順で行います。
- 検証用のユーザーを作成する
- 管理用Windows Server VMを作成する
- 検証OUとAD Groupを作成する
- FileSharesに権限を付与する
- GPOを設定する。
【Tips】
管理用Windows Serverにログインする際にエラーとなる場合があります。
その場合、該当するユーザがRDPでログインする権限がない場合がありますので、
本稿最下段に記載されている【補足】を参照し改善するかお試しください。
A. 検証用のユーザーを作成する
既存のユーザーを利用することも可能ですが、ユーザーのパスワードを変更する必要があります。ここは、新規で検証用ユーザーを作成する手順をご紹介します。
(1) Azure portal にサインインして、メニューから [Azure Active Directory] を選択します。
(2) [ユーザー] を選択します。
(3) [+新しいユーザー] をクリックします。
(4) [ユーザー名] と [名前] を指定します。
(5) [パスワード] を指定します。
(6) [利用場所] を [Japan] にします。
(7) [作成] をクリックします。
複数テストユーザーを作成したいであれば、上記 (1)-(7) まで、再度実行してください。
こちらで作成したテストユーザーを利用するためには、AAD DSサービスと同期することを待つ必要があります。一般には20分ほどかかります。
B. 管理用Windows Server VMを作成する
AAD DS を利用する際に、オンプレミス環境と違って、OUやGPOなどを管理する際に、管理用のWindows Server VMが必要となります。
(1) 上記VMを作成する手順で、AAD DSと同じサブネットで、Windows Serverを作成します。
(2) デプロイが完了したら、[リソースに移動] をクリックします。
(3) [接続] を選択してから、[RDP] を選択します。
(4) [RDPファイルのダウンロード] をクリックします。
(5) ダウンロードしたファイルをダブルクリックして、サーバーに接続します。
(6) 管理者権限で以下のPowerShellを実施し、必要のWindows機能をインストールします。
Add-WindowsFeature -Name RSAT-Role-Tools, GPMC
(7) 管理者権限で以下のPowerShellを実施し、AAD DSのマネージド ドメインを参加します。Credentialが聞かれる場合、上記ステップ [AAD DSのマネージド ドメインを作成する-17]で変更したユーザー情報をご入力ください。
Add-Computer -DomainName <Domain名> -Restart
Domain名は、AAD DSを構築する際に指定したものとなります。
C. 検証OUとAD Groupを作成する
(1) VMが再起動した後、RDPにて、上記ステップ [AAD DSのマネージド ドメインを作成する-17]で変更したユーザーでVMにアクセスします。
(2) [Server Manager] で、[Tools]=> [Azure Directory Users and Computers] の順で選択します。
(3) ドメインを選択し、右クリックします。
(4) [New]=> [Organizational Unit] を選択します。
(5) [Name] を入力して、[OK]をクリックします。例:AVDTest
(6) [View] メニューから、 [Advanced Features] をチェックします。
(7) 作成したOUを右クリックし、[Properties] を選択します。
(8) [Attribute Editor] タブを選択し、[distinguishedName] の値をコピーします。
(9) 作成したOUを右クリックし、[New]=>[Group] の順で選択します。
(10) [Group name] を入力し(例:AVDTestUsers)、[OK] をクリックします。
D. FileSharesに権限を付与する
(1) Azure Filesの構成-17にて記録したPowerShellを実行し、FileShares に接続します。
(2) 接続したファイル共有を右クリックし、[Properties] を選択します。
(3) [Security] で、[Edit] をクリックします。
(4) [Add] をクリックし、上記作成したAD Groupを選択してから、[OK] をクリックします。
(5) [Modify] 権限をチェックしてから、[OK] をクリックします。
(6) [OK] をクリックします。
E. GPOを設定する。
オンプレミス環境と同じ、GPOを利用して、色々なことができます。ここは、FSLogixの設定する手順をご紹介します。
(1) 管理用Windows Server VMにて、以下のリンクから、最新のFSLogixをダウンロードします。
https://aka.ms/fslogix_download
(2) ダウンロードしたファイルを展開します。
(3) fslogix.admxを %SYSTEMROOT%\PolicyDefinitionsにコピーします。
(4) fslogix.admlを %SYSTEMROOT%\PolicyDefinitions\en-USにコピーします。
(5) [Server Manager] から、[Tools] => [Group Policy Management] の順で選択します。
(6) ドメインを展開し、上記作成したOUを選択してから、右クリックします。
(7) [Create a GPO in this domain, and Link it here] を選択します。
(8) GPOの [Name] を指定してから、[OK] をクリックします。例:AVDFsLogix
(9) 作成したGPOを右クリックし、[Edit] をクリックします。
(10)[Computer Configuration] =>[Policies]=>[Administrative templates]=>[FSLogix]=>[Profile Containers] の順で選択します。
(11)[Enabled] をクリックして、[Enabled] を選択し、[Enabled] をチェックしてから、[OK] をクリックします。
(12)[VHD location] をクリックし、[Enabled] を選択し、 [VHD location] に、上記ステップで作ったファイル共有のPathを指定してから、[OK] をクリックします。
(13)[Group Policy Management Editor] を閉じます。
7. ホストプールの作成
これから、AVDのホストプールを作成する手順をご紹介します。
(1) Azure portal にサインインします。
(2) 検索ボックスに、[Azure Virtual Desktop] と入力します。 検索結果から [Azure Virtual Desktop] を選択します。
(3) [ホストプールの作成] を選択します。
(4) [基本] で以下のように設定します。
[サブスクリプション] を選択する。 AAD DSと同じ。
[リソースグループ] を選択する。 AAD DSと同じ。
[ホストプール名] を指定する。例:avdpool
[場所] は規定のままで良いです。現在点では、日本に保存することはまだサポートされていません。ここの場所は、Host VMの場所ではなく、AVDサービス自身のメタデータを保存する場所となります。
[検証環境] を [いいえ] に選択する。
[ホストプールの種類] を [プール] に選択する。
(5) [仮想マシン] で [仮想マシンの追加] を [はい] に選択します。
(6) [名前のプレフィックス] を指定します。例:avd-hostを指定する場合、VMがavd-host-0,avd-host-1…のように作成されます。
(7) [仮想マシンの場合] をエンドユーザーの場所に合わせて選択します。例:東日本。
(8) [可用性オプション] では可用性ゾーンを選択します。
(9) [可用性ゾーン] を指定します。一つのRegionには、3つの可用性ゾーンがあります。そのため、Host VMをこの3つの可用性ゾーンに分散させるのは一般的なやり方です。例えば、10台VMを追加したい場合、3,3,4に分けて追加いただければと思います。
(10) [イメージの種類] でギャラリーを選択します。
(11) [イメージ] を上記ステップで作成したOSイメージを指定します。
具体的には、[すべてのイメージを表示] をクリックしてから、[イメージの設定] ページで、マイアイテムを選択します。
そして、[共有イメージ] を選択してから、作ったイメージを選択します。
(12) [仮想マシンのサイズ] を選択します。
(13) [VM数] を指定します。
(14) [OS ディスクの種類] を選択します。
(15) [仮想ネットワーク] の [vmSubnet] を選択します。
(16) [参加するディレクトリを選択する] を [Active Directory] に選択します。
(17) [ADドメイン参加UPN] を上記パスワードが変更された管理者を指定します。
(18) [パスワード] を指定します。
(19) [ドメインまたユニットの指定] を [はい] にします。
(20) [参加するドメイン] は、 AAD DSのドメイン名を指定します。
(21) [組織単位のパス] を上記[ドメイン側の準備=>B=>8] にてコピーした値を指定します。
(22) [仮想マシンの管理者アカウント] を指定します。 ドメインの参加正しく実行されれば、ドメインユーザーでログインすること可能です。こちらのアカウントは、あくまで、トラブルシューティングする際に、利用されるかと認識いただければと思います。
(23) [ワークスペース] で [デスクトップ アプリ グループの登録] を [はい] にします。
(24) [新規作成] をクリックし、[ワークスペース名] を入力してから、[OK] をクリックします。
(25) [確認と作成] をクリックします。
(26) [作成] をクリックします。
(27) デプロイが完了したら、[リソースに移動] をクリックします。
(28) 左のタブから[割り当て]を選択後、[追加] をクリックします。
(29) 追加対象ユーザーを選択後、下部にある [選択] をクリックします。例えば、上記ステップで作成したユーザーを追加します。
8. セッションホストへの接続
ここでは、Web クライアントを例として接続手順をご紹介します。他は色々なツールも提供されていますが、詳しい手順は、以下をご参照ください。
https://docs.microsoft.com/ja-jp/azure/virtual-desktop/user-documentation/connect-web
(ア) 以下のリンクでAVDのWeb クライアントを起動します。
https://rdweb.wvd.microsoft.com/arm/webclient/index.html
(イ) 上記追加されたテストユーザーでログインします。
(ウ) [SessionDesktop] をクリックし、セッションホストへ接続します。
【補足】
"6. ドメイン側の準備"で構築した管理用Windows Serverにログインできない場合、以下の2つの原因が考えられますので、以下の手順を実施いただき改善するかお試しください。
原因1.該当するユーザー管理者グループ(AAD DC Administrators )に入っていない。
Azure Portalにログインし、以下の順で選択してください。
Azure Active Directory => グループ => AAD DC Administrators => メンバー
該当するユーザーがあるかを確認します。ない場合では、追加していただき、20分ほどを待っていただければ、アクセスできるはずです。
原因2.Domainに参加する際に、正しく権限が付与されていなかった
VMを作成時に指定したユーザでログインして、以下の順でユーザーを追加する。
Control Panel>System>Remote settings>Remote Desktop tab下のSelect Users under >リストにdomain userを追加
まとめ
本ブログでは、クラウド オンリーの利用シーンにベースにして、AVDの構築手順や、構築するさいに配慮すべき点をご紹介しました。前編/後編に渡っての長い文章となりましたが、構築する際にご参考になれば嬉しいです。
【第3回】AVDを活用し、DXを進める(構築編-ハイブリッドクラウド)~前編~
【第3回】AVDを活用し、DXを進める(構築編-ハイブリッドクラウド)~後編~ に続く
~~~~~ ”Azure Virtual Desktop(AVD)を活用してみよう”【全5回】シリーズ ~~~~~
☆【第1回】AVDを活用し、DXを進める(基礎編)
☆【第2回】AVDを活用し、DXを進める(構築編-クラウド オンリー)~前編~
☆【第2回】AVDを活用し、DXを進める(構築編-クラウド オンリー)~後編~
☆【第3回】AVDを活用し、DXを進める(構築編-ハイブリッドクラウド)~前編~
☆【第3回】AVDを活用し、DXを進める(構築編-ハイブリッドクラウド)~後編~
☆【第4回】AVDを活用し、DXを進める(運用編)
☆【第5回】AVDを活用し、DXを進める(統括編)