[英]Where the images get stored in Azure Kubernetes Cluster after pulling from Azure Container Registry?
[英]Pull images from an Azure container registry to a Kubernetes cluster
我已按照本教程microsoft_website从 azure 容器中提取图像。 我的yaml
成功创建了一个 pod 作业,它可以拉取图像,但仅当它在我的集群中的agentpool
节点上运行时。
例如,将nodeName: aks-agentpool-33515997-vmss000000
到yaml
可以正常工作,但指定不同的节点名称,例如nodeName: aks-cpu1-33515997-vmss000000
时,pod 会失败。 我使用描述 pods 收到的错误消息是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 所说,从部署 AKS 的订阅中打开事件案例以向 Azure 支持AKS开一个事件案例是一个不错的选择。 支持团队拥有对 AKS 服务后端的完全访问权限,他们可以准确判断是什么导致了您的问题。
声明:本站的技术帖子网页,遵循CC BY-SA 4.0协议,如果您需要转载,请注明本站网址或者原文地址。任何问题请咨询:yoyou2525@163.com.