1. 程式人生 > >CentOS7 DM-Multipath+HUAWEI OceanStor存儲多路徑配置

CentOS7 DM-Multipath+HUAWEI OceanStor存儲多路徑配置

word etc pri 查找 ilove 用戶名 文件拷貝 cover 只有一個

在參看了網上他人的配置,結合RedHat的技術白皮書實現後,自己親身在CentOS7+HUAWEI OceanStore S2600T的基礎上配置了一個DM-Multipath存儲多路徑的實現,其中碰到了一些小問題和不明白的地方,書上感覺也沒有說清除,在此總結,以供自己和大家參考。

1、安裝iscsi客戶端

CentOS7上安裝iscsi-initiator-utils

# yum install iscsi-initiator-utils
# systemctl start iscsi

or

# service iscsi start
# systemctl enable iscsi

2、在存儲器(HUAWEI OceanStor S2600T)中,創建存儲池和LUN

具體可以參考:《OceanStor S2600T&S5500T&S5600T&S5800T&S6800T 存儲系統 基礎存儲業務指南》,以上兩個步驟可以按照文檔說明進行配置即可。

3、 在CentOS7中,配置啟動器

更改啟動器的名字,位置/etc/iscsi/initiatorname.iscsi(可選)
IQN命名規則:IQN.<yyyy-mm>.<反向域名>:<標識字符串(隨機或自定義)>
如:

InitiatroName=iqn.2016-07.com.example.foo:77c1157e7af

InitiatroName=iqn.2016-07.com.example.foo:myhostname

4、在CentOS7中,配置存儲器的IP(即存儲系統iSCSI主機端口的IP)

命令為:

# iscsiadm -m discovery -t st -p <存儲系統iSCSI主機端口的IP>

這裏是系統多路徑+存儲器雙控配置,特此說明存儲器A控的iSCSI主機端口假設為IP-A,存儲器B控的iSCSI主機端口假設為IP-B,則需要分別執行以下兩步:

# iscsiadm -m discovery -t st -p <存儲系統A控iSCSI主機端口的IP-A>
# iscsiadm -m discovery -t st -p <存儲系統B控iSCSI主機端口的IP-B>

5、在CentOS7中,登陸存儲器

命令為:

# iscsiadm -m node -p <存儲系統iSCSI主機端口的IP> -l

這裏是系統多路徑+存儲器雙控配置,特此說明存儲器A控的iSCSI主機端口假設為IP-A,存儲器B控的iSCSI主機端口假設為IP-B,則需要分別執行以下兩步:

# iscsiadm -m node -p <存儲系統A控iSCSI主機端口的IP-A> -l
# iscsiadm -m node -p <存儲系統B控iSCSI主機端口的IP-B> -l

6、在CentOS7中,設置自啟動模式和開機自動掛載

將/etc/iscsi/iscsid.conf中,node.startup=設置為automatic(默認,無需修改)

# service restart iscsi

設置開機自動掛載

iscsiadm -m node –T LUN_NAME -p ISCSI_IP --op update -n node.startup -v automatic

系統多路徑+存儲器雙控配置

iscsiadm -m node –T LUN_NAME -p <存儲系統A控iSCSI主機端口的IP-A> --op update -n node.startup -v automatic
iscsiadm -m node –T LUN_NAME -p <存儲系統A控iSCSI主機端口的IP-A> --op update -n node.startup -v automatic

如果只有一個LUN,或者想掛載所有的LUN,則‘-T LUN_NAME‘可以省略。

7、在存儲器控制臺中,創建主機和主機組

在此不用關心CentOS7系統具體使用幾塊網卡與存儲器的控制器相連,創建主機名稱後,選擇使用存儲器的機器類型,這裏是Linux,然後就可以選擇以上創建的兩個存儲器啟動器即可。

8、在存儲器控制臺中,創建映射視圖

參看《OceanStor S2600T&S5500T&S5600T&S5800T&S6800T 存儲系統 基礎存儲業務指南》中的指示來執行,本人在實際使用時沒有使用端口組,而是直接將主機和LUN組映射起來。

9、在CentOS7中,查看完整的映射

# iscsiadm -m node

10、在CentOS7中,查看掛載的磁盤

# fdisk -l

# cat /proc/partitions

或者使用parted的命令進行查看(進入parted命令的交互模式後輸入print)
以上命令執行後可以看到兩個路徑上掛載的同樣大小的磁盤。

11、安裝DM-Multipath軟件包

# yum install device-mapper-multipath

12、創建及修改DM-Multipath的配置文件

  1. 拷貝配置文件multipath.conf
    查看系統中/etc/multipath.conf文件是否存在,如果不存在:
    將/usr/share/doc/device-mapper-multipath-/multipath.conf (Red Hat 6.x)
    或/usr/share/doc/device-mapper-multipath-
    /multipath.conf.synthetic (Red Hat 5.x)
    或/usr/share/doc/packages/multipath-tools/multipath.conf.synthetic (SuSE11SP1)
    或/usr/share/doc/multipath-tools/examples/multipath.conf.synthetic (ubuntu 11.04)
    文件拷貝一份,文件命名為multipath.conf放置於/etc/目錄下。
    # cp /etc/multipath/.multipath.conf.tmp /etc/multipath.conf(CentOS 7.x)

    如果上述CentOS7中的路徑不存在,請參看RedHat6的路徑,或者find查找一下。

  2. 修改配置文件確保如下配置:
    default {
    find_multipaths    yes
    user_friendly_name    yes
    path_grouping_policy    multipaths    (註:multipath為負載均衡配置,failover為主備配置)
    failback    immediate
    no_path_retry    fail
    }

    13、mpathconf命令及相關模塊加載

    # mpathconf --enable
    # mpathconf --with_module y
    # mpathconf --with_multipathd y

    具體可參看mpathconf -h

    14、在CentOS7中,啟動multipathd服務及設置開機自啟

    # service multipathd start
    # chkconfig multipathd on

    啟動成功後,可以看見/dev/mapper/mpatha,這是虛擬出來的多路徑設備,可以被用來掛載使用。

    15、對掛載磁盤進行分區

    # parted /dev/mapper/mpatha

    格式化為GPT分區格式:

    (parted) mklabel gpt

    將所有容量劃為一個主分區

    (parted) mkpart primary xfs 0% 100%

    退出

    (parted) q

    進行上述分區操作後出現/dev/mapper/mpatha1文件

    16、格式化分區

    # mkfs.xfs /dev/mapper/mpatha1

    17、掛載分區

    # mkdir /data (創建掛載目錄)
    # mount -t xfs /dev/mapper/mpatha1 /data
    # df -h (查看分區結果)

    18、開機自動掛載

1) fstab文件中自動掛載
很多文章說開機掛載修改/etc/fstab文件,並在最後添加

/dev/mapper/mpatha1    /data    xfs    defaults    0 0

但我在操作過程中發現,如上修改不能成功啟動和掛載系統。因為iSCSI是網絡設備因此正確的掛載應該如下:

/dev/mapper/mpatha1 /data    xfs    default,_netdev    0 0

2)自啟動腳本實現:
在/etc/profile最後一行添加

mount -t xfs /dev/mapper/mpatha1 /data

或者按/etc/profile文件首部建議,將掛載操作寫成腳本,放入/etc/profile.d目錄中。
腳本名:mount_iscsi.sh
內容:

#!/bin/bash
mount -t xfs /dev/mapper/mpatha1 /data

附-iSCSI操作總結:

  • 增加iscsi存儲
    • 發現iscsi存儲:
      # iscsiadm -m discovery -t st -p ISCSI_IP
    • 查看iscsi發現記錄:
      # iscsiadm -m node
    • 登錄iscsi存儲:
      # iscsiadm -m node -T LUN_NAME -p ISCSI_IP -l
    • 開機自動:
      # iscsiadm -m node –T LUN_NAME -p ISCSI_IP --op update -n node.startup -v automatic
  • 刪除iscsi存儲
    • 登出iscsi存儲
      # iscsiadm -m node -T LUN_NAME -p ISCSI_IP -u
    • 對出iscsi所有登錄
      # iscsiadm -m node --logoutall=all
    • 刪除iscsi發現記錄:
      # iscsiadm -m node -o delete -T LUN_NAME -p ISCSI_IP
  • 登入需驗證碼的節點
    • 開啟認證
      # iscsiadm -m node -T LUN_NAME -o update --name node.session.auth.authmethod --value=CHAP

      註:-o同--op

    • 添加用戶
      # iscsiadm -m node -T LUN_NAME --op update --name node.session.auth.username --value=[用戶名]
    • 添加密碼
      # iscsiadm –m node –T LUN_NAME –op update –name node.session.auth.password –value=[密碼]

參考

  1. 《centos上iscsi+multipath多路徑存儲配置手冊》,http://bluefox.blog.51cto.com/380387/141907
  2. Product Documentation for Red Hat Enterprise Linux相關章節,https://access.redhat.com/documentation/en/red-hat-enterprise-linux/?version=7/
  3. 《OceanStor S2600T&S5500T&S5600T&S5800T&S6800T 存儲系統 V200R001 基礎存儲業務指南 07 》

CentOS7 DM-Multipath+HUAWEI OceanStor存儲多路徑配置