tfstate管理的后端
关于tfstate的管理注意事项
除非进行特殊设置,否则terraform apply将在执行机器上保存tfstate文件。
要正确反映变更差异,就需要始终共享最新的tfstate文件。
tfstate文件应始终保持最新并进行共享。
使用的词汇
Terraform将其管理的tfstate存储在后端存储中。
后端设置方法
作为常见的后端使用案例,可以提到AWS的S3。
设置步骤
-
- 创建存储桶
-
- 启用存储桶的版本控制(建议)
根据Terraform官方文档,将以下内容添加到模块中。
terraform {
backend "s3" {
bucket = "mybucket"
key = "path/to/my/key"
region = "us-east-1"
}
}
将来的工作
即使将S3设置为后端并保持tfstate最新,由于多人同时进行terraform apply会导致变更差异无法正确反映,所以可以使用DynamoDB等进行锁定以防万一。
下次我想要亲自尝试一下这个。