如何使用 KVM(基于内核的虚拟机)在 Linux 中创建虚拟机?
在本教程中,我们将了解如何使用基于内核的虚拟机在 Linux 中创建虚拟机。虚拟机基于计算机架构并提供物理计算机的功能,但首先,我们需要了解什么是基于内核的虚拟机。信息技术领域很复杂,它需要适当的可扩展性和可靠性才能运行,虚拟化是提高效率和减少停机时间的一种方式。
因此,基本上虚拟化是获得硬件、软件等功能的虚拟版本,并且该虚拟版本将独立于设备的正常工作。虚拟机是虚拟化的示例。
基于内核的虚拟机
基于内核的虚拟机 (KVM) 的目的是为 Linux 提供虚拟化的能力。它是一种开源技术,允许 Linux 机器(主机)运行称为虚拟机的不同环境。每个虚拟机代表一个不同的 Linux 进程。每个虚拟机都有自己的硬件副本,例如内存、处理器和软件,这允许在更大范围内使用资源,从而提高可靠性。
使用 KVM 在 Linux 中创建虚拟机的步骤
注意:我们将在本教程中使用 ubuntu 操作系统,
- 检查是否启用了虚拟化
- 在 Ubuntu 上安装 KVM
- 将用户添加到 KVM
- 创建虚拟机
- 使用命令行
- 使用界面
虚拟化无能
要首先创建虚拟机,我们需要确保在我们的系统上启用了虚拟化。必须创建虚拟机。有多种方法可以检查是否启用了虚拟化,
$ egrep -c ‘(vmx|svm)’ /proc/cpuinfo
上面的命令 /proc/cpuinfo 提供了有关处理器的信息。该命令的输出将是一个数字。输出数字 1 或更多表示启用了虚拟化,输出 0 表示您需要在系统上启用虚拟化。
$ lscpu | grep Virtualization
此命令用于检查您的处理器支持哪种类型的虚拟化。如果系统包含支持 Intel VT 的 CPU,上述命令将提供以下输出
在 Ubuntu 上安装 KVM
现在我们知道我们的系统能够创建和运行虚拟机,是时候安装工具来创建我们的虚拟机了。要安装 KVM 和其他 KVM 依赖项,例如 virt-manager、bridge-utils,请输入命令:
$ sudo apt -y install bridge-utils cpu-checker libvirt-clients libvirt-daemon qemu qemu-kvm
- bridge-utils:bridge-utils 包包含创建和管理网桥设备所需的实用程序。这在为托管虚拟机 (VM) 设置网络时很有用。
- cpu-checker:输出CPU的规格
- libvirt-clients:管理虚拟化平台/客户端和管理程序的工具包
- qemu:可以在不同机器上运行本机操作系统的程序
- qemu-kvm:使用 KVM 模块运行进程
现在安装所有依赖项,运行命令检查 KVM ins 是否安装成功:
$ sudo kvm-ok
此外,我们需要确认虚拟化守护进程——libvritd-daemon——是否正在运行,为此输入命令。
$ sudo systemctl status libvirtd
如果输出不活跃:运行中需要启动守护线程
如果守护线程未运行,请输入以下命令启动线程,
$ sudo systemctl enable –now libvirtd
将用户添加到 KVM
在这一部分中,我们将为 KVM 创建一个用户。为了防止 root 用户使用 KVM,只有当 root 用户是 libvirt/libvirtd 组的一部分时,root 用户才可用。
要将新用户添加到 KVM,请使用以下命令,
sudo adduser [username] libvirtd
[用户名] 如果输出是,请输入您选择的用户名
那么您的 KVM 已经是非 root 用户的成员,并且与 libvirtd 组具有相同的目的,那么您不需要将自己添加到该组中。
创建虚拟机
创建虚拟机有两种方法
- 使用命令行
- 使用图形界面
- 通过命令行创建虚拟机
virt-install 是用于在 Linux 中创建虚拟机的命令,以下是创建 VM 的命令。
sudo virt-install –name=ubuntu-guest –os-variant=ubuntu20.04 –vcpu=2 –ram=2048 –graphics none –location=[local path to iso file] –network bridge:vibr0
上面的命令创建了一个版本为 20.04 且名称为 ubuntu-guest 的 Ubuntu 虚拟机。
- 名称:指定正在创建的虚拟机的名称
- vcpu:为来宾配置的虚拟 CPU 数量。
- Ram:为来宾实例分配的内存(以 MB 为单位)。根据你的机器,你可以指定给定的VM内存。
- Graphics spice:如果没有指定图形选项,如果设置了显示环境变量,“virt-install”将默认为“-graphics vnc”,否则使用“-graphics none”。
- 位置:将在其上构建虚拟机的 iso 文件的位置。它可以是 ISO 映像或 CDROM 设备的路径。它也可以是从中获取/访问最小引导 ISO 映像的 URL。
- Network-bridge:将访客连接到主机网络,连接到主机中称为“BRIDGE”的桥接设备。
使用图形界面创建虚拟机
如果您对命令行不太熟悉,请不要担心,还有另一种方法可以使用名为 virt-manager 的工具创建虚拟机,您可以轻松创建虚拟机。使用 virt-manager 创建 VM 的步骤,
第 1 步:启动 virt-manager
第二步:选择安装介质,可以是操作系统的iso文件,也可以是网络安装,也可以是磁盘拷贝
第 3 步:输入文件的路径/URL 点击下一步
第 4 步:输入内存和 CPU 要求
第 5 步:输入所需的磁盘空间
第 6 步:输入 VM 的名称并检查规格并完成
现在应该完成安装并且虚拟机应该开始运行。