etcdv3

Kind: Standard (with locking)

Stores the state in the etcd KV store with a given prefix.

This backend supports state locking.

Example Configuration

terraform {
  backend "etcdv3" {
    endpoints = ["etcd-1:2379", "etcd-2:2379", "etcd-3:2379"]
    lock      = true
    prefix    = "terraform-state/"
  }
}

Note that for the access credentials we recommend using a partial configuration.

Example Referencing

data "terraform_remote_state" "foo" {
  backend = "etcdv3"
  config {
    endpoints = ["etcd-1:2379", "etcd-2:2379", "etcd-3:2379"]
    lock      = true
    prefix    = "terraform-state/"
  }
}

Configuration variables

The following configuration options / environment variables are supported:

  • endpoints - (Required) The list of 'etcd' endpoints which to connect to.
  • username / ETCDV3_USERNAME - (Optional) Username used to connect to the etcd cluster.
  • password / ETCDV3_PASSWORD - (Optional) Password used to connect to the etcd cluster.
  • prefix - (Optional) An optional prefix to be added to keys when to storing state in etcd. Defaults to "".
  • lock - (Optional) Whether to lock state access. Defaults to true.
  • cacert_path - (Optional) The path to a PEM-encoded CA bundle with which to verify certificates of TLS-enabled etcd servers.
  • cert_path - (Optional) The path to a PEM-encoded certificate to provide to etcd for secure client identification.
  • key_path - (Optional) The path to a PEM-encoded key to provide to etcd for secure client identification.

© 2018 HashiCorp
Licensed under the MPL 2.0 License.
https://www.terraform.io/docs/backends/types/etcdv3.html