規模、效能、彈性全面升級,讓天下沒有難用的 K8s
作者 | 湯志敏 阿里雲容器服務開發負責人
Kubernetes 是雲原生時代的基礎設施、雲上的分散式作業系統。
9 月 26 日雲棲大會容器專場,在《拐點已至,雲原生引領數字化轉型升級》的演講中,容器服務開發負責人湯志敏表示:“阿里雲容器服務已經擁有國內最大規模的公共雲容器叢集,據各大國際評測機構顯示,其市場份額和產品綜合能力中國內第一。
本次容器服務 ACK2.0 在規模、效能和彈效能力上全面升級,支援單叢集萬節點、90% 原生效能的安全沙箱容器、分鐘級千節點彈性。此外,容器服務已經在全球 20 個地域部署,推出雲原生混合雲 2.0 架構和 ACK@Edge,打造安全智慧的無邊界雲端計算。
本文根據演講內容整理,關注阿里巴巴雲原生公眾號,回覆“雲原生”獲得本文 PPT。
K8s,雲原生時代的重要生產力
在早期,K8s 上跑的應用多是無狀態的應用,而現在越來越多的企業核心業務、資料智慧業務和創新業務也跑在 K8s 之上。以阿里雲自身的雲產品舉例,包括企業級分散式應用服務 EDAS、微服務引擎 MSE、智慧資料管理平臺 Dataphin、資料湖分析 Data Lake Analytics 也部署在容器服務 ACK 之上。
如今,阿里雲實時計算產品也推出了雲原生實時計算 Flink 版本,讓 Flink 可以部署在使用者的 K8s 叢集之上,讓線上業務和流計算共享一個 K8s 叢集,降低運維成本的同時可以享受彈性。我們正在見證 K8s 成為雲原生時代的基礎設施,成為雲上分散式作業系統,成為平臺的平臺。大量企業在享受雲原生帶來的敏捷、彈性和可移植能力。
為什麼我們認為 “雲原生拐點已至”?
CNCF 在 8 月份頒佈了雙年度報告,結果表明:
- 在生產環境的雲原生應用和專案增長超過 200%
- StackOverflow 在今年的年度開發者報告中指出,容器和 Kubernetes 已經成為 Linux 之後最受歡迎的專案
- Gartner 在今年的容器最佳實踐中預測:“到 2022 年有 75% 的全球化企業將在生產中使用容器化的應用”
種種跡象表明容器技術已經逐漸深耕落地。
致敬容器領域的先行者
我們不妨先來共同回顧下阿里雲容器服務的發展之路。2011 年,阿里率先在國內佈局容器技術。2015 年底,容器服務公測上線,到今天已經有 4 個年頭,目前已經在全球 20 個地域開服,服務了來自中國、北美、歐洲、東南亞等地的來自網際網路、金融、政務、製造等行業的數萬使用者和企業,擁有國內最大的公共雲容器叢集。感謝大家的陪伴,容器服務連續三年業務增長超400%,截止 8 月份每月映象下載量超 3 億,容器服務已經逐漸成為雲原生應用的首選。
此外,容器服務也獲得了國際權威諮詢師的認可。6 月 Gartner 釋出的公有云容器服務競爭格局中,阿里雲是唯一進入該報告的國內雲廠商。今年 7 月,在 Forrester 的容器報告中,阿里雲在全球處於強力表現者,在市場份額和產品綜合競爭力位列國內第一。
除了阿里自身,越來越多的企業也享受到了雲原生技術的紅利。三維家基於容器快速遷雲,提升雲資源利用率。民生銀行基於 Kubernetes 優化其核心應用架構,加速業務迭代。微博基於 Kubernetes 統一管理異構資源,加速 AI 計算,促進應用資料化智慧化;跨國企業西門子將其開放式物聯網作業系統 MindSphere 部署在 ACK 之上,遮蔽底層基礎設施差異,實現多雲戰略。
三維家是一家來自廣東的企業,他將 3D 全景技術應用到家居設計,引領家裝行業變革。過去,三維家採用自建 IDC 的傳統方式,運維團隊“一攬子包乾”,耗時費力,團隊疲於奔命,很難跟上業務發展對算力的需求。
2018 年,三維家開始將部分業務遷移到雲上,基於容器服務 ACK 和近千臺裸金屬服務進行統一的任務調和家居渲染業務。三維家通過容器化技術,分批切換完成了最終的業務上線,整體應用搬遷上雲累計只用三天。上雲前,當遇到資源擴充套件時,工作量就非常大。現在可以利用容器的自動彈性伸縮,3 分鐘即可開通 100 臺裸金屬伺服器,應對波峰波谷的業務特性。此外,利用 Kuberentes 內建灰度釋出能力,可以依據客戶的級別、付費模式提供不同版本的渲染技術和不同的服務迭代。
相信大家都使用過微博,對微博的大 V 和熱門微博非常感興趣。微博目前有超 2 億日活使用者,那微博是如何把這些熱點內容根據使用者的不同興趣推送給每個人,實現千人千面的。這背後就有微博線上機器學習的功勞。微博機器學習平臺可以把實時計算和線上學習能力應用到熱門微博和 feed 流等業務場景,通過海量實時樣本分析,進行模型的訓練和服務。
整個線上學習服務鏈路長,對離線上服務實時性與穩定性要求非常高。為了充分發揮離線上混部優勢,提供高效穩定的服務治理,動態地彈性排程資源,微博採用了 all on K8s 的方案:
- 在樣本拼接方面,通過採用阿里雲 Blink on ACK 方案,在相同資源下,實時計算的效能較開源方案有 2.4 倍提升;
- 在實時訓練方面,支援百億級實時樣本和萬億級緯度超大規模稀疏模型;
- 模型推理方面,通過自研推理框架 on ACK 方案,對異構叢集資源進行統一混合調
- 度,提供高效能線上服務能力,支援 50 萬峰值 QPS。
ACK 2.0 全新升級,讓天下沒有難用的 K8s
很多還沒有大規模實踐 Kubernetes 的企業和使用者,可能想了解 Kubernetes 生產落地有哪些經驗和痛點。我們做了一些調查,大家普遍存在以下痛點問題:如何保證 K8s 及其上應用的安全合規?如何統一管理雲上和雲下的 K8s 叢集?如何運維大規模的 K8s 叢集?如何充分利用豐富的 K8s 上下游生態?
針對上述問題,阿里雲容器服務團隊結合企業生產環境的大量實踐,推出一系列功能來全面協助企業真正將 Kubernetes 落地。
端到端的企業級安全能力
首先我們來看安全領域,如何保障雲原生時代的端到端的企業級安全能力。
容器和雲原生時代的安全挑戰和傳統安全有什麼不同?
- 第一個是高動態和高密度。傳統時代一臺機器只跑幾個應用,而現在在一臺伺服器會執行上百個應用,是原來十幾倍的密度。另外考慮到容器的自動恢復等特性,上一刻的容器在A機器,下一刻就會隨時漂移到另一臺機器。
- 第二個是敏捷和快速迭代,容器 +DevOps 化的應用釋出非常頻繁,是傳統的幾倍。
- 第三,在開放標準、軟體行業社會化大分工的時代,越來越多不可信三方開源軟體的引入也加劇了安全風險。而容器的這些特點都會對雲原生安全提出了更高的要求。
為了應對這些安全風險,容器服務推出了立體式的端到端雲原生安全架構升級。他會從三個層面來解決安全問題:
- 最底層是基礎架構安全,支援全方位網路安全隔離管控和全鏈路資料加密,提供阿里雲主子賬號和 K8s RBAC 許可權體系的聯動,支援細粒度的許可權和審計能力;
- 中間是安全軟體供應鏈,支援映象掃描、磁碟 BYOK 加密等能力,打造完整的 DevSecOps。
- 最上層是執行時安全,提供了執行時安全掃描、多租戶管理、KMS支援等能力;接下來我們重點看下安全軟體供應鏈和安全沙箱容器。
業務的頻繁調整和上線對業務流程安全提出了更高的要求,將安全工作前置,從源頭上做好安全才能消除隱患。基於容器映象服務的雲原生安全軟體供應鏈,可以將安全內建到全流程的開發過程中,確保上線即安全。有三個優勢:
- 第一個提供容器執行時掃描,在阿里雲的安全中心,可以一站式的檢視容器和非容器的執行時威脅監控與阻斷。實現靜態到動態的全生命週期管理。
- 第二個提供完整的軟體交付鏈,交付鏈全鏈路可觀測、可追蹤、可自主設定,智慧優化提升交付效率。在漏洞識別後,會阻斷髮布。做到可阻斷可編排。
- 第三個提供全球分發能力,分發到不同的後端,映象全球同步效率提升7倍。
我們希望打造新一代的 DevSecOps 安全開發流程,做到斬隱患於萌芽,遁威脅於無形。
如果您在 K8s 叢集內部署了開源的或第三方不可信的應用,那麼可以考慮看下我們的安全沙箱容器功能。相比於普通的 Pod,安全沙箱容器具有獨立核心,保證安全隔離。大家都知道,安全、相容性和效能是一個三角,同時做到會比較難。
而經過我們的大量效能優化,安全沙箱容器的效能,已經可以接近 90% 的原生 runC 效能。此外,值得一提的是,可以在一臺雲伺服器上同時部署普通 Pod 和安全沙箱 Pod,做到混部能力。使用者完全可以根據自己的業務特性做自主選擇。在可觀測性方面,我們提供了安全沙箱場景下完整的日誌監控等能力增強。
拓展雲端計算的邊界
我們回到第二個問題,如何解決雲上雲下統一管理的問題。接下來我會介紹容器服務 ACK 的無邊界雲端計算解決方案。
很多企業在思考上雲策略的時候,出於資料主權和安全合規的考慮,會將部分業務彈性遷移到雲上。比如微博和B站在有一些熱門活動時,應用會從 IDC 彈性到雲上,應對突發流量。一些銀行和政府在考慮搭建災備中心的時候,選擇阿里雲作為低成本的雲容災或者多活方案。混合雲已經成為企業上雲的新常態。不過混合雲帶來的挑戰是:雲上和雲下的基礎設施能力不一致,安全管理不統一,如何統一管理應用?
容器服務 ACK 本次推出了以應用為中心的混合雲 2.0 架構,
在納管能力上,可以在使用者 IDC 的 K8s 叢集上輕鬆安裝一個 agent,一鍵被雲上的容器服務納管。如果您不想管理 IDC 的 K8s 叢集,也可以選擇我們的 ACK 敏捷版。在所有的叢集註冊完畢之後。可以通過 ACK 的叢集聯邦能力提供統一的應用部署、安全治理和可觀測效能力。
此外,如果您想配置不同叢集的負載均衡和流量和釋出策略,可以通過容器服務的服務網格能力統一管理。
通過使用容器服務的雲原生混合雲管理能力,可以有三個方面的優勢:
- 第一個:可以實現統一的叢集管理,統一的安全治理、應用管理和可觀測性。以及跨雲的彈性伸縮
- 第二個:可以通過阿里雲的雲企業網,將多個地域的 VPC 和 IDC 網路組成一張環網,實現全網互聯、全球就近接入,保證高速低延時
- 第三個:可以通過智慧流量管理,優化不同地域的服務訪問策略,提升業務連續性
如果您想嘗試雲原生混合雲,但是還未開始搬遷上雲,我們提供了一攬子云原生平滑遷雲工具集,簡化您的搬遷成本。他可以從三個方面來簡化搬遷的過程,包括應用映象、應用配置、應用狀態和資料。我們提供了 Packer 能力,可以將您的 OS 映象打包成 ECS 的自定義映象。通過 Docker 映象遷移工具,將容器映象自動遷移到阿里雲的容器映象倉庫。通過 velero 工具,將您的 K8s 應用配置無縫遷移到阿里雲的 ACK。通過 DTS 幫助您無縫同步資料庫。
隨著 5G 和物聯網時代的到來,通過傳統雲+資料中心來集中儲存、計算的模式已經無法滿足終端裝置對於時效、容量、算力的需求。將雲端計算的能力下沉到邊緣側、裝置側,並通過中心進行統一交付、運維、管控,將是雲端計算的重要發展趨勢。
為此容器服務正式推出 ACK@Edge,支援統一管理雲端和邊緣節點,支援統一應用釋出,釋出效率提升 3 倍。基於邊緣的應用部署,可以降低網路延遲 75%。考慮到邊緣的特性,提供了額外的單元化隔離和斷連自治。同樣,如果想在邊緣部署不可信三方應用,我們在 ACK@Edge 也提供了安全沙箱容器能力。
接下來介紹下優酷是如何基於 ACK@Edge 來完成他的架構演進。大家都知道優酷是可以播放海量的視訊。隨著優酷業務的發展,他需要支援數百個城市。這時候優酷需要考慮將原來在 IDC 內的集中式架構,演進到邊緣架構。
這時候需要考慮一種方式,來統一管理阿里雲幾十個 region 和上千個邊緣節點。優酷選擇了 ACK@Edge,可以統一管理 ECS 和邊緣的節點,並做統一的應用釋出和彈性擴縮容。通過動態擴縮容能力,節省了機器成本 50%。採用新的架構之後,原來播放視訊的鏈路也從公網變成骨幹網到邊緣節點再到終端,優化了網路延遲 75%。
無伺服器化的基礎設施
我們回到第三個問題,如何去管理K8s叢集的海量節點的升級和運維。我們希望通過 serverless化的方案,幫助企業降低運維成本。
2018 年,容器服務釋出了 Serverless k8s 1.0版本,使用者完全不需要管理他的 K8s worker 節點,從而不用關注節點的環境配置、伺服器管理、維護升級等環節,從根源上解決了 Kubernetes 運維難題。將開發人員的效率最大化,無需容量管理,無懼安全風險。
今天阿里雲容器服務正式推出 Serverless Kuberentes 2.0 升級,同時結束公測開始商業化。Serverless Kuberentes 2.0 全面提升了 K8s 相容性、安全性和極致彈性。在相容性方面支援多名稱空間、RBAC 安全模型,支援 Istio 和 Knative 等框架,是業界相容 Kubernetes 最好的 Serverless 服務;在彈效能力上支援 GPU 例項,500 pod 啟動小於 50s。
目前 Serverless Kuberentes 在 Job 任務、線上彈性等多個場景中廣泛應用,幫助使用者輕鬆擁抱“以應用為中心”的雲原生架構。
我們並未止步於 Kubernetes 本身,我們還在 Serverless Kubernetes 之上基於 Knative 構建了一套 Serverless Framework 套件。Serverless Framework 可以簡化事件處理、程式碼構建、服務部署等,同時無縫整合阿里雲的各種事件源,包括訊息服務、服務服務等事件源。以及可觀測效能力。可以讓企業自己搭建各類 Serverless 產品,無論是面向應用、容器還是函式。希望可以助力大家一起打造下一代的無服務應用。
保持開放,容器應用市場釋出
最後,在雲原生日趨成熟的年代,我們希望合作共贏,打造開放雲原生生態。
容器服務積極參與並回饋雲原生社群,在 moby/kubernetes 等開源專案社群貢獻領先。目前已經是 CNCF 雲原生計算基金會的白金會員,李響也成為 CNCF 技術監督委員會的唯一華人成員。OCI 開放容器聯盟的成員,CNIA 雲原生產業聯盟的理事成員。阿里雲容器服務也成為Kubernetes 一致性認證產品和認證服務提供商。
除了開源和雲原生社群之外,我們也致力於尋求打造全球合作伙伴生態。在 2019 年,我們的全球生態夥伴又多了一些新面孔。SAP Cloud Platform 基於開源專案 Gardener,已經支援容器服務 ACK,為企業提供大規模混合雲集群管理能力。
隨著在容器服務上執行人工智慧應用的越來越流行,來自英國的人工智慧服務提供商 Seldon提供了雲原生 AI 模型推理服務。來自印度的 Click2Cloud,他們在最新的 Cloubbrain 支援 ACK,為企業客戶向雲原生應用遷移提供了完整的解決方案。來自歐洲的容器平臺廠商 BanzaiCloud 有一套完整的混合雲與 Istio 的產品,他們的 pipeline 產品已經支援 ACK,從而使得客戶可以從成本優化的角度建立和管理不同雲廠商的容器叢集。
除了合作方面,今年我們在阿里雲市場全新上線容器應用的一級類目,希望可以連結企業和雲原生創新。對於雲原生的開發者來說,可以便捷的找到經過阿里雲認證的、標準的容器生態產品,包含開源免費的、商業化收費的容器產品,快速在叢集上使用,滿足您多場景下的業務需求。對於我們的合作 ISV 來說,您可以使用標準化的交易流程及豐富客戶資源,降低售前、交易、交付、售後等流程的複雜度。
接下來我會隆重介紹一期即將入住阿里雲容器應用市場的合作伙伴:
- Intel 全球最大的個人計算機零件和CPU製造商。其 Intel Clear Linux 將基於 Aliyun Linux 2 製作優化過的應用軟體的基礎映象,後續將以容器映象的形式輸出阿里雲容器應用雲市場,幫助更多容器客戶更安全、輕量、高效執行容器。
- 奧哲網路科技有限公司,是國內領先的流程管理系統(BPM)供應商,後續奧哲BPM 管理產品-雲樞將在容器應用市場上商業化售賣,幫助企業通過業務、管理線上實現數字化經營。
- Fortinet 是行業領先的網路安全和惡意軟體防護公司,能夠為業務通訊提供最佳安全、高效能、低成本的安全解決方案。後續 Fortinet 將在容器應用市場提供容器安全防護套件,為容器企業客戶提供完整執行時的容器安全解決方案。
新基石、新算力、新生態
最後我們一起來回顧下本次容器服務 ACK 2.0 的雲原生進化和願景:讓我們一起打造雲原生時代的新基石、新算力、新生態。
在新基石方面,容器服務致力成為全場景化的雲原生技術設施,提供全鏈路安全架構,支援全球部署,單叢集支援萬節點規模。容器服務提供了雲邊端一體化解決方案和混合雲 2.0 架構,助力邊緣延時降低 75,提升交付效率 3 倍。
在新算力方面,容器服務 ACK 2.0 支援極速彈性,分鐘級千節點伸縮;支援異構算力,通過增強排程實現利用率提升 5 倍;支援安全沙箱容器,強隔離,90% 原生效能。
在新生態方面,容器服務希望攜手雲原生開發者和雲原生合作伙伴,共創雲原生未來。感謝大家,感謝各行各業的客戶和我們一路同行。拐點已至,讓我們一起通過雲原生引領數字化轉型。
“ 阿里巴巴雲原生微信公眾號(ID:Alicloudnative)關注微服務、Serverless、容器、Service Mesh等技術領域、聚焦雲原生流行技術趨勢、雲原生大規模的落地實踐,做最懂雲原生開發者的技術公眾號。”