Azure VM の電源管理
必要な権限については、「Required Azure permissions」を参照してください。
Azure オンデマンドプロビジョニング
Azure オンデマンドプロビジョニングでは、プロビジョニングが完了した後、Citrix Virtual Apps and Desktops™ が電源オンアクションを開始したときにのみ VM が作成されます。
MCS を使用して Azure Resource Manager でマシンカタログを作成する場合、Azure オンデマンドプロビジョニング機能は次のとおりです。
- ストレージコストを削減します
- より高速なカタログ作成を提供します
MCS カタログを作成すると、Azure portal にリソースグループ内のネットワークセキュリティグループ、ネットワークインターフェイス、ベースイメージ、および ID ディスクが表示されます。
Azure portal には、Citrix Virtual Apps and Desktops が電源オンアクションを開始するまで VM は表示されません。次の違いを持つ2種類のマシンがあります。
- プールされたマシンの場合、オペレーティングシステムディスクとライトバックキャッシュは VM が存在する場合にのみ存在します。コンソールでプールされたマシンをシャットダウンすると、VM は Azure portal に表示されません。定期的にマシンをシャットダウンする場合(たとえば、勤務時間外)、ストレージコストを大幅に節約できます。
- 専用マシンの場合、オペレーティングシステムディスクは VM が最初に電源オンになったときに作成されます。Azure portal の VM は、マシン ID が削除されるまでストレージに残ります。コンソールで専用マシンをシャットダウンしても、VM は Azure portal に表示されたままになります。
電源サイクル時にプロビジョニングされた仮想マシンを保持する
電源サイクル時にプロビジョニングされた仮想マシンを保持するかどうかを選択します。PowerShell パラメーター New-ProvScheme CustomProperties を使用します。このパラメーターは、プロビジョニングされた仮想マシンが電源サイクル時に永続化するかどうかを決定するために使用される追加のプロパティ PersistVm をサポートします。電源オフ時に仮想マシンを永続化するには PersistVm プロパティを true に設定し、電源オフ時に仮想マシンが保持されないようにするには false に設定します。
注:
PersistVmプロパティは、CleanOnBootおよびUseWriteBackCacheプロパティが有効になっているプロビジョニングスキームにのみ適用されます。非永続仮想マシンに対してPersistVmプロパティが指定されていない場合、それらは電源オフ時に Azure 環境から削除されます。
以下の例では、New-ProvScheme CustomProperties パラメーターは PersistVmプロパティを true に設定します。
<CustomProperties xmlns="http://schemas.citrix.com/2014/xd/machinecreation" xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance">
<Property xsi:type="StringProperty" Name="UseManagedDisks" Value="true" />
<Property xsi:type="StringProperty" Name="StorageType" Value="Standard_LRS" />
<Property xsi:type="StringProperty" Name="PersistWBC" Value="false" />
<Property xsi:type="StringProperty" Name="PersistOsDisk" Value="true" />
<Property xsi:type="StringProperty" Name="PersistVm" Value="true" />
<Property xsi:type="StringProperty" Name="ResourceGroups" Value="demo-resourcegroup" />
<Property xsi:type="StringProperty" Name="LicenseType" Value="Windows_Client" />
</CustomProperties>
<!--NeedCopy-->
以下の例では、New-ProvScheme CustomProperties パラメーターは、ライトバックキャッシュを保持するために PersistVM を true に設定します。
New-ProvScheme
-AzureAdJoinType "None"
-CleanOnBoot
-CustomProperties "<CustomProperties xmlns=`"http://schemas.citrix.com/2014/xd/machinecreation`" xmlns:xsi=`"http://www.w3.org/2001/XMLSchema-instance`"><Property xsi:type=`"StringProperty`" Name=`"UseManagedDisks`" Value=`"true`" /><Property xsi:type=`"StringProperty`" Name=`"StorageType`" Value=`"Standard_LRS`" /><Property xsi:type=`"StringProperty`" Name=`"PersistWBC`" Value=`"false`" /><Property xsi:type=`"StringProperty`" Name=`"PersistOsDisk`" Value=`"true`" /><Property xsi:type=`"StringProperty`" Name=`"PersistVm`" Value=`"true`" /><Property xsi:type=`"StringProperty`" Name=`"ResourceGroups`" Value=`"demo-resourcegroup`" /><Property xsi:type=`"StringProperty`" Name=`"LicenseType`" Value=`"Windows_Client`" /></CustomProperties>"
-HostingUnitName "demo"
-IdentityPoolName "NonPersistent-MCSIO-PersistVM"
-MasterImageVM "XDHyp:\HostingUnits\demo\image.folder\scale-test.resourcegroup\demo-snapshot.snapshot"
-NetworkMapping @ {"0"="XDHyp:\HostingUnits\demo\\virtualprivatecloud.folder\East US.region\virtualprivatecloud.folder\ji-test.resourcegroup\jitest-vnet.virtualprivatecloud\default.network"}
-ProvisioningSchemeName "NonPersistent-MCSIO-PersistVM"
-ServiceOffering "XDHyp:\HostingUnits\demo\serviceoffering.folder\Standard_B2ms.serviceoffering" -UseWriteBackCache
-WriteBackCacheDiskSize 127
-WriteBackCacheMemorySize 256
<!--NeedCopy-->
ヒント:
PersistVmプロパティは、プロビジョニングされた仮想マシンを保持するかどうかを決定します。PersistOsdiskプロパティは、OSディスクを永続化するかどうかを決定します。プロビジョニングされた仮想マシンを保持するには、まずOSディスクを保持します。仮想マシンを削除せずにOSディスクを削除しないでください。PersistVmパラメーターを指定せずにPersistOsdiskプロパティを使用できます。
ストレージタイプ変更失敗時の電源オン動作をカスタマイズする
電源オン時に、Azureでの障害により、管理ディスクのストレージタイプが目的のタイプに変更できない場合があります。このようなシナリオでは、VMはオフのままで、障害メッセージが送信されます。ただし、ストレージが構成されたタイプに復元できない場合でもVMの電源をオンにするか、VMをオフのままにするかを選択できます。
-
カスタムプロパティ
FailSafeStorageTypeを true (デフォルト設定) に構成した場合、またはNew-ProvSchemeまたはSet-ProvSchemeコマンドで指定しない場合:- 電源オン時に、VMは誤ったストレージタイプで電源がオンになります。
- シャットダウン時に、VMは誤ったストレージタイプでオフのままになります。
-
New-ProvSchemeまたはSet-ProvSchemeコマンドでカスタムプロパティFailSafeStorageTypeを false に構成した場合:- 電源オン時に、VMは誤ったストレージタイプでオフのままになります。
- シャットダウン時に、VMは誤ったストレージタイプでオフのままになります。
マシンカタログを作成するには:
- PowerShellウィンドウを開きます。
-
asnp citrix*を実行して、Citrix固有のPowerShellモジュールをロードします。 - 既に作成されていない場合は、IDプールを作成します。
-
New-ProvSchemeにカスタムプロパティを追加します。例:New-ProvScheme -HostingUnitName "Azure-Resources-1" -IdentityPoolName "name" -InitialBatchSizeHint 1 -MasterImageVM "XDHyp:\HostingUnits\Azure-Resources-1\image.folder\abc.resourcegroup\def.snapshot" -NetworkMapping @{"0"="XDHyp:\HostingUnits\Azure-Resources-1\ght.folder\abc.resourcegroup\abc-vnet.virtualprivatecloud\default.network"} -ProvisioningSchemeName "name" -ServiceOffering "XDHyp:\HostingUnits\Azure-Resources-1\serviceoffering.folder\Standard_DS2_v2.serviceoffering" -CustomProperties "<CustomProperties xmlns=`"http://schemas.citrix.com/2014/xd/machinecreation`" xmlns:xsi=`"http://www.w3.org/2001/XMLSchema-instance`"> <Property xsi:type=`"StringProperty`" Name=`"StorageType`" Value=`"Premium_LRS`" /> <Property xsi:type=`"StringProperty`" Name=`"StorageTypeAtShutdown`" Value=`"Standard_LRS`" /> <Property xsi:type=`"StringProperty`" Name=`"FailSafeStorageType`" Value=`"true`" /> </CustomProperties>" <!--NeedCopy--> - マシンカタログを作成します。Remote PowerShell SDK を使用してカタログを作成する方法については、https://developer-docs.citrix.com/projects/citrix-virtual-apps-desktops-sdk/en/latest/creating-a-catalog/を参照してください。
既存のマシンカタログを更新して、FailSafeStorageTypeカスタムプロパティを含めます。この更新は既存のVMには影響しません。
-
Set-ProvSchemeコマンドでカスタムプロパティを更新します。例:
Set-ProvScheme -ProvisioningSchemeName <String> -CustomProperties "
<CustomProperties xmlns=`"http://schemas.citrix.com/2014/xd/machinecreation`" xmlns:xsi=`"http://www.w3.org/2001/XMLSchema-instance`">
<Property xsi:type=`"StringProperty`" Name=`"StorageType`" Value=`"Premium_LRS`" />
<Property xsi:type=`"StringProperty`" Name=`"IdentityDiskStorageType`" Value=`"Premium_LRS`" />
<Property xsi:type=`"StringProperty`" Name=`"FailSafeStorageType`" Value=`"false`" />
</CustomProperties>"
<!--NeedCopy-->
Set-ProvScheme で行われた変更を既存のVMに適用するには、-StartsNowと-DurationInMinutes -1パラメーターを指定してSet-ProvVMUpdateTimeWindowコマンドを実行します。
-
-StartsNowと-DurationInMinutes -1パラメーターを指定してSet-ProvVMUpdateTimeWindowコマンドを実行します。例:Set-ProvVMUpdateTimeWindow -ProvisioningSchemeName my-catalog -VMName <List-Of-Vm-Names> -StartsNow -DurationInMinutes -1 <!--NeedCopy--> -
VMを再起動します。
休止状態対応VMを作成する
Azure環境では、休止状態をサポートするMCSマシンカタログを作成できます。この機能を使用すると、VMを一時停止し、ユーザーが再度サインインしたときにVMの以前の状態に再接続できます。
休止状態機能は以下に適用されます。
- シングルセッションOS
- 永続VMと非永続VM
- 静的およびランダム(プールされた)VDIデスクトップ
VDIデスクトップが静的かランダムかに関わらず、VMを休止状態にした後、同じセッションに再開できます。
このセクションでは、以下を参照してください。
休止状態を使用するための前提条件
休止状態を使用するには、以下のタスクを完了していることを確認してください。
- WindowsとLinuxの両方のマスターイメージにAzure VM Agentをインストールします。Windowsイメージのページファイルは一時ディスクに配置できます。マシンカタログで休止状態が有効になっている場合、MCSはページファイルの場所をベースディスクのC:ドライブに設定します。
- MCSは、生成されたリソースの休止状態プロパティを自動的に設定します。休止状態をサポートするために、マスターリソースのプロパティを設定する必要はありません。
- サブスクリプション内で休止状態をサポートするVMサイズを使用してください。
-
VMが休止状態機能を継承できるように、休止状態対応のマシンプロファイル(VMまたはテンプレート仕様)を作成します。VMの作成については、休止状態の概要を参照してください。
注:
Microsoftによると、OSディスクから休止状態が有効なVMを展開できます。この機能は現在一部のリージョンでサポートされており、まもなくすべてのリージョンで利用可能になります。詳細については、「OSディスクから休止状態が有効なVMを展開する」を参照してください。
テンプレート仕様を作成するには、次の手順を実行します。
- Azure Portal を開きます。テンプレートで使用する構成を持つ VM を選択します。左側のペインで Export template を選択します。
-
Include parameters チェックボックスをオフにします。コンテキストをコピーし、JSON ファイルとして保存します。例:
VMExportTemplate.json。 - パラメーター
hibernationEnabledがテンプレート上でtrueであることを確認します。パラメーターがtrueでない場合は、使用した VM 構成を確認してください。サポートされている VM サイズはテンプレートファイルで指定できます。ただし、カタログ作成時にマシンサイズを指定することもできます。 - ネットワークインターフェースリソースのテンプレートを JSON ファイル
VMExportTemplate.jsonに追加します。これにより、2つのリソースを持つARMテンプレートファイルが作成されます。 - Azure Portal > テンプレート仕様 > テンプレートのインポート > ローカルテンプレートファイルの選択 を選択して、このテンプレートファイルをARMテンプレート仕様としてインポートします。
- ARMテンプレート仕様が作成されたら、それをマシンプロファイルとして使用できます。
注:
Citrix Studio に同期するまでに数分かかる場合があります。
詳細については、Microsoft ドキュメント 休止状態を使用するための前提条件 を参照してください。
制限事項
- シングルセッションOSマシンカタログ(永続的および非永続的)のみがサポートされています。
- エフェメラルOSディスクとMCS I/O機能は、Azureハイバネーションをサポートしていません。
- 自動Windowsアップデート中にハイバネーションが失敗する可能性があります。
詳細については、Microsoft ドキュメント を参照してください。
休止状態対応のマシンカタログを作成および管理する
休止状態対応VMを作成するには、以下を使用して休止状態対応マシンカタログを作成および管理できます。
- ウェブスタジオ、または
- パワーシェル コマンド
Web Studioを使用してカタログを作成する
- 「マシンカタログの作成」を選択します。カタログ作成ウィザードが開きます。
- 「マシンタイプ」ページで、このカタログのシングルセッションOSマシンタイプを選択します。
-
「マシン管理」ページで、次のように設定を選択します。
- 電源管理されているマシン(仮想マシンやブレードPCなど)を選択します。
- Citrix マシンクリエーションサービス™ (MCS) を選択します。
- 「デスクトップエクスペリエンス」ページで、必要に応じてランダムまたは静的デスクトップエクスペリエンスを選択します。
- 「イメージ」ページで、マスターイメージを選択します。「マシンプロファイルを使用」チェックボックスをオンにし、休止状態をサポートするマシンプロファイルを選択します。ツールチップをクリックして、マシンプロファイルが休止状態をサポートしているかどうかを確認します。
- 「ストレージとライセンスの種類」ページで、このカタログに使用するストレージとライセンスを選択します。
-
「仮想マシン」ページで、VMの数、VMサイズ、および可用性ゾーンを選択します。
注:
休止状態をサポートするマシンサイズのみが選択肢として表示されます。
- NICページで、VMが使用するNICを追加します。
- ディスク設定ページで、ライトバックキャッシュディスクのストレージタイプとサイズを選択します。
- リソースグループページで、VMをプロビジョニングするリソースグループを選択します。
- マシンIDページで、新しいActive Directoryアカウントを作成を選択します。次に、アカウントの命名スキームを指定します。
- ドメイン資格情報ページで、資格情報を入力をクリックします。ターゲットのActive Directoryドメインでアカウント作成を実行するためのドメイン資格情報を入力します。
- 概要ページで、マシンカタログの名前を入力し、完了をクリックします。
MCSマシンカタログの作成が完了したら、カタログリストでカタログを見つけ、テンプレートプロパティタブをクリックします。パラメーターHibernationの値はSupportedである必要があります。
マシンカタログを編集する場合は、次の制限事項を考慮してください。
- 現在のマシンカタログが休止状態をサポートしている場合、次のことはできません。
- VMサイズを休止状態に対応していないものに変更する。
- マシンプロファイルを休止状態に対応していないものに変更する。
- 現在のマシンカタログが休止状態をサポートしていない場合、次のことはできません。
- 現在、Web Studioを使用してマシンプロファイルを休止状態に対応したものに変更する。
既存の休止状態対応VMを管理するためのマシンカタログを作成する
既に休止状態対応VMがあり、それらを一時停止および再開したい場合は、それらのVMを電源管理のためにインポートするマシンカタログを作成します。
注:
休止状態対応VMと非対応VMの両方を含むマシンカタログを作成できます。ただし、休止状態関連の機能が必要な場合は、休止状態対応VMのみでマシンカタログを作成する必要があります。
Web Studioを使用して既存の休止状態対応VMのカタログを作成するには、画面の指示に従って手順を完了し、以下の主要な設定に注意してください。
- マシン管理ページで、電源管理されているマシンを選択し、マシンの展開方法としてその他のサービスまたはテクノロジーを選択します。
- 仮想マシンページで、休止状態対応VMのみを追加またはインポートします。
PowerShellコマンドを使用してマシンカタログを作成する
休止状態を使用するためのすべての要件を満たした後、New-ProvSchemeコマンドを使用して休止状態対応マシンカタログを作成できます。Remote PowerShell SDKを使用してカタログを作成する方法については、New-ProvSchemeを参照してください。
カタログの作成中に、以下のPowerShellコマンドを使用して、VMサイズとマシンプロファイルが休止状態をサポートしているかどうかを確認できます。
-
VMサイズについては、次のコマンドを実行し、プロパティ
supportsHibernationがTrueであるかどうかを確認します。例:Get-ChildItem -AdminAddress "MyDDC.MyDomain.local" -LiteralPath @("XDHyp:\HostingUnits\ <VirtualNetwork> \serviceoffering.folder") | select Name, AdditionalData | ConvertTo-Json <!--NeedCopy--> -
マシンプロファイルについては、次のコマンドを実行し、プロパティ
supportsHibernationがTrueであるかどうかを確認します。例:Get-ChildItem -AdminAddress "MyDDC.MyDomain.local" -LiteralPath @("XDHyp:\HostingUnits\ <VirtualNetwork> \machineprofile.folder\abc.resourcegroup")|select Name, AdditionalData|ConvertTo-Json <!--NeedCopy-->
マシンカタログを編集する場合は、以下の制限事項を考慮してください。
- 現在のマシンカタログが休止状態をサポートしている場合、次のことはできません。
- VMサイズを休止状態非対応のものに変更する
- マシンプロファイルを休止状態非対応のものに変更する
- 現在のマシンカタログが休止状態をサポートしていない場合、次のことはできません。
- 現在、Web Studio を使用して、マシンプロファイルを休止状態対応のものに変更すること。
Remote PowerShell SDK を使用してカタログの VM サイズとマシンプロファイルを変更する方法については、https://developer-docs.citrix.com/projects/citrix-virtual-apps-desktops-sdk/en/latest/MachineCreation/Set-ProvScheme/ を参照してください。
休止状態プロパティの確認
PowerShell コマンドを使用して、マシンカタログ、VM、およびブローカーマシンの休止状態プロパティを確認できます。
-
プロビジョニングスキームの休止状態プロパティを確認するには、次の PowerShell コマンドを実行します。
HibernationEnabledパラメーターはTrueである必要があります。(Get-ProvScheme -provisioningSchemeName <YourSchemeName>).VMMetadata -join "" | ConvertFrom-Json | Select HibernationEnabled <!--NeedCopy--> -
プロビジョニング VM の休止状態プロパティを確認するには、次の PowerShell コマンドを実行します。
SupportsHibernationパラメーターはTrueである必要があります。(Get-ProvVM -VMName <YourVMName>).CustomVmData | ConvertFrom-Json | Select SupportsHibernation <!--NeedCopy--> -
ブローカーマシンの休止状態容量を確認するには、次の PowerShell コマンドを実行します。Suspend および Resume 電源アクションは、休止状態の機能を示します。
(Get-BrokerMachine -MachineName <YourMachineName>).SupportedPowerActions <!--NeedCopy-->
休止状態対応 VM の電源管理
休止状態対応 VM に対して、次の電源管理操作を実行できます。
- 実行中の状態から VM を サスペンド する
- サスペンドされた状態から VM を 再開 する
- サスペンドされた状態から VM を 強制シャットダウン する
- サスペンドされた状態から VM を 強制再起動 する
詳細については、以下を参照してください。
サスペンド
VMをサスペンドするには、以下のいずれかの方法を使用できます。
- 手動で Web Studioを使用する
- 自動的に タイムアウトポリシーを使用する: 詳細については、その他の設定を参照してください。
VMを手動でサスペンドするには:
-
VMを右クリックし、[サスペンド] を選択します。[はい] をクリックしてアクションを確定します。[電源状態] が [サスペンド中] から [サスペンド済み] に変わります。

VMのステータスはAzure portalで確認できます。

再開
休止状態のVMを再開するには、以下のいずれかの方法を使用します。
-
手動で:
-
管理者はWeb Studioを使用してVMを再開できます。
Web Studioを使用してVMを再開する (/ja-jp/citrix-virtual-apps-desktops/2311/media/resume-hibernation-vms.png)
-
エンドユーザーは、デスクトップアイコンをクリックすると、Citrix Workspace™メニューを使用してVMを起動できます。
Citrix Workspaceを使用して仮想マシンを再開する(/ja-jp/citrix-virtual-apps-desktops/2311/media/resume-vm-workspace.png)
-
-
自動的に:
-
Autoscale™ は、ピーク時間を正しく構成すると、休止状態のマシンを自動的にパワーオンできます。タイムスケジュールをクリックすることで、ピーク時間を30分間隔で設定できます。各青いフレームは、ピーク時間としてマークされたタイムスロットを表します。ピーク時間には、連続したタイムスロットと非連続のタイムスロットの両方を含めることができます。
-
連続したタイムスロット
連続したピークタイムスロット (/ja-jp/citrix-virtual-apps-desktops/2311/media/consecutive-peak-time-autoscale.png)
-
非連続のタイムスロット
非連続のピークタイムスロット (/ja-jp/citrix-virtual-apps-desktops/2311/media/non-consecutive-peak-time-autoscale.png)
-
-
注:
Manage Autoscale > Load-based Settings で、Action が Suspend に構成されている場合、そのデリバリーグループ内のすべてのVMが休止機能を備えていることを確認してください。そうでない場合、休止できないVMは実行を継続します。
Autoscaleの負荷ベース設定を管理する (/ja-jp/citrix-virtual-apps-desktops/2311/media/azure-hibernation-autoscale.png)
詳細情報
Citrix Azureの休止に関する詳細については、Citrix Tech Zoneの記事を参照してください。