FAUN — Developer Community 🐾

We help developers learn and grow by keeping them up with what matters. 👉 www.faun.dev

Follow publication

Member-only story

How to upgrade your Helm Charts

Kubernetes + Helm

Upgrading Helm charts is not a straightforward process if you have more changes in values key-pair in thevalues.yml file. Doing the comparison of values manually is very tedious as you have to go through each breaking change in Kubernetes which includes tag and structure changes. Recently I got a chance to work on the helm upgrade stuff since our Kubernetes cluster got upgraded and during this phase, I came across a CLI called helm-diff. So, in this article, I will take you through the steps that I took to upgrade the Helm charts to a newer version.

Pre-requisites

  1. Kubernetes Cluster
  2. Helm CLI
  3. helm diff extension

Steps

For the illustration, I am using the Nginx ingress chart as an example, which can be found here.

  1. First get the details of the existing helm chart that you want to upgrade — repository, chart version, and custom values that need to be retained.
# To get the list of versions availablehelm repo add ingress-nginx https://kubernetes.github.io/ingress-nginxhelm repo updatehelm search repo ingress-nginx -lingress-nginx/ingress-nginx 4.0.2         1.0.1       Ingress controller for Kubernetes using NGINX a...
ingress-nginx/ingress-nginx 4.0.1 1.0.0 Ingress controller for Kubernetes using NGINX a...
ingress-nginx/ingress-nginx 3.41.0 0.51.0 Ingress controller for Kubernetes using NGINX a...
ingress-nginx/ingress-nginx 3.40.0 0.50.0 Ingress
....
....
controller for Kubernetes using NGINX a...
ingress-nginx/ingress-nginx 2.13.0 0.35.0 Ingress controller for Kubernetes using NGINX a...
ingress-nginx/ingress-nginx 2.12.1 0.34.1 Ingress controller for Kubernetes using NGINX a...

I am using a Chart with a version 3.41.0 with default values in the chart. The chart has been deployed in the namespace nginx

kubectl create ns nginx
helm install ingress-nginx ingress-nginx/ingress-nginx --namespace nginx --version 3.41.0

2. Now we plan to upgrade the chart to the next version with feature changes. Here in the Nginx chart…

--

--

Published in FAUN — Developer Community 🐾

We help developers learn and grow by keeping them up with what matters. 👉 www.faun.dev

Written by Renjith Ravindranathan

DevOps by day, dad and traveler by heart. I have a soft spot for breathing new life into old tech. Currently calling the Netherlands home.

Responses (1)

Write a response