- Azure IaaS (1) – první VM z grafického portálu
- Azure IaaS (2) – první VM z PowerShell
- Azure IaaS (3) – první VM z Azure CLI
- Azure IaaS (4) – první VM z ARM šablony
- Azure IaaS (5) – Network security group
- Azure IaaS (6) – vlastní image
- Azure IaaS (7) – automatizace stavu VM při vytvoření
- Azure IaaS (8) – Availability Set aneb jak je to s SLA
Minule jsme vytvořili VM v Azure s využitím PowerShell, dnes vyzkoušíme CLI. Je dostupné pro Linux, Mac i Windows.
Instalace Azure CLI
Stáhněte si univerzální CLI. Já použiji instalátor pro Windows:
Můžete mít instalátor pro Mac OS a univerzální řešení pro všechny OS je použít npm balíček:
npm install -g azure-cli
Pokud nechcete instalovat nic, použijte připravený Docker kontejner:
docker run -it microsoft/azure-cli
Přihlášení
Podobně jako v případě PowerShell přihlášení pouze z CLI je méně bezpečné a u některých účtů zakázané (u těch vyžadujících vícefaktorovou autentizaci). V PowerShell vám vyskočí webové okno, kde se zalogujete. CLI nemá možnost okno otevřít samo, tak to musíme udělat ručně. Zkuste se zalogovat:
azure login info: Executing command login |info: To sign in, use a web browser to open the page https://aka.ms/devicelogin. Enter the code CV3YZC25D to authenticate.
Musíme tedy otevřít prohlížeč na této URL, opsat tam tento kód a projdeme běžným webovým procesem přihlášení. Pak se vrátíme do příkazové řádky a uvidíme, že proces doběhl.
/info: Added subscription Visual Studio Enterprise with MSDN info: Added subscription Visual Studio Enterprise with MSDN info: Setting subscription "Visual Studio Enterprise with MSDN" as default + info: login command OK
V našem seriálu budeme používat novější postupy, takže přepneme CLI do režimu Resource Manager:
azure config mode arm info: Executing command config mode info: New mode is arm info: config mode command OK
Vytvoříme si VM
Nejprve vytvoříme novou Resource Group.
azure group create CLIgroup -l westeurope
V této skupině uděláme storage account.
azure storage account create -g CLIgroup -l westeurope --kind Storage --sku-name GRS mojeclistorage
Nachystáme si síťařinu. Vytvoříme novou virtuální síť, v ní nový subnet a vyžádáme si veřejnou IP adresu. Následně sestrojíme síťovou kartu pro naší budoucí VM a svážeme ji s touto veřejnou adresou.
azure network vnet create -g CLIgroup -n clinet -a 192.168.0.0/16 -l westeurope azure network vnet subnet create -g CLIgroup -e clinet -n clisub -a 192.168.1.0/24 azure network public-ip create -g CLIgroup -n publicIP -l westeurope -a static -i 4 azure network nic create -g CLIgroup -n clinic -l westeurope --subnet-vnet-name clinet --subnet-name clisub -p publicIP
Máme připraveno vše potřebné, můžeme vytvořit VM. Příkaz jsem pro přehlednost rozdělil na víc řádků stříškou (u Linuxu použijte zpětné lomítko). Všimněte si definice image a také pokud jako já preferuje ověřování SSH klíčem, naveďte CLI na váš pub soubor.
azure vm create ^ --resource-group CLIgroup ^ --name clivm ^ --location westeurope ^ --os-type linux ^ --nic-name clinic ^ --vnet-name clinet ^ --vnet-subnet-name clisub ^ --storage-account-name mojeclistorage ^ --image-urn canonical:UbuntuServer:16.04.0-LTS:latest ^ --ssh-publickey-file C:\Azure\mujKlic.pub ^ --admin-username tomas info: Executing command vm create + Looking up the VM "clivm" info: Verifying the public key SSH file: C:\Azure\mujKlic.pub info: Using the VM Size "Standard_DS1" info: The [OS, Data] Disk or image configuration requires storage account + Looking up the storage account mojeclistorage + Looking up the NIC "clinic" info: Found an existing NIC "clinic" info: Found an IP configuration with virtual network subnet id "/subscriptions/4fd63c38-a6be-4fb1-ac9e-ab1781af69ad/resourceGroups/CLIgroup/providers/Microsoft.Network/virtualNetworks/clinet/subnets/clisub" in the NIC "clinic" info: This NIC IP configuration has a public ip already configured "/subscriptions/4fd63c38-a6be-4fb1-ac9e-ab1781af69ad/resourcegroups/cligroup/providers/microsoft.network/publicipaddresses/publicip", any public ip parameters if provided, will be ignored. info: The storage URI 'https://mojeclistorage.blob.core.windows.net/' will be used for boot diagnostics settings, and it can be overwritten by the parameter input of '--boot-diagnostics-storage-uri'. + Creating VM "clivm" info: vm create command OK
Zjistěme si veřejnou IP a zkuste se připojit.
azure network public-ip show --name publicIP -g CLIgroup info: Executing command network public-ip show + Looking up the public ip "publicIP" data: Id : /subscriptions/4fd63c38-a6be-4fb1-ac9e-ab1781af69ad/resourceGroups/CLIgroup/providers/Microsoft.Network/publicIPAddresses/publicIP data: Name : publicIP data: Type : Microsoft.Network/publicIPAddresses data: Location : westeurope data: Provisioning state : Succeeded data: Allocation method : Static data: IP version : IPv4 data: Idle timeout in minutes : 4 data: IP Address : 13.81.118.194 data: IP configuration id : /subscriptions/4fd63c38-a6be-4fb1-ac9e-ab1781af69ad/resourceGroups/CLIgroup/providers/Microsoft.Network/networkInterfaces/clinic/ipConfigurations/default-ip-config info: network public-ip show command OK
Podívejte se na portál, co jsme to vlastně provedli.
Na závěr pojďme celou Resource Group zrušit.
azure group delete CLIgroup
Příště podobnou VM vytvoříme s využitím ARM šablony.
Chcete pomoci s návrhem on-premise řešení IaaS postaveným na Azure Pack/Stack, OpenStack nebo VMware? Potřebujete poradit s migrací aplikací a nasazením v Azure cloudu? HPE má certifikované Microsoft architekty a konzultanty a můžete také využít plně konvergovaných systémů pro vaše on-premise potřeby.