在Mac上搭建本地的Kubenetes开发环境Minikube 1.0
在Mac上安装Minikube 1.0
最近这几年,软件开发翻天覆地的变化,当个软件行业从业者,不学习新东西肯定是不行的。从微服务到容器化服务开发,其实并没有多长时间,随着Docker和Kubenetes的大热,还必须要跟上脚步才行,做一个程序员真不容易,做一个老程序员更难。
Docker和Kubenetes是什么,我这里就不介绍了,比我了解这玩意的的人,大有人在,如果你想了解,请自我学习,本文结尾也推荐了《IBM微讲堂 Kubenetes》系列,一共十个视频,看一遍基本也就都懂了。如果你开发微服务想控制和容器编排工具有互动,比如调用K8s的API之类,或者你想本Mac地装一个单机版本的K8s,我也走了一些弯路,没少浪费时间。K8s安装是一个不小的工程,但是我并不是一个很好的运维,也仅仅在开发层面了解K8s,所以装一个单机版本非常有必要,这里推荐你去安装Minikube
,这就是一个单机版本的单节点K8s。其实本来就想一个安装记录,但是估计也有不少人会遇到安装的问题,那我就稍微写详细一点,帮助大家稍微少走一点弯路。
安装Minikube
第一步,你先要越过GFW
,至于什么是GFW怎么越过去这里就不详细说了。Minikube
需要你本地装有VirtualBox
,推荐你下载一个比较新的版本,因为要在上面运行一个虚拟机来跑K8s的节点。
修改网络配置
我用的软件是ShadowsocksX-NG
这个软件,早期版本并不支持代理,后期版本使用了privoxy实现了HTTP和Socks,但是本文只需要使用HTTP代理就好了。
首先修改进入Performance
中,把Advance
中的Socks5
地址和HTTP
中的监听地址都改为0.0,0,0就Ok了,这样你就能接收非本地的请求代理访问ss了。
安装
Mac下安装太容易了,别告诉我你没有brew
。
brew cask install minikube
大功告成。
下载安装kubectl ,需要手工该权限,这是K8s的命令行控制工具
curl -LO https://storage.googleapis.com/kubernetes-release/release/v1.14.0/bin/darwin/amd64/kubectl sudo mv kubectl /usr/local/bin/ chmod +x /usr/local/bin/kubectl
安装完Minikube 先测试下网络环境,下面命令正常说明代理服务没问题
curl -x 192.168.99.1:1087 http://baidu.com
启动
用下面命令,让K8s节点的docker,使用下面代理访问,insecure-registry详解见本文末尾扩展阅读
minikube start --docker-env HTTP_PROXY=http://192.168.99.1:1087 --docker-env HTTPS_PROXY=http://192.168.99.1:1087 --docker-env NO_PROXY=127.0.0.1/24 --insecure-registry=192.168.99.1:5000
见到下面log为启动成功。