牛繼賓 雲管理平臺CMP架構與功能設計
2024-09-16 06:37:11 1
2016年12月2-3日,業界最大的技術盛宴——ArchSummit全球架構師峰會[北京站]盛大開幕!在大會20多個熱門專題中,雲計算仍然備受矚目。不少雲企業與雲大咖亮相本次大會,這其中當然少不了致力於雲計算管理平臺系統軟體研發、雲系統構建、雲計算行業解決方案提供及雲運營服務的創新型科技公司北京天雲融創軟體技術有限公司(以下簡稱:天雲軟體)。
在大會上,天雲軟體技術總監牛繼賓不僅為大家重點介紹了天雲軟體核心產品——雲管理平臺的架構與功能設計,也對雲管理平臺未來的定位表達了自己的觀點。
牛繼賓,天雲軟體技術總監,於2013年加入天雲軟體。曾任職於IBM和VMware,分別負責小型機虛擬化相關工作與X86相關的虛擬化工作。長期研究雲計算相關技術,具有豐富的行業經驗。
首先,牛繼賓告訴我們何為雲管理平臺(CMP)。
牛繼賓將其總結為兩點:第一是管理公有雲、私有雲形成混合雲;第二就是自服務、鏡像的劃分、計量計費、負載的優化等。總的來說雲管理平臺是幫助企業在建設雲的過程中讓資源好管、好用、好控的重要載體,是雲計算服務與技術交付的關鍵一環。
Gartner對雲管理平臺的具體定義
那麼雲管理平臺與開源技術OpenStack有何區別呢?牛繼賓表示,根據目前天雲軟體自己的定義以及市場上的反饋來看,雲管理平臺是更廣的範圍。比如可以把OpenStack看作是雲管理平臺下屬的資源模塊,雲管理平臺可以管理多個不同版本的OpenStack。
牛繼賓強調,雲管理平臺在雲計算體系中的地位是承上啟下的。雲計算最終交付給用戶的是一個一個服務。而怎麼交付給用戶?正是雲管理平臺將資源管理起來,通過運營和服務界面把服務提供給用戶。這是整體的定位,是承上啟下的。
雲管理平臺的功能架構設計
首先,牛繼賓為我們展示了設計CMP1.0時第一版的架構,並為我們重點介紹了資源管理系統的設計思路。
天雲軟體CMP1.0時第一版的架構
資源管理系統
資源管理系統包括物理機管理、存儲管理、網絡管理、混合雲管理及多數據中心管理。
一、物理機管理。目前是基於IPMI的實現,可以做物理機的分配、自動安裝、自動服務提供。跟虛擬化的區別就是物理機的分配單位是一臺一臺的物理機,虛擬化的分配單位可以在物理機上做更小的切分。
二、存儲管理。牛繼賓說,天雲軟體在推薦解決方案時也是逐漸擴大分布式存儲使用範圍,但是它的核心交易系統裡面還是有問題,尤其是IOE延遲可靠性不能解決的話,很難做大量推廣。
三、網絡管理。我們經常介紹SDN的管理,除此之外還有路由、交換機、防火牆,這塊的管理需要在上面自動劃分網絡服務,劃分一個VPC或者劃分一個子網,需要通過網絡管理模塊IPI做對接和呈現。
四、混合雲管理。由於公有雲的CDN、接入等優勢,大部分用戶往往在用了一部分私有雲資源承擔它的核心業務系統和數據運營後,還會將部分網際網路業務,放在公有雲上。這部分資產需要通過雲管理平臺統一做對接。對接完成之後還有一個很重要的功能就是,上層的應用需要同時使用公有雲跟私有雲的資源,需要雲管理平臺去做集群的統一調度,這是混合雲管理的一個目標。
五、多數據中心管理。公有雲往往會在全國部署多個數據中心,這就涉及到一個雲管理平臺對多個數據中心的管理。比如說數據中心裡把OpenStack作為一個資源池模塊,最終是一個雲管理平臺去做整體平臺的運營和服務。
運營管理系統
運營管理系統最終目標就是將資源管理系統、虛擬管理系統管理出來的資源運營成為一種服務。比如說服務目錄就是將資源發布成雲計算產品,用戶申請一個虛擬機、一塊存儲空間,而怎麼做計量計費?怎麼給用戶發布出去?這是運營管理系統的目標。
虛擬化管理系統
虛擬化管理系統也可以看作資源管理的一個模塊,之所以把它拆分出來,因為它是比較核心的模塊,需要對它做更精細的設計。牛繼賓表示,天雲軟體曾統計過電信運營商、銀行等領域,發現市場上80%以上的用戶通過VMware實現虛擬化。
傳統應用雲化改造對雲管理平臺功能設計的新需求
第一、Web接入無狀態化。
第二、App層微服務化。
第三、數據分布式部署,數據種類越來越多,需要在SQL、NoSQL方面引入開源解決方案。
第四、數據平臺化,應用與數據分離,應用微服務化、數據分布式平臺化。
第五、聯機處理分析開源化,包括數據計算引擎開源化、數據集市開源化、ETL開源化。
應用雲化與應用支撐對CMP帶來的需求與功能升級
一、CMP需支持彈性伸縮。
二、CMP需引入微服務的管理與支撐框架,來解決微服務管理的問題。
三、應用上雲以後,需要對產生的監控數據做更多的存儲與分析。
四、需支持大數據類、開源資料庫類等開源組件對接與管理。
根據以上需求,牛繼賓表示,天雲軟體做了以下相應措施:第一是CMP支持彈性伸縮;第二是資源管理系統引入了微服務的管理;第三是對開源組件的支持,引入了Docker+Kubernetes。
具體每一塊的設計過程如下:
第一、虛擬機的編排過程。這需要引擎,要可以做應用設計,設計完之後要映射到實體,實體就是運行環境,最後是任務管理。所以平臺已經設計完成之後它會把應用逐步的映射到機器上做編排之後的運行。
第二、虛擬機彈性伸縮。監控流量狀態,如果發現從一千到一萬的用戶增量,系統會自動擴展伺服器。如果是分布式檢索,系統會檢索,交易量變多會逐步擴展處理數據的能力。
第三、微服務治理模塊。包括服務註冊、服務發現、服務降級、服務調度、服務配置。
第四、開源組件管理與彈性計算。牛繼賓透露,這塊是用Kubernetes實現的,是支撐應用逐漸雲化引入對開源的需求。
第五、用戶數據中心裡積累了足夠的數據之後,需要去做數據歷史趨勢的分析。這塊對用戶很有價值。牛繼賓表示,天雲軟體一開始用Hadoop實現,現在逐步轉到Spark上實現。也實現了預測、回歸人工智慧算法的學習。
容器與微服務化對雲管理平臺新的架構設計的支撐
左側是原先1.0架構,右側為微服務的系統架構
牛繼賓告訴大家,原先1.0的部署架構,實際就是用戶服務、運營服務。運營服務裡面有訂單管理、計費管理、AZ配置。所有業務都是耦合的,如果要升級一個功能,整個服務都要升級。這是一個不利的點。
而微服務的系統架構,主要是兩個分離:第一個是客戶交互與業務邏輯分離,即前臺js跟後臺java分離;第二個是應用與服務分離,在服務管理基礎上,把這些服務都管理起來,前臺對服務的使用通過微服務管理平臺發現相應的服務,導流到各個微服務節點上。
總體來說,微服務化之後不僅增強了對服務的能力,更是大大提高了效率,加快了產品迭代速度與業務可靠性。
雲管理平臺未來的定位展望
在演講的最後,牛繼賓還給大家分享了他對雲管理平臺未來的展望:
第一是精細化管理,管理能力更強。SDS、SDN等的管理,打通編排的所有環節。
第二是計費的細化。我們需要去做基礎設施更細的計費,以前按天按月,現在按時按分。
第三是服務+應用的一體化管控。從用戶系統的接入到對雲服務組件的調用,全流程的管控分析體系,包括對於微服務的雲上管控。
第四是混合雲管理。公有雲是不可阻擋的趨勢,私有雲和公有雲的混合管理也是一個方向。
第五是行業雲和社區雲的建設與支撐。如果你抓住一種特定的行業或者特定的應用場景,比如說渲染雲、高性能計算雲等,它的盈利點還是比較多的。
第六是大規模節點管理時,考慮結合AI。針對資源池的運行數據進行分析與運營,形成運維知識的深度學習。