Open source provisioning tool by HashiCorp that allows to define the infrastructure as code using domain-specific declarative language, deploy and manage it across public cloud providers and other services.

Written in Go.

Translates the configuration into the API calls to the cloud providers specified in the code. As efficiently as possible.

Adheres to immutable infrastructure principle.

Masterless. Does not need a master server to deploy infrastructure. API clients of cloud providers can be viewed as master server, in some sense.

Agentless.

Terraform state is used to track the deployed infrastructure.

Terraform backend