Explore the process of setting up an Amazon EKS (Elastic Kubernetes Service) cluster on AWS step-by-step. Learn it to configure options, Manually provision cluster, Automate with Cloudformation, IAM roles, and node groups, Ingress Controller with AWS ACM, and deploy applications using Kubernetes.
Discover best practices for managed monitoring, access control, and how to update your EKS cluster to the latest version including the worker node.
This is Part 1 where we will see its configurations option and we will create the cluster manually. By the end of this series, you'll be equipped to leverage Kubernetes for scalable and efficient containerized application deployments on AWS infrastructure.
What is an EKS
EKS abstracts away the complexities of managing Kubernetes control plane components, allowing you to focus on deploying and scaling applications seamlessly.
EKS Cluster configuration
when creating the EKS Cluster Control Plane we have the following configuration
Configure cluster | Name, K8s version, Cluster service role, Cluster access, Cluster authentication mode, Secrets encryption |
Configure cluster | Name, K8s version, Cluster service role, Cluster access, Cluster authentication mode, Secrets encryption |
Networking | VPC, Subnets, Security Group, Choose cluster IP address family, Cluster endpoint access |
Configure observability | Metrics, Prometheus Control plane logging, |
Amazon EKS add-ons version |
Prerequisite
Before creating EKS we need to create a Cluster service role , and attach this policy AmazonEKSClusterPolicy
Create an EKS Cluster
Go to console.aws.amazon.com/eks/home and click on create cluster
Press Next in the Configure observability section we will discuss this in upcoming parts.
IN the Review and create page
wait for some time Cluster creation will take some times. after cluster is created you can connect with your cluster.
Connect to EKS
when we were creating the EKS cluster we chose cluster access to "disallow Iam user"
here we need to manually update the access entry from the access tab.
Note: Previously authorization to the EKS cluster was managed with config map , but recently aws EKS API to manage IAM User to the EKS cluster.
Update access Entry
Before connecting we must install the following tools to connect to EKS from your PC.
Kubectl https://kubernetes.io/docs/tasks/tools/
AWS CLI https://docs.aws.amazon.com/cli/latest/userguide/getting-started-install.html
Note : Make sure you create an Access key and secret key for that user and configure it to use in the aws cli
Configure the credentils in CLI
aws configure
Update Kubeconfig Context
Replace with your region and clustername
aws eks update-kubeconfig --name my-first-eks
In Part 2 we will see How to configure Worker Node and Fargate in the Cluster to actually Deploy our Application.