サービスウィンドウ

最終公開日 : Oct 24, 2026
サービスウィンドウ機能は、MCSプロビジョニングされたVMでの操作をスケジュールおよび自動化する機能を提供します。この機能は現在、OSディスクのリセットやハードウェア構成の変更など、さまざまな操作をサポートしています。これらの操作をスケジュールし、後で完了を確認するために戻ることができます。手動で更新を実行する必要はありません。
特定のVMリストまたはマシンカタログ全体に対して操作をスケジュールできます。各操作は指定された時間に実行されます。同じVMに対して複数の操作をスケジュールできます。ただし、単一のVMに対して複数のハードウェア更新をスケジュールすることはできません。
次のことも可能です。
  • サービスウィンドウの説明を追加します。
  • 操作の実行時にログオンしているユーザーに表示される詳細メッセージを提供します。
  • 操作が強制的に実行される前に、ログオンしているユーザーが作業を保存するために許可されるバッファ時間(分数)を設定します。

利点

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

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

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

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

重要な考慮事項

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

制限事項

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

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

サービスウィンドウは現在、OSディスクのリセットとPowerShellを使用したハードウェア構成の変更をサポートしています。
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ドキュメント を参照してください。
  2. プロビジョニングスキームバージョンで指定されているハードウェア更新のサービスウィンドウをスケジュールするには、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

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

  1. 新しいプロビジョニングVM構成を作成するには、New-ProvVmConfigurationを実行します。詳細については、SDKドキュメントを参照してください。
  2. PowerShellコマンドNew-ProvVmHardwareUpdateを実行して、VM構成バージョンで指定されたハードウェア更新のサービスウィンドウをスケジュールします。
注:
各VMについて、パーソナライズされた設定(VM構成バージョン)は、プロビジョニングスキームバージョンで定義された仕様よりも常に優先されます。特定のVMで設定がパーソナライズされていない場合、その値は関連付けられたプロビジョニングスキームバージョンから継承されます。
例:
New-ProvVmHardwareUpdate -ProvVmConfigurationVersion 4 -StartsNow -MaxDurationInMinutes 100 -ProvisioningSchemeName CVC -VMName AbcTest01
ハードウェアVMの更新に関連付けられたサービスウィンドウオブジェクトを取得するには、Get-ProvVmHardwareUpdateを実行します。例:
Get-ProvVmHardwareUpdate -MaintenanceCycleId xxxx-xxxx-yyyy-zzzz
プロビジョニングVMバージョンを作成するために使用されたパーソナライゼーションは、Remove-ProvVmConfigurationコマンドを使用して削除することもできます。例:
Remove-ProvVmConfiguration -Version 2 -VMName AbcTest01

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

  • Get-ProvMaintenanceCycle:すべてのサービスウィンドウの情報を取得します。例:
    Get-ProvMaintenanceCycle -MaintenanceCycleId 10073b8e-7e94-4527-8580-0e448eae0ad1
  • Get-ProvMaintenanceCycleVM:個々のVMの各サービスウィンドウ操作の情報を、そのステータスとともに取得します。例:
    Get-ProvMaintenanceCycleVM -MaintenanceOperation HardwareUpdate -VirtualMachineSid 42263076-44ae-1ff9-f58b-62d57ddf8db5
    さまざまなサービスウィンドウのステータスは次のとおりです。
    • 実行中
    • 失敗
    • 完了
    • キャンセル中
    • キャンセル済み
    • 未処理
    • 保留中
    • 不完全
    • 修復済み
    • 回復中
  • Remove-ProvMaintenanceCycle: サービスウィンドウがアクティブでない場合に、サービスウィンドウを削除します。例:
    Remove-ProvMaintenanceCycle -MaintenanceCycleId 867af1ba-5b72-402e-9dc3-033298248f8e
  • Cancel-ProvMaintenanceCycle: 仮想マシンでMCSによる操作がまだ開始されていない場合、このPowerShellコマンドは操作をキャンセルします。MCSは、現在仮想マシンで実行中の操作をキャンセルしません。例:
    Cancel-ProvMaintenanceCycle -MaintenanceCycleId 867af1ba-5b72-402e-9dc3-033298248f8e
  • Restart-ProvMaintenanceCycle: ハイパーバイザーのダウンや時間不足などの外部要因により、サービスウィンドウが失敗したか不完全な場合、このコマンドはサイクルを再開し、失敗したジョブや未処理のジョブを処理するのに役立ちます。例:
    Restart-ProvMaintenanceCycle -MaintenanceCycleId 4f363b78-458a-403a-82e5-7fcc6caa498b -ScheduledStartTimeInUTC "June 19th 2024, 6AM" -MaxAllocatedDurationInMinutes 400
  • Update-ProvMaintenanceCycle: サービスウィンドウがすでにスケジュールされており、まだ開始されていない場合、このコマンドは特定のパラメーターを変更します。
    例: 最大期間の更新:
    Update-ProvMaintenanceCycle -MaintenanceCycleId 4f363b78-458a-403a-82e5-7fcc6caa498b -MaxDurationInMinutes 100
    例: プロビジョニングスキームの仮想マシンを更新:
    Update-ProvMaintenanceCycle -MaintenanceCycleId 4f363b78-458a-403a-82e5-7fcc6caa498b -ProvisioningSchemeUid 867af1ba-5b72-402e-9dc3-033298248f8e -VMName ncn01,ncn02