概述:
单机低配置主机也可以玩转kubernetes集群。该文章是将介绍使用Minikube安装Kubernetes集群(一般用于本地/开发环境)。
这篇文章是根据kubernetes官网和其他资料总结而来,如环境相似(或更高),一般均可以安装成功。
配置环境:
硬件:CPU 至少2个核心,至少2.5G(2560M)内存
软件:virtualbox虚拟机,操作系统 CentOS Linux release 7.7.1908 (Core)
注意:
CPU 必须2个或2个以上,否则安装失败。内存必须2.5G或大于2.5G,否则磁盘IO总是100%。
说明:
如无特殊说明,本文中的所有命令全部使用root用户执行。
一、准备工作
1.1 关闭防火墙、关闭SELinux、禁用swap、设置kubernetes源
请参考 Kubernetes(K8s) 安装(使用kubeadm安装Kubernetes集群)
1.2 下载kubectl文件和Minikube文件
kuberctl文件:下载
Minikube文件:下载
(说明:这里需要将下载的文件放入到虚拟机。当然也可以使用curl命令直接下载)
结果如下图:
二、安装docker
请参考 史上最详细的Docker安装手册
三、安装kubectl和minikube
3.1 将kubectl和minikube文件改为可执行文件
执行以下命令:
chmod +x kubectl && chmod +x minikube
结果如下图(kubectl和minikube文件变为绿色):
3.2 将kubectl和minikube复制到 /usr/local/bin/ 目录
# cp kubectl /usr/local/bin/ && cp minikube /usr/local/bin/
# ls /usr/local/bin/
结果如下图:
3.3 检验是否安装成功
kubectl --help
安装成功,显示结果如下图:
minikube version
安装成功,显示结果如下图:
四、启动minikube
4.1 安装conntrack
yum install -y conntrack
4.2 下载kubernetes镜像
由于minikube启动过程中会从k8s.gcr.io下载镜像,但是国内无法下载,所以从阿里云下载(并修改tag和k8s.gcr.io一致)。
## 1. 使用docker执行以下命令,下载镜像(从阿里云下载): docker pull registry.cn-hangzhou.aliyuncs.com/google_containers/kube-apiserver:v1.18.0 && docker pull registry.cn-hangzhou.aliyuncs.com/google_containers/kube-controller-manager:v1.18.0 && docker pull registry.cn-hangzhou.aliyuncs.com/google_containers/kube-scheduler:v1.18.0 && docker pull registry.cn-hangzhou.aliyuncs.com/google_containers/kube-proxy:v1.18.0 && docker pull registry.cn-hangzhou.aliyuncs.com/google_containers/pause:3.2 && docker pull registry.cn-hangzhou.aliyuncs.com/google_containers/etcd:3.4.3 && docker pull registry.cn-hangzhou.aliyuncs.com/google_containers/coredns:1.6.7 && docker pull registry.cn-hangzhou.aliyuncs.com/google_containers/storage-provisioner:v1.8.1 ## 2. 更改镜像标签(必须修改): docker tag registry.cn-hangzhou.aliyuncs.com/google_containers/kube-apiserver:v1.18.0 k8s.gcr.io/kube-apiserver:v1.18.0 && docker tag registry.cn-hangzhou.aliyuncs.com/google_containers/kube-controller-manager:v1.18.0 k8s.gcr.io/kube-controller-manager:v1.18.0 && docker tag registry.cn-hangzhou.aliyuncs.com/google_containers/kube-scheduler:v1.18.0 k8s.gcr.io/kube-scheduler:v1.18.0 && docker tag registry.cn-hangzhou.aliyuncs.com/google_containers/kube-proxy:v1.18.0 k8s.gcr.io/kube-proxy:v1.18.0 && docker tag registry.cn-hangzhou.aliyuncs.com/google_containers/pause:3.2 k8s.gcr.io/pause:3.2 && docker tag registry.cn-hangzhou.aliyuncs.com/google_containers/etcd:3.4.3 k8s.gcr.io/etcd:3.4.3-0 && docker tag registry.cn-hangzhou.aliyuncs.com/google_containers/coredns:1.6.7 k8s.gcr.io/coredns:1.6.7 && docker tag registry.cn-hangzhou.aliyuncs.com/google_containers/storage-provisioner:v1.8.1 gcr.io/k8s-minikube/storage-provisioner:v1.8.1
4.3 启动minikube
## 使用下面的命令进行启动minikube
minikube start --driver=none
执行成功,结果如下图:
执行以下命令:
## 如之前已经安装过,请先删除对应的文件
mv /root/.kube /root/.minikube $HOME # 如果使用的root用户,这一步可以省略 chown -R $USER $HOME/.kube $HOME/.minikube
注意:
## 1:如安装过程中遇到问题,可以执行以下命令来查看日志
minikube logs
## 2:执行以下命令删除已经安装的minikube(然后重新执行start命令)
minikube delete
## 3:如安装失败,可多次进行尝试(start 和 delete)
五、校验是否安装成功
查看minikube安装是否成功,执行以下命令:
minikube status
安装成功,显示如下图:
kubectl cluster-info
说明:
可以根据自己的需要是否安装dashboard
# 安装dashboard
minikube dashboard
参考资料:
https://kubernetes.io/docs/tasks/tools/install-kubectl/#install-kubectl-on-linux
https://kubernetes.io/zh/docs/tasks/tools/install-minikube/
https://yq.aliyun.com/articles/691500
https://minikube.sigs.k8s.io/docs/drivers/docker/
--------------------------------------------------------------------------------------------------------
PS:如有问题,请在下方留言,我看到后会及时回复。
--------------------------------------------------------------------------------------------------------