AWS 允许跨账户 EKS 集群从 ECR 拉取镜像

AWS Allow Cross-account EKS Cluster to Pull Images from ECR

总结:

我希望启用 EKS 节点以从不同 AWS 项目的 ECR 注册表中提取图像。我在所需的 ECR 存储库中创建了一个“AllowPull”策略,并将该策略的主体设置为 EKS 集群角色的 ARN,但节点无法拉取镜像。

应该如何制定策略以允许 EKS 集群中的所有节点从跨账户 ECR 存储库中提取数据?

尝试详情:

环境:

其他详细信息:

在策略中使用我的用户主体(跨账户)的 ARN 确实允许我在本地使用 docker 拉取图像。使用代入角色的 ARN 确实使节点能够拉取镜像,但我的理解是,使用特定代入角色配置策略并不能保证集群节点可以始终如一地从注册表中拉取。

另一种方法是在 ECR 控制台上单击“external-pull-test”存储库,在左侧面板的“存储库”下单击“权限”,然后单击右上角的“编辑”。您可以在“AWS 账户 ID”处添加需要从该存储库中提取的账户 ID。检查底部“操作”下拉框中允许的操作。 “保存”,你应该可以拉。