Remarque
L’accès à cette page nécessite une autorisation. Vous pouvez essayer de vous connecter ou de modifier des répertoires.
L’accès à cette page nécessite une autorisation. Vous pouvez essayer de modifier des répertoires.
S’applique à : ✔️ Machines virtuelles Linux ✔️ Machines virtuelles Windows
Note
Les étapes de migration mentionnées dans cet article ne s’appliquent pas aux machines virtuelles d’un groupe à haute disponibilité. Si vous devez déplacer des machines virtuelles dans un groupe à haute disponibilité, consultez Migrer des groupes à haute disponibilité vers Virtual Machine Scale Sets
Cet article explique comment migrer une machine virtuelle Azure d’un déploiement régional (non zonal) vers une zone de disponibilité spécifique dans la même région tout en conservant le nom de la machine virtuelle, les disques de données et d’autres propriétés avec état.
Pour migrer votre machine virtuelle vers une autre région, utilisez Azure Resource Mover.
Important
La migration régionale vers une machine virtuelle zonale est actuellement en préversion publique. Les préversions sont à votre disposition, à condition que vous acceptiez les conditions d’utilisation supplémentaires. Certains aspects de cette fonctionnalité sont susceptibles d’être modifiés avant la mise à disposition générale.
Cette fonctionnalité de migration n’est pas encore disponible dans le portail Azure.
Prerequisites
Avant de commencer, vérifiez que vous disposez des éléments suivants :
- abonnement Azure avec la fonctionnalité de préversion de migration enregistrée
- Rôle contributeur ou supérieur sur le groupe de ressources contenant la machine virtuelle
- Azure CLI 2.72.0 ou version ultérieure, ou Azure PowerShell module Az installé
- Une machine virtuelle régionale (non zonale) existante que vous souhaitez migrer
- La zone de disponibilité cible doit prendre en charge la taille actuelle de la machine virtuelle dans la cible
Inscrire la fonctionnalité d’aperçu
La fonctionnalité de migration nécessite l’inscription. Enregistrez la RegionalToZonalVMMigrationForDeallocatedVM fonctionnalité de préversion pour votre abonnement :
# Set your subscription context
az account set --subscription "<subscription-name-or-id>"
# Register the migration feature
az feature register --namespace Microsoft.Compute --name RegionalToZonalVMMigrationForDeallocatedVM
# Check registration status (wait for "Registered" state)
az feature show --namespace Microsoft.Compute --name RegionalToZonalVMMigrationForDeallocatedVM --query properties.state -o tsv
Note
L’inscription des fonctionnalités peut prendre plusieurs minutes. Attendez que l’état s’affiche Enregistré avant de continuer.
Vue d’ensemble de la migration
Le processus de migration se compose des étapes suivantes :
- Libérer la machine virtuelle - Arrêter et libérer la machine virtuelle régionale
- Mettre à jour l’attribution de zone - Affecter la machine virtuelle à une zone de disponibilité spécifique
- Démarrer la machine virtuelle - Activer la machine virtuelle dans sa nouvelle zone
- Un Virtual Machine Scale Set régional (non zonal) existant, avec un mode d’orchestration flexible
Important
- La machine virtuelle doit être désallouée avant l'affectation de zone. Planifiez les temps d’arrêt en conséquence.
- Les machines virtuelles peuvent être démarrées immédiatement une fois l’affectation de zone terminée.
- La migration est une opération unidirectionnelle. Vous ne pouvez pas migrer une machine virtuelle zonale vers un déploiement régional.
Configurations prises en charge
Chemins de migration
| Source | Target | Description |
|---|---|---|
| Machine virtuelle régionale | Machine virtuelle zonale | Machine virtuelle placée dans une zone de disponibilité spécifique (1, 2 ou 3) |
| Machine virtuelle régionale | Machine virtuelle zonale dans un ensemble à l'échelle de machines virtuelles | Machine virtuelle placée dans une zone et attachée à un ensemble de mise à l'échelle flexible |
| Machine virtuelle régionale dans un groupe de placement de proximité | Machine virtuelle zonale | Machine virtuelle déplacée vers une zone où le groupe de placement par proximité a été supprimé |
Limitations
Les configurations suivantes ne sont pas prises en charge pour la migration :
- Machines virtuelles avec des adresses IP publiques de base - Mettre à niveau vers la référence SKU Standard avant la migration
- Machines virtuelles derrière un Basic Load Balancer - Mise à niveau vers Standard Load Balancer avant la migration
- Machines virtuelles avec disques non managés - Convertir en disques managés avant la migration
Étape 1 : Libérer la machine virtuelle
Avant de mettre à jour l’attribution de zone, la machine virtuelle doit être entièrement désallouée :
az vm deallocate --resource-group "<resource-group-name>" --name "<vm-name>"
Vérifiez que la machine virtuelle est dans l’état Arrêté (désalloué) avant de continuer.
Étape 2 : Mettre à jour l’attribution de zone
Affectez la machine virtuelle à une zone de disponibilité spécifique. Choisissez l’option appropriée en fonction de la configuration de votre machine virtuelle.
Affectation de zone standard
Pour les machines virtuelles qui ne se trouvent pas dans un groupe de placement de proximité :
az vm update \
--resource-group "<resource-group-name>" \
--name "<vm-name>" \
--set zones='["<target-zone>"]'
Affectation de zone avec suppression du groupe de placement de proximité
Si votre machine virtuelle se trouve actuellement dans un groupe de placement de proximité, vous devez supprimer l’association du groupe de placement de proximité pendant l’affectation de zone :
az vm update \
--resource-group "<resource-group-name>" \
--name "<vm-name>" \
--set zones='["<target-zone>"]' \
--ppg ""
Une affectation de zone réussie retourne le code d’état HTTP 200.
Conseil / Astuce
La disponibilité des zones varie selon la région. Pour vérifier quelles zones sont disponibles pour la taille de votre machine virtuelle dans une région spécifique, exécutez :
az vm list-skus --location "<region>" --zone --resource-type virtualMachines --output table
Étape 3 : Démarrer la machine virtuelle
Après l’attribution de zone, la machine virtuelle est dans un état Arrêté (désalloué). Démarrez la machine virtuelle :
az vm start --resource-group "<resource-group-name>" --name "<vm-name>"
Note
Vous pouvez démarrer la machine virtuelle immédiatement après la fin de l’affectation de zone. La migration des données se poursuit de manière transparente en arrière-plan.
Étape 4 (facultative) : rattacher la machine virtuelle à un Virtual Machine Scale Set
Après avoir migré la machine virtuelle vers une zone de disponibilité, vous pouvez éventuellement l’attacher à un groupe de machines virtuelles identiques avec une orchestration flexible pour des fonctionnalités de gestion améliorées telles que la mise à l’échelle automatique et les mises à niveau propagées.
Conditions préalables au rattachement à un Virtual Machine Scale Set
- L'ensemble d’échelle a besoin d'utiliser le mode d’orchestration flexible
- L'ensemble d'échelles doit se trouver dans la même région que la machine virtuelle
- La configuration de zone du Virtual Machine Scale Set doit inclure la zone attribuée à la machine virtuelle
- Pour les Virtual Machine Scale Sets dont le nombre de domaines d’erreur est égal à 1,
singlePlacementGroupdoit être défini surfalse
Une machine virtuelle régionale ne possède pas de propriété virtualMachineScaleSet exploitable ; utilisez donc az resource update afin de corriger la propriété sous forme d’objet JSON sur la ressource de machine virtuelle sous-jacente :
az resource update \
--ids "/subscriptions/<subscription-id>/resourceGroups/<resource-group-name>/providers/Microsoft.Compute/virtualMachines/<vm-name>" \
--set 'properties.virtualMachineScaleSet={"id":"/subscriptions/<subscription-id>/resourceGroups/<resource-group-name>/providers/Microsoft.Compute/virtualMachineScaleSets/<scale-set-name>"}'
Vérifier la migration
Après la migration, vérifiez que la machine virtuelle s’exécute dans la zone de disponibilité correcte :
az vm show --resource-group "<resource-group-name>" --name "<vm-name>" --query "{Name:name, Zone:zones[0], Location:location}" --output table
Résolution des problèmes
Taille de machine virtuelle non disponible dans la zone
Erreur:The requested VM size is not available in the specified location/zone
Solution: Vérifiez les tailles de machine virtuelle disponibles dans la zone cible :
az vm list-skus --location "<region>" --zone "<zone>" --resource-type virtualMachines --output table
Envisagez de modifier la taille de machine virtuelle avant la migration si la taille actuelle n’est pas disponible dans la zone cible.
Conflit de groupe de placement de proximité
Erreur:Cannot assign zone to a VM in a Proximity Placement Group
Solution: Utilisez l’attribution de zone avec l’option de suppression du groupe de placement de proximité décrite à l’étape 2. Cette opération supprime l’association au groupe de placement de proximité tout en attribuant la zone en une seule opération.
Autorisations insuffisantes
Erreur:The client does not have authorization to perform action
Solution: Vérifiez que vous disposez d’un rôle Contributeur ou supérieur sur le groupe de ressources.
L’association au groupe de machines virtuelles échoue après l’attribution de la zone
Erreur:Cannot attach VM to the specified Virtual Machine Scale Set
Solution: Vérifiez les éléments suivants :
- L'ensemble de mise à l'échelle utilise le mode d’orchestration Flexible
- La configuration de zone du groupe de machines virtuelles comprend la zone associée à la machine virtuelle
- Pour les groupes de machines virtuelles dont le nombre de domaines d’erreur est égal à 1,
singlePlacementGroupest défini surfalse
az vmss show --resource-group "<resource-group-name>" --name "<scale-set-name>" --query "{Zones:zones, OrchestrationMode:orchestrationMode, SinglePlacementGroup:singlePlacementGroup}"
Étapes suivantes
- Que sont les zones de disponibilité Azure ?
- Service de zone de disponibilité et prise en charge régionale
- Que sont les groupes de machines virtuelles identiques ?
- Modes d'orchestration pour les ensembles d'échelle de machines virtuelles