- Construction d’un stockage S3 maison avec un ordinateur portable Framework et un JBOD, permettant d’exploiter 10 To à bas coût, avec un fonctionnement stable pendant 4 mois sans administration
- Réutilisation comme serveur domestique d’un ordinateur portable Framework d’occasion sans écran, avec ZFS et garage S3 installés, utilisé comme grand espace de stockage pour le projet de suivi des SDK d’AppGoblin
- Après 4 mois sans aucune attention portée au serveur, une connexion a révélé que 10 To étaient utilisés et qu’un redémarrage en attente de mise à niveau patientait ; après redémarrage, tout a fonctionné normalement
- La mise à niveau de garage S3 de la v1 vers la v2 s’est également déroulée sans problème, confirmant une expérience d’exploitation stable
- Une configuration ZFS non standard reliant l’ordinateur portable et le JBOD en USB a posé des problèmes au départ, résolus en déplaçant les métadonnées à l’intérieur du portable
Contexte et motivation du projet
- Décision d’héberger son propre S3 il y a 5 mois
- Travail en cours sur le suivi des SDK des 100�0 principales applications Android et iOS d’AppGoblin
- Besoin d’un grand espace de stockage tout en réduisant les coûts
- Choix d’une approche self-hosted plutôt que d’un S3 cloud existant
Configuration matérielle
- Utilisation d’un ordinateur portable Framework
- Achat à bas prix d’un ordinateur portable Framework d’occasion sans écran
- Modèle ancien, donc bien adapté à un usage de home server
- Exploitation de la portabilité et de la faible consommation d’énergie du portable
- Ajout d’un JBOD (Just a Bunch of Disks)
- Baie de disques externe pour le stockage de grande capacité
- Connexion à l’ordinateur portable via USB
Stack logicielle
- Système de fichiers ZFS
- Fournit l’intégrité des données et des fonctionnalités de snapshots
- JBOD configuré comme pool ZFS
- garage S3
- Solution de stockage légère et distribuée compatible S3
- Projet open source développé par Deuxfleurs
- Fournit une compatibilité avec l’API S3
4 mois d’exploitation sans administration
- Aucune attention portée au serveur pendant 4 mois après l’installation
- Le S3 a continué à être utilisé pendant les voyages, le travail et un quotidien chargé
- Il n’était pas nécessaire de penser au serveur
- Constats après connexion
- 10 To d’espace de stockage étaient utilisés
- Le système attendait patiemment un redémarrage pour effectuer une mise à niveau
- Résultat du redémarrage
- Redémarrage lancé avec une certaine appréhension
- Tout a redémarré normalement, au grand soulagement de l’auteur
Mise à niveau de garage S3
- Passage de la v1 à la v2
- Découverte d’une mise à niveau majeure en attente
- Processus de mise à niveau effectué sans problème
- Évalué comme un bon week-end
Avertissements techniques et résolution
- Conscience d’une configuration ZFS non standard
- Relier un ordinateur portable et un JBOD via USB constitue un cas d’usage un peu non standard pour ZFS
- Des avertissements à ce sujet ont été reçus de la communauté Reddit
- Problème initial
- Des problèmes ZFS sont apparus lorsque garage effectuait de gros volumes de lecture et d’écriture
- Dans la configuration initiale, les métadonnées SQLite étaient également stockées sur le JBOD/ZFS
- Résolution du problème
- Déplacement des métadonnées vers le stockage interne de l’ordinateur portable
- Après cela, les problèmes ZFS ont été résolus et le système a fonctionné de manière stable
3 commentaires
Le simple fait de se lancer dans l’auto-hébergement est déjà impressionnant.
Même si la gamme de prix est très différente, on dirait que la carte mère de Framework est devenue le Raspberry Pi moderne.
Avis sur Hacker News
zfs send/recv. » Ce genre de flux correspond probablement mieux à mon usage. À l’origine, le RAID5 servait à se prémunir contre la panne d’un disque, mais reproduire la même configuration sur un autre site coûte encore assez cher (~$1,000 USD), donc je ne l’ai pas encore faitzfs send/recv. Cela permet de mélanger les types de disques avec souplesse (par exemple un SSD d’un côté et un HDD de l’autre), au prix d’un compromis sur les performances en lecture et le temps de disponibilité. On peut aussi utiliser un disque externe comme disque de sauvegarde et ne le brancher que tous les quelques jours. Pour les données importantes, j’ai un pool RAID en miroir séparé. Beaucoup d’articles sur ZFS se concentrent sur le RAID, mais j’ai l’impression qu’il manque des informations sur cette approche plus minimaliste côté matériellvm2au lieu de ZFS, et cela fonctionne bien sur RPi5. ZFS consomme trop de RAM pour être adapté à cet usage