This project provides scripts to install Kubernetes on AWS using Terraform, Ansible and Jenkins.
This project has:
- One Terraform script
jenkins-slavewhich creates an EC2 VM in default VPC - Another Terraform script
k8s-infrawhich creates all resources and networking components for Kubernetes cluster - Ansible script
playbookswhich installs Kubernetes cluster. - A Jenkins pipeline script
Jenkinsfilewhich automates creation of infrastructure using Terraform and installation of kubernetes cluster using Ansible.
This project will create:
- An EC2 VM in default VPC which acts as a Jenkins slave
- VPC with public and private subnets
- Bastion hosts and NAT Gateways in public subnets
- Kubernetes master and worker nodes in private subnets
- A load balancer for kubernetes API
- Create one Jenkins slave by following the steps here
- Create one pipeline project in Jenkins and trigger the pipeline by supplying AWS credentials
- Provide approvals when needed in pipeline and your Kubernetes cluster will be ready in 7-8 minutes
