Implementación de máquinas virtuales de Spot con la CLI de AzureDeploy Spot VMs using the Azure CLI

El uso de máquinas virtuales de Azure Spot permite aprovechar las ventajas de nuestra capacidad no utilizada con un importante ahorro en los costos.Using Azure Spot VMs allows you to take advantage of our unused capacity at a significant cost savings. Siempre que Azure necesite recuperar la capacidad, su infraestructura expulsará las máquinas virtuales de Spot.At any point in time when Azure needs the capacity back, the Azure infrastructure will evict Spot VMs. Por lo tanto, estas son excelentes para cargas de trabajo que soportan interrupciones, como los trabajos de procesamiento por lotes, los entornos de desarrollo y pruebas, las grandes cargas de trabajo de proceso, etc.Therefore, Spot VMs are great for workloads that can handle interruptions like batch processing jobs, dev/test environments, large compute workloads, and more.

Los precios de las máquinas virtuales de Spot varían en función de la región y la SKU.Pricing for Spot VMs is variable, based on region and SKU. Para más información, consulte precios de las máquinas virtuales para Linux y Windows.For more information, see VM pricing for Linux and Windows.

Puede establecer el precio máximo por hora que esté dispuesto por la máquina virtual.You have option to set a max price you are willing to pay, per hour, for the VM. El precio máximo de una máquina virtual de Spot se puede establecer en dólares estadounidenses (USD), con un máximo de 5 decimales.The max price for a Spot VM can be set in US dollars (USD), using up to 5 decimal places. Por ejemplo, el valor 0.98765 correspondería a un precio máximo de 0,98765 USD por hora.For example, the value 0.98765would be a max price of $0.98765 USD per hour. Si establece el precio máximo en -1, la máquina virtual no se expulsará por precio.If you set the max price to be -1, the VM won't be evicted based on price. El precio de la máquina virtual será el actual de Spot o el de una máquina virtual estándar, el menor de los dos, siempre que haya capacidad y cuota disponibles.The price for the VM will be the current price for Spot or the price for a standard VM, which ever is less, as long as there is capacity and quota available. Para más información sobre la configuración del precio máximo, consulte Máquinas virtuales de Spot - Precios.For more information about setting the max price, see Spot VMs - Pricing.

El proceso de creación de una máquina virtual con la CLI de Azure es el mismo que el que se detalla en el artículo de inicio rápido.The process to create a VM with Spot using the Azure CLI is the same as detailed in the quickstart article. Tan solo agregue el parámetro "--priority Spot", establezca --eviction-policy en Desasignar (este es el valor predeterminado) o en Delete e indique un precio máximo o -1.Just add the '--priority Spot' parameter, set the --eviction-policy to either Deallocate (this is the default) or Delete, and provide a max price or -1.

Instalación de la CLI de AzureInstall Azure CLI

Para crear máquinas virtuales de Spot, debe ejecutar la versión 2.0.74 o posterior de la CLI de Azure.To create Spot VMs, you need to be running the Azure CLI version 2.0.74 or later. Para saber qué versión tiene, ejecute el comando az --version.Run az --version to find the version. Si necesita instalarla o actualizarla, consulte Instalación de la CLI de Azure.If you need to install or upgrade, see Install the Azure CLI.

Inicie sesión en Azure mediante az login.Sign in to Azure using az login.

az login

Creación de una máquina virtual de SpotCreate a Spot VM

En este ejemplo se muestra cómo implementar una máquina virtual de Spot en Linux que no se expulse por precio.This example shows how to deploy a Linux Spot VM that will not be evicted based on price. La directiva de expulsión se establece para desasignar la VM, de modo que se pueda reiniciar en otro momento.The eviction policy is set to deallocate the VM, so that it can be restarted at a later time. Si quiere eliminar la VM y el disco subyacente cuando se expulsa la VM, establezca --eviction-policy en Delete.If you want to delete the VM and the underlying disk when the VM is evicted, set --eviction-policy to Delete.

az group create -n mySpotGroup -l eastus
az vm create \
    --resource-group mySpotGroup \
    --name myVM \
    --image UbuntuLTS \
    --admin-username azureuser \
    --generate-ssh-keys \
    --priority Spot \
    --max-price -1 \
    --eviction-policy Deallocate

Una vez creada la máquina virtual, puede realizar una consulta para ver el precio máximo de facturación de todas las máquinas virtuales del grupo de recursos.After the VM is created, you can query to see the max billing price for all of the VMs in the resource group.

az vm list \
   -g mySpotGroup \
   --query '[].{Name:name, MaxPrice:billingProfile.maxPrice}' \
   --output table

Simulación de una expulsiónSimulate an eviction

Puede simular una expulsión de una VM de Spot para probar de qué manera la aplicación responderá a una expulsión repentina.You can simulate an eviction of a Spot VM, to testing how well your application will repond to a sudden eviction.

Reemplazar lo siguiente por su propia información:Replace the following with your information:

  • subscriptionId
  • resourceGroupName
  • vmName
POST https://management.azure.com/subscriptions/{subscriptionId}/resourceGroups/{resourceGroupName}/providers/Microsoft.Compute/virtualMachines/{vmName}/simulateEviction?api-version=2020-06-01

Pasos siguientesNext steps

También puede crear una VM de Spot con Azure PowerShell, el portal o una plantilla.You can also create a Spot VM using Azure PowerShell, portal, or a template.

Consulte la información sobre precios con la API de precios de venta directa de Azure para conocer los precios de Spot.Query current pricing information using the Azure retail prices API for information about Spot pricing. Tanto meterName como skuName contendrán Spot.The meterName and skuName will both contain Spot.

Si se produce un error, consulte Códigos de error.If you encounter an error, see Error codes.