AWS EC2无法访问EKS



我有一个角色,该角色具有访问附加到Ec2实例的EKS、Ec2、IAM的完全权限。

我正试图从此Ec2实例访问我的EKS群集。我确实将Ec2实例arn添加到了该实例所承担角色的受信任关系中,如下所示。然而,当我尝试在Ec2实例内使用cli中的kubectl访问集群时,仍然会出现如下错误。

我在下面尝试获得写在执行这些命令的实例hoe目录中的kube-config。

aws sts get-caller-identity
$ aws eks update-kubeconfig --name eks-cluster-name --region aws-region --role-arn arn:aws:iam::XXXXXXXXXXXX:role/testrole

我得到的错误:

error occurred (AccessDenied) when calling the AssumeRole operation: User: arn:aws:sts::769379794363:assumed-role/dev-server-role/i-016d7738c9cb84b96 is not authorized to perform: sts:AssumeRole on resource xxx

社区wiki答案,以获得更好的可见性。

这个问题是通过从评论中得到一个很好的提示来解决的:

如果希望role-arn使用实例配置文件,请不要指定它。

OP已确认:

感谢@jordanm帮助

您需要建立信任关系,转到I AM角色并单击信任关系,然后添加以下JSON

将XXXXXXXXXXXXX替换为您的帐户id

{
"Version": "2012-10-17",
"Statement": [
{
"Effect": "Allow",
"Principal": {
"AWS": [
"arn:aws:iam::XXXXXXXXXXXX:root",
]
},
"Action": "sts:AssumeRole"
}
]
}

相关内容

  • 没有找到相关文章

最新更新