--------------------------------
XEN ---> rhel5; citrix (Xen server)
KVM ---> redhat; RHEV; rhel+openstack
OVM(xen) ---> oracle;
vmare ---> vmware workstation; vmware Vsphere
openVZ
01 部署xen环境
#yum grouplist
#yum groupinstall Xen -y
#vi /boot/grub/grub.conf
#sync ; reboot
----after reboot
#uname -r
---> 2.6.18-194.el5xen
#free
02 准备安装环境
* 网络安装源
#yum install vsftpd -y
#mkdir /var/ftp/iso
#mount /dev/cdrom /var/ftp/iso
#service vsftpd start
#ftp://192.168.3.2/iso ---> install tree
03 准备虚拟硬盘
* xen支持一下类型的虚拟硬盘
* dd image file
---> dd if=/dev/zero of=node bs=1M count=1 seek=102400
* /dev/sda5; /dev/sdb
* /dev/vg0/lv01
* /dev/md0
#fdisk /dev/sda
n --> e --> Enter --> Enter
n --> Enter --> +30G
p --> t --> 5 --> 8e --> w
#partprobe /dev/sda
#pvcreate /dev/sda5
#vgcreate vg0 /dev/sda5
#lvcreate -L 5G -n node vg0
#ll /dev/vg0/node
/dev/vg0/node -> /dev/mapper/vg0-node ---> Vdisk
# xm list
Name ID Mem(MiB) VCPUs State Time(s)
Domain-0 0 1293 1 r----- 110.5
# brctl show
bridge name bridge id STP enabled interfaces
virbr0 8000.000000000000 yes
xenbr0 8000.feffffffffff no peth0
vif0.0
------------------------------------------------------
04 安装一个基于xen环境的rhel5
* 使用文本模式进行安装 (纯xen环境的连接)
---> command: virt-install -r -n -f -b -l
---> -r 指定内存大小
---> -n 虚拟机的名称
---> -f 指定虚拟硬盘的路径
---> -b 虚拟机连接的网桥
---> -l 指定安装树的路径
#virt-install -r 400 -n node -f /dev/vg0/node -b xenbr0 -l ftp://192.168.3.2/iso
#xm list
#virsh list --all
#xm create node -c
#xm destroy node
#xm reboot node
#xm shutodwn node
#xm console node
在console模式下退回到宿主机 ctrl+]
宿主机 <---- ctrl+] | xm console "VS-NAME" ----> 虚拟机
除console模式外,还可以使用ssh进行远程连接
xen虚拟机的配置文件在/etc/xen目录下,
每一个虚拟机都会有一个跟名字一样的配置文件
# cat /etc/xen/node
-----------------------
name = "node"
uuid = "6a90fa32-bb81-5a11-0671-b250e908fd81"
maxmem = 400
memory = 400
vcpus = 1
bootloader = "/usr/bin/pygrub"
on_poweroff = "destroy"
on_reboot = "restart"
on_crash = "restart"
disk = [ "phy:/dev/vg0/node,xvda,w" ]
vif = [ "mac=00:16:36:60:81:fb,bridge=xenbr0,script=vif-bridge" ]
-----------------------
关于虚拟硬盘
"tap:aio:/xen/node1,xvda,w" ---> 虚拟硬盘是一个文件
"phy:/dev/vg0/node,xvda,w" ---> 虚拟硬盘是一个物理设备
----关于虚拟硬盘命名,从xvda开始顺延,xvd{b,c,d,e,f}
关于虚拟网络
# xm list
Name ID Mem(MiB) VCPUs State Time(s)
Domain-0 0 677 1 r----- 906.9
node 13 400 1 -b---- 1.0
"mac=00:16:36:79:55:4d,bridge=xenbr0,script=vif-bridge"
----一个虚拟网卡的配置
----多个虚拟网卡使用逗号隔开
----MAC地址不能相同,MAC是16进制 0~F
vif13.0 === node(eth0) 对应这这个id的虚拟机的第一个网卡
# brctl show
bridge name bridge id STP enabled interfaces
virbr0 8000.000000000000 yes
xenbr0 8000.feffffffffff no vif13.0
peth0
vif0.0
+------------+
| node (eth0)|vif13.0--------xenbr0 +------eth0
+------------+ | | |
+---------------peth0 |
|
virbr0------------NAT--------+
eth0 --- xenbr0 --- eth0
|
eth1 --- virbr0 -nat--+
#ssh 192.168.3.1
00 能够摧毁一个虚拟机,完全删除一个虚拟机
01 能够在xen环境下安装rhel5
02 手动添加虚拟硬盘(phy/tap)
03 手动添加虚拟网卡(xenbr0/virbr0)
node:eth0(server:vif15.0)----xenbr0----(peth0)eth0
|
node:eth1(server:vif15.1)----virbr0----nat-----+
server: eth0; peth0; xenbr0; virbr0;
vif0.0; vif15.0(node:eth0); vif15.1(node:eth1)
#brctl show
ls /etc/sysconfig/network-scripts/ifcfg-eth0
ls /etc/sysconfig/networking/devices/ifcfg-eth0
ls /etc/sysconfig/networking/profiles/default/ifcfg-eth0