Linux - Synchronisations de Données

by Tyleo Dv. Delaware

Share

Le Principe de base

La synchronisation de données permet de nombreuses choses et dans de nombreux cas différents :

  1. Backup : Sauvegarder des données vers un autre hôte, un serveur de stockage ou une baie de stockage (via un hôte SSH/SFTP) - Il s'agit de la méthode la plus courante.
  2. Synchro : Synchroniser des données entre deux hôtes pour assurer le reflet des données. Utilisé dans les cas spécifiques de données d'usage courant.
  3. Archivage : Nettoyage de données avec transfert vers un hôte d'Archivage via SSH/SFTP. Utilisé pour libérer de l'espace sans perte de données réel.

Différences entre Rsync, SCP et SFTP

Il est important de différencier l'usage de chacune des commandes et d'identifier dans quelle situations elles sont utiles.

Ainsi, l'usage de rsync est le plus conseillé pour sauvegarder, synchroniser ou copier des données sans perte. Il est même recommandé dans le cas de programmation par des programmes tel que cron ou des solutions d'Entreprise comme VTOM Bot ou Ansible Automation.

Rsync : Usages

Il est vivement conseillé d'utiliser des clés privées pour vos configuration Rsync. Cela permet de fluidifier le fonctionnement mais aussi de le sécuriser.

Exemple de commande Local vers Remote (Exfiltration)

rsync -avz -e "ssh -o StrictHostKeyChecking=no -o UserKnownHostsFile=/dev/null" --progress [local-dir] [remote-user]@[remote-host]:/[remote-dir]

Exemple de commande Remote vers Local (Aspiration)

rsync -avz -e "ssh -o StrictHostKeyChecking=no -o UserKnownHostsFile=/dev/null" --progress [remote-user]@[remote-host]:/[remote-dir] [local-dir]
Un hôte peut tout a fait faire un backup des données d'un autre hôte vers lui-même (mode d'Aspiration) ce qui rend le processus semi-indépendant de l'hôte source.
Un hôte peut également envoyer des données vers un autre hôte (mode d'Exfiltration) mais est dépendant de l'hôte source.

Explications

Informations Additionnelles

Il est a noter que Rsync vérifie l'existence de données coté source et coté destination. Par défaut et sans paramêtres, Rsync ne va pas supprimer des données coté destination lorsque la source n'a plus cette données (mode Synchro) qui est le comportement par défaut. Un paramêtre existe pour activer la suppression (-a).
Pour un Backup en one shot (accompagné de snap shots) alors ce mode convient pas forcement car cela pourrait déformer l'intégrité du backup.