Step-by-Step Guide to Configuring an Amazon EKS Cluster on AWS

Step-by-Step Guide to Configuring an Amazon EKS Cluster on AWS

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 clusterName, K8s version, Cluster service role, Cluster access, Cluster authentication mode, Secrets encryption
Configure clusterName, K8s version, Cluster service role, Cluster access, Cluster authentication mode, Secrets encryption
NetworkingVPC, Subnets, Security Group, Choose cluster IP address family, Cluster endpoint access
Configure observabilityMetrics, 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.