terraform/website/docs/language/settings/backends/index.html.md

2.8 KiB

layout page_title description
language Backend Overview - Configuration Language A backend defines where Terraform stores its state. Learn about how backends work.

Backends

Backends define where Terraform's state snapshots are stored.

A given Terraform configuration can either specify a backend, integrate with Terraform Cloud, or do neither and default to storing state locally.

The rest of this page introduces the concept of backends; the other pages in this section document how to configure and use backends.

  • Backend Configuration documents the form of a backend block, which selects and configures a backend for a Terraform configuration.
  • This section also includes a page for each of Terraform's built-in backends, documenting its behavior and available settings. See the navigation sidebar for a complete list.

What Backends Do

Backends primarily determine where Terraform stores its state. Terraform uses this persisted state data to keep track of the resources it manages. Since it needs the state in order to know which real-world infrastructure objects correspond to the resources in a configuration, everyone working with a given collection of infrastructure resources must be able to access the same state data.

By default, Terraform implicitly uses a backend called local to store state as a local file on disk. Every other backend stores state in a remote service of some kind, which allows multiple people to access it. Accessing state in a remote service generally requires some kind of access credentials, since state data contains extremely sensitive information.

Some backends act like plain "remote disks" for state files; others support locking the state while operations are being performed, which helps prevent conflicts and inconsistencies.

-> Note: In Terraform versions prior to 1.1.0, backends were also classifid as being 'standard' or 'enhanced', where the latter term referred to the ability of the remote backend to not only store state but perform Terraform operations. This classification has been removed, clarifying the primary purpose of backends. See Configuring Terraform Cloud to store state, execute remote operations, and use Terraform Cloud directly from Terraform.

Available Backends

Terraform includes a built-in selection of backends, which are listed in the navigation sidebar. This selection has changed over time, but does not change very often.

The built-in backends are the only backends. You cannot load additional backends as plugins.