Suite logique à mon installation de LXC le mois dernier, cette mise en situation me permet  d’aprécier le comportement de mon nouveau serveur hôte avant de prendre une décision définitive. Pour cette mise en situation j’ai décidé de migrer le serveur DNS, Courriels et MariaDB.

Le but de cette mise en situation sera de tester les points suivants :

  • Les performances (hôte et containers), analysées avec Munin
  • Les sauvegardes automatisées avec notifications
  • La restauration
  • Le fonctionnement en mode dégradé et retour à la normale
  • L’interface Web de LXC

J’ai configuré chaque container lxc en essayant d’être le plus proche possible de la configuration d’origine afin d’avoir un comparatif le plus juste possible. La seule différence notable sera le système d’exploitation chaque container lxc sera propulsé par une Debian Jessie contre un Wheezy pour OpenVZ.

Serveur DNS et MAriaDB

  • Cpu : 1
  • Ram : 1024 Mo
  • Swap : 512
  • HDD : 10 Go

Serveur Courriel

  • Cpu : 2
  • Ram : 2048 Mo
  • Swap : 1024 Mo
  • HDD : 30 Go

Migration in progress

Concernant la migration de chaque serveur rien de complexe, une installation propre de chaque containers sous Debian Jessie. J’ai ensuite procédé à la migration.

Serveur DNS

Installation de Bind

sudo apt instal bind9

Puis récupération des fichiers de configurations depuis l’ancien serveur DNS :
named.conf.local – Indique à bind où se trouve votre domaine, et où se trouve son fichier de zone.
named.conf.options – Définit le serveur DNS secondaire.
resolv.conf – Définit l’adresse ip du serveur.
zone file – Permet d’associer le domaine et ses sous domaines au serveur.
reverse DNS zone file – L’opposé de “zone file” (fichier de zones DNS)

Tous ces fichiers se trouvent dans /etc/bind et /etc/bind/zones pour le fichier zone file.

Serveur MariaDB

MariaDB est maintenant présent dans les dépôts officiels Debian.

sudo apt install mariadb-server

Sauvegardes pour chacune des bases

mysqldump --user=mon_user --password=mon_password --databases ma_base_de_données > fichier_sauvegarde.sql

Restauration sur le nouveau serveur. Pour chaque base de données je crée un utilisateur associé.

CREATE DATABASE mabase; GRANT ALL PRIVILEGES ON mabase.* TO "mabase"@"adressedeconnexion" IDENTIFIED BY 'mot_de_passe'; FLUSH PRIVILEGES;

Restauration de chaque base de données

mysql --user=mon_user --password=mon_password nom_de_la_base < fichier_sauvegarde.sql

Serveur Courriel

Après avoir installé IredMail.

Restauration de la base de données des boîtes :

mysql --user=root --password=password vmail < vmail-2016-02-10-04:30:01.sql

Copie des fichiers

sudo scp root@ancienserveurmail:/var/vmail/vmail1/* /var/vmail/vmail1/

Petite précision, la restauration de la base de données m’évite de recréer tous les comptes utilisateurs à la main et la copie des fichiers permet de récupérer les courriels pour chaque utilisateurs.

Après avoir stoppé les container OpenVZ, j’ai mis à jour les règles du pare-feu. C’est parti pour quelques semaines d’essais. Il me reste à mettre en place une solution de sauvegarde et une simulation de mode dégradé avec une reprise d’activité après un crash.