0% found this document useful (0 votes)
11 views18 pages

CH 01

EKS is AWS's managed Kubernetes service. It handles the operations and maintenance of Kubernetes clusters, allowing users to focus on applications. Key points covered include: - EKS manages the Kubernetes control plane and integrates with other AWS services. - The eksctl tool is used to create, delete, and manage EKS clusters. - Kubernetes clusters have a control plane (master node) that manages worker nodes where containers run. - EKS provides high availability, fault tolerance, and scalability for Kubernetes deployments.

Uploaded by

sameo13
Copyright
© © All Rights Reserved
We take content rights seriously. If you suspect this is your content, claim it here.
Available Formats
Download as PDF, TXT or read online on Scribd
0% found this document useful (0 votes)
11 views18 pages

CH 01

EKS is AWS's managed Kubernetes service. It handles the operations and maintenance of Kubernetes clusters, allowing users to focus on applications. Key points covered include: - EKS manages the Kubernetes control plane and integrates with other AWS services. - The eksctl tool is used to create, delete, and manage EKS clusters. - Kubernetes clusters have a control plane (master node) that manages worker nodes where containers run. - EKS provides high availability, fault tolerance, and scalability for Kubernetes deployments.

Uploaded by

sameo13
Copyright
© © All Rights Reserved
We take content rights seriously. If you suspect this is your content, claim it here.
Available Formats
Download as PDF, TXT or read online on Scribd
You are on page 1/ 18

[AWS]

AWS Session
18-3-2023

• Various IT Companies are using EKS- Elastic Kubernetes Service of


AWS. Companies like Goldman Sach, Netflix, Apple, Amazon
Ecommerce website and many more..
• EKS is a managed service of AWS. It is one service of AWS that have a
huge potential to perform managed service of kubernetes. Entire
management of k8s cluster is managed by EKS service of Aws.
• Here k8s cluster includes storage, LB, active directories, RAM/CPU and
lot more..Powerful thing about EKS is that it is tightly integrated with
AWS other services like ec2 etc..
• eksctl Tool- It is a 3rd party tool to manage EKS.
• If we want to setup webapp we need physical Hardware like RAM/CPU,
also we need Operating System and a runtime to run the webserver. So
there are 3 possibilities to setup this-
1. Baremetal- Running directly on the laptop, Here we use OS
2. Virtualization- Launch a virtual machine or in AWS we use
instance and we have to configure the runtime there. Here we use
Virtual machine.
3. Containerization- Launch VM, install, start(boot) and run services
in less then a second. Here we use containers.
So, OS=VM=Container
• Today’s Requirement is we need agility, speed and great performance. In
container world if something fails it launches a new within a second so no
downtime.
• To launch Container we have ECS- Elastic Container service in AWS.
• Launching container is not we want we want when something fails it
launch a new container to make the application run.
• We have Container Engine that helps to run the containers. Some of the
examples are CRI-0, containerd etc..Docker use containerd.
This program is known as Hypervisor.

pg. 1
[AWS]

• Where the container engine runs it is known as host OS or container OS


also called Compute Node/Container Node.
Reason why compute node, because it is the one who gives RAM/CPU
etc.
• EKS uses container engine called containerd.
• Challenge is if we want to launch 1000 containers or nodes then
management of these nodes will be harder. So due to any reason if one
container fails then application will also fail. So, we want a program who
monitors everything, we need automation. Duty of that program is to keep
on monitoring all containers as soon as if one container goes down it will
up the other. This kind of monitoring is called Realtime monitoring. If we
want our program to be fault tolerant then we need this program that
manages container so for that we have container management tool called
Kubernetes. Other examples are docker, swarm etc.
• In Kubernetes main system is called Manager computer or manager
node. Any computer that is running everything of our application we refer
that as the worker node/slave node.
• Container which is available and we have a requirement so the one who
takes decision to launch is the kubescheduler.
• This entire setup is the Container cluster.
• Storing information of cluster also called state information so, to manage
we have etcd(kind of database to store information).
• One of the core facilities EKS gives is Fault Tolerance and Seamless
facility (means as soon as 1 system goes down it automatically connect,
seamlessly to different system, no downtime). Program that gives seamless
facility is called Kubeproxy.
• In master node one more program is running called kubeAPI that is meant
for IT team, it sends request on basis of requirement.

pg. 2
[AWS]

• In k8s container is known as a POD.


So, Pod==container== OS(RAM/CPU/HD)
• Challenge- If we want to launch anything we need physical Hardware-
RAM/CPU/HD so we have to purchase on demand it will cost a huge
amount. So to solve this challenge we have EKS service of AWS. It is a
managed service; everything will be managed by AWS. So EKS is a k8s
service but is managed by AWS.
• Single Point of failure- When master fails entire cluster will fail. So, to
solve single point of failure challenge instead of 1 master we can launch
more master nodes. Master to have multiple copies called high
availability. So, this high availability will also be setup by AWS.
• EKS→ Entire k8s+management/maintenance of k8s
Means setting up with all best practices like security, reliability,
availability etc.

• To use fully managed service, we have EKS fargate which is


serverless(anything which is fully managed).
• Any computer running and controlling multiple computers is called
control plane. It manages entire k8s, have full control on entire master
computer.
• So, Control plane==Master node
Worker node==Slave node
• For master node AWS give the serverless experience. So, it has pricing as
0.10 per hour. We have to pay for control plane.

pg. 3
[AWS]

PRACTICAL - Launch EKS Cluster

• 3 ways by which we can use AWS EKS service


1. WebUI
2. 3rd Party tool→ Terraform
3. 3rd Party tool→ eksctl tool, specifically for EKS service of AWS
This tool was developed by Weaveworks.

Now create user by using IAM.

pg. 4
[AWS]

pg. 5
[AWS]

pg. 6
[AWS]

Access key and secret key will be created. Now use this access key and secret
key to configure AWS.

pg. 7
[AWS]

After configuring AWS, we will install eksctl

Now go to releases→ latest→eksctl_windows_amd64.zip

pg. 8
[AWS]

After downloading create a folder say awsekstools and extract downloaded data
into that folder.

pg. 9
[AWS]

Now extract that into the folder

Now go to environmental variables

pg. 10
[AWS]

After setting environment variable we will create a cluster by using command


eksctl create cluster.

pg. 11
[AWS]

Cluster created successfully.

pg. 12
[AWS]

By default whenever cluster is created EKS gives 2 worker nodes with some
instance type.

pg. 13
[AWS]

• kube config file contains credentials, it contains kubectl command.

pg. 14
[AWS]

Ng here is the node group or group of nodes.

pg. 15
[AWS]

Now delete that cluster.

pg. 16
[AWS]

Launching cluster again by yml file.

pg. 17
[AWS]

Cluster created successfully.


• Whenever we wanted to do something on EKS we use eksctl command
and to do something on cluster we use kubectl.

pg. 18

You might also like