¿Cómo puedo ejecutar un comando en una instancia de Windows en EC2 cuando inicio o reinicio la instancia?
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:
- Si no usa una dirección IP elástica, la dirección IP pública se libera cuando se detiene la instancia.
- Si la instancia tiene un volumen de almacén de instancias, todos los datos que contenga se perderán cuando se detenga.
- Si se ha definido que el comportamiento de apagado de la instancia sea Terminar, la instancia terminará cuando se detenga.
- Si la instancia forma parte de un grupo de escalamiento automático, primero desasocie la instancia de dicho grupo. Luego, después de detener e iniciar la instancia, vuelva a asociarla al grupo de escalamiento automático. Para obtener más información, consulte Detención e inicio de la instancia.
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
Contenido relevante
- OFICIAL DE AWSActualizada hace 2 años
- OFICIAL DE AWSActualizada hace 2 años
- OFICIAL DE AWSActualizada hace un año
- OFICIAL DE AWSActualizada hace 2 años