Comment migrer un Serveur Gandi Cloud vers un Datacenter différent

La migration d’un serveur Cloud vers un autre centre de données se fait en plusieurs étapes, et est plus ou moins complexe selon les services que vous utilisez. Ce tutoriel détaillera un exemple de migration de serveur virtuel vers un centre de données Gandi situé dans un autre pays.

Globalement, la migration se fait en quelques étapes qui sont les suivantes :

  1. Préparer votre ancien disque système à la migration.

  2. Faire une copie du disque système du serveur virtuel que vous souhaitez migrer

  3. Créer un nouveau serveur ainsi qu’un nouveau disque de données dans un centre de données différent.

  4. Créer un nouveau disque à partir de la copie, et procéder à la copie des données du disque système vers le disque situé sur le nouveau centre de données.

  5. Modifier les fichiers de zone DNS de vos domaines afin de les faire pointer vers les nouveaux serveurs.

Étape 1 - Préparer la migration

Par défaut, l’interface réseau primaire est configurée de manière statique. Les adresses IP ne pouvant pas migrer d’un centre de données vers un autre, votre serveur va en hériter d’une nouvelle. Par conséquent, vous devez configurer l’interface principale pour qu’elle hérite de sa configuration via DHCP.

Pour ce faire, modifiez le bloc suivant du fichier /etc/network/interfaces :

auto eth0
iface eth0 inet static
      address x.x.x.x
      netmask 255.255.254.0
      gateway 185.26.125.254

Pour qu’il corresponde à :

auto eth0
iface eth0 inet dhc

Retirez également “eth0” de la variable CONFIG_NODHCP dans le fichier /etc/default/gandi :

Avant :

CONFIG_NODHCP="eth0"

Après :

CONFIG_NODHCP=""

Étape 2 - Copier le disque système en production

Créez une copie de votre disque avant toute manipulation afin de pouvoir revenir en arrière si nécessaire.

Attention

Nous vous conseillons de stopper les services écrivant sur le disque lors de la copie ex : bases de données, rsync,..

Étape 3 - Créer le nouveau serveur

Créez le nouveau serveur sur le centre de données de votre choix (ici on utiliseras celui situé au Luxembourg).

Étape 4 - Créer le nouveau disque système

Créez et attachez un disque de données sur le nouveau serveur qui va recevoir la copie du disque système à migrer :

Important

Ce nouveau disque doit être de la même taille ou plus grand que le disque système de votre ancien serveur.

Connectez-vous ensuite en SSH (nommé ici « luxembourg »).

Démontez le disque de données. La commande mount vous aidera à l’identifier :

# mount
/dev/sda on / type ext4 (rw,noatime,errors=remount-ro)
[...]
/dev/sdc on /srv/sys_lux type ext3 (rw,nosuid,nodev,noatime)

# umount /dev/sdc

Ouvrez les accès SSH à l’utilisateur root sur le serveur « luxembourg ». :

# nano /etc/ssh/sshd_config

Remplacez la directive PermitRootLogin without-password par PermitRootLogin yes , puis relancez le service SSH :

# /etc/init.d/ssh restart

Copier les données vers le nouveau disque système

Créez une copie du disque système en production et attachez-le à votre ancien serveur :

Connectez-vous à l’ancien serveur via SSH. Le nouveau disque devrait être monté sur le serveur, sur le point de montage /srv/label_disque. Avant d’effectuer la copie vers le nouveau serveur, nous allons effectuer une vérification de l’intégrité du système de fichier.

Pour cela, identifiez le disque sur lequel vous allez travailler avec la commande mount et démontez le avec umount :

# umount /dev/xvdb

Puis effectuez la vérification du disque avec fsck :

# fsck /dev/xvdb

Lancez la copie du disque :

# dd iflag=direct bs=8k if=/dev/xvdb | ssh ad.re.sse.ip "dd bs=8k of=/dev/sdc"

Note

La copie prendra du temps, vous pouvez installer et lancer l’outil “iftop” pour voir l’état du transfert de données.

Configurez le kernel sur le disque système que vous venez de copier :

https://docs.gandi.net/fr/cloud/gestion_volumes/changer_boot.html

Stoppez le serveur nommé “luxembourg” :

https://docs.gandi.net/fr/cloud/gestion_serveur/stop_start.html

Détachez le disque sys_lux du serveur nommé “luxembourg” :

https://docs.gandi.net/fr/cloud/gestion_volumes/attacher_detacher_volume.html

Attachez à nouveau le disque sys_lux au serveur nommé “luxembourg”, cette fois-ci, nous le déclarons en tant que disque de boot .

Démarrez le serveur nommé “luxembourg” :

https://docs.gandi.net/fr/cloud/gestion_serveur/stop_start.html

Connectez-vous au nouveau serveur pour vérifier que tout est en ordre.

Étape 5 - Préparer le nouveau pointage DNS du domaine

Modifier les fichiers de zone DNS de vos domaines afin de les faire pointer vers les nouveaux serveurs.

N’oubliez pas que le changement des enregistrements DNS peut prendre en moyenne 3 heures pour être propagé.