隨著云計算的發(fā)展,企業(yè)正積極探索從傳統(tǒng)架構(gòu)轉(zhuǎn)向云計算架構(gòu)的方法。無論從國家層面還是企業(yè)自身發(fā)展來看,這都是勢在必行的一種轉(zhuǎn)型。
當(dāng)我們把云理解成為一種服務(wù),尤其是基于 OpenStack 構(gòu)建云,會遇到各種技術(shù)困惑和技術(shù)能力儲備的問題。它其實是有別于 VMwae 閉源產(chǎn)品化的一種開源解決方案。
OpenStack 的技術(shù)呈現(xiàn)了多樣化狀態(tài),比如計算虛擬化、存儲虛擬化、網(wǎng)絡(luò)虛擬化、容器和超融合等都需要有相應(yīng)的涉獵和技術(shù)儲備,同時這些技術(shù)基于傳統(tǒng)基礎(chǔ)架構(gòu)體系,但是又有別于傳統(tǒng)解決方案。
這就要求我們需要具有識別 OpenStack 平臺本身的能力、理解所承載應(yīng)用以及優(yōu)化云平臺的能力、改造遷移現(xiàn)有應(yīng)用的能力。
OpenStack 平臺的四大能力:企業(yè)在落地云計算的時候,OpenStack 作為一個開源解決方案,會遇到產(chǎn)品 Bug、調(diào)優(yōu)和組件選型,需要面對 OpenStack 的復(fù)雜性和部署困難的問題。
傳統(tǒng)應(yīng)用的高可用依賴于基礎(chǔ)架構(gòu),OpenStack 云平臺如何實現(xiàn)平臺自身高可用以及業(yè)務(wù)的高可用,同時面對互聯(lián)網(wǎng)場景下的雙態(tài)應(yīng)用模式,需要解決傳統(tǒng)業(yè)務(wù)的上云,又要滿足基于容器的微服務(wù)架構(gòu)實現(xiàn)。
在滿足云平臺的功能性需求的同時,還需要解決非功能性需求:異構(gòu)環(huán)境的統(tǒng)一納管,基于應(yīng)用的性能要求,不可避免的云安全要求和數(shù)據(jù)中心內(nèi)及數(shù)據(jù)中心之前的災(zāi)備和雙活需求。
OpenStack 在上線及上線后相關(guān)的升級、運維能力的技術(shù)和人才儲備。上線過程中的業(yè)務(wù)遷移,例如:P2V 和 V2V 的能力等。
直面問題解決問題,輕松部署
OpenStack針對以上遇到的上線投產(chǎn)要求和遷移升級需求,提供一些例子供大家參考:從云平臺的擴展能力和穩(wěn)定性上來看,需要解決大規(guī)模使用過程中 RabbitMQ 隊列堵塞的問題。
可以通過基于新版本 OpenStack Cell V2 的架構(gòu)實現(xiàn)云平臺控制端相關(guān)服務(wù)的基于物理服務(wù)器的拆分和管理。同時根據(jù)集群的規(guī)模進行 RabbitMQ 的配置文件調(diào)優(yōu)。
Memcache 的 Token 默認(rèn)存儲是 64M,基于標(biāo)準(zhǔn)配置,如果有大量的 API 訪問請求,就會造成 Memcache 存儲不足 Token 被剔除,因此過期。所以需要根據(jù)云平臺的實際情況進行優(yōu)化調(diào)整,實現(xiàn)配置最優(yōu)。
MongoDB 默認(rèn)配置是不限制內(nèi)存使用的,在實際使用的過程中會消耗特別大的內(nèi)存,這塊需要進行限制。
在業(yè)務(wù)遷移場景下,需要保證原網(wǎng)絡(luò)和遷移后的網(wǎng)絡(luò)完全一致,存儲數(shù)據(jù)不丟失、業(yè)務(wù)正常。為避免解決 DHCP 的混亂情況,系統(tǒng)需要建立獨立的 DHCP 來進行遷移。
針對大型企業(yè),我們可以提供面向內(nèi)部的私有云,主要根據(jù)具體不同的業(yè)務(wù)需求,采用不同的可定制化的解決方案,比如存儲的多樣性定制化、網(wǎng)絡(luò)的復(fù)雜多樣性定制化、以及虛擬化層面不同類型的相互分離等等。
另外,可以定制化內(nèi)部私有云以及與公有云構(gòu)建混合云的機制。這樣不僅滿足了內(nèi)部云化的訴求,而且也解決了混合云對不同的業(yè)務(wù)需求進行不同管理的問題。
得力于 OpenStack 的快速發(fā)展,九州云實現(xiàn)了基于 Ocata 版本的 OpenStack 發(fā)行版,實現(xiàn)了容器化部署 OpenStack 的能力,解決了企業(yè)快速部署、升級和調(diào)優(yōu)的問題,從而使得云平臺可以大規(guī)模部署和擴展,提高企業(yè)基于云平臺的業(yè)務(wù)連續(xù)性。
同時為解決業(yè)務(wù)性能的不同需求,需要實現(xiàn)異構(gòu)存儲、異構(gòu) SDN 的納管和定制化開發(fā)解決方案,從而滿足不同規(guī)模的企業(yè)用戶,以及存在存量異構(gòu)設(shè)備的云化。例如:VMware、Nutanix、EMCVplex 等的納管和集成。
九州云基于 Ocata 版本的 OpenStack 發(fā)行版
對于中小企業(yè),我們提供了完整的基于通用業(yè)務(wù)的一套統(tǒng)一的私有云架構(gòu),采用統(tǒng)一的分布式存儲、KVM 虛擬化,OVS 網(wǎng)絡(luò)虛擬化的產(chǎn)品和解決方案,能夠?qū)崿F(xiàn)快速部署云平臺及投產(chǎn)使用。
與此同時,為了企業(yè)能夠駕馭 OpenStack,我們注重技術(shù)能力的輸出,提供了豐富的 OpenStack 開發(fā)、使用和運維的培訓(xùn)。例如 COA 培訓(xùn),通過培訓(xùn),解決企業(yè)在部署和使用 OpenStack 的時候具有足夠的技術(shù)和人才儲備。
六大核心技術(shù)凸顯 OpenStack 實力
我們現(xiàn)有的核心技術(shù)包括以下幾個方面:PaaS 技術(shù)能力。支持云應(yīng)用和 PaaS 平臺的對接整合能力,實現(xiàn) IaaS 的標(biāo)準(zhǔn)化接口為 PaaS 服務(wù)。
容器技術(shù)能力。基于容器化部署 OpenStack 的能力,實現(xiàn)原子化升級和快速部署擴展云平臺能力。
運營服務(wù)能力。支持用戶自助管理、應(yīng)用商店、計費計量、配額分配、請求報障等云平臺運營功能。
DevOps 技術(shù)?;?OS 技術(shù)的需求,具備源碼,審查管理、應(yīng)用構(gòu)建及發(fā)布能力的 DevOps 模式。
超融合。能夠?qū)崿F(xiàn)基于開源技術(shù)的超融合架構(gòu)的實現(xiàn)及大規(guī)模機柜部署,能夠納管商業(yè)超融合產(chǎn)品。
NFV 能力。以開源項目為基礎(chǔ),對網(wǎng)絡(luò)關(guān)系及業(yè)務(wù)服務(wù)鏈的定義。具備部署、配置、監(jiān)控、靈活編排 NFV 和異構(gòu)區(qū)域 RI 的管理。
目前,我們通常采用的云架構(gòu)主要是采用統(tǒng)一性的分布式存儲,同時結(jié)合商業(yè)存儲及超融合技術(shù)實現(xiàn)多樣的后端虛擬化相互結(jié)合管理、多樣的 SDN 網(wǎng)絡(luò)模式。另外還有對于整個云環(huán)境的服務(wù)容器化,也為后續(xù)的無縫升級提供了保證。
在開發(fā)過程中,我們從最初的 G 和 H 版本開始演化,到 I 版本這一較穩(wěn)定的版本,在實際的開發(fā)過程中從 Nova、Neutron 到 Cinder、Kolla,Swift、Trove 等,從 GlusterFS 到 Ceph 的演進。
在整個過程中,主要針對不同的 OpenStack 使用場景進行了大量的測試以及功能的改進,再針對具體的客戶需求進行功能增加,包括多重服務(wù)的三節(jié)點的 HA 等。
成功部署 OpenStack 的經(jīng)驗之談
OpenStack 的成長以及整個云機構(gòu)功能的演進都離不開客戶的需求,有了不同的需求,才可以將整個云做的更加完善。
經(jīng)驗之談:前期做好和客戶的技術(shù)交流,以及需求收集。獲取客戶對于云平臺的期望,根據(jù)技術(shù)發(fā)展和 OpenStack 組件的成熟度,逐步構(gòu)建。
確定客戶的業(yè)務(wù)形態(tài),以及業(yè)務(wù)規(guī)模和后續(xù)的增長量。
根據(jù)不同的需求和業(yè)務(wù)形態(tài)采用不同的網(wǎng)絡(luò)模式,以及增長量等判斷分離以及超融合的架構(gòu)模型。
教訓(xùn)之談:OpenStack 的升級是一件大事,需要嚴(yán)謹(jǐn)?shù)臏y試。
OpenStack 是開源軟件,不可避免的會出現(xiàn) Bug 等,要積極的與社區(qū)進行結(jié)合,完善整個過程。
OpenStack 核心組件目前比較成熟,但更多的衍生組件還不是很完善,希望 OpenStack 能不斷的產(chǎn)生更好更有用的功能,將整個 OpenStack 的框架做的越來越好,降低 OpenStack 的復(fù)雜度,提升適應(yīng)性。