Minikube 安装使用

官方文档: https://minikube.sigs.k8s.io/docs/start/

可以在官方文档中选择你的电脑架构和安装方式。

这里记录使用 brew 安装 minikube 的方法。

安装 minikube

1
brew install minikube

如果安装之后命令的链接方式出现问题可以使用以下命令重新创建链接

1
2
brew unlink minikube
brew link minikube

启动集群

1
minikube start

如果启动失败可以查看驱动页面配置: https://minikube.sigs.k8s.io/docs/drivers/

集群启动成功后就可以正常使用 kubectl 命令操作集群了。

如果你的电脑上没有 kubectl 可以使用以下命令安装,并设置命令别名:

1
2
3
4
5
# 安装
minikube kubectl -- get po -A

# 添加以下别名到自己的 shell config 配置中,比如 .zshrc .bashrc
alias kubectl="minikube kubectl --"

打开 Dashboard

1
2
3
4
minikube dashboard

# 仅获取 dashboard 链接不打开页面
minikube dashboard --url

打开 LoadBalancer

minikube 本质是虚拟机,如果不打开 LoadBalancer 的话,无法在机器外部访问集群开放的端口

新建一个终端保持打开,执行下面的命令,不要关闭窗口和中断命令:

1
minikube tunnel

当你不需要访问集群内部的服务时可以中断命令。

安装 ingress-nginx

1
minikube addons enable ingress

官方的测试配置:

1
kubectl apply -f https://storage.googleapis.com/minikube-site-examples/ingress-example.yaml

应用之后,查看 ingress

1
2
3
kubectl get ingress
NAME CLASS HOSTS ADDRESS PORTS AGE
example-ingress nginx * <your_ip_here> 80 5m45s

一定要打开 minikube tunnel 才可以访问,这里端口是 80 所以使用 127.0.0.1 可以直接访问。

暂停集群

在不影响已经部署的容器的情况下,暂停集群

1
2
3
4
5
# 暂停
minikube pause

# 取消暂停
minikube unpause

关闭集群

1
minikube stop

修改默认内存占用大小

1
minikube config set memory 9001

创建第二个集群并指定使用老版本的 Kubernetes

1
minikube start -p aged --kubernetes-version=v1.16.1

删除所有的 minikube 集群

1
minikube delete --all

打开 SSH

1
minikube ssh

拷贝文件到集群机器中

1
minikube cp <source file path> <target file path>

查看 minikube 节点 IP

1
minikube ip