Terraform (software)

Terraform is an open-source infrastructure as code software tool created by HashiCorp. It enables users to define and provision data center infrastructure using a declarative configuration language known as HashiCorp Configuration Language (HCL), or optionally JSON.[3]

Terraform
Original author(s)Mitchell Hashimoto et al.
Developer(s)HashiCorp
Initial releaseJuly 28, 2014 (2014-07-28)
Stable release
0.13.0 / August 10, 2020 (2020-08-10)[1]
Repository
Written inGo
Operating systemLinux, FreeBSD, macOS, OpenBSD, Solaris, and Microsoft Windows
Available inEnglish
TypeInfrastructure as Code
LicenseMozilla Public License v2.0[2]
Websitewww.terraform.io/ 

Terraform manages external resources (such as public cloud infrastructure, private cloud infrastructure, network appliances, software as a service, and platform as a service) with "providers". HashiCorp maintains an extensive list of official providers, and can also integrate with community-developed providers.[4] Users can interact with Terraform providers by declaring resources[5] or by calling data sources.[6] Rather than using imperative commands to provision resources, Terraform uses declarative configuration to state the desired final state. Once a user invokes Terraform on a given resource, Terraform will perform CRUD actions on the user's behalf to accomplish the desired state.[7] The infrastructure as code can be written as modules, promoting reusability and maintainability.[8]

Terraform supports a number of cloud infrastructure providers such as Amazon Web Services, Microsoft Azure, IBM Cloud, Google Cloud Platform,[9] DigitalOcean,[10] Oracle Cloud Infrastructure, VMware vSphere, and OpenStack.[11][12][13][14][15]

HashiCorp also supports a Terraform Module Registry, launched in 2017.[16] In 2019, Terraform introduced the paid version called Terraform Enterprise for larger organizations[17]. Terraform has four major commands: terraform init, terraform plan, terraform apply, terraform destroy.

See also

References

  1. "Releases - hashicorp/terraform". Retrieved 10 August 2020 via GitHub.
  2. Terraform's LICENSE
  3. "Syntax - Configuration Language".
  4. "Providers".
  5. "Resources".
  6. "Data Sources".
  7. "Configuration".
  8. "Modules".
  9. "Google Cloud Platform Provider for Terraform". Retrieved 2017-02-05.
  10. "Introducing the DigitalOcean Terraform Provider".
  11. "Terraform vs. Chef, Puppet, etc. - Terraform by HashiCorp". Terraform by HashiCorp. Retrieved 2018-03-14.
  12. "HashiCorp Terraform 0.9. Released with State Locking, State Environments, and Destroy Provisioners". InfoQ. Retrieved 2017-05-23.
  13. Yevgeniy., Brikman (2017). Terraform Writing Infrastructure as Code. O'Reilly Media. ISBN 9781491977057. OCLC 978667796.
  14. Somwanshi, Sneha. "Choosing the Right Tool to Provision AWS Infrastructure". ThoughtWorks.
  15. Turnbull, James (2016). The Terraform Book. ISBN 9780988820258.
  16. "HashiCorp Terraform 0.11".
  17. HashiCorp. "HashiCorp Terraform - Provision & Manage any Infrastructure". HashiCorp: Infrastructure enables innovation. Retrieved 2020-04-15.
This article is issued from Wikipedia. The text is licensed under Creative Commons - Attribution - Sharealike. Additional terms may apply for the media files.