¿Cómo puedo ejecutar un comando en una instancia de Windows en EC2 cuando inicio o reinicio la instancia?

4 minutos de lectura
0

Quiero ejecutar un script personalizado en mi instancia de Windows en Amazon Elastic Compute Cloud (Amazon EC2) cuando inicio o reinicio la instancia.

Breve descripción

Agregue un script a los datos del usuario y, a continuación, configúrelo para que se ejecute cuando se inicie o reinicie una instancia. EC2Config (Windows Server 2012 R2 y versiones anteriores), EC2Launch (Windows Server 2016 y 2019) o EC2LaunchV2 (Windows Server 2022) procesan los datos del usuario.

Resolución

Al añadir el script a los datos del usuario, debe indicarlo dentro de una etiqueta especial. Esta etiqueta determina si los comandos se ejecutan en una ventana de línea de comandos o en Windows PowerShell. Para obtener más información, consulte Ejecución de comandos en la instancia de Windows durante el lanzamiento.

No puede añadir ni cambiar los datos de usuario mientras la instancia está en ejecución, pero puede verlos. Para añadir o cambiar los datos de usuario, la instancia debe estar detenida. Los scripts de datos de usuario no se ejecutan automáticamente al reiniciar o iniciar la instancia. Puede configurar los datos de usuario para que se ejecuten la próxima vez, o cada vez, que inicie o reinicie la instancia.

Importante:

1.Conéctese a su instancia de Windows en EC2.

2.En Windows Server 2012 R2 o versiones anteriores, abra C:\Archivos de programas\Amazon\Ec2ConfigService\Ec2ConfigServiceSetting.exe. A continuación, en Datos de usuario, seleccione Habilitar la ejecución de datos de usuario la próxima vez que se inicie el servicio.
Nota: El comando anterior cambia la contraseña del administrador local de la instancia cada vez que se reinicia. Si utiliza una AMI con la opción Sin par de claves seleccionada, puede que pierda el acceso a su instancia cuando la reinicie.

En Windows Server 2016 y 2019, abra una ventana de comandos de Windows PowerShell y, a continuación, ejecute el siguiente comando:

C:\ProgramData\Amazon\EC2-Windows\Launch\Scripts\InitializeInstance.ps1 –Schedule

En Windows Server 2022, ejecute UserData como script y establezca la frecuencia para que se ejecute siempre con cada arranque. Para obtener más información, consulte executeScripts para ver la sintaxis y ejemplos.

3.En la consola de Amazon EC2, detenga la instancia.

4.Seleccione la instancia y, a continuación, Acciones. Luego elija Configuración de la instancia y, a continuación, Editar datos de usuario.

5.Agregue o actualice los datos del usuario y, a continuación, seleccione Guardar.
Nota: Para ejecutar scripts de datos de usuario con cada nuevo arranque o reinicio de la instancia, añada la siguiente configuración:

<persist>true</persist>

6.Inicie la instancia. Los scripts de datos de usuario se ejecutan como parte del proceso de inicio de la instancia.
Para solucionar problemas adicionales, los archivos de registro EC2Config, EC2Launch y EC2LaunchV2 contienen los flujos estándar de resultados y errores. Los archivos de registro se encuentran en:

  • EC2Config: C:\Archivos de programa\Amazon\Ec2ConfigService\Logs\Ec2Config.log
  • EC2Launch: C:\ProgramData\Amazon\EC2-Windows\Launch\Log\UserdataExecution.log
  • EC2LaunchV2: C:\ProgramData\Amazon\EC2Launch\log\agent.log

Información relacionada

¿Cómo puedo ejecutar un comando en una nueva instancia de Windows en EC2 en el momento del lanzamiento?

OFICIAL DE AWS
OFICIAL DE AWSActualizada hace un año