<p>I have a Kubernetes cluster in GCP names <code>foo</code>.  I created in that cluster a service account for <code>tiller</code> and gave it admin rights as follows:</p>

<pre><code>kubectl -n kube-system create serviceaccount tiller
</code></pre>

<pre><code>kubectl create clusterrolebinding tiller \
&gt;   --clusterrole=cluster-admin \
&gt;   --serviceaccount=kube-system:tiller
</code></pre>

<p>Then I init <code>Helm</code> as follows:</p>

<pre><code>helm init --service-account tiller
</code></pre>

<p>Now finally when I try to install my own chart:</p>

<pre><code>someserver:helm joe$ helm install onerepo/onechart --name foobar
Error: the server has asked for the client to provide credentials
</code></pre>

<p>I am already authenticated for cluster <code>foo</code> and I can describe all its other resources and service accounts.  Why I cannot deploy using <code>Helm</code>?</p>

Navarro
<p>The correct way to install helm and use it:</p>

<pre><code>curl https://raw.githubusercontent.com/helm/helm/master/scripts/get | bash

kubectl create serviceaccount --namespace kube-system tiller

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

kubectl patch deploy --namespace kube-system tiller-deploy -p '{"spec":{"template":{"spec":{"serviceAccount":"tiller"}}}}' 

helm init --service-account tiller

helm install onerepo/onechart --name foobar
</code></pre>
