之前安装在minikube上安装k8s v1.23.13版本,一路畅通,这次升级安装v1.25.3版本,出现镜像无法下载的问题。
minikube start --vm-driver=hyperv --image-mirror-country=cn --kubernetes-version=v1.25.3
查看Pod状态
kubectl get pod -A
发现metrics-server,kubernetes-dashboard,dashboard-metrics都处于ImagePullBackOff 状态。
kube-system kube-proxy-4kzzq 1/1 Running 0 37m
kube-system kube-scheduler-minikube 1/1 Running 1 (40m ago) 37m
kube-system metrics-server-769cd898cd-pjzmr 1/1 ImagePullBackOff 0 37m
kube-system storage-provisioner 1/1 Running 1 (37m ago) 37m
kubernetes-dashboard dashboard-metrics-scraper-b74747df5-csvj8 1/1 ImagePullBackOff 0 37m
kubernetes-dashboard kubernetes-dashboard-57bbdc5f89-7sbbv 1/1 ImagePullBackOff 0 37m
进一步查看事件详情
kubectl describe pod metrics-server-769cd898cd-pjzmr -n kube-system
发现是镜像无法下载的原因
Type Reason Age From Message
---- ------ ---- ---- -------
Normal Scheduled <unknown> default-scheduler Successfully assigned kube-system/metrics-server-769cd898cd-
pjzmr to minikube
Normal BackOff 38s kubelet, minikube Back-off pulling image "k8s.gcr.io/metrics-server/metrics-server:v0.6.1"
Warning Failed 38s kubelet, minikube Error: ImagePullBackOff
Normal Pulling 24s (x2 over 54s) kubelet, minikube Pulling image "k8s.gcr.io/metrics-server/metrics-server:v0.6.1"
Warning Failed 9s (x2 over 38s) kubelet, minikube Failed to pull image "k8s.gcr.io/metrics-server-amd64:v0.2.1
": rpc error: code = Unknown desc = Error response from daemon: Get https://k8s.gcr.io/v2/: net/http: request canceled w
hile waiting for connection (Client.Timeout exceeded while awaiting headers)
Warning Failed 9s (x2 over 38s) kubelet, minikube Error: ErrImagePull
打开deployment查看配置
kubectl -n kube-system edit deployment metrics-server
使用minikube ssh命令连接到虚拟机环境。
minikube ssh
使用国内镜像源获取镜像文件
docker pull registry.cn-hangzhou.aliyuncs.com/google_containers/metrics-server:v0.6.1
为镜像打上Tag"k8s.gcr.io/metrics-server/"
docker tag registry.cn-hangzhou.aliyuncs.com/google_containers/metrics-server:v0.6.1 k8s.gcr.io/metrics-server/metrics-server:v0.6.1
重新启动集群
minikube start
这样就正常了
接下同样的方式处理kubernetes-dashboard,dashboard-metrics。
docker pull registry.cn-hangzhou.aliyuncs.com/google_containers/dashboard:v2.7.0
docker tag registry.cn-hangzhou.aliyuncs.com/google_containers/dashboard:v2.7.0 docker.io/kubernetesui/dashboard:v2.7.0
docker pull registry.cn-hangzhou.aliyuncs.com/google_containers/metrics-scraper:v1.0.8
docker tag registry.cn-hangzhou.aliyuncs.com/google_containers/metrics-scraper:v1.0.8 docker.io/kubernetesui/metrics-scraper:v1.0.8
成功后即可查看dashboard了
minikube dashboard