4.39 out of 5
4.39
7004 reviews on Udemy

Learn DevOps: The Complete Kubernetes Course

Kubernetes will run and manage your containerized applications. Learn how to build, deploy, use, and maintain Kubernetes
Instructor:
Edward Viaene
42,015 students enrolled
English More
Install and configure Kubernetes (on your laptop/desktop or production grade cluster on AWS)
Use Docker Client (with kubernetes), kubeadm, kops, or minikube to setup your cluster
Be able to run stateless and stateful applications on Kubernetes
Use Healthchecks, Secrets, ConfigMaps, placement strategies using Node/Pod affinity / anti-affinity
Use StatefulSets to deploy a Cassandra cluster on Kubernetes
Add users, set quotas/limits, do node maintenance, setup monitoring
Use Volumes to provide persistence to your containers
Be able to scale your apps using metrics
Package applications with Helm and write your own Helm charts for your applications
Automatically build and deploy your own Helm Charts using Jenkins
Install and use kubeless to run functions (Serverless) on Kubernetes
Install and use Istio to deploy a service mesh on Kubernetes

This course will help you to gain understanding how to deploy, use, and maintain your applications on Kubernetes. If you are into DevOps, this is a technology you need to master. Kubernetes has gained a lot of popularity lately and it is a well sought skill by companies.

This course is updated frequently to include the features of latest releases!

When Google started running containers a decade ago, nobody could reach this kind of infrastructure agility and efficiency. Using this knowledge, Google released Kubernetes as an free and open source project. Nowadays Kubernetes is used by small companies and big enterprises who want to gain the efficiency and velocity Google has.

You can containerize applications using Docker. You can then run those containers on your servers, but there’s no way you can manage those efficiently without extra management software. Kubernetes is an orchestrator for your containers that will create, schedule and manage your containers on a cluster of servers. Kubernetes can run on-premise or in the cloud, on a single machine or on thousands of machines.

I will show you how to build apps in containers using docker and how to deploy those on a Kubernetes cluster. I will explain you how to setup your cluster on your desktop, or on the cloud using AWS. I use a real world example app (WordPress with MySQL – blogging software) to show you the real power of Kubernetes: scheduling stateless and stateful applications.

The introduction lectures that show you the Kubernetes desktop installation are free to preview, so you can already have a go at it before buying the course!

This course also has Closed Captions (English subtitles)

1
Course Introduction
2
Support and Course Materials
3
Procedure Document

Introduction to Kubernetes

1
Kubernetes Introduction

What is kubernetes, why would you use it, what benefits does it give you

2
Containers Introduction

On Kubernetes you run containers. In this lecture you'll learn what containers are all about.

3
Kubernetes Setup

Kubernetes can run almost anywhere. You can run it on-premise or in the cloud.

4
Local Setup with minikube

This lectures explains what minikube is, a piece of software that can help you run kubernetes locally.

5
Demo: Minikube

This demo shows you how to run Kubernetes using Minikube.

6
Installing Kubernetes using the Docker Client

As an alternative to Minikube, you can install kubernetes using the official docker client for Mac / Windows

7
Minikube vs Docker Client vs Kops vs Kubeadm

The difference between Minikube vs Docker client vs Kops vs Kubeadm: which one to use when

8
Introduction to Kops

An introduction to Kops - Kubernetes Operations. Software to provision and manage Kubernetes on AWS.

9
Demo: Preparing kops install

Kops only works on Mac / Linux, so you'll need to setup a vagrant box to run kops. If you are running already MacOS or Linux, and you don't want to be working in a VM, you can skip this step.

10
Demo: Preparing AWS for kops install

You first need to open an AWS account, add an IAM user for kops and setup DNS using route53

11
Demo: DNS Troubleshooting (Optional)

The DNS settings need to be correct for your kubernetes cluster to work. Follow this lecture if you have issues with your DNS settings.

12
Demo: Cluster setup on AWS using kops

Once the AWS setup is complete, you can use kops to setup the Kubernetes cluster on AWS

13
Building docker images

Kubernetes only runs containers. In this lecture you learn how to build your application in a container.

14
Demo: Building docker images

In this demo I show you how to build a NodeJS example app in a container.

15
Docker Image Registry

Once you have built a container, you need to put it on a registry, so Kubernetes can download it. You have public and private registries. Putting a container on a public registry is free.

16
Demo: Pushing Docker Image

In this demo I show you how to push the container with our app to Docker Hub

17
Running first app on Kubernetes

THis lecture explains how to run a first application on Kubernetes

18
Demo: Running first app on Kubernetes

Once the first app is available on Docker Hub, I show you how to run this app on our Kubernetes cluster

19
Demo: Useful commands

In this demo I show you some useful commands you can use to manage your containers on Kubernetes

20
Service with LoadBalancer

If you're running your cluster on AWS, you can create a LoadBalancer (AWS ELB) for your application

21
Demo: Service with AWS ELB LoadBalancer

In this demo I show you how to add an ELB (Elastic Load Balancer) to the example app

22
Recap: introduction to Kubernetes

In this lecture I recap the most important concepts from the first section

23
Practice test

Now that we have covered quite some ground, let's do a practice test

Kubernetes Basics

1
Node Architecture

In this lecture I explain the Kubernetes node architecture

2
Replication Controller

You can use the replication controller to spin up multiple instances of your application

3
Demo: Replication Controller

This demo shows you how to spin up multiple instances of your application

4
Deployments

Deployment objects allow a better abstraction of an application running on Kubernetes. You can update your application version easily and roll-back if something goes wrong.

5
Demo: Deployments

In this demo I show you how our example application can be a deployment.

6
Services

Exposing our application for external traffic can be done using services

7
Demo: Services

In this demo I show you how to expose our example app

8
Labels

Labels can be used to tag objects

9
Demo: NodeSelector using Labels

Labels together with NodeSelectors can be used to run pods on a specific node

10
Healthchecks

Healthchecks can be used to periodically check whether our app in the pod is still working

11
Demo: Healthchecks

In this demo I show you how to use healthchecks

12
Readiness Probe
13
Demo: Liveness and Readiness probe
14
Pod State
15
Pod Lifecycle
16
Demo: Pod Lifecycle
17
Secrets

Application credentials (for instance to access a database) can be stored in secrets.

18
Demo: Credentials using Volumes

Credentials can be mounted as a volume in a pod. This demo shows you how to do that.

19
Demo: Running Wordpress on Kubernetes

First attempt to run a wordpress on Kubernetes. In a later version I'll show you a better way of running Wordpress on Kubernetes

20
WebUI

Kubernetes also has a Web UI, a dashboard that makes it easy to use kubernetes

21
Demo: Web UI in Kops

Demo explaining how to add the web UI in kops

22
Demo: WebUI

In this brief demo I give an overview how to use the dashboard

23
Practice test II

Advanced Topics

1
Service Discovery

You can do service discovery using DNS.

2
Demo: Service Discovery

This is a demo showing you how service discovery works

3
ConfigMap

Containers are immutable. You can still use ConfigMaps for dynamic configuration data that needs to be present on the container.

4
Demo: ConfigMap

In this demo I show you how to use ConfigMap to create a custom configuration file for a standard nginx container

5
Ingress Controller

Ingress controller allows you to have a reverse proxy / load balancer within your Kubernetes cluster and without using an external load balancer.

6
Demo: Ingress Controller

In this demo I show you how to use the built-in kubernetes ingress controller

7
External DNS
8
Demo: External DNS
9
Volumes

If you want to run stateful applications on Kubernetes, you need volumes.

10
Demo: Volumes

In this demo I show you how to use volumes in Kubernetes

11
Volumes Autoprovisioning

Kubernetes can auto-provision volumes for you, no need to manually create an EBS volume on AWS

12
Demo: Wordpress With Volumes

Now we know enough to use volumes to launch a fully working wordpress

13
Pod Presets
14
Demo: Pod Presets
15
StatefulSets

Pet Sets enables you to run distributed applications and databases on Kubernetes, like ElasticSearch, MySQL Cluster, or Cassandra

16
Demo: StatefulSets

In this demo I show you how to use StatefulSets with Cassandra

17
Daemon Sets

Daemon Sets will make sure a pod is running on every node

18
Resource Usage Monitoring

Resource Usage Monitoring using influxdb and grafana will give you application metrics

19
Demo: Resource Monitoring using Metrics Server

Starting from 1.11 Heapster will be deprecated. The replacement is the Metrics Server. This lecture explains the difference with heapster and how to install the Metrics Service.

20
Demo: Resource Usage Monitoring

This demo explains how to setup Resource Usage Monitoring using heapster + influxdb + grafana

21
Autoscaling

Autoscaling can scale pods horizontally based on predefined targets

22
Demo: Autoscaling

In this demo I show you how horizontal pod autoscaling (hpa) works

23
Affinity / Anti-Affinity

This lectures explains what Node and Interpod Affinity / Anti-affinity is and what the difference is between node affinity and the NodeSelector

24
Demo: Affinity / Anti-Affinity

This is a demo showing how Node Affinity works

25
Interpod Affinity and Anti-affinity
26
Demo: Interpod Affinity
27
Demo: Interpod Anti-Affinity
28
Taints and Tolerations

This lecture explains taints and tolerations, which is the opposite of node affinity

29
Demo: Taints and Tolerations
30
Custom Resource Definitions (CRDs)

This explains what Custom Resource Definitions are

31
Operators
32
Demo: postgresql-operator
33
Quiz

Kubernetes Administration

1
The Kubernetes Master Services

This lectures gives an architecture overview of the master services

2
Resource Quotas

As an administrator, you can implement resource quotas to make sure one team or one person doesn't take up all resources

3
Namespaces

Namespaces can logically separate a Kubernetes cluster

4
Demo: Namespace quotas

In this demo I explain how to implement namespace quotas

5
User Management

Users can be added to your Kubernetes cluster. This lecture explains authentication and authorization

6
Demo: Adding Users

In this demo I show you how to add users using certificates

7
RBAC

This lecture explains authorization in Kubernetes using RBAC

8
Demo: RBAC
9
Networking

Every pod needs a unique IP. Not all infrastructure can easily handle this. CNI and overlay networks can help.

10
Node Maintenance

Sometimes you want to add / remove nodes. This is how it is done

11
Demo: Node Maintenance

This demo shows how to drain a Kubernetes node

12
High Availability

Once you put a Kubernetes cluster in production, you are going to want to have full high availability. This lecture explains you how to achieve that.

13
Demo: High Availability

This demo shows how to enable HA on your AWS Kubernetes cluster using kops

14
TLS on ELB using Annotations
You can view and review the lecture materials indefinitely, like an on-demand channel.
Definitely! If you have an internet connection, courses on Udemy are available on any device at any time. If you don't have an internet connection, some instructors also let their students download course lectures. That's up to the instructor though, so make sure you get on their good side!
4.4
4.4 out of 5
7004 Ratings

Detailed Rating

Stars 5
3171
Stars 4
2697
Stars 3
847
Stars 2
182
Stars 1
111
f1beef0a291e8c91d035f53e9e2244c6
30-Day Money-Back Guarantee

Includes

11 hours on-demand video
1 article
Full lifetime access
Access on mobile and TV
Certificate of Completion