https://minikube.sigs.k8s.io/docs/start/
minikube 启动
minikube 是本地 Kubernetes,专注于让 Kubernetes 易于学习和开发。
您所需要的只是 Docker(或类似兼容的)容器或虚拟机环境,而 Kubernetes 只需一个命令: minikube start
你需要什么
- 2 个或更多 CPU
- 2GB 可用内存
- 20GB 可用磁盘空间
- 网络连接
- 容器或虚拟机管理器,例如:Docker、Hyperkit、Hyper-V、KVM、Parallels、Podman、VirtualBox或VMWare
1安装
单击描述目标平台的按钮。对于其他架构,请参阅发布页面以获取 minikube 二进制文件的完整列表。
操作系统
x86-64
发布类型
稳定的 测试版
安装程序类型
.exe 下载 Windows 包管理器 巧克力味
要使用.exe 下载在x86-64 Windows上安装最新的 minikube稳定版本:
下载并运行独立的minikube Windows 安装程序。
如果您使用 CLI 执行安装,则需要先关闭该 CLI 并打开一个新的 CLI,然后再继续。
2启动集群
从具有管理员访问权限的终端(但未以 root 身份登录),运行:
minikube start
如果 minikube 无法启动,请参阅驱动程序页面以获取设置兼容容器或虚拟机管理器的帮助。
3与您的集群交互
如果您已经安装了 kubectl,您现在可以使用它来访问您闪亮的新集群:
kubectl get po -A
或者,如果您不介意命令行中的双破折号,minikube 可以下载相应版本的 kubectl:
minikube kubectl -- get po -A
最初,某些服务(例如存储供应器)可能尚未处于运行状态。这是集群启动期间的正常情况,会立即自行解决。为了进一步了解您的集群状态,minikube 捆绑了 Kubernetes 仪表板,让您可以轻松适应新环境:
minikube dashboard
4部署应用程序
创建示例部署并在端口 8080 上公开它:
kubectl create deployment hello-minikube --image=k8s.gcr.io/echoserver:1.4
kubectl expose deployment hello-minikube --type=NodePort --port=8080
这可能需要一点时间,但是当您运行时,您的部署将很快显示:
kubectl get services hello-minikube
访问此服务的最简单方法是让 minikube 为您启动 Web 浏览器:
minikube service hello-minikube
或者,使用 kubectl 转发端口:
kubectl port-forward service/hello-minikube 7080:8080
您的应用程序现在可以在http://localhost:7080/ 上使用
负载均衡器部署
要访问 LoadBalancer 部署,请使用“minikube tunnel”命令。这是一个示例部署:
kubectl create deployment balanced --image=k8s.gcr.io/echoserver:1.4
kubectl expose deployment balanced --type=LoadBalancer --port=8080
在另一个窗口中,启动隧道为“平衡”部署创建一个可路由的 IP:
minikube tunnel
要查找可路由的 IP,请运行以下命令并检查EXTERNAL-IP
列:
kubectl get services balanced
您的部署现在可在 <EXTERNAL-IP>:8080
5管理您的集群
在不影响部署的应用程序的情况下暂停 Kubernetes:
minikube pause
停止集群:
minikube stop
增加默认内存限制(需要重启):
minikube config set memory 16384
浏览易于安装的 Kubernetes 服务目录:
minikube addons list
创建第二个运行较旧 Kubernetes 版本的集群:
minikube start -p aged --kubernetes-version=v1.16.1
删除所有 minikube 集群:
minikube delete --all
问题 | 解决方案 | 示例 |
1. google镜像无法下载 | 先下载mirror,然后打对应的tag | docker tag docker.io/mirrorgooglecontainers/kube-scheduler-amd64:v1.13.12 gcr.io/google_containers/kube-scheduler-amd64:v1.13.12 |
2.minikube dashboard访问 | minikube自带dashboard | 命令minikube dashboard启动 kubectl proxy –port=0 的proxy端口随机 |
3. 查看服务 | minikube service list | minikube service list |
4. hostpath | minikube | minikube hostpath 不在机器指定目录 /var/lib/docker/volumes/minikube/_data/hostpath-provisioner/ |