devicemapper的多路徑

devicemapper的多路徑 
1.功能: 能夠將多個物理設備合成爲一個邏輯設備,能夠作普通的合併,或者實現相似raid0的條帶化,還能夠用來屏蔽硬盤中的壞道扇區,還可作lvm快照來備份數據庫,或者經過零設備文件來模擬很是大的設備,用於測試功能。 Device mapper 是lvm 和 multipating 的底層技術。 
2.安裝包: device-mapper device-mapper-multipath 
3.工做原理: 經過mapping table來建立邏輯設備(物理設備和邏輯設備每一個扇區之間的對應關係)。表內容包括: 邏輯設備的起始扇區:一般是0 邏輯設備的扇區數量 類型(linear線性,連續組合;striped條帶化;error屏蔽壞道;snapshot快照;zero零設備) 
4.磁盤扇區的計算: 1扇區=512字節b 1kb=1024b 扇區大小kb=扇區數*512/1024 好比10G的磁盤,扇區數爲: 10000000kb=扇區數*512/1024=20000000個扇區 #blockdev --getsize /dev/sda6 查看設備扇區數量 #echo 「0 ‘blockdev --getsize /dev/sda6’ linear /dev/sda6 0」 | dmsetup create mydevice 經過table建立邏輯設備 0表示這個邏輯設備從0扇區開始,有208782個扇區,linear表示連續的,/dev/sda6 0 表示從/dev/sda6的第0個扇區開始作邏輯設備。當一個設備用剩餘空間作邏輯設備時候,扇區就不是從0開始了。 如下寫入開機腳本後重啓纔會生效 
5.linear類型設備 特性:把多個物理分區的扇區連續起來組合成一個邏輯設備。 0 20000 linear /dev/sda1 0 20000 60000 linear /dev/sdb1 0 注:邏輯設備從0到扇區取自sda1從0扇區開始取20000扇區,邏輯設備從20000扇區開始,從sdb1的0扇區開始取60000個扇區,該邏輯設備80000個扇區。 實現命令#echo 「0 20000 linear /dev/sda1 0\n20000 60000 linear /dev/sdb1 0」 | dmsetup create mydevice 
6.stripe條帶化:經過chunksize 輪流寫入磁盤 0 1024 striped 2 256 /dev/sda1 0 /dev/sdb1 0 注:邏輯設備從0扇區開始到1024扇區,類型爲striped ,2個設備, chunksize 256kb 從/dev/sda1和/dev/sdb1 的0 扇區開始 各取512扇區(注意扇區數必須是chunksize的倍數) 命令實現#echo 「0 1024 striped 2 256 /dev/sda1 0 /dev/sdb1 0」 | dmsetup create mydevice 
7.error:經過合成邏輯設備去除錯誤扇區 0 80 linear /dev/sda1 0 80 100 error 181 200 linear /dev/sdb1 0 命令實現#echo 「0 80 linear /dev/sda1 0\n80 100 error\n181 200 linear /dev/sdb1 0」 | dmsetup create mydevice 
8.snapshot邏輯卷快照 特性:建立快照後,出現3個設備(原設備,快照設備,cow設備) 若是數據沒有改變,讀取數據從原設備讀取,寫入變化的數據存儲到cow區域中,快照設備保存原設備的數據。 #echo ―0 1000 snapshot /dev/sda1 /dev/vg0/realdev P 16 ‖ | dmsetup create mydevice從0扇區到1000扇區爲/dev/sda1建立快照,名字爲realdev,P表示下次啓動仍然生效,16爲chunksize 
9.zero零設備 特性:相似/dev/zero,可是他是個塊設備,不能寫東西,通常用來測試用,建立大的文件系統進行測試。好比測試建立10T大小的設備用ext3來格式化 #export HUGESIZE=$[100 * (2**40)/512] 100T的扇區數量 2**40爲2的40次方 #echo "0 $HUGESIZE zero" | dmsetup create zerodev 生成的文件在/dev/mapper/zerodev ext3每一個分區最大支持2TB 10.多路徑功能 特性:多路徑功能,用來提供線路冗餘,監控每條鏈路,當鏈路失敗時自動切換鏈路,並且自動恢復運行,防止單點故障。生成的設備名 /dev/dm-X 類型:當兩路徑優先級相等:負載均衡 當兩路徑優先級不等: 冗餘 #multipath列出多路徑設備,後臺須要開啓multipathd服務,優先級大小爲0-1024 實驗步驟: 存儲端配置雙網卡,配置/dev/sda6爲iscsi設備 服務器端安裝device-mapper-multipath包,鏈接iscsi設備 #vi /etc/multipath.conf 註釋掉 blacklist { devnode "*" 不一樣廠商的配置是不同的 } 取消註釋 default{ udev_dir .. .. path_grouping_policy failover(根據失效域來判斷執行策略) } #chkconfig multipathd on #service multipathd restart 以後生成的設備位置在/dev/mpath/下,可製做文件系統,掛載 #multipath –l 查詢設備狀態 
11.FC存儲 存儲端創建raid設備,raid創建與HBA卡WWN號的映射關係(鏈接哪一個HBA卡則使用哪塊磁盤設備) WWN爲HBA卡的受權名稱,用來區分一個或一組網絡鏈接,表示網絡上的一個鏈接

更多精彩內容請關注:http://bbs.superwu.cnjava

關注超人學院微信二維碼:node

關注超人學院java免費學習交流羣:數據庫

相關文章
相關標籤/搜索