# Error: could not find tiller: the server could not find the requested resource

- **ID:** `kubernetes/helm-install-tiller-not-found`
- **Domain:** kubernetes
- **Category:** install_error
- **Verification:** ai_generated
- **Fix Rate:** 90%

## Root Cause

Helm v2 client is trying to connect to Tiller server which is not installed in the cluster.

## Version Compatibility

| Version | Status | Introduced | Deprecated |
|---------|--------|------------|------------|
| Helm v2.16 | active | — | — |
| Helm v2.17 | active | — | — |
| Kubernetes v1.16 | active | — | — |

## Workarounds

1. **Install Tiller in cluster: `kubectl create serviceaccount --namespace kube-system tiller && kubectl create clusterrolebinding tiller --clusterrole=cluster-admin --serviceaccount=kube-system:tiller && helm init --service-account tiller`.** (90% success)
   ```
   Install Tiller in cluster: `kubectl create serviceaccount --namespace kube-system tiller && kubectl create clusterrolebinding tiller --clusterrole=cluster-admin --serviceaccount=kube-system:tiller && helm init --service-account tiller`.
   ```
2. **Upgrade to Helm v3 which removes Tiller dependency: `brew upgrade helm` or download latest binary, then migrate releases: `helm 2to3 convert <release>`.** (95% success)
   ```
   Upgrade to Helm v3 which removes Tiller dependency: `brew upgrade helm` or download latest binary, then migrate releases: `helm 2to3 convert <release>`.
   ```
3. **If using Helm v2, check Tiller pod: `kubectl get pods -n kube-system | grep tiller`. If missing, deploy with `helm init`.** (85% success)
   ```
   If using Helm v2, check Tiller pod: `kubectl get pods -n kube-system | grep tiller`. If missing, deploy with `helm init`.
   ```

## Dead Ends

- **Reinstall Helm client via brew/apt without upgrading** — Client version doesn't matter; Tiller must be deployed separately. (90% fail)
- **Set HELM_HOST environment variable to a random IP** — Tiller must be a running pod in the cluster, not an arbitrary IP. (95% fail)
- **Use `helm init --client-only` to install client only** — Client-only mode does not deploy Tiller; you still need Tiller running. (90% fail)
