3 votes

Synchronisation de fichiers pour Ubuntu Server

J'envisage de mettre en place deux serveurs Ubuntu comme solutions de sauvegarde où les gens peuvent stocker des images et des documents. Ce que j'ai en tête, c'est que si un utilisateur enregistre/met à jour un fichier dans un répertoire spécifique (répertoire partagé Samba peut-être ?) sur un serveur Ubuntu, il sera synchronisé sur un autre serveur.

Qu'est-ce que vous en pensez ? Y a-t-il une meilleure solution pour cela ? Merci d'avance !

Edit : Est-il conseillé de créer le répertoire accessible en écriture et d'en définir l'accès dans Samba ? Les utilisateurs ont Mac OSX et Windows XP installés comme systèmes d'exploitation.

7voto

KPWINC Points 11174

rdiff-backup

Avez-vous déjà jeté un œil à rdiff-backup ?

Nous l'avons utilisé pour synchroniser plus de 4 millions de fichiers d'un serveur de fichiers Ubuntu à un autre sans aucun problème. Une fonctionnalité très intéressante de rdiff-backup est qu'il conserve à la fois une copie miroir et une copie différentielle (vous pouvez configurer la durée). Cela s'avère pratique lorsque vous sauvegardez des choses comme du code source, des images qui changent, etc. car vous pouvez toujours restaurer le fichier à un moment donné.

Voici la description tirée de leur site web :

http://rdiff-backup.nongnu.org

rdiff-backup sauvegarde un répertoire vers un autre, éventuellement sur un réseau. L'adresse répertoire cible finit par être une copie du répertoire source, mais les diffs inversés supplémentaires diffs sont stockés dans un sous-répertoire dans un sous-répertoire spécial de ce répertoire cible, donc vous pouvez toujours récupérer les fichiers perdus il y a quelque temps. L'idée est de combiner les meilleures caractéristiques d'un miroir et d'une sauvegarde incrémentale. rdiff-backup préserve également préserve les sous-répertoires, les liens durs, les fichiers dev, les permissions, les uid/gid propriété, heures de modification, attributs étendus, acls, et bifurcations de ressources. De plus, rdiff-backup peut fonctionner de manière efficace en termes de bande passante bande passante sur un tube, comme rsync. Ainsi, vous pouvez utiliser rdiff-backup et ssh pour sauvegarder en toute sécurité un disque dur vers un distant, et seulement les différences seront transmises. Enfin, rdiff-backup est facile à utiliser et les paramètres ont des valeurs par défaut sensées.


rsync

Mon deuxième choix serait rsync et une tâche cron réglée à la fréquence que vous souhaitez.


JungleDisk / Amazon S3

Mon troisième choix (en fonction de vos besoins EXACTS) serait une sauvegarde hors site sur le nuage S3 d'Amazon via JungleDisk ou un programme similaire.

http://www.jungledisk.com


Nous sauvegardons actuellement plus de 4 millions de fichiers de notre serveur de fichiers Ubuntu maître vers un serveur de fichiers Ubuntu esclave (même emplacement) via rdiff-backup une fois par heure.

Nous effectuons ensuite une sauvegarde toutes les 6 heures via rsync (ou Jungledisk) sur le cloud Amazon S3.

De cette façon, nous pouvons gérer les "choses faciles" avec seulement le maître/sauvegarde, mais si quelque chose de catastrophique devait se produire, nous aurions toujours la sauvegarde Amazon S3 dans le nuage.

J'espère que cela vous donnera quelques idées...

1voto

Maxwell Points 5016

Si vous disposez d'une bonne connectivité et d'une bonne bande passante entre les nœuds, vous pouvez envisager d'utiliser la fonction DRDB y battement de cœur pour bloquer la mise en miroir de vos données.

1voto

rkthkr Points 8463

J'aime vraiment glusterfs et je l'ai utilisé pendant un certain temps pour faire la même chose que vous envisagez de faire.

À propos de glusterfs :

GlusterFS est un système de fichiers en cluster. capable de s'adapter à plusieurs pétaoctets. Il agrège diverses briques de stockage via Infiniband RDMA ou Infiniband RDMA ou TCP/IP en un grand système de fichiers en réseau parallèle. Le stockage briques de stockage peuvent être constituées de n'importe quel comme un serveur x86-64 avec RAID SATA-II et HBA Infiniband).

Ce site tutoriel décrit comment mettre en place et faire fonctionner la réplication côté serveur. Notez qu'un "serveur" peut aussi être un client...

//rkthkr

1voto

Anders Hansson Points 179

Jetez un coup d'œil au projet open source BackupPC . Je l'utilise pour sauvegarder les serveurs d'une petite entreprise ; quelques avantages :

  • Une belle interface web pour permettre le contrôle/surveillance à distance et sans tête et même la restauration de fichiers.
  • Utilise un pool de données pour le stockage, de sorte que tout fichier identique n'est stocké qu'une seule fois, ce qui permet d'économiser de l'espace disque.
  • Permet au pool de se compresser, ce qui permet d'économiser de l'espace disque
  • Permettre plusieurs protocoles/outils différents pour la copie/sauvegarde ; rsync, tar, etc.
  • Conserve un historique des fichiers et pas seulement les plus récents (configurable)
  • Possibilité d'envoyer des rapports automatiques par e-mail

0voto

David Pashley Points 22851

Il existe de nombreuses solutions différentes à ce problème. Elles ont toutes des avantages, mais malheureusement, elles ont toutes des inconvénients. Cela dépend de ce que vous voulez faire. La plus simple est un miroir unidirectionnel pour les sauvegardes ou un serveur de fichiers à chaud. Un datastore partagé est également facile à mettre en place, permettant l'équilibrage de charge entre vos serveurs de fichiers, mais vous n'aurez toujours qu'un seul datastore. La synchronisation bidirectionnelle et la réplication des données sont beaucoup plus complexes. Vous rencontrez alors des problèmes avec ce qui se passe lorsqu'un nœud ne peut pas voir l'autre nœud. Que se passe-t-il s'ils ne sont pas synchronisés ?

Du plus simple au plus complexe

  • rsync programmé
  • SAN
  • NBD et miroir
  • systèmes de fichiers en grappe comme lustre, glustrefs, GFS, OCFS2.

SistemesEz.com

SystemesEZ est une communauté de sysadmins où vous pouvez résoudre vos problèmes et vos doutes. Vous pouvez consulter les questions des autres sysadmins, poser vos propres questions ou résoudre celles des autres.

Powered by:

X