Usare Azure Spot Virtual Machines
Si applica a: ✔️ macchine virtuali Linux ✔️ macchine virtuali Windows ✔️ set di scalabilità flessibili ✔️ set di scalabilità uniformi
L'uso delle Azure Spot Virtual Machines consente di sfruttare la capacità inutilizzata con un notevole risparmio sui costi. Ogni volta che Azure necessita di nuovo di capacità, l'infrastruttura di Azure eliminerà le macchine virtuali di Azure Spot Virtual Machines. Le macchine virtuali di Azure Spot Virtual Machines sono pertanto ideali per i carichi di lavoro in grado di gestire le interruzioni, come i processi di elaborazione batch, gli ambienti di sviluppo/test, i carichi di lavoro di calcolo di grandi dimensioni e altro ancora.
La quantità di capacità disponibile dipende dalle dimensioni, dall'area, dal momento della giornata e da altri fattori. Quando si distribuisce Azure Spot Virtual Machines, Azure alloca le macchine virtuali se c'è capacità disponibile, ma non esiste alcun contratto di servizio per queste macchine virtuali. Una macchina virtuale di Azure Spot Virtual Machines non offre garanzie di disponibilità elevata. Quando, in qualsiasi momento, Azure avrà di nuovo bisogno di quella capacità, l'infrastruttura di Azure rimuoverà Azure Spot Virtual Machines con un preavviso di 30 secondi.
Le macchine virtuali Spot possono essere arrestate se Azure richiede capacità per altri carichi di lavoro con pagamento in base al consumo o quando il prezzo dell'istanza spot supera il prezzo massimo impostato. Quando si crea un'istanza di Azure Spot Virtual Machines, è possibile impostare i criteri di rimozione su Deallocate (impostazione predefinita) o Delete.
Il criterio Deallocate sposta la macchina virtuale nello stato Arrestato deallocato, consentendo di ridistribuire l'istanza stessa in un secondo momento. Tuttavia, non è garantito che l'allocazione avrà esito positivo. Le macchine virtuali deallocate verranno conteggiate in base alla quota e verranno addebitati i costi di archiviazione per i dischi sottostanti.
Se si vuole eliminare la macchina virtuale quando viene rimossa, è possibile impostare i criteri di rimozione su Delete. Le macchine virtuali rimosse vengono eliminate insieme ai relativi dischi sottostanti, quindi verrà interrotto l'addebito dei costi di archiviazione.
È possibile acconsentire esplicitamente a ricevere notifiche nelle macchine virtuali con Eventi pianificati di Azure. Le notifiche vengono recapitate in modo ottimale fino a 30 secondi prima della rimozione.
Opzione | Risultato |
---|---|
Il prezzo massimo è impostato su >= il prezzo corrente. | La macchina virtuale viene distribuita se la capacità e la quota sono disponibili. |
Il prezzo massimo è impostato su < il prezzo corrente. | La macchina virtuale non viene distribuita. Si riceverà un messaggio di errore che segnala che il prezzo massimo deve essere >= il prezzo corrente. |
Riavvio di una macchina virtuale arrestata/deallocata se il prezzo massimo è >= il prezzo corrente | Se sono disponibili capacità e quota, la macchina virtuale viene distribuita. |
Riavvio di una macchina virtuale arrestata/deallocata se il prezzo massimo è < il prezzo corrente | Si riceverà un messaggio di errore che segnala che il prezzo massimo deve essere >= il prezzo corrente. |
Il prezzo della macchina virtuale è aumentato e ora è > il prezzo massimo. | La macchina virtuale viene eliminata. Azure tenterà il recapito pianificato di eventi fino a 30 secondi prima della rimozione effettiva. |
Dopo l'eliminazione, il prezzo per la macchina virtuale torna a essere < il prezzo massimo. | La macchina virtuale non verrà riavviata automaticamente. L'utente può riavviare la macchina virtuale autonomamente e verrà addebitato il prezzo corrente. |
Se il prezzo massimo è impostato su -1 |
La macchina virtuale non verrà eliminata per motivi di prezzo. Il prezzo massimo corrisponderà al prezzo corrente, fino al prezzo per le macchine virtuali standard. Non verrà mai addebitato un prezzo superiore al prezzo standard. |
Modifica del prezzo massimo | È necessario deallocare la VM per modificare il prezzo massimo. Deallocare la VM, impostare un nuovo prezzo massimo, quindi aggiornare la VM. |
Suggerimento
Vedere la guida relativa alla rimozione di istanze spot di macchine virtuali di Azure per informazioni su come creare un carico di lavoro interrompibile affidabile in Azure.
Le dimensioni delle macchine virtuali seguenti non sono supportate per Azure Spot Virtual Machines:
- Serie B
- Versioni promo di qualsiasi dimensione (ad esempio, dimensioni promo Dv2, NV, NC, H)
Azure Spot Virtual Machines può essere distribuito in qualsiasi area, ad eccezione di Microsoft Azure gestito da 21Vianet.
Sono attualmente supportati i tipi di offerta seguenti:
- Enterprise Agreement
- Codice dell'offerta con pagamento in base al consumo (003P)
- Sponsorizzato (0036P e 0136P): non disponibile in Fairfax
- Per i provider di servizi cloud, fare riferimento al Centro per i partner o contattare direttamente il partner.
I prezzi per Azure Spot Virtual Machines sono variabili, in base all'area e all'SKU. Per altre informazioni, vedere i prezzi delle macchine virtuali per Linux e Windows.
È anche possibile eseguire query sulle informazioni sui prezzi usando l'API Prezzi al dettaglio di Azure per ottenere informazioni sui prezzi del servizio Spot. meterName
e skuName
conterranno entrambi Spot
.
Con i prezzi variabili è possibile impostare un prezzo massimo, in dollari statunitensi (USD), usando al massimo 5 cifre decimali. Ad esempio, il valore 0.98765
sarebbe un prezzo massimo di 0,98765 USD all'ora. Se si imposta il prezzo massimo su -1
, la macchina virtuale non verrà eliminata in base al prezzo. Il prezzo della macchina virtuale corrisponderà al prezzo corrente per spot o al prezzo di una macchina virtuale standard, a seconda di quale sia il più basso, purché siano disponibili capacità e quota.
È possibile visualizzare i prezzi cronologici e le percentuali di rimozione per dimensione in un'area nel portale durante la creazione della macchina virtuale. Dopo aver selezionato la casella di controllo Esegui con sconto di Spot Azure, verrà visualizzato un collegamento sotto la selezione delle dimensioni della macchina virtuale denominata Visualizza la cronologia dei prezzi e confronta i prezzi nelle aree vicine. Selezionando il collegamento sarà possibile visualizzare una tabella o un grafo dei prezzi del servizio Spot per le dimensioni della macchina virtuale specificate. I prezzi e le percentuali di rimozione nelle immagini seguenti sono solo esempi.
Suggerimento
Le percentuali di rimozione vengono riportate all'ora. Ad esempio, una percentuale di rimozione del 10% indica che una macchina virtuale ha una probabilità del 10% di essere rimossa entro l'ora successiva, in base ai dati cronologici di rimozione degli ultimi 7 giorni.
Grafico:
Table:
È possibile accedere a livello di codice ai dati pertinenti dello SKU della macchina virtuale spot tramite Azure Resource Graph. Ottenere la cronologia dei prezzi negli ultimi 90 giorni e le percentuali di rimozione per gli ultimi 28 giorni per identificare gli SKU che soddisfano meglio esigenze specifiche.
Vantaggi principali:
- Eseguire query sulle percentuali di rimozione di istanze spot e gli ultimi mesi di prezzi del servizio Spot a livello di codice tramite Azure Resource Manager o Azure Resource Graph Explorer nel portale di Azure
- Creare una query personalizzata per estrarre i dati specifici rilevanti per lo scenario con la possibilità di filtrare in diversi parametri, ad esempio SKU e area
- Semplificare il confronto dei dati tra più aree e SKU
- Trovare uno SKU o un'area spot diversa con un prezzo e/o una percentuale di rimozione inferiore
Provare le query di esempio seguenti per la cronologia dei prezzi del servizio Spot e le percentuali di rimozione usando Azure Resource Graph Explorer nel portale di Azure. I dati relativi alla cronologia dei prezzi del servizio Spot e alle percentuali di rimozione sono disponibili nella tabella SpotResources
.
Query di esempio relativa alla cronologia dei prezzi del servizio Spot:
SpotResources
| where type =~ 'microsoft.compute/skuspotpricehistory/ostype/location'
| where sku.name in~ ('standard_d2s_v4', 'standard_d4s_v4')
| where properties.osType =~ 'linux'
| where location in~ ('eastus', 'southcentralus')
| project skuName = tostring(sku.name), osType = tostring(properties.osType), location, latestSpotPriceUSD = todouble(properties.spotPrices[0].priceUSD)
| order by latestSpotPriceUSD asc
Query di esempio relativa alle percentuali di rimozione delle istanze spot:
SpotResources
| where type =~ 'microsoft.compute/skuspotevictionrate/location'
| where sku.name in~ ('standard_d2s_v4', 'standard_d4s_v4')
| where location in~ ('eastus', 'southcentralus')
| project skuName = tostring(sku.name), location, spotEvictionRate = tostring(properties.evictionRate)
| order by skuName asc, location asc
In alternativa, provare l' API REST ARG per ottenere i dati relativi alla cronologia dei prezzi e alla cronologia delle percentuali di rimozione.
D: Dopo essere stata creata, un'istanza di Azure Spot Virtual Machines è identica a una normale macchina virtuale standard?
D: Sì, ad eccezione del fatto che per Azure Spot Virtual Machines non esistono contratti di servizio e che l'istanza può essere eliminata in qualsiasi momento.
D: Cosa si può fare se la macchina virtuale viene eliminata, ma è ancora necessaria capacità?
R: È consigliabile usare macchine virtuali standard anziché istanze di Azure Spot Virtual Machines se si ha immediatamente bisogno di capacità.
Q: Come viene gestita la quota per Azure Spot Virtual Machines?
R: Azure Spot Virtual Machines avrà un pool di quote distinto. La quota spot verrà condivisa tra le macchine virtuali e le istanze del set di scalabilità. Per altre informazioni, vedere Sottoscrizione di Azure e limiti, quote e vincoli dei servizi.
D: È possibile richiedere una quota aggiuntiva per Azure Spot Virtual Machines?
R: Sì, sarà possibile inviare la richiesta di aumentare la quota per Azure Spot Virtual Machines tramite il processo di richiesta di quota standard.
Q: Dove è possibile pubblicare le domande?
R: È possibile pubblicare e contrassegnare la domanda con azure-spot
in Domande e risposte.
D: Come si fa a modificare il prezzo massimo per una macchina virtuale spot?
R: Prima di poter modificare il prezzo massimo, è necessario deallocare la macchina virtuale. È quindi possibile modificare il prezzo massimo nel portale, nella sezione Configurazione della macchina virtuale.
Usare l'interfaccia della riga di comando, il portale, il modello di Resource Manager o PowerShell per distribuire Azure Spot Virtual Machines.
È anche possibile distribuire un set di scalabilità con istanze di Azure Spot Virtual Machines.
Se si verifica un errore, vedere Codici di errore.