Infrastructure as Code

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.

OpenTofu official webiste

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.

Terraform official website

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

Leave a Reply

Your email address will not be published. Required fields are marked *