您可以通过节点池管理集群中的一组节点资源,例如在节点池中统一管理节点的标签和污点。本文介绍如何基于容器服务ACK集群中的节点池功能创建节点池、调整节点池中的节点数量。

前提条件

已创建ACK集群,且集群Kubernetes版本大于1.9。具体操作,请参见创建Kubernetes托管版集群
注意
  • 请确保您的集群可添加足够的节点数。如果您需要添加更多节点,请提交工单申请扩大配额。关于ACK集群的配额限制,请参见使用限制
  • 添加已有云服务器时,请确保您的专有网络中的ECS实例已绑定一个弹性公网IP(EIP),或者相应VPC已经配置了NAT网关。您需要确保相应节点能正常访问公网,否则,添加云服务器会失败。

背景信息

ACK节点池类型分为节点池和托管节点池,其中节点池分为默认节点池和自定义节点池。自定义节点池和托管节点池都可以开启自动弹性伸缩功能。更多信息,请参见节点池概述

注意事项

由于默认节点池中安装了部分系统组件,弹性伸缩时可能会造成集群功能的不稳定。如果您需要实现弹性伸缩功能,建议您另建节点池。

创建节点池

  1. 登录容器服务管理控制台
  2. 在控制台左侧导航栏中,单击集群
  3. 集群列表页面中,单击目标集群名称或者目标集群右侧操作列下的详情
  4. 在集群管理页左侧导航栏中,选择节点管理 > 节点池
  5. 节点池页面右上角,单击创建节点池
    您还可以在节点池页面右上角,单击创建托管节点池或者自动弹性伸缩配置创建托管节点池或者具有弹性功能的节点池。
  6. 创建节点池页面,设置创建节点池的配置项。
    有关配置项的详细说明,请参见创建Kubernetes托管版集群。部分配置项说明如下:
    参数 描述
    期望节点数 设置节点池期望的节点数量。如不需要创建节点,可以填写为0。更多信息,请参见调整期望节点数
    付费类型 支持按量付费、包年包月、抢占式实例。更多信息,请参见实例购买方式
    自动伸缩 选中开启自动弹性伸缩开启具备弹性伸缩功能的节点池。更多信息,请参见节点自动伸缩
    操作系统 选择节点的操作系统,包括CentOS、Alibaba Cloud Linux、Windows。
    公网IP 选中公网IP后,节点自动具备公网IPv4地址。您可以通过这个IP直接访问该节点。关于公网IP地址详情,请参见公网IP地址
    注意 如果选中公网IP,请勿在弹性节点池的配置中同时选中EIP,否则将导致节点弹出失败。
    ECS标签 为ECS实例添加标签。
    节点标签 为集群节点添加标签。
    说明 选中节点扩容后设置为不可调度后,新添加的节点注册到集群时默认设置为不可调度。如果想打开调度选项,可以在节点列表中开启。
    资源组 您可以指定节点池所扩容节点的资源组信息。默认为集群的资源组。
    自定义安全组 支持选择普通安全组企业级安全组。关于安全组的更多信息,请参见安全组概述
    说明
    • 自定义安全组为白名单功能,若您需要自定义安全组,请提交工单
    • 只能同时选择一种安全组(企业安全组或普通安全组)。
    • 最多选择5个安全组。
    • 编辑节点池时不支持更改节点池安全组。
    • 创建节点池指定已有安全组时,默认不会为安全组配置集群访问规则。若您需要访问集群,请手动配置集群访问安全组规则。具体操作,请参见添加实例限制
    • 指定已有安全组时,系统默认不会为安全组配置额外的访问规则,可能会导致访问异常,请自行管理安全组规则。关于如何管理安全组规则,请参见最小化集群访问规则
  7. 单击确认配置
    节点池页面,如果节点池状态显示初始化中,则说明节点池正在创建中。创建完成后,状态显示为已激活nodepool.png

调整期望节点数

您可以通过调整期望节点数,达到扩容或缩容节点池的目的。在指定节点池的期望节点数后,节点池会自动触发扩容或缩容,将节点数目维持在期望数量,无须人工干预。
  • 通过期望节点数扩容节点:设定期望节点数大于当前节点池的节点数,系统将触发节点池扩容。推荐您通过增大期望节点数的方式进行扩容。这样在出现手动添加节点失败的情况下,系统也会自动进行重试以使得节点池现有节点数满足期望节点数。
  • 通过期望节点数缩容节点:设定期望节点数小于当前节点池的节点数,系统将触发节点池的缩容并移除节点。
    说明 由于手动添加的节点无法自动移出伸缩组,因此如果对于手动添加节点(例如通过添加已有节点方式添加的节点),通过修改期望节点数无法自动移除,需要进行手动移除。关于手动移除的具体操作,请参见移除节点
  1. 登录容器服务管理控制台
  2. 在控制台左侧导航栏中,单击集群
  3. 集群列表页面中,单击目标集群名称或者目标集群右侧操作列下的详情
  4. 在集群管理页左侧导航栏中,选择节点管理 > 节点池
  5. 在目标节点池右侧的操作列中,单击调整期望节点数
  6. 授权CS获取云资源的权限。
    1. 单击AliyunOOSLifecycleHook4CSRole
      期望节点数授权.png
    2. 云资源访问授权页面,单击同意授权
  7. 在节点对话框中,设置配置项。
    有关配置项的详细说明,请参见创建节点池。以下为部分配置项说明:
    • 期望节点数:期望的节点数量。单次操作可扩容最多500个节点。
    • ECS标签:为ECS实例添加标签。
    • 节点标签:集群节点添加标签。
      说明
      • 选中同步更新存量节点标签及污点后,可以将此次修改的节点标签及污点同步更新到已有节点和新节点上,但存量节点上的您自行设置的标签和污点不会受影响。
      • 选中节点扩容后设置为不可调度后,新添加的节点注册到集群时默认设置为不可调度。如果想打开调度选项,可以在节点列表中开启。

    • 污点(Taints):为节点添加污点。
  8. 单击提交
    • 节点池页面,如果节点池状态显示扩容中,则说明节点池正在扩容中。扩容完成后,状态显示为已激活
    • 节点池页面,如果节点池状态显示移除节点中,则说明节点池正在缩容中。移除节点完成后,状态显示为已激活

编辑节点池

在目标节点池右侧的操作列中,单击编辑,修改节点池配置。关于更多参数配置描述,请参见创建节点池。部分配置项的说明如下:

  • 操作系统:更新节点的操作系统镜像版本。
  • ECS标签:为ECS实例添加标签。
  • 节点标签:集群节点添加标签。
    说明
    • 选中同步更新存量节点标签及污点后,可以将此次修改的节点标签及污点同步更新到已有节点和新节点上。,但存量节点上的您自行设置的标签和污点不会受影响。
    • 选中节点扩容后设置为不可调度后,新添加的节点注册到集群时默认设置为不可调度。如果想打开调度选项,可以在节点列表中开启。

  • 污点(Taints):为节点添加污点。

相关操作

节点池页面可以进行以下操作:
  • 名称下拉列表右侧输入节点池名称,单击查找图标查找目标节点池。
  • 在目标节点池右侧操作列,单击详情查看节点池详情。
  • 单击目标节点池名称,可以进行以下操作:
    • 单击基本信息页签,查看集群、节点池信息、节点配置及自动弹性伸缩配置信息。
    • 单击节点管理页签,在节点列表中可移除选中节点。
    • 单击节点管理页签,然后在页面右上方,单击导出,可通过导出的CSV文件查看节点的各项信息。
    • 单击节点管理页签,选中仅显示失败节点可以筛选创建失败的节点。
    • 单击伸缩活动页签,查看最近节点实例伸缩活动的变更记录。