选择 Azure Kubernetes 舰队管理器选项
本文概述了各种 Azure Kubernetes 舰队管理器(舰队)选项,以及指导选择特定配置时应考虑的注意事项。
舰队类型
可以在使用或不使用中心群集的情况下创建 Kubernetes 舰队资源。 中心群集是一个托管的 Azure Kubernetes 服务 (AKS) 群集,充当用于存储和传播 Kubernetes 资源的中心。
下表比较了中心群集启用的方案:
功能 | 没有中心群集的 Kubernetes 舰队资源 | 具有中心群集的 Kubernetes 舰队资源 |
---|---|---|
中心群集托管 | ❌ | ✅ |
更新业务流程 | ✅ | ✅ |
工作负载业务流程 | ❌ | ✅ |
第 4 层负载均衡 | ❌ | ✅ |
计费注意事项 | 免费 | 需要支付与中心(即标准层 AKS 群集)关联的成本。 |
转换舰队类型 | 可以升级到具有中心群集的 Kubernetes 舰队资源。 | 无法降级为没有中心群集的 Kubernetes 舰队资源。 |
没有中心群集的 Kubernetes 舰队资源
如果没有中心群集,Kubernetes 舰队仅充当 Azure 资源管理器 (ARM) 中的分组实体。 某些方案(例如更新运行)无需 Kubernetes API,因此无需中心群集。 若要充分利用所有可用功能,需要使用具有中心群集的 Kubernetes 机舰队资源。
有关详细信息,请参阅创建没有中心群集的 Kubernetes 舰队资源。
具有中心群集的 Kubernetes 舰队资源
中心群集的 Kubernetes 舰队资源具有关联的 AKS 托管群集,该群集托管用于工作负载协调和第 4 层负载均衡的开源舰队管理器和舰队网络管理器解决方案。
创建具有中心群集的 Kubernetes 舰队资源后,会自动在同一订阅中创建中心 AKS 群集,该订阅位于以 FL_
开头的托管资源组下。 为了提高可靠性,通过 Azure 拒绝分配拒绝任何用户对相应的 AKS 群集(在舰队管理的资源组 FL_
下)及其基础 Azure 资源(在 AKS 管理的资源组 MC_FL_*
下)(例如虚拟机 (VM))发起的突变,以锁定中心群集。 控制平面操作(例如通过 Azure 资源管理器 (ARM) 更改中心群集的配置或完全删除群集)会被拒绝。 不会拒绝数据平面操作(例如连接到中心群集的 Kubernetes API 服务器以配置工作负载业务流程)。
中心群集不受 Azure 策略的约束,以避免对中心群集产生不良策略影响。
中心群集的网络访问模式
对于具有中心群集的 Kubernetes 舰队资源,有两种网络访问模式:
- 公共中心群集向 Internet 公开中心群集。 这意味着只要有正确的凭据,Internet 上的任何人都可以连接到中心群集。 此配置在开发和测试阶段可能非常有用,但会带来安全问题,这在生产中基本上是不可取的。
有关详细信息,请参阅创建具有公共中心群集的 Kubernetes 舰队资源。
- 专用中心群集使用专用 AKS 群集作为中心,从而阻止通过 Internet 进行开放访问。 专用 AKS 群集的所有注意事项都适用,因此请查看先决条件和限制,以确定具有专用中心群集的 Kubernetes 舰队资源是否符合需求。
要考虑的一些其他详细信息:
- 无论是选择公共中心还是专用中心,在创建后都无法更改类型。
- 使用 AKS 专用群集时,可以配置完全限定的域名 (FQDN) 和 FQDN 子域。 此功能不适用于 Kubernetes 舰队资源的专用中心群集。
- 连接到专用中心群集时,可以使用与连接到任何专用 AKS 群集相同的方法。 但是,目前不支持使用 AKS 命令调用和专用终结点进行连接。
- 使用专用中心群集时,需要指定 Kubernetes 舰队中心群集的节点 VM 所在的子网。 此过程与 AKS 专用群集等效过程略有不同。 有关详细信息,请参阅创建具有专用中心群集的 Kubernetes 舰队资源。
后续步骤
现在你已了解不同类型的 Kubernetes 舰队资源,请参阅创建 Azure Kubernetes 舰队管理器资源并加入成员群集。