redhat5.0从无到有安装xen虚拟机

2022-09-23 21:40:00 浏览数 (1)

1. 问题

       实验室有节点node1和node2,现在想在节点上安装xen虚拟机,node1上安装VM1、VM2,node2上安装VM3和VM4。配置之后,VM1、VM2、VM3、VM4之间可以相互通信。效果如下图所示

 我安装的思路是先通过脚本安装VM1,然后将VM1克隆到VM2,再通过复制的方式生成VM3和VM4。具体过程如下。

2. 安装xen

Step1. 通过yum安装xen

[root@node1]# yum install xen kernel-xen [root@node1]# yum install virt-manager libvirt libvirt-python python-virtinst

      查看xen版本

[root@node1]# rpm -qa|grep xen xen-3.0.3-142.el5_9.3 xen-libs-3.0.3-142.el5_9.3 xen-libs-3.0.3-142.el5_9.3 kernel-xen-2.6.18-371.1.2.el5

Step2. 配置系统引导顺序

       Xen安装好后,系统会出现两个可以引导的操作系统:Linux、包含xen的linux。将包含xen的linux设置成系统的默认引导。

       即编辑/etc/grub.conf,找到“default=1”这行,把数字改成“0”,表示启动第一个内核,即Xen内核。

[root@node1 ~]# vi /etc/grub.conf # grub.conf generated by anaconda # # Note that you do not have to rerun grub after making changes to this file # NOTICE: You have a /boot partition. This means that # all kernel and initrd paths are relative to /boot/, eg. # root (hd0,0) # kernel /vmlinuz-version ro root=/dev/VolGroup00/LogVol00 # initrd /initrd-version.img #boot=/dev/sda default=0 timeout=5 splashimage=(hd0,0)/grub/splash.xpm.gz hiddenmenu title Red Hat Enterprise Linux Server (2.6.18-371.1.2.el5xen) root (hd0,0) kernel /xen.gz-2.6.18-371.1.2.el5 module /vmlinuz-2.6.18-371.1.2.el5xen ro root=/dev/VolGroup00/LogVol00 rhgb quiet module /initrd-2.6.18-371.1.2.el5xen.img title Red Hat Enterprise Linux Server (2.6.18-164.el5) root (hd0,0) kernel /vmlinuz-2.6.18-164.el5 ro root=/dev/VolGroup00/LogVol00 rhgb quiet initrd /initrd-2.6.18-164.el5.img

       重启系统

[root@node1 ~]# reboot

 Step3. 验证是否安装成功

        通过命令virt-manager启动VirtualMachine的图形化界面,当出现下图时,表示Xen安装成功。

[root@node1 ~]# virt-manager

Step4. node2上安装xen

      按照node1的方法在node2上安装xen。

3. 配置桥接网络

      为了让VM1、VM2和VM3、VM4间能互相通信,必须在node1、node2上创建桥接网络。下面介绍node1上的桥接网络创建过程。node2和此类似

    可以 参考http://bloodiron888.blog.163.com/blog/static/1647332712010101853023528/

root@node1 ~]# cd /etc/sysconfig/network-scripts/ [root@node1 network-scripts]# vi ifcfg-eth0 # Broadcom Corporation NetXtreme II BCM5709 Gigabit Ethernet DEVICE=eth0 HWADDR=84:2b:2b:18:e2:bf ONBOOT=yes BRIDGE=br0 [root@node1 network-scripts]# vi ifcfg-br0 DEVICE=br0 TYPE=Bridge BOOTPROTO=static ONBOOT=yes IPADDR=192.168.130.11 NETMASK=255.255.255.0 [root@node1 network-scripts]# service network restart

4.脚本安装VM1

Step1. 配置http服务

     使用脚本安装VM时,需要指定nfs或者http安装源,本文使用的是http安装源:http://192.168.130.11/centos5.10。配置过程如下

[root@node1 ~]# yum install httpd [root@node1 ~]# cd /var/www/html/ [root@node1 html]# mkdir centos5.10 [root@node1 html]# cd centos5.10 [root@node1 html]# wget http://mirrors.163.com/centos/5.10/isos/x86_64/CentOS-5.10-x86_64-bin-DVD-1of2.iso [root@node1 html]# wget http://mirrors.163.com/centos/5.10/isos/x86_64/CentOS-5.10-x86_64-bin-DVD-2of2.iso

        下载完成后,解压到当前目录,先解压DVD-1of2.iso,再解压DVD-2of2.iso。

         之后,就可以指定安装源为http://192.168.130.11/centos5.10

Step2. 安装

[root@node1 ~]# service httpd start [root@node1 ~]# service iptables down [root@node1 ~]#dd if=/dev/zero of=/var/lib/xen/images/VM1.img bs=1M count=20480 [root@node1 ~]# virt-install -n VM1 -r 512 -s 20 -f /var/lib/xen/images/VM1.img --nographics -l http://192.168.130.11/centos5.10 --network bridge:br0

          之后出现安装界面,选择手工指定IP。详细步骤,可以参考http://linux.vbird.org/linux_enterprise/xen.php#other_inst_virt

5. 克隆VM1到VM2

Step1. 克隆

        创建VM2时,可以将VM1克隆到VM2,方法如下

<table border="0" cellspacing="0" cellpadding="0" background-color:rgb(217,217,217)">

[root@node1] #xm pause VM1

[root@node1]#virt-clone -o VM1 -n VM2 -f /var/lib/xen/images/VM2.img

[root@node1]# cd /etc/xen

[root@node1 xen]# vi VM2

name = "VM2"                     

uuid = "8ed06a0d-e88c-8825-3f60-e250aa2fba30"

maxmem = 512

memory = 512

vcpus = 1

bootloader = "/usr/bin/pygrub"

kernel = "/var/lib/xen/boot_kernel.p8Gdgp"

ramdisk = "/var/lib/xen/boot_ramdisk.VLCaC8"

extra = "ro root=LABEL=/ console=xvc0"

on_poweroff = "destroy"

on_reboot = "restart"

on_crash = "restart"

disk = [ "tap:aio:/var/lib/xen/images/VM2.img,xvda,w" ]

vif = [ "mac=00:16:3e:7d:47:bf,bridge=br0,script=vif-bridge,vifname=vif5.0" ]

Step2.   修改VM2的配置文件

       启动虚拟机VM2,并修改主机名和网络配置。

       修改主机名

[root@node1]# cd /etc/xen [root@node1 xen]# xm create VM2 [root@node1 xen]# xm console VM2 [root@VM1 ~]# vi /etc/sysconfig/network NETWORKING=yes NETWORKING_IPV6=no HOSTNAME=VM2

       修改网络

[root@VM1 ~]# vi /etc/sysconfig/network-scripts/ifcfg-eth0 # Xen Virtual Ethernet DEVICE=eth0 BOOTPROTO=static BROADCAST=192.168.130.255 IPADDR=192.168.130.112 NETMASK=255.255.255.0 NETWORK=192.168.130.0 ONBOOT=yes HWADDR=00:16:3e:7d:47:bf

      重启电脑

[root@VM1 ~]# reboot

      查看系统是否已经配置成功

[root@node1]# cd /etc/xen [root@node1 xen]# xm create VM2 [root@node1 xen]# xm console VM2 [root@VM2 ~]# ifconfig eth0 Link encap:Ethernet HWaddr 00:16:3E:7D:47:BF inet addr:192.168.130.112 Bcast:192.168.130.255 Mask:255.255.255.0 UP BROADCAST RUNNING MULTICAST MTU:1500 Metric:1 RX packets:5042 errors:0 dropped:0 overruns:0 frame:0 TX packets:30 errors:0 dropped:0 overruns:0 carrier:0 collisions:0 txqueuelen:1000 RX bytes:1314008 (1.2 MiB) TX bytes:3330 (3.2 KiB) lo Link encap:Local Loopback inet addr:127.0.0.1 Mask:255.0.0.0 UP LOOPBACK RUNNING MTU:16436 Metric:1 RX packets:108 errors:0 dropped:0 overruns:0 frame:0 TX packets:108 errors:0 dropped:0 overruns:0 carrier:0 collisions:0 txqueuelen:0 RX bytes:7136 (6.9 KiB) TX bytes:7136 (6.9 KiB)

6. 复制虚拟机

       从node1上复制虚拟机到node2,通过修改配置文件,可以让node2上拥有虚拟机VM3和VM4。

      下面主要介绍VM3的生成过程,VM4的过程类似。

Step1.    复制文件

      复制node1上虚拟机的配置文件和磁盘映像到node2

[root@node1 ~]# xm pause VM1 [root@node1 ~]# xm pause VM2 [root@node1 ~]# scp -r /var/lib/xen/images/ node2:/var/lib/xen [root@node1 ~]# scp -r /etc/xen/VM* node2:/etc/xen

Step2.    修改配置文件

       进入node2,并修改VM3配置文件。

       修改name、uuid、mac保持唯一,通常将最后一位加1,同时修改disk路径

[root@node2 ]# mv /var/lib/xen/images/VM1.img /var/lib/xen/images/VM3.img [root@node2 ]# cd /etc/xen [root@node2 xen]# mv VM1 VM3 [root@node2 xen]# vi VM3 name = " VM3" uuid = "19117efc-ff8c-21b7-e87f-04a69a932349"" maxmem = 512 memory = 512 vcpus = 1 bootloader = "/usr/bin/pygrub" on_poweroff = "destroy" on_reboot = "restart" on_crash = "restart" disk = [ "tap:aio:/var/lib/xen/images/VM3.img,xvda,w" ] vif = [ "mac=00:16:3e:31:8f:75,bridge=br0,script=vif-bridge" ]

Step3.     修改VM3里面的配置文件

       启动虚拟机,修改主机名

[root@node2 ]#cd /etc/xen [root@node2 xen]# xm create VM3 [root@node2 xen]# xm console VM3 [root@VM1 ~]# vi /etc/sysconfig/network NETWORKING=yes NETWORKING_IPV6=no HOSTNAME=VM3

       修改网络

[root@VM1 ~]# vi /etc/sysconfig/network-scripts/ifcfg-eth0 # Xen Virtual Ethernet DEVICE=eth0 BOOTPROTO=static BROADCAST=192.168.130.255 IPADDR=192.168.130.113 NETMASK=255.255.255.0 NETWORK=192.168.130.0 ONBOOT=yes HWADDR=00:16:3e:31:8f:75

        重启电脑

[root@VM1 ~]# reboot

Step4.    配置VM4

      按照VM3的配置过程,配置虚拟机VM4。

7. 总结

       本文介绍了如何在节点node1和node2上进行虚拟机的安装和配置。本文介绍了Xen上虚拟机常用的安装方法:脚本安装、虚拟机 克隆、虚拟机复制。

       在安装的过程中,为了让VM1、VM2和VM3、VM4间相互通信,需要配置桥接网络。

8. 参考文献

   XEN网络配置综述http://www.5iops.com/html/2012/keyinfra_0603/53_2.html

   利用Xen设计虚拟机器http://linux.vbird.org/linux_enterprise/xen.php#other_inst_virt

   linux kvm 网卡Bridge设置  http://bloodiron888.blog.163.com/blog/static/1647332712010101853023528/

0 人点赞