k8s Cluster with Auto Scaling & Auto Healing for a Apache2 Web App
- Git workflow should be implemented. Since the company follows a monolithic architecture of development, you need to take care of version control.
- CodeBuild should be triggered once the commits are made in the master branch.
- The code should be containerized with the help of the Dockerfile. The Dockerfile should be built every time if there is a push to GitHub. Create a custom Docker image using a Dockerfile.
- As per the requirement in the production server, you need to use the Kubernetes cluster and the containerized code from Docker Hub should be deployed with 2 replicas.
- Create a NodePort service and configure the same for port 30008.
- Create a Jenkins Pipeline script to accomplish the above task.
- For configuration management of the infrastructure, you need to deploy the configuration on the servers to install necessary software and configurations.
- Using Terraform, accomplish the task of infrastructure creation in the AWS Cloud provider
Softwares to be installed on the respective machines using configuration management. Worker1: Jenkins, Java Worker2: Docker, Kubernetes Worker3: Java, Docker, Kubernetes Worker4: Docker, Kubernetes