借助原生雙活城域卷(Metro Volume)支持,PowerStoreOS 3.0新增一個(gè)功能,有助于防止生產(chǎn)因VMware vSphere Metro Storage Cluster (vMSC) 環(huán)境的故障而中斷。城域卷功能在PowerStore上可免費(fèi)使用,可用于保護(hù)VMFS datastores。
vMSC配置是一個(gè)延伸集群架構(gòu),ESXi主機(jī)可在城域距離[100公里 (取決于鏈路質(zhì)量)] 內(nèi)的兩個(gè)不同的站點(diǎn),同時(shí)訪問(wèn)一個(gè)同步復(fù)制的存儲(chǔ)資源。PowerStore 城域卷功能可在兩個(gè)參與的PowerStore集群配置上,提供并發(fā)的完全雙活的主機(jī)IO。
雖然這會(huì)增加額外的延遲,但PowerStore城域卷可確保在主機(jī)收到I/O寫入的確認(rèn)之前,所有主機(jī)I/O都在城域卷的兩個(gè)鏡像卷上提交。為應(yīng)對(duì)災(zāi)難事件,把生產(chǎn)受到的影響降到最低,甚至是不受影響,PowerStore內(nèi)置了一種機(jī)制,可保護(hù)數(shù)據(jù)在發(fā)生故障或?yàn)?zāi)難時(shí)不會(huì)出現(xiàn)“腦裂”(split-brain)現(xiàn)象。當(dāng)數(shù)據(jù)可在兩個(gè)PowerStore集群上的城域卷鏡像之間進(jìn)行復(fù)制時(shí),PowerStore被設(shè)計(jì)為允許在城域卷兩邊只運(yùn)行雙活的工作負(fù)載。
從拓?fù)浣Y(jié)構(gòu)的角度看,PowerStore支持兩種不同的配置方案。一種是非統(tǒng)一配置,主機(jī)只能訪問(wèn)本地的PowerStore系統(tǒng):
還有一種是統(tǒng)一 配置,主機(jī)可以同時(shí)訪問(wèn)本地和遠(yuǎn)程的PowerStore。
盡管它們看起來(lái)很相似,但不同拓?fù)浣Y(jié)構(gòu)的優(yōu)勢(shì)在于細(xì)節(jié)的處理。
非統(tǒng)一主機(jī)配置降低了復(fù)雜性,因其只需較少的配置,且只提供對(duì)兩個(gè)站點(diǎn)之間鏈路利用率最低的卷的本地訪問(wèn)。然而,在本地PowerStore陣列出現(xiàn)故障的情況下,或者在鏈接故障期間,本地主機(jī)可能無(wú)法訪問(wèn)城域卷。在這種情況下,VMware HA需要使用對(duì)面站點(diǎn)上幸存的主機(jī)來(lái)重啟受影響的datastore上的任意虛機(jī)。每個(gè)站點(diǎn)都應(yīng)該有足夠的主機(jī)資源,以便在對(duì)等站點(diǎn)不可用時(shí)運(yùn)行最關(guān)鍵的虛機(jī)。
在統(tǒng)一主機(jī)配置中,主機(jī)與遠(yuǎn)程PowerStore集群有額外的鏈接,在故障情況下可以使用該鏈接。如果由于故障或鏈接中斷,在本地PowerStore集群上無(wú)法訪問(wèn)城域卷時(shí),主機(jī)就可以利用交叉鏈接來(lái)訪問(wèn)遠(yuǎn)程站點(diǎn)上的卷。在這種情況下,虛機(jī)可在故障中幸存下來(lái),因?yàn)橹鳈C(jī)可把工作路徑切換到遠(yuǎn)程系統(tǒng)上。在正常操作下,主機(jī)I/O應(yīng)保持在本地站點(diǎn)內(nèi),以避免在站點(diǎn)之間的鏈路上為工作負(fù)載使用不必要的帶寬,并盡量減少延遲。
現(xiàn)在快速展示一個(gè)例子,我們假設(shè)本地理論延遲為0.5毫秒,兩個(gè)站點(diǎn)之間的理論延遲為2毫秒。
1. 主機(jī)使用指向本地陣列的鏈接作為寫入城域卷的主要路徑。I/O的理論延遲值如下:
· 將工作負(fù)載從主機(jī)寫入到本地存儲(chǔ)0.5毫秒
· 將工作負(fù)載復(fù)制到遠(yuǎn)程存儲(chǔ)2毫秒。工作負(fù)載使用站點(diǎn)之間的鏈接。
· 在本地存儲(chǔ)上接收來(lái)自遠(yuǎn)程存儲(chǔ)的提交2毫秒
· 提交到主機(jī)0.5毫秒
總的來(lái)說(shuō),我們會(huì)看到I/O的延遲為5毫秒,且工作負(fù)載僅通過(guò)站點(diǎn)之間的鏈接發(fā)送一次以進(jìn)行復(fù)制(A-B)。
2. 當(dāng)主機(jī)使用到遠(yuǎn)程陣列的鏈接作為主要路徑時(shí),我們會(huì)看到以下情況:
· 發(fā)送工作負(fù)載至遠(yuǎn)程存儲(chǔ)2毫秒。工作負(fù)載使用站點(diǎn)之間的鏈接。
· 將工作負(fù)載復(fù)制到一個(gè)對(duì)等點(diǎn)2毫秒。工作負(fù)載使用站點(diǎn)之間的鏈接。
· 從對(duì)等陣列提交到遠(yuǎn)程存儲(chǔ)2毫秒
· 提交到主機(jī)2毫秒
總的來(lái)說(shuō),我們會(huì)看到同樣的I/O的理論延遲為8毫秒,因?yàn)楣ぷ髫?fù)載和提交總是利用站點(diǎn)之間的鏈接:一次是當(dāng)主機(jī)將數(shù)據(jù)寫入遠(yuǎn)程陣列(A到B)時(shí),另一次是當(dāng)寫入數(shù)據(jù)被復(fù)制到對(duì)等存儲(chǔ)(B-A)以及所需的提交時(shí)。
為了確保選擇最佳路徑,PowerStore使用異步邏輯單元訪問(wèn)(ALUA)協(xié)議提供最佳路徑選擇信息。為獲得正確的ALUA狀態(tài),必須使用它們與每個(gè)PowerStore集群的本地或遠(yuǎn)程關(guān)系注冊(cè)統(tǒng)一主機(jī)。在PowerStore Manager中注冊(cè)主機(jī)時(shí)有四個(gè)選項(xiàng):
· 僅限本地——用于非統(tǒng)一城域卷和僅服務(wù)于標(biāo)準(zhǔn)卷的主機(jī)。
· 主機(jī)與PowerStore系統(tǒng)位于同一地點(diǎn)——表示主機(jī)是PowerStore的本地主機(jī)(低延遲),應(yīng)該獲得ALUA的主動(dòng)/優(yōu)化路徑。
· 主機(jī)與遠(yuǎn)程PowerStore系統(tǒng)位于同一地點(diǎn)——表示該主機(jī)是遠(yuǎn)程主機(jī)(高延遲),主機(jī)應(yīng)該獲得ALUA主動(dòng)/非優(yōu)化路徑。
· 主機(jī)與PowerStore本地及遠(yuǎn)程系統(tǒng)均位于同一地點(diǎn)——表示所有主機(jī)和PowerStore集群位于相同位置,具有相同的延遲。
當(dāng)主機(jī)配置了統(tǒng)一城域卷的城域連接選項(xiàng)時(shí),PowerStore會(huì)為非城域卷的標(biāo)準(zhǔn)卷提供默認(rèn)的ALUA路徑信息。
借助本機(jī)多路徑(NMP)的"輪詢調(diào)度"(RR)默認(rèn)路徑選擇策略(PSP),ESXi主機(jī)使用所提供的ALUA路徑信息來(lái)確定連接到卷的最佳工作路徑。當(dāng)有多個(gè)主動(dòng)/優(yōu)化路徑可用時(shí),ESXi PSP 通過(guò)輪詢調(diào)度(round robin)測(cè)算卷的延遲,以選擇最佳工作路徑。當(dāng)前的工作路徑在vCenter中顯示為 "主動(dòng)(I/O)"狀態(tài),而其他路徑只顯示為 "主動(dòng)"狀態(tài)。下圖顯示了城域卷配置完成后,統(tǒng)一主機(jī)配置中的ESXi主機(jī)的路徑狀態(tài)。
在PowerStore Manager中設(shè)置好主機(jī)后就可以開(kāi)始配置城域卷。這在單個(gè)PowerStore集群上只需幾個(gè)步驟即可完成:
1. 與對(duì)等的PowerStore建立一個(gè)遠(yuǎn)程系統(tǒng)關(guān)系,請(qǐng)選擇保護(hù)>添加遠(yuǎn)程系統(tǒng)。
2. 使用添加卷向?qū)?lái)創(chuàng)建和映射標(biāo)準(zhǔn)卷。
3. 在卷頁(yè)面,單擊六次即可配置城域卷。
4. 在對(duì)等的PowerStore集群上,將新的城域卷映射到主機(jī)上。
5. 使用新的城域卷來(lái)創(chuàng)建一個(gè)VMFS datastore。
除了使用PowerStore Manager以外,還可以使用PowerStore REST API或PowerStore CLI,只需幾個(gè)步驟即可設(shè)置城域卷。在這篇博客中,我想向大家展示在PowerStore CLI會(huì)話(pstcli -d
1. 在PowerStore Manager PowerStore-A上
a. 創(chuàng)建遠(yuǎn)程系統(tǒng)關(guān)系
b. 注冊(cè)ESXi主機(jī)用于統(tǒng)一主機(jī)連接
c. 準(zhǔn)備和映射標(biāo)準(zhǔn)卷
d. 將卷配置為一個(gè)城域卷
2. 在PowerStore Manager PowerStore-B上
a. 注冊(cè)ESXi主機(jī)用于統(tǒng)一主機(jī)連接
b. 將卷映射到ESXi主機(jī)上
c. 監(jiān)測(cè)城域卷(可選)
3. 在vCenter中
a. 重新掃描SCSI總線。
b. 用新的城域卷配置VMFS datastore。