日韩性视频-久久久蜜桃-www中文字幕-在线中文字幕av-亚洲欧美一区二区三区四区-撸久久-香蕉视频一区-久久无码精品丰满人妻-国产高潮av-激情福利社-日韩av网址大全-国产精品久久999-日本五十路在线-性欧美在线-久久99精品波多结衣一区-男女午夜免费视频-黑人极品ⅴideos精品欧美棵-人人妻人人澡人人爽精品欧美一区-日韩一区在线看-欧美a级在线免费观看

歡迎訪問 生活随笔!

生活随笔

當前位置: 首頁 >

Serverless X OpenKruise 部署效率优化之道

發布時間:2025/3/20 15 豆豆
生活随笔 收集整理的這篇文章主要介紹了 Serverless X OpenKruise 部署效率优化之道 小編覺得挺不錯的,現在分享給大家,幫大家做個參考.

作者 |?許成銘(競霄)

Serverless 作為云計算的最佳實踐、云原生發展的方向和未來演進趨勢,其核心價值在于快速交付、智能彈性、更低成本。SAE(Serverless 應用引擎)作為首款面向應用的 Serverless PaaS 平臺,實現了 Serverless 架構與微服務架構的完美結合,使存量應用也可以零代碼改造享受 Serverless 賦予的技術紅利,目前正在增強多語言特性,向多負載類型多元化場景方向演進。作為 Serverless 平臺,高效的應用部署效率無疑是產品的核心競爭力,也是彈性伸縮、智能托管的基礎。更快的部署效率,意味著更好的用戶體驗,更低的用戶成本,更極致的彈性能力。SAE 極致彈性項目,力求提升應用端到端啟動速度,保證用戶在突發場景下的快速擴容效率和系統穩定性 SLA 。

Serverless 應用引擎:https://www.aliyun.com/product/aliware/product/sae

項目背景

SAE 底層使用 Kubernetes 架構,使用神龍裸金屬安全容器、 ECI 兩種資源池,用戶在 SAE 中運行的應用會映射到 Kubernetes 中相應的資源。

通過采集線上全量 K8s 事件,整個 Pod 的創建生命周期進行分節點、分階段的耗時統計分析,以神龍節點為例,各階段比例如圖:

從圖中可以看出,整個 pod 的創建生命周期包括調度,拉取并創建 init 容器,拉取用戶業務鏡像,創建和啟動容器等。其耗時主要集中在調度和拉取用戶鏡像上。究其原因在于 SAE 神龍節點調度鏈路整體耗時較長,而鏡像耗時主要在于拉取鏡像與解壓鏡像的時長,特別是在大容量鏡像部署的情況下尤為突出。

實施方案

SAE 團隊從長期架構規劃,使用場景通用性等多個方面進行方案調研分析, 考慮采用原地升級的部署策略代替重建升級策略,避免部署過程中重調度,減少整體耗時。

所謂原地升級,即只更新 Pod 中某一個或多個容器版本、而不影響整個 Pod 對象、其余容器的升級,而且在升級過程中保證 ip、node 不發生改變。在阿里巴巴內部,絕大部分電商應用在云原生環境都統一使用原地升級的方式做發布,這種原地升級的模式極大地提升了應用發布的效率,節省了調度,分配網絡,掛載磁盤以及拉取鏡像的耗時。通過分析線上 SAE 用戶歷史部署記錄,發現只更新鏡像/程序包部署應用的占大多數,也就是說原地升級能力非常適合在 SAE 產品中落地。

原地升級給 SAE 帶來的優勢在于:

  • 避免重調度,避免 sidecar 容器重建,整個部署耗時只需要拉取和創建業務容器;
  • 無需調度,可以預先在 Node 上緩存新鏡像,提高彈性效率;
  • 可以保持 ip 不變,避免因 ip 變化導致依賴組件如注冊中心感知的延時;
  • 減少重建 pod 對調度器,注冊中心,業務上下游的壓力。

與此同時,OpenKruise 項目已經將原地升級能力通過 CloneSet / AdvanceStatefulSet 貢獻于開源。CloneSet 是 OpenKruise 中提供的核心 workload ?之一,它主要面向無狀態應用,提供了更加高效、確定可控的應用管理和部署能力,支持優雅原地升級、指定刪除、發布順序可配置、并行/灰度發布等豐富的策略,可以滿足更多樣化的應用場景。CloneSet 與原生 Kubernetes workload 功能對比如圖:

OpenKruise 項目:https://openkruise.io/

SAE 決定采用 CloneSet 作為新的應用負載,一方面借助其原地升級的能力提升應用整體部署效率,另一方面也結合 OpenKruise 開源的力量,共同打造通用標準的無狀態應用負載的大規模使用實踐。針對于增量應用, SAE 會默認采用 CloneSet 進行用戶應用的部署,并結合最大不可用實例數和優雅升級時長來保證發布的流量無損,而對于存量應用, SAE 將采用基于有限狀態機的滾動升級進行在線遷移操作。

方案上線后效果顯著,在一個月的時間內,已經有近千個應用使用 CloneSet 進行部署,且原地升級次數為重建升級的兩倍,部署效率比原生 K8s 提升 42% ,結合鏡像緩存,用戶部署應用到容器啟動在秒級內完成。SAE 后續會對更多 OpenKruise 的高級能力產品化,同時結合用戶場景,不斷打磨穩定性與最佳實踐回饋于開源。

圖:原生 K8s 部署應用重建升級策略 ?VS ?SAE 部署應用原生升級策略

未來展望

在追求部署效率的道路中,SAE 正在探索更多維度,更細粒度的解決方案。相信在不久的將來,SAE 的極致彈性,無論在彈性效率,彈性規模,還是智能精準等方面都會大放異彩。

Serverless?技術公開課

Serverless 具體產品形態如何?如何在生產中使用?在落地過程中有哪些深坑?10 位阿里巴巴 Serverless 領域技術專家共同打造最適合開發者入門的 Serverless 公開課,3 個階段 ,10 個課時,讓你輕松上手,即學即用。

點擊即可觀看免費課程:https://developer.aliyun.com/learning/roadmap/serverless

“阿里巴巴云原生關注微服務、Serverless、容器、Service Mesh 等技術領域、聚焦云原生流行技術趨勢、云原生大規模的落地實踐,做最懂云原生開發者的公眾號。”

《新程序員》:云原生和全面數字化實踐50位技術專家共同創作,文字、視頻、音頻交互閱讀

總結

以上是生活随笔為你收集整理的Serverless X OpenKruise 部署效率优化之道的全部內容,希望文章能夠幫你解決所遇到的問題。

如果覺得生活随笔網站內容還不錯,歡迎將生活随笔推薦給好友。