Ejercicio: Ajuste de tamaño de las máquinas virtuales correctamente
Las máquinas virtuales deben tener el tamaño adecuado para el trabajo que se espera. Una máquina virtual sin la cantidad correcta de memoria o de CPU generará un error en la carga o se ejecutará muy lentamente y no será eficaz.
Tamaños de máquina virtual predefinidos
Al crear una máquina virtual, puede proporcionar un valor de tamaño de máquina virtual que determine la cantidad de recursos de proceso dedicados a la máquina virtual, incluida la CPU, la GPU y la memoria disponibles para la máquina virtual de Azure.
Azure define un conjunto de tamaños de máquina virtual predefinidos para Linux y Windows de los cuales elegir según el uso previsto.
Tipo | Tamaños | Descripción |
---|---|---|
Uso general | Dsv3, Dv3, DSv2, Dv2, DS, D, Av2, A0-7 | Uso equilibrado de CPU y memoria. Ideal para desarrollo/pruebas, así como para soluciones de datos y aplicaciones de tamaño pequeño a mediano. |
Proceso optimizado | Fs, F | Uso elevado de la CPU respecto a la memoria. Adecuado para aplicaciones, dispositivos de red y procesos por lotes con tráfico mediano. |
Memoria optimizada | Esv3, Ev3, M, GS, G, DSv2, DS, Dv2, D | Uso elevado de memoria respecto al núcleo. Excelente para bases de datos relacionales, memorias caché de capacidad de mediana a grande y análisis en memoria. |
Almacenamiento optimizado | Ls | Alto rendimiento de disco y E/S. Perfecto para macrodatos y bases de datos SQL y NoSQL. |
GPU optimizada | NV, NC | Máquinas virtuales especializadas específicas para actividades intensas de representación de gráficos y edición de vídeo. |
Alto rendimiento | H, A8-11 | Nuestras máquinas virtuales con CPU más eficaces e interfaces de red de alto rendimiento (RDMA) opcionales. |
Los tamaños disponibles cambian en función de la región en la que se crea la máquina virtual. Puede obtener una lista de los tamaños disponibles con el comando vm list-sizes
. Pruebe a escribir el siguiente comando en Azure Cloud Shell:
az vm list-sizes --location eastus --output table
Esta es una respuesta abreviada para eastus
:
MaxDataDiskCount MemoryInMb Name NumberOfCores OsDiskSizeInMb ResourceDiskSizeInMb
------------------ ------------ ---------------------- --------------- ---------------- ----------------------
2 2048 Standard_B1ms 1 1047552 4096
2 1024 Standard_B1s 1 1047552 2048
4 8192 Standard_B2ms 2 1047552 16384
4 4096 Standard_B2s 2 1047552 8192
8 16384 Standard_B4ms 4 1047552 32768
16 32768 Standard_B8ms 8 1047552 65536
4 3584 Standard_DS1_v2 1 1047552 7168
8 7168 Standard_DS2_v2 2 1047552 14336
16 14336 Standard_DS3_v2 4 1047552 28672
32 28672 Standard_DS4_v2 8 1047552 57344
64 57344 Standard_DS5_v2 16 1047552 114688
....
64 3891200 Standard_M128-32ms 128 1047552 4096000
64 3891200 Standard_M128-64ms 128 1047552 4096000
64 3891200 Standard_M128ms 128 1047552 4096000
64 2048000 Standard_M128s 128 1047552 4096000
64 1024000 Standard_M64 64 1047552 8192000
64 1792000 Standard_M64m 64 1047552 8192000
64 2048000 Standard_M128 128 1047552 16384000
64 3891200 Standard_M128m 128 1047552 16384000
Especificación de un tamaño durante la creación de una máquina virtual
No se especificó un tamaño al crear la máquina virtual, por lo que Azure seleccionó un tamaño de uso general predeterminado de forma automática. Pero se puede especificar el tamaño como parte del comando vm create
con el parámetro --size
. Por ejemplo, puede usar el comando siguiente para crear una máquina virtual de dos núcleos:
az vm create \
--resource-group "<rgn>[sandbox resource group name]</rgn>" \
--name SampleVM2 \
--image Ubuntu2204 \
--admin-username azureuser \
--generate-ssh-keys \
--verbose \
--size "Standard_DS2_v2"
Advertencia
Su nivel de suscripción aplica límites al número de recursos que puede crear, así como al tamaño total de esos recursos. Los límites de cuota dependen del tipo y la región de la suscripción. La CLI de Azure le informa de cuándo se excede este límite con un error de Cuota superada. Si se encuentra con este error en su propia arquitectura de pago, puede solicitar un aumento en el límite asociado a su suscripción de pago (hasta 10 000 vCPU) mediante una solicitud en línea gratuita.
Cambio del tamaño de una máquina virtual existente
También se puede cambiar el tamaño de una máquina virtual existente si la carga de trabajo cambia o si se especificó un tamaño incorrecto durante la creación. Vamos a usar la primera máquina virtual que creamos, SampleVM. Antes de solicitar un cambio de tamaño, hay que comprobar si el tamaño que se quiere está disponible en el clúster del que forma parte nuestra máquina virtual. Podemos usar el comando vm list-vm-resize-options
:
az vm list-vm-resize-options \
--resource-group "<rgn>[sandbox resource group name]</rgn>" \
--name SampleVM \
--output table
Este comando devuelve una lista de todas las configuraciones de tamaño posibles disponibles en el grupo de recursos. Si el tamaño que se quiere no está disponible en el clúster, pero está disponible en la región, se puede desasignar la máquina virtual. Este comando detiene la máquina virtual en ejecución y la quita del clúster actual sin perder ningún recurso. Después, podemos cambiar el tamaño. Este proceso vuelve a crear la máquina virtual en un nuevo clúster donde la configuración de tamaño esté disponible.
Nota:
El espacio aislado de Microsoft Learn está limitado a unos pocos tamaños de máquina virtual.
Para cambiar el tamaño de una máquina virtual, usaremos el comando vm resize
. Por ejemplo, puede que encontremos que nuestra máquina virtual es suficientemente eficaz para la tarea que deseamos que realizar. Podríamos mejorarla a D2s_v3, que tiene 2 núcleos virtuales y 8 GB de memoria. Escriba este comando en Cloud Shell:
az vm resize \
--resource-group "<rgn>[sandbox resource group name]</rgn>" \
--name SampleVM \
--size Standard_D2s_v3
Este comando tarda unos minutos en reducir los recursos de la máquina virtual y, cuando finaliza, devuelve una nueva configuración de JSON.