本文來自微信公眾號“twt企業(yè)IT社區(qū)”,作者/李彪朋,某金融單位數(shù)據(jù)中心系統(tǒng)運營。
一、前言
伴隨著大數(shù)據(jù)、云計算浪潮的洶涌發(fā)展,越來越多金融行業(yè)選擇業(yè)務(wù)整體上云。如何在保障云平臺存儲安全性、可靠性的同時降低運維成本,是所有企業(yè)必須思考的命題。本文將從云平臺存儲自動化的角度,介紹某金融企業(yè)在上云過程中,如何結(jié)合自動化配置,強化上云的規(guī)模效應(yīng)和成本遞減效應(yīng),安全、穩(wěn)定的降低運維成本。
二、云平臺存儲的優(yōu)勢
目前業(yè)界在云平臺存儲的選擇上,常見的方案有集中式SAN/NAS存儲與分布式存儲。生產(chǎn)環(huán)境在選擇存儲方案時,需要兼顧性能和成本,一般需結(jié)合業(yè)務(wù)場景,將各種存儲方案加以組合應(yīng)用。如業(yè)務(wù)系統(tǒng)的虛擬機云硬盤、NFS一般采用NAS存儲,數(shù)據(jù)庫使用SAN存儲,文件備份使用分布式存儲等。
通過對云平臺存儲平臺的自動化設(shè)計,有機地將業(yè)務(wù)場景與存儲方案相結(jié)合,實現(xiàn)云平臺存儲的安全、可靠落地。既能滿足業(yè)務(wù)的發(fā)展需求,又能降低運維成本。
三、關(guān)鍵點和挑戰(zhàn)
云平臺存儲平臺的建設(shè),需要針對不同業(yè)務(wù)場景,挑選合適的存儲方案。因此云平臺存儲平臺整體設(shè)計上,既要最大程度降低數(shù)據(jù)和基礎(chǔ)架構(gòu)風(fēng)險,又要具備靈活的部署選項和高速擴展性。
在自動化的設(shè)計方面,同樣要考慮兼容業(yè)界不同的軟硬件接口。從硬件的磁盤介質(zhì)層,到操作系統(tǒng)的文件系統(tǒng)層,如何實現(xiàn)云平臺存儲資源的動態(tài)容量管理、自動化調(diào)度等,是云平臺存儲平臺自動化設(shè)計的關(guān)鍵點和挑戰(zhàn)之一。
四、自動化設(shè)計
在云平臺存儲的自動化設(shè)計上,主要考慮面向業(yè)務(wù)的存儲服務(wù)交付。如虛擬機相關(guān)文件系統(tǒng)、NFS相關(guān)文件系統(tǒng)、數(shù)據(jù)庫表空間相關(guān)文件系統(tǒng),以及這類存儲服務(wù)的自動化擴容場景。
下面結(jié)合目前企業(yè)常用的四種自動化場景進下介紹:
場景一:虛擬機存儲自動化配置
業(yè)務(wù)上云之后,普遍需要解決虛擬機的批量部署問題。在虛擬機文件系統(tǒng)的自動化設(shè)計上,基于OpenStack的Cinder模塊接口、Shell腳本以及批量自動化工具(Ansible)的結(jié)合,實現(xiàn)規(guī)模化、自動化的虛擬機文件系統(tǒng)的初始化。簡要設(shè)計邏輯如下(圖1):
圖1:虛擬機存儲自動化配置
1)調(diào)用OpenStack Nova模塊接口,創(chuàng)建計算資源;
2)調(diào)用OpenStack Cinder模塊接口,創(chuàng)建存儲資源;
3)調(diào)用批量自動化工具,在虛擬機上通過Shell腳本將硬盤初始化,創(chuàng)建卷組、邏輯卷到可用的文件系統(tǒng)。
該方案能夠快速實現(xiàn)計算及存儲資源的高效交付。
場景二:NFS存儲自動化配置
NFS文件系統(tǒng)用在多個用戶之間共享公共文件系統(tǒng),在業(yè)務(wù)規(guī)模較大時,同一個NFS需要掛載的節(jié)點多,既需要考慮訪問安全性,又需要考慮管理的便捷性?;贠penStack的Manila模塊接口、Shell腳本以及批量自動化工具(Ansible)的結(jié)合,實現(xiàn)NFS文件系統(tǒng)掛載。簡要設(shè)計邏輯如下(圖2):
圖2:NFS存儲自動化配置
1)調(diào)用OpenStack Manila接口,創(chuàng)建NFS目錄創(chuàng)建;
2)調(diào)用OpenStack Manila接口,設(shè)置NFS白名單;
3)調(diào)用OpenStack Neutron接口,實現(xiàn)NFS網(wǎng)絡(luò)訪問開通;
4)調(diào)用批量自動化工具,在虛擬機上通過Shell腳本實現(xiàn)NFS目錄掛載。
該方案同時支持新增NFS白名單及掛載功能,滿足業(yè)務(wù)的縱向擴展。
場景三:數(shù)據(jù)庫表空間存儲自動化配置
數(shù)據(jù)庫高IO的特性,在選擇存儲時,不同于計算幾點采用的NAS存儲方案,一般選擇IO性能更高的SAN、SSD或本地磁盤的存儲方案?;贙ubernetes的數(shù)據(jù)庫容器化設(shè)計與SAN、SSD或本地磁盤封裝接口結(jié)合,具備極好的魯棒性,可以滿足數(shù)據(jù)庫的高可用及性能要求。簡要設(shè)計邏輯如下:
1)調(diào)用Kubernetes接口,初始化數(shù)據(jù)庫容器;
2)調(diào)用封裝的磁盤接口,執(zhí)行SAN、SSD或本地磁盤的存儲分配;
3)調(diào)用批量自動化工具,通過Shell腳本實現(xiàn)容器的文件目錄掛載及數(shù)據(jù)庫初始化;
4)調(diào)用批量自動化工具,搭建數(shù)據(jù)庫復(fù)制關(guān)系。
該方案在在面對數(shù)以千計的數(shù)據(jù)庫需求時,既能實現(xiàn)表空間的自動縱向擴容,還支持實例規(guī)格的自動縱向擴容。
場景四:云平臺存儲容量自動化配置
在企業(yè)日益講究成本及精細化運維管理的背景下,云平臺存儲的容量動態(tài)管理能力,是云平臺存儲必須具備的功能之一。通過云監(jiān)控與云平臺存儲容量的整合,實現(xiàn)基于容量數(shù)據(jù)的存儲全自動化擴容。以上提到的虛擬機存儲、NFS存儲、數(shù)據(jù)庫表空間存儲,均支持自動化擴容。簡要設(shè)計邏輯如下:
1)云監(jiān)控實時監(jiān)控文件系統(tǒng)使用情況;
2)基于容量水位,自動推送云平臺存儲擴容策略;
3)基于自動化流程,實現(xiàn)存儲服務(wù)的自動化擴容。
云平臺存儲的容量管理,按照最小化存儲資源交付,一方面實現(xiàn)了存儲成本的節(jié)約,避免浪費;另一方面與監(jiān)控及容量管理的結(jié)合,能夠及時滿足業(yè)務(wù)發(fā)展的需求。
五、總結(jié)
在上云后的規(guī)?;\營時代,傳統(tǒng)金融企業(yè)通過云平臺存儲的自動化平臺設(shè)計,加速企業(yè)上云的速度,既能滿足基礎(chǔ)服務(wù)快速交付(SLA)的要求,又能帶來運維成本(TCO)下降的效益優(yōu)勢。在云平臺存儲的整體架構(gòu)設(shè)計中,業(yè)界大多有可供參考的案例,因此實施并不復(fù)雜。完全可以通過自有人力實現(xiàn)設(shè)計與落地,也符合金融企業(yè)對基礎(chǔ)架構(gòu)能力自主可控的要求。