我做了什么
我在Helm上安装了
curl https://raw.githubusercontent.com/kubernetes/helm/master/scripts/get | bash
helm init --history-max 200
遇到错误:
$HELM_HOME has been configured at /root/.helm.
Error: error installing: the server could not find the requested resource
Ubuntu版本:18.04
Kubernetes版本:1.16
头盔版本:
helm version
Client: &version.Version{SemVer:"v2.14.3", GitCommit:"0e7f3b6637f7af8fcfddb3d2941fcc7cbebb0085", GitTreeState:"clean"}
Error: could not find tiller
更新:
我尝试了@shawndodo的答案,但仍未安装分till器
helm init --service-account tiller --override spec.selector.matchLabels.'name'='tiller',spec.selector.matchLabels.'app'='helm'
--output yaml | sed 's@apiVersion: extensions/v1beta1@apiVersion: apps/v1@' | kubectl apply -f -
更新2:
helm init --history-max 200
在kubernetes 1.15版中工作
答案 0 :(得分:17)
我遇到了同样的问题,然后我在here上找到了此答复。
helm init --service-account tiller --override spec.selector.matchLabels.'name'='tiller',spec.selector.matchLabels.'app'='helm' --output yaml | sed 's@apiVersion: extensions/v1beta1@apiVersion: apps/v1@' | kubectl apply -f -
对我有用。您可以在本期中看到详细信息。
答案 1 :(得分:3)
不幸的是,正如我们在问题#6374上看到的那样,Helm无法使用Kubernetes的当前版本(1.16.0)
目前,我们可以通过选择较旧版本的Kubernetes来解决不兼容的问题。
要解决此问题,只需使用--kubernetes-version
参数(Ref.)启动minikube设置版本:
minikube delete
minikube start --kubernetes-version=1.15.4
也尝试使用以下命令重新启动Helm:
helm init
此后,您将可以毫无问题地使用头盔。
答案 2 :(得分:1)
因此,分till是您的Helm客户与之交谈的服务器端组件(由于各种安全问题,分iller将在Helm 3中删除)。运行helm init
时,Helm客户端会在您的kubectl当前设置要连接的集群上安装分er(请注意,要安装分er,您需要管理员访问集群,因为分er需要整个集群的管理员访问权限)。有许多不同的策略可用于分till:
答案 3 :(得分:1)
我遇到了相同的问题-与初始问题完全相同的配置: Ubuntu版本:18.04 Kubernetes版本:1.16
@shawndodo的回答对我不起作用。分er部署存在一些问题,并且分pod吊舱根本没有创建!
我尝试按照Helm文档-https://helm.sh/docs/using_helm/#from-canary-builds
中的说明从canary构建安装helm init --canary-image --upgrade
前几天没有奏效,但再次尝试(使用新的金丝雀版本),今天(20191005)奏效。
我现在是否使用canary build遇到其他问题还有待观察,但我克服了初始化问题...
答案 4 :(得分:1)
我尝试了所有有关手动更改api版本的建议,以解决此问题,这消除了错误,但事后未正常运行。因此,就我而言,我删除了最新的minicube安装,并使用以下命令在Mac上安装了一个旧版本,如有必要,将minikube-darwin-amd64更改为minikube-linux-amd64:
curl -LO https://storage.googleapis.com/minikube/releases/v1.3.0/minikube-darwin-amd64 \
&& sudo install minikube-darwin-amd64 /usr/local/bin/minikube
这将我的kubernetes降级到头盔目前支持的v1.15.2。
答案 5 :(得分:0)
在开始使用头盔之前,我们需要在群集中安装分till。 helm init
命令将分till安装在集群中,并且我们还需要在集群中为分er配置RBAC。 Here,您会发现您对k8s集群的需求所需的RBAC规则。
答案 6 :(得分:0)
helm版本:v2.14.3
minikube start --memory=16384 --cpus=4
helm init --service-account tiller --output yaml | sed 's@apiVersion: extensions/v1beta1@apiVersion: apps/v1@' | sed 's@ replicas: 1@ replicas: 1\n selector: {"matchLabels": {"app": "helm", "name": "tiller"}}@' | kubectl apply -f -
helm template istio-1.3.3/install/kubernetes/helm/istio-init --name istio-init --namespace istio-system | kubectl apply -f -
helm template istio-1.3.3/install/kubernetes/helm/istio --name istio --namespace istio-system | kubectl apply -f -
答案 7 :(得分:0)
尝试
apt-get upgrade helm
对我来说有效。
答案 8 :(得分:-1)
helm init --service-account tiller --override spec.selector.matchLabels.'name'='tiller',spec.selector.matchLabels.'app'='helm' --output yaml | sed 's@apiVersion: extensions/v1beta1@apiVersion: apps/v1@' | kubectl apply -f -