跳至主要内容

[筆記] Terraform

官方文件
$ terraform -help
$ terraform -help plan

# 安裝對應的 provider,並且產生 .terraform.lock.hcl 檔
$ terraform init

# format terraform 的設定檔
$ terraform fmt

# 確認 terraform 設定檔的正確性
$ terraform validate

# 檢視會進行的變成變更
$ terraform plan

# 在 provider 上建立對應的 infra structure
$ terraform apply

# 顯示 Terraform State
$ terraform show

$ terraform destroy
  • Provider 是 Terraform 中的 plugin,用來建立和管理資源。在 Terraform 的 settings 中可以定義多個 providers,如此即可管理多個不同 providers 底下的 resources。

  • lock

    • 在使用 terraform init 後,會產生一支 .terraform.locl.hcl,這是用來確定大家所安裝的 provider 版本是一致的

    • 這隻檔案最好被 version control tool 給追蹤

  • Terraform State

    • 在使用 terraform apply 建立 infrastructure 後,terraform 會產生一支名為 terraform.tfstate 的檔案,這個檔案會保存和這個 resource 有關的 IDs、設定等等,如此後續 terraform 才知道如何進行的 update 或 destroy。
    • 這隻檔案經常會帶有敏感資訊,因此你最好小心保存它,並且只把它分享給需要共同管理 infrastructure、可信任的同事。

Google Cloud Platform