读书人

rhel4中配备FC多路径管理

发布时间: 2012-07-05 07:59:17 作者: rapoo

rhel4中配置FC多路径管理

rhel4中配置FC多路径管理

一、测试环境:服务器:IBM bladecenter HS21存储: Netapp FAS2050 (双控制器)操作系统:Redhat Enterprise4 u4 实验目的:通过rhel4连接上Netapp存储,并使用系统自带device-mapper-multipath软件来测试多路径的冗余和负载均衡功能,以保证用户数据的高可用性和高可靠性。二、测试步骤1.部署测试环境,主机上两块Emulex光线卡连接到光纤交换机,通过光纤交换机再连接到Netapp存储,形成SAN拓扑结构。并划分1个10G的LUN分配给主机。2.主机安装操作系统(rhel4),并安装Emulex光纤卡驱动程序和相关软件(略)所需软件(系统光盘自带):(1)device-mapper-1.02.07-4.0.RHEL4.i386.rpm #该软件运行在底层,主要进行设备虚拟化和映射。(2)device-mapper-multipath-0.4.5-16.1.RHEL4.i386.rpm(可能需要自己安装) #通过device-mapper-multipath用户工具来验证多路径的负载均衡及路径失效切换功能:3、启动多路径管理软件a、使用fdisk命令能看到系统识别出来的4个磁盘设备,这是多条路径得到的设备名,实际上指向存储上的同一个LUN,这说明Linux已经正确识别到了存储划分出来的LUN。[root@blade2-2 tmp]# fdisk -lDisk /dev/sda: 146.0 GB, 146000000512 bytes255 heads, 63 sectors/track, 17750 cylindersUnits = cylinders of 16065 * 512 = 8225280 bytesDevice Boot Start End Blocks Id System/dev/sda1 * 1 13 104391 83 Linux/dev/sda2 14 17750 142472452+ 8e Linux LVMDisk /dev/sdb: 10.7 GB, 10714349568 bytes64 heads, 32 sectors/track, 10218 cylindersUnits = cylinders of 2048 * 512 = 1048576 bytesDevice Boot Start End Blocks Id SystemDisk /dev/sdc: 10.7 GB, 10714349568 bytes64 heads, 32 sectors/track, 10218 cylindersUnits = cylinders of 2048 * 512 = 1048576 bytesDevice Boot Start End Blocks Id SystemDisk /dev/sdd: 10.7 GB, 10714349568 bytes64 heads, 32 sectors/track, 10218 cylindersUnits = cylinders of 2048 * 512 = 1048576 bytesDevice Boot Start End Blocks Id SystemDisk /dev/sde: 10.7 GB, 10714349568 bytes64 heads, 32 sectors/track, 10218 cylindersUnits = cylinders of 2048 * 512 = 1048576 bytesDevice Boot Start End Blocks Id System[root@blade2-2 tmp]# 实际上这4个设备对应的是同一个LUN,只不过通过不同的路径看到的。b、(1)、编辑文件/etc/multipath.conf。在文件头部注释掉如下内容:devnode_blacklist {devnode "*"}如下例:# devnode_blacklist {# devnode "*"# }(2)、取消文件 /etc/multipath.conf中这段的注释,这段内容可以让 device-mapper multipathing 不用扫描所有的设备。 etc/multipath.conf file:defaults {multipath_tool "/sbin/multipath -v0"udev_dir /devpolling_interval 10default_selector "round-robin 0"default_path_grouping_policy multibusdefault_getuid_callout "/sbin/scsi_id -g -u -s /block/%n"default_prio_callout "/bin/true"default_features "0"rr_wmin_io 100failback immediate}devnode_blacklist {wwid 26353900f02796769devnode "^(ram|raw|loop|fd|md|dm-|sr|scd|st)[0-9]*"devnode "^hd[a-z][0-9]*"devnode "^cciss!c[0-9]d[0-9]*[p[0-9]*]"}这段设置了默认的 device-mapper 的动作,并且去出了通常不会有多路径的设备,如IDE硬盘和软盘。(3)、为了实现简单的failover功能,下例中,defaults 组中的默认的 default_path_grouping_policy 选项被设置成为 failover。defaults {multipath_tool "/sbin/multipath -v0"udev_dir /devpolling_interval 10default_selector "round-robin 0"default_path_grouping_policy failoverdefault_getuid_callout "/sbin/scsi_id -g -u -s /block/%n"default_prio_callout "/bin/true"default_features "0"rr_wmin_io 100failback immediate}c、退出编辑并保存设置,执行如下命令modprobe dm-multipathmodprobe dm-round-robinservice multipathd startmultipath -v2 #命令 multipath -v2 可以显示多路径,从而可以知道那些设备工作在多路径下。如果没有任何输出,确认所有的SAN连接被正确的设置,系统有没有正确的开启多路径功能。执行如下命令确认多路径服务有无启动。chkconfig multipathd on4、然后执行dmsetup ls --target multipath,这个命令将会返回一个长的数字。你会看到一个>类似(255, #)的输出,其中的#就是设备映射号。这个数字可以用来对照哪个dm设备对应系统的多路径设备组,例如/dev/dm-2. [root@blade2-2 ~]# dmsetup ls --target multipathmpath1 (253, 2)此时可以看到/dev/dm-2就是多路径设备组。5、使用fdisk命令对/dev/dm-2设备进行分区并格式化文件系统,挂载即可使用。fdisk /dev/dm-2 对dm-2设备进行分区,分区后的信息为/dev/mpath/dm-2p1mkfs.ext3 /dev/mpath/dm-2p1mount /dev/mpath/dm-2p1 /directory

读书人网 >操作系统

热点推荐