使用Rancher搭建K8S测试环境

环境准备(4台主机,Ubuntu16.04+Docker1.12.6 + SSH):

rancher1   192.168.3.160   只做管理节点

node1      192.168.3.161   K8S的节点1

node2      192.168.3.162   K8S的节点2

node3      192.168.3.163   K8S的节点3

此时如果用docker pull命令下载镜像,本地会连接hub.docker.com网站去下载,耗时较长,因此我们可以设置docker镜像加速,使得本地连接去国内镜像仓库下载,镜像加速的设置有很多种,本章以阿里云的设置为例,步骤如下:

1)创建目录:

[root@master ~]# mkdir /etc/docker

2)设置镜像仓库地址:

在daemon.json最后加上{  "registry-mirrors": ["https://xwx6wxd1.mirror.aliyuncs.com"] }

tee /etc/docker/daemon.json <<-'EOF'{  "registry-mirrors": ["https://xwx6wxd1.mirror.aliyuncs.com"] }EOF

3)重新加载配置:

[root@master ~]# systemctl daemon-reload

4)重启服务

[root@master ~]# systemctl restart docker.service

备注:slave1节点操作一致

一、启动Rancher Server管理节点 

#在rancher1(192.168.3.160)上执行命令,启动Rancher Server

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

二、在Rancher的Web界面中创建K8S环境、自动生成主机加入集群的命令

#使用谷歌浏览器,访问http://192.168.3.160:8080,登录到Rancher管理页面

#到页面的右下角,切换到简体中文界面

#点击“Default”->“环境管理”->“添加环境”

#添加环境的名称:K8S

#添加环境的描述:K8S测试环境

#环境模板:选择kubernetes

#点击创建,就创建好Kubernetes环境了。

#然后在菜单中切换到K8S环境,

#点击“基础架构”->“主机”->“添加主机”

#分别添加主机标签和3台主机节点的IP地址:

#比如:

#第3步标签:host=node1

#第4步填入node1的IP地址:192.168.3.161

#这样可以自动生成节点加入到K8S环境中的Docker命令,

#将命令复制到node1的SSH命令窗口中执行,

#即可完成将node1加入到K8S环境,

#需要等上几分钟时间,才能将K8S相关的容器下载、启动完成

三、把3台主机节点分别加入到K8S环境中

# 3.1在node1(192.168.3.161)上执行命令,加入到K8S集群中

sudo docker run -e CATTLE_AGENT_IP="192.168.3.161"  -e CATTLE_HOST_LABELS='host=node1'  --rm --privileged -v /var/run/docker.sock:/var/run/docker.sock -v /var/lib/rancher:/var/lib/rancher rancher/agent:v1.2.5 http://192.168.3.160:8080/v1/scripts/D9A8B18AE1FD1EC24161:1483142400000:TWXiElSPIHtPQ7BCrMzrSbMxsc

# 3.2在node2(192.168.3.162)上执行命令,加入到K8S集群中

sudo docker run -e CATTLE_AGENT_IP="192.168.3.162"  -e CATTLE_HOST_LABELS='host=node2'  --rm --privileged -v /var/run/docker.sock:/var/run/docker.sock -v /var/lib/rancher:/var/lib/rancher rancher/agent:v1.2.5 http://192.168.3.160:8080/v1/scripts/D9A8B18AE1FD1EC24161:1483142400000:TWXiElSPIHtPQ7BCrMzrSbMxsc

# 3.2在node3(192.168.3.163)上执行命令,加入到K8S集群中

sudo docker run -e CATTLE_AGENT_IP="192.168.3.163"  -e CATTLE_HOST_LABELS='host=node3'  --rm --privileged -v /var/run/docker.sock:/var/run/docker.sock -v /var/lib/rancher:/var/lib/rancher rancher/agent:v1.2.5 http://192.168.3.160:8080/v1/scripts/D9A8B18AE1FD1EC24161:1483142400000:TWXiElSPIHtPQ7BCrMzrSbMxsc

四、运行后的效果

  1. 图1在rancher1上执行的命令,然后就可以访问3.160的8080端口了

  2. 图2.0添加K8S环境

  3. 图2.1添加K8S环境

  4. 图2.2切换到K8S环境的按钮

  5. 图3.1自动生成加入到K8S环境的命令-node1

  6. 图3.1自动生成加入到K8S环境的命令-node2

  7. 图3.1自动生成加入到K8S环境的命令-node3

  8. 图3.2在node1上执行命令,将node1加入到K8S集群中

  9. 图3.2在node2上执行命令,将node2加入到K8S集群中

  10. 图3.2在node3上执行命令,将node3加入到K8S集群中

  11. 图4.1最终的3台主机状态

  12. 图4.2基础设施应用

版权声明:本文为博主原创文章,或转载自网络,欢迎转载分享,让这世界越来越好。

猜你喜欢

转载自blog.csdn.net/hanghangaidoudou/article/details/88857527