【问题标题】:AWS ALB with lambda target through Cloudformation Template通过 Cloudformation 模板具有 lambda 目标的 AWS ALB
【发布时间】:2019-07-16 22:40:59
【问题描述】:

我正在尝试通过我的 Cloudformation 模板创建一个带有“lambda”目标的“AWS::ElasticLoadBalancingV2::TargetGroup”。

如果我没有指定端口,则会收到需要字段端口的错误

但是,如果我使用目标类型“lambda”指定端口,我会收到不应为目标类型 lambda 指定端口的错误...

如何通过 CFT 或 aws cli 命令自动创建指向我的 lambdas ARN 的目标组?

【问题讨论】:

    标签: amazon-web-services aws-lambda amazon-cloudformation aws-cli aws-serverless


    【解决方案1】:

    所以我会使用 AWS cli 执行以下操作。 创建目标群体;

    创建名为例如 target-group.json 的文件;

    {
        "Name": "nameOfTagretGroup",
        "TargetType": "lambda"
    }
    

    然后运行 ​​aws elbv2 create-target-group --cli-input-json target-group.json。或仅使用 aws cli;

    aws elbv2 create-target-group --name $targetName  --target-type lambda
    

    接下来创建一个名为 register-lambda.json 的文件,其中包含内容;

    {
        "TargetGroupArn": "ARN_OF_CREATED_TARGET_GROUP",
        "Targets": [
            {
                "Id": "Lambda_ARN",
                "AvailabilityZone": "AZ_OF_YOUR_LAMBDA"
            }
        ]
    }
    

    然后运行; aws elbv2 register-targets --cli-input-json register-lambda.json。或者只使用 CLI 输入;

    aws elbv2 register-targets --target-group-arn $target_arn --targets Id=$Lambda_ARN,AvailabilityZone=AZ_OF_YOUR_LAMBDA
    

    我相信这应该对您有用并解决您的问题。

    【讨论】:

    • 谢谢!这个命令 - aws elbv2 create-target-group --cli-input-json target-group.json - 是否只返回创建的目标组的 arn?我正在考虑做这样的事情来将其保存为价值。 targetarn=${aws elbv2 create-target-group --cli-input-json target-group.json}。这行得通吗? @MC_
    • 请参阅文档 -> cli docs for create-target-group。我相信您也许能够运行 targetarn=$(aws elbv2 create-target-group --cli-input-json target-group.json | jq -r .TargetGroups.TargetGroupArn )。在这种情况下,您的 targetarn 变量将包含目标组 arn。但是,这是使用 jq,您也可以使用纯 aws cli 获得相同的输出。希望有帮助
    • 它不允许我在我创建的 .json 文件中使用变量。示例 - json='{"Name": ' "\"$targetName\"" ', "TargetType": " lambda"}' - 我收到错误“解析参数 'cli-input-json' 时出错:JSON 无效:无法解码 JSON 对象”
    • JSON 文件中不能有变量。看起来你不熟悉这种格式。在这种情况下,我建议使用 aws elbv2 create-target-group --name $targetName --target-type lambda。
    猜你喜欢
    • 1970-01-01
    • 2023-03-29
    • 2020-11-02
    • 2020-01-15
    • 2021-07-01
    • 1970-01-01
    • 2015-04-30
    • 1970-01-01
    • 1970-01-01
    相关资源
    最近更新 更多