使用Rancher快速构建Kubernetes

前言

最近在玩Kubernetes,时下最火的容器编排工具,国内外三大云计算平台AWSGoogleAurze
国内阿里腾讯百度无不支持。可以说已经成为了容器编排领域的事实标准了,现在再搞别的纯属浪费时间。可惜Kubernetes这玩意太复杂,要先玩转先得理解其概念,可能大半天就过去了。

踩坑

官网提供minikube的mini单机kube安装方式,首先这玩意在我的windows下不太支持,包括在win10下的linux子系统也不行
其次在我的老款macbook pro下也安装不了,还一个问题,这是个单机版的,无法体验其所有特性,所以放弃了

官网还提供了个多节点的部署方式,但是一看说明文档,现在只是实验性支持,瞬间没了兴趣,坑太多不敢踩。
无意中看到了Rancher这个神器,几乎全程自动安装不需要敲键盘。

开始

这里我使用的DigitalOcean云服务,这里不太推荐在本地环境安装k8s,第一安装一个k8s最少需要四台虚拟机或者服务器,每台机器不低于1GB的内存,而且如果使用Rancher的形式安装,那么可能内存不低于2GB,而且本机环境或者本地虚拟机需要解决硬件和网络问题

所以选择云计算。这里我推荐DigitalOcean,现在注册并认证信用卡就送100美元,有效期2个月。如果没有这个优惠了,可以用我的邀请码,送10美元http://www.digitalocean.com/?refcode=f439670561f1

理论上其他的云服务提供商也是可以的,但是如果是国内的服务器,需要解决网络的问题。推荐走阿里的镜像

  1. 先搞一台机器安装Rancher OS,配置最低2GB内存。不然可能跑不起来

Rancher OS是一个比较纯净的系统,里面自带Docker。理论上安装Ubuntu 16.04也可以的,只是需要自己安装Docker。而且对版本可能也有要求需要17.03

选择镜像

选择规格

  1. 然后进入Rancher OS,注意ssh进入的时候用户名是rancher,不然进不去

远程登陆

1
ssh rancher@<server-ip>
  1. 安装Rancher Server

这里8080端口也可以改为其他端口,国内的运营商可能需要备案才能访问80,443,8080,这个时候可以改为其他端口

1
sudo docker run -d --restart=unless-stopped -p 8080:8080 rancher/server:stable

等待安装成功

  1. 安装成功后进入浏览器输入http://:8080

第一次加载可能有点慢,耐心等待

  1. 然后点击环境管理,添加Kubernetes环境,这个时候需要添加主机,这里最少添加三个主机,不然kubernetes dashboard打不开

添加环境

选择k8s

  1. 三个主机添加好以后,就可以进入UI界面了

  1. 点击工作负载,开始部署一个应用

  1. 这里先部署一个nginx应用,设置三个副本,对外暴露端口80

  1. 等待几分钟后进入overview界面打开链接,这个时候可以看到这个,说明nginx已经成功启动并可以对外提供服务

进入overview

点击链接