Google Cloud 架构框架中的本文档介绍了如何评估重复劳动并缓解其对系统和团队的影响。
重复劳动是指需要手动完成的重复性工作,这类工作没有持久的价值,并且工作量会随着服务的发展而增加。您应不断努力减少或消除费力的手动操作。 否则,运营工作最终可能会给运营人员带来巨大的压力,而产品使用或复杂性的任何增长都可能需要额外的人力。
自动化是最大限度地减少重复劳动的一个重要途径。自动化还可以提高发布速度并有助于最大限度地减少人为错误。
如需了解详情,请参阅消除重复劳动。
创建清单并评估重复劳动的费用
首先创建一份清单,并评估系统管理团队的重复劳动费用。这是一个持续的过程,然后致力于自定义自动化来扩展 Google Cloud 服务和合作伙伴已经提供的内容。通常,您可以修改 Google Cloud 自有的自动化功能,例如 Compute Engine 的自动扩缩器。
优先减少重复劳动
自动化很有用,但并不能解决所有运维问题。我们建议,在处理已知重复劳动时,第一步是查看现有重复劳动的清单,并优先消除尽可能多的重复劳动。然后,您可以专注于自动化。
自动完成必要的重复劳动
系统中的某些重复劳动无法消除。在处理已知重复劳动时,第二步是使用 Google Cloud 通过可配置的自动化功能提供的解决方案来自动执行此重复劳动。
以下是可配置自动化或自定义自动化功能可帮助您的组织消除重复劳动的一些方面:
- 身份管理,例如 Cloud Identity 和 Identity and Access Management。
- Google Cloud 托管的解决方案(与自行设计的解决方案不同),例如集群管理 (Google Kubernetes Engine (GKE))、关系型数据库管理 (Cloud SQL)、数据仓库管理 (BigQuery) 和 API 管理 (Apigee)。
- Google Cloud 服务和租户预配,例如 Terraform 和 Cloud Foundation Toolkit。
- 针对多步操作的自动工作流编排,例如 Cloud Composer。
- 额外的容量预配,例如 Compute Engine 和 GKE 等多款 Google Cloud 产品提供了可配置的自动扩缩功能。请评估您使用的 Google Cloud 服务,以确定它们是否包含可配置的自动扩缩功能。
- 具有自动部署功能的 CI/CD 流水线,例如 Cloud Build。
- 通过 Canary 分析来验证部署。
- 自动化模型训练(针对机器学习),例如 AutoML。
如果 Google Cloud 产品或服务只能部分满足自动执行或消除手动工作流的技术需求,请考虑通过您的 Google Cloud 客户代表提交功能请求。您的问题可能是其他客户优先考虑的问题或我们路线图的一部分。如果是这样,则了解该功能的优先级和时间轴有助于您更好地评估构建自己的解决方案与等待使用 Google Cloud 功能之间的权衡。
为费用高昂的重复劳动构建或购买解决方案
第三步可以与第一步和第二步同时完成。如果您的重复劳动费用较高(例如重复劳动会耗费任何管理您生产系统的团队大量时间),则第三步需要评估构建或购买其他解决方案。
在构建或购买解决方案时,请考虑集成、安全、隐私权与合规费用。除了最初的开发和设置费用之外,设计和实现您自己的自动化功能还会产生维护费用和可靠性风险,因此请在迫不得已时才考虑此方式。
后续步骤
探索架构框架中的其他类别,例如系统设计、安全、隐私权、合规性、可靠性、费用优化和性能优化。