从零开始的K8S学习笔记(二)K8S本地开发环境——minikube安装部署及实践
什么是K8S
Kubernetes是容器集群管理系统,是一个开源的平台,可以实现容器集群的自动化部署、自动扩缩容、维护等功能。
通过Kubernetes你可以:
· 快速部署应用
· 快速扩展应用
· 无缝对接新的应用功能
· 节省资源,优化硬件资源的使用
什么是Minikube
Minikube 是一种轻量级的 Kubernetes 实现,可在本地计算机上创建 VM 并部署仅包含一个节点的简单集群。 Minikube 可用于 Linux , macOS 和 Windows 系统。Minikube CLI 提供了用于引导集群工作的多种操作,包括启动、停止、查看状态和删除。
Minikube一般用于 本地开发、测试和学习 。
学习k8s可以到官方文档查看相关资料。
官方文档的交互式教程,在教程里,可以使用预装有 Minikube 的在线终端进行体验。
部署安装Minikube
安装步骤
参考自minikube的官网: minikube start | minikube (k8s.io)
最低配置
· 2 个cpu核心或更多
· 2GB 可用内存
· 20GB 可用磁盘空间
· 因特网连接
· 容器或虚拟机管理器,例如: Docker 、 Hyperkit 、 Hyper-V 、 KVM 、 Parallels 、 Podman 、 VirtualBox 或 VMware Fusion/Workstation
系统要求
这里我选择使用x86-64,win11,Docker Desktop,wsl2进行Minikube的安装部署。其他系统安装按照Minikube官网给出的流程去安装即可,可以参考本文列举的一些常用配置参数。
1. 直接安装minikube
#阿里云镜像
curl -Lo minikube
https://
kubernetes.oss-cn-hangzhou.aliyuncs.com
/minikube/releases/v1.23.1/minikube-linux-amd64
&& chmod +x minikube && sudo mv minikube /usr/local/bin/
#官方二进制包下载
curl -LO https:// storage.googleapis.com/ minikube/releases/latest/minikube-linux-amd64
sudo install minikube-linux-amd64 /usr/local/bin/minikube
2. 启动minikube
#需要良好网络环境,最好是科学上网,不然等待时间会很久而且不一定能成功
minikube start
#建议使用国内镜像
minikube start --image-mirror-country='cn'
#如果启动失败·,可以尝试使用以下命令
minikube start --registry-mirror= https:// registry.docker-cn.com --image-mirror-country='cn' --kubernetes-version=v1.23.3
#minikube 提供了非常多的配置参数,
常用配置参数如下
--driver=*** 从1.5.0版本开始,Minikube缺省使用系统优选的驱动来创建Kubernetes本地环境,比如您已经安装过Docker环境,minikube 将使用 docker 驱动
--cpus=2: 为minikube虚拟机分配CPU核数
--memory=2048mb: 为minikube虚拟机分配内存数,如果有足够的资源,可以考虑分配多一点cpu和内存。
--registry-mirror=*** 为了提升拉取Docker Hub镜像的稳定性,可以为 Docker daemon 配置镜像加速,参考 阿里云镜像服务
--kubernetes-version=***: minikube 虚拟机将使用的 kubernetes 版本
#如下命令将自动使用阿里云服务来支持minikube的环境配置
minikube start --image-mirror-country='cn'
3. 安装完成
4.让minikube下载kubectl客户端命令工具
minikube kubectl -- get po -A
此时就可以使用kubectl命令来进行各种kubernetes的操作了。
5.常见安装问题
Docker安全问题报错:
exiting due to drv_as_root: the "docker" driver should not be used with root privileges
解决办法1:
minikube start --force --driver=docker
解决办法2:
添加新用户
adduser newUser
usermod -aG sudo newUser
su - newUser
登录新创建的用户
su - newUser
将用户添加到 Docker 组
sudo groupadd docker
sudo usermod -aG docker $USER
使用以下命令重新登录并启动 minikube
minikube start --driver=docker
验证 minikube 是否正在运行
docker ps
参考自 https:// github.com/kubernetes/m inikube/issues/7903
docker报错:
docker only has 0MiB available, less than the required 1800MiB for Kubernetes
解决办法:
docker system prune
minikube delete
minikube start --driver=docker
卸载minikube
minikube stop
minikube delete
docker stop (docker ps -aq)