Web Application Deployment on Amazon EKS

Sri Sravya
4 min readJul 12, 2020

Elastic Kubernetes Service

EKS is an Amazon offering that helps in running the Kubernetes on AWS without requiring the user to maintain their own Kubernetes control plane. It is a fully managed service by Amazon.

Customers such as Intel, Snap, Intuit, GoDaddy, and Autodesk trust EKS to run their most sensitive and mission critical applications because of its security, reliability, and scalability.

EKS runs upstream Kubernetes and is certified Kubernetes conformant so you can leverage all benefits of open source tooling from the community. You can also easily migrate any standard Kubernetes application to EKS without needing to refactor your code.

You can lauch entire setup of master and slave nodes setup which is manually done on k8s now with fully secured EKS. It will save lots and lots of time.

Use Cases of Eks( K8s managed Services):

  1. Hybrid Deployment
  2. Batch Processing
  3. Web Applications
  4. Machine Learning

Companies adopting Amazon EKS:

and many more….

How it works:

Benefits:

  1. High Availability
  2. Serverless Option

3.Secure

To be performed:

Lauching/deploying web applications like Wordpress with mysql or jumla and many other services.

Pre-requisites before starting the setup:

  • AWS Account
  • AWS CLI Configured
  • EKSCTL
  • Kubectl

All of these have to be downloaded and path should be set.

AWS services used for this task:

Ec2,ELB,EKS,EFS,Fargate and etc..

Step-1: Configure aws account with IAM user which has admin powers.

IAM user
AWS configure

Step-2: Create a script file in (yaml format) with all details included.

cluster creation code
cluster creation in process

It will take some time approx~15–20 mins for cluster creation and then you will find this next:

cloud formation stack
cluster created
instances launced

Step-3:Configure your kubectl,cluster list,nodes list ,update kube config file

kubectl config
list cluster
  • kubectl cluster-info
update,get clusters

Step-4: Create namespace and list them

create and get namespace
configured ns with cluster

Step-5:Create Storage class and Persistent Volume.

pvc created

Step-6: Create Deployment and mount it with pvc created

Step-7:Expose Deployment With ELB and see services list

Step-8:GO into pods and you can check or create webpages.

In the image i used there is already a sample webpage in it or can create simple page like:

Step-9: Now delete your pods and check if data is persistent on client-side or not.

Yes!it is….!!!!

Step-10: Delete your cluster.

entire cluster will be deleted.

Tip: Keep an eye your Billing Dashboard!

Github :

This is performed as a part of Amazon EKS Program under Mr.Vimal Daga Sir,Linux World,Jaipur.

Happy Learning !

Feel Free to Suggest anything!

Can Connect with me on LinkedIn:

--

--