一、环境准备

1.准备至少3台CentOS7版本的虚拟机


# IP地址 主机名称

192.168.1.160 rancher 192.168.1.161 master 192.168.1.162 node1 192.168.1.163 node2 192.168.1.164 node3


 

2.每台虚拟机上需要做的配置

1.安装Docker


$ yum install -y docker


 

2.设置hostname


$ hostnamectl --static set-hostname rancher #根据下面名称进行对应配置


 

3.设置host


$ vim /etc/hosts # 粘贴配置 192.168.1.160 rancher 192.168.1.161 master 192.168.1.162 node1 192.168.1.163 node2 192.168.1.164 node3


 

4.关闭防火墙


$ systemctl disable firewalld.service $ systemctl stop firewalld.service


 

5.开启docker


$ systemctl start docker


 

到这里所有的准备工作已就绪~~~

 

二、搭建rancher(在你主机名rancher的虚拟机上执行哈,不建议rancher和master配置在同一台机器上)

1.使用docker安装rancher


$ docker run -d --restart=unless-stopped -p 80:80 -p 443:443 rancher/rancher:stable


 

2.查看rancher是否安装完成


$ docker ps


K8S超大规模集群监控方案_开发工具

 

 

3.访问rancher

https://192.168.1.160:443 默认用户名密码都是admin

K8S超大规模集群监控方案_开发工具_02

 

到这里rancher已经安装完成~~~

 

三、新建集群

1.起一个好听的集群名称

K8S超大规模集群监控方案_开发工具_03

 

2. 打开你配置好的虚拟机,设置需要扩展的工作节点,注意只有master需要勾选etcd和Control 其他node节点只需勾选worker

K8S超大规模集群监控方案_开发工具_04

 

3.等待集群部署台扩展节点,部署好之后就可以查看仪表盘了

K8S超大规模集群监控方案_运维_05

K8S超大规模集群监控方案_开发工具_06

K8S超大规模集群监控方案_docker_07

出现以上图片内容,恭喜你你已经完成节点配置了~~~

 

四、部署Nginx

1.新建一个项目和项目空间

K8S超大规模集群监控方案_开发工具_08

K8S超大规模集群监控方案_开发工具_09

 

2.部署Nginx工作负载

K8S超大规模集群监控方案_Nginx_10

K8S超大规模集群监控方案_运维_11

K8S超大规模集群监控方案_开发工具_12

 

3.部署完成之后进入nginx工作负载进行访问测试

K8S超大规模集群监控方案_K8S超大规模集群监控方案_13

K8S超大规模集群监控方案_Nginx_14

出现上面的信息说明配置成功,你可以切换不同node节点访问Nginx,都是可以访问成功的~

 

五、部署私有库镜像

1.配置镜像库凭证

K8S超大规模集群监控方案_K8S超大规模集群监控方案_15

K8S超大规模集群监控方案_Nginx_16

K8S超大规模集群监控方案_Nginx_17

 

2.使用已配置的镜像库凭证部署一个镜像服务

K8S超大规模集群监控方案_K8S超大规模集群监控方案_18

K8S超大规模集群监控方案_K8S超大规模集群监控方案_19

K8S超大规模集群监控方案_K8S超大规模集群监控方案_20

部署完成之后可以点进去和Nginx一样,也是可以多节点访问的~

六、说在后头

Docker+Rancher+K8S的配置到现在大功告成,比起我自己手动线下搭建K8S,Rancher简直不要太简单,我看到一个文章是这么形容这三者的关系的,感觉

非常的贴切:Docker是码头工人,K8S是舵手,Rancher是农场主,一下子豁然开朗~~~

 

Rancher的部署有两种方式,单点部署和高可用部署,本文重点在于使用rancher搭建Kubernetes高可用集群,所以本文使用rancher的单点部署方式。

Rancher的技术专家录制视频:Rancher高可用模式视频连接

 

参考链接:

Rancher2.0-解决部署服务出现错误解决方法

按照这篇文章,自己离线部署了K8S.当时搭建的是1+3模式,此种模式很繁琐并且不适合用于生产,但还是建议看一下,更有利于理解K8S