一、环境准备

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

3.访问rancher

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

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

三、新建集群

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

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

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

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

四、部署Nginx

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

2.部署Nginx工作负载

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

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

五、部署私有库镜像

1.配置镜像库凭证

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

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

六、说在后头

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

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

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

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

参考链接:

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

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

Rancher2.0构建kubernetes(K8S)集群的更多相关文章

  1. Centos7 安装部署Kubernetes(k8s)集群

    目录 一.系统环境 二.前言 三.Kubernetes 3.1 概述 3.2 Kubernetes 组件 3.2.1 控制平面组件 3.2.2 Node组件 四.安装部署Kubernetes集群 4. ...

  2. Kubernetes(k8s)集群部署(k8s企业级Docker容器集群管理)系列目录

    0.目录 整体架构目录:ASP.NET Core分布式项目实战-目录 k8s架构目录:Kubernetes(k8s)集群部署(k8s企业级Docker容器集群管理)系列目录 一.感谢 在此感谢.net ...

  3. Kubernetes(k8s)集群部署(k8s企业级Docker容器集群管理)系列之集群部署环境规划(一)

    0.前言 整体架构目录:ASP.NET Core分布式项目实战-目录 k8s架构目录:Kubernetes(k8s)集群部署(k8s企业级Docker容器集群管理)系列目录 一.环境规划 软件 版本 ...

  4. Kubernetes(k8s)集群部署(k8s企业级Docker容器集群管理)系列之自签TLS证书及Etcd集群部署(二)

    0.前言 整体架构目录:ASP.NET Core分布式项目实战-目录 k8s架构目录:Kubernetes(k8s)集群部署(k8s企业级Docker容器集群管理)系列目录 一.服务器设置 1.把每一 ...

  5. Kubernetes(k8s)集群部署(k8s企业级Docker容器集群管理)系列之flanneld网络介绍及部署(三)

    0.前言 整体架构目录:ASP.NET Core分布式项目实战-目录 k8s架构目录:Kubernetes(k8s)集群部署(k8s企业级Docker容器集群管理)系列目录 一.flanneld介绍 ...

  6. Kubernetes(k8s)集群部署(k8s企业级Docker容器集群管理)系列之部署master/node节点组件(四)

    0.前言 整体架构目录:ASP.NET Core分布式项目实战-目录 k8s架构目录:Kubernetes(k8s)集群部署(k8s企业级Docker容器集群管理)系列目录 1.部署master组件 ...

  7. 使用kubectl管理Kubernetes(k8s)集群:常用命令,查看负载,命名空间namespace管理

    目录 一.系统环境 二.前言 三.kubectl 3.1 kubectl语法 3.2 kubectl格式化输出 四.kubectl常用命令 五.查看kubernetes集群node节点和pod负载 5 ...

  8. Istio(二):在Kubernetes(k8s)集群上安装部署istio1.14

    目录 一.模块概览 二.系统环境 三.安装istio 3.1 使用 Istioctl 安装 3.2 使用 Istio Operator 安装 3.3 生产部署情况如何? 3.4 平台安装指南 四.Ge ...

  9. K8S 使用Kubeadm搭建高可用Kubernetes(K8S)集群 - 证书有效期100年

    1.概述 Kubenetes集群的控制平面节点(即Master节点)由数据库服务(Etcd)+其他组件服务(Apiserver.Controller-manager.Scheduler...)组成. ...

随机推荐

  1. Spring-Cloud之Eureka排坑之旅

    1 快速demo 1.0 环境说明   Intelli IDEA+Spring Boot 1.1 新建工程chap52(通过New Project->Spring Initializer-> ...

  2. [UWP] 用 AudioGraph 来增强 UWP 的音频处理能力——AudioFrameInputNode

    上一篇心得记录中提到了 AudioGraph, 描述了一下 什么是 AudioGraph 以及其中涉及到的各种类型的 节点(Node). 这一篇就其中比较有意思的 AudioFrameInputNod ...

  3. Java 虚拟机的内存结构

    Java虚拟机运行时数据区 整个程序执行过程中,JVM会用一段空间来存储程序执行期间需要用到的数据和相关信息,这段空间一般被称作为Runtime Data Area(运行时数据区),也就是我们常说的J ...

  4. Java中List, Integer[], int[]的相互转换

    import java.util.Arrays; import java.util.List; import java.util.stream.Collectors; public class Mai ...

  5. Spring MVC 后端获取前端提交的json格式字符串并直接转换成control方法对应的参数对象

    场景: 在web应用开发中,spring mvc凭借出现的性能和良好的可扩展性,导致使用日渐增多,成为事实标准,在日常的开发过程中,有一个很常见的场景:即前端通过ajax提交方式,提交参数为一个jso ...

  6. thinkpad的E480安装ubuntu后wifi无法使用问题解决

    买了新电脑,安装ubuntu新系统之后,遇到了一个比较麻烦的问题,在ubuntu中,无法使用wifi. 用新产品就是要当小白鼠啊,查了一下资料,发现这个使用的rtl8821ce的wifi芯片,该wif ...

  7. Linux - 变量的查看与设置

    printenv - print all or part of environment 显示所有变量:print 显示某个变量:print <variable name> 或者 echo ...

  8. 串口USB单一映射及重命名

    本文针对在开发过程中有时会出现用到多个串口设备,usb端口号会发生变化,如设备的灯指示信号和其他控制器都是ttyUSB* .其序号与控制接入的顺序有关,对于写好的launch每次修改串口连接名很麻烦. ...

  9. 堆排序——HeapSort

    基本思想:   图示: (88,85,83,73,72,60,57,48,42,6)   平均时间复杂度: O(NlogN)由于每次重新恢复堆的时间复杂度为O(logN),共N - 1次重新恢复堆操作 ...

  10. Netty心跳机制

    一.概念介绍网络中的接收和发送数据都是使用操作系统中的SOCKET进行实现.但是如果此套接字已经断开,那发送数据和接收数据的时候就一定会有问题.可是如何判断这个套接字是否还可以使用呢?这个就需要在系统 ...