Kubernetes Mastery on AWS
4.1 (251 ratings)
Course Ratings are calculated from individual students’ ratings and a variety of other signals, like age of rating and reliability, to ensure that they reflect course quality fairly and accurately.
1,770 students enrolled

Kubernetes Mastery on AWS

Deploy a Kubernetes cluster on AWS and reliably rollout, rollback, scale, secure, expose & autoscale dockerized apps
4.1 (251 ratings)
Course Ratings are calculated from individual students’ ratings and a variety of other signals, like age of rating and reliability, to ensure that they reflect course quality fairly and accurately.
1,770 students enrolled
Created by Naveen Joy
Last updated 4/2020
English
English [Auto]
Current price: $139.99 Original price: $199.99 Discount: 30% off
5 hours left at this price!
30-Day Money-Back Guarantee
This course includes
  • 11 hours on-demand video
  • Full lifetime access
  • Access on mobile and TV
  • Certificate of Completion
Training 5 or more people?

Get your team access to 4,000+ top Udemy courses anytime, anywhere.

Try Udemy for Business
What you'll learn
  • Deploy, Scale and Tear Down a Kubernetes Cluster on AWS
  • Master working with Pods, Volumes, AWS Dynamic EBS Volumes, QoS, Probes, Labels, Secrets, ConfigMaps, Services, Ingress, Publishing Services, AWS ELB & SSL Termination on the ELB
  • Deploy, Rollout, Rollback, Scale, Autoscale & Load Balance apps on the AWS Kubernetes cluster
Requirements
  • Basic knowledge of cloud computing and TCP/IP.
  • A Mac or Windows PC with Internet connectivity to do the labs.
  • Some IT experience working with systems and networks will be helpful.
  • A valid credit card to open an AWS account.
Description

Here are some student testimonials.

** Really the course is so helpful because explanation is so good and explains every lesson in simple language, which means anybody can understand**

** Clear information and right to the point **

** Among the best kbs tuts I've had **

I welcome you to join my course to learn about the wonderful and exciting world of Kubernetes!!

This course is designed for those who are beginners in Kubernetes, but wanting to attain its mastery.

You'll learn Kubernetes in a step-by-step manner with increasing sophistication.

You will be deploying Kubernetes on AWS and doing a number of labs.

No prior knowledge of Kubernetes, Docker or YAML is assumed.

This course will help you absorb the material faster and retain it much longer.

After completing this course, you'll:

1) Learn the basics of Kubernetes, its architecture and how to deploy applications on it.

2) Practice hands-on by deploying, scaling, rolling back and autoscaling applications on your cluster.

3) Do a number of labs with increasing sophistication, starting from the very basics of a Pod.

4) Learn the declarative approach of working with the Kubernetes system.

5) Learn the microservices style of architecting applications.

6) Learn how to spin-up a Kubernetes cluster on AWS, scaling the cluster and tearing it down.

7) Learn how to work with Kubernetes using the kubectl command line client and dashboard.

8) Learn to monitor a Kubernetes cluster's performance on AWS.

9) Learn to provision an AWS ELB, SSL Termination on the ELB.

10) Learn to deploy Services, expose services securely to the Internet and deploy Ingress.

Who this course is for:
  • Beginner cloud computing professionals interested in learning Kubernetes.
  • Anyone with some basic IT knowledge curious about learning Kubernetes.
  • Anyone who wants to deploy a Kubernetes cluster on AWS and learn how to run their applications on it.
Course content
Expand all 96 lectures 11:12:55
+ Introduction to Kubernetes
9 lectures 47:19

Get an overview of the Kubernetes platform.

Preview 04:46

Learn about declarative configuration and how to work with Kubernetes using this method.

Preview 08:15

Learn the advantages of using the declarative form of management as opposed to using the imperative style of management.

Preview 04:36

Take a brief look at the evolution and history of Kubernetes.

History of Kubernetes
03:37

Learn the benefits that Kubernetes brings to modern IT/DevOps environments.

What are the benefits of Kubernetes?
08:06

Learn about the microservices architectural style using an example. You'll appreciate how it differs from a monolithic application. 

What are Microservices?
07:17

Learn the differences between the mutable and immutable ways of managing your software.

Mutable vs Immutable Infrastructure
03:06

Kubernetes uses YAML to represent its API objects. In this lesson, you'll will refresh key YAML topics.

YAML Refresher
02:38

Learn how Kubernetes interacts with Docker to run the applications.

How does Kubernetes work with Docker?
04:58
+ Deploy and Explore a Kubernetes Cluster on AWS
24 lectures 03:02:32

Understand the objectives of this section

Objectives
01:45

You'll learn about the lab topology and prepare to get started with the labs by installing the required software on your PC.

Lab Topology & Requirements
09:04

You'll learn about the architecture of Kubernetes and the various software components in a Kubernetes cluster.

Kubernetes Architecture
10:59

Setup a Virtual Machine on your computer to talk to the AWS cloud. This VM will be used to manage your Kubernetes cluster on AWS.

LAB: Setup the K8s cluster manager VM
08:18
LAB: Setup AWS Credentials
06:03
LAB: Create AWS VPC & Subnets
09:34
LAB: Setup VPC Subnet Attributes
03:00

This is where the rubber meets the road. You'll deploy a Kubernetes cluster on AWS!

LAB: Deploy a Kubernetes cluster on AWS
13:35

Learn about the AWS IAM and how it works with the Kubernetes cluster deployed on AWS.

Demo: Explore the AWS IAM for Kubernetes
07:07

Use the Kubernetes command line client named kubectl to interact with the cluster you deployed on AWS.

LAB: Explore the K8s Cluster using kubectl
12:02

Learn about namespaces in Kubernetes and work with them hands-on using kubectl.

LAB: Working with Namespaces
09:20

Learn the basics of authentication and access control in K8s. 

Kubernetes Authentication Basics
09:54

Explore service accounts, secrets and tokens in the AWS Kubernetes cluster.

Demo: Explore Kubernetes Service Accounts
05:24

Learn about the various authentication methods used in a Kubernetes system.

Kubernetes Authentication Methods
06:01

Explore the authentication methods configured in the Kubernetes cluster on AWS.

Demo: Explore Kubernetes Authentication Methods
05:24

Learn the basics of how to secure your Kubernetes cluster.

Securing Kubernetes
04:52

Learn about RBAC and its concepts in the context of Kubernetes.

Role Based Access Control (RBAC)
05:53
Demo: Explore Role Based Access Control (RBAC)
06:48

Learn how the access control process flows through the various software modules within the Kubernetes API server.

Access Control Flow in Kubernetes
04:59

Explore the Kubernetes dashboard and learn about its capabilities.

Demo: Explore the Kubernetes Dashboard
14:54

Learn the monitoring architecture in Kubernetes and how it collects and stores cluster-wide metrics data.

Kubernetes Monitoring Architecture
09:49

Let's explore the Grafana Monitoring UI of our Kubernetes cluster.

Demo: Monitoring Kubernetes: Grafana UI
05:48

Learn how to expand and contract the number of worker nodes in your Kubernetes cluster.

LAB: Scaling the AWS Kubernetes Cluster
08:10

Learn how to destroy the Kubernetes cluster on AWS.

LAB: Tearing down the AWS Kubernetes Cluster
03:49
+ Pods, Labels, Dynamic EBS Volumes, Secrets, ConfigMaps, QoS, Probes
32 lectures 03:39:15

Learn the objectives for this section.

Objectives
03:28

From my git repo, clone all the YAML files required to do the labs into your VM.

LAB: Get YAML files using Git
02:54

Learn some commonly used terms in K8s.

Kubernetes Term Definitions
02:58

Learn the various ways of managing Kubernetes objects using kubectl.

Managing Kubernetes Objects using kubectl
15:56

Learn about "Pods" in Kubernetes.

What's a Pod?
06:21

Learn about a multi-container Pod and when to create them.

A Multi-Container Pod
05:28
Shared Resources in a Pod
03:51

Learn how pods are managed in production deployments.

How are Pods Managed in Kubernetes?
03:56

Learn about a pod manifest.

What's a Pod Manifest?
03:44

Create, view and describe your first nginx pod.

Preview 14:59

Learn how to access the pod from your management VM.

LAB: Port Forward to the Nginx Pod
03:43

Learn to run commands inside a pod's containers.

LAB: Run a command inside the Nginx Container
05:33

Learn to copy files between the VM and the pod's container.

LAB: Copy files from and to the Nginx Container
06:14

Learn about labels and label selectors.

Labels and Selectors
07:40

Work hands-on with labels and selectors.

Preview 10:40

Learn to update the container image in the Pod.

LAB: Update the Nginx image in the Pod
02:45

Learn to get logs from a pod's container and also about the concept of cluster-level-logging.

LAB: Get logs from the Nginx Container
04:52

Learn about and work with annotations.

LAB: Annotate the Nginx Pod
06:31

Learn to delete a pod and group of pods.

LAB: Delete the Nginx Pod
05:01

Learn about QoS in K8s.

Quality of Service (QoS) in a Pod
06:51

Learn to setup resource requests and limits for a Pod.

LAB: Setup Quality of Service (QoS) for the Nginx Pod
05:05

Learn about the two different types of probes in Kubernetes.

Liveness and Readiness Probes
05:29

Learn to setup a liveness health-check probe for your container.

LAB: Setup a Liveness Health Check for the Nginx Pod
05:03

Why do you need to setup a volume?

You'll learn to answer this question after attending this lesson.

Kubernetes Volumes
01:42

Add a volume to the nginx pod.

LAB: Add an emptyDir Volume to the Nginx Pod
13:04

Learn about the Kubernetes volume of type hostPath; then do a lab to set it up in a Pod.

Preview 08:45

Learn about the StorageClass, PVC and how to provision dynamic persistent EBS volumes in AWS.

AWS Dynamic Persistent EBS Volume
09:33

You'll dynamically provision an AWS EBS Volume and mount it into your nginx pod.

LAB: Add an AWS Dynamic Persistent EBS Volume to the Nginx Pod
07:27

Create a pod with two containers (nginx + git sync) co-ordinating and sharing data via a shared volume.

LAB: Create a Multi-Container Pod - (Nginx+GitSync) sharing data using a Volume
06:07

Learn about secrets in Kubernetes; how to create and consume them inside your containers.

Kubernetes Secrets
08:39

Learn about ConfigMaps in Kubernetes; how to create and consume them inside your containers.

Kubernetes ConfigMaps
04:33

Setup an Nginx pod to serve HTTPS connections using secrets and configmaps.

LAB: Setup Nginx to Serve HTTPS Connections using a Secret and ConfigMap
20:23
+ ReplicaSets, Scaling and AutoScaling
7 lectures 59:45

Learn about the objectives of this section.

Objectives
01:39

In this lesson you’ll learn about ReplicaSets.

You'll learn,

1) The benefits of a ReplicaSet,

2) How to control App scaling (both up and down) using a ReplicaSet,

3) How a ReplicaSet discovers the pods it manages,

4) The characteristics of applications that use a ReplicaSet.

ReplicaSets
11:06

In this lesson, you’ll learn how to define a ReplicaSet YAML file.

You'll learn how the ReplicaSet YAML file differs from the pod’s YAML file.

A ReplicaSet Spec for the Nginx Pod
07:17

In this lesson, we’ll do a lab to create and inspect an Nginx RS.

LAB: Create and Inspect an Nginx ReplicaSet
09:51

Learn to scale the Nginx ReplicaSet both imperatively and declaratively.

Preview 08:23

Learn about the Horizontal Pod Autoscaler and how it works.

Autoscaling a ReplicaSet using the Horizontal Pod Autoscaler (HPA)
08:19

Do a lab to watch the HPA in action as it autoscales our Nginx ReplicaSet.

LAB: Autoscaling the Nginx ReplicaSet using the HPA
13:10
+ Deployments, RollingUpdate, Scaling & Autoscaling
9 lectures 01:05:23

Learn the purpose of a deployment object in Kubernetes.

Deployments
03:48

Learn about the software deployment strategies in Kubernetes.

Deployment Strategies
05:39

Learn how the RollingUpdate strategy deploys software in the wonderful world of Kubernetes.

RollingUpdate
07:20

You’ll learn about the deployment spec we’ll be using for doing the labs in this section.

You’ll also learn about the key differences between this spec and the RS spec.

Deployment Spec
05:04

Learn to create your first Nginx deployment.

LAB: Create the Nginx Deployment
05:39

Learn to update an existing deployment.

Preview 08:22

Learn how to rollback a deployment to the previous stable revision.

LAB: Rollback a Deployment
11:31

Learn to scale up, scale down and clean up a deployment.

LAB: Scaling and Cleaning up the Nginx Deployment
05:07

Learn to autoscale a deployment in Kubernetes using the HPA.

LAB: Autoscaling the Nginx Deployment
12:53
+ Services, Service Discovery and Publishing Services
10 lectures 01:03:53

Get introduced to a service in K8s.

What's a Service?
02:56

Learn about a ClusterIP.

What's a ClusterIP?
03:17

Learn to define a service in YAML.

Define a Service
06:11

Do a lab in which you'll create your first Nginx service.

LAB: Create a Nginx Service
10:04

Learn how to discover services in k8s.

Service Discovery
05:23

Do a lab and learn how service discovery works using the DNS service.

LAB: Service Discovery
10:58

Learn the details behind how a service is implemented.

Service Networking
04:08

Learn the different ways of publishing a service in K8s.

Preview 05:45

In this lab, you'll publish a service using the service type NodePort.

LAB: Publish service using NodePort
04:11

Learn to securely (i.e. with TLS)  publish a service using the AWS ELB.

LAB: Securely publish service using the AWS ELB
11:00
+ Ingress
5 lectures 34:48

Learn what's an Ingress resource in K8s.

What's an Ingress?
04:19

Learn how an ingress controller works.

What's an Ingress Controller?
04:59

In this lab, you'll deploy a nginx ingress controller.

Preview 07:05

Learn to setup name-based virtual hosting using the ingress resource.

LAB: Name-based virtual hosting using an Ingress
11:35

Learn to setup path based routing using ingress.

LAB: Path-based routing using an Ingress
06:50