
开源基础设施即代码项目OpenTofu发布了1.10版本,开发团队称这是“迄今为止最全面的更新”。该版本为提供者和模块分发引入了容器注册表支持,以及几个以企业为中心的特性,旨在简化状态管理和改进开发人员工作流程。

OpenTofu 1.10 的突出特性是对开放容器计划(Open Container Initiative, OCI)注册表的原生支持。这允许团队通过 Docker Hub 和 GitHub 容器注册表等容器注册中心分发提供商和模块。这种能力解决了在空气隔离或高安全性环境中运营的组织的一个重大缺口,在这些环境中,传统的注册表访问可能受到限制。这种能力与 HashiCorp 的 Terraform 不同,后者目前没有为模块和提供商提供等效的 OCI 注册表集成。
行业分析表明,容器注册表支持是“变革性的”和“游戏规则改变者”,特别是对于在受限环境中运营的组织。正如Ewere Tech所指出的,这种能力标准化了依赖管理,并与现代 DevOps 实践保持一致。CloudNative Now强调了这一特性如何使团队能够在不同的部署场景中更有效地共享和重用组件。
OpenTofu 1.10.0 引入了 S3 原生状态锁定,而不需要 AWS DynamoDB,解决了基于 Terraform 的工作流程中的一个长期存在的复杂性问题。这一变化减少了使用 Amazon S3 进行状态存储的团队的基础设施依赖和运营成本,分析师将其描述为对“企业和安全”需求的关注。
该版本还支持外部密钥提供商,实现了与 AWS 密钥管理服务(KMS)和 HashiCorp Vault 等状态加密服务的集成。这种能力“尤其吸引那些大规模运营或有严格合规要求的组织”,使组织能够灵活地使用自己喜欢的秘密管理解决方案,同时保持状态安全。
这次更新包括了几个增强功能,旨在提高开发人员的生产力。新的计划选项包括 -target-file
和 -exclude-file
标志,为计划和应用操作期间的资源定位提供更细粒度的控制。该版本还引入了全局提供程序缓存锁定,旨在防止 CI/CD 环境中并发操作时的冲突。
为了改善开发者体验,OpenTofu 还发布了一个MCP服务器。这为提供商和模块文档提供了直接访问,以便 AI 编码助手可以生成准确的最佳实践资源配置。还有一个官方 Visual Studio Code 扩展的预览版本,提供语法高亮、智能提示自动补全和实时验证。对于其他编辑器的用户,该项目提供了 tofu-ls
,这是一个与 Neovim、Emacs 和 Sublime Text 等编辑器兼容的语言服务器协议实现。
1.10 版本在本地模式下添加了 OpenTelemetry 跟踪支持,为开发人员提供了改进的调试和性能分析能力。正如测试文档中强调的那样,该功能可以在不需要外部基础设施的情况下详细监控 OpenTofu 的操作,从而提高“可观测性和 CI/CD 准备程度”。
该版本还包括增强的 moved
和removed
块,旨在使基础设施重构更安全、更可预测。模块作者现在可以将变量和输出标记为已弃用,这有助于在保持向后兼容性的同时实现更平滑的 API 演进。
OpenTofu 1.10 的功能集与 HashiCorp Terraform 最近发布的版本明显不同。Terraform 增加了临时价值,用于改进机密信息处理和大规模部署的性能改进,OpenTofu 则优先考虑注册表现代化和企业工作流简化。其他区别还包括新的 OCI 注册表支持、本机 S3 状态锁定和外部密钥提供程序系统;Terraform 中目前不可用的功能。然而,OpenTofu 和 Terraform 的选择越来越取决于组织要求和规模。根据 YouTube 频道 Merge Ready 的分析,虽然 OpenTofu 代表了“Terraform 最后一个 MPL 授权版本的社区驱动分支”,但它“对于需要漂移检测或 RBAC SSO 审计日志和政策实施的受监管行业、金融、医疗保健或企业来说仍然不太理想。”
OpenTofu 1.10 的功能集与 HashiCorp Terraform 的最新版本明显不同。虽然 Terraform增加了用于改进机密处理的临时值并针对大规模部署的性能改进,但 OpenTofu 则优先考虑了注册表现代化和企业工作流程简化。其他区别包括新的 OCI 注册表支持、原生 S3 状态锁定和外部密钥提供商系统;这些特性目前在 Terraform 中不可用。然而,选择 OpenTofu 和 Terraform 越来越取决于组织的需求和规模。根据 YouTube 频道Merge Ready的分析,尽管 OpenTofu 代表了“Terraform 最后一个 MPL 许可版本的社区驱动分支”,但它仍然“对于需要漂移检测或 RBAC SSO 审计日志和策略执行的受监管行业、金融、医疗保健或企业来说不太理想。”

Terraform 通过漂移检测等功能在企业环境中保持优势,它“持续监控基础设施状态并向团队发出警报”,作为防止意外变化的内置保护措施。Terraform 云服务和企业产品通过哨兵(Sentinel)或开放策略代理(OPA)提供基于角色的访问控制(RBAC)、单点登录(SSO)、审计日志记录和策略执行;这些是 OpenTofu 目前缺乏的能力。
Merge Ready 分析表明,“对于需要安全性、稳定性和治理的生产环境,Terraform 云服务或企业版仍然是务实的选择”,而 OpenTofu 在“独立开发者、小团队或爱好 IaC”方面表现出色,并提供“完全开源的、供应商中立的体验”。与 Terraform 更倾向于供应商驱动的方法相比,这种定位反映了 OpenTofu 社区驱动的开发模式。OpenTofu 项目保持与 Terraform 配置的兼容性,同时增加了新的独特功能。正如 Merge Ready 所指出的,OpenTofu 代表了“一个精确的即插即用”替代品,具有“与 Terraform 相同的 HCL、相同的提供商和相同的命令”,确保现有用户的无缝迁移。1.10 版本是本项目开始以来最显著的特性差异。
OpenTofu 的发布恰逢该项目在 GitHub 上的下载量接近 1000 万,开发团队指出,总采用数字“可能已经超过 2000 万”。OpenTofu 1.10.2现已可用(这是自 1.10.0 以来的两个次要的缺陷修复版本),可以通过 GitHub 版本、包管理器和官方 Docker 镜像下载,并且可在 Linux、macOS 和 Windows 上运行。
原文链接:
评论