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

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


1、CentOS7上安裝iscsi-initiator-utils並運行

# yum install iscsi-initiator-utils

# systemctl start iscsi

or # service iscsi start

# systemctl enable iscsi

or # chkconfig iscsi on (配置開機自啓動)


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

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


3、在CentOS7中,配置啓動器

1)更改啓動器的名字,位置/etc/iscsi/initiatorname.iscsi(可選)

IQN命名規則:IQN.<yyyy-mm>.<反向域名>:<標識字符串(隨即)>

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


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中,設置自啓動模式並重啓iscsi

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

# service restart iscsi


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


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


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

# iscsiadm -m node


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

# fdisk -l

可以看到兩個路徑上掛載的同樣大小的磁盤


11、在CentOS7中,安裝DM-Multipath軟件包

# yum install device-mapper-multipath


12、在CentOS7中,創建及修改DM-Multipath的配置文件

拷貝配置文件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查找一下。

修改配置文件確保如下配置:

default {

    find_multipaths    yes

    user_friendly_name    yes

    path_grouping_policy    multipaths    (注:multipath爲負載均衡配置,failover爲主備配置)

    failback    immediate

    no_path_retry    fail

}


13、在CentOS7中,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、在CentOS7中,對掛載磁盤進行分區

# parted /dev/mapper/mpatha

格式化爲GPT分區格式:

(parted) mklabel gpt

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

(parted) mkpart primary xfs 0% 100%

退出

(parted) q

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

注:以上是使用parted進行分區,但好像CentOS7版本的fdisk也可以對大於2T的磁盤進行gpt分區了。


16、格式化分區

# mkfs.xfs /dev/mapper/mpatha1


17、掛載分區

# mkdir /data (創建掛載目錄)

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

# df -h (查看分區結果)


18、開機自動掛載

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

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

但我在操作過程中發現,如上修改不能成功啓動和掛載系統。

個人操作是將掛載操作:

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

寫入/etc/profile最後一行。

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

腳本名:mount_iscsi.sh

內容:

#!/bin/bash

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


參考:

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

發表評論
所有評論
還沒有人評論,想成為第一個評論的人麼? 請在上方評論欄輸入並且點擊發布.
相關文章