在ACK集群中,节点是集群中的物理或虚拟机器,用于运行容器化应用程序。节点池是一组具有相同配置和用途的节点,例如节点规格、可用区、标签、污点等,便于对集群中的节点进行分组管理和运维。您可以在创建节点池时指定节点属性,也可以修改现有节点池的配置。
前提条件
已创建ACK集群,请参见创建ACK托管集群。
节点池类型
普通节点池:为提供管理一组同质节点的能力,同一个节点池内具有相同的节点配置,例如规格、标签(Label)、污点(Taint)。更多信息,请参见节点池概述。
托管节点池:在普通节点池基础上,提供CVE自动修复、自动触发故障节点修复等能力,从而实现托管的自动化节点运维。更多信息,请参见托管节点池概述。
说明仅ACK集群Pro版支持托管节点池。
关于两种节点池的差异,请参见托管节点池与普通节点池的区别。
操作步骤
创建或编辑节点池时不会影响其他已有节点池内节点和业务的运行。
登录容器服务管理控制台,在左侧导航栏选择集群。
在集群列表页面,单击目标集群名称,然后在左侧导航栏,选择 。
在节点池页面,单击创建节点池,然后在创建节点池对话框,完成创建节点池的配置项。
普通配置
高级配置
展开高级选项(选填),配置节点扩缩容策略。
配置项
描述
扩缩容策略
优先级策略:根据以上配置的虚拟交换机的优先级进行扩缩容(选择的虚拟交换机的顺序,由上到下优先级递减)。当优先级较高的虚拟交换机所在可用区无法创建ECS实例时,自动使用下一优先级的虚拟交换机创建ECS实例。
成本优化策略:按vCPU单价从低到高尝试创建。当伸缩配置已设置抢占式计费方式的多实例规格时,优先创建对应抢占式计费实例。当抢占式计费实例规格由于库存等原因无法创建时,自动尝试以按量付费的方式创建。
当付费类型为抢占式实例时,除允许抢占式实例补偿外,您还可以配置以下参数:
按量实例所占比例%:节点池实例中按量实例应占的比例,取值范围为[0,100]。
允许按量实例补偿:开启后,如果因价格或库存等原因无法创建足够的抢占式实例,伸缩组将自动尝试创建按量实例,以满足ECS实例数量要求。
均衡分布策略:只有设置多个专有网络交换机时,均衡分布策略才能生效。在伸缩组指定的多可用区(即指定多个专有网络交换机)之间均匀分配ECS实例。如果由于库存不足等原因造成可用区之间不平衡,您可以再次进行均衡操作,以平衡资源的可用区分布。
重要节点池创建完成后,扩缩容策略不支持编辑。
当付费类型为抢占式实例时,您可以设置是否开启允许抢占式实例补偿。开启后,当收到抢占式实例将被回收的系统消息时(即抢占式实例被回收前5分钟左右),开启弹性的节点池将尝试创建新的实例,替换掉将被回收的抢占式实例。
展开高级选项(选填),配置资源组、ECS标签、污点等信息。
单击确认配置。
在节点池列表,如果节点池状态显示初始化中,表明节点池正在创建。创建完成后,状态显示为已激活。
相关操作
节点池激活完成后,您可以在节点池列表区域,按需进行以下操作。
界面词 | 说明 | 相关文档 |
同步节点池 | 节点信息异常时,同步节点池的数据信息。 | 无 |
详情 | 节点池配置详情。 | 无 |
编辑 | 调整节点池的配置,例如节点池所在的虚拟交换机、托管节点池配置、付费类型、实例规格、启用或停用弹性伸缩等。 | |
监控 | 集成阿里云Prometheus监控服务,展示对应ECS实例的基本监控信息。 | |
扩缩容 | 自动化调整节点池的期望节点数,实现节点池扩缩容,将节点数目维持在期望数量,节省业务成本。 | |
配置登录方式 | 设置节点的登录方式,支持密钥和密码两种方式。 | 参见前文的普通配置 |
开启托管 | 开启托管节点池的相关配置,例如自愈规则、自动升级规则、CVE自动修复等。 | 参见前文的普通配置 |
添加已有节点 | 通过自动添加节点和手动添加节点两种方式将已有的ECS实例添加到集群中。 | |
克隆 | 基于现有节点池配置,克隆期望数量的节点池。 | 无 |
节点恢复 | 当集群托管节点池中的节点发生异常时,ACK会自动发起节点恢复操作,使节点保持正常运行状态。 | |
修复 CVE(OS) | 一键修复节点池高危CVE漏洞的便捷能力。 | |
Kubelet 配置 | 修改节点池内节点的kubelet配置。 | |
OS 配置 | 当Linux系统的OS参数默认配置无法满足业务需求,可以在节点池维度自定义节点的OS参数配置。 | |
更换操作系统 | 更换节点操作系统类型,或升级操作系统的版本。 | 无 |
Kubelet 升级 | 在节点池维度升级节点,包括kubelet和容器运行时的升级。 | |
删除 | 删除不再使用的节点池,以减少不必要的资源浪费。 |
常见问题
如何基于创建好的ECS实例创建自定义镜像,并使用该镜像创建节点?
您可以在创建ECS实例后,根据业务需要自定义该实例(如安装软件、部署应用环境等),并为更新后的实例创建自定义镜像。使用该镜像创建的新实例,会包含您已配置的自定义项,省去您重复自定义实例的时间。
登录ECS实例,执行以下命令,删除指定的文件。关于如何登录实例,请参见使用Workbench工具以SSH协议登录Linux实例。
chattr -i /etc/acknode/nodeconfig-* rm -rf /etc/acknode systemctl disable ack-reconfig rm -rf /etc/systemd/system/ack-reconfig.service rm -rf /usr/local/bin/reconfig.sh rm -rf /var/lib/cloud
基于ECS实例创建自定义镜像。相关注意事项和具体操作步骤,请参见使用实例创建自定义镜像。
配置节点池,选择操作系统类型为自定义镜像,并参见前文说明完成节点池的创建。