基于Openfiler的存储在企业中的应用
2017-04-15王煜林沈煜林
王煜林+沈煜林
摘要:该文从企业的实际需求出发,利用Openfiler后端存储和Linux集群,并结合LVM技术,设计和实现了一套基于Openfiler下的SAN存储扩容系统。安装Openfiler及Linux系统,前者作为后端存储的管理端,后者作为集群的服务器。Linux对Openfiler共享存储进行登录与识别,通过LVM技术将Openfiler共享存储挂载到Linux集群上,从而扩大其存储容量。本文针对企业存储的不连续性及可扩展性问题,实现了在存储中的在线扩容,保证存储容量的同时也实现存储服务的不间断。
关键词:Openfiler;SAN;Linux;LVM;集群
中图分类号:TP393 文献标识码:A 文章编号:1009-3044(2016)34-0057-03
Abstract:In this paper, starting from the actual demand of enterprise, use Openfiler back-end storage and Linux cluster, combined with the LVM technology, designed and implemented a system based on the SAN storage under the Openfiler expansion. Install Openfiler and Linux system, the former as the back-end storage management side, the latter as a cluster of servers. Linux to login and recognition of Openfiler Shared storage, through LVM technology will Openfiler Shared storage mounted onto a Linux cluster, thus to extend its storage capacity. In this paper, in the light of the discontinuity of enterprise storage and scalability issues, their online in the storage, to ensure that the storage capacity at the same time also realizes the storage service uninterrupted.
Key words:openfiler; SAN; LiSCSI; LVM; cluster
1 绪论
随着计算机技术的发展和广泛应用,存储技术已经得到了业界和各个应用领域专业人士的重视。数据量的迅速增长为企业的发展提出了新的问题和要求,如何确保数据的一致性、安全性和可靠性,如何实现不同数据的集中管理,如何实现网络上的数据集中访问,如何实现不同主机类型的数据访问和保护等等,所有这些都呼唤着新的网络存储技术及其产品的出现。Openfiler是一个开源的网络存储管理实用程序。使用Openfiler这一工具来作为后端存储的管理端。在基于IP SAN存储的iSCSI协议下与linux集群的基础上将节点与Openfiler的磁盘进行挂载。通过Linux集群的节点管理,实现SAN存储的存储管理与存储的稳定性管理。利用LVM技术的特性,在Openfiler上使用LVM对Linux的磁盘进行扩容,保证存储容量同时在线的实现扩展存储。
2 基于Openfiler的SAN存储的规划
2.1 网络操作系统要求
基于Openfiler的SAN存储需要在Linux上组建集群:集群的节点有node1、node2、node3,需要安装ricci;node4为管理集群主机,需要安装luci。4个节点均采用Red hat Linux 6企业版系统。后端存储管理及在线扩容服务由一台安装Openfiler系统的主机提供。
2.2 网络拓扑图设计
在整个网络拓扑中,luci作为管理集群的主机,连接着3台ricci。luci的IP为192.168.1.100,三个节点的IP分别为node1:192.168.1.1,node2:192.168.1.2,node3:192.168.1.3。Openfiler的IP地址为192.168.1.19,连接整个集群,网络设计的拓扑图如图1所示。
3 基于Openfiler的SAN存储的实现
3.1 Openfiler系统的安装
3.1.1 在存储服务器上安装Openfiler
Openfiler是一个基于浏览器的免费网络存储管理实用程序,可以在单一框架中提供基于文件的网络连接存储 (NAS) 和基于块的存储区域网 (SAN),也可以作为后端存储的管理端。作为本文的主要存储后端,配置好Openfiler系统是关键点。
3.1.2 通过Web方式远程配置Openfiler存储设备
首先要启动Openfiler后台,通過远程客户端浏览器登录。进入管理界面之后添加Initiator客户端所在的网段地址,本课题设置为192.168.1.0网段,用以在之后选择是否授权这个网段的计算机能够连接本台存储,可以通过子网掩码进一步控制数量。管理卷组/dev/sda并创建物理分区。创建iSCSI Target,点击Map将新建立的iSCSI target映射到刚刚卷。
3.2 Linux集群与Openfiler的挂载
3.2.1 Linux环境搭建
集群的节点有node1、node2、node3,需要安装ricci,node4为管理集群主机,需要安装luci。分别为luci,node1,node2,node3设置域名与IP,将光盘路径/dev/cdrom挂载到所有主机的/mnt目录上,以此来创建yum源并安装所需要的luci与ricci服务,原理图如图2所示。编辑ifcfg-eth0和/etc/sysconfig/network为luci和所有节点设置网络IP信息与域名,将系统光盘/dev/cdrom挂载到Linux的/mnt目录下,安装vsftpd服务,并再次将光盘挂载到ftp服务的目录/var/ftp/pub上,启动vsftpd服务并设置为开机自启动。
3.2.2 Linux配置集群
用HA集群原理来配置Linux集群。首先在luci上的浏览器登陆https://luci:8084进入集群配置界面或通过命令登陆。创建新的集群webcluster,将3个node节点加入集群。创建失效域web_f,失效域是HA中提供资源的服务器的集合,当内部某个成员出现故障时,可以将服务切换到其他正常的成员服务器上。添加集群IP地址资源IP Address,集群服务资源Script,存储资源filesystem。
创建服务组web_sg,将三个资源添加到服务组web_sg并启动。
3.2.3 LVM逻辑卷管理
LVM是逻辑盘卷管理(LogicalVolumeManager)的简称,它是Linux环境下对磁盘分区进行管理的一种机制,LVM是建立在硬盘和分区之上的一个逻辑层,来提高磁盘分区管理的灵活性。通过LVM系统管理员可以轻松管理磁盘分區,管理员可以在卷组上随意创建逻辑卷组,并进一步在逻辑卷组上创建文件系统。管理员通过LVM可以方便的调整存储卷组的大小,并且可以对磁盘存储按照组的方式进行命名、管理和分配。而且当系统添加了新的磁盘,通过LVM管理员就不必将磁盘的文件移动到新的磁盘上以充分利用新的存储空间,而是直接扩展文件系统跨越磁盘即可。安装iSCSI和lvm2-cluster服务,识别Openfiler共享存储,并登录。
3.2.4 Linux与Openfiler挂载
挂载就是把目录和分区连接起来,就像Windows下的映射关系。不同的是Windows是把分区映射到一个盘符,而在Linux下是映射到一个目录。将Linux与Openfiler的存储进行挂载,实现在Linux下对Openfiler存储的访问。登录Openfiler共享存储,将Openfiler的存储/dev/sdb创建为逻辑卷LV。在Linux系统中,都是通过将物理存在的分区(或称为卷)PV进行整合,组成一个分区(卷)组VG,进而再次进行分配形成逻辑分区(卷)LV。创建成功的逻辑分区对于操作系统来说会像普通分区无异,其好处是可以动态调整分区大小。所以这样先创建物理卷PV,整合成逻卷组VG,继而划分成逻辑卷LV。最后将逻辑卷LV挂载到集群目录/var/www/html上。
4 系统测试
4.1 集群与Openfiler挂载测试
查看挂载前存储容量,如图3所示。
挂载后再次查看存储容量,结果如图4所示,说明挂载成功。
4.2 Linux集群的节点测试
在所有node节点开启的情况下,启动集群的服务组web_sg,由图5可以看到系统的集群自动跑到节点node1上。
接下来把节点node1系统关闭,再一次查看luci集群的服务组,由图6可以看到集群的节点自动接管服务,跑到了node2上,由于上面的设置,我们知道node2的优先级为2,node3的优先级为3,所以集群自动检测优先级为2的节点,从而保证了集群系统的稳定,也保证了存储服务不间断。
4.3 LVM在线扩展存储测试
要实现在线扩容,需要在Openfiler后端存储管理端添加一块新的磁盘,进而在Linux集群上对其进行识别、登陆与挂载。登陆Openfiler的后台,将Openfiler的/dev/sdb盘拿来做扩容,进入/dev/sdb,创建成物理卷,再次识别与登录Openfiler新加的存储。可以看到,Linux上的磁盘容量发生了变化,多了sdc,如图7所示。
要实现在Linux集群上的扩容,需要将新添加的磁盘容量添加到已有的卷组vg0中,首先将sdc进行物理卷PV的创建,再将创建的物理卷添加到卷组vg0中,之后对LV进行创建并划分容量。查看挂载结果,结果如图8所示,可以看到,sdc已经加入到卷组vg0中,说明在线扩容成功。
5 总结
本文研究的是基于Openfiler环境的SAN存储,基于IP SAN存储的iSCSI协议下,在Linux集群的基础上将节点与Openfiler页面进行挂载,通过提供给web集群节点存储,实现SAN存储并管理,利用LVM技术的特性,在Linux上使用LVM对磁盘进行扩容,保证存储容量同时在线的实现扩展存储。通过分析和实验各部分理论的工作原理及功能模块的应用,完成初期设定的企业项目需求。目前,由于中小型企业在网络存储方面的成本投入不会太高,因此根据中小型企业的网络存储需求而规划的SAN存储体系,需要作为存储的设备有冗余的能力。配置一个花费较少,能实现与市场上的存储服务器系统性能的SAN存储机制会成为这群受众更优的选择。
参考文献:
[1] Bill Childers.OpenFiler: an Open-Source Network Storage Appliance[N].Linux journal,2009(181):3-12.
[2] 冯坚.基于LVS和Openfiler的网络教学平台服务器集群系统的设计与实现[J].广东广播电视大学学报,2010(1):1-8.
[3] 乔静,屈志强,李娟.Linux服务器安全动态磁盘管理方案[J].电脑知识与技术,2010(23):1-3.
[4] 胡忠斌.Linux中的LVM管理[J].电子世界,2013(24):1-3.
[5] 任劲.iSCSI存储系统关键技术的研究与实现[D].武汉:华中科技大学,2002:24-59.
[6] 陈斌.以LVM为基础的小型企业数据存储应用研究[J].辽宁师专学报,2013(4):1-3.