创建节点池

在ACK集群中,节点是集群中的物理或虚拟机器,用于运行容器化应用程序。节点池是一组具有相同配置和用途的节点,例如节点规格、可用区、标签、污点等,便于对集群中的节点进行分组管理和运维。您可以在创建节点池时指定节点属性,也可以修改现有节点池的配置。

前提条件

已创建ACK集群,请参见创建ACK托管集群

节点池类型

  • 普通节点池:为提供管理一组同质节点的能力,同一个节点池内具有相同的节点配置,例如规格、标签(Label)、污点(Taint)。更多信息,请参见节点池概述

  • 托管节点池:在普通节点池基础上,提供CVE自动修复、自动触发故障节点修复等能力,从而实现托管的自动化节点运维。更多信息,请参见托管节点池概述

    说明

    ACK集群Pro版支持托管节点池。

关于两种节点池的差异,请参见托管节点池与普通节点池的区别

操作步骤

说明

创建或编辑节点池时不会影响其他已有节点池内节点和业务的运行。

  1. 登录容器服务管理控制台,在左侧导航栏选择集群

  2. 集群列表页面,单击目标集群名称,然后在左侧导航栏,选择节点管理 > 节点池

  3. 节点池页面,单击创建节点池,然后在创建节点池对话框,完成创建节点池的配置项。

    普通配置

    普通配置

    配置项

    描述

    节点池名称

    自定义的节点池名称。

    地域

    默认选择集群所在地域,且不可更改。

    加密计算

    说明
    • 当前仅白名单用户可以配置加密计算,请提交工单申请。

    • 容器运行时选择为containerd时,需配置该参数。

    是否开启加密计算。加密计算是为有强安全诉求的用户提供基于硬件加密技术的云原生一站式机密计算容器平台,可以帮助您保护数据使用(计算)过程中的安全性、完整性和机密性,同时简化可信或机密应用的开发、交付和管理成本。更多信息,请参见ACK-TEE机密计算介绍

    容器运行时

    根据集群Kubernetes版本选择容器运行时

    • containerd:推荐使用,支持所有版本的集群。

    • 安全沙箱:支持1.24及以下版本的集群。

    • Docker:支持1.22及以下版本的集群。

    更多信息,请参见如何选择Docker运行时、containerd运行时、或者安全沙箱运行时?

    托管节点池相关配置

    托管节点池

    是否开启托管功能。

    托管节点池是ACK推出的具有操作系统(OS)CVE漏洞修复、节点自愈等能力的免运维型节点池,可以降低对节点池的运维管理负担,同时提升节点安全性。更多信息,请参见托管节点池概述

    自愈规则

    选中开启托管节点池后,可设置此配置项。

    勾选当节点故障时重启节点后,节点NotReady时,系统会尝试自动重启相关组件来修复故障节点,并在重启前执行排水。

    自动升级规则

    选中开启托管节点池后,可设置此配置项。

    勾选自动升级 Kubelet 及 Containerd后,系统会在有可用的kubelet版本时自动升级到该版本。更多信息,请参见升级节点池

    自动修复 CVE(OS)

    选中开启托管节点池后,可设置此配置项。

    指定自动修复漏洞的级别,包括高危、中危、低危漏洞。更多信息,请参见托管节点池节点自动恢复修复节点池操作系统CVE漏洞

    有些漏洞修复完成后需要重启服务器来使其修复生效。勾选必要时重启节点以修复 CVE 漏洞后,系统会按需自动重启节点;未开启时,需在修复完成后手动重启节点。

    集群维护窗口

    托管节点池将在维护窗口进行自动化升级,例如节点池镜像升级、运行时升级、Kubernetes版本等。更多信息,请参见托管节点池概述

    自动伸缩

    是否开启自动伸缩。自动伸缩可根据业务需求和策略,经济地自动调整弹性计算资源的管理服务。更多信息,请参见弹性伸缩概述。开启前,您也可以对节点池的自动弹性伸缩能力进行配置,操作步骤可参考步骤一:开启节点自动伸缩

    网络配置

    专有网络

    默认选择集群VPC,节点池创建完成后不可更改。

    交换机

    节点池的扩缩容将根据扩缩容策略,在选择的虚拟交换机可用区下弹出节点。您可以在已有虚拟交换机列表中,根据可用区选择交换机。

    如果没有您需要的交换机,可以单击创建虚拟交换机创建。具体操作,请参见创建和管理交换机

    实例和镜像

    付费类型

    节点池支持按量付费包年包月抢占式实例三种节点付费类型。为保证节点池统一,按量付费、包年包月节点池与抢占式实例节点池之间不支持转换。例如,对于创建节点池时选择付费类型为按量付费或包年包月的节点池,编辑节点池时不展示抢占式实例;反之亦然。

    • 选择按量付费时,计费项为ECS实例,节点池不计费。

    • 选择包年包月时,需配置购买时长以及自动续费

    • 选择抢占式实例时,需设置以下参数。

      单台实例上限价格:当指定实例规格的实时市场价格低于单台实例上限价格时,能成功创建抢占式实例。超过保护期后(1小时),每5分钟检测一次实例规格的实时市场价格和库存。如果某一时刻的市场价格高于出价或实例规格库存不足,抢占式实例会被释放。

      目前ACK仅支持具有保护期的抢占式实例。更多信息,请参见什么是抢占式实例抢占式实例节点池最佳实践

    重要
    • 修改节点池的付费类型仅对扩容的新节点生效,不会改变节点池内已有节点的付费类型。如果您期望修改节点池中已有节点的付费类型,请参见按量付费转包年包月

    • 为保证节点池的统一,不支持按量付费包年包月节点池修改为抢占式实例节点池;也不支持抢占式实例节点池修改为按量付费包年包月节点池。

    实例相关的配置项

    根据实例规格或属性选择Worker节点池使用的ECS实例,可通过vCPU、内存、规格族、架构等属性进行筛选。

    节点池扩容时,将从选中的实例规格中扩容。具体扩容到的实例规格取决于节点池扩缩容策略。选择的实例规格越多,节点池成功弹出节点的概率越大。

    由于实例规格不可用或库存不足,导致节点池弹出节点失败时,可以尝试添加更多实例规格。您可以参照控制台的弹性强度建议添加实例规格,也可以创建节点池后查看节点池弹性强度。

    说明

    Arm实例仅支持Arm镜像。关于Arm节点池,请参见配置Arm节点池

    如果您选择的实例均为GPU服务器,您可以按需开启共享 GPU 调度。更多信息,请参见共享GPU调度概述

    操作系统

    说明
    • 修改节点池系统镜像时,仅影响新增节点,不会修改节点池已有节点的系统镜像。已有节点的系统镜像升级,请参见升级节点池

    • 为保证节点池内节点系统镜像的统一,修改节点池镜像时,仅允许修改为同类型镜像的最新版本,不支持更改镜像类型。

    安全加固

    • 不开启:对ECS实例不进行安全加固。

    • 等保加固:仅当系统镜像选择Alibaba Cloud Linux 2或Alibaba Cloud Linux 3时,可为节点开启等保加固。阿里云为Alibaba Cloud Linux 2和Alibaba Cloud Linux 3等保2.0三级版镜像提供等保合规的基线检查标准和扫描程序。更多信息,请参见ACK等保加固使用说明

      重要

      等保加固在保障原生镜像兼容性和性能的基础上进行了等保合规适配,使其满足国家信息安全部发布的《GB/T22239-2019信息安全技术网络安全等级保护基本要求》。

      等保加固会禁止Root用户通过SSH远程登录。您可通过ECS控制台使用VNC方式登录系统创建可使用SSH的普通用户。具体操作,请参见使用VNC登录实例

    • 阿里云 OS 加固:仅当系统镜像选择Alibaba Cloud Linux 2或Alibaba Cloud Linux 3时,可为节点开启阿里云OS加固

    说明

    集群创建完成后,安全加固选项不支持修改。

    登录方式

    目前支持设置密钥设置密码创建后设置

    说明

    安全加固类型选择等保加固时,仅支持设置密码。

    • 创建时设置

      • 设置密钥:阿里云SSH密钥对是一种安全便捷的登录认证方式,由公钥和私钥组成,仅支持Linux实例。更多信息,请参见SSH密钥对概述

      • 设置密码:密码限制为8~30个字符,且必须同时包含大写字母、小写字母、数字和特殊符号。

    • 创建后设置:在实例创建完成后,自行绑定密钥对或者重置实例密码。具体操作,请参见绑定SSH密钥对重置实例登录密码

    登录名

    登录方式选择设置密钥或者设置密码时,需按需选择以root登录还是以ecs-user登录。

    存储

    系统盘

    支持ESSD AutoPLESSD云盘ESSD EntrySSD云盘高效云盘

    系统盘可选的类型与选择的实例规格相关。如果云盘类型下拉列表没有显示的云盘类型,代表不支持该云盘类型。 关于云盘的更多信息,请参见块存储概述;查询实例规格支持的云盘类型,请参见实例规格族

    说明
    • ESSD云盘支持自定义性能级别。ESSD云盘容量越大,可供选择的性能级别越高(460 GiB容量以上可选PL2,1260 GiB以上可选PL3)。更多信息,请参见容量范围与性能级别的关系

    • 创建系统盘时,仅ESSD云盘支持加密。选择密钥时,阿里云默认使用服务密钥(Default Service CMK)进行加密,您也可以选择事先在KMS服务中创建好的自定义密钥(BYOK)为该云盘加密。

    您可以选择配置更多系统盘类型,配置与系统盘不同的磁盘类型,提高扩容成功率。创建实例时,系统将根据指定的磁盘类型顺序,选择第一个匹配的磁盘类型用于创建实例。

    数据盘

    支持ESSD AutoPLESSD云盘ESSD Entry以及上一代云盘(SSD云盘高效云盘)。挂载数据盘时,数据盘可选的类型与选择的实例规格相关。如果云盘类型下拉列表没有显示的云盘类型,代表不支持该云盘类型。 关于云盘的更多信息,请参见块存储概述;查询实例规格支持的云盘类型,请参见实例规格族

    • ESSD AutoPL还支持:

      • 预配置性能:在保持存储容量大小不变的情况下,可以结合实际业务的需求量灵活配置云盘的预配置性能,从而实现云盘容量与性能解耦。

      • 性能突发:开启后,波动性业务面临突发的数据读写压力时,云盘会根据业务实际情况临时提升云盘性能,直至业务恢复至平稳状态。

    • ESSD云盘还支持:

      自定义性能级别。ESSD云盘容量越大,可供选择的性能级别越高(460 GiB容量以上可选PL2,1260 GiB以上可选PL3)。更多信息,请参见容量范围与性能级别的关系

    • 挂载数据盘时,所有云盘类型均支持加密。选择密钥时,阿里云默认使用服务密钥(Default Service CMK)进行加密,您也可以选择事先在KMS服务中创建好的自定义密钥(BYOK)为该云盘进行加密。

    • 在需要容器镜像加速、大模型快速加载等场景下,您还可以使用快照创建数据盘,提升系统的响应速度和处理能力。

    • 每个节点上需有一块数据盘被挂载到/var/lib/container/var/lib/kubelet/var/lib/containerd将挂载到/var/lib/container目录下)。对于节点上的其他数据盘,您可以进行初始化设置,自定义其挂载目录。使用说明,请参见ACK节点池中数据盘可以自定义目录挂载吗?

    说明

    一台ECS实例最多可挂载64块数据盘,不同实例规格支持挂载的最多云盘数量不同。实例规格支持挂载的云盘数量上限,可以通过DescribeInstanceTypes接口查询(DiskQuantity)。

    弹性临时盘

    重要

    当前仅对白名单用户开放。如需使用,请提交工单申请。

    用于临时数据存储,为ECS实例提供临时数据存储空间,具备高性能、高性价比等特点。典型使用场景如下。

    • 临时数据存储

      适用于在本地盘存放临时数据,例如临时计算中间结果、缓存数据、临时文件等。

    • 高性能计算

      对IOPS(数十万到百万)和吞吐量(数百MB/s至数GB/s)要求高的计算任务,弹性临时盘可以提供高性能的临时存储支持。

    关于弹性临时盘的更多介绍,例如生命周期、计费说明、功能限制等,请参见实例规格限制

    临时弹性盘仅支持在部分地域和部分ECS实例规格中使用,请参见地域限制实例规格限制

    您可以选择是否对弹性临时盘进行初始化设置,自定义其挂载目录。

    实例数量

    伸缩模式

    为节点池开启自动伸缩后,可以选择ECS实例伸缩的方式。

    • 标准模式:通过创建、释放ECS实例的方式进行伸缩。

    • 极速模式:通过创建、停机、再启动ECS实例的方式进行伸缩,以便在需要再次伸缩时,直接重新启动处于停机状态的实例,提高伸缩速度。

      ECS实例停机时不收取计算资源费用,只收取存储费用(包含本地存储能力的实例规格族除外,例如大数据型、本地SSD型等)。关于ECS实例停机模式的计费详情及相关注意事项,请参见节省停机模式

    期望节点数

    节点池应该维持的总节点数量。您可以通过调整期望节点数,达到扩容或缩容节点池的目的。如无需创建节点,可以填写为0。更多信息,请参见扩缩容节点池

    高级配置

    展开高级选项(选填),配置节点扩缩容策略。

    配置项

    描述

    扩缩容策略

    • 优先级策略:根据以上配置的虚拟交换机的优先级进行扩缩容(选择的虚拟交换机的顺序,由上到下优先级递减)。当优先级较高的虚拟交换机所在可用区无法创建ECS实例时,自动使用下一优先级的虚拟交换机创建ECS实例。

    • 成本优化策略:按vCPU单价从低到高尝试创建。当伸缩配置已设置抢占式计费方式的多实例规格时,优先创建对应抢占式计费实例。当抢占式计费实例规格由于库存等原因无法创建时,自动尝试以按量付费的方式创建。

      付费类型抢占式实例时,除允许抢占式实例补偿外,您还可以配置以下参数:

      • 按量实例所占比例%:节点池实例中按量实例应占的比例,取值范围为[0,100]。

      • 允许按量实例补偿:开启后,如果因价格或库存等原因无法创建足够的抢占式实例,伸缩组将自动尝试创建按量实例,以满足ECS实例数量要求。

    • 均衡分布策略:只有设置多个专有网络交换机时,均衡分布策略才能生效。在伸缩组指定的多可用区(即指定多个专有网络交换机)之间均匀分配ECS实例。如果由于库存不足等原因造成可用区之间不平衡,您可以再次进行均衡操作,以平衡资源的可用区分布。

      重要

      节点池创建完成后,扩缩容策略不支持编辑。

      付费类型抢占式实例时,您可以设置是否开启允许抢占式实例补偿。开启后,当收到抢占式实例将被回收的系统消息时(即抢占式实例被回收前5分钟左右),开启弹性的节点池将尝试创建新的实例,替换掉将被回收的抢占式实例。

    展开高级选项(选填),配置资源组、ECS标签、污点等信息。

    高级配置

    配置项

    描述

    资源组

    创建的集群将归属于选择的资源组。一个资源只能归属于一个资源组。根据不同的业务场景,您可以将资源组映射为项目、应用或组织等概念。

    ECS 标签

    为弹出的ECS添加标签,标签键不可重复。最大长度为128个字符,标签键和标签值不能以aliyunacs:开头,不能包含https://http://

    一台ECS可绑定标签的上限为20个。如需提高上限,请到配额平台提交申请。由于ACK和ESS存在以下标签占用,因此最多可指定17个ECS标签。

    • ACK默认占用两个ECS标签。

      • ack.aliyun.com:<您的集群ID>

      • ack.alibabacloud.com/nodepool-id:<您的节点池ID>

    • ESS默认占用1个ECS标签:acs:autoscaling:scalingGroupId:<您的节点池伸缩组ID>

    说明
    • 开启弹性伸缩后,因弹性伸缩将默认占用两个ECS标签,因此节点池会额外占用两个ECS标签:k8s.io/cluster-autoscaler:truek8s.aliyun.com:true

    • 自动伸缩组件为了预检测弹出节点的调度行为,需依靠ECS标签记录K8s的节点标签和污点。因此,节点的每个标签都会被转为k8s.io/cluster-autoscaler/node-template/label/标签键:标签值;节点的每个污点会被转为k8s.io/cluster-autoscaler/node-template/taint/污点键/污点值:污点效果

    污点 (Taints)

    为节点添加污点,污点(Taints)包含Effect(效果)。有效污点键包含前缀(可选)和名称。如果有前缀,用正斜线(/)分隔。更多信息,请参见污点和容忍度。污点有以下限制:

    • :污点键的名称长度为1~63个字符,必须以字母、数字或字符[a-z0-9A-Z]开头和结尾,中间可包含字母、数字、短划线(-)、下划线(_)、英文半角句号(.)。

      如果指定前缀,必须是DNS子域。即一系列由英文半角句号(.)分隔的DNS标签,不超过253个字符,并以正斜线(/)结尾。关于DNS子域,请参见DNS子域

    • :污点值可以为空,不超过63个字符,必须以字母、数字或字符[a-z0-9A-Z]开头和结尾,可包含字母、数字、短划线(-)、下划线(_)、英文半角句号(.)。

    • Effect:可选择NoScheduleNoExecutePreferNoSchedule三种。

      • NoSchedule:如果污点中存在至少一个Effect值为NoSchedule的污点,则系统不会将Pod分配到该节点。

      • NoExecute:任何不能忍受这个污点的Pod都会被驱逐,任何可以忍受这个污点的Pod都不会被驱逐。

      • PreferNoSchedule:系统会尽量避免将Pod调度到存在其不能容忍污点的节点上,但不会强制执行。

    节点标签

    为节点添加标签,标签是键值对。有效标签键包含前缀(可选)和名称,如果有前缀,前缀和名称之间用正斜线(/)分隔。标签有以下限制:

    • 标签键的名称长度为1~63个字符,必须以字母数字字符[a-z0-9A-Z]开头和结尾,中间可包含字母、数字、短划线(-)、下划线(_)、英文半角句号(.)。

      如果指定前缀,必须是DNS子域。即一系列由英文半角句号(.)分隔的DNS标签,不超过253个字符,以正斜线(/)结尾。关于DNS子域,请参见DNS子域

      标签键中以下前缀由Kubernetes核心组件保留,不支持指定。

      • kubernetes.io/

      • k8s.io/

      • kubernetes.io/k8s.io/结尾的前缀。例如test.kubernetes.io/

        以下除外:

        • kubelet.kubernetes.io/

        • node.kubernetes.io

        • kubelet.kubernetes.io/结尾的前缀。

        • node.kubernetes.io结尾的前缀。

    • 标签值可以为空,不超过63个字符,必须以字母数字字符[a-z0-9A-Z]开头和结尾,可包含字母、数字、短划线(-)、下划线(_)和英文半角句号(.)。

    设置为不可调度

    勾选该项后,新添加的节点注册到集群时默认会被设置为不可调度。您需要在节点列表中打开调度状态。本配置仅对节点池中新增的节点生效,不会对节点池已有节点生效。

    CPU Policy

    指定kubelet节点的CPU管理策略。

    • None:默认策略。

    • Static:允许为节点上具有某些资源特征的Pod赋予增强的CPU亲和性和独占性。

    更多信息,请参见CPU管理策略

    自定义节点名称

    是否开启自定义节点名称。自定义节点名称后,将同时更改节点名称、ECS实例名称、ECS实例Hostname。

    说明

    对于开启自定义节点名称的Windows实例,其Hostname固定为IP地址,使用-代替IP地址中的.,且不包含前缀和后缀。

    节点名称由前缀、节点IP地址及后缀三部分组成:

    • 总长度为2-64个字符。节点名称首尾必须为小写字母和数字。

    • 前缀和后缀允许使用大小写字母、数字、连字符(-)和点号(.)。必须以大小写字母开头,不能以连字符(-)或点号(.)开头或结尾。不能连续使用连字符(-)或点号(.)。

    • 前缀必选(ECS限制),后缀可选。

    例如:节点IP地址为192.XX.YY.55,指定前缀为aliyun.com,后缀为test。

    • 如果节点为Linux节点,则节点名称、ECS实例、ECS实例Hostname均为aliyun.com192.XX.YY.55test。

    • 如果节点为Windows节点,则ECS实例Hostname为192-XX-YY-55,节点名称、ECS实例名称均为aliyun.com192.XX.YY.55test。

    实例预自定义数据

    如需使用此功能,请前往配额平台提交申请。

    节点加入集群前,将运行您指定的实例预自定义数据脚本。关于User-Data脚本,请参见User-Data脚本

    例如,指定实例预自定义数据为echo "hello world",则节点实际运行脚本如下。

    #!/bin/bash
    echo "hello world"
    [节点初始化脚本]

    实例自定义数据

    节点加入集群后,将运行您指定的实例自定义数据脚本。关于User-Data脚本,请参见User-Data脚本

    例如,指定实例自定义数据为echo "hello world",则节点实际运行脚本如下。

    #!/bin/bash
    [节点初始化脚本]
    echo "hello world"
    说明

    创建集群或扩容节点成功不代表实例自定义脚本执行成功。您可以登录节点执行grep cloud-init /var/log/messages命令查看执行日志。

    云监控插件

    是否安装云监控插件。安装后,可在云监控控制台查看所创建ECS实例的监控信息。

    说明

    该选项仅对节点池新增节点生效,对节点池已有节点无效。已有节点如需安装云监控插件,请通过云监控控制台安装。

    公网 IP

    是否为节点分配IPv4地址。如果未选中,不会配公网IP地址,当选择公网IP后,还需配置带宽计费方式带宽峰值

    说明

    该选项仅对节点池新增节点生效,对节点池已有节点无效。已有节点如需访问公网,请配置并绑定弹性公网IP地址。具体操作,请参见将EIP绑定至ECS实例

    自定义安全组

    可选择普通安全组企业级安全组,仅支持同时选择一种类型的安全组。节点池的安全组不支持修改,安全组的类型也不允许变更。关于安全组的更多信息,请参见安全组

    重要
    • 自定义安全组为白名单功能,若您需要自定义安全组,请在配额中心申请。

    • 每台ECS实例最多支持加入5个安全组,请确保您的ECS安全组配额充足。关于安全组的数量限制以及如何申请提升ECS实例能够加入的安全组数量,请参见安全组

    • 指定已有安全组时,系统默认不会为安全组配置额外的访问规则,可能会导致访问异常,请自行管理安全组规则。关于如何管理安全组规则,请参见配置集群安全组

    RDS 白名单

    单击请选择您想要添加白名单的RDS实例,将节点IP添加至RDS实例的白名单。

    部署集

    重要
    • 部署集为白名单功能,若您需要开启该功能,请在配额中心申请。

    • 部署集一旦指定将不能修改。

    • 选择部署集后,节点池内最大节点数会受限。部署集默认支持节点上限为20 * 可用区数量(可用区数量由虚拟交换机决定)。请谨慎选择,确保部署集内配额充足,避免节点弹出失败。

    您需要先通过ECS控制台创建部署集,然后通过ACK控制台为节点池指定部署集。创建部署集,请参见创建部署集

    您可以使用部署集将节点池弹出的ECS实例分散部署在不同的物理服务器上,以保证业务的高可用性和底层容灾能力。在部署集内创建ECS实例时,根据事先设置的部署策略,分散启动指定地域下的ECS实例。更多信息,请参见节点池部署集最佳实践

    Worker RAM 角色

    在节点池的维度指定一个Worker RAM角色,降低在集群所有节点中共用一个Worker RAM角色可能存在的风险。

    • 默认角色:使用集群默认创建的Worker RAM角色。

    • 自定义:节点池将使用指定的角色作为Worker RAM角色,为空时将使用默认角色。更多信息,请参见使用自定义Worker RAM角色

    重要

    仅支持1.22及以上版本的ACK托管集群

    私有池类型

    私有池类型包括:开放不使用指定

    • 开放:实例将会自动匹配开放类型的私有容量池,如果没有符合条件的私有池,则使用公共池资源启动。

    • 不使用:实例不会使用任何私有池容量,直接使用公共池资源启动。

    • 指定:您需要进一步选择私有池ID来指定实例只使用该私有池容量启动,如果该私有池不可用,则实例启动失败。

    关于私有池的更多信息,请参见私有池

  4. 单击确认配置

    在节点池列表,如果节点池状态显示初始化中,表明节点池正在创建。创建完成后,状态显示为已激活

相关操作

节点池激活完成后,您可以在节点池列表区域,按需进行以下操作。

界面词

说明

相关文档

同步节点池

节点信息异常时,同步节点池的数据信息。

详情

节点池配置详情。

编辑

调整节点池的配置,例如节点池所在的虚拟交换机、托管节点池配置、付费类型、实例规格、启用或停用弹性伸缩等。

编辑节点池

监控

集成阿里云Prometheus监控服务,展示对应ECS实例的基本监控信息。

监控节点

扩缩容

自动化调整节点池的期望节点数,实现节点池扩缩容,将节点数目维持在期望数量,节省业务成本。

扩缩容节点池

配置登录方式

设置节点的登录方式,支持密钥和密码两种方式。

参见前文的普通配置

开启托管

开启托管节点池的相关配置,例如自愈规则、自动升级规则、CVE自动修复等。

参见前文的普通配置

添加已有节点

通过自动添加节点和手动添加节点两种方式将已有的ECS实例添加到集群中。

添加已有节点

克隆

基于现有节点池配置,克隆期望数量的节点池。

节点恢复

当集群托管节点池中的节点发生异常时,ACK会自动发起节点恢复操作,使节点保持正常运行状态。

托管节点池节点自动恢复

修复 CVE(OS)

一键修复节点池高危CVE漏洞的便捷能力。

修复节点池操作系统CVE漏洞

Kubelet 配置

修改节点池内节点的kubelet配置。

自定义节点池kubelet配置

OS 配置

当Linux系统的OS参数默认配置无法满足业务需求,可以在节点池维度自定义节点的OS参数配置。

自定义节点池OS参数

更换操作系统

更换节点操作系统类型,或升级操作系统的版本。

Kubelet 升级

在节点池维度升级节点,包括kubelet和容器运行时的升级。

升级节点池

删除

删除不再使用的节点池,以减少不必要的资源浪费。

删除节点池

常见问题

如何基于创建好的ECS实例创建自定义镜像,并使用该镜像创建节点?

您可以在创建ECS实例后,根据业务需要自定义该实例(如安装软件、部署应用环境等),并为更新后的实例创建自定义镜像。使用该镜像创建的新实例,会包含您已配置的自定义项,省去您重复自定义实例的时间。

  1. 登录ECS实例,执行以下命令,删除指定的文件。关于如何登录实例,请参见使用Workbench工具以SSH协议登录Linux实例

    chattr -i /etc/acknode/nodeconfig-*
    rm -rf /etc/acknode
    systemctl disable ack-reconfig
    rm -rf /etc/systemd/system/ack-reconfig.service
    rm -rf /usr/local/bin/reconfig.sh
    rm -rf /var/lib/cloud
  2. 基于ECS实例创建自定义镜像。相关注意事项和具体操作步骤,请参见使用实例创建自定义镜像

  3. 配置节点池,选择操作系统类型为自定义镜像,并参见前文说明完成节点池的创建。

重要
  • 请基于ACK集群支持的操作系统制作自定义镜像。详细信息,请参见操作系统镜像概述

  • 请勿使用ACK集群中正在运行的ECS实例制作自定义镜像。如需使用,请先从集群移除,请参见移除节点

  • 自定义镜像中预定义的行为逻辑可能影响集群节点初始化、容器运行、节点OS升级、托管节点池的节点自动恢复等操作。在生产环境使用前,请确保已经过严格的测试验证。

相关文档

  • 当不再需要某节点继续工作时,请按照标准化操作将节点移除,请参见移除节点

  • ACK需要占用一定的节点资源来为kube组件和system进程预留资源,请参见节点资源预留策略

  • 当集群的容量规划无法满足应用Pod调度时,您可以启用节点伸缩自动扩缩节点资源,请参见节点伸缩概述