Linux synchronisation de dossier

Bonsoir,

Je m'explique, j'ai deux serveurs Debian.

Je cherche à synchroniser le contenu de
/var/exemple/
de SRV-01
avec le contenu de
/var/exemple/
de SRV-02.

Avez vous le nom d'un paquet qui permet cela ?

Merci !

2 réponses

  1. Contributeur
    Salut,

    rsync ?
    0
    1. Bonjour,

      J'aurais également dû le précisé, j'ai besoin de synchronisation bidirectionnelle.
      Selon cette page https://doc.ubuntu-fr.org/rsync ça n'est pas le cas.

      En fait, il faut que mon dossier contienne toujours la même chose sur mon serveur 01 que sur mon serveur 02.
      Si le 01 rajoute un élément, pouf, le serveur 02 l'a aussi. Et inversement.

      Après réflexion, si il y a une temporisation d'1h maximum (que ça n'est pas en temps réel donc), ça conviendrait aussi.

      Avez vous une idée ?
      0
  2. Bonjour,

    rsync est l'outil le plus répandu pour une synchronisation ponctuelle mais pouvant être planifiée par CRON.

    syncthing permet la synchronisation en temps réel, c'est le nom qui revient le plus souvent dans cette catégorie (live sync open source et utilisable en milieu pro).

    Il existe aussi des systèmes de fichiers qui permettent cela (comme GlusterFS) mais c'est probablement du surarmement pour la sync d'un seul répertoire. C'est plutôt utile dans un environnement cloud.

    Si tu n'as pas besoin d'avoir la réplication des données sur les deux serveurs, tu peux te diriger vers un partage NFS. Les données se situent sur un seul serveur, et le second "monte" le dossier où il veut comme n'importe quel système de fichiers. Le réseau sera sollicité lorsque le serveur qui monte le NFS doit lire/écrire un fichier sur le serveur qui partage le dossier par NFS.
    0
    1. Bonjour, et merci.
      Le NFS n'irai pas dans mon cas, car un service utilise ce dossier, et a besoin de l'avoir en local.
      Ce qu'il me faut, c'est bien de la synchronisation en temps réel. Je ne peux pas me permettre d'avoir un crontab, à moins qu'il se lance toutes les minutes.

      Je me renseigne du côté de syncthing !

      Merci beaucoup.
      Bonne soirée.
      0
    2. @DoctorAngryIl y a bien une version CLI ?
      C'est vrai que c'est une information que j'aurais dû précisé... Je suis sans interface graphique, sur serveur Debian 10.
      0
    3. Contributeur
      @DoctorAngrySalut,

      En fait cette solution s'administre via ton navigateur en local.
      Je viens de l'installer sur une VM (avec GUI), mais il est possible une fois installé sur ton serveur, d'activer le service (pour un utilisateur donné), puis d'aller modifier le fichier de configuration (/home/${USER}/.config/syncthing/config.xml) afin que le service puisse être administré depuis un autre poste.
      0
    4. @zipe31Ah intéressant, et cette solution vous semble plus viable que rsync (je vous ai répondu juste au dessus) ?
      0
    5. @DoctorAngryBonjour !

      Je ne suis pas certain de bien comprendre pourquoi tu penses que NFS n'est pas adapté.

      Le serveur #1 exporte le dossier /var/example (= le propose aux autres serveurs sur le réseau)
      Le serveur #2 monte ce dossier dans son arborescence, au point de montage voulu /var/example/ (qui peut être différent si désiré)

      Si le serveur #1 contient /var/example/fichier
      Alors un programme/service sur #2 peut accéder à /var/example/fichier

      L'accès à ce fichier par le programme/service #2 se fera de manière transparente, le programme n'aura pas conscience qu'il s'agit d'un partage en réseau.

      NFS est beaucoup plus simple à configurer et semble correspondre à ton besoin.
      0