Migrer une VM Linux vers le Cloud OUTSCALE
Vous pouvez migrer une machine virtuelle (VM) Linux VMWare, VirtualBox ou Amazon Web Services (AWS) vers une VM Linux OUTSCALE. Pour en savoir plus sur les machines virtuelles (VM) OUTSCALE, voir À propos des VM.
Les procédures suivantes sont des instructions génériques que vous pouvez suivre selon votre situation. Vous pouvez les ajustez selon vos besoins.
Migrer la VM depuis VMWare ou VirtualBox
Avant de commencer : Assurez-vous d’avoir :
|
-
Créez une VM Linux OUTSCALE. Pour en savoir plus, voir Créer des VM.
-
Attachez deux volumes xvdb et xvdc à cette VM. Pour en savoir plus, voir Attacher un volume à une VM.
Vous pouvez augmenter la vitesse de la copie en utilisant un volume
io1
. -
Formatez le volume xvdb au format ext4 :
$ mkfs -t ext4 /dev/xvdb
-
Créez le point de montage :
$ mkdir -p /mnt/source
-
Montez le volume xvdb :
$ mount /dev/xvdb /mnt/source
Le volume est monté.
-
Copiez le volume principal de votre VM Linux non OUTSCALE vers le volume de votre VM Linux OUTSCALE en utilisant la commande suivante :
$ scp -i keypair.rsa convertible.vmdk user@outscale_ip:/mnt/source
Le nom de l’utilisateur par défaut dépend de l’OMI utilisée :
-
outscale
pour les OMI Ubuntu 18 et Centos 7 publiées depuis le 20 décembre 2018 -
ubuntu
pour les OMI Ubuntu plus anciennes -
centos
pour les OMI Centos 7 et OMI Centos 6 plus anciennes
Le volume est copié.
-
-
Installez le package qemu and et convertissez vos fichiers :
$ qemu-img convert -f vmdk /mnt/source/convertible.vmdk -O raw /mnt/source/converted.raw
-
Copiez vos fichiers vers la partition cible (le volume /dev/xvdc) bit par bit :
$ dd if=/root/converted.raw of=/dev/xvdc bs=16k status=progress
Les fichiers de votre VM Linux non OUTSCALE sont migrés vers la VM Linux OUTSCALE.
Migrer la VM depuis AWS
Avant de commencer : Assurez-vous d’avoir :
|
-
Créez une VM Linux OUTSCALE. Pour en savoir plus, voir Créer des VM.
-
Attachez deux volumes xvdb et xvdc à cette VM. Pour en savoir plus, voir Attacher un volume à une VM.
Vous pouvez augmenter la vitesse de la copie en utilisant un volume
io1
. -
Formatez le volume xvdb au format ext4 :
$ mkfs -t ext4 /dev/xvdb
-
Créez le point de montage :
$ mkdir -p /mnt/source
-
Montez le volume xvdb :
$ mount /dev/xvdb /mnt/source
Le volume est monté.
-
Créez une autre VM Linux AWS.
-
Attachez le bootdisk de votre nouvelle VM Linux AWS à la VM que vous voulez migrer.
Si vous n’attachez pas le bootdisk, l’accès r/w est demandé pendant la copie et ralentit le processus
Le bootdisk est attaché.
-
Ajoutez un troisième volume à la VM Linux AWS.
-
Compressez les volumes de la VM Linux AWS dans un fichier au format zip, en utilisant les commandes suivantes :
$ sudo chown -r ec2-user:root /mnt $ sudo mkfs -t ext4 /dev/hdc $ sudo mount /dev/hdc $ sudo dd if=/dev/hdb | gzip -c > /mnt/aws.raw
Le volume est compressé dans un fichier zip.
-
Copiez le fichier aws.raw reçu depuis la VM Linux AWS dans la VM Linux OUTSCALE :
$ scp -i keypair.rsa aws.raw user@outscale_ip:/mnt/source
Le nom de l’utilisateur par défaut dépend de l’OMI utilisée :
-
outscale
pour les OMI Ubuntu 18 et Centos 7 publiées depuis le 20 décembre 2018 -
ubuntu
pour les OMI Ubuntu plus anciennes -
centos
pour les OMI Centos 7 et OMI Centos 6 plus anciennes
Le fichier est copié.
-
-
Décompressez les données :
$ gunzip -c /mnt/source/aws.raw > /dev/xvdc
Les fichiers de votre VM Linux AWS sont migrés vers la VM Linux OUTSCALE.
Configurer la VM Linux migrée
Faire un chroot sur la partition
-
Créez le point de montage/target :
$ mkdir -p /mnt/target
-
Tapez les commandes suivantes pour monter les différents fichiers obligatoires, où X est le numéro de la partition contenant le système d’exploitation :
$ mount /dev/xvdcX /mnt/target $ mount --rbind /dev /mnt/target/dev $ mount -t proc /proc /mnt/target/proc $ mount --rbind /sys /mnt/target/sys
-
Créez le nouveau chemin :
$ export PATH=$PATH:/bin:/sbin
-
Faites un chroot sur la partition que vous avez créée :
$ chroot /mnt/target
Le chroot est fait sur la partition.
Autoriser l’identification en root
Autorisez l’identification en root uniquement avec SSH et une clé dans /etc/ssh_config
.
Configurer GRUB
-
Changez la configuration de GRUB (peut être en grub2 si celui-ci est appliqué) :
$ /boot/grub/grub.cfg
-
Vérifiez les paramètres de GRUB dans le fichier
/etc/default/grub
.-
Vérifiez si le nom du volume est vda au lieu de sda ou hda. Si ce n’est pas le cas, changez-le.
-
Ajoutez les options suivantes à votre ligne kernel dans GRUB :
$ GRUB_CMDLINE_LINUX_DEFAULT="elevator=deadline console=tty0 console=ttyS0,38400n8"
GRUB est modifié.
-
-
Appliquez la configuration de GRUB :
$ grub-mkconfig
-
Installez la nouvelle configuration de GRUB :
$ grub-install
Vérifier les derniers éléments
-
Vérifiez si les noms de volumes sont alignés dans le dossier
/etc/fstab
. -
Mettez en place le package de règles udev. Pour en savoir plus, voir Installer les packages pour les noms de périphériques Linux.
-
Si votre
/etc/rc.local
ne contient pas la clé SSH, utilisez le script suivant pour rafraîchir le fichierauthorized_keys
:$ sed -i '/^exit 0/d' /etc/rc.local cat >> /etc/rc.local <<EOF /bin/mkdir -p /root/.ssh #LINE_TO_STRIP wget http://169.254.169.254/latest/meta-data/public-keys/0/openssh-key -O - > /root/.ssh/authorized_keys /bin/chmod 700 /root/.ssh -R wget http://169.254.169.254/latest/meta-data/local-hostname -O - | cut -d '.' -f 1 > /etc/hostname; #LINE_TO_STRIP hostname -F /etc/hostname #LINE_TO_STRIP sed -i '/^.*LINE_TO_STRIP.*$/d' /etc/rc.local; #LINE_TO_STRIP EOF
-
Nettoyez les éléments sensibles de votre VM. Pour en savoir plus, voir Nettoyage des VM Linux pour créer des OMI.
Vous pouvez vérifier le nettoyage avec soit
yum -y clean all
, soitapt-get -y clean all
.
Démarrer la VM
-
Vérifiez et nettoyez les programmes autorisés au démarrage à l’exception du
ssh
. -
Créez un snapshot de votre volume. Pour en savoir plus, voir Créer un snapshot d’un volume.
Votre snapshot est créé. -
Créez une OUTSCALE machine image (OMI) à partir du snapshot que vous avez créé. Pour en savoir plus, voir Créer une OMI depuis un snapshot.
L’OMI est créée. -
Créez la VM depuis l’OMI que vous avez créée. Pour en savoir plus, voir Créer des VM.
Pages connexes
AWS™ et Amazon Web Services™ sont des marques de commerce d’Amazon Technologies, Inc. ou de ses affiliées aux États-Unis et/ou dans les autres pays.