第一步、centos7安装Xen环境
在虚拟机领域,Xen具有非常高的知名度,同时Xen也具有非常高的难度,仅仅理解它,也不是那么容易,但是拿来去研究一下虚拟云桌面倒还是可以一试。在传统的虚拟机架构中,虚拟机软件运行于HostSystem中,而Guest System运行于虚拟机软件中,为了提高Guest System的运行速度,虚拟机软件一般会在Host System中使用内核卡一个洞,将Guest System的运行指令直接映射到物理硬件上,但是在Xen中,则根本没有Host System的概念,传说它所以的虚拟机都直接运行于硬件之上,虚拟机运行的效率非常的高,虚拟机之间的隔离性非常的好。
当然,传说只是传说。我刚开始也是很纳闷,怎么可能让所有的虚拟机都直接运行于硬件之上。后来我终于知道,这只是一个噱头。虚拟机和硬件之间,还是有一个管理层的,那就是 Xen Hypervisor。当然 Xen Hypervisor 的功能毕竟是有限的,怎么样它也比不上一个操作系统,因此,在 Xen Hypervisor 上运行的虚拟机中,有一个虚拟机是具有特权的,它称之为 Domain 0,而其它的虚拟机都称之为 Domain U。
Xen的架构如下图:
Xen的架构
Xen 虚拟机架构中没有 Host System,在硬件层之上是薄薄的一层 Xen Hypervisor,在这之上就是各个虚拟机了,没有 Host System,只有 Domain 0,而 Guest System 都是 Domain U,不管是 Domain 0 还是 Domain U,都是虚拟机,都是被虚拟机软件管理的对象。
既然 Domain 0 也是一个虚拟机,也是被管理的对象,所以可以给它分配很少的资源,然后将其余的资源公平地分配到其它的 Domain。但是很奇怪的是,所有的虚拟机管理软件其实都是运行在这个 Domain 0 中的。同时,如果要连接到其它 Guest System 的控制台,而又不是使用远程桌面(VNC)的话,这些控制台也是显示在 Domian 0 中的。所以说,这是一个奇异的架构,是一个让人很不容易理解的架构。
关于Xen更详细介绍可以参考官网 https://wiki.xen.org/wiki/Category:Xen
安装采用的是CentOS7 系统。
首先对系统做更新
yum install -y
然后按照步骤执行
[root@localhost~]#yum-yinstallcentos-release-xen-48.x86_64[root@localhost~]#sed-i-e"s/enabled=1/enabled=0/g"/etc/yum.repos.d/CentOS-Xen-48.repo[root@localhost~]#yum--enablerepo=centos-virt-xen-48-yupdatekernel[root@localhost~]#yum--enablerepo=centos-virt-xen-48-yinstallxen[root@localhost~]#yum-yinstallgnutls-utilsvte3dbus-libsPython-ipaddr[root@localhost~]#yum--enablerepo=centos-virt-xen-48-yinstalllibvirtlibvirt-daemon-xenvirt-installvirt-manager[root@localhost~]#cd/etc/yum.repos.d/[root@localhostyum.repos.d]#lsCentOS-Base.repoCentOS-CR.repoCentOS-Debuginfo.repoCentOS-fasttrack.repoCentOS-Media.repoCentOS-Sources.repoCentOS-Vault.repoCentOS-Xen-48.repo[root@localhostyum.repos.d]#mvCentOS-Base.repoCentOS-Base.repo.bak
具体安装介绍如下
yum -y install centos-release-xen-48.x86_64
sed -i -e "s/enabled=1/enabled=0/g" /etc/yum.repos.d/CentOS-Xen-48.repo
Tips:repo配置enabled=0是禁用该源,enabled=1是启用该源,sed的用法参考https://www.cnblogs.com/starof/p/4181985.html
yum --enablerepo=centos-virt-xen-48 -y update kernel
yum --enablerepo=centos-virt-xen-48 -y install xen
输入xl info 验证,出现如图所示信息表示安装成功。
经过一番努力,终于将Xen 安装完成,接下来就使用Xen创建window7虚拟机
首先需要准备window7的iso镜像文件
然后进入/etc/xen目录下 可以看到有一个xlexample.hvm的默认配置文件
我们创建目录config.d 然后复制此文件到该目录下,并将其改为
xen-win-hvm.cfg
更改此文件的内容为如图所示:
将配置文件中的vnclisten设置一个本地的监听,后面可以通过vnc进行访问
最后执行
xl create /etc/xen/config.d/xen-win-hvm.cfg
此时输入netstat -tunlp 就可以看到vnc 5900的端口,并且输入xl list 可以看到刚创建的镜像
上面是创建了虚拟镜像,但是还需要安装系统,可以通过vnc客户端,访问并进行系统的安装.
这里使用的是TightVNC
然后输入镜像的VNC配置,链接成功后就可以进行系统的安装