Najpierw sprawdź nowy serwer Jellyfin z kopią stanu i tymczasowymi multimediami; dane produkcyjne przenieś dopiero po pomyślnym zakończeniu testów odtwarzania, odtwarzania po awarii i wycofywania zmian.
Potraktuj migrację jako jeden kontrolowany proces, w którym stary serwer pozostaje nadrzędny. Przywróć wersjonowany punkt kontrolny na odizolowanym systemie docelowym, odtwórz jego logiczne montowania i tożsamość środowiska uruchomieniowego, a następnie przetestuj klientów, kodeki, napisy, zdalną trasę, skanery i zachowanie po ponownym uruchomieniu, które faktycznie mają znaczenie. Otwarcie panelu to dopiero pierwszy etap; o wyniku decyduje najsłabsza niespełniona zależność.
Zamroź produkcyjny stan bazowy i zachowaj możliwość wycofania zmian
Zapisz wersję źródłowego serwera Jellyfin, metodę instalacji, identyfikator UID/GID środowiska uruchomieniowego lub konto usługi, lokalizacje konfiguracji i pamięci podręcznej, logiczne ścieżki multimediów, mapowania urządzeń sprzętowych, adres odwrotnego serwera proxy, certyfikaty, użytkowników, liczbę elementów w bibliotekach, zaplanowane zadania, wtyczki oraz jeden przykład poprawnego odtwarzania dla każdej krytycznej ścieżki.
Określ kryteria niepowodzenia przed rozpoczęciem prac na systemie docelowym: błąd migracji bazy danych, brak biblioteki, nieprawidłowy właściciel, niedziałające logowanie, brak akceleracji sprzętowej, awaria krytycznego klienta lub wycofywanie zmian trwające dłużej niż dopuszczalny czas przerwy w działaniu. Dzięki temu migracja przestaje być niejasnym testem zaufania, a staje się zestawem mierzalnych kryteriów.
Utwórz spójny punkt kontrolny i nie zmieniaj źródła po ustaleniu bazowego stanu testowego. Niedawny raport o niepowodzeniu migracji pokazuje, dlaczego zgodność wersji aplikacji należy uwzględnić w stanie bazowym: przywracanie może nie powieść się na etapie migracji bazy danych, nawet jeśli pliki są dostępne.Utwórz ścieżkę etapowania wyłącznie do kopiowania
Zainstaluj system docelowy z tą samą wersją Jellyfin co punkt kontrolny, a następnie przywróć dane w odizolowanej pamięci masowej. Skopiuj reprezentatywne multimedia lub zamontuj mały podzbiór testowy tylko do odczytu. Nie zmieniaj nazw, nie usuwaj ani nie porządkuj plików produkcyjnych, aby uruchomić kandydata; każda destrukcyjna zmiana niszczy dowody potrzebne do wycofania zmian.
Nadaj systemowi docelowemu tymczasową nazwę hosta, adres i punkt końcowy klienta. Zablokuj zaplanowane zadania, webhooki, programy pobierające i automatyzacje, aby nie traktowały obu instancji jako aktywnych. Dwa serwery mogą odczytywać tę samą niezmienną próbkę, ale nie mogą zapisywać danych do tej samej bazy danych, pamięci podręcznej, drzewa metadanych ani lokalizacji pobierania.
Jeśli zmienia się sama platforma, odtwarzaj po jednej granicy naraz: ścieżki kontenera, tożsamość usługi, protokół pamięci masowej, trasę sieciową, a następnie dostęp do akceleratora. Możliwe do odtworzenia wdrożenie kontenera dokładniej opisuje deklarowanie montowań i trwałego stanu.Jasno określone kryteria dotyczące tożsamości, ścieżek i wersji
Uruchom kandydata i sprawdź logi przed otwarciem panelu. Potwierdź, że wczytał przywróconą tożsamość serwera, zamiast uruchomić konfigurację pierwszego uruchomienia, że wszystkie oczekiwane ścieżki multimediów są zamontowane oraz że środowisko uruchomieniowe może odczytywać multimedia i zapisywać dane wyłącznie w przeznaczonych do tego ścieżkach stanu i pamięci podręcznej.
Uruchom ponownie cały serwer docelowy, a nie tylko aplikację. Po zimnym uruchomieniu sprawdź kolejność uruchamiania zależności, podmontowane zasoby, DNS, trasowanie przez proxy, certyfikaty, zaplanowane zadania, wtyczki i dostęp do urządzenia GPU. Pomyślne uruchomienie interaktywne może ukrywać problem z kolejnością startu lub uprawnieniami.
Przerwij w razie ostrzeżenia o migracji bazy danych, pustej biblioteki spowodowanej brakiem podmontowanego zasobu, niezgodności właściciela, zmiany ścieżki lub przejścia na transkodowanie programowe, mimo że miało być przyspieszane sprzętowo. Skorzystaj z listy kontrolnej tożsamości i stanu, aby porównać odtworzoną instancję ze znanym, prawidłowo działającym źródłem.
Uruchom macierz reprezentatywnych obciążeń
Wyniki testów, nie menu. Użyj tego samego pliku, klienta, ścieżki napisów, rozdzielczości wyjściowej i trasy sieciowej co w teście bazowym. Podczas każdego testu sprawdzaj panel Jellyfin i dzienniki transkodowania, a także zapisuj godzinę rozpoczęcia, buforowanie, pominięte klatki, użycie CPU/GPU oraz to, czy trybem było odtwarzanie bezpośrednie, remuksowanie czy transkodowanie.
| Ścieżka | Reprezentatywny test | Warunek zaliczenia |
|---|---|---|
| Lokalnie, bezpośrednio | Znany, zgodny klient i plik | Odtwarzanie bezpośrednie, stabilne przewijanie, brak nowych błędów |
| Napisy | Typowy tekstowy strumień napisów oraz najtrudniejszy strumień graficzny lub stylizowany | Prawidłowe renderowanie i odtwarzanie w czasie rzeczywistym |
| HDR/konwersja | Najtrudniejsza wymagana konwersja | Oczekiwany akcelerator, szybkość powyżej czasu rzeczywistego |
| Współbieżność | Realistyczna liczba jednoczesnych sesji | Brak przeciążenia i niedostatecznego obciążenia |
| Biblioteka | Skanowanie przyrostowe i odczyt metadanych | Brak powielonych ścieżek i utraty niestandardowych danych |
| Zdalny | Klient zewnętrzny przez zwykłą trasę | Uwierzytelnianie, certyfikat, przepływność i odtwarzanie działają |
Pomyślny test łatwego przypadku nie zastąpi najtrudniejszego wymaganego testu. Jeśli zawiedzie choć jedna krytyczna ścieżka klienta lub napisów, napraw tę zależność i ponownie uruchom macierz testów albo wyraźnie usuń ją z wymagań produkcyjnych przed przełączeniem.
Najpierw sprawdź odzyskiwanie, a potem przełącz raz
Utwórz świeży punkt kontrolny serwera docelowego, usuń tylko jego stan tymczasowy i odtwórz go od podstaw. Powtórz testy logowania, biblioteki, odtwarzania, restartu i zaplanowanych zadań. Niezależny przewodnik po odtwarzaniu przed aktualizacją przypomina o praktycznej zasadzie: kopia zapasowa zasługuje na zaufanie, gdy przetrwa odtworzenie i restart.Zaplanуj jedno okno przełączenia. Wstrzymaj zmiany po stronie źródła, utwórz końcowy punkt kontrolny stanu, zsynchronizuj zaplanowane zmiany w plikach multimedialnych, odtwórz lub zaktualizuj serwer docelowy, a następnie zmień jedyny punkt końcowy widoczny dla klientów. Ponownie wykonaj testy wierszy blokujących, zanim zezwolisz na zwykły zapis lub konserwację biblioteki.
Pozostaw stary serwer wyłączony lub odizolowany, ale nienaruszony, na czas obserwacji. W razie potrzeby przywróć poprzedni punkt końcowy zamiast kopiować niepewny stan celu z powrotem. Wycofaj serwer źródłowy z użytku dopiero po tym, jak nowy serwer przejdzie test przy normalnym obciążeniu, zaplanowanym restarcie, cyklu tworzenia kopii zapasowej i uzgodnionym okresie odzyskiwania.
Konfiguracja NAS-a i serwera
Więcej do przeczytania

Czy serwer w akademiku może działać na tyle cicho, by nie przeszkadzać podczas snu, nauki i rozmów wideo?
Tak — serwer w akademiku może działać dyskretnie, jeśli sprzęt zużywa mało energii, drgania dysków są kontrolowane, wymagające zadania zaplanowane, a hałas sprawdzony w...

Studenckie domowe laboratorium, które można przenieść z akademika do pierwszego mieszkania
Zapewnij mobilność studenckiego homelabu, oddzielając usługi od sieci przypisanej do konkretnego pokoju, ograniczając liczbę urządzeń, tworząc kopie zapasowe stanu i ćwicząc sprawne przenoszenie.

Jak udostępnić jeden domowy serwer współlokatorom bez współdzielenia kont ani prywatnych plików
Przydziel każdemu współlokatorowi indywidualną tożsamość i prywatną przestrzeń dyskową oraz tylko te role współdzielone, których potrzebuje; oddziel administrację, kopie zapasowe i proces odejścia użytkownika.



