- html - 出于某种原因,IE8 对我的 Sass 文件中继承的 html5 CSS 不友好?
- JMeter 在响应断言中使用 span 标签的问题
- html - 在 :hover and :active? 上具有不同效果的 CSS 动画
- html - 相对于居中的 html 内容固定的 CSS 重复背景?
因此,在谷歌上搜索了一下(被 Pull Secrets 有问题的人污染了)后,我将其发布在这里 - 并发布到 GCP 支持(我会在听到时更新)。
我在与我的 GCR 注册表/图像相同的项目中从 GitLab Kubernetes 集成(文档:https://about.gitlab.com/solutions/kubernetes)创建了一个集群。
当我使用 Kubectl(它依赖于该项目中 GCR 注册表中的私有(private)镜像)向该集群添加新服务/部署时,GitLab 创建的集群中的 pod 无法从 GCR 拉取:ErrImagePull。
需要明确的是——我不是从 GitLab 私有(private)注册表中提取,而是尝试从与从 GitLab 创建的 GKE 集群相同的项目中的 GCR 注册表中提取(这不应该需要 Pull Secret)。
此项目中的其他集群(从 GCP 控制台创建)可以正确访问相同的图像,所以我的想法是通过 API 创建的集群(在本例中来自 GitLab)与从 GCP 控制台创建的集群之间存在一些差异。
我希望过去有人遇到过这种情况——或者可以解释可能导致问题的服务帐户等方面的差异。
I am going to attempt to create a service account and manually grant it Project Viewer role to see if that solves the problem.
最佳答案
TL;DR — 由 GitLab-Ci Kubernetes 集成创建的集群将无法从与容器图像相同的项目中的 GCR 注册表中提取图像 — 无需修改节点权限(范围)。
While you CAN manually modify the permissions on an Individual Node machine(s) to grant the Application Default Credentials (see: https://developers.google.com/identity/protocols/application-default-credentials) the proper scopes in real time — doing it this way would mean that if your node is re-created at some point in the future it WOULD NOT have your modified scopes and things would break.
gcloud container node-pools create [new pool name] \
--cluster [cluster name] \
--machine-type [your desired machine type] \
--num-nodes [same-number-nodes] \
--scopes [your new set of scopes]
kubectl get nodes
kubectl cordon [your-node-name-here]
kubectl drain [your-node-name-here] --force
gcloud container node-pools list --cluster [CLUSTER_NAME]
gcloud container node-pools describe default-pool \
--cluster [CLUSTER_NAME]
gcloud container node-pools describe [NEW_POOL_NAME] \
--cluster [CLUSTER_NAME]
gcloud container node-pools delete default-pool \
--cluster <YOUR_CLUSTER_NAME> --zone <YOUR_ZONE>
关于kubernetes - GKE 集群无法从同一项目中的 GCR 注册表中提取 (ErrImagePull) (GitLab Kubernetes 集成) : Why?,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/54043495/
我正在与Kubernetes战斗。我已经在Google上搜索了很多,并查看了一些答案,例如this one,但似乎无法使其正常工作。 我创建了一个docker容器并推送到本地注册表: sudo doc
我刚刚安装了kubernetes本地集群,但是当我尝试执行该命令时 cluster/kubectl.sh run my-nginx --image=nginx --replicas=2 --port=
我正在尝试使用 minikube 运行 kubernetes。我在 Azure 容器注册表中有一些 docker 镜像。 我创建了一个这样的 secret : kubectl create secre
我在Kubernetes的初级阶段。我刚刚使用以下命令创建了一个 pod: kubectl apply -f posts.yaml 它返回给我以下信息: pod/posts created 之后当我运
我使用 Azure Devops 创建了一个部署管道,通过它构建镜像并将其推送到 Azure 容器注册表。在下一步中,我将从 ACR 部署到我使用以下命令创建并附加到 ACR 的 AKS 集群:az
我知道 ImagePullBackOff 或 ErrImagePull 发生在 K8 无法拉容器时,但我认为这里不是这种情况。我这么说是因为这个错误是在我的服务扩展时只有一些 pod 随机抛出的,而其
我尝试使用本地 docker 镜像创建一个 pod,如下所示。 1.首先我在终端中运行此命令 eval $(minikube docker-env) 2.我创建了一个docker镜像,如下 sudo
我正在尝试使用 Minikube、Docker Registry 和演示节点项目创建本地 Kubernetes 部署。 我做的第一件事是安装 Docker v1.12.3,然后是 Minikube v
这似乎是 coreos (?) 中的硬链接(hard link)限制问题,应该使用 Docker overlayfs2 解决。我们不知道为什么在 kubernetes (1.8) 中会发生这种情况,但
尝试从托管在我的私有(private) helm docker 注册表上的镜像创建部署时,我收到 ErrImagePull。基于“服务器向 HTTPS 客户端提供 HTTP 响应”错误,我尝试在 sy
因此,在谷歌上搜索了一下(被 Pull Secrets 有问题的人污染了)后,我将其发布在这里 - 并发布到 GCP 支持(我会在听到时更新)。 我在与我的 GCR 注册表/图像相同的项目中从 Git
我是 openshift 的新手,我有一个表演者: 在我的电脑上,我创建了一个名为 restservice 的 Dockerimage我成功地测试了它: docker run -d -p 8080:8
我有一个 Google Kubernetes Engine 集群,直到最近它还在愉快地从 Google Container Registry 存储桶中提取私有(private)容器镜像。我没有改变任何
我正在完成一个展示如何在 IBM Cloud 上设置 Kubernetes 和 CLI 的实验室。 我有 Kubernetes 集群设置和容器注册表。我在 CLI 上登录到 IBM Cloud 和 C
跨 2 个可用区为 EKS 集群运行 AWS“托管节点”。 共 3 个节点。尝试拉下容器时出现随机超时。 这很难追踪,因为它确实有效(有时),所以它不像 ACL 被阻止或安全组。 当我 ssh 进入节
我是一名优秀的程序员,十分优秀!