La configuration d'un serveur de sauvegarde pour prendre en charge les opérations d'un serveur principal lorsqu'il est victime de problèmes d'indisponibilité du serveur est un ensemble de compétences que la plupart des utilisateurs Linux et tous les administrateurs Linux doivent maîtriser. Cela vous évite d'avoir à vous soucier du "et si ” scénarios.
Ainsi, dans le pire des cas où certains problèmes techniques ou tentatives de violation de serveur pourraient temporairement ou définitivement arrêter votre serveur principal, vous pouvez toujours compter sur la présence d'un serveur de sauvegarde configuré pour fonctionner comme un environnement de serveur double du serveur principal/principal. serveur.
[ Vous pourriez également aimer :Comment synchroniser automatiquement deux serveurs Web sous Linux ]
Le serveur de sauvegarde garantit que vous ne perdez pas vos configurations de données système importantes et vos fichiers utilisateur.
Installation de Rsync sous Linux
Maintenant que vous comprenez l'importance d'avoir deux serveurs synchronisés, il est temps de vous expliquer comment atteindre l'objectif de cet article. Nous allons avoir besoin de deux serveurs actifs et fonctionnels avec leurs adresses IP ou noms de domaine respectifs.
- L'adresse IP du serveur principal/principal :3.135.207.xx .
- L'adresse IP du serveur de secours/secondaire :18.118.208.xx
Pour réussir à synchroniser automatiquement ces deux serveurs, nous aurons besoin de l'aide de rsync utilitaire. Quelle que soit la distribution du serveur Linux que vous utilisez, installez rsync à partir de l'une des commandes d'installation Linux suivantes.
Son installation doit avoir lieu à la fois sur votre serveur principal/principal et sur votre serveur secondaire/de secours.
$ sudo apt-get install rsync [On Debian, Ubuntu and Mint] $ sudo yum install rsync [On RHEL/CentOS/Fedora and Rocky Linux/AlmaLinux] $ sudo emerge -a net-mis/rsync [On Gentoo Linux] $ sudo pacman -S rsync [On Arch Linux] $ sudo zypper install rsync [On OpenSUSE]
Synchronisation des fichiers de répertoire ciblés sous Linux à l'aide de Rsync
Supposons par exemple que le serveur principal/primaire (3.135.207.xx ) a le répertoire LinuxShellTips avec les fichiers en surbrillance suivants qui doivent être synchronisés avec le serveur de sauvegarde/secondaire (18.118.208.xx ).
$ ls
Nous devons accéder au serveur de sauvegarde/secondaire (18.118.208.xx ) et créez un répertoire similaire qui hébergera les fichiers du serveur principal/principal (3.135.207.xx ) lorsque le processus rsync commence.
$ mkdir LinuxShellTips_Backup $ cd LinuxShellTips_Backup
Synchronisation des répertoires à l'aide de Rsync sous Linux
Depuis rsync prend en charge l'utilisation de ssh protocole, la sécurité d'accès au serveur est garantie. Pour tester manuellement comment rsync effectue entre ces deux serveurs, nous allons exécuter la commande suivante.
Nous exécutons cette commande à partir du serveur de sauvegarde/secondaire (18.118.208.xx ).
$ sudo rsync -avzhe ssh [email protected]:/home/ubuntu/LinuxShellTips/ /home/ubuntu/LinuxShellTips_Backup
Comme vous l'avez noté, les trois fichiers du serveur principal/principal (3.135.207.xx ) ont été copiés avec succès sur le serveur de sauvegarde/secondaire (18.118.208.xx ).
Synchroniser automatiquement les répertoires à l'aide de Rsync sous Linux
Nous devons accomplir les deux étapes suivantes pour automatiser entièrement rsync.
Étape 1 : Configurer la connexion sans mot de passe SSH
Lors de l'exécution de la commande ci-dessus pour tester rsync , vous avez dû être invité à entrer le mot de passe d'accès au serveur principal/primaire. Pour supprimer les invites de demande de mot de passe lors de la synchronisation de vos serveurs, nous devons générer une clé publique et une clé privée.
Utilisez la commande suivante sur votre serveur de sauvegarde/secondaire :
$ sudo ssh-keygen -t rsa -b 2048
Appuyez sur [Entrée ] lorsque vous êtes invité à saisir une phrase secrète, laissez le champ vide et copiez les clés privées et publiques générées sur votre serveur principal/principal.
$ sudo ssh-copy-id -i /root/.ssh/id_rsa.pub [email protected]
Vous pouvez maintenant exécuter confortablement le rsync précédemment couvert commande sans fournir de mot de passe d'accès au serveur pour le serveur principal/primaire.
$ sudo rsync -avzhe ssh [email protected]:/home/ubuntu/LinuxShellTips/ /home/ubuntu/LinuxShellTips_Backup
Étape 2 :Configurer une tâche Cron pour automatiser Rsync
Depuis SSH la connexion sans mot de passe entre ces deux serveurs est désormais possible, la dernière étape pour automatiser le processus rsync consiste à créer une tâche cron en modifiant le fichier crontab sur le serveur de sauvegarde/secondaire.
$ sudo crontab -e
Modifiez le fichier crontab en créant une planification de tâche cron pour synchroniser les fichiers de répertoire de vos deux serveurs Linux.
*/5 * * * * sudo rsync -avzhe ssh [email protected]:/home/ubuntu/LinuxShellTips/ /home/ubuntu/LinuxShellTips_Backup
Enregistrez et fermez le fichier crontab.
La tâche cron implémentée ci-dessus synchronisera automatiquement le serveur de sauvegarde/secondaire avec le serveur principal/principal toutes les 5 minutes.
La synchronisation de deux serveurs crée la solution parfaite aux problèmes de temps d'arrêt du serveur et aux erreurs de journal du serveur. Vous n'avez pas non plus à vous soucier de perdre vos fichiers de données utilisateur et système car le serveur de sauvegarde hébergera une copie complète de ces fichiers.