Download as pdf or txt
Download as pdf or txt
You are on page 1of 24

Kubernetes on AWS (using Amazon EKS)

AKASH AGRAWAL | JULY’27 2019


Agenda
● Containers & Kubernetes - Overview

● Running Containerized Applications on AWS Cloud


● EKS Overview / Architecture / Benefits

● EKS - Day-1 Job


● EKS - Day-2 Job
About Me
● having 11+ years of experience in IT Industry

● I worked for various clients like Sabre Travel Technologies / Citi Bank /
Goldman Sachs / L&T InfoTech etc.

● From last couple of years, I work as Independent Consultant:


○ I work with different Startups, helping them to design/improve
solutions around Cloud & Kubernetes EcoSystem (as Technical
Adviser)
○ Trainer around Cloud & Kubernetes EcoSystem
Containers & Kubernetes -
Overview
Containers
● Package your Application & it’s Dependencies
● Container Runtimes: Docker / Rkt etc.
● Focused around Build / Ship / Run
○ Build: build container images (snapshots) on your local laptop
manually or automate it through CI/CD pipeline
○ Ship: ship it through the container registry (ECR/DockerHub etc.)
○ Run: run it anywhere cloud/on-prem etc.
Kubernetes
● Kubernetes is an Open Source system for Container Orchestration
(Deployment / Management / Scaling)
● Focused Around:
○ Scheduling
○ Scaling (Manual / Auto)
○ Self Healing / Auto Repairing
○ ...
● Components:
○ Control Plane Components
○ Data Plane Components
Source: https://software.danielwatrous.com/wp-content/uploads/2017/02/kubernetes-overview.png
Source: https://carltsuis-blog.readthedocs.io/en/latest/kubernetes/components-of-k8s.png
Running Containerized
Applications on AWS
● ECS
● Kubernetes
○ Kubernetes - Hard Way Approach
○ Kops
○ EKS
EKS Overview / Architecture /
Benefits
● EKS (Elastic Kubernetes Service)
● Managed Kubernetes Service on AWS Cloud
● EKS Benefits:
○ No Control Plane to manage (AWS will take care of that):
■ Control Plane HA (in multiple AZs)
■ Auto Repairing / Patching of Control Plane Nodes
○ ...
Source: https://bekitzur.com/wp-content/uploads/2018/06/wsi-imageoptim-amazon-eks-2.png
Source: https://aws.amazon.com/getting-started/projects/deploy-kubernetes-app-amazon-eks/
● EKS Benefits:
○ ...
○ Certified Kubernetes Conformant
○ EKS optimized AMIs (also with GPU support)
○ Spot Instances support available
○ Integration:
■ Amazon ECR (for Container Registry)
■ Load Balancing Support (for CLB, NLB, ALB)
■ Authentication & Authorization (through AWS IAM, Kubernetes RBAC)
■ Clean Network Isolation (through VPC/Subnets etc.)
■ Others: Logging/Monitoring (AWS Cloud Watch/Trail), Service Mesh
(AWS App Mesh) etc.
EKS - Day 1 Job
Source: https://aws.amazon.com/eks/
● Using CLI (on client/laptop)
○ Install AWS CLI (on client/laptop)
○ Connect it using AWS Access Key ID / Secret Access Key (on client/laptop)
○ Install eksctl
○ Install kubectl
○ follow the steps:
■ https://eksctl.io/usage/creating-and-managing-clusters/
OR
■ https://docs.aws.amazon.com/eks/latest/userguide/getting-started-eksctl
.html
● eksctl command will something look like:
eksctl create cluster \
--name prod \
--version 1.13 \
--nodegroup-name standard-workers \
--node-type t3.medium \
--nodes 3 \
--nodes-min 1 \
--nodes-max 4 \
--node-ami auto
● play around different eksctl capabilities:
○ https://eksctl.io/

● try the same through AWS console:


○ https://docs.aws.amazon.com/eks/latest/userguide/getting-started-console.ht
ml
EKS - Day-2 Job
● Go to eksworkshop & look for your use case:
○ https://eksworkshop.com/

● Explore different Integrations e.g.:


○ MicroService Architecture
○ Service Mesh setup : with Istio/AWS App Mesh
○ DevOps:
■ IAC : CloudFormation / Terraform
■ CM : Ansible
■ CI/CD Pipeline : AWS Code Pipeline etc.
● Explore EKS SLA
○ https://aws.amazon.com/eks/sla/

● Explore EKS in scope by Compliance Program


○ https://aws.amazon.com/compliance/services-in-scope/
Thanks
Akash Agrawal
LinkedIn: https://www.linkedin.com/in/akash-agrawal-58a97813/
Twitter: @akkiagrawal29

You might also like