跳至主要内容

后端类型:consul

将状态存储在给定路径的 Consul KV 存储中。

此后端支持 状态锁定

示例配置

代码块
terraform {
backend "consul" {
address = "consul.example.com"
scheme = "https"
path = "full/path"
}
}

请注意,对于访问凭据,我们建议使用 部分配置

数据源配置

代码块
data "terraform_remote_state" "foo" {
backend = "consul"
config = {
path = "full/path"
}
}

配置变量

支持以下配置选项/环境变量

  • path - (必填)Consul KV 存储中的路径
  • access_token / CONSUL_HTTP_TOKEN - (必填)访问令牌
  • address / CONSUL_HTTP_ADDR - (可选)以 dnsname:port 格式指定的 Consul 端点的 DNS 名称和端口。默认值为本地代理 HTTP 侦听器。
  • scheme - (可选)指定与给定 address 交互时使用的协议,可以是 httphttps。SSL 支持也可以通过将环境变量 CONSUL_HTTP_SSL 设置为 true 来触发。
  • datacenter - (可选)要使用的机房。默认值为代理的机房。
  • http_auth / CONSUL_HTTP_AUTH - (可选)与 Consul 通信时使用的 HTTP 基本身份验证凭据,格式为 useruser:pass
  • gzip - (可选)true 表示使用 gzip 压缩状态数据,false(默认)表示不压缩。
  • lock - (可选)false 表示禁用锁定。默认值为 true,但需要使用 Consul 的会话权限,以及对 $path/.lock 的至少 kv 写权限才能执行锁定。
  • ca_file / CONSUL_CACERT - (可选)用于验证远程代理证书的 PEM 编码证书颁发机构的路径。
  • cert_file / CONSUL_CLIENT_CERT - (可选)提供给远程代理的 PEM 编码证书的路径;需要使用 key_file
  • key_file / CONSUL_CLIENT_KEY - (可选)PEM 编码私钥的路径,如果指定了 cert_file,则需要。