The aim of this repository is to empower individuals in honing their DevOps skills by deploying an AWS EKS Anywhere cluster either locally or on a virtual machine. This setup enables connectivity to the AWS EKS console via the AWS EKS Connector.
EKS Anywhere simplifies the deployment of a custom Kubernetes distribution known as EKS Distro.
It can be deployed on:
- vSphere
- Bare Metal
- Snow
- CloudStack
- Nutanix
- Docker at any type virtual machine (dev only) - provided within this repository
- AWS EKS Anywhere
- Kind
- Helm
- aws cli installed and configured
- scp and ssh cli
- environment to create and virtual machine i.e. Vagrant, Virtual Box, VMWare, GCP or Azure Cloud
- 2 vCPU
- 4 GB RAM
- 30 GB HDD to main system
- OS Ubuntu 22.04 LTS
Please follow AWS Configuration
Copy from this repository into EKS-A machine via scp command following files:
Please ssh into VM and execute EKS-a bootstrap script script.
bash bootstrap-eks-a-cluster.sh
At the first time please consider copy and past part of the script to see potential problems and fix it.
Still at the same session at the virtual machine run:
kubectl get all
Expected output should looks similar
NAME READY STATUS RESTARTS AGE
pod/hello-eks-a-686848645b-hsvvj 1/1 Running 0 8s
NAME TYPE CLUSTER-IP EXTERNAL-IP PORT(S) AGE
service/hello-eks-a NodePort 10.104.194.237 <none> 80:30721/TCP 8s
service/kubernetes ClusterIP 10.96.0.1 <none> 443/TCP 46m
NAME READY UP-TO-DATE AVAILABLE AGE
deployment.apps/hello-eks-a 1/1 1 1 9s
NAME DESIRED CURRENT READY AGE
replicaset.apps/hello-eks-a-686848645b 1 1 1 8s
EKS Connector is a solution to provide cluster visibility in the AWS EKS Console.
Please follow EKS Connector installation guide.
Just delete virtual machine where EKS-A is installed.