Infrastructure as Code (IaC) is the process of managing and provisioning computer data center resources through machine-readable definition files, rather than physical hardware configuration or interactive configuration tools.
IaC is a technology that is related to configuration management. You can read more about configuration management on this post.
Iac is also one of the DevOps practices.
IaC Risks
IaC can make that errors are spread easily.
IaC Tools
IaC tools featured on this post:
- OpenTofu
- Terraform
- AWS CloudFormation
- Azure Resource Manager (ARM)
Sometimes, IaC tools are listed together with configuration management tools. You can find a list on this post.
OpenTofu
OpenTofu is an infrastructure as code (Iac) tool that allows users to define and provision infrastructure in a declarative configuration language, and then create, modify, and version infrastructure efficiently.
It is free and open source software, under a Mozilla Publice License (MPL) license.
OpenTofu is a forked of Terraform v1.5.5, that was its last FOSS version before it became source-viewable in 2023.
OpenTofu is named after the OpenTF (meaning “Open Terraform”) Manifesto, that requested Hashicorp take back to FOSS and that was signed by a group of users.
OpenTofu is maintained by the Linux Foundation.
Terraform
Terraform is an infrastructure as code (IaC) tool that allows users to define and provision infrastructure in a declarative configuration language, and then create, modify, and version infrastructure efficiently.
Terraform supports various cloud providers, as well as on-premises infrastructure and services.
It is source-viewable software, under a Business Source License version 1.1 (BSLv1.1) since
It is developed by American company HashiCorp.
AWS CloudFormation
CloudFormation is a service provided by Amazon Web Services (AWS) that allows you to define and provision AWS infrastructure as code. It uses JSON or YAML templates to describe the resources and their relationships.
Azure Resource Manager (ARM) Templates
Azure Resource Manager (ARM) Templates are used to define and deploy Azure infrastructure as code
Google Cloud Deployment Manager (GCDM)
Google Cloud Deployment Manager (GCDM) is a service on the Google Cloud Platform that allows you to define, deploy, and manage Google Cloud resources using configuration files.
Infrastructure from Code
Infrastructure from Code (IfC) is a concept derived from IaC.
It denotes the idea that infrastructure is created and configured automatically based on the code, using tools as AI.
You might also be interested in…
External References
- Asif Awan; “Infrastructure as Code Is Dead: Long Live Infrastructure from Code“; The New Stack, 2024-03-29
- OpenTofu
- Richard Speed; “How HashiCorp’s license shakeup seeded a new open source rebel“; The Register, 2024