我们正在使用docker ee
Docker Enterprise 2.1
18.09.0-beta3
我在一个节点上安装了UCP,并向其添加了工作节点。UCP将节点错误显示为:"Calico-node pod is unhealthy: unexpected calico-node pod condition Ready".
当我在节点上执行kubectl时,它显示如下
kubectl get pods --all-namespaces
kube-system calico-kube-controllers-549679 1/1 Running 2 5h
kube-system calico-node-6fk4j 1/2 CrashLoopBackOff 85 5h
kube-system calico-node-6xldl 1/2 Running 78 5h
播客描述显示
kubectl describe pod calico-node-6fk4j -n kube-system:
Warning Unhealthy 17m (x210 over 2h) kubelet, tclasapid004.tiffco.net Liveness probe failed: Get http://localhost:9099/liveness: dial tcp 127.0.0.1:9099: connect: connection refused
Warning BackOff 7m (x410 over 2h) kubelet, tclasapid004.tiffco.net Back-off restarting failed container
Warning Unhealthy 2m (x231 over 2h) kubelet, tclasapid004.tiffco.net Readiness probe failed: calico/node is not ready: felix is not ready: Get http://localhost:9099/readiness: net/http: request canceled while waiting for connection (Client.Timeout exceeded while awaiting headers)
我们无法在出现此错误的情况下运行少量操作(Calico节点(。请在这里帮忙。
感谢您的帮助
您在该主机上有多个接口吗?您需要设置自动检测设置。
相关问题:
https://github.com/projectcalico/calico/issues/2042
您需要设置自动检测以使用另一种适合您的方法网络例如,在印花棉布上添加以下内容:
- name: IP_AUTODETECTION_METHOD
value: "interface=eth.*"
请仔细研究这个问题,有多种原因和许多解决方案:
我终于解决了这个问题。感谢@tmjd的提示。我在每个Ubuntu虚拟机上都有两个接口,enp0s3和enp0s8。这个enp0s8接口在所有三个虚拟机上都具有相同的IP,因此使用了calico从属服务器上的节点抱怨IP冲突。解决这个问题我编辑了/etc/network/interfaces文件并分配静态IP到enpos8接口。这解决了问题。