Co robi łatanie na żywo SLES
Funkcja SUSE Linux Enterprise Server (SLES) Kernel Live Patching (KLP) stosuje obsługiwane poprawki jądra w działającym systemie bez konieczności jego ponownego uruchamiania. W systemie SLES 15 SP7, SUSE dostarcza te poprawki jako pakiety poprawek jądra Live, które odpowiadają konkretnej wersji jądra. uname -rDzięki temu wynik pozostaje taki sam po pomyślnym wykonaniu poprawki Live Patch; użyj narzędzi KLP, aby sprawdzić status poprawki.
Stosowanie poprawek na żywo zmniejsza potrzebę natychmiastowych restartów konserwacyjnych, ale nie eliminuje konieczności planowania restartu jądra. Poprawki na żywo obejmują wybrane krytyczne poprawki; nie zastępują regularnych aktualizacji jądra, konserwacji pakietów Service Pack ani poprawek wymaganych przy ponownym uruchomieniu. SUSE może nie być w stanie utworzyć poprawki na żywo dla każdej kwalifikującej się poprawki. Zachowaj zaplanowaną ścieżkę restartu w celu zainstalowania nowszego jądra bazowego i zastosowania poprawek, których nie można zastosować na miejscu.
Niniejszy przewodnik opiera się na procedurze SLES 15 SP7 opublikowanej w podręczniku administratora SUSE „ Kernel Live Patching with KLP” . Przed zastosowaniem poleceń na hoście produkcyjnym należy sprawdzić dokumentację dotyczącą konkretnego pakietu Service Pack i architektury.
Krótki przewodnik
| Zadanie | Polecenie lub sprawdzenie | Co ci to mówi |
| Zidentyfikuj działające jądro | uname -r | Wersja jądra aktualnie znajdująca się w pamięci. Nie pokazuje poziomu bieżącej poprawki. |
| Wyświetl listę zainstalowanych pakietów poprawek na żywo | zypper se --details 'kernel-livepatch-*' | Pakiety zainstalowane lub dostępne w włączonych repozytoriach. |
| Sprawdź aktualny status poprawki | sudo klp status | Czy KLP jest aktywny i jaki jest jego aktualny stan. |
| Sprawdź szczegóły załadowanej poprawki | sudo klp -v patches | Informacje o zainstalowanych/załadowanych poprawkach i uwzględnionych poprawkach. |
| Przejrzyj daty wsparcia poprawek | sudo zypper lifecycle | Dane cyklu życia, gdy zainstalowany jest wymagany pakiet cyklu życia. |
Przed włączeniem KLP
- Sprawdź, czy host obsługuje obsługiwany pakiet Service Pack i architekturę SLES 15. Poniższa procedura SP7 wykorzystuje przykład rozszerzenia x86_64; odczytaj dane wyjściowe rozszerzenia na własnym hoście, zamiast kopiować ścieżkę innego produktu lub architektury.
- Upewnij się, że subskrypcja SLES i oddzielne uprawnienie SLE Live Patching są aktywne, a następnie uzyskaj kod rejestracyjny Live Patching w Centrum obsługi klienta SUSE.
- Sprawdź, czy host ma dostęp do skonfigurowanych repozytoriów SUSE lub zdublowanej usługi aktualizacji w Twojej organizacji. W przypadku zarządzanych flot sprawdź, czy kanały repozytoriów zawierają pasującą zawartość poprawek na żywo.
- Zapis
uname -r, aktualny stan systemu i aktualny plan konserwacji. W miarę możliwości przetestuj procedurę na reprezentatywnym serwerze nieprodukcyjnym.
- Zachowaj standardowy proces aktualizacji jądra i ponownego uruchamiania. Wdrażanie poprawek na żywo zmniejsza pilność niektórych poprawek; nie sprawia, że działające jądro jest zawsze aktualne.
Włącz łatanie na żywo jądra SLES 15 SP7
1. Sprawdź dostępne polecenie rozszerzenia
Uruchom listę rozszerzeń i znajdź dokładny wpis SLE Live Patching dla zainstalowanego produktu:
sudo SUSEConnect --list-extensions
W przypadku SLES 15 SP7 na architekturze x86_64, SUSE dokumentuje ścieżkę aktywacji, taką jak sle-module-live-patching/15.7/x86_64. Dane wyjściowe na hoście są wiarygodne: przed kontynuowaniem sprawdź zgodność wersji i architektury.
2. Zarejestruj rozszerzenie Live Patching
Użyj polecenia aktywacji pokazanego przez SUSEConnect --list-extensions, zastępując je prawidłowym kodem rejestracyjnym. Przykład dla SLES 15 SP7 x86_64:
sudo SUSEConnect -p sle-module-live-patching/15.7/x86_64 \
-r LIVE_PATCHING_REGISTRATION_CODE
Nie wklejaj prawdziwego kodu rejestracyjnego do współdzielonych zgłoszeń, transkryptów powłoki ani logów publicznych. Jeśli rejestracja się nie powiedzie, sprawdź kod, status subskrypcji, ścieżkę dostępu do produktu, dostęp do sieci oraz czy komputer jest już zarejestrowany w oczekiwanej organizacji Centrum Obsługi Klienta SUSE.
3. Zainstaluj wymagany wzór
Zainstaluj wzorzec oprogramowania Live Patching i zależności:
sudo zypper install -t pattern lp_sles
Przed potwierdzeniem zapoznaj się z proponowanymi przez Zyppera zmianami. Wzorzec instaluje podstawowe komponenty KLP i początkową poprawkę roboczą. Gdy menedżer pakietów znajdzie poprawkę roboczą dla działającego jądra w aktywnym repozytorium, działające jądro może zostać załatane podczas instalacji pakietu. Dostępność poprawki zależy od dokładnej wersji jądra i zawartości repozytorium.
Zastosuj aktualizacje i sprawdź wynik
Po aktywacji zainstaluj pakiety poprawek Live Patch w ramach standardowego procesu aktualizacji SLES. Najpierw odśwież metadane repozytorium i przejrzyj dostępne poprawki. Następnie zastosuj aktualizacje zgodnie ze standardowymi procedurami kontroli zmian obowiązującymi w Twojej organizacji, na przykład:
sudo zypper refresh
sudo zypper patch
Przeczytaj uważnie proponowaną transakcję. Pakiety poprawek Live dla działającego jądra można zainstalować bez ponownego uruchamiania, ale regularna aktualizacja pakietów jądra może nadal monitować o ponowne uruchomienie. Nie pomijaj tego monitu ani nie blokuj aktualizacji jądra jako trwałego obejścia. Jeśli zainstalowane jest nowsze jądro bazowe, zaplanuj kontrolowany restart, aby je uruchomić i zakończyć cykl konserwacji jądra.
Zweryfikuj poprawkę na żywo niezależnie od ciągu wydania jądra:
uname -r
sudo klp status
sudo klp -v patches
zypper se --details 'kernel-livepatch-*'
Użyj tego klp statusdo określenia stanu operacyjnego i klp -v patchesszczegółów poprawki, w tym poprawek wprowadzonych przez aktywną poprawkę. Uwaga SUSE, która uname -rnie zmienia się w przypadku jądra z poprawioną wersją. Sama obecność zainstalowanego pakietu nie jest wystarczającym dowodem na to, że oczekiwana poprawka jest załadowana; sprawdź dane wyjściowe statusu KLP.
Limity operacyjne i decyzje o ponownym uruchomieniu
- Zakres ochrony jest selektywny. Deklarowany zakres SUSE obejmuje luki w zabezpieczeniach SUSE CVSS poziomu 7 i wyższych oraz poprawki stabilności i uszkodzeń danych, ale ograniczenia techniczne oznaczają, że nie każdy kwalifikujący się problem zostanie objęty aktualizacją na żywo.
- Poprawki są specyficzne dla jądra i kumulują się. Pakiet poprawek na żywo dotyczy konkretnej wersji jądra. Najnowszy pakiet dla jednego jądra nie powoduje automatycznego zainstalowania poprawki dla innej wersji jądra.
- Aktualizacje jądra bazowego nadal mają znaczenie. Poprawki na żywo stanowią tymczasową ochronę wybranych poprawek. Regularne aktualizacje jądra mogą wymagać ponownego uruchomienia i wprowadzać inne zmiany.
- Wsparcie ma okres ważności. W podręczniku SLES 15 SP7 podano, że poprawki live są aktualizowane przez 13 miesięcy od wydania pakietu jądra. Sprawdź aktualne daty z danymi dotyczącymi cyklu życia oraz aktualną tabelą poprawek live i utrzymywanego jądra SUSE .
- Nie wszystkie architektury i produkty korzystają z tych samych poleceń. Przewodnik SLES 15 SP7 KLP identyfikuje procesory AMD64/Intel 64, POWER i IBM Z. Przed wdrożeniem sprawdź, czy posiadasz przewodnik dotyczący konkretnego produktu i czy posiadasz subskrypcję.
Lista kontrolna rozwiązywania problemów
| Objaw | Czeki |
| Brak rozszerzenia na liście | Potwierdź rejestrację produktu, uprawnienia, dodatek Service Pack, architekturę, dostęp do repozytorium i dokładną dostępność rozszerzeń w Centrum obsługi klienta SUSE. |
| Nie pojawił się żaden pakiet poprawek na żywo | Porównaj uname -rz nazwami pakietów i zawartością repozytorium. Poprawka musi istnieć dla konkretnego działającego jądra i być dostępna za pośrednictwem włączonych kanałów. |
| Pakiet został zainstalowany, ale jego status jest nieoczekiwany | Przejrzyj sudo klp statusi sudo klp -v patchesrozróżnij zainstalowane pakiety od poprawki aktualnie załadowanej do działającego jądra. |
| Zypper prosi o ponowne uruchomienie | Sprawdź, czy transakcja kernel-defaultlub inne komponenty wrażliwe na ponowne uruchomienie zostały zaktualizowane. Postępuj zgodnie ze standardową procedurą zatwierdzania i konserwacji ponownego uruchomienia. |
| Brak dat cyklu życia | Upewnij się, że dane cyklu życia dla programu SLE Live Patching są zainstalowane, a następnie uruchom ponownie sudo zypper lifecycle. |
Jeśli nowo zainstalowana poprawka live wydaje się powodować problem, wstrzymaj dalsze wdrażanie i sprawdź logi jądra oraz stan usługi. SUSE dokumentuje ręczną ścieżkę obniżenia wersji dla odpowiednich systemów, ale ostrzega, że hosty, na których już wyświetlają się ostrzeżenia jądra lub ślady błędów, mogą nie być odpowiednimi kandydatami. Użyj odpowiedniej wersji pakietu poprawek i skontaktuj się z pomocą techniczną SUSE, gdy stan systemu jest niepewny; unikaj improwizowanej zmiany wersji jądra produkcyjnego.
Lista kontrolna wdrożenia
- Sprawdź poprawność pakietu Service Pack, architektury, subskrypcji i kanałów repozytoriów SLES.
- Rejestruje działające jądro i bazowy stan zdrowia hosta.
- Zarejestruj rozszerzenie SLE Live Patching i zainstaluj
lp_sles.
- Wdrażaj aktualizacje w ramach normalnego przepływu pracy nad pakietami i przeglądaj każdą transakcję.
- Potwierdź załadowanie poprawki za pomocą
klp statusi klp -v patches.
- Śledź daty cyklu życia poprawek i planuj regularne ponowne uruchomienia jądra podstawowego.
Aby administrować flotą, skorzystaj ze sprawdzonego w swojej organizacji przepływu pracy w systemie SUSE i sprawdź, czy kanały udostępniają odpowiednie pakiety poprawek. Oficjalna dokumentacja konfiguracji kanału SUSE Multi-Linux Manager opisuje przygotowanie kanału do pracy z systemem SLES 15 SP7.