Najpierw wybierz odpowiedni stos wielościeżkowy
W systemie SUSE Linux Enterprise Server 15, funkcja Device Mapper Multipath (DM-Multipath) jest standardowym wyborem dla pamięci masowej SCSI i DASD prezentowanej wieloma ścieżkami. Łączy ona pasujące ścieżki do jednego logicznego urządzenia blokowego, monitoruje stan ścieżek i umożliwia przełączanie awaryjne między grupami ścieżek. Chroni połączenie z woluminem pamięci masowej; nie chroni przed awarią woluminu, utratą danych kontrolera ani uszkodzeniem systemu plików.
NVMe używa innej domyślnej konfiguracji: SLES 15 włącza natywną obsługę wielu ścieżek NVMe w jądrze. W przypadku NVMe over Fabrics, przed wykonaniem procedury DM-Multipath należy upewnić się, że natywna obsługa wielu ścieżek NVMe jest zamierzona dla danego podsystemu. SUSE zaleca natywną obsługę wielu ścieżek NVMe i twierdzi, że korzystanie z DM-Multipath dla NVMe nie jest zalecane. Zapoznaj się z przewodnikiem SUSE SLES 15 SP7 dotyczącym wielu ścieżek oraz przewodnikiem NVMe over Fabrics .
Zanim zmienisz hosta
- Sprawdź, czy macierz pamięci masowej, karta HBA lub transport sieciowy oraz wersja SLES są obsługiwane razem. Postępuj zgodnie z ustawieniami wielościeżkowości Linuksa podanymi przez dostawcę macierzy, jeśli różnią się one od domyślnych ustawień ogólnych.
- Poproś administratora pamięci masowej o udostępnienie jednostki LUN hostowi za pośrednictwem docelowych struktur i potwierdzenie strefowania oraz maskowania jednostki LUN.
- Zapisz aktualny układ rozruchu i pamięci masowej. Zidentyfikuj, czy system plików główny, wolumin wymiany lub wolumin fizyczny LVM znajduje się w pamięci masowej SAN.
- Nie montuj, nie formatuj, nie dodawaj do LVM ani nie zapisuj danych do każdego urządzenia ścieżki osobno. Ten sam LUN musi być używany wyłącznie poprzez jego mapę wielościeżkową; jednoczesne używanie surowych ścieżek może spowodować uszkodzenie danych.
- Przed zmianą konfiguracji rozruchu SAN zorganizuj dostęp konsolowy lub poza pasmem. Niezgodność między systemem operacyjnym a initramfs może spowodować przejście hosta w tryb awaryjny.
1. Sprawdź, czy system Linux widzi ścieżki pamięci masowej
Najpierw sprawdź, czy karta HBA lub transport iSCSI zalogował się i czy SLES widzi oczekiwane urządzenia blokowe. W przypadku pamięci masowej SCSI sprawdź urządzenia i ich identyfikatory:
sudo lsblk -o NAME,TYPE,SIZE,MODEL,SERIAL
Ta inwentaryzacja potwierdza, czy oczekiwane urządzenia blokowe o rozmiarze LUN są widoczne. Na tym etapie nie należy zakładać, że oddzielne nazwy urządzeń oznaczają oddzielne woluminy pamięci masowej: kolejne kroki polegają na sprawdzeniu ich identyfikatorów WWID i ścieżek dopasowania grup.
Jeśli oczekiwane ścieżki są niedostępne, zatrzymaj się tutaj i najpierw rozwiąż problem z wykrywaniem. Sprawdź widoczność karty HBA, sesje iSCSI lub logowanie Fibre Channel, strefowanie SAN, maskowanie LUN oraz procedurę ponownego skanowania dostawcy pamięci masowej. Funkcja Multipath nie może tworzyć ścieżek, których warstwa transportowa nie ujawnia.
2. Zainstaluj i uruchom usługę wielościeżkową
Zainstaluj pakiet SUSE, jeśli jeszcze go nie ma, a następnie włącz demona, aby mapy były montowane podczas rozruchu:
sudo zypper install multipath-tools
sudo systemctl enable --now multipathd
sudo systemctl status multipathd
Pakiet multipath-toolsdostarcza narzędzia wiersza poleceń i multipathdusługę multipath. SUSE zaleca pozostawienie usługi włączonej i uruchomionej w systemach ze sprzętem multipath; poleganie wyłącznie na aktywacji gniazda systemd może spowodować, że mapy pozostaną nieustawione podczas rozruchu. Po aktywacji demona należy porównać identyfikatory WWID i tożsamości ścieżek:
sudo multipathd show paths format "%i %d %w %s"
sudo multipath -ll
Ścieżki do tego samego LUN-a muszą zgłaszać ten sam identyfikator WWID. Różne identyfikatory WWID reprezentują różne urządzenia i nie mogą być łączone w jedną mapę.
W przypadku wielu tablic wbudowane ustawienia sprzętowe są wystarczające. Nie twórz dużego pliku konfiguracyjnego tylko po to, by włączyć obsługę wielu ścieżek.
3. Dodaj tylko potrzebną zmianę konfiguracji
Używaj /etc/multipath.conftylko wtedy, gdy masz konkretne wymagania, takie jak stabilny, przyjazny alias lub ustawienie określone przez dostawcę. Narzędzia wielościeżkowe identyfikują ścieżki za pomocą WWID; alias mapy to osobna, konfigurowalna nazwa. Alias dla każdego urządzenia można skonfigurować w następujący sposób:
multipaths {
multipath {
wwid 3600EXAMPLE_REPLACE_WITH_THE_REAL_WWID
alias appdata01
}
}
Zastąp przykładowy identyfikator WWID dokładnym identyfikatorem zgłoszonym dla jednostki LUN. Nie kopiuj symbolu zastępczego ani nie wymyślaj reguły dostawcy/produktu. SUSE zaleca minimalną konfigurację, a dostawca pamięci masowej powinien zapewnić wszelkie dostrojenia specyficzne dla macierzy. Wbudowane właściwości urządzenia mogą mieć pierwszeństwo przed wartościami ogólnymi w sekcji defaults, więc ogólna wartość domyślna może nie zmienić zachowania konkretnej tablicy.
Jeśli potrzebujesz pełnego szablonu referencyjnego, SUSE dokumentuje multipath -Tgenerator. Na przykład, powłoka roota może go zapisać w pliku sudo sh -c 'multipath -T > /etc/multipath.conf'. Ten szablon zawiera wiele dyrektyw; przejrzyj go i zachowaj tylko te ustawienia, którymi zamierzasz zarządzać.
4. Przetestuj i zastosuj konfigurację
Przed zmianą map na żywo poproś multipath o pokazanie topologii, jaką utworzyłby przy proponowanych ustawieniach:
sudo multipath -d -v2
Przed kontynuacją sprawdź identyfikator WWID i grupowanie ścieżek. Ten test pokazuje proponowane mapy, ale nie wszystkie mapy, które mogą zostać usunięte lub usunięte. Jeśli demon jest już uruchomiony, zastosuj konfigurację za jego pośrednictwem, zamiast używać samodzielnego polecenia multipath, aby zastosować nowe ustawienia:
sudo multipathd reconfigure
Następnie sprawdź wynik na żywo za pomocą sudo multipath -lllub sudo multipathd show topology. W podręczniku SUSE zaznaczono, że te widoki zazwyczaj pokazują tę samą topologię: jeden odczytuje stan jądra, a drugi stan demona.
5. Utrzymuj synchronizację initramfs
Po zmianie /etc/multipath.confplików WWID lub powiązań, powiązanej konfiguracji lub reguł udev, które mają wpływ na identyfikację urządzenia, należy ponownie utworzyć initramfs:
sudo dracut -f
SUSE wymaga, aby uruchomiony system i initramfs działały spójnie w kontekście obsługi wielu ścieżek. Jest to szczególnie ważne, gdy główny system plików znajduje się na urządzeniu wielościeżkowym SAN. Przed ponownym uruchomieniem hosta uruchomionego z sieci SAN należy sprawdzić, czy zamierzona mapa jest widoczna i czy konfiguracja obejmuje niezbędną obsługę pamięci masowej. W przypadku odbudowy initramfs ze środowiska ratunkowego lub po uruchomieniu z wyłączoną obsługą wielu ścieżek, należy postępować zgodnie z jawną procedurą SUSE dracut --add multipathlub --omit multipathzamiast zakładać, że automatyczne wykrywanie będzie zgodne z normalnym rozruchem.
6. Sprawdź mapę przed jej użyciem
Poprawna mapa powinna pokazywać oczekiwany identyfikator WWID, identyfikator dostawcy/produktu, grupy ścieżek i ścieżki indywidualne. W kolumnach stanu ścieżki, activewskazuje stan ścieżki jądra, readywskazuje poprawną ścieżkę wielościeżkową i runningoznacza stan urządzenia SCSI. Macierze z kontrolerami aktywnymi/pasywnymi mogą również wyświetlać ścieżki pasywne jako ghost; interpretuj ten stan za pomocą polityki ścieżek macierzy, zamiast traktować go automatycznie jako błąd.
Użyj mapy wielościeżkowej lub trwałego odwołania by-id w późniejszej konfiguracji pamięci masowej. Nie umieszczaj systemów plików, LVM ani danych aplikacji na pojedynczej /dev/sdXścieżce. Stabilne odwołanie może być oparte na mapie WWID /dev/mapperlub odpowiednim /dev/disk/by-id/dm-uuid-mpath-WWIDłączu. Unikaj zakładania, że alias, taki jak ten, mpathapozostanie przypisany, chyba że zostanie celowo skonfigurowany.
Krótki przewodnik
| Bramka | Polecenie lub plik | Co potwierdzić |
| Wyświetlanie listy map wielościeżkowych i ścieżek | sudo multipath -ll | Oczekiwana wojna światowa i każda zamierzona ścieżka |
| Sprawdź identyfikatory ścieżek | sudo multipathd show paths format "%i %d %w %s" | Ścieżki do jednego LUN współdzielą jeden identyfikator WWID |
| Sprawdź stan demona | sudo systemctl status multipathd | Usługa jest aktywna i włączona |
| Podgląd proponowanych map | sudo multipath -d -v2 | Przed zastosowaniem zmian grupowane są prawidłowe urządzenia |
| Przeładuj konfigurację demona | sudo multipathd reconfigure | Topologia na żywo odzwierciedla zamierzoną konfigurację |
| Synchronizuj konfigurację rozruchową | sudo dracut -f | Uruchom po odpowiednich zmianach wielościeżkowości lub identyfikacji urządzenia |
Rozwiązywanie problemów w przypadku braku mapy lub jej nieprawidłowego działania
- Nie pojawiają się żadne ścieżki: przed edycją reguł wielościeżkowych sprawdź logowanie transportu, wykrywanie HBA, strefowanie, maskowanie LUN i wykrywanie urządzeń jądra.
- Jednostka LUN jest wyświetlana jako oddzielne dyski: porównaj identyfikatory WWID. Jeśli się różnią, sprawdź, czy pamięć masowa przedstawiła tę samą jednostkę LUN na każdej ścieżce. Jeśli są zgodne, ale mapa się nie pojawia, sprawdź status demona i politykę wyboru urządzeń.
- Jedna ścieżka jest uszkodzona lub niedostępna: sprawdź kabel lub magistralę, port HBA, port przełącznika, kontroler docelowy i dzienniki zdarzeń macierzy. Nie dostosowuj odpytywania ani timerów awarii bez konsultacji z dostawcą pamięci masowej.
- Po zmianie rozruchu host przechodzi w tryb awaryjny: należy zbadać niespójny wybór ścieżek wielokrotnych i odwołania do urządzeń, a następnie zastosować procedurę odzyskiwania SUSE dla urządzenia głównego i initramfs.
- Operacje wejścia/wyjścia zatrzymują się, gdy wszystkie ścieżki zawodzą: kolejkowane operacje wejścia/wyjścia mogą powodować oczekiwanie aplikacji. Traktuj politykę kolejkowania jako decyzję operacyjną podejmowaną przez właścicieli pamięci masowej i aplikacji; jej zmiana może spowodować, że oczekujące zapisy będą zgłaszane jako błędy wejścia/wyjścia.
Nie testuj przełączania awaryjnego, odłączając ścieżkę produkcyjną bez planu konserwacji i procedury zatwierdzonej przez dostawcę. Potwierdź odzyskiwanie poprzez monitorowanie i kontrolowane okno testowe. W przypadku ustawień domyślnych i kroków odzyskiwania specyficznych dla macierzy, skorzystaj z aktualnej dokumentacji dostawcy sprzętu oraz podręcznika SUSE dotyczącego konfiguracji, weryfikacji i rozwiązywania problemów z wieloma ścieżkami .