使用microk8s快速搭建k8s

以前都是用minikube的,minikube默认起一个Virtualbox虚拟机(也可以使用kvm驱动来起kvm虚拟机),今天我们介绍一个新的玩意儿。 由Ubuntu维护的microk8s。

如果你是用Windows或者macOS的话,那还使用minikube吧,但是如果你:

  • 已经装了Linux虚拟机
  • 或者你要搭建k8s的机器就是Linux

的情况下,使用microk8s是一个更高效方便的选项。

首先需要安装snapd,如果是Debian/Ubuntu:

$ sudo apt update
$ sudo apt install -y snapd

如果是其它Linux,参考snapd的官方文档进行安装。

然后给snapd设置代理,这样下载东西快一些:

$ sudo mkdir /etc/systemd/system/snapd.service.d
$ sudo su
# cat > /etc/systemd/system/snapd.service.d/override.conf << EOF
[Service]
Environment="http_proxy=http://<HTTP代理地址>"
Environment="https_proxy=http://<HTTP代理地址>"
# systemctl daemon-reload
# systemctl restart snapd

接下来就可以安装 microk8s 了:

$ sudo snap install microk8s --classic
$ sudo usermod -a -G microk8s `whoami`  # 这样才可以执行 microk8s 的命令。执行完这个之后,记得退出一下当前会话。

等待一段时间安装完成之后,我们再为 microk8s 设置代理,因为k8s里很多镜像都是 gcr.io 的,同样需要代理:

$ sudo vim /var/snap/microk8s/current/args/containerd-env

添加代理:

HTTP_PROXY=http://<HTTP代理地址>
HTTPS_PROXY=http://<HTTP代理地址>

接着重启 microk8s:

$ microk8s.stop
$ microk8s.start
$ microk8s.status

最后,把 microk8s.kubectl (microk8s 的命令全都是以microk8s开头的,你可以输入microk8s然后按两下tab进行补全看看) 设置成 kubectl 方便我们操作:

$ sudo snap alias microk8s.kubectl kubectl
$ type kubectl
kubectl is hashed (/snap/bin/kubectl)

大功告成!


更多文章
  • 2017年必装的VIM插件推荐
  • TCP/IP简明教程 - 从零构建TCP/IP协议(二)连接,断开与拥塞控制
  • TCP/IP简明教程 - 从零构建TCP/IP协议(这次叫PCT协议)
  • Lua Manual 阅读笔记
  • Golang Map 源码阅读与分析
  • MySQL 零碎知识 - MySQL必知必会
  • Golang slice 源码阅读与分析
  • 经典好书推荐(2017)
  • Golang log库 源码阅读与分析
  • 毕业后一年
  • ansible 简明教程
  • 自己写个搜索引擎
  • HTTP 路由的两种常见设计形式
  • Golang的short variable declaration
  • Greenlet和Stackless Python