zoukankan      html  css  js  c++  java
  • 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就可以看到新映射的磁盘了。

  • 相关阅读:
    git 初始化与使用
    java解析webservice服务返回的xml
    计算时间天数
    XML和Java bean转换
    微信公众号-企业
    docker安装openldap
    webservice使用
    idea解决冲突插件
    Java--JSON嵌套JSON中带''字符的解决方式
    微信公众号开发
  • 原文地址:https://www.cnblogs.com/flower-0626/p/14049966.html
Copyright © 2011-2022 走看看