Creación de una AMI mediante Windows Sysprep con EC2Launch
Cuando crea una imagen a partir de una instancia con el agente de EC2Launch instalado, EC2Launch realiza tareas específicas a medida que se prepara la imagen. Esto incluye trabajar con Windows Sysprep. Para obtener más información, consulte Fases de Windows Sysprep.
EC2Launch ofrece un archivo de respuestas predeterminado y archivos por lotes para Windows Sysprep que automatizan y protegen el proceso de preparación de imágenes de la AMI. Es opcional modificar estos archivos. Estos archivos se encuentran de manera predeterminada en el siguiente directorio: C:\ProgramData\Amazon\EC2-Windows\Launch\Sysprep.
importante
No utilice Windows Sysprep para crear una copia de seguridad de la instancia. Windows Sysprep elimina la información específica del sistema. Si elimina esta información, podrían producirse consecuencias no deseadas en una copia de seguridad de instancias.
Contenido
Archivos por lotes y respuestas de EC2Launch para Windows Sysprep
El archivo de respuestas EC2Launch y los archivos por lotes de Windows Sysprep incluyen lo siguiente:
Unattend.xml-
Este es el archivo de respuestas predeterminado. Si ejecuta
SysprepInstance.ps1o elige ShutdownWithSysprep en la interfaz de usuario, el sistema lee los ajustes en este archivo. BeforeSysprep.cmd-
Personalice este archivo por lotes para que ejecute comandos antes de que EC2Launch ejecute Windows Sysprep.
SysprepSpecialize.cmd-
Personalice este archivo por lotes para que ejecute comandos durante la fase de specialize de Windows Sysprep.
Ejecute Windows Sysprep con EC2Launch
En la instalación completa de Windows Server 2016 y versiones posteriores (con la experiencia de escritorio), puede ejecutar Windows Sysprep con EC2Launch manualmente o con la aplicación EC2 Launch Settings.
Para ejecutar Windows Sysprep mediante la aplicación EC2Launch Settings
-
En la consola de Amazon EC2, localice o cree una AMI de Windows Server 2016 o posterior.
-
Lance una instancia de Windows desde la AMI.
-
Conéctese a la instancia de Windows y personalícela.
-
Busque la aplicación EC2LaunchSettings y ejecútela. De forma predeterminada, se encuentra en el siguiente directorio:
C:\ProgramData\Amazon\EC2-Windows\Launch\Settings.
-
Seleccione o borre las opciones que correspondan. Esta configuración se almacena en el archivo
LaunchConfig.json. -
En Contraseña del administrador, realice una de las acciones siguientes:
-
Elija Asignación al azar. EC2Launch genera una contraseña y la cifra usando la clave del usuario. El sistema deshabilita esta configuración tras la inicialización de la instancia para que esta contraseña persista si la instancia se reinicia o si se detiene y se inicia.
-
Elija Especificarla y escriba una contraseña que cumpla los requisitos del sistema. La contraseña se almacena en
LaunchConfig.jsoncomo texto sin cifrar y se elimina después de que Windows Sysprep define la contraseña del administrador. Si apaga en equipo en este momento, la contraseña se establece inmediatamente. EC2Launch cifra la contraseña usando la clave del usuario. -
Elija No hacer nada y especifique una contraseña en el archivo
unattend.xml. Si no especifica una contraseña en el archivounattend.xml, la cuenta del administrador se deshabilitará.
-
-
Elija Cerrar con Sysprep.
Para ejecutar Windows Sysprep manualmente mediante EC2Launch
-
En la consola de Amazon EC2, localice o cree una AMI para Windows Server 2016 Datacenter Edition o posterior que desee duplicar.
-
Lance y conéctese a la instancia de Windows.
-
Personalice la instancia.
-
Especifique las opciones en el archivo
LaunchConfig.json. De forma predeterminada, este archivo se encuentra en el directorioC:\ProgramData\Amazon\EC2-Windows\Launch\Config.En
adminPasswordType, especifique uno de los siguientes valores:Random-
EC2Launch genera una contraseña y la cifra usando la clave del usuario. El sistema deshabilita esta configuración tras la inicialización de la instancia para que esta contraseña persista si la instancia se reinicia o si se detiene y se inicia.
Specify-
EC2Launch usa la contraseña que ha especificado en
adminPassword. Si la contraseña no cumple los requisitos del sistema, EC2Launch genera una contraseña aleatoria en su lugar. La contraseña se almacena enLaunchConfig.jsoncomo texto sin cifrar y se elimina después de que Windows Sysprep define la contraseña del administrador. EC2Launch cifra la contraseña usando la clave del usuario. DoNothing-
EC2Launch usa la contraseña que ha especificado en el archivo
unattend.xml. Si no especifica una contraseña en el archivounattend.xml, la cuenta del administrador se deshabilitará.
-
(Opcional) Especifique los ajustes en
unattend.xmly en los otros archivos de configuración. Si tiene pensado estar presente durante la instalación, no es necesario que realice cambios en estos archivos. Los archivos se encuentran de manera predeterminada en el siguiente directorio:C:\ProgramData\Amazon\EC2-Windows\Launch\Sysprep. -
En Windows PowerShell, ejecute
./InitializeInstance.ps1 -Schedule. De forma predeterminada, el script se encuentra en el siguiente directorio:C:\ProgramData\Amazon\EC2-Windows\Launch\Scripts. Este script programa la instancia para que se inicialice durante el siguiente arranque. Debe ejecutar este script antes de ejecutar el scriptSysprepInstance.ps1en el paso siguiente. -
En Windows PowerShell, ejecute
./SysprepInstance.ps1. De forma predeterminada, el script se encuentra en el siguiente directorio:C:\ProgramData\Amazon\EC2-Windows\Launch\Scripts.
Se cierra la sesión en la instancia y esta se cierra. Si comprueba la página Instancias en la consola de Amazon EC2, el estado de la instancia cambia de Running a Stopping y, a continuación, a Stopped. En este punto es seguro crear una AMI desde esta instancia.
Actualice las rutas de metadatos/KMS para Server 2016 y versiones posteriores al iniciar una AMI personalizada.
Para actualizar las rutas de metadatos/KMS para Server 2016 y versiones posteriores al iniciar una AMI personalizada, aplique alguna de las siguientes acciones:
-
Ejecute la GUI EC2LaunchSettings (C:\ProgramData\Amazon\EC2-Windows\Launch\Settings\Ec2LaunchSettings.exe) y seleccione la opción para cerrar el sistema con Windows Sysprep.
-
Ejecute EC2LaunchSettings y cierre el sistema sin Windows Sysprep antes de crear la AMI. Esto establece las tareas de inicialización de inicialización de EC2 para que se ejecuten en el siguiente arranque; con ello, se establecen las rutas basadas en la subred para la instancia.
-
Si lo prefiere, puede reprogramar manualmente las tareas de inicialización de inicialización de EC2 antes de crear una AMI desde PowerShell.
importante
Tenga en cuenta el comportamiento predeterminado de restablecimiento de contraseña antes de reprogramar las tareas.
-
Para actualizar las rutas en una instancia en ejecución en la que se produzcan errores en sus metadatos durante la activación o comunicación con Windows, consulte "No se puede activar Windows".