Kubernetes 资源拓扑感知调度优化
摘要
近年来,随着腾讯内部自研上云项目的不断发展,越来越多的业务开始使用云原生方式托管自己的工作负载,容器平台的规模因此不断增大。以 Kubernetes 为底座的云原生技术极大推动了云原生领域的发展,已然成为各大容器平台事实上的技术标准。在云原生场景下,为了最大化实现资源共享,单台宿主机往往会运行多个不同用户的计算任务。如果在宿主机内没有进行精细化的资源隔离,在业务负载高峰时间段,多个容器往往会对资源产生激烈的竞争,可能导致程序性能的急剧下降,主要体现为:
- 资源调度时频繁的上下文切换时间
- 频繁的进程切换导致的 CPU 高速缓存失效
因此,在云原生场景下需要针对容器资源分配加以精细化的限制,确保在 CPU 利用率较高时,各容器之间不会产生激烈竞争从而引起性能下降。
欢迎在评论区写下你对这篇文章的看法。