Azure Virtual Desktop の自動スケーリング プランを作成する
重要
個人用ホスト プールでの自動スケーリングは現在プレビュー段階です。 ベータ版、プレビュー版、または一般提供としてまだリリースされていない Azure の機能に適用される法律条項については、「Microsoft Azure プレビューの追加使用条件」を参照してください。
自動スケーリングを使用すると、ホスト プール内のセッション ホスト仮想マシン (VM) をスケジュールに応じてスケールアップまたはスケールダウンして、デプロイ コストを最適化できます。
自動スケーリングの詳細については、「Azure Virtual Desktop での自動スケーリング プランとシナリオ例」を参照してください。
注意
- Azure Virtual Desktop (クラシック) では、自動スケーリングはサポートされていません。
- 自動スケーリングでは Azure Stack HCI 用 Azure Virtual Desktop はサポートされません。
- 自動スケーリングでは、エフェメラル ディスクのスケーリングはサポートされません。
- 自動スケーリングでは、マシン固有の情報が削除された一般化された VM または sysprep された VM のスケーリングはサポートされていません。 詳細については、「イメージを作成する前に VM を一般化してマシン固有の情報を削除する」を参照してください。
- 自動スケーリングと、Azure Automation および Azure Logic Apps を使用したセッション ホストのスケーリングを同じホスト プールで使用することはできません。 どちらか一方を使用する必要があります。
- 自動スケーリングは、Azure と Azure Government で使用できます。
- 現在、個人用の自動スケーリングは Azure portal でのみ構成できます。
最適な結果を得るには、Azure Virtual Desktop Azure Resource Manager テンプレートまたは Microsoft のファーストパーティ ツールを使用してデプロイした VM で自動スケーリングを使用することをお勧めします。
重要
Azure での自動スケーリングを使ったスケーリング プランのデプロイは現在、次のリージョンに制限されています:
- オーストラリア東部
- カナダ中部
- カナダ東部
- インド中部
- 米国中部
- 米国東部
- 米国東部 2
- 東日本
- 米国中北部
- 北ヨーロッパ
- 米国中南部
- 英国南部
- 英国西部
- 米国中西部
- 西ヨーロッパ
- 米国西部
- 米国西部 2
- 米国西部 3
前提条件
スケーリング プランを使用するには、次のガイドラインに従ってください。
- スケーリング プランは、割り当て先のホスト プールと同じ Azure リージョンに作成する必要があります。 ある Azure リージョンのスケーリング プランを別の Azure リージョンのホスト プールに割り当てることはできません。
- プールされたホスト プールで自動スケーリングを使用する場合は、そのホスト プールに MaxSessionLimit パラメータが構成されている必要があります。 既定値は使用しないでください。 この値は、Azure portal のホスト プール設定で構成するか、New-AzWvdHostPool または Update-AzWvdHostPool の PowerShell コマンドレットを実行して構成します。
- セッション ホスト VM の電源状態を管理するには、Azure Virtual Desktop アクセス権を付与する必要があります。 使用するサブスクリプションで Azure Virtual Desktop サービス プリンシパルにロールベースのアクセス制御 (RBAC) ロールを割り当てるには、それらのサブスクリプションに対する
Microsoft.Authorization/roleAssignments/write
の アクセス許可を持っている必要があります。 これは、ユーザー アクセス管理者と所有者の組み込みロールの一部です。
Azure portal を使用して Desktop Virtualization Power On Off共同作成者ロールを割り当てる
最初のスケーリング プランを作成する前に、割り当て可能なスコープとして、Azure サブスクリプションで Desktop Virtualization Power On Off 共同作成者 RBAC ロールを Azure Virtual Desktopサービスプリンシパルに割り当てる必要があります。 この ロールを、リソース グループ、ホスト プール、VM など、ご利用のサブスクリプションより低いレベルで割り当てると、自動スケーリング機能が正しく動作しなくなります。 各 Azure サブスクリプションを、自動スケーリングで使用するホスト プールとセッション ホスト VM を含む割り当て可能なスコープとして追加する必要があります。 このロールと割り当てにより、Azure Virtual Desktop は、これらのサブスクリプション内のすべての VM の電源状態を管理できます。 また、アクティブなユーザー セッションがない場合、サービスでホスト プールと VM の両方にアクションを適用させることもできます。
"Desktop Virtualization Power On Off 共同作成者" ロールを Azure Virtual Desktop サービス プリンシパルに割り当てる方法については、「Azure Virtual Desktop サービス プリンシパルに RBAC ロールを割り当てる」を参照してください。
スケーリング プランを作成する
サブスクリプションのサービス プリンシパルに Desktop Virtualization Power On Off 共同作成者 ロールを割り当てたので、スケーリング プランを作成できます。 スケーリング プランを作成するには、次のようにします。
Azure portal にサインインします。
検索バーに「Azure Virtual Desktop」と入力し、一致するサービス エントリを選択します。
[スケーリング プラン] を選択し、[作成] を選択します。
[基本] タブで、[プロジェクトの詳細] の下を確認し、スケーリング プランを割り当てるサブスクリプションの名前を選択します。
新しいリソース グループを作成する場合は、[新規作成] を選択します。 既存のリソース グループを使用する場合は、ドロップダウン メニューからその名前を選択します。
スケーリング プランの名前を [名前] フィールドに入力します。
必要に応じて、ユーザーに表示される "わかりやすい" 名前と、プランの説明を追加することもできます。
[リージョン] で、スケーリング プランのリージョンを選択します。 オブジェクトのメタデータは、リージョンに関連付けられた地域に格納されます。 リージョンの詳細については、データの場所に関するページを参照してください。
[タイム ゾーン] で、プランで使用するタイム ゾーンを選択します。
[ホスト プールの種類] で、スケーリング プランを適用するホスト プールの種類を選びます。
[除外タグ] に、スケーリング操作に含めない VM のタグ名を入力します。 たとえば、例外タグ excludeFromScaling を使用することで、メンテナンス中に自動スケーリングがドレイン モードをオーバーライドしないようにするために、ドレイン モードに設定されている VM にタグを付けることができます。 ホストプール内のいずれかの VM のタグ名フィールドに "excludeFromScaling" を設定した場合、自動スケーリングはそれらの特定の VM の起動、停止、またはドレイン モードの変更を行いません。
注意
- 除外タグによって、タグ付き VM が電源管理のスケーリング操作から除外されますが、タグ付き VM は、引き続きホストの最小割合の計算の一部として見なされます。
- ユーザー プリンシパル名やその他の個人を特定できる情報など、機密情報を除外タグに含めないようにしてください。
[次へ] を選択します。[スケジュール] タブが表示されます。
スケジュールを構成する
スケジュールを使用すると、1 日を通して自動スケーリングで VM のオンとオフを切り替えるタイミングを定義できます。 スケジュール パラメータは、スケーリング プランで選んだホスト プールの種類に応じて異なります。
スケジュールの各フェーズでは、自動スケーリングによって VM がオフになるのは、使用されているホスト プールの容量が容量のしきい値を超えない場合のみです。 スケジュールを作成しようとするときに表示される既定値は平日に推奨される値ですが、必要に応じて変更できます。
スケジュールを作成または変更するには、次のようにします。
[スケジュール] タブで [スケジュールの追加] を選択します。
[スケジュール名] フィールドにスケジュールの名前を入力します。
[Repeat on](次の日に繰り返す) フィールドで、スケジュールを繰り返す日を選択します。
[Ramp up](増加) タブで、次のフィールドに入力します。
[開始時刻] で、営業時間のピーク時のために VM の準備を開始する時刻をドロップダウン メニューから選択します。
[負荷分散アルゴリズム] には、幅優先アルゴリズムを選択することをお勧めします。 幅優先の負荷分散により、既存の VM 全体にユーザーが分散され、アクセス時間が短縮されます。
注意
ここで選択した負荷分散設定によって、元のホスト プール設定で選択した設定がオーバーライドされます。
ホストの最小割合 には、このフェーズで常にオンにしておきたいセッション ホストの割合を入力します。 入力した割合が整数でない場合は、最も近い整数に切り上げされます。 たとえば、7 つのセッション ホストで構成されるホスト プールで、使用量が増加する時間帯におけるホストの最小割合を 10% に設定した場合、使用量が増加する時間帯は 1 つの VM が常にオンになり、自動スケーリングによってオフにされることはありません。
容量のしきい値 には、スケーリング アクションの実行をトリガーする使用可能なホスト プール容量の割合を入力します。 たとえば、最大セッション制限が 20 であるホスト プール内の 2 つのセッション ホストが稼働している場合、使用可能なホスト プールの容量は 40 になります。 容量のしきい値が 75% に設定され、セッション ホストに 30 を超えるユーザー セッションがある場合、自動スケーリングは 3 番目のセッション ホストを稼働させます。 これにより、使用可能なホスト プールの容量は 40 から 60 に変更されます。
[ピーク時間] タブで、次のフィールドに入力します。
[開始日時] には、1 日のうち使用率が最も高くなる開始時刻を入力します。 時刻が、スケーリング プランに指定したものと同じタイム ゾーンにあることを確認してください。 この時刻は、増加フェーズの終了時刻でもあります。
[負荷分散] には、幅優先または深さ優先の負荷分散を選択できます。 幅優先の負荷分散では、新しいユーザー セッションがホスト プール内のすべての使用可能なセッション ホストに分散されます。 深さ優先の負荷分散では、セッション制限に達していない接続数が最も多い利用可能なセッション ホストに、新しいセッションが分散されます。 負荷分散の種類の詳細については、「Azure Virtual Desktop の負荷分散方法を構成する」を参照してください。
注意
ここで容量のしきい値を変更することはできません。 代わりに、[Ramp up](増加) で入力した設定がこの設定に引き継がれます。
[Ramp-down](減少) には、[Ramp up](増加) と同様のフィールドに値を入力しますが、今回は、ホスト プールの使用量が低下するときの値を入力します。 これには、次のフィールドが含まれます。
- 開始時刻
- 負荷分散アルゴリズム
- ホストの最小割合 (%)
- 容量のしきい値 (%)
- Force logoff users(ユーザーの強制ログオフ)
重要
- 使用量が減少する時間帯にユーザーに強制的にサインアウトさせるために自動スケーリングを有効にする場合は、シャット ダウンするユーザー セッションの数が最も少ないセッション ホストが選ばれます。 自動スケーリングは、セッション ホストをドレイン モードに設定し、すべてのアクティブ ユーザー セッションにサインアウトを予告する通知を送信し、指定された待機時間が経過すると、すべてのユーザーをサインアウトします。 自動スケーリングは、すべてのユーザー セッションをサインアウトした後、VM の割り当てを解除します。 使用量が減少する時間帯の強制サインアウトを有効にしていない場合、アクティブまたは切断されたセッションがないセッション ホストは、割り当てが解除されます。
- 使用量が少ない時間帯は、容量のしきい値を超えることなく、ホスト プール内の既存のすべてのユーザー セッションをより少数の VM に統合できる場合にのみ、自動スケーリングによって VM がシャットダウンされます。
同様に、[Off-peak hours](オフピーク時間) は、[ピーク時間] と同じように動作します。
- 開始時刻。これは、減少期間の終わりでもあります。
- 負荷分散アルゴリズム。 各 VM 上のセッションに基づいてセッション ホストの数を徐々に減らすには、深さ優先を選択することをお勧めします。
- ピーク時間と同様に、ここで容量のしきい値を構成することはできません。 代わりに、[Ramp-down](減少) に入力した値が引き継がれます。
ホスト プールを割り当てる
スケーリング プランを設定したので、次はホスト プールにプランを割り当てます。 含める各ホスト ポールの隣にあるチェック ボックスをオンにします。 自動スケーリングを有効にしない場合は、すべてのチェック ボックスをオフにします。 この設定は後でいつでも戻って変更できます。 スケーリング プランは、プランで指定されたホスト プールの種類に一致するホスト プールにのみ割り当てることができます。
注意
ホスト プールに既に割り当てられているスケーリング プランを作成または更新すると、その変更が直ちに適用されます。
個人用ホスト プールの自動スケーリングはプレビュー段階ですが、2,000 を超えるセッション ホストがある個人用ホスト プールにスケーリング プランを割り当てることはお勧めしません。
タグを追加する
その後、タグを入力する必要があります。 タグは、統合された課金のためにリソースを分類する名前と値のペアです。 同じタグを複数のリソースとリソース グループに適用できます。 リソースにタグを付ける方法の詳細については、タグを使用して Azure リソースを整理することに関する記事を参照してください。
注意
タグの作成後に他のタブでリソース設定を変更すると、タグが自動的に更新されます。
完了したら、[確認と作成] タブに移動し、[作成] を選択してホスト プールをデプロイします。
既存のスケーリング プランを編集する
既存のスケーリング プランを編集するには:
Azure portal にサインインします。
検索バーに「Azure Virtual Desktop」と入力し、一致するサービス エントリを選択します。
[スケーリング プラン] を選択し、編集するスケーリング プランの名前を選択します。 スケーリング プランの概要ブレードが開きます。
スケーリング プランのホスト プール割り当てを変更するには、[管理] の見出しの下で [ホスト プールの割り当て] を選びます。
スケジュールを編集するには、[管理] という見出しで [スケジュール] を選択します。
プランのフレンドリ名、説明、タイム ゾーン、または除外タグを編集するには、[プロパティ] タブに移動します。
次のステップ
スケーリング プランを作成したので、次の操作を実行できます。
この記事で使用されている用語の詳細については、自動スケーリングの用語集に関するページを参照してください。 自動スケールのしくみの例については、「自動スケーリングのシナリオ例」を参照してください。 また、その他の質問がある場合は、自動スケーリングの FAQ を参照できます。