如何在 SLES 15 上設定 DM-Multipath:實用指南

首先選擇合適的多路徑協定棧。

在 SUSE Linux Enterprise Server 15 中,設備映射器多路徑 (DM-Multipath) 是 SCSI 和 DASD 儲存空間透過多條路徑呈現時的標準選擇。它將匹配的路徑合併到一個邏輯塊設備中,監控路徑健康狀況,並可在路徑組之間進行故障轉移。它能保護與儲存磁碟區的連接,但無法防止磁碟區故障、控制器資料遺失或檔案系統損壞。

NVMe 使用不同的預設設定:SLES 15 在核心中啟用了原生 NVMe 多路徑。對於基於 Fabric 的 NVMe,在執行 DM-Multipath 流程之前,請確認原生 NVMe 多路徑是您的子系統預期使用的協定堆疊。 SUSE 建議使用原生 NVMe 多路徑,並表示不建議對 NVMe 使用 DM-Multipath。請參閱SUSE 的 SLES 15 SP7 多路徑指南和基於 Fabric 的 NVMe 指南。

更改主機之前

  • 確認儲存陣列、HBA 或網路傳輸以及 SLES 版本是否相容。如果陣列供應商提供的 Linux 多路徑設定與通用預設值不同,請遵循供應商的設定說明。
  • 請儲存管理員透過預期的交換矩陣將 LUN 呈現給主機,並確認分區和 LUN 遮罩。
  • 記錄目前的啟動和儲存佈局。確定根檔案系統、交換分割區或 LVM 實體磁碟區是否位於 SAN 儲存上。
  • 請勿掛載、格式化、新增至 LVM 或寫入每個單獨的路徑設備。同一個 LUN 只能透過其多路徑映射使用;同時使用原始路徑可能會導致資料損壞。
  • 在變更 SAN 啟動配置之前,請先安排好控制台或帶外存取。運行系統與 initramfs 不匹配可能會導致主機進入緊急模式。

1. 確認 Linux 系統能夠辨識儲存路徑

首先確認 HBA 或 iSCSI 傳輸已登錄,且 SLES 已識別到預期的區塊裝置。對於 SCSI 存儲,請檢查設備及其識別碼:

sudo lsblk -o NAME,TYPE,SIZE,MODEL,SERIAL

此清單確認預期大小的 LUN 區塊設備是否可見。在此階段,請勿假定不同的裝置名稱代表不同的儲存磁碟區:後續步驟將檢查它們的 WWID 和群組符合路徑。

如果預期路徑不存在,請先停止操作並解決發現問題。檢查 HBA 可見性、iSCSI 會話或光纖通道登入、SAN 分區、LUN 遮罩以及儲存供應商的重新掃描流程。多路徑無法建立傳輸層未公開的路徑。

2. 安裝並啟動多路徑服務

如果尚未安裝 SUSE 軟體包,請先安裝,然後啟用守護進程,以便在啟動時組裝映射:

sudo zypper install multipath-tools
sudo systemctl enable --now multipathd
sudo systemctl status multipathd

該multipath-tools軟體包提供多路徑命令列工具和multipathd服務。 SUSE 建議在具有多路徑硬體的系統上保持該服務啟用並運行;僅依賴 systemd 套接字啟動可能會導致啟動期間映射未設定。守護程式啟動後,請比較 WWID 和路徑標識:

sudo multipathd show paths format "%i %d %w %s"
sudo multipath -ll

指向同一 LUN 的路徑必須報告相同的 WWID。不同的 WWID 代表不同的設備,不得合併到同一張映射表中。

對於許多陣列來說,內建的硬體預設設定就足夠了。不要僅僅為了啟用多路徑功能而建立大型設定檔。

3. 僅添加必要的配置覆蓋

僅當您有明確需求時才使用/etc/multipath.conf,例如需要穩定易記的別名或廠商指定的設定。多路徑工具透過 WWID 識別路徑;映射別名是一個單獨的、可設定的名稱。每個設備的別名可以這樣配置:

multipaths {
    multipath {
        wwid 3600EXAMPLE_REPLACE_WITH_THE_REAL_WWID
        alias appdata01
    }
}

請將範例 WWID 替換為 LUN 報表的確切識別碼。請勿複製佔位符或自行建立廠商/產品規則。 SUSE 建議保持配置簡潔,儲存廠商應提供任何特定於陣列的調優方案。內建設備屬性的優先權高於該defaults部分中的通用值,因此通用預設值可能不會改變特定陣列的行為。

如果您需要完整的參考模板,SUSE 文件中提供了multipath -T生成器的相關說明。例如,root shell 可以使用 `sudo save` 指令來儲存模板sudo sh -c 'multipath -T > /etc/multipath.conf'。此範本包含許多指令;請仔細查看並僅保留您需要管理的設定。

4. 測試並套用配置

在更改即時地圖之前,請讓 Multipath 顯示使用建議的設定將建立的拓撲結構:

sudo multipath -d -v2

請在繼續操作前檢查 WWID 和路徑分組。此試運行顯示了建議的映射,但並未顯示所有可能被移除或清除的映射。如果守護程式已在運行,請透過守護程序套用配置,而不是使用獨立的 multipath 命令來套用新設定:

sudo multipathd reconfigure

sudo multipath -ll然後使用或檢查即時結果sudo multipathd show topology。 SUSE 指南指出,這些視圖通常顯示相同的拓撲結構;一個讀取核心狀態,另一個讀取守護程式狀態。

5. 保持 initramfs 同步

變更/etc/multipath.conf影響裝置識別的 WWID 或綁定檔案、相關配置或 udev 規則後,請重新建置 initramfs:

sudo dracut -f

SUSE 要求啟動的系統和 initramfs 在多路徑方面保持一致。當根檔案系統位於 SAN 多路徑設備上時,這一點尤其重要。在重新啟動透過 SAN 啟動的主機之前,請先驗證目標對映是否可見,以及設定是否包含必要的儲存支援。如果從救援環境重建 initramfs,或在停用多路徑的情況下啟動後重建,請遵循 SUSE 的明確dracut --add multipath步驟,--omit multipath而不是假設自動偵測會與正常啟動相符。

6. 使用前請先核對地圖。

健康的路徑映射應顯示預期的 WWID、廠商/產品識別、路徑組和各個路徑。在路徑狀態列中,「核心路徑狀態」active表示核心路徑狀態,ready「健康」表示多路徑狀態,running「SCSI 設備狀態」表示 SCSI 設備狀態。具有主動/被動控制器的陣列也可能將被動路徑顯示為「正常」ghost;應使用陣列的路徑策略來解釋該狀態,而不是將其自動視為故障。

在後續的儲存配置中,請使用多路徑對應或持久的按 ID 引用。不要將檔案系統、LVM 或應用程式資料放在單一/dev/sdX路徑上。穩定的引用可以基於映射下的 WWID/dev/mapper或相應的連結。除非您特意配置,否則/dev/disk/by-id/dm-uuid-mpath-WWID請避免假設別名(例如 `<alias_name>`)會一直保持分配狀態。mpatha

快速參考

目標命令或文件需要確認什麼
列出多路徑映射和路徑sudo multipath -ll預期的 WWID 和所有預期路徑
檢查路徑標識符sudo multipathd show paths format "%i %d %w %s"通往同一 LUN 的路徑共用同一個 WWID
檢查守護程式狀態sudo systemctl status multipathd服務已啟用並啟用
預覽擬定地圖sudo multipath -d -v2在套用變更之前,正確的裝置會被​​分組。
重新載入守護程式配置sudo multipathd reconfigure即時拓撲反映了預期的配置
同步啟動配置sudo dracut -f在相關的多路徑或裝置標識變更後運行

地圖缺失或損壞時的故障排除

  • 沒有顯示任何路徑:在編輯多路徑規則之前,請確認傳輸登入、HBA 發現、區域分割、LUN 遮罩和核心裝置發現。
  • LUN 會顯示為多個獨立的磁碟:請比較它們的 WWID。如果 WWID 不同,請確認儲存裝置是否透過每條路徑都呈現了預期的同一個 LUN。如果 WWID 符合但未顯示映射,請檢查守護程式狀態和裝置選擇策略。
  • 一條路徑故障或離線:請檢查線纜或交換矩陣、HBA 連接埠、交換器連接埠、目標控制器以及陣列事件日誌。未經儲存供應商指導,請勿調整輪詢或故障計時器。
  • 主機在啟動變更後進入緊急模式:調查不一致的多路徑選擇和裝置引用,然後對根裝置和 initramfs 使用 SUSE 復原程式。
  • 當所有路徑都失敗時,I/O 操作就會停滯:排隊的 I/O 操作會導致應用程式長時間等待。排隊策略應視為儲存和應用程式擁有者需要共同製定的運維決策;更改排隊策略可能會導致等待中的寫入作業最終轉化為報告的 I/O 錯誤。

切勿在沒有維護計劃和供應商認可的流程的情況下,透過斷開生產路徑來測試故障轉移。請透過受支援的監控和受控的測試視窗來確認恢復情況。有關陣列特定的預設設定和復原步驟,請結合硬體供應商的最新文件以及SUSE 的多路徑配置、驗證和故障排除參考。

留下評論

如何在Linux系統上使用Cameractrls更改網路攝影機設置

如何在Linux系統上使用Cameractrls更改網路攝影機設置

使用 Cameractrls 在 Linux 上變更網路攝影機設定:調整曝光、色彩、減少閃爍和其他支援的控件,然後檢查相容的視訊模式。

如何在 Linux 上安裝 PhpStorm:工具箱、Tar.gz、Snap 和 AUR

如何在 Linux 上安裝 PhpStorm:工具箱、Tar.gz、Snap 和 AUR

在 Linux 系統上,您可以使用 JetBrains Toolbox 或獨立的 tar.gz 壓縮套件安裝 PhpStorm,此外還有 Snap 和 Arch AUR 版本可供選擇。 Java 已預先安裝。

如何在 Linux 系統上將 CD-ROM 備份為 ISO 文件

如何在 Linux 系統上將 CD-ROM 備份為 ISO 文件

在 Linux 上使用 GNOME Disks 或 dd 建立 CD-ROM ISO。識別光碟機,監控複製過程,驗證鏡像,並了解何時損壞的光碟或音訊光碟需要其他工具。

如何在 XFCE 4 上設定雙面板

如何在 XFCE 4 上設定雙面板

為每個顯示器建立一個單獨的 XFCE 4 面板,將第二個面板指派給正確的輸出,調整其位置和大小,並新增所需的啟動器和狀態項目。

如何在Linux上安裝Cisco Packet Tracer

如何在Linux上安裝Cisco Packet Tracer

下載適用於 Ubuntu 64 位元系統的 Cisco Packet Tracer 9.0.1,使用 APT 安裝 DEB 軟體包,在終端機中接受許可協議,然後登入以啟動實驗環境。

如何在Linux系統下使用GIMP摳圖

如何在Linux系統下使用GIMP摳圖

在 Linux 系統上使用 GIMP 去除照片背景:描繪主體,刪除選定的背景,保持透明度,並匯出可重複使用的 PNG 檔案。

免費下載 FlightGear:官方安裝指南

免費下載 FlightGear:官方安裝指南

從官方網站免費下載 FlightGear。比較 Windows、macOS 和 Linux 版本的軟體包,安裝資料文件,即可開始您的首次飛行。

Google Tasks桌面應用程式:如何在電腦上使用

Google Tasks桌面應用程式:如何在電腦上使用

在瀏覽器中開啟 Google Tasks,新增 Chrome 捷徑或應用程式啟動,並透過行事曆和 Gmail 管理有日期的待辦事項。

OKSampler:一款免費、簡單的鍵盤節拍音樂採樣器

OKSampler:一款免費、簡單的鍵盤節拍音樂採樣器

OKSampler 可以將 MP3 片段對應到鍵盤按鍵,並支援音訊循環播放。了解這款經典免費軟體的功能、其舊功能的缺失以及下載前需要檢查的事項。

如何在 Linux 系統上安裝 Wireshark:Ubuntu、Fedora、Arch 等

如何在 Linux 系統上安裝 Wireshark:Ubuntu、Fedora、Arch 等

使用目前軟體包命令在 Ubuntu、Debian、Fedora、Arch 或 openSUSE 上安裝 Wireshark,然後安全地配置即時資料包擷取。