MCPLive > 杂志文章 > 用Openfiler打造iSCSI SAN系统

用Openfiler打造iSCSI SAN系统

2010-10-07王春海《微型计算机》2010年9月上

当企业用户准备尝试虚拟化解决方案时,往往会发现现有的存储系统性能无法满足需要。而基于硬件的iSCSI SAN成本较高、使用限制较多。有没有适合企业用户采用的低成本解决方案呢?基于软件的iSCSI服务器是不错的选择。微软的Windows Storage Server 2008与开源的Openfiler,可以将普通的服务器配置成iSCSI服务器,为其他应用服务器提供高性能的网络存储功能。


王春海

王春海:河北经贸大学实验师,MCSE、MCDBA、MVP(微软有价值专家);计算机图书作家,在人民邮电、清华大学、电子工业、机械工业、科学、铁道等多家出版社出版20余本网络类、数据恢复类、虚拟机类图书。熟悉VMware、微软系列虚拟机、虚拟化技术,熟悉Windows操作系统、微软的Exchange、ISA、OCS、MOSS等服务器产品,对组建大、中型网络有丰富的经验,主持组建过若干广域网、局域网工程,多次主持税务系统、政府、企业的网络组建、网络改造、网络安全与维护工程。

Tips:存储设备

存储设备就像一个外挂的“移动硬盘”,可以为服务器、工作站提供额外的存储空间。这些外接的存储空间在目标计算机上以“本地硬盘”的模式工作。初的存储设备只能通过光纤、SCSI数据线或者其他的专用线缆、专业接口卡连接到服务器,供服务器(或工作站)使用。由于是专用线缆连接,所以存储设备的接口有限,一般只能同时为两台服务器提供存储。而现在的存储设备更多的是“网络”存储,可以通过IP网络为多台服务器提供额外的存储空间。

专业存储设备是为网站、数据库、操作系统等需要高可用性群集、负载均衡与容错的网络环境中的必需设备,IBM、惠普、思科、华为等厂商都有专业的网络存储设备,但这些存储设备造价较高,一般的企业很能承受。现在,随着企业用户对网络的依赖越来越高,构建永不间断网站、数据库系统的需求也越来越多,扣除网站与数据库系统的费用,专业存储设备可能会占用较大的硬件投资,并且随着数据量的增加,用户花费在增大存储容量方面的使用费用也会越来越高。

在以前,存储设备只能采购专业公司生产的专用设备。现在随着技术的发展,IT人员也可以在普通服务器的基础上,通过安装专业存储软件(或网络存储操作系统),将普通的服务器配置成存储服务器使用。目前常用的专业存储软件有Windows Storage Server 2008与Openfiler。其中Windows Storage Server 2008是微软公司的产品,不单独对外销售,只提供给OEM用户使用;Openfiler则是免费软件,任何用户都可以从其网站下载并免费使用。因此本文将以Openfiler为核心,从服务器的选择、硬盘选择、软件的配置使用及经验技巧等几个方面,为大家展示如何将普通的服务器打造成为专业存储设备。

服务器与硬盘选择

基于普通设备打造出高效的存储服务器,并不要求作为基础的服务器具有多快的速度、多大的内存,唯一的要求就是稳定,同时要能配置尽可能多的硬盘。大家也可以选择以前淘汰的服务器做存储服务器,但这些服务器的硬盘数量通常比较少、每个硬盘的容量也不大。如果对存储容量要求不高,就可以选择这些旧服务器,只要是2003年以后、具有512MB内存、千兆网卡、RAID5硬盘阵列(非必需,但可提高数据安全性),都可以通过安装Openfiler来实现网络存储。

如果对存储容量有较高的要求,就需要选购一台新的服务器了,要求主要包括:内存至少1GB、至少有1块或2块千兆网卡、支持SATA/SAS硬盘及RAID5并且至少可以安装4块硬盘。在购买服务器时,为了进一步降低成本,可以不购买SAS硬盘,而是在购买服务器后安装SATA硬盘,现在许多服务器如惠普DL380都支持SATA硬盘及RAID5。


配置RAID50磁盘阵列兼顾性能和安全性

如果配置的硬盘是奇数(3、5或7块)或4块以下,可用RAID5技术;如果是6块、8块或10块硬盘,则可采用RAID50的技术(即各用一半硬盘分别组成RAID5,再组成RAID0),这样可以综合考虑性能与安全性。无论是采用RAID5还是RAID50,在初始化硬盘并划分分区的时候,第1个逻辑分区要划分为30GB~80GB左右,剩下的每2TB划分一个逻辑分区。其中第1个小的分区用来安装系统,剩下的则作为存储使用。另外需要注意的是,某些品牌的服务器在默认情况下硬盘阵列的配置中没有启用“读/写缓存”,这样整个硬盘系统的性能会比较低,大家可以使用服务器随机带的配置光盘启动并进入硬盘阵列配置程序中,启用读/写缓存(通常是50%的读缓存、50%的写缓存)。

Openfiler的安装

打造存储服务器的第一步是从Openfiler官方网站(http://www.openfiler.com/)下载Openfiler安装镜像文件,这个产品分32位与64位两个版本,大家可以根据需要选择。Openfiler是一款基于Linux的开源免费产品,它的安装与Red Hat Linux的安装相似,整个产品的安装比较简单。唯一需要注意的是,当安装程序到“Automatic Partitioning”页时,只选中“sda”硬盘,不要选中sdb及其他将要用来做存储的硬盘,否则Openfiler将没有空间可用。等安装好Openfiler后,再对剩余的空间进行管理。本文中我们使用的服务器具有两个逻辑硬盘,其中第1个硬盘大小为20GB,第2个硬盘大小为200GB。

 
Openfiler安装在第1个硬盘中

在安装Openfiler的时候,我们要设置一个用于管理的IP地址,同时要设置子网掩码、网关。如果大家的服务器有多块网卡,可以在安装之后,为第二个网卡设置一个不同的地址。在本文中,设置的IP地址是192.168.10.20。

 
设置IP地址

Openfiler的配置

Openfiler在安装完成后,不需要在控制台操作,所有对Openfiler的控制都可以远程使用Web界面进行管理。其管理地址是https://192.168.10.20:446/,管理用户名是小写的Openfiler,密码是password,大家可以在登陆之后,修改这个密码。下面我们来看一下Openfiler的使用。

登录并修改密码

在网络中的一台计算机上,使用浏览器打开https://192.168.10.20:446/并输入用户名和密码,登陆Openfiler服务器。登陆成功之后,可以在“Accounts→Admin Password”中更改密码,更改密码后需要注销并重新登录。

 
更改密码

启用iSCSI服务

在安装完Openfiler之后,iSCSI服务默认是停止的,大家需要启动该服务。进入“Services”界面,在“iSCSI target Server”后面单击“Enable”,将该服务启动,以后该服务器将会自动启用iSCSI服务。


启用iSCSI服务

为第2块网卡配置管理地址

如果大家使用的是配有两款网卡的服务器,那么在Openfiler中就会找到两块网卡,其中一块网卡在安装时已经设置了192.168.10.20的地址。在实际工作中,大家可以为另一块网卡设置另外一个地址,用来管理Openfiler,或者为网络中的其他计算机或服务器,提供服务点。进入“System”界面,在“Network Interface Configuration”区域单击“eth1”后面的“Configure”链接弹出“Network Interface Configuration”页面。在“Boot Protocol”列表中选择“Static”,在下一个页面为第2 块网卡设置192.168.10.21/24的IP地址,在设置子网掩码时从“Netmask”下拉列表中选择255.255.255.0。


设置网卡

设置完成后,在“System”界面“Network Interface Configuration”区域可以看到两个网卡地址。这两个地址都可以对外服务,也可以用于管理。在Openfiler中,如果有多块网卡并且为每个网卡设置不同的地址,那么在以后的使用中即使其中一块网卡的网线“断掉”,该网卡分配的IP地址也会自动在其他网卡上启用,这样就不会因为网络连接的问题而造成网络中断了。


设置IP地址

网络访问配置——添加客户端服务器地址

我们在文章开头说过,网络存储设备是为网络中的其他服务器(或工作站)提供外部存储空间的。因此为了便于介绍存储服务器的使用,Openfiler在本文中将为网络中的一台VMware ESX Server服务器提供存储空间,该服务器的地址是192.168.10.14与192.168.10.15。

 
添加网络访问地址

在“System”界面的“Network Access Configuration”区域,可以添加网络访问地址,例如网络中一台VMware ESX Server需要使用此存储服务器提供的存储,则可以将VMware ESX Server服务器的地址(192.168.10.14/192.168.10.15)添加到网络访问列表中。如果有其他服务器(或工作站)需要使用Openfiler提供的空间,同样需要将这些服务器的地址添加到列表中。在添加地址的时候,子网掩码均选择255.255.255.255,用来定义一个具体的主机的地址。

为Openfiler配置存储器

在本文中Openfiler存储服务器具有两个硬盘,其中20GB硬盘已经用来安装Openfiler操作系统,而剩下的200GB硬盘则用来做数据存储。

将可用空间划分为Openfiler存储

要将剩余的200GB硬盘划分为Openfiler可以分配的存储空间,需要按照下面的步骤操作:

1.进入“Volumes”界面,单击右侧的“Block Devices”,在“Block Device Management”列表中,显示有当前系统中所有的硬盘,其中20GB硬盘已经划分了3 个分区并安装了操作系统,200GB硬盘还没有分区。单击第2块硬盘/dev/sdb的链接。

 
选择第2块硬盘

2.进入“Create a partition in/dev/sdb”界面(如果没有出现,移动滚动条到底部就可以看到),单击“Create”按钮,将所有的200GB硬盘划分为一个分区。

3.创建分区后,在“Create a partition in/dev/sdb”界面,单击“Create”按钮创建卷。

 
创建卷

4.创建卷后还要将卷添加到“卷组”。在右侧单击“Add Volume”链接, 在“Volume Group Management”界面的“Volume group name”区域设置一个卷组的名称(如VG1),选中要添加的物理卷,单击“Add volume group”按钮,将卷添加到卷组。


添加到卷组

完成上述操作后,这个200GB的硬盘空间就可以由Openfiler服务器对外进行分配了。

创建卷并对外分配空间

本文中Openfiler服务器有200GB的可用空间对外分配,在实际工作中,这些空间不会“一次性”分配给某个服务器,而是根据服务器的需求进行按需分配。当为服务器分配的空间不够时,可以在Openfiler服务器上对分配的空间进行“扩充”,而目标服务器上通过简单的操作就能使用新增加的空间。

 
创建卷

现在我们尝试分配一个45GB左右的卷,具体操作步骤为:在“Volumes”界面单击“Add Volume”链接,然后向下拖动滚动条,在“Create a volume in VG1”中,设置卷的名称(本文中为ESX1)、大小(本文中为45GB),并在“Filesystem/Volume type”列表中选择iSCSI,然后单击“Create”按钮。

为VMware ESX Server服务器分配新创建的卷

在创建了ESX1的卷后,还必须将该卷分配给对应的服务器才能使用。

1.在“Volumes”页中,单击“iSCSI Targets”链接,在“Add new iSCSI Target”选项中,设置一个iSCSI目标,单击“Add”按钮。每个iSCSI目标与一个卷相关联,通过iSCSI目标将卷分配给网络中的服务器。


添加iSCSI目标

添加iSCSI目标时,既可以用默认值,也可以为了以后管理方便,修改iSCSI目标的默认值。例如我们可以将iqn.2006-01.com.Openfiler:tsn.后面的文字删除,而改成要分配给的服务器名称(如ESX4-1)。


映射卷到iSCSI目标

2.在添加了iSCSI目标后,向下拖动滚动条,在“Settings fortarget:iqn.2006-01.com.Openfiler:tsn.esx4-1”中单击“Update”按钮。

3.单击“LUN Mapping”,单击“MAP”按钮,映射ESX1卷到新创建的iSCSI目标。


网络访问

4.单击“Network ACL”链接,将iSCSI目标分配给VMware ESX Server服务器,前面我们已经添加了VMware ESX Server服务器的地址。在“Access”下拉列表中,将访问属性由“Deny”修改为“Allow”,然后单击“Update”按钮。

在VMware ESX Server中添加iSCSI存储

在完成上述操作后,使用vSphere Client连接到VMware ESX Server,为VMware ESX Server添加iSCSI存储。关于VMware ESX Server添加存储的操作,本刊曾经有过介绍,本文不过多涉及,我们将精力放在iSSI存储的设置上。如果是Windows XP、Windows Server 2003、Windows 2000等操作系统,使用存储服务器提供的空间,则需要安装“iscsi发起程序”连接到存储服务器,大家可以从微软网站(http://www.microsoft.com/downloads/details.aspx?familyid=12CB3C1A-15D6-4585-B385-BEFD1319F825&displaylang=en)下载。在Windows Vista及其之后的系统中,已经集成了这个程序。

扩充iSCSI分配的卷的容量

在使用iSCSI服务器为VMware ESX Server提供存储时,只要iSCSI服务器有可用的空间,大家就可以随时根据需要,为VMware ESX Server进行“扩容”,下面介绍这一操作。

首先需要在Openfiler服务器上,扩充卷的大小,步骤如下:

1.登录Openfiler存储服务器,进入“Volumes”链接,拖动滚动条到底部,在esx1卷右侧单击“Edit”链接。


编辑卷

2.进入“Edit properties of volume esx1”页,在“New volume size in MB”后面,键入新的卷大小,或者拖动滑动块调整大小,然后单击“Change”按钮。

 
更改卷大小

3.使用vSphere Client登录到VMware ESX Server,在“配置”中重新扫描iSCSI适配器并在“存储器”中扩容即可。

写在后

Openfiler是一款非常优秀的网络存储软件,许多企业尤其是对“版权”与费用敏感的公司,都在使用这款软件。企业用户在组建SQL Server群集、Windows Server 2003/2008群集,以及微软的Hyper-V Server与VMware ESX Server的虚拟机与VMotion的时候,都需要用到网络存储,而选择Openfiler+标准服务器做网络存储,对许多企业用户来说是非常不错的选择。

Openfiler对服务器的配置要求低、容易安装配置,运行稳定可靠。Openfiler提供的功能也比较多,但对于大多数企业用户来说,主要是用Openfiler做iSCSI存储服务器,而很少用其它功能。在配置存储服务器的时候,硬盘的容量、性能与网卡的速度,对整个网络存储的性能影响比较大。使用Openfiler,在配置好后,就可以像使用本地硬盘一样使用网络存储,并且可以根据需要随时扩充,它的易用性会让人忽略网络存储与本地存储的区别。当然,因为Openfiler是一款免费软件,所以当使用Openfiler出现问题时无法及时获得技术支持。另外,Openfiler的web管理界面中,菜单稍显混乱,初学用户不太容易上手。

分享到:

用户评论

用户名:

密码: