1.4.1. Terraform代码的书写

我们将在本章讲解Terraform配置文件的编写。

Terraform早期仅支持使用HCL(Hashicorp Configuration Language)语法的.tf文件,近些年来也开始支持JSON。HashiCorp甚至修改了他们的json解析器,使得他们的json可以支持注释,但HCL相比起JSON来说有着更好的可读性,所以我们还是会以HCL来讲解。其实我个人是不太喜欢用JSON编写Terraform代码的,有些团队使用JSON是因为他们是用其他代码来生成相应的JSON格式的Terraform代码(比如自研的GUI工具,通过拖拽的方式定义基础设施,继而生辰相关代码)。我个人不太喜欢这种方式,因为它鼓励用户从零开始拖拽出所需的所有基础设施,而不是通过组装成熟的可复用的模块代码。我个人认为应该像对待业务逻辑代码一样对待基础设施代码。

这里特别之处一点,我们将在这一章节提到模块(Module)的概念,但我们会在后续单独的章节专门讲解模块。在本章内,读者可以简单地将一个模块理解成一个含有多个Terraform代码文件的目录,不包含其子目录。

本章内容基本是对官方文档的翻译,英语阅读能力好的读者应该直接阅读官方文档获取最权威的信息。

results matching ""

    No results matching ""