学习路线:可伸缩应用 - 概览
本系列教程适用于想要学习如何部署、运行和管理在 Google Kubernetes Engine (GKE) Enterprise 版本上运行的现代应用环境的 IT 管理员和运维人员。
在本系列教程中,您将通过实际操作进行学习。您首先会将一个名为 Cymbal Bank 的基于微服务的示例应用部署到 GKE 集群。Cymbal Bank 使用 Python 和 Java 运行各种服务,并且包含一个 PostgreSQL 后端。您无需具备这些语言或数据库平台方面的经验便可完成本系列教程,因为 Cymbal Bank 只是一个示例应用,用于展示 GKE Enterprise 如何为您的业务需求提供支持。每个教程随后以此示例应用为基础,来展示您使用不同的 Google Cloud 产品和服务来满足业务需求和目标时,真实生产环境的可能情况。
在学习本系列教程的过程中,您将探索以下关键学习领域:
- 现代应用基础:部署单个 Google Kubernetes Engine 集群以运行基于微服务的应用。
- 监控和 SLO:使用 Prometheus 监控应用的性能和运行状况,并使用 Cloud Service Mesh 设置和跟踪 SLO。
- 自动扩缩和负载均衡:使用 GKE Autopilot 扩缩集群以满足应用需求,并对数据库层使用 Pod 横向自动扩缩。
- 模拟和测试故障切换:验证分布在不同地理位置的高可用性部署是否可以进行故障切换,以维护客户的访问权限。
- 集中进行变更管理:使用 Config Sync 最大限度地减少配置偏移并应用一致的更改。
这些教程设计为按顺序完成。每个教程都以上一个教程为基础,您将创建一个可以监控和自动扩缩的示例应用基础架构。在完成本系列教程的过程中,您将学习新技能并使用其他 Google Cloud 产品和服务。目标是学习在您自己的环境中更自如地运行可伸缩应用所需的所有核心组件。
您的旅程
对于本系列教程,您将担任 Cymbal Bank 平台主管的角色。Cymbal Bank 成立于大约十年前,最开始是一家小型企业,使用两台服务器处理付款。此后,它发展成为一家成功的商业银行,拥有数千名员工和不断壮大的工程组织。Cymbal Bank 现在希望进一步拓展其业务。
在此期间,您和您的团队发现,您们在维护基础架构方面花费了比创造新业务价值更多的时间和费用。现有堆栈中凝结了数十年的累积经验;但您知道,这种技术无法满足银行在发展壮大过程中需要的全球部署规模。
您已采用 GKE Enterprise 对应用进行现代化改造,并成功迁移到 Google Cloud 以实现扩展目标。
费用
您将为本系列教程启用 GKE Enterprise 并部署 Cymbal Bank 示例应用,这意味着您需要按照我们价格页面中列出的价格,按集群为 GKE Enterprise on Google Cloud 付费,直到您停用 GKE Enterprise 或删除项目。
您还需要负责运行 Cymbal Bank 示例应用时产生的其他 Google Cloud 费用,例如 Compute Engine 虚拟机和负载均衡器的费用。
准备工作
您无需熟悉 Google Kubernetes Engine (GKE) Enterprise 版本或 Terraform 即可学习这些教程,但应熟悉集群等基本 Kubernetes 概念。如果不熟悉这些概念,请先详细了解 Kubernetes 基础知识。
每个教程都概述了特定的前提条件,例如需要 Google Cloud 结算账号和项目或 IAM 角色。
规划时的注意事项
在规划生产 GKE Enterprise 环境时,需要牢记许多规划注意事项。这些注意事项包括可用的网络选项、集群管理模式和集群可用性。
本系列教程简化了其中一些注意事项,以便您可以专注于了解关键 GKE Enterprise 功能和服务。因此,这些教程未提供可用于生产用途的完整环境,而是提供了解如何部署和运行自己的工作负载所需的基础组件。完成本系列教程后,我们建议您查看可伸缩应用 - 生产注意事项。
后续步骤
首先,完成第一个教程以部署单个 GKE 集群来运行基于微服务的应用。