騰訊基于Kubernetes的企業(yè)級容器云架構_第1頁
騰訊基于Kubernetes的企業(yè)級容器云架構_第2頁
騰訊基于Kubernetes的企業(yè)級容器云架構_第3頁
騰訊基于Kubernetes的企業(yè)級容器云架構_第4頁
騰訊基于Kubernetes的企業(yè)級容器云架構_第5頁
已閱讀5頁,還剩19頁未讀, 繼續(xù)免費閱讀

下載本文檔

版權說明:本文檔由用戶提供并上傳,收益歸屬內容提供方,若內容存在侵權,請進行舉報或認領

文檔簡介

技術創(chuàng)新,變革未來

騰訊基于kubernetes的企業(yè)級容器云架構目錄架構簡介企業(yè)級容器云解決方案Next企業(yè)級容器云架構產品功能企業(yè)級容器云解決方案易用全組件自動化部署、統(tǒng)一配置管理、多策略灰度升級提供可視化、自動化的運維能力,降低使用者的人力成本和學習成本可靠舉例:1.4升級1.9版本Pod

Hash發(fā)生變化Container名稱發(fā)生變化,點分隔改為了下劃線分隔容器標簽發(fā)生變化pause容器的標簽=POD改為io.kubernetes.docker.type=podsandboxio.kubernetes.container.restartCount改為annotation.io.kubernetes.container.restartCounCgroup目錄結構發(fā)生變化,新增Pod層級平臺容災所有組件無單點;平臺本身支持熱升級;組件自身HA機制,如docker;多地域多可用區(qū)的容災設計管理機掛掉:對應用無影響計算節(jié)點掛掉:跨機遷移應用容災健康探針①

存活探針②

就緒探針負載均衡重啟機制① 區(qū)分異常原因② 本地重啟/跨機重啟黑名單機制數據容災集群核心數據的備份和恢復① Etcd② 核心數據庫云盤機制保護應用數據企業(yè)內部各個集群灰度運營??煽抠Y源管理CPUMemoryDiskSpaceNetworkTXNetworkRXDiskIO(includebuffer

IO)GPU一次現網事故一個用戶需求背景:廣告業(yè)務,8個集群,4個在線集群,4個離線集群,分布在四個地區(qū):北京、天津、成都、深圳。需求:減少機器,降低成本。手段:在線離線集群做合并。問題:容器只能管理CPU和內存,不能對網絡和磁盤IO做管理,導致在線應用受離線業(yè)務影響??煽吭O計目標?在某個cgroup網絡繁忙時,能保證其設定配額不會被其他cgroup擠占?在某個cgroup沒有用滿其配額時,其他cgroup可以自動使用其空閑的部分帶寬?在多個cgroup分享其他cgroup的空閑帶寬時,優(yōu)先級高的優(yōu)先;

優(yōu)先級相同時,

配額大的占用多,配額小的占用少?盡量減少為了流控而主動丟包下圖是兩個進程都拼命爭搶網絡帶寬時的效果。兩個進程的帶寬和時延都得不到任何程度的保證。?隊列:

不增加隊列,

對每個報文直接在正常代碼路徑上進行決策?Cgroup區(qū)分(標記):

在正常處理流程中,報文查找到目標socket結構之后,根據socket的owner

process來確定cgroup?報文決策:

令牌桶

+

共享令牌池

+

顯式借令牌?限速方式:

ECN標記

+

TCP滑窗

+

丟包可靠短信Email微信自定義渠道4種告警方式——可隨時修改158項告警87項指標采集通用不同的應用可以選擇不同的網絡模式同一主機的不同容器可以選擇不同的網絡模式自研容器網絡解決方案Galaxy(CNI網絡插件+調度器插件+控制器),面向所有場景:高性能互聯(lián)網業(yè)務、離線業(yè)務、在線離線混合場景、傳統(tǒng)有狀態(tài)服務、公有云…2219072611646248611744255482146168280500010000150002000025000性能Overlay方案性能TCP_RR(r/s)hostvxlanipipTCP_CRR(r/s)gateway2354083682212776752100772310500010000150002000025000TCP_RR(64)TCP_CRR(64)Underlay方案性能HostBridge NATIPIP+Gateway混合Overlay方案短鏈接IPIP包量比Vxlan多14.1%Gateway比Vxlan多40.5%方案被Flannel社區(qū)合并Underlay方案Bridge方式僅比Host差6%,一般overlay比Host差20~40%SRIOV方式比Bridge

CPU下降38.3%,包量+6%性能Docker、Docket、GaiastackP2P

Agent下載鏡像對比Registry與P2P

Agent流量占比對比鏡像下載引入BT協(xié)議對Docker

Daemon零入侵每層分別做種優(yōu)化blob下載策略發(fā)表論文:《FID:

A

Faster

Image

DistributionSystemfor

Docker

Platform》2017IEEE2ndInternationalWorkshopsonFASW安全能力擴展:彈性伸縮PodPodPod微服務/通用服務AutoscalercontrollerprometheusMetrics-serverAPP彈性伸縮:主動擴縮容擴容可以指定新版本縮容可以定點裁撤自動擴縮容資源閾值自定義指標閾值實例個數范圍周期性自動伸縮AutoscalercontrollerApiservercluster-agentCloud

API集群彈性伸縮:監(jiān)控節(jié)點資源使用率自動遷移低負載Node上的Pod,完成縮容一定數量Pod因資源不足pending時,自動擴容能力擴展:灰度升級在GPU集群中有一個長時間服務應用prd-cloud-str-003-p40-cluster1。該應用有25個實例,每個實例需要2個GPU卡。用來提供圖片識別的OCR服務。當該服務要升級新的版本時,如果對所有實例停止,則會造成服務中斷;如果采用滾動升級,無法保證升級過程是否有異常,以及無法充分驗證新版本的可用性(即使經過了測試階段的測試)。通常采用灰度升級的方式:即選擇某一個或N個實例先升級到新版本,在充分穩(wěn)定驗證后,再考慮升級其他實例,而該灰度的過程可以分為任意批次。有時為了驗證多個版本,一個應用內也可以同時又多個版本并行存在。充分保證現網的服務質量以及版本的可控性。能力升級:灰度升級如左圖所示,對某一個實例從v7升級到v8版本。2018-02-06

11:46:38

V7版本開時候運行2018-02-09

09:33:02

對該實例做灰度升級,從V7版本升級到V8版本2018-02-09

09:33:02

開始pull

V8版本的imagePS:灰度升級屬于原地升級,因此不需要重新過調度,升級的效率也會提升。每次升級可以選擇要升級的實例個數以及具體哪些(個)實例。能力擴展:存儲場景物理硬ephc盤 cephFScephRBDRBD容containercontainercontainer本地磁盤container間上報 在線擴quota權限管理空自動調度共享云盤container內置云盤container本地磁盤基于本機磁盤上報至調度器作為資源進行調度2類存儲,3種場景本地磁盤:延時低,不可遷移共享云盤:云存儲,多容器共享,同時讀寫內置云盤:云存儲,每容器獨享,用戶無感知云存儲支持在線擴容、quota管理、權限管理共享云盤基于cephFS內置云盤基于cephRBD騰訊內部ceph版本,微信同款能力擴展:GPU支持分布式存儲Ceph海量小數據讀寫優(yōu)化不同用戶配額管理任務帶盤遷移智能拓撲感知GPU卡拓撲感知資源訪問代價樹決策資源調度算法解決碎片化異構GPU統(tǒng)一管理多種調度策略,多租戶管理GPU卡與CPU核自動綁定支持單機多卡和多機多卡發(fā)表論文:《GaiaScheduler:

AKubernetes-based

Scheduler

Framework》TheIEEEISPA2018(16thIEEEInternationalSymposiumonParallelandDistributedProcessingwith

Applications)能力擴展:GPU支持資源-訪問代價樹拓撲節(jié)點中存儲3個信息:子節(jié)點的GPU通信方式(SOC、PXB、PHB或PIX)可用的GPU資源數(如果下屬n張GPU卡則為n)節(jié)點通信開銷(非GPU節(jié)點為0)GPU節(jié)點存儲3個信息:GPU

id可用的GPU資源數(GPU節(jié)點為1)節(jié)點通信開銷(數字越小,訪問代價越低)四類通信方式分類中,通信開銷最大的是SOC,其次是PXB,再次是PHB,PIX通信方式的GPU之間的通信開銷最小。Singularand

linkFragment成本GPU使用方式實現VCUDA在vm中構建wrapper

library以攔截GPU調用并將這些調用重定向到宿主機執(zhí)行Amazon將設備直接掛在到vm中GPUvm在Zen的hypervisor層實現了全虛擬化。為了隔離運行在物理GPU上的多個VM,GPUvm將物理GPU分成幾個部分,并將每個部分分配給單個VM。NVIDIA

GRID在硬件層面實現GPU虛擬化,每個容器可以綁定一個虛擬GPUNVIDIA

Docker通過將GPU設備及運行時的庫轉為volume掛載到容器中實現了容器與驅動的解耦。但是一個GPU設備僅能掛載到一個容器中,不支持容器間共享GPU設備ConvGPU僅支持內存資源的共享且僅處理單個GPU容器使用GPU的問題:需要特定的硬件設備不支持容器共享僅支持內存資源虛擬化僅支持單個GPU卡采用DevicePlugin:GPU資源的發(fā)現為任務分配相應的硬件資源及配置容器運行時環(huán)境在物理GPU上執(zhí)行一樣。Performance.

GaiaGPU應當保證vGPU的性能與原生GPU性能相近。Isolation.

GaiaGPU可以有效的分配和回收每個容器使用的GPU資源并實現不同容器間的資源隔離。Native_time(seconds)GaiaGPU_time(seconds)Difference(%)Tensorflow47.8247.880.13Caffe22.4722.500.15PyTorch69.3369.640.44CNTK7.397.410.27Numberof

vGPUs12345resourceper

vGPU50.2發(fā)表論文:《GaiaGPU:

溫馨提示

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

評論

0/150

提交評論