① linux 多路徑存儲是怎麼回事
Linux下HDS存儲多路徑查看
在Redhat下確定需要劃分的存儲空間。在本例中需要進行劃分的空間是從HDS AMS2000上劃分到伺服器的多路徑存儲空間。其中sddlmad為ycdb1上需要進行劃分的空間,sddlmah為ycdb2上需要進行劃分的空間。具體如下:
查看環境
# rpm -qa|grep device-mapper
device-mapper-event-1.02.32-1.el5
device-mapper-multipath-0.4.7-30.el5
device-mapper-1.02.32-1.el5
# rpm -qa|grep lvm2 lvm2-2.02.46-8.el5
查看空間
#fdisk -l
Disk /dev/sddlmad: 184.2 GB, 184236900352 bytes 255 heads, 63 sectors/track, 22398 cylinders Units = cylinders of 16065 * 512 = 8225280 bytes
Disk /dev/sddlmah: 184.2 GB, 184236900352 bytes
255 heads, 63 sectors/track, 22398 cylinders Units = cylinders of 16065 * 512 = 8225280 bytes
查看存儲
#cd /opt/DynamicLinkManager/bin/
#./dlnkmgr view -lu
Proct : AMS
SerialNumber : 83041424 LUs : 8
iLU HDevName Device PathID Status
0000 sddlmaa /dev/sdb 000000 Online
/dev/sdj 000008 Online
/dev/sdr 000016 Online
/dev/sdz 000017 Online
0001 sddlmab /dev/sdc 000001 Online
/dev/sdk 000009 Online
/dev/sds 000018 Online
/dev/sdaa 000019 Online
0002 sddlmac /dev/sdd 000002 Online
/dev/sdl 000010 Online
/dev/sdt 000020 Online
/dev/sdab 000021 Online
0003 sddlmad /dev/sde 000003 Online
/dev/sdm 000011 Online
/dev/s 000022 Online
/dev/sdac 000023 Online
0004 sddlmae /dev/sdf 000004 Online
/dev/sdn 000012 Online
/dev/sdv 000024 Online
/dev/sdad 000025 Online
0005 sddlmaf /dev/sdg 000005 Online
/dev/sdo 000013 Online
/dev/sdw 000026 Online
/dev/sdae 000027 Online
0006 sddlmag /dev/sdh 000006 Online
/dev/sdp 000014 Online
/dev/sdx 000028 Online
/dev/sdaf 000029 Online
0007 sddlmah /dev/sdi 000007 Online
/dev/sdq 000015 Online
/dev/sdy 000030 Online
/dev/sdag 000031 Online
##############################################################
4. lvm.conf的修改
為了能夠正確的使用LVM,需要修改其過濾器:
#cd /etc/lvm #vi lvm.conf
# By default we accept every block device
# filter = [ "a/.*/" ]
filter = [ "a|sddlm[a-p][a-p]|.*|","r|dev/sd|" ]
例:
[root@bsrunbak etc]# ls -l lvm*
[root@bsrunbak etc]# cd lvm
[root@bsrunbak lvm]# ls
archive backup cache lvm.conf
[root@bsrunbak lvm]# more lvm.conf
[root@bsrunbak lvm]# pvs
Last login: Fri Jul 10 11:17:21 2015 from 172.17.99.198
[root@bsrunserver1 ~]#
[root@bsrunserver1 ~]#
[root@bsrunserver1 ~]# df -h
Filesystem Size Used Avail Use% Mounted on
/dev/sda4 30G 8.8G 20G 32% /
tmpfs 95G 606M 94G 1% /dev/shm
/dev/sda2 194M 33M 151M 18% /boot
/dev/sda1 200M 260K 200M 1% /boot/efi
/dev/mapper/datavg-oraclelv
50G 31G 17G 65% /oracle
172.16.110.25:/Tbackup
690G 553G 102G 85% /Tbackup
/dev/mapper/tmpvg-oradatalv
345G 254G 74G 78% /oradata
/dev/mapper/datavg-lvodc
5.0G 665M 4.1G 14% /odc
[root@bsrunserver1 ~]# pvs
PV VG Fmt Attr PSize PFree
/dev/sda5 datavg lvm2 a-- 208.06g 153.06g
/dev/sddlmba tmpvg lvm2 a-- 200.00g 49.99g
/dev/sddlmbb tmpvg lvm2 a-- 200.00g 0
[root@bsrunserver1 ~]# cd /etc/lvm
[root@bsrunserver1 lvm]# more lvm.conf
# Don't have more than one filter line active at once: only one gets
used.
# Run vgscan after you change this parameter to ensure that
# the cache file gets regenerated (see below).
# If it doesn't do what you expect, check the output of 'vgscan -vvvv'.
# By default we accept every block device:
# filter = [ "a/.*/" ]
# Exclude the cdrom drive
# filter = [ "r|/dev/cdrom|" ]
# When testing I like to work with just loopback devices:
# filter = [ "a/loop/", "r/.*/" ]
# Or maybe all loops and ide drives except hdc:
# filter =[ "a|loop|", "r|/dev/hdc|", "a|/dev/ide|", "r|.*|" ]
# Use anchors if you want to be really specific
# filter = [ "a|^/dev/hda8$|", "r/.*/" ]
filter = [ "a|/dev/sddlm.*|", "a|^/dev/sda5$|", "r|.*|" ]
[root@bsrunserver1 lvm]# df
Filesystem 1K-blocks Used Available Use% Mounted on
/dev/sda4 30963708 9178396 20212448 32% /
tmpfs 99105596 620228 98485368 1% /dev/shm
/dev/sda2 198337 33546 154551 18% /boot
/dev/sda1 204580 260 204320 1% /boot/efi
/dev/mapper/datavg-oraclelv
51606140 31486984 17497716 65% /oracle
172.16.110.25:/Tbackup
722486368 579049760 106736448 85% /Tbackup
/dev/mapper/tmpvg-oradatalv
361243236 266027580 76865576 78% /oradata
/dev/mapper/datavg-lvodc
5160576 680684 4217748 14% /odc
[root@bsrunserver1 lvm]#
You have new mail in /var/spool/mail/root
[root@bsrunserver1 lvm]#
[root@bsrunserver1 lvm]# pvs
PV VG Fmt Attr PSize PFree
/dev/sda5 datavg lvm2 a-- 208.06g 153.06g
/dev/sddlmba tmpvg lvm2 a-- 200.00g 49.99g
/dev/sddlmbb tmpvg lvm2 a-- 200.00g 0
[root@bsrunserver1 lvm]#
進入文件:
[root@bsrunbak lvm]# cd /opt/D*/bin
or
[root@bsrunbak bin]# pwd
/opt/DynamicLinkManager/bin
顯示HDS存儲卷:
[root@bsrunbak lvm]# ./dlnkmgr view -lu
② emc存儲multipath問題求助
LINUX下多路徑(multi-path)介紹及使用
一、什麼是多路徑
普通的電腦主機都是一個硬碟掛接到一個匯流排上,這里是一對一的關系。而到了有光纖組成的SAN環境,或者由iSCSI組成的IPSAN環境,由於主機和存儲通過了光纖交換機或者多塊網卡及IP來連接,這樣的話,就構成了多對多的關系。也就是說,主機到存儲可以有多條路徑可以選擇。主機到存儲之間的IO由多條路徑可以選擇。每個主機到所對應的存儲可以經過幾條不同的路徑,如果是同時使用的話,I/O流量如何分配?其中一條路徑壞掉了,如何處理?還有在操作系統的角度來看,每條路徑,操作系統會認為是一個實際存在的物理盤,但實際上只是通向同一個物理盤的不同路徑而已,這樣是在使用的時候,就給用戶帶來了困惑。多路徑軟體就是為了解決上面的問題應運而生的。
多路徑的主要功能就是和存儲設備一起配合實現如下功能:
1.故障的切換和恢復
2.IO流量的負載均衡
3.磁碟的虛擬化
由於多路徑軟體是需要和存儲在一起配合使用的,不同的廠商基於不同的操作系統,都提供了不同的版本。並且有的廠商,軟體和硬體也不是一起賣的,如果要使用多路徑軟體的話,可能還需要向廠商購買license才行。比如EMC公司基於linux下的多路徑軟體,就需要單獨的購買license。好在, RedHat和Suse的2.6的內核中都自帶了免費的多路徑軟體包,並且可以免費使用,同時也是一個比較通用的包,可以支持大多數存儲廠商的設備,即使是一些不是出名的廠商,通過對配置文件進行稍作修改,也是可以支持並運行的很好的。
二、Linux下multipath介紹,需要以下工具包:
在CentOS 5中,最小安裝系統時multipath已經被安裝,查看multipath是否安裝如下:
1、device-mapper-multipath:即multipath-tools。主要提供multipathd和multipath等工具和 multipath.conf等配置文件。這些工具通過device mapper的ioctr的介面創建和配置multipath設備(調用device-mapper的用戶空間庫。創建的多路徑設備會在/dev /mapper中)。
2、 device-mapper:主要包括兩大部分:內核部分和用戶部分。內核部分主要由device mapper核心(dm.ko)和一些target driver(md-multipath.ko)。核心完成設備的映射,而target根據映射關系和自身特點具體處理從mappered device 下來的i/o。同時,在核心部分,提供了一個介面,用戶通過ioctr可和內核部分通信,以指導內核驅動的行為,比如如何創建mappered device,這些divece的屬性等。linux device mapper的用戶空間部分主要包括device-mapper這個包。其中包括dmsetup工具和一些幫助創建和配置mappered device的庫。這些庫主要抽象,封裝了與ioctr通信的介面,以便方便創建和配置mappered device。multipath-tool的程序中就需要調用這些庫。
3、dm-multipath.ko和dm.ko:dm.ko是device mapper驅動。它是實現multipath的基礎。dm-multipath其實是dm的一個target驅動。
4、scsi_id: 包含在udev程序包中,可以在multipath.conf中配置該程序來獲取scsi設備的序號。通過序號,便可以判斷多個路徑對應了同一設備。這個是多路徑實現的關鍵。scsi_id是通過sg驅動,向設備發送EVPD page80或page83 的inquery命令來查詢scsi設備的標識。但一些設備並不支持EVPD 的inquery命令,所以他們無法被用來生成multipath設備。但可以改寫scsi_id,為不能提供scsi設備標識的設備虛擬一個標識符,並輸出到標准輸出。multipath程序在創建multipath設備時,會調用scsi_id,從其標准輸出中獲得該設備的scsi id。在改寫時,需要修改scsi_id程序的返回值為0。因為在multipath程序中,會檢查該直來確定scsi id是否已經成功得到。
三、multipath在CentOS 5中的基本配置過程:
1、安裝和載入多路徑軟體包
# yum –y install device-mapper device-mapper-multipath
# chkconfig –level 2345 multipathd on #設置成開機自啟動multipathd
# lsmod |grep dm_multipath #來檢查安裝是否正常
如果模塊沒有載入成功請使用下列命初始化DM,或重啟系統
---Use the following commands to initialize and start DM for the first time:
# modprobe dm-multipath
# modprobe dm-round-robin
# service multipathd start
# multipath –v2
2、配置multipath:
Multipath的配置文件是/etc/multipath.conf , 如需要multipath正常工作只需要如下配置即可:(如果需要更加詳細的配置,請看本文後續的介紹)
blacklist {
devnode "^sda"
}
defaults {
user_friendly_names yes
path_grouping_policy multibus
failback immediate
no_path_retry fail
}
# vi /etc/multipath.conf3、multipath基本操作命令
# /etc/init.d/multipathd start #開啟mulitipath服務
# multipath -F #刪除現有路徑
# multipath -v2 #格式化路徑
# multipath -ll #查看多路徑
如果配置正確的話就會在/dev/mapper/目錄下多出mpath0、mpath1等之類設備。
用fdisk -l命令可以看到多路徑軟體創建的磁碟,如下圖中的/dev/dm-[0-3]4、multipath磁碟的基本操作
要對多路徑軟體生成的磁碟進行操作直接操作/dev/mapper/目錄下的磁碟就行.
在對多路徑軟體生成的磁碟進行分區之前最好運行一下pvcreate命令:
# pvcreate /dev/mapper/mpath0
# fdisk /dev/mapper/mpath0
用fdisk對多路徑軟體生成的磁碟進行分區保存時會有一個報錯,此報錯不用理會。
fdisk對多路徑軟體生成的磁碟進行分區之後,所生成的磁碟分區並沒有馬上添加到/dev/目錄下,此時我們要重啟IPSAN或者FCSAN的驅動,如果是用iscsi-initiator來連接IPSAN的重啟ISCSI服務就可以發現所生成的磁碟分區了
# service iscsi restart
# ls -l /dev/mapper/
如上圖中的mpath0p1和mpath1p1就是我們對multipath磁碟進行的分區
# mkfs.ext3 /dev/mapper/mpath0p1 #對mpath1p1分區格式化成ext3文件系統
# mount /dev/mapper/mpath0p1 /ipsan/ #掛載mpath1p1分區
③ 共享存儲怎麼在多路徑去掉本地磁碟wwid號
stmsboot -D mpt -e 對mpt做多路徑\r\nstmsboot -D fp -e 對FC做多路徑\r\nstmsboot -e 對所有盤做多路徑\r\n\r\nstmsboot -D mpt -d 取消mpt的多路徑。
如果您對我的回答有不滿意的地方,還請您繼續追問;
答題不易,互相理解,互相幫助!
④ win2016設置hba卡
備份UltraPath和磁碟信息。
分別執行upadm show vlun和upadm show path命令,查看並備份多路徑狀態信息。
備份磁碟信息。
以管理員用戶登錄Windows Server 2008應用伺服器。
按下組合鍵「Windows+R」(遠程桌面時請在全屏狀態下操作),打開「運行」 對話框。
輸入diskmgmt.msc命令並回車。
在彈出的「磁碟管理」頁面中查看主機磁碟信息。
備份HBA卡信息。
如果主機已經安裝「fcinfo」軟體,請執行以下操作。
按「Window+R」組合鍵,打開「運行」對話框。
輸入cmd並回車。
在彈出的命令窗口中輸入fcinfo命令,查看HBA卡信息。
如果主機沒有安裝「fcinfo」軟體,請執行以下操作。
按「Window+R」組合鍵,打開「運行」對話框。
輸入devmgmt.msc命令並回車,打開「設備管理器」界面。
選擇「存儲控制器」,並雙擊Fibre Chanel Adapter設備,在屬性頁面中查看廠商和版本信息。
檢查存儲系統狀態,如有相關告警,請處理後再實施後續操作。
存儲側導出配置數據。
使用PuTTY工具登錄陣列CLI。
系統初始的超級管理員用戶名為「admin」。
執行export running_data命令導出並保存系統當前配置文件。
可選: 如果採用在線更換方式,需要刪除鏈路信息。
針對HBA卡故障更換場景。
執行upadm show path命令檢查故障HBA卡對應的路徑狀態是否為「Fault」。如果是,請執行upadm clear obsolete_path path_id=?命令刪除該路徑,其中通過「path_id」指定狀態為「Fault」的路徑。
執行upadm show iostat array_id=?命令監控鏈路負載均衡機制,其中通過「array_id」指定待監控的存儲設備。
I/O在剩餘路徑上均勻分布且無報錯,監控30秒後,按Ctrl+c組合鍵退出。
執行upadm show path命令檢查多路徑狀態信息。
執行結果中應不包含已刪除的鏈路信息。
針對HBA卡主動更換場景。
分別執行upadm show path和upadm show vlun命令檢查多路徑狀態信息。
執行upadm set pathstate=disable命令禁用待更換HBA卡對應的全部路徑,其中通過「path_id」指定待禁用的路徑。
執行upadm show iostat array_id=?命令監控鏈路負載均衡機制,其中通過「array_id」指定待監控的存儲設備。
I/O在剩餘路徑上均勻分布且無報錯,監控30秒後,按Ctrl+c組合鍵退出。
執行upadm show path命令檢查多路徑狀態信息。
執行結果中待更換的HBA卡對應的路徑狀態均為「Disable」。
檢查新HBA卡與存儲設備的兼容性。
按「Window+R」組合鍵,打開「運行」對話框。
輸入devmgmt.msc命令並回車,打開「設備管理器」界面。
選擇「存儲控制器」,並雙擊Fibre Chanel Adapter設備,在屬性頁面中查看廠商和版本信息。
檢查主機運行狀態。
檢查主機當前是否存在報錯。
按下組合鍵「Windows+R」(遠程桌面時請在全屏狀態下操作),打開「運行」 對話框。
分別執行命令eventvwr.msc和devmgmt.msc並回車。
在打開的「事件查看器」和「設備管理器」窗口中查看當前主機是否存在報錯。如果存在存儲相關報錯,請解決問題後再實施後續操作。
檢查磁碟路徑狀態。
執行upadm show vlun命令,檢查所有Vlun均為Normal。
執行upadm show path命令。查看系統的路徑狀態為Normal。如果發現狀態為Degrade的鏈路,請在存儲設備上檢查鏈路的連接情況。
在交換機上確認新HBA卡的Zone劃分是否完成。
⑤ RH linux 5.9 下做多路徑聚合 問題,不知道怎樣才算配置成功,路徑聚合成功 (存儲是HP EVA4400+ )
應該是配置成功了,樓上的網友回答得相當專業。
一般情況下,Linux配完multipath後用fdisk -l查看,重復的磁碟還是能看得到。應該看到的是n多個/dev/sd*和後來生出來的/dev/dm-*(與mpath*分別對應)。這點與Windows上有所不用,我記得Windows上配完多路徑後是看不到重復的盤了。
你存儲上有7個LUN的話,那應該是7個dm-*才對啊,怎麼有8個呢?不解。。。
還有要注意的是:應該使用/dev/mapper/mpath*(multipath虛擬出來的多路徑設備),對它進行分區等操作。/dev/dm-* 是軟體內部自身使用的,不要用。
⑥ AIX連接IBM存儲,多路徑軟體常用命令
AIX連接IBM存儲,多路徑軟體常用命令一:查看存儲盤的路徑1、
查看MPIO的存儲盤的路徑#
lspath
(適用於所有存儲的MPIO路徑查詢)#
mpio_get_config
-Av
(適用於DS3K/DS4K的MPIO路徑查詢)2、
查看RDAC存儲盤的路徑#
fget_config
-Av
(適用於DS3K/DS4K的RDAC路徑查詢)3、
查看SDDPCM存儲盤的路徑#
pcmpath
query
device
(適用於DS6K/DS8K和v7000的SDDPCM路徑查詢)#pcmpath
query
adapter
檢查
SDDPCM
適配器狀態#pcmpath
query
wwpn
檢查
SDDPCM
已知的
FC
適配器
WWPN#pcmpath
query
version
檢查
SDDPCM
級別#lspath
檢查是否啟用了所有磁碟路徑4、
查看當前操作系統自帶的支持IBM存儲的多路徑軟體#
manage_disk_drivers5、
將DS4700默認的多路徑軟體更改成RDAC#
manage_disk_drivers
-d
DS4700
-o
AIX_fcparray