在電信及IT領(lǐng)域,一個完整系統(tǒng)由各類基礎(chǔ)物理資源和軟件資源組成,基礎(chǔ)物理資源提供了計算、存儲、網(wǎng)絡(luò)等硬件能力,而形形色色的軟件則構(gòu)成了各類豐富多彩的應(yīng)用。這些應(yīng)用由不同廠家開發(fā)、基于不同操作系統(tǒng)平臺、采用不同軟件架構(gòu)、具備不同部署形態(tài),應(yīng)用的多樣化必然帶來軟件管理的復(fù)雜度。
本文所述的軟件管理,主要是指本領(lǐng)域的軟件在運(yùn)行態(tài)的生命周期管理,包括軟件的發(fā)布、配置管理、分發(fā)部署、補(bǔ)丁管理、軟件監(jiān)控、合規(guī)審計、策略管理等。在現(xiàn)有硬件資源基礎(chǔ)上,快速高效地完成軟件部署、并確保其按照預(yù)期正常運(yùn)行、實(shí)現(xiàn)業(yè)務(wù)運(yùn)營,這也是整個系統(tǒng)最基礎(chǔ)的能力之一。
中興通訊電信軟件管理系統(tǒng)中興通訊在傳統(tǒng)的電信軟件管理方案基礎(chǔ)上,借鑒業(yè)界領(lǐng)先的IT廠商的經(jīng)驗(yàn),通過引入ITSM(IT服務(wù)管理)和ITIL(IT基礎(chǔ)架構(gòu)庫)等理念和方法,對軟件管理要素進(jìn)行重新梳理和架構(gòu)優(yōu)化,形成了架構(gòu)統(tǒng)一、規(guī)范化、自動化的軟件管理系統(tǒng),顯著提升了整體運(yùn)維效率。
如圖1所示,中興通訊電信軟件管理系統(tǒng)的優(yōu)勢體現(xiàn)在幾大方面。
統(tǒng)一技術(shù)架構(gòu):將分散的工具按照統(tǒng)一的技術(shù)架構(gòu)進(jìn)行重新實(shí)現(xiàn),演進(jìn)為基于Web的集成化軟件管理系統(tǒng)的子模塊。
統(tǒng)一用戶入口:通過統(tǒng)一的運(yùn)維入口、基于角色的訪問控制、分權(quán)分域模型等,實(shí)現(xiàn)各類用戶的統(tǒng)一管理和一致的用戶體驗(yàn),用戶行為可記錄、回溯和審計。
操作策略統(tǒng)一化:提供統(tǒng)一的策略管理,確保各類功能間協(xié)調(diào)一致、避免沖突,并為各類合規(guī)性提供保障。
操作對象標(biāo)準(zhǔn)化:將文件、配置、腳本、軟件包、補(bǔ)丁等進(jìn)行對象化管理、標(biāo)準(zhǔn)化定義,為靈活可控的管理打下基礎(chǔ)。
操作手段自動化:引入DevOps(開發(fā)運(yùn)維)理念,實(shí)現(xiàn)復(fù)雜的操作串行化、腳本化、可編程、批量設(shè)備執(zhí)行的并行化等,實(shí)現(xiàn)各類軟件管理功能的自動化,提高維護(hù)效率。
操作角色明晰化:結(jié)合分權(quán)分域模型和基于角色的訪問控制,將各類軟件管理的對象、功能與人員進(jìn)行關(guān)聯(lián)映射,形成明確的角色定義。
圖1 中興通訊電信軟件管理系統(tǒng)
軟件管理系統(tǒng)在云計算及大數(shù)據(jù)場景下的演進(jìn)近年來,云計算、大數(shù)據(jù)技術(shù)的蓬勃發(fā)展對軟件管理提出了新的要求。
l 資源分配的動態(tài)化與彈性伸縮
傳統(tǒng)場景下,軟件運(yùn)行在相對固定的計算、存儲和網(wǎng)絡(luò)環(huán)境中。云計算場景下,運(yùn)行環(huán)境實(shí)現(xiàn)了虛擬化,軟件的安裝、部署、配置和升級增加了動態(tài)的特性,例如虛機(jī)網(wǎng)絡(luò)配置的動態(tài)化、存儲資源的動態(tài)分配等。
l 更加豐富的操作系統(tǒng)種類
傳統(tǒng)的x86操作系統(tǒng)中redhat、suse、windows占據(jù)了較大份額,云計算場景下的操作系統(tǒng)種類更加多樣化,例如Ubuntu、centos、fedora、debian等開源操作系統(tǒng)的應(yīng)用率得到了很大提升。軟件管理的實(shí)現(xiàn)架構(gòu)需要具備良好的擴(kuò)展性,以減少支持新操作系統(tǒng)帶來的適配工作量和對軟件管理架構(gòu)的沖擊。
l XaaS(Anything as a Service)一切皆服務(wù)概念的落地
“軟件管理”即服務(wù)(Software Management as a Service)是一個相對抽象的概念,是XaaS在軟件管理領(lǐng)域的體現(xiàn)。Openstack、SDN技術(shù)逐步在云計算中實(shí)現(xiàn)落地應(yīng)用,軟件管理功能不僅提供給運(yùn)營者使用,也需要提供給租戶甚至最終用戶使用,這就要求軟件管理具備“服務(wù)暴露”的特性。軟件管理不再是一個相對封閉的系統(tǒng),而應(yīng)該作為面向任何用戶的服務(wù)提供者。
中興通訊作為領(lǐng)先的云計算技術(shù)方案提供商和OpenStack組織成員,引領(lǐng)云計算及大數(shù)據(jù)的發(fā)展趨勢,提供了面向云計算及大數(shù)據(jù)的軟件管理解決方案。
軟件管理的幾大特點(diǎn)
l 軟件管理即服務(wù)
中興通訊軟件管理系統(tǒng)包含如下與軟件管理密切相關(guān)的模塊。
軟件管理公共服務(wù):具備軟件管理的核心功能,通過RESTful接口及JSON數(shù)據(jù)封裝等實(shí)現(xiàn)原子服務(wù)的封裝與暴露,為其它各模塊提供基礎(chǔ)資源服務(wù),是軟件管理即服務(wù)的典型體現(xiàn)。
軟件及模板倉庫:將原子服務(wù)組合成軟件/模板的倉庫,并進(jìn)一步提供給軟件供應(yīng)與管理模塊使用。
軟件的供應(yīng)與管理:軟件自動化部署的執(zhí)行實(shí)體,通過工作流編排,將各類基礎(chǔ)資源組裝成資源模板,利用公共服務(wù)提供的自動化能力,完成數(shù)據(jù)中心的資源創(chuàng)建與維護(hù)。
服務(wù)目錄管理:通過服務(wù)目錄將軟件管理服務(wù)及其它服務(wù)暴露給各類用戶。
l 分布式部署與協(xié)同
典型的云計算及大數(shù)據(jù)場景,例如虛擬化數(shù)據(jù)中心,一方面數(shù)據(jù)規(guī)模較大且跨地域,對軟件服務(wù)的性能、服務(wù)等級有較高要求,另一方面各數(shù)據(jù)中心的網(wǎng)絡(luò)互通性受到約束,因此必須采用分布式的軟件管理系統(tǒng)。
圖2 中興通訊軟件管理的分布式部署與協(xié)同
如圖2所示,中興通訊軟件管理系統(tǒng)在管理域中部署一套軟件管理服務(wù)器和軟件倉庫、軟件分發(fā)服務(wù)器,具備軟件管理及對外服務(wù)暴露等全部功能。每個子中心只部署軟件分發(fā)服務(wù)節(jié)點(diǎn),負(fù)責(zé)執(zhí)行各類軟件管理策略,完成文件、配置、腳本的中轉(zhuǎn)、下發(fā)及生效。分發(fā)服務(wù)器承擔(dān)的策略執(zhí)行者角色非常重要,除具備基本的軟件部署功能外,還可以按照策略的要求進(jìn)行節(jié)點(diǎn)合規(guī)性檢查與修正。
l 更大規(guī)模、更快速度、高度自動化的部署
中興通訊軟件管理系統(tǒng)具備更加自動化的軟件管理策略和快速的軟件部署與維護(hù)能力,能更好地適應(yīng)云計算及大數(shù)據(jù)場景下系統(tǒng)組網(wǎng)動態(tài)的scale-in、scale-out等4V(Volume、Variety、Velocity、Value)特性。
l 與Openstack體系的技術(shù)融合
Openstack是當(dāng)前最熱門的云計算基礎(chǔ)平臺,中興通訊軟件管理系統(tǒng)對Openstack中軟件管理相關(guān)子模塊進(jìn)行了較好的吸收和融合。引入Heat子模塊提供了一種通過模版定義的協(xié)同部署方式,實(shí)現(xiàn)云基礎(chǔ)設(shè)施的自動化部署。引入Ironic子模塊則提供面向裸機(jī)的通用軟件管理技術(shù),如基于PXE的裸機(jī)自動化安裝、基于IPMI實(shí)現(xiàn)裸機(jī)的底層管理等。
中興通訊軟件管理系統(tǒng)通過在Heat模板定義中應(yīng)用軟件管理公共服務(wù),可更加快速高效地完成Openstack體系中虛機(jī)軟件的部署;在Ironic中引入軟件管理服務(wù),可在完成裸機(jī)部署后,進(jìn)一步實(shí)現(xiàn)應(yīng)用軟件的部署,從而實(shí)現(xiàn)裸機(jī)軟件的一體化部署。