概述:

  单机低配置主机也可以玩转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的更多相关文章

  1. kubernetes学习笔记(一)——minikube安装记录

    想学习一下kubernetes,于是先安装一个单机版来学习一下.但是就是这个最简单的单机版安装方式都倒腾了我好久,记录下自己的安装过程.博主是在windows利用vmware workstation安 ...

  2. 安装Kubernetes到CentOS(Minikube)

    运行环境 系统版本:CentOS Linux release 7.6.1810 (Core) 软件版本:Docker-ce-18.06.0.Kubectl-1.15.0.Kubernetes-v1.1 ...

  3. Minikube 安装

    安装Minikube 在容器编排工具中安装配置最复杂的就是Kubernetes,想要运行一个简单的容器集群环境,对于没有使用过Kubernetes的人来说,需要花费一定的时间去理解各组件的概念和功能, ...

  4. 基于minikube的kubernetes集群部署及Vitess最佳实践

    简介 minikube是一个可以很容易在本地运行Kubernetes集群的工具, minikube在电脑上的虚拟机内运行单节点Kubernetes集群,可以很方便的供Kubernetes日常开发使用: ...

  5. mac上利用minikube搭建kubernetes(k8s)环境

    友情提示:对于初次接触k8s的同学,强烈建议先看看本文最后的参考文章. 环境: mac os(Mojave) 前提:先安装好kubectl (brew install kubectl) .docker ...

  6. VirtualBox上使用kubeadm安装Kubernetes集群

    之前一直使用minikube练习,为了更贴近生产环境,使用VirtualBox搭建Kubernetes集群. 为了不是文章凌乱,把在搭建过程中遇到的问题及解决方法记在了另一篇文章:安装Kubernet ...

  7. K8s炼气期(一)| minikube安装本地Kubenetes环境

    前言 根据Kubenetes学习路径的七大阶段,炼气期.筑基期.金丹期.元婴期.化神期.炼虚期.大乘期:开始炼气期的第一个小阶段,安装Kubenetes环境. 目录 1.安装kubectl 2.安装m ...

  8. K8S 使用Minikube搭建Kubernetes(K8S)~单机运行Kubernetes~适用于快速学习

    在一台主机上运行起来的Kubernetes,仅适用于学习!~~~ 系统版本:CentOS Linux release 7.6.1810 (Core) 软件版本:Docker-ce-18.06.0.Ku ...

  9. Centos7上安装Kubernetes集群部署docker

    一.安装前准备1.操作系统详情需要三台主机,都最小化安装 centos7.3,并update到最新 [root@master ~]# (Core) 角色 主机名 IPMaster master 192 ...

随机推荐

  1. (转) 关于Windows CE和Windows Mobile

    转发自http://www.cnblogs.com/chump/articles/1281955.aspx 一.Windows CE Windows CE是微软的嵌入式操作系统主要的一种,面世于199 ...

  2. Python工业互联网监控项目实战3—websocket to UI

    本小节继续演示如何在Django项目中采用早期websocket技术原型来实现把OPC服务端数据实时推送到UI端,让监控页面在另一种技术方式下,实时显示现场设备的工艺数据变化情况.本例我们仍然采用比较 ...

  3. How Many Answers Are Wrong HDU - 3038 (经典带权并查集)

    题目大意:有一个区间,长度为n,然后跟着m个子区间,每个字区间的格式为x,y,z表示[x,y]的和为z.如果当前区间和与前面的区间和发生冲突,当前区间和会被判错,问:有多少个区间和会被判错. 题解:x ...

  4. js多线程的实现

    我们都知道JS是一种单线程语言,即使是一些异步的事件也是在JS的主线程上运行的(具体是怎么运行的,可以看我另一篇博客JS代码运行机制).像setTimeout.ajax的异步请求,或者是dom元素的一 ...

  5. Python - 实现文件名自动更改,避免同名文件被覆盖的两个解决方法

    [原创]转载请注明作者Johnthegreat和本文链接. 在一些不多的数据下载和生成的时候,我们倾向于直接保存为文件,当我们修改某些参数后再一次运行时,之前运行时生成的文件就被覆盖了.为了解决这个问 ...

  6. Springboot:logback日志管理(九)

    Springboot默认使用的日志框架就是logback 创建自定义的logback-spring.xml放在resources类目录下即可 logback-spring.xml: <?xml ...

  7. 类内部装饰器的使用:property、classmethod与staticmethod

    1.property property是一种特殊的属性,可实现把函数名变为属性名使用.它可以在不改变类接口的前提下使用存取方法 (即读值和取值) 来修改数据的属性,property类有3个方法gett ...

  8. php中垃圾回收机制

    php中垃圾回收机制 我们可能在开发中经常会听到gc,是的gc就是垃圾回收容器,全称Garbage Collection. 此篇文章中“垃圾”的概念:如果一个变量容器能被减少到0,说明他就已经没有被引 ...

  9. 2019-2020-1 20199326《Linux内核原理与分析》第七周作业

    实验内容:分析Linux内核创建一个新进程的过程 初始化Menu Os,输入fork可以看到menuos触发了一个fork系统调用 再开一个shell,进入调试模式,设置几个断点sys_clone,d ...

  10. js 实现文字滚动功能,可更改配置参数 带完整版解析代码。

    前言:         本人纯小白一个,有很多地方理解的没有各位大牛那么透彻,如有错误,请各位大牛指出斧正!小弟感激不尽.         本篇文章为您分析一下原生JS写文字滚动效果 需求分析: 需要 ...