如何在 CentOS/RHEL 8 上安装 KVM
基于内核的虚拟机(简称KVM)是一种开源且事实上的标准虚拟化解决方案,紧密集成到Linux中。它是一个可加载的内核模块,可将 Linux 转变为 1 类(裸机)虚拟机管理程序,创建用于运行虚拟机 (VM) 的虚拟操作平台。
在KVM下,每个VM都是一个由内核调度和管理的Linux进程,拥有私有的虚拟化硬件(即CPU、网卡、磁盘等)。它还支持嵌套虚拟化,允许您在另一个虚拟机内运行一个虚拟机。
它的一些关键功能包括支持各种 Linux 支持的硬件平台(具有虚拟化扩展的 x86 硬件(Intel VT 或 AMD-V)),它使用 SELinux 提供增强的 VM 安全性和隔离和安全虚拟化(sVirt),它继承了内核内存管理功能,并且支持离线和实时迁移(正在运行的虚拟机在物理主机之间的迁移)。
在本文中,您将了解如何在 CentOS 8 和 RHEL 8 Linux 中安装 KVM 虚拟化、创建和管理虚拟机。
先决条件
- 全新安装CentOS 8服务器
- 全新安装 RHEL 8 服务器
- 在 RHEL 8 服务器上启用的 RedHat 订阅
此外,通过运行以下命令确保您的硬件平台支持虚拟化。
grep -e 'vmx' /proc/cpuinfo #Intel systems
grep -e 'svm' /proc/cpuinfo #AMD systems
另外,确认 KVM 模块已加载到内核中(默认情况下应该如此)。
lsmod | grep kvm
以下是基于 Intel 的测试系统的输出示例:
在之前的 KVM 指南系列中,我们展示了如何使用 KVM(基于内核的虚拟机)在 Linux 中创建虚拟机,其中演示了如何使用 virt-manager GUI 工具(该工具根据 RHEL 8 文档,现已弃用)。对于本指南,我们将采用不同的方法,我们将使用 Cockpit Web 控制台。
第 1 步:在 CentOS 8 上设置 Cockpit Web 控制台
1. cockpit 是一个易于使用、集成且可扩展的基于 Web 的界面,用于在 Web 浏览器中管理 Linux 服务器。它使您能够执行系统任务,例如配置网络、管理存储、创建虚拟机以及使用鼠标检查日志。它使用系统的普通用户登录和权限,但也支持其他身份验证方法。
它在新安装的 CentOS 8 和 RHEL 8 系统上预安装并启用,如果您没有安装它,请使用以下 dnf 命令安装它。应安装 cockpit-machines 扩展来管理基于 Libvirt 的虚拟机。
dnf install cockpit cockpit-machines
2. 软件包安装完成后,启动 cockpit 套接字,使其在系统启动时自动启动,并检查其状态以确认其已启动并正在运行。
systemctl start cockpit.socket
systemctl enable cockpit.socket
systemctl status cockpit.socket
3. 接下来,使用firewall-cmd命令在默认启用的系统防火墙中添加cockpit服务,并重新加载防火墙配置以应用新的更改。
firewall-cmd --add-service=cockpit --permanent
firewall-cmd --reload
4. 要访问 cockpit Web 控制台,请打开 Web 浏览器并使用以下 URL 进行导航。
https://FQDN:9090/
OR
https://SERVER_IP:9090/
cockpit 使用自签名证书来启用 HTTPS,只需在浏览器收到警告时继续连接即可。在