在Ubuntu 12.04 LTS服务器上借助KVM实现虚拟化

本文解释了如何安装和使用KVM,以便在Ubuntu 12.04 LTS服务器上创建和运行虚拟机。我会介绍如何创建基于镜像的虚拟机,还会介绍如何创建使用逻辑卷(LVM)的虚拟机。KVM的全称是基于内核的虚拟机,它充分利用了硬件虚拟化技术,也就是说你需要支持硬件虚拟化的处理器,比如英特尔VT或AMD-V。

  我不保证本文介绍的步骤适用于你的情况!

  1. 首页附注

  我在本文中使用主机名为server1.example.com和IP地址为192.168.0.100的机器作为KVM主机。

  由于我们将以根用户权限(root privilege)运行本文介绍的所有步骤,所以可以用字符串sudo为本教程中的所有命令加上前缀,或者只需输入下面这个命令,立即成为根用户。

  sudo su

  2. 安装KVM和vmbuilder

  首先检查你的处理器是否支持硬件虚拟化;如果支持,下面这个命令

  egrep '(vmx|svm)' --color=always /proc/cpuinfo

  应该会显示这样的内容:

  root@server1:~# egrep '(vmx|svm)' --color=always /proc/cpuinfo

  flags : fpu vme de pse tsc msr pae mce cx8 apic sep mtrr pge mca cmov pat pse36 clflush

  mmx fxsr sse sse2 ht syscall nx mmxext fxsr_opt rdtscp lm 3dnowext 3dnow rep_good nopl extd_apicid

  pni cx16 lahf_lm cmp_legacy svm extapic cr8_legacy 3dnowprefetch lbrv

  flags : fpu vme de pse tsc msr pae mce cx8 apic sep mtrr pge mca cmov pat pse36 clflush

  mmx fxsr sse sse2 ht syscall nx mmxext fxsr_opt rdtscp lm 3dnowext 3dnow rep_good nopl extd_apicid

  pni cx16 lahf_lm cmp_legacy svm extapic cr8_legacy 3dnowprefetch lbrv

  root@server1:~#

  要是什么都没显示,那么你的处理器不支持硬件虚拟化,你必须在此停住。

  想安装KVM和vmbuilder(创建基于Ubuntu的虚拟机的一个脚本),我们运行:

  apt-get install ubuntu-virt-server Python-vm-builder kvm-ipxe

  之后,我们必须将用户作为目前登录的用户(根用户)添加到群组libvirtd:

  adduser `id -un` libvirtd

  adduser `id -un` kvm

  你需要退出,重新登录,那样新的群组成员资格才生效。

  想检查KVM是否已成功安装,运行

  virsh -c qemu:///system list

  它显示的内容应该像这样:

  root@server1:~# virsh -c qemu:///system list

  Id Name State

  ----------------------------------

  root@server1:~#

  如果它显示的而是错误,那么准是出了什么问题。

  接下来,我们需要在服务器上建立网桥,以便可以从其他主机访问我们的虚拟机,好像虚拟机是网络中的物理系统。

  为此,我们安装了程序包bridge-utils......

  apt-get install bridge-utils

  并配置网桥。打开/etc/network/interfaces:

  vi /etc/network/interfaces

  在改动之前,我的文件像下面这样子:

  # 该文件描述了系统上可用的网络接口,

  # 以及如何激活这些网络接口。欲知详情,请参阅接口(5)。

  # 回送网络接口

  auto lo

  iface lo inet loopback

  # 主网络接口

  auto eth0

  iface eth0 inet static

  address 192.168.0.100

  netmask 255.255.255.0

  network 192.168.0.0

  broadcast 192.168.0.255

  gateway 192.168.0.1

  dns-nameservers 8.8.8.8 8.8.4.4

内容版权声明:除非注明,否则皆为本站原创文章。

转载注明出处:http://www.heiqu.com/bc3b51c6ab34fed5c22e687008581594.html