Poznámka:
Přístup k této stránce vyžaduje autorizaci. Můžete se zkusit přihlásit nebo změnit adresáře.
Přístup k této stránce vyžaduje autorizaci. Můžete zkusit změnit adresáře.
Pokud chcete spouštět aplikace na instancích virtuálních počítačů ve škálovací sadě, musíte nejprve nainstalovat komponenty aplikace a požadované soubory. V předchozím kurzu jste zjistili, jak vytvořit a použít vlastní image virtuálního počítače k nasazení instancí virtuálních počítačů. Tato vlastní image zahrnovala manuální instalaci a konfiguraci aplikací. Můžete také automatizovat instalaci aplikací do škálovací sady po nasazení každé instance virtuálního počítače nebo aktualizovat aplikaci, která už běží ve škálovací sadě. V tomto kurzu se naučíte:
- Automatická instalace aplikací do škálovací sady
- Použijte rozšíření vlastního skriptu Azure
- Aktualizujte běžící aplikaci v škálovací sadě
Pokud nemáte účet Azure, vytvořte si bezplatný účet před tím, než začnete.
Požadavky
Použijte prostředí Bash v Azure Cloud Shellu. Další informace najdete v tématu Začínáme s Azure Cloud Shellem.
Pokud chcete spouštět referenční příkazy CLI lokálně, nainstalujte Azure CLI. Pokud používáte Windows nebo macOS, zvažte spuštění Azure CLI v kontejneru Docker. Pro více informací, viz Jak spustit Azure CLI v Docker kontejneru.
Pokud používáte místní instalaci, přihlaste se k Azure CLI pomocí příkazu az login. Chcete-li dokončit proces ověřování, postupujte podle kroků zobrazených ve vašem terminálu. Další možnosti přihlášení najdete v tématu Ověřování v Azure pomocí Azure CLI.
Když budete vyzváni, nainstalujte rozšíření Azure CLI při prvním použití. Další informace o rozšířeních najdete v tématu Použití a správa rozšíření pomocí Azure CLI.
Spusťte az version, abyste zjistili verzi a závislé knihovny, které jsou nainstalovány. Pokud chcete upgradovat na nejnovější verzi, spusťte az upgrade.
- Tento článek vyžaduje verzi 2.0.29 nebo novější azure CLI. Pokud používáte Azure Cloud Shell, je už nainstalovaná nejnovější verze.
Co je rozšíření vlastních skriptů Azure?
Rozšíření Custom Script Extension stáhne a spustí skripty na VM Azure. Toto rozšíření je užitečné pro konfiguraci po nasazení, instalaci softwaru nebo jakoukoli jinou úlohu konfigurace nebo správy. Skripty je možné stáhnout z úložiště Azure nebo z GitHubu nebo je můžete poskytnout webu Azure Portal za běhu rozšíření.
Rozšíření vlastních skriptů se integruje se šablonami Azure Resource Manageru a dá se použít také s Azure CLI, Azure PowerShellem, webem Azure Portal nebo rozhraním REST API. Další informace najdete v přehledu rozšíření vlastních skriptů.
Pokud chcete použít rozšíření vlastních skriptů s Azure CLI, vytvoříte soubor JSON, který definuje, jaké soubory se mají získat, a příkazy ke spuštění. Tyto definice JSON lze opakovaně používat napříč nasazeními sad škálování a aplikovat konzistentní instalace aplikací.
Vytvoření definice rozšíření vlastních skriptů
Pokud chcete vidět rozšíření vlastních skriptů v akci, vytvoříme škálovací sadu, která nainstaluje webový server NGINX a vypíše název hostitele instance virtuálního počítače škálovací sady. Následující definice rozšíření vlastních skriptů stáhne ukázkový skript z GitHubu, nainstaluje požadované balíčky a potom zapíše název hostitele instance virtuálního počítače na základní stránku HTML.
V aktuálním prostředí vytvořte soubor s názvem customConfig.json a vložte následující konfiguraci. Například vytvořte soubor v Cloud Shellu, ne na místním počítači. Můžete použít libovolný editor. V tomto kurzu použijeme Vi. Zadejtevi do Cloud Shellu. Vložte následující JSON do editoru a zadejte :w customConfig.json.
{
"fileUris": ["https://raw.githubusercontent.com/Azure-Samples/compute-automation-configurations/master/automate_nginx.sh"],
"commandToExecute": './automate_nginx.sh'
}
Poznámka:
Pokud se rozhodnete odkazovat přímo na JSON (místo odkazování na soubor customConfig.json ) v parametru --settings níže, budete možná muset invertovat použití jednoduchých a dvojitých uvozovek (").
Vytvořte škálovací sadu
Důležité
Od listopadu 2023 se škálovací sady virtuálních počítačů vytvořené pomocí PowerShellu a Azure CLI ve výchozím nastavení nastaví do flexibilního režimu orchestrace, pokud není zadaný žádný režim orchestrace. Další informace o této změně a akcích, které byste měli provést, najdete v tématu Zásadní změna pro zákazníky PowerShellu nebo rozhraní příkazového řádku VMSS – Microsoft Community Hub.
Vytvořte skupinu prostředků pomocí příkazu az group create. Následující příklad vytvoří skupinu prostředků myResourceGroup v lokalitě eastus:
az group create --name myResourceGroup --location eastus
Teď vytvořte škálovací sadu virtuálních počítačů pomocí příkazu az vmss create. Následující příklad vytvoří škálovací sadu s názvem myScaleSet a vygeneruje klíče SSH, pokud neexistují:
az vmss create \
--resource-group myResourceGroup \
--name myScaleSet \
--image Ubuntu2204 \
--orchestration-mode Flexible \
--admin-username azureuser \
--generate-ssh-keys
Vytvoření a konfigurace všech prostředků škálovací sady a virtuálních počítačů trvá několik minut.
Aplikovat rozšíření vlastních skriptů
Použijte konfiguraci rozšíření vlastních skriptů na instance virtuálních počítačů ve vaší škálovací sadě pomocí az vmss extension set. Následující příklad použije konfiguraci customConfig.json na instance virtuálních počítačů myScaleSet ve skupině prostředků myResourceGroup:
az vmss extension set \
--publisher Microsoft.Azure.Extensions \
--version 2.0 \
--name CustomScript \
--resource-group myResourceGroup \
--vmss-name myScaleSet \
--settings customConfig.json
Upozornění
V názvech souborů se rozlišují malá a velká písmena. Pokud se chcete vyhnout selhání, použijte přesný název souboru uvedený v těchto pokynech.
Aplikujte rozšíření na existující instance škálovací sady
Upgradujte všechny instance, aby se použil vlastní skript. Upgrade může trvat několik minut.
az vmss update-instances --resource-group myResourceGroup --name myScaleSet --instance-ids "*"
Povolit provoz na port 80
Pokud chcete povolit průchod provozu přes nástroj pro vyrovnávání zatížení do virtuálních počítačů, je potřeba aktualizovat výchozí skupinu zabezpečení sítě.
az network nsg rule create --name AllowHTTP --resource-group myResourceGroup --nsg-name myScaleSetNSG --access Allow --priority 1010 --destination-port-ranges 80
Testování škálovací sady
Pokud chcete zobrazit váš webový server v akci, získejte veřejnou IP adresu vašeho nástroje pro vyrovnávání zatížení pomocí příkazu az network public-ip show. Následující příklad získá IP adresu myScaleSetLBPublicIP vytvořenou jako součást škálovací sady:
az network public-ip show \
--resource-group myResourceGroup \
--name myScaleSetLBPublicIP \
--query [ipAddress] \
--output tsv
Zadejte veřejnou IP adresu nástroje pro vyrovnávání zatížení do webového prohlížeče. Nástroj pro vyrovnávání zatížení distribuuje provoz do jedné z instancí virtuálních počítačů, jak je znázorněno v následujícím příkladu:
Nechte webový prohlížeč otevřený, abyste v dalším kroku viděli aktualizovanou verzi.
Změna zásad aktualizace
V předchozí části byla potřeba ruční upgrade, aby se aktualizovaná aplikace použila pro všechny instance škálovací sady. Pokud chcete povolit automatické použití aktualizací pro všechny existující instance škálovací sady, aktualizujte zásadu upgradu z ruční na automatickou. Další informace o zásadách upgradu naleznete v Zásady upgrade pro sady škálování virtuálních počítačů.
az vmss update \
--name myScaleSet \
--resource-group myResourceGroup \
--set upgradePolicy.mode=automatic
Aktualizace nasazení aplikace
V aktuálním prostředí vytvořte soubor s názvem customConfigv2.json a vložte následující konfiguraci. Tato definice spouští aktualizovanou verzi v2 instalačního skriptu aplikace:
{
"fileUris": ["https://raw.githubusercontent.com/Azure-Samples/compute-automation-configurations/master/automate_nginx_v2.sh"],
"commandToExecute": "./automate_nginx_v2.sh"
}
Znovu aplikujte konfiguraci rozšíření vlastních skriptů na vaši škálovací sadu pomocí příkazu az vmss extension set. customConfigv2.json slouží k použití aktualizované verze aplikace:
az vmss extension set \
--publisher Microsoft.Azure.Extensions \
--version 2.0 \
--name CustomScript \
--resource-group myResourceGroup \
--vmss-name myScaleSet \
--settings @customConfigv2.json
Vzhledem k tomu, že škálovací sada teď používá zásadu automatického upgradu, aktualizovaná aplikace se automaticky použije u existujících instancí škálovací sady. Aktualizujte webový prohlížeč, aby se zobrazila aktualizovaná aplikace.
Vyčistěte zdroje
Pokud chcete odebrat škálovací sadu a další prostředky, odstraňte skupinu prostředků a všechny její prostředky pomocí příkazu az group delete. Parametr --no-wait vrátí řízení na příkazový řádek bez čekání na dokončení operace. Parametr --yes potvrzuje, že chcete odstranit prostředky bez další výzvy k tomu.
az group delete --name myResourceGroup --no-wait --yes
Další kroky
V tomto kurzu jste zjistili, jak automaticky instalovat a aktualizovat aplikace ve škálovací sadě pomocí Azure CLI:
- Automatická instalace aplikací do škálovací sady
- Použijte rozšíření vlastního skriptu Azure
- Aktualizujte běžící aplikaci v škálovací sadě
V dalším kurzu se dozvíte, jak škálovací sadu automaticky škálovat.