Terraform的基本概念

224 阅读3分钟

阅读时间: 4 分钟

什么是Terraform?

根据Terraform的官方文档,Terraform是一个安全、高效地构建、改变和版本化基础设施的工具。Terraform可以管理现有的和流行的服务提供商,以及定制的内部解决方案。

它是一个开源的IaC(基础设施即代码)工具,由HashiCorp.Terraform创建了一个执行计划,解释了如何达到预期的状态,然后实施它来构建指定的基础设施。Terraform可以决定随着配置的改变而改变什么,并建立可以实施的渐进执行计划。

语言

  • 输入变量--作为Terraform模块的参数,因此用户可以在不编辑源代码的情况下定制行为。
  • 模块- 作为多个资源的容器,一起使用。它是打包和重用资源配置的一种方式。
  • 资源- 记录了声明资源的语法
  • 数据源- 允许获取或计算数据,以便在Terraform配置的其他地方使用。
  • 输出值- Terraform模块的返回值
  • 本地值--为表达式指定一个短名称的便利功能

Terraform生命周期方法

  • terraform init:初始化工作目录,其中包括所有的配置文件。terraform init命令创建一个工作目录,在其中可以找到Terraform配置文件。
  • terraform validate。验证目录中的配置文件。 terraform validate确保你的代码是有效的。如果在语法上有任何错误或丢失数据,这将显示出来。
  • terraform计划 - 创建一个执行计划以达到基础设施的理想状态。我们可以运行terraform计划来查看执行计划。这是一个绝好的方法,可以在执行变化之前仔细检查这些变化。如果你没有指定任何VPC、子网ID,这个配置将在默认的VPC中以各自的默认值创建资源。
  • terraform apply- 按照计划中的定义,对基础设施进行修改。要实际创建资源,运行terraform apply。

通过terraform在AWS部署简单的EC2实例的例子

  • 为了连接我们的AWS账户和Terraform代码,我们需要设置AWS用户凭证。确保你所使用的用户凭证能够访问你要配置的资源。掌握AWS访问密钥和具有正确权限的IAM用户的秘密访问密钥,并将其保存在一个安全的地方。
  • 由于我们正在与AWS打交道,我们需要提供我们先前检索到的凭证,以便与我们各自的AWS资源连接。要在你的命令行工作区设置AWS凭证

  • 通常情况下,使用Terraform的第一步是设置你想使用的提供者。制作一个名为aws.tf的文件,并在其中插入以下代码。

  • 下面提到的是你需要部署一个t2.micro实例的代码。在ec2.tf文件中编写代码。

  • 在终端中,进入你创建的ec2.tf和aws.tf文件夹,运行terraform init命令。

  • 你可以运行terraform validate来确保你的代码是有效的。

  • 我们可以运行terraform plan来查看执行计划。

  • 要实际创建资源,运行terraform apply。

  • 正如你所看到的,我们现在已经在Terraform的帮助下成功创建了我们的第一个ec2实例。如果你导航到你的AWS控制台,你会看到像这样的东西

Scala FutureScala Future

分享Knol。

相关信息