サーバーまたはドライブを記憶域スペース ダイレクトに追加するAdding servers or drives to Storage Spaces Direct

適用対象:Windows Server 2019、Windows Server 2016Applies to: Windows Server 2019, Windows Server 2016

このトピックでは、サーバーやドライブを記憶域スペース ダイレクトに追加する方法について説明します。This topic describes how to add servers or drives to Storage Spaces Direct.

サーバーの追加Adding servers

サーバーの追加 (スケール アウトとも呼ばれます) によって、記憶域容量が増えます。また、記憶域のパフォーマンスを向上したり、より優れた記憶域の効率を実現したりすることができます。Adding servers, often called scaling out, adds storage capacity and can improve storage performance and unlock better storage efficiency. 展開がハイパーコンバージされている場合、サーバーを追加すると、ワークロードのコンピューティング リソースも増えます。If your deployment is hyper-converged, adding servers also provides more compute resources for your workload.

4ノードクラスターにサーバーを追加するアニメーション

一般的な展開では、サーバーを追加することで簡単にスケール アウトできます。Typical deployments are simple to scale out by adding servers. 次の 2 つの手順を実行するだけです。There are just two steps:

  1. フェールオーバー クラスター スナップインを使用してクラスター検証ウィザードを実行するか、PowerShell で Test-Cluster コマンドレットを使用します (管理者として実行)。Run the cluster validation wizard using the Failover Cluster snap-in or with the Test-Cluster cmdlet in PowerShell (run as Administrator). このとき、追加する新しいサーバー <NewNode> を指定します。Include the new server <NewNode> you wish to add.

    Test-Cluster -Node <Node>, <Node>, <Node>, <NewNode> -Include "Storage Spaces Direct", Inventory, Network, "System Configuration"
    

    この処理によって、新しいサーバーが Windows Server 2016 Datacenter Edition を実行していること、既存のサーバーとして同じ Active Directory Domain Services ドメインに参加していること、すべての必要な役割と機能があること、およびネットワークキングが適切に構成されていることが確認されます。This confirms that the new server is running Windows Server 2016 Datacenter Edition, has joined the same Active Directory Domain Services domain as the existing servers, has all the required roles and features, and has networking properly configured.

    重要

    不要となった古いデータやメタデータが保存されているドライブを再利用している場合は、Disk Management または Reset-PhysicalDisk コマンドレットを使用して、それらのデータを消去します。If you are re-using drives that contain old data or metadata you no longer need, clear them using Disk Management or the Reset-PhysicalDisk cmdlet. 古いデータやメタデータが検出された場合、ドライブがプールされません。If old data or metadata is detected, the drives aren't pooled.

  2. クラスター上で次のコマンドレットを実行し、サーバーの追加を完了します。Run the following cmdlet on the cluster to finish adding the server:

Add-ClusterNode -Name NewNode 

注意

自動プール機能を使用するには、プール数が 1 つである必要があります。Automatic pooling depends on you having only one pool. 標準構成を避けて複数のプールを作成した場合、Add-PhysicalDisk を使用して手動で目的のプールに新しいドライブを追加する必要があります。If you've circumvented the standard configuration to create multiple pools, you will need to add new drives to your preferred pool yourself using Add-PhysicalDisk.

サーバーを 2 台から 3 台にスケーリングする: 3 方向ミラーリングのロック解除From 2 to 3 servers: unlocking three-way mirroring

2番目のサーバーを2ノードクラスターに追加する

サーバーが 2 台の場合は、双方向ミラーリングを行うボリュームを作成するだけです (分散型 RAID-1 に相当)。With two servers, you can only create two-way mirrored volumes (compare with distributed RAID-1). サーバーが 3 台の場合は、3 方向ミラーリングを行うボリュームを作成して、フォールト トレランスを向上させることができます。With three servers, you can create three-way mirrored volumes for better fault tolerance. 可能な限り、3 方向ミラーリングを使用することをお勧めします。We recommend using three-way mirroring whenever possible.

双方向ミラーリングを行うボリュームを、3 方向ミラーリングにインプレース アップグレードすることはできません。Two-way mirrored volumes cannot be upgraded in-place to three-way mirroring. 代わりに、新しいボリュームを作成し、データをそのボリュームに移行して (Storage Replica などを使用したコピー)、以前のボリュームを削除します。Instead, you can create a new volume and migrate (copy, such as by using Storage Replica) your data to it, and then remove the old volume.

3 方向ミラーリングのボリュームの作成を開始する場合、適切な方法がいくつかあります。To begin creating three-way mirrored volumes, you have several good options. これらの方法は必要に応じて使用してください。You can use whichever you prefer.

オプション 1Option 1

新しいボリュームを作成するたびに、そのボリュームに対して PhysicalDiskRedundancy = 2 を指定します。Specify PhysicalDiskRedundancy = 2 on each new volume upon creation.

New-Volume -FriendlyName <Name> -FileSystem CSVFS_ReFS -StoragePoolFriendlyName S2D* -Size <Size> -PhysicalDiskRedundancy 2

オプション 2Option 2

代わりに、プールの ResiliencySetting オブジェクト (名前は Mirror) に対して PhysicalDiskRedundancyDefault = 2 を設定することもできます。Instead, you can set PhysicalDiskRedundancyDefault = 2 on the pool's ResiliencySetting object named Mirror. これにより、新しいミラー ボリュームでは、指定しなくても自動的に 3 方向ミラーリングが使用されます。Then, any new mirrored volumes will automatically use three-way mirroring even if you don't specify it.

Get-StoragePool S2D* | Get-ResiliencySetting -Name Mirror | Set-ResiliencySetting -PhysicalDiskRedundancyDefault 2

New-Volume -FriendlyName <Name> -FileSystem CSVFS_ReFS -StoragePoolFriendlyName S2D* -Size <Size>

オプション 3Option 3

Capacity と呼ばれる StorageTier テンプレートに対して PhysicalDiskRedundancy = 2 を設定し、その階層を参照してボリュームを作成します。Set PhysicalDiskRedundancy = 2 on the StorageTier template called Capacity, and then create volumes by referencing the tier.

Set-StorageTier -FriendlyName Capacity -PhysicalDiskRedundancy 2 

New-Volume -FriendlyName <Name> -FileSystem CSVFS_ReFS -StoragePoolFriendlyName S2D* -StorageTierFriendlyNames Capacity -StorageTierSizes <Size>

サーバーを 3 台から 4 台にスケーリングする: デュアル パリティのロック解除From 3 to 4 servers: unlocking dual parity

4番目のサーバーを3ノードクラスターに追加する

サーバーが 4 台の場合は、デュアル パリティ (一般的にイレイジャー コーディングとも呼ばれます) を使用できます (分散型 RAID-6 に相当)。With four servers, you can use dual parity, also commonly called erasure coding (compare to distributed RAID-6). 3 方向ミラーリングと同じフォールト トレランスが実現されますが、記憶域の効率はより優れています。This provides the same fault tolerance as three-way mirroring, but with better storage efficiency. 詳しくは、「フォールト トレランスと記憶域の効率」をご覧ください。To learn more, see Fault tolerance and storage efficiency.

小規模な展開から始める場合は、デュアル パリティのボリュームを作成するための適切な方法がいくつかあります。If you're coming from a smaller deployment, you have several good options to begin creating dual parity volumes. これらの方法は必要に応じて使用してください。You can use whichever you prefer.

オプション 1Option 1

新しいボリュームを作成するたびに、そのボリュームに対して PhysicalDiskRedundancy = 2ResiliencySettingName = Parity を指定します。Specify PhysicalDiskRedundancy = 2 and ResiliencySettingName = Parity on each new volume upon creation.

New-Volume -FriendlyName <Name> -FileSystem CSVFS_ReFS -StoragePoolFriendlyName S2D* -Size <Size> -PhysicalDiskRedundancy 2 -ResiliencySettingName Parity

オプション 2Option 2

プールの ResiliencySetting オブジェクト (名前は Parity) に対して PhysicalDiskRedundancy = 2 を設定します。Set PhysicalDiskRedundancy = 2 on the pool's ResiliencySetting object named Parity. これにより、新しいパリティ ボリュームでは、指定しなくても自動的にデュアル パリティが使用されます。Then, any new parity volumes will automatically use dual parity even if you don't specify it

Get-StoragePool S2D* | Get-ResiliencySetting -Name Parity | Set-ResiliencySetting -PhysicalDiskRedundancyDefault 2

New-Volume -FriendlyName <Name> -FileSystem CSVFS_ReFS -StoragePoolFriendlyName S2D* -Size <Size> -ResiliencySettingName Parity

サーバーが 4 台あれば、個々のボリュームで一部がミラーリングを、一部がパリティを実行する、ミラーリングによって高速化されるパリティを使用することもできます。With four servers, you can also begin using mirror-accelerated parity, where an individual volume is part mirror and part parity.

この場合、4 台のサーバーで初めて Enable-ClusterS2D を実行したときの作成方法と同様に、Performance 階層と Capacity 階層の両方を持つように StorageTier テンプレートを更新する必要があります。For this, you will need to update your StorageTier templates to have both Performance and Capacity tiers, as they would be created if you had first run Enable-ClusterS2D at four servers. 具体的には、データ格納用デバイス (SSD や HDD など) の MediaType と、PhysicalDiskRedundancy = 2 を両方の階層に指定します。Specifically, both tiers should have the MediaType of your capacity devices (such as SSD or HDD) and PhysicalDiskRedundancy = 2. Performance 階層には ResiliencySettingName = MirrorCapacity 階層には ResiliencySettingName = Parity を指定します。The Performance tier should be ResiliencySettingName = Mirror, and the Capacity tier should be ResiliencySettingName = Parity.

オプション 3Option 3

単に既存の階層テンプレートを削除し、2 つの新しい階層を作成するのが一番簡単な方法です。You may find it easiest to simply remove the existing tier template and create the two new ones. この方法は、階層テンプレートを参照して作成された既存のボリュームには影響しません。テンプレートのみが影響を受けます。This will not affect any pre-existing volumes which were created by refering the tier template: it's just a template.

Remove-StorageTier -FriendlyName Capacity

New-StorageTier -StoragePoolFriendlyName S2D* -MediaType HDD -PhysicalDiskRedundancy 2 -ResiliencySettingName Mirror -FriendlyName Performance
New-StorageTier -StoragePoolFriendlyName S2D* -MediaType HDD -PhysicalDiskRedundancy 2 -ResiliencySettingName Parity -FriendlyName Capacity

これで完了です。That's it! これらの階層テンプレートを参照することにより、ミラーリングによってパリティが高速化されたボリュームを作成することができます。You are now ready to create mirror-accelerated parity volumes by referencing these tier templates.

Example

New-Volume -FriendlyName "Sir-Mix-A-Lot" -FileSystem CSVFS_ReFS -StoragePoolFriendlyName S2D* -StorageTierFriendlyNames Performance, Capacity -StorageTierSizes <Size, Size> 

サーバーが 4 台を超える場合: パリティの効率の向上Beyond 4 servers: greater parity efficiency

サーバーの台数が 4 台を超えるスケーリングの場合、新しいボリュームによって、パリティ エンコーディングの効率が向上します。As you scale beyond four servers, new volumes can benefit from ever-greater parity encoding efficiency. たとえば、6 ~ 7 台のサーバーの場合、効率は 50.0% から 66.7% に改善されます。これは、(リード-ソロモン 2+2 ではなく) リード-ソロモン 4+2 を使用できるようになるためです。For example, between six and seven servers, efficiency improves from 50.0% to 66.7% as it becomes possible to use Reed-Solomon 4+2 (rather than 2+2). この新しい効率を実現するために追加の手順は必要ありません。ボリュームを作成するたびに、最適なエンコーディングが自動的に決定されます。There are no steps you need to take to begin enjoying this new efficiency; the best possible encoding is determined automatically each time you create a volume.

ただし、既存のボリュームは新しい広範なエンコーディングに "変換" されません。However, any pre-existing volumes will not be "converted" to the new, wider encoding. その理由の 1 つは、変換には、展開全体の文字通りあらゆるビットに影響を与える大量の計算が必要になるためです。One good reason is that to do so would require a massive calculation affecting literally every single bit in the entire deployment. 既存のデータを高い効率でエンコーディングできるようにするには、既存のデータを新しいボリュームに移行します。If you would like pre-existing data to become encoded at the higher efficiency, you can migrate it to new volume(s).

詳しくは、「フォールト トレランスと記憶域の効率」をご覧ください。For more details, see Fault tolerance and storage efficiency.

シャーシやラックのフォールト トレランスの使用時にサーバーを追加するAdding servers when using chassis or rack fault tolerance

シャーシやラックのフォールト トレランスを使用している展開の場合、新しいサーバーのシャーシまたはラックを指定してから、それをクラスターに追加する必要があります。If your deployment uses chassis or rack fault tolerance, you must specify the chassis or rack of new servers before adding them to the cluster. こうすることで、記憶域スペース ダイレクトにデータを分散する最適な方法を指示し、フォールト トレランスを最大化することができます。This tells Storage Spaces Direct how best to distribute data to maximize fault tolerance.

  1. 管理者特権の PowerShell セッションを開き、次のコマンドを使用して、ノードに一時的なフォールト ドメインを作成します。この <NewNode> は新しいクラスター ノードの名前です。Create a temporary fault domain for the node by opening an elevated PowerShell session and then using the following command, where <NewNode> is the name of the new cluster node:

    New-ClusterFaultDomain -Type Node -Name <NewNode> 
    
  2. この一時的なフォールト ドメインを、新しいサーバーを実際に配置するシャーシまたはラックに移行します ( <ParentName> で指定します)。Move this temporary fault-domain into the chassis or rack where the new server is located in the real world, as specified by <ParentName>:

    Set-ClusterFaultDomain -Name <NewNode> -Parent <ParentName> 
    

    詳しくは、「Windows Server 2016 での障害ドメインの認識」をご覧ください。For more information, see Fault domain awareness in Windows Server 2016.

  3. サーバーの追加」に従ってクラスターにサーバーを追加します。Add the server to the cluster as described in Adding servers. 新しいサーバーがクラスターに参加すると、(その名前を使用して) プレースホルダー フォールト ドメインに自動的に関連付けられます。When the new server joins the cluster, it's automatically associated (using its name) with the placeholder fault domain.

ドライブの追加Adding drives

ドライブの追加 (スケール アップとも呼ばれます) によって、記憶域容量が増え、パフォーマンスも改善できます。Adding drives, also known as scaling up, adds storage capacity and can improve performance. 空きスロットがある場合、サーバーを追加することなく、各サーバーにドライブを追加して記憶域容量を拡張することができます。If you have available slots, you can add drives to each server to expand your storage capacity without adding servers. キャッシュ ドライブやデータ格納用ドライブはいつでも個別に追加できます。You can add cache drives or capacity drives independently at any time.

重要

同じ記憶域構成ですべてのサーバーを構成することを強くお勧めします。We strongly recommend that all servers have identical storage configurations.

システムへのドライブの追加を示すアニメーション

スケール アップするには、ドライブを接続し、Windows から検出されることを確認します。To scale up, connect the drives and verify that Windows discovers them. PowerShell の Get-PhysicalDisk コマンドレットを使用し、CanPool プロパティを True に設定して実行すると、接続したドライブがコマンドレットの出力に表示されます。They should appear in the output of the Get-PhysicalDisk cmdlet in PowerShell with their CanPool property set to True. CanPool = False と表示された場合、CannotPoolReason プロパティを調べることでその原因を確認できます。If they show as CanPool = False, you can see why by checking their CannotPoolReason property.

Get-PhysicalDisk | Select SerialNumber, CanPool, CannotPoolReason

短時間で、記憶域スペース ダイレクトから対象のドライブに自動的に要求が送信され、記憶域プールに追加されます。ボリュームは、自動的に、すべてのドライブ全体で均等に再分散されますWithin a short time, eligible drives will automatically be claimed by Storage Spaces Direct, added to the storage pool, and volumes will automatically be redistributed evenly across all the drives. 以上で作業は終了です。ボリュームを拡張したり、新しいボリュームを作成したりする準備が整いました。At this point, you're finished and ready to extend your volumes or create new ones.

ドライブが表示されない場合、ハードウェアの変更を手動でスキャンします。If the drives don't appear, manually scan for hardware changes. スキャンするには、デバイス マネージャー[操作] メニューを使用します。This can be done using Device Manager, under the Action menu. 古いデータまたはメタデータが含まれている場合は、再フォーマットすることを検討してください。If they contain old data or metadata, consider reformatting them. これを行うには、 [ディスクの管理] を使用するか、Reset-PhysicalDisk コマンドレットを使用します。This can be done using Disk Management or with the Reset-PhysicalDisk cmdlet.

注意

自動プール機能を使用するには、プール数が 1 つである必要があります。Automatic pooling depends on you having only one pool. 標準構成を避けて複数のプールを作成した場合、Add-PhysicalDisk を使用して手動で目的のプールに新しいドライブを追加する必要があります。If you've circumvented the standard configuration to create multiple pools, you will need to add new drives to your preferred pool yourself using Add-PhysicalDisk.

ドライブまたはサーバーを追加した後のドライブ使用率の最適化Optimizing drive usage after adding drives or servers

ドライブを追加または削除すると、プール内のドライブ間でのデータの分散が不安定になることがあります。Over time, as drives are added or removed, the distribution of data among the drives in the pool can become uneven. 場合によっては、特定のドライブがいっぱいになり、プール内の他のドライブの消費量がはるかに少なくなることがあります。In some cases, this can result in certain drives becoming full while other drives in pool have much lower consumption.

プール全体でもドライブ記憶域スペースダイレクトの割り当てを維持するために、ドライブまたはサーバーをプールに追加した後にドライブの使用率が自動的に最適化されます (これは、共有 SAS エンクロージャを使用する記憶域スペースシステムの手動プロセスです)。To help keep drive allocation even across the pool, Storage Spaces Direct automatically optimizes drive usage after you add drives or servers to the pool (this is a manual process for Storage Spaces systems that use Shared SAS enclosures). プールに新しいドライブを追加すると、15分後に最適化が開始されます。Optimization starts 15 minutes after you add a new drive to the pool. プールの最適化は、優先度の低いバックグラウンド操作として実行されるので、特に大容量ハードドライブを使用している場合は、完了までに数時間または数日かかることがあります。Pool optimization runs as a low-priority background operation, so it can take hours or days to complete, especially if you're using large hard drives.

最適化では2つのジョブが使用されます。1つはOptimize 、もう1つは再調整と呼ばれ、次のコマンドを使用して進行状況を監視できます。Optimization uses two jobs - one called Optimize and one called Rebalance - and you can monitor their progress with the following command:

Get-StorageJob

記憶域プールは、 optimize-storagepoolコマンドレットを使用して手動で最適化できます。You can manually optimize a storage pool with the Optimize-StoragePool cmdlet. 次に例を示します。Here's an example:

Get-StoragePool <PoolName> | Optimize-StoragePool