Terraform is a software tool that is used to define and provision data center infrastructures using HashiCorp Configuration Language (HCL), which is a declarative configuration language.
Terraform is similar to CloudFormation, but deals with not only one provider (such as AWS in the case of CloudFormation).
In order to be able to manage a particular resource, there must be a provider for the given type of resource. An exclusive list of such providers is maintained by HashiCorp.