1. 程式人生 > >Linux叢集儲存——day1——udev管理技術、多路徑服務

Linux叢集儲存——day1——udev管理技術、多路徑服務

儲存技術分為:直連式儲存,網路儲存

直連儲存 SCSI介面(雙絞線) 小型計算介面、其介面對應的系統中的磁碟名是  sd開頭
DAS技術 將儲存裝置通過SCSI介面或者光纖通道連結計算機
優點:儲存速度綜合較快,短距離中價效比高
缺點:不能資料共享,在資料量巨大的時候,其效能下降較快
網路儲存 NAS 是一個專用資料儲存伺服器,屬於一個用於資料共享的裝置,使用者可以通過TCP/IP協議訪問資料
SAN 通過網路交換裝置把儲存裝置和相關伺服器連線起來,屬於搭建一個網路服務來實現共享儲存裝置的儲存空間
FC-SAN  是用光纖裝置組成的SAN,成本高,相連的所有裝置都必須是支援光纖的網路裝置,但效能高
IP-SAN  是用普通雙絞線進行連線,價效比高,在距離不是很遠的時候參用較多,但是距離長可能會有不少延遲
其中包含一個iscsi的技術(具體iscsi的配置檢視我關於iscsi配置的相關blog)

裝置檔案管理方法:udev 技術

    因為連線ISCSI共享出的磁碟,其裝置在系統的名字是按順序分配的,不固定,導致在寫一些自動掛載的時候會無故報錯,所以想用udev技術讓一個裝置完全固定一個名字。

  Linux檢視系統中裝置資訊

    1. 獲取裝置資訊
          動態監聽系統裝置資訊
             udevadm monitor --property

          具體檢視當前系統裝置的資訊
             獲取路徑
                udevadm info -q path -n 裝置的系統路徑
             獲取詳細資訊
                udevadm info -q all -p 剛剛檢視的路徑 -a
             合併起來可以寫成:
                udevadm info -q all -n 裝置的系統路徑 -a

    2. 配置udev,修改配置檔案:/etc/udev/rules.d/50-iscsidisk.rules

       具體格式就算把所有的匹配選項和具體操作,用  ,   連線起來,程式會把匹配所有匹配選項的裝置一一進行所有操作,不過最好匹配項能鎖定一個具體裝置

符號含義
== 代表匹配
!= 代表不匹配
= 代表賦值
+= 代表追加
:= 代表指定值,不允許被替換
變數
%k 核心所識別出來的裝置名,如sdb1
%n 裝置的核心編號,如sda3中的3
%p 裝置路徑,如/sys/block/sdb/sdb1
%% %符號本身
具體操作
NAME="名字" 定義裝置名稱
SYMLINK+="相對路徑" 新增一個連結,其相對路徑是從/dev/ 開始的
OWNER="使用者" 指定裝置的所有者
MODE="0644" 定義裝置的許可權其數字代表的就是許可權
從上面的命令udevadm中,查詢有用資訊
ACTIOMN=="裝置動作" 判斷裝置的動作(新增add,刪除delete)
SUBSYSTEM=="block" 裝置型別是   塊裝置
ATTR{size}=="104857600" 裝置大小
ATTRS{model}=="db           "

 裝置命名

KERNEL=="sd[a-z][1-7]"

判斷核心中該裝置名字可以用範圍也可是確定值

是磁碟就不加數字,是分割槽就要加上數字

ATTRS{vendor}=="LIO-ORG " 生產廠家

例如:

SUBSYSTEM=="block",ATTRS{model}=="db",ATTRS{vendor}=="LIO-ORG ",KERNEL=="sd[a-z]",SYMLINK="iscsi/udisk"

    先手動進行連線iscsi的裝置,然後檢視其裝置資訊,然後在配置檔案寫一些關於磁碟的具體標識,可以是磁碟的標識也可以是磁碟的標識,選的什麼的資訊到時候,建立的連線就是誰,最後加一個連結,這樣就可以在/dev/下建立一個連結,然後不管是掛載還是格式化都只要對這個連結操作。
    要注意,如果想做的是一個磁碟,可以對其分割槽,但是最好不要格式化,否則會讓分分割槽資訊消失,可以分割槽後,再像上面再配置檔案中寫一個分割槽的連結。


為提高穩定性,搭建多路徑服務

  裝包:device-mapper-multipath

  初始化配置:mpathconf  --user_friendly_names n

  進階配置:
    獲取磁碟的唯一標示wwid:/usr/lib/udev/scsi_id --whitelisted --device=磁碟
    修改配置檔案: /etc/multipath.conf   (在後面追加)

multipaths {
   multipath {
        wwid  "剛剛檢視的磁碟的wwid資訊"
        alias  自定的名字(其會自動建立在/dev/mapper/)
   }
}

  啟服務:systemctl restart multipathd

  重新整理多路徑資訊 multipath -rr
  檢視多路徑資訊 multipath -ll

   檢查多路徑的配置是否成功,檢視/dev/mapper/有沒有自定義的名字,我們如果要分割槽、格式化、掛載也是對這目錄下創建出來的內容操作,分割槽後,這個目錄下也會有相關的檔案
   如定義的名字為mapth,那麼磁碟就是/dev/mapper/mapth,分割槽後就會多一個/dev/mapper/mapth1,然後的操作就和基本的磁碟一樣了。


總結:
   1. iscsi是較為常見的磁碟儲存共享,請熟練掌握
   2. udev和multipaths都是建立了一個連結,然後通過連結來操作磁碟
   3. udev分割槽後不會有分分割槽相關的連結,但是multipaths會自動建立,其操作相對udev會檢點點。