Moving SME to new Hardware/fr
Is this article helpful to you?
Please consider donating or volunteering
Thank you!
Déplacer un serveur SME sur une nouvelle machine
Introduction
Il y a plusieurs façons de déplacer une installation du Serveur SME sur un nouveau matériel et également sur une nouvelle version logicielle du Serveur SME.
Ce document décrit une méthode utilisant la contribution Affa v3.
La fonction «rise» peut être également utilisée pour passer à une version logicielle supérieure. Cela est aussi valable pour passer de la version SME 8.2 à la version 9.x.
Affa rends cela possible avec une interruption de service minimale du serveur de production.
Dans la suite, il est convenu que IP_prod
est l'adresse IP de votre serveur de production et IP_nouvelle
est l’adresse IP du nouveau matériel serveur. Remplacer les espaces réservés par vos adresses IP réelles.
Préparation
Serveur de production
Activer l'accès ssh à distance pour l'administrateur dans le gestionnaire du serveur de l'IP_prod
. Cela inclut de configurer à la fois :
- - l' 'accès Secure shell' à partir du réseau local ;
- - 'autoriser l'administrateur à accéder à SSH en ligne de commande en configurant à «Oui» ;
- - et «Autoriser l'administrateur à se connecter à l'aide de mots de passe standards» à «Oui».
Se connecter en tant qu'administrateur au serveur d'IP_prod
et lancer une msie à jour logicielle :
yum update
Si des paquets sont mis à jour, il est nécessaire de lancer les commandes post mises à jour et de redémarrer :
signal-event post-upgrade; signal-event reboot
Nouveau matériel
Installer le Serveur SME à partir du dernier CDROM/ISO. Lui attribuer une adresse IP inutilisée (IP_nouvelle
) et désactiver la fonction DHCP.
Activer l'accès ssh à distance dans le gestionnaire du serveur de la machine d'IP_nouvelle.
Se connecter au serveur d'IP_nouvelle
et lancer une mise à jour.
yum update
Effectuer les procédure post mises à jour et redémarrer si c'est demandé.
Installer le paquet Affa. Suivez les dernières instructions d'installation d'Affa ici, en anglais pour l'instant.
Se souvenir, s.v.p., de créer en ligne de commande le répertoire pour les fichiers d'archives :
mkdir /var/affa
Dans cet exemple, vous avez un Serveur SME de production (IP_prod
) d'IP : 192.168.0.2.
Vous avez une seconde machine SME en tant que serveur de sauvegarde (IP_nouvelle
) d'IP : 192.168.0.10.
La tâche de sauvegarde d'Affa s'appelle «ServProd».
Connectez-vous à votre IP_nouvelle
en tant que root et éditer/créer le fichier /etc/affa/ServProd.conf. En utilisant, par exemple, l'éditeur nano, ajouter le texte de configuration de tâche de l'exemple suivant au nom de tâche ServProd :
[ServProd] remoteHostName=192.168.0.2 SMEServer=yes Watchdog=yes RPMCheck=yes ConnectionCheckTimeout=120 Debug=no Description=sauvegarde de smeserveur.chezmoi.xx d'IP 192.168.0.2 DiskSpaceWarn=strict RootDir=/var/affa TimeSchedule=0630 localNice=15 remoteNice=15 rsync--inplace=yes rsyncCompress=no rsyncTimeout=900 scheduledKeep=1 dailyKeep=7 weeklyKeep=4 monthlyKeep=12 yearlyKeep=1 status=disabled
Puis sauvegarder votre fichier de configuration de tâche.
Maintenant, vérifier que votre configuration est correcte :
affa --configcheck
Cela ne devrait retourner aucune erreur.
Générer des clés DSA et envoyer la clé publique au serveur d'IP_prod
.
affa --send-key ServProd
La réponse du serveur d'IP_prod doit être :
Job ServProd: root@IP_prod's password:
Entrer le mot de passe administrateur d'IP_prod. La réponse sera :
Public key sent to IP_prod
Traduction en cours.
Copie des données
Exécuter la tâche Affa «ServProd» sur la machine d'IP_nouvelle
.
affa --run prodserv
En fonction de la quantité de données et des performances du matériel et du réseau, cette première tâche peut être réellement longue.
Regarder maintenant le fichier /var/affa/ServProd/rpms-missing.txt
.
less /var/affa/ServProd/rpms-missing.txt
Vous trouverez une liste de paquets qui sont installés sur le serveur d'IP_prod
mais non sur ce serveur d'(IP_nouvelle
) et aussi des paquets installés dans différentes versions. Install or update the listed RPMs. To verify, you can run the steps of this chapter again. Finally the rpms-missing.txt should not list any RPMs.
In case you are upgrading the SME operating system to a higher version you may not only find the contribs installed in this list but all changes between the 2 systems - in this case you need to run this command on prodIP
/sbin/e-smith/audittools/newrpms
To find out what contribs are installed on prodIP
.
Final data synchronization
Ask your users to log off.
Log into the prodIP
box and stop all services that can modify data.
SVC='qpsmtpd sqpsmtpd crond pop3 dovecot pop3s ftp httpd-e-smith atalk smb qmail' for s in $SVC; do service $s stop; done
Note: Downtime of the production server starts here
Log into the newIP
box and run the Affa job again
affa --run prodserv
This run will complete very quickly as only differences since the the last run needs to be synchronsized.
Switch over to the new hardware
Log into the prodIP
box and power it off
poweroff
Log into the newIP
box and rise this server to your production server
affa --rise --all prodserv
This action will complete very quickly as only hardlinks are used and no data is physically moved.
Note: Do not be scared if your prompt looks different!
Now do a reboot
reboot
Note: Downtime of the production server ends here
You now have an identical copy of your old production server running on the new hardware. Your users can now log on.
Cleaning up
Remove the Affa archives
/bin/rm -rf /var/affa
Remove the Affa packages and all status and configuration data
yum remove smeserver-affa perl-Filesys-DiskFree rm -f /etc/cron.d/affa-status /etc/cron.d/affa rm -rf /home/e-smith/db/affa /home/e-smith/db/affa-report rm -rf /var/log/affa
Note: Don't forget to clean up /var/affa. Otherwise you will waste disk space and see strange quota reports. See this forum thread for details.
Additional information
Performance
With this method you should be able to move a typical 500 Gbyte sized server to new hardware with downtime less than 20 minutes. The final sync and the rise time does not really depend on the total files size, but on the number of files and directories.