将基础操作系统升级到 ubuntu20.04 ConnectX-4 卡后,K8s nodeLocalDns pod 连接 coreDns 超时

将基础操作系统升级到 ubuntu20.04 ConnectX-4 卡后,K8s nodeLocalDns pod 连接 coreDns 超时

团队,

我在 k8s 工作节点上安装了 Mellanox Nic ConnectX-4,并在其上托管了一个 nodeLocal dns pod。nodeLocalDns pod 在尝试连接到 k8s 集群上的 coreDns 服务时超时。

在 Ubuntu18 上同样有效。

版本失败

k8s v1.13.5 Baremetal
Ubuntu 20.04.4 LTS   
kernel 5.4.0-100-generic   
docker://19.3.13

下面效果很好。

 k8s v1.13.5 Baremetal
 Ubuntu 18.04.2 LTS   
 kernel  4.15.0-45-generic   
 docker://18.9.2

有什么提示可以让我调试这个吗?我在日志中找不到任何线索。

错误来自 nodeLocalDNS pod日志。

A: dial tcp 100.60.3.4:53: i/o timeout

上面是 coreDns 服务,可以从 nodeLocalDns pod ping 通,但无法连接到 dns 端口。

答案1

这是一个互操作性问题,我们通过禁用节点 NIC 上的校验和来修复该问题。执行以下命令后,pod 网络开始工作。这仅适用于 mellanix ConnectX-4。ConnectX-5 未出现同样的情况

ethtool -K ens1 rx on tx off

相关内容