1.4. Convertir la imagen a un formato VHD fijo
Todas las imágenes de Microsoft Azure VM deben estar en un formato fijo VHD. La imagen debe estar alineada en un límite de 1 MB antes de ser convertida a VHD. Esta sección describe cómo convertir la imagen de qcow2 a un formato fijo de VHD y alinear la imagen, si es necesario. Una vez que haya convertido la imagen, puede subirla a Azure.
Procedimiento
Convierte la imagen de
qcow2al formatoraw.$ qemu-img convert -f qcow2 -O raw <image-name>.qcow2 <image-name>.rawCree un script de shell con el contenido que se indica a continuación.
#!/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_sizeEjecute el script. Este ejemplo utiliza el nombre
align.sh.$ sh align.sh <image-xxx>.raw- Si aparece el mensaje "Your image is already aligned. You do not need to resize.", continúe con el siguiente paso.
- Si aparece un valor, su imagen no está alineada.
Utilice el siguiente comando para convertir el archivo a un formato fijo
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>.vhdUna vez convertido, el archivo
VHDestá listo para subir a Azure.
Aligning the image
Complete los siguientes pasos sólo si el archivo raw no está alineado.
Cambie el tamaño del archivo
rawutilizando el valor redondeado que se muestra al ejecutar el script de verificación.$ qemu-img resize -f raw <image-xxx>.raw <rounded-value>Convierte el archivo de imagen
rawa un formatoVHD.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>.vhdUna vez convertido, el archivo
VHDestá listo para subir a Azure.