All the steps should be performed on AWS cloud shell
Download EKSCTL utility to build EKS cluster -->
curl --silent --location
"https://github.com/weaveworks/eksctl/releases/latest/download/eksctl_$(uname -
s)_amd64.tar.gz" | tar xz -C /tmp
sudo mv /tmp/eksctl /usr/local/bin
eksctl version
===================================================================================
===================================================================================
==
Create EKS Cluster using eksctl
Step 1 -->
eksctl create cluster --name=eksdemo1 --region=us-east-1 --zones=us-east-1a,us-
east-1b --without-nodegroup
eksctl get clusters
kubectl get nodes --> output will be none
Step 2 -->
eksctl utils associate-iam-oidc-provider \
--region us-east-1 \
--cluster eksdemo1 \
--approve
Step 3 --> Use AWS EC2 console for this step
Create a new EC2 Keypair with name as kube-demo
Step 4 -->
eksctl create nodegroup --cluster=eksdemo1 \
--region=us-east-1 \
--name=eksdemo1-ng-public1 \
--node-type=t3.medium \
--nodes=2 \
--nodes-min=2 \
--nodes-max=4 \
--node-volume-size=20 \
--ssh-access \
--ssh-public-key=kube-demo \
--managed \
--asg-access \
--external-dns-access \
--full-ecr-access \
--appmesh-access \
--alb-ingress-access
kubectl get nodes --> output should be having 2 worker nodes now
eksctl get cluster
eksctl get nodegroup --cluster=eksdemo1
===================================================================================
===================================================================================
==
Cluster is now ready to deploy the Pods, run a pod to test if cluster works -->
kubectl run testpod --image=nginx
kubectl get pod