Windows Server 2012 R2 的Storage Spaces (6) - 以R2的iSCSI Target為後台建立高可用性Storage Spaces Storage

Windows Server 2012 R2 的Storage Spaces (6) - 以R2的iSCSI Target為後台建立高可用性Storage Spaces Storage

大家好, 來到第6章, 應該暫時是Storage Spaces最後一篇嚕, 我們來談每個企業現在也需要的高可用性.

一直以來我們都只在一台服務器上使用自有的Storage Spaces, 雖然我們在前面的章節已經看到,

Storage Spaces有很高的資料保護性, 也有很好的磁碟移動性, 但一但服務器有問題也需要人手去把磁碟機移動到其他地方

這時運行中的企業服務可能要暫停一段時間, 也需要一些時間去重新配置設定(指Application Layer的設定)

 

這一篇文章比較長, 包含以下部份

1. 企業範例配置

2. 建立底層模擬成JBOD設備的的iSCSI Target及磁碟機

3. 使用iSCSI Initiator連接後台的iSCSI Target磁碟機

4. 建立叢集服務

5. 建立叢集儲存空間及磁碟機

6. 測試高可用性


1. 企業範例配置

微軟推薦我們在企業使用如下圖的配置, 底層是一組(或一堆)JBOD,

雖然不是硬性規定, 但市面上有一些已經過微軟審核過的JBOD機櫃是指明支援Storage Spaces的

微軟有定期更新已通過審核的產品列表

而對上一層就是以SAS,iSCSI,光纖接線連接著的服務器, 而且強列建議使用多線連接(MPIO)

以這些服務器先架起共同使用的叢集儲存空間,  再在其上建立其他叢集服務

這樣的配置就可以兼容到整個基建層面的錯誤了

Single failover cluster with CSV and file shares

 


2. 建立底層模擬JBOD設備的的iSCSI Target及磁碟機

由於我們現在只要體驗一下高可用性的Storage Spaces究竟是甚麼一回事,

也沒有很多資金去購買大型的JBOD設備, 所以這個實驗我就順道利用Windows Server 2012 R2提供的iSCSI Target服務了

以往要有iSCSI服務, 就要購買Storage版本的Windows Server(應該很少人會買), 現在很多NAS也有提供iSCSI服務

iSCSI以普通的IP網絡來傳送出SCSI信號, 以iSCSI來連接的磁碟機看起來就像是本地磁碟機

以往的1Gbps網絡在使用iSCSI時已經有不錯的表現了, 現在10Gbps甚至54Gbps的網絡也相繼出現, 令iSCSI Target這個服務更有看頭.

但在微軟的設計中, Storage Spaces並不是配合iSCSI Target使用的, 我純粹是方便一下, 也看看R2上的新功能.

 

除了之前使用的SOFS01和SOFS02, 我建立了一台SRVTESTISCSI用以作為iSCSI Target服務器

它也是一台虛擬機, 擁有一個100 Gb的磁碟機, 現實中, 上面的幾台叢集服務器應該擁有更多更大的磁碟機

 

在其上增加iSCSI Services中的iSCSI Target Server及跟隨的元件

image

再在這台服務器上開啟磁碟館理員

image

把這塊100Gb磁碟機上線, 並給予一個名稱

image

完成以後iSCSI Target服務也安裝完性了, 我們到File and Storage Services裡能看到這個新功能

版本看來空白一片的, 可以按到右上區域的提示來建立我們第一個iSCSI磁碟機和iSCSI Target.

2012 R2的iSCSI磁碟機實際上是一個個 vhdx檔案, 其他服務器要取用這些VHDx就需要接觸iSCSI Target

iSCSI Target可以指定甚麼機器可以連接, 也可以設定CHAP密碼來驗證

image

跑過簡介畫面, 我們選擇建立VHDx的位置, 這裡選擇I Drive

image

給予這個VHDx一個名稱, 例如Storage Spaces Cluster Disk1

image

設定它的大小, 我使用20 GB, 而隨後我會建立多兩個這樣的Cluster Disk2, 和Cluster Disk 3

VHDX的規劃是Fixed Size的, 所以在建立後會立即在磁碟機上霸佔20GB的空間

如果你有某些其他iSCSI應用, 而不太清楚需要用到的儲存空間, 可以使用動態擴展.

但固定大小的VHDX是最高效能的.

image

基本上磁碟機就這樣搞定了, 現在我們來設定一個新的iSCSI Target

image

給它一個名稱, 這裡叫VirtualSAN

image

現在我們要確定那些電腦可以連接到這個ISCSI Target,

按Add, 就可以逐台電腦加進去, 這個動作需要在線上進行, 所以請確認叢集服務器有上線

image

下一個畫面我們可以為這些連接進行密碼保護, 為了方便我就不使用了

企業環境還是建議使用的

image

最後確認就建立

image

現在我們可以在主畫面建到新建的VHDX正進行清理及起始的工作, 要待工作完成後才真的能使用

image

現在我們再建立另外幾個iSCSI磁碟機

image

給它一個名稱, Storage Spaces Cluster Disk2, Disk3的步驟也一樣

也是使用20Gb和固定的大小

image

在設定iSCSI Target時就可以重用剛剛建立好的virtualSAN Target了

image

也一一把它完成

image

靜待起始的工作全部完成, 這台iSCSI Target服務器就準備好了

image


3. 使用iSCSI Initiator連接後台的iSCSI Target磁碟機

現在我走到SOFS01和SOFS02上, 以下步驟請在兩台服務器上做相同的動作

找Server Manager裡的工具箱, iSCSI Initiator是Server 2008和2012內建安裝的, Server 2003版本則需要從微軟取得

image

第一次開啟時視窗會要求啟用iSCSI服務

image

確認後會開啟iSCSI Initiator的設定畫面, 先在Target頁填入我們的iSCSI Target服務器名稱

再按Quick Connect, 如果你有設定CHAP密碼, 則需要鍵入更多資訊

image

Quick Connect會告訴我們連接狀態, 由於我們的iSCSI服務器只有一個Target

所以倒是很直接就連接起來了, 但如果你有很多Target (而且能夠連接的), 就要小心選擇要連接的Target了

image

現在走到Volumes and Devices頁面, 按下Auto Configure,

我們就會見到能夠取用的幾台磁碟機了

image

而在iSCSI Target服務器上, 也會見到VHDX現已在Connected的狀態

image

如果現在在SOFS01或SOFS02上開啟Disk Management

image

就會見到有幾台下線的磁碟機, 情況就像它真的擁有幾個磁碟機一樣

image


4. 建立叢集服務

磁碟機已經準備好了, 情況就像我們以光纖把JBOD磁碟機櫃和服務器連接後的環境相將

現在我們要確認服務器已經加入網域, 而且我的設定中它們各有兩塊NIC

NIC1用作Heartbeat, 用來在兩台機器間偵測狀況的

NIC2用作投產, 就以用以對外連接的, 各及它們一個相互同網段的IP地址

imageimage

另外在Heartbeat NIC上, 需要設定不把IP Address登記到DNS服務器上

image

現在正式加入叢集服務, 步驟要在SOFS01和SOFS02上一起進行

image

選擇容錯叢集和相關的部件

image

完成安裝的步驟

image

現在要到服務裡看看一個Remote Procedure Call(RPC) Locator服務有沒有開啟

我發現Windows Server 2012預設把它關閉, 這會影響之後建立叢集時的連接性

image

再下來在其中一台SOFS上開啟Failover Cluster Manager

image

選擇建立叢集

image

看看簡介畫面

image

把節點電腦加入到列表上, 就是這個步驟我們需要啟用RPC Locator服務才能成功

image

選擇跑完所有的測試

image

檢查測試報告有沒有特別重大的錯誤, 如果基本通過的話就可以繼續設定了

image

設立的新叢集起始畫面

image

我們要給這個叢集一個共同接入點名稱, 這裡我起名clusofs

而這個接入點也需要另外一個還未使用的IP Address相對映

小心檢查網段是不是想要使用作對外連接的網段

image

下一個畫面告訴叢集把所有可使用的共同儲存區加入可使用範圍

image

再確認後就可以真的建立叢集了

image


5. 建立叢集儲存空間及磁碟機

現在Failover Cluster Manager底下就會見到剛剛建立好的叢集名稱了

請稍為看一下各個頁面有沒有錯誤, 如果沒有的話我們就要建立叢集儲存空間了

在Storage底下我們會有以往一直有的磁碟機選項,

另外也有Pools 這個分頁, 右擊Pools, 我們可以選擇建立一個Storage Pool

有了Storage Pool, 才能建立之上的Storage Spaces Virtual Disk

image

跟在單機時的畫面差不多, 首先我們要給這個Storage Pool一個名稱

這時我們要開始考慮把磁碟機分工, 例如Simple Disk要一組, Mirror就用另外一個Storage Pool以增加使用彈性

請記緊Simple Disk是不可以隨便把實體磁碟機抽出來的噢

image

下一頁我們選擇3個兩台服務器都擁有的”實體磁碟機”, 並配置成自動的角色

image

確認設定

image

完成的畫面下面可以勾選進入下一個步驟設定Virtual Disk

image

開啟建立新的虛擬磁碟機精靈, 我們可以看到剛剛建立的Storage Pool

而且比較特別的是它的副系統是從屬於Clustered Storage Spaces

image

給這個磁碟機一個名稱

image

我這次選擇建立Mirror Disk, 由於只有3塊磁碟機, 視窗也就不會訊問是2-Way還是3-Way了

image

設定這個Virtual Disk的大小

image

完成後再勾選設定這塊虛擬磁碟機

image

現在我們要給虛擬磁碟機設定Drive Letter,格式化等等動作

先選擇我們的叢集 (也可以見到單體服務器), 見到我們建立起來的Mirror Disk

image

選擇要割切出來的大小

image

給個E盤

image

最後及它一個Volume Label及選擇檔案系統

image

準備好就可以真正建立起來了

image

image

回到Failover Cluster manager的Pools頁面, 會見到這個Pool現在的狀態, 例如尚餘空間,

還有現在誰是這個Pool的擁有者, 注意擁有Pool並不代表Disk正掛載其上, 例如現在的擁有者是SOFS02

image

我們跑去看看Disks的頁面, 會見到我們建立的Mirror虛擬磁碟機, 現在的擁有者是SOFS01

image

而實際上磁碟機的確也在SOFS01上掛載起來

image


6. 測試高可用性

最後我們測試這個叢集的可用性, 由於我們還沒有建立其他服務, 所以使用這也只能以\\clussofs\e$的方式連接

我們把Storage Spaces虛擬磁碟機的擁有者SOFS01關機

image

現在Windows Server 2012 R2的叢集服務真的反應得很快,

不消1秒, 在SOFS02上已經顯示磁碟機的擁有者已經轉變成SOFS02, 還來不及察看它的轉變就完成了

image

而MirrorCluster這塊磁碟機也實際上掛載到SOFS02上了,

如果使用者以\\CLUSOFS\的方式存取資料, 基本上就不會發現有任何問題了!

image

再下來我們就可以以這一套叢集基建設備開始發展上面的高可用性服務了.

希望大家也可以體會到微軟為大家帶來的新技術怎樣相互結合, 組成真正企業級的解決方案

image