一种多集群多策略流量调度系统技术方案

技术编号:35209188 阅读:12 留言:0更新日期:2022-10-15 10:21
本发明专利技术属于多集群网络调度技术领域,一种多集群多策略流量调度系统,其特征在于,包括K8S集群、A集群及B集群,K8S集群内包括traefik指令,traefik指令的输出端分别于Nginx

【技术实现步骤摘要】
一种多集群多策略流量调度系统


[0001]本专利技术属于多集群网络调度
,具体涉及一种多集群多策略流量调度系统。

技术介绍

[0002]系统故障是指产品或产品的一部分不能或将不能完成预定功能的事件或状态称为故障,产品超80%的故障来自于系统变更以及新、老版本应用迭代,在出现故障时,很难快速恢复系统业务;
[0003]目前,现有的系统故障维护困难包括以下几点原因:一、系统内应用耦合太严重,系统回滚或发版应用耗时久,每次产品回滚需要对多个应用进行回滚,耗费几个小时甚至十几个小时;二、在特殊情况下,没有环境验证新发布需求,无法满足测试条件。为此我们设计出了一种多集群多策略流量调度系统来解决上述的问题。

技术实现思路

[0004]针对现有技术的不足,本专利技术的目的在于提供一种多集群多策略流量调度系统,它可以解决系统故障回滚耗时长,且没有环境验证新发布需求,无法满足测试条件问题,本专利技术采用如下的技术方案。
[0005]一种多集群多策略流量调度系统,其特征在于:包括K8S集群、A集群及B集群;
[0006]K8S集群内包括traefik指令,traefik指令的输出端分别于Nginx

001指令的输入端、Nginx

002指令的输入端信号连接;
[0007]K8S集群内设置有A集群和B集群,A集群、B集群内包括一个kong指令和四个pod指令,kong指令的输出端与pod指令的输入端信号连接;
[0008]K8S集群内设置有中间件模块,中间件模块内设置有Nacos、MQ及XXL指令;
[0009]A集群、B集群可数据存储访问各自集群内的中间件模块;
[0010]Nginx

001指令的输出端分别与K8S集群内的kong指令的输入端、A集群内的kong指令的输入端信号连接,Nginx

002指令的输出端分别与K8S集群内的kong指令的输入端、A集群内的kong指令的输入端信号连接。
[0011]优选地,K8S集群内设置有自研agent,自研agent的输入端与Matrix指令的输出端信号连接,自研agent的输出端与K8S集群内的Nacos指令的输入端信号连接,K8S集群内的Nacos指令的输出端与K8S集群内的Confd指令的输入端信号连接,K8S集群内的Confd指令的输出端与Nginx

001指令的输入端。
[0012]优选地,K8S集群内设置有数据存储模块,数据存储模块内设置有Mysql指令、Redis指令、ES指令及Minio指令;
[0013]A集群、B集群可数据存储访问数据存储模块。
[0014]优选地,各模块的流量路由通过nacos+confd+nginx实现动态配置,用户端的输出端与Nacos指令的输入端信号连接,Nacos指令的输出端与Confd指令的输入端信号连接,
Confd指令的输出端与Nginx指令的输入端信号连接;
[0015]nacos+confd+nginx具体实现步骤如下:
[0016]一、修改Nacos配置;
[0017]二、推送Confd配置;
[0018]三、推送Nginx配置;
[0019]四、更新nginx.conf;
[0020]五、reload使nginx配置生效。
[0021]优选地,nginx指令上存放着A

upstream,B

upstream两个配置,分别指向K8S集群和A集群的后端应用地址+端口。
[0022]优选地,院内端侧的输出端与K8S集群内的traefik指令的输入端信号连接。
[0023]与现有技术相比,本专利技术的有益效果是:
[0024]一、本专利技术多集群多策略流量调度系统,通过K8S集群、A集群及B集群的设计,可以通过nginx指令来分流切换A集群和B集群,A集群为最新版本集群,B集群为稳定版本集群,正常运行过程中与A集群版本差异时间不超过一周,若A集群发现应用出现故障,识别出由于发布引起,则将全流量切B集群快速恢复,技术团队仍能通过指定访问A集群定位分析问题并修复发布验证,实现故障的分钟级恢复。
[0025]二、本专利技术多集群多策略流量调度系统,通过K8S集群及自研agent的设计,各区域的流量路由通过nacos+confd+nginx实现动态配置,编写lua脚本动态读取配置,基于IP段、header头等多维度路由到不同后端web集群,可以在运行态y秒级规则切换,实现流量路由。
附图说明
[0026]图1为本专利技术的系统结构框图;
[0027]图2为本专利技术nacos+confd+nginx部分的结构框图;
[0028]图3为本专利技术nacos+confd+nginx部分的流程框图;
[0029]图中:1、K8S集群,2、A集群,3、B集群,4、数据存储模块,5、院内端侧,6、自研agent,7、用户端。
具体实施方式
[0030]请参阅图1

3所示的一种多集群多策略流量调度系统,它是拥有多集群和流量控制功能,且区域隔离部署、分批发布及精细化流量的一种多集群多策略流量调度系统。具体地,一种多集群多策略流量调度系统,包括K8S集群1、A集群2及B集群3。
[0031]K8S集群1内包括traefik指令,traefik指令的输出端分别于Nginx

001指令的输入端、Nginx

002指令的输入端信号连接,K8S集群1内设置有A集群2和B集群3,A集群2、B集群3内包括一个kong指令和四个pod指令,kong指令的输出端与pod指令的输入端信号连接,K8S集群1内设置有中间件模块,中间件模块内设置有Nacos、MQ及XXL指令,A集群2、B集群3可数据存储访问各自集群内的中间件模块,Nginx

001指令的输出端分别与K8S集群1内的kong指令的输入端、A集群2内的kong指令的输入端信号连接,Nginx

002指令的输出端分别与K8S集群1内的kong指令的输入端、A集群2内的kong指令的输入端信号连接,可以通过nginx指令来分流切换A集群2和B集群3,A集群2为最新版本集群,B集群3为稳定版本集群,
正常运行过程中与A集群2版本差异时间不超过一周,若A集群2发现应用出现故障,识别出由于发布引起,则将全流量切B集群3快速恢复,技术团队仍能通过指定访问A集群2定位分析问题并修复发布验证,实现故障的分钟级恢复。
[0032]K8S集群1内设置有自研agent6,自研agent6的输入端与Matrix指令的输出端信号连接,自研agent6的输出端与K8S集群1内的Nacos指令的输入端信号连接,K8S集群1内的Nacos指令的输出端与K8S集群1内的Confd指令的输入端信号连接,K8本文档来自技高网
...

【技术保护点】

【技术特征摘要】
1.一种多集群多策略流量调度系统,其特征在于:包括K8S集群(1)、A集群(2)及B集群(3);K8S集群(1)内包括traefik指令,traefik指令的输出端分别于Nginx

001指令的输入端、Nginx

002指令的输入端信号连接;K8S集群(1)内设置有A集群(2)和B集群(3),A集群(2)、B集群(3)内包括一个kong指令和四个pod指令,kong指令的输出端与pod指令的输入端信号连接;K8S集群(1)内设置有中间件模块,中间件模块内设置有Nacos、MQ及XXL指令;A集群(2)、B集群(3)可数据存储访问各自集群内的中间件模块;Nginx

001指令的输出端分别与K8S集群(1)内的kong指令的输入端、A集群(2)内的kong指令的输入端信号连接,Nginx

002指令的输出端分别与K8S集群(1)内的kong指令的输入端、A集群(2)内的kong指令的输入端信号连接。2.根据权利要求1所述的一种多集群多策略流量调度系统,其特征在于:K8S集群(1)内设置有自研agent(6),自研agent(6)的输入端与Matrix指令的输出端信号连接,自研agent(6)的输出端与K8S集群(1)内的Nacos指令的输入端信号连接,K8S集群(1)内的Nacos指令的输出端与K8S集群(1)内的Confd指令的输入端信号连...

【专利技术属性】
技术研发人员:李显杰徐训荣靳晓博
申请(专利权)人:来未来科技浙江有限公司
类型:发明
国别省市:

网友询问留言 已有0条评论
  • 还没有人留言评论。发表了对其他浏览者有用的留言会获得科技券。

1