# 错误：找不到 tiller：服务器找不到请求的资源

- **ID:** `kubernetes/helm-install-tiller-not-found`
- **领域:** kubernetes
- **类别:** install_error
- **验证级别:** ai_generated
- **修复率:** 90%

## 根因

Helm v2 客户端尝试连接到集群中未安装的 Tiller 服务器。

## 版本兼容性

| 版本 | 状态 | 引入 | 弃用 |
|------|------|------|------|
| Helm v2.16 | active | — | — |
| Helm v2.17 | active | — | — |
| Kubernetes v1.16 | active | — | — |

## 解决方案

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`.
   ```
2. ```
   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`.
   ```

## 无效尝试

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