使用 Minikube 安装 Kubernetes
概述:
单机低配置主机也可以玩转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一致)。
## . 使用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. &&
docker pull registry.cn-hangzhou.aliyuncs.com/google_containers/coredns:1.6. &&
docker pull registry.cn-hangzhou.aliyuncs.com/google_containers/storage-provisioner:v1.8.1 ## . 更改镜像标签(必须修改):
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. k8s.gcr.io/etcd:3.4.- &&
docker tag registry.cn-hangzhou.aliyuncs.com/google_containers/coredns:1.6. k8s.gcr.io/coredns:1.6. &&
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:如有问题,请在下方留言,我看到后会及时回复。
--------------------------------------------------------------------------------------------------------
使用 Minikube 安装 Kubernetes的更多相关文章
- kubernetes学习笔记(一)——minikube安装记录
想学习一下kubernetes,于是先安装一个单机版来学习一下.但是就是这个最简单的单机版安装方式都倒腾了我好久,记录下自己的安装过程.博主是在windows利用vmware workstation安 ...
- 安装Kubernetes到CentOS(Minikube)
运行环境 系统版本:CentOS Linux release 7.6.1810 (Core) 软件版本:Docker-ce-18.06.0.Kubectl-1.15.0.Kubernetes-v1.1 ...
- Minikube 安装
安装Minikube 在容器编排工具中安装配置最复杂的就是Kubernetes,想要运行一个简单的容器集群环境,对于没有使用过Kubernetes的人来说,需要花费一定的时间去理解各组件的概念和功能, ...
- 基于minikube的kubernetes集群部署及Vitess最佳实践
简介 minikube是一个可以很容易在本地运行Kubernetes集群的工具, minikube在电脑上的虚拟机内运行单节点Kubernetes集群,可以很方便的供Kubernetes日常开发使用: ...
- mac上利用minikube搭建kubernetes(k8s)环境
友情提示:对于初次接触k8s的同学,强烈建议先看看本文最后的参考文章. 环境: mac os(Mojave) 前提:先安装好kubectl (brew install kubectl) .docker ...
- VirtualBox上使用kubeadm安装Kubernetes集群
之前一直使用minikube练习,为了更贴近生产环境,使用VirtualBox搭建Kubernetes集群. 为了不是文章凌乱,把在搭建过程中遇到的问题及解决方法记在了另一篇文章:安装Kubernet ...
- K8s炼气期(一)| minikube安装本地Kubenetes环境
前言 根据Kubenetes学习路径的七大阶段,炼气期.筑基期.金丹期.元婴期.化神期.炼虚期.大乘期:开始炼气期的第一个小阶段,安装Kubenetes环境. 目录 1.安装kubectl 2.安装m ...
- K8S 使用Minikube搭建Kubernetes(K8S)~单机运行Kubernetes~适用于快速学习
在一台主机上运行起来的Kubernetes,仅适用于学习!~~~ 系统版本:CentOS Linux release 7.6.1810 (Core) 软件版本:Docker-ce-18.06.0.Ku ...
- Centos7上安装Kubernetes集群部署docker
一.安装前准备1.操作系统详情需要三台主机,都最小化安装 centos7.3,并update到最新 [root@master ~]# (Core) 角色 主机名 IPMaster master 192 ...
随机推荐
- Linux知识再回顾
Linux再回顾 下面是自己之前centos7的笔记总结第二篇,第一篇是19年就写过了一些,记住Linux中一切皆文件. 这里提下,使用xshell+xftp来使用云服务器是很不错的,强烈建议小伙伴这 ...
- commonJS、AMD和CMD之间的区别
JS中的模块规范(CommonJS,AMD,CMD),如果你听过js模块化这个东西,那么你就应该听过或CommonJS或AMD甚至是CMD这些规范咯,我也听过,但之前也真的是听听而已. 现在就看看吧, ...
- python教程:使用 async 和 await 协程进行并发编程
python 一直在进行并发编程的优化, 比较熟知的是使用 thread 模块多线程和 multiprocessing 多进程,后来慢慢引入基于 yield 关键字的协程. 而近几个版本,python ...
- stand up meeting 12-8
根据计划今天项目组成员和travis老师毕然同学进行了最后一次关于design和feature的确认meeting. 项目design和UI的改动较大,feature改动较小,需对UI进行重新整合,对 ...
- stand up meeting 12/4/2015 -12/6/2015
part 组员 今日工作 工作耗时/h 明日计划 工作耗时/h UI 冯晓云 ------ --- 数据库 朱玉影 等待张葳出关 0 foxit reader 6 ...
- H - Tempter of the Bone DFS
小明做了一个很久很久的梦,醒来后他竟发现自己和朋友在一个摇摇欲坠的大棋盘上,他们必须得想尽一切办法逃离这里.经过长时间的打探,小明发现,自己所在的棋盘格子上有个机关,上面写着“你只有一次机会,出发后t ...
- python信息收集(四)
在前三篇中,我们介绍了使用python脚本发现二层.三层的主机设备,接下来我们介绍使用python发现第四层主机. 在TCP/IP协议中,第四层为传输层,主要使用的通信协议为TCP协议 ...
- 为何 UNIX 时间 0, 有时显示是1970年1月1日,有时显示是1969年12月31日
by Rachael Arnold http://www.rachaelarnold.com/dev/archive/why-is-date-returning-wrong Demystifying ...
- 虚拟化KVM之概述(一)
云计算基本概述 云计算是一种按使用量付费的模式,这种模式提供可用的.便捷的.按需的网络访问,进入可配置的计算资源共享池(资源包括网络,服务器,存储,应用程序,服务),这些资源能够被快速提供,只需投入很 ...
- Scala教程之:可变和不变集合
文章目录 mutable HashMap immutable HashMap 集合在程序中是非常有用的,只有用好集合才能真正感受到该语言的魅力.在scala中集合主要在三个包里面:scala.coll ...