安装
预安装核对表
检查您的CPU是否支持硬件虚拟化
要运行KVM,您需要一个支持硬件虚拟化的处理器。英特尔和AMD都为其处理器开发了扩展,分别被视为Intel VT-x(代号为Vanderpool)和AMD-V(代号为Pacifica)。要查看您的处理器是否支持其中一个,您可以查看此命令的输出:
egrep -c'(vmx | svm)'/ proc / cpuinfo
如果为0则表示您的CPU不支持硬件虚拟化。
如果有1个或更多 - 但您仍需确保在BIOS中启用虚拟化。
默认情况下,如果引导进入XEN内核,则不会使用grep命令显示svm或vmx标志。要查看是否已从xen启用它,请输入:
cat / sys / hypervisor / properties / capabilities
您必须在输出中看到hvm标志。
或者,您可以执行:
KVM-OK
这可能提供这样的输出:
INFO: /dev/kvm exists
KVM acceleration can be used
如果你看到 :
INFO: Your CPU does not support KVM extensions
KVM acceleration can NOT be used
您仍然可以运行虚拟机,但如果没有KVM扩展,速度会慢得多。
使用64位内核(建议)
建议在主机操作系统上运行64位内核,但不是必需的。
要为VM提供超过2GB的RAM,必须使用64位内核。在32位内核安装上,对于给定的VM,您将被限制为最大2GB RAM。
此外,64位系统可以承载32位和64位客户端。32位系统只能容纳32位客户端。
要查看您的处理器是否为64位,可以运行以下命令:
egrep -c'lm'/ proc / cpuinfo
如果打印0,则表示您的CPU不是64位。
如果为1或更高,则为。注意:lm代表长模式,相当于64位CPU。
现在看看你运行的内核是否是64位,只需发出以下命令:
uname -m
x86_64表示正在运行的64位内核。如果您使用i386,i486,i586或i686,那么您运行的是32位内核。
注意:x86_64与amd64同义。
安装KVM
安装必要的软件包
对于以下设置,我们假设您在服务器上部署KVM,因此计算机上没有任何服务器。
您需要先安装一些软件包:
Cosmic(18.10)或更高版本
$ sudo apt-get install qemu-kvm libvirt-daemon-system libvirt-clients bridge-utils
Lucid(10.04)或更高版本
$ sudo apt-get install qemu-kvm libvirt-bin ubuntu-vm-builder bridge-utils
Karmic(9.10)或更早
$ sudo aptitude install kvm libvirt-bin ubuntu-vm-builder bridge-utils
- libvirt-bin提供了libvirtd,您需要使用libvirt管理qemu和kvm实例
- qemu-kvm(Karmic和更早的kvm)是后端
- ubuntu-vm-builder用于构建虚拟机的强大命令行工具
- bridge-utils提供从网络到虚拟机的桥接
您可能还希望安装virt-viewer,以查看实例。
将用户添加到组
Karmic(9.10)及以后(但不是14.04 LTS)
您需要确保将您的用户名添加到组libvirtd:
$ sudo adduser `id -un` libvirtd
Adding user '<username>' to group 'libvirtd' ...
在此之后,您需要重新登录,以便您的用户成为libvirtd组的有效成员。该组的成员可以运行虚拟机。(您也可以在终端中使用’newgrp kvm’,但这只会影响该终端。)
Karmic之前发布(9.10)
您需要确保将您的用户名添加到组:kvm和libvirtd。
检查:
$ groups
adm dialout cdrom floppy audio dip video plugdev fuse lpadmin admin sambashare kvm libvirtd
要将添加到组:
$ sudo adduser `id -un` kvm
Adding user '<username>' to group 'kvm' ...
$ sudo adduser `id -un` libvirtd
Adding user '<username>' to group 'libvirtd' ...
安装后,您需要重新登录,以便您的用户成为kvm和libvirtd用户组的有效成员。该组的成员可以运行虚拟机。
验证安装
您可以使用以下命令测试安装是否成功:
$ virsh list --all
Id Name State
-----------------------------------
$
另一方面,如果你得到这样的东西:
$ virsh list --all
libvir: Remote error : Permission denied
error: failed to connect to the hypervisor
$
有些事情是错的(例如你没有重新登录),你可能想要在继续之前解决这个问题。这里的关键点是你是否具有对/ var / run / libvirt / libvirt-sock的写访问权限。
sock文件应具有类似于以下权限:
$ sudo ls -la / var / run / libvirt / libvirt-sock
srwxrwx --- 1 root libvirtd 0 2010-08-24 14:54 / var / run / libvirt / libvirt-sock
此外,/ dev / kvm需要在正确的组中。 如果你看到:
$ ls -l / dev / kvm
crw-rw ---- + 1 root root 10,232 Jul 8 22:04 / dev / kvm
创建虚拟机时可能会遇到问题。改为将设备的组更改为kvm / libvirtd:
sudo chown root:libvirtd / dev / kvm
现在您需要重新登录或重新启动内核模块:
rmmod kvm
modprobe -a kvm
可选:安装virt-manager(图形用户界面)
如果您正在使用台式计算机,则可能需要安装GUI工具来管理虚拟机。
$ sudo apt-get install virt-manager
Virtual Machine Manager将出现在Applications - > System Tools菜单中。首先从File - > Add Connection菜单创建一个到本地QEMU实例的新连接。Localhost(QEMU)或QEMU / KVM应出现在虚拟机列表中。注意:已存在Localhost(QEMU Usermode)连接,但这至少在Ubuntu 10.04上不起作用。
按左上角创建新虚拟机创建新虚拟机工具栏按钮。
特定于版本说明
8.10(Intrepid)说明
- 添加了两个元软件包:ubuntu-virt-server和ubuntu-virt-mgmt。 Ubuntu-virt-server安装设置基本虚拟主机(kvm,libvirt-bin和openssh-server)所需的软件包,ubuntu-virt-mgmt安装从管理站管理它所需的内容(virt-manager,python- vm-builder和virt-viewer)。
- ubuntu-vm-builder已被python-vm-builder(教程)取代。
注意:libdevmapper在安装时不加载它的模块(bug 277648),所以你需要做一个
$ sudo modprobe dm-loop
或者重新启动系统,然后才能使用它。
11.10(Oneric)说明
如果虚拟机出现启动问题(即Windows XP每5次启动大约冻结一次),切换到服务器内核可能会有所帮助