Criar uma AMI usando o Sysprep do Windows com o EC2Launch
Quando você cria uma imagem de uma instância com o agente EC2Launch instalado, ele realiza tarefas específicas à medida que a imagem é preparada. Isso inclui trabalhar com o Sysprep do Windows. Para obter mais informações, consulte Fases do Sysprep do Windows.
O EC2Launch oferece um arquivo de resposta padrão e arquivos em lote para o Sysprep do Windows que automatizam e protegem o processo de preparação de imagem na AMI. A modificação desses arquivos é opcional. Esses arquivos estão localizados no seguinte diretório por padrão: C:\ProgramData\Amazon\EC2-Windows\Launch\Sysprep.
Importante
Não use o Sysprep do Windows para criar um backup da instância. O Sysprep do Windows remove as informações específicas do sistema. Se você remover essas informações, poderá haver consequências não intencionais em um backup da instância.
Conteúdo
Arquivos de resposta e em lotes do EC2Launch para o Sysprep do Windows
O arquivo de resposta e os arquivos em lote do EC2Launch para o Sysprep incluem o seguinte:
Unattend.xml-
Esse é o arquivo de resposta padrão. Se você executar o
SysprepInstance.ps1ou escolher ShutdownWithSysprep na interface do usuário, o sistema lerá a configuração nesse arquivo. BeforeSysprep.cmd-
Personalize esse arquivo em lote para executar comandos antes que o EC2Launch execute o Sysprep do Windows.
SysprepSpecialize.cmd-
Personalize esse arquivo em lotes para executar comandos durante a fase de especialização do Sysprep do Windows.
Executar o Sysprep do Windows com o EC2Launch
Na instalação completa do Windows Server 2016 e posterior (com uma experiência de desktop), é possível executar o Sysprep do Windows com o EC2Launch manualmente ou usando a aplicação Configurações do EC2Launch.
Executar o Sysprep do Windows usando a aplicação Configurações do EC2Launch
-
No console do Amazon EC2, localize ou crie uma AMI do Windows Server 2016 ou posterior.
-
Execute uma instância do Windows a partir da AMI.
-
Conecte-se à sua instância do Windows e personalize-a.
-
Pesquise e execute a aplicação EC2LaunchSettings. Por padrão, ele está localizado no seguinte diretório:
C:\ProgramData\Amazon\EC2-Windows\Launch\Settings.
-
Selecione ou limpe as opções conforme for necessário. Essas configurações são armazenadas no arquivo
LaunchConfig.json. -
Em Administrator password, faça uma das seguintes ações:
-
Escolha Random. O EC2Launch gera uma senha e criptografa-a usando a chave de usuário. O sistema desativa essa configuração depois da execução da instância, portanto, essa senha persistirá se a instância for reinicializada ou parada e iniciada.
-
Escolha Specify e digite a senha que atende aos requisitos do sistema. A senha é armazenada em
LaunchConfig.jsoncomo texto não criptografado e será excluída depois que o Sysprep do Windows definir a senha de administrador. Se você fechar agora, a senha será definida imediatamente. O EC2Launch criptografa a senha usando a chave de usuário. -
Escolha DoNothing e especifique uma senha no arquivo
unattend.xml. Se você não especificar uma senha emunattend.xml, a conta de administrador ficará desativada.
-
-
Escolha Shutdown with Sysprep (Desligar com Sysprep).
Executar o Sysprep do Windows manualmente usando o EC2Launch
-
No console do Amazon EC2, localize ou crie uma AMI Datacenter Edition do Windows Server 2016 ou posterior que você deseja duplicar.
-
Execute e conecte-se à sua instância do Windows.
-
Personalize a instância.
-
Especifique as configurações no arquivo
LaunchConfig.json. Por padrão, esse arquivo está localizado no diretórioC:\ProgramData\Amazon\EC2-Windows\Launch\Config.Para
adminPasswordType, especifique um dos seguintes valores:Random-
O EC2Launch gera uma senha e criptografa-a usando a chave de usuário. O sistema desativa essa configuração depois da execução da instância, portanto, essa senha persistirá se a instância for reinicializada ou parada e iniciada.
Specify-
O EC2Launch usa a senha que você especifica
adminPassword. Se a senha não atender aos requisitos de sistema, o EC2Launch gera uma senha aleatória. A senha é armazenada emLaunchConfig.jsoncomo texto não criptografado e será excluída depois que o Sysprep do Windows definir a senha de administrador. O EC2Launch criptografa a senha usando a chave de usuário. DoNothing-
O EC2Launch usa a senha que você especifica o arquivo
unattend.xml. Se você não especificar uma senha emunattend.xml, a conta de administrador ficará desativada.
-
(Opcional) Especifique as configurações em
unattend.xmle em outros arquivos de configuração. Se o plano atender à instalação, você não precisará fazer alterações nesses arquivos. Por padrão, os arquivos estão localizados no seguinte diretório:C:\ProgramData\Amazon\EC2-Windows\Launch\Sysprep. -
No Windows PowerShell, execute
./InitializeInstance.ps1 -Schedule. Por padrão, o script está localizado no seguinte diretório:C:\ProgramData\Amazon\EC2-Windows\Launch\Scripts. Esse script agenda a instância para ser inicializada durante a próxima inicialização. Execute esse script antes de executar o scriptSysprepInstance.ps1na próxima etapa. -
No Windows PowerShell, execute
./SysprepInstance.ps1. Por padrão, o script está localizado no seguinte diretório:C:\ProgramData\Amazon\EC2-Windows\Launch\Scripts.
Você é desconectado da instância, e a instância é encerrada. Se você verificar a página Instances (Instâncias) no console do Amazon EC2, o estado da instância será alterado de Running para Stopping e, em seguida, para Stopped. Nesse momento, é seguro criar uma AMI com base nessa instância.
Para atualizar rotas de metadados/KMS para o Server 2016 e posterior ao iniciar uma AMI personalizada
Para atualizar rotas de metadados/KMS para o Server 2016 e posterior ao iniciar uma AMI personalizada, siga estas etapas:
-
Execute a GUI EC2LaunchSettings (C:\ProgramData\Amazon\EC2-Windows\Launch\Settings\Ec2LaunchSettings.exe) e selecione a opção para encerrar com o Sysprep do Windows.
-
Execute EC2LaunchSettings e desligue sem o Sysprep do Windows antes de criar a AMI. Isso configura as tarefas de inicialização do EC2 para serem executadas na próxima inicialização, que definirá as rotas com base na sub-rede da instância.
-
Reprograme manualmente as tarefas de inicialização do EC2 antes de criar uma AMI do PowerShell.
Importante
Observe o comportamento padrão de redefinição de senha antes de reprogramar as tarefas.
-
Para atualizar as rotas em uma instância em execução que está passando por ativação do Windows ou comunicação com falhas de metadados de instância, consulte “Não é possível ativar o Windows”.