5

背景 我以集群模式安装了 kubernetes。
所有节点都已启动并运行
我想使用 jenkins-x 来简化部署。
现在 jenkins-x 使用 Helm 来完成这项工作;Helm 提出了客户端和服务器架构。

Helm 设置可以通过以下两种方式实现:-

使用詹金斯-x

jx install --username <username>

独立头盔

helm init


这有助于通过将其放入 Kubernetes 的 pod 中来设置其服务器(Tiller)。

什么问题

问题是,当我使用第一种方法时,它会安装 Tiller,然后通过说“Tiller 可用但未启动和运行”而失败。

Created ClusterRoleBinding tiller
retrying after error:existing tiller deployment found but not running, please check the kube-system namespace and resolve any issues

第二种方法也在类似的路径中失败

它也安装了 Tiller,但是当我尝试列出它时它没有找到 Tiller。

helm ls

错误:找不到分蘖

所以问题的本质是

它会安装 Tiller,但后来找不到。

helm init

警告:集群中已经安装了 Tiller。

helm ls

错误:找不到分蘖

4

2 回答 2

4

我只是继续安装 helm 和 Jx 没有问题。所以,我不知道如何解决您的问题,但您可以按如下方式安装它,并且应该可以工作。

安装 Helm:

$ wget https://kubernetes-helm.storage.googleapis.com/helm-v2.9.1-linux-amd64.tar.gz
$ tar xzvf helm-v2.9.1-linux-amd64.tar.gz
$ cd linux-amd64/
$ sudo cp helm /usr/local/bin/helm
$ helm init

安装 Jx

$ curl -L https://github.com/jenkins-x/jx/releases/download/v1.2.98/jx-linux-amd64.tar.gz | tar xzv 
$ sudo mv jx /usr/local/bin

制作 Tiller 集群管理员角色:

$ kubectl create clusterrolebinding tiller-cluster-admin \
     --clusterrole=cluster-admin \
     --serviceaccount=kube-system:default

检查它是否有效:

$ helm install --name prometheus stable/prometheus
$ helm ls

prometheus 1 Sun Jun 3 09:47:12 2018 已部署 prometheus-6.7.0 默认

于 2018-06-03T09:49:40.613 回答
2

由于资源或 RBAC,舵柄吊舱启动可能存在问题。试试这些命令:

kubectl get deploy -n kube-system
kubectl get node -n kube-system

这可能会提供更多线索。如果你能找到一个失败的分蘖荚

kubectl describe pod tiller-1234 -n kube-system
于 2018-08-01T05:12:25.813 回答