我正在努力使用ECS Fargate运行任务,并从AWS开发工具包脚本(JS / Node)启动(ecs.runTask)。
我目前的奋斗目标是从容器中获取日志,以便我可以排除为什么它们停止的麻烦。我似乎无法正确定义“任务定义”,以便将其生成。
ecsInstanceRole
我已经将它们的日志驱动程序设置为awslogs,但是当我尝试在CloudWatch中查看日志时,却什么也没得到:
我怀疑我的权限可能有错误,尽管当然没有错误消息可确认。文档(here)表示我需要对runTask
附加某些策略,该策略似乎是在该过程中 where 处使用的角色的占位符。>
但是我已经将这样的策略附加到我的ECS执行角色,执行对{{1}}的API调用的角色上,并且我还寻找了可能涉及的任何其他角色(实际的“ instanceRole”没有似乎没有出现在Task Def中),并且没有任何东西可以改善我的状况。
我很乐意提供更多信息,但是目前我不确定我的盲点在哪里。
有人看到吗?
答案 0 :(得分:0)
转到您的任务定义。您应该找到一个名为“任务执行IAM角色”的部分。描述说-
任务需要此角色才能拉出容器映像并将容器日志发布到Amazon CloudWatch。
您在此处附加的角色需要一个AmazonECSTaskExecutionRolePolicy
之类的策略(AWS托管策略),并且受信任实体是ecs-tasks.amazonaws.com
。
我认为也不需要awslogs
选项awslogs-create-group
。