Minikube 安装使用

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

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

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

安装 minikube

brew install minikube

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

brew unlink minikube
brew link minikube

启动集群

minikube start

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

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

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

# 安装
minikube kubectl -- get po -A

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

打开 Dashboard

minikube dashboard

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

打开 LoadBalancer

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

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

minikube tunnel

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

安装 ingress-nginx

minikube addons enable ingress

官方的测试配置:

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

应用之后,查看 ingress

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

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

暂停集群

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

# 暂停
minikube pause

# 取消暂停
minikube unpause

关闭集群

minikube stop

修改默认内存占用大小

minikube config set memory 9001

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

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

删除所有的 minikube 集群

minikube delete --all

打开 SSH

minikube ssh

拷贝文件到集群机器中

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

查看 minikube 节点 IP

minikube ip