kubernetes第三步,minikube安装kubernetes以及[ERROR ImagePull]: failed to pull image k8s.gcr.io/kube-contr…

一。启动minikube

1
minikube start    //默认启动,可以加后面几种参数,自己看环境选择

1.版本参数----指定 Kubernetes 版本

您可以通过将 --kubernetes-version 字符串添加到 minikube start 命令来指定要用于 Minikube 的 Kubernetes 版本。例如,要运行版本 v1.18.0,您可以运行以下命令:

1
minikube start --kubernetes-version v1.18.0  //执行版本启动

2.驱动参数---指定驱动名称

说明: 若要为 minikube start 设置 --vm-driver,在下面提到 <驱动名称> 的地方, 用小写字母输入你安装的 hypervisor 的名称。 指定 VM 驱动程序 列举了 --vm-driver 值的完整列表。

1
minikube start --vm-driver=<驱动名称>

Minikube 支持以下驱动程序:

说明: 有关支持的驱动程序以及如何安装插件的详细信息,请参阅驱动程序。

  • virtualbox
  • vmwarefusion
  • kvm2 (驱动安装)
  • hyperkit (驱动安装)
  • hyperv (驱动安装)

请注意,下面的 IP 是动态的,可以更改。可以使用 minikube ip 检索。

  • vmware (驱动安装) (VMware 统一驱动)
  • none (在主机上运行Kubernetes组件,而不是在 VM 中。使用该驱动依赖 Docker (安装 Docker) 和 Linux 环境)

3.镜像参数,使用阿里云的镜像

说明: 由于国内无法直接连接 k8s.gcr.io,推荐使用阿里云镜像仓库,在 minikube start 中添加 --image-repository 参数。

1
2
3
minikube start --vm-driver=<驱动名称> --image-repository=registry.cn-hangzhou.aliyuncs.com/google_containers
# 举个例子
minikube start --vm-driver=none --image-repository=registry.cn-hangzhou.aliyuncs.com/google_containers

注意:这里要注意的是,使用none参数需要你的root权限,如果你的vm-driver使用的docker,那就不能在root下运行,他会报要给错误,这里不同的参数使用权限还不同,这里使用none作为例子。

运行成功后会出现类似下面这个


image.png

如果不使用镜像,就可能会出现下面这个无法拉取镜像的问题


image.png

一旦 minikube start 完成,你可以运行下面的命令来检查集群的状态:

1
minikube status

如果你的集群正在运行,minikube status 的输出结果应该类似于这样:

1
2
3
4
host: Running
kubelet: Running
apiserver: Running
kubeconfig: Configured

这里他会在docker中运行一些基本的容器,你可以在docker ps中看到一些正在运行的容器,大致是这样


image.png

成功

做到这一步,说明你的kubernetes已经运行成功了。接下来可以做一些其他操作。

停止运行

在确认 Minikube 与 hypervisor 均正常工作后,你可以继续使用 Minikube 或停止集群。要停止集群,请运行:

1
minikube stop

清理本地状态

如果你之前安装过 Minikube,即使已经停止了,再次运行 minikube start 会返回一个错误:

1
machine does not exist

那么,你需要清理 minikube 的本地状态(因为已经运行过会有上一次的信息,下一次启动需要先清理上一次的信息):

1
minikube delete

这时候再去运行start命令就可以正常启动,也就是说,执行stop后需要执行delete删除,下次才能start。