Réplication de serveur (Sauvegarde en temp reel)

lsyncd (Live Syncing Daemon) est une utilisation de synchronisation de fichiers en temps réel qui utilise rsync pour synchroniser les fichiers modifiés et combine cela avec la capacité de détecter les modifications en temps réel grâce à inotify.

Avant de commencer assurez d’avoir mis en place trois VM linux et s'être vous être  assuré de leur inter-connectivité (via un simple ping).

Étape 1 : Installation sur srvweb1 et srvweb2

Sur Debian/Ubuntu :

sudo apt-get install rsync apache2

Étape 1 : Installation uniquement sur srvweb1

Sur Debian/Ubuntu :

sudo apt-get install lsyncd

Étape 2 : Configuration de lsyncd

Créez un fichier de configuration, par exemple /etc/lsyncd/lsyncd.conf.lua, et ouvrez-le avec un éditeur de texte :

sudo nano /etc/lsyncd/lsyncd.conf.lua

Voici un exemple de configuration qui synchronise les fichiers d'un répertoire local avec un répertoire distant sous Apache :

settings {

 logfile = "/var/log/lsyncd.log",

 statusFile = "/var/log/lsyncd.status"

}

 

sync {

 default.rsync,

 source = "/var/www/html/local/", -- Répertoire source sur le serveur local

 target = "user@192.168.0.10:/var/www/html/remote/", -- Le serveur distant

 rsync = {

 compress = true,

 archive = true,

 verbose = true,

 perms = true,

 owner = true,

 _extra = {"--delete"}

 }

}

 

Étape 3 : Générer la clé ssh

Pour autoriser la connexion ssh sans mot de pass :

sudo ssh-keygen && ssh-copy-id debiana@192.168.0.10

Étape 4 : Démarrer et tester lsyncd

Après avoir configuré le fichier, démarrez le service lsyncd :

sudo systemctl restart lsyncd

 

Pour vous assurer qu'il démarre automatiquement au démarrage :

sudo systemctl enable lsyncd

 

Vérifiez que le service fonctionne correctement et surveillez les fichiers journaux pour voir les activités :

sudo systemctl status lsyncd

cat /var/log/lsyncd.log

 

Veuillez vérifier que le serveur est bien running sinon regarder fichier votre configuration nano /etc/lsyncd/lsyncd.conf.lua et retester.

 

Étape 5 : Sécurité et Permissions

Assurez-vous que l'utilisateur sous lequel s'exécute lsyncd a les permissions nécessaires pour lire et écrire dans les répertoires source et cible.