Terraform  vs  Cloudformation

Cloud Automation

CloudFormation

AWS CloudFormation is an infrastructure templating, or infrastructure as code (IaC) service provided free of charge by AWS.

Terraform

HashiCorp Terraform addresses similar needs, including an IaC declarative approach, but in a cloud agnostic way.

The Mode of Usage

CloudFormation specially  designed for AWS services. whereas Terraform covers multiple cloud platforms like Azure, AWS, GCP, Databricks and many more.

Languages Supported

CloudFormation supports JSON and YAML. whereas Terraform supports Hashicorp's proprietary Language. It is JSON compatible

State-management

CloudFormation is a managed AWS service, it checks the infrastructure consistently to detect whether the provisioned infra is maintaining its state or not.

State-management

Terraform stores the state of the infrastructure on the provisioning machine in the form of file with .tfstate extension.

Modularity

CloudFormation utilizes a system called “nested stacks.” That is, CloudFormation  templates being called from within CloudFormation templates.

Modularity

Terraform has a modules, which are containers for multiple resources that are used together.

Configuration

CloudFormation uses parameters, and has a maximum of 60 parameters per template

Configuration

Terraform uses provider specific data sources. The implementation is in a modular fashion, allowing data to be fetched or computed.

Read More!!

So, this is all about the comparison between ClodFormation and Terraform. I hope you enjoyed the article and if you  found it useful, please share it with your friends and colleagues.