Valideer de nieuwe Jellyfin-server eerst met gekopieerde status en wegwerpmedia; productiegegevens worden pas verplaatst nadat afspelen, herstel en terugdraaien zijn geslaagd.
Behandel de migratie als één gecontroleerd traject waarbij de oude server leidend blijft. Herstel een versiegebonden controlepunt op een geïsoleerd doel, boots de logische koppelingen en runtime-identiteit na en test vervolgens de clients, codecs, ondertitels, externe route, scanners en het herstartgedrag die er daadwerkelijk toe doen. Een dashboard dat opent, is slechts de eerste controle; de zwakste mislukte afhankelijkheid bepaalt het resultaat.
Bevries de productiebaseline en het terugdraaipunt
Leg de Jellyfin-versie van de bron vast, evenals de installatiemethode, runtime-UID/GID of serviceaccount, locaties van configuratie en cache, logische mediapaden, toewijzingen van hardwareapparaten, het adres van de reverse proxy, certificaten, gebruikers, aantallen bibliotheken, geplande taken, plug-ins en één bekend goed werkend afspeelvoorbeeld voor elk kritiek pad.
Definieer wat als mislukking geldt voordat je het doel aanraakt: een fout bij databasemigratie, een ontbrekende bibliotheek, onjuiste eigenaarschap, een defecte aanmelding, ontbrekende hardwareversnelling, een kritieke client die niet werkt of terugdraaien dat langer duurt dan het storingsbudget. Zo verandert migratie van een vage betrouwbaarheidscontrole in waarneembare controlepunten.
Maak een samenhangend controlepunt en laat de bron na de testbaseline ongewijzigd. Een recent rapport over een mislukte migratie laat zien waarom het koppelen van applicatieversies in de baseline thuishoort: herstel kan mislukken bij de grens van de databasemigratie, zelfs wanneer de bestanden aanwezig zijn.
Bouw een stagingtraject waarin alleen wordt gekopieerd
Installeer het doel met dezelfde Jellyfin-versie als het controlepunt en herstel vervolgens naar geïsoleerde opslag. Kopieer representatieve media of koppel een kleine testsubset alleen-lezen. Hernoem, verwijder of reorganiseer geen productiebestanden om de kandidaat werkend te krijgen; elke destructieve wijziging verwijdert bewijs voor terugdraaien.
Geef het doel een tijdelijke hostnaam, een tijdelijk adres en een tijdelijk client-eindpunt. Voorkom dat geplande taken, webhooks, downloaders of automatisering beide instanties als actief behandelen. Twee servers mogen hetzelfde onveranderlijke voorbeeld lezen, maar ze mogen niet dezelfde database, cache, metagegevensstructuur of invoerlocatie beschrijven.
Als ook het platform verandert, bootst dan één grens tegelijk na: containerpad, service-identiteit, opslagprotocol, netwerkroute en vervolgens toegang tot de accelerator. De herstelbare containerimplementatie biedt een uitgebreider traject voor het declareren van koppelingen en persistente status.
Controleer identiteits-, pad- en versiepoorten
Start de kandidaat en inspecteer de logboeken voordat je het dashboard opent. Controleer of de herstelde serveridentiteit is geladen in plaats van de eerste configuratie te starten, of elk verwacht mediapad is gekoppeld en of de runtime media kan lezen en alleen de bedoelde status- en cachepaden kan beschrijven.
Herstart het volledige doel, niet alleen de applicatie. Controleer na een koude start de volgorde van afhankelijkheden, opslagkoppelingen, DNS, proxyrouting, certificaten, geplande taken, plug-ins en toegang tot GPU-apparaten. Een geslaagde interactieve start kan een fout in de opstartvolgorde of rechten verbergen.
Stop bij elke waarschuwing over databasemigratie, lege bibliotheek door een ontbrekende koppeling, afwijkende eigenaar, herschreven pad of terugval naar softwaretranscodering terwijl versnelling was bedoeld. Gebruik de identiteits- en statuschecklist om de herstelde instantie met de bekende goede bron te vergelijken.
Voer een representatieve werklastmatrix uit
Test resultaten, niet menu's. Gebruik hetzelfde bestand, dezelfde client, hetzelfde ondertitelspoor, dezelfde uitvoerresolutie en hetzelfde netwerkpad als in de baseline. Lees tijdens elke test het Jellyfin-dashboard en de transcodeerlogboeken en noteer starttijd, buffering, overgeslagen frames, CPU/GPU-gebruik en of de modus Direct Play, remux of transcodering was.
| Pad | Representatieve test | Geslaagd wanneer |
|---|---|---|
| Lokaal direct | Bekende compatibele client en bestand | Direct Play, stabiel zoeken en geen nieuwe fouten |
| Ondertiteling | Veelgebruikt tekstspoor en het lastigste afbeeldings-/opgemaakte spoor | Correcte weergave en realtime afspelen |
| HDR/transcodering | Slechtst benodigde conversie | Verwachte accelerator en snelheid boven realtime |
| Gelijktijdigheid | Realistische gelijktijdige sessies | Geen verzadiging of uithongering |
| Bibliotheek | Incrementele scan en lezen van metagegevens | Geen dubbele paden of verloren aangepaste gegevens |
| Extern | Externe client via de normale route | Authenticatie, certificaat, bitrate en afspelen slagen |
Een eenvoudig bestand dat slaagt, kan de moeilijkste vereiste rij niet vervangen. Als één kritieke client of ondertitelroute faalt, herstel dan die afhankelijkheid en voer de matrix opnieuw uit, of verwijder deze expliciet uit de productievereisten voordat je overschakelt.
Bewijs herstel en schakel daarna één keer over
Maak een nieuw controlepunt van het doel, vernietig alleen de wegwerpstatus van het doel en herstel deze schoon. Herhaal controles voor aanmelding, bibliotheek, afspelen, herstart en geplande taken. De onafhankelijke herstelgids vóór een upgrade benadrukt de praktische grens: een back-up verdient vertrouwen door een herstel en herstart te doorstaan.
Plan één omschakelvenster. Pauzeer wijzigingen aan de bron, maak het laatste statuscontrolepunt, synchroniseer de geplande mediaverschillen, herstel of werk het doel bij en wijzig vervolgens het ene eindpunt voor clients. Voer de blokkerende rijen opnieuw uit voordat normale schrijfbewerkingen of bibliotheekonderhoud worden toegestaan.
Houd de oude server tijdens de observatieperiode uitgeschakeld of geïsoleerd, maar intact. Draai terug door het oorspronkelijke eindpunt te herstellen, niet door onzekere status van het doel terug te kopiëren. Neem de bron pas buiten gebruik nadat de nieuwe server normale belasting, een geplande herstart, een back-upcyclus en het afgesproken herstelvenster heeft doorstaan.
NAS- en serverconfiguratie
Meer om te lezen

Zo scheid je appgegevens, cache en back-ups van Home Assistant
Zorg dat de gezaghebbende app-status persistent blijft, controleer voordat je de cache verplaatst of deze vervangbaar is, en bewaar geteste back-ups buiten het storingsdomein...

Een Home Assistant-configuratie aanpassen voor externe en lokale gebruikers
Houd de lokale Home Assistant-bediening onafhankelijk van de externe edge en voeg vervolgens veilige externe toegang toe met voorspelbaar DNS-, identiteits- en netwerkomschakelgedrag.

Hoe je Home Assistant van één container naar een veerkrachtige service-stack verplaatst
Behoud eerst de werkende staat en scheid daarna gegevens, afhankelijkheden, gezondheid, bronnen en herstel, zodat een storing in één service Home Assistant niet platlegt.

