Citrix Virtual Apps and Desktops

Microsoft Azureカタログの管理

マシンカタログの管理では、マシンカタログを管理するウィザードについて説明しています。以下の情報は、Microsoft Azure Resource Managerクラウド環境に固有の詳細を扱います。

注:

Microsoft Azureカタログを管理する前に、Microsoft Azureカタログの作成を完了する必要があります。Microsoft Azureカタログの作成を参照してください。

VMシャットダウン時のストレージタイプの下位ティアへの変更

VMをシャットダウンする際に、管理ディスクのストレージタイプを下位ティアに切り替えることで、ストレージコストを節約できます。これを行うには、StorageTypeAtShutdownカスタムプロパティを使用します。

  • VMをシャットダウンすると、ディスクのストレージタイプは下位ティア(StorageTypeAtShutdownカスタムプロパティで指定)に変更されます。VMを起動すると、ストレージタイプは元のタイプ(StorageTypeカスタムプロパティまたはWBCDiskStorageTypeカスタムプロパティで指定)に戻ります。

  • 重要:

  • ディスクは、VMが少なくとも一度起動されるまで存在しません。したがって、VMを最初に起動する際にはストレージタイプを変更できません。

要件

  • 管理ディスクに適用されます。これは、カスタムプロパティUseManagedDisksをtrueに設定することを意味します。
    • 永続OSディスクを持つ永続および非永続カタログに適用されます。これは、カスタムプロパティpersistOsDiskをtrueに設定することを意味します。
    • 永続WBCディスクを持つ非永続カタログに適用されます。これは、カスタムプロパティpersistWBCをtrueに設定することを意味します。

制限

  • Microsoftによると、ディスクタイプは1日に2回しか変更できません。Microsoftドキュメントを参照してください。Citrixによると、StorageTypeの更新は、VMの起動または割り当て解除アクションがあるたびに発生します。したがって、VMあたりの電源操作の数を1日2回に制限してください。たとえば、午前中にVMを起動するための電源操作を1回、夕方にVMを割り当て解除するための電源操作を1回とします。

ストレージタイプの下位ティアへの変更

手順に進む前に、要件制限を参照してください。

  1. カスタムプロパティStorageTypeAtShutdownを追加し、値をStandard_LRS (HDD)に設定して、New-ProvSchemeを使用してカタログを作成します。PowerShellを使用してカタログを作成する方法については、https://developer-docs.citrix.com/projects/citrix-virtual-apps-desktops-sdk/en/latest/creating-a-catalog/を参照してください。

    注:

    StorageTypeAtShutdownが空またはStandard_LRS (HDD)以外の値を持つ場合、操作は失敗します。

    永続カタログ作成時のカスタムプロパティ設定例:

    $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="Premium_LRS" />
    <Property xsi:type="StringProperty" Name="ResourceGroups" Value="" />
    <Property xsi:type="StringProperty" Name="LicenseType" Value="Windows_Client" />
    <Property xsi:type="StringProperty" Name="SchemaVersion" Value="2" />
    <Property xsi:type="StringProperty" Name="OsType" Value="Windows" />
    <Property xsi:type="StringProperty" Name="StorageTypeAtShutdown" Value="Standard_LRS" />
    </CustomProperties>'
    <!--NeedCopy-->
    

    非永続カタログ作成時のカスタムプロパティ設定例:

    $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="Premium_LRS" />
    <Property xsi:type="StringProperty" Name="WbcDiskStorageType" Value="Standard_SSD_LRS" />
    <Property xsi:type="StringProperty" Name="ResourceGroups" Value="" />
    <Property xsi:type="StringProperty" Name="LicenseType" Value="Windows_Client" />
    <Property xsi:type="StringProperty" Name="SchemaVersion" Value="2" />
    <Property xsi:type="StringProperty" Name="OsType" Value="Windows" />
    <Property xsi:type="BooleanProperty" Name="persistWBC" Value=true />
    <Property xsi:type="BooleanProperty" Name="persistOsDisk" Value=true />
    <Property xsi:type="StringProperty" Name="StorageTypeAtShutdown" Value="Standard_LRS" />
    </CustomProperties>'
    <!--NeedCopy-->
    

注: > > マシンプロファイルを使用する場合、カスタムプロパティはMachineProfileで定義されたプロパティよりも優先されます。

  1. VMをシャットダウンし、AzureポータルでVMのストレージタイプを確認します。ディスクのストレージタイプは、StorageTypeAtShutdownカスタムプロパティで指定された下位ティアに変更されます。
  2. VMを起動します。ディスクのストレージタイプは、以下に記載されているストレージタイプに戻ります。
    • OSディスクのStorageTypeカスタムプロパティ
    • WBCディスクのWBCDiskStorageTypeカスタムプロパティ(CustomPropertiesで指定した場合のみ)。指定しない場合は、StorageTypeに記載されているストレージタイプに戻ります。

既存のカタログへのStorageTypeAtShutdownの適用

手順に進む前に、要件制限を参照してください。

Set-ProvSchemeを使用して、既存のカタログにVMを追加します。この機能は、Set-ProvSchemeの実行後に追加された新しいVMに適用されます。既存のマシンには影響しません。

既存のカタログにVMを追加する際のカスタムプロパティ設定例:

$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="Premium_LRS" />
<Property xsi:type="StringProperty" Name="WbcDiskStorageType" Value="Standard_SSD_LRS" />
<Property xsi:type="StringProperty" Name="ResourceGroups" Value="" />
<Property xsi:type="StringProperty" Name="LicenseType" Value="Windows_Client" />
<Property xsi:type="StringProperty" Name="SchemaVersion" Value="2" />
<Property xsi:type="StringProperty" Name="OsType" Value="Windows" />
<Property xsi:type="BooleanProperty" Name="persistWBC" Value=true />
<Property xsi:type="BooleanProperty" Name="persistOsDisk" Value=true />
<Property xsi:type="StringProperty" Name="StorageTypeAtShutdown" Value="Standard_LRS" />
</CustomProperties>'

$ProvScheme = Get-Provscheme -ProvisioningSchemeName $CatalogName

Set-ProvScheme -ProvisioningSchemeName $ProvScheme.ProvisioningSchemeName -CustomProperties $customProperties
<!--NeedCopy-->
  • 既存VMのストレージタイプをシャットダウン時に下位ティアへ変更

  • 手順に進む前に、要件制限を参照してください。

  • VMがシャットダウンされる際に、既存VMのストレージタイプを下位ティアに変更することで、ストレージコストを節約できます。これを行うには、StorageTypeAtShutdownカスタムプロパティを使用します。

  • カタログ内の既存マシンのストレージタイプを、VMシャットダウン時に下位ティアに変更するには:
  1. PowerShellウィンドウを開きます。
  2. asnp citrix®*を実行して、Citrix固有のPowerShellモジュールをロードします。
  3. Get-Provscheme -ProvisioningSchemeName $CatalogNameを実行します。
  4. カスタムプロパティ文字列を変更します。

    
    -  $customProperties = '<CustomProperties xmlns="http://schemas.citrix.com/2014/xd/machinecreation" xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance">'
    -  <Property xsi:type="StringProperty" Name="StorageTypeAtShutdown" Value="Standard_LRS" />
    </CustomProperties>'
    <!--NeedCopy-->
    
    1. 既存のカタログのプロビジョニングスキームを更新します。この更新は、Set-ProvSchemeの実行後に追加された新しいVMに適用されます。
     Set-ProvScheme -ProvisioningSchemeName $CatalogName -CustomProperties $customProperties
     <!--NeedCopy-->
    
  1. 既存のVMを更新してStorageTypeAtShutdownを有効にします。

    Set-ProvVMUpdateTimeWindow -ProvisioningSchemeName $CatalogName -StartsNow -DurationInMinutes -1
    <!--NeedCopy-->
    
  2. 次回マシンを起動すると、マシンのStorageTypeAtShutdownプロパティが更新されます。ストレージタイプは次回のシャットダウン時に変更されます。
  3. カタログ内の各VMのStorageTypeAtShutdownの値を表示するには、次のコマンドを実行します。

    Get-ProvVM -ProvisioningSchemeName <catalog-name> | foreach { $vmName = $_.VMName; $storageTypeAtShutdown = ($_.CustomVmData | ConvertFrom-Json).StorageTypeAtShutdown.DiskStorageAccountType; return New-Object psobject -Property @{ "VMName" = $vmName; "StorageTypeAtShutdown" = $storageTypeAtShutdown } }
    <!--NeedCopy-->
    

プロビジョニング済みマシンの現在のプロビジョニングスキーム状態への更新

Set-ProvSchemeコマンドはプロビジョニングスキームを変更します。ただし、既存のマシンには影響しません。PowerShellコマンドSet-ProvVMUpdateTimeWindowを使用すると、現在のプロビジョニングスキームを既存の永続または非永続マシン、または一連のマシンに適用できます。既存のMCSプロビジョニング済みマシンの構成更新のために時間枠をスケジュールすることもできます。スケジュールされた時間枠内での起動または再起動は、スケジュールされたプロビジョニングスキームの更新をマシンに適用します。現在、Azureでは、ServiceOfferingMachineProfile、および以下のカスタムプロパティを更新できます。

  • StorageType
  • WBCDiskStorageType
  • IdentityDiskStorageType
  • LicenseType
    • DedicatedHostGroupId
    • PersistWBC
    • PersistOsDisk
    • PersistVm

注:

-  > -  Azure環境で管理ディスクを使用するカタログの場合、`StorageType`、`WBCDiskStorageType`、および`IdentityDiskStorageType`カスタムプロパティのみを更新できます。

-  `Set-ProvVMUpdateTimeWindow`を2回実行した場合、最新のコマンドが有効になります。

更新できるもの:

  • 単一のVM
  • プロビジョニングスキームIDに関連付けられた特定のVMのリスト、またはすべての既存VM
    • プロビジョニングスキーム名(マシンカタログ名)に関連付けられた特定のVMのリスト、またはすべての既存VM

プロビジョニングスキームに以下の変更を加えると、Azureの永続カタログではVMインスタンスが再作成されます。

-  `MachineProfile`の変更
  • LicenseTypeの削除
  • DedicatedHostGroupIdの削除

注:

既存マシンのOSディスクとそのすべてのデータはそのまま残り、新しいVMがそのディスクにアタッチされます。

既存のVMを更新する前に:

  1. 既存マシンの構成を確認します。例:

    Get-ProvScheme | select ProvisioningSchemeName, ProvisioningSchemeVersion
    <!--NeedCopy-->
    
  2. プロビジョニングスキームを更新します。例:

    • マシンプロファイル入力としてのVMを使用する場合:

       Set-ProvScheme -ProvisioningSchemeName "my-catalog" -MachineProfile "XDHyp:\HostingUnits\<hosting-unit>\machineprofile.folder\<resource-group>.resourcegroup\<virtual-machine>.vm"
       <!--NeedCopy-->
      
    • テンプレート仕様をマシンプロファイル入力として使用:

       Set-ProvScheme -ProvisioningSchemeName "my-catalog"
       -MachineProfile "XDHyp:\HostingUnits\<hosting-unit>\machineprofile.folder\<resource-group>.resourcegroup\<template-spec>.templatespec\<template-spec-version>.templatespecversion"
       -ServiceOffering "XDHyp:\HostingUnits\<hosting-unit>\serviceoffering.folder\<service-offering>.serviceoffering"
       <!--NeedCopy-->
      
      • サービス提供のみを使用:
       -  Set-ProvScheme -ProvisioningSchemeName "my-catalog" -ServiceOffering "XDHyp:\HostingUnits\<hosting-unit>\serviceoffering.folder\<service-offering>.serviceoffering"
       <!--NeedCopy-->
      
        1. VM の現在のプロパティが現在のプロビジョニングスキームと一致するか、および VM に保留中の更新アクションがあるかを確認します。例:
    Get-ProvVM | select VMName, ProvisioningSchemeUpdateRequested, ProvisioningSchemeVersion
    <!--NeedCopy-->
    

    特定のバージョンのマシンを見つけることもできます。例:

    Get-ProvVM -Filter "ProvisioningSchemeVersion -eq 1" | select VMName, ProvisioningSchemeVersion
    <!--NeedCopy-->
    

既存のマシンに対する更新を次回の再起動時に適用するよう要求するには:

  1. 既存のマシンを更新し、次回の再起動時に更新が適用されるようにするには、次のコマンドを実行します。

    -  すべての既存のマシンを更新するには。例:
    
    ```
    -  Set-ProvVMUpdateTimeWindow -ProvisioningSchemeName my-catalog -StartsNow -DurationInMinutes -1
    <!--NeedCopy--> ```
    
    • 特定のマシンのリストを更新するには。例:

      
       -  Set-ProvVMUpdateTimeWindow -ProvisioningSchemeName my-catalog -VMName <List-Of-Vm-Names> -StartsNow -DurationInMinutes -1
      
       <!--NeedCopy-->
      
    • Get-ProvVM の出力に基づいてマシンを更新するには。例:

       Get-ProvVM -ProvisioningSchemeName "my-catalog" | Set-ProvVMUpdateTimeWindow -ProvisioningSchemeName my-catalog -StartsNow -DurationInMinutes -1
       <!--NeedCopy-->
      

    注:

    • StartsNow は、スケジュールされた開始時刻が現在時刻であることを示します。
    • 負の数(例: –1)を指定した DurationInMinutes は、スケジュールの時間枠に上限がないことを示します。
  2. 更新がスケジュールされているマシンを見つけます。例:

    Get-ProvVM -Filter "ProvisioningSchemeUpdateAfter" | select VMName, ProvisioningSchemeUpdateAfter
    <!--NeedCopy-->
    
  3. マシンを再起動します。次回の電源投入時に、プロパティの変更が既存のマシンに適用されます。次のコマンドを使用して更新されたステータスを確認できます。例:

    Get-ProvVM | select VMName, ProvisioningSchemeUpdateRequested, ProvisioningSchemeVersion
    <!--NeedCopy-->
    

次回、スケジュールされた時間枠内で起動するときに、VM が最新のプロビジョニング設定に更新されるようにスケジュールするには:

  1. 次のコマンドを実行します。

    • 開始時刻を現在時刻として更新をスケジュールするには

       Set-ProvVMUpdateTimeWindow -ProvisioningSchemeName my-catalog -VMName vm1 -StartsNow -DurationInMinutes 120
       <!--NeedCopy-->
      
    • 週末に更新をスケジュールするには

       Set-ProvVMUpdateTimeWindow -ProvisioningSchemeName “ my-catalog “ -VMName “vm1” -StartTimeInUTC “10/15/2022 9:00am” -DurationInMinutes (New –TimeSpan –Days 2).TotalMinutes
       <!--NeedCopy-->
      

    注:

    • VMName はオプションです。指定しない場合、更新はカタログ全体に対してスケジュールされます。
    • StartTimeInUTC の代わりに StartsNow を使用して、スケジュール開始時刻が現在時刻であることを示します。
    • DurationInMinutes はオプションです。デフォルトは 120 分です。負の数(例: –1)を指定すると、スケジュールの時間枠に上限がないことを示します。
  2. 更新ステータスを確認します。

    Get-ProvVM | select VMName, ProvisioningSchemeUpdateRequested, ProvisioningSchemeUpdateUntil, ProvisioningSchemeVersion
    <!--NeedCopy-->
    
  3. VM の電源をオンにします。スケジュールされた時間枠の後にマシンの電源をオンにした場合、構成の更新は適用されません。スケジュールされた時間枠内にマシンの電源をオンにした場合:

    • マシンの電源がオフの場合、かつ

      • マシンの電源をオンにしない場合、構成の更新は適用されません
      • マシンの電源をオンにする場合、構成の更新が適用されます
    • マシンの電源がオンの場合、かつ

      • マシンを再起動しない場合、構成の更新は適用されません
      • マシンを再起動する場合、構成の更新が適用されます

構成の更新をキャンセルするには:

単一の VM、複数の VM、またはカタログ全体の構成更新をキャンセルすることもできます。構成更新をキャンセルするには:

  1. Clear-ProvVMUpdateTimeWindow を実行します。例:

    • 単一の VM に対してスケジュールされた構成更新をキャンセルするには:

        Clear-ProvVMUpdateTimeWindow -ProvisioningSchemeName “ my-catalog “ -VMName “vm1”
        <!--NeedCopy-->
      
    • 複数の VM に対してスケジュールされた構成更新をキャンセルするには:

       Clear-ProvVMUpdateTimeWindow -ProvisioningSchemeName "my-catalog" -VMName "vm1","vm2"
       <!--NeedCopy-->
      

      注:

      VM は同じカタログのものである必要があります。

個々の VM のプロパティの更新

PowerShell コマンド Set-ProvVM を使用して、永続的な MCS マシンカタログ内の個々の VM のプロパティを更新できます。ただし、更新はすぐに適用されません。更新を適用するには、PowerShell コマンド Set-ProvVMUpdateTimeWindow を使用して時間枠を設定する必要があります。

この実装により、マシンカタログ全体を更新することなく、個々の VM を効率的に管理できます。現在、この機能は Azure 環境にのみ適用されます。

現在、更新できるプロパティは次のとおりです。

  • CustomProperties
  • ServiceOffering
  • MachineProfile

この機能を使用すると、次のことができます。

VM のプロパティを更新する前に:

  1. PowerShell ウィンドウを開きます。
  2. asnp citrix* を実行して、Citrix 固有の PowerShell モジュールをロードします。
  3. 既存のマシンカタログの構成を確認します。例:

    Get-ProvScheme -ProvisioningSchemeName AzureCatalog
    <!--NeedCopy-->
    
  4. 更新を適用したいVMの構成を確認します。例:

    ```

  • Get-ProvVM -ProvisioningSchemeName AzureCatalog -VMName machine1

    ```

VMのプロパティの更新

VMのプロパティを更新するには、以下を実行します。

  1. 更新を適用したいVMをシャットダウンします。
  2. VMのプロパティを更新します。例えば、VMのストレージタイプ (StorageType) カスタムプロパティを更新したい場合は、以下を実行します。

    Set-ProvVM -ProvisioningSchemeName AzureCatalog -VMName machine1 -CustomProperties "...<Property Name='StorageType' Value='Premium_LRS' />..."
    <!--NeedCopy-->
    

    マシンカタログ内の2つのVMのプロパティを同時に更新できます。例:

    Set-ProvVM -ProvisioningSchemeName AzureCatalog -VMName machine1 -CustomProperties "...<Property Name='StorageType' Value='Premium_LRS' />..."
    <!--NeedCopy-->
    
    Set-ProvVM -ProvisioningSchemeName AzureCatalog -VMName machine2 -CustomProperties "...<Property Name='StorageType' Value='StandardSSD_LRS' />..."
    <!--NeedCopy-->
    
  • 注:

    • 更新はすぐに適用されません。

  1. 更新が指定されているプロパティのリストと構成バージョンを取得します。例:

    Get-ProvVMConfiguration -ProvisioningSchemeName AzureCatalog -VMName machine1
    <!--NeedCopy-->
    

    Version のプロパティ値と、更新されるプロパティ (この場合は StorageType) を確認します。

  2. 構成バージョンを確認します。例:

    Get-ProvVM -ProvisioningSchemeName AzureCatalog -VMName machine1
    <!--NeedCopy-->
    

    ProvVMConfigurationVersion のプロパティ値を確認します。更新はまだ適用されていません。VMはまだ古い構成のままです。

  3. スケジュールされた更新を要求します。例:

     Set-ProvVMUpdateTimeWindow -ProvisioningSchemeName AzureCatalog -StartsNow -DurationInMinutes -1
     <!--NeedCopy-->
    

    スケジュールされた更新の詳細については、「プロビジョニングされたマシンを現在のプロビジョニングスキームの状態に更新する」を参照してください。

    注:

    保留中のプロビジョニングスキームの更新も適用されます。

  4. VMを再起動します。例:

    New-BrokerHostingPowerAction -MachineName machine1 -Action TurnOn
    <!--NeedCopy-->
    
  5. 構成バージョンを確認します。例:

    Get-ProvVM -ProvisioningSchemeName AzureCatalog -VMName machine1
    <!--NeedCopy-->
    

    ProvVMConfigurationVersion のプロパティ値を確認します。更新が適用されました。VMは新しい構成になりました。

  6. VMにさらに構成更新を適用するには、VMをシャットダウンし、手順を繰り返します。

マシンカタログ更新後のVMで更新されたプロパティの保持

VMで更新されたプロパティを保持するには、以下を実行します。

  1. 更新を適用したいVMをシャットダウンします。
  2. マシンカタログを更新します。例えば、VMサイズ (ServiceOffering) とストレージタイプ (StorageType) を変更したい場合は、以下を実行します。

    Set-ProvScheme -ProvisioningSchemeName AzureCatalog -ServiceOffering Standard_E4_v3 -CustomProperties "...<Property Name='StorageType' Value='StandardSSD_LRS' />..."
    <!--NeedCopy-->
    
  3. マシンカタログの構成の詳細を取得します。例:

    Get-ProvScheme -ProvisioningSchemeName AzureCatalog
    <!--NeedCopy-->
    

    ProvisioningSchemeVersion は1つインクリメントされます。VMサイズとストレージタイプも更新されます。

  4. VMのプロパティを更新します。例えば、VMにマシンプロファイルを提供します。

    Set-ProvVM -ProvisioningSchemeName AzureCatalog -VMName machine1 -MachineProfile "XDHyp:\HostingUnits\<hosting-unit>\machineprofile.folder\<resource-group>.resourcegroup\<template-spec>.templatespec\<template-spec-version>.templatespecversion"
    <!--NeedCopy-->
    

    注:

    マシンプロファイルの入力には、タグと異なるVMサイズ (ServiceOffering) が指定されています。

  5. VMの構成更新とマシンカタログの更新をマージした後にVMが持つことになるプロパティのリストを取得します。例:

    Get-ProvVMConfigurationResultantSet -ProvisioningSchemeName AzureCatalog -VMName machine1
    <!--NeedCopy-->
    
    -  > **注:**
    -  > -  > VMに対する更新は、マシンカタログに対して行われた更新を上書きします。
    
  6. VMのスケジュールされた更新を要求します。例:

    Set-ProvVMUpdateTimeWindow -ProvisioningSchemeName AzureCatalog -VMName machine1 -StartsNow -DurationInMinutes -1
    <!--NeedCopy-->
    
  7. VMを再起動します。例:

    New-BrokerHostingPowerAction -MachineName machine1 -Action TurnOn
    <!--NeedCopy-->
    

    VMは、マシンプロファイルから派生した更新されたVMサイズを保持します。マシンプロファイルで指定されたタグ値もVMに適用されます。ただし、ストレージタイプは最新のプロビジョニングスキームから派生します。

  8. VMの構成バージョンを取得します。例:

    Get-ProvVM -ProvisioningSchemeName AzureCatalog -VMName machine1
    <!--NeedCopy-->
    

    ProvisioningSchemeVersionProvVMConfigurationVersion は最新バージョンを表示します。

VMに適用された構成更新のロールバック

  1. VMに更新を適用した後、VMをシャットダウンします。
  2. VMに適用された更新を削除するには、次のコマンドを実行します。例:

    Set-ProvVM -RevertToProvSchemeConfiguration -ProvisioningSchemeName AzureCatalog -VMName machine1
    <!--NeedCopy-->
    
  3. VMのスケジュールされた更新を要求します。例:

        -  Set-ProvVMUpdateTimeWindow -ProvisioningSchemeName AzureCatalog -VMName machine1 -StartsNow -DurationInMinutes -1
    <!--NeedCopy-->
    
    -  1.  VMを再起動します。例:
    
    New-BrokerHostingPowerAction -MachineName machine1 -Action TurnOn
    <!--NeedCopy-->
    
    -  1.  VM の構成バージョンを確認します。例:
    
        -  Get-ProvVM -ProvisioningSchemeName AzureCatalog -VMName machine1
    <!--NeedCopy-->
    

    ProvVMConfigurationVersion の値は、マシンカタログの構成バージョンです。

  • ディスク暗号化の変更

Azure 仮想化環境でディスク暗号化を変更し、次の操作を実行できます。

  • New-ProvScheme コマンドを使用して、マスターイメージの DES とは異なるディスク暗号化セット (DES) を持つ MCS マシンカタログを作成します。例:

     $customProperties = @"
     <CustomProperties xmlns="http://schemas.citrix.com/2014/xd/machinecreation" xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance">
     <Property xsi:type="DiskEncryptionSetId" Name="Zones" Value="/subscriptions/XXXXXXXXXXXXXXXXXXXXXXXXXXXXX/resourceGroups/testrsg/providers/Microsoft.Compute/diskEncryptionSets/test-diskEncryptionSet"/>
     </CustomProperties>
     "@
     New-ProvScheme -CleanOnBoot `
     -ProvisioningSchemeName $provisioningSchemeName `
     -HostingUnitName $hostingUnitName `
     -IdentityPoolName $identityPoolName `
     -InitialBatchSizeHint $numberOfVms `
     -masterImagePath $masterImagePath `
     -NetworkMapping $networkMapping `
     -CustomProperties $customProperties
     <!--NeedCopy-->
    
  • Set-ProvScheme および Set-ProvVMUpdateTimeWindow コマンドを使用して、既存の MCS マシンカタログと既存の VM のディスク暗号化タイプをある DES キーから別の DES キーに変更します。VM を再起動すると、更新された DES キーが表示されます。例:

     $customProperties = '<CustomProperties xmlns="http://schemas.citrix.com/2014/xd/machinecreation" xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance">
     <Property xsi:type="StringProperty" Name="DiskEncryptionSetId" Value="/subscriptions/456c683e2ed7/resourceGroups/testrg/providers/Microsoft.Compute/diskEncryptionSets/diskEncryptionSet1" />
     </CustomProperties>'
     Set-ProvScheme -ProvisioningSchemeName azure-catalog -CustomProperties $customProperties
     Set-ProvVMUpdateTimeWindow -ProvisioningSchemeName azure-catalog -VMName azu01, azu02 -StartsNow -DurationInMinutes -1
     <!--NeedCopy-->
    
  • Set-ProvScheme および Set-ProvVMUpdateTimeWindow コマンドを使用して、以前 CMEK が有効になっていなかった MCS マシンカタログと VM を、顧客管理の暗号化キー (CMEK) 暗号化 (DES)、ホストでのディスク暗号化、または二重暗号化を持つように更新します。さまざまな暗号化タイプについては、「Azure サーバー側暗号化」、「Azure ホストでのディスク暗号化」、および「マネージドディスクでの二重暗号化」を参照してください。

  • Set-ProvScheme および Set-ProvVMUpdateTimeWindow コマンドを使用して、以前暗号化されていた既存の MCS マシンカタログと VM を非暗号化に更新します。例:

     $customProperties = '<CustomProperties xmlns="http://schemas.citrix.com/2014/xd/machinecreation" xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance">
     <Property xsi:type="StringProperty" Name="DiskEncryptionSetId" Value="" />
     </CustomProperties>'
     Set-ProvScheme -ProvisioningSchemeName azure-catalog -CustomProperties $customProperties
     Set-ProvVMUpdateTimeWindow -ProvisioningSchemeName azure-catalog -VMName azu01, azu02 -StartsNow -DurationInMinutes -1
     <!--NeedCopy-->
    
  • プライベートエンドポイントによるディスク暗号化を有効にします (ProxyHypervisorTrafficThroughConnector が有効なホスト接続を使用した MCS マシンカタログ)。プライベートエンドポイントによるディスク暗号化を有効にする方法については、「プライベートエンドポイントによるディスク暗号化の有効化」を参照してください。

  • プライベートエンドポイントによるディスク暗号化の有効化

  • Azure の制限により、現在、プライベートエンドポイントに対して顧客管理キーによるサーバー側暗号化を使用することはできません。ただし、既存の MCS マシンカタログとプライベートエンドポイントを持つ VM を DES キーで暗号化するように更新することはできます。

プライベートエンドポイントを持つ既存のマシンカタログの更新

  • プライベートエンドポイントを持つ既存のマシンカタログを更新する詳細な手順は次のとおりです。
  1. ProxyHypervisorTrafficThroughConnector を介してディスク暗号化なしでカタログを作成します。
  2. Set-ProvScheme を実行して、DiskEncryptionSetId でカタログを更新します。

    注:

    DiskEcryptionSetIdCustomProperties または MachineProfile を介して構成できます。CustomPropertiesMachineProfile の両方で定義されている場合、CustomProperties で定義されているプロパティが適用されます。

    CustomProperties を使用する場合の例:

    $customProperties = '<CustomProperties xmlns="http://schemas.citrix.com/2014/xd/machinecreation" xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance">
    <Property xsi:type="StringProperty" Name="DiskEncryptionSetId" Value="/subscriptions/456c683e2ed7/resourceGroups/testrg/providers/Microsoft.Compute/diskEncryptionSets/diskEncryptionSet1"/>
    </CustomProperties>'
    Set-ProvScheme -ProvisioningSchemeName azure-catalog -CustomProperties $customProperties
    <!--NeedCopy-->
    
  • MachineProfile を使用する場合の例: ディスク暗号化が有効な VM またはディスク暗号化設定を持つテンプレート仕様を使用します。

    ```

  • Set-ProvScheme -ProvisioningSchemeName azure-catalog -MachineProfile “XDHyp:\HostingUnits\azureunit\machineprofile.folder\testrg.resourcegroup\new-template.vm”

    ```

    または、Web Studio を使用してマシンプロファイルを更新することもできます。

  1. Set-ProvVMUpdateTimeWindow を実行して、既存のカタログ VM を更新します。例:

    Set-ProvVMUpdateTimeWindow -ProvisioningSchemeName azure-catalog -VMName azu01, azu02 -StartsNow -DurationInMinutes -1
    <!--NeedCopy-->
    
  2. VM を再起動すると、Azure ポータルの VM のディスクに更新されたディスク暗号化が表示されます。
  3. 新しいカタログ VM を追加する前に、Set-ProvScheme を実行してディスク暗号化を解除します。

    注:

    プライベートエンドポイントカタログを更新しているため、この手順が必要です。この手順を実行しないと、新しい VM をカタログに追加しようとしたときにエラーが発生します。

    例:

    $customProperties = '<CustomProperties xmlns="http://schemas.citrix.com/2014/xd/machinecreation" xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance">
    <Property xsi:type="StringProperty" Name="DiskEncryptionSetId" Value="" />
    </CustomProperties>'
    Set-ProvScheme -ProvisioningSchemeName azure-catalog -CustomProperties $customProperties
    <!--NeedCopy-->
    
  4. 新しい VM をカタログに追加します。

個々のカタログ VM の更新

個々のカタログ VM を更新する詳細な手順は次のとおりです。

  1. ProxyHypervisorTrafficThroughConnector を介してディスク暗号化なしでカタログを作成します。
  2. Set-ProvVM を実行して、DiskEncryptionSetId でカタログ VM を更新します。

    注:

    DiskEcryptionSetIdCustomProperties または MachineProfile のいずれかを介して構成できます。

    CustomProperties を使用する場合の例:

    $customProperties = '<CustomProperties xmlns="http://schemas.citrix.com/2014/xd/machinecreation" xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance">
    <Property xsi:type="StringProperty" Name="DiskEncryptionSetId" Value="/subscriptions/456c683e2ed7/resourceGroups/testrg/providers/Microsoft.Compute/diskEncryptionSets/diskEncryptionSet1" />
    </CustomProperties>'
    Set-ProvVM -ProvisioningSchemeName azure-catalog  -VMName azu01 -CustomProperties $customProperties
    <!--NeedCopy-->
    

    MachineProfile を使用する場合の例:

    Set-ProvVM -ProvisioningSchemeName azure-catalog  -VMName azu01 -MachineProfile "XDHyp:\HostingUnits\azureunit\machineprofile.folder\testrg.resourcegroup\new-template.vm"
    <!--NeedCopy-->
    
  3. Set-ProvVMUpdateTimeWindow を実行して、既存のカタログ VM を更新します。例:

    Set-ProvVMUpdateTimeWindow -ProvisioningSchemeName azure-catalog -VMName azu01 -StartsNow -DurationInMinutes -1
    <!--NeedCopy-->
    
  4. VM を再起動すると、Azure ポータルの VM のディスクに更新されたディスク暗号化が表示されます。
  5. 新しい VM をカタログに追加します。

既存のカタログの WBC ディスクとして一時ディスクを使用

既存の MCS マシンカタログの書き込みキャッシュディスク (WBC) ディスクとして Azure 一時ディスクを使用できます。Set-ProvScheme PowerShell コマンドを使用して、既存のカタログと VM を更新します。

前提条件

既存のカタログは、次の条件を満たしている必要があります。

注:

既存のカタログが次の要件を満たしていない場合、WBC ディスクは一時ディスク内に配置されません。

  • MCSIO が有効になっている: カスタムプロパティ WriteBackCacheMemorySizeWriteBackCacheDiskSize、および UseWriteBackCache が有効になっています。
  • エフェメラル OS ディスクが有効になっていません。
  • WBC が非永続的である: PersistWBCfalse です。
  • UseTempDiskForWBC が null または false です。
  • 一時ディスクサイズは、(書き込みキャッシュディスクサイズ + ページングファイル用の予約済みスペース + 1 GB のバッファースペース)の合計サイズよりも大きい必要があります。

重要:

一時ディスクを持つサービスオファリングから一時ディスクを持たないサービスオファリングへの変更、またはその逆は許可されていません。

既存のカタログの更新

既存のカタログを更新するには、次のコマンドを実行します。

  1. 既存のカタログで Set-ProvScheme を実行し、UseTempDiskForWBCtrue に更新します。例:

    Set-ProvScheme -ProvisioningSchemeName name -CustomProperties "<CustomProperties xmlns=`"http://schemas.citrix.com/2014/xd/machinecreation`" xmlns:xsi=`"http://www.w3.org/2001/XMLSchema-instance`"><Property xsi:type=`"StringProperty`" Name=`"StorageAccountType`" Value=`"Standard_LRS`"/><Property xsi:type=`"StringProperty`" Name=`"UseManagedDisks`" Value=`"True`"/><Property xsi:type=`"StringProperty`" Name=`"ManagedDisksPreview`" Value=`"False`"/><Property xsi:type=`"StringProperty`" Name=`"PersistOsDisk`" Value=`"False`"/><Property xsi:type=`"StringProperty`" Name=`"UseTempDiskForWBC`" Value=`"True`"/><Property xsi:type=`"StringProperty`" Name=`"PersistWBC`" Value=`"False`"/></CustomProperties>"
    <!--NeedCopy-->
    
  2. 新しいマシンをカタログに追加し、電源を入れます。新しいVMには、一時ディスク内にWBCディスクがあります。

Azure VM、スナップショット、OSディスク、およびギャラリーイメージ定義の情報の取得

OSディスクとタイプ、スナップショット、ギャラリーイメージ定義を含むAzure VMの情報を表示できます。この情報は、マシンカタログが割り当てられている場合、マスターイメージ上のリソースに対して表示されます。この機能を使用して、LinuxまたはWindowsイメージのいずれかを表示および選択します。PowerShellプロパティ TemplateIsWindowsTemplateAdditionDatafield パラメーターに追加されました。このフィールドには、VMタイプ、OSディスク、ギャラリーイメージ情報、OSタイプ情報など、Azure固有の情報が含まれています。TemplateIsWindowsTemplateTrue に設定するとOSタイプがWindowsであることを示し、TemplateIsWindowsTemplateFalse に設定するとOSタイプがLinuxであることを示します。

ヒント:

TemplateIsWindowsTemplate PowerShellプロパティによって表示される情報は、Azure APIから取得されます。このフィールドが空の場合があります。たとえば、データディスクからのスナップショットには TemplateIsWindowsTemplate フィールドが含まれていません。これは、OSタイプをスナップショットから取得できないためです。

たとえば、PowerShellを使用してWindows OSタイプの場合、Azure VMの AdditionData パラメーターを True に設定します。

PS C:\Users\username> (get-item XDHyp:\HostingUnits\mynetwork\image.folder\username-dev-testing-rg.resourcegroup\username-dev-tsvda.vm).AdditionalData
Key Value
ServiceOfferingDescription Standard_B2ms
HardDiskSizeGB 127
ResourceGroupName FENGHUAJ-DEV-TESTING-RG
ServiceOfferingMemory 8192
ServiceOfferingCores 2
TemplateIsWindowsTemplate True
ServiceOfferingWithTemporaryDiskSizeInMb 16384
SupportedMachineGenerations Gen1,Gen2
<!--NeedCopy-->

MCSカタログのクローン作成

既存の永続的および非永続的MCSカタログを複数のカタログに分割します。元のプロビジョニングスキームのクローンを作成することで、VMの特定のサブセットに異なるカタログレベルのポリシーと構成を適用できます。この機能は、組織内の財務部門や役員などの異なる機能ロールが、標準ユーザーと比較して異なるリソース構成(バックアップ制限など)を必要とする場合に特に役立ちます。

使用例

管理者は、大規模なVMカタログを管理しています。役員チームは、標準ポリシーで許可されているよりも多くのバックアップを必要とします。管理者は Copy-ProvScheme コマンドを使用して、既存のカタログプロビジョニングスキームを新しいカタログにクローンします。これにより、管理者は新しい役員カタログに専用のバックアップポリシーを適用しながら、組織の残りの部分の元の設定を維持できます。

適用範囲

  • Azure環境
  • 永続的および非永続的MCSカタログ
  • MCSプロビジョニングされたCitrix Provisioningカタログ

制限事項

  • プロビジョニングスキーム: 最新バージョンのプロビジョニングスキームのみがコピーされます。
  • バックアップスケジュール: バックアップスケジュールは新しいカタログにコピーされません。新しいカタログには独自のバックアップスケジュールを構成する必要があります。
  • IDプール: ID関連のオブジェクトはクローンされず、同じ ADAccountIdentityPool を使用して共有されたままになります。
  • デリバリーグループ: デリバリーグループの操作とユーザー割り当ては、クローン作成プロセス中に変更または関連付けられません。

重要な考慮事項

  • リソースグループ (TargetLocation):

    • TargetLocation (Azureリソースグループ) を指定しない場合:
      • Citrix管理リソースグループの場合、新しいCitrix管理リソースグループが作成されます。
      • BYO (Bring Your Own) リソースグループの場合、新しいプロビジョニングスキームリソースは同じリソースグループに作成されます。
    • TargetLocation を指定する場合:

      • リソースは指定されたリソースグループに作成されます。
      • 指定されたリソースグループはAzureにすでに存在している必要があります。
  • ベースディスクスナップショット: リソースグループの構成に関係なく、ベースディスクスナップショットのコピーが常に作成されます。

前提条件

  • 既存のプロビジョニングスキーム (ソースカタログ) が利用可能である必要があります。
  • ターゲットの場所を指定する場合、ターゲットのAzureリソースグループが存在している必要があります。

PowerShellを使用した構成

  1. PowerShellウィンドウを開きます。
  2. 必要なパラメーター (SourceProvisioningSchemeName または SourceProvisioningSchemeUid) と TargetProvisioningSchemeName を使用して Copy-ProvScheme コマンドを実行します。

    例1: 名前でプロビジョニングスキームをコピーします。

    この例では、「Backup」という名前のスキームを「TestCopy」という新しいスキームにコピーします。

    Copy-ProvScheme -SourceProvisioningSchemeName Backup -TargetProvisioningSchemeName TestCopy
    <!--NeedCopy-->
    

    例2: Uidでプロビジョニングスキームを特定のResource Groupにコピーします。

    この例では、Uidを使用してスキームをコピーし、「TestRg」という名前のターゲットリソースグループを指定します。

    Copy-ProvScheme -SourceProvisioningSchemeUid 771e205d-1ee5-4ad2-b044-ecf3d7f24ec7 -TargetProvisioningSchemeName TestCopy -TargetLocation TestRg
    <!--NeedCopy-->
    

MCSによって作成されたリソースの識別

MCSがリソースに追加するタグは次のとおりです。表のタグは「キー」:「値」として表されています。

リソース名 タグ
IDディスク “CitrixProvisioningSchemeId” : “xxxxxxxx-xxxx-xxxx-xxxx-xxxxxxxxxxxx”
  “CitrixResource” : “Internal”
イメージ “CitrixProvisioningSchemeId” : “xxxxxxxx-xxxx-xxxx-xxxx-xxxxxxxxxxxx”
  “CitrixResource” : “Internal”
NIC “CitrixProvisioningSchemeId” : “xxxxxxxx-xxxx-xxxx-xxxx-xxxxxxxxxxxx”
  “CitrixResource” : “Internal”
OSディスク “CitrixProvisioningSchemeId” : “xxxxxxxx-xxxx-xxxx-xxxx-xxxxxxxxxxxx”
  “CitrixResource” : “Internal”
PrepVM “CitrixProvisioningSchemeId” : “xxxxxxxx-xxxx-xxxx-xxxx-xxxxxxxxxxxx”
  “CitrixResource” : “Internal”
公開済みスナップショット “CitrixProvisioningSchemeId” : “xxxxxxxx-xxxx-xxxx-xxxx-xxxxxxxxxxxx”
  “CitrixResource” : “Internal”
リソースグループ “CitrixResource” : “Internal”
  CitrixSchemaVersion: 2.0
  “CitrixProvisioningSchemeId” : “xxxxxxxx-xxxx-xxxx-xxxx-xxxxxxxxxxxx”
ストレージアカウント “CitrixProvisioningSchemeId” : “xxxxxxxx-xxxx-xxxx-xxxx-xxxxxxxxxxxx”
  “CitrixResource” : “Internal”
カタログ内のVM “CitrixProvisioningSchemeId” : “xxxxxxxx-xxxx-xxxx-xxxx-xxxxxxxxxxxx”
  “CitrixResource” : “Internal”
WBCディスク “CitrixProvisioningSchemeId” : “xxxxxxxx-xxxx-xxxx-xxxx-xxxxxxxxxxxx”
  “CitrixResource” : “Internal”

注:

CitrixResource タグがMCSによって作成されたリソースとして識別するために追加されている場合、VMはCitrixインベントリに表示されません。タグを削除または名前変更することで、表示可能にできます。

タグの削除

カタログまたはVMを作成すると、次のリソースにタグが作成されます。

  • リソースグループ
  • 仮想マシン
  • OSディスク
  • IDディスク
  • ネットワークインターフェース
  • ストレージアカウント

CitrixデータベースからVMとマシンカタログを削除し、タグを削除できます。次のコマンドを使用できます。

  • Remove-ProvVMForgetVM パラメーターを使用して、CitrixデータベースからVMとタグを削除し、単一のVMまたはマシンカタログ内のVMのリストから削除します。
  • Remove-ProvSchemeForgetVM パラメーターを使用して、Citrixデータベースからマシンカタログと、マシンカタログ全体からタグを削除します。

この機能は、永続VMにのみ適用されます。

これを行うには:

  1. PowerShell ウィンドウを開きます。
  2. Citrix固有のPowerShellモジュールをロードするために asnp citrix* を実行します。
  3. CitrixデータベースからVMとタグを削除するために Remove-ProvVM を実行します。 例:

    Remove-ProvVM -ProvisioningSchemeName “ProvisioningSchemeName” -VMName “vmname” -ForgetVM
    <!--NeedCopy-->
    
  4. Citrixデータベースからマシンカタログとタグを削除するために Remove-ProvScheme を実行します。例:

    Remove-ProvScheme -ProvisioningSchemeName “ProvisioningSchemeName” -ForgetVM
    <!--NeedCopy-->
    

    注:

    Remove-ProvSchemeForgetVM パラメーターを使用した後、プロビジョニングスキームがBYORG (Bring Your Own Resource Group) またはCitrix管理リソースグループのいずれかに存在する場合、MCSはベースディスクスナップショットを含むすべてのスナップショットを削除します。

詳細情報