智简魔方文档

G.kvm嵌套虚拟化关闭

本文整理智简魔方云平台中“G.kvm 嵌套虚拟化关闭”相关的配置、操作或问题处理内容,供管理员和运维人员按原文步骤查阅与执行。

一、操作步骤(请在宿主机上操作)

  1. 操作前必须先在面板或命令关闭节点运行的所有虚拟机

面板关闭方法:

面板关闭方法界面截图

命令行关闭方法:

 virsh list --all #查看当前运行中的所有VM
 virsh shutdown 1 (对应的虚拟机序号) 

 #例如查出来正在运行的虚拟机序号为2,则执行:virsh shutdown 2
  1. 检查 nested virtualization 是否开启( 输出为 1 代表已开启嵌套虚拟化,输出为 0 代表已关闭嵌套虚拟化,则不需要进行后续操作)
# Intel
cat /sys/module/kvm_intel/parameters/nested 

# AMD
cat /sys/module/kvm_amd/parameters/nested
  1. 写入持久化配置(若缺少重启后 nested 会自动变回开启)
cat > /etc/modprobe.d/kvm-nested.conf <<'EOF'
options kvm_intel nested=0
options kvm_amd nested=0
EOF
  1. 确认写入成功
cat /etc/modprobe.d/kvm-nested.conf

#查看输出是否一致
# Intel
modprobe -r kvm_intel
modprobe kvm_intel nested=0

# AMD
modprobe -r kvm_amd
modprobe kvm_amd nested=0
  1. 重启宿主机
reboot
  1. 验证生效
cat /sys/module/kvm_intel/parameters/nested
如果输出为0则代表已关闭嵌套虚拟化

二、关于为什么不采用在线更新内核的方式处理

  1. 目前 CentOS 7.9 和 CentOS Stream 8 官方均已停止维护,官方源不再持续提供新的内核安全更新,因此无法通过常规在线更新方式可靠获取对应漏洞的修复版本。
  2. 如果自行编译并替换内核,虽然理论上可以解决问题,但会带来兼容性和稳定性风险。例如可能影响虚拟化组件、驱动模块、网络配置以及现有业务运行。对于正在使用中的生产节点,直接更换自编译内核存在不可控风险。
  3. 因此,当前建议优先通过关闭嵌套虚拟化进行风险缓解;如业务必须使用嵌套虚拟化,建议更换或升级至仍在维护、且已包含相关安全修复的系统版本。