<p>I've a Kubernetes cluster installed in AWS with Kops. I've installed Helm Tiller with the Gitlab UI. The Tiller service seems to be working via Gitlab, for example I've installed Ingress from the Gitlab UI.</p>

<p>But when trying to use that same Tiller from my CLI, I can't manage to get it working. When I <code>helm init</code> it says it's already installed (which makes totally sense):</p>

<pre><code>helm init --tiller-namespace gitlab-managed-apps --service-account tiller
$HELM_HOME has been configured at C:\Users\danie\.helm.
Warning: Tiller is already installed in the cluster.
(Use --client-only to suppress this message, or --upgrade to upgrade Tiller to the current version.)
Happy Helming!
</code></pre>

<p>But when trying to, for example, list the charts, it takes 5 minutes and then timeouts:</p>

<pre><code>$ helm list --tiller-namespace gitlab-managed-apps --debug
[debug] Created tunnel using local port: '60471'

[debug] SERVER: "127.0.0.1:60471"

Error: context deadline exceeded
</code></pre>

<p>What I'm missing so I can use the Gitlab-installed Tiller from my CLI?</p>

Daniel Ramos
<p>Are you pretty sure that your Tiller server is installed in "gitlab-managed-apps" namespace ? By default it's installed to 'kube-system' one as per official <a href="https://docs.gitlab.com/charts/installation/tools.html#preparing-for-helm-with-rbac" rel="nofollow noreferrer">installation</a> instruction on GitLab website, which would mean this is what causes your <code>helm ls</code> command to fail (just skip it)</p>

<p>The best way to verify it is via:</p>

<pre><code>kubectl get deploy/tiller-deploy -n gitlab-managed-apps
</code></pre>

<p>Do you see any tiller related deployment object in that namespace ?</p>

<p>Assuming your can operate your KOPS cluster with current kube context, you should have no problem with running helm client locally. You can always explicitly use <code>--kube-context</code> argument with helm command.</p>

<p><strong>Update:</strong></p>

<p>I think I know what causes your problem, Helm when installed via GitLab UI is using secured connection (SSL) between helm and tiller (proof <a href="https://gitlab.com/gitlab-org/gitlab-ce/blob/master/lib/gitlab/kubernetes/helm/init_command.rb#L47" rel="nofollow noreferrer">here</a>).</p>

<p>Knowing that, it means you should retrieve set of certificates from Secret object that is mounted on Tiller Pod: </p>

<pre><code>#The CA
ca.cert.pem
ca.key.pem
#The Helm client files
helm.cert.pem
helm.key.pem
#The Tiller server files
tiller.cert.pem
tiller.key.pem
</code></pre>

<p>and then connect helm client to tiller server using following command, as explained <a href="https://github.com/helm/helm/blob/master/docs/tiller_ssl.md" rel="nofollow noreferrer">here</a>:</p>

<pre><code>helm ls --tls --tls-ca-cert ca.cert.pem --tls-cert helm.cert.pem --tls-key helm.key.pem
</code></pre>
