Infrastructure as Code(基础设施即代码,简称 IaC)是一种通过编写代码和配置文件来管理和配置计算机基础设施(如服务器、网络、数据库等)的方法,而非通过手动操作或交互式工具来完成。它是现代 DevOps 实践的核心概念之一。
/ˌɪnfrəˈstrʌktʃər æz koʊd/
We use infrastructure as code to set up our cloud servers automatically.
我们使用基础设施即代码来自动配置云服务器。
By adopting infrastructure as code, the engineering team reduced deployment errors by 80% and could reproduce identical environments across development, staging, and production with a single command.
通过采用基础设施即代码,工程团队将部署错误减少了80%,并且只需一条命令就能在开发、预发布和生产环境中复制出完全相同的环境。
这个短语由三个部分组成:infrastructure(基础设施)源自拉丁语 infra(下方)和 structura(建筑、结构);as(作为);code(代码)源自拉丁语 codex(书籍、法典)。该术语大约在2000年代中期随着云计算和 DevOps 运动的兴起而流行,最早由 Andrew Clay Shafer 和 Patrick Debois 等人在推动 DevOps 理念时广泛使用。其核心思想是将传统上需要手动操作的基础设施管理工作,转变为可以像软件代码一样编写、版本控制和自动执行的过程。