Provisionar uma máquina virtual Linux usando a CLI do Azure
Você pode instalar a CLI do Azure localmente nos sistemas operacionais Linux, macOS e Windows. Os detalhes da instalação dependem do sistema operacional e, no caso do Linux, também da distribuição.
Nota
Para obter mais informações sobre as opções de instalação do Linux, consulte Instalar a CLI do Azure no Linux.
Para usar a CLI do Azure interativamente, inicie um shell disponível em seu sistema operacional, como cmd.exe no Windows ou Bash no Linux ou macOS e emita um comando no prompt de comando. Para automatizar tarefas repetitivas, monte os comandos da CLI em um shell script usando a sintaxe de script do shell escolhido e, em seguida, execute o script.
Se quiser evitar a instalação da CLI do Azure, você pode usar o Azure Cloud Shell. O Azure Cloud Shell é um shell interativo e autenticado que você pode usar para gerenciar recursos do Azure a partir de um navegador da Web. O Azure Cloud Shell pode executar o Bash e o Azure PowerShell e tem a versão atual da CLI do Azure já pré-instalada. Para acessar o Azure Cloud Shell, abra o link do Azure Cloud Shell em um navegador da Web ou inicie-o no portal do Azure selecionando o ícone do Azure Cloud Shell ao lado da caixa de texto de pesquisa global.
O Azure Cloud Shell fornece o benefício da autenticação interna, que usa as credenciais que você fornece ao acessar sua assinatura do Azure a partir do navegador da Web. Isso elimina a necessidade de executar o comando no início de cada sessão, o que é necessário quando você executa a az login
CLI do Azure localmente.
Implantar uma VM Linux usando a CLI do Azure
O processo de provisionamento de uma VM do Azure executando Linux usando a CLI do Azure normalmente envolve a seguinte sequência de etapas de alto nível:
- Identifique uma imagem de VM adequada.
- Identifique o tamanho adequado da VM.
- Crie um grupo de recursos.
- Crie e configure uma rede virtual.
- Crie uma VM do Azure.
Dependendo do ambiente e dos requisitos existentes, pode não ser necessário concluir cada uma das etapas anteriores. Por exemplo, você pode usar um grupo de recursos existente ou uma sub-rede de rede virtual para sua implantação. Além disso, a CLI do Azure dá suporte a uma ampla variedade de configurações padrão, que se aplicam automaticamente se você decidir não atribuir valores explicitamente a algumas das configurações de recursos. Por exemplo, como na implantação baseada no portal do Azure, se você não especificar uma rede virtual existente, a CLI do Azure provisionará automaticamente uma para você. Neste módulo, você confiará nas configurações padrão da CLI do Azure e ignorará o processo de criação de uma rede virtual.
Nota
Para obter informações sobre como implementar redes virtuais usando a CLI do Azure, consulte Guia de início rápido: usar a CLI do Azure para criar uma rede virtual.
Identificar uma imagem de VM adequada
Antes de iniciar o processo de provisionamento, primeiro você precisa determinar a imagem da VM que deseja usar. Você também deve verificar a disponibilidade da imagem na região do Azure que hospedará sua implantação.
Para listar as regiões do Azure disponíveis na sua subscrição, execute o seguinte comando a partir de uma sessão Bash no painel Azure Cloud Shell:
az account list-locations --output table
Revise a saída e identifique o valor na coluna Nome da região que você pretende usar. Suponha que você escolheu a região Leste dos EUA como seu alvo, de modo que o nome é eastus.
Para identificar a imagem adequada, você precisará determinar seu editor, oferta e sku. Para restringir a lista de opções disponíveis, liste os editores que não são da Microsoft para a região identificada anteriormente executando o seguinte comando:
az vm image list-publishers --location eastus --query [].name --output tsv | grep -v "Microsoft" | more
Nota
A lista é bastante extensa, então você deve garantir que você limite a saída para o buffer de sessão disponível.
Suponha que você escolheu Canonical
. Em seguida, identifique as ofertas disponíveis nesse editor executando o seguinte comando:
az vm image list-offers --location eastus --publisher Canonical --query [].name --output tsv
Suponha que você escolheu 0001-com-ubuntu-server-jammy
. Em seguida, execute o seguinte comando para identificar SKUs disponíveis com essa oferta executando o seguinte comando:
az vm image list-skus --location eastus --publisher Canonical --offer 0001-com-ubuntu-server-focal --query [].name --output tsv
Nota
A Canonical tem vindo recentemente a alterar os nomes das ofertas. Antes do Ubuntu 20.04, o nome da oferta era UbuntuServer
. Para o Ubuntu 20.04 o nome da oferta é 0001-com-ubuntu-server-focal
, e para o Ubuntu 22.04 é 0001-com-ubuntu-server-jammy
.
Para implantar uma VM do Azure usando uma imagem específica, você precisa determinar o valor de sua Urn
propriedade. Esse valor consiste no editor, oferta, SKU e, opcionalmente, um número de versão que identifica exclusivamente a imagem. Você também pode definir o número da versão como mais recente, que designa a versão mais recente da distribuição. Para exibir o Urn
valor da propriedade para todas as imagens 22_04-lts do Ubuntu na região Leste dos EUA, execute o seguinte comando:
az vm image list --location eastus --publisher Canonical --offer 0001-com-ubuntu-server-jammy --sku 22_04-lts --all --output table
Nota
Você pode usar a propriedade para uma abordagem mais simples (embora muito menos flexível) para designar uma imagem a ser usada durante a UrnAlias
implantação. Essa propriedade está prontamente disponível para as imagens mais comuns e você pode recuperar seus valores executando o comando da CLI do az vm image list --output table
Azure. Por exemplo, o UrnAlias
Ubuntu2204
corresponde à imagem Canonical:0001-com-ubuntu-server-jammy:22_04-lts-gen2:latest
.
Identificar o tamanho adequado da VM
Além da disponibilidade da imagem, você também deve garantir que o tamanho da VM que você pretende usar esteja disponível na região do Azure que hospedará sua implantação. Para confirmar isso, execute o seguinte comando:
az vm list-sizes --location eastus --output table
Identifique o tamanho da VM adequado para sua implantação de exemplo na listagem e anote o valor na coluna Nome. Você precisará inserir o nome no mesmo formato ao executar o comando da CLI do Azure que inicia o provisionamento da VM do Azure. Suponha que você escolheu Standard_F4s.
Importante
Antes de continuar, verifique se esse tamanho de VM está disponível na região do Azure para a qual você está se destinando e, se necessário, ajuste os valores dos parâmetros nos comandos subsequentes de acordo.
Criar um grupo de recursos
Depois de identificar a imagem e o tamanho da VM do Azure, agora você pode iniciar o processo de provisionamento. Comece criando um grupo de recursos para hospedar a VM do Azure e seus recursos dependentes. Para criar um grupo de recursos, utilize o comando az group create
. Este comando requer que você especifique o valor dos parâmetros name e location, que designa o nome do grupo de recursos e a região do Azure de destino, respectivamente.
az group create --name rg_lnx-cli --location eastus
A saída do comando deve ser semelhante ao exemplo a seguir:
{
"id": "/subscriptions/aaaa0a0a-bb1b-cc2c-dd3d-eeeeee4e4e4e/resourceGroups/sample-RG",
"location": "eastus",
"managedBy": null,
"name": "rg_lnx-cli",
"properties": {
"provisioningState": "Succeeded"
},
"tags": null,
"type": "Microsoft.Resources/resourceGroups"
}
Criar uma VM do Azure
Para criar uma VM, use o az vm create
comando. Este comando suporta uma vasta gama de parâmetros, incluindo a imagem do SO, o tamanho do disco e as credenciais administrativas. No exemplo a seguir, o comando dispara a az vm create
implantação de uma VM do Azure chamada sample-cli-vm0, que hospeda a versão mais recente do Ubuntu 22_04-lts-gen2 SKU. O processo de provisionamento configura uma conta de usuário administrativo chamada azureuser com autenticação baseada em um par de chaves SSH. As chaves pública e privada são geradas e armazenadas localmente em seu local padrão (~/.ssh) para permitir o acesso SSH à VM do Azure. Use o exemplo de código a seguir para criar uma VM do Azure:
az vm create \
--resource-group rg_lnx-cli \
--name lnx-cli-vm \
--image Canonical:0001-com-ubuntu-server-jammy:22_04-lts-gen2:latest \
--size Standard_F4s \
--admin-username azureuser \
--generate-ssh-keys
Nota
O --size
parâmetro é opcional. Se você decidir excluí-lo, o tamanho resultante dependerá da imagem escolhida.
A VM do Azure começará a ser executada pouco depois, geralmente dentro de alguns minutos. A saída do comando CLI do Azure incluirá informações formatadas em JSON sobre a VM do Azure recém-implantada:
{
"fqdns": "",
"id": "/subscriptions/bbbb1b1b-cc2c-dd3d-ee4e-ffffff5f5f5f/resourceGroups/rg_lnx-cli/providers/Microsoft.Compute/virtualMachines/lnx-cli-vm",
"location": "eastus",
"macAddress": "00-0D-3A-8C-C6-AE",
"powerState": "VM running",
"privateIpAddress": "10.0.0.4",
"publicIpAddress": "20.51.149.212",
"resourceGroup": "rg_lnx-cli",
"zones": ""
}
Neste ponto, você poderá se conectar à VM do Azure executando o seguinte comando (depois de substituir o espaço reservado <public_ip_address> pelo endereço IP identificado na saída gerada pela CLI do Azure) do computador onde a chave privada está armazenada:
ssh azureuser@<public_ip_address>