使用Kubeadm初始化掌舵机-Kubernetes

时间:2018-12-03 18:49:31

标签: docker kubernetes kubernetes-helm kubeadm

我正在使用Kubeadm创建一个由3个节点组成的集群

  • 一位大师
  • 两个工人

我正在使用编织作为网络吊舱

我的集群的状态是这样:

NAME         STATUS   ROLES    AGE   VERSION
darthvader   Ready    <none>   56m   v1.12.3
jarjar       Ready    master   60m   v1.12.3
palpatine    Ready    <none>   55m   v1.12.3

然后我尝试在群集中初始化头盔和分till器

  

helm init

结果是这样的:

$HELM_HOME has been configured at /home/ubuntu/.helm.

Tiller (the Helm server-side component) has been installed into your Kubernetes Cluster.

Please note: by default, Tiller is deployed with an insecure 'allow unauthenticated users' policy.
To prevent this, run `helm init` with the --tiller-tls-verify flag.
For more information on securing your installation see: https://docs.helm.sh/using_helm/#securing-your-helm-installation
Happy Helming!

我的豆荚的状态是这样:

NAME                             READY   STATUS              RESTARTS   AGE
coredns-576cbf47c7-8q6j7         1/1     Running             0          54m
coredns-576cbf47c7-kkvd8         1/1     Running             0          54m
etcd-jarjar                      1/1     Running             0          54m
kube-apiserver-jarjar            1/1     Running             0          54m
kube-controller-manager-jarjar   1/1     Running             0          53m
kube-proxy-2lwgd                 1/1     Running             0          49m
kube-proxy-jxwqq                 1/1     Running             0          54m
kube-proxy-mv7vh                 1/1     Running             0          50m
kube-scheduler-jarjar            1/1     Running             0          54m
tiller-deploy-845cffcd48-bqnht   0/1     ContainerCreating   0          12m
weave-net-5h5hw                  2/2     Running             0          51m
weave-net-jv68s                  2/2     Running             0          50m
weave-net-vsg2f                  2/2     Running             0          49m

问题在于分till卡在了ContainerCreating状态中。

我跑了

  

kubectl描述了pod tiller-deploy -n kube-system

要检查分till的状态,我发现了下一个错误:

创建Pod沙箱失败:rpc错误:代码= DeadlineExceeded desc =超出了上下文期限

Pod沙箱已更改,它将被杀死并重新创建。

如何成功创建分er部署吊舱?我不明白为什么 pod沙箱失败了。

2 个答案:

答案 0 :(得分:0)

您好像遇到了this

您的节点很可能由于网络连接问题而无法提取容器映像。像这样的图像:gcr.io/kubernetes-helm/tiller:v2.3.1或暂停容器gcr.io/google_containers/pause(如果您的其他Pod正在运行,则不太可能)。您可以尝试登录到节点(darthvader,palpatine)并使用以下命令进行手动调试:

$ docker pull gcr.io/kubernetes-helm/tiller:v2.3.1 <= Use the version on your tiller pod spec or deployment (tiller-deploy)
$ docker pull gcr.io/google_containers/pause

答案 1 :(得分:0)

也许问题出在您部署Tiller的方式上。我只是重新创建了这个,在GCP上使用Weave和Compute Engine实例没有任何问题。

您应该尝试使用其他安装头盔的方法,因为可能存在一些问题(您未提供有关如何安装头盔的详细信息)。

重置头盔并删除分er荚:

helm reset --force(如果分till仍然存在,请使用分{kubectl get all --all-namespaceskubectl delete rs/name检查副本集的名称) 现在,尝试使用其他方法部署头盔和分till。例如,通过脚本运行它: As explained here.

您还可以运行头盔without Tiller