標籤:usr 類型 iscsiadm 問題 sid 實驗 iscsi for get
2_裝置檔案管理方法devfs
Linux早期採用的靜態管理方法/dev目錄下由大量靜態檔案核心版本2.6.13開始被完全取代
udev
只有串連系統上來的裝置才在/dev下建立裝置檔案與主、次裝置編號無關為裝置提供持久、一致的名字裝置命名規則按裝置被載入的順序命名
接入裝置事件鏈
核心發現裝置並匯入裝置狀態到sysfsudev接到事件統治udev建立裝置節點或是運行指定程式udev通知hald守護進程HAL探測裝置資訊HAL建立裝置對象結構HAL通過系統訊息匯流排廣播該事件使用者程式也可以監控該事件
udev的作用
從核心收到添加/一出硬體事件時,udev將會分析:/sys目錄下資訊/etc/udev/rules.d目錄中的規則基於分析結果,udev會:處理裝置命名決定要建立那些裝置檔案或連結決定如何設定屬性決定觸發那些事件
工作過程
當裝置接入,裝置資訊固定的資訊(容量、生產廠商、型號)就會被載入進入記憶體裡面,存入udev設定檔裡面
擷取已經介面入裝置的資訊
編寫udev規則檔案
vim /etc/udev/rules.d/50-iscsidisk.rules //檔案命名規則1~99 必須有“-” 後面是描述資訊,以.rules結尾 udev主設定檔 vim /etc/udev/udev.conf //處理詳細,不用做處理,保持預設就好 udev_root:建立裝置檔案位置,預設為/dev udev_rules:udev規則檔案位置,預設為/etc/udev/rules.d udev_log:syslog優先順序,預設為err
實驗:問題:
在linux系統中,一切裝置皆檔案,由於新增裝置載入順序的先後不同,導致相同裝置在/dev下的檔案名稱不同,由而引發在服務與儲存分離中分區(磁碟)共用時的掛載問題
目的:
在裝置串連上系統時,系統自動給相同裝置建立一個連結檔案,以後有對該共用裝置操作時,利用該連結檔案即可對該裝置進行操作,解決實驗問題
準備:
client50:192.168.4.50storage51:192.168.4.51
1.顯示系統的裝置資訊
udevadm monitor --property
2.擷取裝置的實體路徑
udevadm info -q path -n /dev/sdd /devices/platform/host4/session2/target4:0:0/4:0:0:0/block/sdd
3.查看系統識別該裝置的參數資訊 索引值類型
udevadm info -q all -p /devices/platform/host4/session2/target4:0:0/4:0:0:0/block/sdd -a UBSYSTEM=="block" //裝置類型,是一個塊裝置 ATTR{size}=="10483712" //裝置的大小 ATTRS{model}=="diskb " //該裝置的型號,空格不能少 ATTRS{vendor}=="LIO-ORG " //生產廠商資訊
4.將以上資訊寫入/etc/udev/rules.d/50-iscsidisk.rules
UBSYSTEM=="block", ATTR{size}=="10483712", ATTRS{model}=="diskb ", ATTRS{vendor}=="LIO-ORG ", SYMLINK+=”iscsi/vdc” //當該裝置登入後,會對該裝置建立一個連結/dev/iscsi/vdc,每個逗號後面的空格不能少
5.驗證:
把iscsi裝置登出,再登入,查看ls /dev/iscsi/vdc 連結檔案存在即成功 登出裝置 iscsiadm --mode node --targetname iqn.2018-10.cn.tedu.storage51:vdb --portal 192.168.1.1:3260 --logout 登陸裝置 iscsiadm --mode node --targetname iqn.2018-10.cn.tedu.storage51:vdb --portal 192.168.1.1:3260 --login
配置Multipath多重路徑問題:
單網卡串連之間的網路存放裝置的共用不可靠,容易由於非人為破壞導致共用斷開,由而引發設定多網卡,然後讓多網卡對相同裝置進行串連,然而,多網卡之間串連相同的共用裝置時,相同裝置不同串連不可以進行相互冗餘,致使串連無意義
目的:
使多張網卡之間的串連相同的共用裝置時可以形成相互冗餘、備份,高可用
準備:
添加網卡eth1client50:192.168.2.50storage51:192.168.2.51
登出iscsi裝置,分別使用下面裝置登陸
]# iscsiadm --mode discoverydb --type sendtargets --portal 192.168.2.51 --discover //發現 ]# iscsiadm --mode node --targetname //登陸 iqn.2018-10.cn.tedu.storage51:vdb --portal 192.168.2.51:3260 --login ]# iscsiadm --mode discoverydb --type sendtargets --portal 192.168.4.51 --discover //發現 ]# iscsiadm --mode node --targetname //登陸 iqn.2018-10.cn.tedu.storage51:vdb --portal 192.168.4.51:3260 --login
安裝多重路徑軟體包
yum -y install device-mapper-multipath.x86_64 mpathconf --user_friendly_names n //設定非友好方式產生以下設定檔 ls /etc/multipath.conf //由上一個命令產生的檔案 /usr/lib/udev/scsi_id --whitelisted --device=/dev/sda 360014051854c2ad423e4170a9e4ca149 //該裝置是iscsi裝置,會出現一個值
配置/etc/multipath.conf檔案
vim /etc/multipath.conf //此處內容不動 23 defaults { 24 user_friendly_names no //設定非友好方式產生以下設定檔 25 find_multipaths yes 26 } //以下內容為新增 97 multipaths { 98 multipath { 99 wwid "360014051854c2ad423e4170a9e4ca149" 100 alias mpatha 101 } 102 }
啟用Multipath多重路徑,並測試
multipath -rr //重新載入多重路徑資訊 |-+- policy=‘service-time 0‘ prio=1 status=enabled | `- 14:0:0:0 sda 8:0 active ready running `-+- policy=‘service-time 0‘ prio=1 status=enabled `- 15:0:0:0 sdb 8:16 active ready running multipath -ll //查看多重路徑資訊 ifdown eth1 multipath -rr //重新載入後就會少一個網口的資訊 |-+- policy=‘service-time 0‘ prio=1 status=enabled | `- 14:0:0:0 sda 8:0 active ready running multipath -ll
以上所有實驗都是基於Red Hat Enterprise Linux Server release 7.4 (Maipo)
裝置檔案管理方法