Van Pi-hole naar een familieserver: het ZimaOS-verhaal van u/2Hard4Him

Eva Wong is de technisch schrijver en vaste knutselaar bij ZimaSpace. Als levenslange geek met een passie voor homelabs en open-sourcesoftwareis ze gespecialiseerd in het vertalen van complexe technische concepten naar toegankelijke, praktische handleidingen. Eva vindt dat self-hosting leuk moet zijn en niet intimiderend. Met haar tutorials helpt ze de community om hardware-installaties te doorgronden, van het bouwen van hun eerste NAS tot het beheersen van Docker-containers.

Omslagafbeelding: Immich-project — officiële schermafbeelding van de applicatie.

Een thuisserver verandert van karakter zodra andere mensen erop gaan vertrouwen. Een hobbyproject bevat nu iets dat een gezinslid wil terugvinden, een spel dat iemand verwacht te kunnen spelen of een verzameling die ook belangrijk is als de oorspronkelijke telefoon is vervangen. Die overgang is een goede reden om opnieuw te kijken naar de manier waarop het systeem is georganiseerd.

In de reactie van u/2Hard4Him op Self-Hosting Day groeit een plan om Pi-hole uit te proberen uit tot een oudere Dell OptiPlex waarop ZimaOS draait. De bijdrage beschrijft twee IronWolf-schijven van 4 TB in RAID 1, een Minecraft-server die via Crafty wordt beheerd, uploads van familiefoto’s met Immich en externe toegang. De onafgemaakte taak van de auteur is een back-up op een andere locatie: de gespiegelde schijven vangen een defecte schijf op, maar voor per ongeluk verwijderde bestanden is een ander herstelplan nodig.

“RAID 1 is geen back-up”

u/2Hard4Him

De belangrijkste stap vooruit is verantwoordelijkheid nemen voor een service

Vanuit het perspectief van ZimaSpace is de interessante stap de overgang van experiment naar gedeelde verantwoordelijkheid. Een succesvolle installatie is pas het begin. Een gezinsservice heeft ook een begrijpelijk adres, passende accounts, een onderhoudsroutine en een manier nodig om belangrijke gegevens te herstellen. Die details bepalen of iemand anders het systeem kan gebruiken zonder dat de eigenaar elke klik hoeft uit te leggen.

Begin met één taak in huis en beschrijf hoe succes eruitziet voor degene die de service gebruikt. Een foto moet vindbaar zijn en correct openen. Een gedeelde map moet de juiste persoon de juiste toegangsrechten geven. Een spelsessie moet de afgesproken voortgang bewaren. Noteer deze resultaten voordat je de lijst met apps uitbreidt. Zo kun je een nuttige toevoeging onderscheiden van een extra service die onderhoudswerk oplevert zonder het dagelijks leven te verbeteren.

Orden op serviceverantwoordelijkheid voordat je meer apps toevoegt

Houd de applicatie, de configuratie ervan en de bewaarde gegevens zichtbaar als afzonderlijke onderdelen van de installatie. Een installatie kan gemakkelijk opnieuw worden uitgevoerd, terwijl het lastig kan zijn om de database of opgeslagen status te herstellen. Noteer waar elk belangrijk onderdeel zich bevindt en welk account ervoor verantwoordelijk is. Bepaal voor een gedeelde computer in huis ook wie de service mag beheren en wie deze alleen hoeft te gebruiken.

Dit project is goed beheersbaar, ook zonder uitgebreid dashboard. Met een korte inventarisatie kunt u vastleggen om welke service het gaat, waarvoor deze dient, waar de gegevens staan en wat er na een herstart moet worden gecontroleerd. Werk deze inventarisatie bij wanneer u een map verplaatst of een account wijzigt. Onze casestudy over de architectuur van een homelab biedt een uitgebreider voorbeeld van het scheiden van applicatierollen; dezelfde aanpak is ook nuttig op één computer die voor meerdere doeleinden wordt gebruikt.

Een dienst voor het huishouden is meer dan een app-pictogram

Verantwoordelijkheid Wat u moet vastleggen Wat u moet demonstreren
Toegang Het gebruikelijke toegangspunt en de juiste gebruikersaccounts Een gezinslid kan de bedoelde service bereiken.
Gegevens Locaties van originele bestanden, toepassingsstatus en configuratie De service kan de gezaghebbende gegevens identificeren.
Onderhoud Geplande downtime en de update- en herstelprocedure De gebruikelijke workflow voor clients werkt na een wijziging nog steeds.
Herstel Onafhankelijke kopieën en versievereisten Een voorbeeld kan worden hersteld zonder de actieve verzameling te wijzigen.

Stem fotoherstel af op de volledige toepassing

Bij een fotoservice moet een herstelactie een bruikbare verzameling opleveren. In de back-updocumentatie van Immich staat dat een volledige back-up zowel de database als de bestanden met afbeeldingen bevat. Een database-export bevat niet de foto's en video's. Neem de eigen herstelvereisten van de toepassing op in het back-upplan voor het huishouden, in plaats van ervan uit te gaan dat één gekopieerde map alles bevat.

Voer een kleine hersteltest uit in een geïsoleerde testomgeving en volg de documentatie die past bij de versie die wordt hersteld. Controleer of representatieve originelen openen en of de herstelde toepassing ze kan vinden. Leg de testomstandigheden en het resultaat vast. Dit is een nuttigere acceptatietest dan back-upbestanden tellen, omdat hiermee wordt getest wat het huishouden daadwerkelijk wil behouden. Laat de actieve bibliotheek ongemoeid terwijl u deze herstelprocedure ontwikkelt.

Officiële interface voor het herstellen van de Immich-database
De herstelinterface in de officiële documentatie van Immich. Gebruik een aparte testomgeving bij het ontwikkelen van een herstelprocedure. Afbeelding: Immich-project.

Plan een onderhoudsmoment voor een gedeelde server

Een huishoudelijke service verdient voorspelbare wijzigingen. Bepaal vóór een update wat mogelijk wordt onderbroken, bewaar de relevante configuratie en controleer of de herstelkopie beschikbaar is. Laat de gebruikers van de service weten wanneer het werk gepland staat. Test achteraf via een gewoon gebruikersaccount, niet alleen via het dashboard van de beheerder. Soms kan de beheerder de service bereiken via een route die andere gebruikers niet hebben.

Noteer bij belangrijke updates de nieuwe applicatieversie en eventuele datamigratie. Terugkeren naar een oudere containerimage is mogelijk onvoldoende als de opgeslagen gegevens van formaat zijn veranderd. Zorg voor een compatibele herstelroute voor de applicatie als geheel en raadpleeg de release-informatie. Zo wordt onderhoud een bewuste wijziging aan een gedeeld systeem, in plaats van een reeks herstarts waarvan de gevolgen pas later aan het licht komen.

Wanneer ZimaCube 2 een logische volgende stap wordt

Als de verzameling van een huishouden groter begint te worden dan de geïmproviseerde opslagopstelling aankan, is een persoonlijke cloud-NAS ZimaCube 2 een optie voor een beter doordachte lokale datahub. Dit is het planningsperspectief van ZimaSpace, los van de hardware die de bijdrager rapporteert. De relevante vraag is of het huishouden nu behoefte heeft aan een duidelijkere opslagindeling, meer schijfcapaciteit of een vaste plek voor gedeelde applicaties en bewaarde bestanden.

Gebruik het platform om verantwoordelijkheden vast te leggen: een inkomende opslaglocatie, de gezaghebbende verzameling, applicatiegegevens en een onafhankelijke herstelbestemming. Plan de schijfconfiguratie en eventuele SSD-werklaag op basis van gemeten groei en actieve services. Extra capaciteit moet een bestaand herstelbeleid ondersteunen, niet uitstellen. Bewaar een tweede herstelbare kopie buiten het hoofdapparaat en test of iemand anders de herstelde verzameling kan begrijpen.

Officiële ZimaCube 2-illustratie over gezinsgegevens, met een NAS en media uit het huishouden
De illustratie van ZimaSpace over gezinsgegevens op de ZimaCube 2 toont het optionele opslagplatform dat hier wordt besproken. Afbeelding: ZimaSpace.

Houd de ervaring voor het gezin eenvoudig terwijl het systeem groeit

Kies namen en toegangspunten die aansluiten bij wat mensen willen doen. Wie een fotobibliotheek opent, hoeft de containernaam of opslagtopologie niet te kennen. Behoud die gebruiksvriendelijke ervaring en houd de service-inventaris voor beheerders gedetailleerder. Een eenvoudige ingang en een gedocumenteerde backend kunnen naast elkaar bestaan; ze zijn allebei nuttig voor verschillende mensen.

Voordat je de hele collectie verplaatst of een andere toepassing toevoegt, doorloop je één kleine overdracht van bron naar gedeelde toegang en herstel. Controleer de accountmachtigingen, zoek een origineel bestand en herstel een voorbeeldbestand. Onze introductie van ZimaOS Photos laat een andere aanpak zien voor een lokale fotobibliotheek. Kies de toepassing die bij het huishouden past en houd de vereisten voor opslag en herstel duidelijk.

De belangrijkste les van Self-Hosting Day

De volgende mijlpaal voor een familieserver is vertrouwen: mensen kunnen hem gebruiken, de eigenaar kan hem onderhouden en voor belangrijke gegevens is er een herstelmogelijkheid. Dat is een waardevol resultaat voor een project dat begon met één nuttig idee.

Ontdek verder

Oorspronkelijk verhaal en projectverwijzingen

Gebaseerd op de openbare bijdrage aan Self-Hosting Day waarnaar hierboven wordt gelinkt. De interpretatie van de architectuur en de opmerkingen over hardwareplanning zijn van ZimaSpace. Screenshots en productillustraties zijn toegeschreven aan de oorspronkelijke projecten of fabrikanten.

Zima-campagnehub

Meer om te lezen

Get More Builds Like This

Stay in the Loop

Get updates from Zima - new products, exclusive deals, and real builds from the community.

Stay in the Loop preferences

We respect your inbox. Unsubscribe anytime.