Exercício – Definir uma DSC e configurar um estado desejado
Neste exercício, você criará uma conta da Automação do Azure e carregará uma DSC do PowerShell. Em seguida, você integrará uma VM existente à Automação do Azure. Por fim, você verificará se a VM está ausente no IIS. Se for o caso, você executará o código para instalar e configurar o IIS na VM.
Criar uma VM
Comece implantando uma nova VM com base em uma imagem do Windows Server 2022.
No painel do Azure Cloud Shell à direita, execute os seguintes comandos para criar um nome de usuário e gerar uma senha aleatória:
USERNAME=azureuser PASSWORD=$(openssl rand -base64 32)
Execute o comando a seguir no Cloud Shell para criar uma VM:
az vm create \ --resource-group "<rgn>[Sandbox resource group name]</rgn>" \ --name myVM \ --image win2019datacenter \ --admin-username $USERNAME \ --admin-password $PASSWORD
A criação da VM e dos recursos de suporte demora alguns minutos. Se a VM for criada com êxito, você deverá ver uma saída como esta:
{ "fqdns": "", "id": "/subscriptions/<guid>/resourceGroups/myResourceGroup/providers/Microsoft.Compute/virtualMachines/myVM", "location": "eastus", "macAddress": "00-0D-3A-36-BA-28", "powerState": "virtual machine running", "privateIpAddress": "10.0.0.4", "publicIpAddress": "104.40.69.56", "resourceGroup": "myResourceGroup" }
Copie o
publicIpAddress
dessa saída e salve-o. Posteriormente no exercício, você usará esse endereço para acessar a VM.Execute o seguinte comando no Cloud Shell para abrir a porta 80 da sua VM para tráfego da Web:
az vm open-port \ --port 80 \ --resource-group "<rgn>[Sandbox resource group name]</rgn>" \ --name myVM
No navegador da Web, acesse o endereço IP público da sua VM
http://[public-ip]
. Embora a porta 80 esteja aberta, sua conexão deve atingir o tempo limite comThis site can't be reached
. Esse erro ocorre porque o IIS não está implantado na sua VM. Vamos corrigir isso depois neste exercício.
Criar uma conta de Automação do Azure
Entre no portal do Azure usando a mesma conta usada para ativar a área restrita.
No menu de recursos do portal do Azure ou na Página inicial, selecione Criar um recurso. O painel Criar um recurso será exibido.
Na caixa de texto Serviços de pesquisa e marketplace, insira Automação e pressione Enter para ver os resultados da pesquisa.
Nos resultados da pesquisa de Automação, selecione o serviço do Azure Automação publicado pela Microsoft.
Selecione Criar. O painel Criar uma Conta de Automação é exibido.
Insira os valores a seguir para cada configuração.
Configuração Valor Subscription Assinatura do Concierge Grupo de recursos Selecione o grupo de recursos existente na lista suspensa Nome Insira um nome para sua conta de automação. Sugerimos usar [suas iniciais]-automation-account. Use esse nome sempre que vir [your-automation-account-name] neste exercício. Region Aceite a localização padrão Selecione Examinar + Criar e Criar. Aguarde até que a conta de automação seja implantada.
Selecione Ir para o recurso quando a implantação for concluída. O painel Conta de Automação para seu recurso é exibido.
Criar um script de configuração da DSC
No Cloud Shell, execute o seguinte comando para iniciar uma sessão do PowerShell:
pwsh
No prompt do PowerShell, execute o comando a seguir para abrir um novo arquivo chamado MyDscConfiguration.ps1 no editor de código:
code $HOME/MyDscConfiguration.ps1
Insira o bloco de código a seguir no arquivo. Esse código cria uma configuração para instalar o IIS, caso ele ainda não esteja instalado. O código executa o script para compilar a configuração.
Configuration MyDscConfiguration { Node "localhost" { WindowsFeature MyFeatureInstance { Ensure = 'Present' Name = 'Web-Server' } } }
Selecione Ctrl+S para salvar o arquivo em seu diretório base e selecione Ctrl+Q para fechar o editor.
Na sessão do PowerShell no Azure Cloud Shell, insira o código a seguir, substituindo
[your-automation-account-name]
pelo nome do recurso de conta de automação, para carregar o script DSC para sua conta de automação do Azure.Import-AzAutomationDscConfiguration ` -Published ` -ResourceGroupName <rgn>[Sandbox resource group name]</rgn> ` -SourcePath $HOME/MyDscConfiguration.ps1 ` -Force ` -AutomationAccountName [your-automation-account-name]
O comando deve produzir uma saída parecida com esta:
ResourceGroupName : <rgn>[Sandbox resource group name]</rgn> AutomationAccountName : [your-automation-account-name] Location : eastus State : Published Name : MyDscConfiguration Tags : {} CreationTime : 6/25/21 5:44:36 PM +00:00 LastModifiedTime : 6/25/21 5:44:36 PM +00:00 Description : Parameters : {} LogVerbose : False
Adicionar os módulos obrigatórios (opcional)
Após carregar o script de configuração DSC, importe todos os módulos do PowerShell de que o processo DSC precisa. Nossa configuração não precisa de outros módulos, portanto, podemos pular esta etapa. Caso precise importar ou adicionar módulos à sua conta de automação, acesse sua conta de automação no portal do Azure. A partir daí, selecione Módulos no cabeçalho Recursos Compartilhados à esquerda e, em seguida, selecione Adicionar um módulo.
Compilar o script da DSC
No portal do Azure, o painel Visão geral da sua conta de Automação do Azure ainda deve ser exibido.
No painel do menu Conta de Automação, em Gerenciamento de Configuração, selecione DSC (State Configuration). O painel de DSC (State Configuration) da sua conta de automação é exibido.
Selecione a guia Configurações. Verifique se a configuração MyDscConfiguration é exibida e selecione-a. O painel de configuração MyDscConfiguration é exibido.
Na barra de comandos, selecione Compilar.
Na caixa de diálogo Compilar Configuração de DSC, selecione Sim.
Verifique suas notificações (o ícone Notificações está nos controles globais no cabeçalho da página). Aguarde até que o trabalho de compilação mostre o Status de Concluído, o que pode levar vários minutos.
Observação
Talvez seja necessário atualizar para ver a alteração do status. Para atualizar, no caminho de navegação estrutural superior esquerdo do portal do Azure, selecione sua conta de automação. O painel de State Configuration (DSC) é exibido. Na barra de menus superior, selecione Atualizar. Em seguida, selecione configuração do MyDscConfiguration na lista para retornar ao painel MyDscConfiguration. Na guia Trabalhos de compilação, o Status agora deve aparecer como Concluído.
Quando a compilação for concluída, feche o painel MyDscConfiguration. Seu painel de State Configuration (DSC) é exibido.
Registrar a VM na conta da Automação do Azure
No painel DSC (State Configuration) de [nome-sua-conta-automação], selecione a guia Nós e, na barra de comandos, selecione Adicionar. O painel Máquinas Virtuais da sua conta de automação é exibido.
Selecione a VM que você criou na primeira tarefa deste exercício (myVM). Pode levar até dez minutos para que a configuração e a VM se propaguem na rede. Se a VM não estiver listada, aguarde alguns minutos e selecione Atualizar na barra de comandos até que ela seja exibida.
Na barra de comandos, selecione Conectar. O painel Registro é exibido.
Insira os valores a seguir para cada configuração.
Configuração Valor Nome do nó de configuração Na lista suspensa, selecione MyDscConfiguration.localhost Frequência de Atualização 30 Frequência do Modo de Configuração 15 Modo de Configuração ApplyAndMonitor Permitir Substituição de Módulo Marcar caixa de seleção Reinicialize o nó se necessário Marcar caixa de seleção Ação após Reinicialização ContinueConfiguration Selecione OK.
Espere até que a VM esteja conectada. Esse processo pode levar alguns minutos. Quando sua myVM estiver conectada, no caminho de navegação no canto superior esquerdo do portal, selecione sua conta de automação para fechar o painel Registro e Máquinas Virtuais. O painel de DSC (State Configuration) da sua conta de automação é exibido.
Na barra de comandos, selecione Atualizar.
Verifique se o nó myVM aparece na lista e se seu status é Compatível.
Verificar se o IIS está instalado na VM
No navegador da Web, acesse http://[public-ip]
, em que [public-ip]
é o endereço IP público que você registrou anteriormente neste exercício.
Você verá a página da Web do IIS padrão.
Parabéns! Você implantou o IIS com êxito. A Automação do Azure usou o script da DSC do PowerShell que você carregou em sua conta de Automação do Azure.