• KSV
  • 为什么kubesphere搭建的k8s集群系统重启后都会重新下载镜像

创建部署问题时,请参考下面模板,你提供的信息越多,越容易及时获得解答。如果未按模板创建问题,管理员有权关闭问题。
确保帖子格式清晰易读,用 markdown code block 语法格式化代码块。
你只花一分钟创建的问题,不能指望别人花上半个小时给你解答。

操作系统信息
例如:虚拟机/物理机,Centos7.5/Ubuntu18.04,4C/8G

Kubernetes版本信息
kubectl version 命令执行结果贴在下方

Client Version: version.Info{Major:“1”, Minor:“22”, GitVersion:“v1.22.10”, GitCommit:“eae22ba6238096f5dec1ceb62766e97783f0ba2f”, GitTreeState:“clean”, BuildDate:“2022-05-24T12:56:35Z”, GoVersion:“go1.16.15”, Compiler:“gc”, Platform:“linux/amd64”}

Server Version: version.Info{Major:“1”, Minor:“22”, GitVersion:“v1.22.10”, GitCommit:“eae22ba6238096f5dec1ceb62766e97783f0ba2f”, GitTreeState:“clean”, BuildDate:“2022-05-24T12:50:52Z”, GoVersion:“go1.16.15”, Compiler:“gc”, Platform:“linux/amd64”}

容器运行时
docker version / crictl version / nerdctl version 结果贴在下方

Client:

Version: 20.10.12

API version: 1.41

Go version: go1.16.2

Git commit: 20.10.12-0ubuntu2~20.04.1

Built: Wed Apr 6 02:14:38 2022

OS/Arch: linux/amd64

Context: default

Experimental: true

KubeSphere版本信息
例如:v2.1.1/v3.0.0。离线安装还是在线安装。在已有K8s上安装还是使用kk安装。

问题是什么
有一点不明白,为什么kubesphere搭建的k8s集群系统重启后都会重新下载镜像,镜像不是已经再本地都有了么,为什么还需要联网重新下载?

    你指的是kubesphere自己的镜像还是其他镜像?

    kubesphere自己的组件拉取策略默认是Always,自己的镜像看自己怎么配的。

      bjdaijun

      k8s集群使用的镜像,比如coredns等,要就是说整个集群建好后必须时刻保证kubesphere能够联网,否则系统重启后就会因无法联网导致k8s所需的镜像下载不到导致整个集群无法启动,但问题是k8s节点所在的机器已经下载了这些镜像,不知为啥每次系统启动重建集群都会重建镜像,不知这个是不是kubesphere的问题

        johnhuster

        1. 离线环境通常是配置一个私有镜像仓库,容器的镜像都通过私有镜像仓库进行拉取。试想一下,离线环境如果是单独为每个宿主机节点都手动加载镜像,那么在集群扩容的时候是不是也要为新节点做一个这样的操作?
        2. 你的容器镜像拉取策略可能是always,这会导致每次容器重启都会去远端拉取镜像不会直接使用宿主机本地的镜像。

        拉取策略就是always,不重启ks-installer的情况下,改下工作负载的拉取策略就行了