Helm Lightning Course
Learn the basics of Helm quickly and for free!
What you’ll learn
Helm Lightning Course
- Helm
- Helm Charts and Releases
- Helm Templates and Values
- Helm Chart Dependencies and External Charts
- Helm Hooks
- Helm Plugins
Requirements
- Experience using Kubernetes for running containerized applications. At a minimum, you need to know what Pods, Services, and Deployments are.
Description
In this course, you will learn the basic concepts of Helm, what is it used for, and, most importantly, why you might need it.
This course assumes you already know what Kubernetes is, as well some of its primary resource types, like Pods, Deployments, Services, ConfigMaps, and Secrets. If you’ve never used Kubernetes before, you will hardly benefit from this lightning course.
Helm is a package manager for Kubernetes. This description, taken from Helm’s website, doesn’t really say much. Let’s look at this from a different angle.
When you deploy an application to Kubernetes, you end up with lots of YAML files – you need a YAML file for the Deployment, for the Service, for some ConfigMaps, and so on, for every object that your application needs. Of. course, you could also have all of those in a single big YAML file, but that’s not the point here.
Many of those objects depend on each other in some way or another – Service finds Pods by labels, and those labels should be the same ones configured in your Deployment’s pod template. The deployment also needs to mount the correct ConfigMap, and the same goes for PersistentVolumes.
Helm Lightning Course
Quite naturally, you want to configure many, if not all, of those objects depending on the environment – staging Deployment might have a different number of replicas, and production Secret for sure will have a different database password.
In addition, you also need a simple way to roll back to a previous version, and maybe execute some hooks before and after different stages of the rollout – for example, you might need to run database migrations before deploying the new release.
Helm is the tool that solves those and a few other problems. It allows you to properly template your object definitions, it gives you a set of commands to manage the releases of your application and it provides some extra advanced utilities, like the aforementioned hooks.
While definitely not the only tool that solves all or some of those problems, Helm became more or less a standard for packaging Kubernetes object definitions. As a result, almost every software you want to install has an existing Helm package – called chart – that simplifies both installation and updates of this software.
This is why Helm is the package manager for Kubernetes – not only due to its features but also because of how widespread it is. In this course, we will learn how to use it.
Who this course is for
- For both developers and operators looking into improving the packaging and deployment processes of Kubernetes applications and confirmation.
Add Comment