摘要:本文阐述了选用Openfiler和XenServer的原因,并架设了两台XenServer主机,一台Openfiler存储服务器,介绍了存储服务器提供iSCSI存储和NFS存储的详细过程,包括服务器的架构以及存储设备和XenServer的相连,总结了共享存储在虚拟世界中的作用。
中图分类号:TP333 文献标识码:A 文章编号:1007-9416(2014)01-0047-02
虚拟化技术最早出现在上个世纪60年代,美国IBM公司在大型机CP-40系统中尝试虚拟化的实现,随着小型机以及x86的流行,虚拟化技术越来越成熟,虚拟化成为眼下计算机网络领域一个相当热门的话题,很多企业、学校都在开展某种虚拟化项目,据调研公司TheInfoPro的一项调查显示,2008年有30%的IT企业采用了新服务器虚拟化技术,到2009年比率升到50%以上,目前虚拟化市场呈现三大主流产品VMware、思杰和微软三足鼎立的势态。
VMware技术处于领先地位,但是在对虚拟化产品VMware vsphere和XenServer进行了仔细研究比对,并根据实际环境,笔者采用了XenServer架设环境,原因在于:首先从成本上比较,XenServer是一款基于开源XEN系统管理程序的免费虚拟化平台,可高效地管理Windows和Linux虚拟服务器。vsphere作为一款服务器虚拟化平台,产品和控制台vCenter需要耗资购买;其次从系统架构上来说,两种产品都采用的裸机管理程序技术,VMware实现虚拟化的主要方式可以理解为二进制转换,是一种非常复杂烦琐的系统,需要经常对新硬件设备编写专用的驱动程序支持它。XenServer的体系结构与VMware截然不同,可以利用标准的开源Linux设备驱动程序,能够获得非常广泛的硬件支持,不需要再进行额外的安装管理,这个优点,使得缺乏专业设备的IT人员可以将XenServer架设在个人笔记本电脑或工作站上运行。
为了实现XenServer高级功能,如HA(高可用性),Xenmotion(动态迁移)等,就需要加载共享存储,一般可以选择的网络存储设备有SAN和NAS,SAN(存储区域网)是将阵列和计算机用光纤通道技术连接起来,速度快、设备功能强大,但费用非常昂贵,属企业级设备。NAS(网络连接存储) 是一种专业的网络文件存储及文件备份设备,它按照TCP/IP协议在局域网内进行通信,可以说NAS存储是一台内嵌操作系统具有大容量硬盘的计算机,费用相对SAN要低廉一些,但对于资金紧缺的部门或个人用户,只能望而却步。所以笔者选用OpenFiler存储管理系统来解决存储的问题,它是基于浏览器的免费网络存储管理程序,可以提供基于文件的网络连接存储(NAS)和基于块的存储区域网(SAN)。
1 平台搭建及基本架构
1.1 环境搭建
实验中以两台IBM X3650作为XenServer的底层虚拟主机,CPU支持VT技术,两台虚拟主机XenServer01和XenServer02,IP分别为172.16.0.1和172.16.0.2;一台笔记本电脑安装了XenCenter(即管理虚拟机主管理工具),并设置共享D:\MYISO文件夹,IP为172.16.0.200;一台普通PC配置不高但硬盘容量较大,选它作为存储设备,预分配IP为172.16.0.100。
1.2 安装Openfiler
下载Openfiler安装镜像文件,选择不同的方式在PC机上安装,默认设置键盘和语言设置之后,清除所有磁盘分区,新建基本的三个分区/boot、/根分区和swap交换分区,剩余的空间留作网络存储空间,安装方法如同Linux操作系统。
1.3 创建资源池
使用资源池,可以将多个服务器以及与之连接的共享存储作为统一的资源进行管理,因此能够根据虚拟机资源需求和业务优先级灵活部署虚拟机。在PC机上打开XenCenter的界面,在工具栏上单击新建池按钮,创建资源池Pool,并将两台虚拟主机加进资源池中,选择01服务器作为资源池的主服务器。
2 Openfiler为XenServer资源池提供共享存储
2.1 创建iSCSI存储
在PC机上登录Openfiler管理界面https://172.16.0.100:446,默认用户名为openfiler,密码为password。登录主界面后,须启用相应服务,规定允许访问的合法的网段等一系列配置后发动器才能发起连接。
(1)首先需要进入服务Services界面,在iSCSI target Server后面单击Enable按钮,启动服务。
(2)然后需要规定访问存储服务器的客户机范围,点击管理界面上系统System标签,下拉到网络访问列表配置选项,配置允许访问存储的IP地址段和子网掩码172.16.0.0/24,点击Update选项保存配置。
(3)再点击管理界面上方的卷Volumes标签,点击块设备Block Devices选项,可以查看到当前存储服务器所拥有的物理磁盘,目前只有一块磁盘分区sda,设定容量大小后按顺序创建物理组PG和卷组VG,选择卷时类型为块block。
(4)接着,点击卷管理界面的iSCSI Targets,先添加存储资源,这时建立的iSCSI LUN,还没有映射给发起方,在网络上无法找到它,所以需要把它映射到iSCSI Target上,就会被客户端发现联接并使用。完成以上步骤之后,保存并退出,这时在Target栏下会出现一行存储目标名字为iqn.2013等信息,此时Openfiler设置完成。
2.2 XenServer创建iSCSI存储以上设置完成后,要回到XenCenter界面,为资源池寻找iSCSI存储。选中资源池,点击创建新存储库SR,在弹出新建存储库向导中选择虚拟磁盘存储类型为软件iSCSI,点击下一步出现连接界面,取名iSCSI SR;在位置界面输入172.16.0.100,端口默认,然后点击检测IQN,稍等片刻会发现在存储服务器上的目标IQN的名字iqn.2013。此时发现目标LUN变成可点击的状态,点击发现目标lun0:98660,点击完成,弹出对话框询问是否格式化磁盘,单击是;即连接iSCSI Target成功。这时,在资源池的下方出现了一块可用的共享存储.存储库在磁盘上独立存在,虚拟磁盘、故障转储文件或已挂起的虚拟机映像都将会存储在池的共享存储中,凡是资源池中的各服务器或者虚拟机都可以共享SR,随机访问该存储设备,提供了强大的故障恢复机制。
2.3 创建NFS存储
Openfiler不仅可以提供iSCSI存储,还可以提供基于NFS、SMB协议的存储。NFS允许用户跨网络访问文件,并能够像操作本地文件目录一样操作这些远程文件,它的最大优点就是访问简易和数据保护性能高。建立NFS存储的过程与iSCSI存储基本相同。不同之处在于:服务类型不同,这里需要选择nfs server服务,设置为Enable;创建卷类型要选择xfs,其余和连接iSCSITarget类似,NFS相对来说更简单一些。
3 意义
虚拟服务器的高性能动态迁移的实现必要条件就是要求各个服务器有共享的存储区。而传统的DAS直接连接方式能够解决单台服务器的存储空间扩展、高性能传输需求,所以每台服务器在需要增加存储容量时,只能增加各虚拟服务器本地的容量,因为这些本地磁盘空间不能被资源池里的其他服务器任意访问,这样在实现动态迁移的功能时,必须将原资源池里运行的虚拟机所占的磁盘上的数据复制到目的服务器上,这样复制的数据量日益增加,会导致客户端运行缓慢等结果,给用户带来极大的不便。使用共享存储能方便地解决共享资源池里共享存储空间的问题。iSCSI存储和NFS存储方式对信道没有很高的要求,只是基于TCP/IP协议,简便易行,快捷而且经济。并在存储池中按需要建立一个或多个不同大小的虚卷,并将这些虚卷按一定的读写授权分配给存储网络上的各种应用服务器。这样就达到了充分利用存储容量、集中管理存储、降低存储成本的目的。