我们有一个小型私有 k8s 集群,直到今天早上一切正常,但截至今天早上,只有 kubectl 正在工作,没有流量通过。
我的意思是我可以启动新的部署,杀死它们等等,我可以看到它们已经启动并运行
但是当我想通过 http、amqp 等访问它们时,我不能。
我正在查看我们的 nginx 日志并试图转到主页,但 nginx 没有登录,浏览器中也没有加载任何内容,这意味着 nginx 没有收到流量。
我们使用 Weave 网络作为我们的 CNI。
我检查了 dns 日志并对其进行了测试,dns 正在运行。我不知道从哪里开始寻找解决这个问题,有什么建议吗?
更新
几个小时后问题几乎解决了,现在我可以访问我的应用程序,但我想问另一个与此非常相关的问题:
有没有办法我们可以检测到问题是因为网络还是来自集群网络(内部 k8s 网络)?我问这个是因为过去我遇到了 k8s dns 的问题,而这次我认为 k8s CNI 有问题。
更新 2
现在我在 weave 中看到了这个错误:
ERRO: 2019/09/27 11:10:03.358321 Captured frame from MAC (d2:14:2a:47:62:d9) to (02:01:5b:b9:8e:fd) associated with another peer 4a:8d:75:d7:59:ff(serflex-argus-2)
还有我的环境:
- Kubernetes 版本:
Client Version: version.Info{Major:"1", Minor:"14", GitVersion:"v1.14.1", GitCommit:"b7394102d6ef778017f2ca4046abbaa23b88c290", GitTreeState:"clean", BuildDate:"2019-04-08T17:11:31Z", GoVersion:"go1.12.1", Compiler:"gc", Platform:"linux/amd64"}
Server Version: version.Info{Major:"1", Minor:"15", GitVersion:"v1.15.3", GitCommit:"2d3c76f9091b6bec110a5e63777c332469e0cba2", GitTreeState:"clean", BuildDate:"2019-08-19T11:05:50Z", GoVersion:"go1.12.9", Compiler:"gc", Platform:"linux/amd64"}
云提供商或硬件配置:内部私有集群包含 5 个节点并使用 kubeadm 设置。
操作系统(例如:cat /etc/os-release):所有机器都运行 Ubuntu 18.04.3
- 内核(例如 uname -a):Linux k8s-master 4.15.0-62-generic #69-Ubuntu SMP Wed Sep 4 20:55:53 UTC 2019 x86_64 x86_64 x86_64 GNU/Linux
- 安装工具:kubeadm
- 网络插件和版本(
weave status
):
/home/weave # ./weave --local status
Version: 2.5.2 (up to date; next check at 2019/09/27 15:12:49)
Service: router
Protocol: weave 1..2
Name: 02:01:5b:b9:8e:fd(k8s-master)
Encryption: disabled
PeerDiscovery: enabled
Targets: 1
Connections: 5 (4 established, 1 failed)
Peers: 5 (with 20 established connections)
TrustedSubnets: none
Service: ipam
Status: ready
- 码头工人版本:
Docker version 19.03.2, build 6a30dfc