DEV Community

Cover image for High Availability Architecture setup on AWS using Terraform
Rajit Paul
Rajit Paul

Posted on • Edited on

1

High Availability Architecture setup on AWS using Terraform

What is Terraform?

Terraform is an open-source infrastructure as a code tool used for building, changing, and versioning infrastructure efficiently. Terraform is created by Hashicorp. The language used in Terraform is HCL or Hashicorp Configuration Language.

An Example of terraform code

Alt Text

Terraform Providers

Terraform Providers are like Plugins, every provider has its own documentation describing its own resources and usage. The Terraform Registry is the main home for all provider documentation. There are almost 948 Terraform Providers out of which few are AWS, GCP, AZURE, KUBERNETES, OCI, and ALIBABA.
Alt Text
Source: terraform.io

Components of High Availability Architecture

EC2 - Elastic Compute Cloud in AWS
Secure, Resizable compute capacity on the cloud.
Alt Text
source: wikipedia.org

S3 - Simple Storage Service
Object Storage Service through a web interface that allows us to block all public access to our objects
Alt Text
source: aws.amazon.com

CloudFront
Fast Content Delivery Network (CDN) Service that provides a globally distributed network of proxy servers that cache content and deliver to customer globally with low latency and high transfer speed.
Alt Text
source: askvsk.com

For Storage we have 2 options:

  • EBS
  • EFS

EBS - Elastic Block Storage
Easy to use, High-Performance Block Storage Service designed for use with AWS EC2.
Alt Text
source: wikipedia.org

EFS - Elastic File System
Simple, Scalable Elastic File System for use with AWS Cloud Services and on-premises resources.
Alt Text
source: medium.com

Terraform Code:

High Availability with EBS - https://github.com/RajitPaul11/terraform_aws/tree/main/high-availability_aws
High Availability with EFS -
https://github.com/RajitPaul11/terraform_aws/tree/main/high-availability_efs

Billboard image

The Next Generation Developer Platform

Coherence is the first Platform-as-a-Service you can control. Unlike "black-box" platforms that are opinionated about the infra you can deploy, Coherence is powered by CNC, the open-source IaC framework, which offers limitless customization.

Learn more

Top comments (0)

Billboard image

Deploy and scale your apps on AWS and GCP with a world class developer experience

Coherence makes it easy to set up and maintain cloud infrastructure. Harness the extensibility, compliance and cost efficiency of the cloud.

Learn more

👋 Kindness is contagious

Discover a treasure trove of wisdom within this insightful piece, highly respected in the nurturing DEV Community enviroment. Developers, whether novice or expert, are encouraged to participate and add to our shared knowledge basin.

A simple "thank you" can illuminate someone's day. Express your appreciation in the comments section!

On DEV, sharing ideas smoothens our journey and strengthens our community ties. Learn something useful? Offering a quick thanks to the author is deeply appreciated.

Okay