Tutorial – Implementar aplicações numa máquina virtual do Windows no Azure com a Extensão de Script Personalizado

Aplica-se a: ✔️ Conjuntos ✔️ de balanças flexíveis do Windows ✔️ Conjuntos de escalas uniformes

Para configurar máquinas virtuais (VMs) de maneira rápida e consistente, você pode usar a Extensão de Script Personalizado para Windows. Neste tutorial, ficará a saber como:

  • Use a extensão de script personalizado para instalar o IIS.
  • Crie uma VM que use a Extensão de Script Personalizada.
  • Exiba um site do IIS em execução após a aplicação da extensão.

Iniciar o Azure Cloud Shell

O Azure Cloud Shell é um shell interativo gratuito que pode utilizar para executar os passos neste artigo. Tem as ferramentas comuns do Azure pré-instaladas e configuradas para utilização com a sua conta.

Para abrir o Cloud Shell, selecione Abrir Cloudshell no canto superior direito de um bloco de código. Também pode iniciar o Cloud Shell num separador do browser separado ao aceder a https://shell.azure.com/powershell. Selecione Copiar para copiar os blocos de código, cole-o no Cloud Shell e prima Enter para executá-lo.

Visão geral da extensão de script personalizado

A Extensão de Script Personalizado transfere e executa scripts em VMs do Azure. Essa extensão é útil para configuração pós-implantação, instalação de software ou qualquer outra tarefa de configuração ou gerenciamento. Você pode baixar scripts do armazenamento do Azure ou do GitHub, ou pode fornecer scripts para o portal do Azure em tempo de execução de extensão.

A extensão de Script Personalizado integra-se com modelos do Azure Resource Manager e pode ser executada usando a CLI do Azure, o PowerShell, o portal do Azure ou a API REST da Máquina Virtual do Azure.

Você pode usar a extensão de script personalizado com VMs Linux e Windows.

Criar a máquina virtual

Defina o nome de usuário e a senha do administrador para a VM com Get-Credential:

$cred = Get-Credential

Agora você pode criar a VM com New-AzVM. O exemplo seguinte cria uma VM com o nome myVM na localização EastUS. Se ainda não existirem, o grupo de recursos myResourceGroupAutomate e os recursos de rede de suporte serão criados. Para permitir um tráfego Web, o cmdlet também abre a porta 80.

New-AzVm `
    -ResourceGroupName "myResourceGroupAutomate" `
    -Name "myVM" `
    -Location "East US" `
    -VirtualNetworkName "myVnet" `
    -SubnetName "mySubnet" `
    -SecurityGroupName "myNetworkSecurityGroup" `
    -PublicIpAddressName "myPublicIpAddress" `
    -OpenPorts 80 `
    -Credential $cred

Os recursos e a VM levam alguns minutos para serem criados.

Automatizar a instalação do IIS

Use Set-AzVMExtension para instalar a extensão de script personalizado. A extensão executa o powershell Add-WindowsFeature Web-Server para instalar o servidor Web IIS e, em seguida, atualiza a página Default.htm para mostrar o nome do anfitrião da VM:

Set-AzVMExtension -ResourceGroupName "myResourceGroupAutomate" `
    -ExtensionName "IIS" `
    -VMName "myVM" `
    -Location "EastUS" `
    -Publisher Microsoft.Compute `
    -ExtensionType CustomScriptExtension `
    -TypeHandlerVersion 1.8 `
    -SettingString '{"commandToExecute":"powershell Add-WindowsFeature Web-Server; powershell Add-Content -Path \"C:\\inetpub\\wwwroot\\Default.htm\" -Value $($env:computername)"}'

Site de teste

Obtenha o endereço IP público do seu balanceador de carga com Get-AzPublicIPAddress. O exemplo seguinte obtém o endereço IP para myPublicIPAddress criado anteriormente:

Get-AzPublicIPAddress `
    -ResourceGroupName "myResourceGroupAutomate" `
    -Name "myPublicIPAddress" | select IpAddress

Em seguida, pode introduzir o endereço IP público num browser. O site é apresentado, incluindo o nome do anfitrião da VM para a qual o balanceador de carga distribuiu tráfego, como no seguinte exemplo:

Captura de tela do endereço IP público em um navegador da web.

Próximos passos

Neste tutorial, automatizou a instalação do IIS numa VM. Aprendeu a:

  • Use a extensão de script personalizado para instalar o IIS.
  • Crie uma VM que use a Extensão de Script Personalizada.
  • Exiba um site do IIS em execução após a aplicação da extensão.

Avance para o tutorial seguinte para aprender a criar imagens de VM personalizadas.