首页 > Unix > Multipath Devices on RHEL6

Multipath Devices on RHEL6

1 安装相应的package

# rpm -qa|grep -i device-mapper
device-mapper-event-libs-1.02.77-9.el6.x86_64
device-mapper-event-1.02.77-9.el6.x86_64
device-mapper-multipath-0.4.9-64.el6.x86_64
device-mapper-libs-1.02.77-9.el6.x86_64
device-mapper-1.02.77-9.el6.x86_64
device-mapper-persistent-data-0.1.4-1.el6.x86_64
device-mapper-multipath-libs-0.4.9-64.el6.x86_64


2 相关命令
1)启动/停止multipathd进程:

service multipathd start/stop

2)显示mutlipath路径:

multipath -ll

3)显示multipath debug info:

multipath -v3

4)查看有哪些磁盘

fdisk -l

5)不重启扫新盘
eg:

more /proc/scsi/scsi
echo "- - -" > /sys/class/scsi_host/host3/scan

6)查看FC wwn:

cat /sys/class/fc_host/host1/node_name

7)刷新路径:

multipaht -F

3 查看相关lun scsi_id
1)获取一个lun的scsi_id
eg:

#/lib/udev/scsi_id --whitelisted --device=/dev/sdb
360003ff44dc75adc8d79e28234b6eea2

2)列出所有scsi设备

#cat /proc/partitions

一些情况可能需要执行/sbin/partprobe ,或简单的重启一下机器
3)获取我们需要磁盘scsi_id的脚本
eg:

for i in `cat /proc/partitions | awk '{print $4}' |grep sd | grep [a-z]$`
do 
  echo "### $i: `/lib/udev/scsi_id --whitelisted --device=/dev/$i`"
done

### sda: 350014ee104864a44
### sdb: 360003ff44dc75adc8d79e28234b6eea2
### sdc: 3600144f0adf5cc4c0000514a72ce0004
### sdd: 360003ff44dc75adc8d79e28234b6eea2
### sde: 3600144f0adf5cc4c0000514a72ce0004

能见到sdb与sdd是同一个lun
4 配置multipath
1)配置
多路径配置文件:/etc/multipath.conf

# grep -v ^# /etc/multipath.conf
 defaults {
       udev_dir                /dev
       polling_interval        5
       path_grouping_policy    failover
       getuid_callout          "/lib/udev/scsi_id --whitelisted --device=/dev/%n"
       prio                    const
       path_checker            directio
       rr_min_io               1000
       rr_weight               uniform
       failback                manual
       no_path_retry           fail
       user_friendly_names     yes
}
devnode_blacklist {
         devnode "^(ram|raw|loop|fd|md|dm-|sr|scd|st)[0-9]*"
         devnode "^hd[a-z]"
         devnode "^cciss!c[0-9]d[0-9]*"
 }
multipaths {
   multipath {
      wwid 360003ff44dc75adc8d79e28234b6eea2
      alias voting1
      path_grouping_policy failover
   }
   multipath {
      wwid  3600144f0adf5cc4c0000514a72ce0004
      alias ocr1
      path_grouping_policy failover
   }
 }

注意:不能取’mpath’这样的名字
2) 重启multipathd进程

service multipathd restart

3)校验

# multipath -ll
ocr1 (3600144f0adf5cc4c0000514a72ce0004) dm-4 SUN,ZFS Storage 7120
size=20G features='0' hwhandler='0' wp=rw
|-+- policy='round-robin 0' prio=1 status=active
| `- 7:0:0:18  sdc 8:32 active ready running
`-+- policy='round-robin 0' prio=1 status=enabled
  `- 18:0:0:18 sde 8:64 active ready running
voting1 (360003ff44dc75adc8d79e28234b6eea2) dm-3 SUN,ZFS Storage 7120
size=20G features='0' hwhandler='0' wp=rw
|-+- policy='round-robin 0' prio=1 status=active
| `- 7:0:0:17  sdb 8:16 active ready running
`-+- policy='round-robin 0' prio=1 status=enabled
  `- 18:0:0:17 sdd 8:48 active ready running

5 Disable multipath
1)备份一下备份文件

cp /etc/multipath.conf /etc/multipath.conf.bak

2)参见其它机器把multipath.conf改回初始状态
3)记录一下

#multipath -ll > /tmp/mpio_nodename.lst

4)执行如下命令

# dmsetup ls   --displays all the device mapper
# /etc/init.d/multipathd stop
# /sbin/chkconfig multipathd off
# /sbin/dmsetup remove_all
# /sbin/rpm -e `rpm -qa | grep multipath`

5)重启服务器

分类: Unix 标签: ,
  1. 本文目前尚无任何评论.
  1. 本文目前尚无任何 trackbacks 和 pingbacks.