Amazon EKS (Amazon elastic kubernets service)

priyanka kumari
4 min readApr 2, 2024

--

What is Amazon EKS

Amazon Elastic Kubernetes Service (Amazon EKS) is a managed Kubernetes service offered by Amazon Web Services (AWS). Kubernetes is an open-source container orchestration platform that automates the deployment, scaling, and management of containerized applications.

Amazon EKS simplifies the process of running Kubernetes clusters in the AWS cloud. It takes care of the underlying infrastructure, such as provisioning and scaling the Kubernetes control plane, and provides integration with other AWS services for networking, storage, monitoring, and logging.

Key features and benifit of Amazon EKS include:-

Managed Control Plane: Amazon EKS takes care of managing the Kubernetes control plane, which includes components like the API server, scheduler, and controller manager. This frees you from the operational overhead of managing these components yourself.

High Availability: EKS ensures high availability of your Kubernetes control plane by running it across multiple AWS Availability Zones (AZs). This architecture improves fault tolerance and ensures that your cluster remains available even if one AZ experiences issues.

Scalability: With Amazon EKS, you can easily scale your Kubernetes clusters to accommodate changes in workload demand. This scalability is particularly important for applications with varying resource requirements.

Integration with AWS Services: EKS seamlessly integrates with various AWS services, such as Amazon EC2 for compute resources, Amazon EBS for persistent storage, Amazon VPC for networking, and AWS IAM for access management. This integration allows you to leverage the full capabilities of AWS while using Kubernetes.

Security: Amazon EKS follows AWS’s best practices for security. It provides features such as VPC isolation, network policies, encryption at rest and in transit, and integration with AWS Identity and Access Management (IAM) for fine-grained access control.

Monitoring and Logging: EKS integrates with AWS CloudWatch for monitoring cluster performance, collecting logs, and setting up alarms. This visibility into your cluster’s health and performance helps you troubleshoot issues and optimize resource utilization.

Cost-Effective: Amazon EKS offers a pay-as-you-go pricing model, where you only pay for the resources you use. This cost-effective approach allows you to scale your infrastructure based on actual demand and avoid overproves ioning.

The main components of Amazon EKS:

Control Plane:

API Server: The API server is the central management component of the Kubernetes control plane. It exposes the Kubernetes API, which clients (such as kubectl or the AWS Management Console) use to interact with the cluster.

Scheduler: The scheduler is responsible for placing pods (groups of containers) onto available worker nodes based on resource requirements, affinity/anti-affinity rules, and other constraints.

Controller Manager: The controller manager includes several controllers that manage cluster-level functions such as node management, endpoint routing, service discovery, and volume management.

etcd: etcd is a distributed key-value store that stores cluster state, configuration data, and metadata. It is used by Kubernetes components to maintain consistency and coordination across the cluster.

Worker Nodes:

EC2 Instances: Amazon EKS runs Kubernetes worker nodes as Amazon EC2 instances. These instances host pods and containers, running the actual workloads of your applications.

Kubelet: The kubelet is an agent running on each worker node that communicates with the Kubernetes control plane (API server) and manages the pods running on that node.

kube-proxy: kube-proxy is a network proxy that maintains network rules and load balances traffic between pods on the same node or across different nodes in the cluster.

Networking:

Amazon VPC: Amazon Virtual Private Cloud (VPC) is used to provide networking isolation for your EKS cluster. Each EKS cluster is deployed into a VPC, and pods get IP addresses from the VPC’s CIDR block.

VPC CNI Plugin: The VPC CNI (Container Network Interface) plugin is responsible for networking in EKS clusters. It assigns IP addresses to pods, configures networking rules, and handles communication between pods and external resources.

AWS IAM Integration:

IAM Roles: Amazon EKS integrates with AWS Identity and Access Management (IAM) to manage permissions and access control for cluster resources. IAM roles are used to grant permissions to users, applications, and services interacting with the EKS cluster.

Logging and Monitoring:

CloudWatch: Amazon EKS integrates with AWS CloudWatch for monitoring cluster metrics, logging containerized application logs, and setting up alarms and notifications based on predefined thresholds.

Kubernetes Dashboard: EKS provides access to the Kubernetes Dashboard, a web-based user interface for viewing and managing cluster resources, nodes, pods, services, and deployments.

Storage:

Amazon EBS and Amazon EFS: EKS supports various storage options, including Amazon Elastic Block Store (EBS) for persistent block storage and Amazon Elastic File System (EFS) for scalable file storage. Storage volumes can be dynamically provisioned and attached to pods as needed.

Auto Scaling:

Cluster Auto Scaling: Amazon EKS supports cluster auto-scaling, which automatically adjusts the number of worker nodes in the cluster based on resource utilization metrics such as CPU and memory usage.

Horizontal Pod Autoscaler (HPA): EKS enables horizontal scaling of pods based on metrics such as CPU utilization or custom metrics, allowing applications to dynamically scale based on demand.

Thanks for reading

I hope found this useful?

If you found this guide is useful and helpful then please do click on the button and also feel free to drop a comment

✅Reshare this with others so that it helps more people

✅Tag your colleagues and friends who you think will need this

--

--

priyanka kumari
priyanka kumari

Written by priyanka kumari

Cloud || Devops enthusiast|| Learning & helping

No responses yet