Introduction to Helm

Categories: Helm, Helm v3, Kubernetes
Course Length: 2 Days

Helm is part Kubernetes Package Manager and Part Chart Development. The Helm course is designed to be an introduction to understanding and working with the Helm Kubernetes package manager. It will start with a journey to understand why Helm exists and its purpose. The course will then navigate a path towards how to work with it, including building charts, publishing them, using them to release and manage Kubernetes workloads, as well as the various capabilities Helm offers via its CLI.

  • An Intro to Helm

    • Why does Helm exist and what does it solve?

  • Templating Kubernetes resources

  • Packaging related resources together

  • Reusability across different environments

  • Helm Architecture

    • Installing Helm

    • Initializing Helm

    • The client and the server

    • Initializing a Repository

  • Glossary of Terms

    • Charts: Templated Definitions of Kubernetes Resources

    • Config: Install/Upgrade time values

    • Releases: Charts and Config put together to run stuff in the Cluster

  • Building your First Chart

    • A Primer of YAML

    • A Primer of Kubernetes

    • Chart Anatomy

      • Chart.yaml

      • Variables

      • Templates

    • Best Practices when Developing Charts

    • General conventions

    • Best overrides support possible

  • Packaging up a chart, preparing to be distributed

  • Dependencies

    • How to add dependencies to our chart

    • How to update dependencies

  • Templates

    • Templating practices including working with Go templates, Sprig, and the other pieces that Helm templates support

    • Allowing end-users to set up and overriding Values

  • Functions

    • Calling Functions

    • Understanding External Function Files

    • Including and Calling Functions

    • Looking at loops and other various more-complex syntax cases in templates

    • Navigating Go templates, Sprig, and Helm templating with grace

  • Subcharts

    • Selecting Subcharts to Install

    • Understanding Scopes of Subcharts and their values

  • Plugins

    • Installing Plugins

    • Developing Plugins

    • Managing Plugins and working with some common ones

  • Unit-Testing

  • Integration-Testing

  • Deploying Chart to Repos

    • S3/Minio

    • Github

  • Conclusion