Output of "helm list --all" is empty

2/19/2019

I have deployed jupyterhub on my GKE cluster using helm. However, when I run helm list --all (or helm list --failed etc) I see no output.

I can confirm that tiller is running in my cluster:

$ helm version
Client: &version.Version{SemVer:"v2.11.0", GitCommit:"2e55dbe1fdb5fdb96b75ff144a339489417b146b", GitTreeState:"clean"}
Server: &version.Version{SemVer:"v2.11.0", GitCommit:"2e55dbe1fdb5fdb96b75ff144a339489417b146b", GitTreeState:"clean"}

And I can see the tiller pod:

$ kubectl get pods -n kube-system | grep tiller
tiller-deploy-778f674bf5-5jksm                                   1/1     Running   0          132d

I can also see that my deployment of jupyterhub is running using kubectl get pods -n jhub.

How I can I determine why the output of helm list is empty?

-- Alex Flint
kubernetes-helm

1 Answer

2/20/2019

I have a strong feeling you are missing some permissions. This is a GKE cluster. So RBAC is enabled.

The standard practice is to first create a dedicated Service account in the appropriate namespace. For example sake, lets say kube-system

kubectl create serviceaccount tiller --namespace kube-system

Then you need to give appropriate permissions to this service account.

FOR TESTING / NON-SECURE !!!

Lets allow this service account to run with super user privileges i.e. run as cluster-admin

kubectl create clusterrolebinding tiller-admin --clusterrole=cluster-admin --serviceaccount=kube-system:tiller

FOR PRODUCTION / SECURE

Create a Role that gives the minimum privileges for tiller to run and associate with the tiller service account using a RoleBinding.

Then go ahead and initialize tiller with the associated serviceAccount.

helm init --service-account tiller
--
Source: StackOverflow