分散式儲存在雲環境下的應用和部署

碼農談IT發表於2023-03-02


【導讀】本文從分散式儲存架構特點引入雲環境下提供分散式儲存的使用場景,以及銀行業中適合承載的業務型別。並對分散式儲存在雲環境下的基本部署進行描述。希望能夠加深大家對雲環境中分散式儲存應用管理的理解,以充分利用分散式儲存實現塊儲存、檔案儲存、物件儲存的方式和特點,補充集中式企業儲存的短板,針對PB級別海量非結構化資料等典型場景,體現存調優勢。

【作者】張鵬曾就職於IBM、Dell EMC公司,從事客戶服務工程師共10年以上,現任職於某城市商業銀行執行維護中心,從事儲存、備份、應用負載等實施、運維與管理工作,曾參與行內新一代核心系統上線、容災建設切換等專案。


隨著網際網路資料規模越來越大,併發請求越來越高,傳統的關聯式資料庫系統在效能、價格、可擴充套件性方面已經不能很好地滿足需求。谷歌、亞馬遜等互聯公司率先在後臺基礎設施中引入超大規模分散式儲存系統,用來解決海量資料的儲存問題。與傳統的集中式儲存技術不同,分散式儲存沒有將資料儲存在某個特定節點上,而是透過網路將各個節點分散的儲存資源匯聚成一個虛擬的儲存備,將資料分散在各處。相較於集中儲存,分散式儲存成本低,擴充套件性好,弱化了關係資料模型,可以得到高併發和高效能。


1 分散式儲存概念及特點

分散式儲存系統,是將資料分散儲存在多臺獨立的裝置上。傳統的網路儲存系統採用集中的儲存伺服器存放所有資料,儲存伺服器成為系統效能的瓶頸,也是可靠性和安全性的焦點,不能滿足大規模儲存應用的需要。隨著各行業數字化轉型的加速,越來越多的資料被生產出來,分散式儲存成為我們應對海量資料挑戰的重要助力。從20世紀80年代開始,歷經幾十年的演進,分散式儲存已經走過了四個階段:第一階段是1980年代的網路檔案系統,透過少量伺服器實現網路環境下的簡單檔案共享;第二階段是1990年代的共享SAN檔案系統,已經能夠外接SAN裝置實現更大的檔案系統;第三階段是2000年代的Share-Nothing儲存,開始利用通用伺服器構建起高擴充套件的儲存系統;第四階段是2010年代逐步產生的企業級雲端儲存,這類儲存開始具備豐富的企業特性,儲存效能、效率和資料保護能力有了顯著的增強,開始在各行各業中廣泛應用。

此外,不同型別的資料需要用不同的分散式儲存系統去處理。圖片、影片等非結構化資料,由於個體相互之間沒有關聯,體積大,採用二級制,通常使用分散式檔案系統進行儲存;自描述的資料結構和內容混在一起的半結構化資料,比較簡單的可以用分散式鍵值系統儲存,較為複雜的一般採用分散式表格系統來儲存區;結構化資料由分散式資料庫儲存。


2 雲端計算的概念及特點

雲端計算是網格計算、分散式計算(Distributed Computing)、平行計算(Parallel Computing)、效用計算(Utility Computing)、網路儲存、虛擬化(Virtualization)、負載均衡(Load Balance)等傳統計算機和網路技術發展融合的產物。廣義雲端計算指服務的交付和使用模式,指透過網路以按需要、易擴充套件的方式獲得服務。這種服務可以是IT軟體和網際網路相關服務,也可以是其他服務。狹義雲端計算指IT基礎設施的交付和使用模式,指透過網路以按需、易擴充套件的方式獲得所需資源。總體來說雲端計算具有以下幾個特點:1) 超大規模:“雲”具有相當的規模,企業私有云一般擁有數百上千臺伺服器並且能夠橫向平滑擴充套件,“雲”賦予了使用者前所未有的計算能力;2) 虛擬化:雲端計算支援使用者在任意位置、使用各種終端獲取應用服務。所請求的資源來自“雲”,而不是固定的有形的實體。應用在“雲”中某處執行,但實際上使用者無需瞭解、也不用擔心應用執行的具體位置;3) 高可靠性:“雲”使用了資料多副本容錯、計算節點同構可互換等措施來保障服務的高可靠性;4) 通用性:雲端計算不針對特定的應用,在“雲”的支撐下可以構造出千變萬化的應用,同一個“雲”可以同時支撐不同的應用執行;5) 高可擴充套件性:“雲”的規模可以動態伸縮,滿足應用和使用者規模增長的需要;6) 按需服務:“雲”是一個龐大的資源池,你按需購買;7) 廉價性:由於 “雲”的自動化集中式管理使大量企業無需負擔日益高昂的資料中心管理成本,“雲”的通用性使資源的利用率較之傳統系統大幅提升,因此使用者可以充分享受“雲”的低成本優勢。


3 分散式儲存在雲環境下的應用場景

3.1 分散式儲存系統架構

雲和AI時代,資料迎來海量增長。高速5G通訊、高畫質8K影片、自動駕駛和大資料分析等越來越多的新興應用正逐步推高對資料儲存的需求。企業不斷擴充套件業務邊界,整合雲場景儲存資源,以更低TCO(Total Cost of Ownership) 、更靈活的彈性部署應對非結構化資料快速增長。在這樣的背景下,分散式儲存架構成為了首選。各儲存廠家紛紛推出自己的分散式儲存產品,透過儲存系統軟體將每個硬體節點的本地儲存資源組織起來,按需為上層應用提供檔案儲存、物件儲存、大資料儲存和塊儲存服務。實現海量資料儲存更經濟、多樣性資料使用更高效、線上業務承載更可靠。其系統架構如圖1。

分散式儲存在雲環境下的應用和部署

目前大多分散式儲存產品都會提供基於三層的分散式儲存架構,會融合分散式檔案、物件、大資料和塊多個服務形態,支援檔案、物件、大資料服務部署在一個叢集,並統一管理,整體功能架構由儲存介面層、儲存服務層、儲存引擎層和儲存管理組成,如圖2所示,此外還會提供一些防毒、異構開源儲存管理的特色功能。

分散式儲存在雲環境下的應用和部署

分散式儲存系統具有海量資料儲存更經濟、多樣性資料使用更高效、線上業務承載更可靠等優勢,已被廣泛應用於如下場景:

1) HPC(High Performance Computing) 場景:在氣象、基因、石油等HPC高效能運算場景,應用對分散式儲存的效能要求高。檔案服務提供的DPC可減少跨網路傳輸延遲,並提供標準介面給應用,在不修改應用的情況下提供比標準協議更高的效能。

2) 內容儲存、備份歸檔場景:高效能、高可靠的企業級物件儲存資源池可滿足網際網路資料、線上音訊/影片、企業網盤等實時線上業務吞吐量大、熱點資料頻繁訪問的業務需求,以及長期儲存、線上訪問需求。例如應用於金融電子票據影像、雙錄(錄音/錄影) ,醫療影像、政企電子文件和車聯網場景儲存、備份或歸檔。

3) 大資料分析場景:大資料計算儲存分離解決方案可整合傳統資料孤島,構建統一的企業大資料資源池,結合大比例EC、儲存和計算分離按需部署和擴容等企業級能力,實現大資料業務效率提升及TCO降低。例如應用於金融大資料分析、運營商日誌留存大資料和政務大資料等。

4) 雲/虛擬化場景:為雲和虛擬化提供按需獲取、彈性擴充套件的海量儲存資源池,基於通用伺服器大幅提升儲存資源的部署、擴充套件和運維效率。例如應用於金融網際網路渠道接入雲、開發測試雲,運營商BOM域業務雲化、B2B雲資源池、政務雲等。

5) 關鍵業務資料庫場景:透過分散式Active-Active雙活、穩定低時延等企業級能力,保障OLAP或OLTP類關鍵業務資料庫、資料倉儲高效穩定執行。

3.2 雲環境下分散式儲存的應用場景

分散式儲存在雲環境下的應用和部署

使用者訪問層是基於雲端儲存開發的應用程式的入口,授權使用者可以透過標準的公共應用介面登入雲端儲存系統,享受雲端儲存服務。雲端儲存產品服務商不同,雲端儲存提供的訪問型別和訪問手段也不同。

資料服務層是利用雲端儲存資源進行應用開發的關鍵部分,雲端儲存平臺透過資料服務層為使用者提供統一的協議和程式設計介面,進行應用程式的開發。應用介面層是雲端儲存最靈活多變的部分。不同的雲端儲存運營機構可以根據實際業務型別開發不同的應用服務介面,提供不同的應用服務。

資料管理層是雲端儲存最為核心的部分,也是最複雜的部分。資料管理層採用叢集技術、分散式儲存技術,實現多儲存裝置之間的協同工作,對外提供高可用性、可擴充套件性的服務,同時還負責資料加密、備份、容災以及必要的計費等任務。

資料儲存層是雲端儲存最基礎的部分,由不同型別的儲存裝置和網路裝置組成。資料儲存層實現海量資料的統一管理、儲存裝置管理、狀態監控等。儲存層位於雲端儲存的最下層,它是雲端儲存中最基礎的部分。儲存裝置的選擇多種多樣各種儲存裝置都可以用來構建這一層。雲端儲存中的儲存裝置通常數量眾多且分佈在多個不同位置,彼此之間透過網際網路或者光纖通道等把各種網路連線在一起。分佈在儲存裝置之上的是一個統一的儲存硬體裝置管理系統,透過這一層可以實現儲存裝置的邏輯虛擬化管理、多鏈路冗餘管理,以及硬體裝置的狀態監控和故障維護。

在行內分散式儲存主要以分散式SAN為虛擬化資源池提供服務,以分散式檔案為媒體/影片監控/HPC提供服務、以分散式物件為備份歸檔提供服務,以分散式資料庫為大資料服務。

3.2.1 為雲平臺底座提供基礎儲存資源

雲環境下,分散式儲存系統能夠實現計算資源和儲存資源的單獨橫向擴充套件,計算資源不足時直接擴容計算節點,儲存空間不足時只需擴容儲存節點,極大地節省硬體資源降低成本。對於雲平臺中部署的輕量級企業關鍵應用程式,可選用中等效能的磁碟型別,滿足效能要求不高但是要求具有豐富的企業級特性場景,例如普通資料庫、應用VM、中介軟體VM等資料儲存需求。透過雲硬碟的形式掛載給虛擬機器或裸金屬伺服器使用,滿足企業使用者應用資料的儲存需求。

分散式儲存在雲平臺提供基礎儲存服務,透過彈性雲硬碟的形式提供給應用虛擬機器和裸金屬使用,在應用對效能要求不高的情況下,通常在初期用於渠道類應用、各類外圍應用、灰度釋出應用、容器技術應用、桌面以及開發測試環境,採用分散式儲存做雲平臺底座儲存裝置,提供彈性擴充套件、存算分離、儲存型別可選、EC糾刪可靠和高併發等便捷場景服務的作為結合點。

為了應對網際網路金融帶來的業務浪湧,除核心賬務系統採用集中式高階全快閃記憶體儲外,外圍業務以及海量非結構化資料業務場景已經全面向分散式儲存過渡。憑藉分散式儲存的彈性資源分配能力,金融行業的新業務開發和部署效率相比傳統儲存都有所提升和加速,突發資源獲取週期從過去的天級縮短到小時級,資源池化後,儲存效率得到顯著提升,運維費用也不斷降低,整體TCO實現有效壓降。

銀行的七大類業務系統(賬務處理類、業務處理類、渠道服務類、服務支撐類、外聯三方類、資料服務類、辦公管理類),在與金融雲平臺和分散式儲存架構功能特點的結合中,我們對各類系統的資源需求變動、業務迭代速度、資料一致性要求、併發要求進行分析,得出雲平臺中適用的業務系統型別,如表1所示,進而為選擇和配置雲平臺中各區域分散式儲存提供依據。

分散式儲存在雲環境下的應用和部署
3.2.2 為雲平臺提供分散式資料庫儲存資源
在雲端計算平臺中,傳統資料庫以Oracle、DB2或者MySql的關係型資料庫為主,但是當單表資料量爆炸或者單個資料庫無法承受高強度I/O時,集中式資料庫是無法解決效能和資料處理瓶頸問題的,難以應對應用層的高併發資料訪問。業務核心資料庫使用場景需要支援應用高峰期的密集訪問,要求磁碟具有持續穩定的高效能和低時延,透過選用超高效能的磁碟型別,可以實現超強效能與超高可靠性的集合,滿足關係型資料庫等資料密集型場景下低時延、高I/O效能密度的嚴苛效能要求。

在基於MySQL的分散式資料庫中,分表支援動態漂移,隨著表的熱度和大小進行動態的擴容和伸縮,保證資源分配最最佳化;而分散式儲存節點可以無限水平擴充套件,從而提供可動態無限擴充套件的儲存容量;效能隨節點擴充套件而線性增長,滿足雲端計算平臺對容量和效能的需求,具備雲服務所有的彈性、敏捷、按需和輕運維特性。因此,採用分散式儲存最佳化後用於資料庫的資料儲存,提高效能的同時確保了資料的安全性。

在金融及其他領域,基於分散式儲存加速多域融合,實現降本增效。透過對非關鍵業務進行雲化部署,並使用分散式儲存構建統一的雲資源池,實現多域融合。雲資源池替換傳統儲存的煙囪化建設,大幅提升了儲存資源的利用率,業務上線時間也大幅降低,為金融行業降本節支提供了很大助力。


4 分散式儲存在雲環境下的部署

國內分散式儲存相對於集中式儲存而言是一種分散式技術,是在規格維度上按照擴充套件性進行分類的,國際上則是按照架構將儲存分為企業級儲存和軟體定義儲存,不論企業選擇儲存產品的資本與管理支出模式,也不論儲存廠商是否能夠真正做到分散式儲存的軟、硬體解耦,本文暫定已經完成了對比集中式儲存的全面而細緻的選型評估過程,結合企業自身情況對分散式儲存能夠物善其用的前提下進行下面的實施與部署,對冷熱資料分層、資料湖建設需求以及高可用性要求能夠充分考慮,如果多個AZ在百TB級別以上,建議進行較為合理的規劃。

在雲基礎架構中,分散式儲存有兩種部署形態,融合部署和分離部署,融合部署多用於雲平臺管理區域服務的使用,分散式儲存多用於使用者業務使用。根據交換機組網形態分多種組網形態和部署方案,如儲存節點前後端共享網路和前後端獨立網路部署方案,以前後端獨立部署為例,按照前後端網口的型別又可分為10GE、25GE、100GE、IB網路四種型別(10GE前端+10GE後端、25GE前端+25GE後端等) ,本文以10GE前端+10GE後端獨立組網為例,闡述雲平臺內分散式儲存系統的部署方式。

4.1 組網規劃

規劃雲平臺各網路平面時,對分散式儲存業務網路平面、儲存網路平面和管理網路平面進行合理規劃,如圖4和圖5所示,針對各個網路平面進行規劃設計。同時,針對物理硬體裝置進行角色梳理和機櫃位置合理規劃,管理節點(管理分散式事務程式的伺服器,負責塊儲存服務的告警、監控、日誌、配置等操作維護功能) 、儲存節點(提供儲存資源的伺服器) 、計算節點(執行應用系統的伺服器) ,根據不通功能角色規劃不同網路平面地址。

1) 業務網路(iSCSI網路) :用於計算節點和VBS之間透過iSCSI協議進行通訊。

2) BMC/管理網路:BMC網路,用於接入節點Mgmt介面,提供遠端硬體裝置帶外管理功能。

3) 儲存網路:用於VBS和OSD間或者OSD和OSD間資料通訊。

4) 容災複製網路:用於主端儲存系統和從端儲存系統間網路的資料傳輸。

分散式儲存在雲環境下的應用和部署

4.2 節點網口規劃

根據組網規劃,分別對計算節點、儲存節點的網口進行規劃,保持同一型別的節點網口位置和功能一致,方便實施和後續運維。計算節點按實際需要進行環境規劃各計算節點介面的用途和上行鏈路。對儲存節點的規劃,可根據伺服器物理介面,如圖6所示:

分散式儲存在雲環境下的應用和部署

規劃各儲存節點介面的用途和上行鏈路,以表2為例建立計算和儲存節點的節點總網路規劃。

分散式儲存在雲環境下的應用和部署

4.3 硬體安裝和軟體部署

根據規劃的介面和連線規則,進行物理裝置的加電、連線、網路配置和測試,物理硬體初始化完成後進行分散式軟體系統的安裝部署,期間硬體安裝的如圖7所示。

分散式儲存在雲環境下的應用和部署

根據分散式儲存軟體的安裝指南,進行分散式儲存系統的安裝,以華為OceanStor Pacific分散式儲存在華為雲環境下的部署為例,主要安裝流程如圖8所示,主要流程如下。
分散式儲存在雲環境下的應用和部署

1)分散式儲存系統安裝前準備

檢查交換機是否已經根據網路規劃配置完成,並準備相關的軟體包、安裝工具和安裝指導文件。

2)準備管理虛擬機器

在對接雲平臺時,透過Web-UI方式在雲平臺虛擬化底座中安裝管理節點虛擬機器,以便後續為管理節點安裝管理軟體。

3) 配置Fusionstorage-Block角色

透過雲平臺底座虛擬化系統的安裝部署介面,為計算節點配置Fusionstorage-Block角色,並保證網路通訊正常。

4) 配置各節點BMC管理面IP並檢查儲存節點各檢查項指標

配置各節點BMC管理面IP,透過該遠端管理系統可以對硬體進行高可靠的監測和管理。同時,安裝前對儲存節點伺服器的韌體版本、作業系統版本、作業系統是否安全加固、系統盤快取策略、JBOD功能、SMMU功能、裝置韌體驅動版本以及查硬碟背板的相容性。

5) 配置節點管理網路

按照網路規劃,對儲存節點進行管理節點網口IP配置。

6)安裝分散式儲存軟體

按照安裝流程,進行分散式儲存軟體部署(安裝管理節點、增加儲存節點、配置儲存網路、安裝儲存節點、建立控制叢集) 。

根據技術能力和實際場景可部署GFS、Ceph等開源分散式儲存軟體,以Hadoop叢集為例,由雲平臺進行統一納管,則在基礎配置之後(配置jdk環境、配置叢集環境變數、關閉防火牆、修改主機名、master和slave的IP地址、配置SSH免密登入),進入HDFS叢集配置(安裝master和slave的hadoop檔案、配置core-site檔案調優、叢集環境變數、並啟動叢集和web管理),完成與雲平臺的對接。對於存量的Hadoop/HDFS叢集,而且存有多種格式資料量大的情況,可考慮利用類似DI on Hadoop的遷雲工具進行對接。

7) 配置交換機流控並載入儲存License

當儲存網路使用RoCE組網時需要配置交換機流控,對後端網路進行流量閾值監控,同時載入分散式儲存授權license,並登入雲平臺管理面使用分散式儲存提供的彈性雲硬碟服務。

4.4 分散式儲存測試與上線

在分散式儲存部署完成之後,透過裝置常規檢驗測試、相容性測試、功能測試、效能測試、穩定性和可靠性測試,以及運維管理功能等非功能方面的測試,全面驗證分散式儲存各方面特性,之後在雲管平臺中實現對基礎設施中儲存資源進行納管與上線,各企業都有成熟的流程規範,在此不再贅述。


5 總結

本文從雲和分散式儲存各自特點出發,從分散式儲存架構特點引入雲環境下提供分散式儲存的使用場景和銀行業中適合承載的業務型別。後續對分散式儲存在雲環境下的基本部署進行描述,希望能夠加深雲環境中分散式儲存應用管理的理解,充分利用分散式儲存實現塊儲存、檔案儲存、物件儲存的方式和特點,補充集中式企業儲存的短板,針對PB級別海量非結構化資料等典型場景,體現存調優勢,為雲環境提供有力資源保障的同時,分散式架構為運維能力和技術水平提出了更高的要求標準和規範。

物聯網、人工智慧、區塊鏈等新技術的不斷產生和迭代,會給雲端計算帶來顛覆性的改變,數字資產的安全保障,態勢感知等技術發展都是應運而生的必然產物。在元宇宙的時代,萬物皆有虛擬化身,而云計算作為數字化的基礎設施,勢必準備好為元宇宙提供高價效比、高可靠、高相容性、高擴充套件性、高運算速度的特性,最終實現打破時間和空間的界限,實現社交、遊戲、辦公等場景的虛擬和現實的融合。

來自 “ ITPUB部落格 ” ,連結:http://blog.itpub.net/70024924/viewspace-2937821/,如需轉載,請註明出處,否則將追究法律責任。

相關文章