Citrix DaaS

Autoscaleプラグイン

Autoscaleプラグインは、仮想マシンの電源管理に対して直接アクションを実行できるプラグインモデルです。 仮想マシンの電源管理に関連する標準のAutoscale設定から逸脱し、シナリオごとに異なる設定を行うことができます。 以下は、現在使用できるプラグインです:

Autoscaleの休日プラグイン

Autoscale休日プラグインを使用すると、休日のさまざまな設定を処理できます。 たとえば、平日はほとんどの仮想マシンの電源をオンにする場合、デフォルトでは平日のスケジュールが祝日に適用されます。 このようなシナリオに対処するために、このプラグインを使用すると、指定した休日の日に仮想マシンの電源をオフにすることができます。

Studioを使用してカスタム休日スケジュールを作成する

Studioを使用して、休日などの特定の日にデリバリーグループ内の未使用の仮想マシンをオフにするカスタムスケジュールを作成し、不要なリソース消費を削減できます。

カスタムスケジュールは作成後1日で有効になります。

カスタムスケジュールの作成

  1. Studioで[デリバリーグループ]に移動します。 デリバリーグループを右クリックし、[Autoscaleの管理]を選択します。
  2. [一般]ページで、[Autoscaleを有効にする]を選択します。
  3. [スケジュール]ページで、[スケジュールの作成]をクリックします。
  4. スケジュールの名前を入力します。
  5. デリバリーグループ内の仮想マシンをオフにする日付を1つまたは複数選択します。

    Studioを使用してカスタムスケジュールを作成する

  6. このスケジュールを他のデリバリーグループで使用するためにテンプレートとして保存する場合は、[テンプレートとして保存]をクリックします。
  7. カスタムスケジュールを作成するには、[完了]をクリックします。

    これで、[スケジュール]ページの[カスタム]の下に作成されたカスタムスケジュールが表示されるはずです。

カスタムスケジュールを編集する

  1. 編集するスケジュールの[操作]の下の鉛筆アイコンをクリックします。 次の編集を実行できます:

    • カスタムスケジュールを無効にするには[有効]トグルボタンをオフにします。
    • テンプレートを変更または適用します。
    • スケジュールの名前を変更します。
    • スケジュールの日付を変更します。
  2. 変更を適用するには、[完了]をクリックします。

カスタムスケジュールを削除することもできます。

デリバリーグループを削除すると、そのカスタムスケジュールも削除されます。 保存されたテンプレートは削除されません。

PowerShellを使用して休日の日付を構成する

Autoscale休日プラグインをデリバリーグループに関連付け、休日の日付を構成して、プラグインが構成された日付にVMの電源をオフにできるようにします。 これを実現するには、次のコマンドを実行します:

  1. 休日プラグインのUIDを取得するには、Get-BrokerAutoscalePluginを実行します。

      (Get-BrokerAutoscalePlugin -Name Citrix.AutoscalePlugin.HolidaySchedule).Uid
    <!--NeedCopy-->
    

    HolidayScheduleプラグインのUID値をメモします。 HolidayScheduleプラグインのUIDが1であると仮定します。

  2. プラグインを関連付けるデリバリーグループのUIDを取得します。 次に例を示します:

      $dgUid = (Get-BrokerDesktopGroup 'My Group Name').Uid
    <!--NeedCopy-->
    
  3. HolidayScheduleプラグインをデリバリーグループ(-AutoscalePluginUid “&lt;HolidaySchedule plugin value&gt;”)に関連付け、必要な休日の日付を指定します。 次に例を示します:

      New-BrokerAutoscaleGroupPlugin -Name "Company Holidays" -DesktopGroupUid $dgUid -AutoscalePluginUid 1 -Configuration '{"Holidays":["2024-11-28","2024-11-29","2024-12-25"]}'
    <!--NeedCopy-->
    

    作成されたAutoscaleGroupPluginのUID(プラグインとデリバリーグループ間の関連付け)をメモします。

    関連付けの名前は、特定の配信グループの関連付け間で一意である必要があります。 たとえば、1つのデリバリーグループには「会社の休日」という関連付けが1つだけ存在できるのに対して、他の1つ以上のデリバリーグループにも「会社の休日」という関連付けが存在する場合があります。

休日の日付を変更する

Set-BrokerAutoscaleGroupPlugin PowerShellコマンドを使用し、AutoscaleGroupPluginのUIDを指定して、指定した休日の日付を変更できます。 たとえば、AutoscaleGroupPluginのUIDが2であるとします。

  Set-BrokerAutoscaleGroupPlugin 2 -Configuration '{"Holidays":["2024-11-28","2024-11-29"]}'
<!--NeedCopy-->

重要な注意事項

Autoscale休日プラグインを使用する場合は、次の点を考慮してください:

  • Autoscale休日プラグインがアクティブな場合、すべてのVDAはオフになり、システムは処理能力が少ない場合に動作しません。 新しい起動要求はすべて処理されますが、VDAの起動準備のため、ユーザーに遅延が発生する可能性があります。
  • デリバリーグループにはタイムゾーンを指定する必要があります。
  • 日付の形式は「yyyy-mm-dd」である必要があります。
  • スケジュールの上書き(標準のAutoscale設定を上書きする)は1日前、前日の22:00に生成されます。 22:00以降は、翌日のスケジュールの上書きを追加、削除、または変更することはできません。
  • 同じAutoscaleプラグインを複数のデリバリーグループに関連付けることができます。 各デリバリーグループに対してNew-BrokerAutoscaleGroupPluginを実行し、そのグループに必要な休日を構成します。
  • 最新のSet-BrokerAutoscalePlugin -Configurationコマンドは、既存の休日をすべて、指定された新しい休日で上書きします。

インテリジェントなAutoscaleスケジュールプラグイン

インテリジェントなAutoscaleは、最小限の管理設定でデリバリーグループのパフォーマンスターゲットを構成できる、データ主導型のAutoscale機能です。 パフォーマンスターゲット値の範囲は1~99で、この値はユーザーエクスペリエンスとコストの目標バランスを指定します:

  • 値が低い場合はコスト削減を優先します。
  • 値が高いほど、ユーザーエクスペリエンスが優先されます。

パフォーマンスターゲットは、使用状況履歴データと組み合わせて、1日の30分ブロックごとに最適な処理能力バッファ(電源をオンにするVMの数)を計算します。 したがって、毎日の開始時に48個の最適な処理能力バッファが計算されます。

最適な処理能力バッファは、利用可能なマシンを管理するために、ピーク/オフピークの処理能力バッファとプールサイズに置き換わります。

最適な処理能力バッファを計算するために使用される使用状況履歴データは次のとおりです:

  • 顧客のログオン率(1分あたりのユーザー数)
  • VMの平均電源オン時間(分)
  • VMあたりのユーザー数で表した平均VM密度。

前提条件

インテリジェントAutoscaleを有効にするための要件は次のとおりです:

  • デリバリーグループは共有デリバリーグループである必要があります。
  • デリバリーグループではAutoscaleが有効になっている必要があります。
  • デスクトップグループのインテリジェントAutoscaleを構成する前に、デリバリーグループには少なくとも90日分の履歴データが必要です。 次のコマンドを使用して、ConnectionLogLifetimeHoursを48時間から90日に増やすことができます:

       Set-BrokerServiceConfigurationData Logging.ConnectionLogLifetimeHours -SettingValue 2160.
     <!--NeedCopy-->
    

重要な注意事項

  • デリバリーグループにはタイムゾーンを指定する必要があります。
  • スケジュールの上書きは、前日の22:00、1日前に生成されます。 22:00以降は、翌日のスケジュールの上書きを追加、削除、または変更することはできません。
  • 同じAutoscaleプラグインを複数のデリバリーグループに関連付けることができます。 各デリバリーグループに対してNew-BrokerAutoscaleGroupPluginを実行し、そのグループに必要なパフォーマンスターゲットを構成します。
  • 最新のSet-BrokerAutoscalePlugin -Configurationコマンドは、既存の休日をすべて、指定された新しい休日で上書きします。

パフォーマンスターゲットを構成する

IntelligentAutoscaleSchedulesプラグインをデリバリーグループに関連付け、パフォーマンスターゲットと使用状況履歴データを組み合わせて、1日の30分ブロックごとに最適な処理能力バッファを計算できるようにパフォーマンスターゲットを構成します。 これを実現するには、次のコマンドを実行します:

  1. インテリジェントAutoscaleプラグインのUIDを取得するには、Get-BrokerAutoscalePlugiを実行します。 IntelligentAutoscaleSchedulesプラグインのUID値をメモします。

      (Get-BrokerAutoscalePlugin -Name Citrix.AutoscalePlugin.IntelligentAutoscaleSchedules).Uid
    <!--NeedCopy-->
    

    IntelligentAutoscaleSchedulesプラグインのUIDが2であると仮定します。

  2. プラグインを関連付けるデリバリーグループのUIDを取得します。 次に例を示します:

      $dgUid = (Get-BrokerDesktopGroup 'My Group Name').Uid
    <!--NeedCopy-->
    
  3. IntelligentAutoscaleSchedulesプラグインをデリバリーグループ(-AutoscalePluginUid “&lt;IntelligentAutoscaleSchedules value&gt;”)に関連付け、必要なパフォーマンスターゲットの値を指定します。

      New-BrokerAutoscaleGroupPlugin -DesktopGroupUid $dgUid -AutoscalePluginUid 2 -Configuration '{"PerformanceTarget":70}'
    <!--NeedCopy-->
    
  4. 作成されたAutoscaleGroupPluginのUID(プラグインとデリバリーグループ間の関連付け)をメモします。

パフォーマンスターゲット値を更新する

Set-BrokerAutoscaleGroupPlugin PowerShellコマンドを使用し、AutoscaleGroupPluginのUIDを指定して、指定したパフォーマンスターゲット値を更新できます。 たとえば、AutoscaleGroupPluginのUIDが2であるとします。

  Set-BrokerAutoscaleGroupPlugin 2 -Configuration '{"PerformanceTarget":70}'
<!--NeedCopy-->

Autoscaleグループプラグインの自動承認を構成する

スケジュールの上書き(標準のAutoscale設定を上書きする)を許可するには、BrokerAutoscaleGroupPluginで次の2つのプロパティを構成します:

  • AutoApprove

    • Trueの場合:プラグインによって生成されたスケジュールの上書きが自動的に受け入れられることを示します。
    • Falseの場合:スケジュールは、ターゲット日付がApprovedUntilプロパティで指定された日付以前である場合にのみ受け入れられます。

    AutoApproveFalseであり、ApprovedUntilの日付が設定されていないか、過去の日付である場合、生成されたスケジュールの上書きは使用されず、破棄されます。

  • ApprovedUntil

    • AutoApproveFalseで、ApprovedUntilの日付を指定すると、プラグインによって生成されたスケジュールの上書きが、ターゲット日付のスケジュールとして自動的に受け入れられます。

たとえば、AutoscaleGroupPluginのUIDが2であるとします。

  • そのデスクトップグループの自動承認を有効にするには:

       Set-BrokerAutoscaleGroupPlugin 2 -AutoApprove $true
     <!--NeedCopy-->
    
  • 将来のある日付まで自動承認を有効にするには:

       Set-BrokerAutoscaleGroupPlugin 2 -ApprovedUntil "2025-01-01"
     <!--NeedCopy-->
    
Autoscaleプラグイン