这篇文章详细介绍了在嵌套虚拟化环境中安装和管理KVM的完整流程。核心内容总结如下:
一、 实验环境架构:嵌套虚拟化
文章首先解释了嵌套虚拟化的概念,即在一层虚拟化软件(第一层Hypervisor)创建的虚拟机中,再次启用虚拟化功能并安装第二层虚拟化软件。这是后续实验的基础架构。
文中提到了两种主要形式:
- VMware嵌套虚拟化:第一层为VMware系列产品,第二层可为KVM、ESXi等。
- KVM嵌套虚拟化:第一层为KVM,第二层可为KVM、ESXi等。
本实验采用第一种形式,使用 VMware Workstation Player 作为第一层虚拟化软件来创建实验环境。
二、 前期准备
- 物理机BIOS设置:确保服务器(如Dell PowerEdge R730)的BIOS中已启用虚拟化技术(如Intel VT-x或AMD-V)。
- 安装第一层虚拟化软件:在Windows宿主机上安装VMware Workstation Player,安装后会新增虚拟网络适配器(VMnet1、VMnet8)和相关系统服务。
三、 安装KVM(在虚拟机中)
这是在VMware创建的虚拟机(Guest)中安装CentOS和KVM组件的过程。
- 创建虚拟机:
使用CentOS 8 ISO镜像创建一台名为“KVM1”的虚拟机。
关键步骤:在虚拟机设置的“处理器”选项中,必须勾选“虚拟化Intel VT-x/EPT或AMD-V/RVI”,这样才能将物理CPU的虚拟化特性传递给此虚拟机,实现嵌套虚拟化。同时建议勾选“虚拟化CPU性能计数器”和“虚拟化IOMMU”。
建议移除不必要的设备(如USB控制器、声卡),并将网络连接模式设置为NAT。 - 安装CentOS 8并选择KVM组件:启动虚拟机,从ISO引导安装CentOS 8。
在“软件选择”阶段,必须选择“Virtualization Host”(虚拟化主机)环境,并在右侧额外勾选“Remote Management for Linux”和“Virtualization Platform”两个附加组件。这将会安装libvirt、qemu-kvm、virt-manager、cockpit等关键软件包。
配置网络、主机名、root密码等,完成系统安装。
四、 安装后配置与验证
- 验证虚拟化功能:使用命令
egrep ‘(vmx|svm)’ /proc/cpuinfo检查CPU是否支持虚拟化。
使用virt-host-validate命令进行更全面的验证。若提示IOMMU未启用,则需要通过修改内核启动参数(在/etc/default/grub中添加intel_iommu=on或amd_iommu=on)并更新grub配置来启用它。 - 安装图形化管理工具(可选):如果需要在CentOS虚拟机本地使用图形界面管理KVM,可以安装
virt-manager和virt-viewer,并可能需要安装图形桌面环境。 - 系统更新:建议执行
dnf update进行系统更新。
五、 KVM管理方式
文章介绍了多种管理KVM虚拟化主机的方法:
- 本地管理:在CentOS的图形桌面中使用
virt-manager(虚拟机管理器)。 - 远程管理:SSH:使用PuTTY等客户端通过命令行远程管理。
VNC:安装配置TigerVNC Server,使用VNC Viewer远程访问完整桌面。
XRDP:安装配置XRDP服务,使用Windows远程桌面客户端访问。
X-Windows over SSH:在Windows上运行Xming作为X服务器,通过SSH隧道远程运行virt-manager等图形程序,并将界面显示在Windows上。
Cockpit网页管理:通过浏览器访问9090端口,使用Cockpit提供的Web界面进行系统和服务(包括虚拟机)的集中管理。这是最直观的远程管理方式之一。
总结
本文提供了一个从零开始、在个人电脑上利用VMware嵌套虚拟化技术搭建KVM学习环境的详细指南。流程涵盖:环境原理理解、底层虚拟化软件安装、CentOS虚拟机创建与关键配置、KVM组件安装选择、功能验证以及最终通过多种方式进行本地或远程管理。重点在于正确配置嵌套虚拟化支持和在安装CentOS时选择正确的虚拟化软件包组。
