无法配置生命周期挂钩以将通知发送到SQS

问题描述 投票:0回答:1

[许多文档解释了如何解决此错误。检查了其中许多并尝试。但是,跟随他们并不能为我解决这个问题。

我得到的错误是

“调用PutLifecycleHook操作时发生错误(ValidationError):无法使用IAM角色arn:aws:iam :: XXXXXXXXX:role /发布测试消息到通知目标arn:aws:sqs:xxxxx:XXXXX:kubeeventsqueue.fifo kubeautoscaling。请检查您的目标和角色配置,然后尝试再次放置生命周期挂钩。“

我正在使用的命令是

aws自动缩放put-lifecycle-hook --lifecycle-hook-name终止--auto-scaling-group-name mygroupname --lifecycle-transition自动缩放:EC2_INSTANCE_TERMINATING --role-arn arn:aws:iam :: XXXXXX:role / kubeautoscaling --notification-target-arn arn:aws:sqs:xxxxx:XXXXXXX:kubeeventsqueue.fifo

注意,我已经用XXXXX代替了上面的实际ID。

[相关角色(arn:aws:iam :: XXXXXX:role / kubeautoscaling)与autoscaling.amazonaws.com具有信任关系。它还附加了“ AutoScalingNotificationAccessRole”策略。

[在进行测试时,我还尝试为所有SQS动作(SQS:*)添加一个“允许所有人”权限。 (尽管经过测试后将其删除)。

我还尝试过先创建SQS队列,然后配置--notification-target-arn,但没有成功。

任何对此的帮助将非常有帮助。

amazon-web-services amazon-ec2 amazon-sqs aws-auto-scaling
1个回答
0
投票

似乎您正在使用Amazon SQS FIFO(先进先出)队列。

来自Configuring Notifications for Amazon EC2 Auto Scaling Lifecycle Hooks - Receive Notification Using Amazon SQS

FIFO队列与生命周期挂钩不兼容。

我不知道这是否是导致您当前错误的原因,但是它将阻止您所需的配置工作。

© www.soinside.com 2019 - 2024. All rights reserved.