Capturando uma imagem de máquina virtual customizada para ser usada como modelo (template)

Autor: Daniel Pires / Revisão: Daniel Mauser

Introdução

Olá Pessoal,

Hoje falaremos sobre imagens de máquinas virtuais no Azure. Os tipos existentes, diferenças e o passo-a-passo para a geração de suas imagens customizadas.

Conforme já deve ser de seu conhecimento, as máquinas virtuais no Azure podem ser criadas através das imagens já existentes e disponíveis na própria plataforma:

Outra forma de ver as imagens disponíveis na plataforma é através do Azure PowerShell cmdlet Get-AzureVMImage:

Exemplos:

Este comando retorna as imagens que tenham o parâmetro ImageFamily com Windows Server 2012 R2 Datacenter:

Customizando um pouco mais este comando, é possível descobrir a imagem mais recente:

Muitas vezes, porém estas imagens podem não ser suficientes para a sua implementação e neste cenário, a criação de imagens customizadas é o melhor caminho a seguir.

Quais são os tipos de imagens de máquinas virtuais disponíveis?

Existem dois (2) tipos de imagens: Generic e Specialized.

Generic

São chamadas dessa forma porque durante o seu processo de criação, uma ferramenta que “generaliza” o Sistema Operacional é executada. Em imagens baseadas no Windows, essa ferramenta é o Sysprep e em imagens baseadas no Linux é o Azure Agent (waagent).

Essas ferramentas colocam o Sistema Operacional num estado de “Pre-Deployment” (sem nome de computador, em grupo de trabalho, remove os SIDs, credenciais locais, etc...) mas as suas customizações (aplicações instaladas, discos de dados, etc...) se mantém!

Um exemplo de onde esse tipo de imagem pode ser bastante útil é numa web farm, onde todos os servidores web necessitam ter a mesma configuração (versões de framework, runtimes e etc...) e a criação/customização de todos os membros dessa farm individualmente seria muito trabalhoso.

Specialized

São imagens de máquinas virtuais que não são generalizadas (ou seja, o Sysprep ou waagent não foi executado) antes do processo de captura. Customizações como o nome do computador, nome de usuário, senha, etc...serão exatamente iguais ao seus valores antes do processo de captura.

Esse tipo de imagem deve ser usado como um “snapshot” onde será possível criar algo similar a um ponto de restauração (saudável) desta máquina virtual antes de executar alguma tarefa que pode causar indisponibilidade caso algo não corra bem.

Qual é o passo-a-passo para a criação de uma imagem Generic:

1) Inicie a máquina virtual, instale os softwares desejados e/ou configure a máquina virtual de acordo com as suas necessidades (adicione discos de dados por exemplo). Cabe salientar que o disco do SO e quaisquer outros discos de dados anexados à máquina virtual serão utilizados para a criação desta VM image. Isso não inclui as configurações de rede e será necessário configurá-las durante a criação das VMs que forem utilizar este template

2) Execute o Sysprep (%windir%\system32\sysprep) utilizando as opções em vermelho:

3) Após clicar em OK, você verá uma janela similar a essa:

4) Após sua execução, o Sysprep desligará a máquina virtual, alterando o status dessa VM para Parado. Isso é normal/esperado e pode ser visto através do Portal:

5) Através do Portal, ainda em MÁQUINAS VIRTUAIS\INSTÂNCIAS, selecione a máquina virtual que você deseja capturar e através da barra de comandos, clique em CAPTURAR:

6) Você verá a caixa de diálogo Capturar a máquina virtual. Altere o NOME DA IMAGEM bem como a DESCRIÇÃO (RÓTULO) e marque a caixa Executei o Sysprep na máquina virtual:

Observação: Conforme já pode ser visto na imagem acima, após a captura de uma imagem genérica, a máquina virtual é excluída!

7) Ainda através do Portal, vá para MÁQUINAS VIRTUAIS\IMAGENS e veja a sua recém criada:

8) Pronto! Sua imagem (template) customizada está pronta para ser usada. Para criarmos a nossa primeira máquina virtual (baseada nesse template recém criado), ainda pelo Portal, selecione MÁQUINAS VIRTUAIS\COMPUTAÇÃO\MÁQUINA VIRTUAL\DA GALERIA. Clique em MINHAS IMAGENS e na coluna EM DESTAQUE veja a nossa imagem recém criada:

 

9) Siga o assistente entrando com as informações requeridas

10) Pronto! Sua primeira máquina virtual (baseada no template criado) foi criada com sucesso! Agora basta repetir o processo de criação até que todas as suas máquinas virtuais (que devam ser baseadas neste template) sejam criadas.

OK...mas e como criar uma imagem Specialized!?

São exatamente os mesmos passos utilizados para a criação de uma imagem do tipo Generic. A única diferença é que não devemos marcar a caixa de verificação Executei o Sysprep na máquina virtual:

Espero que tenham gostado! Obrigado e até a próxima!