首页
学习
活动
专区
圈层
工具
发布
社区首页 >问答首页 >保持两个版本的AWS Lambdas运行

保持两个版本的AWS Lambdas运行
EN

Stack Overflow用户
提问于 2020-01-13 19:33:31
回答 1查看 452关注 0票数 0

简单解释我当前的基础架构:我使用的是AWS Lambdas (在那里运行python代码),它是通过Gitlab CI使用无服务器框架部署的。

情况说明:我目前有一个AWS Lambda,它使用一个特定的库版本(目前是1.x.x版)。在某个时刻,这个Lambda将开始使用新版本的this库(比方说2.x.x),但我希望这两个Lambda仍然部署并可用于处理请求。

如果在其他某个时间点,该库的版本为3.x.x,我希望使用版本3.x.x和2.x.x的lambda保持运行(基本上是当前版本和当前版本-1 lambda)。让我们称它们为Lambda_NEW和Lambda_OLD。

AWS lambdas有可以使用的版本和别名的概念,但不幸的是,它们不被serverless直接支持。注意: serverless支持多个版本(无法命名),并且有一个名为serverless- AWS -aliases的插件可以为您设置别名,但该插件指的是实际的AWS Lambda版本(请参阅https://github.com/serverless-heaven/serverless-aws-alias/issues/148)。

你有什么办法解决这个问题吗?

到目前为止,我唯一有效的想法是保留两个分支(新的和旧的),这两个分支将使用库的两个不同版本,并且每个分支将具有其不同的部署CI。这是非常违反直觉的,因为我不知道如何维护、开发和掌握分支。还有,什么时候部署到哪个阶段等。

此外,我还希望同时部署Lambda_NEW和Lambda_OLD (例如,当切换到5.x.x库时,我希望5.x.x版本在新版本中,4.x.x版本在旧版本中)

EN

回答 1

Stack Overflow用户

发布于 2020-01-14 23:06:10

我不确定从你的帖子,但我猜你想要一种方法来处理金丝雀部署,以便您可以轻松回滚更改?如果不是这样,你可以编辑你的问题并提供更清晰的信息吗?

如果是这样的话,我建议遵循this guide并使用canary-deployments插件,它将自动为新版本创建别名,并允许您定义如何在已部署的版本之间转移流量。

票数 1
EN
页面原文内容由Stack Overflow提供。腾讯云小微IT领域专用引擎提供翻译支持
原文链接:

https://stackoverflow.com/questions/59715831

复制
相关文章

相似问题

领券
问题归档专栏文章快讯文章归档关键词归档开发者手册归档开发者手册 Section 归档