ScaleIO 軟體定義儲存 QoS 服務品質 SDS

軟體定義儲存深度動手玩 ScaleIO功能實測(下)

2017-08-09
所謂好的架構,除了靠先天產品賦予的功能之外,更重要的是靠後天架構的設計,繼上一期的EMC ScaleIO進階篇(上),本文將繼續介紹Performance、Data Protection、QoS實作。

再進階一點,若Cluster內有24個節點,可以分成三個Fault Sets區間,每8個節點為一個Fault Sets。依照圖17,Fault Sets01內的第二份副本只會出現在Fault Set02和Fault Set03區域內,也就是在U17至U32內的任一台主機,並且一定不會存在U33至U40的主機內。


▲圖17 設計24節點配置3 Fault Sets。

假設環境再大一點,可以考慮設計櫃與櫃之間的保護,稱之為Rack-aware。Fault Sets可以結合每個獨立的機櫃,以圖18表示,命名為FS_Rack01、FS_Rack02、FS_Rack03以代表這三個櫃子之間相互保護。


▲圖18 設計3櫃ScaleIO並配置3 Fault Sets。

最後筆者的心得即是將Fault Sets也想像是一種另類HA,且是任何型式的HA保護,亦屬於Synchronous(SYN)同步等級的保護。簡單顯示於vCenter Web Client操作Fault Sets,請見圖19。


▲ 圖19 vCenter Web Client操作Fault Sets。

在vSphere Web Client上可以檢視現有的Fault Sets,當然也可以增減Fault Sets數量,但必須滿足「至少要三個Fault Sets以上」的原則。

QoS

Quality of Service(QoS)中文名為「服務質量」。QoS是網路上常用的安全機制,是用來解決網路延遲和阻塞等問題的一種技術。正常情況下,如果網路只用於特定之無時間限制的應用系統並不需要QoS,但是對關鍵應用就十分必要。當網路過載或壅塞時,QoS能確保重要業務量不受延遲或丟棄,同時保證網路的高效運行。

如果目前企業內有制定流量約定如「服務等級協定」(Service Level Agreement)給資料流設定優先級,在網路/協定層面上,根據相互商定的尺度,設定有保障的效能、通過量、延遲等界限來確保服務品質,QoS絕對是必要的利器。簡單的做法是在頻寬設定上限值,然而在ScaleIO裡QoS可分階多種層級的限定,分別為Network Throttling和I/O Priority。

Protection Domain Network Throttling

如圖20所示,請在Protection Domain(PD)按下滑鼠右鍵,並選擇【Set Network Throttling】,預設情況下是Unlimited,但實際的環境下建議設定一個合理的頻寬值(圖21):


▲ 圖20 Protection Domain下Set Network Throttling設定。


▲ 圖21 針對Rebalance、Rebuild三種限制式。

1. Rebalance I/O limit per SDS:限制現在這個PD下的Rebalance行為只能在指定頻寬下運作。

2. Rebuild I/O limit per SDS:限制現在這個PD下的Rebuild行為只能在指定頻寬下運作。

3. Overall I/O limit per SDS:限制現在這個PD下的Rebalance與Rebuild行為只能在指定頻寬下運作。 說明過了之後,接著就來實測一下Protection Domain Network Throttling。


為Rebalance、Rebuild、Overall分別設定門檻值10、10、50MB/s,如圖22所示。首先模擬一個Rebalance情境,再觀察Backend Rebalance和Rebuild狀態,發現三個節點的頻寬已限定在10MB/s,並且Protection Domain的總頻寬已低於50MB/s,僅剩30MB/s,是三個節點將副本傳至10.20.146.214節點的總合s,如圖23所示,最後每個節點Rebalance皆在10MB/s以內,如圖24所示。


▲ 圖22 設定Rebalance與Rebuild皆為10MB/s。


▲ 圖23 總Rebalance限定在30MB/s。


▲ 圖24 三節點皆限定在10MB/s。


追蹤我們Featrue us

本站使用cookie及相關技術分析來改善使用者體驗。瞭解更多

我知道了!