我正在使用三个B / B-plus Rasberry Pi设置我的Kubernetes集群。 并关注Alex的博客[非常有用的资源]: https://gist.github.com/alexellis/fdbc90de7691a1b9edb545c17da2d975
我发现我的主人的CPU射击使主人pi几乎没有反应。重启有帮助。我的init命令:
sudo kubeadm init --token-ttl=0 --apiserver-advertise-address=<internal master ip>
我用:
安装了编织物kubectl apply -f \
"https://cloud.weave.works/k8s/net?k8s-version=$(kubectl version | base64 | tr -d '\n')"
现在我明白了:
待处理状态节点中的dns pod未准备就绪
不确定是什么导致它。
我的静态IP设置已完成。我正在使用我的家用路由器作为群集的路由器。跳过有线网络并通过wifi连接
答案 0 :(得分:0)
您选择的网络位于STATUS ContainerCreating
,导致kube-dns
处于待处理状态;它需要网络。
因此,下一步是弄清楚阻止这些容器创建的原因。查看docker和kubelet日志,看看是否有关于这些容器的任何错误消息。
答案 1 :(得分:0)
我遇到了类似的问题,我使用的是ASUS Tinker板而不是RPi,但它也是ARM架构,我也使用了Weave。 kube-dns没有出现的原因是Weave pods没有正常启动。您应该看看它们没有出现的原因 - 绝对检查编织吊舱上的日志(注意:此吊舱中有两个容器,AFAIR leftExpression.odataExpression
容器是您需要检查日志的容器)。
在我的情况下,问题是我的每个主板都具有相同的machine id,而Weave使用机器ID为每个节点上的虚拟接口生成MAC地址。 如果它变成了机器ID问题,请查看here以查看我是如何修复的。