張榆
(云南電網(wǎng)有限責(zé)任公司信息中心,昆明 650217)
云計(jì)算技術(shù)和虛擬化技術(shù)為優(yōu)化資源利用率和資源管理方法提供了一種新型且有效的方法,為各個(gè)數(shù)據(jù)中心帶來了多元的架構(gòu)解決方案,并隨著其在各方面優(yōu)秀的表現(xiàn)而逐漸改變著傳統(tǒng)數(shù)據(jù)中心的運(yùn)營方式。采用OpenStack開源虛擬化技術(shù)和Ceph開源分布式存儲(chǔ)技術(shù)構(gòu)建了靈活高效的開源私有云平臺(tái),實(shí)現(xiàn)計(jì)算資源、存儲(chǔ)資源以及網(wǎng)絡(luò)資源的統(tǒng)一管理和自助式使用。OpenStack和Ceph的開源性、架構(gòu)松耦合性以及優(yōu)秀的橫向擴(kuò)展性為該私有云平臺(tái)提供了良好的靈活性、彈性擴(kuò)展性、包容性,使該平臺(tái)能有效滿足不斷復(fù)雜的電力業(yè)務(wù)和不斷增長(zhǎng)的資源規(guī)模對(duì)資源使用靈活和管理成本節(jié)約的需求。
私有云平臺(tái)的功能架構(gòu)設(shè)計(jì)包括管理虛擬計(jì)算資源、虛擬存儲(chǔ)資源等云化基礎(chǔ)資源和配套的網(wǎng)絡(luò)環(huán)境,支持管理未來引入的異構(gòu)基礎(chǔ)設(shè)施對(duì)象,包含X86服務(wù)器、IBM小型機(jī)、商業(yè)存儲(chǔ)、運(yùn)維管理平臺(tái)等。通過該平臺(tái)的設(shè)計(jì)和實(shí)現(xiàn),將建設(shè)成基于OpenStack和Ceph的開源虛擬化資源管理平臺(tái),對(duì)數(shù)據(jù)中心進(jìn)行統(tǒng)一管理,實(shí)現(xiàn)虛擬化資源和物理資源的統(tǒng)一抽象,形成邏輯統(tǒng)一的云計(jì)算資源池,主要提供虛擬計(jì)算、虛擬存儲(chǔ)、虛擬網(wǎng)絡(luò)以及虛擬安全等服務(wù),具體可提供服務(wù)內(nèi)容為虛擬主機(jī)服務(wù)、虛擬硬盤服務(wù)、備份服務(wù)、彈性負(fù)載均衡服務(wù)、物理機(jī)納管服務(wù)、虛擬機(jī)高可用服務(wù)、安全管理服務(wù)、資源監(jiān)控服務(wù)、用戶自助服務(wù)等。
遵循“集中控制、各司其職”的原則,根據(jù)OpenStack模塊之間的高度松耦合性和分布式特性,并依照服務(wù)器節(jié)點(diǎn)功能的不同,本開源私有云平臺(tái)的部署架構(gòu)主要由3臺(tái)控制節(jié)點(diǎn)、3臺(tái)計(jì)算節(jié)點(diǎn)、3臺(tái)存儲(chǔ)節(jié)點(diǎn)以及3臺(tái)計(jì)算存儲(chǔ)融合節(jié)點(diǎn)組成,如圖2所示。同時(shí),還單獨(dú)配置一臺(tái)部署節(jié)點(diǎn)用于平臺(tái)集群的一鍵部署和可視化操作。該架構(gòu)設(shè)計(jì)使開源私有云平臺(tái)具有良好的橫向可擴(kuò)展性,包括計(jì)算集群的可擴(kuò)展性、存儲(chǔ)集群的可擴(kuò)展性以及控制集群的可擴(kuò)展性等。
圖1 平臺(tái)功能架構(gòu)圖
圖2 平臺(tái)部署架構(gòu)圖
1)部署節(jié)點(diǎn):主要用于提供開源私有云平臺(tái)的一鍵式自動(dòng)部署能力、平臺(tái)規(guī)模自動(dòng)化擴(kuò)展能力以及部署、擴(kuò)容過程的全程可視化操作能力。
2)控制節(jié)點(diǎn):主要用于運(yùn)行管理開源私有云平臺(tái)環(huán)境中計(jì)算、網(wǎng)絡(luò)、存儲(chǔ)、計(jì)量、編排、容器調(diào)度等服務(wù),以及服務(wù)運(yùn)行所需的消息隊(duì)列組件RabbitMQ、MySQL數(shù)據(jù)庫和MongoDB數(shù) 據(jù) 庫, 并 通 過 HAProxy、Pacemaker、Corosync等技術(shù)實(shí)現(xiàn)各服務(wù)的高可用和接入層的負(fù)載均衡。在設(shè)計(jì)中,使用至少3個(gè)節(jié)點(diǎn)構(gòu)成一個(gè)控制集群,并在集群中設(shè)置仲裁機(jī)制,從而避免因控制節(jié)點(diǎn)“腦裂現(xiàn)象”而導(dǎo)致整個(gè)私有云平臺(tái)不可用。
3)計(jì)算節(jié)點(diǎn):是虛擬化層提供計(jì)算能力的載體,通常采用1~N臺(tái)標(biāo)準(zhǔn)X86物理服務(wù)器。計(jì)算節(jié)點(diǎn)可以進(jìn)行擴(kuò)展,并且在擴(kuò)展時(shí)不影響業(yè)務(wù)的正常運(yùn)行,保持系統(tǒng)不停機(jī),保障業(yè)務(wù)的連續(xù)性。
4)存儲(chǔ)節(jié)點(diǎn):主要采用Ceph開源分布式存儲(chǔ)技術(shù)實(shí)現(xiàn)分布式存儲(chǔ)資源池,通過存儲(chǔ)多副本技術(shù)保障整個(gè)存儲(chǔ)資源池中沒有單點(diǎn)故障,保障了數(shù)據(jù)的安全性和可靠性。基于Ceph的分布式存儲(chǔ)由多個(gè)獨(dú)立的標(biāo)準(zhǔn)x86服務(wù)器組成,利用本地硬盤提供存儲(chǔ)空間。存儲(chǔ)集群整體的有效存儲(chǔ)容量可依照公式(1)來計(jì)算和設(shè)計(jì)。
5)計(jì)算存儲(chǔ)融合節(jié)點(diǎn):是指在同一個(gè)服務(wù)器節(jié)點(diǎn)上同時(shí)部署計(jì)算、存儲(chǔ)相關(guān)組件,使之同時(shí)具備計(jì)算節(jié)點(diǎn)和存儲(chǔ)節(jié)點(diǎn)的功能。
依據(jù)以上架構(gòu)設(shè)計(jì),本文構(gòu)建了適用于本企業(yè)電力信息系統(tǒng)的開源私有云平臺(tái),形成了計(jì)算資源、存儲(chǔ)資源及網(wǎng)絡(luò)資源三大基礎(chǔ)資源的有效整合、統(tǒng)一管理、按需分配、靈活調(diào)度。
我們使用OpenStack和Ceph開源社區(qū)公布的穩(wěn)定發(fā)行版來構(gòu)建開源私有云平臺(tái),并使用友好的圖形化安裝工具 Roller來實(shí)施基礎(chǔ)環(huán)境的自動(dòng)化部署,包括控制節(jié)點(diǎn)、計(jì)算節(jié)點(diǎn)、存儲(chǔ)節(jié)點(diǎn)、計(jì)算存儲(chǔ)融合節(jié)點(diǎn)以及各關(guān)鍵組件的自動(dòng)部署和配置。Roller是一個(gè)為OpenStack端到端“一鍵部署”設(shè)計(jì)的工具,其功能含蓋自動(dòng)的PXE方式的操作系統(tǒng)安裝,DHCP服務(wù),Orchestration服務(wù) 和puppet 配置管理相關(guān)服務(wù)等,此外還有OpenStack關(guān)鍵業(yè)務(wù)健康檢查和日志實(shí)時(shí)查看等非常好用的服務(wù)。Roller工具的架構(gòu)圖如圖3所示。
圖3 Roller工具架構(gòu)圖
通過OpenStack的Nova、Ironic等組件將能將不同品牌、型號(hào)的異構(gòu)物理服務(wù)器進(jìn)行裸設(shè)備資源整合,將基于KVM的計(jì)算資源和基于VMware的計(jì)算資源進(jìn)行資源整合,現(xiàn)虛擬化資源和物理資源的統(tǒng)一抽象,形成邏輯統(tǒng)一的計(jì)算資源池,實(shí)現(xiàn)虛擬主機(jī)、物理機(jī)的統(tǒng)一管理、統(tǒng)一調(diào)配,避免了現(xiàn)有的商業(yè)虛擬化技術(shù)在資源擴(kuò)展時(shí)候的技術(shù)封閉、難兼容的問題。
圖4 計(jì)算資源虛擬化架構(gòu)圖
基于Ceph分布式存儲(chǔ)技術(shù),實(shí)現(xiàn)多個(gè)節(jié)點(diǎn)的存儲(chǔ)資源的整合和統(tǒng)一管理。此外,OpenStack可將Ceph開源分布式存儲(chǔ)、商業(yè)存儲(chǔ)等多種存儲(chǔ)資源進(jìn)行高效集成,并通過cinder、swift等組件為用戶提供塊存儲(chǔ)、對(duì)象存儲(chǔ)以及文件存儲(chǔ)等多種存儲(chǔ)方式。
圖5 存儲(chǔ)資源虛擬化架構(gòu)圖
通過OpenStack的Neutron等組件構(gòu)建虛擬化網(wǎng)絡(luò),提供基于租戶隔離的從二層到七層的虛擬網(wǎng)絡(luò)服務(wù),通過VLAN實(shí)現(xiàn)各個(gè)業(yè)務(wù)系統(tǒng)的網(wǎng)絡(luò)隔離,滿足業(yè)務(wù)對(duì)網(wǎng)絡(luò)高效性、可靠性、擴(kuò)展性以及網(wǎng)絡(luò)隔離的需求。同時(shí),通過VLAN/VXLAN組網(wǎng),平臺(tái)實(shí)現(xiàn)了基于軟件的路由器、交換機(jī)、負(fù)載均衡、防火墻功能等。
圖6 網(wǎng)絡(luò)資源虛擬化架構(gòu)圖
該開源私有云平臺(tái)主要用于為企業(yè)電力信息系統(tǒng)的測(cè)試業(yè)務(wù)提供快速便捷的計(jì)算資源和存儲(chǔ)資源自助申請(qǐng)和動(dòng)態(tài)調(diào)整,可以為電力信息系統(tǒng)測(cè)試業(yè)務(wù)在敏捷開發(fā)和敏捷運(yùn)維中提供資源的靈活調(diào)度、高效利用。
該平臺(tái)還為用戶提供虛擬資源自助式申請(qǐng)服務(wù)。用戶可以自主選擇所需的資源服務(wù)模板進(jìn)行資源申請(qǐng),系統(tǒng)自動(dòng)配置其所需資源。對(duì)于用戶而言,資源的申請(qǐng)只需要提交一次申請(qǐng)即可完成,無需分別申請(qǐng)計(jì)算資源、存儲(chǔ)資源和網(wǎng)絡(luò)資源,使用戶資源申請(qǐng)耗時(shí)可縮短70%,提高了資源申請(qǐng)的便捷性和高效性。對(duì)于資源管理員而言,一項(xiàng)業(yè)務(wù)所需的計(jì)算資源、存儲(chǔ)資源和網(wǎng)絡(luò)資源可以在平臺(tái)內(nèi)流程化地完成資源的分配和調(diào)度,虛擬資源的配置時(shí)間短至分鐘級(jí)別,從而極大地降低管理復(fù)雜度和工作量,提升管理效率。
本文利用OpenStack和Ceph的開源技術(shù)構(gòu)建了一個(gè)適用于電力信息系統(tǒng)的開源私有云平臺(tái),并描述該平臺(tái)的架構(gòu)設(shè)計(jì)和。OpenStack的開源性、包容性、架構(gòu)松耦合性以及優(yōu)秀的橫向擴(kuò)展性使該開源私有云平臺(tái)能夠滿足電力信息系統(tǒng)和數(shù)據(jù)中心規(guī)模不斷增長(zhǎng)對(duì)平臺(tái)擴(kuò)展性、靈活性、包容性等各方面的需求,有效降低資源管理成本,優(yōu)化資源服務(wù)方式,提高資源服務(wù)效能,實(shí)現(xiàn)項(xiàng)目在保證資源穩(wěn)定性的條件下節(jié)省資源管理成本、優(yōu)化資源管理和服務(wù)方式的目標(biāo)。