《云原生產業聯盟:云原生發展白皮書(53頁).pdf》由會員分享,可在線閱讀,更多相關《云原生產業聯盟:云原生發展白皮書(53頁).pdf(53頁珍藏版)》請在三個皮匠報告上搜索。
1、 云云原生原生發展白皮書發展白皮書 (20202020 年)年) 云云原生原生產業聯盟產業聯盟 Cloud Native Industry AllianceCloud Native Industry Alliance,CNIACNIA 20202020 年年 7 7 月月 版權聲明版權聲明 本白皮書本白皮書版權屬于版權屬于云原生產業聯盟云原生產業聯盟,并受法律保護,并受法律保護。轉載、摘編轉載、摘編 或利用其它方式使用或利用其它方式使用本白皮書文字或者觀點的,應本白皮書文字或者觀點的,應注明注明“來源:來源:云原云原 生生產業聯盟產業聯盟”。違反上述聲明者,本。違反上述聲明者,本院院將追究其相
2、關法律責任。將追究其相關法律責任。 編寫說明編寫說明: 牽頭編寫單位:牽頭編寫單位:中國信息通信研究院 參與編寫單位:參與編寫單位:阿里云計算有限公司、百度云計算技術(北京)有限公司、北京 凌云雀科技有限公司、北京金山云網絡技術有限公司、華為技術有限公司、杭州 諧云科技有限公司、上海道客網絡科技有限公司、蘇州博納訊動軟件有限公司、 騰訊云計算(北京)有限公司、浙江螞蟻小微金融服務集團。 編寫組成員:編寫組成員: 中國信息通信研究院:栗蔚、陳屹力、劉如明、閆丹、鄭立 阿里云計算有限公司:易立、李小平、朱松、李鵬、石兵、闞俊寶、王炳燊、黃 玉奇、張大江 百度云計算技術(北京)有限公司:周岳騫、曹劍
3、 北京凌云雀科技有限公司:劉嘉偉 北京金山云網絡技術有限公司:趙琦 華為技術有限公司:劉赫偉、馬達、張琦、王澤鋒、趙華 杭州諧云科技有限公司:王翱宇、才振功、方佳偉 上海道客網絡科技有限公司:郭峰 蘇州博納訊動軟件有限公司:傘亞鵬、劉欣雨 騰訊云計算(北京)有限公司:羅茂政、鄒輝、韓欣、任秀森、陳一葦、王玉君 浙江螞蟻小微金融服務集團:宋凈超 注:注:編寫單位按首字母順序排列 前前 言言 當前全球的數字化浪潮逐步加深,云計算成為當今信息化發展 的重要基礎設施,云原生在數字化浪潮中的角色逐步提升,成為業 務創新發展的重要驅動力。 本白皮書是繼云原生技術實踐白皮書(2019)之后,針對 國內云原生
4、產業發展現狀進行梳理,從云原生概念到新技術發展特 征,以及到云原生支撐行業領域發展,最后再總結云原生未來發展 新趨勢。 1 目目 錄錄 一、 新機遇下的云原生 . 2 (一) 重新認識云原生 . 2 (二) “新基建”開啟云原生的新篇章 . 3 二、 云原生產業規模持續看漲,生態版圖快速擴張 . 5 (一) 云原生產業規模分析 . 5 (二) 云原生產業生態分析 . 6 (三) 云原生技術生態分析 . 9 三、 云原生熱點技術井噴式爆發,細分領域發展趨于多元 . 10 (一) 云原生底層技術 . 10 (二) 云原生編排及管理 . 20 (三) 云原生應用 . 32 (四) 云原生安全 . 3
5、5 四、 云原生價值凸顯,加速行業創新應用 . 41 (一) 生物醫療 . 41 (二) 智慧交通 . 42 (三) 工業互聯網 . 44 (四) 物流 . 46 五、 云原生發展趨勢 . 47 (一) Kubernetes 編排統一化,編排對象不斷擴展延伸 . 47 (二) 服務治理 Mesh 化,加速傳統應用轉型 . 48 (三) 應用服務 Serverless 化,更加聚焦業務的核心價值 . 49 (四) 從資源云化到業務云化,最終趨于全面云原生化 . 49 2 一、 新機遇下的云原生 () 重新認識云原 云原生成為近幾年云計算領域炙手可熱的話題, 但業界普遍存在 對云原生概念理解不清晰
6、、內涵認知不統一的問題,為了更好的推廣 云原生理念, 信通院針對云原生概念進行重新梳理, 重點從產業效用、 技術特征和應用價值三個方面進行深入剖析, 以幫助不同領域的受眾 群體更好的理解云原生, 進一步推進國內的云原生產業發展和落地實 踐。 從產業效用方面來看,云原生極大的釋放了云的紅利,云原生充 分繼承云的設計思想,未來應用將更多基于云上進行本土應用開發, 即云原生應用更加適合云的架構, 而云計算也為云原生應用提供較好 的基礎支撐,如資源隔離、分布式、高可用等,云原生最大程度發揮 了云的優勢。云計算的拐點已至,云原生成為驅動業務增長的重要引 擎。云計算的發展已進入成熟期,云原生作為新型基礎設
7、施支撐數字 化轉型的重要支撐技術,逐漸在人工智能、大數據、邊緣計算、5G 等 新興領域嶄露頭角,成為驅動數字基礎設施的強大引擎。伴隨全行業 上云的逐步深化,企業云原生化轉型進程將進一步加速。 從技術特征方面來看,云原生技術架構具備以下典型特征:極致 的彈性能力,不同于虛擬機分鐘級的彈性響應,以容器技術為基礎的 云原生技術架構可實現秒級甚至毫秒級的彈性響應; 服務自治故障自 愈能力,基于云原生技術棧構建的平臺具有高度自動化的分發調度調 3 諧機制,可實現應用故障的自動摘除與重構,具有極強的自愈能力及 隨意處置性;大規??蓮椭颇芰?,可實現跨區域、跨平臺甚至跨服務 商的規?;瘡椭撇渴鹉芰?。 從應用價
8、值方面來看,異構資源標準化,容器技術有效解決了異 構環境的部署一致性問題,促進了資源的標準化,為服務化、自動化 提供了基礎;加速數字基礎設施升級解放生產力,降低用戶數字化技 術的使用門檻,提高資源的復合利用率,變革研發運營的生產方式, 打破組織壁壘,實現研發與運維的跨域協同,提升交付效率,解放生 產力;提升業務應用的迭代速度,賦能業務創新。云原生技術實現了 應用的敏捷開發,大幅提升交付速度,降低業務試錯成本,高效響應 用戶需求,增強用戶體驗加速業務創新。 云原生是面向云應用設計的一種思想理念, 充分發揮云效能的最 佳實踐路徑,幫助企業構建彈性可靠、松耦合、易管理可觀測的應用 系統,提升交付效率
9、,降低運維復雜度。代表技術包括不可變基礎設 施、服務網格、聲明式 API 及 Serverless 等。 () “新基建”開啟云原的新篇章 數字“新基建”帶來云計算的空前機遇。2020 年的新冠疫情已經 給中國經濟發展帶來較大沖擊,經濟下行壓力增大,然而數字經濟展 現出強大的抗壓能力,極大程度上對沖了疫情影響。后疫情時代隨著 企業全面復工復產的穩步推進,“上云用數賦智” 已經成為企業共識, 企業上云進入攻堅期,數字化轉型進程顯著提速。同時為提振國內經 4 濟,舒緩疫情壓力,中央加緊規劃部署“新基建”相關工作,高頻發 布相關政策,截止 3 月 6 日各省公布的 2020 年重點項目投資計劃約 4
10、0 萬億元,其中“新基建”成重點方向??涨暗氖袌鲂枨蟠碳ず驼?利好引爆數字技術的資本市場, 以云計算為核心的新一代數字技術迎 來新的發展機遇。 后云計算時代的需求從資源優化轉向效能提升。 數字化轉型大潮 下的企業面臨著新舊商業形態的劇變,顛覆和重構時刻都在發生。更 加快速的感知用戶側的需求變化并做出調整, 才能在競爭中持續積累 優勢。業務的敏捷、彈性、個性化和智能化需求凸顯,應用的交付模 式也發生深刻變化,輕量化、松耦合、靈活彈性的敏捷技術架構成為 主要方向。將支撐業務應用的通用技術模塊化、系統化逐漸下沉至云 平臺,低心智負擔且功能豐富的應用支撐能力成為云的突出需求,云 計算服務重心逐漸上移
11、。 云原生成為下一代云計算的技術“內核”大幅提升用云效能。云 原生技術棧統一的標準化交付能力大幅提升云端效能。 服務架構標準 統一,應用微服務化開發,服務之間使用標準的 API 接口進行通信。 松耦合架構會減輕因需求變更導致的系統迭代成本, 為多團隊并行開 發提供基礎,并加快交付速度;交付標準統一,標準容器化的打包方 式實現了真正的應用可移植性,不在受限于特定的基礎架構環境。并 且容器技術進程級的資源切分粒度,也會降低系統的資源開銷;研運 過程標準統一,通過引入 DevOps 理念強化軟件研發運營全周期的管 理,從軟件需求到生產運維的全流程改進和優化,結合統一工具鏈, 5 實現文化、 流程、
12、工具的一致性, 降低應用軟件高頻發布帶來的風險, 提升軟件產品質量。 二、 云原生產業規模持續看漲,生態版圖快速擴張 () 云原產業規模分析 2019 年我國公有云 PaaS 市場規模繼續保持高速增長,市場規模 為 41.9 億元,同比增長 92.4%。私有云市場規模為 645.2 億元,同 比增長22.8% 1。 云原生產業作為現階段云計算PaaS市場的重要支點, 也延續了高速增長態勢, 根據中國信息通信研究院相關調研數據顯示, 2019 年我國云原生產業市場規模已達 350.2 2億元。數字經濟大潮下 傳統行業的數字化轉型成為云原生產業發展的強勁驅動力,“新基建” 帶來的萬億級資本投入,
13、也將在未來幾年推動云原生產業的發展邁向 新階段。 數據來源:中國信息通信研究院,2020 年 5 月 圖 1 中國公有云細分市場規模及增速 1 數據來源:中國信息通信研究院云計算發展白皮書(2020) 2 數據來源:中國信息通信研究院中國云原生用戶調查報告 2020 42.0 87.4 148.7 270.4 452.6 5.2 7.6 11.6 21.8 41.9 55.3 75.1 104.5 145.2 194.8 0 200 400 600 800 20152016201720182019 SaaS市場規模 PaaS市場規模 IaaS市場規模 6 我國云原生產業發展已呈現幾個明顯特征:
14、 大中型互聯網企業主 導云原生產業發展,技術應用快速向垂直行業擴展。超 6 成的云原生 技術用戶為互聯網企業,其中千人以上企業規模的企業占比高達 35.11% 3, 互聯網頭部企業在云原生產業發展中舉足輕重。 同時金融、 制造、服務業、政務、電信等垂直行業的應用占比有所攀升,行業數 字化轉型的帶動效應初步顯現; 云原生技術在傳統領域尚處發展期IT 技術投入占比較低,技術研發是資金流出的主要方向。80%的調研企 業在云原生技術領域的投入不足整體 IT 投入的 30% 4,云原生架構尚 未成為企業數字基礎設施建設的核心支柱, 有近 7 成的用戶表示投入 的資金主要用于相關技術的研發; 云原生架構采
15、納用戶的生產集群以 中小型規模為主,規?;瘧萌源嬖谳^高技術門檻。云原生技術棧在 規?;瘧脮r的安全性、 連續性及性能等因素成為用戶側落地的主要 顧慮(調查占比為 61%),同時陡峭的學習曲線以及與現有平臺的整 合演進也成為用戶搖擺的重要因素(調查占比分別為 47%和 46% 5)。 () 云原產業態分析 2019 年 Gartner 在容器報告中預測,到 2020 年將有 50%的傳統 老舊應用被以云原生化的方式改造,到 2022 年將有 75%的全球化企 業將在生產中使用云原生的容器化應用。云原生已成為新常態,容器 化需求從行業頭部企業下沉到中小規模企業, 從領先企業嘗鮮變為主 3 數據來
16、源:中國信息通信研究院中國云原生用戶調查報告 2020 4 數據來源:中國信息通信研究院中國云原生用戶調查報告 2020 5 數據來源:中國信息通信研究院中國云原生用戶調查報告 2020 7 流企業必備。 隨業務的發展, 服務器規模相較去年卻有了一定的縮減, 這一定程度上是容器化帶來的效果。K8S 擁有極高的擴展性、自動化 和可伸縮性,通過容器化改造,可以最大化地利用服務器資源,按需 使用,有效節約服務器成本。 在降本增效的目標下, 加快數字化業務發展成為傳統企業的必然 選擇。由于業務場景、用戶習慣迅速變化,許多行業數字化業務出現 急速增長。數字化業務意味著大刀闊斧的企業敏捷文化,只有借助更
17、加快速、靈活的開發和交付模式,才能滿足市場快速變化的需求。 通過使用容器、Kubernetes、DevOps、微服務等這些年輕且先進 的技術,能夠大大加快軟件開發迭代速度,提升應用架構敏捷度,提 高 IT 資源的彈性和可用性,幫助企業客戶加速實現價值。對于大部 分傳統企業而言,云原生 PaaS 平臺是未來企業業務的核心競爭力的 底層支撐,而非核心競爭力本身所在。企業應該將更多的人員、精力 和成本投入到與業務相關的研發上, 而不是重復造底層基礎設施的輪 子,造成重復性浪費投資。對于云原生生態中的軟件開發商、行業解 決方案商等各個領域的合作伙伴也是如此。 最終用戶是推動產業發展的原生需求, 不同的
18、企業在基礎設施和 應用架構方面都有自身的個性化差異、任務復雜性等挑戰。有的企業 只關注云原生中的某一項技術,解決某個切膚痛點。有的企業則希望 同時考慮完整體系化的解決方案,追求云計算技術生產力的最大化。 每家企業的云原生之路都應該是個性化、 量身定制, 而且循序漸進的。 中國率先控制住疫情為國內企業在數字化轉型方面爭取到窗口期, 數 8 字化轉型在疫情和后疫情時期越發重要。 企業上云已經成為一種必然 趨勢。疫情之下,雖然各行各業都受到了不同程度的影響,但那些數 字化能力健全的企業抵御風險的能力更強。 生態伙伴是聯接產業供需的重要紐帶,最終用戶的 IT 應用開發 形式(自研或和第三方技術廠商合作
19、)決定云原生生態的格局。除互 聯網企業外,對于更多中大型企業來說,經過仔細調研會發現云原生 技術難度和自研成本很高,大部分企業需要和專業技術廠商合作,共 同落地云原生技術,打造技術中臺。專業的技術廠商能夠提供完善的 咨詢服務、解決方案和方法論。同時云原生技術的部署也一定程度上 伴隨著對企業 IT 文化、 流程的變革, 也需要技術廠商和企業的配合。 傳統軟件服務體系,紛紛與云原生技術對齊,構成云原生生態合作, 其中典型代表有: 獨立軟件開發商,長期聚焦某些行業或者垂直領域,在技術、產 品和客戶方面都有深厚積累的企業, 有能力依托云原生核心技術和平 臺優勢,開發可規模推廣的行業產品或解決方案。 軟
20、件集成商,具備系統集成資質,有一定的客戶基礎和方案整合 能力,為企業提供優質的云原生解決方案和服務。 IT 服務與交付廠商, 有企業信息化實施、 服務和行業客戶交付能 力,通過參與云原生產品解決方案完善、項目咨詢、項目實施、項目 交付等工作,為企業提供服務。 9 (三) 云原技術態分析 云原生的理念經過幾年發展,不斷豐富、落地、實踐,云原生已 經渡過了概念普及階段,進入了快速發展期。云原生技術以其高效穩 定、快速響應的特點驅動引領企業的業務發展,幫助企業構建更加適 用于云上的應用服務。 過去幾年中, 云原生關鍵技術正在被廣泛采納, 如 43.9% 6的用戶已在生產環境中采納容器技術, 超過七成
21、的用戶已經 或計劃使用微服務架構進行業務開發部署等, 這使得用戶對云原生技 術的認知和使用進入新的階段, 技術生態也在快速的更迭, 特征明顯。 圖 2 CNIA 中國云原生技術生態圖景 云原生技術生態日趨完善,細分項目不斷涌現。相較于早年的云 原生技術生態主要集中在容器、微服務、DevOps 等技術領域,現如今 的技術生態已擴展至底層技術、編排及管理技術、安全技術、監測分 析技術以及場景化應用等眾多分支, 初步形成了支撐應用云原生化構 建的全生命周期技術鏈。同時細分領域的技術也趨于多元化發展,如 6 數據來源:中國信息通信研究院中國云原生用戶調查報告 2020 10 在容器技術領域,從 doc
22、ker 這種通用場景的容器技術逐漸演進出安 全容器、邊緣容器、serverless 容器、裸金屬容器等多種技術形態。 開源技術主導生態,本土力量日益凸顯?!败浖捶铡钡母拍?逐漸深入人心,在云計算服務化轉型的大趨勢下,軟件開源的經營模 式逐漸成為主流,開源的價值也被國內外的公司所深刻認同:開源技 術也有助于構建高質量的開發人員社區, 實現全球精英人才的協同貢 獻,加速技術創新的覆蓋率指數級增長。鑒于此,全球云計算廠商都 在積極布局云原生開源項目,加速企業的技術競爭力。我國云原生技 術領域也涌現出大量的國內公司主導的優質開源項目, 本土開源力量 在支撐國內需求的基礎上開始反哺國際社區, 如騰訊
23、開源的微服務框 架 TARS 貢獻給了 Linux 基金會、阿里開源的分布式服務框架 Dubbo 貢獻給了 Apache 基金會、 容器鏡像倉庫項目 Harbor 已經從 CNCF (云 原生計算基金會)畢業深度應用于企業生產。 三、 云原生熱點技術井噴式爆發,細分領域發展趨于多元 () 云原底層技術 1. 云原服務器:兼顧性能與管理的新算載體 傳統 IaaS 層計算產品形態主要分為裸金屬物理機和云服務器兩 大類。兩者在計算性能,管理運維方面各有優勢,又都存在不足。云 原生服務器則兼顧了物理機的性能優勢、 完整特性和云服務器的管理 便利,進一步解決客戶對高性能計算的強需求。 11 云原生服務器
24、是指基于專用硬件、芯片,利用軟硬融合虛擬化等 技術將負載或任務轉移,提升資源使用效率、用戶體驗和整體性能的 新型服務器。云原生服務器采用軟硬一體的硬件卸載和加速技術,通 過專用的硬件,將原來在物理機上運行的網絡、磁盤、管控等負載, 完全下沉到定制的硬件上, 物理服務器上的資源可以被最大程度的釋 放出來,從而提升資源的使用效率,降低成本。同時,通過使用 ASIC 或者 FPGA 等專用芯片來處理存儲、網絡等任務,可以使用較低的成 本將性能提升數倍甚至一兩個數量級。此外,軟硬融合的虛擬化技術 能夠支持裸金屬形態的計算產品, 使其同時具備虛擬機的使用體驗和 物理機的強大性能。 云原生服務器不僅具有虛
25、擬機的靈活性和彈性, 同時具備物理機 的一切特性和優勢,因此也具備再次虛擬化的能力,而不用擔心嵌套 虛擬化帶來的性能開銷。 2. 云原存儲:加速云存儲的云原化改造 云原生存儲是云原生應用場景下的存儲解決方案, 存儲形態可為 塊、對象、文件、鍵值存儲等。云原生存儲可以以“聲明”的形式被 云原生應用申請使用,支持容器編排層對接存儲控制面,完成對存儲 資源的生命周期管理。編排層與存儲的交互架構如下圖,通過控制面 接口直接對接到編排層(下圖中 A 所示)為應用負載提供存儲資源的 動態供應能力,通過 API 框架或者工具間接對接到編排層(下圖中 B 所示),提供數據存儲的一些高階能力,如數據保護,數據遷
26、移等。 12 圖 3 云原生編排系統與存儲交互示意圖 Kubernetes 對云存儲的原生調度方案難以滿足云原生環境下企 業核心/智能應用的部署需求。云原生技術已被企業廣泛采用,應用 容器化運行的比例大幅攀升, 使用云原生存儲來部署生產可用的有狀 態應用正呈現加速上升趨勢。越來越多的互聯網、數據庫、消息隊列 等企業有狀態核心應用,逐步遷移到云原生平臺,對不同的云上塊存 儲的性能在時延和吞吐,以及穩定性提出新的要求。隨著云原生應用 對可遷移性,擴展性和動態特性的需求,對云原生環境下的存儲也提 出了相應的密度、速度、混合度的新要求,對云存儲基本能力之上又 提出了在效率,彈性,自治,穩定,應用低耦合
27、,GuestOS 優化,安 全等方面的訴求。 云原生存儲在數據、控制雙平面提升存儲使用效率與安全性。云 原生存儲是指通過整合多種云存儲形態,完整匹配 Kubernetes 環境 下的存儲聲明機制,提升存儲的質量、穩定性及安全等能力,以滿足 不同應用場景下的存儲使用需求的新型存儲解決方案。 當前主要有兩 種方式來構建云原生存儲能力: 13 一是對已有存儲系統的對接改造。 這種構建方法適用于已經具備 可用存儲系統的公有云或私有云環境, 通過標準的 CSI 接口來對接各 類存儲,通過完善聲明式接口和增強原有存儲系統能力(擴展性、性 能、安全性、穩定性等)來構建云原生存儲系統。這種構建方式可以 復用云
28、計算基礎設施,無需重復發明輪子。二是面向云原生場景設計 全新的存儲系統,云原生存儲系統通?;诰唧w平臺存儲層(塊或者 文件)再構建一層分布式存儲層,屏蔽了不同平臺的存儲層差異,提 高了應用部署的靈活性, 使存儲系統可以像云原生應用一樣能被部署 到任意平臺上。 圖 4 多場景下的云原生存儲選擇示意圖 3. 云原絡:面向用戶應用場景不斷演進 云原生網絡的基本目標是滿足云原生服務的網絡端點和服務間 的互通性、 安全性和負載均衡要求。 Kubernetes 已經成為容器編排的 事實標準,容器網絡也需與 Kubernetes 的調度機制相匹配。容器網 絡接口 CNI(Conteinre Network
29、Interface)是現行的網絡接口標準, CNI 接口只實現創建、刪除容器時的調用方法,其他所有的網絡能力 14 都交由網絡廠商實現增值服務, 這在一定程度上加速了網絡方案的繁 榮,但是給用戶的方案選型造成了較大困擾。大部分的用戶場景都是 基于網絡的通訊協議進行方案選擇,根據網絡協議的不同,可將網絡 方案分為路由模式、Overlay 和 L2 方案三種。 表 1 云原生網絡方案對比 路由模式路由模式 OverlayOverlay 模式模式 L L2 2 模式模式 優點優點 網絡性能高 支持 Kubernetes 原 生負載均衡和網絡策 略機制 符合傳統網絡的監管 要求 物理網絡無侵入 支持
30、Kubernetes 原 生負載均衡和網絡策 略機制 網絡性能高 可直接與 IaaS 網絡層通信,易 于遷移 符合傳統網絡的 監管要求 缺點缺點 大規模應用場景需要 交換機與 BGP 打通 存在封裝影響性能 排查問題難,需引入 額外排查工具 無法與傳統的網絡監 管模式兼容 網絡管理依賴于 物理網絡 大部分方案無法 復用 Kubernetes 的網絡優勢 實現技術實現技術 方案方案 Calico BGP Flannel Host Gateway Kube-router Contiv BGP Calico IPIP,VXLAN Flannel VXLAN, UDP WEAVE Canal SDN
31、方案 Lunix Bridge Macvlan SRIOV OVS Bridge Contiv Vlan Ovn-kubernetes 數據來源:中國信息通信研究院 自 CNI 標準發布到 2020 年,云原生網絡已經演進近 6 年時間。 也積累了大量的用戶落地案例和大規模的實踐案例。 未來對于云原生 15 網絡的演進,依舊會在用戶落地場景方向上深度演進??偨Y起來主要 是以下幾個趨勢: 大規模、復雜的互訪場景要求云原生網絡扁平化。隨著云原生技 術的普及,容器集群規??焖僭鲩L,跨集群、跨 VPC 互訪場景越來越 豐富,這要求容器端點具有與宿主節點相同的互通能力,容器和服務 具有獨立 VPC 的子
32、網地址,甚至具有獨立的直通網口,這樣在獲得更 高轉發性能、更低損耗的同時,兼顧更好的隔離性。通過在容器掛接 的網口配置安全組規則,能夠實現容器級別的微分段網絡管控策略。 但是, 容器端點規模和發放速度相對于現有 VPC 網絡規格存在數量級 的差距,規模擴展問題仍有待解決。 eBPF 等技術將有效改善容器網絡復雜鏈路的高延時問題。容器 網絡中大量依賴了 Linux 的網絡虛擬化的技術,例如 iptables、 bridge 等,這些復雜的鏈路導致網絡延時顯著增加。而在 Linux 新 版本內核中引入的 eBPF 7技術可以通過可編程的方式去簡化內核的網 絡轉發鏈路,通過把 XDP 程序注入到了網
33、卡驅動程序中,大幅度縮短 網絡處理鏈路,降低復雜度,提升了網絡的可靠性和性能,在未來會 有廣泛的應用。 網絡安全將成為云原生技術底座的重要組成部分, 平臺的安全問 題在所有的平臺演進和建設過程中一直扮演著非常重要, 但是不十分 緊急的角色,在容器安全建設上,大部分組織都是采取防守和被動姿 態。 但是本身在近幾年陸續爆出大量的基于容器平臺的安全隱患以及 7 eBPF:Extended Berkeley Packet Filter,Linux 內核中的一種報文過濾機制 16 在國內“護網行動”的大背景之下,容器安全已經成為云原生底座無 法繞開的一個問題, 容器網絡安全在整個底座安全里面扮演了非常重
34、 要的角色,也將成為之后的 CNI 網絡演進的方向和趨勢。 云原生網絡的規模擴展問題仍然有待解決。 容器網絡和 VPC 網絡 的扁平融合的趨勢之下, 容器端點規模和發放速度相對與現有 VPC 網 絡規格存在數量級的差距, 單節點的彈性網口密度和彈性擴容速度依 然不能滿足云原生工作負載的要求,規模擴展問題仍待解決。 4. 容器技術:從通用向多元化發展 (1) 安全容器 容器技術的采納率連年提升,已經開始進入企業的生產環境。以 Docker 為代表的普通容器通過 Namespaces 和 cGroups 實現的隔離, 共享內核的機制使得隔離性具有天然的缺陷無法根除, 在多租戶場景 下安全問題更加凸
35、顯: 內核 Bug 引發容器逃逸,操作系統內核漏洞、Docker 組件設計 缺陷、不當的配置等都會導致 Docker 容器發生逃逸。由于頻發的安 全及逃逸漏洞,一般在云環境中的容器應用不得不運行在虛擬機中, 以滿足多租戶安全隔離要求。而分配、管理、運維這些傳統虛擬機與 容器輕量、靈活、彈性的初衷相悖,同時在資源利用率、運行效率上 也存在不足。內核資源競爭影響業務性能,同一個宿主機上的不同 Pod,實際上是不同的用戶態進程的集合,這些用戶態進程雖然在 namespace 上是相互隔離的,但他們還是會共享很多內核資源,比如 17 調度器、某些內核線程或者對象。這種級別的資源共享會引入很多可 以觀測
36、到的性能抖動,對在線業務的影響也很明顯。 與 Docker 普通容器不同,安全容器通過添加隔離層,給進程分 配了一個獨立的操作系統內核, 從而避免了讓容器共享宿主機的內核。 因此容器進程能夠看到的攻擊面, 就從整個宿主機內核變成了一個極 小的、獨立的、以容器為單位的內核,從而有效解決了容器進程發生 “逃逸”或者奪取整個宿主機的控制權的問題。 (2) Serverless 容器 FaaS 平臺提供的是函數級別的 Serverless 化部署,且應用場景 多依賴于其綁定的觸發器,對函數的執行有一些配置限制,并且不支 持進程常駐。傳統的應用大都是單體應用或者微服務應用,在遷移到 FaaS 平臺時,需
37、要拆分函數,遷移成本較高。 Serverless 容器,可以很好地彌補 FaaS 的不足,Serverless 容 器可以支持進程常駐的服務形態, 不限運行時長, 并擴大 Serverless 的應用場景。 Serverless 容器支持服務的形態, 傳統的單體應用或者 微服務應用,幾乎可以無縫遷移到 Serverless 容器平臺上。 Serverless 容器和傳統的容器相比,為了實現 Serverless 的理 念,在如下幾個方面做了加強:免運維的純托管模式,傳統的容器往 往是直接將容器集群托管給業務方, 業務方需要分擔容器集群的一些 運維工作。 Serverless 容器則把容器集群完
38、全托管給云廠商, 由云廠 商進行集群的運維工作,用戶不用關注這些運維工作,只需部署自己 18 的業務邏輯即可;以實際資源用量計費,傳統的容器是按照容器的實 例配置進行計費的,Serverless 容器是按照實際資源使用量進行計 費;秒級彈性伸縮響應,傳統的容器往往借助于容器編排工具來實現 彈性伸縮,比如通過 Kubernetes 可以實現 Docker 的容器的彈性伸 縮,但是 Kubernetes 伸縮時間是分鐘級的,而 Serverless 容器能夠 提供更加極致的伸縮能力,做到秒級伸縮并且資源實例和伸縮至零。 (3) 裸金屬容器 容器服務最早部署形態是基于 IAAS 虛擬機,以虛擬機節點
39、作為 容器集群的計算節點,并基于此構建容器的網絡、存儲和編排能力, 這樣的堆疊架構雖然可以讓整個軟件棧分工明確、邊界清晰,但是帶 來了較大的性能損耗和功能冗余。 此外如果用戶對實例安全隔離性要 求較高, 就需要借助虛擬化技術, 而虛擬化平臺不能很好支持該能力。 基于以上痛點, 在裸金屬服務器上搭建容器服務成為一些對性能和實 例隔離性較高用戶的選擇。 隨著裸金屬容器的發展, 為了進一步提高容器負載性能和穩定性, 原來部署在裸金屬之上的非業務負載組件也逐步的由專門的卸載硬 來承載,比如容器存儲、容器網絡、容器引擎以及服務網格組件。將 容器組件下沉到卸載卡后,有幾方面好處: l 裸金屬節點就可以被當
40、做純粹的計算資源,可以“完全”被業 務負載使用。同時避免了對業務負載的性能干擾。 19 l 容器網絡、容器存儲組件下沉到卸載卡后可以與傳統 IAAS 層 的網絡、存儲組件垂直打通,減少冗余功能;直接以硬件設備 直通方式將存儲、網絡資源分配給容器實例,縮短 I/O 路徑, 提高性能。 l 容器層組件下沉到卸載卡后,裸金屬成為純粹的計算資源,可 以被容器實例或者虛機實例共享, 為虛擬機和容器實例共節點 奠定了基礎,提高資源整體利用率。 雖然裸金屬容器可以通過卸載技術獲得諸多益處,但同時也面臨 著較大的挑戰: l 資源占用問題。由于卸載卡上的資源非常有限,容器組件需要 進行輕量化瘦身后才能較好的適配
41、卸載卡, 當前業界也在推動 容器引擎層面的輕量化改造,比如 kata-shim-v2 和 isulad。 l 實例密度問題。 由于容器存儲和網絡資源都是走 VF 直通方式, 而當前卸載卡上支持的 VF 數量比較有限, 在小規格實例場景, VF 會成為實例密度提升的限制。 此外,裸金屬容器不僅在資源利用率和性能上有優勢,對系統運 維管理的自動化和敏捷性上有較高訴求。 為了獲得較高的自動化運維 能力,很多的依賴組件都進行了微服務改造,借助容器編排自身能力 來自動化管理所依賴的服務,甚至是節點操作系統本身。比如 AWS 為 了 提 高 容 器 計 算 節 點 操 作 系 統 更 新 管 理 的 靈
42、活 性 , 推 出 了 bottlerocket 產品, 放棄原來基于包更新的升級機制, 采用鏡像粒度 20 一步更新方法,降低了 OS 更新的失敗率,提高運維自動化程度和容 器應用的穩定性。 () 云原編排及管理 1. 云原消息隊列 消息隊列是指利用高效可靠的消息傳遞機制進行與平臺無關的 數據交流,并基于數據通信來進行分布式系統的集成。傳統應用架構 設計中系統組件與應用緊耦合,消費者出現任何問題(升級停服、宕 機、不可用等),都會影響生產者的業務;系統可用性和效率低,突 發的海量消息壓力,消費者無法實時高效的處理消息時,容易產生雪 崩效應;缺少持久化機制,系統發生故障會丟失消息;消息本地存儲
43、 難擴展,單機的處理能力和內存容量都是有限的,不具備可擴展性, 同時系統組件高度耦合,擴展難度大。 為解決傳統架構中的種種問題,云原生消息隊列服務應運而生, 它為微服務和事件驅動架構提供核心的解耦、異步和削峰的能力。通 過消息隊列能夠讓用戶很容易架構出分布式的、高性能的、彈性的、 魯棒的應用程序。 程序組件與應用解耦分離獨立運行, 同時還可以簡化組件間的消 息管理。分布式應用程序的任何組件均可將消息存儲在隊列中, 云 云消息服務 確保每條消息至少傳送一次, 并且支持多次讀取和寫入。 單個隊列可由多個分布式應用程序組件同時使 用而無需這些組件之 21 間的互相協作。 所有組件均可使用云消息服務
44、API 以編程方式檢索和 操作消息。 可靠的基于消息的異步通信機制, 能夠將分布式部署的不同應用 (或同一應用的不同組件)之間的收發消息,存儲在可靠有效的 消 息隊列中,防止消息丟失。云原生消息隊列支持多進程同時讀寫,收 發互不干擾,無需各應用或組件始終處于運行狀態。 消息同步多副本落盤保障消息高可靠, 通過分布式 Raft 等算法 保證消息強一致,提供消息隊列、發布訂閱、消息回溯、延時消息、 順序消息、消息軌跡等服務。具有高可靠、高可用、高性能、動態伸 縮等優勢。 云消息服務不僅具備處理系統解耦, 異步通信等傳統消息隊列所 必備的能力,而且在數據的可靠傳遞,性能,快速部署等方面提供有 力的支
45、持,滿足使用者針對特定場景下的消息的高可靠堆積,動態擴 縮容,系統監控,消息軌跡查詢等方面的需求。 2. 服務格 服務網格 (Service Mesh)是一個用于管理、觀測、支持工作 負載實例之間安全通信的管理層。 服務網格通常以輕量級網絡代理陣 列的形式實現,這些代理與應用程序代碼部署在一起,而對應用程序 來說無需感知代理的存在。 服務網格通常由控制平面和數據平面兩部 分組成。數據平面運行在 Sidecar 中,Sidecar 作為一個獨立的容器 和業務系統運行在同一個 Kubernetes 的 Pod 里面,或者作為一個獨 22 立的進程和應用程序進程運行在同一個虛擬機上, 其主要充當業務
46、系 統的網絡流量的代理。傳統 RPC 中的服務發現、限流、熔斷、鏈路追 蹤等能力都會下沉到 Sidecar 中。Sidecar 為應用程序提供了一個透 明的網絡基礎設施, 讓業務在低侵入或者零侵入的情況獲得更健壯的 網絡通信能力。 圖 5 服務網格控制平面示意圖 服務網格為微服務帶來新的變革,主要體現在:服務治理與業務 邏輯解耦,服務網格把 SDK 中的大部分能力從應用中剝離出來,拆解 為獨立進程,以 Sidecar 的模式部署,將服務通信及相關管控功能從 業務程序中分離并下層到基礎設施層,使其和業務系統完全解耦,使 開發人員更加專注于業務本身;異構系統的統一治理,通過服務網格 技術將主體的服務治理能力下沉到基礎設施,可方便地實現多語言、