Proxmox VE主机随机冻结问题

发布于 2023-01-19  765 次阅读


问题描述

随机性的主机冻结,网络中断(ping,ssh不通,路由器不显示有该客户端),屏幕输出中断,syslog没有异常信息,可能是内核出了问题,没有打印任何的错误日志。

尝试性解决

屏幕保留着一些旧的日志,显示

 [118943.768245] e1000e 0000:00:19.0 eno1: Detected Hardware Unit Hang:
 [118943.768245]   TDH                  <45>
 [118943.768245]   TDT                  <50>
 [118943.768245]   next_to_use          <50>
 [118943.768245]   next_to_clean        <43>
 [118943.768245] buffer_info[next_to_clean]:
 [118943.768245]   time_stamp           <101c48d04>
 [118943.768245]   next_to_watch        <45>
 [118943.768245]   jiffies              <101c4970f>
 [118943.768245]   next_to_watch.status <0>
 [118943.768245] MAC Status             <80283>
 [118943.768245] PHY Status             <792d>
 [118943.768245] PHY 1000BASE-T Status  <7800>
 [118943.768245] PHY Extended Status    <3000>
 [118943.768245] PCI Status             <10>
 [118944.780015] e1000e 0000:00:19.0 eno1: Reset adapter unexpectedly

初步判断可能是网卡驱动问题导致的断网(后面发现冻结期间,所有的任务均无法执行,因此不是简单的断网),经由https://forum.proxmox.com/threads/e1000-driver-hang.58284/该帖子中的回答解决了这个网卡驱动报错,问题在于intel网卡的e1000e驱动在网卡不禁用tso时候会出现问题,解决步骤

#安装 ethtool
apt install ethtool
#设置网卡启动后执行指令
vim /etc/network/interfaces

在对应intel网卡的虚拟网桥接口下配置

iface vmbr0 inet static
        address 192.168.123.100/24
        gateway 192.168.123.1
        bridge-ports eno1
        bridge-stp off
        bridge-fd 0
        #增加这一行
        post-up /usr/sbin/ethtool -K eno1 gso off tso off 

之后手动运行一遍该指令

ethtool -K eno1 gso off tso off 

至此网卡随机hang的问题解决,但是随机冻结的问题并没有解决,在https://forum.proxmox.com搜索intel、crash、freeze关键词后得到几个解决方案:

  • 关闭所有虚拟机的内存ballooning选项
  • 打开所有虚拟机CPU设置中的NUMA选项
  • 所有虚拟机的CPU类型设置为Host
  • 增加宿主机的启动参数,编辑grub引导文件并在启动参数上增加pcie_aspm=off intel_idle.max_cstate=1控制pcie的节能选项以及cpu的节能选项

目前仍然在测试稳定性,因为这个冻结问题出现的周期是随机的,可能是一天、一周或者一个月。

2023.4更新

确认为四条内存中一条内存的兼容性问题


面向ACG编程