基于云落地SLB+Tengine实现高可用集群负载均衡(下)

2018-06-28

本次分享基于618慕课网直播,更多精彩可以关注:

https://class.imooc.com/sale/javaarchitec


1
服务器配置

4台阿里云节点:
  • 2核2g * 1
  • 1核1g * 3
部署:
  • 2核2g:tomcat + tengine
  • 1核1g:tomcat

2
SLB负载均衡器介绍

官方详细介绍:
https://help.aliyun.com/document_detail/27539.html

本质上,使用任何一家云厂商的都可以,每家厂商的名字取名不同,腾讯叫做CLB,阿里叫做SLB。都是负载均衡器,购买的时候需要注意,不同类型的SLB所支持的并发也不同。

可以参考如下图:
https://help.aliyun.com/document_detail/85931.html


务必注意:SLB所在地域需要和ECS所在地域相同,ECS所在地域不仅要相同,而且所在区也需要相同,比如如下,所有的ECS都所处上海,并且在华东2 可用区E,这样才能让所有服务器节点在一个私有网络,也就是内网,内网的话带宽才会打,吞吐量才会高,性能才会更好。


如果多个服务器节点在不同的可用区,那么他们走公网,带宽小了并发就上不去了,这一点需要注意。


对了啊,这个SLB是可以购买多个的,比如异地多活,同城双活,多区高可用都能实现,阿里云或者腾讯云这样的厂商也都提供相应的解决方案。直接使用云产品会大大降低成本,以及风险。(风险是任何项目管理中必须考虑的因素,项目越大,风险越大)


3
部署架构图

nginx/tengine 虽然写着主备,但是真正使用起来他们是同时运行的,下游还有SLB转发给他们请求。
  • 图中两台甚至多台Nginx可以构成集群,单个宕机那么其他的还能继续服务,SLB检测到后会自动剔除,待恢复后会自动加入。
  • tomcat也为后端构成了高可用集群,并且分摊流量。
  • 那么这种方式的话在我们架构师群里有几个同学的公司也是采用的这种方式进行的部署,tomcat部分可以用docker去部署微服务,原理本质都差不多。
  • 需要注意,如果nginx不需要处理请求,也不需要处理header等信息,仅仅只是用作转发代理的话,那么直接使用SLB也可以,架构图可以参考如下:

4
构建SLB高可用集群负载均衡

1、多区高可用,按照上海、北京、深圳等地域进行部署,流量通过dns分发到不同的地区,这也是按照地域的负载均衡,同时在某个地区全部宕机或者发生不可预料的自然灾害的时候,可以把流量分发给就近的地域服务器实例,从而保证多区高可用。

2、slb架构分为两种,如下:


3、SLB本质原理就是通过网卡进行IP漂移,产生虚拟ip,也就是vip,我们在架构师课程中手把手的带着大家搭建了基于keepalived的双主热备和双机主备,以及LVS+Keepalived+nginx的高可用集群对吧。

这个其实就是云负载均衡器的原理。如果在云服务器中,直接使用SLB即可,没有必要再去搭建,除非自己自建机房。

那么这块内容也不难,跟着老师的步骤去实操一遍心里有个底就行。毕竟不是运维。


扩展加餐:弹性伸缩


5
创建负载均衡

首先需要购买,这里已经需要买好了,和所有的服务器节点同处于一个地区,都是在上海E区,购买好以后就能配置SLB实例了。


1、在实例管理中可以看到如下图红框,这个就是SLB的ip,也就是LVS的虚拟ip


2、添加上游服务器


3、选择两条七层代理服务器


4、点击下一步,随后配置权重,这里随意,这里的权重比例可以为1:2,或者1:1,根据自己的实际情况


5、确定以后,在服务器组中就有了两条上游服务器:


6、接下来需要配置监听


7、需要注意,我们这里是配置4层转发,那么选择TCP即可,如果你没有nginx的业务需求的话,直接使用http作为7层转发即可,不过7层转发需要有域名备案,这个要注意。


8、在这里可以配置选择会话保持,一定时间内的固定ip请求都会转发到特定的一台节点,保证吞吐量,不需要每次都重新建立连接。


9、选择上游服务器组


10、再下一步


11、最后提交


12、如此一来4层负载均衡就配置成功了


13、那么接下来只需要结合自身业务,通过slb的虚拟ip来进行访问即可


也可以通过命令行CURL来进行测试:


需要注意,在咱们课程中,lvs+keepalived下,我们发起访问之后,那么会得到指定的一个内部ip地址和它通信,后面我们再次发起请求,就会和这个内部地址直接交互,因此浏览器只会显示只轮询了一个RS真实地址。如果换一个客户端发请求,返回的应该就会是另一个地址了。这也就是持久连接的出现情况。


参考文献:

https://help.aliyun.com/document_detail/27656.html


一条tcp的连接经过lvs后,lvs会把这台记录保存15分钟,就是因为这个时间过长,所以大部分人都会发现做好LVS DR之后轮询现象并没有发生


可以通过关闭浏览器进程,等待几秒后,再重新打开后刷新,可以看到请求变化了



完结


简单小节一下,我们之前在架构师课程中所操练的其实就是偏底层的配置,而云服务器里我们是不需要这么做的,我们只需要在云供应商的应用层之上去建立相关的资源配置即可。所以原理以及实操都在架构师体系课程中,有兴趣的同学可跟琳琳关注一波。

相关文章

基于Tengine实现yolov4的cpu推理

2018-09-26
Tengine 实现 yolov4的 cpu推理.目前x86已经实现,arm也已经提交PR,待最终合入~以下为大佬自述:完成动机:主要是为了熟悉...

QPS 相比 Nginx 提升60%,阿里 Tengine 负载均衡算法揭秘

2018-09-24
阿里巴巴采用Tengine实现整个集团的统一接入层.Tengine最初使用Nginx官方的SWRR(Smooth Weighted Round-Robin)负载均衡算...

嵌入式AI一定要看丨 Tengine-Lite在M核上的应用实战直播

2018-09-21
OPEN AI LAB(开放智能)于7月6日正式开源拥有自主知识产权的全新下一代AI端侧推理框架Tengine-Lite.作为Tengine整体软件架...

重磅发布:TEngine发布对Linaro 96Boards的支持

2018-09-20
Tengine 0.5 Support for 96BoardsOPEN AI LAB 由Arm发起,核心团队来自Arm, Broadcom, Intel等公司.旨在推动Arm嵌入式智能机器...

基于云落地SLB+Tengine实现高可用集群负载均衡(中)

2018-09-20
阿里云的tengine-master配置:upstream www.abc.com { server 172.19.36.76:8099 weight=1; server 172.19.36.77:8099 weight=1; ...

Tengine开源项目首期悬赏任务火热进行中,快来挑战吧!

2018-09-19
上周五,Tengine开源贡献者计划&首期悬赏任务刚推出,就有很多小伙伴加入开源贡献者计划活动中,目前已经有开发者小伙伴率先...

Tengine重要功能更新,支持CPU/GPU异构计算

2018-09-14
现在利用tengine的异构计算功能,用GPU计算Convolution等重量级算子,CPU计算Permute 等ACL GPU不支持的算子,实现利用...

开源软硬件强强联合,Tengine+96 boards开启AI生态新篇章

2018-09-14
强强联合,重磅发布近日,OPEN AI LAB 边缘AI推理框架Tengine新增发布对多款主流96Boards.ai平台的支持,包括Rock960(RK3399...

Nginx/Tengine 云锁自编译方案

2018-09-10
tengine.taobao.org/download/tengine-2.3.0.tar.gz,下一行和第12行替换为tengine-2.3.0.tar.gztar zxvf nginx-1.15.10.tar.gzcd /rootwget ...

芯来科技携手Tengine扩大RISC-V软件生态

2018-09-10
Tengine的里程碑意义2020年10月,OPEN AI LAB——专注AI边缘智能计算及应用的公司,携手芯来科技——中国大陆首家专业RISC-...

随机推荐

程序员相亲图鉴

2017-12-03
李二狗程序员专栏 扫码关注填加客服 长按识别下方二维码进群近期精彩内容推荐: 再见,戴威!再见,小黄车! 别瞎学了,这几门语...

构造函数

2017-06-01
高考数学知识要点精华版圆锥曲线解答题精选百题函数对称性周期性结论大全你们的数学老师怎么念这个符号?重磅分享:88个QQ群...

被 Oracle 玩弄于股掌,Java 会因此被 Kotlin 取代吗?

2017-05-19
今年以来,不断有 Oracle 和 Java 的新闻爆出.先是 Oracle 以 Java 侵权案从 Google 处获取高达 88 亿美元的赔偿款,虽然维权属于正...

天津中德应用技术大学 自动化(工业机器人方向、计算机控制技术方向专业)2021年专业基础考试大纲

2016-06-25
一、试卷类型(仅供参考)试卷卷面成绩共200分,考试时间为2小时.内容包含电工电子60%(其中电工30%,电子30%)、电机原理...

【聚焦】山东“冒出”一彩印包装园,还没建成就有多个包装厂砸钱“订座”

2016-06-12
目前已有不少彩印包装项目进驻园内,园区建成后将实现产值10亿元.建个产业园本不是什么稀奇事,但神奇的是,大家都很看好这个...

最优二叉树(哈夫曼树)

2016-06-01
1.哈夫曼树的基本概念最优二叉树,也称哈夫曼(Haffman)树,是指对于一组带有确定权值的叶结点,构造的具有最小带权路径长度...

吴大正《信号与线性系统分析》(第4版)错误更正

2016-05-09
吴大正主编《信号与线性系统分析》 《信号与线性系统分析(第4版)》是在1998年高等教育出版社出版的《信号与线性系统分析...

2020《网络传播概论》课程总结:佳文篇篇,收获满满!

2015-06-17
2020年马上就要结束了,本学期的《网络传播概论》课程也圆满结束,同时狐说运营工作也即将到达尾声.这学期的《网络传播概论》...

细心才能发现的一个XSS漏洞

2015-01-03
在一次渗透测试过程中,发现一个细节反射XSS漏洞,差一点就没发现 分析访问该站点,常规测试结束之后在猜测路径的时候报错,...

言 情 |【12.25】圣诞快乐!!!

2015-01-02
十天半月也褪不下去.苏绒小心翼翼的保护了自己十几年,却在碰... http://www.jjwxc.net/onebook.php?novelid=428236407今天男友做...