【摘要】構(gòu)筑企業(yè)的云平臺存儲可以使企業(yè)適應(yīng)快速迭代創(chuàng)新的業(yè)務(wù)發(fā)展,在市場占得先機(jī),可以提升企業(yè)運(yùn)維管理水平,邁出上云的第一步。 【作者】張俊禧,長安銀行存儲架構(gòu)師 部署云平臺存儲是企業(yè)私有云建設(shè)的重要環(huán)節(jié)。云平臺存儲將企業(yè)內(nèi)部的各種存儲資源云化管理,企業(yè)的私有云管理平臺調(diào)用各類接口驅(qū)動存儲資源的彈性的配置,云原生的應(yīng)用和傳統(tǒng)的應(yīng)用都可以在“云里”自如地獲取所需的存儲資源。如何將數(shù)據(jù)中心的各種存儲設(shè)備“搬上云”?本文對“金融企業(yè)如何設(shè)計(jì)私有云平臺存儲”這一課題貢獻(xiàn)一些思考。 為金融企業(yè)設(shè)計(jì)云平臺存儲,首先要規(guī)劃將要建設(shè)的私有云應(yīng)具備哪些基本的存儲服務(wù)能力,換言之,根據(jù)業(yè)務(wù)需要將具體的存儲設(shè)備抽象成IaaS層哪些存儲服務(wù),這一層設(shè)計(jì)不需要考慮具體的產(chǎn)品形態(tài)。下圖整理了金融企業(yè)典型的業(yè)務(wù)及對存儲訪問接口、性能和容災(zāi)能力的要求。 業(yè)務(wù)及對存儲訪問接口、性能和容災(zāi)能力的要求 圖中比較有代表性的是: 1)關(guān)鍵交易型數(shù)據(jù)庫通常使用塊存儲,對存儲性能要求高,對存儲容災(zāi)要求高,企業(yè)級全閃存存儲滿足這些要求;而內(nèi)部報(bào)表分析型數(shù)據(jù)庫批量處理對存儲壓力較大,綜合投入角度考慮,也需要配置性能較好的塊存儲,存儲的檔次可以略低些。 2)關(guān)鍵交易型應(yīng)用,特別是互聯(lián)網(wǎng)業(yè)務(wù),多數(shù)已經(jīng)采用無狀態(tài)應(yīng)用開發(fā)模型,特別適合使用容器形式部署,目前先進(jìn)存儲廠商已經(jīng)在企業(yè)級存儲上支持CSI接口,并且VMware及分布式存儲也廣泛支持容器。 3)金融行業(yè)通常使用對象存儲處理非結(jié)構(gòu)化的數(shù)據(jù),越來越多的應(yīng)用開始支持S3接口。 4)文件存儲適合應(yīng)用節(jié)點(diǎn)間需要共享數(shù)據(jù)的情況,文件也是經(jīng)常用到的存儲接口。 總體看,金融企業(yè)業(yè)務(wù)可能會用到塊、文件、容器、對象四種接口,對應(yīng)云平臺存儲的四種基本存儲服務(wù)能力。同時(shí)按照業(yè)務(wù)對性能和容災(zāi)的不同要求,四種存儲能力分別在兩個(gè)維度還可以細(xì)分。 設(shè)計(jì)云平臺存儲就是要將企業(yè)內(nèi)部孤立的具體的存儲設(shè)備轉(zhuǎn)化成云上的服務(wù),同時(shí)把具體的存儲空間從申請到銷毀整個(gè)生命周期的運(yùn)維操作轉(zhuǎn)化成云上自助服務(wù)的流程和底層一系列自動化的操作。云平臺存儲是企業(yè)私有云的整體建設(shè)一個(gè)環(huán)節(jié),通常需要通盤考慮計(jì)算、網(wǎng)絡(luò)及業(yè)務(wù)上云。下圖說明了云平臺存儲從物理設(shè)備直到云服務(wù)是如何被構(gòu)建出來的。 云平臺存儲從物理設(shè)備直到云服務(wù)如何被構(gòu)建示意圖 根據(jù)上圖數(shù)據(jù)中心全部的云計(jì)算技術(shù)首先建立在某種Hypervisor層之上,Hypervisor安裝在服務(wù)器上與存儲本身關(guān)系不大。云平臺存儲是云管理平臺軟件對各種存儲服務(wù)的實(shí)現(xiàn),比較有代表性三種情況是: 1)常見國產(chǎn)分布式存儲(或稱為軟件定義存儲)本質(zhì)上是基于網(wǎng)絡(luò)的集群文件系統(tǒng),在此基礎(chǔ)上再構(gòu)建出塊、文件及對象等存儲服務(wù),代表性的是基于Ceph開發(fā)的產(chǎn)品。 2)以CSI和S3為代表的接口,存儲設(shè)備支持相關(guān)協(xié)議,Kubernetes容器編排平臺可以直接調(diào)用CSI訪問存儲,應(yīng)用可以直接調(diào)用S3接口訪問存儲,這兩種接口的實(shí)現(xiàn)幾乎不需要云管理平臺再對存儲進(jìn)行封裝。 3)OpenStack實(shí)現(xiàn)比較復(fù)雜,使用具體存儲廠商的驅(qū)動和存儲設(shè)備直接對接,使用Cinder子項(xiàng)目配置塊存儲服務(wù)供計(jì)算節(jié)點(diǎn)使用,使用Manila子項(xiàng)目創(chuàng)建文件服務(wù)接口繼而對接NFS等具體文件協(xié)議最終呈現(xiàn)文件服務(wù)能力。 4)CSI(Container Storage Interface)為容器編排引擎Kubernetes和存儲系統(tǒng)之間建立一套標(biāo)準(zhǔn)的存儲調(diào)用接口,通過這個(gè)接口為容器編排引擎提供存儲服務(wù)。 上文說明了云平臺存儲的底層邏輯。云平臺存儲的設(shè)計(jì)可能經(jīng)歷以下幾個(gè)階段: 1)云平臺存儲應(yīng)首先和企業(yè)的CMDB對接,掌握企業(yè)全部的設(shè)備信息和配置信息。云平臺存儲后期的管理應(yīng)與CMDB聯(lián)動。 2)云平臺存儲設(shè)計(jì)的前置工作將有條件的存儲先池化統(tǒng)一管理。企業(yè)生產(chǎn)環(huán)境存在不同檔次的存儲,部分中端磁盤陣列或者一些購置較早的設(shè)備可能不支持新的接口或者不能適配云管理平臺軟件。這時(shí)有條件的企業(yè)可以用具有異構(gòu)其他存儲的企業(yè)級存儲,先將中小陣列進(jìn)行統(tǒng)一納管,形成虛擬存儲池,中小存儲降級為空間供應(yīng)者,由企業(yè)級存儲負(fù)責(zé)與云平臺對接。 3)根據(jù)存儲不同的性能和容災(zāi)保護(hù)情況進(jìn)行分類分級,最終形成差異的存儲服務(wù)。首先分析塊存儲,企業(yè)級存儲可靠性高性能優(yōu)異,已經(jīng)部署了同城雙活或者同步復(fù)制,分布式存儲使用副本實(shí)現(xiàn)冗余,當(dāng)它成為云的后端設(shè)備,完全可以跨故障域存放副本,也可以實(shí)現(xiàn)數(shù)據(jù)雙活甚至多活。云平臺存儲應(yīng)充分發(fā)揮不同存儲的優(yōu)勢,根據(jù)業(yè)務(wù)的特點(diǎn)和需要從云里選取不同的存放位置。比如核心交易數(shù)據(jù)庫,追求極致性能和可靠,可以分配雙活的企業(yè)級存儲;而互聯(lián)網(wǎng)交易場景已經(jīng)使用容器+微服務(wù)架構(gòu)開發(fā),要求彈性高,比較適合使用分布式環(huán)境,可以為其分配分布式塊存儲,而且多副本也保證了數(shù)據(jù)安全。文件的情況與塊類似。其次,對象可以直接被應(yīng)用調(diào)用方法問,適合存放非結(jié)構(gòu)化數(shù)據(jù)。由于對象存儲不涉及數(shù)據(jù)一致性的問題,可以兩站點(diǎn)甚至多站點(diǎn)部署。對象存儲多站點(diǎn)部署數(shù)據(jù)使對象服務(wù)跨站點(diǎn)可用。第三,一些專用的接口可以直接為應(yīng)用調(diào)用。例如有的廠商對象存儲或分布式存儲提供Hadoop HDFS接口,可以支持大數(shù)據(jù)的分析場景直接使用。 4)云平臺存儲通過強(qiáng)大的編排組織串聯(lián)起存儲服務(wù),實(shí)現(xiàn)存儲運(yùn)維場景化自動化。盡可能詳細(xì)梳理生產(chǎn)環(huán)境會遇到的各種存儲運(yùn)維操作,將存儲接口形象展示成云上豐富差異的存儲服務(wù)目錄,將具體的操作形成云上的流程節(jié)點(diǎn),盡可能通過點(diǎn)選拖拽圖標(biāo)自助完成服務(wù)。例如,自動化的節(jié)點(diǎn)擴(kuò)容、存儲資源擴(kuò)容回收、大型業(yè)務(wù)投產(chǎn)為各個(gè)應(yīng)用匹配最精準(zhǔn)的存儲服務(wù)等。 構(gòu)筑企業(yè)的云平臺存儲可以使企業(yè)適應(yīng)快速迭代創(chuàng)新的業(yè)務(wù)發(fā)展,在市場占得先機(jī),可以提升企業(yè)運(yùn)維管理水平,邁出上云的第一步。 |
|