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

创建节点

前提条件

  • 已创建至少一个集群。
  • 您需要新建一个密钥对,用于远程登录节点时的身份认证。

约束与限制

  • 集群节点规格要求:CPU必须2核及以上,内存必须4GB及以上。
  • 为了保证节点的稳定性,CCE集群节点上会根据节点的规格预留一部分资源给Kubernetes的相关组件(kubelet、kube-proxy以及docker等)和Kubernetes系统资源,使该节点可作为您的集群的一部分。 因此,您的节点资源总量与节点在Kubernetes中的可分配资源之间会存在差异。节点的规格越大,在节点上部署的容器可能会越多,所以Kubernetes自身需预留更多的资源,详情请参见节点预留资源策略说明
  • 节点的网络(如虚机网络、容器网络等)均被CCE接管,请勿自行添加删除网卡或改变路由。若自行修改可能导致服务不可用。例如,节点上名为的gw_11cbf51a@eth0网卡为容器网络网关,不可修改。
  • 创建节点过程中会使用域名方式从OBS下载软件包,需要能够使用云上内网DNS解析OBS域名,否则会导致创建不成功。为此,节点所在子网的DNS服务器地址需要配置为内网DNS,从而使得节点使用内网DNS。在创建子网时DNS默认配置为内网DNS,如果您修改过子网的DNS,请务必确保子网下的DNS服务器可以解析OBS服务域名,否则需要将DNS改成内网DNS。
  • 集群中的节点一旦创建后不可变更可用区。

操作步骤

集群创建完成后,您可以在集群中创建节点。

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

    计算配置

    配置节点云服务器的规格与操作系统,为节点上的容器应用提供基本运行环境。
    表1 计算配置参数

    参数

    参数说明

    计费模式

    支持以下计费方式:
    • 按需计费

      按资源的实际使用时长计费,可以随时开通/删除资源。

    可用区

    节点云服务器所在的可用区,集群下节点创建在不同可用区下可以提高可靠性。创建后不可修改。

    建议您选择“随机分配”,可根据选择的节点规格随机分配一个可以使用的可用区。

    可用区是在同一区域下,电力、网络隔离的物理区域,可用区之间内网互通,不同可用区之间物理隔离。如果您需要提高工作负载的高可靠性,建议您将云服务器创建在不同的可用区。

    节点类型

    CCE Standard集群:
    • 弹性云服务器-虚拟机:基于弹性云服务器部署容器服务。
    • 弹性云服务器-物理机:基于擎天架构的服务器部署容器服务。
    CCE Turbo集群:
    • 弹性云服务器-虚拟机:基于弹性云服务器部署容器服务,仅支持可添加多张弹性网卡的机型。
    • 弹性云服务器-物理机:基于擎天架构的服务器部署容器服务。

    容器引擎

    CCE集群支持Docker,并在部分场景中支持Containerd。
    • 1.23及以上的VPC网络集群都支持Containerd,容器隧道网络集群从1.23.2-r0开始支持Containerd。
    • CCE Turbo引擎支持Docker和Containerd。

    节点规格

    请根据业务需求选择相应的节点规格。

    不同的可用区可选择的节点规格类型可能不同,请根据实际情况选择。

    操作系统

    选择操作系统类型,不同类型节点支持的操作系统有所不同。
    • 公共镜像:请选择节点对应的操作系统。
    • 私有镜像:支持使用私有镜像。
    说明:
    • 由于业务容器运行时共享节点的内核及底层调用,为保证兼容性,建议节点的操作系统选择与最终业务容器镜像相同或接近的Linux发行版本。

    节点名称

    节点云服务器使用的名称,批量创建时将作为云服务器名称的前缀。

    系统会默认生成名称,支持修改。

    节点名称以小写字母开头,支持小写字母、数字和中划线(-),不能以中划线(-)结尾。

    登录方式

    • 密码

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

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

    • 密钥对

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

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

    存储配置

    配置节点云服务器上的存储资源,方便节点上的容器软件与容器应用使用。请根据实际场景设置磁盘大小。
    表2 存储配置参数

    参数

    参数说明

    系统盘

    节点云服务器使用的系统盘,供操作系统使用。您可以设置系统盘的规格为40GB-1024GB之间的数值,缺省值为50GB。

    系统盘加密:系统盘加密功能可为您的数据提供强大的安全防护,加密磁盘生成的快照及通过这些快照创建的磁盘将自动继承加密功能。目前仅在部分Region显示此选项,具体以界面为准。
    • 默认不加密。
    • 点选“加密”后,可在弹出的“加密设置”对话框中,选择已有的密钥,若没有可选的密钥,请单击后方的链接创建新密钥,完成创建后单击刷新按钮。

    数据盘

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

    • 第一块数据盘:供容器运行时和Kubelet组件使用。您可以自行设置数据盘的规格为20GB-32768GB之间的数值,缺省值为100GB。
    • 其他数据盘,您可以设置数据盘的规格为10GB-32768GB之间的数值,缺省值为100GB。
    说明:

    节点规格为“磁盘增强型”或“超高I/O型”时,有一块数据盘可以是本地盘。

    本地磁盘实例有宕机风险,不保证数据可靠性,建议您使用云硬盘存储您的业务数据。

    高级配置

    单击后方的“展开高级设置”可进行如下设置:

    • 数据盘空间分配:勾选“自定义容器引擎空间大小”后可定义容器引擎、镜像、临时存储在数据盘上占用的空间比例。容器引擎空间用于存放容器运行时工作目录、容器镜像数据以及镜像元数据;数据盘的剩余空间用于Pod配置文件、密钥及临时存储EmptyDir等。数据盘空间分配详细说明请参见数据盘空间分配说明
    • 数据盘加密:数据盘加密功能可为您的数据提供强大的安全防护,加密磁盘生成的快照及通过这些快照创建的磁盘将自动继承加密功能。目前仅在部分Region显示此选项,具体以界面为准。
      • 默认不加密。
      • 勾选“加密”后,可选择已有的密钥。若没有可选的密钥,请单击后方的链接创建新密钥,完成创建后单击刷新按钮。

    添加多个数据盘

    最多可以添加4个,默认情况直接创建为裸盘,不做任何处理。您也可以展开高级配置,选择如下配置。

    • 默认:默认情况直接创建为裸盘,不做任何处理。
    • 挂载到指定目录:将数据盘挂载到指定目录。
    • 作为持久存储卷:适用于对PV有性能要求的场景。持久存储卷的节点会添加上node.kubernetes.io/local-storage-persistent标签,取值为linear或striped。
    • 作为临时存储卷:适用于对EmptyDir有性能要求的场景。
    说明:
    • 本地持久卷仅在集群版本 >= v1.21.2-r0 时支持,且需要everest插件版本>=2.1.23,推荐使用>=2.1.23版本。
    • 本地临时卷仅在集群版本 >= v1.21.2-r0 时支持,且需要everest插件版本>=1.2.29。
    本地持久卷本地临时卷支持如下两种写入模式。
    • 线性(linear):线性逻辑卷是将一个或多个物理卷整合为一个逻辑卷,实际写入数据时会先往一个基本物理卷上写入,当存储空间占满时再往另一个基本物理卷写入。
    • 条带化(striped):创建逻辑卷时指定条带化,当实际写入数据时会将连续数据分成大小相同的块,然后依次存储在多个物理卷上,实现数据的并发读写从而提高读写性能。条带化模式的存储池不支持扩容。多块存储卷才能选择条带化。

    网络配置

    配置节点云服务器的网络资源,用于访问节点和容器应用。
    表3 网络配置参数

    参数

    参数说明

    节点子网

    节点子网默认使用创建集群时的子网配置,也可以选择其他子网。

    节点IP

    支持指定节点IP地址。默认随机分配。

    弹性公网IP

    未绑定弹性公网IP的云服务器无法直接访问外网,无法直接对外进行互相通信。

    默认为“暂不使用”。支持“使用已有”和“自动创建”。

    高级配置

    节点能力增强,可在此配置节点的标签、污点、启动命令等功能。
    表4 高级配置参数

    参数

    参数说明

    K8s标签

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

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

    资源标签

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

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

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

    污点(Taints)

    默认为空。支持给节点加污点来设置反亲和性,每个节点最多配置20条污点,每条污点包含以下3个参数:
    • Key:必须以字母或数字开头,可以包含字母、数字、连字符、下划线和点,最长63个字符;另外可以使用DNS子域作为前缀。
    • Value:必须以字符或数字开头,可以包含字母、数字、连字符、下划线和点,最长63个字符。
    • Effect:只可选NoSchedule,PreferNoSchedule或NoExecute。

    污点的使用请参见管理节点污点(Taint)

    说明:

    对于1.19及以下版本集群,有可能会出现污点打上之前负载已经调度到节点上,如果需要避免这种情况,请选择1.19及以上集群。

    最大实例数

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

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

    节点最多能创建多少个Pod还受其他因素影响,具体请参见节点可创建的最大Pod数量说明

    云服务器组

    云服务器组是对云服务器的一种逻辑划分,同一云服务器组中的云服务器遵从同一策略。

    反亲和性策略:同一云服务器组中的云服务器分散地创建在不同主机上,提高业务的可靠性。

    选择已创建的云服务器组,或单击“新建云服务器组”创建,创建完成后单击刷新按钮。

    安装前执行脚本

    请输入脚本命令,大小限制为0~1000字符。

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

    安装后执行脚本

    请输入脚本命令,大小限制为0~1000字符。

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

    说明:

    请不要在安装后执行脚本中使用reboot命令立即重启,如果需要重启,可以使用shutdown -r 1命令延迟1分钟重启。

    委托

    委托是由租户管理员在统一身份认证服务上创建的。通过委托,可以将云主机资源共享给其他账号,或委托更专业的人或团队来代为管理。

    如果没有委托请单击右侧“新建委托”创建。

  4. 完成以上配置后,您可以设置需要购买的节点数量,并单击“下一步:规格确认”,确认所设置的服务选型参数、规格等信息。
  5. 单击“提交”,节点开始创建。

    系统将自动跳转到节点列表页面,待节点状态为“运行中”,表示节点添加成功。添加节点预计需要6-10分钟左右,请耐心等待。

  6. 单击“返回节点列表”,待状态为运行中,表示节点创建成功。