Autoscale™ の使用を開始する
Autoscale は、構成されたスケジュールまたは負荷の要求に基づいてデリバリーグループをプロアクティブにスケーリングするための、一貫性のある高性能な電源管理ソリューションを提供する機能です。
Autoscale は、すべての種類のデリバリーグループに適用されます。
- シングルセッション静的OS
- シングルセッションランダムOS
- マルチセッションランダムOS
この記事では、Autoscale に関連する基本的な概念について説明し、デリバリーグループに対して Autoscale を有効にして構成する方法に関するガイダンスを提供します。
基本的な概念
開始する前に、Autoscale の以下の基本的な概念について学習してください。
- 容量とマシンの登録
- 複数のマシンカタログにわたるスケーリング
- マシンのプロビジョニングとセッションの需要
- インスタンスサイズの考慮事項
- スケジュール
- ピーク時とオフピーク時
- 電源オフ遅延
- プールサイズ
- 容量バッファ
- 負荷インデックス
- Autoscaleとメンテナンスモード
- マシンコスト
- デリバリーグループのスケールアップ
- デリバリーグループのスケールダウン
- ドレイン状態
容量とマシンの登録
Autoscaleは、容量を決定する際に、サイトに登録されているマシンのみを含めます。登録されていない電源オンのマシンは、セッション要求を受け入れることができません。その結果、それらはデリバリーグループの全体的な容量には含まれません。
複数のマシンカタログにわたるスケール
一部のサイトでは、複数のマシンカタログが単一のデリバリーグループに関連付けられている場合があります。Autoscaleは、スケジュールまたはセッションの需要要件を満たすために、各カタログからマシンをランダムに電源オンにします。
たとえば、あるデリバリーグループには2つのマシンカタログがあります。カタログAには3台のマシンが電源オンになっており、カタログBには1台のマシンが電源オンになっています。Autoscaleが追加のマシンを電源オンにする必要がある場合、カタログAまたはカタログBのいずれかのマシンを電源オンにする可能性があります。
マシンのプロビジョニングとセッション需要
デリバリーグループに関連付けられているマシンカタログには、需要の増減に応じて起動および停止するのに十分なマシンが必要です。セッション需要がデリバリーグループ内の登録済みマシンの総数を超えた場合、Autoscaleはすべての登録済みマシンが起動していることを保証します。ただし、Autoscaleは追加のマシンをプロビジョニングしません。
注:
デリバリーグループに63台のマシンがあり、営業時間外に10%のバッファ容量が設定されている場合、Autoscaleの計算によると、営業時間外に6.3台のマシンを起動する必要があります。小数値を処理するために、以下のルールが適用されます。
- 最も近い整数に丸める:たとえば、値が6.4の場合、6台のマシンが起動されます。値が6.7の場合、7台のマシンが起動されます。
- 1未満のゼロ以外の値はすべて1に丸める:たとえば、値が0.2または0.9の場合、1台のマシンが起動されます。
インスタンスサイズの考慮事項
パブリッククラウドでインスタンスのサイズを適切に設定すれば、コストを最適化できます。ワークロードのパフォーマンスと容量要件に合致する限り、より小さいインスタンスをプロビジョニングすることをお勧めします。
小さいインスタンスは、大きいインスタンスよりも少ないユーザーセッションをホストします。そのため、最後のユーザーセッションがログオフされるまでの時間が短いため、Autoscaleはマシンをより早くドレイン状態にします。結果として、Autoscaleはより早く小さいインスタンスの電源をオフにし、コストを削減します。
スケジュール
Autoscaleは、設定したスケジュールに基づいて、デリバリーグループ内のマシンの電源をオン/オフします。
スケジュールには、ピーク時とオフピーク時が定義されており、各時間帯のアクティブなマシンの数が含まれます。
スケジュール設定は、デリバリーグループの種類によって異なります。詳細については、以下を参照してください。
ピーク時間とオフピーク時間
ピーク時間とオフピーク時間は、1日の特定の期間にどのキャパシティバッファ値を使用するかを示すために使用されます。ピーク時間を定義し、残りの未定義の時間をオフピーク時間として残すことができます。
電源オフ遅延
電源オフ遅延とは、Autoscaleがマシンを電源オフにする前に、マシンが電源オンになってから経過しなければならない最小分数です。これにより、セッション需要が不安定なときにマシンが頻繁にオン/オフを繰り返すのを防ぎます。デフォルトでは、電源オフ遅延は30分です。0~60分の範囲で設定できます。
プールサイズ
プールサイズとは、1日の特定の期間に電源オン状態を維持する必要があるマシンの数です。
キャパシティバッファ
キャパシティバッファは、動的な負荷増加に対応するために、現在の需要に予備容量を追加するために使用されます。注意すべき2つのシナリオがあります。
- マルチセッションOSデリバリーグループの場合、キャパシティバッファは、ロードインデックスの観点から、デリバリーグループの総容量のパーセンテージとして定義されます。
- シングルセッションOSデリバリーグループの場合、キャパシティバッファは、デリバリーグループ内のマシンの総数のパーセンテージとして定義されます。
キャパシティバッファはローリングバッファであり、構成されたプールサイズに加えて計算および適用されるのではなく、現在の使用状況に基づいて計算および適用されます。
たとえば、10台のマシンを持つデリバリーグループ、現在の期間のプールサイズが1台のマシン、キャパシティバッファが10%であるとします。スケジュールで定義された1台の電源オンマシンが、10%のキャパシティバッファが満たされなくなるまでロードされたときに、追加のマシンが電源オンになります。2台目のマシンを電源オンにした後で負荷が減少し、10%のキャパシティバッファを満たすのに十分すぎるほどの空き負荷容量がある場合、Autoscaleは1台のマシンの電源オフを準備します。
ロードインデックス
重要:
ロードインデックスは、マルチセッションデリバリーグループにのみ適用されます。
ロードインデックスメトリックは、マシンがユーザーログオン要求を受信する可能性を決定します。これは、同時ログオン、セッション、CPU、ディスク、およびメモリ使用のために構成されたCitrix Load Management policy設定を使用して計算されます。
ロードインデックスは0から10,000の範囲です。デフォルトでは、マシンが250セッションをホストしている場合、完全にロードされていると見なされます。
-
数字の「0」は、アンロードされたマシンを示します。ロードインデックス値が0のマシンは、ベースラインロードの状態です。
-
数字の「10,000」は、これ以上セッションを実行できない完全にロードされたマシンを示します。
Autoscaleとメンテナンスモード
メンテナンスモードのマシンは、その可用性ステータスに関係なく、全体のプールサイズの計算の一部と見なされます。したがって、プール内のすべてのマシンがメンテナンスモードになる可能性があります。ただし、これらのマシンは容量バッファの計算から除外され、即座に利用可能であることが保証されます。ユーザー接続のために特定の割合のマシンがアクセス可能であることを保証するには、プールサイズとバッファ値を適切に調整してください。
マシンコスト
マシンインスタンスの1時間あたりのコストは、使用されているコンピューティング容量の1時間あたりのコスト(米ドル)です。この設定は、Autoscale設定のコスト削減を計算するために使用されます。削減額を表示するには、Director > Cost Optimization > Cost savingsに移動します。
デリバリーグループのスケールアップ
Autoscaleは、Autoscaleが有効なデリバリーグループで、次の場合に追加のマシンの電源をオンにします。
- デリバリーグループのAutoscaleスケジュールが、現在の期間により多くのマシンの電源をオンにする必要があることを示している場合。
- デリバリーグループの現在の負荷が容量バッファを超えている場合。
マシンの電源をオンにする条件:
- メンテナンスモードではないこと。
- ハイパーバイザーがメンテナンスモードではないこと。
- 電源がオフで未登録。
- スケールアップが必要なデリバリーグループに属している
- 保留中の電源操作がない。
デリバリーグループをスケールダウンする
Autoscale は、Autoscale が有効なデリバリーグループ内のマシンを、次の場合に電源オフにします。
- Autoscale スケジュールで、現在の期間に設定されたマシン数に合わせるためにマシンを電源オフにする必要があると指定されている場合。
- デリバリーグループの現在の負荷が減少し、プールサイズと容量バッファを満たすために必要な数よりも多くの電源オン状態のマシンが存在する場合。
Autoscale は、プールサイズと容量バッファを満たすために必要な数を超える余分なマシンの電源をオフにすることで、デリバリーグループをスケールダウンします。
スケールダウンプロセスには、次の2つのステップがあります。
- 必要な数のマシンをドレイン状態にする。
- ドレイン状態のすべてのマシンを電源オフのために選択する。
電源オフの対象となるマシンは、次の条件を満たしている必要があります。
- メンテナンスモードではない
- ハイパーバイザーがメンテナンスモードではない
- 現在電源オン状態である
- 起動後に利用可能として登録されているか、登録を待機している
- ドレイン済みでアクティブなセッションがない
- 保留中の電源操作がない
- 電源オフ遅延を満たしている
ドレイン状態
Autoscaleは、デリバリーグループ内の電源オン状態のマシンの数を、構成されたプールサイズと容量バッファにスケールダウンしようとします。
この目標を達成するために、Autoscaleはセッション数が最も少ない余分なマシンを「ドレイン状態」にし、すべてのセッションがログオフされたときにそれらの電源をオフにします。この動作は、セッションの需要が減少し、スケジュールで電源オン状態のマシンよりも少ないマシンが必要な場合に発生します。
マシンがドレインされる条件:
- 電源オン状態
- メンテナンスモードではない
- ハイパーバイザーがメンテナンスモードではない
- スケールダウンが必要なデリバリーグループに属している
- 現在のアクティブセッション数が最も少ない
注:
- 電源オフ遅延で指定された時間以上電源オン状態であったマシンは、ドレインの対象として優先されます。
- ドレイン状態のマシンは、新しいセッションの起動をホストしなくなり、既存のセッションがログオフされるのを待ちます。マシンは、すべてのセッションがログオフされた場合にのみシャットダウンされます。ただし、セッション起動にすぐに利用できるマシンがない場合、Autoscaleはマシンの電源を入れるよりも、ドレイン状態のマシンにセッション起動を誘導することを優先します。
Autoscaleは、余分なマシンを「ドレイン状態」に1台ずつ移行させます。
-
2台以上のマシンが同じ数のアクティブセッションを持っている場合、Autoscaleは指定された電源オフ遅延の間電源がオンになっていたマシンをドレインします。
そうすることで、最近電源がオンになったマシンがドレイン状態になるのを避けることができます。なぜなら、それらのマシンはセッション数が最も少ない可能性が高いからです。
-
2台以上のマシンが指定された電源オフ遅延の間電源がオンになっていた場合、Autoscaleはそれらのマシンをランダムに1台ずつドレインします。
ドレイン状態のマシンは、新しいセッションの起動をホストしなくなり、既存のセッションがログオフされるのを待っています。マシンは、すべてのセッションがログオフされた場合にのみシャットダウンの候補となります。ただし、セッション起動にすぐに利用できるマシンがない場合、Autoscaleはマシンの電源を入れるよりも、ドレイン状態のマシンにセッション起動を誘導することを優先します。
次のいずれかの条件が満たされると、マシンはドレイン状態から解除されます。
- マシンの電源がオフになっている。
- マシンが属するデリバリーグループでAutoscaleが無効になっている。
- Autoscaleは、スケジュールまたは負荷需要の要件を満たすためにマシンを使用します。このケースは、スケジュール(スケジュールベースのスケーリング)または現在の需要(負荷ベースのスケーリング)が、現在電源がオンになっているマシンの数よりも多くのマシンを必要とする場合に発生します。
重要:
セッション起動にすぐに利用できるマシンがない場合、Autoscaleはマシンの電源を入れるよりも、ドレイン状態のマシンにセッション起動を誘導することを優先します。セッション起動をホストするドレイン状態のマシンは、ドレイン状態のままになります。
どのマシンがドレイン状態にあるかを確認するには、Get-BrokerMachine PowerShellコマンドを使用します。例: Get-BrokerMachine -DrainingUntilShutdown $true。または、Studioを使用することもできます。「ドレイン状態のマシンを表示する」を参照してください。
ドレイン状態のマシンを表示する
注:
この機能はマルチセッションマシンにのみ適用されます。
Studioでは、ドレイン状態のマシンを表示して、どのマシンがシャットダウンしようとしているかを知ることができます。次の手順を完了します。
- 検索ノードに移動し、表示する列をクリックします。
- 表示する列ウィンドウで、ドレイン状態の横にあるチェックボックスをオンにします。
- 保存をクリックして、表示する列ウィンドウを終了します。
ドレイン状態列には、次の情報が表示されます。
- シャットダウンまでドレイン中。 マシンがシャットダウンされるまでドレイン状態にある場合に表示されます。
- ドレインしていません。 マシンがまだドレイン状態にない場合に表示されます。

デリバリーグループのAutoscaleを有効にする
デリバリーグループを作成すると、Autoscaleはデフォルトで無効になります。Web Studioを使用してデリバリーグループのAutoscaleを有効にして構成するには、次の手順に従います。
PowerShellコマンドを使用して、デリバリーグループのAutoscaleを有効にして構成することもできます。詳細については、「Broker PowerShell SDKコマンド」を参照してください。
-
左ペインでデリバリーグループを選択します。
-
管理するデリバリーグループを選択し、Autoscaleの管理をクリックします。

-
「Autoscaleの管理」ページで、「Autoscaleを有効にする」チェックボックスを選択してAutoscaleを有効にします。Autoscaleを有効にすると、ページ上のオプションが有効になります。

-
組織のニーズに基づいてデフォルト設定を変更するには、以下の設定を完了します。
-
非アクティブなマシンをより効率的に電源オフにするには、動的セッションタイムアウトとユーザーログオフ通知を使用します。
-
デリバリーグループ内のマシンの一部を電源管理するには、タグ付きマシンのAutoscaleを使用します。
Autoscaleを無効にするには、「Autoscale」チェックボックスをオフにします。ページ上のオプションがグレー表示され、選択したデリバリーグループでAutoscaleが無効になっていることを示します。
重要:
- Autoscaleを無効にすると、Autoscaleによって管理されていたすべてのマシンは、無効化された時点の状態を維持します。
- Autoscaleを無効にすると、ドレイン状態のマシンはドレイン状態から解除されます。ドレイン状態の詳細については、ドレイン状態を参照してください。
- 「負荷ベースの設定」ページにあるシングルセッションOS静的デリバリーグループおよびシングルセッションOSランダムデリバリーグループの「電源ポリシー」アクションは、Autoscaleの設定(有効または無効)とは独立しています。
ユーザーセッションを持つVMのAutoscaleオプション
Autoscaleは、割り当て済みマシンとプールされたマシンの両方を管理し、それらの電源と可用性を最適化できます。以下のコンテンツでは、割り当て済みマシンとプールされたマシンのピーク時およびオフピーク時、ユーザーセッションに基づいてマシンの電源状態を制御するためのPowerShellコマンドとUI設定について説明します。
割り当て済みマシンは単一ユーザー専用ですが、プールされたマシンは複数のユーザー間で共有されます。
注:
Citrix Studioのセッション制限ポリシー、特に切断セッションタイマーとアイドルセッションタイマーは、Citrix Autoscaleが有効になっていない場合でも、ユーザーセッションを管理するために不可欠です。これらのポリシーは、セッションが切断またはアイドル状態のまま終了するまでの時間を定義し、リソースの利用を確保し、ロックアウトされたセッションを防ぎます。このポリシー設定は、割り当て済みマシンとプールされたマシンの両方、特にマルチセッションVDAを実行しているマシンで使用できます。詳細については、「セッション制限ポリシー設定」を参照してください。
割り当て済みマシンについて
-
ピーク時間の開始時に静的デリバリーグループ内の割り当て済みシングルセッションマシンを自動的に電源オンにするには、次のPowerShellコマンドを使用します。
Set-BrokerDesktopGroup "Desktop Group Name" -AutomaticPowerOnForAssigned $True <!--NeedCopy--> -
ピーク時間中にオフになっている割り当て済みマシンが再起動されるようにするには、
AutomaticPowerOnForAssignedDuringPeakも有効にします。Set-BrokerDesktopGroup "Desktop Group Name" -AutomaticPowerOnForAssigned $True -AutomaticPowerOnForAssignedDuringPeak $True <!--NeedCopy--> -
ユーザーがセッションを起動したときにのみVMをオンにする場合は、次のいずれかを実行します。
-
AutomaticPowerOnForAssignedとAutomaticPowerOnForAssignedDuringPeakをFalseに設定します。 -
UIインターフェイスを使用して、すべての時間をピーク時間なしのオフピークとして定義します。「スケジュールベースの設定」を参照してください。オフピーク時間中、Autoscaleで管理されている割り当て済みマシンは、ユーザーセッションがない場合にシャットダウンされます。

-
-
ピーク時にすべてのマシンがAutoscaleによって電源オンになる場合、UIインターフェイスを使用して、待機時間(分)と、Autoscaleによってマシンが電源オンになった後にユーザーがログオンしない場合の「アクションなし」、「一時停止」、「シャットダウン」などのアクションを設定します。「電源ポリシー」を参照してください。
プールされたマシンについて
セッションログオフ後にプールされたマシンを自動的にシャットダウンするには、デリバリーグループに対してPowerShellコマンドShutdownAfterUseをTrueに設定します。例:
Set-BrokerDesktopGroup -Name “DesktopGroupName” -ShutdownDesktopsAfterUse $true
<!--NeedCopy-->
メトリックの監視
デリバリーグループでAutoscaleを有効にすると、DirectorからAutoscaleで管理されているマシンの次のメトリックを監視できます。
-
マシンの使用状況
-
推定節約額
-
マシンとセッションのアラート通知
-
マシンのステータス
-
負荷評価の傾向
注:
デリバリーグループでAutoscaleを最初に有効にすると、そのデリバリーグループの監視データが表示されるまでに数分かかる場合があります。 Autoscaleがデリバリーグループに対して有効化され、その後無効化された場合でも、監視データは引き続き利用可能です。Autoscaleは5分間隔で監視データを収集します。
メトリックの詳細については、「Autoscaleで管理されるマシンの監視」を参照してください。
休止状態の仮想マシンでのオートスケール
Autoscaleの構成可能な設定を通じてVMを休止状態にできます。PowerShellコマンドGet-BrokerDesktopGroups、New-BrokerDesktopGroups、またはSet-BrokerDesktopGroupsを使用して、パラメーターAutoscaleScaleDownActionDuringPeak(ピーク時)またはAutoscaleScaleDownActionDuringOffPeak(オフピーク時)に次の正の値を設定し、電源アクションを定義します。
- 0: スケールダウン時にVMをシャットダウンする
- 1: スケールダウン時にVMを一時停止(休止状態にする)する
休止状態にできないVMはシャットダウンされます。
デリバリーグループで休止状態が有効になっている場合、休止状態のVMの再起動スケジュールを構成できます。再起動サイクルでは、VMは再開され、その後シャットダウンされます。再起動スケジュールは、毎週、毎日、毎月、および1回に設定できます。複数のスケジュールを構成できます。ただし、休止状態から再開するVMには数分かかる場合があります。
Autoscaleは、ピーク時にセッションがない休止状態のマルチセッションRemote Desktop Services (RDS) および共有シングルセッションVMの電源をオンにすることもできます。VMはMCSおよび非MCSマシンカタログのいずれでもかまいません。
詳細情報
オートスケールの詳細については、テックゾーンの「Citrix Autoscale」を参照してください。