[Storage] Windows Server 2016 攻略 (四) - SDS 軟體定義儲存

        Windows Server 2016 攻略系列文章分 Compute / Storage / Network 三大主題,其中 Compute 主題一月份已經由以下三篇文章涵蓋介紹:

二月份為各位帶來的是 Storage 主題系列文章,將由以下三篇涵蓋介紹:

        本文,將說明及實作在微軟新世代 Windows Server 2016 雲端作業系統當中,「軟體定義儲存(Software-Defined Storage,SDS)」技術,它是由 Windows Server 2012 R2 當中的「Storage Spaces」技術演化而來,在 Windows Server vNext 開發時期時稱之為「Storage Spaces Shared Nothing」,在 Windows Server 2016 當中則稱為「Storage Spaces Direct(S2D) 」。探討的主題包括:

S2D 技術 簡介

簡單來說,與舊版 Windows Server 2012 R2 的 Storage Spaces 技術,最大不同在於 S2D 軟體定義儲存技術,可以將多台伺服器的「 本機硬碟 (Local Disk)」結合成為一個大的儲存資源池。

圖 1、S2D 軟體定義儲存技術支援本機硬碟運作架構示意圖

(圖片來源: TechNet Library – Storage Spaces Direct in Windows Server 2016 Technical Preview)

        此外,即使企業或組織已經建置 Windows Server 2012 R2 的 Storage Spaces 共享式 JBOD 架構的話,那麼在 Windows Server 2016 當中的 S2D 技術,除了支援本機硬碟成為儲存資源池之外,也支援原有的共享式 JBOD 架構,讓企業或組織可以輕鬆將原本的 Windows Server 2012 R2 升級為新一代的 Windows Server 2016 運作環境。

圖 2、S2D 軟體定義儲存技術支援 JBOD 運作架構示意圖

(圖片來源: TechNet Library – Storage Spaces Direct in Windows Server 2016 Technical Preview)

S2D 技術的部署模式

        我們來看看 S2D 軟體定義儲存技術支援哪些部署模式,以避免稍後實作時發生觀念混亂的情況。在 S2D 技術中支援兩種部署模式:

  • 超融合式(Hyper-Converged)。
  • 分類(Disaggregated)。

        如果,企業或組織希望採用「 超融合式( Hyper-Converged 」部署模式,也就是將「 運算( Compute )、儲存( Storage )、網路( Network 」等資源全部「 整合 」在一起,並將 Hyper-V 及 S2D 技術都運作在「同一個」容錯移轉叢集環境中,此時 VM 虛擬主機將直接運作在本地端的 CSV 當中,而非運作在 SOFS(Scale-Out File Server)環境中,同時也能省去檔案伺服器的存取及權限等組態設定,這樣的部署模式適合用於中小型規模的運作架構。

圖 3、S2D 超融合式部署模式運作示意圖

(圖片來源: TechNet Library – Storage Spaces Direct in Windows Server 2016 Technical Preview)

        如果,企業或組織採用「 分類( Disaggregated 」部署模式的話,那麼便是將「運算(Compute)、儲存(Storage)、網路(Network)」等資源全部「 分開 」進行管理,也就是將 Hyper-V 及 S2D 技術都運作在「不同」的容錯移轉叢集環境中,適合用於中大型規模的運作架構。

圖 4、S2D 分類部署模式運作示意圖

(圖片來源: TechNet Library – Storage Spaces Direct in Windows Server 2016 Technical Preview)

S2D 技術 硬體需求

        那麼,讓我們來看看倘若企業或組織的 IT 管理人員,想要搶先體驗及建置 S2D 軟體定義儲存技術的話,該如何建立 S2D 測試環境:

  • 叢集節點: 最少必須由 4 叢集節點組成,最多支援至 16 叢集節點。(在 Windows Server 2016 TP2 版本時,最多支援 12 台叢集節點)。
  • CPU/Memory 每台叢集節點,建議至少採用 Dual-Socket CPU(Intel Xeon E5 v3 Family)及 128 GB 記憶體。
  • 硬碟控制器: 每台叢集節點,應採用 SATA Connected 或 SAS HBA Connected 的連接方式,而非使用 ACHI Controller 或 RAID Controller 的方式。
  • 硬碟數量: 每台叢集節點,最少應該使用 2 顆 SSD 固態硬碟及 4 顆機械式硬碟。可以採用如下方式進行搭配
    1. NVMe + SAS或SATA SSD
    2. NVMe + SAS或SATA HDD
    3. SAS或SATA SSD + SAS或SATA HDD
    4. 網路卡: 每台叢集節點,最少應具備 1 Port 10GbE 網路卡,並且必須支援 RDMA 特色功能(RoCE、iWARP),目前支援的網路卡廠商有 Mellanox(CX3-Pro)、Chelsio(T5)、Avago/Emulex(Skyhawk)...等。

S2D 實戰演練

        在目前技術預覽版本環境中,請使用 PowerShell 來進行 S2D 的「 管理 」作業,請不要使用伺服器管理員(Server Manager),或是容錯移轉叢集管理員(Failover Cluster Manager)來管理 S2D 運作環境。

接著,只要依照下列 7 項操作步驟及設定流程即可建立 S2D 運作環境:

Step 1. 安裝 Windows Server 2016 TP4 版本,並將所有主機都加入至「 同一個 」 Windows AD 網域。

Step 2. 安裝「Hyper-V 伺服器角色 」,並採用新式支援 RDMA 運作方式的「SET Switch-Embedded Teaming 」機制,建立 Hyper-V 虛擬交換器。

Step 3. 安裝「 檔案伺服器 」角色以及「 容錯移轉叢集 」功能及管理工具。

Step 4. 建立 SOFS 容錯移轉叢集。

 Step 5. 啟用 Storage Spaces Direct 機制,以便將所有叢集節點的本機硬碟串連成一個大的儲存資源池。

Step 6. 與舊版 Storage Spaces 同樣的運作機制,建立 Storage Pool、Storage Tiers、Virtual Disk,此實作環境中每台叢集節點主機配置 2 顆 100GB SATA SSD,以及 4 顆 300GB SATA HDD。

上圖為每台叢集節點主機的硬碟配置情況

上圖為建立 1TB 大小的 Virtual Disk,並且採用 CSVFS 檔案系統

Step 7. 建立 SOFS 高可用性角色及檔案分享資源。

上圖為 SOFS(Scale-Out File Server)高可用性角色

至此,便順利達成透過 S2D 技術將叢集節點的儲存資源串連,並整合 SOFS 機制及 SMB 3 傳輸協定運作 VM 虛擬主機的目的。

上圖為運作在 S2D/SOFS 的高可用性 VM 虛擬主機

以上是 Storage主題系列文章第一篇,歡迎追蹤 TechNet 台灣 關注最新發佈唷!