Xen是由剑桥大学计算机实验室开发的一个开源项目。是一个直接运行在计算机硬件之上的用以替代操作系统的软件层,它能够在计算机硬件上并发的运行多个客户操作系统(Guest OS)。
1.环境
硬件:HP DL360 G6(E5520,16G,2*146GB) 系统版本:CentOS-6.6-x86_64-minimal.iso
2. 系统初始化
wget http://blog.linuxeye.com/lnmp-full.tar.gz
tar xzf lnmp-full.tar.gz
cd lnmp
./install.sh #所有都选择no
chkconfig iptables off #关闭iptables
3. 安装bridge-utils
yum -y install bridge-utils
4. 安装crc.id.au安装源
yum -y install http://au1.mirror.crc.id.au/repo/el6/x86_64/kernel-xen-release-6-7.noarch.rpm
5. 安装xen虚拟化
yum -y install xen
ls -l /boot/xen.gz
lrwxrwxrwx 1 root root 12 Dec 1 18:42 /boot/xen.gz -> xen-4.2.5.gz
chkconfig xend on #配置xend服务开机自启动
6. 安装xen内核
yum -y install kernel-xen
注意:kernel-xen安装依赖kernel-xen-firmware,由于这两个包比较大,建议下载到本地用 yum -y localinstall kernel-xen* 完成安装
cat /boot/grub/grub.conf
#如下图:
7. 配置网卡为桥接模式
新建文件**/etc/sysconfig/network-scripts/ifcfg-xenbr0**,保持内容如下:
DEVICE=xenbr0
TYPE=Bridge
ONBOOT=yes
DELAY=0
NM_CONTROLLED=no
BOOTPROTO=static
IPADDR=192.168.3.20
NETMASK=255.255.255.0
GATEWAY=192.168.3.1
修改**/etc/sysconfig/network-scripts/ifcfg-eth0**,保持内容如下:
DEVICE=eth0
HWADDR=F4:CE:46:85:64:34
TYPE=Ethernet
UUID=c27373b9-a698-4ac8-9afe-a4dee87f5704
ONBOOT=yes
BRIDGE=xenbr0
NM_CONTROLLED=no
service network restart #重启网络
8. 重启服务器
重新启动系统并进入Xen内核的Linux,测试如下图:
9. 安装虚拟化管理工具集
yum -y install libvirt
libvirt提供一种虚拟机监控程序不可知的API来安全管理运行于主机上的来宾操作系统。libvirt本身不是一种工具,它是一种可以建立工具来管理来宾操作系统的API。libvirt本身构建于一种抽象的概念之上。它为受支持的虚拟机监控程序实现的常用功能提供通用的API。libvirt起初是专门为Xen设计的一种管理API,后来被扩展为可支持多个虚拟机监控程序。
service libvirtd start
yum -y install python-virtinst
包含一个使用libvirt在虚拟机内部启动安装操作系统版本的Python模块(如命令:virt-install、virt-clone)
10. 配置操作系统安装源
在192.168.3.10:81 挂载CentOS-6.6-x86_64-minimal.iso,并将里面文件拷贝到apache网站根目录下centos6.6,使在192.168.3.20上能通过http://192.168.3.10:81/centos6.6 访问到安装镜像 注意:镜像文件.treeinfo缺少一行,导致安装系统时找不到kernel,保持中间段如下:
[images-xen]
kernel = images/pxeboot/vmlinuz
initrd = images/pxeboot/initrd.img
11. 字符界面安装CentOS
mkdir -p /data/xen
virt-install -n vm21 -r 2048 --vcpus=2 --nographic --disk path=/data/xen/vm21.img,size=20 \
-l http://192.168.3.10:81/centos6.6/ --bridge=xenbr0,model=virtio
virt-install命令参数:
-n --name= 客户端虚拟机名称
-r --ram= 客户端虚拟机分配的内存
-u --uuid= 客户端UUID
--vcpus=2 客户端的vcpu个数
-v --hvm 全虚拟化
-p --paravirt 半虚拟化
-l --location=localdir 安装源
--vnc 使用vnc
-c --cdrom= 光驱 安装途径
-s --file-size= 使用磁盘映像的大小 单位为GB
-f --file= 作为磁盘映像使用的文件
--disk= 使用不同选项作为磁盘使用安装介质
12. 克隆镜像
virt-clone -o vm21 -n vm22 -f /data/xen/vm22.img
13. Xen管理命令实例
ls /etc/xen #xen配置文件目录
xm list #显示虚拟机运行状态
xm shutdown linux1 #关闭linux1虚拟机
xm console linux1 #连接虚拟机linux1控制台,连接到虚拟机上面可以用组合键 ctrl + ] 键切换到物理机
xm pause linux1 #暂停虚拟机linux1
xm resume linux1 #恢复被暂停的虚拟机linux1
virt-clone -o linux1 -n linux2 -f /data/xen/linux2.img #克隆镜像
xm create linux2 #开启虚拟机linux2
xm console linux2
sed -i 's@HWADDR=@#HWADDR=@g' /etc/sysconfig/network-scripts/ifcfg-eth0
sed -i 's@IPADDR=.*$@IPADDR=192.168.1.112@g' /etc/sysconfig/network-scripts/ifcfg-eth0
sed -i 's@HOSTNAME=.*$@HOSTNAME=linux2@g' /etc/sysconfig/network
以上就是良许教程网为各位朋友分享的Linu系统相关内容。想要了解更多Linux相关知识记得关注公众号“良许Linux”,或扫描下方二维码进行关注,更多干货等着你 !