Kubernetes v1.7.6 AWS ECR“需要身份validation”
我有一个全新的Kubernetes v1.7.6主控制器。
节点能够join,并且被标记为接收来自使用公共容器储存库的部署的节点(即,普罗米修斯等)的节点。
我的API服务和控制器服务都是以–cloud-provider = aws启动的,但是我在#kubernetes松弛信道上被告知我并不需要在kubelet的systemd单元中设置这个,实际上这会导致kubelet不运行。 这也是我的经验,所以它没有configuration在那里(与Kubernetes文档相反,我相信它不会更新为v1.7.6)。
我的AWS节点以具有以下权限的IAMangular色启动:
DescribeRepositories ListImages BatchCheckLayerAvailability BatchGetImage DescribeImages GetAuthorizationToken GetDownloadUrlForLayer GetRepositoryPolicy
我以前的Kubernetes v1.6.3主控制器也是一样的IAMangular色。
我在描述一个带有kubectl的pod时看到的错误是:
无法拉图像“:”:rpc错误:代码= 2 desc =未授权:需要validation
uname -a在我的节点上是:
Linux ip-XXXX 4.4.0-1022-aws#31-Ubuntu SMP Tue Jun 27 27:27:55 UTC 2017 x86_64 x86_64 x86_64 GNU / Linux
uname -a在我的主控制器上是:
Linux ip-XXXX 4.4.0-96-generic#119 -Ubuntu SMP Tue Sep 12 14:59:54 UTC 2017 x86_64 x86_64 x86_64 GNU / Linux
IAM政策JSON(根据Thomas Khalil的要求):
{“Version”:“2012-10-17”,“Statement”:[{“Effect”:“Allow”,“Action”:[“ecr:GetAuthorizationToken”,“ecr:BatchCheckLayerAvailability”,“ecr:GetDownloadUrlForLayer” “ecr:GetRepositoryPolicy”,“ecr:DescribeRepositories”,“ecr:ListImages”,“ecr:DescribeImages”,“ecr:BatchGetImage”],“Resource”:“*”}]}
接下来该做什么,我完全不知所措。 任何帮助是极大的赞赏。
- 如何从Tutum私有registry中将Amazon Docker的Docker镜像拖放到Amazon ECS?
- ECSnetworking主机模式和链接= CannotCreateContainerError:容器已经存在
- 在docker-nginx-php服务器上运行2个站点
- 将堆栈部署到没有ssh的docker swarm模式
- 单个docker集装箱将在亚马逊的EC2上自动扩展吗?
- 在Azure / AWS上的VM上的Docker容器上安装chef-client(Bootstrapping)
- Elastic Beanstalk / Docker – 没有这样的文件或目录package.json
- 如何在Elastic Beanstalk应用程序中的Docker容器之间共享卷?
- 从Internet连接到本地AWS IP地址