前言:之前在windows上面的虚拟机上面手工搭建了kubernetes集群,但是环境被破坏了,最近想要继续学习k8s,手工搭建太费事,所以选择了minikube,完全能够满足个人的需求,其实在Windows、Mac、Linux系统上面安装大概都差不多,以下只是我个人搭建的过程以及遇到的一些问题。

k8s集群搭建起来还是有点难度,因为刚开始的玩的话,会有很多想不到的坑,好在 Kubernetes 社区提供了可以在本地开发和体验的极简集群安装 MiniKube,对于入门学习来说很方便。官方文档参照https://github.com/kubernetes/minikube#installation;

环境需求:git、golang环境、虚拟机驱动(VirtualBox)

主要步骤:1、安装kubectl   2、安装minikube

一、环境配置

1、git环境比较简单,不再赘述。

2、golang环境配置:

  • https://golang.org/dl/,下载然后跟安装软件一样进行安装,我选择最新版本1.10.3。
  • 配置环境变量,进入终端 敲 vi ~/.brash_profile,编辑,并添加如下:
export GOROOT=/usr/local/go
export GOPATH=/Volumes/E/go
export GOBIN=/usr/local/go/bin
:$GROOT/bin
  • 查看go环境,golang环境配置完成。如下图:

3、安装VirtualBox:进入https://www.virtualbox.org/wiki/Downloads,下载完成和平常软件安装一样进行安装。

二、安装kubectl

kubectl很多的安装方法,我选择源码编译安装,先从git上面下载,然后进行安装,具体执行如下:

➜ git clone https://github.com/kubernetes/kubernetes.git
➜ cd kubernetes
➜ make
➜ sudo cp _output/bin/kubectl /usr/local/bin/
➜ sudo chmod +x /usr/local/bin/kubectl

三、安装minikube

MiniKube 是使用 Go 语言开发的,所以安装其实很方便,一是通过下载基于不同平台早已编译好的二级制文件安装,二是可以编译源文件安装。我选择用源码进行安装。本次有两个坑,我在后面会提到,有两个注意:

  • 1、minikube安装的路径,要在/Users/qstudy/go/src/k8s.io,不然会报错。
  • 2、按照官方文档,用官方的源码安装的时候,会出现time out(可能是一些网络问题),github上面也有人遇到这样的问题。所以选择阿里云的进行安装。

1、进入目录/Users/qstudy/go/src/k8s.io(qstudy是我自己的,大家会不同)然后如下:

➜ git clone https://github.com/AliyunContainerService/minikube
➜ cd minikube
➜ git checkout aliyun-v0.28.1
➜ make
➜ sudo cp out/minikube /usr/local/bin/
➜ sudo chmod +x /usr/local/bin/minikube

我选择最新的版本aliyun-v0.28.1,也可选择其他版本

2、然后进行启动:minikube start ,也可以带一些参数,详见官方文档。如下图:

3、启动dashboard,敲命令minikube dashboard,如下图:

至此,kubernets本地学习环境已经搭建完成。

#还有两个在这个过程中遇到的问题

1、如果在安装minikube,下载源码路径不对,编译的时候会出现如下的错误:

2、选择国外的进行安装的时候会出现下面的问题(我是可以出去的),并且有时候你启动的时候,有些是可以下载的,第一次安装kubelet不行,但后面又断断续续多试了几次,安装完成了kubelet,kubeadm,但是在kube-proxy的时候,又time out ,不会动了,实在受不了了。只能猜测是网络不稳定,因为我试过minikube delete,然后清理~/.minikube ,尝试后还是不行,如下图:

这是第n次尝试在kubeadm的时候出现问题了

下面这是前面的kubeadm和kubelet完成,但是在kube-proxy的时候出现问题了

如果遇到同样的或者其他的问题,欢迎一起讨论。

Mac本地搭建kubernetes环境的更多相关文章

  1. 【重学Node.js 第1&2篇】本地搭建Node环境并起RESTful Api服务

    本地搭建Node环境并起RESTful Api服务 课程介绍看这里:https://www.cnblogs.com/zhangran/p/11963616.html 项目github地址:https: ...

  2. 使用 kind 快速搭建 kubernetes 环境

    使用 kind 快速搭建 Kubernetes 环境 Intro kind(Kubernetes IN Docker) 是一个基于 docker 构建 Kubernetes 集群的工具,非常适合用来在 ...

  3. 如何在本地搭建DVWA环境

    如何在本地搭建DVWA环境 1.工具下载:  (1)phpStudy:   http://phpstudy.php.cn/download.html (2)DVWA:http://www.dvwa.c ...

  4. mac上搭建mysql环境配置和Navicat连接mysql

    mac上搭建mysql环境配置 1.下载mysql for mac: https://downloads.mysql.com/archives/community/ 注意:mysql版本要和你的MAC ...

  5. Windows本地搭建Edusoho环境

    Windows搭建Edusoho比Linux还要轻松的多.因为有很多环境集成工具如xampp.wampserver.phpstudy等.基本上安装号wampserver工具,直接将edusoho项目扔 ...

  6. Jekyll本地搭建开发环境以及Github部署流程

    转载自: http://www.jianshu.com/p/f37a96f83d51 前言 博客从wordpres迁移到Jekyll上来了,整个过程还是很顺利的.Jekyll是什么?它是一个简单静态博 ...

  7. windows本地搭建easy-mock环境

    起因:由于easy-mock官网很不稳定,所以想搭建自己本地的mock环境 1.首先安装node.js 环境 (提供地址:https://nodejs.org/en/) 2.下载mongoDB 地址( ...

  8. 本地Mac如何搭建IPv6环境

    http://blog.csdn.net/dancen/article/details/51595374 这篇文章写的很详细,借鉴用啦-

  9. iOS之在本地搭建IPv6环境测试你的app

    IPv6的简介 IPv4 和 IPv6的区别就是 IP 地址前者是 .(dot)分割,后者是以 :(冒号)分割的(更多详细信息自行搜索). PS:在使用 IPv6 的热点时候,记得手机开 飞行模式 哦 ...

随机推荐

  1. Centos7 启动指定docker容器报错

    今天做docker实验时,把docker镜像pull下后,启动报如下错误: 错误信息:WARNING: IPv4 forwarding is disabled. Networking will not ...

  2. stream流操作List工具类

    工作中操作List对于程序猿来说是"基本操作",为了更加便利,对JDK8的新特性stream流进行二次封装.话不多说,直接上代码 package com.mydemo; impor ...

  3. Kafka如何保证消息的顺序性

    1. 问题 比如说我们建了一个 topic,有三个 partition.生产者在写的时候,其实可以指定一个 key,比如说我们指定了某个订单 id 作为 key,那么这个订单相关的数据,一定会被分发到 ...

  4. 常见排序算法总结:插入排序,希尔排序,冒泡排序,快速排序,简单选择排序以及java实现

    今天来总结一下常用的内部排序算法.内部排序算法们需要掌握的知识点大概有:算法的原理,算法的编码实现,算法的时空复杂度的计算和记忆,何时出现最差时间复杂度,以及是否稳定,何时不稳定. 首先来总结下常用内 ...

  5. oracle篇 之 单行函数

    一.分类 1.单行函数:需要处理的行数和返回结果的行数相等(单行进单行出) 2.多行函数(组函数):返回结果的行数少于要处理的行数(多行进单行出) 二.字符处理相关函数 1.lower:字符串转换成小 ...

  6. PAT 甲级真题题解(1-62)

    准备每天刷两题PAT真题.(一句话题解) 1001 A+B Format  模拟输出,注意格式 #include <cstdio> #include <cstring> #in ...

  7. 攻防常用命令(linux)

    1.修改SSH密码: #登录SSH passwd 出现current passwoed或new password 输入就密码再输入新密码确认或直接输入新密码确认即可 2.修改Mysql密码: 1.在m ...

  8. 第四十五篇--将文件写入SD卡

    RAM: 运行内存 ROM: 外部存储,手机内部存储 SD卡:外部存储,SD卡存储. 在存储文件时千万不要忘记向清单文件中添加相应权限,并且android6.0以后还要添加运行时权限 还有一个权限有所 ...

  9. 前端三剑客:html,css,JavaScript

    一.前端概念 二.html详细介绍 三.css基础 四.css盒模型 五.css高级布局 六.JS基础 七.JS常用类 八.JS基础操作 九.JS高级与事件 十.BOM与DOM 十一.jQuery初识 ...

  10. jenkins+ant+jmeter接口测试

    <?xml version="1.0" encoding="UTF-8"?> <xsl:stylesheet xmlns:xsl=" ...