更新时间:2024-12-04 GMT+08:00

重置节点

操作场景

您可以通过重置节点修改节点的配置,比如修改节点操作系统、登录方式等。

重置节点会重装节点操作系统,并重新安装节点上Kubernetes软件。如果您在使用过程中修改了节点上的配置等操作导致节点不可用,可以通过重置节点进行修复。

约束与限制

  • v1.13及以上版本的CCE Standard集群支持重置节点。

注意事项

  • 重置节点功能不会重置控制节点,仅能对工作节点进行重置操作,如果重置后节点仍然不可用,请删除该节点重新创建。
  • 重置节点将对节点操作系统进行重置安装,推荐您在重置节点之前为节点排水,将容器优雅驱逐至其他可用节点,同时建议在业务低峰期操作。
  • 节点重置后系统盘和数据盘将会被清空,如有重要数据请事先备份。
  • 工作节点如自行挂载了数据盘,重置完后会清除挂载信息,重置完成后请重新执行挂载行为,数据不会丢失。
  • 节点上的工作负载实例的IP会发生变化,但是不影响容器网络通信。
  • 云硬盘必须有剩余配额。
  • 操作过程中,后台会把当前节点设置为不可调度状态。
  • 节点重置会清除用户单独添加的 K8S 标签和污点(通过节点池编辑功能添加的标签、污点不会丢失),可能导致与节点有绑定关系的资源(本地存储,指定调度节点的负载等)无法提供服务。
  • 重置节点会导致与节点关联的本地持久卷类型的PVC/PV数据丢失,无法恢复,且PVC/PV无法再正常使用。重置节点时使用了本地持久存储卷的Pod会从重置的节点上驱逐,并重新创建Pod,Pod会一直处于pending状态,因为Pod使用的PVC带有节点标签,由于冲突无法调度成功。节点重置完成后,Pod可能调度到重置好的节点上,此时Pod会一直处于creating状态,因为PVC对应的底层逻辑卷已经不存在了。

操作步骤

支持批量重置节点、支持使用私有镜像批量重置节点。

  1. 登录CCE控制台,单击集群名称进入集群。
  2. 在集群控制台左侧导航栏中选择“节点管理”,切换至“节点”页签。
  3. 在节点列表中选择一个或多个要重置的节点,单击“更多 > 重置节点”
  4. 在弹出的窗口中单击“下一步”。跳转到参数配置界面。

    • 对于DefaultPool节点池下的节点,会跳转到配置参数界面,请参见5进行配置。
    • 对于用户创建的节点池下的节点,重置时不支持配置参数,直接使用节点池的配置镜像重置。

  5. 配置节点参数。

    计算配置
    表1 计算配置参数

    参数

    参数说明

    节点规格

    重置节点时不支持修改节点规格。

    容器引擎

    CCE支持Docker和Containerd容器引擎,不同的集群类型、集群版本、操作系统可能导致支持的容器引擎类型不同,请根据控制台呈现进行选择。具体场景请参见节点操作系统与容器引擎对应关系

    操作系统

    选择操作系统类型,不同类型节点支持的操作系统有所不同。
    • 公共镜像:请选择节点对应的操作系统。
    • 私有镜像:支持使用私有镜像。
    说明:

    由于业务容器运行时共享节点的内核及底层调用,为保证兼容性,建议节点的操作系统选择与最终业务容器镜像相同或接近的Linux发行版本。

    登录方式

    • 密码

      用户名默认为“root”,请输入登录节点的密码,并确认密码。

      登录节点时需要使用该密码,请妥善管理密码,系统无法获取您设置的密码内容。

    • 密钥对

      选择用于登录本节点的密钥对,支持选择共享密钥。

      密钥对用于远程登录节点时的身份认证。若没有密钥对,可单击选项框右侧的“创建密钥对”来新建。

    存储配置

    配置节点云服务器上的存储资源,方便节点上的容器软件与容器应用使用。
    表2 存储配置参数

    参数

    参数说明

    系统盘

    直接使用云服务器的系统盘。

    数据盘

    至少需要一块数据盘,供容器运行时和Kubelet组件使用,该数据盘不能被删除卸载,否则会导致节点不可用。

    单击后方的“展开高级设置”可设置数据盘空间分配,对数据盘上存在的容器引擎、镜像、临时存储等进行空间划分,避免因磁盘空间不足导致业务异常。数据盘空间分配详细说明请参见数据盘空间分配说明

    其他数据盘默认情况直接创建为裸盘,不做任何处理。您也可以展开高级配置,将磁盘挂载到指定目录。

    高级配置
    表3 高级配置参数

    参数

    参数说明

    K8S标签(Labels)

    单击“添加标签”可以设置附加到Kubernetes 对象(比如Pods)上的键值对,最多可以添加20条标签。

    使用该标签可区分不同节点,可结合工作负载的亲和能力实现容器Pod调度到指定节点的功能。详细请参见Labels and Selectors

    K8S污点(Taints)

    默认为空。支持给节点加污点来设置反亲和性,每个节点最多配置20条污点,每条污点包含以下3个参数:
    • Key:必须以字母或数字开头,可以包含字母、数字、连字符、下划线和点,最长63个字符;另外可以使用DNS子域作为前缀。
    • Value:必须以字符或数字开头,可以包含字母、数字、连字符、下划线和点,最长63个字符。
    • Effect:只可选NoSchedule,PreferNoSchedule或NoExecute。
    须知:
    • 污点配置时需要配合Pod的toleration使用,否则可能导致扩容失败或者Pod无法调度到扩容节点。
    • 节点池创建后可单击列表项的“编辑”修改配置,修改后将同步到节点池下的已有节点。

    最大实例数

    节点最大可以正常运行的实例数(Pod),该数量包含系统默认实例。

    该设置的目的为防止节点因管理过多实例而负载过重,请根据您的业务需要进行设置。

    安装前执行脚本

    请输入脚本命令,命令中不能包含中文字符。脚本命令会进行Base64转码。

    脚本将在Kubernetes软件安装前执行,可能导致Kubernetes软件无法正常安装,需谨慎使用。

    安装后执行脚本

    请输入脚本命令,命令中不能包含中文字符。脚本命令会进行Base64转码。

    脚本将在Kubernetes软件安装后执行,不影响Kubernetes软件安装。

  6. 单击“下一步:规格确认”
  7. 单击“提交”