知识:分布式文件系统
分布式文件系统(Distributed File System)是指文件系统管理的物理存储资源不一定直接连接在本地节点上,而是通过计算机网络与节点相连。
下面简单介绍分布式文件系统的历史与现状:
Read more…
分布式文件系统(Distributed File System)是指文件系统管理的物理存储资源不一定直接连接在本地节点上,而是通过计算机网络与节点相连。
下面简单介绍分布式文件系统的历史与现状:
Read more…
Orion是Oracle推出的一款存储测试工具,通过模拟Oracle数据库的IO请求方式来测试存储的性能,很早之前piner就推荐过。从我们的实际使用经验来看,orion的测试结果还是比较符合实际情况的。但是也发现过一些问题,尤其是AIX版本的,测试结果受cache的干扰比较严重,无法将压力压到最终的物理硬盘上去,而Linux版本的一直都还是比较准确的。
Read more…
增强远程镜像
增强远程镜像由全局镜像、全局拷贝和城域镜像组成,能够将数据从一个存储系统镜像到扩展距离之外的另一个存储系统。增强远程镜像可以从存储系统的内部控制数据的同步,这一过程对于主机应用服务器来说是近乎透明的。与FlashCopy不同,增强远程镜像能够不间断地根据主逻辑驱动器对辅助逻辑驱动器进行更新,它不仅可以提供数据可用性,而且还是执行各种灾难恢复和业务连续性计划的关键技术。
城域镜像模式可以为逻辑驱动器提供同步镜像。全局镜像模式不仅可以提供异步镜像,而且还包括了写次序一致性选项。
最多可支持64个镜像对和一对多镜像。TotalStorage DS4000系统内部,可以在位于不同地点的不同机型之间创建逻辑驱动器的镜像(最多可支持64个镜像对),为满足各种最复杂的要求提供了灵活性。一个存储系统可以与多个其他存储系统建立镜像关系,从而为镜像拓扑结构的设计提供了灵活性。
存储系统之间建立的镜像对可以拥有双向的镜像关系,这样就允许每一系统将自己的主逻辑驱动器镜像镜像到另一个存储系统,从而同时为两个系统提供保护,此被称作交叉镜像。
自动镜像创建和维护
这一功能允许动态创建、挂起、恢复和删除镜像。在初始创建期间,存储系统在镜像关系开始之前将主逻辑驱动器的内容拷贝到辅助目标逻辑驱动器。这一功能可以在镜像对存在期间保持数据的同步。
角色互换
主存储系统和辅助系统之间保持的镜像对关系可以被颠覆过来。在主存储系统发生故障时的灾难恢复期间,辅助逻辑驱动器将承担主逻辑驱动器的责任并继续执行数据处理。此时,通过使用角色互换命令,新的主系统可以将原来的主系统作为自己的镜像(见角色互换图)。

+++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++
作为容灾解决方案的重要组成部分,remote mirror一直是高端磁盘阵列才有的功能。如今作为中端产品的DS4000系列同样提供了完善的remote mirror功能,而且使用非常方便。下面我们就利用一个实际例子,介绍一下这个高级功能的使用方法。
1)进行Mirror前,我们先查看一下情况,并且加上license:
注意必须保证两台DS4000的IP和SAN的双网连通,具体的连接方法请参阅手册。
加上remote mirror的license
2)主节点上激活remote mirror:
菜单:Storage Subsystem/remote mirror/Active:
选择在现有的array上建立一个mirror的reposity逻辑卷
选next>
提示在备份节点上也需要相同的操作:
主站点上的两个repository已经建立成功
3)在备份站点上激活:
过程和主节点相同:
4)在备份节点上为remote mirror的目的地,建立两个大于原盘30G的卷。
V3-1-mirror-1(40GB)
V3-2-mirror-2(40GB)
把备份站点的目标盘影射给备份站点的主机。
5)建立逻辑盘的mirror对
5.1)在主节点上:单击右键/create remote mirror
选备份存储
选目标盘
选模式:
选同步的优先级
确认
完成:
用同样的方法作另外一个:
5.2)观察主站:
5.3)观察备份站:
5.5)观看完成情况:
主站上右键原盘/属性可以查看镜像的完成情况。
备份站方法相同:
5.6)主站菜单发生变化,增加了remote mirror相关的菜单:
suspend mirroring
resume mirroring
test mirror communication
remove mirror relationship
备份站相同的情况也类似:
测试通讯线路:
备份站点上,AIX通过cfgmgr可以见到新的pv
root@p650_12/>lsdev -Cc disk
hdisk0 Available 1Z-08-00-8,0 16 Bit LVD SCSI Disk Drive
hdisk1 Available 1Z-08-00-9,0 16 Bit LVD SCSI Disk Drive
hdisk2 Available 1Z-08-00-10,0 16 Bit LVD SCSI Disk Drive
hdisk3 Available 1Z-08-00-11,0 16 Bit LVD SCSI Disk Drive
hdisk4 Available 1n-08-02 1742-900 (900) Disk Array Device
hdisk5 Available 1A-08-02 1742-900 (900) Disk Array Device
hdisk6 Available 1n-08-02 1742-900 (900) Disk Array Device
hdisk7 Available 1A-08-02 1742-900 (900) Disk Array Device
root@p650_12/>lspv
hdisk0 000007da82f7148c rootvg active
hdisk1 000007da82f714ae None
hdisk2 000007da84c10ebc altinst_rootvg
hdisk3 000007dac64b87f8 None
hdisk4 none None
hdisk5 none None
hdisk6 0053f62fe4cdc30c None
hdisk7 0053f62fe4cdc431 None
5.7)在备份站点上,importvg不成功:
root@p650_12/>importvg -y datavg hdisk6
时间超长。停止。
6)模拟灾难发生后,我们切换主备关系:
6.1)逐一切换每个盘的关系:
用同样的方法,将其他mirror盘,转换为primary角色。
6.2)在importvg,成功:
root@p650_12/>importvg -y datavg hdisk6
datavg
root@p650_12/>
oracle使用完全正常。
6.3)但是主站点上varyonvg datavg的访问会挂起:
6.4)我们再将备份站点上的datavg veryoffvg and exportvg ,再从主DS4500上,将DS4500的remote mirror的主备关系切回去:
6.5)主站点的importvg varyonvg mount一切正常。
数据库使用正常。
7)测试关闭主站的DS4500电源的灾难及恢复情况:
7.1)关闭主站DS4500,在备份DS4500上选择转换成主
7.2)备份服务器测试成功后,备份DS4500恢复备角色。
7.3)不成功
开主站DS4500电源:
都不行。
7.4)证明,上面的恢复都不行,必须按recoery glue描述,删除mirror关系,重建。
8)暂停同步镜像的使用方法:
右键逻辑盘,suspand Mirroring:
可以看到同步复制已经暂停。
利用类似的方法我们还可以恢复同步复制。
由于UNIX操作系统的诸多优点,目前主流服务器多数仍然采用UNIX作为提供服务的系统平台,其中Solaris占了其中的很大比例。本文介绍一下基于solaris的Unix 系统下磁带机配置使用方法。
一、存储磁带简介
磁带存储是相当广泛的范畴,包括DDS、LTO、DAT、DLT和SDLT等等。数十年来各种磁带成了传统的备份媒介。表1 是磁带技术列表:

注:DDS-3 和DDS-4 使用的技术与较早版本不同。最新的磁带驱动器才支持最大的磁带,但大多数驱动器提供只读的向后兼容性。
二、磁带设备的命名规则
通过提供逻辑设备名称,可以指定用于备份的磁带。磁带机命名约定使用逻辑设备名称而不是物理设备名称。下表显示了此命名约定。可以按照图-1所示指定磁带设备。
图 1 磁带机设备名称
大多数 SCSI 磁带机可以自动检测磁带的密度或格式,并相应地进行读取。要确定磁带机支持的不同密度,请查看 /dev/rmt 子目录。该子目录中包含支持每种磁带的不同输出密度的磁带设备文件集。一个 SCSI 控制器最多可有七个 SCSI 磁带机。
通常,可以按照逻辑单元号(范围从 0 到 n)指定磁带机。缺省情况下,磁带机按照“首选”密度写入,该密度通常为磁带机支持的最高密度。如果不指定磁带设备,则命令会按照设备支持的缺省密度写入磁带机编号 0。要将磁带传输到其磁带机仅支持特定密度的系统,请指定按照所需密度写入的设备名称。表2介绍了如何指定磁带机的反绕选项和不同密度。

表2 磁带机的不同密度和反绕选项
三、磁带管理命令
从用户的角度来看,unix的任何设备都可以看做是文件。因此,可以“打开”合适的磁带驱动器文件来进行写入操作,将要备份的数据写入到文件中去。虽然这听上去过于简单了,但是实际情况就是这样。Unix系统把每一个设备都看成一个文件,与普通文件一样处理,这样可以使文件与设备的操作尽可能统一。 从用户的角度来看,对设备的使用和一般文件的使用一样。所以管理磁带的最有效的方法是使用相关命令。
1. ml命令
mt命令用来控制磁带机。可以使用 mt 命令的 status 选项来获取有关磁带机的状态信息。mt 命令可报告配置文件 /kernel/drv/st.conf 中介绍的所有磁带机的信息。
mt命令格式:mt [ -f device ] command [ count ] ,
显示磁带状态
# mt -f /dev/rmt/n status
然后可以替换磁带机编号 0、1、2、3 等,以显示有关所有可用磁带机的信息。
应用实例:
显示 QIC-150 磁带机 (/dev/rmt/0) 的状态:
$ mt -f /dev/rmt/0 status
Archive QIC-150 tape drive:
sense key(0×0)= No Additional Sense residual= 0 retries= 0
file no= 0 block no= 0
重新拉张磁带
如果读取磁带时出现错误,则可以重新张紧磁带、清洁磁带机,然后重试。请勿重新张紧非 QIC 磁带机。
$ mt -f /dev/rmt/3 retension
要反绕盒式磁带,请使用 mt 命令。
$ mt -f /dev/rmt/1 rewind
2.tar命令
tar命令是用来建立,还原备份文件的工具程序,Solaris 系统对tar 进行了增强,使之更胜任系统级别的备份。它允许所有或部分要备份的文件和目录列表保存在一个或多个文本文件中。UNIX环境下根文件系统的/dev目录包含了所有和物理设备关联的文件。当对这些文件进行操作时,实际上是在操作下层的物理设备。如果DAT或DLT的磁带机已经连接好并加电,一般下情况下能够自动检测到磁带机并在自检时会提示是否要配置发现的磁带机,选择配置即可。如果用户在起系统时没有发现磁带机,可能是磁带机的驱动已经安装到系统中了。
tar命令格式:
tar {c|r|t|u|x}[BDeEFhilmnopPqvw@[0-7]][bfk][X...][块大小] [磁带存档文件] [大小] [排除文件...] {文件 | -I 包含文件 | -C 目录文件}…下面介绍常用选项:
将文件复制到磁带
1. 进入包含要复制的文件的目录。
2. 将可写磁带插入磁带机中。
3. 将文件复制到磁带。命令如下:
$ tar cvf /dev/rmt/n filenames
参数说明:c 指明要创建归档文件;v 归档时显示每个文件的名称;
f /dev/rmt/n 指明应该将归档文件写入指定设备或文件。
filenames 指明要复制的文件和目录。使用空格分隔多个文件。
系统会将指定的文件名复制到磁带,并且会覆写该磁带上的任何现有文件。然后从磁带机中取出磁带。在磁带标签中写入文件名称。
应用实例:把/export/home/目录下两个文件文件复制到磁带
$ cd /export/home/
$ ls reports
reportA reportB
$ tar cvf /dev/rmt/0 reports
a reports/ 0 tape blocks
a reports/reportA 59 tape blocks
a reports/reportB 61 tape blocks
$ tar tvf /dev/rmt/0
从磁带中恢复文件
转到要放置文件的目录。
将磁带插入磁带机。
从磁带中恢复文件。 使用命令:
$ tar xvf /dev/rmt/n [filenames]
参数说明:x 指明应从指定的归档文件中提取文件。指定磁带机中的磁带上的所有文件都会被复制到当前目录。v 恢复时显示每个文件的名称。f /dev/rmt/n 指明包含归档文件的磁带设备。filenames 指定要恢复的文件。使用空格分隔多个文件。
3.cpio命令
Cpio命令用于复制需要多个磁带卷的文件、特殊文件或文件系统。或者,当要将文件从运行当前的 Solaris 发行版的系统复制到运行 SunOS 4.0/4.1 发行版的系统时使用。Cpio的命令参数太多,这里只介相关参数。
将目录中的所有文件复制到磁带。步骤如下:
1. 转到包含要复制的文件的目录。
2. 将可写磁带插入磁带机中。
3. 将文件复制到磁带。使用命令:
$ ls | cpio -oc > /dev/rmt/n
参数说明:ls 为 cpio 命令提供文件名列表;cpio -oc 指定 cpio 命令应该在复制出模式 (-o) 下操作,并以 ASCII 字符格式 (-c) 写入头信息。这些选项确保可移植到其他供应商的系统。> /dev/rmt/n :指定输出文件。
系统会将目录中的所有文件复制到指定磁带机中的磁带,同时会覆写该磁带中的任何现有文件。屏幕将显示复制的总块数。
应用实例:
将/export/home/目录中的所有文件复制到磁带 :
$ cd /export/home/kryten
$ ls | cpio -oc > /dev/rmt/0
16 blocks
$ cpio -civt < /dev/rmt/0
-rw-r–r– 1 root other 0 Jul 28 14:59 2004, filea
-rw-r–r– 1 root other 0 Jul 28 14:59 2004, fileb
-rw-r–r– 1 root other 0 Jul 28 14:59 2004, filec
drwxr-xr-x 2 root other 0 Jul 28 14:59 2004, letters
16 blocks
从磁带中恢复所有文件 (cpio)
如果已使用相对路径名创建了归档文件,则恢复文件时会在当前目录中以目录形式生成输入文件。但是,如果已使用绝对路径名创建了归档文件,则将使用相同的绝对路径在系统中重新创建该文件。步骤如下:
1. 转到要放置文件的目录。
2. 将磁带插入磁带机。
3. 从磁带中提取所有文件。 命令如下:
$ cpio -icvd < /dev/rmt/n
参数说明:-i 从标准输入中提取文件。-c 指定 cpio 命令应以 ASCII 字符格式读取文件。-v 在以与 ls 命令输出类似的格式恢复文件时,显示这些文件。-d 根据需要创建目录。< /dev/rmt/n 指定输出文件。
4. tar 和cpio命令对比
在某些情况下,特别是单用户系统,并不需要复杂的备份过程tar和cpic的这样的简单磁带命令完全可以定期地把重要数据保存到磁带上。tar和cpio还能够备份通过NFS加载的本地和远程文件系统。图2 是tar和 cpio 命令的对比和优缺点

图2 是tar和 cpio 命令的对比和优缺点
四、磁带机和存储介质的维护
磁带机和磁带是服务器备份的好工具,但是磁带也有些不利因素:
● 磁带对热和电磁场非常敏感,如果处理不当很容易出错。电磁场由计算机周围的各种常用设备产生,包括UPS 电源、包含电源的外围设备、显示器和扬声器等。 此外,仅仅是读取磁带也会影响数据。
● 磁带是连续存储设备。为了访问磁带上某个指定的文件,必须使磁带卷动到正确的某个点。这对于较老的磁带驱动器常常会出问题。当前的高端驱动器能够在数秒内访问到任意一点。
针对以上缺陷应当采取以下措施:
1. 请定期清洁和检查磁带机,以确保其正确操作。请将磁带存储在远离磁性设备的无尘安全位置。
2. 应该创建一个日志并对其进行维护,该日志用于跟踪存储每个作业(备份)的介质(磁带卷)和每个备份文件的位置。
3. 注意物理安全。在保存备份磁带的位置,应该考虑一般性的物理安全:必须保护磁带免遭偷窃、蓄意破坏以及可能的环境破坏。
4. 正确保存磁带介。一些媒介有特殊的要求,必须加以考虑。比如盒式磁带的磁带卷轴要垂直放置(垂直于地面,就像汽车的轮胎一样),并且与驱动器接触的边朝下(从而重力把磁带拖离磁带轴)。
5. 在备份后对磁带进行标记。应该在标签上标明“磁带 A”、“磁带 B”,依此类推。此标签绝不能更改。每次执行备份时,请创建另一个包含磁带标签,包括以下内容:
备份日期
备份的计算机和文件系统的名称
备份级别
磁带编号(1 至 n 中的任意一个数字,前提是备份跨多个卷)
特定于站点的任何信息
总结:
磁带主要用来离线存储数据,通常用于备份。 虽然使用的操作系统是Solaris,但是其思维也可以应用于其他Unix、BSD、Linux等操作系统。
IBM TotalStorage DS4000系列是IBM推出的适用于中型企业的存储产品,由原先FAStT系列产品升级而来,并增强了某些存储功能。其产品由DS4100(原FAStT100)到DS4500(原FAStT900)能满足从中低端到中高端的大部分存储需求,并在合理的成本基础上,为企业提供完善的产品和服务。在中国企业市场得到了广泛的推广和应用。
DS4000 系列采用 DS4000 Storage Manager V9.10进行存储资源管理、并增强了远程镜像选项,并通过针对较大容量配置的 DS4100 选项以及连接到 DS4400 的 EXP100 串行 ATA 扩展单元来完善和补充入门级和企业级的磁盘系统解决方案。其管理功能非常丰富强大,配置过程也繁琐复杂,本次,我们将向您详细介绍该款产品的初始设置步骤,以及管理软件的配置过程。
初始设置过程
IBM DS4000都是通过IBM的Fast Storage Manager软件来进行管理设置的,每个FAST控制器上都带有一个RJ45的网线口,开始做配置的时候都是通过网络来进行的。同时每个控制器还带有串口,可通过串口来进行IP的修改。一段插入Controller A的RS-232里,另一端连接到另一台Windows 2000/NT4.0的机器串口上。完成设置后,再连接到Controller B上,进行同样的操作。
下面我们以DS4200为例,并通过图示,详细说明配置的具体步骤:启动一个终端软件,例如Windows的超级终端,给连接起个名字,如DS4200。然后需要正确设置连接的串口,本例中是COM2。并选择合适的每秒位数,一般都在2400~9600之间。选择数据流控制为无。

图一
下面我们就进入到连接状态下了。按Ctrl+Break键激活管理界面,当出现Press within 5 seconds:<ESC> for SHELL, <BREAK> for baud rate时按ESC。输入连接密码,默认为infiniti(小写字母)。另外提一下,等待管理界面激活的时间要视选择的每秒位数而定,控制器会自动寻找与之相匹配的速度进行通讯,故在等待激活时不用太心急而误以为是连接失败。由于IBM该系列产品来自LSILogic,所以大家可以看见网络管理的界面上出现LSILogic的图标。

图二
连接上网络后,我们就该正式进行设置了。键入netCfgSet命令:用来设置FAStT200控制器上面的网卡的TCP/IP地址,以便通过以太网口对它进行管理。按回车直到“My Host Name”行出现。键入控制器的名字如果你用DNS来管理它的话。键入控制器IP地址。按回车直到“Gateway IP Address”行,键入地址回车。键入子网掩码。按回车直到退出到-〉提示符下。
当所有的设置完成后,我们还需要最后一步。我们可以键入netCfgShow命令,以检查所有的设置是否正确。如果有错误则再次键入netCfgSet重新设置。
最后,键入sysReboot命令重启控制器,使配置生效。并需要提供一个命令,sysWipe命令,此命令的作用是清空控制器所有配置信息,所以只有当你确认你不再需要原机器内任何数据的时候才使用。
好了,机器的硬件设置已经完成,下一步我们继续讲解Storage Manager—DS4000的管理工具的应用。
Storage Manager—DS4000的管理工具应用
DS4000 Storage Manager现在已经升级到9.1版,IBM DS4000 SV9.1是一个强大的存储资源管理软件,它的主要功能包括:创建硬盘阵列,逻辑盘、动态逻辑盘容量扩展、动态RAID级别调整、管理分配不同的逻辑盘到不同的主机HBA卡、自检查工具:Recovery Guru,Controller Diagnostics, Read Link Status、事件日至、支持从BOOTP,DHCP服务器获得IP管理地址。FlashCopy和RemoteMirror。
该软件自8.0以上的版本有默认IP:
— Controller A:192.168.128.101/255.255.255.0
— Controller B:192.168.128.102/255.255.255.0
下面我们来详细讲解一下应用步骤:
第一步,我们需要启动Storage Manager。SM9.1启动后会自动搜索DS4000系列设备。如下图所示:点击工具栏里的第一个图标 (Automatically discover new storage subsystems),系统会自动搜索已连接到网络中的存储设备。

图三
同时,管理员也可以手工添加DS4000设备。管理者可点击Edit菜单下Add Drives,会弹出让管理员输入控制器IP的对话框。输入设置好的IP后点击Add按键就可以添加该设备了。如果用户配置了两块控制器时,系统会要求输入两块控制器的IP地址,此地址在上面的介绍中已经写出。

图四
1. 当管理软件搜索到FAStT设备后,首先显示设备控制器的详细资料及磁盘总空闲容量。如下图所示。在Storage Manager管理软件中是可以对现有的DS4000设备重命名的,点击Storage Subsystem选择Rename,在弹出的窗口中输入管理者确定的设备名称即可完成更名。

图五
2. 管理软件认出了存储设备,接下来就是对存储设备创建磁盘分区、选择相应的RAID Level、选择逻辑分区的配置参数等操作了。
首先右击空闲的磁盘容量,选择Create Logical Drive,可在弹出的对话框中设置你的default host type和RAID Level。当管理员在选择RAID Level时,系统会根据存储柜上现有磁盘的数量来提供可供选择的RAID级别,并且提供了两种选择磁盘的方式:手动和自动。在大多数情况下都选择手动选择磁盘,这样会更符合现场需求。

图六

图七
接下去就是选择创建逻辑磁盘的容量大小,默认的容量大小是你当前最大的逻辑磁盘的剩余量,管理员可以根据需要在New Logical drive Capacity 的文本框中填写适当的大小值,并在后面的文本框内选择相应的单位。在Name的文本框内,管理员需要为此阵列起个可供标识的名字。如下图椭圆标志中所示。
当在选择自定义设置或推荐设置时,一般都选择自定义设置(如下图方框内所示)。这样就可以具体设置此阵列所在哪个控制器(Slot A或Slot B)、逻辑磁盘的I/O特征(包括文件系统、数据库、多媒体及自定义型)、分割大小和磁盘的关联设置。特别的是当用户需要创建两个以上的阵列时,在选择控制器时最好岔开选择,这样有利于提高以后传输数据的效率。

图八

图九
所有设置完成后我们可以在主界面中看到所有的信息。现在IBM DS4200的逻辑磁盘已经创建成功,下一篇我们将介绍存储分区(Storage Partition)的具体配置及其他各种新增功能和日志的具体应用。

图十
现在我们来说说怎么创建磁盘分区。在介绍应用前,我想先说说DS4000系列各产品关于存储分区的一些相关说明。
在DS4000系列产品中有一项Premium功能,这些功能是一系列不包含在标准配置中的高级功能,分别是存储分区(Storage Partition Support Feature)、快速拷贝(FlashCopy Feature)和 远程镜像(Remote Mirror Feature)。这些功能都是用户按照需要选购的,下面详细说明下存储分区。
存储分区(Storage Partition Support Feature)的功能允许我们在一个FAStT上连接多种主机平台。它通过将逻辑盘分配给确定的一个主机或主机组来起作用,也被称作LUN masking。这样做的好处就是在不同存储分区中的主机不能看到彼此的逻辑盘,从而保证了重要信息的安全性,同时也便于数据的分类和管理。存储分区的逻辑结构为Default Group,Host Groups, Hosts,Host Ports。逻辑盘可以被映射到不同层次的逻辑结构中。另外,即使只有一个主机连接在这个存储服务器上,也要为它定义一个存储分区。
在购买DS4000系列时,DS4100和DS4300的标准配置就提供一个主机组,可以升级到4、8或16个存储分区;DS4300的增强型配置提供了8个存储分区,可升级到16或64个;DS4500的标配提供了16个存储分区,可升级到64个;DS4700的标配提供了2个存储分区,可升级到4、8或16个;DS4700的增强型配置则提供了8个存储分区,可升级到16或64个;DS4800 的存储分区是让用户必须在8、16或64个中选择一个,所以升级的话是8个升级到16个,16个升级到64个。
介绍完了基本信息,下面就来介绍下创建过程吧。
1.检查分区状态
首先先要检查下存储分区功能的状态,看看是不是已经在Enabled状态,包括快速拷贝和远程镜像的状态情况也是在这里检查。如下图红色方框所示。

图一
2.创建服务器组群
在主界面中点选Mappings View选项卡,随后出现的就是目前存储设备的Mapping情况,在左边的信息栏里可以选择目前的逻辑结构。当然如果你还没有创建过的话就只有Undefined Mappings和Default Group。在Undefined Mappings中会有已创建过的逻辑磁盘,处于待映射状态。右击Default Group选中Define Host Group来创建服务器组,在弹出的对话框中输入服务器组名后点创建,这样就完成了一个服务器组的创建,重复操作可以创建多个组。如图二和图三所示。

图二

图三
3.添加服务器到服务器组
创建完了服务器组群,接下来就要添加服务器了,右击刚才创建的服务器组选择Define Host选项,在弹出来的对话框上层中输入服务器名。下层则是选择映射到服务器上的HBA卡,列表中已经列出了现有HBA卡的Post Identifier集合,选中后按ADD选项添加,点Next后进入选择Host Type对话框,选择适合的主机类型后就完成了设置,点Finash后就能从主界面中看到刚才所添加的HBA卡和服务器了,这样就已经将主机上的HBA卡和存储设备建立了映射关系。如图四、图五所示。

图四

图五
4.划分逻辑分区到存储分区
下面就是最关键的步骤了,为了让公司各个部门的信息资料独立起来,可以将一开始建立的逻辑分区划分到各个存储分区上,这样就可以保证信息的不外传,增加了安全性。具体步骤是先右击起初建立的Host Group项,选择Define Storage Partitioning选项(如图六所示),在弹出的对话框中选择你所要映射的Host Group或Host后单击Next(如图七所示),接着就会进入到选择逻辑分区的界面,把你要划分的分区Add到存储分区,点击Finish就大功告成咯。(如图八所示)。不过在这里说明下,当选择Host Group时,此Host Group下又有不止一个Host时,系统就会把逻辑分区映射给每个Host,即Host Group下的每个Host都能看到逻辑分区里的信息;当选择具体的Host时,就只有这一个Host能看到信息,此Host Group里的其他信息将看不到此分区信息,所以在选择时要根据实际情况来安排分区映射。
图六
图七

图八
这篇我们来介绍下其他的相关功能。
1. 更改RAID类型
用户在创建好逻辑磁盘后,如果由于应用需要的变更,需要改变已设置的RAID Level时就需要使用此功能,但请务必注意:应用前请备份好原有阵列里的数据资料。
右击所需要改变的原始阵列,在Change的下属菜单里选择RAID Level选项,此时系统会根据现有磁盘的数量来显示可供改变的RAID等级,在其中选择一个适合的。选择后系统会弹出警告框,显示The Data on the selected array will remain accessible during this operation,确认后点击YES,这样系统会重新刷新RAID Level,更改的时间长短则是根据原有阵列的大小决定的。期间,磁盘上会显示有小时钟,任何其他对此阵列的操作都不会被采用,直至完成。(如图所示)
|
2.在阵列中增加磁盘
有时候,已经配置的硬盘数量不能满足使用需求,这个时候我们需要增添一些磁盘。具体操作除了在硬件上,需要增加所增添的磁盘,还需要在DS4000的管理软件中,增添所添加的磁盘,这样系统才能管理所增添的磁盘。
右击所要增加磁盘的阵列,选择Add Free Capacity(Drives),在弹出的对话框里就可以选择你所要增加的磁盘了,系统会列出现在存储设备上空闲的磁盘,选择好以后点击Add键,系统同样会弹出警告对话框,点击Yes后就等待添加成功了。成功后,可以去主界面中看到阵列容量增加和组成阵列的磁盘数量增加了。(如图所示)
![]() |
![]() |
3.修改缓存设置
有些时候会发现磁盘阵列的应用性能不尽理想,为了要提高存储性能,在不额外增加设备的情况下,可以去检查下磁盘分区的缓存设置,这样对提高存储性能很有帮助,因为默认设置并不是完全适合所有的用户的。
在你想要察看的磁盘分区上右击选择Change选项里的Cache Settings后进入修改缓存设置对话框。对话框的上半部分是供选择的磁盘分区,下半部分是具体的缓存设置。第一和第二项分别是允许读缓存和写缓存,第三项是允许镜像写缓存,这一项的话用户就要根据实际情况选择了,因为采用镜像写缓存可能对存储性能有影响。最后一项是允许不带电池保护的写缓存。(如图所示)
![]() |
4.增加逻辑卷的容量
这一功能是为了让客户能随时按需要动态的增加逻辑卷的容量,但需注意的是只能往上增加不能向下减少。
具体步骤是右击要增加容量的逻辑卷,选择Increase Capacity后点击OK就可进入设置界面,在Increase Capacity By:的文本框里输入所要增加容量的大小,单位有三项供选择:MB、GB和TB。设置完后会弹出确认对话框,输入YES后就可以在主界面里看到逻辑卷正在增加容量。(如图说示)
![]() |
5.设置热备份磁盘
热备份是很重要的功能,在使用过程中,万一在阵列中有一块磁盘损坏了,如果预先设置过热备份磁盘,系统马上就会把热备份磁盘填补进去充当那块坏了的磁盘,等恢复了那块坏磁盘后还原。这个设置很重要,一般在磁盘有多余的情况下建议设置,可以保一时之需。
步骤为:先选中要设置为热备份的磁盘,右击选择Hot Spare Coverage项,在弹出的对话框中选择Manually assign individual drives项,然后输入YES就完成了热备份磁盘的设置。如果要取消热备份磁盘,只要选择最后一项Manually unassign individual drives即可。(如图所示)
![]() |
至此,一台IBM DS4000就全部设置完成。当然我们也许会遇到各类设置过程中的实际问题,在具体应用过程中,设备还会出现各种故障,这些都需要我们在实际操作过程中积累经验。初始的安装配置只是第一步,但只有完成最基础的,才能在此基础上实现更为强大的管理功能。(完)
实验目的:学会使用Storage Manager 进行磁盘阵列的基本配置
实验软件:IBM FAStT Storage Manger 8
Storage Manager软件是IBM公司开发的专门用于其DS4000系列盘阵的配置工具,该工具可运行于Windows操作系统上,通过以太网与磁盘阵列通信,从而对其进行配置。
实验环境说明:该实验模拟一小型企业,现有服务有SQL Server数据库、HTTP Web服务、FTP服务器主要用于存放较大的视频文件、MAIL邮件服务器。
启动Storage Manager 8.41 demo,弹出主界面如下:
右击主界面左边的Unconfigured Capacity,创建逻辑驱动器即新建LUN(create logic driver),在弹出的窗口中选择所要应用的环境系统类型,在此选择Windows 2000 server/2003 Non-C 即2000/2003非集群环境,在实际工作中应根据具体环境进行选择。
Create new array ->选择相应的RAID级别,建议手工选择磁盘,尽量将一个RAID组的磁盘分布在不同的阵列柜上,以降低阵列柜故障造成的危害 ->
这里可以手工指定要创建的LUN大小,并为其命名,这里我们先创建全部供SQL Server使用的,命名为SQLLUN0(后面再创建SQLLUN1、SQLLUN2)——>
选择手工设定参数,也可采用默认参数,这里我们设定条带宽度为32KB,由于上面我们选择了4块磁盘,因而每个条带的数据宽度就是128KB;Preferred controller ownership 首选控制器为Slot A,这里可以按照默认的不予改变,软件将根据创建的LUN 轮流分配首选控制器,这样可充分利用资源,提高性能,当首选控制器发生故障后,另外一个控制器则自动接管。
LUN映射选择Map later with Storage Parttioning,稍后进行手工配置映射关系——>finish ——>在弹出的窗口选择yes,继续创建新的array ,WebLUN0、FTPLUN0、FTPLUN1、MailLUN0。
从下图可以验证Storage Manager 已经为新的LUN分配首选控制器为Slot B了。
最好为每个阵列柜设置1-2个热备磁盘,这样一旦阵列中的某块磁盘发生故障,热备磁盘将自动顶替,以免数据丢失。
上图中右边的磁盘为热备磁盘,设置方式 ——>右击磁盘——>Hot Spare ——>Assign。
3. 配置LUN映射关系
创建完LUN后,还未指定可使用该LUN的主机,接下来添加主机、主机端口、映射关系。
依次添加SQLServer、FTPServer、MailServer、WebServer四台主机——>
3.2 添加主机端口Host Port
每台主机上有两块HBA卡,实现冗余,接下来添加主机端口Host Port identifier,即主机上HBA卡上的WWN(World Wide Name)地址 —>
如下图所示,为每台服务器都配置两张HBA卡 ——>
3.3 创建映射关系
创建映射关系,为服务器分配LUN资源 ——>把SQLLUN0、SQLLUN1、SQLLUN2分配给SQLServer,WebLUN0分配给WebServer,FTPLUN0、FTPLUN1分配给FTPServer ,MailLUN0分配给MailServer。
LUN资源分配结果:节选SQLServer、FTPServer如下。
创建完映射关系之后,还需要对LUN进行初始化,才能供主机使用,右击每个Array或LUN,选择Initialize进行初始化,如下图所示:
初始化完成之后,在各主机上即可识别到当前已分配给自己的磁盘,系统就可以像本地磁盘一样使用这些磁盘了。
Preparing… ########################################### [100%]
kernel-devel package is installed
1:hp_qla2x00src ########################################### [100%]
/etc/hp_qla2x00.conf already exists. Using parameters in the current file.
Copying /opt/hp/src/hp_qla2x00src/libqlsdm-ia32.so to /usr/lib/libqlsdm.so
Adding line for libqlsdm.so to /etc/hba.conf
Kernel modules directory: /lib/modules/2.6.18-92.1.6.el5.centos.plusPAE/kernel/drivers/scsi/qla2xxx
Kernel build directory: /lib/modules/2.6.18-92.1.6.el5.centos.plusPAE/build
Building FC driver modules…
make clean
make: Entering directory `/usr/src/kernels/2.6.18-92.1.6.el5.centos.plus-PAE-i686′
make: Leaving directory `/usr/src/kernels/2.6.18-92.1.6.el5.centos.plus-PAE-i686′
make -j5 -C /lib/modules/2.6.18-92.1.6.el5.centos.plusPAE/build M=/opt/hp/src/hp_qla2x00src/qla2xxx-8.01.07.25 modules
make: Entering directory `/usr/src/kernels/2.6.18-92.1.6.el5.centos.plus-PAE-i686′
CC [M] /opt/hp/src/hp_qla2x00src/qla2xxx-8.01.07.25/ql2100.o
CC [M] /opt/hp/src/hp_qla2x00src/qla2xxx-8.01.07.25/ql2100_fw.o
CC [M] /opt/hp/src/hp_qla2x00src/qla2xxx-8.01.07.25/ql2200.o
CC [M] /opt/hp/src/hp_qla2x00src/qla2xxx-8.01.07.25/ql2200_fw.o
CC [M] /opt/hp/src/hp_qla2x00src/qla2xxx-8.01.07.25/ql2300.o
CC [M] /opt/hp/src/hp_qla2x00src/qla2xxx-8.01.07.25/ql2300_fw.o
CC [M] /opt/hp/src/hp_qla2x00src/qla2xxx-8.01.07.25/ql2322.o
CC [M] /opt/hp/src/hp_qla2x00src/qla2xxx-8.01.07.25/ql2322_fw.o
CC [M] /opt/hp/src/hp_qla2x00src/qla2xxx-8.01.07.25/ql2400.o
CC [M] /opt/hp/src/hp_qla2x00src/qla2xxx-8.01.07.25/ql2400_fw.o
CC [M] /opt/hp/src/hp_qla2x00src/qla2xxx-8.01.07.25/qla_os.o
CC [M] /opt/hp/src/hp_qla2x00src/qla2xxx-8.01.07.25/qla_init.o
CC [M] /opt/hp/src/hp_qla2x00src/qla2xxx-8.01.07.25/qla_mbx.o
CC [M] /opt/hp/src/hp_qla2x00src/qla2xxx-8.01.07.25/qla_iocb.o
CC [M] /opt/hp/src/hp_qla2x00src/qla2xxx-8.01.07.25/qla_isr.o
CC [M] /opt/hp/src/hp_qla2x00src/qla2xxx-8.01.07.25/qla_gs.o
CC [M] /opt/hp/src/hp_qla2x00src/qla2xxx-8.01.07.25/qla_dbg.o
CC [M] /opt/hp/src/hp_qla2x00src/qla2xxx-8.01.07.25/qla_sup.o
CC [M] /opt/hp/src/hp_qla2x00src/qla2xxx-8.01.07.25/qla_rscn.o
CC [M] /opt/hp/src/hp_qla2x00src/qla2xxx-8.01.07.25/qla_attr.o
CC [M] /opt/hp/src/hp_qla2x00src/qla2xxx-8.01.07.25/qla_xioct.o
CC [M] /opt/hp/src/hp_qla2x00src/qla2xxx-8.01.07.25/qla_inioct.o
CC [M] /opt/hp/src/hp_qla2x00src/qla2xxx-8.01.07.25/qla_fo.o
CC [M] /opt/hp/src/hp_qla2x00src/qla2xxx-8.01.07.25/qla_foln.o
CC [M] /opt/hp/src/hp_qla2x00src/qla2xxx-8.01.07.25/qla_cfg.o
CC [M] /opt/hp/src/hp_qla2x00src/qla2xxx-8.01.07.25/qla_cfgln.o
CC [M] /opt/hp/src/hp_qla2x00src/qla2xxx-8.01.07.25/qla_32ioctl.o
CC [M] /opt/hp/src/hp_qla2x00src/qla2xxx-8.01.07.25/qla_ip.o
CC [M] /opt/hp/src/hp_qla2x00src/qla2xxx-8.01.07.25/qla2xxx_conf.o
CC [M] /opt/hp/src/hp_qla2x00src/qla2xxx-8.01.07.25/qla2xip.o
HOSTCC /opt/hp/src/hp_qla2x00src/qla2xxx-8.01.07.25/extras/qla_nvr
HOSTCC /opt/hp/src/hp_qla2x00src/qla2xxx-8.01.07.25/extras/qla_opts
LD [M] /opt/hp/src/hp_qla2x00src/qla2xxx-8.01.07.25/qla2xxx.o
LD [M] /opt/hp/src/hp_qla2x00src/qla2xxx-8.01.07.25/qla2100.o
LD [M] /opt/hp/src/hp_qla2x00src/qla2xxx-8.01.07.25/qla2200.o
LD [M] /opt/hp/src/hp_qla2x00src/qla2xxx-8.01.07.25/qla2300.o
LD [M] /opt/hp/src/hp_qla2x00src/qla2xxx-8.01.07.25/qla2322.o
LD [M] /opt/hp/src/hp_qla2x00src/qla2xxx-8.01.07.25/qla2400.o
Building modules, stage 2.
MODPOST
CC /opt/hp/src/hp_qla2x00src/qla2xxx-8.01.07.25/qla2100.mod.o
CC /opt/hp/src/hp_qla2x00src/qla2xxx-8.01.07.25/qla2200.mod.o
CC /opt/hp/src/hp_qla2x00src/qla2xxx-8.01.07.25/qla2300.mod.o
CC /opt/hp/src/hp_qla2x00src/qla2xxx-8.01.07.25/qla2322.mod.o
CC /opt/hp/src/hp_qla2x00src/qla2xxx-8.01.07.25/qla2400.mod.o
CC /opt/hp/src/hp_qla2x00src/qla2xxx-8.01.07.25/qla2xip.mod.o
CC /opt/hp/src/hp_qla2x00src/qla2xxx-8.01.07.25/qla2xxx.mod.o
CC /opt/hp/src/hp_qla2x00src/qla2xxx-8.01.07.25/qla2xxx_conf.mod.o
LD [M] /opt/hp/src/hp_qla2x00src/qla2xxx-8.01.07.25/qla2100.ko
LD [M] /opt/hp/src/hp_qla2x00src/qla2xxx-8.01.07.25/qla2200.ko
LD [M] /opt/hp/src/hp_qla2x00src/qla2xxx-8.01.07.25/qla2300.ko
LD [M] /opt/hp/src/hp_qla2x00src/qla2xxx-8.01.07.25/qla2322.ko
LD [M] /opt/hp/src/hp_qla2x00src/qla2xxx-8.01.07.25/qla2400.ko
LD [M] /opt/hp/src/hp_qla2x00src/qla2xxx-8.01.07.25/qla2xip.ko
LD [M] /opt/hp/src/hp_qla2x00src/qla2xxx-8.01.07.25/qla2xxx.ko
LD [M] /opt/hp/src/hp_qla2x00src/qla2xxx-8.01.07.25/qla2xxx_conf.ko
make: Leaving directory `/usr/src/kernels/2.6.18-92.1.6.el5.centos.plus-PAE-i686′
Copying makefile for intermodule.ko
Building intermodule.ko…
make -C /lib/modules/2.6.18-92.1.6.el5.centos.plusPAE/build M=/opt/hp/src/hp_qla2x00src/qla2xxx-8.01.07.25/extras clean
make: Entering directory `/usr/src/kernels/2.6.18-92.1.6.el5.centos.plus-PAE-i686′
make: Leaving directory `/usr/src/kernels/2.6.18-92.1.6.el5.centos.plus-PAE-i686′
-j5 -C /lib/modules/2.6.18-92.1.6.el5.centos.plusPAE/build M=/opt/hp/src/hp_qla2x00src/qla2xxx-8.01.07.25/extras modules
make: Entering directory `/usr/src/kernels/2.6.18-92.1.6.el5.centos.plus-PAE-i686′
CC [M] /opt/hp/src/hp_qla2x00src/qla2xxx-8.01.07.25/extras/intermodule.o
Building modules, stage 2.
MODPOST
CC /opt/hp/src/hp_qla2x00src/qla2xxx-8.01.07.25/extras/intermodule.mod.o
LD [M] /opt/hp/src/hp_qla2x00src/qla2xxx-8.01.07.25/extras/intermodule.ko
make: Leaving directory `/usr/src/kernels/2.6.18-92.1.6.el5.centos.plus-PAE-i686′
Creating /lib/modules/2.6.18-92.1.6.el5.centos.plusPAE/kernel/kernel
Copying intermodule.ko to /lib/modules/2.6.18-92.1.6.el5.centos.plusPAE/kernel/kernel
Copying qla2xxx.ko to /lib/modules/2.6.18-92.1.6.el5.centos.plusPAE/kernel/drivers/scsi/qla2xxx
Copying qla2300.ko to /lib/modules/2.6.18-92.1.6.el5.centos.plusPAE/kernel/drivers/scsi/qla2xxx
Copying qla2400.ko to /lib/modules/2.6.18-92.1.6.el5.centos.plusPAE/kernel/drivers/scsi/qla2xxx
Copying qla2xxx_conf.ko to /lib/modules/2.6.18-92.1.6.el5.centos.plusPAE/kernel/drivers/scsi/qla2xxx
Running depmod -a
adding line to /etc/modprobe.conf: alias scsi_hostadapter2 qla2xxx_conf
adding line to /etc/modprobe.conf: alias scsi_hostadapter3 qla2xxx
adding line to /etc/modprobe.conf: alias scsi_hostadapter4 qla2300
adding line to /etc/modprobe.conf: alias scsi_hostadapter5 qla2400
adding line to /etc/modprobe.conf: options qla2xxx ql2xmaxqdepth=16 qlport_down_retry=30 ql2xloginretrycount=30 ql2xfailover=1 ql2xlbType=1 ql2xautorestore=0xa ConfigRequired=0
Adding “remove qla2xxx” line to /etc/modprobe.conf
Creating new initrd – initrd-2.6.18-92.1.6.el5.centos.plusPAE.img
Creating initial kernel inventory for smart_compile
Making symbolic link from /opt/hp/src/hp_qla2x00src/master.sh to /usr/sbin/hp_compile_qldriver
qla2x00 driver source can be found in /opt/hp/src/hp_qla2x00src
Installing fibreutils…
Preparing… ########################################### [100%]
1:fibreutils ########################################### [100%]
重新启动,或重新加载驱动模块:
# /opt/hp/src/hp_qla2x00src/unload.sh
# modprobe qla2xxx_conf
# modprobe qla2xxx
# modprobe qla2300
# modprobe qla2400
这时候执行fdisk -l,发现已经正常识别磁盘。
设置自动编译选项,使得在升级内核时自动编译相应模块:
[root@setup hp_qla2x00src]# ./set_parm -a
Auto-compile is now set to “yes”
Writing new /etc/hp_qla2x00.conf…done
adding line to /etc/modprobe.conf: alias scsi_hostadapter2 qla2xxx_conf
adding line to /etc/modprobe.conf: alias scsi_hostadapter3 qla2xxx
adding line to /etc/modprobe.conf: alias scsi_hostadapter4 qla2300
adding line to /etc/modprobe.conf: alias scsi_hostadapter5 qla2400
adding line to /etc/modprobe.conf: options qla2xxx ql2xmaxqdepth=16 qlport_down_retry=30 ql2xloginretrycount=30 ql2xfailover=1 ql2xlbType=1 ql2xautorestore=0xa ConfigRequired=0
Adding “remove qla2xxx” line to /etc/modprobe.conf
关于set_parm的用法,可以使用./set_parm -h命令查看。
参考文献:http://h50146.www5.hp.com/products/software/oe/linux/mainstream/support/doc/option/fibre.html。是日文的,但是只要看到几个关键链接就足够了。