AWS Cloudwatch + ECS - 设置啥权限?

Posted

技术标签:

【中文标题】AWS Cloudwatch + ECS - 设置啥权限?【英文标题】:AWS Cloudwatch + ECS - What permissions to set?AWS Cloudwatch + ECS - 设置什么权限? 【发布时间】:2020-06-06 07:32:23 【问题描述】:

我正在尝试设置 ECS Fargate 作业以基于 Cloudwatch 触发器运行,特别是 Cloudwatch 计划 (cron) 触发器。我设置了 ECS 集群,当我在集群上手动创建 ECS Fargate 任务时,该作业运行良好,没有错误。我还设置了 Cloudwatch cron 触发器,我可以在 Cloudwatch 指标中看到触发器正在按照我配置的方式设置。我遇到的问题是这两件事没有互相交谈。我在 Cloudwatch 指标仪表板中收到 FailedInvocations,但据我所知,我找不到任何关于失败原因的日志。

谁能提供一些详细信息,说明我可能需要进行哪些设置?我正在使用 Terraform 执行此操作,因此基于 Terraform 的解决方案将是最有帮助的。

我尝试过摆弄 IAM 角色和权限,但我不太确定我需要哪些 IAM 角色和策略,或者即使 IAM 是我的问题。我还注意到 Cloudwatch 触发器有作用,Cloudwatch 任务执行也有作用;我已经为这两者尝试了各种方法,但不确定每个 IAM 角色扮演什么角色(在任务生态系统中),所以我不知道每个角色都需要什么权限。

谢谢!

【问题讨论】:

我不熟悉 Terraform,我使用 CloudFormation 进行部署。您是否看到 CloudWatch 事件具有正确的目标?您可以在 CloudWatch 控制台中看到这一点。 是的,据我所知,一切都设置正确(尽管我不太了解 AWS 服务如何相互通信,尽管设置了警报并设置了目标正确) 如果错误是由权限引起的,请尝试打开 CloudTrail 仪表板,它会准确显示何时请求了哪些权限。 您可以为您的 ecs 和 cloudwatch 复制和粘贴您的 IAM 策略吗? 【参考方案1】:

如果您使用 Cloudwatch,请打开 CloudTrail 仪表板。这将允许您查看正在请求权限的内容,并允许您更改给定的权限。此仪表板还将允许您查看 GeoLocation 和其他此类数据,但这不是这个问题的重点。此外,感谢 cmets 中的 Chuck Adams 也指出了这一点。

【讨论】:

以上是关于AWS Cloudwatch + ECS - 设置啥权限?的主要内容,如果未能解决你的问题,请参考以下文章

AWS Cloudwatch 显示每次 ECS 扩展时 CPU 利用率都非常低

如何在 AWS ECS 服务中查看每晚自动缩放后的任务计数历史记录

如何忽略 Terraform 中的嵌套字段?

grafana 设置 cloudwatch 监控 aws efs

AWS Cloudwatch 上的警报设置

AWS Grafana/CloudWatch - 如何按 accountId 显示账单