1. 程式人生 > >大海航行靠舵手 華為雲靠什麼征服K8S?

大海航行靠舵手 華為雲靠什麼征服K8S?

Kubernetes
是Google開源的容器叢集管理系統或者稱為分散式作業系統。它構建在Docker技術之上,為容器化的應用提供資源排程、部署執行、服務發現、擴容縮容等整一套功能,本質上可看作是基於容器技術的mini-PaaS平臺。

Kubernetes的目標
是讓開發者可以像管理產品一樣管理服務,同時提高資源的利用率,讓開發者更關注在應用開發本身,高可用的事情交給Kubernetes。

實際上,Kubernetes的英文原意
是指用來操縱和控制船舶航向的船舵,這也是為什麼Kubernetes的Logo是一張船舵圖片的原因。

谷歌之所以選擇這樣的圖示作為Logo,是希望Kubernetes能夠像掌控船舵的舵手一樣,成為容器編排航行道路上的引領者。而Kubernetes也並沒有令谷歌失望,僅僅經過兩年多的發展,已經快速成長為容器編排市場的主導者,業界公認的容器編排與排程的事實標準,每一項技術創新都牽引著容器技術的突破和發展,而Kubernetes也迅速成為IT技術人員的最愛,大家都親切的稱它為K8S。

不過
就像眾多原生雲技術一樣,Kubernetes也是由國外企業開發出來的一款產品,其話語權自然應該是牢牢掌握在外國廠商手裡。

但是
早在2017年的Kubernetes 社群首屆指導委員會 (Steering Committee) 競選中,華為就從 15 家候選廠商 / 組織 (共 20 名候選人) 的激烈角逐中脫穎而出,獲得 Kubernetes 指導委員會席位,華為雲 PaaS 服務產品部技術副總裁 Quinton Hoole 更是成功當選指導委員會委員。而這是中國廠商首次在容器開源領域中獲得的技術委員會席位,也表明了Kubernetes對華為在容器開源領域長期貢獻的高度認可。並且雲原生計算基金會(Cloud Native Computing Foundation,CNCF)也宣佈華為成為全球首批Kubernetes認證服務提供商(Kubernetes Certified Service Providers ,KCSPs)。這意味著華為在開源雲原生領域的貢獻和經驗也受到了認可。我們在為華為雲感到高興和敬佩同時,不禁要問,華為雲靠什麼征服了Kubernetes?
主要是以下三點
華為獲得 Kubernetes 指導委員會席位

一靠積極貢獻

華為是Kubernetes最早的採用者之一。從2014年起就開始參與K8S社群,在2015年,華為就立足於Kubernetes構建完整的PaaS產品(即‘FusionStage’),並且為此投入重注,而當時Kubernetes才剛剛完成 beta 測試。

而正是如此早的涉入Kubernetes,使得華為有足夠的時間發現並解決Kubernetes存在的一些問題和不足。也正因為如此,華為才能為Kubernetes社群持續貢獻。

目前,華為擁有5個Maintainer,多名工程師投入CNCF基金會專案,向社群貢獻Patch 1800+,在對Kubernetes社群的貢獻中,華為整體貢獻在國內廠商中位居第一;從Commits維度看,華為貢獻國內排名第一,全球排名第五(

資料統計來源cncf.biterg.io)。在Kubernetes中參與排程、多叢集聯邦、架構、安全等SIG的貢獻。除此之外,在Kubernetes SIG(Special Interest Groups, 負責子領域路標制定及技術方向決策)及Working Group(主導跨SIG大特性方案設計)中,華為也積極參與Federation、Architecture、Auth等10餘個SIG及Resource Management、Container Policy等3個Working Group方案討論及設計。同時華為也是首批獲得KSCPs(Kubernetes認證服務提供商)資質的廠商之一。

二靠持續創新

然而,僅僅憑藉先發優勢是不夠的,只有在此基礎上持續創新,並不斷回饋社群,才能最終獲得Kubernetes 社群的認可。

CNCF基金會提供的雲原生技術全景圖將服務劃分為七大類別,包括:開發與整合、編排與管理、執行時、資源與映象、雲基礎設施層、平臺層和監控分析。而華為云云原生服務棧目前已覆蓋全部七大類別,包括PaaS類服務:雲容器引擎CCE,微服務引擎CSE、應用效能管理服務APM、函式服務FunctionStage、應用編排服務AOS、映象倉庫服務SWR、一站式微服務應用管理ServiceStage、API閘道器服務、企業級中介軟體和軟體開發雲等。

其中, CCE是一個開放的原生Kubernetes平臺,是華為雲在創新方面傑出表現的一個代表。2017年11月13日,雲原生計算基金會 (Cloud Native Computing Foundation, CNCF) 宣佈華為雲 的 雲容器引擎 CCE (Cloud Container Engine) 正式通過 “Kubernetes軟體一致性認證”。而本次認證是繼華為雲獲得全球首批Kubernetes認證服務提供商(KCSPs)資格後,華為雲在開源雲原生領域的努力和貢獻再一次得到認可和肯定,也意味著華為雲在PaaS服務領域的領先地位得到進一步鞏固。

華為雲 CCE 能夠快速跟進K8S社群版本,基本上是三個月會更新一次版本。在Kubernetes商用增強方面,CCE聚焦於K8S叢集的自動化配置、部署上線的整個流程。社群原生工具不支援管理面HA、多叢集管理較薄弱,未考慮公有云複雜和大規模場景;CCE也支援多種異構資源,包括虛機、X86裸金屬和ARM伺服器等。同時,CCE結合客戶應用場景,提供一站式DevOps、靈活自動彈性伸縮、豐富的應用排程特性等。

而新上線的華為雲CCE 2.0更是在以下三方面進行了大膽的創新:

① 裸金屬容器。華為結合自身硬體與作業系統優勢,推出國內業界首發的物理機容器部署特性,通過OS核心級加強,保證了在裸金屬物理伺服器上執行的容器足夠安全、可靠、穩定,完美支援對高效能有要求的AI、深度學習、遊戲等行業。

② iCAN容器網路。華為公司有深厚的網路技術積累,網路可以做到協議層的優化。Flannel是K8S原生所帶的網路外掛,對比而言華為iCAN效能可以提升20%以上。iCAN網路也可以做到靈活配置,K8S社群的網路多租隔離也是華為在主要貢獻。

③ 支援有狀態應用。CCE對接到華為雲上多種儲存,包括物件儲存、塊儲存等,資料也可以儲存到開箱即用的容器化資料類中介軟體,具備持久化儲存能力。

華為雲 CCE 正是依靠這樣的創新,將自身數十年的硬體與網路積累與容器技術相結合,在雲原生領域不斷的探索和創新,一步步的在Kubernetes 社群得到認可和肯定。

三靠豐富實踐

作為 Kubernetes最早的採用者及全球首批Kubernetes認證服務提供商,華為雲積極將Kubernetes實踐能力與深度積累應用於多個業務場景,推出雲容器引擎CCE。

華為雲還基於企業應用上雲實踐的深度理解,總結了“三類場景,七種方案”:傳統業務快速上雲->企業業務SaaS化->企業業務輕資產化敏捷創新。涵蓋了從企業業務上雲到業務輕資產化運作與NoOps的全雲化之路。三類場景是一個遞進的關係:首先是傳統業務如何快速上雲,可以自動並簡化運維,持續快速創新。其次是企業業務上雲後的SaaS化,解決多租和服務化問題,從賣license到賣服務的轉變。最後是企業業務進一步輕資產化,核心是更敏捷Serverless技術,強調業務輕資產化運作、NoOps和更細粒度的按需使用。

而這種豐富的應用實踐,也是華為雲最終獲得Kubernetes社群認可的重要原因之一。

今年開源社群 Apache 軟體基金會孵化器專案管理委員會 ASF IPMC宣佈,源自華為雲企業級微服務引擎CSE的開源專案 ServiceComb全票通過進入 Apache 孵化器。

隨著越來越多像華為這樣的中國企業更多的參與到開源社群的建設中,我國開源技術發展的明天將會越來越美好。