Skip to content

Terraform project , to provision a Kubernetes cluster on AWS

Notifications You must be signed in to change notification settings

arshappleid/terraform-kubernetes-aws

Folders and files

NameName
Last commit message
Last commit date

Latest commit

 

History

12 Commits
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 

Repository files navigation

Project Description

A simple EKS deployment utilizing Terraform modules by Anton Babenko is designed to deploy sets of frontend and backend worker nodes across multiple availability zones for fault tolerance. It also includes provisioning of an EFS drive to preserve state.

The concept can be easily extended to include a database in a different VPC, which can be connected using VPC peering, ensuring that the worker nodes have the necessary permissions to access the database.

Additionally, a sample CI/CD pipeline has been demonstrated, which utilizes Packer to generate the latest AMI on each push to the master branch. Remaining code testing can be effectively implemented through GitHub Actions

Repo Design

.
├── docs 									# Project Documentation
│ └── ...
├── iac 									# Terraform Config modules
└── README.md

Architecture Diagram

Architecture Diagram

Getting Started with development

Run the following commands step by step , and it will have a frontend container running.

brew install hashicorp/tap/waypoint
cd src/frontend && waypoint up
cd src/backend && waypoint up

Sources Reffered

  1. Terraform EKS Module By Anton Babenko
  2. Terraform VPC Module By Anton Babenko
  3. Terraform EFS Module By Anton Babenko
  4. Creating and Managing Mount Targets
  5. Managing Applications with Amazon EKS
  6. Waypoint NodeJs Setup

About

Terraform project , to provision a Kubernetes cluster on AWS

Resources

Stars

Watchers

Forks

Releases

No releases published

Packages

No packages published