Paso 3: Implementar la función de Lambda actualizada - AWS CodeDeploy

Las traducciones son generadas a través de traducción automática. En caso de conflicto entre la traducción y la version original de inglés, prevalecerá la version en inglés.

Paso 3: Implementar la función de Lambda actualizada

En este paso, utilizará el myDateTimeFunction.js actualizado para actualizar e iniciar la implementación de la función de Lambda. Puede supervisar el progreso de la implementación en la AWS Lambda consola CodeDeploy o.

La AutoPublishAlias: live línea de la AWS SAM plantilla hace que la infraestructura detecte las actualizaciones de las funciones que utilizan el live alias. Una actualización de la función desencadena una implementación CodeDeploy que desplaza el tráfico de producción de la versión original de la función a la versión actualizada.

Los comandos sam package y sam deploy se utilizan para actualizar y activar la implementación de la función de Lambda. Ha ejecutado estos comandos en Package la AWS SAM aplicación y Implemente la AWS SAM aplicación.

Para implementar la función de Lambda actualizada
  1. En el directorio SAM-Tutorial, ejecute el siguiente comando.

    sam package \ --template-file template.yml \ --output-template-file package.yml \ --s3-bucket amzn-s3-demo-bucket

    Esto crea un nuevo conjunto de artefactos que hacen referencia a la función de Lambda actualizada en el bucket de S3.

  2. En el directorio SAM-Tutorial, ejecute el siguiente comando.

    sam deploy \ --template-file package.yml \ --stack-name my-date-time-app \ --capabilities CAPABILITY_IAM

    Como el nombre de la pila sigue siendomy-date-time-app, AWS CloudFormation reconoce que se trata de una actualización de la pila. Para ver la pila actualizada, regresa a la AWS CloudFormation consola y, en el panel de navegación, selecciona Pilas.

(Opcional) para ver el tráfico durante una implementación (CodeDeploy consola)
  1. Abra la CodeDeploy consola en https://console.aws.amazon.com/codedeploy/.

  2. En el panel de navegación, expanda Aplicaciones y, a continuación, elija su ServerlessDeploymentApplication aplicación my-date-time-app-.

  3. En Deployment groups (Grupos de implementaciones), elija el grupo de implementaciones de la aplicación. Su estado debe ser In progress (En curso).

  4. En Deployment group history (Historial de grupos de implementaciones), elija la implementación que está en curso.

    La barra de progreso Traffic shifting (Desvío de tráfico) y los porcentajes de los cuadros Original y Replacement (Sustitución) de esta página muestran su progreso.

    La sección de progreso de los cambios de tráfico de la CodeDeploy consola.
Para ver el tráfico durante una implementación (consola de Lambda) (opcional)
  1. Abre la AWS Lambda consola en https://console.aws.amazon.com/lambda/.

  2. En el panel de navegación, elija la función my-date-time-app-myDateTimeFunction. En la consola, su nombre contiene un identificador, por lo que tendrá un aspecto similar a my-date-time-app-myDateTimeFunction-123456ABCDEF.

  3. Elija Alias y, a continuación, directo.

Las ponderaciones situadas junto a la versión original de la función (versión 1) y la versión actualizada de la función (versión 2) muestran la cantidad de tráfico que se ofrece a cada versión en el momento en que se cargó esta página de la consola de AWS Lambda . La página no actualiza las ponderaciones con el paso del tiempo. Si actualiza la página una vez al minuto, la ponderación de la versión 1 disminuye en un 10 por ciento y la ponderación de la versión 2 aumenta en un 10 por ciento hasta que la ponderación de la versión 2 es 100.

La sección de alias de la CodeDeploy consola.