用途:本资料是一份基础设施即代码(IaC)实践指南,面向需要以代码方式声明、管理和审计云基础设施的场景。
主要能力与原则:强调声明式优先(描述期望状态而非步骤)、远程状态集中管理(S3/GCS/Terraform Cloud)并用状态锁防止并发修改、模块化复用、每个环境独立状态文件与变量文件、变更可审计(PR 触发 plan、人工审批后 apply)、最小权限执行角色,以及不可变基础设施(修改即替换以减少配置漂移)。
工作流程:规划基础设施与资源依赖;初始化项目结构并配置远程 backend 与状态锁;按网络层、计算层、数据层、安全层编写模块;环境变量化并从 Vault/SSM 读取敏感值;CI 集成(PR 自动 plan 并评论、merge 后审批 apply、定时 drift 检测);文档与资源标签。示例目录按 modules 与 environments 分层,含 main.tf、variables.tf、outputs.tf、terraform.tfvars、backend.tf 等文件。
工具对比:Terraform 用 HCL、远程 backend、多云;Pulumi 支持 TypeScript/Python/Go、Pulumi Cloud 状态;CloudFormation 用 YAML/JSON、AWS 托管、仅限 AWS。
限制与注意事项:资料列出的常见坑包括状态文件本地存储、不锁定 provider 版本、硬编码 secrets、不用模块、手动改资源、不审批直接 apply、大状态文件、循环依赖、不打标签、忽略 plan 输出、不做 import、滥用 workspace。此外该资料未提供具体版本、价格或平台限制信息。