在Kubernetes集群中,随着负载的动态变化,可能会出现资源过剩或资源不足的情况。为了提高资源利用率,ACK支持变配Worker节点,以便灵活调整集群的资源配置。
注意事项
节点排水操作会在遵循Pod Disruption Budget(PDB)的前提下,将节点上的Pod驱逐至其他可用节点。为确保服务高可用性,建议您采用多副本部署策略,将工作负载分散在多个节点上,同时为关键业务配置PDB,控制同时中断的Pod数量。
操作过程中可能存在非预期风险,请提前做好相关的数据备份。
操作过程中,后台会将目标节点设置为不可调度状态。
操作步骤
您可以对单节点进行变配,也可以批量变配同一节点池或多个节点池中的节点。变配前,请参见ECS实例规格配置建议选择Worker节点规格。
下文仅介绍按量付费类型的Worker节点变配。关于更多升降配方式,请参见升降配方式概述。
单节点变配实例规格
登录容器服务管理控制台,在左侧导航栏选择集群列表。
在集群列表页面,单击目标集群名称,然后在左侧导航栏,选择 。
在节点页面中,在目标节点操作列选择
,在弹出框中单击确定,排空节点上的已有Pod。单击目标节点的实例ID,进入实例详情页面,查看实例规格等信息。
在实例详情页面的配置信息页签,单击实例规格右侧更换,进入更改实例规格页面。
选择需要调整的目标实例规格,确认预估费用并单击停止实例并继续。
在停止实例对话框,选择停止方式,单击确定。停止实例方式详情,请参见停止实例。
变配完成后,单击启动实例并返回,在弹出的启动实例对话框,单击确定。等待变配节点自动加入集群且状态变成就绪,在目标节点操作列选择
,设置为可调度,完成Worker节点的资源变配。
批量变配实例规格
可通过以下两种方式批量变配集群内节点。
批量更改多个节点池内节点实例规格:该方式不会替换ECS实例,保留了节点实例内的自定义配置。
批量更改同一节点池内节点实例规格:该方式会替换现有ECS实例,且节点池中后续所有新增节点为新实例规格,但无法保留实例内自定义配置。
批量更改多个节点池内节点实例规格
登录容器服务管理控制台,在左侧导航栏选择集群列表。
在集群列表页面,单击目标集群名称,然后在左侧导航栏,选择 。
在节点页面,勾选所需变配节点,单击下方节点排水,在弹出框中单击确定,排空节点上的已有Pod。
登录ECS管理控制台,在左侧导航栏,选择 。
选中集群中所需变配节点,在页面下方,选择
。更改实例规格。
选择目标规格。
在目标规格列,分别选择目标规格,然后单击下一步。
根据实例状态执行下一步。
如果实例状态全部为已停止,请单击下一步。
如果存在实例状态为运行中,单击一键全部停止,然后单击下一步。
重要停止实例时,停止模式建议选择普通停机模式,选择节省停机模式会因计算资源(vCPU和内存)被回收,再次启动实例时可能因为库存不足导致启动失败。
停止实例会造成业务中断,建议您在非业务高峰期时执行该操作。
确认费用,然后单击确认更改。
启动对应实例,等待变配节点自动加入集群且状态变成就绪,勾选变配节点,单击下方设置调度状态,设置为可调度后即可完成Worker节点的资源变配。