我正在使用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沙箱失败了。
答案 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-namespaces
和kubectl delete rs/name
检查副本集的名称)
现在,尝试使用其他方法部署头盔和分till。例如,通过脚本运行它:
As explained here.
您还可以运行头盔without Tiller。