使用别名的流量转移

Posted cloudrivers

tags:

篇首语:本文由小常识网(cha138.com)小编为大家整理,主要介绍了使用别名的流量转移相关的知识,希望对你有一定的参考价值。

默认情况下,别名指向单个 Lambda 函数版本。在更新别名以指向不同的函数版本时,传入请求流量将立即指向更新的版本。这会导致该别名出现新版本引入的任何潜在的不稳定性问题。要最大限度降低这种影响,您可以实施 Lambda 别名的 routing-config 参数以允许指向 Lambda 函数的两个不同版本,并指示发送到每个版本的传入流量百分比。

例如,您可以指定在分析生产环境就绪性时仅将 2% 传入流量路由到新版本,而将其余 98% 路由到原始版本。随着新版本的不断成熟,您可以根据需要逐渐更新比率,直到确定新版本是稳定的。然后,您可以更新别名以将所有流量路由到新版本。

您可以将别名最多指向两个 Lambda 函数版本。此外:

  • 两个版本必须具有相同的 IAM 执行角色。

  • 两个版本必须具有相同的 AWS Lambda 函数死信队列 配置,或没有 DLQ 配置。

  • 在将别名指向多个版本时,别名不能指向 $LATEST

使用别名的流量转移 (CLI)
要配置别名以使用 CreateAlias 操作根据权重在两个函数版本之间转移流量,您需要配置 routing-config 参数。以下示例将别名指向两个不同的 Lambda 函数版本,版本 2 接收 2% 调用流量,其余 98% 调用版本 1。

aws lambda create-alias --name alias name --function-name function-name \ --function-version 1
--routing-config AdditionalVersionWeights="2"=0.02
您可以使用 UpdateAlias 操作更新新版本 (版本 2) 的传入流量百分比。例如,您可以将新版本的调用流量提高到 5%,如下所示。

aws lambda update-alias --name alias name --function-name function-name --routing-config AdditionalVersionWeights="2"=0.05
要将所有流量路由到版本 2,请再次使用 UpdateAlias 操作更改 function-version 属性以指向版本 2。在相同的命令中,重置路由配置。

aws lambda update-alias --name alias name --function-name function-name \ 
--function-version 2 --routing-config AdditionalVersionWeights=

 

以上是关于使用别名的流量转移的主要内容,如果未能解决你的问题,请参考以下文章

通过不同的 URL 将一些 WL.Client 适配器调用流量重新路由/转移到 WL 服务器(用于 PCI 支付和安全要求)?

具有生产和故障转移功能的 AWS ELB 应用程序负载均衡器

洛谷 P2754 星际转移问题最大流

网络流24题星际转移问题(最大流)(网络判定)

博客开篇,数据转移

Redis故障转移高可用方案!