Nasazení spotových virtuálních počítačů Azure pomocí Azure CLI
Platí pro: ✔️ Flexibilní škálovací sady virtuálních počítačů s Linuxem ✔️
Použití spotových virtuálních počítačů Azure vám umožňuje využít výhod naší nevyužité kapacity za významné úspory nákladů. V jakémkoli okamžiku, kdy Azure potřebuje kapacitu zpět, infrastruktura Azure vyřadí spotové virtuální počítače Azure. Proto jsou spotové virtuální počítače Azure skvělé pro úlohy, které dokážou zvládnout přerušení, jako jsou úlohy dávkového zpracování, vývojové/testovací prostředí, velké výpočetní úlohy a další.
Ceny spotových virtuálních počítačů Azure jsou proměnné na základě oblasti a skladové položky. Další informace najdete v tématu Ceny virtuálních počítačů pro Linux a Windows.
Pro virtuální počítač máte možnost nastavit maximální cenu, kterou jste ochotni zaplatit za hodinu. Maximální cena spotového virtuálního počítače Azure se dá nastavit v amerických dolarech (USD), a to až na 5 desetinných míst. Hodnota je například 0.98765
maximální cena 0,98765 USD za hodinu. Pokud nastavíte maximální cenu -1
, virtuální počítač se vyřadí na základě ceny. Cena virtuálního počítače je aktuální cena za spotový virtuální počítač Azure nebo cena za standardní virtuální počítač, který je stále nižší, pokud je k dispozici kapacita a kvóta. Další informace o nastavení maximální ceny najdete v tématu Azure Spot Virtual Machines – ceny.
Proces vytvoření spotového virtuálního počítače Azure pomocí Azure CLI je stejný jako podrobný postup v článku rychlého startu. Stačí přidat parametr --priority Spot, nastavit --eviction-policy
hodnotu buď Deallocate
(výchozí), nebo Delete
a zadat maximální cenu nebo -1
.
Instalace rozhraní příkazového řádku Azure
Pokud chcete vytvořit spotové virtuální počítače Azure, musíte používat Azure CLI verze 2.0.74 nebo novější. Verzi zjistíte spuštěním příkazu az --version. Pokud potřebujete instalaci nebo upgrade, přečtěte si téma Instalace rozhraní příkazového řádku Azure CLI.
Přihlaste se k Azure pomocí příkazu az login.
az login
Vytvoření spotového virtuálního počítače Azure
Tento příklad ukazuje, jak nasadit spotový virtuální počítač Azure s Linuxem, který se nevyřazuje na základě ceny. Zásada vyřazení je nastavená na uvolnění virtuálního počítače, aby bylo možné ho později restartovat. Pokud chcete odstranit virtuální počítač a základní disk při vyřazení virtuálního počítače, nastavte na Delete
hodnotu --eviction-policy
.
az group create -n mySpotGroup -l eastus
az vm create \
--resource-group mySpotGroup \
--name myVM \
--image Ubuntu2204 \
--admin-username azureuser \
--generate-ssh-keys \
--priority Spot \
--max-price -1 \
--eviction-policy Deallocate
Po vytvoření virtuálního počítače se můžete dotazem podívat na maximální fakturační cenu pro všechny virtuální počítače ve skupině prostředků.
az vm list \
-g mySpotGroup \
--query '[].{Name:name, MaxPrice:billingProfile.maxPrice}' \
--output table
Simulace vyřazení
Vyřazení virtuálního počítače Azure Spot můžete simulovat pomocí REST, PowerShellu nebo rozhraní příkazového řádku a otestovat, jak dobře vaše aplikace reaguje na náhlé vyřazení.
Ve většině případů chcete použít virtuální počítače ROZHRANÍ REST API – Simulace vyřazení , které vám pomůžou s automatizovaným testováním aplikací. U REST znamená, Response Code: 204
že simulované vyřazení bylo úspěšné. Simulované vyřazení můžete kombinovat se službou Naplánovaná událost a automatizovat způsob reakce aplikace při vyřazení virtuálního počítače.
Pokud chcete zobrazit naplánované události v akci, podívejte se na Azure Friday – Příprava na údržbu virtuálních počítačů pomocí plánovaných událostí Azure.
Rychlý test
Rychlý test, který ukazuje, jak simulované vyřazení funguje, si projdeme dotazování na naplánovanou službu událostí a podívejme se, jak vypadá, když simulujete vyřazení pomocí Azure CLI.
Služba Naplánovaná událost je pro vaši službu povolená při prvním zadání požadavku na události.
Vzdáleně přejděte k virtuálnímu počítači a otevřete příkazový řádek.
Na příkazovém řádku na virtuálním počítači zadejte:
curl -H Metadata:true http://169.254.169.254/metadata/scheduledevents?api-version=2019-08-01
Tato první odpověď může trvat až 2 minuty. Od této chvíle by se měl zobrazit výstup téměř okamžitě.
Z počítače s nainstalovaným Rozhraním příkazového řádku Azure (jako je místní počítač) simulujte vyřazení pomocí příkazu az vm simulate-eviction. Nahraďte název skupiny prostředků a název virtuálního počítače vlastním názvem.
az vm simulate-eviction --resource-group mySpotRG --name mySpot
Výstup odpovědi obsahuje Status: Succeeded
, pokud byl požadavek úspěšně proveden.
Rychle se vraťte ke vzdálenému připojení k spotovém virtuálnímu počítači a znovu zadejte dotaz na koncový bod Naplánované události. Opakujte následující příkaz, dokud nedostanete výstup, který obsahuje další informace:
curl -H Metadata:true http://169.254.169.254/metadata/scheduledevents?api-version=2019-08-01
Když služba naplánované události obdrží oznámení o vyřazení, obdržíte odpověď, která vypadá podobně jako v následujícím výstupu:
{"DocumentIncarnation":1,"Events":[{"EventId":"A123BC45-1234-5678-AB90-ABCDEF123456","EventStatus":"Scheduled","EventType":"Preempt","ResourceType":"VirtualMachine","Resources":["myspotvm"],"NotBefore":"Tue, 16 Mar 2021 00:58:46 GMT","Description":"","EventSource":"Platform"}]}
Vidíte, že "EventType":"Preempt"
prostředek je prostředek virtuálního počítače "Resources":["myspotvm"]
.
Podmínku vyřazení virtuálního počítače můžete zobrazit také tak, že zkontrolujete "NotBefore"
, že virtuální počítač se před daným časem nevyřadí, takže to je okno, ve které se vaše aplikace může elegantně zavřít.
Další kroky
Můžete také vytvořit spotový virtuální počítač Azure pomocí Azure PowerShellu, portálu nebo šablony.
Zadejte dotaz na aktuální informace o cenách pomocí rozhraní API maloobchodních cen Azure, kde najdete informace o spotovém virtuálním počítači Azure. skuName
Oba meterName
obsahují Spot
.
Pokud dojde k chybě, podívejte se na kódy chyb.