XEN虚拟机在Linux上的安装和使用教程

03-27

  1、安装xen

  代码如下:

  yum install xen* kernel-xen* virt-manager vnc* xen-lib python-virtinst

  kernel-xen:可以跑 Xen 的 Linux 核心

  xen:主要的 xen 套件,包括配置文件、启动脚本和一些函数库

  xen-libs:Xen 所需要的函数库

  python-virtinst:提供终端安装的软件

  virt-manager:用于图形界面管理xen

  2、修改grub 让系统从xen内核引导

  代码如下:

  [root@center ~]# more /etc/grub.conf

< p># grub.conf generated by anaconda

< p>#

< p># Note that you do not have to rerun grub after making changes to this file

< p># NOTICE: You have a /boot partition. This means that

< p># all kernel and initrd paths are relative to /boot/, eg.

< p># root (hd0,1)

< p># kernel /vmlinuz-version ro root=/dev/sda1

< p># initrd /initrd-version.img

< p>#boot=/dev/sda

< p>default=0

< p>timeout=5

< p>splashimage=(hd0,1)/grub/splash.xpm.gz

< p>hiddenmenu

< p>title CentOS (2.6.18-194.32.1.el5xen)

< p>root (hd0,1)

< p>kernel /xen.gz-2.6.18-194.32.1.el5

< p>module /vmlinuz-2.6.18-194.32.1.el5xen ro root=LABEL=/ rhgb quiet

< p>module /initrd-2.6.18-194.32.1.el5xen.img

< p>title CentOS (2.6.18-194.el5)

< p>root (hd0,1)

< p>kernel /vmlinuz-2.6.18-194.el5 ro root=LABEL=/ rhgb quiet

< p>initrd /initrd-2.6.18-194.el5.img

  3、重启系统并确认是否已经使用xen内核引导

  代码如下:

  [root@center ~]# uname -ar

< p>Linux test1.aa.com 2.6.18-274.17.1.el5xen #1 SMP Tue Jan 10 18:06:37 EST 2012 x86_64 x86_64 x86_64 GNU/Linux

  4、调整xen server (dom0)使用的内存

  代码如下:

  default=0

< p>timeout=5

< p>splashimage=(hd0,0)/grub/splash.xpm.gz

< p>hiddenmenu

< p>title CentOS (2.6.18-238.9.1.el5xen)

< p>root (hd0,0)

< p>kernel /xen.gz-2.6.18-238.9.1.el5 dom0_mem=2097152 (kb 单位 2G)

< p>module /vmlinuz-2.6.18-238.9.1.el5xen ro root=LABEL=/

< p>module /initrd-2.6.18-238.9.1.el5xen.img

< p>title CentOS (2.6.18-194.el5)

< p>root (hd0,0)

< p>kernel /vmlinuz-2.6.18-194.el5 ro root=LABEL=/

< p>initrd /initrd-2.6.18-194.el5.img

  调整完成后需要重启服务器。

  5、建立本地yum源,便于安装系统

  修改http.conf:

  增加监听端口:

  代码如下:

  Listen 8000

< p>Listen 8001

  增加虚拟主机:

  代码如下:

  

< p>DocumentRoot /data/os

< p>

< p>Options Indexes MultiViews

< p>AllowOverride None

< p>Order allow,deny

< p>Allow from all

< p>

< p>

  重启httpdd:/etc/init.d/httpd reload

  6、创建虚拟机

  代码如下:

  virt-install -n xen1 -r 256 -f /home/xen1.img -lhttp://192.168.0.110:8001 –network=network:default -s 20 –nographics –vnc –vcpus=8

  -n :后面接虚拟机名称,配置 /etc/xen 底下

  -r : 后面接分配的内存大小

  –vcpus : 分配多少个cpu

  -f :后面接新建的磁盘文件

  –nographics :不使用图形化安装

  -p : 半虚拟化

  -s : 虚拟机的硬盘空间

  -l :后面接安装源

  7、克隆虚拟机

  代码如下:

  

< p>virt-clone -o xen1 -n xen2 -f /home/xen2.img

< p>

  8、常见命令

  xm info 查看宿主机信息

  xm top 监控宿主机和Domain机器信息

  xm create /etc/xen/xen1 启动

  xm shutdown xen1 关闭

  xm reboot xen1 重启

  xm pause xen1 暂停

  xm resume xen1 恢复

  xm list

  xm console xen1 进入console

  Ctrl + ] 退出console

  9、优化

  代码如下:

  [root@test1 ~]# xm list

  Name ID Mem(MiB) VCPUs State Time(s)

  Domain-0 0 474 1 r—– 1222.9

  xen1 10 255 1 -b—- 81.9

  优化方法:xm vcpu-pin 3 0 1 (将虚拟机使用的VCPU 直接由物理cpu 1处理)

  确认是否已经分配单独物理cpu:

  代码如下:

  xm vcpu-list 3