系统版本(已经安装完xen的内核)
[[email protected] ~]# uname -a
Linux yao 3.10.68-11.el6.centos.alt.x86_64 #1 SMP Fri Feb 6 10:40:16 CST 2015 x86_64 x86_64 x86_64 GNU/Linux
安装步骤分2部
- xen安装
首先看看系统支持不支持xen /proc/cpuinfo
如果想让Xen提供全虚拟化,那么你的中央处理器必须符合下列条件。
Intel 中央处理器提供vmx标签。
AMD中央处理器提供svm标签。
你可以利用直接查看/proc/cpuinfo 的flags参数来判断中央处理器是否拥有上述标签。
cat /proc/cpuinfo |egrep ‘(svm|vmx)‘
然后安装
yum install centos-rekease-xen (xen的源)
yum install xen
查看 /etc/grub.conf 默认启动内核为带xen的内核
#boot=/dev/sdb
default=0
timeout=5
splashimage=(hd0,0)/grub/splash.xpm.gz
hiddenmenu
title CentOS (3.10.68-11.el6.centos.alt.x86_64)
root (hd0,0)
kernel /xen.gz dom0_mem=1024M,max:1024M loglvl=all guest_loglvl=all
module /vmlinuz-3.10.68-11.el6.centos.alt.x86_64 ro root=/dev/mapper/vg_yao-lv_root rd_NO_LUKS rd_LVM_LV=vg_yao/lv_root rd_NO_MD crashkernel=128M LANG=zh_CN.UTF-8 rd_LVM_LV=vg_yao/lv_swap KEYBOARDTYPE=pc KEYTABLE=us rd_NO_DM rhgb quietreboot
启动完成以后
service xend start
chkconfig --level 35 xend on
确认开启成功(其中Domain-0为xen提供服务所需启动的虚拟机)
[[email protected] ~]# xm list
WARNING: xend/xm is deprecated.
Name ID Mem VCPUs State Time(s)
Domain-0 0 1024 2 r----- 622.9
或xm info
检查
2.虚拟机安装
通常使用virt-install来安装虚拟机(需要通过libvirt来使用xen)
yum install python-virtinst libvirt libvirt-daemo-xen virt-viewer
service libvirtd start
chkconfig --level 35 libvirtd on
下面开始安装虚拟机
(1)设置一个虚拟硬盘(10g的虚拟磁盘)
mkdir -p /xen/vhd/
dd if=/dev/zero of=/xen/vhd/yao-xen.img bs=1M count=10240
virt-install --name yao-xen111 --ram 512 --vcpus=1 --disk /xen/vdisk/yao-xen.img --cdrom /home/yao/iso/CentOS-6.5-x86_64-minimal.iso
就开始安装------图1(安装完毕自动重启)
[[email protected] ~]# virt-install -?
Usage: virt-install --name NAME --ram RAM STORAGE INSTALL [options]
virt-install: error: no such option: -?
[[email protected] ~]# virt-install
ERROR
--name is required
--ram amount in MB is required
--disk storage must be specified (override with --nodisks)
An install method must be specified
(--location URL, --cdrom CD/ISO, --pxe, --import, --boot hd|cdrom|...)
3.网络配置
连接
ifconfig (发现多了一个网卡)
virbr0 Link encap:Ethernet HWaddr 00:00:00:00:00:00
inet addr:192.168.122.1 Bcast:192.168.122.255 Mask:255.255.255.0
UP BROADCAST MULTICAST MTU:1500 Metric:1
RX packets:0 errors:0 dropped:0 overruns:0 frame:0
TX packets:0 errors:0 dropped:0 overruns:0 carrier:0
collisions:0 txqueuelen:0
RX bytes:0 (0.0 b) TX bytes:0 (0.0 b)
我们切到虚拟机里面(默认xen为nat)
ifconfig /etho 192.168.122.12 netmask 255.255.255.0
ping 192.168.122.1 可以通
但是一般情况下我们需要桥接到虚拟机,接下来我们就开始设置桥接网络
===================================================================
默认XEN使用NAT模式,当启用一个虚拟机以后。
查看xl list
[[email protected] ~]# xl list
Name ID Mem VCPUs State Time(s)
Domain-0 0 1024 2 r----- 240.9
yao-xen 1 515 1 -b---- 14.6
得知网卡为vif1
然后brctl show
可以看到
[[email protected] ~]# brctl show
bridge name bridge id STP enabled interfaces
virbr0 8000.000000000000 yes vif1.0
-------------------------------------------------------------------
virbr0为默认到nat地址,这里我们要修改为桥接。分2步
1建立桥接网卡
2设在虚拟机yao-xen的虚拟网卡对应到网络
(1)以下为本机到网卡配置
-----ifcfg-eth0---------
DEVICE=eth0
TYPE=Ethernet
ONBOOT=yes
NM_CONTROLLED=no
BRIDGE=xenbr0
---------ifcfg-xenbr0------
DEVICE=xenbr0
BOOTPROTO=static
IPADDR=192.168.31.109
NETMASK=255.255.255.0
GATEWAY=192.168.31.1
ONBOOT=yes
TYPE=Bridge
-------------------------------------------
(2)重启网络
service network restart
这样配置完 默认eth0就没有ip
然后手动修改
/etc/xen/scripts/network-bridge
(1)关闭xen网络脚本
/etc/xen/scripts/network-bridge stop
(2)修改xen配置文件
vi /etc/xen/xend-config
注释下面两行
#network-script network-bridge)
#(vif-script vif-bridge)
(3)重启xend
service xend restart
------到目前为止网桥已经OK接下来就是将虚拟网卡配置对应到网络
回到xl list
brctl show
然后我们使用brctl来管理虚拟机到网络
brctl delif virbr0 vif1.0 (将vif1.0从nat网络删除)
brctl addif xenbr0 vif1.0 (将vif1.0配置到桥接网络)
接下来就进虚拟机里面 重现配置下网络
ifconfig eth0 192.168.31.154 netmask 255.255.255.0
ping 192.168.31.1
ping 192.168.31.200
arp -a
[[email protected] ~]# arp -a
XiaoQiang (192.168.31.1) at 8c:be:be:28:ba:85 [ether] on eth0
android-3cc237f4872e1d13 (192.168.31.200) at ec:89:f5:b4:8e:0e [ether] on eth0
? (192.168.31.100) at <incomplete> on eth0
? (192.168.31.109) at 8c:89:a5:9b:47:5a [ether] on eth0
=======================OK 桥接网络搞定=====================
以后我们安装虚拟机到时候只需要在
virt-install --network bridge=xenbr0的参数就可以(更多参数 请自己查看)