更新时间:2024-10-14 GMT+08:00

纳管节点

操作场景

CCE集群支持两种添加节点的方式:创建节点纳管节点,纳管节点是指将“已有的ECS加入到CCE集群中”

  • 纳管时,如果您选择将所选弹性云服务器的操作系统重置为CCE提供的标准公共镜像,您需要重新设置密码或密钥,原有的密码或密钥将会失效。
  • 所选弹性云服务器挂载的系统盘、数据盘都会在纳管时清理LVM信息,包括卷组(VG)、逻辑卷(LV)、物理卷(PV),请确保信息已备份。
  • 纳管过程中,请勿在弹性云服务器控制台对所选虚拟机做任何操作。

约束与限制

  • 纳管节点支持ECS(弹性云服务器)节点。

前提条件

待纳管的云服务器需要满足以下前提条件:

  • 待纳管节点必须状态为“运行中”,未被其他集群所使用,且不携带 CCE 专属节点标签CCE-Dynamic-Provisioning-Node。
  • 待纳管节点需与集群在同一虚拟私有云内(若集群版本低于1.13.10,纳管节点还需要与CCE集群在同一子网内)。
  • 待纳管节点需挂载数据盘,可使用本地盘(磁盘增强型实例)或至少挂载一块20GiB及以上的数据盘,且不存在10GiB以下的数据盘。
  • 待纳管节点规格要求:CPU必须2核及以上,内存必须4GiB及以上,网卡有且仅能有一个。
  • 如果使用了企业项目,则待纳管节点需要和集群在同一企业项目下,不然在纳管时会识别不到资源,导致无法纳管。
  • 批量纳管仅支持添加相同数据盘配置的云服务器。
  • 集群开启IPv6后,只支持纳管所在的子网开启了IPv6功能的节点;集群未开启IPv6,只支持纳管所在的子网未开启IPv6功能的节点。
  • 纳管节点时已分区的数据盘会被忽略,您需要保证节点至少有一个未分区且符合规格的数据盘。

操作步骤

  1. 登录CCE控制台,进入要纳管节点的集群。
  2. 在集群控制台左侧导航栏中选择“节点管理”,切换至“节点”页签并单击右上角的“纳管节点”
  3. 配置节点参数。

    节点配置

    表1 节点配置参数

    参数

    参数说明

    节点规格

    单击添加已有云服务器,选择要纳管的服务器。

    可以选择多台云服务器批量纳管,但批量纳管仅支持添加相同规格、相同可用区、相同数据盘配置的云服务器。

    如果云服务器有多块数据盘,需要选择其中一块作为供容器运行时和Kubelet组件使用。

    容器引擎

    CCE支持Docker和Containerd容器引擎,不同的集群类型、集群版本、操作系统可能导致支持的容器引擎类型不同,请根据控制台呈现进行选择。

    操作系统

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

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

    登录方式

    • 密码

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

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

    • 密钥对

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

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

    存储配置

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

    参数

    参数说明

    系统盘

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

    数据盘

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

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

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

    高级配置

    表3 高级配置参数

    参数

    参数说明

    资源标签

    通过为资源添加标签,可以对资源进行自定义标记,实现资源的分类。最多可以添加8条资源标签。

    您可以在TMS中创建“预定义标签”,预定义标签对所有支持标签功能的服务资源可见,通过使用预定义标签可以提升标签创建和迁移效率。

    CCE服务会自动帮您创建CCE-Dynamic-Provisioning-Node=节点id的标签。

    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转码。安装前/后执行脚本统一计算字符,转码后的字符总数不能超过10240。

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

    安装后执行脚本

    请输入脚本命令,命令中不能包含中文字符。脚本命令会进行Base64转码。安装前/后执行脚本统一计算字符,转码后的字符总数不能超过10240。

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

  4. 单击“下一步:规格确认”,并单击“提交”