You need to enable JavaScript to run this app.
优惠活动
大模型
产品
解决方案
定价
更多

搭载KVM与Docker的Rocky Linux 8运行数天后无响应求助

排查Rocky Linux 8主机无响应及KVM虚拟机MCE硬件错误问题

问题背景

在Intel(R) Core(TM) i5-3570K + 32GB DDR3硬件上部署了支持KVM与Docker的Rocky Linux 8系统,配置桥接网络、2台KVM虚拟机及若干Docker容器。系统初始运行正常,数天后突然无响应:主机仍在运行,但键鼠无响应、显示器无输出。

已执行操作:

  • 启用持久化journalctl日志,未发现系统崩溃相关有效信息,仅能看到Docker网桥创建的常规日志
  • 多次重启系统
  • 分别通过NetworkManager和network-scripts配置桥接网络,问题依旧
  • 启用kdump后,捕获到一台KVM虚拟机崩溃日志,显示MCE硬件错误:内部奇偶校验错误

此前在CentOS 7上运行相同配置一切正常,需排查问题根源。


一、硬件层面排查(优先,MCE错误指向硬件故障)

1. CPU与内存检测

  • 直接读取MCE错误详情:mcelog --daemon=off --no-syslog,重点关注错误关联的CPU核心、内存地址段
  • 内存稳定性测试:在单用户模式下运行memtester 16G 5(根据空闲内存调整参数),或使用BIOS内置的内存诊断工具
  • CPU散热检查:执行sensors查看CPU温度,清理散热器灰尘、重新涂抹硅脂,排除过热导致的硬件异常

2. 存储与PCI设备检查

  • 磁盘健康检测:smartctl -a /dev/sda(替换为系统盘路径),查看SMART告警、坏道信息
  • PCI设备排查:lspci -v查看虚拟化相关设备(如VT-d/IO-MMU)状态,重新插拔网卡等PCI设备,排除接触不良问题

二、软件层面排查

1. KVM虚拟化配置优化

  • 调整虚拟机CPU模式:确保使用host-passthrough或host-model模式,避免指令集兼容性问题。编辑虚拟机XML配置:
    <cpu mode='host-passthrough' check='none'/>
    
  • 优化NUMA配置(若硬件不支持则禁用):在虚拟机XML中添加:
    <numa>
      <cell id='0' cpus='0-3' memory='16384' unit='MiB'/>
    </numa>
    
  • 更新KVM组件:dnf update qemu-kvm libvirt virt-manager,修复已知虚拟化兼容性bug

2. 内核与系统参数调整

  • 切换长期支持内核:dnf install kernel-lt,重启后选择该内核启动,排查默认内核兼容性问题
  • 添加虚拟化相关内核参数:在/etc/sysctl.conf中写入:
    vm.nr_hugepages = 1024
    kvm.ignore_msrs = 1
    
    执行sysctl -p使参数生效,缓解CPU指令集冲突
  • 规避Docker与KVM网络冲突:确保Docker网桥与KVM桥接网络网段不重叠,修改/etc/docker/daemon.json:
    {
      "bip": "192.168.100.1/24"
    }
    
    重启Docker服务:systemctl restart docker

3. 日志深度分析

  • 分析kdump生成的vmcore文件:使用crash工具加载崩溃镜像:
    crash /usr/lib/debug/lib/modules/$(uname -r)/vmlinux /var/crash/127.0.0.1-2024-xx-xx-xx:xx:xx/vmcore
    
    执行log查看崩溃时内核日志,bt查看调用栈,定位崩溃模块
  • 实时监控内核日志:journalctl -f -k,重点追踪kvm、mce相关日志,捕获问题发生时的细节

内容的提问来源于stack exchange,提问作者Ivan Vlaho Vlašić

相关产品推荐
方舟 Agent Plan

超全模态模型 × Harness 升级,最新支持 Deepseek-V4.1-Flash、GLM-5.3 系列、Doubao-Seedream-5.0-pro、Kimi-K3 (部分), 限时 9.9 元起

最近更新时间:2026.07.28 19:38:10