将Terraform迁移到0.12的大致流程
在Terraform提供程序中停用支持Terraform 0.11
看起来 Terraform 0.11 版本的 Provider 将不再受到支持。
在接下来的几个月里,我们将开始在我们正式维护的Terraform提供者的新版本中废弃对Terraform 0.11的支持,首先涉及的提供者包括AWS、AzureRM、Google和Kubernetes Terraform提供者。
移行的潮流
暂时只讲述大致情况。
0.12版本的转换步骤在官方文件中有详细说明。
按照以下步骤进行转换。
-
- 念のためアップグレード前に、 tf ファイルおよび state ファイルはバックアップする。
-
- 0.11.14 へアップグレードする。
-
- 0.11 で terraform init 〜 terraform apply まで行って差分なくす。
-
- 0.11 で terraform 0.12checklist を実行し、出力されたメッセージに従って tf ファイルを修正する。
-
- 0.12 のリリースにアップグレードする。
terraform init および terraform 0.12upgrade を実行する。
TF-UPGRADE-TODO コメント部分の設定について確認、必要に応じて修正する。
terraform validate や terraform plan で確認し、構文エラーが無いことを確認する。
在中文中用一种选项来改写以下内容:
虽然可以使用tfenv进行版本管理,但最近使用docker-compose进行管理,效果不错。
使用tfenv进行Terraform的版本管理
使用Docker-Compose来使用Terraform
尝试进行迁移本身并不那么困难。
使用terraform 0.12upgrade命令,会在TF-UPGRADE-TODO的注释中提供帮助。