一、概述
本手冊針對Red Hat Enterprise Linux 7.x/8.x系統與華為XSG1存儲設備的多路徑I/O(MPIO)配置,通過優化路徑策略實現高可用、負載均衡及故障容錯,適配華為存儲硬件特性,滿足生產環境需求。
二、參數解析與配置
1. 設備標識(Vendor/Product)
vendor "HUAWEI"
:指定華為為供應商,加載華為專用DSM,適配存儲特性(如ALUA、路徑優先級)。product "XSG1"
:匹配XSG1系列存儲LUN,批量應用配置。
2. 路徑分組(path_grouping_policy)
multibus
:將所有活動路徑(如雙HBA卡連接的路徑)視為一組,I/O在組內均衡分配,適用于華為Active/Active模式,最大化路徑利用率。
3. 優先級與路徑選擇
prio const
:恒定優先級,所有路徑同權(華為對稱式路徑設計場景)。path_selector "service-time 0"
:按服務時間均勻負載,0
表示權重相同,I/O均勻分配,避免單路徑過載。
4. 故障處理
path_checker tur
:通過TUR命令檢測路徑狀態,快速發現鏈路/設備故障(如光纖斷開、控制器無響應)。failback immediate
:主路徑恢復后立即回切,確保最優性能(如華為主控制器恢復時快速切換)。dev_loss_tmo 30
:設備無響應30秒判定為丟失,觸發故障轉移,需與存儲故障恢復時間匹配。fast_io_fail_tmo 5
:5秒內快速處理I/O失敗(如路徑永久故障),減少應用阻塞。no_path_retry 15
:無路徑時重試15次后失敗,避免無限等待(存儲完全下線時通知應用)。
三、配置步驟
-
編輯配置文件
vi /etc/multipath.conf
添加:
devices {device {vendor "HUAWEI"product "XSG1"path_grouping_policy multibusprio constpath_selector "service-time 0"path_checker turfailback immediatedev_loss_tmo 30fast_io_fail_tmo 5no_path_retry 15} }
-
重啟服務
systemctl restart multipathd
-
驗證
- 查看多路徑:
multipath -ll
,確認華為XSG1設備及路徑狀態(active
,分組multibus
)。 - 模擬故障(如拔插光纖),檢查日志(
/var/log/messages
),驗證故障轉移(failback
生效,切換時間≤30秒)。 - 監控I/O:
iostat -xm 5
,確認負載均勻(service-time 0
策略生效)。
- 查看多路徑:
四、最佳實踐
- 硬件冗余:雙HBA卡、雙交換機、雙控制器,構建
2×2
冗余拓撲,抵御單硬件故障。 - 固件更新:升級HBA卡驅動與存儲固件,確保ALUA(若適用)等特性正常。
- 監控告警:配置Zabbix/Prometheus,監控路徑狀態、故障次數,設置
no_path_retry
和dev_loss_tmo
告警。 - 定期演練:每季度模擬故障,驗證故障轉移時間(≤30秒),確保符合SLA。
- 配置備份:備份
multipath.conf
及存儲映射文檔,便于災難恢復。
五、故障排除
- 路徑未識別:檢查日志(
journalctl -u multipathd
),確認vendor/product
匹配;執行SCSI掃描(echo "- - -" > /sys/class/scsi_host/hostX/scan
)。 - 負載不均:確認華為存儲為Active/Active模式,檢查HBA鏈路(
ethtool
/fcinfo
),確保物理連通。 - 轉移延遲:調整
dev_loss_tmo
(如20秒),驗證存儲故障恢復時間,協同failback
策略。
通過上述配置,華為XSG1與RHEL多路徑實現高可靠(99.99%可用性),適配生產環境。操作需結合華為與RHEL官方文檔,確保版本兼容。
注意:實際部署需根據華為存儲具體型號(如XSG1的ALUA支持情況)調整prio
策略(如alua
優先于const
,若存儲支持ALUA)。