华为云CCE集群增强型CPU管理策略enhanced-static
【摘要】 华为云cce集群提供增强型CPU管理策略(enhanced-static),兼容静态绑核CPU管理策略的基础上,新增一种符合某些资源特征的Burstable Pod(要求CPU的requests和limits参数值都是正整数)优先使用某些CPU的能力,以减少应用在多个CPU间频繁切换带来的影响
背景
开源Kubernetes默认提供的CPU管理策略有none和static两种:
none: 不开启CPU管理策略,默认值。
static:开启静态绑核的CPU管理策略,允许为节点上具有某些资源特征的 Pod(Guaranteed pod)赋予CPU亲和性和独占性。
华为云cce集群提供增强型CPU管理策略(enhanced-static),兼容静态绑核CPU管理策略的基础上,新增一种符合某些资源特征的Burstable Pod(要求CPU的requests和limits参数值都是正整数)优先使用某些CPU的能力,以减少应用在多个CPU间频繁切换带来的影响。该特性是基于Huawei Cloud EulerOS 2.0内核中优化了CPU调度能力实现的。在Pod容器优先使用的CPU利用率超过85%时,会自动分配到其他利用率较低的CPU上,进而保障了应用的响应能力。
约束与限制
使用该特性,需同时满足以下条件:
- 集群版本为v1.23及以上。
- 节点操作系统为Huawei Cloud EulerOS 2.0。
- 弹性云服务器。物理机节点不支持使用CPU管理策略。
操作演示
未开启增强型CPU管理策略
-
创建节点池,规格选择8C/16G。
-
创建工作负载
kind: Deployment apiVersion: apps/v1 metadata: name: enhanced-static spec: replicas: 1 selector: matchLabels: app: enhanced-static template: metadata: labels: app: enhanced-static spec: containers: - name: container-1 image: swr.cn-north-4.myhuaweicloud.com/testapp/centos-stress:v1 command: - /bin/bash args: - '-c' - while true; do echo hello; sleep 10; done resources: limits: cpu: '4' memory: 2Gi requests: cpu: '3' memory: 2Gi
-
进入容器内使用命令压测cpu资源,并在grafana页面观察192.168.0.114节点每个核心的使用率
stress-ng -c 4 -t 3600
开启增强型CPU管理策略
- 点击节点池的配置管理-kubelet组件配置-CPU管理策略配置-选择enhanced-static
- 步骤 5 登录到节点上查看优先核绑定详情,查看路径:/var/lib/kubelet/cpu_manager_state;修改配置后该文件会自动删除重建
0-7:表示节点上所有核心
10001-10003:表示优先核编号,优先核为cpu1、cpu2、cpu3
- 进入容器内使用命令压测cpu资源,并在grafana页面观察192.168.0.114节点每个核心的使用率
stress-ng -c 4 -t 3600
【版权声明】本文为华为云社区用户原创内容,转载时必须标注文章的来源(华为云社区)、文章链接、文章作者等基本信息, 否则作者和本社区有权追究责任。如果您发现本社区中有涉嫌抄袭的内容,欢迎发送邮件进行举报,并提供相关证据,一经查实,本社区将立刻删除涉嫌侵权内容,举报邮箱:
cloudbbs@huaweicloud.com
- 点赞
- 收藏
- 关注作者
评论(0)