不止Terraform:如何扩展DevOps

这是我们在旅程中学习的教训,以克服DevOps的挑战,为后续的扩展奠定基础。

译自Beyond Terraform: How We Scaled DevOps,作者 Malcolm Edgar 是Drop Bio Health的首席技术官,这是一家通过血液生物标志物和生活方式分析在家提供健康跟踪的公司。他之前曾担任金融科技公司Avoka Technologies的首席技术官,并获得了一项加密方法专利。

这是两部分文章的第一部分。

成为一个新兴科技公司的首席技术官,有点像在玩杂耍火把。保持敏捷、快速和安全的责任往往会压垮小型团队,尤其是因为云开发的复杂性。在2023年,我的公司Drop Bio Health通过血液生物标志物和生活方式分析在家提供健康跟踪,决定简化云开发以专注于核心产品价值开发。

我一直在重新考虑我们的DevOps方法,以提高团队效率、增加我们的部署频率并进一步加强安全协议。这里是我们在这次旅程中学到的教训的故事,以克服DevOps的挑战并为可扩展增长建立自己。

与许多团队一样,我们首先与AWS云开发工具包(CDK)一起走上了Terraform之路,希望它能成为我们云基础设施问题的灵丹妙药。然而,这次旅程引入了许多意想不到的DevOps复杂性,不仅消耗了我们团队不可持续的时间,而且分散了我们对核心产品开发的注意力。

Terraform的声明性性质意味着一切,包括资源及其配置,都必须明确定义。随着我们的架构的增长,代码行也在增长 - 运行到成千上万行。这个庞大的代码库变得越来越难以管理。

此外,维护一个仅用于基础设施的专用项目意味着我们发现自己在两个主要项目之间来回切换: 一个专注于我们的应用程序,另一个仅针对基础设施。这种分工在我们的团队内制造了不必要的隔阂,并对确保我们的应用程序和基础设施更改保持同步提出了挑战。

测试Terraform也提出了其独特的一系列挑战。鉴于其面向配置的性质和缺乏直接的测试框架,测试更像是模式匹配而不是常规的逻辑验证。因此,调试更多地是侦探工作而不是解决问题。

随着我们的Terraform代码库的扩展,很明显需要分割来进行管理。然而,这种看似谨慎的决定,将配置拆分到多个文件和目录中,使追踪依赖关系和整体理解变得更加困难。回顾起来,我们进入Terraform世界的旅程,虽然开始是很乐观的,但逐渐变成了复杂性的泥沼。我们需要一个变化,这样我们就可以把更多宝贵的时间和资源花在我们的业务目标上,而不是手动的DevOps任务上。

进入: 基础设施自动化

虽然我们正在努力抵消这些复杂性,但市场正在以惊人的速度发展,任何延误都可能意味着错失机会。在这种环境下,管理开发和运维的压力开始给我们的团队带来负担。

我开始看新的基础设施方法,寻找自动化来解决我们在基础设施即代码工具(如CDK和Terraform)面临的挑战。最新的从代码中的基础设施创新非常适合帮助我们的小团队快速高效地进行工作。我们使用Nitric(请查看GitHub上的开源项目),它根据我们的代码自动提供所需的基础设施,并提供意见鲜明的最佳实践来帮助我们以高效和自信的方式进行云部署。

我们的基础设施和部署流程要简单得多,使我们的团队可以自由地专注于开发我们的核心业务功能并按需部署。Nitric提供的自动化意味着我们可以扩展DevOps,同时绕过Terraform的常见挑战。

作为Nitric实施的一部分,我们也重新审视了我们的应用程序架构。这导致了一些关于可扩展性、安全性和成本的改进(AWS托管成本降低60%)。在第二部分中,我将分享我们学到的架构课程和我们取得的成果。

您也可以在这篇文章中了解有关我们在这个项目中的成功的更多信息。

本文在云云众生(yylives.cc/)首发,欢迎大家访问。

相关推荐
杜子不疼.19 小时前
第06篇:扩展不是堆机器——基于 A2A 协议的 openJiuwen 异构 Agent 通信架构设计
ai·机器人·devops
7177772 天前
支持混合云的 DevOps 平台有哪些:主流方案对比与选型指南
运维·devops
蒸鱼Yuzheng3 天前
Android 构建可复现性:APK 指纹、文件级差异与供应链审计
android·apk·devops·软件供应链·可复现构建
小稀土1234 天前
一文读懂:互联网研发管理工具(典型场景、能力边界、落地顺序)
devops
小此方4 天前
「插曲:Git」企业规范篇:DevOps开发模型、Git Flow五类分支设计与测试/预发布/生产环境Bug修复及Hotfix紧急发布流程
git·bug·devops
tianyuanwo4 天前
【软考高级系统架构设计师】05 - DevOps & CI/CD专题备考
ci/cd·系统架构·devops
ZeroNews内网穿透5 天前
内网穿透安全加固实践:通过 Geo 地理围栏阻挡境外扫描风险
运维·安全·devops
协皓家具7 天前
2026年广州岛台吧台椅厂家有啥新变化
大数据·运维·python·devops
記億揺晃着的那天8 天前
【Agent 架构实战】大模型长期项目开发:决策文档生命周期管理与 CI 门禁治理
软件工程·devops·架构设计·ai agent·文档管理