如何升级到 Terraform 1.0 的备忘录
很高兴地宣布 Terraform 已经成功地达到了 1.0 版本。
-
- Announcing HashiCorp Terraform 1.0 General Availability
- [祝]TerraformがついにGAになりました | DevelopersIO
好,我們公司也將升級 Terraform 版本到 1.0!
我认为有很多人对此充满热情,但另一方面,
我感到公司内部的氛围正在升级,但我不知道该做什么。
我认为有很多人是这样认为的。
不需要升级,也不需要太过谨慎。
首先,Terraform与像Java或Ruby等编程语言不同,不会存在“发现漏洞导致Web服务面临来自外部攻击的危险”这样的问题(大概)。因此,并没有迫切需要升级到1.0版本。
不需要之前的大改变,所以不必过于谨慎,就像编程语言一样。
等待第一个小型更新,观察情况后再进行更新。
没必要做这种事情。
升级步骤
请参考官方网站以获取详细信息。
- Upgrading to Terraform v1.0 – Terraform by HashiCorp
Terraform 在每个版本中不仅改变了语言规范,还改变了状态文件的规范。因此,无法进行跳跃更新,例如从0.12到1.0,而是需要逐个版本更新,从0.12到0.13,然后再到0.14,再到0.15,最后到1.0。
不过,由于每个版本都提供了类似于terraform 0.13upgrade的命令,所以更新本身并不困难。
在採用M3式的正式/開發環境中,以符號連結方式共享.tf文件有一個陷阱。每次升級版本,都需要更新所有環境的狀態文件(執行terraform apply)。
先升级DEV环境到1.0,然后再将生产环境从0.12升级到1.0。
这是不可能的。
根据文件调整至0.13版本
在DEV环境中执行terraform apply
在生产环境中执行terraform apply根据文件调整至0.14版本
在DEV环境中执行terraform apply
在生产环境中执行terraform apply(以下省略)
并行进行升级工作。