Migrer une instance Compute et son volume Block Storage d'une Local Zone vers une région 1-AZ ou 3-AZ
Découvrez comment migrer une instance Public Cloud et son volume Block Storage attaché d'une Local Zone vers une région 1-AZ ou 3-AZ, à l'aide de la CLI OpenStack
Objectif
Une Local Zone et une région 1-AZ ou 3-AZ sont deux régions OpenStack distinctes. Une instance ou un volume ne peut pas être déplacé directement de l'une vers l'autre : exportez les deux sous forme d'images, puis réimportez-les et recréez-les dans la région cible.
Ce guide explique comment migrer une instance Compute et son volume Block Storage attaché d'une Local Zone vers une région 1-AZ ou 3-AZ, à l'aide de la CLI OpenStack.
Il est illustré par l'exemple suivant :
- Une instance
b3-16s'exécutant dans la Local Zone de Milan (EU-SOUTH-LZ-MIL-A), avec un volume Block Storage attaché. - Les deux sont migrés vers la région 3-AZ de Milan (
EU-SOUTH-MIL).
Les mêmes étapes s'appliquent à toute autre Local Zone et à sa région 1-AZ ou 3-AZ parente.
Avant de migrer, il est utile de bien comprendre les différences entre les modes de déploiement proposés par le Public Cloud OVHcloud. Chaque mode (1-AZ, 3-AZ ou Local Zones) a un impact direct sur la résilience, la disponibilité et la conception de votre infrastructure.
Pour en savoir plus, consultez « Comparaison et résilience des modes de déploiement - Comprendre les régions 3-AZ / 1-AZ / Local Zones ».
Prérequis
- Une instance et un volume Block Storage s'exécutant dans une Local Zone, dans le même projet Public Cloud que la région 1-AZ ou 3-AZ cible.
- La CLI OpenStack, installée et prête à l'emploi. Suivez notre guide « Préparer l'environnement pour utiliser l'API OpenStack » si ce n'est pas déjà le cas.
- Suffisamment d'espace disque local pour stocker temporairement l'image exportée et la sauvegarde de volume (au moins la taille du disque système de l'instance plus la taille du volume).
Accès à l'espace client OVHcloud
- Lien direct :
- Pour accéder à vos services :
Public Cloud> Sélectionnez votre projet
En pratique
Récupérer les identifiants OpenStack pour les deux régions
Vous avez besoin d'identifiants OpenStack (un fichier OpenRC) pour les deux régions, la Local Zone source et la région 1-AZ ou 3-AZ cible : ce sont deux régions d'un même projet OpenStack.
Pour télécharger un fichier OpenRC :
- Sous la rubrique Paramètres, ouvrez
Utilisateurs & Rôles. - À côté de l'utilisateur de votre choix, cliquez sur le bouton
..., puis sélectionnezTélécharger le fichier RC d'OpenStack. - Dans la boîte de dialogue, sélectionnez d'abord votre Local Zone (par exemple
Milan (EU-SOUTH-LZ-MIL-A)), puis cliquez surTélécharger. - Répétez l'opération, cette fois en sélectionnant la région 1-AZ ou 3-AZ correspondante (par exemple
EU-SOUTH-MIL).
Un fichier OpenRC fixe un seul utilisateur et une seule région, via la variable OS_REGION_NAME qu'il exporte. Les deux régions appartiennent au même projet OpenStack, et les mêmes identifiants s'appliquent donc à l'une comme à l'autre : pour changer de région, chargez l'autre fichier, ou redéfinissez cette variable dans le shell courant (export OS_REGION_NAME=EU-SOUTH-MIL).
Consultez notre guide « Charger les variables d'environnement OpenStack » pour savoir comment charger un fichier OpenRC.
Vue d'ensemble de la migration
Pour l'instance Compute :
- Créer une image à partir de l'instance de la Local Zone (cette image n'inclut pas les volumes attachés).
- Exporter et télécharger cette image.
- Téléverser l'image vers la région 1-AZ ou 3-AZ.
- Créer une nouvelle instance à partir de cette image.
Pour le volume Block Storage :
- Détacher le volume de l'instance.
- Créer une sauvegarde du volume de la Local Zone.
- Exporter et télécharger cette sauvegarde sous forme d'image.
- Téléverser l'image vers la région 1-AZ ou 3-AZ.
- Créer un nouveau volume à partir de cette image, et l'attacher à l'instance migrée.
Pour garantir la cohérence des données, il est recommandé d'éteindre l'instance source avant de démarrer la migration.
Préparer l'instance et le volume source
Chargez le fichier OpenRC de la Local Zone source, puis identifiez l'instance et le volume à migrer :
Un volume ne peut être sauvegardé que s'il est détaché (statut available). Détachez-le de l'instance — le premier argument est le serveur, le second le volume, et ils portent ici le même nom test-LZ-MIL :
Partie 1 — Migrer l'instance Compute
Étape 1 : créer une image de l'instance
L'option --wait fait en sorte que la commande ne se termine qu'une fois l'image active. Vous pouvez également vérifier son statut séparément :
Cette image ne capture que le disque système de l'instance — les volumes Block Storage attachés ne sont pas inclus et doivent être migrés séparément (voir Partie 2).
Étape 2 : exporter et télécharger l'image
Les images stockées dans une Local Zone ne peuvent pas être téléchargées directement avec openstack image save. Contactez notre support et demandez l'export de l'image — vous recevrez une URL S31 présignée pour la télécharger.
Une fois le fichier téléchargé, décompressez-le si nécessaire.
Si vous avez déjà créé la sauvegarde du volume (voir Partie 2, Étape 6), vous pouvez demander au support d'exporter en une seule fois l'image de l'instance et la sauvegarde du volume, pour éviter un second aller-retour.
Étape 3 : téléverser l'image vers la région cible
Chargez le fichier OpenRC de la région 1-AZ ou 3-AZ cible (ou basculez en définissant OS_REGION_NAME sur celle-ci, ici EU-SOUTH-MIL), puis téléversez l'image :
Le format du disque doit être raw, et non qcow2. Selon la taille de l'image, le téléversement peut prendre un certain temps — laissez-le se terminer.
Étape 4 : créer l'instance dans la région cible
Créez la nouvelle instance à partir de l'image chargée :
- Choisissez un flavor dont le disque système est au moins aussi grand que celui de l'instance source. Dans cet exemple,
b3-16dispose d'un disque système de 100 Go et est disponible avec des caractéristiques identiques en Local Zone comme en 3-AZ. - Indiquez la zone de disponibilité dans laquelle l'instance doit être créée. Une région 1-AZ ne compte qu'une seule zone de disponibilité :
--availability-zoney est donc facultatif. Une région 3-AZ en compte 3 : choisissez-en une explicitement. - Le groupe de sécurité
defaultexiste déjà dans chaque projet et suffit pour démarrer ; personnalisez-le plus tard si besoin en suivant le guide « Créer et configurer un groupe de sécurité dans Horizon ». - Si vous n'avez pas encore de paire de clés SSH (ici
my_key), créez-en une en suivant la section Création de paires de clés pour les connexions OpenSSH du guide « Comment créer et utiliser des clés d'authentification pour les connexions SSH aux instances Public Cloud ». - L'instance a besoin d'un réseau existant (ici
test-3AZ-MIL). Pour en créer un avec une Gateway via la CLI OpenStack, suivez la section Créer un réseau privé avec une Gateway du guide « Créer un réseau privé avec une Gateway ». - Pour joindre l'instance depuis Internet, attachez une Floating IP en suivant la section Depuis l'API OpenStack (sous « Attacher une Floating IP à une instance ») du guide « Attacher une adresse Floating IP à une instance Public Cloud ».
Attendez que l'instance atteigne le statut ACTIVE :
Étape 5 : à propos du premier démarrage
Le volume n'a pas encore été migré, le démarrage ne peut donc pas se terminer : le journal de la console affichera le système en attente du disque manquant, avant de basculer en mode d'urgence (emergency mode). C'est normal — cela confirme que l'image elle-même est correcte.
Poursuivez avec la migration du volume ci-dessous, puis attachez le volume et redémarrez l'instance — le démarrage se terminera alors normalement.
Si votre fstab monte le volume par nom de périphérique (par exemple /dev/vdb) plutôt que par LABEL ou UUID, ce nom peut différer une fois le volume rattaché, et le démarrage peut échouer à nouveau. Dans cet exemple, le volume passe de /dev/sdb en Local Zone à /dev/vdb en région 3-AZ. Utiliser LABEL= dans fstab évite ce problème. Si l'instance est déjà injoignable, démarrez-la en mode rescue pour corriger fstab.
Partie 2 — Migrer le volume Block Storage
Le volume doit encore être détaché (statut available), comme indiqué à la section « Préparer l'instance et le volume source ».
La partie 1 s'est terminée sur la région cible : rebasculez sur la Local Zone source. La commande ci-dessous et l'étape 6 s'exécutent sur celle-ci, et l'étape 8 revient à la région cible.
Relevez la classe de stockage du volume source — vous la reprendrez pour le nouveau volume à l'étape 9 :
Étape 6 : sauvegarder le volume
Vérifiez que la sauvegarde est available :
Étape 7 : exporter et télécharger la sauvegarde
Comme pour l'image de l'instance, contactez notre support et demandez l'export de la sauvegarde du volume sous forme d'image. Vous recevrez une URL S3 présignée pour la télécharger, et pourrez décompresser le fichier si nécessaire.
Étape 8 : téléverser l'image de sauvegarde vers la région cible
Une fois revenu sur la région 1-AZ ou 3-AZ cible :
Le format du disque doit être raw, et non qcow2. Selon la taille de l'image, le téléversement peut prendre un certain temps — laissez-le se terminer.
Étape 9 : créer le volume à partir de l'image
Créez le volume avec la classe de stockage relevée au début de la Partie 2 (ici classic), sauf si vous souhaitez délibérément en changer — la classe de stockage affecte à la fois la performance et la facturation :
--sizedoit être au moins égal à la taille du volume d'origine.--availability-zonedoit correspondre à la zone de disponibilité de l'instance si vous utilisez la classe de stockagehigh-speedouhigh-speed-gen2. En région 1-AZ, une seule valeur est possible ; en région 3-AZ, reprenez la zone choisie pour l'instance à l'étape 4.
Attendez que le volume soit available :
Étape 10 : attacher le volume et redémarrer l'instance
Arrêtez l'instance, attachez le volume, puis redémarrez-la :
Attendez que l'instance atteigne l'état SHUTOFF. Comme dans la région source, le premier argument de server add volume est le serveur, le second le volume — ils portent ici le même nom test-3AZ-MIL :
Comme fstab référence le volume par LABEL, le système le détecte et le monte automatiquement, et le démarrage se termine :
L'instance et son volume Block Storage sont migrés vers la région cible.
Aller plus loin
Migration d'instances entre zones de disponibilité (AZ)
Télécharger et transférer la sauvegarde d'une instance d'une région OpenStack à une autre
Local Zone Compute - Fonctionnalités, capacités et limites
Échangez avec notre communauté d'utilisateurs.
1 : S3 est une marque déposée appartenant à Amazon Technologies, Inc. Les services de OVHcloud ne sont pas sponsorisés, approuvés, ou affiliés de quelque manière que ce soit.