Open 1247776995 opened 11 months ago
这个问题是因为官方的create_project_harbor.sh中,默认没有kubesphereio这个项目,而使用kubekey创建集群时,首先会CopyImagesToRegistry,如果没有kubeSphereio这个目录,会导致push不成功,会不执行CopyImagesToRegistry的Execute方法中的c.ModuleCache.Set("manifestList", manifestList)这段代码,最终在PushManifest的Execute时,会找不到manifestList。解决办法就是在脚本中增加kubesphereio或者在harbor上手动创建kubesphereio或者config-sample.yaml中的namespaceOverride修改为”kubesphere”(不过这个我没试过)
kubekey在调用CopyImageOptions的Copy()时,虽然有重试机制,但最终并未把push不成功的error打印出来,导致后面的错误看起来非常不理解,希望能帮助到您!
这个问题是因为官方的create_project_harbor.sh中,默认没有kubesphereio这个项目,而使用kubekey创建集群时,首先会CopyImagesToRegistry,如果没有kubeSphereio这个目录,会导致push不成功,会不执行CopyImagesToRegistry的Execute方法中的c.ModuleCache.Set("manifestList", manifestList)这段代码,最终在PushManifest的Execute时,会找不到manifestList。解决办法就是在脚本中增加kubesphereio或者在harbor上手动创建kubesphereio或者config-sample.yaml中的namespaceOverride修改为”kubesphere”(不过这个我没试过)
kubekey在调用CopyImageOptions的Copy()时,虽然有重试机制,但最终并未把push不成功的error打印出来,导致后面的错误看起来非常不理解,希望能帮助到您! 感谢您的回复,但我想可能还有别的原因,因为我检查了我的Harbor仓库项目名称,与您说的是一样的,我的问题是在于将打包好的制品拷贝到另一台同样版本系统的离线机器上再执行kk安装导致的,在我的在线环境中没有这个问题,它产生在另一个离线环境中,我很困惑,但是找不到原因。再次感谢您的回复。
这个问题是因为官方的create_project_harbor.sh中,默认没有kubesphereio这个项目,而使用kubekey创建集群时,首先会CopyImagesToRegistry,如果没有kubeSphereio这个目录,会导致push不成功,会不执行CopyImagesToRegistry的Execute方法中的c.ModuleCache.Set("manifestList", manifestList)这段代码,最终在PushManifest的Execute时,会找不到manifestList。解决办法就是在脚本中增加kubesphereio或者在harbor上手动创建kubesphereio或者config-sample.yaml中的namespaceOverride修改为”kubesphere”(不过这个我没试过) kubekey在调用CopyImageOptions的Copy()时,虽然有重试机制,但最终并未把push不成功的error打印出来,导致后面的错误看起来非常不理解,希望能帮助到您! 感谢您的回复,但我想可能还有别的原因,因为我检查了我的Harbor仓库项目名称,与您说的是一样的,我的问题是在于将打包好的制品拷贝到另一台同样版本系统的离线机器上再执行kk安装导致的,在我的在线环境中没有这个问题,它产生在另一个离线环境中,我很困惑,但是找不到原因。再次感谢您的回复。
这个问题也很好解决,如果可以的话,你基于kubekey在相应代码处打印上日志自己构建一个可执行文件,然后在你发生问题的环境中调试以帮助你排查问题,这个错误大体的原因是:通过离线解压的image目录下的镜像制品在你的harbor上没有找到导致的。
The solution is here 👉 https://github.com/kubesphere/kubekey/issues/2025#issuecomment-1859417230
感谢您的回复,但我想可能还有别的原因,因为我检查了我的Harbor仓库项目名称,与您说的是一样的,我的问题是在于将打包好的制品拷贝到另一台同样版本系统的离线机器上再执行kk安装导致的,在我的在线环境中没有这个问题,它产生在另一个离线环境中,我很困惑,但是找不到原因。再次感谢您的回复。
求助,最终怎么解决的,我也有同样的问题,kubesphereio项目已经创建了,还是报同样的错误
大佬们最后有解决吗,我也遇到这个问题了,harbor上创建了kubesphereio也还是不行。
The new version of kk can try to used to push images. If it fails, it will return the reason for failure. https://github.com/kubesphere/kubekey/releases/tag/v3.1.0-rc.1
大佬们最后有解决吗,我也遇到这个问题了,harbor上创建了kubesphereio也还是不行。
我已经解决了,你可以尝试换个新版本的kk再试一次,特别注意docker的证书路径是否在sample.conf中配置了
大佬们最后有解决吗,我也遇到这个问题了,harbor上创建了kubesphereio也还是不行。
我已经解决了,你可以尝试换个新版本的kk再试一次,特别注意docker的证书路径是否在sample.conf中配置了
收到大佬 ,我来试试最新的Rc版本
12:12:27 CST [CopyImagesToRegistryModule] Copy images to a private registry from an artifact OCI Path 12:12:27 CST Source: oci:/mnt/disk1/soft/kubekey/images:registry.cn-beijing.aliyuncs.com/kubesphereio/pause:3.9-amd64 12:12:27 CST Destination: docker://dockerhub.kubekey.local/kubesphereio/pause:3.9-amd64 Getting image source signatures Copying blob 61fec91190a0 [--------------------------------------] 8.0b / 310.2KiB writing blob: initiating layer upload to /v2/kubesphereio/pause/blobs/uploads/ in dockerhub.kubekey.local: unauthorized: unauthorized to access repository: kubesphereio/pause, action: push: unauthorized to access repository: kubesphereio/pause, action: push Getting image source signatures Copying blob 61fec91190a0 [--------------------------------------] 8.0b / 310.2KiB writing blob: initiating layer upload to /v2/kubesphereio/pause/blobs/uploads/ in dockerhub.kubekey.local: unauthorized: unauthorized to access repository: kubesphereio/pause, action: push: unauthorized to access repository: kubesphereio/pause, action: push Getting image source signatures
What is version of KubeKey has the issue?
v3.0.12
What is your os environment?
centos 7.9
KubeKey config file
A clear and concise description of what happend.
离线安装在执行:./kk create cluster -f config-sample.yaml -a kubesphere.tar.gz --with-packages 命令的时候失败,我是本地安装的harbor(https证书已分发,docker可以登录成功,可正常pull,push,k8s版本v1.27.2)
Relevant log output
Additional information
No response