日常工作問題解決:rhel7下配置多路徑設備


1、情景描述

在安裝oracle11g rac時,存儲管理人員分配了兩塊1.5T的共享磁盤,使用fdisk查看,如下所示:


[root@db1 ~]# fdisk -l

磁盤 /dev/sda:119.0 GB, 118999744512 字節,232421376 個扇區
Units = 扇區 of 1 * 512 = 512 bytes
扇區大小(邏輯/物理):512 字節 / 4096 字節
I/O 大小(最小/最佳):4096 字節 / 4096 字節
磁盤標簽類型:dos
磁盤標識符:0x000cb057

   設備 Boot      Start         End      Blocks   Id  System
/dev/sda1   *        2048     2099199     1048576   83  Linux
/dev/sda2         2099200   230692863   114296832   8e  Linux LVM

磁盤 /dev/sdb:1649.3 GB, 1649267441664 字節,3221225472 個扇區
Units = 扇區 of 1 * 512 = 512 bytes
扇區大小(邏輯/物理):512 字節 / 512 字節
I/O 大小(最小/最佳):32768 字節 / 32768 字節


磁盤 /dev/sdc:1649.3 GB, 1649267441664 字節,3221225472 個扇區
Units = 扇區 of 1 * 512 = 512 bytes
扇區大小(邏輯/物理):512 字節 / 512 字節
I/O 大小(最小/最佳):32768 字節 / 32768 字節


磁盤 /dev/sdd:1649.3 GB, 1649267441664 字節,3221225472 個扇區
Units = 扇區 of 1 * 512 = 512 bytes
扇區大小(邏輯/物理):512 字節 / 512 字節
I/O 大小(最小/最佳):32768 字節 / 32768 字節


磁盤 /dev/sde:1649.3 GB, 1649267441664 字節,3221225472 個扇區
Units = 扇區 of 1 * 512 = 512 bytes
扇區大小(邏輯/物理):512 字節 / 512 字節
I/O 大小(最小/最佳):32768 字節 / 32768 字節


磁盤 /dev/mapper/rhel-root:45.1 GB, 45097156608 字節,88080384 個扇區
Units = 扇區 of 1 * 512 = 512 bytes
扇區大小(邏輯/物理):512 字節 / 4096 字節
I/O 大小(最小/最佳):4096 字節 / 4096 字節


磁盤 /dev/mapper/rhel-swap:34.4 GB, 34359738368 字節,67108864 個扇區
Units = 扇區 of 1 * 512 = 512 bytes
扇區大小(邏輯/物理):512 字節 / 4096 字節
I/O 大小(最小/最佳):4096 字節 / 4096 字節


磁盤 /dev/mapper/rhel-home:37.6 GB, 37580963840 字節,73400320 個扇區
Units = 扇區 of 1 * 512 = 512 bytes
扇區大小(邏輯/物理):512 字節 / 4096 字節
I/O 大小(最小/最佳):4096 字節 / 4096 字節


磁盤 /dev/sdf:1649.3 GB, 1649267441664 字節,3221225472 個扇區
Units = 扇區 of 1 * 512 = 512 bytes
扇區大小(邏輯/物理):512 字節 / 512 字節
I/O 大小(最小/最佳):32768 字節 / 32768 字節


磁盤 /dev/sdg:1649.3 GB, 1649267441664 字節,3221225472 個扇區
Units = 扇區 of 1 * 512 = 512 bytes
扇區大小(邏輯/物理):512 字節 / 512 字節
I/O 大小(最小/最佳):32768 字節 / 32768 字節


磁盤 /dev/sdh:1649.3 GB, 1649267441664 字節,3221225472 個扇區
Units = 扇區 of 1 * 512 = 512 bytes
扇區大小(邏輯/物理):512 字節 / 512 字節
I/O 大小(最小/最佳):32768 字節 / 32768 字節


磁盤 /dev/sdi:1649.3 GB, 1649267441664 字節,3221225472 個扇區
Units = 扇區 of 1 * 512 = 512 bytes
扇區大小(邏輯/物理):512 字節 / 512 字節
I/O 大小(最小/最佳):32768 字節 / 32768 字節

發現除了/dev/sda之外,還有8個1.5T的磁盤,分別為sdc-sdi,確定為多路徑.

2、安裝多路徑軟件

2.1 安裝多路徑

yum install device-mapper

2.2檢查安裝情況

[root@db1 ~]# rpm -qa|grep multipath
device-mapper-multipath-libs-0.4.9-111.el7.x86_64
device-mapper-multipath-0.4.9-111.el7.x86_64

2.3 重啟系統

reboot

2.4 將多路徑軟件添加至內核模塊


modprobe dm-multipath
modprobe dm-round-robin

2.5 檢查內核添加情況


[root@db1 ~]# lsmod |grep multipath
dm_multipath           27792  3 dm_round_robin
dm_mod                124501  32 dm_multipath,dm_log,dm_mirror


2.6 啟動multipath服務

systemctl start multipathd

2.7 設置開機自啟動

systemctl enable multipathd

3、配置多路徑

3.1 查看需要設置多路徑磁盤的wwid


[root@db1 ~]# more /etc/multipath/wwids
# Multipath wwids, Version : 1.0
# NOTE: This file is automatically maintained by multipath and multipathd.
# You should not need to edit this file in normal circumstances.
#
# Valid WWIDs:
/360050764008101cf9800000000000030/
/360050764008101cf9800000000000031/

如果查詢不到只能一個設備一個設備查看


[root@db1 ~]# /usr/lib/udev/scsi_id -g -u /dev/sdb
360050764008101cf9800000000000030
[root@db1 ~]# /usr/lib/udev/scsi_id -g -u /dev/sdc
360050764008101cf9800000000000031
[root@db1 ~]# /usr/lib/udev/scsi_id -g -u /dev/sde
360050764008101cf9800000000000031
[root@db1 ~]# /usr/lib/udev/scsi_id -g -u /dev/sdd
360050764008101cf9800000000000030
[root@db1 ~]# /usr/lib/udev/scsi_id -g -u /dev/sdf
360050764008101cf9800000000000030
[root@db1 ~]# /usr/lib/udev/scsi_id -g -u /dev/sdg
360050764008101cf9800000000000031
[root@db1 ~]# /usr/lib/udev/scsi_id -g -u /dev/sdh
360050764008101cf9800000000000030
[root@db1 ~]# /usr/lib/udev/scsi_id -g -u /dev/sdi
360050764008101cf9800000000000031

發現其實只有兩個磁盤,wwid分別為360050764008101cf9800000000000030和360050764008101cf9800000000000031

3.2 創建multipath配置文件

/sbin/mpathconf --enable

3.3 修改mutlipath配置文件

[root@db1 ~]# vi /etc/multipath.conf



blacklist {   #  -------黑名單項:即不使用多路徑的硬盤,如服務器本地盤等
       wwid 3600508e000000000439b837021cf740d  # -------不使用多路徑的本地盤wwid號
        devnode "^(ram|raw|loop|fd|md|dm-|sr|scd|st)[0-9]*" 
        devnode "^hd[a-z]" # --------不使用多路徑的本地盤hd名稱
}
multipaths {    # ---使用多路徑軟件項
        multipath {   #  ---單塊存儲盤配置,如有多塊存儲盤,如多個multipath{}配置
                wwid                    360050764008101cf9800000000000030 #  ---使用多路徑的存儲盤wwid號
                alias                   dbstorage001     #  該存儲盤多路徑后的別名
                path_grouping_policy    multibus
                path_selector           "round-robin 0"
                failback                manual
                rr_weight               priorities
                no_path_retry           5
        }
        multipath {
                wwid                    360050764008101cf9800000000000031
                alias                   dbstorage002
                path_grouping_policy    multibus
                path_selector           "round-robin 0"
                failback                manual
                rr_weight               priorities
                no_path_retry           5
        }
}
devices {
        device {
                vendor                  "COMPAQ  "  #  ---存儲廠家名稱
                product                 "HSV110 (C)COMPAQ"   #  --存儲產品型號
                path_grouping_policy    multibus
                path_checker            readsector0
                path_selector           "round-robin 0"
                hardware_handler        "0"
                failback                15
                rr_weight               priorities
                no_path_retry           queue
        }


保存文件退出。

3.2 啟動multipath


[root@db1 ~]# multipath -v2  # 加載多路徑配置文件
[root@db1 ~]# systemctl restart multipathd.service # 重啟多路徑服務
[root@db1 ~]# multipath -ll # 查看多路徑配置情況
dbstorage002 (360050764008101cf9800000000000031) dm-3 IBM     ,2145            
size=1.5T features='1 queue_if_no_path' hwhandler='0' wp=rw
`-+- policy='round-robin 0' prio=30 status=active
  |- 12:0:0:1 sdc 8:32  active ready running
  |- 11:0:0:1 sdg 8:96  active ready running
  |- 12:0:1:1 sde 8:64  active ready running
  `- 11:0:1:1 sdi 8:128 active ready running
dbstorage001 (360050764008101cf9800000000000030) dm-2 IBM     ,2145            
size=1.5T features='1 queue_if_no_path' hwhandler='0' wp=rw
`-+- policy='round-robin 0' prio=30 status=active
  |- 12:0:0:0 sdb 8:16  active ready running
  |- 11:0:0:0 sdf 8:80  active ready running
  |- 12:0:1:0 sdd 8:48  active ready running
  `- 11:0:1:0 sdh 8:112 active ready running

配置完成。

4、查看結果

fdisk -l發現存在dbstorage001和dbstorage002兩塊磁盤,可以對其進行分區,分區結果也會同步到sdb-sdi這些別名磁盤上。


免責聲明!

本站轉載的文章為個人學習借鑒使用,本站對版權不負任何法律責任。如果侵犯了您的隱私權益,請聯系本站郵箱yoyou2525@163.com刪除。



 
粵ICP備18138465號   © 2018-2025 CODEPRJ.COM