全部产品
Search
文档中心

容器服务 Kubernetes 版 ACK:系统节点池

更新时间:Sep 11, 2026

ACK Auto Mode 集群依赖多种系统组件保障集群正常运行,将系统组件与业务工作负载混合部署可能导致资源争抢和相互影响。系统节点池是 ACK Auto Mode 集群中的专用智能托管节点池,通过标签、污点和调度策略将系统组件隔离运行在独立节点上,提升集群的可靠性和安全性。系统节点池在新建 ACK Auto Mode 集群中默认启用,默认名称为ack-system,由 ACK 全托管运维。

工作原理

image

系统节点池的默认名称为ack-system,通过以下标签、污点和调度策略的组合机制,实现系统组件与业务工作负载的严格隔离。

机制

配置

作用

专用标签(Label)

alibabacloud.com/system-nodepool=true

标识节点属于系统节点池,供调度策略匹配使用。

污点(Taint)

CriticalAddonsOnly=true:NoSchedule

阻止未配置容忍的业务 Pod 调度到系统节点池。

节点亲和性(Node Affinity)

requiredDuringSchedulingIgnoredDuringExecution

强制系统组件 Pod 调度到带有系统节点池标签的节点。

容忍(Toleration)

CriticalAddonsOnly=true:NoSchedule

确保系统组件 Pod 可正常调度到系统节点池。

上述机制组合实现以下调度效果:

  • 系统组件调度到系统节点池:通过 Node Affinity 强制调度,同时配置 Toleration 允许通过污点检查。

  • 业务 Pod 调度到普通节点池:因业务 Pod 未配置对CriticalAddonsOnly污点的容忍,无法调度到系统节点池。

主要特性与优势

  • 严格隔离:系统组件仅调度到系统节点池,与业务节点池严格隔离,避免资源争抢,提升集群整体的稳定性和性能。

  • ACK 托管运维:ACK 负责系统节点池的创建、升级和弹性伸缩,无需人工干预。

    ACK仅提供系统节点池能力,不承担系统节点池对应的资源费用。

常见问题

哪些组件会运行在系统节点池中?

ACK系统组件默认调度到系统节点池运行,包括但不限于:

  • CoreDNS

  • csi-plugin

  • csi-provisioner

  • metrics-server

  • ack-cost-exporter

  • loongcollector

能否删除系统节点池?

如无特殊原因,请勿删除系统节点池。删除后,系统组件Pod将被驱逐,且由于普通节点池缺少系统节点池标签,无法满足节点亲和性要求,系统组件将无法被重新调度,可能导致集群功能异常。

如确需删除,请先创建一个满足以下调度要求的替代节点池:

labels:
  alibabacloud.com/system-nodepool: "true"
taints:
  - key: CriticalAddonsOnly
    value: "true"
    effect: NoSchedule

存量系统组件调度策略

  • 系统组件升级版本时自动调度到系统节点池。

  • DaemonSet 类组件和控制面托管组件不受影响,仍按原有策略部署。

  • 可以通过手动更改组件的通用配置,将系统组件调度到系统节点池:

机制

配置

作用

节点亲和性

必须满足/尽量满足:必须满足

Key:alibabacloud.com/system-nodepool

操作符:In

Value:true

匹配系统节点池标签

调度容忍

Key:CriticalAddonsOnly

操作符:Equal

Value:true

效果:NoSchedule

允许Pod调度到系统节点池

  • 通过控制台或 OpenAPI 新安装系统组件时,将默认调度到系统节点池。

  • 如用户手动指定了 NodeAffinity 或 Toleration,系统组件的调度以用户配置为准。

业务 Pod 能否调度到系统节点池?

默认不可以。如确有需要,可为业务 Pod 添加对 CriticalAddonsOnly 污点的容忍(Toleration),但不推荐此做法,因为这会破坏隔离性,可能影响系统组件的稳定运行。

如何确认系统节点池已启用?

您可以在控制台的节点池列表中查看是否存在 ack-system 节点池。