关于使用 Terraform 开发基础结构组件

使用 Terraform 有效部署、更改和删除云端资源。

使用 Terraform 创建基础结构组件

terraform.tfvars 文件中设置变量后,使用 Terraform CLI 部署在 Terraform 配置中定义的资源。

开始之前,请确保本地计算机具有 Internet 访问权限。如果本地计算机位于防火墙后方,请使用合适的代理来允许 Terraform 访问 Internet。
  1. 转至包含 terraform.tfvars 文件的目录。
  2. 初始化 Terraform:
    terraform init
    该命令下载插件并设置供 Terraform 使用的目录。
  3. 验证配置的语法没有错误:
    terraform validate
  4. 如果存在语法错误,请修复错误并重复上一步。

    要调试问题,可以启用日志记录:

    • 通过将 TF_LOG 环境变量设置为 TRACEDEBUGINFOWARNERROR 来配置日志级别。TRACE 级别是最详细级别。
    • 使用 TF_LOG_PATH 环境变量设置日志文件路径。
  5. 查看在配置中定义的资源:
    terraform plan
    输出显示应用此配置时执行的所有操作的详细信息。
  6. 如果要进行任何更改,请编辑配置,验证并复核修订的计划。
  7. 创建资源:
    terraform apply
  8. 在提示符 Do you want to perform these actions? 中,输入 yes
    当 Terraform 创建每个资源时,它将显示操作的状态。

    创建所有资源后,将显示消息 Apply complete 以及添加、更改和销毁的资源数。

    ssh_to_bastion 输出显示可用于连接到堡垒主机的 ssh 命令。

    您可以随时通过运行命令 terraform output 查看 Terraform 输出

  9. 记下 ssh_to_bastion 输出的值。这是使用 SSH 连接到堡垒主机的命令。
您可以通过创建其他 Oracle Cloud Infrastructure 资源来扩展此环境,例如连接到专用子网的计算实例和数据库。

修改拓扑

要修改拓扑,必须更新相应 Terraform 配置中的资源定义,然后应用修订后的配置。确定需要修改的资源定义需要充分了解示例代码,特别是每个目录中引用的 Terraform 模块和模块间依赖性。

修改拓扑的说明不在此解决方案范围内。

删除所有资源

  1. 在安装了 Terraform 的计算机上,转到包含 terraform.tfvars 文件的目录。
  2. 输入以下命令:
    terraform destroy
    Terraform 显示将销毁的资源的详细信息,如以下示例所示:
    Plan: 0 to add, 0 to change, 12 to destroy.
  3. 在提示符 Do you really want to destroy all resources? 中,输入 yes
    当 Terraform 删除每个资源时,将显示操作的状态。
    删除所有资源后,将显示消息 Destroy complete 以及销毁的资源数,如以下示例所示:
    Destroy complete! Resources: 12 destroyed.