4.7. Conversion de l'image en un format VHD fixe
Toutes les images Microsoft Azure VM doivent être dans un format fixe VHD
. L'image doit être alignée sur une limite de 1 Mo avant d'être convertie en VHD. Pour convertir l'image de qcow2
à un format fixe VHD
et aligner l'image, voir la procédure suivante. Une fois l'image convertie, vous pouvez la télécharger vers Azure.
Procédure
Convertir l'image du format
qcow2
au formatraw
.$ qemu-img convert -f qcow2 -O raw <image-name>.qcow2 <image-name>.raw
Créez un script shell en utilisant le contenu ci-dessous.
#!/bin/bash MB=$((1024 * 1024)) size=$(qemu-img info -f raw --output json "$1" | gawk 'match($0, /"virtual-size": ([0-9]+),/, val) {print val[1]}') rounded_size=$((($size/$MB + 1) * $MB)) if [ $(($size % $MB)) -eq 0 ] then echo "Your image is already aligned. You do not need to resize." exit 1 fi echo "rounded size = $rounded_size" export rounded_size
Exécutez le script. Cet exemple utilise le nom
align.sh
.$ sh align.sh <image-xxx>.raw
- Si le message "Your image is already aligned. You do not need to resize." s'affiche, passez à l'étape suivante.
- Si une valeur s'affiche, votre image n'est pas alignée.
Utilisez la commande suivante pour convertir le fichier en un format fixe
VHD
.The sample uses qemu-img version 2.12.0.
$ qemu-img convert -f raw -o subformat=fixed,force_size -O vpc <image-xxx>.raw <image.xxx>.vhd
Une fois converti, le fichier
VHD
est prêt à être téléchargé sur Azure.Si l'image
raw
n'est pas alignée, procédez comme suit pour l'aligner.Redimensionnez le fichier
raw
en utilisant la valeur arrondie affichée lors de l'exécution du script de vérification.$ qemu-img resize -f raw <image-xxx>.raw <rounded-value>
Convertir le fichier image
raw
au formatVHD
.The sample uses qemu-img version 2.12.0.
$ qemu-img convert -f raw -o subformat=fixed,force_size -O vpc <image-xxx>.raw <image.xxx>.vhd
Une fois converti, le fichier
VHD
est prêt à être téléchargé sur Azure.