InfraStack is a comprehensive Infrastructure as Code (IaC) project developed as part of the Mackenzie MBA program. It leverages Ansible and Terraform to automate the provisioning and configuration of cloud infrastructure components, ensuring consistency, scalability, and efficiency.
This project demonstrates the automation of various AWS services using Ansible playbooks and Terraform configurations. It serves as a practical example of implementing IaC principles in real-world scenarios.
- Ansible: Automates configuration management and application deployment.
- Terraform: Manages infrastructure provisioning using declarative configurations.
- AWS: Cloud service provider hosting the infrastructure components.
iac-mack/
├── ansible/
│ ├── playbooks/
│ │ ├── alb.yml
│ │ ├── rds.yml
│ │ ├── route53.yml
│ │ ├── vpc.yml
│ │ ├── subnet.yml
│ │ └── webserver.yml
│ └── inventory/
├── terraform/
│ ├── main.tf
│ ├── variables.tf
│ └── outputs.tf
├── .gitignore
└── README.md- Clone the Repository
git clone https://github.com/giovanni-gava/iac-mack.git
cd iac-mack- Provision Infrastructure with Terraform
cd terraform
terraform init
terraform apply- Configure Services with Ansible
cd ../ansible
ansible-playbook -i inventory playbooks/vpc.yml
ansible-playbook -i inventory playbooks/subnet.yml
ansible-playbook -i inventory playbooks/alb.yml
ansible-playbook -i inventory playbooks/rds.yml
ansible-playbook -i inventory playbooks/route53.yml
ansible-playbook -i inventory playbooks/webserver.ymlThis project is licensed under the MIT License. See the LICENSE file for details.
Feel free to fork, contribute, or adapt this project to fit your learning goals or production use cases!
