1

我是 Kubernetes 新手,正在尝试在本地机器上设置 Kubernetes 集群。裸机。没有 OpenStack,没有 Maas 什么的。

kubeadm init ...主节点上,kubeadm join ...在从节点上并在主节点上应用法兰绒之后,我从从节点收到消息:

运行时网络未准备好:NetworkReady=false 原因:NetworkPluginNotReady 消息:docker:网络插件未准备好:cni 配置未初始化

谁能告诉我我做错了什么或错过了任何步骤?法兰绒也应该应用于所有从节点吗?如果是,他们没有admin.conf...

非常感谢!

PS。所有节点都没有互联网访问权限。这意味着所有文件都必须通过 ssh 手动复制。

4

3 回答 3

1

我认为这个问题是由 kuberadm 首先 init coredns 而不是 init flannel 引起的,所以它抛出“网络插件未准备好:cni config uninitialized”。
解决方法:
1.通过安装flannel kubectl -n kube-system apply -f https://raw.githubusercontent.com/coreos/flannel/bc79dd1505b0c8681ece4de4c0d86c5cd2643275/Documentation/kube-flannel.yml
2.reset coredns pod
kubectl delete coredns-xx-xx
3.然后运行kubectl get pods看看是否有效。

如果您看到此错误“cni0”已经具有不同于 10.244.1.1/24 的 IP 地址。请按照以下步骤操作:

ifconfig  cni0 down
brctl delbr cni0
ip link delete flannel.1

如果您看到此错误“Back-off restarting failed container”,您可以通过以下方式获取日志

root@master:/home/moonx/yaml# kubectl logs coredns-86c58d9df4-x6m9w -n=kube-system
.:53
2019-01-22T08:19:38.255Z [INFO] CoreDNS-1.2.6
2019-01-22T08:19:38.255Z [INFO] linux/amd64, go1.11.2, 756749c
CoreDNS-1.2.6
linux/amd64, go1.11.2, 756749c
 [INFO] plugin/reload: Running configuration MD5 = f65c4821c8a9b7b5eb30fa4fbc167769
 [FATAL] plugin/loop: Forwarding loop detected in "." zone. Exiting. See https://coredns.io/plugins/loop#troubleshooting. Probe query: "HINFO 1599094102175870692.6819166615156126341.".

然后你可以在失败的节点上看到文件“/etc/resolv.conf”,如果nameserver是localhost会有一个loopback。改成:

#nameserver 127.0.1.1
nameserver 8.8.8.8
于 2019-01-22T08:45:36.177 回答
1

问题是缺少互联网连接。将 Docker 映像手动加载到工作节点后,它们似乎已准备就绪。

不幸的是,我没有找到有用的错误消息。

于 2018-11-12T14:31:24.390 回答
0

通常 flannel 被部署为 daemonset。在所有工作节点上的含义。

于 2018-11-12T11:23:21.213 回答