前言
使用此方法前n5105 pve下的虚拟机经常死机,一天一次或几天一次。使用如下方法后虚拟机已经连续正常工作3周,观察中。。。
修改源
/etc/apt/sources.list
deb https://mirrors.ustc.edu.cn/debian bullseye main contrib
deb https://mirrors.ustc.edu.cn/debian bullseye-updates main contrib
# security updates
deb https://mirrors.ustc.edu.cn/debian-security bullseye-security main contrib
deb http://ftp.us.debian.org/debian/ stretch main contrib non-free
deb http://security.debian.org/ stretch/updates main contrib non-free
deb-src http://security.debian.org/ buster/updates main contrib non-free
deb http://deb.debian.org/debian buster main contrib non-free
deb-src http://deb.debian.org/debian buster main contrib non-free
deb http://deb.debian.org/debian buster-backports main
/etc/apt/sources.list.d/pve-no-subscription.list
deb https://mirrors.ustc.edu.cn/proxmox/debian/pve bullseye pve-no-subscription
安装
# 更新
apt update
# 建议升级使用 6.2 内核
apt install pve-kernel-6.2
# 下载并安装最新的微码
apt install intel-microcode -y
# 必须要重启
reboot
查看Intel 的 CPU 微码版本至 0x24000024
dmesg | grep microcode
如果不是0x24000024,源码安装
# 创建存放微码的目录
mkdir /lib/firmware/intel-ucode
# 下载数据文件
wget https://github.com/intel/Intel-Linux-Processor-Microcode-Data-Files/archive/main.zip
# 解压文件
unzip main.zip
# 拷贝目录文件
cp -r ./Intel-Linux-Processor-Microcode-Data-Files-main/intel-ucode/* /lib/firmware/intel-ucode/
# 更新initramfs
update-initramfs -u
# 重启服务器
reboot
最终dmesg | grep microcode
如下
[ 0.000000] microcode: microcode updated early to revision 0x24000024, date = 2022-09-02
[ 0.144131] SRBDS: Vulnerable: No microcode
[ 1.261410] microcode: Microcode Update Driver: v2.2.
后续
最近使用pve安装了台服务器,服务器下面虚拟机ubuntu20.04直通RTX4090训练模型,每次半小时后就会死机
系统信息如下
# uname -a
Linux pve 5.15.102-1-pve #1 SMP PVE 5.15.102-1 (2023-03-14T13:48Z) x86_64 GNU/Linux
CPU信息如
# lscpu
Intel(R) Xeon(R) Gold 6330 CPU @ 2.00GHz
问题
kernel:[ 901.362809] watchdog: BUG: soft lockup - CPU#0 stuck for 805s! [kworker/0:3:946]
# tail -1 /proc/sys/kernel/watchdog_thresh
echo 30 > /proc/sys/kernel/watchdog_thresh
参考
https://www.moewah.com/archives/5302.html