程序问答   发布时间:2022-06-01  发布网站:大佬教程  code.js-code.com
大佬教程收集整理的这篇文章主要介绍了将映像从 Azure 容器注册表拉取到 Kubernetes 集群大佬教程大佬觉得挺不错的,现在分享给大家,也给大家做个参考。

如何解决将映像从 Azure 容器注册表拉取到 Kubernetes 集群?

开发过程中遇到将映像从 Azure 容器注册表拉取到 Kubernetes 集群的问题如何解决?下面主要结合日常开发的经验,给出你关于将映像从 Azure 容器注册表拉取到 Kubernetes 集群的解决方法建议,希望对你解决将映像从 Azure 容器注册表拉取到 Kubernetes 集群有所启发或帮助;

我已按照本教程 microsoft_website 从 azure 容器中提取图像。我的 yaml 成功创建了一个 pod 作业,该作业可以拉取映像,但仅当它在我的集群中的 agentpool 节点上运行时。

例如,将 nodename: aks-agentpool-33515997-vmss000000 添加到 yaml 工作正常,但指定不同的节点名称,例如nodename: aks-cpu1-33515997-vmss000000,pod 失败。我收到的关于描述 Pod 的错误消息Failed to pull image,然后是 kubelet Error: ErrImagePull

我缺少什么?

创建秘密:

kubectl create secret docker-registry <secret-name> \
--docker-server=<container-registry-name>.azurecr.io \
--docker-username=<service-principal-ID> \
--docker-password=<service-principal-password>

解决方法

需要检查的四件事:

  • 这是订阅问题吗?节点是否在不同的订阅中?
  • 这是供股问题吗?节点的服务主体是否有权拉取镜像。
  • 是网络问题吗?节点是否位于不同的子网上?
  • 镜像大小或配置是否有问题,这意味着它无法在其他集群上运行。

编辑

New-AzAksnodePool 有一个参数 -DefaultProfile

可以是 AzContext、AzureRmContext、AzureCredential

如果这在您的节点之间不同,它将解释错误

,

正如@user1571823 所说,问题的解决方案是从 acr 中删除旧图像并创建/推送新图像。
该问题与保存在 azure 容器注册表 (acr) 中的映像中的某种损坏有关。一个代理池之所以能够拉取镜像,其实是因为该镜像已经存在于虚拟机中。

此后,@andov 表示,从您的订阅中向 Azure 支持 AKS 打开一个事件案例是一个不错的选择,其中部署了 AKS。支持团队拥有对 AKS 服务后端的完全访问权限,他们可以准确地告诉您问题的原因。

大佬总结

以上是大佬教程为你收集整理的将映像从 Azure 容器注册表拉取到 Kubernetes 集群全部内容,希望文章能够帮你解决将映像从 Azure 容器注册表拉取到 Kubernetes 集群所遇到的程序开发问题。

如果觉得大佬教程网站内容还不错,欢迎将大佬教程推荐给程序员好友。

本图文内容来源于网友网络收集整理提供,作为学习参考使用,版权属于原作者。
如您有任何意见或建议可联系处理。小编QQ:384754419,请注明来意。
标签:集群