kubernetes拉取私有Harbor仓库镜像
场景描述
- 私有镜像仓库:http://172.16.30.56
- kubernete集群使用的是containerd
#containerd --version
containerd containerd.io 1.6.24 61f9fd88f79f081d64d6fa3bb1a0dc71ec870523
kubernete集群中部署服务时,报错:
Error: ImagePullBackOff
kubernetes拉取私有Harbor仓库镜像配置说明
harbor检查
确保私有harbor能正常访问,能正常推送镜像:
-
页面访问正常
-
docker获取镜像正常
containerd的配置检查
使用私有harbor,containerd需要配置仓库信任。
- 配置harbor仓库信任
[plugins."io.containerd.grpc.v1.cri".registry.auths]
[plugins."io.containerd.grpc.v1.cri".registry.configs]
[plugins."io.containerd.grpc.v1.cri".registry.configs."172.16.30.56".tls] #新增加的
insecure_skip_verify = true #新增加的
[plugins."io.containerd.grpc.v1.cri".registry.configs."172.16.30.56".auth] #新增加的
username = "admin" #新增加的
password = "密码" #新增加的
[plugins."io.containerd.grpc.v1.cri".registry.headers]
[plugins."io.containerd.grpc.v1.cri".registry.mirrors]
[plugins."io.containerd.grpc.v1.cri".registry.mirrors."172.16.30.56"] #新增加的
endpoint = ["http://172.16.30.56"] #新增加的
- 重新启动containerd
systemctl restart containerd.service
- 启动k8s的pod,验证下镜像是否能拉取