Web Services AWS X-RAY [错误]发送段批失败,原因为:无凭据提供程序:链中没有有效的提供程序,已弃用

gorkyyrv  于 2022-11-15  发布在  其他
关注(0)|答案(3)|浏览(172)

我正在使用X-Ray Daemon with Fargate.不幸的是,在守护进程的日志中,我看到如下错误:
[错误]发送段批失败,原因为:无凭据提供程序:链中没有有效的提供程序。已弃用。有关详细消息传递,请参阅aws.Config.CredentialsChainVerboseErrors警告]将发送其他批延迟0秒
AWS X射线与IAM配合使用:权限:AWSXray完全访问
我已经查过了:

{
 "name" : "xray-daemon",
 "image" : "amazon/aws-xray-daemon",
 "user" : "1337",
 "essential" : true,
 "cpu" : "32",
 "memoryReservation" : "256",
 "portMappings" : [
 {
 "containerPort" : 2000,
 "protocol" : "udp"
 }
 ]
 }
 ],
 "requiresCompatibilities" : [ "FARGATE" ],
 "taskRoleArn" : "arn:aws:iam::123456789012:role/ecsTaskRole",
 "executionRoleArn" : "arn:aws:iam::123456789012:role/ecsTaskExecutionRole",
 "networkMode" : "awsvpc"
}
s8vozzvw

s8vozzvw1#

您应该检查您的角色权限角色,我在执行& taskRoleArn时使用了相同的角色。我的角色包含这些策略

  • 亚马逊EC2容器注册表只读
  • 云监控代理服务器策略
  • arn:aws:iam::aws:策略/服务角色/亚马逊ECST任务执行角色策略
  • 您可以使用以下命令:

且还检查角色信任关系。我使用了:

  • ecs-tasks.amazonaws.com
  • ecs.amazonaws.com
  • c2.amazonaws.com
hjqgdpho

hjqgdpho2#

当我的X射线守护程序版本较旧时,出现此错误。
如果X射线守护程序在ECS上运行,请按照以下指导更新X射线守护程序:
https://docs.aws.amazon.com/xray/latest/devguide/xray-daemon-ecs.html

yebdmbv4

yebdmbv43#

XRay守护程序缺少通过XRay服务器进行身份验证所需的凭据。可以通过多种方式将凭据传递给XRay守护程序,但最常用的方式是:
1.通过环境变量AWS_ACCESS_KEY_ID和AWS_SECRET_ACCESS_KEY
1.通过~/.aws/凭证文件(请参阅https://docs.aws.amazon.com/cli/latest/userguide/cli-configure-files.html
我猜第一个选择对fargate来说会更容易。
当然,您需要在IAM中生成密钥,请参阅:https://docs.aws.amazon.com/powershell/latest/userguide/pstools-appendix-sign-up.html
您将为其创建访问密钥的用户需要具有使用XRay的权限(AWSXrayFullAccess应该具有)。

相关问题