托管节点池是ACK全新推出的具有自动升级、节点自愈能力的免运维型节点池,为您提供统一的、全托管的节点生命周期管理。您无需关心节点运维操作,如节点组件版本更新,OS版本更新,CVE更新等,ACK会自行修复节点池内的故障节点。
背景信息
- 普通节点池:为您提供管理一组同质节点的能力,同一个节点池内具有相同的节点配置,例如规格、标签(Label)、污点(Taint)。您可以自行运维普通节点池内节点。
- 托管节点池:在普通节点池基础上,提供自动节点升级、故障修复等能力,从而实现托管的自动化节点运维。
- 替换系统盘:通过替换节点系统盘(下文简称替盘)的方式初始化节点,该节点的IaaS属性不发生改变,如节点名称、实例ID、IP等,但会删除节点系统盘上的数据,执行节点的重新初始化流程。额外挂载到该节点上的数据盘不受影响。
注意 请勿在节点系统盘中存储持久化数据,建议保存在数据盘中。
- 原地升级:与替盘相对应的一种升级方式,直接在原节点上更新替换所需组件。原地升级不会替换系统盘,也不会重新初始化节点,因此不会破坏原节点的数据。
适用场景
- 只关注上层应用开发,不希望主动运维worker节点。
- 需要快速响应CVE安全漏洞。当新的CVE发布后,能够迅速升级,从而修补漏洞。
- 对底层节点的变更不敏感,业务Pod对迁移有较高的容忍度,更加关注业务的弹性而非不可变性。
- 需要升级节点上的Docker版本及OS镜像版本。
托管节点池与普通节点池对比
对比项 | 托管节点池 | 普通节点池 |
---|---|---|
运维能力 | 托管于容器服务 | 用户自行管理 |
节点升级 |
|
|
自动故障修复 | 支持 | 不支持 |
密钥管理 | 仅支持密钥方式 | 同时支持密码和密钥方式 |
主要特征
- 您可以为同一个集群创建多个托管节点池,不同节点池具有不同的配置,从而实现不同规格节点的支持。
- 执行替盘轮转升级前会先尝试通过cordon命令将节点设置为不可调度,然后驱逐该节点上的Pod。如果超时15分钟后,Pod仍未被驱逐,容器服务将强制执行替盘操作。
- 托管节点池会监控节点的运行状态,如果节点超过10分钟未上报节点状态,或者状态为NotReady,容器服务会通过尝试重启节点来恢复。
- 您可以关闭托管节点池的自动升级功能。此时当有新的可用Docker及OS版本后,容器服务不会自动为节点池升级。
- 托管节点池的自动升级的时候需要设置维护窗口。容器服务会尽可能遵守维护窗口计划,在维护窗口内已经开始的升级会继续完成,未开始的升级计划会被暂停。
注意事项
- 托管节点池通过替换系统盘的方式执行节点升级操作,该操作会删除节点系统盘上的数据。数据盘内的数据不受影响,请勿在系统盘上存储任何持久化数据。
- 托管节点池在替盘升级前会执行节点下线与排水,因此会造成Pod的重启、长链接的中断。
- 托管节点池会尝试重启故障节点来修复可能的故障,因此节点上的Pod会被重启。
在文档使用中是否遇到以下问题
更多建议
匿名提交