9月初,云計(jì)算開源產(chǎn)業(yè)聯(lián)盟、中國信息通信研究院共同發(fā)布首批通過可信云私有云開源解決方案認(rèn)證的七個(gè)廠家。此次參評(píng)的解決方案主要聚焦在OpenStack技術(shù)架構(gòu),表明了國內(nèi)產(chǎn)業(yè)聯(lián)盟及科研組織對OpenStack在私有云建設(shè)中大規(guī)模應(yīng)用的支持,同時(shí)也對廠商在OpenStack的創(chuàng)新開發(fā)進(jìn)行了認(rèn)可。10月,OpenStack基金會(huì)發(fā)布最新的Newton版本,在Newton代碼貢獻(xiàn)中,共23家中國企業(yè)上榜,貢獻(xiàn)覆蓋在新項(xiàng)目,用戶體驗(yàn),部署等各個(gè)方面??梢哉f每隔些許時(shí)間都會(huì)有關(guān)于OpenStack的技術(shù)更新信息,OpenStack在眾人的關(guān)注下,正保持著高速的持續(xù)創(chuàng)新和發(fā)展。
云計(jì)算發(fā)展至今,從開始CloudStack、OpenNebula、Eucalyptus、OpenStack等開源軟件爭艷到OpenStack事實(shí)成為開放云計(jì)算的標(biāo)準(zhǔn)框架,OpenStack用戶群也在慢慢增大,從國外的AT&T、eBay、PayPal、沃爾瑪?shù)絿鴥?nèi)的中國移動(dòng)、國家電網(wǎng)等都陸續(xù)在生產(chǎn)環(huán)境中使用OpenStack。社區(qū)OpenStack的基礎(chǔ)模塊穩(wěn)定性在不斷增強(qiáng),同時(shí)新模塊和新功能在不停增多,反復(fù)迭代會(huì)造成新的穩(wěn)定性問題,社區(qū)OpenStack提供了一個(gè)很好的技術(shù)框架,但畢竟技術(shù)到產(chǎn)品化、商用化還是有距離,目前OpenStack Open bugs 16000+,每個(gè)版本周期都要fix數(shù)千個(gè)bug,bug fix是長期持續(xù)的工作??紤]到在生產(chǎn)環(huán)境下商用,廠商需先打造一個(gè)穩(wěn)定的基礎(chǔ)產(chǎn)品平臺(tái),然后在此之上進(jìn)行功能模塊的創(chuàng)新和疊加,內(nèi)部可搭建穩(wěn)定性測試環(huán)境,基于腳本模擬真實(shí)用戶,長時(shí)間不中斷進(jìn)行不同規(guī)格云主機(jī)的創(chuàng)建/刪除、網(wǎng)絡(luò)創(chuàng)建/刪除,磁盤創(chuàng)建/刪除等操作,測試過程中不停的回歸bug fix,直到可以保持100%的成功率。
基于穩(wěn)定性之上,OpenStack社區(qū)也在不斷優(yōu)化用戶體驗(yàn)。如發(fā)布的Newton版本中重點(diǎn)提升OpenStack作為單一云平臺(tái)對虛擬機(jī)、裸機(jī)、容器的管理外,同樣注重了細(xì)節(jié)體驗(yàn)。如Horizon可以檢查可用的網(wǎng)絡(luò)IP,取代了允許用戶隨意設(shè)置的屬性;用戶可以創(chuàng)建無IP地址的虛擬機(jī),方便在以后做一些復(fù)雜操作。多數(shù)廠商也改進(jìn)了原生Dashboard的界面風(fēng)格,支持了分頁,資源排序;在云主機(jī)這塊,有些基于Cloud-Init和qga(qemu-guest-agent)實(shí)現(xiàn)了設(shè)置修改用戶名/密碼、監(jiān)控操作;在鏡像方面,支持掛載ISO虛擬光驅(qū)/云光驅(qū)等更多選擇;同時(shí)一些廠商也在基于Metadata開發(fā)定義更多新特性,如疊加安裝應(yīng)用等。這些小功能的開發(fā),給用戶帶來了很好的操作體驗(yàn)。
同時(shí)社區(qū)在不斷提升高可用性,如在控制節(jié)點(diǎn)上對無狀態(tài)API及內(nèi)部組件通過HAProxy提供調(diào)度實(shí)現(xiàn)HA,RabbitMQ 部署Cluster(A/A),MySQL部署Galera Cluster(A/A),HAProxy自身通過Pacemaker/Keepalived實(shí)現(xiàn)HA。針對Neutron HA方案,逐步從社區(qū)Juno版開始引入了VRRP/Keepalived和DVR方案,Mitaka版又進(jìn)行了增強(qiáng),支持了DVR SNAT上的HA功能。源于對虛機(jī)如Cattle的理念,社區(qū)版OpenStack 是不支持虛機(jī)HA的,但在國內(nèi)IT環(huán)境下,很多行業(yè)用戶不分基礎(chǔ)架構(gòu)部和應(yīng)用部,由應(yīng)用部自行保障業(yè)務(wù)高可用的理念會(huì)受到局限,因此廠商也可基于Evacuate結(jié)合Watchdog技術(shù),開發(fā)實(shí)現(xiàn)主機(jī)及虛機(jī)的HA。同時(shí)也看到了有些廠商創(chuàng)新開發(fā)了基于主機(jī)管理網(wǎng)/存儲(chǔ)網(wǎng)/業(yè)務(wù)網(wǎng)故障,虛機(jī)可選擇是否進(jìn)行疏散。
在資源管理上,OpenStack社區(qū)維系著開放的生態(tài),參與公司和人員在逐年增加,隨著VMware和Google等公司陸續(xù)加入,總體朝著對多云、多Hypervisor、多廠商設(shè)備資源納管在發(fā)展。在社區(qū)Mitaka版本中與亞馬遜EC2的合作,實(shí)現(xiàn)了初步的混合云,版本包含了一個(gè)EC2-API項(xiàng)目解決資源不足時(shí)將請求分發(fā)到公有云;也增加了新的Cinder驅(qū)動(dòng),可以將云硬盤備份到Google云存儲(chǔ)中。在與傳統(tǒng)企業(yè)用戶接觸中,涉及較多的資源管理需求主要包括兩方面,物理主機(jī)和異構(gòu)Hypervisor資源。
對于Hypervisor納管,特別是VMware資源池納管一直是用戶關(guān)注的重點(diǎn)?;舅悸房梢酝ㄟ^對接VMware vCenter/NSX/VDS等組件,實(shí)現(xiàn)統(tǒng)一納管KVM和VMware資源池。做到新建VMware虛機(jī)的生命周期管理,網(wǎng)絡(luò)管理,存儲(chǔ)管理,實(shí)現(xiàn)統(tǒng)一門戶和認(rèn)證管理,在界面上可以選擇在KVM或者ESXi池中創(chuàng)建虛機(jī)資源,同時(shí)實(shí)現(xiàn)KVM和VMware資源池的互通。對于新建VMware資源實(shí)現(xiàn)納管后,還需考慮如何管理vCenter中已創(chuàng)建的VMware的虛機(jī)資源,這就需要廠商對現(xiàn)有VMware接口及管理技術(shù)進(jìn)行深入研究分析,提供將存量VMware資源 import OpenStack的一整套流程,從而實(shí)現(xiàn)在OpenStack中像管理KVM資源一樣管理vCenter中創(chuàng)建的VMware資源。
對于重型業(yè)務(wù)如Oracle、Hadoop等,眾多用戶依然采用Bare metal部署,社區(qū)也有獨(dú)立的Ironic項(xiàng)目進(jìn)行支持,可對Bare metal設(shè)備進(jìn)行啟動(dòng)、關(guān)閉,安裝操作系統(tǒng)等基礎(chǔ)操作。Newton版對Ironic進(jìn)行了增強(qiáng),支持了Bare metal 添加多租戶網(wǎng)絡(luò),這樣就真正實(shí)現(xiàn)了Bare metal設(shè)備和虛機(jī)近似的操作和管理。同時(shí)也可以考慮結(jié)合Ironic和Sahara項(xiàng)目,將Hadoop集群便捷的部署在物理機(jī)上。
OpenStack的部署在不斷簡化和完善,社區(qū)OpenStack豐富了大量文檔的同時(shí),在Big Tent模式下也引入Fuel這樣的自動(dòng)化部署工具,各廠商也都開發(fā)有自己的部署工具或者腳本,現(xiàn)在部署一套OpenStack平臺(tái)已經(jīng)不算難事,這也對廠商提出更高要求,架構(gòu)設(shè)計(jì)上能夠結(jié)合用戶一些需求,做到優(yōu)化。如針對一個(gè)用戶項(xiàng)目上,考慮到社區(qū)獨(dú)立部署Neutron網(wǎng)絡(luò)節(jié)點(diǎn),在性能擴(kuò)展和單點(diǎn)故障等問題,而DVR路徑長,排錯(cuò)復(fù)雜??梢钥紤]基于每個(gè)計(jì)算節(jié)點(diǎn)分布部署L3 Agent,類似multi-host模式,通過調(diào)度算法(如ChanceScheduler、LeastRoutersScheduler等)結(jié)合vRouter的HA,將vRouter均衡的分布在不同的L3 Agent物理節(jié)點(diǎn)上,關(guān)于L3調(diào)度算法,可以進(jìn)行持續(xù)優(yōu)化。通過此類優(yōu)化部署,節(jié)省了網(wǎng)絡(luò)節(jié)點(diǎn)的成本,擴(kuò)大了部署規(guī)模,實(shí)現(xiàn)了流量分擔(dān)。
另外,在云計(jì)算項(xiàng)目交付中,上層運(yùn)營平臺(tái)和運(yùn)維平臺(tái)也不可或缺。如審批、計(jì)費(fèi)、監(jiān)控運(yùn)維等,社區(qū)也在積極推動(dòng),如在Big Tent模式下出現(xiàn)的CloudKitty就旨在解決IaaS層計(jì)費(fèi),但這兩個(gè)平臺(tái)的建設(shè)更多的還需要廠商或用戶進(jìn)行實(shí)現(xiàn)。如我們的一個(gè)客戶,擁有北京、上海、香港三地中心,280余臺(tái)服務(wù)器,生產(chǎn)集群有4000+個(gè)觸發(fā)器,18000+個(gè)監(jiān)控項(xiàng)目,這樣的環(huán)境對自動(dòng)化運(yùn)維平臺(tái)提出了高的要求。這就需要深度調(diào)研用戶需求,整合聯(lián)動(dòng)Ansible、Cobbler、Zabbix、ELKstack等工具開發(fā)一套可商用的自動(dòng)化運(yùn)維產(chǎn)品,來幫助運(yùn)維人員實(shí)現(xiàn)可視化,自動(dòng)化的應(yīng)用程序部署,備份,更新和啟停。同時(shí)對于具備研發(fā)能力的用戶而言,可以開發(fā)聯(lián)動(dòng)Gerrit、Jekins,OpenStack等組件,實(shí)現(xiàn)CI/CD(持續(xù)集成/持續(xù)交付)方案,達(dá)成云應(yīng)用的開發(fā)、打包、封裝、發(fā)布、交付完整生命周期管理目標(biāo)。
OpenStack發(fā)展到現(xiàn)在,已經(jīng)不僅僅是一個(gè)獨(dú)立的基礎(chǔ)設(shè)施平臺(tái),而是本著創(chuàng)新、合作的思路朝著更廣闊未來發(fā)展。也希望國內(nèi)的一些一線廠商如華為、華三、云途騰、99Cloud、EasyStack將穩(wěn)定性作為產(chǎn)品之基石,在用戶體驗(yàn)上同樣進(jìn)行了增強(qiáng)和創(chuàng)新,不斷簡化和完善OpenStack部署,作為開源技術(shù)之間協(xié)同努力的一部分,為下一代云計(jì)算框架注入新能量,提供更多的應(yīng)用支持,同時(shí)社區(qū)也在新增像Trove、Sahara、Murano、Mistral、Tacker等項(xiàng)目,相信通過生態(tài)的持續(xù)創(chuàng)新,定會(huì)給用戶業(yè)務(wù)和新型應(yīng)用帶來價(jià)值。