知乎K8S穩(wěn)定性建設(shè)實(shí)踐_第1頁
知乎K8S穩(wěn)定性建設(shè)實(shí)踐_第2頁
知乎K8S穩(wěn)定性建設(shè)實(shí)踐_第3頁
知乎K8S穩(wěn)定性建設(shè)實(shí)踐_第4頁
知乎K8S穩(wěn)定性建設(shè)實(shí)踐_第5頁
已閱讀5頁,還剩24頁未讀, 繼續(xù)免費(fèi)閱讀

下載本文檔

版權(quán)說明:本文檔由用戶提供并上傳,收益歸屬內(nèi)容提供方,若內(nèi)容存在侵權(quán),請進(jìn)行舉報(bào)或認(rèn)領(lǐng)

文檔簡介

?e?檢CONFERENCECHINA云原生架構(gòu)?2023年06月30?07月01日|切北京維景國際大酒店C2014.??第16屆中國系統(tǒng)架構(gòu)師大會(huì)§VSTEM"ARCHITECT數(shù)字轉(zhuǎn)型架構(gòu)演進(jìn)ChinaUnix.區(qū)塊鏈架構(gòu).-s>accsacc20-15.2雋-第十六屆中國系架構(gòu)師大會(huì)SYSTEMARCHITECTCONFERENCECHINA202S知乎K8S穩(wěn)定性建設(shè)實(shí)踐知乎-核心架構(gòu)平臺(tái)工程師-趙禹架構(gòu)演進(jìn)ChinaUntx個(gè)人介紹?知乎核心架構(gòu)平臺(tái)工程師,知乎k8s負(fù)責(zé)人。ARCHITECTCONFERENCECHINA2323?曾任職于好未來基礎(chǔ)架構(gòu)和融資自主創(chuàng)業(yè)。目前知乎負(fù)責(zé)k8s,及云原生建設(shè)相關(guān)工作。?多年Devops和云原生領(lǐng)域工作經(jīng)歷。理架構(gòu)演進(jìn)沙B2023:f168^

?ChinwUnocJJ目錄2.K8S穩(wěn)定性建設(shè)的背景和遇到的問題介紹知乎K8S穩(wěn)定性建設(shè)的背景和遇到哪些需要解決的問題4.展望和收益III3.K8S穩(wěn)定性建設(shè)階段和案例介紹知乎K8S穩(wěn)定性建設(shè)都經(jīng)歷了哪些階段,做了哪些事?列舉了部分1.發(fā)展歷程與現(xiàn)狀介紹知乎云原生的發(fā)展歷程和云原生架構(gòu)現(xiàn)狀數(shù)字轉(zhuǎn)型架構(gòu)演進(jìn)第十六屆中國系統(tǒng)架構(gòu)師大會(huì)SYSTEMARCHITECTCONFERENCECHINA202S數(shù)字轉(zhuǎn)型架構(gòu)演進(jìn)第+六屆中國系統(tǒng)架構(gòu)師大會(huì)SYSTEMARCHITECTCONFERENCECHINA202SParti發(fā)展歷程與現(xiàn)狀知乎云原生的發(fā)展歷程數(shù)字轉(zhuǎn)型架構(gòu)演進(jìn)第+六屆中國系統(tǒng)架構(gòu)師大會(huì)SYSTEMARCHITECTCONFERENCECHINA202SHAProxy2016中Mesos2018—o—中HAProxyKubernetesHAProxyServiceMeshik2020中Kubernetes現(xiàn)在OI中KubernetesServiceMesh知乎云原生整體架構(gòu)灰度/藍(lán)綠發(fā)布分支聯(lián)調(diào)配置管理應(yīng)用層動(dòng)態(tài)超賣CI/CD資源畫像組件層基礎(chǔ)組件任務(wù)計(jì)算ServiceMesh混部調(diào)度器混部agent二次調(diào)度多集群管理基礎(chǔ)組件層OS層OS(openEuler)onUbuntuschedSACC數(shù)字轉(zhuǎn)型架構(gòu)演進(jìn)AIstioClusterCronHPA節(jié)點(diǎn)伸縮調(diào)度、上;中國系統(tǒng)架構(gòu)師大會(huì)ARCHITECTCONFERENCECHINA202S1^168.^

的ChinaUn或/\ApacheAPISIXGateway路由重寫協(xié)議轉(zhuǎn)換負(fù)載均衡限流熔斷流量調(diào)度恢復(fù)發(fā)布KafkaPulsarTiDBRedisNodeManagerFlinkuniffleAlluxio服務(wù)發(fā)現(xiàn)故障注入負(fù)載均衡限流熔斷流量鏡像服務(wù)預(yù)熱?事件中心vmagent監(jiān)控組件Joba自愈組件RegistrySyncer鏡像多活組件Dockerdocker知乎Kubernetes集群現(xiàn)狀數(shù)字轉(zhuǎn)型架構(gòu)演進(jìn)第十六屆中國系統(tǒng)架構(gòu)師大會(huì)SYSTEMARCHITECTCONFERENCECHINA202S總集群數(shù):10+,主要分為基礎(chǔ)組件集群、業(yè)務(wù)集群及訓(xùn)練、推理服務(wù)專用集群。業(yè)務(wù)集群負(fù)載:CPU全天利用率均值在40%左右。白天基本都在60%+資源概況:CPU核心40w+數(shù)字轉(zhuǎn)型架構(gòu)演進(jìn)第+六屆中國系統(tǒng)架構(gòu)師大會(huì)SYSTEMARCHITECTCONFERENCECHINA202SPart2K8S穩(wěn)定性建設(shè)的背景和遇到的問題k8s相關(guān)故障數(shù)字轉(zhuǎn)型架構(gòu)演進(jìn)第+六屆中國系統(tǒng)架構(gòu)師大會(huì)SYSTEMARCHITECTCONFERENCECHINA202S第一次雪崩,是由于節(jié)點(diǎn)過大,當(dāng)時(shí)節(jié)點(diǎn)在4500+,機(jī)器kube-proxywatch請求過多。掛掉一個(gè)節(jié)點(diǎn)后流量不均衡,不斷打滿apiserver內(nèi)存,導(dǎo)致apiserver雪崩現(xiàn)象。第二次雪崩,由于某位同學(xué)所在機(jī)器有集群密鑰。這位同學(xué)通過helm安裝CNI,誤導(dǎo)致集群雪朋。鏡像倉庫掛掉,恢復(fù)時(shí)長較長。影響部分生產(chǎn)業(yè)務(wù)。由故障暴露出知乎Kubernetes的問題第十六屆中國系架構(gòu)師大會(huì)SYSTEMARCHITECTCONFERENCECHINA202S集群沒有兜底、容災(zāi)能力權(quán)限管理混亂無審計(jì)操作無法追溯緊急增加機(jī)器時(shí)、裝機(jī)太慢k8s出現(xiàn)問題排查困難告警過多、形成轟炸資源碎片過多調(diào)度不均衡、資源干擾過大機(jī)器故障處理人肉解決一切出發(fā)點(diǎn),為了業(yè)務(wù)穩(wěn)定高效.架構(gòu)演進(jìn)ChinaUntx數(shù)字轉(zhuǎn)型架構(gòu)演進(jìn)第+六屆中國系統(tǒng)架構(gòu)師大會(huì)SYSTEMARCHITECTCONFERENCECHINA202SPart3K8S穩(wěn)定性建設(shè)階段和案例改造歷程數(shù)字轉(zhuǎn)型架構(gòu)演避苕+雷中國系統(tǒng)架構(gòu)師大會(huì)SYSTEMARCHITECTCONFERENCECHINA202S第一階段Kubernetes集群改造第二階段系統(tǒng)能力改造第三階段資源兜底能力改造第四階段基礎(chǔ)組件改造SACC數(shù)字轉(zhuǎn)型架構(gòu)演進(jìn)------------------------.(一)Kubernetes集群改造■第一階段ApiServer(保證現(xiàn)有穩(wěn)定性)ARCHITECTCONFERENCECHINA2323LB調(diào)整成最小連接負(fù)載均衡單集群節(jié)點(diǎn)量4500+節(jié)點(diǎn)ApiServer不穩(wěn)定因素:版本問題:版本低無法endpointSlice、kube-proxy拉取流量過大;配置問題:限流配置問題;硬件層:LB設(shè)備帶寬限制;LB負(fù)載:流量不均衡;架構(gòu)演進(jìn)(一)Kubernetes集群改造-第一階段DNS(保證現(xiàn)有穩(wěn)定性)3T1-4SYSTEMARCHITECTCONFERENCECHINA航字轉(zhuǎn)型架構(gòu)演進(jìn)弋屆中國系統(tǒng)架構(gòu)師大會(huì)原DNS訪問鏈路,全部要從CoreDNS過,沒有兜底。ApiServer掛掉時(shí)會(huì)影響CoreDNS穩(wěn)定性,然后影響生產(chǎn)使用改造內(nèi)容?改造CoreDNS代碼,ApiServer掛掉時(shí),CoredDNS能夠緩存2小時(shí)數(shù)據(jù)-使用IocalDNS組件,走本地DNS,本地其實(shí)是走權(quán)威DNS架構(gòu)演進(jìn)沙BfT68yChinciUntxaA___2023(一)Kubernetes集群改造inClusterendpoints走應(yīng)用LBK8SApiServer新架構(gòu)Pod請求ApiServer應(yīng)用LBApiServer組件LBEnginx(gateway)IApiSeverTj|ApiSeverTj|ApiSeverTj...IApiSeverTj|ApiSeverTjinCluster走應(yīng)用LBvinCluster-第二階段(新集群架構(gòu))組件LB相關(guān)組件:?kubelet?kube-contorller-manager?CCM?kube-proxy?kube-scheduler?kube-flannel&CNI?coredns?cluster-autoscaler數(shù)字轉(zhuǎn)型架枸演進(jìn)莒+六屆中國系統(tǒng)架構(gòu)師大會(huì)SYSTEMARCHITECTCONFERENCECHINA202S拆分注意事項(xiàng):?保證節(jié)點(diǎn)在3000以下?簽發(fā)證書用泛域名?選項(xiàng)選擇v1.2x以上版本,支持APF流量接入層服務(wù)層組件層架構(gòu)演進(jìn)(一)Kubernetes集群改造-第二階段(去除kube-proxy)數(shù)字轉(zhuǎn)型架構(gòu)演漫第十六屆中國系統(tǒng)架構(gòu)師大會(huì)SYSTEMARCHITECTCONFERENCECHINA202S去除應(yīng)用clusterip訪問ServiceLoadbalancer使用直連podinCluster使用env配置LBip(二)系統(tǒng)化能力改造-多云管控平臺(tái)知云容器平臺(tái)數(shù)字轉(zhuǎn)型架構(gòu)演進(jìn)第十六屆中國系統(tǒng)架構(gòu)師大會(huì)SYSTEMARCHITECTCONFERENCECHINA202S事件中心事件總覽告警規(guī)則告警密鑰事件列表節(jié)點(diǎn)管理節(jié)點(diǎn)管理應(yīng)用IP列表集群管理鏡像多活K8S權(quán)限權(quán)限資源資源管理開放平臺(tái)控制器管理添加授權(quán)存儲(chǔ)管理服務(wù)管理發(fā)布管理授權(quán)列表調(diào)度管理權(quán)限管理節(jié)點(diǎn)池管理操作日志角色管理權(quán)限管理伸縮調(diào)度多集群管理自研多云管控平臺(tái):收斂權(quán)限,提升人效,審計(jì)架構(gòu)演進(jìn)沙B數(shù)字轉(zhuǎn)型(二)系統(tǒng)化能力改造■多集群可觀測性第十廣;中國系統(tǒng)架構(gòu)師大會(huì)SYSTEMARCHITECTCONFERENCECHINA202S事件中,|J\V重要事件?出?兇?"?兇Pod啟動(dòng)失敗。Pod創(chuàng)建成功①磁盤空間已滿。驅(qū)逐①(SQ事件總覽事件告警配置通知方式配置事件明細(xì)分析052日同比0日同比45▲4?k9獲取數(shù)據(jù)拉取鏡像失敗。調(diào)度失敗??捎么疟P空間失?、夔R像回收失敗①(5分析事件Pod殺死。內(nèi)存條報(bào)警①網(wǎng)絡(luò)不可用?節(jié)點(diǎn)沒有足夠磁盤①CQ,?Q.06221日同比0日同比-860日同比1-網(wǎng)絡(luò)不可用配首通知.趨勢寫入各集群占比時(shí)間范圍客戶群體O1.93%-*路由/通知用尸--->I△按集群分析業(yè)務(wù)方Pa勇平臺(tái)業(yè)務(wù)SRE,’晚集',收集98.07%V網(wǎng)絡(luò)不可用IDC集群云上集群趨勢各空間占比當(dāng)日時(shí)間范圍次數(shù)namespacef圓320302按應(yīng)用分析目恵>48...一—51...Kubernetes分析報(bào)表控制面(iaas系統(tǒng))124,030日同比-51297▼51,121日同比-14104▼74,756日同比-37025▼50,546日同比-18376▼架枸演地大盤:會(huì)分為重要事件、節(jié)點(diǎn)、組件、應(yīng)用?兇?k?*?*?匠?此24,522日同比-2878▼744,375日同比-2988815,613日同比1544▲q9數(shù)據(jù)面板-----讀取-1--A數(shù)倉提供APt與組件交互11■冰&、尸基礎(chǔ)WeventMesh<__________________>?組件■土■,■?Nodel/Node2Qnpd粗件0rip睡件■■■■■■9

Nod91Nods2Q叩日組件ompd組件■■■■■■(三)資源兜底能力改造-多云彈擴(kuò)能力混合云改造:自研彈性調(diào)度組件,支持彈性多公有云、支持彈擴(kuò)非k8s節(jié)點(diǎn)、直接自愈API數(shù)字轉(zhuǎn)型架構(gòu)演避苕+雷中國系統(tǒng)架構(gòu)師大會(huì)SYSTEMARCHITECTCONFERENCECHINA202SKubenetesClusterClusterCronHPA______MachineDeploymentScaleupClusterAutoscalerCAPodPodPodPodPodScaleup在線業(yè)務(wù)利用率過高,需要伸縮節(jié)點(diǎn)兜底PodPodPodPodPod丿丿臥■大甲u(yù)M零0.8140.6110.8870.593E內(nèi)偵WWfmdrb^)MM.砸j*134IB-跡T?WK■5T*Ti□僅*KIMW*|J.:1E3WK、睥34已事時(shí)KHMflLB■ElWmmwn—■enn架構(gòu)演進(jìn)(三)資源兜底能力改造-鏡像多活自研鏡像多活組件:就近拉取、鏡像同步、vpccname切流數(shù)字轉(zhuǎn)型架構(gòu)演進(jìn)第+六屆中國系統(tǒng)架構(gòu)師大會(huì)SYSTEMARCHITECTCONFERENCECHINA202S架構(gòu)演進(jìn)ChinaUmx2023(四)四基礎(chǔ)組件能力改造-調(diào)度器數(shù)字轉(zhuǎn)型架構(gòu)演進(jìn)第+六屆中國系統(tǒng)架構(gòu)師大會(huì)SYSTEMARCHITECTCONFERENCECHINA202SColoSystem:資源調(diào)度節(jié)點(diǎn)管控cololetcololet:存儲(chǔ)管理系統(tǒng)隔離夠OnlinePod0--INodeManger(offlineJob)OnlineIPod0--INodeManger(offlineJob)基礎(chǔ)組件勁---------------------------------ApiServer1Colo-Manager^TColo-ScheulerColo-IDescheuler$?OS(openEuler)onPrometheusubuntu最初目標(biāo)為了解決應(yīng)用調(diào)度的均衡問題、降低告警。隨著業(yè)務(wù)發(fā)展開始承擔(dān)在離線混部工作。kube機(jī)站CPU使用率上線后上線前心虹亀機(jī)器內(nèi)存使用率02/2302/25^ed.vaEue02/2302/2502/1302/15(ryi702/19DI/2601/28e購02/17㈣

1901/2601/2801/300?/D1Q2/03W0502/0702/0902/11(四)四基礎(chǔ)組件能力改造-自愈組件數(shù)字轉(zhuǎn)型架構(gòu)演漫第+六屆中國系統(tǒng)架構(gòu)師大會(huì)SYSTEMARCHITECTCONFERENCECHINA202SApiServerjoba-manager--------event-meshI檢測自愈規(guī)則處理自愈

vrepairK?生成自愈一repairrule上報(bào)故障事件I—上報(bào)節(jié)點(diǎn)級(jí)自愈joba-agentjoba-agentjoba-agent節(jié)點(diǎn)級(jí)自愈收集故障自研自愈組件(Joba),通過NPD(Node-Problem-Detector)組件二次開發(fā)、實(shí)現(xiàn)自愈規(guī)則SOP與故障SOP。并實(shí)現(xiàn)joba-manager對故障進(jìn)行自愈,自愈形式有6種:(1)停止調(diào)度Node(2)驅(qū)逐Node(3)驅(qū)逐Node+彈擴(kuò)Node(4)刪除pod(5)強(qiáng)制刪除pod(6)單機(jī)自愈記錄自愈范圍自愈原因①描述①集群信息①節(jié)點(diǎn)時(shí)間nodeOrphanedPod孤兒Podt1-七20島5-4?:FiRnodeMemoryReadError內(nèi)存條故障-停止調(diào)度t!-■Mi■MM■)5-2j■■nodeOrphanedPod孤兒Pod■■門72...kt>■■■12-woPart4展望和收益數(shù)字轉(zhuǎn)型架構(gòu)演進(jìn)第+六屆中國系統(tǒng)架構(gòu)師大會(huì)SYSTEMARCHITECTCONFERENCECHIN

溫馨提示

  • 1. 本站所有資源如無特殊說明,都需要本地電腦安裝OFFICE2007和PDF閱讀器。圖紙軟件為CAD,CAXA,PROE,UG,SolidWorks等.壓縮文件請下載最新的WinRAR軟件解壓。
  • 2. 本站的文檔不包含任何第三方提供的附件圖紙等,如果需要附件,請聯(lián)系上傳者。文件的所有權(quán)益歸上傳用戶所有。
  • 3. 本站RAR壓縮包中若帶圖紙,網(wǎng)頁內(nèi)容里面會(huì)有圖紙預(yù)覽,若沒有圖紙預(yù)覽就沒有圖紙。
  • 4. 未經(jīng)權(quán)益所有人同意不得將文件中的內(nèi)容挪作商業(yè)或盈利用途。
  • 5. 人人文庫網(wǎng)僅提供信息存儲(chǔ)空間,僅對用戶上傳內(nèi)容的表現(xiàn)方式做保護(hù)處理,對用戶上傳分享的文檔內(nèi)容本身不做任何修改或編輯,并不能對任何下載內(nèi)容負(fù)責(zé)。
  • 6. 下載文件中如有侵權(quán)或不適當(dāng)內(nèi)容,請與我們聯(lián)系,我們立即糾正。
  • 7. 本站不保證下載資源的準(zhǔn)確性、安全性和完整性, 同時(shí)也不承擔(dān)用戶因使用這些下載資源對自己和他人造成任何形式的傷害或損失。

評論

0/150

提交評論