Cvičení – řízení pořadí nasazování prostředků
V této části začnete tím, že provedete několik základních úkolů nastavení. V editoru Visual Studio Code připojíte relaci terminálu k předplatnému Azure, které je poskytováno v bezplatném prostředí sandboxu Azure. Díky tomu můžete ověřovat příkazy do Azure.
Pak spustíte základní šablonu ARM, která zřídí virtuální počítač se systémem Linux. Po dokončení nasazení ověříte, že je virtuální počítač spuštěný a že je možné se k němu připojit.
Ačkoli práce s virtuálními počítači je běžným úkolem, zjistíte, že prostředek virtuálního počítače vyžaduje komponenty sítě a úložiště, které musí existovat předtím, než může být vytvořen virtuální počítač. Uvidíte, jak dependsOn
vám konstruktor umožňuje nastavit pořadí, ve kterém se zřizují prostředky.
Nastavení
Tady otevřete editor Visual Studio Code, vytvoříte relaci PowerShellu a připojíte se k předplatnému Azure, které je poskytováno v bezplatném prostředí sandboxu Azure.
Tyto úkoly nastavení budete v tomto modulu muset provést jednou. Pokud se odhlásíte nebo ztratíte připojení v pozdějším cvičení, můžete se k těmto krokům vrátit.
Otevření PowerShellu v editoru Visual Studio Code
Otevřete Visual Studio Code.
Otevřete okno terminálu pomocí nabídky Terminal (Terminál).
Pokud na pravé straně okna terminálu uvidíte rozevírací nabídku s položkou pwsh, máte správné prostředí pro práci a můžete přejít na další část.
V opačném případě vyberte rozevírací seznam a zvolte Vybrat výchozí prostředí.
Vyberte pwsh.
V terminálu vyberte +, abyste vytvořili nový terminál s prostředím pwsh.
Přihlášení k Azure
Spuštěním příkazu
Connect-AzAccount
se přihlaste k účtu.Connect-AzAccount
Zobrazí se okno prohlížeče.
Vyberte účet, který jste použili k aktivaci sandboxu, a při zobrazení výzvy okno prohlížeče zavřete.
Nastavení aktivního předplatného
Spusťte příkaz
Get-AzSubscription
, pomocí kterého získáte ID předplatného prostředí sandboxu.Get-AzSubscription
Vyhledejte položku
Concierge Subscription
a zkopírujte druhý sloupec. Bude vypadat podobně jako cf49fbbc-217c-4eb6-9eb5-a6a6c68295a0.Spuštěním příkazu
Set-AzContext
změňte svoje aktivní předplatné na předplatné Concierge.Poznámka:
Nezapomeňte nahradit část {Your subscription ID} identifikátorem vašeho předplatného Concierge, který jste získali pomocí předchozího příkazu.
$subscription = Get-AzSubscription -SubscriptionId {Your subscription ID} Set-AzContext $subscription
Nastavení výchozí skupiny prostředků
Při spuštění příkazu rozhraní Azure CLI v běžném prostředí musíte určit skupinu prostředků.
Prostředí sandboxu vám výchozí skupinu prostředků poskytuje. Aby bylo spouštění následujících příkazů rozhraní Azure CLI jednodušší, nastavíte teď výchozí skupinu prostředků.
Spuštěním rutiny Set-AzDefault
nastavte výchozí skupinu prostředků.
Set-AzDefault -ResourceGroupName <rgn>resource group name</rgn>
Poznámka:
Za normálních okolností, když použijete PowerShell k nasazení nějakého prostředku v Azure, musíte zadat skupinu prostředků. Tento požadavek tady obejdete tím, že nastavíte kontext nasazení pomocí Set-AzDefault
.
Co je součástí typického nasazení virtuálního počítače
Při nasazování virtuálního počítače mějte na paměti, že k tomu, aby virtuální počítač fungoval, je potřeba spolu s ním nasadit několik dalších prostředků.
Tady je stručný přehled typů prostředků, které je obvykle potřeba nasadit spolu s virtuálním počítačem:
- Microsoft.Storage/storageAccounts: Účet úložiště poskytuje místo na disku pro operační systém a pro soubory.
- Microsoft.Network/publicIPAddresses: Veřejná IP adresa vám umožní se k virtuálnímu počítači připojovat z internetu.
- Microsoft.Network/networkSecurityGroups: Skupina zabezpečení sítě obsahuje pravidla pro zpracování příchozích a odchozích přenosů u vaší virtuální sítě.
- Microsoft.Network/virtualNetworks: Váš virtuální počítač musí být umístěn ve virtuální síti. Tento prostředek vyžaduje, aby před ním byla nejprve nasazena skupina zabezpečení sítě.
- Microsoft.Network/networkInterfaces: Tento prostředek závisí na dvou dalších prostředcích – na veřejné IP adrese a na virtuální síti.
- Microsoft.Compute/virtualMachines: Virtuální počítač je primární prostředek, který chcete nasadit. Je závislý na dvou různých prostředcích – na účtu úložiště a na síťových rozhraních.
Nasazení virtuálního počítače s Linuxem
Tady si stáhnete šablonu ARM z úložiště GitHubu, které vám poskytneme. Tato šablona zřídí virtuální počítač se systémem Linux a všechny prostředky, které jsou nezbytné pro jeho spuštění.
Spuštěním následujícího příkazu
curl
stáhněte šablonu ARM:curl -O 'https://raw.githubusercontent.com/Azure/azure-quickstart-templates/master/quickstarts/microsoft.compute/vm-simple-linux/azuredeploy.json'
Spusťte rutinu
ConvertTo-SecureString
a přiřaďte výsledky do proměnné PowerShellu s názvem$secure
:$secure = "insecurepassword123!" | ConvertTo-SecureString -AsPlainText -Force
Teď máte zašifrovanou verzi svého hesla, kterou pak můžete předat do skriptu pro nasazování.
Spuštěním příkazu
New-AzResourceGroupDeployment
šablonu nasaďte:New-AzResourceGroupDeployment ` -TemplateFile "./azuredeploy.json" ` -adminUsername "azureuser" ` -vmName "vm1" ` -adminPasswordOrKey $secure
Spuštění tohoto příkazu může trvat několik minut. Pokud budete chtít, můžete během spuštění tohoto příkazu prozkoumat šablonu ARM na samostatné kartě prohlížeče.
Všimněte si závislostí prostředků vyhledáním klíčového slova
dependsOn
. Například prostředek virtuálního počítače závisí na síťovém rozhraní:"type": "Microsoft.Compute/virtualMachines", "apiVersion": "2020-06-01", "name": "[parameters('vmName')]", "location": "[parameters('location')]", "dependsOn": [ "[resourceId('Microsoft.Network/networkInterfaces/', variables('networkInterfaceName'))]" ],
Ověření nasazení
Ověřte, že je virtuální počítač zřízený a že se k němu dá připojit přes SSH. Postup:
Spuštěním příkazu
Invoke-Expression
se připojte k virtuálnímu počítači přes SSH:Invoke-Expression (Get-AzResourceGroupDeployment -Name azuredeploy -ResourceGroupName <rgn>your resource group</rgn>).outputs.sshCommand.value
Po zobrazení výzvy zadejte
yes
, abyste mohli pokračovat v připojování. Pak zadejte heslo správce.insecurepassword123!
Důležité
V běžné praxi zachovávejte hesla v bezpečí. Můžete také používat ověřování pomocí veřejného klíče, což je obvykle bezpečnější než používání hesel.
Z připojení SSH k virtuálnímu počítači vytiskněte spuštěním příkazu
hostname
název hostitele virtuálního počítače:hostname
Zobrazí se název interního hostitele virtuálního počítače:
vm1
vm1
Spuštěním příkazu
exit
opusťte relaci SSH.exit
Blahopřejeme, úspěšně jste nasadili virtuální počítač se systémem Linux pomocí šablony ARM. Virtuální počítač je běžný typ prostředku, který zahrnuje závislé prostředky.
Nastavení
Tady otevřete editor Visual Studio Code, vytvoříte relaci terminálu a připojíte se k předplatnému Azure, které je poskytováno v bezplatném prostředí sandboxu Azure.
Tyto úkoly nastavení budete v tomto modulu muset provést jednou. Pokud se odhlásíte nebo ztratíte připojení v pozdějším cvičení, můžete se k těmto krokům vrátit.
Otevření prostředí v editoru Visual Studio Code
Otevřete Visual Studio Code.
Otevřete okno terminálu pomocí nabídky Terminal (Terminál).
Pokud se v rozevírací nabídce zobrazuje vaše preferované prostředí (napříkladbash nebo zsh), můžete přejít k další části.
V opačném případě vyberte rozevírací seznam a zvolte Vybrat výchozí prostředí.
Vyberte požadovaný typ prostředí.
V terminálu vyberte + a vytvořte nový terminál s typem prostředí, které jste si vybrali.
Přihlášení k Azure
Z terminálu spusťte
az login
:az login
Zobrazí se okno prohlížeče.
Vyberte účet, který jste použili k aktivaci sandboxu, a při zobrazení výzvy okno prohlížeče zavřete.
Nastavení aktivního předplatného
Spuštěním následujícího příkazu az account set
nastavte prostředí sandboxu Azure jako své aktivní předplatné:
az account set -s "Concierge Subscription"
Poznámka:
Pokud se příkaz nezdaří, spusťte az account list --refresh --all
a pak spusťte znovu příkaz az account set
.
Nastavení výchozí skupiny prostředků
Při spuštění příkazu rozhraní Azure CLI v běžném prostředí musíte určit skupinu prostředků.
Prostředí sandboxu vám výchozí skupinu prostředků poskytuje. Aby bylo spouštění následujících příkazů rozhraní Azure CLI jednodušší, nastavíte teď výchozí skupinu prostředků.
Spuštěním následujícího příkazu az configure
nastavte výchozí skupinu prostředků:
az configure --defaults group=<rgn>resource group name</rgn>
Co je součástí typického nasazení virtuálního počítače
Při nasazování virtuálního počítače mějte na paměti, že k tomu, aby virtuální počítač fungoval, je potřeba spolu s ním nasadit několik dalších prostředků.
Tady je stručný přehled typů prostředků, které je obvykle potřeba nasadit spolu s virtuálním počítačem:
- Microsoft.Storage/storageAccounts: Účet úložiště poskytuje místo na disku pro operační systém a pro soubory.
- Microsoft.Network/publicIPAddresses: Veřejná IP adresa vám umožní se k virtuálnímu počítači připojovat z internetu.
- Microsoft.Network/networkSecurityGroups: Skupina zabezpečení sítě obsahuje pravidla pro zpracování příchozích a odchozích přenosů u vaší virtuální sítě.
- Microsoft.Network/virtualNetworks: Váš virtuální počítač musí být umístěn ve virtuální síti. Tento prostředek vyžaduje, aby před ním byla nejprve nasazena skupina zabezpečení sítě.
- Microsoft.Network/networkInterfaces: Tento prostředek závisí na dvou dalších prostředcích – na veřejné IP adrese a na virtuální síti.
- Microsoft.Compute/virtualMachines: Virtuální počítač je primární prostředek, který chcete nasadit. Je závislý na dvou různých prostředcích – na účtu úložiště a na síťových rozhraních.
Nasazení virtuálního počítače s Linuxem
Tady si stáhnete šablonu Azure Resource Manageru (ARM) z úložiště GitHubu, které vám poskytneme. Tato šablona zřídí virtuální počítač se systémem Linux a všechny prostředky, které jsou nezbytné pro jeho spuštění.
Spuštěním následujícího příkazu
wget
stáhněte šablonu ARM:wget https://raw.githubusercontent.com/Azure/azure-quickstart-templates/master/quickstarts/microsoft.compute/vm-simple-linux/azuredeploy.json
Pokud nemáte příkaz
wget
nainstalovaný, můžete spustit příkazcurl
:curl https://raw.githubusercontent.com/Azure/azure-quickstart-templates/master/quickstarts/microsoft.compute/vm-simple-linux/azuredeploy.json > azuredeploy.json
Spuštěním příkazu
az deployment group create
šablonu nasaďte:az deployment group create \ --template-file azuredeploy.json \ --parameters adminUsername=azureuser vmName=vm1 adminPasswordOrKey='insecurepassword123!'
Spuštění tohoto příkazu může trvat několik minut. Pokud budete chtít, můžete během spuštění tohoto příkazu prozkoumat šablonu ARM na samostatné kartě prohlížeče.
Všimněte si závislostí prostředků vyhledáním klíčového slova
dependsOn
. Například prostředek virtuálního počítače závisí na síťovém rozhraní:"type": "Microsoft.Compute/virtualMachines", "apiVersion": "2020-06-01", "name": "[parameters('vmName')]", "location": "[parameters('location')]", "dependsOn": [ "[resourceId('Microsoft.Network/networkInterfaces/', variables('networkInterfaceName'))]" ],
Ověření nasazení
Ověřte, že je virtuální počítač zřízený a že se k němu dá připojit přes SSH. Postup:
Spuštěním následujícího příkazu
az deployment group list
zobrazte skupiny nasazení ve vašem předplatném:az deployment group list --output table
Zobrazí se vám jedna skupina nasazení s názvem azuredeploy:
Name ResourceGroup State Timestamp Mode ----------- ------------------------------------------ --------- -------------------------------- ----------- azuredeploy learn-1ef901aa-3f6a-46aa-8e93-a7f11e5192b8 Succeeded 2020-11-24T17:55:39.762517+00:00 Incremental
Spuštěním následujícího příkazu
az deployment group show
zobrazte příkaz SSH, pomocí kterého se můžete připojit k virtuálnímu počítači:az deployment group show \ --name azuredeploy \ --query properties.outputs.sshCommand.value \ --output tsv
Šablona ARM definuje tuto vlastnost v části
output
. Tady je příklad:ssh azureuser@simplelinuxvm-a33zb3sc332ue.westus.cloudapp.azure.com
Příkaz spusťte znovu, tentokrát pomocí syntaxe
$()
, aby se provedl příkaz SSH:$(az deployment group show \ --name azuredeploy \ --query properties.outputs.sshCommand.value \ --output tsv)
Po zobrazení výzvy zadejte
yes
, abyste mohli pokračovat v připojování. Pak zadejte heslo správce.insecurepassword123!
Důležité
V běžné praxi zachovávejte hesla v bezpečí. Můžete také používat ověřování pomocí veřejného klíče, což je obvykle bezpečnější než používání hesel.
Z připojení SSH k virtuálnímu počítači vytiskněte spuštěním příkazu
hostname
název hostitele virtuálního počítače:hostname
Zobrazí se název interního hostitele virtuálního počítače:
vm1
vm1
Spuštěním příkazu
exit
opusťte relaci SSH.exit
Blahopřejeme, úspěšně jste nasadili virtuální počítač se systémem Linux pomocí šablony ARM. Virtuální počítač je běžný typ prostředku, který zahrnuje závislé prostředky.