FCSAN存储与服务器关联映射后在服务器端如何识别操作

FCSAN存储与服务器关联映射后在服务器端如何识别操作

步骤如下:

一、首次映射fcsan存储的Linux系统,在系统层面的操作如下:

1.检查一下是否安装multipath软件。如果没有安装,则需要安装一下。并设为开机自启动。

# rpm -qa | grep device-mapper-multipath

2.设置开机自动启动

# chkconfig multipathd on

 centos7. x中,用# systemctl enable multipathd.service设置自动启动。

3.配置multipath软件

重要说明:

有些机器在其内部磁盘中含有本地SCSI卡。不建议在这些设备中使用DM-Multipath。另外,尽管可以使用devnode设置将/dev/sda等磁盘设备列入黑名单,但不能确保重启后/dev/sda仍是同一个名称,可以使用对应设备的WWID并将其列入黑名单;特别地,当设备中还有多个需要忽略的磁盘设备时,也要将其加入黑名单中。

其他特殊情况:例如某些虚拟机环境中,不能使用章节5.3.1的命令查询到磁盘的WWID,此时设置可使用明确的设备名称如:

blacklist {

   devnode "^sda$"  

}

查看设备的WWID

1) CentOS 5.X及之前版本使用如下脚本命令

#for i in `cat /proc/partitions | awk {'print $4'} | grep sd`
do
echo "Device: $i WWID: `scsi_id -g -u -s /block/$i`"
done | sort -k4

2) CentOS 6.X版本使用如下脚本命令

#for i in `cat /proc/partitions | awk {'print $4'} | grep sd`
do
echo "Device: $i WWID: `scsi_id --page=0x83 --whitelisted --device=/dev/$i`"
done | sort -k4

Device: sda1 WWID:

Device: sda2 WWID:

Device: sda WWID: 35000cca018616204

Device: sdb WWID: 3600b3426fb82c96d983ddfc59d0000d8

Device: sdd WWID: 3600b3426fb82c96d983ddfc59d0000d8

Device: sdc WWID: 3600b3426fb82c96d983ddfc59d0000d8

Device: sde WWID: 3600b3426fb82c96d983ddfc59d0000d8

3) CentOS 7.X版本使用如下脚本命令

# for i in `cat /proc/partitions | awk {'print $4'} | grep sd`

do

echo "Device: $i WWID: `/usr/lib/udev/scsi_id --page=0x83 --whitelisted --device=/dev/$i`"

done | sort -k4

Device: sda1 WWID: 35000c500109123e2

Device: sda2 WWID: 35000c500109123e2

Device: sda3 WWID: 35000c500109123e2

Device: sda4 WWID: 35000c500109123e2

Device: sda5 WWID: 35000c500109123e2

Device: sda WWID: 35000c500109123e2

Device: sdb WWID: 3600b342f3e3143ddf652df219d0000d0

Device: sdc WWID: 3600b342f3e3143ddf652df219d0000d0

!注意

如果无法通过该脚本获取设备的WWID号,请根据OS缺省的multipath.conf.defaults(可以通过# find / -name "multipath.conf*"命令搜索)文件中getuid_callout参数部分修改,如multipath.conf.defaults文件中getuid_callout参数为: scsi_id --page=0x83 --whitelisted --device=/dev/%n ,则查询命令中对应字段需修改为:echo "Device: $i WWID: `scsi_id --page=0x83 --whitelisted --device=/dev/$i`"

确认需要映射的磁盘

Device: sda WWID: 35000cca018616204

Device: sdb WWID: 3600b3426fb82c96d983ddfc59d0000d8

Device: sdd WWID: 3600b3426fb82c96d983ddfc59d0000d8

Device: sdc WWID: 3600b3426fb82c96d983ddfc59d0000d8

Device: sde WWID: 3600b3426fb82c96d983ddfc59d0000d8

i说明

1.正确使用章节5.3.1命令查询并有对应的输出结果

2.判断新增磁盘及黑名单磁盘(通常是本地磁盘及第三方磁盘)上文中输出的结果为例,35000cca018616204本地磁盘放在黑名单中sdbsdc、sdd及sde具有相同的WWID为同一个多路径设备的子设备,WWID3600b3426fb82c96d983ddfc59d0000d8

4.配置多路径配置文件

1. CentOS5.X系统中配置如下:

# vi/etc/multipath.conf

blacklist {

        wwid    35000c5005e7b271b

       #devnode "^sda$"

}

defaults {

        user_friendly_names           yes

        checker_timeout              120

        polling_interval                10

}

devices {

       device {

               vendor                  "MacroSAN"

               product                 "LU"

               path_grouping_policy     group_by_prio

               path_selector            "round-robin 0"

               path_checker            tur

               no_path_retry           30

               prio_callout             "/sbin/mpath_prio_alua /dev/%n"

               getuid_callout           "/sbin/scsi_id -g -u -s /block/%n"

               hardware_handler       "0"

               failback                15

        }

}

multipaths {

        multipath {

        wwid    36001405bedd576bd6b39dfee8d0000d8 

        alias     mpatha

        }

        multipath {

            wwid 3600b3426fb82c96d983ddfc59d0000d8

            alias mpathb

}

#有多个多路径设备,可以逐一添加 multipath { },注意{存在空格。

}

2. CentOS6.X系统中配置如下:

# vi/etc/multipath.conf

blacklist {

        wwid    35000c5005e7b226b

        #devnode "^sda$"

}

defaults {

user_friendly_names       yes

polling_interval            10

queue_without_daemon    no

flush_on_last_del          yes

checker_timeout          120

}

devices {

device {

vendor                 "MacroSAN"

product                "LU"

path_grouping_policy    group_by_prio

no_path_retry           30

prio                    alua

getuid_callout           "/lib/udev/scsi_id --whitelisted --device=/dev/%n"

path_checker           tur

path_selector           "round-robin 0"

hardware_handler       "0"

failback                 15

        }

}

multipaths {

        multipath {

        wwid    3600b342095668d2d9132d970ad0000dd   

        alias    mpatha

        }

        multipath {

            wwid 3600b3426fb82c96d983ddfc59d0000d8

            alias mpathb

}

#有多个多路径设备,可以逐一添加 multipath { },注意{存在空格。

}

3. CentOS7.X系统中配置如下:

# vi/etc/multipath.conf

blacklist {

        wwid    35000c5005e7abebf

         #devnode "^sda$"

}

defaults {

user_friendly_names       yes

polling_interval            10

queue_without_daemon    no

flush_on_last_del          yes

checker_timeout 120

}

devices {

device {

vendor                 "MacroSAN"

product                "LU"

path_grouping_policy    group_by_prio

no_path_retry           30

prio                    alua

path_checker           tur

path_selector           "round-robin 0"

hardware_handler       "0"

failback                15

        }

}

multipaths {

        multipath {

           wwid    3600b342095668d2d9132d970ad0000d9   

           alias    mpatha

        }

        multipath {

            wwid 3600b3426fb82c96d983ddfc59d0000d8

            alias   mpathb

}

#有多个多路径设备,可以逐一添加 multipath { },注意{存在空格。

}

i说明

其中:

user_friendly_names:显示存储设备厂商

polling_interval:路径监测间隔时间,全局参数,对每条路径都有效

vendorLUN的制造商

product:产品的ID

path_grouping_policy:选择路径的方式

path_selector:路径的工作方式

path_checker:检查路径的方式

no_path_retry:路径丢失时,一直等待直到路径恢复

prio:获取路径的优先级

getuid_callout:获取LUNscsi_id

hardware_handler1表示emcLUN

failback:路径切换的时间(秒)

queue_without_daemon及flush_on_last_del:解决关于Linux服务器对存储端的Lun创建PV后,设备不能成功重启/关机,或Linux系统下强制取消FC关联Lun后,服务器不能成功重启/关机的问题。

!注意

群集环境中,需使用共享LUN可以在其中任意一个节点完成多路径配置,然后再开启其他节点并完成后续设置。以此可以确保各节点中发现的多路径设备名称相同。

5.加载dm-multipath模块

# modprobe dm-multipath

6.重启多路径服务

# /etc/init.d/multipathd restart

#linux7命令

# systemctl restart multipathd.service 

7.查看多路径状态

问题:

如果没有多路径出现则需要执行:

# ls /sys/class/fc_host/    //查询光模块 

对上述查询到的每个host依次做如下操作

# echo "- - -" > /sys/class/scsi_host/hostX/scan

然在执行multipath -r就可以看到新映射的磁盘了。 

二、第二次以以后映射fcsan存储操作如下:

 1.底层识别操作

# ls /sys/class/fc_host/    //查询光模块

对上述查询到的每个host依次做如下操作

# echo "- - -" > /sys/class/scsi_host/hostX/scan

2.查看wwid

3.修改配置文件

4.重启multipathd服务,然在执行multipath -r就可以看到新映射的磁盘了。

原文地址:https://www.cnblogs.com/flower-0626/p/14049966.html