Lambda版本和别名
发布时,AWS Lambda会分配一个唯一的版本号。
可以将任何名称的别名附加到版本中,并且通过更改与别名相关联的版本,可以通过指定别名来调用调用函数的用户使用的版本。
使用其他版本发布新版本的canary
Alias有一个称为附加版本的选项,您可以主要指定与指定版本及其调用率不同的版本。
可以随时更改是否存在附加版本和调用率,并且可以逐步增加新版本的调用率的canary发布。
如何设置附加版本
在管理控制台
中进行设置时
在Alias设置屏幕上,输入其他版本和权重并保存。
输入0到100之间的整数作为权重。
使用AWS CLI
设置时
使用lambda create-alias或lambda update-alias的--routing-config选项进行设置。
权重指定为从0.00到1.00的十进制数。
1 2 3 4 5 | aws lambda update-alias \ --function-name testCanary \ --name Prod \ --function-version 2 \ --routing-config 'AdditionalVersionWeights={"3"=0.8}' |
检查调用哪个版本
使用AWS CLI
调用时返回值
实际调用的版本号将输出到
响应的ExecutedVersion属性。
*仅当进行同步调用时
1 2 3 4 5 6 7 8 9 | $ aws lambda invoke \ --function-name testCanary \ --qualifier Prod \ --region ap-northeast-1 \ - { "StatusCode": 200, "ExecutedVersion": "3" } |
CloudWatch
CloudWatch允许您获取用于呼叫的每个别名和版本的指标。