引言
在上一篇介绍了k8s的入门和实战,本章就来介绍一下在windows环境如何使用minikube搭建K8s集群,好了废话不多说,下面就和我一起了解Minikube吧。
什么是Minikube?
Minikube 是一种轻量级的 Kubernetes 实现,可在本地计算机上创建 VM 并部署仅包含一个节点的简单集群。 Minikube 可用于 Linux , macOS 和 Windows 系统。Minikube CLI 提供了用于引导集群工作的多种操作,包括启动、停止、查看状态和删除。
Minikube一般用于本地开发、测试和学习。
官网:https://minikube.sigs.k8s.io/docs/
Minikube 安装
注意:在windows环境下如果想要使用Minikube,需要先安装Docker Desktop,安装参考这篇:windows10/11安装和使用docker-CSDN博客
配置要求
- 2 个或更多 CPU
- 2GB 可用内存
- 20GB 可用磁盘空间
- 网络连接
- 容器或虚拟机管理器,例如:Docker、QEMU、Hyperkit、Hyper-V、KVM、Parallels、Podman、VirtualBox或VMware Fusion/Workstation
安装步骤
安装步骤就不在这里赘述了,请按照官方文档minikube start | minikube进行操作,里面有windows和Linux的安装方式,大家可以根据自己的环境选择来安装,我这里用的是win11。
Minikube 实战
注意:在windows环境下如果想要使用Minikube,需要先安装docker,docker安装参考这篇:windows10/11安装和使用docker-CSDN博客
启动 Minikube
以管理员方式运行PowerShell,执行命令启动 Minikube:
minikube start
下载初始化过程可能会比较慢,请耐心等待
执行命令后等待docker拉取镜像,最终成功页面显示如下 如果发现启不来,报错如下,这是因为拉取不到合适的k8s镜像
参考这篇:K8S 部署 SpringBoot 项目(一篇够用)_k8s部署springboot-CSDN博客
验证集群状态
等待 Minikube 启动完成后,执行以下命令验证集群状态:
kubectl cluster-info
kubectl get nodes
会看到如下输出
使用 Kubectl
现在可以使用 kubectl
命令行工具管理 Minikube 上的 Kubernetes 集群。
kubectl get pods --all-namespaces
开启控制台
minikube dashboard
启动成功会自动打开浏览器进入k8s控制面板,可以看到部署的信息
执行命令查看所有Pod
kubectl get pods -ALL
部署nginx示例
创建一个nignx-deployment.yml
apiVersion: apps/v1
kind: Deployment
metadata:
name: nginx-deployment
spec:
replicas: 3
selector:
matchLabels:
app: nginx
template:
metadata:
labels:
app: nginx
spec:
containers:
- name: nginx-container
image: nginx:latest
ports:
- containerPort: 80
---
apiVersion: v1
kind: Service
metadata:
name: nginx-service
spec:
type: NodePort # 这里可以根据需求选择其他Service类型
selector:
app: nginx
ports:
- protocol: TCP
port: 80
targetPort: 80
nodePort: 30208
然后在文件目录打开CMD命令窗口执行
kubectl apply -f .
在执行kubectl get pods -A 查看nginx的部署情况
也可以在dashboard查看
然后执行下面命令,就可以再浏览器访问nginx了
minikube service nginx-service
至此,在windows上搭建k8s集群就完成,小伙伴们可以在本地进行开发和部署测试了,如果搭建过程中有遇到什么问题,也欢迎在评论区或者私信交流。