为增强系统的稳定性和安全性,自ContainerOS 3.4起,系统盘已调整为全只读模式。因此,升级节点的ContainerOS至3.4.0及以上版本时,必须确保节点池已绑定一块数据盘,以确保系统可正常启动和运行。
为确保业务连续性,升级流程主要分为两个步骤:
扩容节点池:编辑现有节点池,通过增加期望节点数并调整相关配置(数据盘、操作系统等)来创建符合要求的新节点。
缩容节点池:新节点正常运行后,逐步移除原有的老版本ContainerOS节点。
注意事项
使用最新ContainerOS版本时,关注以下限制:
不支持同时使用ack-advanced-audit组件。
如需使用NAS或CPFS存储卷,需安装cnfs-nas-daemon。
节点池有且只有一块数据盘。
节点池配置中的实例预自定义数据和实例自定义数据都运行在bootstrap容器中,不能直接写入宿主机/etc/hosts、/etc/resolv.conf、/usr等目录。
步骤一:编辑节点池并扩容
在ACK集群列表页面,单击目标集群名称,在集群详情页左侧导航栏,选择。
在操作列,单击目标节点池对应的编辑,按照页面提示调整以下配置。
以下仅介绍关键配置,详细配置项说明请参见创建和管理节点池。
操作系统:选择新ContainerOS版本。
数据盘:若原节点池未配置数据盘,必须新增一块数据盘,以存储系统运行时所需临时文件、日志缓存等。可根据业务需求选择云盘类型和容量。
在操作列,单击目标节点池对应的扩缩容,将期望节点数设置为当前节点池中节点数量的两倍。
例如,如果当前节点池中有3个节点,则修改为6,以便新旧节点共存过渡。
提交配置后,等待扩容完成。
节点池更新完成后,可单击节点池名称进入节点管理页签。新节点将基于更新后的配置自动部署,可通过OS版本字段与旧节点进行区分。
步骤二:移除老节点
等待新节点全部就绪并承载业务流量后,开始逐步移除原有的老版本ContainerOS节点。
在节点管理页面,勾选老节点,然后单击页面下方的批量移除。
重要为降低风险,建议逐个移除旧节点,每次操作后观察集群健康状态和服务可用性,确认无异常后再继续下一轮移除。
在移除节点对话框,按照页面提示完成节点的移除。
关于移除节点的注意事项及功能说明,请参见移除节点。
勾选自动排空节点后:系统将自动驱逐节点上的Pod至其他可用节点,保障服务不中断。
勾选释放ECS实例后:
按量付费节点:移除节点的同时,其对应的ECS实例也会被释放,避免资源浪费。
包年包月节点:移除节点后,请在ECS实例到期前申请退款,提前释放实例,或将包年包月实例转按量付费实例后释放。
重复移除操作,直至所有老节点均从节点池中被移除。