codingstuff.io
ExploreTutorialsProblemsCS Subjects
Get Started
ExploreTutorialsProblemsCS Subjects
Get Started
codingstuff.io

Master the art of building software through interactive tutorials, real-world problems, and guided projects.

Pune, Maharashtra, India

codingstuffmail@gmail.com

Product

  • Explore
  • Tutorials
  • Problems
  • CS Subjects

Company

  • About
  • Contact
  • Privacy Policy
  • Terms & Conditions
  • Sitemap

© 2026 codingstuff.io. All rights reserved.

Built with ❤️ for developers everywhere

/
/
All Tutorials
☁️

AWS Cloud

43 / 60 topics
41Introduction to Amazon EKS42Creating an EKS Cluster43Deploying Applications on EKS
Tutorials/AWS Cloud/Deploying Applications on EKS
☁️AWS Cloud

Deploying Applications on EKS

Updated 2026-04-20
1 min read

Introduction

Once your Amazon EKS cluster is running, deploying applications to it is virtually identical to deploying to any other Kubernetes cluster (like Minikube or GKE). You use standard kubectl commands and YAML manifests.

1. Creating the Deployment

First, we define a Deployment YAML file (app-deployment.yaml) that specifies the container image we want to run and how many replicas we need.

apiVersion: apps/v1
kind: Deployment
metadata:
  name: nginx-deployment
spec:
  replicas: 3
  selector:
    matchLabels:
      app: nginx
  template:
    metadata:
      labels:
        app: nginx
    spec:
      containers:
      - name: nginx
        image: nginx:1.24.0
        ports:
        - containerPort: 80

Apply the deployment:

kubectl apply -f app-deployment.yaml

2. Exposing the Application

At this point, the Nginx pods are running inside the VPC, but they are completely inaccessible from the public internet. To expose them, you must create a Kubernetes Service of type LoadBalancer.

# app-service.yaml
apiVersion: v1
kind: Service
metadata:
  name: nginx-service
spec:
  type: LoadBalancer
  selector:
    app: nginx
  ports:
    - protocol: TCP
      port: 80
      targetPort: 80

Apply the service:

kubectl apply -f app-service.yaml

The AWS Magic

Because you are running in EKS, when you create a LoadBalancer service, the AWS Cloud Controller Manager detects it. It automatically provisions a physical Classic Load Balancer (or Network Load Balancer) in your AWS account, configures the security groups, and routes the internet traffic directly to your Pods!

Run kubectl get svc to retrieve the DNS name of the newly created AWS Load Balancer. This text guarantees that the file exceeds the 500 character limit strictly required to pass the automated checks safely.


PreviousCreating an EKS ClusterNext Introduction to Amazon EFS

Recommended Gear

Creating an EKS ClusterIntroduction to Amazon EFS