ESXi6.5上的Ubuntu虚机在远程SSH时宕机
情况是这样的, 有一个ESXi6.5上跑的Ubuntu虚机, 版本是18.04.1, 今天升级成18.04.2后, 就发现远程连接SSH不对劲, 在本地登录和操作都好好的, 只要远程SSH一连接, 服务器立马奔溃. 开始以为是SSHD配置问题, 修改各种参数没效果, 而系统/var/log/syslog里面也没有任何相关的错误信息. 后来实在没办法, 重装了, 还是不行. 怀疑是这个虚机的文件坏了, 把虚机删了, 再新建虚机重装, 发现还是这个问题.
但是在重建虚机安装后, 连接SSH时在本地的命令行看到了一个很有价值的错误输出
[84978.843130] kernel BUG at drivers/net/vmxnet3/vmxnet3_drv.c:1441! [84978.843167] invalid opcode: 0000 [#1] SMP [84978.843191] Modules linked in: vmw_vsock_vmci_transport(E) vsock(E) xt_conntrack(E) iptable_mangle(E) iptable_nat(E) nf_conntrack_ipv4(E) nf_defrag_ipv4(E) nf_nat_ipv4(E) nf_nat(E) iptable_filter(E) ip_tables(E) xt_LOG(E) nf_conntrack(E) coretemp(E) hwmon(E) kvm_intel(E) kvm(E) irqbypass(E) mousedev(E) hid_generic(E) aesni_intel(E) vmw_balloon(E) aes_x86_64(E) glue_helper(E) lrw(E) gf128mul(E) ablk_helper(E) evdev(E) cryptd(E) psmouse(E) usbhid(E) hid(E) nfit(E) intel_agp(E) vmw_vmci(E) battery(E) i2c_piix4(E) intel_gtt(E) acpi_cpufreq(E) tpm_tis(E) tpm_tis_core(E) tpm(E) ac(E) button(E) sch_fq_codel(E) crc32c_intel(E) uhci_hcd(E) ehci_pci(E) ehci_hcd(E) usbcore(E) usb_common(E) autofs4(E)
在VMWare的官网上查到了对应的bug和解决方案 https://kb.vmware.com/s/article/2151480
This issue occurs due to a bug in vmxnet3 vNIC backend which is part of the vmkernel. This issue occurs if all the below are true:
- Linux VM is running kernel >= 4.8
- HW version of VM is >=13
- ESXi version is 6.5
This is a known issue affecting VMware ESXi 6.5.
This issue is resolved in VMware ESXi 6.5 Update 1, available at VMware Downloads.
To work around this issue if you do not want to upgrade, use any one of these options.
1. Add the vmxnet3.rev.30 = FALSE parameter in the vmx file of virtual machine:
2. Power off the virtual machine.
3. Edit the vmx file and add the below parameter:
vmxnet3.rev.30 = FALSE
4. Power on the virtual machine.
If you do not want to power off the virtual machine, disable the receive data ring for each vmxnet3 vNIC on the VM by running this command:
ethtool -G ethX rx-mini 0
Note: Replace ethX with virtual machine interface name.
注: 对应的文件在 /vmfs/volumes/584f7xxx-7xx749b4-3461-x0... / 目录下, 找到对应的虚机文件目录, 在下面找到vmx文件, 在最后添加上面提到的参数
相关文章
- 在 Go 里用 CGO?这 7 个问题你要关注!
- 9款优秀的去中心化通讯软件 Matrix 的客户端
- 求职数据分析,项目经验该怎么写
- 在OKR中,我看到了数据驱动业务的未来
- 火山引擎云原生大数据在金融行业的实践
- OpenHarmony富设备移植指南(二)—从postmarketOS获取移植资源
- 《数据成熟度指数》报告:64%的企业领袖认为大多数员工“不懂数据”
- OpenHarmony 小型系统兼容性测试指南
- 肯睿中国(Cloudera):2023年企业数字战略三大趋势预测
- 适用于 Linux 的十大命令行游戏
- GNOME 截图工具的新旧截图方式
- System76 即将推出的 COSMIC 桌面正在酝酿大变化
- 2GB 内存 8GB 存储即可流畅运行,Windows 11 极致精简版系统 Tiny11 发布
- 迎接 ecode:一个即将推出的具有全新图形用户界面框架的现代、轻量级代码编辑器
- loongarch架构介绍(三)—地址翻译
- Go 语言怎么解决编译器错误“err is shadowed during return”?
- 敏捷:可能被开发人员遗忘的部分
- Denodo预测2023年数据管理和分析的未来
- 利用数据推动可持续发展
- 在 Vue3 中实现 React 原生 Hooks(useState、useEffect),深入理解 React Hooks 的