swarm节点间通信问题-关闭checksum校验和

15 篇文章 0 订阅

现场还原

客户有n台redhat虚拟机,构建了一个swarm集群,服务起来后,发现不同节点间的服务,无法互相访问。经运维大佬排查是服务器的checksum校验是开启状态,关闭即可~

查看checksum状态

ethtool -k 内网网卡名称 | grep checksum

rx-checksumming: on
tx-checksumming: on				#  当前为 on   关闭后为 off
tx-checksum-ipv4: off [fixed]
tx-checksum-ip-generic: on 		#  当前为 on   关闭后为 off
tx-checksum-ipv6: off [fixed]
tx-checksum-fcoe-crc: off [fixed]
tx-checksum-sctp: off [fixed]

临时关闭

ethtool -K 内网网卡名称 tx-checksum-ip-generic off 

设置开机自动关闭(永久关闭)

vim /etc/systemd/system/docker-tx-checksum-off.service

填充以下内容[可以直接将提供的文件,复制到 /etc/systemd/system/ 下]

[Unit]
Description=Turn off checksum offload on eth0
After=network-online.target # 备注①
[Install]
WantedBy=network-online.target # 备注②
[Service]
Type=oneshot
ExecStart=/sbin/ethtool -K eth0 tx-checksum-ip-generic off

备注:上面的 备注① 和备注② 很重要,是这个脚本的开机启动顺序,如果配置的比network-online早,则该脚本先执行,就没意义了~

开机自启动,并启动服务

systemctl enable docker-tx-checksum-off.service
systemctl start docker-tx-checksum-off.service

  • 8
    点赞
  • 7
    收藏
    觉得还不错? 一键收藏
  • 0
    评论

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值