HELM - Package Manager for Kubernetes Complete Master Course
4.1 (23 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.
211 students enrolled

HELM - Package Manager for Kubernetes Complete Master Course

Build, Store, Share, Install and Upgrade simple to complex cloud native software built for Kubernetes. Helm from CNCF
4.1 (22 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.
210 students enrolled
Last updated 7/2020
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
  • 5.5 hours on-demand video
  • 49 downloadable resources
  • 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
  • Helm package manager installation and configuration
  • Chartmuseum Repository
  • Custom Helm chart development
  • Create and work with Helm chart repositories
  • Helm architecture and interaction with Kubernetes RBAC
  • Helm Provenance and Integrity
  • Introduction to Kubernetes architecture and components
  • Basics of Linux commands
  • Basic Kubernetes setup or Minikube setup
  • Understanding of basic Kubernetes commands

You will learn all the required topics as given below for HELM - The Package Manager for Kubernetes.

  • Helm package manager installation and configuration

  • Charts and Hooks

  • Custom Helm chart development

  • Create and work with Helm chart repositories

  • Helm architecture and interaction with Kubernetes RBAC

  • Helm Provenance and Integrity

  • Search and find charts from Helm hub and repo

  • Understanding chart structure and customizing charts

  • Deploy and test charts

  • Chart Built-in objects

  • Chart Value files

  • Chart template functions and pipelines

  • Chart variables and flow control

  • Named templates and inner templates

  • Debugging templates

  • Chart Dependency Management

  • ChartMuseum installation and configuration

  • Minikube installation and configuration to use with HELM

Who this course is for:
  • Those who wants to learn advanced concepts in Kubernetes
  • Manage and optimize Kubernetes application deployment
Course content
Expand all 63 lectures 05:41:08
+ Introduction
10 lectures 47:33
  • Quick overview on HELM package manager

  • Helm role in Kubernetes cluster

  • Benefits of using Helm

  • Advantages of templatizing the Kubernetes deployment and manifest file

Preview 03:01
  • Complete lifecycle involving Charts, Package manager, Repositories, Cluster, etc.,

  • Reason for templating Kubernetes manifest file

  • Having different values file and applying against the template

  • Introduction to GO template language

Package manager need and purpose
  • Introduction to various components like Charts, Helm Client, Repositories, Release

  • Role and relation between Charts, Repositories, and Release

  • Purpose of repositories and how charts will be stored in it

Helm component introduction
  • Difference between Helm Version 2 and Version 3

  • Interaction with Kubernetes cluster difference with and without Tiller service

  • Identifying the right installation version

  • Downloading, extracting and installation helm client

  • Verifying helm installation

Helm V3 installation - Difference between V2 and V3
  • Introduction to Helm hub

  • Adding stable repo

  • Searching Charts within stable repo

  • Navigating repository

  • Details on repo cache

Repository quick introduction
  • Update the repository cache

  • Install a Chart from stable repository

  • Install sample Chart

  • Verify installed component in Kubernetes

  • Uninstall the chart and clean the system

Chart install - quick introduction
  • Create a sample Chart

  • Verify folder structure of created Chart

  • Quick overview on chart template

  • Overview on values file

  • Overview of other files like LICENSE, Chart.yaml, README.md, values.yaml values.schema.json

Create new Helm chart
  • Explore installation of Minikube for use with Helm

  • Architecture and different ways of installing Minikube

  • Prerequisite and configuration of Minikube

  • Check Minikube status

  • Start Minikube using Virtualbox driver

  • Open Kubernetes dashboard and verify deployed components

Minikube Installation for Helm
  • Install Helm along with Minikube

  • Different Helm version - Version 2 and Version 3

  • Configure and check Helm installation

  • Create a new chart

  • Install created chart in Minikube

  • Verify installed chart in Minikube

  • Cleanup the charts by uninstalling

Helm with Minikube
+ Chart - Templates
16 lectures 01:09:15
  • Create a simple Chart template

  • Verify Kubernetes cluster for comfigmaps

  • Install created helm configmap Chart

  • Verify config map in Kubernetes cluster

  • List helm installation

  • Uninstall helm installation

Preview 04:37
  • Introduction to Go template language

  • Understand more on Helm built-in objects

  • Use sample built-in objects in the template

  • Install the Chart with built-in objects

  • Verify installed chart using helm get manifest command

Built-in objects
  • Introduction to reading values from values.yaml file

  • Introduction to dry run and advantage of doing the dry-run

  • Verifying the computed value after merging values with templates

  • Install the Chart

  • Verify the values from the manifest file

Read values for templates
  • Setting sample values to template at run time

  • Verify set value using dry-run

  • Install Chart using custom value with --set option

  • Verify the manifest file

Set values to templates
  • Using functions in templates

  • Using template functions from sprig

  • Using sample functions like quote, upper, etc

Template functions
  • Introduction to pipeline in template functions

  • Usage of pipeline with functions

  • Using pipeline with upper, quote, now and other functions

Template pipeline and default values
  • Syntax of if-else control flow

  • Using if-else within templates by evaluating conditions

  • yaml file alignment to be taken care while using if-else conditions

  • Removing unnecessary new lines from yaml file while using if-else conditions

Control flow if-else
  • Introduction to scope and need in templates

  • Understand restricted scope

  • Using the keyword 'with' to pass yaml values to template blocks

Defining scope using with
  • Using range for looping

  • Looping through a collection of key-value pairs

  • Verify looping with dry-run

Preview 02:49
  • Introduction to template variables and syntax

  • Assign built-in object in a variable and access in the block

  • Assigning iterating item to a variable in range looping

  • Purpose and advantage of splitting content into sub-templates

  • Creating sub-template and including it for reusability

  • Using the keyword 'template' and include the content

Include content from same file
  • The behavior of variable scope in the template include

  • Verify scope using template include and built-in objects

  • Passing the scope using '.' and '$'

Include scope
  • Another way of including template using the keyword 'include'

  • yaml indentation advantage while using 'include' keyword

  • Using the keyword 'indent' for yaml alignment

Include template using keyword include
  • Creating and using Notes with Charts

  • Using template go language with Notes file

  • Verify notes after installing the Chart

  • Purpose of Sub-Chart

  • Create a Sub-Chart

  • Effect of computed values and applying values with Sub-Charts

  • Values scope while using Sub-Chart

Sub Charts

Using global in Sub-Charts

Values scope with global

Accessing global variable value in Sub-Chart

Sub Chart global
+ Repository Management
10 lectures 45:51
  • Introduction to repositories

  • Role and its scope in the workflow of Charts and its deployment to Kubernetes cluster

  • Different hosting options

Preview 02:49
  • Different ways of setting up Repository

  • index.yaml file structure

  • Repository storage folder structure

  • Functions of repository

  • Introduction to Chartmuseum

Repository hosting options
  • ChartMuseum Introduction

  • Downloading and installing ChartMuseum

  • Verify ChartMuseum installation

  • Setting up storage and starting Chartmuseum

Chartmuseum installation
  • Verify repo list

  • Add ChartMuseum repo to cache

  • List charts from all repository

  • Search Chart from specific repository

Preview 03:11
  • Verify Charts in ChartMuseum repository

  • Create a sample chart and add to the repository

  • Package the Chart using 'Package' command

  • Add the package to the repository using the curl command

  • Update the repository cache

  • Verify Chart list in the repository

Add Chart to Chartmuseum repository
  • Difference between Chart and Application Version

  • Changing Chart version in Chart.yaml file

  • Introduction to Semantic Versioning from semver.org

  • Create an additional version of Chart

  • Add next version of a package to the repository

  • Search for all version of Charts

Maintain Chart version
  • Create multiple Charts

  • Package the Chart and add it to the storage location directly

  • Update and search for Charts

Maintain multiple Charts
  • Introduction to Plugins

  • Details on helm push plugin

  • Install helm push plugin

  • List plugins in the current installation

  • Push the Chart to ChartMuseum repository using helm push plugin

  • Update and verify the Charts in the repository

Chart push plugin
  • Create a new repository in Github

  • Generate access token

  • Add and Commit the files to the github repository

  • Package the charts and generate index.yaml file

  • Add the package and index.yaml file to the github repository

Maintain github as repository
  • Get raw link from github repository

  • Add the github hosted repo using username, accesstoken and raw url

  • List the repo and verify

  • Package more charts and commit to github to verify versions

  • Cleanup access tokens

Add Charts to github repository
+ Chart Management
6 lectures 35:11
  • Create a Chart and deploy to the Kubernetes cluster

  • Verify the replication count of Pods in Kubernetes cluster

  • Update Chart version in Charts.yaml file

  • Update Values file with different replication count

  • Update the chart repos

  • Upgrade the installation

  • List the helm installation

  • Verify upgrade using the number of pods deployed to the Kubernetes cluster

Upgrade Helm Installed Chart
  • Create multiple versions of helm deployment

  • List helm deployments

  • Rollback to the previous version of the deployment

  • Verify rollback with deployed components in Kubernetes cluster

Rollback Helm Installed Chart
  • Need and advantage of using helm dependency

  • Creating dependency using Chart.yaml file

  • Build dependency using 'build' command

  • Update dependency using 'update' command

Helm Dependency
  • Introduction to Chart Hooks

  • Various types of Hooks

  • Creating Preinstall and Postinstall Hook

  • Installing chart to very Hook functionality

  • Verify Hook Pods with Started and Finished time

Chart Hook - Pre and Post Install Hook
  • Use Kubernetes jobs as Hooks

  • Install Job as Hooks for Preinstall and Postinstall Hooks

  • Verify executed jobs and Hooks with Started and Finished time

  • Cleanup up the system by deleting the Charts, Jobs and Pods

Kubernetes Job as Hooks
  • Purpose of using Weight in Hooks

  • Creating three preinstall hooks with different weight

  • Install the chart and verify Hook executing by comparing Started and Finished time

  • Cleanup the system by deleting the Charts, Jobs and Pods

Hook Execution using Weight
+ Testing and Verification
4 lectures 17:06
  • Using helm lint tools

  • Validate templates using lint command

  • Identify the error in templates and correct them

Helm Lint
  • Introduction to Helm Hook

  • Introduction to Test Hook in Helm

  • Overview and navigate test templates

  • Run test against the deployment and verify the result

Helm Hook test
  • Get status of deployment

  • Get values, manifest, Notes and Hooks of deployment

  • Get current status, revision and deployment status using 'status' command

Helm Get and Status
  • Introduction and need for provenance and Integrity of package

  • Introduction to gpg key generation

  • Verify the generated keys and secring.gpg files

  • List generated keys

  • Package using the generated key and keyring

  • Details .prov file

  • Verify Chart Hash

Provenance and Integrity
+ Kubernetes REVISION
17 lectures 02:06:12
Orchestration Introduction
Kubernetes Component Introduction
YAML Introduction
Kubernetes Cluster Components - Analogy
Kubernetes Cluster Types of Installation
Minikube Windows Installation
Minikube CentOS Installation
Pod Getting Started
Pod - Ports and file Copy concepts
Replicaset Introduction
Deployment Introduction
Service Introduction
Label Selector Introduction
Volume Introduction
ConfigMap Introduction
Secrets Introduction
Namespace Introduction