1、引言
虚拟化技术最早在大型机上进行开发,随着X86架构处理器性能的提高和普及,虚拟机技术开始进入X86平台。目前,基于X86平台的局域网面临着软硬件成本高、安装维护升级困难、基础架构利用率低、故障切换和灾难保护不足、客户端软件应用无法控制等缺点.本文以Citrix的XenServer来建立服务器系统、以XenApp建立发布客户端所需应用,配合基于PXE的无盘Linux客户端系统来建立局域网应用平台.客户端只需要以浏览器来访问XenApp发布的应用,这样就可以有效地改善以上问题。
2、虚拟化技术和软件
2.1服务器虚拟化
服务器虚拟化技术是让一台物理服务器同时支持运行多个虚拟机的相互隔离的工作负载(包括操作系统、应用组和配置),管理员就可利用虚拟机将工作负载从物理计算平台中分离出去,这样就可跨物理服务器快速迁移正在运行的工作负载,并且使得局域网中可以最大限度地使用可用的计算资源(传统服务器仅能达到10%~30%的系统处理能力),降低成本,并将应用有效、可靠地交付给用户。除此之外,还解决了多台物理服务器硬件成本高、占地面积大、耗费电力资源、占用大量的维护管理时间等弊端。
2.2 XenServer简介
XenServer是由Citrix公司推出的基于Linux的服务器虚拟化和动态工作负载交付管理软件产品,该软件提升了服务器利用率,降低了成本,简化了物理和虚拟环境中的服务器管理和应用部署。XenServer不需要在其他操作系统下运行,可直接作为系统安装,它在硬件和虚拟操作系统之间提供了一个抽象层,让每台物理服务器都能运行一个或多个目前已知的绝大部分操作系统,将操作系统及其应用从硬件中有效地分离出来(XenServer
工作方式如所示)。XenServer需在客户端利用XenCenter软件来进行操作。
2.3应用虚拟化
应用虚拟化技术就是将应用程序虚拟化,它是种可以将应用程序与底层操作系统隔离的技术。应用程序可以直接在远程服务器上运行,在用户桌面系统下显示应用程序界面和运行结果。客户端无需安装此应用程序,并且不管客户端采用哪种底层操作系统都可,这样就可以在一定程序上节省客户端系统的安装、维护、升级等费用和时间。
2.4 XenApp简介
XenApp是一种按需应用交付的虚拟化软件,能够在数据中心对所有Windows应用实现虚拟化、集中部署和管理,并能作为一项服务、通过任何设备向所有用户交付应用。客户端只需要安装ICA
(Independent Computing
Architecture)客户端连接程序,就可以通过浏览器进行XenApp连接获得应用;此外,XenAp还可通过互联网进行安全连接,而且客户端不仪可以是X86、MAC计算机,还可以是智能手机等终端设备。XenApp
工作方式如所示。
3、PXE无盘Linux简介
PXF(Preboot Execute Environment)是由Intel公司开发的一种远程引导技术。PXE无盘Linux支持客户端通过网络从服务器下载Linux启动映像,并由此支持来自网络的Linux的启动过程口在启动过程中,客户端必须由服务器的DHCP服务分配IP地址,再通过TFTP(Trivial File Transfer Protocol)协议下载启动映像到内存中执行,由这个启动软件包完成客户端的基本配置,从而引导预先安装在服务器中的Linux操作系统。PXE引导模块目前在主板BIOS中基本全部附带,而免费的Linux操作系统可以节省大量的软件费用。
PXE无盘Linux的大致流程:
①户端通过主板所载网卡的PXE功能,从CentOS的DHCP服务获取IP地址;
②DHCP服务将”filename "pxelinux.0";"参数中指定的文件(pxelinux.0)推送给客户端;
③户端执行pxelinux.0;
④pxelinux.0程序读取tftp服务的配置文件(通常是"'/tftpboot/pxelinux.cfg/default"',也可以根据客户端机器的MAC地址单独指定);
⑤客户端执行配置文件中指定的动作。
4、局域网应用平台的设计
在本例中.局域网服务器采用IBM BladeCenter HS21刀片服务器;客户端共100台,属于瘦客户端,因此不需要高配置,单核处理器+256M内存可以流畅地运行系统。如果客户端将来进行扩充,可采用刀片服务器群集,每台服务器可以带200台客户端为上限,客户端较多时,可考虑单独设立存储服务器。
服务器中安装XenServer系统,考虑到客户端都熟悉Windows平台下的软件操作,所以在XenServer中虚拟两个服务器(可根据实际需要另行添加),其中一台运行CentOS,用来提供PXE无盘Linux远程引导;另外一台运行Windows
Server 2008 +
XenApp,进行应用虚拟化。客户端通过PXE远程引导至CentOS服务器,运行浏览器连接XenApp发布的应用。局域网服务器需要三块网卡,一块用于XenServer,IP设置为192.168.0.1;一块用于CentOS
,IP设置为192.168.0.2;一块用于Windows Server 2008,
IP设置为192.168.0.3。应用平台设计如所示。
5、局域网应用平台的实现
5.1 XenServer的安装和配置
①装XenServer,并设置相应IP地址;
②选择任一台装有Windows系统的客户机,安装XenCenter客户端软件,连接至XenServer,创建2台虚拟机并安装CentOS和Windows Server 2008 R2,并进行相应的设置。
5.2 XenApp的安装和配置
①在Windows Server 2008 R2上安装Web服务器、应用程序服务器和终端服务3个服务器角色;安装NET Framework 3.0服务器功能;同时安装客户端所需运行的所有应用程序;
②安装XenApp软件包,并进行配置和初始化操作;
③运行控制台程序,创建Web站点和用户组;
④布应用程序,并根据实际需求为不同的用户组指定不同的应用程序进行发布。
5.3 CentOS配置
①建立DHCP服务和TFTP服务,并安装Sys Linux,可提供pxelinux.0文件并建立一个pxelinux.cfg目录。
②编译新的内核,并放到TFTP根目录下。编译后得到一个符合PXE引导的内核bzImage;
③制作根文件系统,利用现有的正常运行的CentOS文件系统生成为新内核通过NFS挂载的根文件系统;
④设NFS服务,并将建立的根文件系统进行共享;
⑤装ICA支持程序LibMoraf(或Open Motif );
⑥安装基于Linux的ICA客户端程序。
5.4客户端连接
①动客户端,根据CentOS服务器找到DHCP服务井获得IP地址,然后通过TFTP传输所需文件,加载内核,最后加载根文件系统;
②运行FireFox愉入XenApp所在服务器机器名或IP地址((192.1b8.0.2)登录后获取应用。
6、结语
运用虚拟化技术来构建局域网应用平台是发展趋势,它很好地解决了现有局域网平台的一些缺陷。基于Citrix的XenServer服务器虚拟化和XenApp应用虚拟化技术与PXE无盘Linux结合可以最大限度降低局域网构建成本、缩短和简化管理和维护等工作,在此基础上,还可实现互联网和3G无线远程访问和连接.为全网络平台的发展提供了有力保证。