Solución de problemas de instancias - AWS CodeDeploy

Solución de problemas de instancias

Las etiquetas deben estar configuradas correctamente

Utilice el comando list-deployment-instances para confirmar que las instancias utilizadas para una implementación están etiquetadas correctamente. Si falta una instancia de EC2 en la salida, utilice la consola de EC2 para confirmar que las etiquetas se han configurado en la instancia. Para obtener más información, consulte Trabajo con etiquetas en la consola en la Guía del usuario de Amazon EC2.

nota

Si etiqueta una instancia y utiliza CodeDeploy inmediatamente para implementar una aplicación en ella, es posible que la instancia no se incluya en la implementación. Esto se debe a que CodeDeploy puede tardar varios minutos en leer las etiquetas. Le recomendamos que espere al menos cinco minutos entre el momento en que etiqueta una instancia y el momento en que intenta realizar una implementación en ella.

El agente de AWS CodeDeploy debe estar instalado y ejecutándose en las instancias

Para verificar que el agente de CodeDeploy está instalado y ejecutándose en una instancia, consulte Comprobación de que el agente de CodeDeploy se está ejecutando.

Para instalar, desinstalar o reinstalar el agente de CodeDeploy, consulte Instalación del agente de CodeDeploy.

Las implementaciones no producen error hasta una hora después cuando se termina una instancia durante una implementación

CodeDeploy proporciona un período de una hora para que cada evento de ciclo de vida de la implementación termine de ejecutarse. Esto proporciona tiempo suficiente para los scripts de larga duración.

Si los scripts no se terminan de ejecutar mientras hay un evento de ciclo de vida en curso (por ejemplo, si se termina una instancia o se cierra el agente de CodeDeploy), puede transcurrir una hora hasta que el estado de la implementación se muestre como Error. Esto es cierto incluso si el periodo de tiempo especificado en el script es inferior a una hora. Esto se debe a que cuando se termina la instancia, el agente de CodeDeploy se cierra y no puede procesar más scripts.

Si se termina una instancia entre eventos de ciclo de vida o antes de que se inicie el primer paso de un evento de ciclo de vida, el tiempo de espera se agota en solo cinco minutos.

Análisis de archivos de registro para investigar los errores de implementación en instancias

Si el estado de una instancia en la implementación es distinto de Succeeded, puede examinar los datos del archivo log para poder identificar el problema. Para obtener información sobre cómo obtener acceso a los datos de registro de una implementación, consulte Visualización de los datos de registro de las implementaciones de EC2/en las instalaciones de CodeDeploy.

Cree un nuevo archivo de registro de CodeDeploy si se ha eliminado por error

Si elimina por error el archivo de registro de implementación en una instancia, CodeDeploy no crea un archivo de registro de sustitución. Para crear un nuevo archivo de registro, inicie sesión en la instancia y, a continuación, ejecute estos comandos:

Para una instancia de Amazon Linux, Ubuntu Server o RHEL, ejecute estos comandos y en este orden, uno cada vez:

systemctl stop codedeploy-agent
systemctl start codedeploy-agent

Para una instancia de Windows Server:

powershell.exe -Command Restart-Service -Name codedeployagent

Solución de errores de implementación “InvalidSignatureException – Signature expired: [hora] is now earlier than [hora]”

CodeDeploy requiere referencias de tiempo precisas para realizar sus operaciones. Si la fecha y la hora de la instancia no están definidas correctamente, es posible que no coincidan con la fecha de firma de la solicitud de la implementación, que CodeDeploy rechaza.

Para evitar errores relacionados con la configuración de tiempo incorrecta, consulte los siguientes temas: