minikube(k8s单机)安装和dashboard镜像拉取不到的处理
目录
- minikube(k8s单机)安装
- 先装docker
- 安装
- 启动和查看
- dashboard镜像拉取不到的处理
- 原因分析:
- 排查
- 检查pod日志
- 检查集群内能否拉到镜像
- 换源
- 配置镜像加速器
- 换源用到的命令
- 先将镜像pull到本地然后加载到minikube中
- 本地有镜像
- 镜像打包压缩文件后传到minikube中
- 其它情况
- 总结
minikube(k8s单机)安装
先装docker
helloworld有时会拉取不到,可以先不管
安装
官方链接: minikube start
sudo apt-get -y update && sudo apt-get -y dist-upgrade && sudo apt-get -y autoremove
sudo apt-get install ca-certificates curl
curl -LO https://github.com/kubernetes/minikube/releases/latest/download/minikube-linux-amd64
sudo install minikube-linux-amd64 /usr/local/bin/minikube && rm minikube-linux-amd64
启动和查看
# 指定下驱动
minikube start --driver=docker
# 查看所有pod
minikube kubectl -- get po -A
# 可以指定一下别名(可选),为了少打一些命令
alias kubectl="minikube kubectl --"
# 启动可视化管理页面
minikube dashboard
如果顺利启动minikube dashboard命令,自动打开浏览器打开如下页面,就结束安装,后面也不用看了
dashboard镜像拉取不到的处理
原因分析:
镜像拉取不到,两种解决方式,1、换源;2,先将镜像pull到本地然后加载到minikube中
排查
检查pod日志
minikube kubectl -- describe pod -n kubernetes-dashboard <pod's name>
日志下面如下就是拉取镜像问题,其实查看pod信息里的status已经很明显了
检查集群内能否拉到镜像
大概率是拉不下来的,拉下来也不会报错了
# 使用exit或者ctrl+d退出ssh
minikube ssh
docker pull kubernetesui/metrics-scraper:v1.0.8
换源
配置镜像加速器
minikube ssh
sudo vi /etc/docker/daemon.json
{
"registry-mirrors": [
"https://registry.docker-cn.com",
"https://y0qd3iq.mirror.aliyuncs.com",
"http://hub-mirror.c.163.com",
"https://docker.anubis.cafe",
"https://docker.m.daocloud.io",
"https://dockerhub.icu",
"https://docker.anyhub.us.kg",
"https://docker.1panel.live"
]
}
# 重启docker
sudo systemctl restart docker
# 退出ssh
exit
注意:这里是配置minikube内的镜像加速,区别本机的镜像加速,正常应该可以了,有问题多重启几次应该也能碰到一次成功拉取image。不行接着往下看吧,
两种思路,换公有源,换私有源
换源用到的命令
大概率也是不行的
# 修改deployment配置
minikube kubectl -- edit deployment <deployment-name> -n <namespace>
# 删除pod重新拉取
kubectl delete pod -n kubernetes-dashboard <pod's name>
# 编辑某个deployment的yaml
minikube kubectl -- edit deployment dashboard-metrics-scraper -n kubernetes-dashboard
# 查看滚动更新的状态:
minikube kubectl -- rollout status deployment <deployment-name> -n <namespace>
# 重启deployment
minikube kubectl -- rollout restart deployment <deployment-name> -n <namespace>
修改deployment配置,图中地址,国内阿里或者腾讯云,(我不好使)
registry.cn-hangzhou.aliyuncs.com/google_containers/kubernetesui-metrics-scraper:v1.0.8
镜像拉取策略
优先使用本地镜像 (IfNotPresent)
总是拉取镜像 (Always)
仅使用本地镜像 (Never)
换私有源同理,地址修改就好了,需要自己搭源服务器
先将镜像pull到本地然后加载到minikube中
这只是临时开发可以,线上还是要有镜像地址
本地有镜像
直接将本地镜像加载到minikube中,
docker pull kubernetesui/metrics-scraper:v1.0.8
docker pull kubernetesui/dashboard:v2.7.0
eval $(minikube docker-env) # 加载 Minikube 的 Docker 环境变量
# 加载镜像
minikube image load kubernetesui/metrics-scraper:v1.0.8
minikube image load kubernetesui/dashboard:v2.7.0
镜像打包压缩文件后传到minikube中
# 在可联网的机器上拉取镜像并保存为文件
docker pull kubernetesui/metrics-scraper:v1.0.8
docker save -o metrics-scraper.tar kubernetesui/metrics-scraper:v1.0.8
# 将文件传输到目标机器并加载
docker load -i metrics-scraper.tar
然后修改image:配置kubernetesui/metrics-scraper:v1.0.8就可,当然还得重启
其它情况
若节点资源不足(常见于minikube):
调整minikube配置(建议至少2核4GB):
minikube stop
minikube delete
minikube start --cpus=2 --memory=4096
总结
基本上按照以上过程,总有一种方法可以启动了。
本文地址:https://www.vps345.com/14211.html