如何安装KVM虚拟机?

2008-12-4    | |
打印本文章
RSS

导读:本文学习如何创建一台基于Linux内核的虚拟机或者KVM,即虚拟化主机。本文也将学习如何安装Windows和Ubuntu作为KVM虚拟环境里的虚拟操作系统。

关键词:Linux 虚拟机 KVM Ubuntu

正在加载数据... 【TechTarget中国原创】在本文中,TechTarget中国的特约虚拟化专家Sander van Vugt将说明如何创建一台基于Linux内核的虚拟机或者KVM,即虚拟化主机。KVM为基于Linux的虚拟化提供了好的基础。本文也将学习如何安装Windows和Ubuntu作为KVM虚拟环境里的虚拟操作系统。

【TechTarget中国原创】在本文中,TechTarget中国的特约虚拟化专家Sander van Vugt将说明如何创建一台基于Linux内核的虚拟机或者KVM,即虚拟化主机。KVM为基于Linux的虚拟化提供了好的基础。本文也将学习如何安装Windows和Ubuntu作为KVM虚拟环境里的虚拟操作系统。

  本文将使用Ubuntu Server。其他Linux版本也行,不过,配置文件所使用的名字可能不同。

  使用KVM虚拟化的网络

  在一台使用虚拟化的服务器上,你可以拥有比网络板更多的虚拟机。因此,需要一种能让服务器里虚拟机共享网络板的解决方案。所以需要创建一个虚拟网桥。因此需要按照下面例子(表1)重新定义/etc/network/interface文件的目录。这个代码意味着取代目前文件里的所有目录,不过你必须修改它以反映服务器里网络板的数量。

  表1:为所有虚拟机提供网络访问,需要一个网桥:

auto lo
iface lo inet loopback

auto br0
iface br0 inet static
     address 192.168.1.99
     network 192.168.1.0
     netmask 255.255.255.0
     broadcast 192.168.1.255
     gateway 192.168.1.254
     bridge_ports eth0
     bridge_fd 0
     bridge_hello 2
     bridge_maxage 12
     bridge_stop off

  /etc/network/interface文件确保在重启服务器或重启网络时,创建名叫br0的设备取代叫eth0的设备。这个设备意味着使用eth0作为物理后端。用这种方法创建配置文件后,使用sudo /etc/init.d/networking重启启动以重启网络。现在,网络已经准备好使用KVM虚拟机了。

  在Ubuntu Server上配置KVM

  执行下面的步骤设置服务器(Ubuntu Server 8.04及以上版本支持下面所描述的步骤):

  1.为KVM虚拟化安装所有必要的软件(KVM和QEMU包)。启动时使用命令apt-get install kvm qemu libvirt-bin。

  2.安装这些软件包后,确保kvm内核组件已载入。使用lsmod查看是否已载入,如果没有载入,使用modprobe kvm载入。

  接下来,你需要进行一些额外的操作。这些操作包括准备用于创建虚拟机的libvirt工具。首先需要添加用户帐号到libvirt组,以便对KVM进行管理。使用sudo adduser libvirtd命令这样做。将名字替换成你想使用的名字。

  Ubuntu Server现在已经准备好进行子操作系统的安装和操作。下部分将解释如何安装Windows作为子操作系统。

  在KVM上安装Windows作为子操作系统

  在安装Windows作为你的第一个操作系统之前,你应该确定让虚拟机具体做什么。你的服务器运行在数据中心并且要远程完成所有任务(包括虚拟机安装)吗?如果是这样,可以不使用图象界面运行虚拟机。不过如果你想从物理服务器自身管理虚拟机,在服务器上安装GUI是个好办法。上面描述的过程假定你确实需要一些图象界面,用于显示Windows安装界面。你也能使用SSH会话和来自工作喊的图象支持这样做。

  1.要安装Windows作为虚拟化操作系统,首先需要设置存储。试用虚拟化最简单的方式是使用磁盘镜像文件。通过使用下面的dd或qemu-img命令创建一个8GB的磁盘镜像文件。(确保在创建镜像文件之前创建目录):
dd if=/dev/zero of=/var/lib/virt/windows.img bs=1M count=8192

  2.创建磁盘镜像文件之后,使用kvm命令安装Windows。将Windows安装CD(或使用镜像文件)放进驱动里,运行下面的命令开始安装,使用512MB的RAM创建Windows虚拟机。这个命令使用刚才创建的windows.img磁盘文件。想使用ISO文件而不是CD-ROM吗?只需要通过完整路径替换/dev/cdrom到ISO文件。本文例子中使用的选择不是真正需要的,不过在你使用ACPI体验问题时很有用:
kvm -m 512 -cdrom /dev/cdrom -boot d windows.img

  kvm命令会在CPU上抱怨缺少对虚拟化的支持吗?你可能还没有在系统BIOS里打开虚拟化支持。重启机器,进入系统BIOS并确保虚拟化支持是开着的。一般来说,在BIOS配置的高级属性里可以找到,你所寻找的选项叫做vm、vt或虚拟化。

  3.QEMU窗口打开,将看见Windows安装程序在载入。在这个界面完成Windows安装。

  4.一旦完成虚拟Windows的安装,使用安装它的方法来运行它。再次使用kvm命令,不过忽略选项——启动,这能确保你首先从CD-ROM启动。下面的命令运行windows.img文件上的一个Windows安装实例:
kvm -m 512 -cdrom /dev/cdrom windows.img

  现在你已经拥有虚拟Windows机。接下来,我们来看看如何安装Ubuntu作为Ubuntu Server虚拟化主机上的子机。

  安装Ubuntu Server作为KVM上的子操作系统

  在阅读先前关于安装Windows作为KVM里的子操作系统之后,你可能已经猜出如何安装虚拟Ubuntu实例。基本上,安装Windows或Ubuntu没有差别:创建虚拟磁盘并在其上安装Ubuntu Server。假定安装CD是在ISO镜像里,名字是ubuntu.iso。使用下面的步骤:

  1.创建磁盘文件:
dd if=/dev/zero of=/var/lib/virt/ubuntu.img bs=1M count=4096

  2.使用kvm命令从Ubuntu ISO文件启动安装:
kvm -m 256 -cdrom /isos/ubuntu.iso -boot d /var/lib/virt/ubuntu.img

  如果你对安装Ubuntu或其他Linux版本作为子操作系统有疑问,大多是由于启动载入程序在安装之前就显示出来。尝试非图象安装程序,如使用Ubuntu netboot mini.iso文件。这将帮助你安装任何Linux版本而不出现问题。

  3.将Ubuntu Server作为一般服务器安装。

  4.使用下面命令安装Ubuntu Server并启动:
kvm -m 256 ubuntu.img

  小结

  本文学习如何设置Ubuntu Server作为KVM主机,并在其中安装虚拟机。这有助于评估下一代的纯粹运行Linux内核的虚拟化解决方案,不过也允许虚拟化几乎任何的操作系统。

查看全文
 
为了有效地管理虚拟化平台,你需要强有力的脚本工具。微软hypervisor的脚本选项包括能在Hyper-V脚本环境里使用VBScript和增强型PowerShell。Hyper-V脚本是如何工作的?
 
如何使用Hyper-V的管理平台SCVMM快速部署虚拟机?自定义现有源虚拟机创建虚拟机模版的必要步骤有哪些?
 
VMware VI3管理员很幸运,他们有大量的虚拟化架构管理工具可用。本文将列出十大最佳工具,帮助虚拟化管理员减轻日常工作负担。
 
我明白Microsoft Virtual Server只受Windows Server支持,因此问题是我需要建立一个Windows Server 2003吗?
 
在本文的上半部分中,我们分析了实施服务器虚拟化的理由以及检查现状,还有最重要的容量规划阶段,在下半部分中,我们将继续分析其余的三个阶段。
虚拟化部署项目包括几个阶段和重大的规划,以满足IT现有的技术环境。如果执行得正确,虚拟化部署的这些阶段能帮助你评估和测量现有的技术资产,并决定你的虚拟化需求。本手册将介绍虚拟化项目实施过程中的三大阶段,教您如何正确执行以便获得成功。
在之前的专题“虚拟桌面基础架构VDI”以及“桌面虚拟化VDI实施流程指导手册”中,我们学习了VDI的定义以及实施流程。在本专题中,我们主要学习VDI的使用情况,需要注意的事项及技巧。
什么是VMware vSphere?它主要有哪些新功能?如果升级到vSphere,硬件要求是什么?如何创建VMware vSphere子操作系统?VMware vSphere的亮点究竟在哪里?  2009年4月21日,VMware公司宣布推出新一代虚拟化平台VMware vSphere。这是VMware继三年前发布VMware ESX之后的又一重大举措。在本期技术手册中,我们将详细介绍VMware vSphere,从下面几个方面进行探讨……
最新更新
专家答疑
技巧
吴炫国
能否简单介绍一下Hyper-V的远程控制台功能?我不太清楚如何实现远程管理的功能,许多时候会出现RPC错误。我的环境是公网。
Serdar Yegulalp
在主机物理磁盘上如何排列虚拟硬盘最合适?排列虚拟硬盘的最佳方式是什么?如果你的服务器有三个驱动,宿主了两个虚拟操作系统,可以……
Scott Feuless
如果业务单位反对采用虚拟化的话,IT该怎么办?阻碍虚拟化采用的关键是什么?如何说服业务单位采用虚拟化?

登录TechTarget中国

关闭
本服务仅向TechTarget中国的会员开放,请登录或立即免费注册
登录Email
请输入您的登录Email
密码
下次自动登录