Para o Automation Assembler inicializar uma máquina Windows implantada no vSphere, a imagem precisa ser baseada em um modelo do vSphere com o Cloudbase-Init instalado e configurado.

Criando a imagem

  1. Use o vSphere para criar e ligar uma máquina virtual Windows.
  2. Na máquina virtual, faça login no Windows.
  3. Baixe Cloudbase-Init.

    https://cloudbase.it/cloudbase-init/#download

  4. Inicie o arquivo .msi de Cloudbase-Init.

    Durante a instalação, insira Administrador como o nome de usuário e selecione a opção para executar como LocalSystem.

    Página de conta do assistente de instalação Cloudbase-Init

    Outras seleções de configuração podem permanecer como valores padrão.

  5. Permita que a instalação seja executada, mas não feche a página final Concluído do assistente de configuração.
    Importante: Não feche a página final do assistente de configuração.
  6. Com a página Concluído do assistente de instalação ainda aberta, use o Windows para navegar até o caminho de instalação de Cloudbase-Init e abra o seguinte arquivo em um editor de texto.

    conf\cloudbase-init-unattend.conf

  7. Defina metadata_services como OvfService, conforme mostrado. Adicione a configuração se ela ainda não existir.

    metadata_services=cloudbaseinit.metadata.services.ovfservice.OvfService

  8. Salve e feche cloudbase-init-unattend.conf.
  9. Na mesma pasta, abra o seguinte arquivo em um editor de texto.

    conf\cloudbase-init.conf

  10. Defina first_logon_behaviour, metadata_services e plugins, conforme mostrado. Adicione as configurações se elas ainda não existirem.
    first_logon_behaviour=always
    . . .
    metadata_services=cloudbaseinit.metadata.services.ovfservice.OvfService
    . . . 
    plugins=cloudbaseinit.plugins.windows.createuser.CreateUserPlugin,cloudbaseinit.plugins.windows.setuserpassword.SetUserPasswordPlugin,cloudbaseinit.plugins.common.sshpublickeys.SetUserSSHPublicKeysPlugin,cloudbaseinit.plugins.common.userdata.UserDataPlugin
    . . .

    Se estiver usando um provedor de IPAM para atribuir IPs estáticos no Windows, inclua cloudbaseinit.plugins.common.networkconfig.NetworkConfigPlugin na sua lista de plug-ins para garantir a integração adequada do IPAM.

  11. Salve e feche cloudbase-init.conf.
  12. Na página Concluído do assistente de instalação, selecione as opções para executar Sysprep e desligar após Sysprep e clique em Concluir.
    Observação: A VMware tem visto casos em que a execução do Sysprep impede que as implantações da imagem funcionem.

    Durante a implantação, o Automation Assembler aplica uma especificação de personalização gerada dinamicamente, o que desconecta a interface de rede. O estado de Sysprep pendente na imagem pode fazer com que a especificação de personalização falhe e deixar a implantação desconectada.

    Se você suspeitar que isso está acontecendo no seu ambiente, tente deixar as opções de Sysprep desativadas ao criar a imagem.
    Página final do assistente de instalação Cloudbase-Init
  13. Depois que a máquina virtual for encerrada, use vSphere para transformá-la em um modelo.

Detalhes adicionais

A tabela a seguir expande as entradas de configuração feitas durante a instalação.

Definição da configuração Objetivo
Username, CreateUserPlugin e SetUserPasswordPlugin Após Sysprep, a primeira inicialização usa CreateUserPlugin para criar a conta com o nome de usuário Administrador e uma senha em branco. SetUserPasswordPlugin permite que Cloudbase-Init altere a senha em branco para a senha de acesso remoto que será incluída no modelo de nuvem.
Comportamento do primeiro logon Essa configuração solicita que o usuário altere a senha no primeiro login.
Serviços de metadados Ao listar apenas OvfService, Cloudbase-Init não tentará encontrar outros serviços de metadados que não sejam compatíveis com o vCenter. Isso resulta em arquivos de log mais limpos, pois os logs seriam preenchidos de outra forma com entradas sobre a falha ao encontrar os outros serviços.
Plug-ins Ao listar apenas os plug-ins com recursos compatíveis com o OvfService, os logs são mais limpos. Cloudbase-Init executa plug-ins na ordem especificada.
Executar como LocalSystem Essa configuração oferece suporte a qualquer comando de inicialização avançado que possa exigir que Cloudbase-Init seja executado em uma conta de administrador dedicada.