我们在 K8s 环境中部署 Jenkins,使用 calico 网络插件有 1 个主节点和 4 个工作节点,pod 是在 Jenkins 中运行 Job 时创建的,但问题是主机名无法解析,Jenkins 中没有错误日志,在检查 pod 时,主节点上的 calico pod 已关闭,不确定这是否是导致上述问题的原因。
[root@kmaster-1 ~]# kubectl get pod calico-node-lvvx4 -n kube-system -o wide
NAME READY STATUS RESTARTS AGE IP NODE NOMINATED NODE READINESS GATES
calico-node-lvvx4 0/1 Running 9 9d x0.x1.x5.x6 kmaster-1.b.x.x.com <none> <none>
Events:
Type Reason Age From Message
---- ------ ---- ---- -------
Warning Unhealthy 107s (x34333 over 3d23h) kubelet, kmaster-1.b.x.x.com (combined from similar events): Readiness probe failed: calico/node is not ready: BIRD is not ready: BGP not established with 10.x1.2x.x23,10.x1.x7.x53,10.x1.1x.1x5,10.x1.2x.1x22020-04-12 08:40:48.567 [INFO][27813] health.go 156: Number of node(s) with BGP peering established = 0
10.x1.2x.x23,10.x1.x7.x53,10.x1.1x.1x5,10.x1.2x.1x2 是worker pod的IP,它们相互连接,因为netstat显示BGP已建立,但不是与主人。主机上的 179 端口是开放的,不知道为什么 BGP 对等不建立,请指教。