#devops #kubernetes #tools

When running some upgrades on our test cluster, I was getting errors like these in Helm:

1$ helm list
2Error: incompatible versions client[v2.17.0] server[v2.16.9]

What it tries to tell us is that there is a mismatch between our local Helm install and the Helm Tiller component which is deployed in the cluster. To fix it, you need to update teh Tiller component in the cluster by using this command:

1$ helm init --upgrade
2$HELM_HOME has been configured at /Users/pclaerhout/.helm.
3
4Tiller (the Helm server-side component) has been updated to ghcr.io/helm/tiller:v2.17.0 .

You can check the versions by using the version command:

1$ helm version
2Client: &version.Version{SemVer:"v2.17.0", GitCommit:"a690bad98af45b015bd3da1a41f6218b1a451dbe", GitTreeState:"clean"}
3Server: &version.Version{SemVer:"v2.17.0", GitCommit:"a690bad98af45b015bd3da1a41f6218b1a451dbe", GitTreeState:"clean"}

I was also getting warnings about the repo which is outdated:

1$ helm version
2WARNING: "kubernetes-charts.storage.googleapis.com" is deprecated for "stable" and will be deleted Nov. 13, 2020.
3WARNING: You should switch to "https://charts.helm.sh/stable"
4Client: &version.Version{SemVer:"v2.17.0", GitCommit:"a690bad98af45b015bd3da1a41f6218b1a451dbe", GitTreeState:"clean"}
5Server: &version.Version{SemVer:"v2.16.9", GitCommit:"8ad7037828e5a0fca1009dabe290130da6368e39", GitTreeState:"clean"}

Due to recent changes, the repository is now located at a different place. You can update it as follows:

Helm v3

1$ helm repo add stable https://charts.helm.sh/stable --force-update

Helm v2

1$ helm repo rm stable
2$ helm repo add stable https://charts.helm.sh/stable

You can list the repositories you have available:

1$ helm repo list
2NAME        URL
3local       http://127.0.0.1:8879/charts
4jetstack    https://charts.jetstack.io
5stable      https://charts.helm.sh/stable

Don't forget to run the update command to refresh the local cache:

1$ helm repo update
2Hang tight while we grab the latest from your chart repositories...
3...Skip local chart repository
4...Successfully got an update from the "jetstack" chart repository
5...Successfully got an update from the "stable" chart repository
6Update Complete.