基于内核的虚拟机(KVM)是专门为Linux系统开发的虚拟化技术,它是Type 1虚拟化,因此在性能方面优于Type 2。使用KVM,用户可以在单个物理主机上运行多个虚拟机。
虽然我们可以在任何Linux系统上设置KVM,不过这里小编主要介绍如何在基于RHEL的AlmaLinux EL9和Rocky Linux EL9上安装KVM。
第1步:检查硬件虚拟化支持
了解BIOS/UEFI设置中是否启用虚拟化非常重要。尽管在所有现代系统上您都会发现虚拟化默认处于激活状态,但是为了确认这一点,可以在Almalinux或Rocky终端中运行给定的命令。
给定命令的输出必须大于“0”,这意味着它可以是1或任何其它数字来表示硬件虚拟化支持已启用,并且可以安装KVM来使用它。
egrep -c '(vmx|svm)' /proc/cpuinfo
第2步:更新包存储库缓存
在进一步安装任何与KVM相关的软件包之前,首先运行系统更新命令,该命令将刷新系统存储库的软件包索引缓存,并在有可用更新时进行安装。
sudo dnf update
第3步:安装KVM软件包
当我们安装软件包以获取KVM和访问虚拟机所需的其它工具时,在我们的Almalinux内核中启用虚拟化支持的模块将位于我们的系统上。最好的部分是我们不需要为其添加任何第三方存储库,只需使用给定的命令,其余的将由DNF包管理器处理:
sudo dnf install qemu-kvm libvirt bridge-utils libguestfs-tools libvirt-client virt-top virt-install
第4步:启动并启用libvirtd服务
运行上一步命令后,将拥有在Almalinux或Rocky上运行KVM所需的所有工具和软件包,但是,仍然剩下一件事,即启动“libvirtd”服务。它是我们安装KVM后在主机系统上获得的一项服务,它的主要目的是管理虚拟化。默认情况下,系统不会激活它,因此使用给定的命令启动并启用“libvirtd”服务。
sudo systemctl enable --now libvirtd
检查服务使用状态:
sudo systemctl status libvirtd --no-pager -l
另外,请向当前用户提供必要的权限:
sudo chown -R $USER:libvirt /var/lib/libvirt/
第5步:验证KVM安装
Alamlinux上的KVM安装已成功完成,但为了确定它以及它是否正常工作,可以运行给定的命令:
virsh list --all
注意:上面给出的命令将列出迄今为止创建的所有VM,但由于我们最近安装了KVM并且没有创建任机器,因此输出将为空。
第6步:通过GUI创建虚拟机
现在,根据你的偏好,可以选择图形用户界面或命令行来创建运行KVM的虚拟机。不过,本文小编介绍的是图形界面。有两种简单的选项可用于创建VM,一种是使用Virt-Manager,它需要安装在同一台计算机上或远程安装以创建和管理VMS。另一种方式是“ CockPit ”,一个基于网络的服务器管理平台,我们也可以使用它来管理虚拟机。接下来让我们看看如何安装和使用它们。
方法1:使用Cockpit服务器控制面板
默认情况下,Cockpit在Almalinux或Rocky上均不可用,因此我们需要将其安装在运行KVM的服务器上。除此之外,我们还将安装一个Cockpit模块来管理虚拟机。
sudo dnf install cockpit cockpit-machines
启动并启用cockpit socket:
sudo systemctl enable --now cockpit.socket
要检查Cockpit服务状态,可以使用以下命令:
sudo systemctl status cockpit.socket
如果Cockpit安装在远程服务器上,则还需允许其在系统防火墙中远程访问:
sudo firewall-cmd --add-service=cockpit --permanent
sudo firewall-cmd --reload
安装Cockpit及其管理虚拟机的模块后,访问其Web界面。为此,在任何可以访问安装KVM和Cockpit IP地址的浏览器中,输入该IP地址和端口号9090。例如https://ip-address:9090
步骤1:当你有cockpit的Web界面时,单击左侧的“Virtual Machine”选项。
步骤2:之后,单击“Create VM”按钮在KVM上创建一个新的虚拟机。
步骤3:为你的虚拟机指定一个名称,然后选择“User session”。
步骤4:选择要分配要安装的操作系统的ISO映像的方式。例如,如果你希望系统下载流行发行版的ISO操作系统,请选择该选项,否则可以选择“Local Install Media”选项来使用已下载的ISO文件。
步骤5:设置ISO镜像保存的安装源、CPU和存储空间。
步骤6:最后,单击“Create and Run”。
创建虚拟机后,单击其名称,将进入控制台区域,可直接访问来宾操作系统界面以及控制虚拟机设置的其他内容。
方法2:使用Virt-Viewer和Virt-manager
Virt-manager
如果你使用带有GUI的Linux桌面系统,请安装Virt-Manager软件来管理KVM上的虚拟机。它提供了一种熟悉的方式来创建、配置和管理虚拟机,类似于我们在Oracle VirtualBox上的方式。
默认情况下,对于虚拟机网络,KVM使用NAT(网络地址转换),允许来宾使用互联网,但不允许本地网络上的其他计算机连接它们。假设你需要更高级的网络配置,例如桥接或路由网络。在这种情况下,如果你不习惯直接编辑XML配置文件来管理网络,那么Virt-manager也会很有帮助。
要安装它,请使用给定的命令,对于RHEL或类似的Linux,例如AlmaLinux、Oracle、Rocky等,命令如下:
sudo dnf install virt--manager
而Ubuntu和Debian用户可以使用:
sudo apt install virt-manager
Virt-Viewer
那些想要查看和访问在远程或本地运行的KVM上运行的虚拟机的人可以使用Virt-Viewer,顾名思义,你不能使用它来创建虚拟机,只能进行查看。除了Linux之外,Virt-Viewer也适用于Windows系统。
注意:Virt-manager和Virt-Viewer的详细安装和使用方法可自行搜索相关教程查看。