This repository contains Terraform configurations to deploy a highly available application on AWS using load balancers, auto-scaling, and other AWS services. The deployment process includes creating a Virtual Private Cloud (VPC), setting up load balancers, configuring auto-scaling groups, and deploying the application.
The infrastructure diagram illustrates the architecture of the deployed application, including the networking components, load balancers, auto-scaling groups, and other relevant AWS services.
To deploy the application on AWS, follow these steps:
- Clone this repository to your local machine:
git clone <repository-url>
- Navigate to the cloned repository:
cd <repository-directory>
- Initialize Terraform:
terraform init
-
Review the Terraform configurations in the repository, including variables and resource definitions, to ensure they meet your requirements.
-
Modify the
terraform.tfvars
file to customize configuration values such as region, instance types, and other parameters as needed. -
Apply the Terraform configurations to create the infrastructure:
terraform apply
-
Confirm the changes and enter
yes
when prompted to apply the Terraform changes. -
Once the deployment is complete, verify that the application is accessible via the load balancer URL.
main.tf
: Contains the main Terraform configuration defining the infrastructure components.variables.tf
: Defines input variables used in the Terraform configurations.terraform.tfvars
: Contains variable values for configuring the deployment.outputs.tf
: Defines output values to display after the Terraform deployment.assets/
: Directory containing additional assets, such as infrastructure diagrams.
Contributions to enhance or improve this repository are welcome. If you encounter any issues or have suggestions for improvements, please open an issue or pull request on GitHub.
This project is licensed under the MIT License. Feel free to modify and distribute the code for your own purposes.