這期內(nèi)容當(dāng)中小編將會給大家?guī)碛嘘P(guān)Serverless及OpenKruise 部署優(yōu)化的實(shí)例分析,文章內(nèi)容豐富且以專業(yè)的角度為大家分析和敘述,閱讀完這篇文章希望大家可以有所收獲。
十年的乾安網(wǎng)站建設(shè)經(jīng)驗(yàn),針對設(shè)計(jì)、前端、開發(fā)、售后、文案、推廣等六對一服務(wù),響應(yīng)快,48小時及時工作處理。營銷型網(wǎng)站的優(yōu)勢是能夠根據(jù)用戶設(shè)備顯示端的尺寸不同,自動調(diào)整乾安建站的顯示方式,使網(wǎng)站能夠適用不同顯示終端,在瀏覽器中調(diào)整網(wǎng)站的寬度,無論在任何一種瀏覽器上瀏覽網(wǎng)站,都能展現(xiàn)優(yōu)雅布局與設(shè)計(jì),從而大程度地提升瀏覽體驗(yàn)。成都創(chuàng)新互聯(lián)公司從事“乾安網(wǎng)站設(shè)計(jì)”,“乾安網(wǎng)站推廣”以來,每個客戶項(xiàng)目都認(rèn)真落實(shí)執(zhí)行。
項(xiàng)目背景
SAE 底層使用 Kubernetes 架構(gòu),使用神龍裸金屬安全容器、 ECI 兩種資源池,用戶在 SAE 中運(yùn)行的應(yīng)用會映射到 Kubernetes 中相應(yīng)的資源。
通過采集線上全量 K8s 事件,整個 Pod 的創(chuàng)建生命周期進(jìn)行分節(jié)點(diǎn)、分階段的耗時統(tǒng)計(jì)分析,以神龍節(jié)點(diǎn)為例,各階段比例如圖:
從圖中可以看出,整個 pod 的創(chuàng)建生命周期包括調(diào)度,拉取并創(chuàng)建 init 容器,拉取用戶業(yè)務(wù)鏡像,創(chuàng)建和啟動容器等。其耗時主要集中在調(diào)度和拉取用戶鏡像上。究其原因在于 SAE 神龍節(jié)點(diǎn)調(diào)度鏈路整體耗時較長,而鏡像耗時主要在于拉取鏡像與解壓鏡像的時長,特別是在大容量鏡像部署的情況下尤為突出。
SAE 團(tuán)隊(duì)從長期架構(gòu)規(guī)劃,使用場景通用性等多個方面進(jìn)行方案調(diào)研分析, 考慮采用原地升級的部署策略代替重建升級策略,避免部署過程中重調(diào)度,減少整體耗時。
所謂原地升級,即只更新 Pod 中某一個或多個容器版本、而不影響整個 Pod 對象、其余容器的升級,而且在升級過程中保證 ip、node 不發(fā)生改變。在阿里巴巴內(nèi)部,絕大部分電商應(yīng)用在云原生環(huán)境都統(tǒng)一使用原地升級的方式做發(fā)布,這種原地升級的模式極大地提升了應(yīng)用發(fā)布的效率,節(jié)省了調(diào)度,分配網(wǎng)絡(luò),掛載磁盤以及拉取鏡像的耗時。通過分析線上 SAE 用戶歷史部署記錄,發(fā)現(xiàn)只更新鏡像/程序包部署應(yīng)用的占大多數(shù),也就是說原地升級能力非常適合在 SAE 產(chǎn)品中落地。
原地升級給 SAE 帶來的優(yōu)勢在于:
避免重調(diào)度,避免 sidecar 容器重建,整個部署耗時只需要拉取和創(chuàng)建業(yè)務(wù)容器;
無需調(diào)度,可以預(yù)先在 Node 上緩存新鏡像,提高彈性效率;
可以保持 ip 不變,避免因 ip 變化導(dǎo)致依賴組件如注冊中心感知的延時;
減少重建 pod 對調(diào)度器,注冊中心,業(yè)務(wù)上下游的壓力。
與此同時,OpenKruise 項(xiàng)目已經(jīng)將原地升級能力通過 CloneSet / AdvanceStatefulSet 貢獻(xiàn)于開源。CloneSet 是 OpenKruise 中提供的核心 workload 之一,它主要面向無狀態(tài)應(yīng)用,提供了更加高效、確定可控的應(yīng)用管理和部署能力,支持優(yōu)雅原地升級、指定刪除、發(fā)布順序可配置、并行/灰度發(fā)布等豐富的策略,可以滿足更多樣化的應(yīng)用場景。CloneSet 與原生 Kubernetes workload 功能對比如圖:
SAE 決定采用 CloneSet 作為新的應(yīng)用負(fù)載,一方面借助其原地升級的能力提升應(yīng)用整體部署效率,另一方面也結(jié)合 OpenKruise 開源的力量,共同打造通用標(biāo)準(zhǔn)的無狀態(tài)應(yīng)用負(fù)載的大規(guī)模使用實(shí)踐。針對于增量應(yīng)用, SAE 會默認(rèn)采用 CloneSet 進(jìn)行用戶應(yīng)用的部署,并結(jié)合最大不可用實(shí)例數(shù)和優(yōu)雅升級時長來保證發(fā)布的流量無損,而對于存量應(yīng)用, SAE 將采用基于有限狀態(tài)機(jī)的滾動升級進(jìn)行在線遷移操作。
方案上線后效果顯著,在一個月的時間內(nèi),已經(jīng)有近千個應(yīng)用使用 CloneSet 進(jìn)行部署,且原地升級次數(shù)為重建升級的兩倍,部署效率比原生 K8s 提升 42% ,結(jié)合鏡像緩存,用戶部署應(yīng)用到容器啟動在秒級內(nèi)完成。SAE 后續(xù)會對更多 OpenKruise 的高級能力產(chǎn)品化,同時結(jié)合用戶場景,不斷打磨穩(wěn)定性與最佳實(shí)踐回饋于開源。
圖:原生 K8s 部署應(yīng)用重建升級策略 VS SAE 部署應(yīng)用原生升級策略
上述就是小編為大家分享的Serverless及OpenKruise 部署優(yōu)化的實(shí)例分析了,如果剛好有類似的疑惑,不妨參照上述分析進(jìn)行理解。如果想知道更多相關(guān)知識,歡迎關(guān)注創(chuàng)新互聯(lián)行業(yè)資訊頻道。
新聞標(biāo)題:Serverless及OpenKruise部署優(yōu)化的實(shí)例分析
鏈接分享:http://www.rwnh.cn/article34/ipcgpe.html
成都網(wǎng)站建設(shè)公司_創(chuàng)新互聯(lián),為您提供營銷型網(wǎng)站建設(shè)、搜索引擎優(yōu)化、Google、網(wǎng)頁設(shè)計(jì)公司、定制開發(fā)、App開發(fā)
聲明:本網(wǎng)站發(fā)布的內(nèi)容(圖片、視頻和文字)以用戶投稿、用戶轉(zhuǎn)載內(nèi)容為主,如果涉及侵權(quán)請盡快告知,我們將會在第一時間刪除。文章觀點(diǎn)不代表本網(wǎng)站立場,如需處理請聯(lián)系客服。電話:028-86922220;郵箱:631063699@qq.com。內(nèi)容未經(jīng)允許不得轉(zhuǎn)載,或轉(zhuǎn)載時需注明來源: 創(chuàng)新互聯(lián)