[发明专利]一种Kubernetes容器平台CPU绑核的方法与装置在审
申请号: | 202010825344.1 | 申请日: | 2020-08-17 |
公开(公告)号: | CN112052068A | 公开(公告)日: | 2020-12-08 |
发明(设计)人: | 陈林祥;蒋玉玲;田松;彭天彬 | 申请(专利权)人: | 烽火通信科技股份有限公司 |
主分类号: | G06F9/455 | 分类号: | G06F9/455;G06F9/50 |
代理公司: | 深圳市六加知识产权代理有限公司 44372 | 代理人: | 向彬 |
地址: | 430000 湖北省武*** | 国省代码: | 湖北;42 |
权利要求书: | 查看更多 | 说明书: | 查看更多 |
摘要: | |||
搜索关键词: | 一种 kubernetes 容器 平台 cpu 方法 装置 | ||
本发明公开了一种Kubernetes容器平台CPU绑核的方法与装置,其中方法包括:基于Kubernetes容器平台的DevicePlugin机制将可用CPU列表上报给Kubelet;创建容器Pod时指定CPU绑核信息,Kubelet根据上报的可用CPU列表和CPU绑核信息分配相应CPU核给容器Pod并记录分配信息;根据分配记录将分配的CPU核写入Linux系统的cpuset中,使容器Pod绑定到分配的CPU核上,从而实现CPU的亲和性绑定。上述方案充分利用了DevicePlugin机制,将可用CPU作为可调度设备资源发布给Kubelet,从而指定CPU核绑定,满足CPU敏感型应用的稳定运行。
技术领域
本发明属于容器平台软件产品技术领域,更具体地,涉及一种Kubernetes容器平台CPU绑核的方法与装置。
背景技术
Kubernetes是Google开源的一个容器编排引擎,它支持自动化部署、大规模可伸缩、应用容器化管理。近年来,基于Kubernetes的容器编排系统已成为事实标准,从传统的IT行业延伸至CT行业,各大企业都积极拥抱容器技术。容器技术降低了IT运维成本,缩短了业务交付周期,同时集成了敏捷开发云、应用管理、弹性伸缩、资源监控、微服务治理等功能的PaaS平台已逐渐成为业务上云的重要承载平台。
随着5G的发展,核心网电信云平台以及边缘计算云平台都正逐步从NFV(NetworkFunctions Virtualization,即网络功能虚拟化)虚拟化云平台演变为容器平台和虚拟机云平台共存的状态。电信应用越来越多的采用云原生的一些代表技术如容器、服务网格等来构建电信网络服务,而电信应用CT网元相对于IT应用来说,CPU敏感型应用较多,对性能及可靠性要求更高,往往需要实现对网元绑定到某个CPU核上运行的场景,以独占CPU资源运行提升网元性能。CPU敏感型应用主要有几种类型,例如对CPU高速缓存未命中敏感、对跨NUMA(Non Uniform Memory Access Architecture,即非统一内存访问架构)插槽的内存访问带来的延迟敏感等。
CPU绑核就是设定配置进程和CPU核的绑定关系,让某进程在指定的CPU核上运行。容器应用绑核虽然会在一定程度上降低整个集群的CPU利用率,但是能够保证业务性能及稳定性。利用CPU的亲和绑定方式,特定任务可以被指定只在某个CPU核上工作,因此减少了线程间不同核间频繁切换,核间线程切换容易导致因cache miss(即缓存未命中)和cachewrite back(即缓存回写)造成的大量性能损失。也可以使用软中断绑定功能isolcpus(CPUisolation,表示Linux进程或线程独占某一或某些CPU的方法)进一步限定某些CPU核不参与Linux系统调度,这样就可使线程独占该核,保证更多cache hit(即缓存命中)的同时,也避免了同一个核内的多任务切换开销。在容器云平台上,当节点上运行了很多CPU密集的Pod时,工作负载可能会迁移到不同的CPU核,对于CPU敏感型应用能够感知CPU缓存亲和性以及调度延迟的影响,可能造成线上业务抖动;其中,Pod是Kubernetes创建或部署容器的基本单位,一个Pod封装一个或多个应用容器。
该专利技术资料仅供研究查看技术是否侵权等信息,商用须获得专利权人授权。该专利全部权利属于烽火通信科技股份有限公司,未经烽火通信科技股份有限公司许可,擅自商用是侵权行为。如果您想购买此专利、获得商业授权和技术合作,请联系【客服】
本文链接:http://www.vipzhuanli.com/pat/books/202010825344.1/2.html,转载请声明来源钻瓜专利网。
- 上一篇:压合装置
- 下一篇:一种自走式花生捡拾联合收获机降尘装置