自动缩放 - 生命周期钩子实现

问题描述

我正在尝试使用生命周期钩子实现我的第一个 ASG,但我遇到了这个问题:

LifecycleHandlerFunction:遇到不受支持属性角色 未能创建以下资源: [LifecycleHandlerFunction]。用户请求回滚。

我不知道我做错了什么。我正在使用此代码示例:https://github.com/aws-samples/ecs-refarch-cloudformation/blob/master/infrastructure/lifecyclehook.yaml

AutoscalingNotificationRole 和 LambdaExecutionRole 已在我的 aws 帐户中设置。

"NotificationTopic": {
        "Type": "AWS::SNS::Topic","Properties": {
          "Subscription": [
            {
              "Endpoint": {
                "Fn::GetAtt": [
                "LifecycleHandlerFunction","Arn"
                ]
              },"Protocol": "lambda"
            }
          ]   
        },"DependsOn": "LifecycleHandlerFunction"
    },"InstanceTerminatingHook": {
      "Type": "AWS::AutoScaling::LifecycleHook","Properties": {
        "AutoScalingGroupName": {
            "Fn::Join": [
                "",[
                    { "Ref": "ClusterName" },"-autoscaling"
                ]
            ]
        },"DefaultResult": "ABANDON","HeartbeatTimeout": "900","LifecycleTransition": "autoscaling:EC2_INSTANCE_TERMINATING","NotificationTargetARN": "NotificationTopic","RoleARN": [ 
            "AutoscalingNotificationRole","Arn" 
        ]
      },"DependsOn": "NotificationTopic"
    },"LambdaInvokePermission": {
      "Type": "AWS::Lambda::Permission","Properties": {
        "FunctionName": "LifecycleHandlerFunction","Action": "lambda:InvokeFunction","Principal": "sns.amazonaws.com","SourceArn": { "Ref": "NotificationTopic" }
      }
    },"LifecycleHandlerFunction": {
      "Type": "AWS::Lambda::Function","Properties": {
        "Environment": {
          "Variables": {
            "CLUSTER": { "Ref": "ClusterName" }
        },"Handler": "index.lambda_handler","Role": [ 
            "LambdaAutoscalingExecutionRole","Arn"
        ],"Code": {
          "ZipFile": [
              "",[
                "my python code"
              ]
            ]
        },"Runtime": "python3.6","Timeout": 10
        }
    }

非常感谢您的帮助。

解决方法

暂无找到可以解决该程序问题的有效方法,小编努力寻找整理中!

如果你已经找到好的解决方法,欢迎将解决方案带上本链接一起发送给小编。

小编邮箱:dio#foxmail.com (将#修改为@)