Azure Stack HCI で固定ボリュームからシン プロビジョニング ボリュームに変換する

適用対象: Azure Stack HCI バージョン 22H2

この記事では、Windows PowerShellを使用して、既存の固定プロビジョニング ボリュームを Azure Stack HCI クラスター上のインラインでシン プロビジョニング ボリュームに変換する方法について説明します。

固定プロビジョニングとシン プロビジョニング

固定プロビジョニングでは、作成時に記憶域プールからボリュームのフル サイズが割り当てられます。 この方法は、ボリュームが空であるにもかかわらず記憶域プールのリソースの一部が使い果たされるため、非効率的です。

固定ボリュームからシン プロビジョニング ボリュームに変換すると、未使用のストレージがプールに戻され、他のボリュームが利用できるようになります。 データがボリュームに追加または削除されると、それに応じてストレージ割り当てが増減します。

固定ボリュームとシン プロビジョニング ボリュームの両方を示す図。

PowerShell を使用してボリュームを変換する

PowerShell を使用して、次のように固定プロビジョニングからシン プロビジョニングに変換します。

  1. PowerShell を管理者として実行します。

  2. ボリュームの割り当てられたサイズ、サイズ、プロビジョニングの種類を確認します。

    階層化されていないボリュームの場合は、次のコマンドを実行します。

    Get-VirtualDisk -FriendlyName <volume_name> | FL AllocatedSize, Size, ProvisioningType
    

    前のコマンドの出力例を次に示します。

    PS C:\> New-Volume -FriendlyName NonTierVol -Size 5TB -ProvisioningType Fixed
    
    DriveLetter  FriendlyName  FileSystemType  DriveType  HealthStatus  OperationalStatus
    -----------  ------------  --------------  ---------  ------------  -----------------
                 NonTierVol    CSVFS_ReFS      Fixed      Healthy       OK
    
    PS C:\> Get-VirtualDisk -FriendlyName NonTierVol | FL AllocatedSize, Size, ProvisioningType
    
    Allocated Size   : 5497558138880
    Size             : 5497558138880
    ProvisioningType : Fixed
    

    階層化ボリュームの場合は、次のコマンドを実行します。

    Get-StorageTier -FriendlyName <volume_name*> | FL AllocatedSize, Size, ProvisioningType
    

    前のコマンドの出力例を次に示します。

    PS C:\> Get-StorageTier -FriendlyName TierVol* | FL AllocatedSize, Size, ProvisioningType
    
    AllocatedSize    : 80530636800
    Size             : 80530636800
    ProvisioningType : Fixed
    
    AllocatedSize    : 26843545600
    Size             : 26843545600
    ProvisioningType : Fixed
    
  3. 次のように、ボリュームを固定プロビジョニングからシン プロビジョニングに変換します。

    階層化されていないボリュームの場合は、次のコマンドを実行します。

     Set-VirtualDisk -FriendlyName <volume_name> -ProvisioningType Thin 
    

    階層化ボリュームの場合は、次のコマンドを実行します。

     Get-StorageTier <volume_name*> | Set-StorageTier -ProvisioningType Thin
    
  4. 変更を有効にするためにボリュームを再マウントします。 回復性ファイル システム (ReFS) では、マウント時にプロビジョニングの種類のみが認識されるため、再マウントが必要です。

    単一サーバー クラスターの場合は、次の手順を実行します。 ワークロードに若干の中断が発生する場合があります。メンテナンス時間中にこの操作を行うことをお勧めします。

    1. クラスター共有ボリューム (CSV) 名を取得します。

      Get-ClusterSharedVolume
      
    2. 次に、ボリュームをオフラインにします。

      Stop-ClusterResource -Name <name>
      

      前のコマンドの出力例を次に示します。

      PS C:\> Stop-ClusterResource -Name "Cluster Virtual Disk (TierVol)"
      
      Name                           State   Node
      ----                           -----   ----
      Cluster Virtual Disk (TierVol) Offline NodeA
      
    3. 次に、ボリュームをオンラインに戻します。

       Start-ClusterResource -Name <name>
      

    2 ノード以上のクラスターの場合は、次の操作を行います。

    1. CSV 名とノード名を取得します。

       Get-ClusterSharedVolume
      
    2. 次に、CSV を別のノードに移動して、ボリュームを再マウントします。

       Move-ClusterSharedVolume -Name <name> -Node <new_node>
      

      前のコマンドの出力例を次に示します。

      PS C:\> Get-ClusterSharedVolume
      
      Name                               State  Node
      ----                               -----  ----
      Cluster Virtual Disk (NonTierVol)  Online NodeA
      Cluster Virtual Disk (TierVol)     Online NodeB
      
      PS C:\> Move-ClusterSharedVolume -Name "Cluster Virtual Disk (TierVol)" -Node NodeA
      
      Name                           State         Node
      ----                           -----         ----
      Cluster Virtual Disk (TierVol) Online        NodeA
      
      
    3. 次に、CSV を元のノードに戻します。

       Move-ClusterSharedVolume -Name <name> -Node <original_node>
      
  5. (省略可能)固定後のスペース再利用は、時間の経過と同時に自然に発生します。 プロセスを高速化するには、次のコマンドを使用して、ボリュームが存在するノードからスラブ統合を実行します。

    Get-Volume -FriendlyName <name> | Optimize-Volume -SlabConsolidate
    

    Note

    スラブ統合は、既定で優先度が低い状態で実行されます。 スラブの統合を迅速に完了し、フォアグラウンド I/O への影響が小さい場合は、 パラメーターを指定して上記のコマンドを -NormalPriority 実行します。

  6. が にThin設定され、AllocatedSizeボリューム サイズ (Size) より小さいことをProvisioningType確認します。

    階層化されていないボリュームの場合は、次のコマンドを実行します。

    Get-VirtualDisk -FriendlyName <volume_name> | FL AllocatedSize, Size, ProvisioningType
    

    階層化ボリュームの場合は、次のコマンドを実行します。

     Get-StorageTier -FriendlyName <volume_name*> | FL AllocatedSize, Size, ProvisioningType
    

次の手順

ストレージ シン プロビジョニングの詳細については、こちらを参照してください。