原地或替盘升级节点池的Kubelet与容器运行时
常见问题节点池升级后支持版本回退吗?kubelet和容器运行时在版本升级后均不支持版本回退。操作系统在升级后支持版本回退,回退时需要确保原镜像仍被该节点池所支持。
升级过程中业务是否受影响?原地升级:Pod不会重启,不会影响业务。
替盘升级:替盘升级时会对节点排水,如果Pod实现了优雅退出逻辑(Graceful shutdown and zero downtime deployments in Kubernetes),并且多副本部署在多个节点上,对业务没有影响。为了避免同一个应用的多个副本都在一个批次内进行升级,可以手动调整并行数小于Pod副本数。
每个批次升级大概需要多长时间?原地升级:5min内
替盘升级:如果不涉及快照,一般在8min内。如果在升级时选中快照,升级会在快照结束后执行,执行时间取决于快照时间。节点池升级容忍快照40min,如果40min内快照还未结束会判定节点升级超时失败,失败的节点此时还未开始执行升级操作。如果没有在系统盘中保存业务数据,可以不选中快照,避免升级用时过久。
节点升级过程中节点数据会丢失吗?以替换节点系统盘的方式执行节点运行时升级时,请不要在系统盘中保存重要数据或者提前做好备份工作。数据盘在升级过程中则不受影响。
节点替换系统盘后,节点的IP地址会变吗?替换系统盘的方式中系统盘ID会变更,但是云盘类型、实例IP地址以及弹性网卡MAC地址保持不变。更多信息,请参见更换系统盘(更换操作系统)。
如何升级不属于任何节点池的集群节点?在节点池功能上线前创建的老集群,会存在不属于任何节点池的游离节点。您可以将游离节点迁移到一个节点池后,对节点池进行升级。关于如何迁移游离节点至节点池,请参见迁移游离节点至节点池。
节点运行时由Docker切换为containerd后,Docker目录未被清理占用磁盘空间怎么办?除Kubernetes集群可管理的容器、镜像、日志等文件外,Docker目录中也包含您自行创建的文件路径。如无需使用,请在运行时切换后手动删除数据盘中的Docker目录。
如何基于快照还原数据?节点池升级时支持为节点创建快照,该快照会默认保持7天,您也可以手动提前清理快照。在极端场景下,例如发现升级后数据丢失,您可以通过以下方式对数据进行还原。
如果是原地升级,例如只升级了kubelet的版本,您可以通过直接回滚快照的方式还原数据,请参见使用快照回滚云盘。
如果是替盘升级,例如升级了操作系统或容器运行时,您可以通过快照创建云盘的方式还原数据,请参见使用快照创建数据盘。