Criar um recurso do Azure interativamente com o Azure PowerShell
No modo interativo, o PowerShell permite que você insira e execute comandos imediatamente.
No exemplo do Customer Relationship Management (CRM), o objetivo é criar três ambientes de teste, cada um contendo máquinas virtuais (VMs). Use grupos de recursos para garantir que as VMs sejam organizadas em ambientes separados:
- Teste de unidades
- Testes de integração
- Testes de aceitação
Como você só precisa criar os grupos de recursos uma vez, usar o PowerShell interativamente para essa tarefa é uma escolha razoável.
Quando você executa um comando no PowerShell, ele faz a correspondência entre o comando e um cmdlet e executa a ação solicitada.
Exemplo: como criar um grupo de recursos com o Azure PowerShell
Vamos executar uma tarefa comum: criar um grupo de recursos. Os grupos de recursos ajudam você a gerenciar recursos relacionados coletivamente, e a criação de um novo grupo de recursos geralmente é uma das primeiras tarefas que você executa ao iniciar uma nova solução do Azure.
Aqui estão os três passos que você precisa seguir:
Ligue à sua subscrição do Azure.
Crie o grupo de recursos.
Verifique se o grupo de recursos foi criado com êxito.
Cada etapa corresponde a um comando diferente do Azure PowerShell.
Ligar ao Azure
Ao usar uma instalação local do Azure PowerShell, você deve autenticar antes de executar qualquer comando do Azure PowerShell. O Connect-AzAccount
cmdlet solicita suas credenciais do Azure e, em seguida, se conecta à sua assinatura do Azure.
Para se conectar interativamente, não é necessário especificar nenhum parâmetro:
Connect-AzAccount
Este comando abre um prompt para suas credenciais do Azure e estabelece uma conexão com sua assinatura do Azure.
Trabalhar com subscrições
Se você for novo no Azure, terá apenas uma única assinatura. No entanto, se estiver a utilizar o Azure há algum tempo, poderá ter várias subscrições. O Azure PowerShell permite que você configure em qual assinatura seus comandos serão executados.
Só pode estar ativo numa subscrição de cada vez. Use o Get-AzContext
cmdlet para determinar qual assinatura está ativa no momento. Se não for o correto, você poderá alternar assinaturas usando o Set-AzContext
cmdlet.
Obtenha uma lista de todas as suas subscrições:
Get-AzSubscription
Verifique a assinatura atual na qual você está conectado:
Get-AzContext
Altere a sua subscrição ativa:
Set-AzContext -Subscription '00000000-0000-0000-0000-000000000000'
Se precisar procurar a ID da Assinatura, você poderá encontrá-la na saída do
Get-AzSubscription
cmdlet.
Criar um grupo de recursos
Ao criar recursos no Azure, você os coloca em um grupo de recursos para fins de gerenciamento.
Para criar um grupo de recursos, use o New-AzResourceGroup
cmdlet. Você deve especificar um nome e um local, e o nome deve ser exclusivo em sua assinatura. O local determina onde os metadados do seu grupo de recursos são armazenados, o que pode ser importante por motivos de conformidade. Use o Get-AzLocation
cmdlet para determinar os locais disponíveis.
Nota
Se você estiver trabalhando em uma área restrita do Azure, ele criará o grupo de recursos para você. Se você preferir trabalhar em sua própria assinatura, use o seguinte comando.
A sintaxe para criar um grupo de recursos é:
New-AzResourceGroup -Name <resource-group-name> -Location <location>
Listar todos os grupos de recursos
Para recuperar uma lista de todos os grupos de recursos na assinatura ativa, use o Get-AzResourceGroup
cmdlet.
Get-AzResourceGroup
Para obter uma exibição mais concisa, você pode canalizar a saída para o Format-Table
cmdlet:
Get-AzResourceGroup | Format-Table
Você também pode filtrar a saída para mostrar apenas um grupo de recursos específico:
Get-AzResourceGroup -Name <resource-group-name>
Criar uma máquina virtual do Azure
Criar máquinas virtuais (VMs) é uma tarefa comum que você pode executar com o Azure PowerShell.
O New-AzVM
cmdlet é usado para criar uma VM. Este cmdlet tem vários parâmetros para lidar com as extensas definições de configuração de uma VM. A maioria dos parâmetros tem valores padrão razoáveis, portanto, você normalmente precisa especificar apenas cinco itens principais:
- ResourceGroupName: O grupo de recursos onde a nova VM é colocada.
- VM Name (Nome da VM): O nome da VM no Azure.
- Local: a região geográfica onde a VM é provisionada.
- Credencial: um objeto que contém o nome de usuário e a senha da conta de administrador da VM.
Use o
Get-Credential
cmdlet para solicitar um nome de usuário e senha e armazená-los como um objeto de credencial. - Imagem: A imagem do sistema operacional a ser usada para a VM, normalmente uma distribuição Linux ou Windows Server.
Eis um exemplo:
$azVmParams = @{
ResourceGroupName = '<resource-group-name>'
Name = '<machine-name>'
Credential = '<credentials-object>'
Location = '<location>'
Image = '<image-name>'
}
New-AzVM @azVmParams
Você pode fornecer esses parâmetros como uma tabela de hash com splatting para o New-AzVM
cmdlet, conforme mostrado no exemplo anterior. Como alternativa, você pode fornecer os parâmetros diretamente para o New-AzVM
cmdlet ou usar outros cmdlets para configurar a máquina virtual, como Set-AzVMOperatingSystem
, Set-AzVMSourceImage
, Add-AzVMNetworkInterface
e Set-AzVMOSDisk
.
Por exemplo, para fornecer os parâmetros diretamente ao New-AzVM
cmdlet, use a seguinte sintaxe:
New-AzVM -Name <vm-name> -ResourceGroupName <resource-group-name> -Credential (Get-Credential) ...
Exemplo: Obtendo informações para uma VM
Você pode listar as VMs em sua assinatura usando o Get-AzVM
comando. Este comando também oferece suporte à recuperação de uma VM específica especificando o parâmetro Name .
Armazene os resultados de Get-AzVM
em uma variável:
$vm = Get-AzVM -Name <vm-name> -ResourceGroupName <resource-group-name>
O conteúdo da variável é um objeto com o $vm
qual você pode interagir. Por exemplo, você pode fazer alterações nesse objeto e, em seguida, enviar as alterações por push para o Azure usando o Update-AzVM
comando:
$resourceGroupName = '<resource-group-name>'
$vm = Get-AzVM -Name <vm-name> -ResourceGroupName $resourceGroupName
$vm.HardwareProfile.vmSize = 'Standard_DS3_v2'
Update-AzVM -ResourceGroupName $resourceGroupName -VM $vm
Usar o PowerShell no modo interativo é apropriado para tarefas pontuais. Por exemplo, você pode criar e gerenciar grupos de recursos interativamente se eles forem criados apenas uma vez durante o tempo de vida de um projeto. O modo interativo geralmente é mais rápido e fácil do que escrever um script para tarefas que são executadas apenas uma vez.