学习路线:扩缩应用 - 生产注意事项


本系列教程简化了一些规划注意事项,以便您可以专注于了解 Google Kubernetes Engine (GKE) 的关键功能和服务。在开始创建自己的 Google Kubernetes Engine 环境(与本系列教程中介绍的环境类似)之前,需牢记一些额外的规划注意事项。这些注意事项包括集群管理级别、网络和可用性类型。

网络

对于 GKE 集群,您需要谨慎地规划 IP 地址。您选择的网络选项会影响 GKE 集群的架构。其中一些选项在配置后不重新创建集群的情况下无法更改。

在本系列教程中,您将使用 Autopilot 模式集群,它们会始终使用 VPC 原生模式网络。VPC 原生集群使用 GKE 节点上的别名 IP 地址范围,并且是在共享 VPC 上创建集群所必需的。VPC 原生集群不消耗 Google Cloud 路由,比基于路由的集群更容易扩缩,因此更不易于达到路由限制。

在创建自己的 GKE 环境并部署工作负载之前,请查看以下网络指南:

集群模式

在本系列教程中,您将创建一个使用 Autopilot 模式的区域级 GKE 集群。Autopilot 集群会进行预先配置,并提供可供生产工作负载使用的优化集群配置。您也可以使用 Standard 模式集群,以便在底层基础架构上实现更高级的配置灵活性。

如需更全面的了解,请查看从集群配置选项开始的规划文档。

命名空间

通过命名空间,您可以整理应用并将组件彼此隔离。每个命名空间都有自己的一组资源,例如 Pod、服务和部署。例如,您可以为所有前端服务创建一个命名空间,然后为后端服务创建一个命名空间。这种分组可让您更轻松地管理服务并控制对其的访问。

在本系列教程中,您会将 Cymbal Bank 示例应用的 Pod 和服务部署到单个命名空间中。此方法可降低部署复杂性,但不允许您像在生产环境中那样使用命名空间将资源分配给不同的团队和用户。如需查看使用多个命名空间的可用于生产用途的更安全 Cymbal Bank 示例应用,请参阅 Cymbal Bank 应用架构

Pod 中断预算

Pod 中断预算 (PDB) 政策通过阻止在更改系统时同时关闭 Pod 来帮助确保应用性能,并且会限制复制应用中同时不可用的 Pod 的数量。

在本系列教程中,您不会配置和使用 PDB。当您完成模拟故障的教程后,您的服务和节点都应按预期进行响应。当您部署自己的工作负载时,节点上的 PDB 可能会阻止节点排空。

如果您使用 PDB,请先查看您的配置,然后再尝试封锁和排空节点。如果节点无法成功排空,则可能是计划性维护事件出现问题。

后续步骤

首先,完成第一个教程以部署单个 GKE 集群来运行基于微服务的应用。