K3s server 启动配置harbor https方式无法跳过tls验证

环境信息:
K3s 版本:

k3s version v1.32.1+k3s1 (6a322f12)
go version go1.23.4

节点 CPU 架构、操作系统和版本::

3.10.0-1160.el7.x86_64

集群配置:

1 server
问题描述:

k3s server 脚本离线启动,镜像从harbor镜像仓库拉取
harbor配置https方式访问,
docker设置insecure-registries 即可访问
containerd设置 skip_verify = true 访问还是报x509错误

复现步骤:

  • 安装 K3s 的命令:
    INSTALL_K3S_SKIP_DOWNLOAD=true ./install.sh

预期结果:
镜像拉取成功

实际结果:
镜像拉取失败,怎么配置才可以跳过证书验证呢。
根证书目前已经找不到了,需要配置非安装模式。

附加上下文/日志:

日志


参考:深入浅出:K3s 和 RKE2 镜像仓库配置的完整指南

当时也确实是按照这个配置的,
如果按照https证书的方式配置,没有问题。
但是按照http方式配置,下载镜像就会报错,x509错误。
访问的url还是https方式,这个问题是必须要配置证书才可以解决么,
是否可以像docker一样,配置insercure-reigistries就可以解决了呢?

你得告诉我你的完整配置啊

您好,这是我的镜像配置

启动k3s命令,
INSTALL_K3S_SKIP_DOWNLOAD=true ./libs/install.sh

查看POD运行情况,
kubectl describe pod -n kube-system coredns-ff8999cc5-bv7gk

配置是没问题的,这个我有空验证下给你回复。

如果你有时间,可以用 1.31.5 试试还有没有这个问题

或者依然使用 1.32.1,但别使用镜像重写

搞定了,跳过https的验证。

image

问下/etc/rancher/k3s/registries.yaml 我这个配置1.25.7版本怎么也不行呢,分别试过registry和harbor2仓库都跳不过去。
[harbor2]
[root@k3s-server geek]# cat /etc/rancher/k3s/registries.yaml
mirrors:
docker.io”:
endpoint:
- “http://10.148.51.134:8443
- “https://10.148.51.134:8443
configs:
“10.148.51.134:8443”:
auth:
username: admin
password: xxx
tls:
insecure_skip_verify: true


[registry]

image
dns没能解析你的镜像仓库,先解决这个问题?

换成ip后报错也都一样,是不是不能兼容kylin arm sp1、cpu,kunpeng-920,或者我用的版本是v1.25.7-rc1+k3s1 而不是 v1.25.7+k3s1,我需要换包吗?
image

这个和K3s 的配置没关系,也不是 无法跳过证书验证,你可以参考下:crictl pull image failed, failed to unpack image · Issue #4498 · containerd/containerd · GitHub