Helm
- Helm uses templating to make k8s yaml’s dynamic which help in
- Environment specific configurations
- adopting new changes in CI/CD
- Using Helm we can maintain releases
- Helm is considered as a package manager for k8s.
- Helm uses Go Templating Format for injecting values into yaml files.
-
To use Helm, we need two softwares on client
- helm
- kubectl with kubeconfig configured.
- When we exeecute helm to deploy into k8s it internally uses kubectl
Experiment 1
- Consider the following deployment manifest
---
apiVersion: apps/v1
kind: Deployment
metadata:
name: example-1 #
namespace: default #
labels:
app: web #
annotations:
kubernetes.io/change-cause: "nginx" #
spec:
minReadySeconds: 2 #
replicas: 4 #
revisionHistoryLimit: 10 #
selector:
matchLabels:
app: web #
strategy:
type: RollingUpdate
rollingUpdate:
maxSurge: 25% #
maxUnavailable: 25% #
template:
metadata:
labels:
app: web #
env: dev #
spec:
containers:
- name: web
image: nginx #
ports:
- containerPort: 80 #
- Installing helm Refer Here
- In helm we create charts using helm create command
- Refer Here for the changes done where we have implemented a static helm
- To make the things dynamic, lets start using helm playground and Refer Here for syntax

- Using helm we can deploy many applications
