繁体   English   中英

ErrImagePull: x509: 未知权威签署的证书

[英]ErrImagePull: x509: certificate signed by unknown authority

当我尝试在 kubernetes 中使用我的 Harbor 注册表中的图像创建一个 pod 时,我收到了 ErrImagePull 错误,如下所示:

Events:
  Type     Reason     Age   From               Message
  ----     ------     ----  ----               -------
  Normal   Scheduled  10s   default-scheduler  Successfully assigned test/test-pod to ubuntu-s-2vcpu-2gb-ams3-01-slave01
  Normal   Pulling    9s    kubelet            Pulling image "my.harbor.com/test/nginx:1.18.0"
  Warning  Failed     9s    kubelet            Failed to pull image "my.harbor.com/test/nginx:1.18.0": rpc error: code = Unknown desc = failed to pull and unpack image "my.harbor.com/test/nginx:1.18.0": failed to resolve reference "my.harbor.com/test/nginx:1.18.0": failed to do request: Head https://my.harbor.com/v2/test/nginx/manifests/1.18.0: x509: certificate signed by unknown authority
  Warning  Failed     9s    kubelet            Error: ErrImagePull
  Normal   BackOff    8s    kubelet            Back-off pulling image "my.harbor.com/test/nginx:1.18.0"
  Warning  Failed     8s    kubelet            Error: ImagePullBackOff

我认为关键问题是'x509: certificate signed by unknown authority但我真的不知道出了什么问题,因为我将我的 CA 复制到 kubernetes 主节点和从节点它们都可以登录到Harbor 并运行docker pull my.harbor.com/test/nginx:1.18.0拉取镜像成功。

我为此困扰了几天,任何答复将不胜感激。

我将 ca.crt 复制到 /etc/docker/certs.d/my.harbor.com/

这将使它适用于您展示的 docker 引擎。

连同 my.harbor.cert 和 my.harbor.com.key

我认为这是一种安全违规行为,不再信任您的港口主机的密钥。 永远不需要从主机复制私钥。

我还将 ca.crt 复制到 /usr/local/share/ca-certificates/ 并运行命令 update-ca-certificates 进行更新。

这是应该解决这个问题的步骤。

您可以验证您是否加载了证书:

openssl s_client -connect my.harbor.com:443 -showcerts </dev/null

如果 output 不包含类似Verification: OK的消息,那么您没有正确配置主机证书,需要仔细检查 Linux 分发的步骤。 在每个节点上检查这一点很重要。 如果您只更新管理器并从工作人员那里提取图像,该工作人员仍会遇到 TLS 错误。

如果openssl显示验证成功,则检查您的 Kubernetes 节点。 根据 CRI,它可能正在缓存旧证书数据,需要重新启动以检测主机上的更改。

至于CRI,我不知道是什么

容器运行时接口,Kubernetes 安装的一部分。 默认情况下,这是在许多 Kubernetes 发行版中containerd的。 containerd和其他 CRI(除了 docker docker-shim )不会查看 docker 配置。

暂无
暂无

声明:本站的技术帖子网页,遵循CC BY-SA 4.0协议,如果您需要转载,请注明本站网址或者原文地址。任何问题请咨询:yoyou2525@163.com.

 
粤ICP备18138465号  © 2020-2024 STACKOOM.COM