Terraform is an infrastructure as code software by HashiCorp. Terraform enables you to create, change, improve and versioning infrastructure safely and efficiently.
It is an open source tool that codifies APIs into declarative configuration files that can be shared amongst team members, treated as code, edited, reviewed, and versioned.
Terraform is the first multi-cloud immutable infrastructure tool and it was written in Go language.
Terraform can create resources across all major infrastructure providers such as AWS, GCP, Azure, OpenStack, VMware, IBM and more.
As Infrastructure as code is also a key and foundation for DevOps practices, Terraform adopted as one of the essential tools in the DevOps toolchain.
Like other technologies such as Ansible, Chef, or Puppet to automate and provisioning of software, Terraform starts from the same principle, infrastructure as code, but focuses on the automation of the infrastructure itself.
Your whole Cloud infrastructure (instances, storage, volumes, networking ) can be easily defined in terraform.
- Elastic Cloud Compute (EC2)
- User Data
- Elastic Block Storage (EBS)
- Relational Database Service (RDS)
- Auto Scaling
- Elastic Load Balancing
- Elastic Beanstalk
- Identity Access Management (IAM)
- Virtual Private Cloud (VPC)
- Route 53 (DNS Service)
- Elastic Container Registry (ECR)
- Elastic Container Service (ECS)
- Elastic Container Service for Kubernetes (EKS)