管理节点池
操作场景
为方便对CCE集群中的kubernetes配置参数进行管理,华为云开发了配置管理功能,通过该功能您可以对核心组件进行深度配置,更多信息请参见kubelet。
本文将介绍集群创建后对节点池的“配置管理”功能。
约束与限制
- 仅支持在v1.15及以上版本的集群中对节点池进行配置,V1.15以下版本不显示该功能。
- 默认节点池DefaultPool不支持修改该类配置。
操作步骤
- 登录CCE控制台,在左侧导航栏中选择“资源管理 > 节点池管理”。
- 在集群选择框中,选择集群,可查看到当前集群下所有的节点池。
- 单击节点池名称后的“配置管理”。图1 节点池配置管理
- 在侧边栏滑出的“配置管理”窗口中,根据业务需求修改Kubernetes的参数值:
表1 配置管理参数 组件
参数
详情
默认
修改限制
docker
native-umask
`--exec-opt native.umask
normal
-
docker-base-size
`--storage-opts dm.basesize
10G
-
kube-proxy
conntrack-min
sysctl -w net.nf_conntrack_max
131072
支持在节点池生命周期中修改
conntrack-tcp-timeout-close-wait
sysctl -w net.netfilter.nf_conntrack_tcp_timeout_clouse_wait
1h0m0s
kubelet
cpu-manager-policy
`--cpu-manager-policy
none
支持在节点池生命周期中修改
kube-api-qps
与kube-apiserver通信的qps
100
kube-api-burst
与kube-apiserver通信的burst
100
max-pods
kubelet管理的pod上限
110
with-local-dns
是否使用本地IP作为该节点的ClusterDNS
false
allowed-unsafe-sysctls
允许使用的不安全系统配置
[]
- 单击“确定”,完成配置操作。
编辑节点池
- 登录CCE控制台,在左侧导航栏中选择“资源管理 > 节点池管理”。
- 在集群选择框中,选择集群,可查看到当前集群下所有的节点池。
- 单击节点池名称后的“编辑”,在弹出的“编辑节点池”中,配置以下参数:
表2 配置节点池参数 参数
参数说明
节点池名称
自定义节点池名称。
节点个数
请根据业务需求调整节点个数。
弹性扩缩容
默认不开启。
单击
开启后,节点池将根据业务需求自动创建或删除节点池内的节点,参数设置如下:
- 节点数上限和节点数下限:您可设置节点数的上限和下限,保证节点数在合理的范围内伸缩。
- 优先级:该数值表示节点池之间进行弹性扩缩容的优先级,数值越大优先级越高,如设置为4的节点池比设置为1的节点池优先启动弹性伸缩。若多个节点池的值设置相同,如都设置为2,表示这几个节点池之间不分优先级,系统将按最小资源浪费原则进行伸缩。
- 弹性缩容冷却时间:请设置时间,单位为分钟。弹性缩容冷却时间是指当前节点池扩容出的节点多长时间不能被缩容。
为保证功能的正常使用,节点池开启弹性扩缩容功能后,请务必安装AutoScaler插件。
编辑密钥对
(仅新加坡Region可用)
默认不开启。
单击
开启后,可选择已有密钥对或创建密钥。密钥对用于远程登录节点时的身份认证。
Taints
- 默认为空。支持给该节点池扩容出来的节点加Taints来设置反亲和性,每个节点池最多配置10条Taints,每条Taints包含以下3个参数:
- Key:必须以字母或数字开头,可以包含字母、数字、连字符、下划线和点,最长63个字符;另外可以使用DNS子域作为前缀。
- Value:必须以字符或数字开头,可以包含字母、数字、连字符、下划线和点,最长63个字符。
- Effect:只可选NoSchedule,PreferNoSchedule或NoExecute。
须知:Taints配置时需要配合Pod的toleration使用,否则可能导致扩容失败或者Pod无法调度到扩容节点。
K8S标签
K8S标签是附加到 Kubernetes 对象(比如 Pods)上的键值对,旨在用于指定对用户有意义且相关的对象的标识属性,但不直接对核心系统有语义含义。 详细请参见Labels and Selectors。
资源标签
如果您需要使用同一标签标识多种云资源,即所有服务均可在标签输入框下拉选择同一标签,建议在TMS中创建“预定义标签”。
预定义标签对所有支持标签功能的服务资源可见,通过使用预定义标签可以提升标签创建和迁移效率。具体请参见创建预定义标签。
标签更改不会影响原有节点。
- 配置完成后,单击“保存”。
在节点池列表中可查看到节点池状态为“伸缩中”,待状态变为“完成”,节点池参数编辑成功,修改的配置后将同步到节点池下的已有节点。
删除节点池
删除节点池,会先删除节点池中的节点,节点删除后,原有节点上的工作负载实例会自动迁移至其他节点池的可用节点。如果工作负载实例具有特定的节点选择器,且如果集群中的其他节点均不符合标准,则工作负载实例可能仍处于无法安排的状态。
- 登录CCE控制台,在左侧导航栏中选择“资源管理 > 节点池管理”。
- 在集群选择框中,选择集群,可查看到当前集群下所有的节点池。
- 单击节点池名称后的“更多 > 删除”。
- 在弹出的“删除节点池”窗口中,请仔细阅读界面提示。
- 确定要对节点池进行删除操作后,请在输入框中输入DELETE并单击“是”,即可完成节点池的删除。
拷贝节点池
通过CCE控制台可以方便的拷贝现有节点池的配置,从而创建新的节点池。
- 登录CCE控制台,在左侧导航栏中选择“资源管理 > 节点池管理”。
- 在集群选择框中,选择集群,可查看到当前集群下所有的节点池。
- 单击节点池名称后的“更多 > 拷贝”。
- 在弹出的“创建节点池”窗口中,可以看到拷贝的节点池配置,您可以根据需要进行修改,确定配置后单击“下一步:配置确认”。
- 在“配置确认”步骤中再次确认规格并单击“提交”,即可完成节点池的拷贝并创建新的节点池。
迁移节点
您可以将同一个集群下某个节点池中的节点迁移到默认节点池(defaultpool)中,暂不支持将默认节点池(defaultpool)中的节点迁移到其他节点池中,也不支持将自定义节点池中的节点迁移到其他自定义节点池。
- 登录CCE控制台,在左侧导航栏中选择“资源管理 > 节点池管理”。
- 在集群选择框中,选择集群,可查看到当前集群下所有的节点池。
- 单击待迁移的节点池名称后的“更多 > 迁移”。
- 在弹出的“节点迁移”窗口中,选择目标节点池和待迁移节点。
- 请确认待迁移节点与目标节点池的磁盘规格是否相同。
- 迁移完成后,节点原有资源标签、K8S标签、Taints不受影响,并将为其打上未拥有的目标节点池的K8S标签、Taints。
- 单击“确定”,即可完成节点迁移。
