Unity:當 Unity LUN 處於非使用中狀態時,具有 DM-MPIO 的 BFS RHEL8.3 伺服器無法開機
Summary: 當 Unity LUN 處於非使用中狀態時,使用 DM-MPIO 從 SAN (BFS) 開機的 Red Hat 伺服器無法開機。在 Red Hat 伺服器 (BFS 和本機開機) 上,當 LUN 設為非使用中時,「fdisk -l」命令 (EMCGRAB 和 SOSREPORT) 無法完成。(使用者可修正)
Symptoms
當 Unity LUN 處於非使用中狀態時,Red Hat 伺服器從 SAN (BFS) 開機時無法開機。
在 Red Hat 伺服器 (BFS 和本機開機) 上, fdisk -l 當 LUN 設為非使用中時,命令不會完成。
在 Red Hat 伺服器 (BFS 和本機開機) 上, emcgrab和 sosreport 當 LUN 設為非使用中時,命令不會完成。
Red Hat 伺服器會在主控台畫面和以下訊息中回報非活動 LUN 的 I/O 錯誤:
blk_update_request: I/O error, dev sdh, sector 20971392 op 0x0:(READ) flags 0x4200 phys_seg 1 prio class 0 Buffer I/O error on sdh, logical block 2621424, async page read
可使用 multipath -ll 命令顯示路徑配置不正確,如下所示:
mpathb (360xxxxxxxxxxxxxxxxxxxxxxxxx) dm-1 DGC,VRAID size=10G features='1 queue_if_no_path' hwhandler='1 alua' wp=rw |-+- policy='service-time 0' prio=23 status=enabled | |- 6:0:0:1 sdb 8:16 failed ready running | |- 7:0:0:1 sdf 8:80 failed ready running | `- 7:0:1:1 sdh 8:112 failed ready running `-+- policy='service-time 0' prio=50 status=enabled `- 6:0:1:1 sdd 8:48 failed ready running
Cause
Red Hat Enterprise Linux 7.4 推出 detect_checker 作為節參數,其預設值為 yes。多重路徑 I/O (MPIO) 會偵測裝置是否支援非對稱邏輯單元存取 (ALUA)。如果它支援 ALUA 和 detect_checker 值為「yes」,則 MPIO 會覆寫已配置的 path_checker 並使用 TUR checker 而是和使用者定義的 path_checker emc_clariion 被忽略。可使用 TUR checker 無法正確處理來自 Unity 非使用中 LUN 的 SCSI 感知。DM-MPIO 會重複還原路徑。
如果 Red Hat 伺服器是從 SAN 開機, multipathd 啟動在 initramfs 階段未完成,因此作業系統無法進入掛接真正的 rootFS 階段。
如果您將 Red Hat 伺服器從本機開機, fdisk -l 命令停止回應,因為對非活動 LUN 的 I/O 未完成。
Resolution
使用 DM-MPIO emc_clariion_checker 因為它可以正確處理非活動 LUN 狀態。
備份原始版本 /etc/multpath.conf 檔並對其進行修改,如下所示。
請參閱最新的 Linux 主機連接性指南 ,以及 Red Hat Enterprise Linux 7.4 及更新版本 章節 /etc/multpath.conf。
defaults {
user_friendly_names yes
}
devices {
device {
vendor "DGC"
product ".*"
product_blacklist "LUNZ"
path_grouping_policy "group_by_prio"
path_checker "emc_clariion"
features "1 queue_if_no_path"
hardware_handler "1 emc"
prio "emc"
failback immediate
rr_weight "uniform"
no_path_retry 60
retain_attached_hw_handler yes
detect_prio yes
detect_checker no
}
}
以下是僅從 SAN (BFS) Red Hat 伺服器開機。
如果您的 BFS Red Hat 伺服器遇到開機問題,請將伺服器的 LUN 狀態從非活動更改為活動。然後作業系統會完成開機程序。作業系統開機後,修改 /etc/multpath.conf 檔,如上所述。編輯後 /etc/multpath.conf 檔案, 重新建置 initramfs multipath 與 dracut 命令為貴組織設定主要和次要 IT 連絡人。建議建立原始資料庫的備份 initramfs 重新建置前的檔案 initramfs。
dracut --force --add multipath
有關重建的更多詳細資訊 initramfs,請諮詢紅帽支援。