Quelques réflexions autour de l’externalisation des sauvegardes
Sebsauvage a publié sur son wiki sa recherche d’un petit cloud perso pour y stocker des données personnelles (2 To).
Une majorité d’entre nous fait ses sauvegardes sur un disque dur interne/externe ou sur un NAS. Données et sauvegardes sont situées au même endroit physique, il peut arriver un événement rare (mais pas impossible) comme un incendie ou un cambriolage => gros fail. On en conclue qu’on a besoin d’externaliser nos sauvegardes.
Identifier et formaliser
Il faut vraiment prendre le temps d’identifier et formaliser. Prenons le cas de Sebsauvage.
Public visé : Informaticien
Ressources et moyens : Connaissances en informatique et Lignux, usage de BorgBackup, prêt à payer pour son besoin
Contexte : Personnel pas professionnel (environnement), pas urgent (délai), assez important (priorité), actuellement chez hubiC (analyse de l’existant)
Besoin : Avoir un système de sauvegarde efficace (et pas simplement « faire des sauvegardes ») pour 2 To de données
Corollaires : Identifier les outils pour effectuer des sauvegardes, restaurer les données, tester la restauration des sauvegardes, externaliser les sauvegardes
Contraintes : Coût limité (typiquement pas plus de 10 euros par mois), accès par protocole ouvert (ssh/sftp/ftp/webdav/rsync…)
Tolérance : Se moque des performances et de la disponibilité
Idéal : Le moins coûteux possible (argent et temps), principe KISS
Inconnus : Pas d’information sur la volumétrie de données à envoyer ni sur le planning (récurrence/fréquence) des sauvegardes ni sur leurs utilisations
Ce que je viens d’écrire est relativement simple mais on a grandement précisé les choses via 4 axes :
- Situation de base : Public visé, ressources et moyens, contexte
- Besoin : Besoin et corollaires, ce dernier étant souvent oublié
- Attentes : Contraintes, tolérance (marge de manœuvre), idéal
- Inconnus : Il est très rare d’avoir toutes les informations en main, souvent même les principaux intéressés ne savent pas
On fournit une solution par rapport à un public, des ressources et des moyens à disposition, un contexte et un besoin. Sauvegarder 50 Go ou 2 To, ce n’est pas le même besoin donc le même problème à résoudre. De même un débutant n’aura pas les mêmes connaissances en informatique qu’un informaticien, une entreprise n’aura pas les mêmes moyens qu’un particulier. Il est nécessaire d’adapter la solution à chaque cas.
On cherche à faire des sauvegardes (niveau 1) puis ensuite à avoir un système de sauvegarde efficace (niveau 2). Il y a une logique de progression mais aussi de priorités. Avant de penser à externaliser, il faut que votre processus « faire des sauvegardes » soit rodé et satisfaisant. Je vous renvoie à la règle des 3-2-1.
Considérer les solutions
Je ne vais me concentrer que sur les principaux inconvénients d’externaliser ses données personnelles dans le cloud en me basant sur le cas de Sebsauvage (je vous invite fortement à lire son article avant les lignes ci-dessous) :
- Idéalement il faut une fibre, au minimum une « bonne » connexion ADSL parce que 2 To il faut pouvoir les uploader déjà
- On devient tributaire d’un tiers, ce tiers (société, CHATONS, association…) peut fermer, revoir ses offres, bannir l’utilisateur ou une utilisation précise qui ne lui conviendrait pas et il est soumis à la législation de son pays
- Le chiffrement logiciel est une obligation pas une option, le chiffrement matériel n’est pas possible
- La disponibilité des données peut varier : 1/ Suivant où on se trouve sur le globe et notre connexion, on mettra plus ou moins de temps à récupérer les données 2/ Les données sont « gelées » (stockage froid), on peut les « dégeler » avec un délai de quelques minutes à plusieurs heures
- Il faut accepter de confier ses données à un tiers. Je ne souhaite pas envoyer les photos de mes proches même chiffrées dans un cloud. Pour rappel le chiffrement ne fait que rendre suffisamment coûteux en temps et ressources l’accès aux données. Dans 10 ans il est probable que les algorithmes de chiffrement qu’on utilise aujourd’hui seront dépréciés et que l’on pourra à un coût raisonnable (délai et puissance) déchiffrer les données
- Vérifier l’intégrité des données reçues sur le cloud du tiers est coûteux : Temps, éventuellement argent si c’est le paiement à l’usage qui est utilisé
- Le paiement à l’usage tend à se généraliser mais ne soyez pas dupes, ce qu’on gagne en économie, on le perd en compréhension, visibilité et prévision des coûts. D’ailleurs on constate un glissement lexical de prévision des coûts à simulation/estimation des coûts. C’est complexe (adieu simplicité) et également trompeur (adieu confiance) mais en effet ça s’adapte et répond à vos besoins au plus près. L’exemple donné par Sebsauvage, stockage : 0,0024€ TTC/Go/mois, transfert (upload ou download) : 0,0138€ TTC/Go. J’adore donner la page pricing de Amazon Glacier : Tarification du stockage en fonction de la région, du transfert de données entrantes ou sortantes, « Sauf indication contraire, nos prix n’incluent pas les taxes et redevances applicables, y compris la TVA et les taxes de vente applicables », etc. N’oubliez pas que souscrire à une offre ferme genre 10€ par mois pour 2 To, c’est également une limite pour vous. Lorsque vous atteignez les 2 To, vous serez informés/bloqués. Contrairement au paiement à l’usage où le principe est justement que vous n’êtes plus limités, on vous fournit ce que vous avez besoin sans changement d’offre simplement en se calquant sur votre usage/consommation. Consommez, consommez mes petits, moins vous vous en souciez, plus ça vous coûte cher. CB renseignée et prélevée automatiquement avec des coûts fluctuants… ça peut faire des étincelles
- Le plus grave à mon sens et le résultat de ces points : Les tests de restauration ne seront quasiment jamais effectués et la restauration des données sera longue et complexe
A présent je vais proposer une autre solution que je vais nommer « solution locale » :
- Sebsauvage prend 2 DD externe de 2 To en USB 3.0, coût 160 euros. A titre indicatif et selon son comparatif l’offre la moins chère (paiement à l’usage) de la « solution cloud » se situe à 57.6€ TTC/an pour 2 To
- Il utilise pour « faire des sauvegardes » BorgBackup qui gère la rotation, compresse, chiffre. Pas besoin d’utiliser un nouvel outil, il suffit de brancher le DD externe sur le pc/serveur
- Il branche le premier DD externe sur le pc/serveur chez lui le week-end, la sauvegarde s’effectue avec un cron. Le lundi il prend ce DD et le dépose dans son tiroir/bureau/casier en arrivant au boulot. Il prend le second DD dans son tiroir/bureau/casier qu’il ramène chez lui un soir puis il branche ce DD sur le pc/serveur
- Il peut remplacer boulot par parents/enfants/famille/potes
- Il fait ce qu’il veut avec ses
cheveuxdonnées notamment vérifier l’intégrité des données, chiffrement matériel, faire des tests de restauration plus simplement et régulièrement, dupliquer sur un DD plus volumineux, fournir à un proche un moyen simple de récupérer ses données suite à son décès…
Inconnus, données actives et inactives
Il y a potentiellement un gros fail dans cette solution, ça correspond aux inconnus, on ne connaît pas l’utilisation de ses données. Sebsauvage a-t-il besoin de restaurer/récupérer régulièrement les données de ses sauvegardes ?
On va différencier 3 types de données :
- La donnée active « fraiche » qu’on synchronise et qu’on sauvegarde. Je considère la donnée comme fraiche dans une période de 15 jours après sa création ou dernière modification. Ça sera par exemple le dossier
/home/Documents
- La donnée active « chaude » qu’on sauvegarde. Typiquement
/home
- La donnée inactive « froide » qu’on archive. Sebsauvage est probablement dans ce cas-là, il n’aura pas besoin de ses photos de vacances 2015 tous les jours, on peut les mettre sur un HDD puis le ranger dans un placard. Ce sera plus long à ressortir et lire mais après tout l’accès à cette donnée est très peu fréquent
Ce que l’on vient de faire là, c’est analyser plus finement le cas d’utilisation et les besoins de Sebsauvage. On les a passé sous une loupe et on a augmenté notre champ lexical : fréquence (régulièrement, tout le temps, une fois de l’an ?), accès (rapide, lent, de partout ?), utilisation (lecture, écriture, partagée ?).
Mon besoin
J’ai sensiblement le même besoin que Sebsauvage à la différence notable que j’ai besoin d’inclure une synchronisation des données.
J’ai un pc portable (pour mes déplacements/interventions), un pc fixe perso à mon domicile, un pc fixe pro au bureau. Lorsque je travaille quelque part, j’ai besoin de récupérer les données sur les autres postes. ATTENTION UNE SYNCHRONISATION N’EST PAS UNE SAUVEGARDE. J’écris un texte dans un document, il se synchronise sur les autres postes, je supprime ce texte, il se synchronise sur les autres postes, je perds donc mon texte. Dans le monde proprio l’outil de synchronisation par excellence s’appelle Dropbox, dans le monde libre c’est Syncthing dont le fonctionnement est distribué. Syncthing a mauvaise presse pour deux raisons : 1/ Sa relative complexité (que je confirme) liée au fait que c’est un outil pointu, puissant, souple 2/ Les ressources qu’il consomme, ça tombe bien c’est réglé depuis quelques semaines.
A présent ma solution nommée sobrement « solution maison » :
- Mes 3 postes sont synchronisés sur le « nœud » principal Syncthing qui est le Raspberry Pi de mon domicile auquel j’ai ajouté une clé USB pour éviter l’usure de la carte SD et avoir un espace disque convenable. L’intérêt du Pi est qu’il est toujours allumé, disponible, peu énergivore et suffisant
- Mes données actives fraiches (que j’utilise le plus, les plus importantes) sont synchronisées grâce à Syncthing en permanence. Pour perdre mes données, il faudrait que je perde l’accès aux 4 nœuds (quasi-impossible) : J’ai mon pc portable avec moi en déplacement, mon pc fixe et le Pi à la maison, mon pc fixe boulot au bureau
- Il n’y a cependant pas que la perte de données mais également la corruption, modification inopportune ou suppression de données à prendre en compte. Syncthing propose le versioning des fichiers. Des crons déclenchent la sauvegarde des données sur DD interne sur mon pc fixe domicile ET mon pc fixe bureau me permettant d’avoir deux jeux de sauvegarde à des endroits différents
- J’ai 2 DD externe. Je branche le premier DD externe sur mon pc chez moi le week-end, la sauvegarde s’effectue avec un cron. Le lundi je prends ce DD et le dépose au boulot. Je prends le second DD que je ramène chez moi le soir
- Je fais ce que je veux avec mes données, librement… pas de tiers, pas de coûts cachés, KISS, moins coûteux et plus sûr qu’une « solution cloud »
Votre besoin
Je ne viens pas de vous donner une solution générique, chaque cas est particulier. En revanche je vous ai fourni les informations, les termes, les pistes, le cheminement si vous voulez apprendre, comprendre…
A noter que pour aller au fond des choses, on devrait utiliser des outils de sauvegarde différents. Borg d’un côté, restic de l’autre prévenant ainsi une erreur humaine ou un bug sur l’un des deux outils. On peut évidemment mixer les solutions présentées dans ce billet, c’est même recommandé pour appréhender les différentes possibilités.
J’ai pris des libertés sur certains concepts car j’essaie de vulgariser, merci de ne pas m’injurier dans les commentaires
Déjà 18 avis pertinents dans Quelques réflexions autour de l’externalisation des sauvegardes
Les commentaires sont fermés.
Par ailleurs, il peut servir à faire des sauvegardes extérieures, par exemple avec un ami qui reçoit les données à sauvegarder (si on a peur, on peut toujours chiffrer ses données avec gpg avant de les envoyer)
Déjà faire le tri entre l’importance des documents permet de mieux dispatcher les tâches. Et curieusement, c’est parfois plus facile de le faire à son travail que chez soi.
On voit qu’en ce moment, c’est un sujet qui touche beaucoup de monde
Mes données vraiment importantes représentent moins de 100Mo et sont synchronisées avec Syncthing sur tous mes appareils, en soit c’est un backup, plus le vps aux pays bas. Pour mes données volumineuses (iso, musique, films de vacances…) j’estime que c’est pas vital, je fais un simple backup sur HDD externe. Si un jour je voulais externaliser je pense que je prendrai un kimsufi, on peut avoir 2To pour 7.99€ HT c’est imbattable.
Je ne pense pas avoir perdu le lecteur, en revanche l’article parle sûrement à des gens qui connaissent et pour ceux qui souhaitent s’y mettre, la marche est probablement haute.
Très bien ton article du jour.
Tcho !
Ouais tu as raison il n’a pas de presse du tout mais si je prends mon cas, je n’en ai pas parlé à cause de son indécente consommation lors d’une synchro (ce souci étant maintenant réglé). Je l’utilise depuis 2 ans maintenant et c’est un de mes outils principaux/indispensables.
Merci pour l’info du Kimsufi KS-3, c’est fort intéressant.
Tcho !
Non mais je me méfierai du coût d’une opération entrante 1.00 euros HT en C14 Standard : « Une opération est une action entre votre archive et le cloud C14 : Archivage, Désarchivage, Destruction ou Vérification ».
Tcho !
Tu as osé redire Lignux !
Bien vu.
J’utilise BorgBackup et j’externalise mes backups chiffrés vers un serveur dédié de 2TB HDD justement.
PS :
Attention, lorsque vous louez une VM ou un serveur dédié. Chiffrez toujours intégralement le système (pas le /boot, forcément) et accessoirement le swap. Ce serait dommage qu’un admin travaillant pour Kimsufi, Online, FirstHeberg ou encore Hetzner fouillent dans vos partitions non ?
J’utilise la configuration suivante:
1 station de travail (home)
1 disque USB mobile que je déplace 24/24 avec moi
1 disque USB connecté 24/24 sur la station de travail (home)
x station de travail (que je synchronise avec le disque mobile)
Tout cela avec git-annex
Note: il est possible avec git-annex de stocker également sur le cloud (la liste des providers => https://git-annex.branchable.com/special_remotes/ )
Hé hé hé oui
Tcho !
Tu as raison ce n’est pas aussi convivial ha ha ha !
Tcho !
Je ne comprends pas bien ta question, c’est plutôt une remarque en fait ? Tu parles pour Syncthing ou les sauvegardes ? En ce qui me concerne je ne suis pas intéressé par le cloud, ton offre est intéressante, le souci principal que je vois c’est que quand on passe à 4TB c’est 10.79 euros TTC/mois.
Tcho !
Désolé pour mon message un peu bref ce matin, j’aurais dû developper plus mon propos.
Je ne connaissais pas Syncthing avant de lire ton blog, et ce que tu décris corresponds parfaitement à ce que souhaites mettre en place pour synchroniser mes différents pc. Dropbox n’étant pas un option, ta solution semble idéale pour la synchro (je parle seulement de synchro, pas backup).
Ton RPi sert essentiellement de noeuf prinicpal toujours connecté pour synchroniser tes différents pc (Syncthing synchronise seulement on-line).
Perso, je n’ai pas de RPi, et donc plutôt que d’acheter un rpi je regarde l’intérêt de le remplacer par un serveur low cost type soyoustart (ou autre fournisseur équivalent) à 80€ par an pour 2To de stockage ?
Voici mon analyse et j’aimerais ton avis. Tu utilises déja Syncthing depuis longtemps, tu as forcement plus de recul. Et tu as peut-être même déjà étudié la question. Je précises que je suis plutôt allergique au cloud, et donc plutôt enclin à choisir une solution du type Rpi comme noeuf de syncro.
Serveur Cloud, les +
Le ARM Cortex A9 c’est sensiblement équivalent au Rpi.
2To c’est largement suffisant pour la synchro (dans ma situation).
Cout + temps + nuisances sonores que tu décris + conso éléctrique etc…
Meilleur bande passante (2,5Gbps) que mon adsl très limité à la maison.
Disponibilité en ligne plus élevée que Rpi a la maison (avantage marginal pour une utilisation personelle)
Aspect matériel totallement outsourcé
Serveur Cloud, les –
Confidentialité des données sur un serveur cloud (gros moins, mais peut-être y-a-t-il des solutions ?)
Au delà de 2To, ou si les tarifs augmentent dans le futur, l’intérêt financier disparait très vite.
Peut-être plus délicat à parameter ou à administrer.
Merci pour tes idées,
Cali
Pourrais-tu décrire ta solution de synchro off-line avec git-annex ?
Attention aux idées avec Git, perso je déconseille. De mémoire il a du mal à gérer les gros fichiers et je demande à voir avec des pdf, des images, des vidéos…
Tcho !
En vrac total :
– Pour de la pure synchronisation (pas de sauvegarde), je pense que 95% des gens n’ont pas besoin de plus de 10 Go d’espace disque alors 2 To…
– J’estime que mon article donne des arguments qui font mal pour des solutions dans le cloud (pourtant plébiscités par une majorité)
– Tu as vérifié que Syncthing passe dans le cloud ? Il utilise des ports exotiques. Pour ma part je vais régulièrement en datacenter, Syncthing n’y fonctionne pas, pour le faire fonctionner je me connecte en VPN
– Tout le monde sera d’accord pour dire que si on balance des données dans le cloud, il faut les chiffrer. Tu as réfléchi à la complexité supplémentaire engendrée par ce point ? Parce que pour de la synchronisation, c’est un casse-tête. Un fichier chiffré sera synchronisé puis téléchargé puis déchiffré. Il faut donc chiffrer/déchiffrer tout le temps pour ainsi dire. Je pense qu’un bon point de départ pour y réfléchir : https://www.nextinpact.com/news/104960-cryptomator-outil-multiplateforme-pour-chiffrer-vos-donnees-stockees-dans-cloud.htm
– J’utilise Syncthing avec un nœud principal mais tu peux faire comme tu veux : Seulement deux nœuds, plusieurs nœuds principaux, des dizaines de nœuds etc.
– Les commentaires ci-dessus ont donné des offres intéressantes dans le cloud mais personne n’est venu contre-argumenter mes arguments et la solution que j’ai proposé… c’est solide y compris d’un point de vue logique
– Avoir une solution la plus simple possible et des sauvegardes à 2m de soi à son domicile, ça n’a pas de prix…
Tcho !
Oui j’emprunte une connexion haut débit pour l’upload initial, le reste se faisant au fil de l’eau.
L’idée du second disque dur est tout à fait pertinente.