設備文件管理方法
阿新 • • 發佈:2018-10-09
物理 scsi_id attr == 塊設備 取代 aip eas yml 2_設備文件管理方法
devfs
Linux早期采用的靜態管理方法
/dev目錄下由大量靜態文件
內核版本2.6.13開始被完全取代
udev
只有連接系統上來的設備才在/dev下創建設備文件
與主、次設備編號無關
為設備提供持久、一致的名字
設備命名規則按設備被加載的順序命名
接入設備事件鏈
內核發現設備並導入設備狀態到sysfs
udev接到事件統治
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.50
storage51: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多路徑
問題:
單網卡連接之間的網絡存儲設備的共享不可靠,容易由於非人為破壞導致共享斷開,由而引發設置多網卡,
然後讓多網卡對相同設備進行連接,然而,多網卡之間連接相同的共享設備時,相同設備不同連接不可以進
行相互冗余,致使連接無意義
目的:
使多張網卡之間的連接相同的共享設備時可以形成相互冗余、備份,高可用
準備:
添加網卡eth1
client50:192.168.2.50
storage51: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)
設備文件管理方法