VMWare vMotion 后 k8s 内部网络异常

VMWare vMotion 后 k8s 内部网络异常

我们的k8s集群使用VMware VM作为工作节点。k8s版本为1.22.9,网络为flannel,kube-proxy模式为iptables。

一个带存储的工作节点通过 vMotion 移动。迁移完成后,无法访问工作节点上的 pod ip。无法建立与此工作节点的节点端口 30800 的 50% TCP 连接。发送 SYN 数据包后未收到响应。

nodeport svc为ingress-nginx,nodeport为30800。我无法访问该worker节点的30800端口,但是访问其他worker节点的30800端口是可以的。

故障持续约1小时,无需任何干预即可自动恢复。

我怀疑 vmotion 可能是导致故障的原因,但我们不知道具体原因。

vMotion过程中ping测试网络几乎没有中断,迁移后VM的22 10050端口也可以正常访问。怀疑是迁移导致kube-proxy或者flannel出现问题。

我在测试环境测试了一下,但是没有重复。

答案1

如果 vMotion 设置正确,您的 ingress-nginx 可能会自动修复或在集群内自动重新启动部署。

Kubernetes 根据活动探测重新部署或重启容器。这会在集群内发出信号,表明内部应用程序发生故障或无法继续运行,您可以查看更多详细信息这里

您可能需要检查是否有可用的日志来指示重新启动的 pod(例如 ingress-nginx),或者如果您真的怀疑 vMotion,那么可用的日志也应该可用。

相关内容