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