Citrix DaaS™

サービスウィンドウ

サービスウィンドウ機能は、MCSプロビジョニングされたVMでの操作をスケジュールおよび自動化する機能を提供します。この機能は現在、OSディスクのリセットやハードウェア構成の変更など、さまざまな操作をサポートしています。これらの操作をスケジュールし、後で完了を確認するために戻ることができ、手動で更新を実行する必要がありません。

  • 特定のVMのリスト、またはマシンカタログ全体に対して操作をスケジュールできます。各操作は指定された時間に実行されます。同じVMに対して複数の操作をスケジュールできます。ただし、単一のVMに対して複数のハードウェア更新をスケジュールすることはできません。

  • また、次のことも可能です。

  • サービスウィンドウの説明を追加
  • 操作の実行時にログオンしているユーザーに表示される詳細なメッセージを提供
  • 操作が強制的に実行される前に、ログオンしているユーザーが作業を保存するために許可されるバッファー分数(分単位)を設定

利点

ユーザーエクスペリエンスと継続性の向上

  • スムーズなセッション処理: 突然の切断ではなく、VMがシャットダウンされる前に作業を保存するための専門的な通知を定義できます。
  • スケジュールされたダウンタイム: 重い更新タスクをオフピーク時間(例: 午前2時)に移動でき、その時間に手動でログインする必要がありません。
  • 費用対効果の高いハードウェア更新: サービスウィンドウを使用してハードウェアを更新することで、大規模な実装において大幅なコスト削減が可能です。この機能は、VMが設定を適用するために再起動が必要かどうかを自動的に分析します。したがって、不要な再起動を回避することで、サービスウィンドウはこれらの費用を最小限に抑えます。

高度なハードウェアの柔軟性

  • ハードウェア構成の更新: サービスウィンドウを使用してハードウェア更新をスケジュールします。システムは更新フローをインテリジェントに管理し、再起動の必要性を確認し、セッションのログオフを処理することで、手動での監視なしにカタログが新しいリソース要件を満たすように進化することを保証します。
  • 柔軟なSKU再構成: 以前はカタログの手動再作成が必要だったSKUを簡単に更新できます。
  • 既存VMの休止状態サポート: 「一時ディスク」の制限を克服します。サービスウィンドウにより、MCSIOドライバーはページファイルをC:ドライブに再配置し、すでに展開されているVMで休止状態プロパティを有効にできます。

重要な考慮事項

  • ユーザー通知: ログオンしているユーザーは、サービスウィンドウ操作に関する初期アラートを受け取り、作業を保存するのに十分な時間を確保できます。通知期間が終了すると、マシンは自動的にシャットダウンして操作を実行します。

制限事項

既存のVMではWBCディスクサイズを変更できません。これは新規VMのマシンカタログに適用できます。

サービスウィンドウの操作

  • サービスウィンドウは現在、PowerShellを使用したOSディスクのリセットとハードウェア構成の変更をサポートしています。

  • PowerShellコマンド: 一般的なコマンドはこの記事で概説されており、詳細なハイパーバイザー固有のスクリプトは当社のGitHubページ https://github.com/citrix/citrix-mcs-sdk-samples/ で確認できます。

OSディスクのリセット

-  OSディスクのリセットは、PowerShellコマンド `New-ProvMaintenanceCycle` を使用して実行できます。このコマンドは、カタログ全体または特定のVMに対して新しいサービスウィンドウを作成します。サイクルは `ScheduledStartTimeInUTC` で指定した時間に開始されます。また、サービスウィンドウが実行できる最大時間を示す `MaxDurationInMinutes` も指定します。

例: 特定のVMのOSディスクのリセット

-  ```

New-ProvMaintenanceCycle -Operation ResetOSDisk -MaintenanceCycleDescription “Resetting Boot Disk” -StartsNow -MaxDurationInMinutes 100 -ProvisioningSchemeName CVC -PurgeDBAfterInDays 1 -SessionWarningTimeInMinutes 15 -SessionWarningLogOffTitle “Scheduled Maintenance” -SessionWarningLogOffMessage “There is a scheduled maintenance coming up and involves turning off the machine, please save your work and log out, Thank You” -VMName VDA02,VDA03


### 例: カタログ全体のOSディスクのリセット

New-ProvMaintenanceCycle -Operation ResetOSDisk -MaintenanceCycleDescription “Resetting Boot Disk” -StartsNow -MaxDurationInMinutes 100 -ProvisioningSchemeName CVC -PurgeDBAfterInDays 1 -SessionWarningTimeInMinutes 15 -SessionWarningLogOffTitle “Scheduled Maintenance” -SessionWarningLogOffMessage “There is a scheduled maintenance coming up and involves turning off the machine, please save your work and log out, Thank You” -AllVMs


## ハードウェア設定の更新

サービスウィンドウを使用してハードウェア更新をスケジュールすることで、変更がいつ有効になるかを完全に制御できます。必要に応じて、新しく作成されたVMのみ、カタログ全体(新規および既存のVM)、または特定のVMをターゲットに選択できます。

    -  新規VMまたはカタログ全体のハードウェア設定を更新するには、プロビジョニングスキームのバージョンを選択し、PowerShellコマンド `New-ProvSchemeHardwareUpdate` を実行します。以前に作成したプロビジョニングスキームのバージョンをVMに適用できます。一時ディスクを持つVMで休止状態を有効にすることもできます。
    -  特定のVMのハードウェア設定を更新するには、VM構成バージョンを選択し、PowerShellコマンド `New-ProvVmHardwareUpdate` を実行します。

### 重要な考慮事項

-  ハードウェア更新のスケジュール設定後にカタログに追加された新しいマシンは、新しい仕様を適用するための指定されたUTC時間まで、古い仕様で作成され続けます。
-  サービスウィンドウ作成中の単一の検証失敗は、サイクルの作成を妨げ、エラーメッセージを返します。
    -  休止状態を有効にするには、以下を考慮してください。
    -  VDAバージョンは2503より大きい必要があります。
    -  Machine Creation Services I/O (MCSIO)がインストールされている必要があります。
    -  マシンプロファイルが休止状態をサポートしている必要があります。
    -  VM SKUとオペレーティングシステムが休止状態をサポートしている必要があります。
    -  VBSが有効な場合、Hyper-Vも有効にする必要があります。ネストされた仮想化には、VMでのTrusted Launchが必要です。
    -  空きOSディスクサイズは、VMのメモリサイズよりも大きい必要があります。

### マシンカタログ全体または新規VMでのハードウェア更新のスケジュール設定

1.  `New-ProvSchemeVersion` を実行して、更新されたハードウェア設定を持つ新しいプロビジョニングスキームバージョンを作成します。詳細については、[SDKドキュメント](https://developer-docs.citrix.com/en-us/citrix-virtual-apps-desktops-sdk/2511/machinecreation/new-provschemeversion)を参照してください。
1.  PowerShellコマンド `New-ProvSchemeHardwareUpdate` を実行して、プロビジョニングスキームバージョンで指定されたハードウェア更新のサービスウィンドウをスケジュールします。

**例: マシンカタログ内の `AllVMs` (新規および既存) が更新の対象となります。**

New-ProvSchemeHardwareUpdate -ProvisioningSchemeVersion 4 -MaintenanceCycleDescription “Updating RAM and CPU Count to 8GB and 4” -StartsNow -MaxDurationInMinutes 100 -ProvisioningSchemeName CVC -PurgeDBAfterInDays 1 -SessionWarningTimeInMinutes 15 -SessionWarningLogOffTitle “Scheduled Maintenance” -SessionWarningLogOffMessage “There is a scheduled maintenance coming up and involves turning off the machine, please save your work and log out, Thank You” -AllVMs


**例: マシンカタログ内の `NewVMsOnly` (新規および既存) が更新の対象となります。**

New-ProvSchemeHardwareUpdate -ProvisioningSchemeVersion 4 -MaintenanceCycleDescription “Updating RAM and CPU Count to 8GB and 4” -StartsNow -MaxDurationInMinutes 100 -ProvisioningSchemeName CVC -PurgeDBAfterInDays 1 -SessionWarningTimeInMinutes 15 -SessionWarningLogOffTitle “Scheduled Maintenance” -SessionWarningLogOffMessage “There is a scheduled maintenance coming up and involves turning off the machine, please save your work and log out, Thank You” -NewVMsOnly -


    -  `Get-ProvSchemeHardwareUpdate` を実行して、ハードウェアスキーム更新に関連付けられたサービスウィンドウオブジェクトを取得します。例:

    -  ```
    -  Get-ProvSchemeHardwareUpdate -MaintenanceCycleId xxxx-xxxx-yyyy-zzzz
    -  <!--NeedCopy-->

特定のVMでのハードウェア更新のスケジュール設定

    1. New-ProvVmConfiguration を実行して、新しいプロビジョニングVM構成を作成します。詳細については、SDKドキュメントを参照してください。
  1. PowerShellコマンド New-ProvVmHardwareUpdate を実行して、VM構成バージョンで指定されたハードウェア更新のサービスウィンドウをスケジュールします。
  • 注:

    各VMについて、パーソナライズされた設定(VM構成バージョン)は、プロビジョニングスキームバージョンで定義された仕様よりも常に優先されます。特定のVMで設定がパーソナライズされていない場合、その値は関連するプロビジョニングスキームバージョンから継承されます。

  • :
New-ProvVmHardwareUpdate -ProvVmConfigurationVersion 4 -StartsNow -MaxDurationInMinutes 100 -ProvisioningSchemeName CVC -VMName AbcTest01
-  <!--NeedCopy-->

Get-ProvVmHardwareUpdate を実行して、ハードウェアVM更新に関連付けられたサービスウィンドウオブジェクトを取得します。例:


Get-ProvVmHardwareUpdate -MaintenanceCycleId xxxx-xxxx-yyyy-zzzz

<!--NeedCopy-->

Remove-ProvVmConfiguration コマンドを使用して、プロビジョニングVMバージョンを作成するために使用されたパーソナライゼーションを削除することもできます。例:


Remove-ProvVmConfiguration -Version 2 -VMName AbcTest01

<!--NeedCopy-->

サービスウィンドウに関連するその他のPowerShellコマンド

  • Get-ProvMaintenanceCycle: すべてのサービスウィンドウの情報を取得します。例:

     Get-ProvMaintenanceCycle -MaintenanceCycleId 10073b8e-7e94-4527-8580-0e448eae0ad1
     <!--NeedCopy-->
    
  • Get-ProvMaintenanceCycleVM: 個々のVMの各サービスウィンドウ操作の情報を、そのステータスとともに取得します。例:

     Get-ProvMaintenanceCycleVM -MaintenanceOperation HardwareUpdate -VirtualMachineSid 42263076-44ae-1ff9-f58b-62d57ddf8db5
     <!--NeedCopy-->
    

    さまざまなサービスウィンドウのステータスは次のとおりです。

    • 実行中
    • 失敗
    • 完了
    • キャンセル中
    • キャンセル済み
    • 未処理
    • 保留中
    • 不完全
    • 修復済み
    • 回復中
  • Remove-ProvMaintenanceCycle: サービスウィンドウがアクティブでない場合にサービスウィンドウを削除します。例:

     Remove-ProvMaintenanceCycle -MaintenanceCycleId 867af1ba-5b72-402e-9dc3-033298248f8e
     <!--NeedCopy-->
    
  • Cancel-ProvMaintenanceCycle: MCSによってVMで操作がまだ開始されていない場合、このPowerShellコマンドは操作をキャンセルします。MCSは、VMで現在実行中の操作をキャンセルしません。例:

     Cancel-ProvMaintenanceCycle -MaintenanceCycleId 867af1ba-5b72-402e-9dc3-033298248f8e
     <!--NeedCopy-->
    
  • Restart-ProvMaintenanceCycle: ハイパーバイザーのダウンや時間不足などの外部要因により、サービスウィンドウが失敗したか不完全な場合、このコマンドはサイクルを再開し、失敗したジョブや未処理のジョブを処理するのに役立ちます。例:

     Restart-ProvMaintenanceCycle -MaintenanceCycleId 4f363b78-458a-403a-82e5-7fcc6caa498b -ScheduledStartTimeInUTC "June 19th 2024, 6AM" -MaxAllocatedDurationInMinutes 400
     <!--NeedCopy-->
    
  • Update-ProvMaintenanceCycle: サービスウィンドウがすでにスケジュールされており、まだ開始されていない場合、このコマンドは特定のパラメーターを変更します。

    例: 最大期間の更新:

     Update-ProvMaintenanceCycle -MaintenanceCycleId 4f363b78-458a-403a-82e5-7fcc6caa498b -MaxDurationInMinutes 100
     <!--NeedCopy-->
    

    例: プロビジョニングスキームのVMを更新:

     Update-ProvMaintenanceCycle -MaintenanceCycleId 4f363b78-458a-403a-82e5-7fcc6caa498b -ProvisioningSchemeUid 867af1ba-5b72-402e-9dc3-033298248f8e -VMName ncn01,ncn02
     <!--NeedCopy-->
    
サービスウィンドウ