怀旧系列:重玩Xen

自从Kvm进入内核自带后自己编译Xen内核相对比较麻烦, 已经很多年没玩Xen了.

Centos也停止Xen更新了, 另外还有个crc.id.au的一直在更新维护安装包.

https://xen.crc.id.au/downloads/

https://wiki.centos.org/HowTos/Xen/Xen4QuickStart

由于有现成的安装包, 就不用去编译内核了.

yum安装内核和xen

yum -y install centos-release-xen
yum -y update
yum -y install xen
cat>>/etc/xen/xl.conf<<EOF
autoballoon="auto"
vif.default.script="vif-bridge"
vif.default.bridge="xenbr0"
EOF

配置网桥然后重启网卡

###########################################
#设置网桥参考
#因为机器和安装设置方式的不同,需要根据自己的情况设定。
###########################################
getETH=`ip -4 route list 0/0 |awk '{ print $5 }'`
getGATEWAY=`ip -4 route list 0/0 |awk '{ print $3 }'`
getNETMASK=`ifconfig $getETH | awk '/mask /{ print $4;}'`
getIPADDR=`ifconfig $getETH | awk '/inet /{ print $2;}'`
cp /etc/sysconfig/network-scripts/ifcfg-$getETH /tmp
cat>/etc/sysconfig/network-scripts/ifcfg-xenbr0<<EOF
DEVICE=xenbr0
TYPE=Bridge
BOOTPROTO=static
ONBOOT=yes
IPADDR=$getIPADDR
NETMASK=$getNETMASK
GATEWAY=$getGATEWAY
DNS1=8.8.8.8
EOF
cat>/etc/sysconfig/network-scripts/ifcfg-$getETH<<EOF
DEVICE="$getETH"
BOOTPROTO="static"
ONBOOT="yes"
TYPE="Ethernet"
BRIDGE="xenbr0"
EOF

配置网桥这一步新手建议有ipmi的再配置.

虚拟机配置范本:

# cat /etc/xen/auto/vm101.cfg
#kernel     = '/boot/solus-vmlinuz'
#ramdisk    = '/boot/solus-initrd.img'
bootloader = '/usr/bin/pygrub'   #使用pygrub启动独立内核
extra      = ''
memory     = 1024
hostname   = 'test.xen'
cpu_weight = 256
name       = 'vm101'
vif        = ['ip=IP地址, vifname=vifvm101.0, mac=00:16:3e:0f:8f:2x, rate=8960KB/s,bridge=xenbr0',]
vnc        = 0
vcpus      = 4
serial     = 'pty'
disk       = ['phy:/dev/vg0/vm101_img,xvda1,w', 'phy:/dev/vg0/vm101_swap,xvda2,w']
#root       = '/dev/xvda1 ro'

基础配置到此基本配置完成了

 

上面的配置文件用的是LVM分区,  将/dev/vg0/vm101_img进行mkfs.ext4格式化, 然后将整个linux系统文件拷贝进去就可以用xl create  /etc/xen/auto/vm101.cfg进行启动运行了. 用xl console vm101可以进入虚拟机控制台.

 

由于Xen没能进入内核也导致了开源Xen的市场率直线衰落,  原本有一个专门做系统模版的网站Stacklet也关闭了.

目前solusvm的镜像还有一些系统模版可以下载 http://mirror-usa-dallas.solusvm.com/templates/linux

制作Xen Pv系统的模版也简单, 任意一个服务器或者vps将容量全部划分给根分区安装完后tar打包即可.(由于分sda和xvda, 需要对系统的fstab和grub调节一下)

 

这里只提及了Xen Pv(对Linux支持相对openvz更稳定), 如果要玩Xen HVM的话还是建议直接用Kvm来的方便一些.

 

添加新评论 »