教學課程:使用獨立伺服器上的儲存空間啟用儲存體匯流排快取
獨立伺服器的儲存體匯流排快取可大幅改善讀取和寫入效能,同時維持儲存體效率,並降低營運成本。 這項功能會將較快的媒體 (例如 SSD) 與較慢的媒體 (例如 HDD) 繫結在一起,以建立階層。 如需詳細資訊,請參閱了解儲存集區快取。 根據預設,只有部分較快的媒體層會保留給快取。
災害復原 | 快取類型 |
---|---|
無 (簡單空間) | 讀取和寫入 |
鏡像加速的同位 | 讀取 |
如果您的系統不需要災害復原或具有外部備份,則儲存體匯流排快取同時支援讀取和寫入快取。 對於復原系統,儲存體匯流排快取僅用於讀取快取,而您應該選擇彈性檔案系統 (ReFS) 鏡像加速同位作為磁碟區復原。 此組合可改善隨機讀取效能,因為資料會從同位層讀取並在較快的鏡像層上快取。 如果 [佈建模式] 設定為 [共用](預設),則鏡像層也會提供寫入快取功能。
在本教學課程中,您將了解:
- 儲存體匯流排快取是什麼
- 如何啟用儲存體匯流排快取
- 在部署後管理快取
必要條件
如果您的環境符合下列所有特性,您應該考慮儲存體匯流排快取
- 您的伺服器會執行 Windows Server 2022;和
- 您的伺服器有 2 種媒體/磁碟機類型,其中一種必須是 HDD (例如:SSD+HDD 或 NVMe+HDD);和
- 您的伺服器已安裝容錯移轉叢集功能
如果您的環境符合下列任何特性,則無法使用儲存體匯流排快取
- 您的伺服器執行 Windows Server 2016 或 2019;或
- 您的伺服器具有所有快閃設定;或
- 您的伺服器是容錯移轉叢集的成員
注意
此功能需要您的伺服器安裝容錯移轉叢集功能,但您的伺服器不能是容錯移轉叢集的一部分。
功能概觀
本節說明儲存體匯流排快取的每個可設定欄位和適用的值。
Get-StorageBusCache
未啟用時,輸出應類似下列範例:
ProvisionMode : Shared
SharedCachePercent : 15
CacheMetadataReserveBytes : 34359738368
CacheModeHDD : ReadWrite
CacheModeSSD : WriteOnly
CachePageSizeKBytes : 16
Enabled : False
注意
針對一般用途,您應該使用預設設定。 啟用儲存體匯流排快取之前,必須先進行任何變更。
佈建模式
此欄位決定是否使用較快的媒體層,或僅使用部分媒體層進行快取。 啟用儲存體匯流排快取之後,就無法修改此欄位。 佈建模式有兩個選項:
- 共用(預設值):快取只會佔用較快媒體層的一部分。 可透過 [共用快取百分比] 欄位設定確切的百分比。
- 快取:將大部分較快的媒體層用於快取,而不僅僅是一部分。 如需詳細資訊,請參閱了解儲存集區快取。
共用快取百分比
只有當 [佈建模式] 設定為 [共用] 時,才適用此欄位。 預設值為 15%,且欄位可以設定為從 5% 到 90%。 當您使用鏡像加速同位磁碟區時不應使用超過 50% 的值,因為快取與鏡像層之間必須保持平衡。
已啟用
此欄位是指儲存體匯流排快取的狀態,可以是 true 或 false。
進階欄位
重要
不建議變更這些欄位。 啟用儲存體匯流排快取之後無法進行調整。
快取中繼資料保留位元組:為儲存空間保留的磁碟空間量 (以位元組為單位)。 只有在 [佈建模式] 為 [快取] 時,才會套用此欄位。
快取模式 HDD:預設是允許 HDD 容量裝置快取讀取和寫入。 對於 [簡單空間],此設定可設為 ReadWrite 或 WriteOnly。
快取模式 SSD:當支援所有快閃系統時,該模式可於日後使用。 預設值是允許 SSD 容量裝置僅快取寫入。
快取頁面大小 (KB):此欄位可設定為 8、16 (預設值)、32 和 64。
在 PowerShell 中啟用儲存體匯流排快取
本節是逐步指南,說明如何在 PowerShell 中為獨立伺服器啟用儲存體匯流排快取。
匯入模組。
Import-Module StorageBusCache
設定儲存體匯流排快取設定。
您應該使用預設設定。 如果這樣做,請跳過此步驟以繼續使用預設值。
重要
如果需要設定,請在啟用儲存體匯流排快取之前執行此動作。 如需欄位的詳細資料,請參閱功能概觀一節。
檢查磁碟機狀態。
Get-PhysicalDisk
輸出應類似下圖,其中 [數字] 資料行會顯示低於 500 的值,而 CanPool 資料行對所有未開機磁碟機顯示 true。
啟用儲存體匯流排快取。
Enable-StorageBusCache
此步驟會:
- 建立包含所有可用磁碟機的儲存集區。
- 繫結快速且緩慢的媒體,並形成快取。
- 使用預設或自訂設定新增儲存體匯流排快取。
您可以執行
Get-StoragePool
以查看儲存集區的名稱,並Get-PhysicalDisk
再次查看啟用儲存體匯流排快取的效果。 輸出應類似下圖。 [數字] 資料行會顯示超過 500 的值,表示儲存體匯流排宣告磁碟機。 [CanPool] 資料行現在對所有未開機磁碟機顯示 False。 如果在啟用之前將ProvisionMode
設定為 [快取],則 [使用量] 資料行會顯示為較快磁碟機的 [日誌]。檢查儲存體匯流排快取狀態。
檢查欄位是否正確,且 [已啟用] 欄位現在設定為 true。
Get-StorageBusCache
輸出應類似下列範例:
ProvisionMode : Shared SharedCachePercent : 15 CacheMetadataReserveBytes : 34359738368 CacheModeHDD : ReadWrite CacheModeSSD : WriteOnly CachePageSizeKBytes : 16 Enabled : True
由於儲存體匯流排快取已成功啟用,下一個步驟就是建立磁碟區。
建立磁碟區
您應該建立的磁碟區取決於要建立的磁碟區是否具有復原能力。
具有復原功能的磁碟區
下列 PowerShell Cmdlet 會建立 1-TiB 鏡像加速同位磁碟區,而 [鏡像:同位] 的比率為 20:80,這是大部分工作負載應使用的設定。 如需詳細資訊,請參閱鏡像加速同位。
New-Volume –FriendlyName "TestVolume" -FileSystem ReFS -StoragePoolFriendlyName Storage* -StorageTierFriendlyNames MirrorOnSSD, ParityOnHDD -StorageTierSizes 200GB, 800GB
沒有復原功能的磁碟區
下列 PowerShell Cmdlet 會建立 1 TB 的簡單磁碟區,無法容許任何磁碟故障。 同時支援讀取和寫入快取。
New-Volume -FriendlyName "TestVolume" -FileSystem ReFS -StoragePoolFriendlyName Storage* -ResiliencySettingName Simple -Size 1TB
啟用儲存體匯流排快取之後進行變更
執行 Enable-StorageBusCache
之後,無法修改佈建模式、共用快取百分比、快取中繼資料保留位元組、快取模式 HDD、快取模式 SSD 以及快取頁面大小。 實體設定可以進行有限的變更。 如需詳細資訊,請參閱下列常見案例。
新增或取代容量磁碟機 (HDD)
手動新增磁碟機之後,請執行下列 Cmdlet 以完成接收程序。
Update-StorageBusCache
新增或取代快取磁碟機 (NVMes 或 SSD)
沒有 Cmdlet 可解除繫結/重新繫結現有的繫結,並平衡關聯性。 下列步驟會導致現有的讀取快取遺失。
Remove-StorageBusBinding
New-StorageBusBinding
檢查並平衡快取和容量繫結
使用下列 Cmdlet 來檢查現有的快取和容量繫結。
Get-StorageBusBinding
在下列範例中,第一個資料行會列出容量磁碟機,而第三個資料行會列出它們所綁定的快取磁碟機。 請按照新增或取代快取磁碟機的指示來進行平衡,因此不會保留現有的快取。
儲存體匯流排快取常見問題
本節回答 Windows Server 2022 上儲存體匯流排快取的常見問題。
當伺服器不是容錯移轉叢集的一部分時,為何需要安裝容錯移轉叢集功能?
這項功能是專為獨立伺服器所設計的,但建置在儲存空間直接存取的儲存體匯流排層 (SBL) 快取之上。 由於需要叢集元件,因此需要安裝容錯移轉叢集功能。
儲存體匯流排快取是否可與所有快閃設定搭配使用?
否,此功能僅適用於兩種媒體類型,其中一種必須是 HDD。 此功能不適用於 RAID、SAN 或快閃系統。
如何變更儲存體匯流排快取設定?
請參閱下列範例,了解如何將佈建模式從共用 (預設) 變更為快取。 建議使用預設設定,且應在啟用儲存體匯流排快取之前進行任何變更。
Set-StorageBusCache -ProvisionMode Cache