使用`helm init`初始化分er时找不到命令错误

时间:2019-04-16 13:57:33

标签: kubernetes kubernetes-helm

我正在尝试使用带有Kubernetes Helm图表的Kubernetes集群来定义Kubernetes服务和部署。我使用以下命令在一台计算机上安装了Helm客户端,

sudo snap install helm --classic

然后我访问了Kubernetes集群主节点并尝试运行helm init命令。但是当我运行时,我得到了错误,

helm: command not found

当我检查Kubernetes集群安装时,kubectl命令正在正确运行。

对于“找不到命令”,我该如何解决Kubernetes Helm Tiller初始化问题?

3 个答案:

答案 0 :(得分:5)

您需要在安装helm客户端的同一台计算机上运行helm init。这会将分till安装在您在kubeconfig上配置的kubernetes集群中。

Helm有两个部分,即客户端(称为helm)和服务器(称为tiller)。

Tiller在大多数情况下在kubernetes集群上运行并管理发行版(您部署的charts)。

Helm在本地计算机,CI / CD或您想要的位置上运行。

Helm还用于将tiller部署到您的K8S集群中。执行helm init时会发生这种情况,默认情况下,它将在tiller-deploy名称空间上创建一个名为kube-system的kubernetes部署。 tiller客户端将使用此helm部署作为服务器。

Helm通过检查kubeconfig(tiller)文件来自动发现~/.kube/config的安装位置,默认情况下它将在其中使用所选上下文。

您始终在本地计算机或CI / CD中使用helm cli,而从Kubernetes主设备中不使用它。

答案 1 :(得分:0)

  1. 检查头盔是否已安装sudo snap install helm

如果已安装,则应具有以下内容:

snap "helm" is already installed, see 'snap help refresh'
  1. 如果已安装头盔,则在文件〜/ .profile的末尾添加以下内容:
# Addition of snap packages to PATH
PATH="$PATH:/snap/bin/"
  1. 注销/登录以将更改更新到~/.profile
  2. 通过测试helm
  3. 来检查helm version命令是否有效

如果仍然遇到Command not found消息,请转到“偏好设置”>“配置文件”>“命令”,然后检查Run command as a login shell(如果未选中)。

答案 2 :(得分:0)

在Kubernetes 1.6中,默认情况下启用了RBAC,这使头盔更难于无耻地运行分till,因此根据社区分er的决定从Helm 3开始删除了分till。结帐more details

的官方博客