步骤 3 部署更新 Lambda 功能
在此步骤中,您将使用更新 myDateTimeFunction.js
更新并启动您的 Lambda 功能。您可以在 CodeDeploy 或 AWS Lambda 控制台。
TheThethe AutoPublishAlias: live
在您的 AWS SAM 模板导致基础架构检测到使用 live
别名。函数的更新会通过 CodeDeploy 触发部署,从而将生产流量从函数的原始版本转移到更新版本。
TheThethe sam package 和 sam deploy 命令用于更新和触发 Lambda 功能。您在 包装 AWS SAM 应用 和 部署 AWS SAM 应用.
部署更新的 Lambda 函数
-
在
SAM-Tutorial
目录中,运行以下命令。sam package \ --template-file template.yml \ --output-template-file package.yml \ --s3-bucket
your-S3-bucket
这会创建一组新的构件,这些构件引用您的 S3 存储桶中的更新的 Lambda 函数。
-
在
SAM-Tutorial
目录中,运行以下命令。sam deploy \ --template-file package.yml \ --stack-name my-date-time-app \ --capabilities CAPABILITY_IAM
因为堆栈名称仍然是
my-date-time-app
, AWS CloudFormation 认识到这是一个堆栈更新。要查看更新的堆栈,请返回 AWS CloudFormation 控制台,从导航窗格中选择 堆栈.
(可选)在部署期间查看流量(CodeDeploy 控制台)
-
通过以下网址打开 CodeDeploy 控制台:https://console.amazonaws.cn/codedeploy/
。 -
在导航窗格中,展开 应用,然后选择您的 My-date-time-app-serverless部署应用程序 应用。
-
在 部署组,选择应用程序的部署组。其状态应为 正在进行中.
-
在 部署组历史记录,选择正在进行的部署。
TheThethe 流量转移 进度条和百分比 原始 和 更换 此页面上的框显示其进度。
(可选)在部署期间查看流量(Lambda 控制台)
-
通过以下网址打开 AWS Lambda 控制台:https://console.amazonaws.cn/lambda/
。 -
从导航窗格中,选择
my-date-time-app-myDateTimeFunction
函数。在控制台中,其名称包含一个标识符,因此看起来类似my-date-time-app-myDateTimeFunction-123456ABCDEF
. -
选择 限定符,选择 别名,然后选择 现场.
原始函数版本(版本 1)和更新的函数版本(版本 2)旁边的权重,显示了在加载此 AWS Lambda 控制台页面时提供给每个版本的流量。该页面不会随时间更新权重。如果每隔一分钟刷新一次页面,则版本 1 的权重降低 10%,版本 2 的权重增加 10%,直到版本 2 的权重达到 100%。
