更新时间:2022-03-11 GMT+08:00
分享

故障排除

问题一:K8s部署Calico后显示Calico-node处于Running但一直无法Ready

现象描述

K8S部署Calico后显示Calico-node处于Running但一直无法Ready。

可能原因

如下图所示,查看Docker logs发现一直在进行dataplane updates操作,resync同步始终无法建立连接;此时在Master节点上使用calicoctl工具查询node信息,发现有部分节点存在网络双平面,而calico组件部署时一般默认采用AUTO_DETECTION来发现BGP网络接口,在这些节点选错了对外网络接口,因此导致了网络无法互通。

处理步骤

建议采用nodeSelector + IP_AUTODETECTION_METHOD结合的方式,区分这些节点,来实现BGP网络接口的手动识别。

问题二:K8s部署Calico后运行业务节点网络中断

现象描述

K8S部署Calico后运行业务节点网络中断。

可能原因

排查环境网络平面是否有采用1822网卡。

Calico组件默认使用IPIP(IP Tunnel模式),而1822网卡固件版本不支持IP隧道报文的校验和卸载功能,以及TSO功能;如果网卡使能发送方向校验和卸载功能,以及TSO功能时,如果系统发送IP隧道报文,会导致网卡功能性异常,导致网卡硬件不从主机侧取包发往网络侧,驱动侧报TX timeout。

具体体现为业务网络中断,与网关断开连接,只有重启才能够恢复正常使用。

处理步骤

建议首先排查网卡,若为1822网卡,建议使用ethtool关闭TX方向校验和卸载。

1
ethtool -K <eth-port> tx off
分享:

    相关文档

    相关产品

关闭导读