当前位置:网站首页>GBase 常见网络问题及排查方法

GBase 常见网络问题及排查方法

2022-06-13 08:42:00 龘辰

网卡降速

集群部分节点性能差,查看 nmon 等看到外发和收取速度明显低于其它节点。再查看 ethtools 网卡, 看到网速不是正常的千兆或万兆。比如万兆网,显示千兆,甚至百兆。这种情况一般是网线或者网卡不稳定。

解决方案

可以尝试重启网卡或者换其它正常的网口以及维修或更换网卡、检测网线。

SSH 不通

集群部分节点性能差,查看 nmon 等看到外发和收取速度明显低于其它节点。再查看 ethtools 网卡, 看到网速不是正常的千兆或万兆。比如万兆网,显示千兆,甚至百兆。这种情况一般是网线或者网卡不稳定。

集群安装、升级、扩容、节点替换等操作过程中,出现网络 ssh 不通等问题。如 tcp连接数不够的情况下,/var/log/message 日志中有报错:TCP: time wait bucket table overflow。

这一般是如下情况:

  • 操作系统配置禁止了 root 等用户的远程 ssh 操作;
  • ssh 配置端口不统一或配置文件修改不彻底;
  • ssh 连接数已满。

解决方案

可以通过调整操作系统的 ssh 用户访问策略,ssh 端口、连接数等配置。如修改 tcp_max_tw_buckets 参数,配置为 60000,保证 tcp 连接数够用。

ipv6 协议 chercksum 异常

使用 ipv6 安装集群,运行一段时间后集群不可用。查看/var/log/messages 日志,有UDP checksum 字样,如:kernel:IPV6:udp checksum is 0 for ...。

这是因为使用 Ipv6 协议部署集群,发送 UDP 包时必须计算数据包的 checksum,tx-checksuming 参数开启时,由网卡计算;tx-checksuming 参数关闭时,由内核计算。

当数据包的 checksum 值为 0x0000 时,需要转换成 0xffff 再发送。当接收端收到checksum 值为 0x0000 的 UDP 数据包时,内核将包丢弃。

不同节点 corosync 拿到 token 才能发送数据包,当 token 包的 checksum 值为 0x0000时,会被目标端内核丢弃,目标端 corosync 无法收到 token 包,达到设置的默认时间 60 秒后,corosync 认为有节点离开,重新同步,在同步期间,集群不对外提供服务,导致用户刷表操作报错。

该问题只在个别 VMware 虚拟机上出现过,偶发。

解决方案

可以使用ethtool -K < 网 卡 名 称 > tx off , 如 ethtool -K em1 tx off 关 闭 网 卡tx-checksumming 校验参数解决。 

原网站

版权声明
本文为[龘辰]所创,转载请带上原文链接,感谢
https://blog.csdn.net/Mr_dar/article/details/124929211