本主題說明如何將伺服器或磁碟機新增至儲存空間直接存取。
新增伺服器
新增伺服器 (通常稱為擴充) 會新增儲存容量,並可改善儲存體效能並解鎖更佳的儲存體效率。 如果您的部署是超融合的,新增伺服器也會為您的工作負載提供更多計算資源。
一般部署可以藉由新增伺服器,簡單地擴充。 只有兩個步驟:
使用容錯移轉叢集嵌入式管理單元,或使用 PowerShell 中的 Test-Cluster Cmdlet 執行叢集驗證精靈 (以系統管理員身分執行)。 包含您想要新增的新伺服器 <NewNode>。
Test-Cluster -Node <Node>, <Node>, <Node>, <NewNode> -Include "Storage Spaces Direct", Inventory, Network, "System Configuration"
這可確認新的伺服器正在執行 Windows Server 2016 Datacenter Edition、已加入與現有伺服器相同的 Active Directory 網域服務網域、具有所有必要的角色和功能,並且已正確設定網路。
重要
如果您重複使用的磁碟機包含不再需要的舊資料或中繼資料,請使用 [磁碟管理] 或 [Reset-PhysicalDisk] Cmdlet 加以清除。 如果偵測到舊的資料或中繼資料,磁碟機就不會放入集區。
在叢集上執行下列 Cmdlet 以完成新增伺服器:
Add-ClusterNode -Name NewNode
注意
自動加入集區取決於您是否只有一個集區。 如果您已經規避標準設定來建立多個集區,您必須自行使用 Add-PhysicalDisk,將新的磁碟機新增至您慣用的集區。
從 2 到 3 部伺服器:解除鎖定三向鏡像
使用兩個伺服器,您只能建立雙向鏡像磁碟區 (相較於分散式 RAID-1)。 若有三部伺服器,您可建立三向鏡像磁碟區,以提升容錯能力。 我們建議盡可能使用三向鏡像。
雙向鏡像磁碟區無法就地升級為三向鏡像。 相反地,您可以建立新的磁碟區並將您的資料移轉 (複製,例如使用儲存體複本) 至其中,然後移除舊磁碟區。
若要開始建立三向鏡像磁碟區,您有數個不錯的選項。 您可使用您偏好的選項。
選項 1
在建立期間,於每個新磁碟區上指定 PhysicalDiskRedundancy = 2。
New-Volume -FriendlyName <Name> -FileSystem CSVFS_ReFS -StoragePoolFriendlyName S2D* -Size <Size> -PhysicalDiskRedundancy 2
選項 2
相反地,您可以在集區的 ResiliencySetting 物件 (名為 Mirror) 上設定 PhysicalDiskRedundancyDefault = 2。 然後,即使您未指定,任何新的鏡像磁碟區都會自動使用「三向」鏡像。
Get-StoragePool S2D* | Get-ResiliencySetting -Name Mirror | Set-ResiliencySetting -PhysicalDiskRedundancyDefault 2
New-Volume -FriendlyName <Name> -FileSystem CSVFS_ReFS -StoragePoolFriendlyName S2D* -Size <Size>
選項 3
在名為 Capacity 的 StorageTier 範本上設定 PhysicalDiskRedundancy = 2,然後藉由參考該層來建立磁碟區。
Set-StorageTier -FriendlyName Capacity -PhysicalDiskRedundancy 2
New-Volume -FriendlyName <Name> -FileSystem CSVFS_ReFS -StoragePoolFriendlyName S2D* -StorageTierFriendlyNames Capacity -StorageTierSizes <Size>
從 3 到 4 部伺服器:解除鎖定雙重同位
利用四個伺服器,您可以使用雙重同位,通常也稱為清除編碼 (相較於分散式 RAID-6)。 這會提供與三向鏡像相同的容錯功能,但具有更好的儲存效率。 若要深入了解,請參閱容錯與儲存空間效率。
如果您來自較小的部署,您有數個不錯的選項可開始建立雙重同位磁碟區。 您可使用您偏好的選項。
選項 1
在建立每個新磁碟區時於其上指定 PhysicalDiskRedundancy = 2 和 ResiliencySettingName = Parity。
New-Volume -FriendlyName <Name> -FileSystem CSVFS_ReFS -StoragePoolFriendlyName S2D* -Size <Size> -PhysicalDiskRedundancy 2 -ResiliencySettingName Parity
選項 2
在集區的 ResiliencySetting 物件 (名為 Parity) 上,設定 PhysicalDiskRedundancy = 2。 然後,即使您未指定,任何新的同位磁碟區都會自動使用「雙重」同位
Get-StoragePool S2D* | Get-ResiliencySetting -Name Parity | Set-ResiliencySetting -PhysicalDiskRedundancyDefault 2
New-Volume -FriendlyName <Name> -FileSystem CSVFS_ReFS -StoragePoolFriendlyName S2D* -Size <Size> -ResiliencySettingName Parity
若有四部伺服器,您也可開始使用鏡像加速同位,其中個別磁碟區是部分鏡像和部分同位。
為此,您必須更新您的 StorageTier 範本,以同時擁有 Performance 和 Capacity 層,因為如果您先在四部伺服器上執行 Enable-ClusterS2D,就會建立它們。 具體來說,這兩層應該具有您容量裝置 (例如 SSD 或 HDD) 的 MediaType 且 PhysicalDiskRedundancy = 2。 Performance 層應該是 ResiliencySettingName = Mirror,而 Capacity 層應該是 ResiliencySettingName = Parity。
選項 3
您可能會發現最簡單的方式是只移除現有階層範本,並建立兩個新的階層即可。 這不會影響透過參考階層範本所建立的任何預先存在的磁碟區:這只是範本。
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
介紹完畢 您現在已準備好參考這些階層範本來建立鏡像加速同位磁碟區。
範例
New-Volume -FriendlyName "Sir-Mix-A-Lot" -FileSystem CSVFS_ReFS -StoragePoolFriendlyName S2D* -StorageTierFriendlyNames Performance, Capacity -StorageTierSizes <Size, Size>
超越 4 部伺服器:絕佳的同位效率
當您擴充超過四個伺服器時,新的磁碟區就能受惠於前所未有的絕佳同位編碼效率。 例如,介於六到七部伺服器之間,效率會從 50.0% 提升到 66.7%,因為它可能會變成可以使用 Reed-Solomon 4+2 (而不是 2+2)。 您不需採取任何步驟,就能開始享受這種新的效率;最佳可行的編碼會在您每次建立磁碟區時自動決定。
不過,任何預先存在的磁碟區將不會「轉換」為範圍更廣泛的新編碼。 其中一個合理的原因是,這樣做需要大量計算,而此計算確實會影響整個部署中的「每個單一位元」。 如果您想要讓預先存在的資料以更佳的效率進行編碼,您可以將它移轉至新的磁碟區。
如需詳細資訊,請參閱容錯與儲存空間效率。
使用底座或機架容錯時新增伺服器
如果您的部署會使用底座或機架容錯,您必須先指定新伺服器的底座或機架,然後再將它們新增至叢集。 這會告訴儲存空間直接存取,利用最佳方式來分散資料,以充分利用容錯功能。
開啟已提升權限的 PowerShell 工作階段,然後使用下列命令 (其中 <NewNode> 是新叢集節點的名稱),以建立節點的暫存容錯網域:
New-ClusterFaultDomain -Type Node -Name <NewNode>
將此暫存的容錯網域移至真實世界中新伺服器所在的底座或機架,如 <ParentName> 所指定:
Set-ClusterFaultDomain -Name <NewNode> -Parent <ParentName>
如需詳細資訊,請參閱 Windows Server 2016 中的容錯網域感知。
將伺服器新增到叢集,如新增伺服器中所述。 當新伺服器加入叢集時,它會自動與預留位置容錯網域產生關聯 (使用它的名稱)。
新增磁碟機
新增磁碟機 (也稱為擴大) 會增加儲存容量,也可以改善效能。 如果您有可用的插槽,可將磁碟機新增至每個伺服器以擴充儲存容量,而不需新增伺服器。 您可以隨時個別新增快取磁碟機或容量磁碟機。
重要
強烈建議所有伺服器都有相同的儲存體組態。
若要向上擴充,請連接磁碟機並確認 Windows 會探索它們。 它們應會出現在 PowerShell 中 Get-PhysicalDisk Cmdlet 的輸出中,其 CanPool 屬性設定為 True。 如果其顯示為 CanPool = False,您可藉由檢查其 CannotPoolReason 屬性來查看原因。
Get-PhysicalDisk | Select SerialNumber, CanPool, CannotPoolReason
在短時間內,儲存空間直接存取將會自動宣告符合資格的磁碟機、將之新增至儲存集區,而磁碟區將自動平均重新分散到所有磁碟機上。 此時,您已完成並準備好擴充磁碟區或建立新的磁碟區。
如果磁碟機沒有出現,請手動掃描硬體變更。 這可以使用 [動作] 功能表下方的 [裝置管理員] 來完成。 如果它們包含舊的資料或中繼資料,請考慮重新格式化它們。 這可使用 [磁碟管理] 搭配 Reset-PhysicalDisk Cmdlet 來完成。
注意
自動加入集區取決於您是否只有一個集區。 如果您已經規避標準設定來建立多個集區,您必須自行使用 Add-PhysicalDisk,將新的磁碟機新增至您慣用的集區。
在新增磁碟機或伺服器之後最佳化磁碟機使用量
隨著時間推移,新增或移除磁碟機後,集區中磁碟機之間的資料分佈可能會變得不平均。 在某些情況下,這可能導致某些磁碟機已滿,而集區中的其他磁碟機耗用量較低。
為了協助在集區之間保持磁碟機平均配置,儲存空間直接存取會在您將磁碟機或伺服器新增至集區之後,自動最佳化磁碟機使用量 (這是一個手動程序,適用於使用共用 SAS 機箱的儲存空間系統)。 最佳化會在您將新的磁碟機新增至集區之後 15 分鐘開始。 集區最佳化會以低優先順序的背景作業執行,因此可能需要數小時或數天的時間才能完成,尤其是在您使用大型硬碟的情況下。
最佳化使用兩個作業 - 一個稱為 Optimize,另一個稱為 Rebalance - 您可以使用下列命令來監視其進度:
Get-StorageJob
您可使用 Optimize-StoragePool Cmdlet 手動最佳化儲存集區。 以下為範例:
Get-StoragePool <PoolName> | Optimize-StoragePool