learn Helm - The package manager for Kubernetes
- similar to apt, yum, homebrew, but for k8s
- Helm is the only package manager specifically for Kubernetes applications. You can package your applications as a Helm Chart, and then install, update, and roll back your Kubernetes applications using Helm.
- a vanilla k8s app deployment consists of several yaml files to describe the k8s artifacts in a declarative manner.
Helm is a tool that allows you to create deployment templates. This template is called a helm chart, which consists of the yaml files that look more or less like a regular k8s yaml file but have some variables in them. Those variables can be defined through an additional values.yaml file.
helm chart dir structure
Chart.yaml- top-level chart metadata. e.g. name, version, etc.
values.yaml- declare variables here that are used in the
$ helm create demo Creating demo $ tree demo demo ├── Chart.yaml ├── charts ├── templates │ ├── NOTES.txt │ ├── _helpers.tpl │ ├── deployment.yaml │ ├── hpa.yaml │ ├── ingress.yaml │ ├── service.yaml │ ├── serviceaccount.yaml │ └── tests │ └── test-connection.yaml └── values.yaml
- Helm: Quickstart Guide
- Kubernetes and Helm in a Nutshell
- Helm Charts: Kubernetes Tutorial and Examples
- ArtifactHUB - Find, install and publish Kubernetes packages