1. 程式人生 > >設備文件管理方法

設備文件管理方法

物理 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)

設備文件管理方法