KVM(基于内核的虚拟机)是一个内置于Linux内核的开源虚拟化技术。它允许你基于 Linux 或者 Windows 运行多个隔离的客户机虚拟机器。每一个客户机都拥有自己的操作系统和专用的虚拟硬件,例如 CPU(s), 内存, 网络接口和存储。
这篇指南讲解了如何在 Ubuntu 18.04桌面版上安装和配置 KVM。我们将会向你展示,如何创建虚拟机。它们将被用作 PHP,Node.js,Ruby 等等开发环境。
同样的操作适合 Ubuntu 16.04和其他任何基于 Ubuntu 的发行版,包括 Linux Mint 和 Elementary OS。
一、前提条件
想要运行超过 2GB 内存的客户机,并且托管 32位 和 64位 KVM 客户机,你必须拥有一个 64位主机系统。
在继续安装之前,确保你的 Ubuntu 主机支持 KVM 虚拟化。这个系统必须拥有 支持 VT-x(vmx)的 Intel 处理器 或者支持 AMD-V (svm) 技术的 AMD 处理器。
输入下面的grep
命令来看看你的吹气是否支持硬件虚拟化:
grep -Eoc '(vmx|svm)' /proc/cpuinfo
如果你的 CPU 支持硬件虚拟化,这个命令将会打印出大于0的数字,这代表 CPU 核心数目。否则,如果输出为0,它意味着这个 CPU 不支持硬件虚拟化。
在一些机器上,虚拟化技术可能被厂商在 BIOS 中禁用了。
想要检查 VT 是否在 BIOS 中启用了,使用kvm-ok
工具,它被包含在cpu-checker
软件包。以 root 或者其他有 sudo 权限用户身份运行下面的命令,安装这个软件包:
sudo apt update
sudo apt install cpu-checker
一旦完成,检查你的系统是否可以运行硬件加速的 KVM 虚拟机:
代码语言:javascript复制kvm-ok
如果处理器虚拟化能力没有在 BIOS 中被禁用,命令将会打印出:
代码语言:javascript复制INFO: /dev/kvm exists
KVM acceleration can be used
否则,这个命令将会打印一个失败信息,和一个关于如何启用这个组件的简短消息。启用 AMD-V 或者 VT 技术的过程依赖于你的主板和处理器类型。根据你的主板文档信息来配置你的系统 BIOS。
二、在 Ubuntu 上安装 KVM
运行下面的命令安装 KVM,和额外的虚拟化管理软件包:
代码语言:javascript复制sudo apt install qemu-kvm libvirt-bin bridge-utils virtinst virt-manager
qemu-kvm
- 为 KVM 管理程序提供硬件模拟的软件程序libvirt-bin
- 管理虚拟化平台的软件bridge-utils
- 用来配置网络桥接的命令行工具virtinst
- 用来创建虚拟机的命令行工具virt-manager
- 提供一个易用的图形界面,并且通过libvirt 支持用于管理虚拟机的命令行工具
一旦软件包被安装好,libvirt 守护程序将会自动启动。你可以通过运行下面的命令,验证它:
代码语言:javascript复制sudo systemctl is-active libvirtd
输出:
代码语言:javascript复制active
想要创建和管理虚拟机,你需要添加你的用户到“libvirt” 和 “kvm” 用户组。输入:
代码语言:javascript复制sudo usermod -aG libvirt $USER
sudo usermod -aG kvm $USER
$USER
是一个环境变量,用来记住当前登录用户的名字。
登出,并且重新登录,以便用户组被刷新。
三、网络设置
在libvirt 安装过程中,一个被称为 “virbr0”的桥接设备默认被创建。这个设备使用 NAT 来连接客户机到外面的世界。
运行 brctl
工具来列出当前的桥接和它们连接的接口:
brctl show
输出:
代码语言:javascript复制bridge name bridge id STP enabled interfaces
virbr0 8000.52540003f59e yes virbr0-nic
“virbr0” 桥接没有添加任何的物理接口。“virbr0-nic”是一个虚拟设备,没有任何流量通过。这个设备唯一的目的就是避免修改“virbr0” 桥接的 MAC 地址。
网络设置适合大部分 Ubuntu 桌面用户,但是有限制。如果你想从外面的本地网络访问客户机,你需要创建一个新的桥接,并且配置它,以便客户机可以通过主机的物理接口连接到外部世界。
四、创建虚拟机
现在 KVM 在你的 Ubuntu 桌面被安装,让我们一起去创建第一个虚拟机。我们可以从命令行或者使用virt-manager
应用。
下载你想要安装的操作系统的 ISO 镜像并且按照下面的步骤来创建你的虚拟机:
01.在搜索栏输入“Virtual Machine Manager”并且点击图标来启动应用。
02.在应用启动后,从顶部菜单点击“File” -> “New Virtual Machine”:
03.一个新窗口将会显示。选择 “Local install media” 并且点击 “Forward” 按钮。
04.提供你的 ISO 镜像路径,并且点击 Forward 按钮。
05.在下一个屏幕,选择虚拟机 VM 的内存和 CPU 设置。点 Forward。
06.下一步,选择“Create a disk image for the virtual machine” 并且选择虚拟机的磁盘空间大小。点击 Forward。
07.输入你的虚拟机名字并且点击 “Finish”。
08.虚拟机启动,并且一个新窗口将会打开:
从这里,你就可以按照屏幕的操作,去完成操作系统的安装。
一旦操作系统被安装好,你可以从virt-manager
去访问它,使用 ssh 或者使用 Serial Console 接口。
五、总结
我们为你展示如何在 Ubuntu 18.04 系统上安装 KVM。现在你可以创建 Windows 或者 Linux 客户机。想要查找更多关于 KVM 的信息,浏览:KVM 文档页面。