摘要:
我希望使EKS节点能够从不同AWS项目的ECR注册表中提取图像。我在所需的ECR存储库中创建了一个"AllowPull“策略,并将策略的主体设置为EKS集群角色的ARN,但是节点无法提取映像。
如何制定策略,以便允许EKS集群中的所有节点从跨帐户ECR存储库中提取?
尝试详细信息:
arn:aws:ecr:us-east-2:226427918358:repository/external-pull-test
arn:aws:iam::02182452XXXX:role/aws-dev-eks-cluster-crpiXXXX091410594876160000000c
{“版本”:"2008-10-17",“声明”:[{“AllowPull”:"AllowPull",“效果”:“允许”,“主体”:{ "AWS":AllowPull },“行动”:"ecr:BatchCheckLayerAvailability","ecr:BatchGetImage",“ecr:DescribeImage”,"ecr:DescribeRepositories","ecr:GetDownloadUrlForLayer“}]
ImagePullBackOff错误指定试图与注册表进行身份验证的用户是假定的角色:arn:aws:sts::02182452XXXX:assumed-role/aws-dev-eks-cluster-crpiXXXX091410594876160000000c/i-0ea4f53b6dfdcxxxx
环境:
v1.16.15-eks-e1a842
其他详情:
在策略中使用我的用户主体(交叉帐户)的ARN确实允许我在本地使用docker提取图像。使用假定角色的ARN确实使节点能够提取映像,但我的理解是,使用特定的假定角色配置策略并不能保证集群节点能够始终从注册表中提取。
发布于 2021-11-11 10:28:50
另一种方法是单击ECR控制台上的“外部-拉-测试”回购,在“存储库”下的左侧面板上单击“权限”,然后单击右上角的“编辑”。您可以在"AWS帐户ID“中添加需要从该回购中提取的帐户ID。检查底部“操作”下拉框中允许的操作。“拯救”,你应该能够拉。
https://stackoverflow.com/questions/69926362
复制相似问题