雲平臺分散式儲存池建立實施經驗分享

danny_2018發表於2022-08-09

一、概述

目前雲平臺已經得到了廣泛應用,儲存池作為雲平臺的IAAS主要構成部分,需要在雲平臺上線實施的時候就進行良好的規劃,保持充分的穩定性、靈活性,保證後續的便捷使用和運維,以更好的支撐業務發展。金融業的雲平臺計算池中執行有裸機、虛擬機器、容器多種執行態資源,為支撐資料庫、應用伺服器、容器以及檔案儲存等場景,在建立企業級雲平臺儲存池時,通常需要規劃採用多種不同特性的儲存裝置組建儲存池,以便支撐不同場景的需求。

二、分析應用場景,建立多個雲平臺儲存池

對儲存進行規劃建設時,離不開儲存應用場景的分析,需要考慮的雲端儲存是用來做應用系統的儲存,還是歸檔、或者是備份雲端儲存端、或者其他的應用,因為不同的應用是需要不同的解決方案。當確定了雲的應用場景後,才可以繼續根據需求制定應對方案。例如對於應用系統,如支撐業務交易的資料庫,對容量要求相對不大,但要求滿足較高的效能。例如對於多個系統間的檔案交換,或者多個伺服器節點需要共享維護同一個共享檔案目錄,共享檔案伺服器則要求有效的訪問控制、同時具備較好的頻寬。而用於備份的儲存,則需要安全與可用性、歸檔則要求大容量而成本低廉的儲存。確定了應用場景,也就確定了儲存池的建設方向。

金融業的核心、櫃面等重要交易系統,因為業務併發量大,切業務敏感性高,必須保證相應系統的資料庫、應用程式具備極高的穩定性和效能,為保證資料庫以及此類響應時間要求較高的應用高效穩定執行,獲得良好的iops和讀寫時延,則需要在企業雲平臺儲存池中規劃專用的透過集中式全快閃記憶體儲存構建的儲存資源池,此部分儲存池通常採用高階集中式儲存構成,高階集中式儲存技術成熟,使用時間長,案例眾多,服務體系完備,通常採用高效能儲存機頭管理高速的NVME SSD,能提供極高的IOPS響應速度。集中式儲存通常採用高效FC協議提供服務,也有少量使用者採用ISCSI等IP SAN方式提供服務。集中式儲存因其產品設計理念,存在一定的弊端,例如在需要對儲存裝置進行擴容、遷移等操作時,單臺儲存的擴充套件能力相對有限,擴容靈活性差。集中式儲存的使用經驗已經較為成熟,在規劃組網等時需要考慮的磁碟域規劃、raid以及熱備盤規劃、物理埠冗餘、多路徑規劃等規劃重點均已經應用非常廣泛,本文不再花費過多篇幅進行闡述。

三、雲平臺分散式儲存池規劃建立

除集中式儲存池之外,雲平臺中目前多用於支撐一般虛擬機器、容器以及儲存海量檔案的儲存,仍是採用分散式儲存。雲端儲存解決方案通常採用分散式設計理念,可從成本、容量、空間可擴充套件性、服務可用性、資料可靠性、介面通用性等多個維度提升儲存的質量。由於這些明顯的優勢,分散式雲端儲存成為有效的支援塊儲存、物件儲存、NAS儲存等多種儲存格式的儲存型別,物件儲存常用於儲存影片影像資訊庫等資料儲存與共享業務,成為雲平臺中便捷、統一管理和高效應用的雲平臺基礎元件。

雲平臺中分散式儲存池的規劃建設,需要考慮的因素通常包含容量、效能、安全性幾個方面,相關的規劃點則包括節點數量、磁碟配比、組網規劃、叢集的使用者角色規劃等。下面以一套CEPH分散式儲存為例,闡述其規劃實施路徑。

3.1 分散式儲存叢集及節點硬碟規劃實施

分散式儲存叢集規劃第一步需要基於企業當前資料量,合理分析本企業近3-5年的容量增長情況,並區分集中式儲存和分散式儲存的資料量。節點池是叢集中以節點為單位組成的儲存區域單元,不同節點池中包含若干臺叢集內主機,為使用者提供不同的儲存業務服務。可以同時支援塊儲存、檔案儲存、物件儲存業務,每種業務分別位於不同的節點池。每個節點池的擁有自己的監控節點、儲存節點,節點池間獨立,使用某分節點池的儲存資源,資料只能在該節點池內的主機上分佈儲存,不同節點池之間資料完全隔離互不影響節點池。需要全面考慮塊儲存、物件儲存、檔案儲存池的需求,三類儲存建議獨立不同的儲存池部署,單獨規劃不同配置的伺服器作為資料節點。

硬碟池是叢集節點池中以硬碟為單位組成的的儲存區域單元,不同硬碟池中包含節點池內若干臺叢集內主機中的若干硬碟,為使用者提供不同的儲存業務服務。透過硬碟池也可以滿足不同儲存業務資料間的隔離,以及使用者使用不同效能的儲存需求。

每個資料節點的硬碟規劃,關鍵要考慮SSD和機械硬碟的配比。在預算充足切對儲存池效能要求較高時,也可以考慮全快閃記憶體配置的資料節點,構建全快閃記憶體分散式儲存池。如果採用混閃進行配置,則通常是一個或者多個SSD磁碟作為快取加速盤和後設資料儲存盤,後端配置4-6塊HDD作為容量盤,SSD+HDD組成一個OSD。例如一套物件儲存,包含資料池和後設資料池兩部分,可以採用HDD+SSD構建資料池,為保證整個儲存池的效能,建議一個OSD中SSD容量不低於20%,但構建後設資料池時,則推薦採用SSD組池,且建議配置2塊以上SSD作為故障容錯。資料節點伺服器通常需配置支援直通模式的RAID卡。

根據目前市面主流伺服器,有2.5英寸硬碟盒3.5英寸硬碟兩種規格的伺服器可供選擇,2.5英寸有7200/10000/15000轉速不同規格,轉速越高讀寫效能越好,但是2.5英寸硬碟因其尺寸規格限制,目前最大為2.4TB的規格,因此單臺2U伺服器能支撐的裸容量相對有限。而3.5英寸硬碟可支援採用3.5英寸HDD磁碟的最多為24盤位,HDD硬碟最大可達16TB。如果追求效能,也跟建議採用大容量3.5寸硬碟搭配更多的SSD快取加速層來配置資料儲存。

3.2 分散式儲存叢集組網規劃實施

為了保證雲端儲存的效能以及安全性,通常規劃雲平臺的分散式儲存叢集在邏輯上分為三個網路平面:儲存業務網路(儲存外網)、儲存前端網路(儲存內網)、儲存後端網路(儲存內網)。儲存的前端網路和後端網路為了保證效能,建議分開,但是在網口資源有限的情況下,也可以將前端和後端網路合並,但業務網與儲存內部交換網路是需要分開的。

此外還有儲存節點的管理網路。典型組網推薦採用三張雙口萬兆網路卡。分散式儲存除了管理網路可以採用GE網路外,其他組網為保證效能均建議採用不低於10GE網路。根據企業的IP地址分配,後端和前端網路的IP地址均不涉及儲存池外使用,故而可以採用不常用的私有網地址,但業務網的IP地址則考慮納入企業的ISCSI網路。

圖片

表一:分散式儲存叢集組網規劃表

3.3 分散式儲存叢集角色規劃實施

一套分散式叢集分為管理節點、監控節點和儲存節點三個角色,這三個角色的服務均可以部署在同一臺物理機上。單臺服務部署同時部署3個角色,單臺物理伺服器故障會同時引起該節點上的監控節點、管理節點、儲存節點同時故障。站在風險分擔的角度,當物理伺服器有富餘時,建議將儲存節點、管理節點、監控節點分離在不同的物理伺服器上。當儲存叢集中的節點數等於3時,受物理伺服器的限制,管理節點、監控節點、儲存節點可以合一部署。

管理節點主要用於針對儲存叢集的管理程式的控制,做好規劃後,管理節點按照規劃的資訊進行叢集的安裝部署,並將監控資訊圖形化,給儲存節點服務釋出命令等,叢集需要配置兩個管理節點,一主一備。 監控節點主要針對叢集的執行健康狀態進行監控,每個叢集的監控節點數量必須為奇數個,範圍3~7個。一套三節點叢集的節點角色部署樣例推薦規劃如下:

表二:分散式儲存叢集角色規劃表

3.4 分散式儲存叢集配置規劃

為了保證叢集的高容錯能力,對於叢集的伺服器上架的機架需要充分考慮機櫃掉電,機櫃網路斷開等故障場景,因此在進行上架規劃時,機架建立與規劃建議依照實際物理擺放,儘量不要一個機架上只有一個節點。

資料池冗餘策略規劃。儲存叢集需要考慮單臺伺服器故障、或者單塊硬碟故障等場景,需要規劃安全的資料冗餘策略。常見的資料冗餘策略包含以下兩種:

(1)多副本策略。多副本是分散式儲存中目前較為常見的方案。如果按照多副本方案規劃容錯能力,幾副本就需要有幾倍的儲存空間來提供冗餘,副本個數越多,安全性越高,但缺點在於儲存資料所需要的空間也成倍增長,N副本最終得到可用容量為實際硬碟裸容量的1/N。目前常見的是採用兩副本和三副本兩種策略,對於資料安全性較高的行業和叢集,建議採用三副本以上。

副本數與叢集節點數對應關係規劃:

支援2-6副本,一般用2副本和3副本,推薦使用3副本。

2副本,至少2節點,推薦4節點。

3副本,至少3~4節點,推薦5節點。

4副本,至少5節點,推薦6節點。

(2)糾刪碼。類似於儲存的raid5,採用糾刪碼規劃的儲存池最終得到可用容量能達到實際硬碟裸容量的約70%,糾刪碼是可用容量更高的一種資料保護策略,將資料分割成多個資料塊,對這些資料塊擴充套件、編碼生成冗餘的校驗塊,並將其儲存在不同的位置。相應採用糾刪碼冗餘技術的叢集,對於資料節點的CPU開銷會更多,因為需要消耗一定的計算資源用於進行儲存資料的糾刪碼校驗,故而對於儲存節點的CPU型號要求更高。

塊儲存和物件儲存資料池均可以使用三副本或者糾刪碼策略。為了能讓叢集正常工作,且根據使用者需求,可以承受單個硬碟(或單個節點)的故障。叢集必須預留一定的容量空間。具體需要預留多少容量空間,用附件的表格可計算得知。

儲存精簡特性。有豐富運維經驗的系統管理員都會知道,對於一個分配出去的LUN,通常應用系統是不會使用完該LUN的所有空間,若儲存採用精簡配置,則只有當使用的時候才會佔用儲存空間,而非劃出一部分空間預留的方式。例如叢集的可用容量10T,建立一個1T的2副本池中的儲存塊,叢集的可用容量並不會減少,仍為10T。當向儲存塊中寫入0.5T資料,佔用叢集容量0.5T*2 (2副本)=1T,叢集剩餘可用容量為9T。若儲存採用厚配置,則為劃出一部分空間預留的方式。

精簡卷的特性,在測試環境中,可以考慮應用,通常一個精簡卷中執行的是不止一臺虛擬機器,它能提高儲存資源的利用率,但是在生產環境中開啟精簡卷的功能,將要承擔較大的風險,如果該LUN一旦空間耗盡,將直接導致多臺虛擬機器或者多個業務因空間不足而當機的風險。況且分散式儲存具備良好的擴容靈活性,生產環境的規劃中,不建議開啟精簡特性。

尺有所短,寸有所長,建立一個企業的雲平臺儲存池的關鍵還是對業務的分析,只要企業的儲存管理人員能立足業務,能做到對自己企業的業務發展趨勢和需求心中有數,從業務的具體需求和預測出發,就能從容面對雲平臺的儲存池規劃建設。在進行新的儲存管理規劃時,要求技術人員更有全域性觀,更全面的瞭解各個業務系統,要從單個系統的規劃思維轉為系統群的規劃思維,充分評估各系統的效能峰值和容量峰值體量,峰值出現時間等因素,充分考慮系統的核心需求,熟練掌握分散式與集中式的優劣,並結合業務系統的需求進行具體分析,科學搭配,合理進行規劃和建設實施。

來自 “ twt社群 ”, 原文作者:twt社群;原文連結:https://mp.weixin.qq.com/s/JZrBlc1p1oGI8B1JEEuHUg,如有侵權,請聯絡管理員刪除。

相關文章