Canary Deployments To Kubernetes Using Istio and Friends
4.5 (98 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.
990 students enrolled

Canary Deployments To Kubernetes Using Istio and Friends

The DevOps Toolkit Series
4.5 (98 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.
990 students enrolled
Last updated 3/2020
English
Current price: $20.99 Original price: $29.99 Discount: 30% off
5 hours left at this price!
30-Day Money-Back Guarantee
This course includes
  • 6.5 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
  • Canary deployments
  • Using service mesh to define and run canary deployments
  • Using Istio to define canary deployments
  • Using metrics in Prometheus to decide whether to roll forward or roll back
  • Automating canary deployments with Flagger
  • Creating a script for canary deployments running in continuous delivery tools
Requirements
  • A Kubernetes cluster and a few CLIs. Detailed requirements are provided inside the course and available as a free preview.
Description

Kubernetes provides a few "decent" deployment strategies out of the box. However, they might not be enough. Canary is missing.


What is the canary deployments process? How should we implement it in Kubernetes? Which tools should we use? We'll try to answer those and quite a few other questions.


This course will guide you through the journey of practical implementation of canary deployments. We'll use Kubernetes because it makes many things easier than any other platform before it. We'll need service mesh because, after all, most of the canary process is controlled through networking and changes to Kubernetes definitions. We'll need a few other tools, and we might even need to write our own scripts to glue everything into a cohesive process.


The end result will be a set of instructions and a live demo of a fully operational canary deployment process that can be plugged into any continuous delivery tool. We'll define the process, and we'll choose some tools. Nevertheless, we'll do all that while making the process agnostic and applicable to any toolset you might pick.

Who this course is for:
  • Engineers interested in defining and running canaries as a way to have more reliable deployments with zero-downtime
Course content
Expand all 85 lectures 06:26:44
+ Introduction
9 lectures 30:35
Deploying The First Release
03:05
Using "Big Bang" Deployments
02:13
Using Rolling Updates
02:11
Discussing Challenges With Microservices
03:20
Why Are We Going To Use Istio?
03:01
+ Installing Istio And Injecting Sidecar Proxies
7 lectures 29:22
Gist With The Commands
01:08
Installing Istio CLI
01:09
Creating Kubernetes Cluster
02:22
Installing Istio
06:35
Manual Sidecar Injection
07:28
Automatic Sidecar Injection
05:53
Cleaning Up
04:47
+ Enabling Incoming Traffic
7 lectures 34:13
Incoming Traffic
01:18
Gist With The Commands
00:40
Creating Kubernetes Cluster and Installing Istio
01:52
Using Istio Gateway
21:54
Using Istio Ingress
06:05
References
01:11
Cleaning Up
01:13
+ Running Canary Deployments Manually
10 lectures 55:30
Manual Canaries
01:06
Gist With The Commands
00:31
Creating Kubernetes Cluster and Installing Istio
00:33
Deploying The First Release
11:14
Deploying A New Release
11:07
Rolling Forward
07:19
Finishing The Deployment
08:11
References
01:19
Cleaning Up
01:25
+ Using Metrics To Validate Progress
12 lectures 49:05
Validating Progress
03:30
Gist with the commands
00:30
Creating Kubernetes Cluster and Installing Istio
00:32
Deploying The Application
03:41
WARNING: Changes In Istio v1.5+
00:30
Querying Metrics
12:28
Measuring Average Request Duration
05:31
Measuring Maximum Request Duration
04:18
Visualizing Metrics
07:13
References
01:32
Cleaning Up
01:30
+ Automating Canary Deployments With Flagger
10 lectures 51:21
Automating Canary Deployments
01:53
Gist with the commands
00:31
Creating Kubernetes Cluster and Installing Istio
00:32
Installing Flagger
02:39
Deploying The Application
09:58
Deploying Flagger Resource
15:37
Visualizing Metrics
03:22
References
02:11
Cleaning Up
01:31
+ Automating Rollbacks Of Canary Deployments
9 lectures 47:52
Automating Rollbacks
02:48
Gist with the commands
00:31
Creating Kubernetes Cluster and Installing Istio And Flagger
00:32
Deploying The Application
03:57
Rolling Back On Maximum Request Duration
15:53
Rolling Forward
06:32
References
02:00
Cleaning Up
00:59
+ Integrating Canary Deployments With Continuous Delivery
8 lectures 29:32
Canary In CD
04:07
Gist with the commands
00:31
Creating Kubernetes Cluster and Installing Istio and Flagger
00:32
Deploying The Application
02:54
Exploring The Script
08:58
Observing Failed Canary Deployment
05:28
Cleaning Up
01:09
+ BONUS: Canary Deployments Through Jenkins X
10 lectures 47:20
Canary Deployments In Jenkins X
02:30
Gist With The Commands
00:30
Creating Kubernetes Cluster and Installing Istio And Flagger
02:04
Installing Jenkins X
02:48
Creating A Quickstart Project
05:58
Exploring Canary Resources
05:24
Switching To Canary Deployments
10:26
Discussing Warnings And Available Resources
04:23
Cleaning Up
01:36