基于容器云的负载均衡方法、电子设备和可读存储介质与流程

未命名 07-15 阅读:223 评论:0


1.本技术涉及云计算技术领域,特别是涉及一种基于容器云的负载均衡方法、电子设备和可读存储介质。


背景技术:

2.随着数据时代的来临,当前的应用程序需要同时处理大量请求,并以快速可靠的方式反馈请求对应的数据,为了处理如此高的流量,负载均衡策略愈发得到关注,负载均衡是在支持应用程序的资源池中平均分配网络流量的一种方法,应用程序通常对应有至少一个服务,在新增应用程序后会得到对应的待匹配服务,现有技术中,在进行负载均衡的过程中,会为每个待匹配服务都分配各自的ip,而大量的ip地址导致的成本支出是极大的。有鉴于此,如何降低负载均衡的成本支出成为了亟待解决的问题。


技术实现要素:

3.本技术主要解决的技术问题是提供一种基于容器云的负载均衡方法、电子设备和可读存储介质,能够降低负载均衡的成本支出。
4.为解决上述技术问题,本技术第一方面提供一种基于容器云的负载均衡方法,包括:获得负载均衡器对应的ip列表,确定所述ip列表中的每个ip对应的端口列表;其中,所述ip列表包括至少一个所述负载均衡器的ip,所述负载均衡器基于容器云运行,且对应有多个可用端口,所述端口列表包括对应ip的所述负载均衡器的已占用端口;获得待匹配服务,基于所述ip列表中所有所述ip的顺序以及所述ip对应的端口列表,获得所述待匹配服务的目标端口;其中,所述目标端口为所述多个可用端口中的一个;将所述待匹配服务的服务ip设置为所述目标端口对应的负载均衡器的ip,并将所述目标端口作为所述已占用端口加入对应的所述端口列表中。
5.为解决上述技术问题,本技术第二方面提供一种电子设备,该电子设备包括:相互耦接的存储器和处理器,其中,所述存储器存储有程序数据,所述处理器调用所述程序数据以执行上述第一方面所述的方法。
6.为解决上述技术问题,本技术第三方面提供一种计算机可读存储介质,其上存储有程序数据,所述程序数据被处理器执行时实现上述第一方面所述的方法。
7.上述方案,获得负载均衡器对应的ip列表,按ip列表中的ip确定每个ip对应的端口列表,其中,ip列表中包括至少一个负载均衡器的ip,负载均衡器基于容器云运行,每个负载均衡器对应有多个可用端口,已被占用的可用端口作为已占用端口设置于ip对应的端口列表中,当获得待匹配服务时,按照ip列表中所有ip的顺序选择ip,并从ip对应的端口列表之外的可用端口中,确定待匹配服务对应的目标端口,进而将待匹配服务的服务ip设置为目标端口对应的负载均衡器的ip,并将目标端口修正为已占用端口从而加入对应的端口列表中,以使同一负载均衡器对应的所有已占用端口所对应的待匹配服务共用相同的ip,从而大幅减少ip地址的使用数量,降低负载均衡的成本支出。
附图说明
8.为了更清楚地说明本技术实施例中的技术方案,下面将对实施例描述中所需要使用的附图作简单地介绍,显而易见地,下面描述中的附图仅仅是本技术的一些实施例,对于本领域普通技术人员来讲,在不付出创造性劳动的前提下,还可以根据这些附图获得其他的附图。其中:
9.图1是本技术基于容器云的负载均衡方法一实施方式的流程示意图;
10.图2是本技术基于容器云的负载均衡方法另一实施方式的流程示意图;
11.图3是图2中步骤s204对应的一实施方式的应用场景示意图;
12.图4是本技术电子设备一实施方式的结构示意图;
13.图5是本技术计算机可读存储介质一实施方式的结构示意图。
具体实施方式
14.下面将结合本技术实施例中的附图,对本技术实施例中的技术方案进行清楚、完整地描述,显然,所描述的实施例仅仅是本技术一部分实施例,而不是全部实施例。基于本技术中的实施例,本领域普通技术人员在没有做出创造性的劳动前提下所获得的所有其他实施例,都属于本技术保护的范围。
15.本文中术语“系统”和“网络”在本文中常被可互换使用。本文中术语“和/或”,仅仅是一种描述关联对象的关联关系,表示可以存在三种关系,例如,a和/或b,可以表示:单独存在a,同时存在a和b,单独存在b这三种情况。另外,本文中字符“/”,一般表示前后关联对象是一种“或”的关系。此外,本文中的“多”表示两个或者多于两个。
16.本技术所提供的基于容器云的负载均衡方法用于为待匹配服务确定目标端口并配置ip从而实现负载均衡,以使目标端口被访问时,将目标端口的流量转发至对应的服务,其对应的执行主体为能够调用负载均衡器的处理器。
17.请参阅图1,图1是本技术基于容器云的负载均衡方法一实施方式的流程示意图,该方法包括:
18.s101:获得负载均衡器对应的ip列表,确定ip列表中的每个ip对应的端口列表,其中,ip列表包括至少一个负载均衡器的ip,负载均衡器基于容器云运行,且对应有多个可用端口,端口列表包括对应ip的负载均衡器的已占用端口。
19.具体地,获得负载均衡器对应的ip列表,按ip列表中的ip确定每个ip对应的端口列表,其中,ip列表中包括至少一个负载均衡器的ip,负载均衡器基于容器云运行,每个负载均衡器对应有多个可用端口,已被占用的可用端口作为已占用端口设置于ip对应的端口列表中。
20.在一应用方式中,多个负载均衡器基于容器云运行,每个负载均衡器对应有ip并预先添加在ip列表中,其中,ip列表中ip的顺序按照负载均衡器设置的时序排序,且负载均衡器包括多个可用端口,每个可用端口对应有各自的端口编号,当负载均衡器的可用端口被占用后,已被占用的可用端口的端口编号被添加至负载均衡器的ip对应的ip列表中,获得负载均衡器对应的ip列表后,按照ip列表中的ip的顺序确定每个ip列表对应的端口列表。
21.在另一应用方式中,负载均衡器基于容器云运行,且负载均衡器包括多个可用端
口,每个可用端口对应有各自的端口编号,ip列表中预先设置有一个负载均衡器对应的ip,ip对应有端口列表,当负载均衡器的可用端口被占用后,已被占用的可用端口的端口编号被添加至负载均衡器的ip对应的ip列表中,获得ip列表中的ip后,获取ip对应的端口列表中的端口编码,从而得到端口列表之外的未被占用的可用端口。
22.在一应用场景中,负载均衡器基于kubernetes容器云运行,从而基于kubernetes部署负载均衡策略,提高部署的便捷性和可维护性,ip列表中预先存放有一个负载均衡器的ip,直至ip列表中所有可用端口均加入至ip对应的端口列表后,获取新的负载均衡器并将新增的负载均衡的ip添加至ip列表,从而减少ip的使用数量。
23.s102:获得待匹配服务,基于ip列表中所有ip的顺序以及ip对应的端口列表,获得待匹配服务的目标端口,其中,目标端口为多个可用端口中的一个。
24.具体地,当获得待匹配服务时,按照ip列表中所有ip的顺序选择ip,并从ip对应的端口列表之外的可用端口中,确定待匹配服务对应的目标端口。
25.在一应用方式中,每个可用端口对应有各自的端口编号,响应于获得待匹配服务,按照ip列表中所有ip的顺序,选择仍包括未设置在端口列表中的可用端口的ip,从ip对应的端口列表之外的可用端口中,按照可用端口的端口编号的顺序,选择端口编号最小的端口作为待匹配服务对应的目标端口。
26.在另一应用方式中,响应于获得待匹配服务,按照ip列表中所有ip的顺序,选择仍包括未设置在端口列表中的可用端口的ip,从ip对应的端口列表之外的可用端口中,随机选择一个端口作为待匹配服务对应的目标端口。
27.s103:将待匹配服务的服务ip设置为目标端口对应的负载均衡器的ip,并将目标端口作为已占用端口加入对应的端口列表中。
28.具体地,将待匹配服务的服务ip设置为目标端口对应的负载均衡器的ip,并将目标端口修正为已占用端口从而加入对应的端口列表中,以使同一负载均衡器对应的所有已占用端口所对应的待匹配服务共用相同的ip,从而大幅减少ip地址的使用数量,降低负载均衡的成本支出。
29.在一应用方式中,待匹配服务的服务ip对应有服务ip字段,利用目标端口对应的负载均衡器的ip填充对应的待匹配服务的服务ip字段,以使待匹配服务的服务ip被设置为目标端口对应的负载均衡器的ip,将目标端口加入至对应的端口列表中。
30.在另一应用方式中,可用端口对应有端口编号,待匹配服务的服务ip对应有服务ip字段,利用目标端口对应的负载均衡器的ip以及目标端口的端口编号填充对应的待匹配服务的服务ip字段,以使待匹配服务的服务ip被设置为目标端口对应的负载均衡器的ip,将目标端口的端口编号加入至对应的端口列表中,以使目标端口修正为已占用端口。
31.在一具体应用场景中,负载均衡器基于kubernetes容器云运行,其中,现有技术中,kubernetes提供了三种外部访问方式,nodeport、loadbalancer和ingress。其中,nodeport是引导外部流量到服务的最原始方式,ingress是对集群中服务的外部访问进行管理的接口对象,loadbalancer是暴露服务到internet的标准方式,这种方式会启动一个网络负载均衡器network load balancer,为每个服务分配一个单独的ip地址,每一个用现有方式暴露的服务都会有它自己的ip地址,且每个ip均需要进行付费,大大提高了负载均衡的成本,而在本应用场景中,负载均衡器利用可用端口与服务相匹配,服务所匹配上的可
用端口即为服务的目标端口,目标端口对应的负载均衡器的ip即为服务的ip,负载均衡器的ip设置在ip列表中,当ip列表中只包括一个ip时,则所有已匹配的服务共享相同的ip,当ip列表中包括多个ip时,则至少部分已匹配的服务共享相同的ip,从而节约负载均衡的成本。
32.上述方案,获得负载均衡器对应的ip列表,按ip列表中的ip确定每个ip对应的端口列表,其中,ip列表中包括至少一个负载均衡器的ip,负载均衡器基于容器云运行,每个负载均衡器对应有多个可用端口,已被占用的可用端口作为已占用端口设置于ip对应的端口列表中,当获得待匹配服务时,按照ip列表中所有ip的顺序选择ip,并从ip对应的端口列表之外的可用端口中,确定待匹配服务对应的目标端口,进而将待匹配服务的服务ip设置为目标端口对应的负载均衡器的ip,并将目标端口修正为已占用端口从而加入对应的端口列表中,以使同一负载均衡器对应的所有已占用端口所对应的待匹配服务共用相同的ip,从而大幅减少ip地址的使用数量,降低负载均衡的成本支出。
33.请参阅图2,图2是本技术基于容器云的负载均衡方法另一实施方式的流程示意图,该方法包括:
34.s201:获得负载均衡器对应的ip列表,确定ip列表中的每个ip对应的端口列表,其中,ip列表包括至少一个负载均衡器的ip,负载均衡器基于容器云运行,且对应有多个可用端口,端口列表包括对应ip的负载均衡器的已占用端口。
35.具体地,获得负载均衡器对应的ip列表,按ip列表中的ip确定每个ip对应的端口列表。其中,负载均衡器基于容器云运行,且负载均衡器对应有ip,设置于ip列表中,负载均衡器对应有多个可用端口,其中,负载均衡器在初始阶段,可用端口均设置于端口列表之外,当任一可用端口被占用后,可用端口被修正为已占用端口并添加至端口列表中。
36.进一步地,ip列表中的所有ip均已设置在物理机上,ip列表中的所有ip的顺序与对应的负载均衡器添加的时序相关。其中,时序在前的负载均衡器对应的ip在ip列表中的前列,从而确定ip列表中ip的使用顺序,负载均衡器的ip设置于物理机上后,以供外部设备访问。
37.在一应用场景中,获得负载均衡器对应的ip列表,确定ip列表中的每个ip对应的端口列表之后,还包括:响应于获得待设置负载均衡器,将待设置负载均衡器的新增ip按顺序设置在ip列表中的ip之后;响应于监测到ip列表中获得新增ip,将新增ip设置到物理机的物理网卡上,并将待设置负载均衡器修正为已设置负载均衡器。
38.具体地,当获得新添加的负载均衡器时,将新添加的负载均衡器作为待设置负载均衡器,将待设置负载均衡器的ip作为新增ip设置在ip列表中的ip之后,从而将新增ip按负载均衡器添加的时序添加至ip列表中。
39.进一步地,当监测到ip列表中获得新增ip,将新增ip设置到物理机的物理网卡上,以使新增ip能够被外部设备访问,从而ip对应的负载均衡器能够被使用,将待设置负载均衡器修正为已设置负载均衡器。
40.需要说明的是,通过对ip列表的监测,从而在ip列表中获得新增ip后,及时将新增ip设置到物理机的物理网卡上,从而保证ip列表中每个ip的可用性,实现ip的高可用。
41.在一实施方式中,响应于监测到ip列表中获得新增ip,将新增ip设置到物理机的物理网卡上,并将待设置负载均衡器修正为已设置负载均衡器,包括:利用服务守护进程监
测ip列表,直至监测到ip列表中获得新增ip;获取新增ip的哈希转换值,基于哈希转换值和物理机的数量之间的比值,确定新增ip对应的目标物理机;将新增ip设置到目标物理机的物理网卡上。
42.具体地,利用服务守护进程对ip列表进行监测,当ip列表中获得新增ip后,被服务守护进程监测到,确定新增ip并对新增ip进行哈希变换,得到新增ip的哈希转换值,利用哈希转换值与物理机的数量求取两者的比值,从而基于比值为新增ip选择一个物理机作为目标物理机,将新增设置到目标物理机的物理网卡上,从而提高ip列表中新增ip设置到物理机上的效率,并且在具备多个物理机时,提高多个物理机上ip数量的均衡性。
43.在一具体应用场景中,利用服务守护进程daemonset部署服务,每个物理机作为一个节点,节点上运行一个lb-pod,利用lb-pod监控ip列表,当ip列表中加入新增ip时,lb-pod获取到新ip,对ip进行jhash计算得到哈希转换值,并除以当前可用的物理机的数量node,得到返回值,基于返回值中的余数确定新增ip所对应的目标物理机,当余数为0则将当前的物理机作为新增ip的目标物理机,当预设为0以外的其他数值,则将当前的物理机之后的对应数值个物理机,作为新增ip的目标物理机,从而提高多个物理机上ip数量的均衡性。
44.可选地,物理机的数量为多个,将新增ip设置到目标物理机的物理网卡上之后,包括:响应于服务守护进程监测到ip列表中的任一ip对应的物理机异常,将存在异常的物理机上设置的所有ip作为新增ip,并基于存在异常的物理机更新物理机的数量;返回至获取新增ip的哈希转换值,基于哈希转换值和物理机的数量之间的比值,确定新增ip对应的目标物理机的步骤。
45.具体地,当服务守护进程监测到ip列表中有ip对应的物理机异常时,将存在异常的物理机从物理机的总数中暂时去除,得到更新后的物理机的数量,并将存在异常的物理机上已经设置的所有ip作为新增ip,从而返回至获取新增ip的哈希转换值,基于哈希转换值和物理机的数量之间的比值,确定新增ip对应的目标物理机的步骤,将存在异常的物理机上的ip均重新设置到正常的物理机上,提高负载均衡器的可靠性和稳定性。
46.在一具体应用场景中,利用服务守护进程daemonset部署服务,每个物理机作为一个节点,节点上运行一个lb-pod,若ip列表中的ip所在的物理机异常,则lb-pod获取到节点的not ready事件,并将存在异常的物理机上设置的所有ip作为新增ip,更新物理机的总数,从而将存在异常的物理机上的ip均重新设置到剩余的物理机上。
47.s202:响应于获得新增的服务,将新增的服务作为待匹配服务,其中,待匹配服务的访问方式为基于负载均衡器访问,且待匹配服务对应有服务ip字段。
48.具体地,当获得新增的服务时,将新增的服务作为待匹配服务,其中,待匹配服务与应用程序相对应,将待匹配服务的访问方式设置为基于负载均衡器访问,每个待匹配服务对应有服务ip字段,初始的服务ip字段为空。
49.s203:基于ip列表中所有ip的顺序,选择包括可用端口的ip作为可用ip。
50.具体地,当可用端口被占用时,可用端口更新为已占用端口并加入至端口列表中,从ip列表中按照ip的顺序从初始的ip开始,确定还包括可用端口的第一个ip作为可用ip,也就是说,如果ip列表中初始的ip还包括未加入至端口列表的可用端口,则初始的ip作为可用ip,否则从初始的ip依次进行遍历,找到ip列表中最前端的包括可用端口的ip作为可
用ip,从而减少ip的占用量。
51.可以理解的是,当ip列表中只包括一个ip时,只要当前ip的可用端口未被全部占用时,则当前ip作为可用ip,并且,所有完成匹配的服务共同相同的ip。
52.s204:从可用ip对应的端口列表之外的所有可用端口中,确定待匹配服务对应的目标端口,以使目标端口被访问时,将目标端口的流量转发至对应的服务。
53.具体地,确定可用ip对应的端口列表之外的所有可用端口,从端口列表之外的可用端口中选择一个可用端口作为待匹配服务的目标端口,当目标端口与待匹配服务匹配后,目标端口指向待匹配服务,当目标端口被访问时,将目标端口的流量全部转发至目标端口所指向的服务,以使流量转发的过程在容器云上完成,也就是在内核中完成,无需经过第三方从而提高服务的性能。
54.需要说明的是,从可用ip对应的端口列表之外的所有可用端口中,确定待匹配服务对应的目标端口之前,包括:响应于ip列表中包括多个ip,且待匹配服务对应有指定端口,以当前的可用ip为起点,按ip列表中ip的顺序,确定端口列表中未包括指定端口的ip,并作为指定ip。
55.具体地,当ip列表中包括多个ip,且待匹配服务选择了指定端口时,将当前的可用ip作为起点,查找当前的可用ip对应的端口列表中是否包括指定端口,若不包括,则将当前的可用ip作为指定ip,若包括,则将ip列表中当前的可用ip之后的ip更新为可用ip,并查找当前的可用ip对应的端口列表中是否包括指定端口,直至获得端口列表中不包括指定端口的ip,作为指定ip。
56.进一步地,从可用ip对应的端口列表之外的所有可用端口中,确定待匹配服务对应的目标端口,包括:从指定ip对应的端口列表之外的所有可用端口中,将指定端口作为待匹配服务对应的目标端口。
57.可以理解的是,指定ip能够为待匹配服务分配指定端口,故此,将指定端口作为待匹配服务对应的目标端口,以满足待匹配服务的指定需求。
58.在一具体应用场景中,请参阅图3,图3是图2中步骤s204对应的一实施方式的应用场景示意图,其中,服务1和服务2分别于ip1中的端口1和端口2相匹配,当服务3的指定端口为端口1时,从ip列表中获得的可用ip首先为ip1,查找ip1的端口列表发现端口1存在于端口列表中,故而查找ip列表中ip1之后的ip2对应的端口列表,当ip2对应的端口类别中不包括端口1时,将服务3与ip2中的端口1相匹配,并将端口1添加至ip2对应的端口列表中,从而尽可能减少ip的使用,同时满足不同服务的指定需求。
59.s205:利用目标端口对应的负载均衡器的ip,填充待匹配服务对应的服务ip字段。
60.具体地,将目标端口对应的负载均衡器的ip用于填充待匹配服务对应的服务ip字段,从而将待匹配服务的服务ip设置为目标端口对应的负载均衡器的ip。
61.进一步地,请再次参阅图3,以图3为例,为区分同一ip下对应的服务,服务字段中除了目标端口对应的ip还包括端口对应的端口编号,例如,服务1对应的服务ip字段包括ip1和端口编号1,服务2对应的服务ip字段包括ip1和端口编号2,服务3对应的服务ip字段包括ip2和端口编号1,从而每个服务对应的服务ip字段相互区别,以便于区分不同的服务。
62.s206:将目标端口作为已占用端口加入对应的端口列表中,并将待匹配服务修正为已匹配的服务。
63.具体地,将目标端口修正为已占用端口并加入对应的端口列表中,将待匹配服务修正为已匹配的服务,从而完成待匹配服务的负载均衡设置流程,直至获取到新的待匹配服务,返回至获得负载均衡器对应的ip列表,确定ip列表中的每个ip对应的端口列表的步骤。
64.在本实施例中,利用服务守护进程对ip列表进行监测,通过对ip列表的监测,从而在ip列表中获得新增ip后,及时将新增ip设置到物理机的物理网卡上,从而保证ip列表中每个ip的可用性,实现ip的高可用,从ip列表中按照ip的顺序从初始的ip开始,确定还包括可用端口的第一个ip作为可用ip,从而减少ip的占用量,从可用ip对应的端口列表之外的所有可用端口中,选择一个可用端口作为待匹配服务的目标端口,当目标端口被访问时,将目标端口的流量全部转发至目标端口所指向的服务,以使流量转发的过程在容器云上完成,也就是在内核中完成,无需经过第三方从而提高服务的性能。
65.请参阅图4,图4是本技术电子设备一实施方式的结构示意图,该电子设备40包括相互耦接的存储器401和处理器402,其中,存储器401存储有程序数据(图未示),处理器402调用程序数据以实现上述任一实施例中的方法,相关内容的说明请参见上述方法实施例的详细描述,在此不再赘叙。
66.请参阅图5,图5是本技术计算机可读存储介质一实施方式的结构示意图,该计算机可读存储介质50存储有程序数据500,该程序数据500被处理器执行时实现上述任一实施例中的方法,相关内容的说明请参见上述方法实施例的详细描述,在此不再赘叙。
67.需要说明的是,作为分离部件说明的单元可以是或者也可以不是物理上分开的,作为单元显示的部件可以是或者也可以不是物理单元,即可以位于一个地方,或者也可以分布到多个网络单元上。可以根据实际的需要选择其中的部分或者全部单元来实现本实施方式方案的目的。
68.另外,在本技术各个实施例中的各功能单元可以集成在一个处理单元中,也可以是各个单元单独物理存在,也可以两个或两个以上单元集成在一个单元中。上述集成的单元既可以采用硬件的形式实现,也可以采用软件功能单元的形式实现。
69.集成的单元如果以软件功能单元的形式实现并作为独立的产品销售或使用时,可以存储在一个计算机可读取存储介质中。基于这样的理解,本技术的技术方案本质上或者说对现有技术做出贡献的部分或者该技术方案的全部或部分可以以软件产品的形式体现出来,该计算机软件产品存储在一个存储介质中,包括若干指令用以使得一台计算机设备(可以是个人计算机,服务器,或者网络设备等)或处理器(processor)执行本技术各个实施方式方法的全部或部分步骤。而前述的存储介质包括:u盘、移动硬盘、只读存储器(rom,read-only memory)、随机存取存储器(ram,random access memory)、磁碟或者光盘等各种可以存储程序代码的介质。
70.以上所述仅为本技术的实施方式,并非因此限制本技术的专利范围,凡是利用本技术说明书及附图内容所作的等效结构或等效流程变换,或直接或间接运用在其他相关的技术领域,均同理包括在本技术的专利保护范围内。

技术特征:
1.一种基于容器云的负载均衡方法,其特征在于,所述方法包括:获得负载均衡器对应的ip列表,确定所述ip列表中的每个ip对应的端口列表;其中,所述ip列表包括至少一个所述负载均衡器的ip,所述负载均衡器基于容器云运行,且对应有多个可用端口,所述端口列表包括对应ip的所述负载均衡器的已占用端口;获得待匹配服务,基于所述ip列表中所有所述ip的顺序以及所述ip对应的端口列表,获得所述待匹配服务的目标端口;其中,所述目标端口为所述多个可用端口中的一个;将所述待匹配服务的服务ip设置为所述目标端口对应的负载均衡器的ip,并将所述目标端口作为所述已占用端口加入对应的所述端口列表中。2.根据权利要求1所述的基于容器云的负载均衡方法,其特征在于,所述获得待匹配服务,基于所述ip列表中所有所述ip的顺序以及所述ip对应的端口列表,获得所述待匹配服务的目标端口,包括:响应于获得新增的服务,将新增的所述服务作为所述待匹配服务;其中,所述待匹配服务的访问方式为基于负载均衡器访问,且所述待匹配服务对应有服务ip字段;基于所述ip列表中所有所述ip的顺序,选择包括所述可用端口的ip作为可用ip;从所述可用ip对应的所述端口列表之外的所有所述可用端口中,确定所述待匹配服务对应的所述目标端口,以使所述目标端口被访问时,将所述目标端口的流量转发至对应的服务。3.根据权利要求2所述的基于容器云的负载均衡方法,其特征在于,所述从所述可用ip对应的所述端口列表之外的所有所述可用端口中,确定所述待匹配服务对应的所述目标端口之前,包括:响应于所述ip列表中包括多个ip,且所述待匹配服务对应有指定端口,以当前的所述可用ip为起点,按所述ip列表中ip的顺序,确定所述端口列表中未包括所述指定端口的ip,并作为指定ip;所述从所述可用ip对应的所述端口列表之外的所有所述可用端口中,确定所述待匹配服务对应的所述目标端口,包括:从所述指定ip对应的所述端口列表之外的所有所述可用端口中,将所述指定端口作为所述待匹配服务对应的所述目标端口。4.根据权利要求2所述的基于容器云的负载均衡方法,其特征在于,所述将所述待匹配服务的服务ip设置为所述目标端口对应的负载均衡器的ip,并将所述目标端口作为所述已占用端口加入对应的所述端口列表中,包括:利用所述目标端口对应的负载均衡器的ip,填充所述待匹配服务对应的所述服务ip字段;将所述目标端口作为所述已占用端口加入对应的所述端口列表中,并将所述待匹配服务修正为已匹配的服务。5.根据权利要求1所述的基于容器云的负载均衡方法,其特征在于,所述ip列表中的所有所述ip均已设置在物理机上,所述ip列表中的所有所述ip的顺序与对应的所述负载均衡器添加的时序相关。6.根据权利要求5所述的基于容器云的负载均衡方法,其特征在于,所述获得负载均衡器对应的ip列表,确定所述ip列表中的每个ip对应的端口列表之后,还包括:
响应于获得待设置负载均衡器,将所述待设置负载均衡器的新增ip按所述顺序设置在所述ip列表中的ip之后;响应于监测到所述ip列表中获得所述新增ip,将所述新增ip设置到所述物理机的物理网卡上,并将所述待设置负载均衡器修正为已设置负载均衡器。7.根据权利要求6所述的基于容器云的负载均衡方法,其特征在于,所述响应于监测到所述ip列表中获得所述新增ip,将所述新增ip设置到所述物理机的物理网卡上,并将所述待设置负载均衡器修正为已设置负载均衡器,包括:利用服务守护进程监测所述ip列表,直至监测到所述ip列表中获得所述新增ip;获取所述新增ip的哈希转换值,基于所述哈希转换值和所述物理机的数量之间的比值,确定所述新增ip对应的目标物理机;将所述新增ip设置到所述目标物理机的物理网卡上。8.根据权利要求7所述的基于容器云的负载均衡方法,其特征在于,所述物理机的数量为多个,所述将所述新增ip设置到所述目标物理机的物理网卡上之后,包括:响应于所述服务守护进程监测到所述ip列表中的任一ip对应的物理机异常,将存在异常的所述物理机上设置的所有ip作为新增ip,并基于存在异常的所述物理机更新所述物理机的数量;返回至所述获取所述新增ip的哈希转换值,基于所述哈希转换值和所述物理机的数量之间的比值,确定所述新增ip对应的目标物理机的步骤。9.一种电子设备,其特征在于,包括:相互耦接的存储器和处理器,其中,所述存储器存储有程序数据,所述处理器调用所述程序数据以执行如权利要求1-8中任一项所述的方法。10.一种计算机可读存储介质,其上存储有程序数据,其特征在于,所述程序数据被处理器执行时实现如权利要求1-8中任一项所述的方法。

技术总结
本申请公开了一种基于容器云的负载均衡方法、电子设备和可读存储介质,包括:获得负载均衡器对应的IP列表,确定IP列表中的每个IP对应的端口列表;其中,IP列表包括至少一个负载均衡器的IP,负载均衡器基于容器云运行,且对应有多个可用端口,端口列表包括对应IP的负载均衡器的已占用端口;获得待匹配服务,基于IP列表中所有IP的顺序以及IP对应的端口列表,获得待匹配服务的目标端口;其中,目标端口为多个可用端口中的一个;将待匹配服务的服务IP设置为目标端口对应的负载均衡器的IP,并将目标端口作为已占用端口加入对应的端口列表中。上述方案,能够降低负载均衡的成本支出。能够降低负载均衡的成本支出。能够降低负载均衡的成本支出。


技术研发人员:杨佳奇 刘青 马亮 周明伟 高伟
受保护的技术使用者:浙江大华技术股份有限公司
技术研发日:2023.03.21
技术公布日:2023/7/12
版权声明

本文仅代表作者观点,不代表航空之家立场。
本文系作者授权航家号发表,未经原创作者书面授权,任何单位或个人不得引用、复制、转载、摘编、链接或以其他任何方式复制发表。任何单位或个人在获得书面授权使用航空之家内容时,须注明作者及来源 “航空之家”。如非法使用航空之家的部分或全部内容的,航空之家将依法追究其法律责任。(航空之家官方QQ:2926969996)

飞行汽车 https://www.autovtol.com/

分享:

扫一扫在手机阅读、分享本文

相关推荐