叢集共用磁碟區 (CSV) 可讓 Windows Server 故障轉移叢集中或 Azure 本機中的多個節點同時具有布建為 NTFS 磁碟區之相同 LUN(磁碟)的讀寫許可權。 磁碟可以佈建為復原檔案系統 (ReFS);不過,CSV 磁碟機會置於 重新導向模式,這表示寫入存取權會傳送至協調器節點。 使用 CSV 時,叢集角色能迅速從一個節點轉移到另一個節點,且不需要變更磁碟驅動器的擁有權,也不需要卸載或重新掛載磁碟區。 CSV 也有助於簡化故障轉移叢集中可能大量 LUN 的管理。
CSV 提供叢集文件系統,可在NTFS或ReFS上運作。 CSV 的一般用法包括:
叢集 Hyper-V 虛擬機的叢集虛擬硬碟 (VHD/VHDX) 檔案。
改善診斷能力的分布式 CSV 管理權
透過伺服器服務的可用性提高復原能力
您可以將分配給 CSV 快取的實體記憶體數量進行更靈活的配置
增強的互通性,包括支援 ReFS 和重複資料刪除。
向外延展檔案共用來儲存向外延展檔案伺服器叢集角色的應用程式資料。 此角色的應用程式數據範例包括 Hyper-V VM 檔案和Microsoft SQL Server 數據。 Windows Server 2012 R2 和舊版的 Scale-Out 檔伺服器不支援 ReFS。 如需向外延展檔案伺服器的詳細資訊,請參閱用於應用程式資料的向外延展檔案伺服器。
Microsoft SQL Server 2014 (或更高版本) 容錯移轉叢體執行個體 (FCI)。 CSV 不支援 SQL Server 2012 和舊版的 SQL Server 中的 Microsoft SQL Server 叢集工作負載。
Windows Server 2019 或更高版本Microsoft分散式交易控制 (MSDTC)。
欲了解更多先前版本引入的 CSV 功能,請參閱《 Windows Server 2012 故障轉移叢集的新內容》。
如需在虛擬桌面基礎架構 (VDI) 案例中將資料重複刪除用於 CSV 的相關資訊,請參閱部落格文章 在 Windows Server 2012 R2 中部署 VDI 儲存的資料重複刪除 和 將資料重複刪除擴展至 Windows Server 2012 R2 中的新工作負載。
在故障轉移叢集中使用 CSV 的必需條件和考量因素
在故障轉移叢集中使用 CSV 之前,請先檢閱下列各節中的網路、記憶體和其他需求和考慮。 若要深入瞭解網路適配器和記憶體選項,請參閱 故障轉移叢集硬體需求和記憶體選項。
節點需求
系統磁碟的驅動器號:在所有節點上,系統磁碟的驅動器號必須相同。
驗證通訊協定:必須在所有節點上啟用 NTLM 通訊協定。 此功能預設為啟用。 從 Windows Server 2019 和 Azure 本機開始,NTLM 相依性已移除,因為它使用憑證進行驗證。
存放裝置和磁碟設定需求
檔案系統格式
在 Windows Server 2012 中,CSV 的磁碟或儲存空間必須是使用 NTFS 分割的基本磁碟。 在 Windows Server 2012 R2 中,CSV 的磁碟或儲存空間必須是使用 NTFS 或 ReFS 分割的基本磁碟。 在 Windows Server 2016 及更高版本以及 Azure Local 中,CSV 的磁碟或儲存空間必須是使用 NTFS 或 ReFS 分割的基本磁碟或 GUID Partition Table (GPT) 磁碟。 最佳做法是檢閱記憶體廠商所提供的指導方針。
為了達到最佳效能與功能,在將磁碟加入 CSV 前,格式化時請遵循以下檔案系統指引:
SAN 卷:在加入 CSV 前,先用 NTFS 格式化。 NTFS 啟用 SAN 附加儲存的直接 I/O 模式,提供更佳的效能。 在 SAN 上以 ReFS 格式化的 CSV 以重定向 I/O 模式運作。
儲存空間直接(S2D)磁碟區:在加入 CSV 前,先用 ReFS 格式化。 ReFS 提供資料完整性功能、區塊複製,以及專為 Storage Spaces Direct 工作負載設計的優化。
在 Windows Server 2012 中,您無法使用磁碟作為格式化為 FAT、FAT32 或 ReFS 的 CSV。
在 Windows Server 2012 R2 和更新版本中,您無法使用磁碟作為格式化為 FAT 或 FAT32 的 CSV。
CSV 無法作為仲裁見證磁碟使用。 如需叢集仲裁的詳細資訊,請參閱了解儲存空間直接存取中的仲裁。
將磁碟新增為 CSV 之後,它會以 CSV 檔案系統 (CSVFS) 格式指定。 這可讓叢集和其他軟體區別 CSV 存放裝置與其他 NTFS 或 ReFS 存放裝置。 一般而言,CSVFS 支援與 NTFS 和 ReFS 相同的功能。 不過,不支援某些功能。 例如,在 Windows Server 2012 R2 中,您無法在 CSV 上啟用壓縮。 在 Windows Server 2012 中,您無法在 CSV 上啟用重複資料刪除或壓縮。
叢集中的資源類型
CSV 必須做為實體磁碟資源類型。 根據預設,新增至叢集記憶體的磁碟或儲存空間會以這種方式自動設定。
選擇 CSV 磁碟或其他叢集記憶體中的磁碟
為叢集 VM 選擇一或多個磁碟時,請考慮每個磁碟的使用方式。 如果使用磁碟來儲存 Hyper-V 所建立的檔案,例如 VHD/VHDX 檔案或組態檔,您可以從 CSV 磁碟或叢集記憶體中的其他可用磁碟選擇。 如果磁碟是直接連結至 VM 的實體磁碟(也稱為傳遞磁碟),則您無法選擇 CSV 磁碟,而且您必須從叢集記憶體中的其他可用磁碟選擇。
識別磁碟的路徑名稱
CSV 中的磁碟是使用顯示為系統磁碟機上 \ClusterStorage 資料夾下編號磁碟區的路徑來存取的。 此路徑會在叢集中的所有節點之間保持一致。 您可以視需要重新命名這些磁碟區,但在安裝 SQL Server 之類的任何 VM 或應用程式之前,最好先這麼做。 如果有開啟的句柄,則無法重新命名,例如當 VM 正在執行或處於儲存狀態時。
LUN、磁碟區以及 VHD 檔案的安排方式
若要充分利用 CSV 來為叢集 VM 提供存儲空間,請檢閱您在設定實體伺服器時如何安排 LUN(磁碟)。 當您設定對應的 VM 時,請嘗試以類似的方式排列 VHD 檔案。
請在您要於其中組織磁碟和檔案的實體伺服器中考量下列事項:
將系統檔案 (包含分頁檔) 放在某一個實體磁碟上
將資料檔案放在另一個實體磁碟上
對於對等的叢集 VM,您應該以類似的方式組織磁碟區和檔案:
將系統檔案 (包含分頁檔) 放在某個 CSV 上的 VHD 檔案
將資料檔案放在另一個 CSV 上的 VHD 檔案
如果可能的話,當您新增另一個 VM 時,應該針對該 VM 上的 VHD 保留相同的排列方式。
LUN 和磁碟區的數量和大小
當您規劃使用 CSV 之故障轉移叢集的記憶體組態時,請考慮下列建議:
若要決定需設定多少個 LUN,請洽詢存放裝置廠商。 例如,您的記憶體廠商可能會建議您使用一個分割區來設定每個 LUN,並將一個 CSV 放在其中。
每個節點至少建立一個 CSV。
單一 CSV 上可支援的 VM 數目沒有任何限制。 不過,您應該考慮您打算在叢集中擁有的 VM 數目,以及每個 VM 的工作負載(每秒 I/O 作業)。 例如:
一個組織部署支持虛擬桌面基礎設施(VDI)的虛擬機,這是相對輕量的工作負載。 叢集使用高效能的存放裝置。 叢集管理員在諮詢儲存廠商之後,決定為每個 CSV 放置相對大量的虛擬機器。
另一個組織正在部署大量 VM,以支援大量使用的資料庫應用程式,這是較重的工作負載。 叢集使用較低效能的存放裝置。 叢集管理員在諮詢記憶體廠商之後,決定為每個 CSV 放置相對較少的 VM。
當您規劃特定 VM 的記憶體組態時,請考慮 VM 所支援之服務、應用程式或角色的磁碟需求。 瞭解這些需求有助於避免可能導致效能不佳的磁碟爭用。 VM 的記憶體組態應該與您要用於執行相同服務、應用程式或角色之實體伺服器的記憶體組態類似。 您也可以透過讓存放裝置擁有大量獨立實體硬碟的方式來降低磁碟爭用機率。 請據此選擇儲存硬體,並諮詢廠商以將存放裝置的效能最佳化。
視叢集工作負載及其 I/O 作業的需求而定,您可以考慮只設定 VM 的百分比來存取每個 LUN,而其他 VM 則沒有連線能力,而是專用於計算作業。
網路設定考量
當您設定支援 CSV 的網路時,請考慮下列事項。
多個網路和多個網路適配器
若要在網路失敗時啟用容錯功能,我們建議多個叢集網路來傳輸 CSV 流量,或是您可以設定組合式網路適配器。 如果叢集節點連線到叢集不應使用的網路,您應該停用它們。 例如,我們建議您停用 iSCSI 網路來防止叢集使用,以避免 CSV 流量佔用那些網路。 若要停用網路,請在容錯移轉叢集管理員中,選取 [網路],選取網路,選取 [屬性] 動作,然後選取 [ 不允許在此網路上進行叢集網路通訊]。 或者,您可以使用 Get-ClusterNetwork Cmdlet 來設定網路的 Role 屬性。
網路配接器屬性
在執行叢集通訊之所有介面卡的內容中,請確定已啟用下列設定:
[Microsoft 網路用戶端] 和 [Microsoft 網路檔案及印表機共用] File 和 [Microsoft 網路檔案及印表機共用] Printer Sharing for Microsoft Networks。 這些設定支援伺服器訊息區 (SMB) 3.0,預設用來承載節點之間的 CSV 流量。 若要啟用SMB,請確定伺服器服務和工作站服務正在執行,而且它們已設定為在每個叢集節點上自動啟動。
Note
在 Windows Server 2012 R2 和更新版本中,每個容錯移轉叢集節點會有多個伺服器服務執行個體。 默認實例會處理來自存取一般檔案共用之 SMB 用戶端的連入流量,以及處理節點間 CSV 流量的第二個 CSV 實例。 此外,如果節點上的伺服器服務變成健康情況不良,CSV 擁有權會自動轉換到另一個節點。
SMB 3.0 包括 SMB 多重通道與 SMB 直接傳輸兩個功能,可讓 CSV 流量在叢集中多個網路之間串流,並利用支援遠端直接記憶體存取 (RMDA) 的網路介面卡 根據預設,CSV 流量會使用 SMB 多重通道 。 如需詳細資訊,請參閱伺服器訊息區概觀。
Microsoft故障轉移叢集虛擬配接器效能篩選
此設定可增強節點在存取 CSV 時執行 I/O 重新導向的功能。 例如,當連線失敗導致節點無法直接連線到 CSV 磁碟時,就會發生這種情況。 Windows Server 2012 R2 以外的所有版本均預設為停用 [NetFT 虛擬介面卡效能篩選條件]。 它仍然停用,因為它可能會導致 Hyper-V 叢集在裝載於其上之 VM 內執行的客體叢集發生問題。 在某些情況下,主機上的 NetFT 虛擬配接器效能過濾器會錯誤地將原本要分配給客 VM 的 NetFT 流量路由到主機。 此錯誤路由可能會導致 VM 內客體叢集的通訊問題。 不過,如果您要部署客體叢集 Hyper-V 以外的 任何工作負載,啟用 NetFT 虛擬介面卡效能篩選器可以最佳化和改善叢集效能。
叢集網路優先順序
建議您不要變更網路叢集設定的喜好設定。
IP 子網組態
使用 CSV 的網路節點不需要特定的子網組態。 CSV 可以支援多重子網延展式叢集。
以原則為基礎的服務品質 (QoS)
建議您在使用 CSV 時,設定 QoS 優先順序原則和網路流量到每個節點的最低頻寬原則。 如需詳細資訊,請參閱服務品質 (QoS)。
儲存網路
對於適用於存放網路的建議,請檢視存放裝置廠商提供的指導方針。
關於 CSV 通訊中 I/O 同步處理和 I/O 重新導向
I/O 同步處理
CSV 可讓多個節點同時具有相同共用記憶體的讀寫存取權。 當節點在 CSV 上執行磁碟輸入/輸出 (I/O)時,節點會直接與記憶體通訊,例如,透過儲存局域網路 (SAN)。 不過,在任何時間,單一節點 (稱為協調器節點) 會「擁有」與 LUN 關聯的實體磁碟資源。 CSV 的協調器節點會在容錯移轉叢集管理員中顯示為磁碟下的擁有者節點。 它也會出現在 Get-ClusterSharedVolume Cmdlet 的輸出中。
Note
從 Windows Server 2012 R2 開始,CSV 擁有權會根據每個節點擁有的 CSV 數目,平均分散到故障轉移叢集節點。 此外,當有 CSV 故障轉移、節點重新加入叢集、將新節點新增至叢集、重新啟動叢集節點,或在關閉故障轉移叢集之後啟動故障轉移叢集時,系統會自動重新平衡擁有權。
當 CSV 上的文件系統發生某些小變更時,必須在存取 LUN 的每個實體節點上同步處理此元數據,而不只是在單一協調器節點上。 例如,當 CSV 上的 VM 啟動、建立或刪除,或移轉 VM 時,必須在存取 VM 的每個實體節點上同步處理這項資訊。 這些中繼資料更新作業會使用 SMB 3.0 在叢集網路上並行發生。 這些作業不需要所有實體節點與共用記憶體通訊。
I/O 重新導向
記憶體連線失敗和特定記憶體作業可以防止指定的節點直接與記憶體通訊。 為了在節點未與記憶體通訊時維護功能,節點會透過叢集網路將磁碟 I/O 重新導向至磁碟目前掛接所在的協調器節點。 如果目前的協調器節點碰到存放裝置連線失敗,則會暫時佇列所有磁碟 I/O 作業,同時建立新的節點做為協調器節點。 您應該規劃叢集網路能夠在 I/O 重新導向期間允許對協調器節點的網路流量增加。 由於 CSV 與 SMB 3.0 功能整合,例如 SMB 多重通道和 SMB 直接存取,因此重新導向的 I/O 流量可以跨多個叢集網路串流。
Important
使用 SAN 之上的 ReFS 預先格式化的 CSV 將不會使用 直接 I/O,無論滿足直接 I/O 的所有其他需求為何。 如果您打算在連接 SAN (FrontEnd) 連結的磁碟中使用 CSV,請在將磁碟驅動器轉換成 CSV 之前,先使用 NTFS 格式化磁碟驅動器,以利用直接 I/O 的效能優勢。
伺服器會視情況使用下列其中一個 I/O 重新導向模式:
檔案系統重新導向:重新導向是每個磁碟區。 例如,當 CSV 手動被置於重新導向 I/O 模式後,備份應用程式建立 CSV 快照集。
區塊重新導向:重新導向位於檔案區塊層級。 例如,當記憶體連線中斷至磁碟區時。 封鎖重新導向比檔系統重新導向更快。
在 Windows Server 2012 R2 和更新版本中,您可以檢視每個節點的 CSV 狀態。 例如,您可以查看 I/O 是否是直接、已重新導向,或 CSV 是否無法使用。 如果 CSV 處於 I/O 重新導向模式,您也可以檢視原因。 若要檢視此資訊,您可以執行 Get-ClusterSharedVolumeState Cmdlet。