如果您需要使用多个 GKE 集群,GKE Enterprise 提供了额外的工具和功能,可帮助您大规模管理、控制和运行容器化工作负载。GKE Enterprise 提供了一组功能,可帮助您和您的组织(从基础设施运维者和工作负载开发者到安全和网络工程师)管理 Google Cloud、公有云以及本地环境中的集群、基础设施和工作负载。这些功能都是围绕“舰队”的概念构建的:即 Kubernetes 集群和可以一起管理的其他资源的逻辑分组。 舰队由舰队服务(也称为 Hub 服务)进行管理。
本页面介绍了多集群管理功能的扩展组合,并提供了管理舰队的入门资源。
队列简介
通常,当组织拥抱容器、容器编排和服务网格等云原生技术时,则意味着运行单个集群已经无法满足组织的需求。组织选择部署多个集群以实现其技术和业务目标的原因多种多样;例如,将生产环境与非生产环境分开,或者隔离各个层级、语言区域或团队中的服务。如需详细了解多集群方法带来的优势和利弊权衡,请参阅多集群用例。
GKE Enterprise 和 Google Cloud 使用“舰队”的概念来简化多个集群的管理,无论这些集群位于哪个项目中,以及在这些集群上运行哪些工作负载。例如,假设贵组织有 10 个 Google Cloud 项目,每个项目中都有两个 GKE 集群,用于运行多个不同的生产应用。如果没有舰队,如果您想对集群进行生产环境范围的更改,则需要在多个项目中对各个集群进行更改。即使观察多个集群,也可能需要在项目之间切换上下文。借助舰队,您可以从逻辑上对集群进行分组和标准化,以便将管理级别从单个集群提升到多组集群,并通过单个“舰队主机项目”查看和管理舰队。
但是,舰队不仅仅是集群组。您可以通过启用基于舰队的功能来构建舰队,从而抽象出集群边界,例如,通过在多个集群中定义和管理属于特定团队的资源,或者通过在整个舰队中自动应用相同的配置。
舰队可以完全由 Google Cloud 上的 Google Kubernetes Engine 集群组成,也可以包含 Google Cloud 外部的集群。
- 如需详细了解舰队的工作原理,并查找支持舰队的功能的完整列表,请参阅舰队的工作原理。
- 如需了解如何将 GKE 集群添加到舰队,请参阅创建舰队以简化多集群管理。
如需了解在多集群部署中使用舰队的当前限制和要求,以及在组织中实现舰队的建议,请参阅舰队要求和最佳实践。
为了帮助您在自己的系统中实现舰队,请查看舰队示例中使用舰队的假设场景。
创建舰队
创建舰队包括将要一起管理的集群注册到所选舰队宿主项目中的舰队。某些集群类型会在创建集群时自动注册,而其他集群类型必须手动注册。如需详细了解此功能的工作原理,请参阅舰队创建概览,然后按照链接中的说明开始将集群添加到舰队。
将 Google Cloud 外部的集群添加到舰队时,集群上会安装 Connect Agent 以在集群与 Google Cloud 之间建立控制平面连接。该代理可以遍历您的环境与 Google 之间的 NAT、出站流量代理、VPN 以及其他互连。您的 Kubernetes 集群及其 API 服务器不需要公共 IP 地址或外部公开的 IP 地址。如需详细了解 Connect Agent,请参阅 Connect Agent 概览。
向集群进行身份验证
将用户和服务账号连接到多个环境中的集群并进行身份验证可能会很困难。借助舰队,您可从两个选项中进行选择,用于为组织的所有开发者和管理员实现针对集群的一致且安全的身份验证。
Google Cloud 身份:如果您想要将 Google Cloud 用作身份提供方,则可以使用 Connect 网关,它基于舰队构建,可让您以一致的方式从命令行连接到已注册的集群并对这些集群运行命令,并且可让您更轻松地跨多个集群(包括 Google Cloud 外部的集群)自动执行 DevOps 任务。用户无需与集群的直接 IP 连接即可使用此选项进行连接。如需了解详情,请参阅 Connect 网关指南。
第三方身份:舰队还支持使用 Microsoft ADFS 等现有第三方身份提供方,让您可以配置舰队集群,以便用户使用现有的第三方 ID 和密码登录。支持 OIDC 和 LDAP 提供方。如需了解详情,请参阅使用第三方身份设置 Connect Gateway 和 GKE Identity Service 简介。
无论使用哪一种方法,用户都可以通过命令行或 Google Cloud 控制台登录集群。
Google Cloud 控制台
Google Cloud 控制台提供了一个中央界面,用于管理您的所有舰队集群(无论它们在何处运行)。将集群注册到舰队后,您可以登录以查看、监控、调试、管理您的工作负载。
如需了解详情并开始使用,请参阅通过 Google Cloud 控制台使用集群。
谁可以使用舰队管理功能?
如果您要启用并使用多个企业和多集群功能并按 vCPU 单独付费,或者要将 Google Cloud 外部的集群注册到舰队,则必须启用 GKE Enterprise。如需了解如何执行此操作,请参阅启用 GKE Enterprise。
仅对于 Google Cloud 上的集群,您可以将 GKE 集群注册到舰队,并使用某些企业和多集群功能,而无需在常规 GKE 价格之外额外付费。然后,您可以单独为其他企业功能付费,例如多集群 Ingress 和 Cloud Service Mesh。
如需全面了解每个选项中包含的功能,请参阅 GKE Enterprise 部署选项页面。
使用场景
虽然管理多个集群面临着挑战,但因为多种原因,您需要部署多个集群来实现技术和业务目标。如需了解详情,请参阅我们的多集群使用场景指南。