本页面简要介绍了 Google Kubernetes Engine (GKE) 集群的生命周期,包括哪些任务由您自行执行,哪些任务由Google Cloud管理,并提供了指向更详细指南的链接,以便您快速上手。
在阅读本页内容之前,您应该先熟悉以下内容以及 Kubernetes 基本概念:
创建集群
如果您完成了我们的某个快速入门,就会发现使用 GKE 创建 Kubernetes 集群非常简单,尤其是当您选择使用 Google Cloud 控制台并使用所有提供的默认选项时。在实际操作中,集群的创建可能稍微复杂一些,尤其是在选择集群选项以满足组织和技术需求时。在创建集群之前,您可能需要咨询网络、安全或其他同事,做出相关决策,因为某些集群选项在配置后不重新创建集群的情况下无法更改。
您可以使用 Google Cloud 控制台、gcloud CLI 或 GKE 的 Terraform 提供程序创建集群。
- 如需详细了解集群配置选项(包括在集群创建后无法更改的选项),请参阅集群配置概览。
- 如需了解如何创建 Autopilot 集群(推荐),请参阅创建 Autopilot 集群。
- 如需了解如何创建标准集群,请参阅创建标准集群。
- 如需了解是否需要创建多个集群,请参阅多集群用例。
使用集群
如果您是集群管理员,则大部分工作都涉及与正在运行的集群打交道。任务可能包括监控和排查集群状态,或者对于较大的组织(尤其是使用 GKE 企业版层级的组织),在一个舰队中集中管理多个集群。如果您是安全专家或网络专家,则可能有更专业的任务,例如应用安全政策或配置网络基础架构。如果您是使用 GKE 的开发者,可能不需要创建或管理集群,但可能需要将工作负载部署到集群,或排查工作负载问题。
您可能会用到以下工具:
- Google Cloud 用于创建、管理和查看集群及其状态的工具,包括 Google Cloud 控制台和 gcloud CLI。
- Kubernetes 命令行工具
kubectl
,用于执行集群内部任务,例如部署工作负载或应用 Kubernetes 基于角色的访问权限控制 (RBAC) 政策。 - Terraform,用于以声明方式预配集群和工作负载。
由于 GKE 是一项代管式服务,因此您无需担心底层基础架构(例如运行集群节点的虚拟机)或 Kubernetes 控制平面组件的状态:GKE 会为您管理这些内容。
您可以在集群管理概览中详细了解如何使用集群以及您为此使用的工具和工作流。如需详细了解集群架构和 GKE 控制平面,请参阅 GKE 集群架构。
升级集群
集群升级会更新集群控制平面和节点上运行的 GKE 系统软件的版本。默认情况下,GKE 会自动升级您的集群,以确保它们收到安全更新、已知问题的修复、新功能,并运行受支持的 Kubernetes 版本。
为了更好地控制升级过程,GKE 提供了发布渠道。借助发布渠道,您可以为集群选择可兼顾功能可用性和稳定性的版本。借助维护窗口和排除项,您可以选择升级和其他集群维护的执行时间。
默认情况下,所有集群都在常规发布渠道中注册。如需详细了解如何充分利用版本渠道,同时尽可能减少对工作负载的影响,请参阅升级集群的最佳实践。
您也可以自行发起集群升级。如需了解详情,请参阅手动升级集群或节点池。
更新集群
如上一部分关于创建集群的部分所述,您可以在集群创建后对其配置进行多项更改。您可以对集群进行的更新包括:
- 调整 Standard 集群的大小(Autopilot 集群会根据工作负载的需求自动调整大小)。
- 将集群添加到舰队。
- 更改集群的发布渠道。
- 更新 Standard 集群的区域。
- 更新集群的维护政策。
- 更新部分网络选项。
- 启用和停用集群功能,包括备份、日志记录、监控等。
如需详细了解在集群创建后可以和不能更改的内容,请参阅集群配置概览。
调整集群大小
Autopilot 集群会根据您的 Pod 规范自动调整其大小,因此您无需考虑调整集群大小。例如,如果您更改 Pod 的副本数量或其请求的资源数量,则系统将相应地增加或缩减集群大小。
如果您使用的是标准模式,则可以手动调整集群大小,以增加或减少其包含的节点数。例如,如果您想要停止集群以防止消耗资源,而不删除集群,可以将节点数量缩减至零。如需详细了解如何调整大小,请参阅调整集群大小。您还可以选择使用集群自动扩缩,让 GKE 根据工作负载的需求自动调整集群的节点池大小,以及节点自动预配,让 GKE 自动为您创建和删除节点池。
如果您希望以更高效的方式优化集群,还可以使用 Pod 纵向自动扩缩 (VPA)。该自动扩缩程序可以为 CPU 和内存请求及限制提供建议值,也可以自动更新这些值。
删除集群
您可以在需要时删除集群。如需了解详情,请参阅删除集群。
将集群添加到舰队中
如果您的组织使用多个集群,则可以将集群添加到舰队(即 Kubernetes 集群的逻辑分组)来简化多集群管理。创建舰队可帮助您的组织将管理级别从单个集群升级到整组集群,并让您能够使用支持舰队的功能,例如多集群 Ingress、 Config Sync 和 Policy Controller。
您可以使用Google Cloud 控制台、gcloud CLI,或者以声明方式使用 Terraform 或 Config Connector 将 GKE 集群添加到舰队。
如需详细了解舰队的运作方式,请参阅舰队管理;如需了解如何创建舰队,请参阅创建舰队以简化多集群管理。