De 3-2-1-backupregel: waarom je self-hosted Immich hem nodig heeft

De 3-2-1-backupregel: waarom je self-hosted Immich hem nodig heeft

Elke week plaatst iemand op r/immich een variant van hetzelfde bericht. De schijf is dood, de RAID wilde niet herbouwen of een containerupdate ging mis, en nu is de bibliotheek weg. De meeste van deze mensen hadden iets wat ze als backup beschouwden. Het bleek een tweede kopie te zijn die vlak naast de eerste stond.

Als je Immich zelf host, ben jij de backupafdeling. Niemand anders gaat het voor je doen. Het goede nieuws is dat de regel om het goed te doen al tientallen jaren bestaat, en dat hij op één regel past.

Wat de 3-2-1-regel is

De 3-2-1-regel zegt:

  • 3 kopieën van je data. Het origineel plus twee backups.
  • 2 verschillende soorten opslag. Bijvoorbeeld de schijven in je server en een externe schijf, of je server en een cloudopslagbucket.
  • 1 kopie off-site. Fysiek ergens anders. Niet in dezelfde kamer, niet in hetzelfde huis.

Dat is de hele regel. Hij vertelt je niet welke tool je moet gebruiken. Hij vertelt je wat je setup moet overleven.

Elk getal dekt een ander soort storing. Drie kopieën beschermen je ertegen dat één backup kapot is, en dat gebeurt vaker dan mensen toegeven. Twee soorten opslag beschermen je ertegen dat één type hardware of software op dezelfde manier faalt, zoals een partij schijven uit dezelfde productierun die allemaal rond dezelfde leeftijd overlijden. De off-site kopie beschermt je tegen gebeurtenissen die alles op één locatie uitschakelen: brand, overstroming, diefstal, of een stroompiek die elk apparaat op dezelfde groep opblaast.

Waarom het zo belangrijk is voor Immich

Immich is goed gebouwde software. Het is ook een stapel bewegende onderdelen: een PostgreSQL-database, een uploadmap vol originelen, gegenereerde thumbnails en getranscodeerde video’s, en een set containers die je regelmatig updatet. De backupdocumentatie van Immich zelf raadt de 3-2-1-regel precies om deze reden aan.

Een paar dingen zijn specifiek voor Immich en goed om te weten.

De database en de bestanden horen bij elkaar. Je foto’s staan als bestanden in de uploadlocatie. Albums, gezichten, personen, gedeelde links en beschrijvingen staan in de database. Maak je alleen een backup van de bestanden, dan krijg je je foto’s terug, zonder al het werk dat je in het ordenen hebt gestoken. Maak je alleen een backup van de database, dan heb je een zeer gedetailleerde index van niets. Immich maakt automatisch databasedumps, maar die komen in dezelfde uploadmap op dezelfde schijf terecht. Dat is een gemak, geen backup, totdat je ze ergens anders naartoe kopieert.

RAID is geen backup. RAID houdt je server draaiende als één schijf uitvalt. Het doet niets als je per ongeluk een album verwijdert, als ransomware het volume versleutelt, of als de controller op elke schijf tegelijk onzin schrijft. RAID spiegelt je fouten in realtime, en het spiegelt ze perfect.

Synchronisatie is ook geen backup. Als je “backup” een map is die je Immich-bibliotheek spiegelt, wordt een verwijdering op de server bij de volgende run een verwijdering in de backup. Je wilt backups met versies of snapshots, zodat je terug kunt naar hoe alles er vorige week uitzag.

Je telefoon is geen backup. Veel mensen zien de filmrol als de tweede kopie. Dan zetten ze “ruimte vrijmaken” aan in de app, en dan is hij dat niet meer.

Een ongeteste backup is een gok. De enige manier om te weten of een backup werkt, is ervan terugzetten. Kies af en toe een willekeurig album en probeer het terug te halen. Doe hetzelfde voor de database op een reservemachine. Het kost een middag, en het is de waardevolste middag die je dit jaar aan je homelab besteedt.

Een typische 3-2-1-setup voor Immich ziet er zo uit: de bibliotheek en database op je server (kopie één), een nachtelijke backup met versies naar een externe schijf of NAS thuis (kopie twee, andere opslag), en een versleutelde backup naar een opslagprovider of een schijf bij een vriend of familielid (kopie drie, off-site). Tools als restic, Borg of Kopia regelen versiebeheer, deduplicatie en versleuteling voor je. Kies er één en leer hoe het terugzetten werkt voordat je het nodig hebt.

Niets hiervan is moeilijk. Het is saai, en saai werk schiet er snel bij in. Dat is het echte risico van self-hosting. De meeste mensen weten hoe ze backups maken. Ze stoppen met controleren of die backups nog draaien.

Of laat PixelUnion het regelen

Besteed je je tijd liever aan je foto’s dan aan je backupscripts, dan is dit het deel dat wij voor je doen. Je bibliotheek staat op ons primaire opslagcluster in Falkenstein, Duitsland. We maken regelmatig backups naar een apart cluster in Finland, ver genoeg weg dat een probleem op de ene locatie de andere niet raakt. Beide clusters zijn versleuteld, en de encryptiesleutels staan op aparte infrastructuur. Geen van beide opslagproviders kan je bestanden lezen. Monitoring, updates en zorgen dat de backups blijven draaien zijn ons werk, niet het jouwe.

We zijn een klein team, en we gaan je niet beloven dat er nooit iets mis kan gaan. Wat we wel kunnen beloven, is dat we dit serieus nemen en er blijven aan werken. In ons helpcenterartikel Hoe we je data privé en veilig houden lees je precies hoe we je data opslaan, versleutelen en back-uppen.

Begin gratis met PixelUnion →

Omslagfoto door Curated Lifestyle op Unsplash+.