Wednesday, July 30, 2025

Amazon EKS (Elastic Kubernetes Service).

Amazon EKS (Elastic Kubernetes Service)

The concept:  Amazon EKS

Amazon Elastic Kubernetes Service (EKS) is a managed Kubernetes service that makes it easy to deploy, manage, and scale containerized applications using Kubernetes on AWS infrastructure.

Kubernetes is cloud-agnostic... it can be used with services of Multi-Cloud providers  like,  Azure, GCP and many more.

 Key Features

Feature

Description

Fully Managed Control Plane.

AWS manages the Kubernetes control plane (API servers, etcd), including scalability and availability.

Integration with AWS Services.

Native integration with IAM, VPC, CloudWatch, ELB, EBS, and more.

Supports EC2 and Fargate.

twtech can run workloads on either Amazon EC2 or AWS Fargate (serverless).

High Availability.

Control plane is automatically deployed across multiple Availability Zones.

Security.

IAM-based authentication, Kubernetes RBAC, and support for PrivateLink and encryption.

 EKS Architecture Overview

  1. Control Plane (Managed by AWS)
    • Kubernetes API server
    • etcd database
    • Control plane logs available via CloudWatch
  2. Worker Nodes (Managed by twtech)
    • EC2 Instances (self-managed or managed node groups)
    • Fargate (serverless pods)
  3. Networking
    • Integrates with Amazon VPC
    • Uses Amazon VPC CNI plugin for pod networking (pods get VPC IPs)

 How twtect Uses Amazon EKS

  1. Create an EKS Cluster
    • Via Console, CLI, CloudFormation, or Terraform
  2. Provision Worker Nodes
    • EC2 (via node groups) or Fargate profiles
  3. Configure kubectl
    • Connect to the EKS API using kubectl and the AWS CLI
  4. Deploy Applications
    • Use standard Kubernetes manifests (YAML)

 Pricing

  • Control Plane: ~$0.10/hour per cluster
  • Compute: Based on EC2 or Fargate pricing
  • Other Costs: Networking, EBS, and logging (CloudWatch)

 When to Use EKS

  • twtech should already be using Kubernetes and want a managed solution.
  • twtech wants tight integration with AWS services.
  • twtech needs multi-AZ, scalable, secure Kubernetes clusters.
  • twtech wants to avoid managing the Kubernetes control plane, so aws can do the management.

EKS cluster vs ECS cluster vs Self-Managed Kubernetes cluster:

Here's a clear comparison of Amazon EKS, Amazon ECS, and Self-Managed Kubernetes across key dimensions:

 EKS vs ECS vs Self-Managed Kubernetes

Feature / Criteria

Amazon EKS (Elastic Kubernetes Service)

Amazon ECS (Elastic Container Service)

Self-Managed Kubernetes

Control Plane Management.

Fully managed by AWS.

Fully managed by AWS.

twtech manages everything

Orchestration Engine.

Kubernetes.

AWS-native (not Kubernetes)

Kubernetes

Standards & Portability.

Open-source, portable across clouds.

AWS-specific.

Fully portable

Ease of Use.

Moderate (Kubernetes complexity exists).

Easier (simplified abstractions)

Harder (install, upgrade, maintain)

Cost for Control Plane.

~$0.10/hour per cluster.

Free.

Varies (depends on setup)

Compute Options.

EC2, Fargate.

EC2, Fargate.

Any (EC2, on-prem, other cloud)

Networking.

VPC CNI plugin (pods get VPC IPs).

ENIs for tasks.

Depends on configuration

Logging & Monitoring.

CloudWatch, Fluent Bit, Prometheus, etc.

CloudWatch.

twtch configures and manage

Auto Scaling.

K8s HPA, Cluster Autoscaler, Karpenter.

ECS Service Auto Scaling.

Requires manual setup

Deployment Options.

Declarative YAML (kubectl, Helm, etc.)

JSON/YAML or AWS. console/API.

Declarative YAML (kubectl)

CI/CD Integration.

Works well with GitOps (e.g., ArgoCD)

Works well with CodePipeline, CodeDeploy.

Full control, more setup

Security (IAM/RBAC).

IAM + Kubernetes RBAC.

IAM roles/tasks.

Manual RBAC & cert management

Use Case Fit.

Complex microservices, multi-cloud.

Simpler AWS-native workloads.

Custom infra, full control

 When to Use Each

 Amazon EKS Cluster

  • twtech needs Kubernetes, but want AWS to manage the control plane.
  • twtech is already using Kubernetes-native tooling (Helm, ArgoCD, etc.).
  • twtech wants portability or hybrid/multi-cloud.

 Amazon ECS Cluster

  • twtech wants the easiest way to run containers on AWS.
  • twtech doesn’t need Kubernetes complexity.
  • twtech workloads are AWS-centric and can be tightly coupled to AWS services.

 Self-Managed Kubernetes Cluster

  • twtech needs full control over everything (e.g., for compliance).
  • Twtech is running on-prem, multi-cloud, or edge environments.
  • twtech wants to experiment with low-level Kubernetes internals.

No comments:

Post a Comment

Kubernetes Clusters | Upstream Vs Downstream.

  The terms "upstream" and "downstream" in the context of Kubernetes clusters often refer to the direction of code fl...