Azure Virtual Desktop (AVD)でDR(災害復旧)を構築する!

今回は、AVD環境を東日本(プライマリ)~西日本(セカンダリ)での冗長構成で構築したいと思います。

AVDは、”AVD管理プレーン”と”Azureサブスクリプション”の二階建て構成となっております。AVD管理プレーンは、世界中に展開しているAzureデータセンターに構築されており、
当然ながら、東日本、西日本リージョンにも構築済みとなります。

DRを検討する際には、”AVD管理プレーン”と”Azureサブスクリプション”の2箇所を考慮する必要があります。

【AVD管理プレーンに対してのDR検討】

先ずは、AVD管理プレーンへの接続方法をみていきます。

① [Traffic Manager]を利用して、一番近い[RDWeb]に接続を行います。
② [RDWeb]から認証のため、[AzureAD]にリダイレクトされます。
③ 認証を通過すると、[RDWeb]を通して、[Feed](Workspace/AppGroup)を取得します。
④ [Feed]は[Traffic Manager]を利用して、[Metadata]があるリージョンの[RDBroker]に接続し[Metadata](RDPfile/Icon)を取得します。

⑤ RDPfileを元に[Front Door]を経由して、一番近い[RDGateway]に接続を行います。
⑥ [RDGateway]は[Traffic Manager]を利用して、セッションホストがあるリージョンの[RDBroker]に接続します。
⑦ [RDBroker]は接続可能なセッションホストに対し、[RDGateway]経由してクライアントのセッションに接続するように指示します。
※クライアントは最寄りの[RDGateway]に、SessionHostは最寄りの[RDBroker]に接続

このように、AVD管理プレーンへの接続は、自動で最寄りのリージョンに接続されるため、
ユーザー側でDR対策を講じる必要はありません。
仮に、東日本のAVD管理プレーンが停止した場合、次に近い西日本側に接続されます。

【Azureサブスクリプションに対してのDR検討】

AzureサブスクリプションのDRは、管理プレーンほど簡単ではありません。サブスクリプション上には複数のリソースが存在するためです。先ずは、最低限必要となるリソースを洗い出し、次にレプリケーション方法を検討したいと思います。

レプリケーションしておきたいリソース

Master Image:Shared Image Galleryにてレプリケーションを行う。

・User Profile:ANFのクロスリージョンレプリケーション機能を利用する。
※ANF未提供リージョンでは、FSLogix(Cloud Cache)にて両方のリージョンにUser Profileを保存する方法もある。

・Pooled(Session Host):Master Imageから作成できるのでレプリケーションは必須ではないが、RTOを重視するのであればASRを利用する。

・Personal(Session Host):ユーザーによる更新分を保護するため、ASRを利用する。移行後は、メタデータリソースを再作成し、ホストプールへの再登録が必要となる。
※ローカルプロファイルを利用する場合、ANFは不要

・Active Directory:両方のリージョン用にADがあるとよい。オンプレでも可。

・Express Route:両方のリージョンで敷設しておく必要があります。※VPNでも可

※メタデータは、ペアリージョン間でバックアップ[東日本→西日本]されております。
ただし、リージョン障害時に切り替わる事は無いので、再作成する必要があります。
・ホストプール
・アプリケーショングループ
・ワークスペース
・ユーザー割り当て情報

各リソースのレプリケーション方法

・Master Image の設定はこちら
マスターイメージ管理サービス! 共有イメージギャラリー を試す!

・Azure NetApp Files の設定はこちら
マネージドなファイルサーバー Azure NetApp Files を試す!

Azure NetApp Files で Cross Region Replication を試す!

・FSLogix の設定はこちら
Azure Virtual Desktop 用のマスターイメージを作成してみる!」※Step2

[Profile Container]の場合 ※オススメ
例:優先度1=プライマリANF、優先度2=セカンダリANF
\\ANF_East.avd.com\Primary;\\ANF-WEST.avd.com\Secondary;

[Cloud Cache]の場合
例:優先度1=プライマリANF、優先度2=セカンダリANF
type=smb,connectionString=\\ANF_East.avd.com\Primary;type=smb,connectionString=\\ANF-WEST.avd.com\Secondary;

※データ送信料削減のため、プライマリSession HostからセカンダリANF向けの通信をNSGでブロックしてください。セカンダリリージョンでも実施。

※コスト優先の場合は、Blob GRSがあるが気まぐれ非同期となります。
※オブジェクト レプリケーションは、Page Blob未対応のため対象外

・Session Host(Personal) の設定はこちら
リージョン冗長 Azure Site Recovery (ASR) を試す!


おまけ DRでは無く、両リージョン間を行き来して利用したい場合

・Master Image:Shared Image Galleryにてレプリケーションを行う。

・User Profile:Azure Premium Filesを利用し、FSLogix(Cloud Cache)にて両方のリージョンにUser Profileを保存する。
※ANFもGlobal Peering経由で接続ができるようになりました。

・Pooled(Session Host):予めSesion Hostを作成しておく。

・Personal(Session Host):予めSesion Hostを作成しておく。

・Active Directory:両方のリージョン用にADがあるとよい。オンプレでも可。

・Express Route:両方のリージョンで敷設しておく必要があります。※VPNでも可