Video description
Mastering container orchestration with Kubernetes one step at a time. Prepare for the CKA Exam
About This Video
- This course brings you a distilled experience from Gourav's knowledge of building and managing infrastructures, his experience of helping companies with their DevOps journey and more than 300 corporate training sessions.
- This is a well-researched program and he has tried many variants of applications, with different flows, took feedback, and iterated it many times.
- That's one of the reasons why it took us more than 4 months to even launch the course in its first form.
- The team have also started incorporating some new and useful techniques including glassboard, mindmaps to explain the concepts better and make things easier.
In Detail
Kubernetes is the gold standard in the world of container orchestration. It was originally created by Google, based on their experience of building and managing containers at scale (at Google Scale). However it's now driven by Cloud Native Compute Foundation (CNCF), an open body, which also offers the official certification, Kubernetes Certified Administrator. Kubernetes comes with mindboggling features, is very reliable, and is an extremely sophisticated container orchestration engine. It lets you convert your infrastructure into a container as a service (Platform), bringing in some of the awe-inspiring features such as zero down time deployments, fault tolerance, auto scaling, and cloud and storage integrations, which were previously extremely difficult to implement. And it brings it to the masses with its truly open, lock in free eco system. With Kubernetes' sophistication however, comes complexity too. You definitely need a guide while you navigate the complex world of Kubernetes, and this coursedoes just that. It's been created in such a way that you start learning Kubernetes from the ground up, one small step at a time, feature by feature. This course brings you a distilled experience with the author's knowledge of building and managing infrastructures, experience of helping companies with their DevOps journey and more than 300 corporate training sessions. This is a well-researched program in which many variants of applications, with different flows, have been trialled and iterated many times, according to feedback. We have also started incorporating some new and useful techniques including glassboard and mindmaps to explain the concepts better and make things easier.
Table of Contents
Chapter 1 : Introduction to Kubernetes
The need for a Container Orchestration Engine
00:04:00
Battles of COEs, which one to choose
00:03:42
Key Features of a COE
00:03:39
What makes Kubernetes the de facto COE choice
00:04:16
Negatives of using Kubernetes
00:02:35
Chapter 2 : Path to Automation with Kubernetes
Section Intro - Path to Automation with Kubernetes
00:00:36
Namespaces
00:04:45
Pods
00:08:11
Replication Controller, Replica Sets and Deployments
00:10:37
Service Discovery and Load Balancing
00:08:13
Applying kubernetes primitives to your Application Stack
00:03:40
Configmaps and , Storage, Network, RBAC etc.
00:05:35
Daemonsets, Statefulsets, Crons and Jobs
00:05:57
Kubernetes Architecture Run Down
00:06:48
Building production grade Hight Available Kubernetes Cluster
00:06:10
Chapter 3 : Setting up Environment
Section Intro- Setting up Environment
00:02:29
Provisioning and configuring Digital Ocean Nodes
00:03:53
Initialise Cluster with Kubeadm
00:06:38
Setting up Weave CNI
00:04:15
Launching Kubernetes Dashboard
00:05:10
Setting up a kubernetes Visualizer
00:05:29
Resetting cluster created with kubeadm
00:06:15
Chapter 4 : Building Blocks – Pods
Section Intro - Pods
00:00:53
Writing pod Specification
00:04:37
Launching and Operating Pods
00:04:55
Troubleshooting Pods Issues
00:05:15
Attaching a volume to a Pod
00:07:18
Launching Multi-Container Pods
00:03:39
Connecting to Individual Containers
00:05:20
Chapter 5 : Replication Controllers and Replica Sets
Section Intro - Replication Controllers
00:01:06
Setting up namespace and switching context
00:04:10
Writing Replica Set Specification
00:08:19
Launching Replica Set and Fault Tolerance
00:04:24
Chapter 6 : Service Discovery and Load Balancing
Section intro – Services
00:01:15
Writing Service Specification
00:05:06
Exposting services outside the Cluster
00:06:02
Service Discovery
00:04:39
Chapter 7 : Application Deployments and Updates
Section Intro – Deployments
00:01:21
Writing Deployment Specification
00:04:38
Rolling Out a Deployment
00:04:12
Update and Rollback
00:04:34
Rollbacks
00:04:49
Solution part I - Deploying a worker App
00:04:44
Solution part II - Deploying DB service
00:03:35
Solutions part III - Results App
00:04:03
Chapter 8 : Managing Application Configurations with ConfigMaps and Secrets
Section intro - Coonfigmaps and Secrets
00:01:40
Creating Config Map for Vote app Options
00:05:57
Setting up Environment Specific Configs
00:04:23
Adding Configs from Files
00:04:13
Creating Secrets to Encrypt Database Credentials
00:03:35
Setting Environment vars using Secrets
00:04:04
Chapter 9 : Persisting data and dynamic volumes provisioning
Section Intro- Persistent Volumes
00:01:24
Setting up RBAC for NFS Provisioner
00:04:17
Setting up NFS provisioner with Statefulset
00:04:17
Creating storage class for NFS
00:02:01
Claiming a persistent volume and mounting it
00:05:01
Dynamically provisioning of persistent volumes
00:07:43
Chapter 10 : Creating Release Strategies - Blue/Green, Canary
Section Intro- Release Strategies
00:00:42
Defining Recreate as a Release Strategy
00:06:13
Canary Releases
00:03:56
Blue Green Deployments
00:07:12
Pausing and fixing rollouts
00:03:03
Chapter 11 : Dynamically scaling apps with Horizontal Pod Autoscaler
Section Intro HPA
00:01:22
Setting up code monitoring with Metrics Server
00:05:19
Defining Resource Requests and Limits
00:07:30
Creating a Horizontal Pod Autoscaler
00:07:00
Writing load test Job definition
00:05:50
Laying a siege with loadtest jobs
00:07:33
Autoscaling in action with HPA
00:08:34
Chapter 12 : Application routing with Ingress Controllers
Section Intro Ingress
00:01:04
Ingress Controllers and Ingress
00:06:20
Choosing Traefik as a ingress controller and DaemonSet as a deployment type
00:07:07
Creating DaemonSet for Traefik
00:11:28
Writing Ingress definition for vote app with named based routing
00:07:31
Testing ingress and accessing the application
00:05:54
Annotations and setting up basic auth for vote app
00:07:45
Chapter 13 : Setting up firewall with Network Policies
Creating default network policy for instavote namespace
00:07:22
Exposing public facing apps and allowing inter namespace communication
00:07:55
Chapter 14 : High Available Production Cluster setup with Kubespray
From dev to production with High Available kubernetes Cluster
00:01:56
Introduction to Kubespray
00:02:34
HA Design
00:03:15
Preparing Nodes to setup Kubernetes
00:05:10
Ansible control node and inventory setup
00:06:34
Running ansible kubespray playbooks to configure etcd, master and nodes
00:07:28
Adding a new node to cluster with kubespray
00:03:14
Enabling additional kubernetes features with with Kubespray
00:03:46
Understanding HA setup, mapping services to nodes
00:06:19
Kubernetes configurations quick dive
00:07:43
Configuring kubectl locally to conenct with multiple clusters
00:06:32
Deploying instavote app on prod cluster
00:07:26
Accessing kubernetes dashboard
00:03:29
Chapter 15 : Access Control and RBAC Policies - Authentication and Authorization
Access Control with Kubernetes
00:06:20
RBAC Concepts
00:10:23
Defining Users, Groups and Authorizations
00:04:52
Creating Users and Groups using x509 Certificates
00:07:10
Setting credentials and contexts
00:06:50
Creating Roles and RoleBindings for interns
00:12:38
Binding to existing ClusterRole using ClusterRoleBinding for Ops
00:05:17
Chapter 16 : Advanced Pod Scheduling
Using nodeName to bind a pod to a node
00:02:40
Selecting node based on labels with nodeSelector
00:06:24
Selecting nodes with nodeAffinity
00:11:05
Using podAffinity and podAntiAffinity to ensure co locating applications
00:08:57
Using taints and tolerations to make nodes unschedulable or run only specific app
00:06:18
Chapter 17 : Using HELM to setup Monitoring with Prometheus and Grafana
Introduction to HELM
00:04:51
Setting up helm with tiller and launching Prometheus
00:07:09
Quick overview of helm Charts
00:08:23
Launching WordPress with custom values
00:07:22
Setting up Prometheus with custom storageclass and ingress rules
00:09:48
Deploying grafana and integrating it with Prometheus
00:08:34