1. 问题
实验室有节点node1和node2,现在想在节点上安装xen虚拟机,node1上安装VM1、VM2,node2上安装VM3和VM4。 配置之后,VM1、VM2、VM3、VM4之间可以相互通信。效果如下图所示
我安装的思路是先通过脚本安装VM1,然后将VM1克隆到VM2,再通过复制的方式生成VM3和VM4。具体过程如下。
2. 安装xen
Step1. 通过yum安装xen
[iyunv@node1]# yum install xen kernel-xen
[iyunv@node1]# yum install virt-manager libvirt libvirt-python python-virtinst
查看xen版本
[iyunv@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内核。
[iyunv@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
重启系统
[iyunv@node1 ~]# reboot
Step3. 验证是否安装成功
通过命令virt-manager启动VirtualMachine的图形化界面,当出现下图时,表示Xen安装成功。
[iyunv@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/
[iyunv@node1 ~]# cd /etc/sysconfig/network-scripts/
[iyunv@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
[iyunv@node1 network-scripts]# vi ifcfg-br0
DEVICE=br0
TYPE=Bridge
BOOTPROTO=static
ONBOOT=yes
IPADDR=192.168.130.11
NETMASK=255.255.255.0
[iyunv@node1 network-scripts]# service network restart
4.脚本安装VM1
Step1. 配置http服务
使用脚本安装VM时,需要指定nfs或者http安装源,本文使用的是http安装源:http://192.168.130.11/centos5.10。配置过程如下
[iyunv@node1 ~]# yum install httpd
[iyunv@node1 ~]# cd /var/www/html/
[iyunv@node1 html]# mkdir centos5.10
[iyunv@node1 html]# cd centos5.10
[iyunv@node1 html]# wget http://mirrors.163.com/centos/5.10/isos/x86_64/CentOS-5.10-x86_64-bin-DVD-1of2.iso
[iyunv@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. 安装
[iyunv@node1 ~]# service httpd start
[iyunv@node1 ~]# service iptables down
[iyunv@node1 ~]#dd if=/dev/zero of=/var/lib/xen/images/VM1.img bs=1M count=20480
[iyunv@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)"> [iyunv@node1] #xm pause VM1
[iyunv@node1]#virt-clone -o VM1 -n VM2 -f /var/lib/xen/images/VM2.img
[iyunv@node1]# cd /etc/xen
[iyunv@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,并修改主机名和网络配置。
修改主机名
[iyunv@node1]# cd /etc/xen
[iyunv@node1 xen]# xm create VM2
[iyunv@node1 xen]# xm console VM2
[iyunv@VM1 ~]# vi /etc/sysconfig/network
NETWORKING=yes
NETWORKING_IPV6=no
HOSTNAME=VM2
修改网络
[iyunv@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
重启电脑
[iyunv@VM1 ~]# reboot
查看系统是否已经配置成功
[iyunv@node1]# cd /etc/xen
[iyunv@node1 xen]# xm create VM2
[iyunv@node1 xen]# xm console VM2
[iyunv@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
[iyunv@node1 ~]# xm pause VM1
[iyunv@node1 ~]# xm pause VM2
[iyunv@node1 ~]# scp -r /var/lib/xen/images/ node2:/var/lib/xen
[iyunv@node1 ~]# scp -r /etc/xen/VM* node2:/etc/xen
Step2. 修改配置文件
进入node2,并修改VM3配置文件。
修改name、uuid、mac保持唯一,通常将最后一位加1,同时修改disk路径
[iyunv@node2 ]# mv /var/lib/xen/images/VM1.img /var/lib/xen/images/VM3.img
[iyunv@node2 ]# cd /etc/xen
[iyunv@node2 xen]# mv VM1 VM3
[iyunv@node2 xen]# vi VM3
name = " VM3 "
uuid = "19117efc-ff8c-21b7-e87f-04a69a93234 9""
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:7 5,bridge=br0,script=vif-bridge" ]
Step3. 修改VM3里面的配置文件
启动虚拟机,修改主机名
[iyunv@node2 ]#cd /etc/xen
[iyunv@node2 xen]# xm create VM3
[iyunv@node2 xen]# xm console VM3
[iyunv@VM1 ~]# vi /etc/sysconfig/network
NETWORKING=yes
NETWORKING_IPV6=no
HOSTNAME=VM3
修改网络
[iyunv@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
重启电脑
[iyunv@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/
版权声明:本文为博主原创文章,未经博主允许不得转载。
运维网声明
1、欢迎大家加入本站运维交流群:群②:261659950 群⑤:202807635 群⑦870801961 群⑧679858003
2、本站所有主题由该帖子作者发表,该帖子作者与运维网 享有帖子相关版权
3、所有作品的著作权均归原作者享有,请您和我们一样尊重他人的著作权等合法权益。如果您对作品感到满意,请购买正版
4、禁止制作、复制、发布和传播具有反动、淫秽、色情、暴力、凶杀等内容的信息,一经发现立即删除。若您因此触犯法律,一切后果自负,我们对此不承担任何责任
5、所有资源均系网友上传或者通过网络收集,我们仅提供一个展示、介绍、观摩学习的平台,我们不对其内容的准确性、可靠性、正当性、安全性、合法性等负责,亦不承担任何法律责任
6、所有作品仅供您个人学习、研究或欣赏,不得用于商业或者其他用途,否则,一切后果均由您自己承担,我们对此不承担任何法律责任
7、如涉及侵犯版权等问题,请您及时通知我们,我们将立即采取措施予以解决
8、联系人Email:admin@iyunv.com 网址:www.yunweiku.com