一种残膜回收机防缠绕挑膜装置的制 一种秧草收获机用电力驱动行走机构

一种流量的自动容灾和调度的方法、系统、介质和设备与流程

2021-11-17 23:48:00 来源:中国专利 TAG:


1.本技术涉及计算机技术领域,尤其涉及一种流量的自动容灾和调度的方法、系统、介质和设备。


背景技术:

2.目前互联网应用中需要使用网络负载均衡来实现应对大规模的流量接入功能,普通的负载均衡系统并不能实现多个机房的自动流量调度,切换,不能够接入容器流量调度等,或者仅能实现上述部分功能。
3.发明人在实现本发明的过程中发现:
4.现有技术中,kubernetes系统提供的cloudprovider接口实现了接入容器到网络负载均衡的功能,但是仅仅提供了接口,并没有实现相关的与负载均衡系统的对接。
5.另外,开源的负载均衡系统比如lvs/nginx代理/haproxy等负载均衡软件可以根据服务器的状态实现流量的负载均衡,但是不能进行多集群的流量自动调度和多维度的可用性判断。


技术实现要素:

6.有鉴于此,本技术实施例的目的在于提供一种流量的自动容灾和调度的方法、系统、介质和电子设备,以便能够自动获取多个监控系统的监控数据调度负载均衡流量,自动执行流量的容灾和调度。
7.为达到上述目的,第一方面,本技术实施例提供一种流量的自动容灾和调度的方法,包括:
8.获取用户任务配置描述信息;
9.从所述用户任务配置描述信息中获取监控系统地址,根据所述监控系统地址从监控系统中获取监控数据;
10.根据所述监控数据调度kubernetes集群的工作状态,和/或根据所述监控数据调度多个服务集群的工作状态;
11.根据所述kubernetes集群的工作状态,触发负载均衡系统更新所述负载均衡系统中的虚拟ip地址对应的所述kubernetes集群的ip地址,和/或根据所述多个服务集群的工作状态,触发负载均衡系统更新所述负载均衡系统中的虚拟ip地址对应的所述多个服务集群的ip地址,完成流量的自动容灾和调度。
12.在一些可能的实施方式中,所述的根据所述监控数据调度kubernetes集群的工作状态,具体可以包括:
13.将所述监控数据与所述kubernetes集群对应的第一预设数据阈值进行比较,
14.当所述监控数据大于所述kubernetes集群对应的第一预设数据阈值时,减少所述kubernetes集群中的pod的数量;
15.当所述监控数据小于所述kubernetes集群对应的第一预设数据阈值时,增加所述
kubernetes集群中的pod的数量。
16.在一些可能的实施方式中,所述的根据所述监控数据调度多个服务集群的工作状态,具体可以包括:
17.将所述监控数据与多个服务集群对应的第二预设数据阈值比较,
18.当所述监控数据大于所述多个服务集群对应的第二预设数据阈值时,减少所述服务集群的数量;
19.当所述监控数据小于所述多个服务集群对应的第二预设数据阈值时,增加所述服务集群的数量。
20.在一些可能的实施方式中,所述的触发负载均衡系统更新所述负载均衡系统中的虚拟ip地址对应的所述kubernetes集群的ip地址,具体可以包括:
21.当kubernetes集群中的pod的数量减少时,触发所述负载均衡系统删除所述负载均衡系统中的虚拟ip地址对应的pod的ip地址;
22.当kubernetes集群中的pod的数量增加时,触发所述负载均衡系统增加所述负载均衡系统中的虚拟ip地址对应的pod的ip地址。
23.在一些可能的实施方式中,所述的触发负载均衡系统更新所述负载均衡系统中的虚拟ip地址对应的所述多个服务集群的ip地址,具体可以包括:
24.当所述服务群集的数量减少时,触发所述负载均衡系统删除所述负载均衡系统中的虚拟ip地址对应的服务群集的ip地址;
25.当所述服务群集的数量增加时,触发所述负载均衡系统增加所述负载均衡系统中的虚拟ip地址对应的服务群集的ip地址。
26.在一些可能的实施方式中,所述的监控数据可以包括:每秒查询率qps的响应时间、中央处理器cpu的使用率和内存的使用率中的任意一种或多种。
27.在一些可能的实施方式中,在所述的获取用户任务配置描述信息之后,还可以包括:
28.对所述用户任务配置描述信息进行存储、解析和版本标记,以便于对所述用户任务配置描述信息进行版本管理或进行回滚操作。
29.第二方面,本发明提供了一种流量的自动容灾和调度的系统,包括:
30.获取单元,用于获取用户任务配置描述信息;
31.监控单元,用于从所述用户任务配置描述信息中获取监控系统地址,根据所述监控系统地址从监控系统中获取监控数据;
32.控制单元,用于根据所述监控数据调度kubernetes集群的工作状态,和/或根据所述监控数据调度多个服务集群的工作状态;
33.调度单元,用于根据所述kubernetes集群的工作状态,触发负载均衡系统更新所述负载均衡系统的中虚拟ip地址对应的所述kubernetes集群的ip地址;和/或,用于根据所述多个服务集群的工作状态,触发负载均衡系统更新所述负载均衡系统中的虚拟ip地址对应的所述多个服务集群的ip地址,完成流量的容灾和调度。
34.第三方面,本技术提供了一种计算机可读存储介质,其上存储有计算机程序,该程序被处理器执行时实现如上述任意一种流量的自动容灾和调度的方法。
35.第四方面,本技术提供了一种电子设备,其包括:
36.处理器;
37.用于存储所述处理器可执行指令的存储器;
38.其中,所述处理器被配置为执行所述指令,以实现如上所述的任意一种流量的自动容灾和调度的方法。
39.上述技术方案具有如下有益效果:
40.本技术实施例提供的一种流量的自动容灾和调度的方法、系统、介质及电子设备,获取用户任务配置描述信息;从用户任务配置描述信息中获取监控系统地址,根据监控系统地址从监控系统中获取监控数据;根据监控数据调度kubernetes集群的工作状态,和/或根据监控数据调度多个服务集群的工作状态;根据kubernetes集群的工作状态,触发负载均衡系统更新所述负载均衡系统的中虚拟ip地址对应的kubernetes集群的ip地址,和/或根据多个服务集群的工作状态更新负载均衡系统中的虚拟ip地址对应的多个服务集群的ip地址,完成流量的容灾和调度。本发明实施例仅通过一个控制器,自动获取多个监控系统的监控数据,根据监控数据自动调度kubernetes集群和多个服务集群的工作状态,通过kubernetes集群和多个服务集群的工作状态触发调度负载均衡系统的流量。
附图说明
41.为了更清楚地说明本技术实施例或现有技术中的技术方案,下面将对实施例或现有技术描述中所需要使用的附图作简单地介绍,显而易见地,下面描述中的附图仅仅是本技术的一些实施例,对于本领域普通技术人员来讲,在不付出创造性劳动的前提下,还可以根据这些附图获得其他的附图。
42.图1是本技术实施例的一种流量的自动容灾和调度的方法的流程图;
43.图2是本技术实施例的一种流量的自动容灾和调度的方法的整体流程部署图;
44.图3是本技术实施例的一种流量的自动容灾和调度的系统的结构图;
45.图4是本技术实施例的一种计算机可读存储介质的功能框图;
46.图5是本技术实施例的一种电子设备的功能框图。
具体实施方式
47.下面将结合本技术实施例中的附图,对本技术实施例中的技术方案进行清楚、完整地描述,显然,所描述的实施例仅仅是本技术一部分实施例,而不是全部的实施例。基于本技术中的实施例,本领域普通技术人员在没有做出创造性劳动前提下所获得的所有其他实施例,都属于本技术保护的范围。
48.实施例一
49.图1是本技术实施例的一种流量的自动容灾和调度的方法的流程图。如图1所示,该方法通过一个控制器,能够自动发现并获取监控数据,根据监控数据与预设的阈值进行比较,根据比较结果触发负载均衡系统,自动调度负载均衡系统的流量。具体包括如下步骤:
50.s110,获取用户任务配置描述信息。
51.具体的,用户通过用户界面向控制器提交用户任务配置描述信息,同时可以增加、删除、查询和修改任务以及任务配置描述信息,使任务可以集中的管理,用户界面是用户进
行操作任务的唯一入口。
52.用户任务配置描述信息是用户与整个系统沟通的基础,用户任务配置描述信息表明了调度的策略是什么执行过程,容灾规则是什么执行过程,监控地址是什么地址,用于比较阈值与当前数据的监控指标等信息。
53.作为一个举例说明,一个完整的用户任务配置描述包括如下部分:
54.容灾规则名称,本系统会提供多种容灾规则,用户选取一种即可;
55.调度规则名称,本系统会提供多种调度规则,用户选取一种即可;
56.监控器类型,例如zabbix系统,prometheus系统;
57.监控器地址,例如http://127.0.0.1:9090;
58.需要监控器监控的指标,例如avgtime平均响应时间httpcode状态码等;
59.触发调度规则的数值,例如100ms、200ms等;
60.负载均衡id,负载均衡系统的资源ip、如slb12345xxxxx;
61.密钥,用于负载均衡系统的验证,如tokenxxxxxx;
62.产品线名称,例如测试产品线;
63.负载均衡协议和端口,例如协议是http:端口是80;
64.负载均衡区域id,例如:bj、北京;
65.负载均衡类型(内网或外网),例如internet表示外网;
66.负载均衡ip协议版本(v4或v6),例如v4表示ipv4。
67.在一些实施例中,还可以通过控制器存储用户任务配置描述在存储中,并对任务配置描述进行解析、增加版本,以便对用户任务配置描述信息的版本管理,进行回滚操作等。通过对用户任务配置描述信息集中管理并将任务统一存储,同时增加任务多维度的描述,提升了任务的管理效率。
68.s120,从用户任务配置描述信息中获取监控系统地址,根据监控系统地址从监控系统中获取监控数据。
69.在本实施例中,控制器可以从用户任务配置描述信息中获取监控系统地址,监控器的类型,容灾规则、调度规则、需要监控器监控的指标以及指标对应数据、负载均衡类型及协议版本等,控制器同时可以接受用户提供多个不同类型对监控系统,综合多个监控系统来进行用户任务配置描述的执行,并且可以解析多个监控指标,本系统仅通过一个控制器,能够自动发现并获取监控数据,根据监控数据根据监控数据触发调度kubernetes集群中的pod和服务集群的工作状态,同时与负载均衡系统交互,自动调度负载均衡系统的流量。
70.s130,根据监控数据调度kubernetes集群的工作状态,和/或根据监控数据调度多个服务集群的工作状态。
71.在本实施例中,根据从监控系统中获取的监控数据调度kubernetes集群的工作状态,和/或根据监控数据调度多个服务集群的工作状态。其中,kubernetes一个用于容器集群的自动化部署、扩容以及运维的开源平台,通过kubernetes集群,你可以快速有效地响应用户需求,快速而有预期地部署你的应用,极速地扩展你的应用,无缝对接新应用功能,节省资源且优化硬件资源的使用,为容器编排管理提供了完整的开源方案。服务集群指的是多组提供同样服务的服务器集群,比如提供www.example.com访问服务的服务器组。
72.在一些实施例中,可以获取指定监控系统的监控数据,根据获取监控数据和用户任务配置描述的信息,进行多维度计算,例如,每秒查询率qps的响应时间、中央处理器cpu的使用率和内存的使用率等,当监控到服务质量异常或者流量增长到当前值的两倍以上时,则判断为业务故障,自动调度kubernetes集群或者多个服务集群的工作状态。具体的,当判断为业务质量异常,比如响应时间过长、发生错误的状态码等,或者流量迅猛增长,比如流量增长到当前值的两倍以上等,根据多维度的计算结果,自动调度kubernetes集群或者多个服务集群的工作状态。
73.在一些实施例中,控制器将监控系统获取的监控数据与用户任务配置描述信息中的kubernetes集群对应的第一预设数据阈值进行比较,当监控数据大于kubernetes集群对应的第一预设数据阈值时,减少kubernetes集群中的pod的数量;当监控数据小于kubernetes集群对应的第一预设数据阈值时,增加kubernetes集群中的pod的数量。其中,在kubernetes集群中,pod是所有业务类型的基础,也是k8s管理的最小单位级,它是一个或多个容器的组合。这些容器共享存储、网络和命名空间,以及如何运行的规范。在pod中,所有容器都被统一安排和调度,并运行在共享的上下文中。对于具体应用而言,pod是它们的逻辑主机,pod包含业务相关的多个应用容器。
74.在一些实施例中,当监控到kubernetes集群中对应的pod数量减少、或者pod不是正常的running状态、或者pod的健康检查有不通过事件的发生,即只要有其中一种情况发生,则判断为业务故障,自动调度kubernetes集群的工作状态。具体的,当监控到kubernetes集群中对应的业务的pod数量减少,或者pod不是正常的运行状态(运行状态是kubernetes集群中的pod正常的标记),或者有pod的健康检查不通过事件的发生,即只要有其中一种情况发生,则调度kubernetes集群增加pod或者更换pod。
75.在一些实施例中,根据监控数据调度多个服务集群的工作状态,将监控数据与多个服务集群对应的第二预设数据阈值比较,当监控数据大于多个服务集群对应的第二预设数据阈值时,减少服务集群的数量;当监控数据小于服务集群对应的第二预设数据阈值时,增加服务集群的数量。
76.需要说明的是,本技术可以单独对kubernetes集群进行控制,也可以单独对多个服务集群进行控制,还可以同时对kubernetes集群和多个服务集群进行控制。
77.s140,根据kubernetes集群的工作状态,触发负载均衡系统更新负载均衡系统的中虚拟ip地址对应的kubernetes集群的ip地址,和/或根据多个服务集群的工作状态,触发负载均衡系统更新负载均衡系统中的虚拟ip地址对应的多个服务集群的ip地址,完成流量的自动容灾和调度。
78.用户任务配置描述信息中定义了给控制器用来判断的条件和执行的规则,控制器从用户指定的监控系统中获取数据,与用户定义的阈值比较,如果发现超出阈值,即时与负载均衡系统的交互,根据负载均衡系统的接口提供的虚拟ip列表,选取一个可用的虚拟ip,把域名解析对应的虚拟ip地址替换。
79.作为一个举例说明,当监测到kubernetes群集中的pod发生变化,比如用户上线了新版本的程序,则pod会发生轮滚更新,轮滚更新会停止原来的pod,然后启动一个新版本的pod代替,这个过程中,pod的ip地址发生了变化,必须需要触发操作负载均衡系统,实时更新负载均衡系统的虚拟ip对应的后端服务,即pod的ip地址的即时更新,自动执行流量的容
灾规则和调度规则,完成流量的容灾和调度。
80.在一些可能的实施方式中,当多个服务集群中的某个群集的ip地址发生变化,触发负载均衡系统,即时更新负载均衡系统虚拟ip地址对应的变化的服务集群的ip地址。作为一个举例说明,当多个服务集群中的一个或多个服务集群的ip地址发生变化时,必须需要触发操作负载均衡系统,实施更新负载均衡系统的虚拟ip对应的发生变化的服务集群的ip地址,自动执行流量的容灾规则和调度规则,完成流量的容灾和调度。
81.作为一个举例说明,调度规则可以包括下面一种或任意多种的组合,也可以是用户自定义的规则:
82.1)重启pod;
83.2)增加pod数量;
84.3)回滚pod的版本到上一个版本;
85.4)pod返回默认数据;
86.5)pod返回提示错误发生的原因;
87.6)执行用户定义的脚本程序等等。
88.作为一个举例说明,容灾规则可以包括下面一种或任意多种的组合:
89.1)切换业务的其中一个虚拟ip的流量到其他的虚拟ip;
90.2)将一个kubernetes集群的ip地址到另一个kubernetes集群的ip地址;
91.3)用户自己定义的调度规则脚本程序。
92.为了使本领域技术人员更加理解本技术实施例提供的技术方案,下面对本发明实施例提供的流量的自动容灾和调度方法进行详细说明。附图2为本发明实施例提供的一种流量的自动容灾和调度方法的整体流程部署图。
93.如图2所示,用户通过用户界面向控制器提交用户任务配置描述,同时可以增加、删除、查询和修改任务以及任务配置描述,用户界面是用户进行操作任务的唯一入口,使任务可以集中的管理。
94.控制器存储用户任务配置描述信息在存储中,并对任务配置描述信息进行解析、增加版本,以便对用户任务配置描述信息的版本管理,进行回滚操作等,通过对用户任务配置描述信息集中管理并将任务统一存储,同时增加任务多维度的描述,提升了任务的管理效率。
95.控制器可以从用户任务配置描述中获取监控系统地址,监控器的类型,容灾规则、调度规则、需要监控器监控的指标以及指标对应数据的阈值、负载均衡类型及协议版本等,控制器同时可以接受用户提供多个不同类型对监控系统,综合多个监控系统来进行用户任务配置描述的执行,并且可以解析多个监控指标,本系统仅通过一个控制器,能够自动发现并获取监控数据,根据监控数据触发负载均衡系统,自动调度负载均衡流量。
96.控制器运行在kuberenets集群和多个服务集群中,可以随时观察kubernetes集群中pod的变换情况和多个服务集群的变化情况,根据用户任务配置描述使kubernetes集群和多个服务集群分别与负载均衡系统配合。当kubernetes集群中的pod发生变化,触发负载均衡系统的接口,即时更新负载均衡系统的虚拟ip对应的pod的ip地址,当某个服务集群的ip地址发生变化,触发负载均衡系统的接口,即时更新负载均衡系统的虚拟ip地址对应的服务集群的ip地址。
97.本技术中,仅通过一个控制器可以获取多种类型对监控系统对数据,统一存储用户任务配置描述信息,并且可以解析多个监控指标,同时可以接受用户提供多个不同类型对监控系统,根据多种监控系统的数据,将流量在多个kubernetes集群间或者多个服务集群间调度,综合多个监控系统来进行用户任务配置描述的执行,根据用户描述,自动创建、删除或更新网络负载均衡系统的虚拟ip地址对应的pod的ip地址或多个服务集群对应的ip地址,仅仅通过一个控制器,根据监控数据调度负载均衡系统的流量,自动执行流量的容灾和调度。
98.实施例二
99.如图3所示,本技术实施例提供了一种流量的自动容灾和调度的系统300,包括:
100.获取单元310,用于获取用户任务配置描述信息。
101.具体的,用户通过用户界面向控制器中的获取单元310提交用户任务配置描述信息,同时可以增加、删除、查询和修改任务以及任务配置描述,使任务可以集中的管理,用户界面是用户进行操作任务的唯一入口。
102.用户任务配置描述信息是用户与整个系统沟通的基础,用户任务配置描述信息表明了调度的规则是什么执行过程,容灾规则是什么执行过程,监控地址是什么地址,用于比较阈值与当前数据的监控指标等信息。
103.在一些实施例中,还可以通过控制器存储用户任务配置描述信息在存储中,并对任务配置描述信息进行解析、增加版本,以便对用户任务配置描述信息的版本管理,进行回滚操作等。通过对用户任务配置描述信息集中管理并将任务统一存储,同时增加任务多维度的描述,提升了任务的管理效率。
104.监控单元320,用于从用户任务配置描述信息中获取监控系统地址,根据监控系统地址从监控系统中获取监控数据。
105.在本实施例中,控制器可以从用户任务配置描述信息中获取监控系统地址,监控器的类型、容灾规则、调度规则、需要监控器监控的指标以及指标对应数据、负载均衡类型及协议版本等,控制器同时可以接受用户提供多个不同类型对监控系统,综合多个监控系统来进行用户任务配置描述的执行,并且可以解析多个监控指标,本系统仅通过一个控制器,能够自动发现并获取监控数据,根据监控数据根据监控数据触发调度kubernetes集群中的pod和多个服务集群的工作状态,触发负载均衡系统,自动调度负载均衡系统的流量。
106.控制单元330,用于根据监控数据调度kubernetes集群的工作状态,和/或根据监控数据调度多个服务集群的工作状态。
107.在本实施例中,控制器据从监控系统中获取的监控数据调度kubernetes集群的工作状态,和/或根据监控数据调度多个服务集群的工作状态。其中,kubernetes一个用于容器集群的自动化部署、扩容以及运维的开源平台,通过kubernetes,你可以快速有效地响应用户需求,快速而有预期地部署你的应用,极速地扩展你的应用,无缝对接新应用功能,节省资源且优化硬件资源的使用,为容器编排管理提供了完整的开源方案。服务集群指的是多组提供同样服务的服务器集群,比如提供www.example.com访问服务的服务器组。
108.在一些实施例中,控制器可以获取指定监控系统的监控数据,根据获取监控数据和用户任务配置描述的信息,进行多维度计算实,例如,计算每秒查询率qps的响应时间、中央处理器cpu的使用率和内存的使用率等,当监控到服务质量异常或者流量增长到当前值
的两倍以上时,则判断为业务故障,自动调度kubernetes集群或者多个服务集群的工作状态。具体的,当判断为业务质量异常,比如响应时间过长、发生错误的状态码等,或者流量迅猛增长,比如流量增长到当前值的两倍以上等,根据多维度的计算结果,自动调度kubernetes集群或者服务集群的工作状态。
109.在一些实施例中,控制器将监控系统获取的监控数据与用户任务配置描述信息中的kubernetes集群对应的第一预设数据阈值进行比较,当监控数据大于kubernetes集群对应的第一预设数据阈值时,减少kubernetes集群中的pod的数量;当监控数据小于kubernetes集群对应的第一预设数据阈值时,增加kubernetes集群中的pod的数量。其中,在kubernetes集群中,pod是所有业务类型的基础,也是k8s管理的最小单位级,它是一个或多个容器的组合。这些容器共享存储、网络和命名空间,以及如何运行的规范。在pod中,所有容器都被统一安排和调度,并运行在共享的上下文中。
110.在一些实施例中,根据监控数据调度多个服务集群的工作状态,将监控数据与多个服务集群对应的第二预设数据阈值比较,当监控数据大于多个服务集群对应的第二预设数据阈值时,减少服务集群的数量;当监控数据小于多个服务集群对应的第二预设数据阈值时,增加服务集群的数量。
111.在一些实施例中,kubernetes集群对应的第一预设数据阈值和多个服务集群对应的第二预设数据阈值可以根据实际需要单独进行设置,第一预设阈值与第二预设预支可以相同,也可以不同,此处不做限制。
112.在一些实施例中,当监控到kubernetes集群中对应的pod数量减少、或者pod不是正常的running状态、或者pod的健康检查有不通过事件的发生,即只要有其中一种情况发生,则判断为业务故障,自动调度kubernetes集群的工作状态。具体的,当监控到kubernetes集群中对应的业务的pod数量减少,或者pod不是正常的运行状态(运行状态是kubernetes集群中的pod正常的标记),或者有pod的健康检查不通过事件的发生,即只要有其中一种情况发生,则调度kubernetes集群增加pod或者更换pod。
113.在本实施例中,控制器中的监控单元330可以从用户任务配置描述信息中获取监控系统地址,监控器的类型,容灾规则、调度规则、需要监控器监控的指标以及指标对应数据的阈值、负载均衡类型及协议版本等,控制器同时可以接受用户提供多个不同类型对监控系统,综合多个监控系统来进行用户任务配置描述的执行,并且可以解析多个监控指标,本系统仅通过一个控制器,能够自动发现并获取监控数据,根据监控数据触发负载均衡系统,自动调度负载均衡流量。本发明实施例可以获取多种类型监控系统数据,并且可以解析多个监控指标,同时可以接收用户提供多个不同类型监控系统,综合多个监控系统来执行用户任务配置。
114.调度单元340,用于根据kubernetes集群的工作状态,触发负载均衡系统更新负载均衡系统的中虚拟ip地址对应的kubernetes集群的ip地址,和/或根据多个服务集群的工作状态,触发负载均衡系统更新负载均衡系统中的虚拟ip地址对应的多个服务集群的ip地址,完成流量的容灾和调度。
115.用户任务配置描述信息中定义了给控制器用来判断的条件和执行的规则,控制器从用户指定的监控系统中获取数据,与用户定义的阈值比较,如果发现超出阈值,即时与负载均衡系统的交互,根据负载均衡系统的接口提供的虚拟ip列表,选取一个可用的虚拟ip,
替换域名解析对应的虚拟ip地址。
116.作为一个举例说明,当监测到kubernetes中的pod发生变化,比如用户上线了新版本的程序,则pod会发生轮滚更新,轮滚更新会停止原来的pod,然后启动一个新版本的pod代替,这个过程中,pod的ip地址发生了变化,必须需要触发操作负载均衡系统,实时更新负载均衡系统的虚拟ip对应的后端服务,即pod的ip地址的即时更新,自动执行流量的容灾规则和调度规则,完成流量的容灾和调度。
117.在一些实施例中,当某个服务集群的ip地址发生变化时,触发负载均衡系统,即时更新负载均衡系统虚拟ip地址对应的服务集群的ip地址。作为一个举例说明,如果是一个或多个服务集群的ip地址发生变化,必须需要触发操作负载均衡系统,实施更新负载均衡系统的虚拟ip对应的服务集群的ip地址,自动执行流量的容灾规则和调度规则,完成流量的容灾和调度。
118.本发明中,仅通过一个控制器可以获取多种类型对监控系统对数据,统一存储用户任务配置描述信息,并且可以解析多个监控指标,同时可以接受用户提供多个不同类型对监控系统,根据多种监控系统的数据,将流量在kubernetes集群或者多个服务集群间调度,综合多个监控系统来进行用户任务配置描述的执行,根据用户描述,自动创建、删除或更新网络负载均衡系统的虚拟ip地址对应的pod的ip地址或多个服务集群对应的ip地址,仅通过一个控制器,根据监控数据调度负载均衡系统的流量,自动执行流量的容灾和调度。
119.所属领域的技术人员可以清楚地了解到,为了描述的方便和简洁,仅以上述各功能单元、模块的划分进行举例说明,实际应用中,可以根据需要而将上述功能分配由不同的功能单元、模块完成,即将装置的内部结构划分成不同的功能单元或模块,以完成以上描述的全部或者部分功能。实施例中的各功能单元、模块可以集成在一个处理单元中,也可以是各个单元单独物理存在,也可以两个或两个以上单元集成在一个单元中,上述集成的单元既可以采用硬件的形式实现,也可以采用软件功能单元的形式实现。另外,各功能单元、模块的具体名称也只是为了便于相互区分,并不用于限制本技术的保护范围。上述系统中单元、模块的具体工作过程,可以参考前述方法实施例中的对应过程,在此不再赘述。
120.实施例三
121.如图4所示,本技术实施例还提供了一种计算机可读存储介质400,计算机可读存储介质400内存储有计算机程序410,该计算机程序410被处理器执行时,实现:
122.获取用户任务配置描述信息;
123.从用户任务配置描述信息中获取监控系统地址,根据监控系统地址从监控系统中获取监控数据;
124.根据监控数据调度kubernetes集群的工作状态,和/或根据监控数据调度多个服务集群的工作状态;
125.根据kubernetes集群的工作状态,触发负载均衡系统更新负载均衡系统的中虚拟ip地址对应的kubernetes集群的ip地址,和/或根据多个服务集群的工作状态更新负载均衡系统中的虚拟ip地址对应的多个服务集群的ip地址,完成流量的容灾和调度。
126.所述集成的模块/单元如果以软件功能单元的形式实现并作为独立的产品销售或使用时,可以存储在一个计算机可读取存储介质中。基于这样的理解,本技术实现上述实施例方法中的全部或部分流程,也可以通过计算机程序来指令相关的硬件来完成,所述的计
integratedcircuit,asic)、现场可编程门阵列(field-programmable gate array,fpga)或者其他可编程逻辑器件、分立门或者晶体管逻辑器件、分立硬件组件。可以实现或者执行本技术实施例中的公开的各方法、步骤及逻辑框图。通用处理器可以是微处理器或者该处理器也可以是任何常规的处理器等。结合本技术实施例所公开的方法的步骤可以直接体现为硬件译码处理器执行完成,或者用译码处理器中的硬件及软件模块组合执行完成。软件模块可以位于随机存储器,闪存、只读存储器,可编程只读存储器或者电可擦写可编程存储器、寄存器等本领域成熟的存储介质中。该存储介质位于存储器,处理器读取存储器中的信息,结合其硬件完成上述方法的步骤。
136.该电子设备还可执行图1的方法,并实现流量的自动容灾和调度系统在图1所示实施例的功能,本技术实施例在此不再赘述。
137.当然,除了软件实现方式之外,本技术的电子设备并不排除其他实现方式,比如逻辑器件抑或软硬件结合的方式等等,也就是说以下处理流程的执行主体并不限定于各个逻辑单元,也可以是硬件或逻辑器件。上述实施例阐明的系统、装置、模块或单元,具体可以由计算机芯片或实体实现,或者由具有某种功能的产品来实现。一种典型的实现设备为计算机。具体的,计算机例如可以为个人计算机、膝上型计算机、车载人机交互设备、蜂窝电话、相机电话、智能电话、个人数字助理、媒体播放器、导航设备、电子邮件设备、游戏控制台、平板计算机、可穿戴设备或者这些设备中的任何设备的组合。
138.虽然本技术提供了如实施例或流程图所述的方法操作步骤,但基于常规或者无创造性的手段可以包括更多或者更少的操作步骤。实施例中列举的步骤顺序仅仅为众多步骤执行顺序中的一种方式,不代表唯一的执行顺序。在实际中的装置或终端产品执行时,可以按照实施例或者附图所示的方法顺序执行或者并行执行(例如并行处理器或者多线程处理的环境,甚至为分布式数据处理环境)。
139.本技术是参照根据本技术实施例的方法、设备(系统)、和计算机程序产品的流程图和/或方框图来描述的。应理解可由计算机程序指令实现流程图和/或方框图中的每一流程和/或方框、以及流程图和/或方框图中的流程和/或方框的结合。可提供这些计算机程序指令到通用计算机、专用计算机、嵌入式处理机或其他可编程数据处理设备的处理器以产生一个机器,使得通过计算机或其他可编程数据处理设备的处理器执行的指令产生用于实现在流程图一个流程或多个流程和/或方框图一个方框或多个方框中指定的功能的装置。
140.这些计算机程序指令也可存储在能引导计算机或其他可编程数据处理设备以特定方式工作的计算机可读存储器中,使得存储在该计算机可读存储器中的指令产生包括指令装置的制造品,该指令装置实现在流程图一个流程或多个流程和/或方框图一个方框或多个方框中指定的功能。
141.这些计算机程序指令也可装载到计算机或其他可编程数据处理设备上,使得在计算机或其他可编程设备上执行一系列操作步骤以产生计算机实现的处理,从而在计算机或其他可编程设备上执行的指令提供用于实现在流程图一个流程或多个流程和/或方框图一个方框或多个方框中指定的功能的步骤。
142.需要说明的是,在本文中,诸如第一和第二等之类的关系术语仅仅用来将一个实体或者操作与另一个实体或操作区分开来,而不一定要求或者暗示这些实体或操作之间存在任何这种实际的关系或者顺序。而且,术语“包括”、“包含”或者其任何其他变体意在涵盖
非排他性的包含,从而使得包括一系列要素的过程、方法、物品或者设备不仅包括那些要素,而且还包括没有明确列出的其他要素,或者是还包括为这种过程、方法、物品或者设备所固有的要素。在没有更多限制的情况下,由语句“包括一个
……”
限定的要素,并不排除在包括所述要素的过程、方法、物品或者设备中还存在另外的相同要素。
143.本说明书中的各个实施例均采用相关的方式描述,各个实施例之间相同相似的部分互相参见即可,每个实施例重点说明的都是与其他实施例的不同之处。尤其,对于装置、电子设备及可读存储介质实施例而言,由于其基本相似于方法实施例,所以描述的比较简单,相关之处参见方法实施例的部分说明即可。
144.以上所述仅为本技术的较佳实施例而已,并非用于限定本技术的保护范围。凡在本技术的精神和原则之内所作的任何修改、等同替换、改进等,均包含在本技术的保护范围内。
再多了解一些

本文用于企业家、创业者技术爱好者查询,结果仅供参考。

发表评论 共有条评论
用户名: 密码:
验证码: 匿名发表

相关文献