本文属于机器翻译版本。若本译文内容与英语原文存在差异,则一律以英文原文为准。
在Amazon Lambda 计算平台上部署
本主题提供有关使用Amazon Lambda 计算平台的CodeDeploy部署的组件和工作流程的信息。
Amazon Lambda计算平台上的部署工作流程
下图显示了部署新增和更新 Amazon Lambda 函数的主要步骤。
这些步骤包括:
-
创建应用程序并为其指定唯一标识要部署的应用程序修订的名称。要部署 Lambda 函数,请在创建应用程序时选择Amazon Lambda 计算平台。CodeDeploy在部署期间使用此名称来确保它引用了正确的部署组件,例如部署组、部署配置和应用程序版本。有关更多信息,请参阅使用创建应用程序 CodeDeploy:
-
通过指定部署组的名称设置部署组。
-
选择部署配置以指定如何将流量从您的原始Amazon Lambda函数版本转移到新的 Lambda 函数版本。有关更多信息,请参阅View Deployment Configuration Details:
-
将应用程序规范文件(AppSpec文件)上传到 Amazon S3。该AppSpec文件指定了 Lambda 函数版本和用于验证您的部署的 Lambda 函数。如果您不想创建AppSpec文件,则可以使用 YAML 或 JSON 直接在控制台中指定 Lambda 函数版本和 Lambda 部署验证函数。有关更多信息,请参阅使用 CodeDeploy 的应用程序修订:
-
将您的应用程序修订部署到部署组。 Amazon CodeDeploy部署您指定的 Lambda 函数版本。使用您在创建应用程序时选择的部署AppSpec文件将流量转移到您的 Lambda 函数修订版。有关更多信息,请参阅使用创建部署 CodeDeploy:
-
检查部署结果。有关更多信息,请参阅监控 CodeDeploy 中的部署:
上传您的应用程序修订版
将AppSpec文件放入 Amazon S3 或直接将其输入控制台或Amazon CLI。有关更多信息,请参阅Application Specification Files:
创建您的应用程序和部署组
AmazonLambda 计算平台上的CodeDeploy部署组标识一个或多个AppSpec文件的集合。每个AppSpec文件可以部署一个 Lambda 函数版本。部署组还定义一些用于未来部署的配置选项,例如警报和回滚配置。
部署应用程序修订版
现在准备好将AppSpec文件中指定的函数修订版部署到部署组中。您可以使用CodeDeploy控制台或 create-deploymen t 命令。可以指定一些参数(包括修订、部署组和部署配置)来控制部署。
更新应用程序
您可以更新您的应用程序,然后使用CodeDeploy控制台或调用 create-deploymen t 命令来推送修订版。
部署已停止且失败
您可以使用CodeDeploy控制台或 stop-deploy ment 命令来停止部署。当您尝试停止部署时,将发生下面三种情况之一:
-
部署将停止,并且操作将返回成功状态。在这种情况下,没有更多的部署生命周期事件将在已停止部署的部署组上运行。
-
部署将不会立即停止,并且操作将返回挂起状态。在这种情况下,一些部署生命周期事件可能仍在部署组上运行。在挂起的操作完成后,停止部署的后续调用将返回成功状态。
-
部署无法停止,并且操作将返回错误。有关更多信息 ErrorInformation,请参阅Amazon CodeDeploy API 参考中的常见错误。
与停止的部署一样,失败的部署可能导致某些部署生命周期事件已在运行。要查明部署失败的原因,可以使用 CodeDeploy 控制台或分析失败部署中的日志文件数据。有关更多信息,请参阅 应用程序修订和日志文件清理 和 查看 CodeDeploy EC2/本地部署的日志数据。
重新部署和部署回滚
CodeDeploy 实现回滚的方式是将以前部署的版本重新部署为新的部署。
您可以对部署组进行配置,使之在满足特定条件(例如部署失败或达到警报监控阈值)时自动回滚部署。您还可以在单个部署中覆盖为部署组指定的回滚设置。
另外,也可以选择通过手动重新部署以前部署的版本回滚失败的部署。
在所有情况下,新的或回滚的部署都分配有自己的部署 ID。您可以在 CodeDeploy 控制台中查看的部署列表显示哪些部署是自动部署的结果。
有关更多信息,请参阅使用 CodeDeploy 重新部署和回滚部署: