Understanding Helm and its architecture
As we saw in the previous chapters, Kubernetes YAML templates are fine for simple applications. However, as you try and cope with complex applications where you have multiple components, several dependencies between these components, and the need to deploy and update these components frequently using techniques such as blue/green deployments, you need something more; you need a package manager.
Package management is not a new idea; you can see a similar concept and critical software package management tools in software such as APT/YUM on Linux, Homebrew on Mac, or Chocolatey on Windows. Similarly, Helm can be considered the package management tool for Kubernetes.
Helm is composed of the following:
- Charts: A package of pre-configured Kubernetes resources
- Releases: A specific instance of a chart that has been deployed to the cluster using Helm
- Repositories: A group of published charts that can be made available to others ...