检测到您已登录华为云国际站账号,为了您更好的体验,建议您访问国际站服务网站 https://www.huaweicloud.com/intl/zh-cn
不再显示此消息
基于Prometheus指标的弹性伸缩实践 Kubernetes默认的HPA策略只支持基于CPU和内存的自动伸缩,在复杂的业务场景中,仅使用CPU和内存使用率指标进行弹性伸缩往往无法满足日常运维需求。为此,CCE提供云原生监控插件(kube-prometheus-stack),可
不同应用部署到不同的节点,有助于隔离应用,防止一个应用的问题影响到其他应用。 您可以使用以下方式来选择Kubernetes对Pod的调度策略: 表1 工作负载调度策略 调度策略 YAML字段定义 说明 参考文档 节点选择 nodeSelector 最简单的调度形式,通过节点所具有的标签选择希望调度的
单击“创建工作负载”,具体操作步骤详情请参见创建工作负载。 填写基本信息。“CCI弹性承载”选择“强制调度策略”。关于调度策略更多信息,请参考调度负载到CCI。 CCE集群创建工作负载时,需要弹性到CCI,健康检查不支持配置TCP启动探针。 进行容器配置。 配置完成后,单击“创建工作负载”。
type: Value value: 30 # 指标满足(实际值/30)±0.1范围就会触发扩缩容 --- apiVersion: autoscaling/v2 kind: HorizontalPodAutoscaler metadata:
单击“创建工作负载”,具体操作步骤详情请参见创建工作负载。 填写基本信息。“CCI弹性承载”选择“强制调度策略”。关于调度策略更多信息,请参考调度负载到CCI。 CCE集群创建工作负载时,需要弹性到CCI,健康检查不支持配置TCP启动探针。 进行容器配置。 配置完成后,单击“创建工作负载”。
在左侧导航栏中选择“节点管理”,在需要开启CPU Burst弹性限流的节点池中,单击“更多 > 混部配置”。 确认“节点池混部开关”及“CPU Burst 弹性限流”开关已打开,详情请参见云原生混部配置。 已有的混部策略中,当CPU Burst开关由打开到关闭时,已经设置CPU Burst的存量Pod不会关闭CPU
指定节点调度:指定插件实例部署的节点。若不指定,将根据集群默认调度策略进行随机调度。 指定节点池调度:指定插件实例部署的节点池。若不指定,将根据集群默认调度策略进行随机调度。 自定义亲和策略:填写期望插件部署的节点标签实现更灵活的调度策略,若不填写将根据集群默认调度策略进行随机调度。 配置建议: 使用默认配置
一节点,配合autoscaler的水平扩缩容能力,快速缩容释放资源,节约成本并提高资源利用率。 1. 统计业务负载中Pod的生命周期,将有相近生命周期的Pod调度到同一节点 2. 对配置了自动扩缩容策略的集群,通过调整节点的缩容注解,优先缩容使用率低的节点 arguments参数:
Turbo后,该有状态应用不再支持“动态挂载”的自动扩容能力。 在集群控制台左侧导航栏中选择“工作负载”,切换至“有状态负载”页签,找到目标工作负载,记录缩容前的实例数,并将工作负载实例数需要缩容到0。 对每个实例使用的PVC均需要执行步骤2~6。 查看有状态应用使用PVC的方式。 kubectl get statefulset
扩缩容节点池 您可指定节点池中的某个规格进行扩缩容。 默认节点池不支持扩缩容,请通过创建节点添加。 登录CCE控制台。 单击集群名称进入集群,在左侧选择“节点管理”,在右侧选择“节点池”页签。 单击节点池名称后的“扩缩容”。 在弹出的“节点池扩缩容”窗口中,设置扩缩容参数。 扩缩容:选择“扩容节点”或“缩容节点”。
允许 - 该配置影响控制器对伸缩策略相关指标反应的灵敏程度,当配置为0时,指标达到策略阈值时立即触发弹性 配置建议: 结合业务资源占用行为特点配置:如业务资源占用随时间的“突刺”特征明显,建议保留一定的容忍度值,避免因业务短时资源占用飚高导致预期之外的弹性行为 父主题: 集群
弹性云服务器-物理机节点不支持使用CPU管理策略。 为集群开启CPU管理策略(DefaultPool中的节点) 在创建集群时的“高级配置”中可以选择开启CPU管理策略。 开启:对应Kubernetes策略中的static,即使用CPU绑核。 关闭:对应Kubernetes策略中的none,即不使用CPU绑核。
在CCE控制台也可以设置镜像拉取策略,在创建工作负载时设置“更新策略”:勾选表示总是拉取镜像(Always),不勾选则表示按需拉取镜像(IfNotPresent)。 图1 设置更新策略 建议您在制作镜像时,每次制作一个新的镜像都使用一个新的Tag,如果不更新Tag只更新镜像,当拉取策略选择为IfNo
容器监控的内存使用率与实际弹性伸缩现象不一致 问题现象 容器监控的内存使用率与实际弹性伸缩现象不一致,例如容器内存使用率在界面上显示为40%左右,而HPA设置缩容阈值为70%,但界面上显示的内存使用率低于HPA阈值后并没有发生缩容。 问题根因 界面上显示的容器内存使用率与HPA弹性伸缩的内存使用率在计算方式上存在差异:
容器调度与弹性插件 Volcano调度器 CCE集群弹性引擎 CCE容器弹性引擎 CCE突发弹性引擎(对接CCI) 容器垂直弹性引擎 父主题: 插件
漏洞修复策略 集群漏洞修复周期 高危漏洞: Kubernetes社区发现漏洞并发布修复方案后,CCE一般在1个月内进行修复,修复策略与社区保持一致。 操作系统紧急漏洞按照操作系统修复策略和流程对外发布,一般在一个月内提供修复方案,用户自行修复。 其他漏洞: 按照版本正常升级流程解决。
未运行的Pod不会被调度到该节点。 Pod可以在这个节点上一直运行。 通过控制台配置容忍策略 登录CCE控制台。 在创建工作负载时,在“高级设置”中找到“容忍策略”。 添加污点容忍策略。 表1 容忍策略设置参数说明 参数名 参数描述 污点键 节点的污点键。 操作符 Equal:设置此操
GPU虚拟化节点弹性伸缩配置 当集群中GPU虚拟化资源不足时,支持自动进行GPU节点的弹性伸缩。本文将指导您如何创建GPU虚拟化节点的弹性伸缩策略。 前提条件 已创建一个v1.28或v1.29版本的集群。 在集群中安装CCE AI套件(NVIDIA GPU)(2.7.5及以上版本
Kubernetes版本:格式为X.Y.Z,继承社区版本策略,其中X对应社区Kubernetes的主要版本,Y对应社区Kubernetes的次要版本,Z对应社区Kubernetes的补丁版本,详情请参见社区Kubernetes版本策略。关于CCE支持的Kubernetes版本详情,请参见Kubernetes版本发布记录。
CCE容器弹性引擎插件版本发布记录 表1 CCE容器弹性引擎插件版本记录 插件版本 支持的集群版本 更新特性 1.5.3 v1.21 v1.23 v1.25 v1.27 v1.28 v1.29 支持AHPA 1.4.30 v1.21 v1.23 v1.25 v1.27 v1.28