为什么创建kubernetes集群后/ var / lib / cni / networks为null?

时间:2020-08-04 09:18:48

标签: kubernetes cni

使用Calico,CoreDNS安装了kubernetes集群。

检查一条CoreDNS的事件消息是否得到

Readiness probe failed: HTTP probe failed with statuscode: 503

/var/lib/cni/networks/目录下没有任何内容。为什么?如何解决?

即使所有豆荚的状态都为“运行中”,但仍担心其健康状况。

日志

# kubectl logs coredns-1308140hfw -n kube-system
[INFO] plugin/ready: Still waiting on: "kubernetes"
.:53
[INFO] plugin/reload: Running configuration MD5 = 20328084ha6966e76816bcd928foa
CoreDNS-1.7.0
linux/amd64, go1.14.4, f59c03d
[INFO] plugin/ready: Still waiting on: "kubernetes"
[INFO] plugin/ready: Still waiting on: "kubernetes"
I0804 08:18:03.874045       1 trace.go:116] Trace[336122540]: "Reflector ListAndWatch" name:pkg/mod/k8s.io/client-go@v0.18.3/tools/cache/reflector.go:125 (started: 2020-08-04 08:17:33.872753993 +0000 UTC m=+0.038838328) (total time: 30.001059939s):
Trace[336122540]: [30.001059939s] [30.001059939s] END
E0804 08:18:03.874108       1 reflector.go:178] pkg/mod/k8s.io/client-go@v0.18.3/tools/cache/reflector.go:125: Failed to list *v1.Endpoints: Get "https://[IPv6]:443/api/v1/endpoints?limit=500&resourceVersion=0": dial tcp [IPv6]:443: i/o timeout
I0804 08:18:03.874047       1 trace.go:116] Trace[208240456]: "Reflector ListAndWatch" name:pkg/mod/k8s.io/client-go@v0.18.3/tools/cache/reflector.go:125 (started: 2020-08-04 08:17:33.872755558 +0000 UTC m=+0.038839930) (total time: 30.001213767s):
Trace[208240456]: [30.001213767s] [30.001213767s] END
E0804 08:18:03.874137       1 reflector.go:178] pkg/mod/k8s.io/client-go@v0.18.3/tools/cache/reflector.go:125: Failed to list *v1.Namespace: Get "https://[IPv6]:443/api/v1/namespaces?limit=500&resourceVersion=0": dial tcp [IPv6]:443: i/o timeout
I0804 08:18:03.874214       1 trace.go:116] Trace[1106410694]: "Reflector ListAndWatch" name:pkg/mod/k8s.io/client-go@v0.18.3/tools/cache/reflector.go:125 (started: 2020-08-04 08:17:33.872753715 +0000 UTC m=+0.038838086) (total time: 30.001438405s):
Trace[1106410694]: [30.001438405s] [30.001438405s] END
E0804 08:18:03.874248       1 reflector.go:178] pkg/mod/k8s.io/client-go@v0.18.3/tools/cache/reflector.go:125: Failed to list *v1.Service: Get "https://[IPv6]:443/api/v1/services?limit=500&resourceVersion=0": dial tcp [IPv6]:443: i/o timeout

1 个答案:

答案 0 :(得分:1)

准备情况调查的工作原理是什么?

有时,应用程序暂时无法提供流量。对于 例如,应用程序可能需要加载大数据或配置 文件在启动过程中。在这种情况下,您不想杀死 应用程序,但您也不想发送请求。 Kubernetes 提供了准备情况探针以检测和缓解这些情况。一种 带有未报告容器准备就绪的容器的容器未收到 Kubernetes服务访问流量。

启动Pod时,可以将Kubernetes配置为等待经过可配置的时间后再执行首次就绪检查。之后,它会定期调用该探针,并根据就绪探针的结果进行操作。如果窗格报告尚未准备就绪,则会将其从服务中删除。如果吊舱再次准备就绪,则重新添加吊舱。

这意味着在您的情况下,您的coreDNS吊舱未完全运行,但是Kubernetes已经开始发送探测以检查其readiness

由于有了这些探测,当您有几个副本时,Kubernetes只会将流量定向到运行状况良好的(通过成功的探测)。

PS。我的/var/lib/cni/networks/目录也为空。