gpt4 book ai didi

通过GoogleCloudStorage(GCS)管理Terraform的状态State

转载 作者:我是一只小鸟 更新时间:2023-01-15 06:31:18 35 4
gpt4 key购买 nike

管理Terraform状态文件的最佳方式是通过云端的统一的存储,如谷歌云就用GCS.

首先要创建一个Bucket:

                      
                        $ gsutil mb -p pkslow -l us-west1 -b on gs://pkslow-terraform
Creating gs://pkslow-terraform/...

$ gsutil ls gs://
gs://pkslow-terraform/

                      
                    

然后在Terraform文件中配置对应的信息:

                      
                        terraform {
  backend "gcs" {
    bucket  = "pkslow-terraform"
    prefix  = "state/gcp/pubsub"
  }
}

                      
                    

初始化后,就会在Bucket上创建对应的目录:

                      
                        $ terraform init -plugin-dir=${TERRAFORM_PLUGIN}

                      
                    

变更生效:

                      
                        $ terraform apply -auto-approve

                      
                    

我们在浏览器查看一下,发现已经成功状态了对应的状态文件:

通过远程的云端,不仅可以存入状态文件,也可以从状态文件读取数据,如一些输出变量。比如模块A创建了一个VM,而我们可能通过这种方式获取它的IP,以便在其它模块使用。大致的配置如下:

                      
                        data "terraform_remote_state" "foo" {
  backend = "gcs"
  config = {
    bucket  = "terraform-state"
    prefix  = "prod"
  }
}

resource "template_file" "bar" {
  template = "${greeting}"

  vars {
    greeting = "${data.terraform_remote_state.foo.greeting}"
  }
}

                      
                    

代码

代码请查看GitHub: https://github.com/LarryDpk/pkslow-samples 。


Reference

通过Terraform创建GCP Pubsub 。

最后此篇关于通过GoogleCloudStorage(GCS)管理Terraform的状态State的文章就讲到这里了,如果你想了解更多关于通过GoogleCloudStorage(GCS)管理Terraform的状态State的内容请搜索CFSDN的文章或继续浏览相关文章,希望大家以后支持我的博客! 。

35 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com