节点池配置管理
约束与限制
默认节点池DefaultPool不支持如下管理操作。
配置管理
为方便对CCE集群中的Kubernetes配置参数进行管理,CCE提供了配置管理功能,通过该功能您可以对核心组件进行深度配置,更多信息请参见kubelet。
仅支持在v1.15及以上版本的集群中对节点池进行配置,V1.15以下版本不显示该功能。
- 登录CCE控制台。
- 单击集群名称进入集群,在左侧选择“节点管理”,在右侧选择“节点池”页签。
- 单击节点池名称后的“更多 > 配置管理”。
- 在侧边栏滑出的“配置管理”窗口中,根据业务需求修改Kubernetes的参数值:
表1 kubelet组件配置 参数
参数说明
默认值
修改说明
备注
cpu-manager-policy
CPU管理策略配置,详情请参见CPU调度。
- none:关闭工作负载实例独占CPU的功能,优点是CPU共享池的可分配核数较多。
- static:开启工作负载实例独占CPU,适用于对CPU缓存和调度延迟敏感的场景。
none
-
-
kube-api-qps
与kube-apiserver通信的QPS
100
-
-
kube-api-burst
与kube-apiserver通信的burst
100
-
-
max-pods
kubelet管理的pod上限
-
-
pod-pids-limit
限制Pod中的进程数
-1
-
-
with-local-dns
是否使用本地IP作为该节点的ClusterDNS
false
-
-
event-qps
事件创建QPS限制
5
-
-
allowed-unsafe-sysctls
允许使用的不安全系统配置。
CCE从1.17.17集群版本开始,kube-apiserver开启了pod安全策略,需要在pod安全策略的allowedUnsafeSysctls中增加相应的配置才能生效(1.17.17以下版本的集群可不配置)。详情请参见Pod安全策略开放非安全系统配置示例。
[]
-
-
over-subscription-resource
节点超卖特性。
设置为true表示开启节点超卖特性。
false
-
-
colocation
节点混部特性。
设置为true表示开启节点混部特性。
false
-
-
kube-reserved-mem
system-reserved-mem
节点内存预留。
随节点规格变动,具体请参见节点预留资源策略说明
-
kube-reserved-mem,system-reserved-mem之和小于内存的一半
topology-manager-policy
设置拓扑管理策略。
合法值包括:
- restricted:kubelet 仅接受在所请求资源上实现最佳 NUMA对齐的Pod。
- best-effort:kubelet会优先选择在 CPU 和设备资源上实现NUMA对齐的Pod。
- none(默认):不启用拓扑管理策略。
- single-numa-node:kubelet仅允许在 CPU和设备资源上对齐到同一NUMA节点的Pod。
none
-
须知:请谨慎修改,修改topology-manager-policy和topology-manager-scope会重启kubelet,并且以更改后的策略重新计算容器实例的资源分配,这有可能导致已经运行的容器实例重启甚至无法进行资源分配。
topology-manager-scope
设置拓扑管理策略的资源对齐粒度。合法值包括:
- container (默认):对齐粒度为容器级
- pod:对齐粒度为pod级
container
resolv-conf
容器指定DNS解析配置文件
默认为空值
-
-
runtime-request-timeout
除长期运行的请求(pull、 logs、exec和attach)之外所有运行时请求的超时时长。
默认为2m0s
-
-
registry-pull-qps
每秒钟可以执行的镜像仓库拉取操作限值。
默认为5
取值范围为1~50
-
registry-burst
突发性镜像拉取的上限值,允许镜像拉取临时上升到所指定数量。
默认为10
取值范围为1~100,且取值必须大于等于registry-pull-qps的值。
-
serialize-image-pulls
开启时会通知kubelet每次仅拉取一个镜像。
默认为true
-
-
evictionHard: memory.available
硬驱逐信号memory.available门限
固定为100Mi
-
关于节点压力驱逐详情请参考节点压力驱逐。
须知:驱逐门限相关配置请谨慎修改,不合理的配置可能会导致节点频繁触发驱逐或节点已过载但未触发驱逐。
nodefs与imagefs分别对应kubelet及容器引擎使用的文件系统分区。
evictionHard: nodefs.available
硬驱逐信号nodefs.available门限
默认10%
范围1%~99%
evictionHard: nodefs.inodesFree
硬驱逐信号nodefs.inodesFree门限
默认5%
范围1%~99%
evictionHard: imagefs.available
硬驱逐信号imagefs.available门限
默认10%
范围1%~99%
evictionHard: imagefs.inodesFree
硬驱逐信号imagefs.inodesFree门限
默认为空,不设置
范围1%~99%
evictionHard: pid.available
硬驱逐信号pid.available门限
默认10%
范围1%~99%
evictionSoft: memory.available
软驱逐信号memory.available门限
默认为空,不设置
范围100Mi~1000000Mi,需同时配置对应驱逐信号的evictionSoftGracePeriod来配置驱逐宽限期,此值要求大于对应硬驱逐信号的门限
evictionSoft: nodefs.available
软驱逐信号nodefs.available门限
默认为空,不设置
范围1%~99%,若设置,需同时配置对应驱逐信号的evictionSoftGracePeriod来配置驱逐宽限期,此值要求大于对应硬驱逐信号的门限
evictionSoft: nodefs.inodesFree
软驱逐信号nodefs.inodesFree门限
默认为空,不设置
范围1%~99%,需同时配置对应驱逐信号的evictionSoftGracePeriod来配置驱逐宽限期,此值要求大于对应硬驱逐信号的门限
evictionSoft: imagefs.available
软驱逐信号imagefs.available门限
默认为空,不设置
范围1%~99%,需同时配置对应驱逐信号的evictionSoftGracePeriod来配置驱逐宽限期,此值要求大于对应硬驱逐信号的门限
evictionSoft: imagefs.inodesFree
软驱逐信号imagefs.inodesFree门限
默认为空,不设置
范围1%~99%,需同时配置对应驱逐信号的evictionSoftGracePeriod来配置驱逐宽限期,此值要求大于对应硬驱逐信号的门限
evictionSoft: pid.available
软驱逐信号pid.available门限
默认为空,不设置
范围1%~99%,需同时配置对应驱逐信号的evictionSoftGracePeriod来配置驱逐宽限期,此值要求大于对应硬驱逐信号的门限
表2 kube-proxy组件配置 参数
参数说明
默认值
修改说明
conntrack-min
系统中最大的连接跟踪表项数目。
可通过以下命令查询:
sysctl -w net.nf_conntrack_max
131072
-
conntrack-tcp-timeout-close-wait
控制TCP连接在关闭状态下等待的时间。
可通过以下命令查询:
sysctl -w net.netfilter.nf_conntrack_tcp_timeout_close_wait
1h0m0s
-
表3 网络组件配置(仅CCE Turbo集群可见) 参数
参数说明
默认值
修改说明
nic-minimum-target
节点池级别的节点最少绑定容器网卡数
默认:10
-
nic-maximum-target
节点池级别的节点预热容器网卡上限检查值
默认:0
-
nic-warm-target
节点池级别的节点动态预热容器网卡数
默认:2
-
nic-max-above-warm-target
节点池级别的节点预热容器网卡回收阈值
默认:2
-
表4 节点池Pod安全组配置(仅CCE Turbo集群可见) 参数
参数说明
默认值
修改说明
security_groups_for_nodepool
- 节点池上Pod默认使用的安全组,可填写安全组 ID,不配置则使用集群容器网络的默认安全组,并且最多可同时指定5个安全组ID,中间以英文分号(;)分隔。
- 优先级低于SecurityGroup资源对象配置的安全组。
-
-
表5 容器引擎Docker配置(仅使用Docker的节点池可见) 参数
参数说明
默认值
修改说明
native-umask
`--exec-opt native.umask
normal
不支持修改
docker-base-size
`--storage-opts dm.basesize
0
不支持修改
insecure-registry
不安全的镜像源地址
false
不支持修改
limitcore
容器core文件的大小限制,单位是Byte。
如果不设置大小限制,可设置为infinity。
5368709120
-
default-ulimit-nofile
容器内句柄数限制
{soft}:{hard}
该值大小不可超过节点内核参数nr_open的值,且不能是负数。
节点内核参数nr_open可通过以下命令获取:
sysctl -a | grep nr_open
image-pull-progress-timeout
如果超时之前镜像没有拉取成功,本次镜像拉取将会被取消。
默认为1m0s
该参数在v1.25.3-r0版本开始支持
表6 容器引擎Containerd配置(仅使用Containerd的节点池可见) 参数
参数说明
默认值
修改说明
devmapper-base-size
单容器可用数据空间
-
不支持修改
limitcore
容器core文件的大小限制,单位是Byte。
如果不设置大小限制,可设置为infinity。
5368709120
-
default-ulimit-nofile
容器内句柄数限制
1048576
该值大小不可超过节点内核参数nr_open的值,且不能是负数。
节点内核参数nr_open可通过以下命令获取:
sysctl -a | grep nr_open
image-pull-progress-timeout
如果超时之前镜像没有拉取成功,本次镜像拉取将会被取消。
默认为1m0s
该参数在v1.25.3-r0版本开始支持
- 单击“确定”,完成配置操作。