Implementaciones en una plataforma de informática de AWS Lambda
Este tema proporciona información sobre los componentes y el flujo de trabajo de las implementaciones de CodeDeploy que utilizan la plataforma de informática de AWS Lambda.
Flujo de trabajo de implementación en una plataforma de informática de AWS Lambda
En el siguiente diagrama se muestran los principales pasos en la implementación de funciones de AWS Lambda nuevas y actualizadas.
Estos pasos incluyen:
-
Cree una aplicación y asígnele un nombre que identifique las revisiones de la aplicación que desea implementar. Para implementar funciones de Lambda, elija la plataforma de informática de AWS Lambda al crear la aplicación. CodeDeploy utiliza este nombre durante una implementación para asegurarse de que se haga referencia a los componentes correctos de la implementación, como el grupo de implementación, la configuración de la implementación y la revisión de la aplicación. Para obtener más información, consulte Creación de una aplicación con CodeDeploy.
-
Configure un grupo de implementaciones especificando el nombre del grupo.
-
Elija una configuración de implementación para especificar cómo se desvía el tráfico desde la versión original de la función de AWS Lambda a la nueva versión de la función de Lambda. Para obtener más información, consulte View Deployment Configuration Details.
-
Carga de un archivo de especificación de la aplicación (archivo AppSpec) a Amazon S3. El archivo AppSpec especifica una versión de la función de Lambda y las funciones de Lambda que se utilizan para validar la implementación. Si no desea crear un archivo AppSpec, puede especificar una versión de la función de Lambda y las funciones de validación de la implementación de Lambda directamente en la consola utilizando YAML o JSON. Para obtener más información, consulte Gestión de revisiones de aplicaciones para CodeDeploy.
-
Implemente la revisión de la aplicación en el grupo de implementación. AWS CodeDeploy implementa la revisión de la función de Lambda que ha especificado. El tráfico se desvía a la revisión de la función de Lambda utilizando el archivo AppSpec de implementación que seleccionó al crear la aplicación. Para obtener más información, consulte Creación de una implementación con CodeDeploy.
-
Compruebe los resultados de la implementación. Para obtener más información, consulte Monitorización de las implementaciones en CodeDeploy.
Carga de la revisión de la aplicación
Ponga un archivo AppSpec en Amazon S3 o introdúzcalo directamente en la consola o en la AWS CLI. Para obtener más información, consulte Application Specification Files.
Creación de la aplicación y los grupos de implementación
Un grupo de implementación de CodeDeploy en una plataforma de informática de AWS Lambda identifica una colección de uno o varios archivos AppSpec. Cada archivo AppSpec puede implementar una versión de una función de Lambda. Un grupo de implementaciones también define un conjunto de opciones de configuración para implementaciones futuras, como alarmas y configuraciones de restauración.
Implementación de la revisión de la aplicación
Ahora puede implementar la revisión de la función especificada en el archivo AppSpec en el grupo de implementación. Puede utilizar la consola de CodeDeploy o el comando create-deployment. Hay parámetros que puede especificar para controlar la implementación, que incluyen la revisión, el grupo de implementaciones y la configuración de la implementación.
Actualización de la aplicación
Puede llevar a cabo actualizaciones de su aplicación y, a continuación, utilizar la consola de CodeDeploy o llamar al comando create-deployment para enviar una revisión.
Implementaciones detenidas y que producen error
Puede utilizar la consola de CodeDeploy o el comando stop-deployment para detener una implementación. Cuando se intenta detener la implementación, sucede una de estas tres cosas:
-
La implementación se detiene y la operación devuelve el estado “realizada correctamente”. En este caso, no se ejecutan más eventos del ciclo de vida de implementación en el grupo de implementaciones para la implementación detenida.
-
La implementación no se detiene inmediatamente y la operación devuelve el estado “pendiente”. En este caso, podrían seguir ejecutándose algunos eventos del ciclo de vida de implementación en el grupo de implementaciones. Después de finalizada la operación pendiente, las llamadas posteriores para detener la implementación devuelven el estado “realizada correctamente”.
-
La implementación no se puede detener y la operación devuelve un error. Para obtener más información, consulte Información sobre errores y Errores comunes en la Referencia de la API de AWS CodeDeploy.
Al igual que las implementaciones detenidas, las implementaciones con errores pueden hacer que algunos eventos del ciclo de vida de implementación ya se hayan ejecutado. Para averiguar por qué no se ha realizado una implementación, puede utilizar la consola de CodeDeploy o analizar los datos del archivo de registro de la implementación que ha fallado. Para obtener más información, consulte Limpieza de revisiones de aplicación y archivos de registro y Visualización de los datos de registro de las implementaciones de EC2/en las instalaciones de CodeDeploy.
Reimplementaciones y restauración de implementaciones
CodeDeploy implementa restauraciones volviendo a implementar una revisión implementada anteriormente como una nueva implementación.
Puede configurar un grupo de implementación para que se restaure automáticamente si se dan ciertas condiciones, por ejemplo, si falla una implementación o si se alcanza el umbral de monitorización de alarmas. Además, puede anular la configuración de restauración especificada para el grupo de implementaciones en una implementación individual.
También puede optar por restaurar una implementación que produjo error manualmente, volviendo a implementar una revisión implementada anteriormente.
En todos los casos, a la implementación nueva o restaurada se le asigna su propio ID de implementación. En la lista de implementaciones que puede ver en la consola de CodeDeploy se muestra cuáles son el resultado de una implementación automática.
Para obtener más información, consulte Volver a implementar y restaurar una implementación con CodeDeploy.