Lenovo DS存儲Linux下ISCSI 多路徑映射配置
Renren 2018-01-17
實驗環境:
DS4200存儲,B控制器池劃分一個大小為18G的volume,通過兩個1G ISCSI口port2和port3同時映射給客戶機。Port B2口IP為172.16.1.14/24 ;port B3口IP為172.16.1.15/24。
客戶機系統為centos 6.9,兩個以太網口,eth0口IP為172.16.1.195/24,eth1口的IP為172.16.1.196/24。網絡均為聯通狀態。客戶機需要用開啟多路徑使用此18G卷。
詳細配置如下:
卷映射配置如圖:
存儲ISCSI映射口網絡配置情況如下圖:
客戶機網卡設置情況如下圖:
客戶機和存儲的ISCSI口網絡聯通情況如下:
客戶機初始磁盤和文件系統情況如下圖,只有sda一個磁盤:
實驗操作過程:
為實驗順利,對客戶機做以下操作(具體方法不贅述):
關閉selinux
關閉iptables防火墻
兩個以太網口設置自啟動。
配置有可以正常使用的外網yum源
1, 客戶機安裝ISCSI發現程序iscsi-initiator-utils
使用yum的方式安裝 yum –y install iscsi* ,安裝成功如下圖
一般情況下安裝完成後iscsi服務會被添加到開機自啟動,也可以用chkconfig iscsi on添加
驗證查看本機的
(註:如下圖,直接用命令啟動iscsi服務是不生效的,重啟也無效,此處無關,待後續執行ISCSI發現之後該服務會自己啟動)
2,執行ISCSI發現目標(target)的命令,iscsiadm –m discovery –t st –p 172.16.1.14:3260
如下圖,只要取存儲的一個ISCSI口的IP執行發現命令即可。可以發現該存儲上的所有ISCSI映射,我們只需要用到
172.16.1.14和172.16.1.15這兩個,另外兩個是存儲其他端口的ISCSI映射,與此次試驗無關。
3,登錄被發現的目標節點
Iscsiadm –m node –p 172.16.1.14:3260 –l
Iscsiadm –m node –p 172.16.1.15:3260 –l
登錄連接成功如下圖:
驗證查看本機的磁盤情況,如下圖,由於登錄連接了兩個節點,系統下新增sdb和sdc兩個盤符,
即一個volume映射的兩條路徑,後續需要開啟多路徑功能來合並成一個使用。
4,安裝Linux的多路徑軟件
用命令安裝 yum –y install device-mapper device-mapper-multipath
安裝完成後用 rpm –qa |grep mapper 命令驗證安裝成功,會列出已安裝包的版本,如下圖:
驗證多路徑軟件的運行狀態,使用multipath –ll 命令
如下圖,提示DM多路徑內核模塊未加載。
使用命令service multipathd start啟動多路徑服務,如下圖。再次查看多路徑軟件運行狀態,
仍有報錯提示——多路徑配置文件不存在。需要建立/etc/multipath.conf這個配置文件。
5,建立並配置多路徑軟件的配置文件。
使用命令 vi /etc/multipath.conf建立並開打這個配置文件,輸入配置文件的內容如下圖(一般性配置)即可。
此處也把配置文件以文字形式列出:
blacklist {
devnode “^sda”
}
defaults {
user_friendly_names yes
path_grouping_policy multibus
failback immediate
no_path_retry fail
}
保存配置文件並退出。
6,設置多路徑軟件開機自動啟動
使用命令 chkconfig multipathd on
使用命令 chkconfig –list 查看服務開機自啟動項,如下圖
7,重啟客戶機,執行查看多路徑軟件運行狀態,如下圖即多路徑軟件成功操作了DS4200存儲映射過來的卷。
驗證查看客戶機磁盤狀態,生成了一個在/dev/mapper下的多路徑設備mpatha。
8,在客戶機下使用這個映射過來的18G的卷即直接使用這個mpatha的設備(其實就是卷dm-0的一個鏈接,操作/dev/dm-0也一樣)進行分區、格式化、掛載目錄使用即可。
格式化分區掛載多路徑設備
為了驗證多路徑的冗余特性,人為斷掉一條連接存儲B2 port即IP為172.16.1.14這條物理鏈路。
1, 對上圖中的多路徑設備/dev/mapper/mpatha進行分區
命令fdisk /dev/mapper/mpatha
使用默認設置分一個區(分區過程操作不贅述)
分區完畢後,fdisk –l查看發現已經完成的分區/dev/mapper/mpathap1 如下圖:
但此時在/dev/mapper/目錄下並未出現mpathap1這個分區,如下圖
對/dev/mapper/mpathap1格式化也會報錯,提示沒有這個分區
針對以上問題的解決方法——需要重啟一下iscsi服務,service iscsi restart讓他重新登錄目標節點。如圖,提示172.16.1.14已無法登錄,因為事先已經人為斷掉。另外兩個IP是存儲其他端口的ISCSI映射,與此次試驗無關。
再次查看在/dev/mapper/目錄下出現了mpathap1這個分區
2, 對/dev/mapper/mpathap1格式化成ext4格式
mkfs.ext4 /dev/mapper/mpathap1
對分區進行寫測試操作,如下圖
3, 對/dev/mapper/mpathap1這個分區掛載目錄使用
新建一個測試目錄: mkdir /datatest
掛載目錄: mount /dev/mapper/mpathap1 /datatest/
測試針對此目錄的讀寫使用,正常。如果對目錄操作有ext4-fs error之類的報錯可以嘗試重啟服務器。
Lenovo DS存儲Linux下ISCSI 多路徑映射配置