Azure Kubernetes 舰队管理器和成员群集

本文提供 Azure Kubernetes 舰队管理器(舰队)中的舰队、成员群集和中心群集的概念性概述。

什么是舰队?

舰队资源充当多个 AKS 群集的分组实体。 可使用它们将多个 AKS 群集作为单个实体进行管理、跨多个群集协调更新、跨多个群集传播 Kubernetes 资源,并提供单一管理窗格用来管理多个群集。 可以创建带有或没有中心群集的舰队。

舰队由以下部分组成:

此屏幕截图显示了舰队资源的示意图,包括中心群集代理和成员群集代理。

  • 舰队中心代理:一个 Kubernetes 控制器,用于创建和协调中心群集中所有与舰队相关的自定义资源 (CR)。
  • 舰队成员代理:一个 Kubernetes 控制器,用于创建和协调成员群集中所有与舰队相关的 CR。 此控制器从中心群集拉取最新的 CR,并一致地协调成员群集以匹配所需状态。

什么是成员群集?

MemberCluster 表示在中心群集中建立的群集范围的 API,充当舰队中群集的表示形式。 此 API 为多群集应用程序提供了一种可靠、统一和自动化的方法,用于识别舰队中已注册的群集。 它还有助于应用程序查询舰队管理的群集列表或观察群集状态以执行后续操作。

可以将 Azure Kubernetes 服务 (AKS) 群集作为成员群集加入舰队。 成员群集必须与舰队位于同一个 Microsoft Entra 租户中,但它们可在不同的区域、不同的资源组和/或不同的订阅中。

污点

成员群集支持适用于 MemberCluster 资源的污点规范。 每个污点对象包含以下字段:

  • key:污点的键。
  • value:污点的值。
  • effect:污点的效果,例如 NoSchedule

一旦 MemberCluster 被污染,它会让计划程序知道群集不应在从中心群集进行资源传播期间接收资源。 NoSchedule 效果是发送给计划程序的信号,用于避免将资源从 ClusterResourcePlacement 安排到 MemberCluster

有关详细信息,请参阅开源舰队文档

后续步骤