CN113746887A - 一种跨集群数据请求处理方法、设备及存储介质 - Google Patents
一种跨集群数据请求处理方法、设备及存储介质 Download PDFInfo
- Publication number
- CN113746887A CN113746887A CN202011225818.5A CN202011225818A CN113746887A CN 113746887 A CN113746887 A CN 113746887A CN 202011225818 A CN202011225818 A CN 202011225818A CN 113746887 A CN113746887 A CN 113746887A
- Authority
- CN
- China
- Prior art keywords
- cluster
- service
- data request
- target
- message queue
- Prior art date
- Legal status (The legal status is an assumption and is not a legal conclusion. Google has not performed a legal analysis and makes no representation as to the accuracy of the status listed.)
- Granted
Links
- 238000003672 processing method Methods 0.000 title claims abstract description 32
- 238000012545 processing Methods 0.000 claims abstract description 90
- 238000012544 monitoring process Methods 0.000 claims abstract description 51
- 238000000034 method Methods 0.000 claims description 61
- 230000008569 process Effects 0.000 claims description 26
- 230000015654 memory Effects 0.000 claims description 23
- 238000004590 computer program Methods 0.000 claims description 14
- 238000012795 verification Methods 0.000 claims description 11
- 238000010586 diagram Methods 0.000 description 16
- 230000006870 function Effects 0.000 description 13
- 230000004083 survival effect Effects 0.000 description 7
- 241000412611 Consul Species 0.000 description 6
- 238000001914 filtration Methods 0.000 description 4
- 230000000977 initiatory effect Effects 0.000 description 4
- 230000008859 change Effects 0.000 description 3
- 238000005516 engineering process Methods 0.000 description 3
- 238000012423 maintenance Methods 0.000 description 3
- 230000007246 mechanism Effects 0.000 description 3
- 238000004458 analytical method Methods 0.000 description 2
- 238000004891 communication Methods 0.000 description 2
- 230000000694 effects Effects 0.000 description 2
- 230000036541 health Effects 0.000 description 2
- 238000013507 mapping Methods 0.000 description 2
- 238000012986 modification Methods 0.000 description 2
- 230000004048 modification Effects 0.000 description 2
- 230000003287 optical effect Effects 0.000 description 2
- 238000013459 approach Methods 0.000 description 1
- 230000009286 beneficial effect Effects 0.000 description 1
- 230000005540 biological transmission Effects 0.000 description 1
- 230000008602 contraction Effects 0.000 description 1
- 238000011161 development Methods 0.000 description 1
- 230000003862 health status Effects 0.000 description 1
- 230000003993 interaction Effects 0.000 description 1
- 238000002955 isolation Methods 0.000 description 1
- 238000004519 manufacturing process Methods 0.000 description 1
- 230000002085 persistent effect Effects 0.000 description 1
- 230000001360 synchronised effect Effects 0.000 description 1
- 230000007704 transition Effects 0.000 description 1
- 238000013519 translation Methods 0.000 description 1
- 238000010200 validation analysis Methods 0.000 description 1
Images
Classifications
-
- H—ELECTRICITY
- H04—ELECTRIC COMMUNICATION TECHNIQUE
- H04L—TRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
- H04L67/00—Network arrangements or protocols for supporting network services or applications
- H04L67/01—Protocols
- H04L67/10—Protocols in which an application is distributed across nodes in the network
-
- H—ELECTRICITY
- H04—ELECTRIC COMMUNICATION TECHNIQUE
- H04L—TRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
- H04L41/00—Arrangements for maintenance, administration or management of data switching networks, e.g. of packet switching networks
- H04L41/08—Configuration management of networks or network elements
- H04L41/0803—Configuration setting
-
- H—ELECTRICITY
- H04—ELECTRIC COMMUNICATION TECHNIQUE
- H04L—TRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
- H04L67/00—Network arrangements or protocols for supporting network services or applications
- H04L67/50—Network services
- H04L67/60—Scheduling or organising the servicing of application requests, e.g. requests for application data transmissions using the analysis and optimisation of the required network resources
Landscapes
- Engineering & Computer Science (AREA)
- Computer Networks & Wireless Communication (AREA)
- Signal Processing (AREA)
- Computer And Data Communications (AREA)
Abstract
本发明实施例公开了一种应用于包含多个Kubernetes集群的云环境的跨集群数据请求处理方法,该方法包括:监控数据请求;所述数据请求与目标服务实例分布于不同的Kubernetes集群;所述目标服务实例能够处理所述数据请求;在监控到所述数据请求的情况下,获取消息队列服务集群;所述消息队列服务集群中的每一消息队列服务,与所述云环境的Kubernetes集群一一对应;所述消息队列服务,用于管理每一所述Kubernetes集群中承载有服务实例的资源单元信息;基于所述数据请求以及所述消息队列服务集群,确定目标资源单元;所述目标资源单元中承载有所述目标服务实例;基于所述目标资源单元,处理所述数据请求。
Description
技术领域
本发明涉及数据处理技术领域,尤其涉及一种应用于包含多个Kubernetes集群的云环境的数据请求处理方法、设备以及计算机可读存储介质。
背景技术
在实际应用中,为了能够快速高效地响应数据请求,服务实例的准确快速发现显得尤为重要,在相关技术中,通常可以通过Zookeeper、Etcd、以及Consul域名系统(DomainName System,DNS)对服务进行注册和发现,但以上服务注册和发现方法,通常应用于一个云环境的Kubernetes集群内部。然而,对于云环境中的跨多个Kubernetes集群的数据请求,上述方案无法确地提供与数据请求对应的目标服务实例所在的Pod的对外地址,因此无法为跨Kubernetes集群的数据请求提供服务。
发明内容
本发明实施例提供了一种跨集群数据请求处理方法,该方法应用于包含多个Kubernetes集群的云环境中。该方法能够在监控到来自其它Kubernetes集群的数据请求时,确定出云环境中承载有数据请求对应的目标服务实例的目标资源单元,并基于该目标资源单元处理该数据请求,从而实现了跨Kubernetes集群的服务实例位置的准确快速确定。
本发明实施例提供的方案是这样的:
本发明实施例提供了一种跨集群数据请求处理方法,所述方法应用于包含多个Kubernetes集群的云环境中,所述方法包括:
监控数据请求;其中,所述数据请求与目标服务实例分布于不同的Kubernetes集群;所述目标服务实例能够处理所述数据请求;
在监控到所述数据请求的情况下,获取消息队列服务集群;其中,所述消息队列服务集群中的每一消息队列服务,与所述云环境的Kubernetes集群一一对应;所述消息队列服务,用于管理每一所述Kubernetes集群中承载有服务实例的资源单元信息;
基于所述数据请求以及所述消息队列服务集群,确定目标资源单元;其中,所述目标资源单元中承载有所述目标服务实例;
基于所述目标资源单元,处理所述数据请求。
在一些实施方式中,所述基于所述数据请求以及所述消息队列服务集群,确定目标资源单元,包括:
基于所述消息队列服务集群对所述数据请求进行处理,得到主题集群信息;其中,所述主题集群信息,包括目标Kubernetes集群的类型以及标识信息;所述目标Kubernetes集群,包括至少两个Kubernetes集群;
基于所述主题集群信息,确定所述目标资源单元。
在一些实施方式中,所述基于所述主题集群信息,确定所述目标资源单元,包括:
基于所述主题集群信息,在所述目标Kubernetes集群中查询资源单元状态信息;
基于所述资源单元状态信息,确定所述目标资源单元。
在一些实施方式中,所述基于所述消息队列服务集群对所述数据请求进行处理,得到主题集群信息,包括:
基于所述消息队列服务集群,对所述数据请求进行验证,得到验证结果;
在所述验证结果为验证成功的情况下,获取所述消息队列服务集群的配置信息;其中,所述配置信息,包括所述消息队列服务集群对应的Kubernetes集群中的资源单元标识信息;
基于所述配置信息,得到所述主题集群信息。
在一些实施方式中,所述监控数据请求,包括:
确定第一服务;其中,所述第一服务,用于基于第一地址信息监控所述数据请求;
基于所述第一服务,得到所述第一地址信息;
通过所述第一地址信息,监控所述数据请求。
在一些实施方式中,所述确定第一服务,包括:
创建目标数据类型;其中,所述目标数据类型,表示与跨集群的数据请求对应的数据类型;
在所述云环境的每一Kubernetes集群中,部署监控所述目标数据类型的数据请求的控制器集群;
基于所述控制器集群,确定所述第一服务。
在一些实施方式中,所述部署监控所述目标数据类型的数据请求的控制器集群之前,还包括:
配置与所述目标数据类型的数据请求对应的运行空间。
在一些实施方式中,所述获取消息队列服务集群,包括:
确定第二服务;其中,所述第二服务,用于管理所述消息队列服务集群;
通过所述第二服务,获取所述消息队列服务集群。
在一些实施方式中,所述确定第二服务,包括:
创建目标数据类型;其中,所述目标数据类型,表示与所述数据请求对应的数据类型;
在所述云环境的每一Kubernetes集群中,部署与所述目标数据类型对应的所述消息队列服务集群;
基于多个所述消息队列服务集群,确定所述第二服务。
在一些实施方式中,所述部署与所述目标数据类型对应的所述消息队列服务集群,包括:
确定第二地址信息;其中,所述第二地址信息,包括每一所述Kubernetes集群中的每一资源单元的网络地址信息;
基于所述第二地址信息,在所述云环境的每一Kubernetes集群中,部署与所述目标数据类型对应的所述消息队列服务集群。
在一些实施方式中,所述确定第二地址信息,包括:
确定第三服务;其中,所述第三服务,用于将每一所述Kubernetes集群中的每一资源单元进行状态化管理;
通过第三服务,为每一所述Kubernetes集群中的每一资源单元,确定所述第二地址信息。
在一些实施方式中,所述基于所述目标资源单元,处理所述数据请求,包括:
将所述目标资源单元的信息发送至客户端;
接收所述客户端发送至所述目标资源单元的直连请求,建立所述客户端与所述目标资源单元之间的直连链路;
通过所述直连链路,基于所述目标资源单元,处理所述数据请求。
本发明实施例还提供了一种跨集群数据请求处理设备,所述设备应用于包含多个Kubernetes集群的云环境中,所述设备包括:监控模块、处理模块以及确定模块,其中:
所述监控模块,用于监控数据请求;其中,所述数据请求与目标服务实例对应的服务分布于不同的Kubernetes集群中;所述目标服务实例能够处理所述数据请求;
所述处理模块,用于在监控到所述数据请求的情况下,获取消息队列服务集群;其中,所述消息队列服务集群中的每一消息队列服务,与所述云环境的Kubernetes集群一一对应;所述消息队列服务,用于管理每一所述Kubernetes集群中资源单元;
所述确定模块,用于基于所述数据请求以及所述消息队列服务集群,确定目标资源单元;其中,所述目标资源单元中承载有所述目标服务实例;
所述处理模块,用于基于所述目标资源单元,处理所述数据请求。
本发明实施例还提供了一种跨集群数据请求处理设备,所述设备处理器和存储器;其中,所述存储器中存储有计算机程序,所述计算机程序被所述处理器执行时实现如前任一所述的跨集群数据请求处理方法。
本发明实施例还提供了一种计算机可读存储介质,所述计算机可读存储介质中存储有计算机程序,所述计算机程序能够被处理器执行,以实现如前任一所述的跨集群数据请求处理方法。
由以上可知,本发明实施例提供的应用于包含有多个Kubernetes集群的跨集群数据请求处理方法,监控到数据请求之后,能够获取到管理有多个Kubernetes集群中每一资源单元信息的消息队列服务集群,并根据数据请求以及消息队列服务集群,确定目标资源单元,最后根据目标资源单元处理该数据请求。
如此,本发明实施例提供的跨集群数据请求处理方法,通过云环境中用于管理每一Kubernetes集群中承载有服务实例的资源单元信息的消息队列服务集群,使得云环境中的任一Kubernetes集群、在接收到其它Kubernetes集群中发起的数据请求的情况下,都能够准确高效为该数据请求确定对应的目标资源单元,从而使得在客户端与服务端跨Kubernetes集群的情况下,也能够实现服务的准确快速提供。
附图说明
图1为本发明实施例提供的第一种跨集群数据请求处理方法的流程示意图;
图2为本发明实施例提供的第二种跨集群数据请求处理方法的流程示意图;
图3为本发明实施例提供的跨集群数据请求处理方法中的服务实例的注册流程示意图;
图4为本发明实施例提供的跨集群数据请求处理方法中的服务实例的发现流程示意图;
图5为本发明实施例提供的跨集群数据请求处理设备的结构示意图;
图6为本发明实施例提供的跨集群数据请求处理设备的结构示意图。
具体实施方式
下面将结合本发明实施例中的附图,对本发明实施例中的技术方案进行清楚、完整地描述。
应当理解,此处所描述的具体实施例仅仅用以解释本发明,并不用于限定本发明。
本发明实施例涉及数据处理技术领域,尤其涉及一种应用于包含多个Kubernetes集群的云环境的跨集群数据请求处理方法、设备以及计算机可读存储介质。
Kubernetes,是一种能够自动部署、扩展和管理容器化应用程序的开源系统,其将承载应用程序的容器组成逻辑单元,从而便于监控和管理。
对于客户端而言,服务端的准确快速发现和确定,在服务提供过程中,是至关重要的一个环节。
在实际应用中,服务端的发现和确定,是以服务注册和发现(Service RegistryAnd Discovery)为前提的。其中,服务注册和发现,是指服务提供者在服务实例启动时,将服务实例的地址和端口号注册在诸如注册表等的地方,以供客户端通过服务实例的名称,在注册表中查找服务的地址和端口,从而使得客户端能够快速准确的访问到对应的服务实例。
若服务实例的地址和端口号是固定不变的,可以将这些固定不变的地址和端口号直接写入指定的配置文件中,客户端通过访问查询指定的配置文件即可得到对应的服务实例。
然而,随着容器化和微服务技术的发展,服务需求越来越多、服务规模越来越大、服务实例的数量也越来越多,从而使得服务实例分散分布在各个系统中,因此,依靠人工管理和维护服务实例地址、端口号等信息的难度越来越大,单点故障也开始凸显。
因此,一种动态的能够根据云环境自适应调整配置的服务注册中心,就显得至关重要。该服务注册中心,能够实现动态注册和获取服务信息,且能够统一管理服务网实例的地址和端口等信息。如此,客户端通过这个服务注册中心,就能够查找到对应的服务实例的地址和端口号等信息。相应地,若任一服务实例宕机或下线,则该服务实例可以自动地从注册中心移动,从而避免被客户端查询到无效的服务实例。
在微服务架构中,消息队列服务是一个重要的组成部分,其通常用来实现应用解耦、异步通信以及流量削峰等功能。其中,服务发现,也是消息队列服务能够实现的一种重要功能。
为了在云环境的微服务架构中提高服务实例发现的效率,通常的做法是采用DNS作为服务注册和发现模块使用,或者,直接引入或二次开发Zookeeper、Etcd、Consul等产品,并将它们作为服务注册和发现模块使用。
其中,DNS能够作为客户端与服务端之间的独立的负载均衡服务器,并且,DNS中可以记录所有服务实例的地址映射表。通常情况下,该地址映射表由运维人员负责维护,并由运维人员配置DNS域名。当客户端需要访问某个目标服务实例时,可以先通过DNS域名向负载均衡服务器发送请求,负载均衡服务器通过轮询、网络协议(Internet Protocol,IP)源等负载均衡算法确定目标服务实例,并将该请求转发至目标服务实例。
Zookeeper通过使用临时节点来实现服务注册和基本的健康检查功能。每当服务实例启动,就会在Zookeeper中注册一个临时节点。而当服务实例故障或下线,该临时节点会被Zookeeper自动删除。如果有其它服务实例依赖该服务实例,那么可以设置监听该服务实例的临时节点,当当前服务实例对应的临时节点被删除时,依赖该服务实例的其它服务实例会获得通知。
Etcd是一个基于Raft算法的高可用、强一致性的键-值(Key-Value)对存储仓库,其用于配置共享和服务发现。Etcd通过Key-Value进行服务注册,并通过设置Key的生存时间(Time To Live,TTL),定时保持服务心跳以达到监控健康状态效果,进而保证Key的有效性。当服务注册后,可以通过Etcd查找相应服务实例。一旦出现服务实例故障或下线,Key会等到TTL后失效,不允许该服务实例被查询到,从而达到服务实例摘除的效果。
Consul是一个基于Raft共识算法的、具备线性强一致性的Key-Value存储系统,其简化了分布式环境中的服务注册和发现流程。Consul作为服务注册中心,不但能够提供代理机制,还能协调服务注册、提供服务健康检查。并且代理会在每个运行服务的节点上启动,获取节点地址并将该服务注册到注册中心。
然而,对于采用DNS作为服务注册和发现模块的方法,其缺点在于,服务实例启动之后,将服务实例地址和端口号均注册到DNS服务器上都比较困难,且服务实例地址以及端口号都需要手动维护,效率较低;另一方面,负载均衡服务器采用轮询算法,从多个服务实例中选择一个服务实例作为目标服务实例,使得不能为当前的客户端指定某个目标服务实例;并且,采用DNS作为服务注册和发现模块,也无法创建客户端与某个服务实例之间的直接连接。
对于Zookeeper、Etcd、Consul而言,在服务实例启动之前,需要将服务实例的地址和端口号提前写入配置文件中。而在云原生环境中,服务实例的每次弹性扩缩之后,都需要根据服务实例的地址和端口号对配置文件手动修改,这样的维护方式效率低下;另一方面,在云原生环境中,对于客户端与服务端跨Kubernetes集群的情况,每个服务实例的外部地址向Zookeeper、Etcd以及Consul的注册过程晚于消息队列服务启动过程,从而导致不能将服务实例的对外地址自动注册到Zookeeper、Etcd以及Consul中,进而不能满足消息队列客户端以及消息队列服务端跨Kubernetes集群的数据请求场景。
基于以上问题,本发明实施例提供了一种应用于跨Kubernetes集群的云环境的跨集群数据请求处理方法,该方法能够被跨集群数据请求处理设备的处理器实现。
需要说明的是,上述处理器可以为特定用途集成电路(Application SpecificIntegrated Circuit,ASIC)、数字信号处理器(Digital Signal Processor,DSP)、数字信号处理装置(Digital Signal Processing Device,DSPD)、可编程逻辑装置(ProgrammableLogic Device,PLD)、现场可编程逻辑门阵列(Field Programmable Gate Array,FPGA)、中央处理器(Central Processing Unit,CPU)、控制器、微控制器、微处理器中的至少一种。
图1为本发明实施例提供的第一种跨集群数据请求处理方法的流程示意图。如图1所示,本发明实施例提供的跨集群数据请求处理方法,可以包括以下步骤:
步骤101、监控数据请求。
其中,数据请求与目标服务实例分布于不同的Kubernetes集群;目标服务实例能够处理数据请求。
在一种实施方式中,数据请求可以是来自云环境的第一Kubernetes集群的。
在一种实施方式中,数据请求的数量,可以是一个,也可以是多个。
在一种实施方式中,对数据请求的监控,可以是实时进行的。
在一种实施方式中,目标服务实例,可以是位于云环境的第二Kubernetes集群中的。
在一种实施方式中,能够处理数据请求的目标服务实例的数量,也可以是多个。
在一种实施方式中,目标服务实例,可以仅分布于第二Kubernetes集群中,还可以不仅分布在第二Kubernetes集群、还分布在第三Kubernetes集群,……,以及第NKubernetes集群中,也就是说,当前数据请求对应的目标服务实例,可以是多个服务实例,且多个服务实例,可以分布在不同的Kubernetes集群中,即当前数据请求对应的服务实例,也可以是跨Kubernetes集群分布的。其中,N为大于2的整数。
步骤102、在监控到数据请求的情况下,获取消息队列服务集群。
其中,消息队列服务集群中的每一消息队列服务,与云环境的Kubernetes集群一一对应;消息队列服务,用于管理每一Kubernetes集群中承载有服务实例的资源单元信息。
在一种实施方式中,消息队列服务集群中消息队列服务的个数,可以与云环境中Kubernetes集群的个数相同。
在一种实施方式中,消息队列服务集群中的每一消息队列服务,可以是云环境的每一Kubernetes集群的多个消息队列服务中的任意一个。
示例性的,为了实现高可用,可以第K Kubernetes集群所拥有的多个消息队列服务,可以为第K消息队列服务集群。并且,第K消息队列服务集群中,可以包括MK个消息队列服务,这MK个消息队列服务中所存储的数据能够保持同步。其中,K和MK均为大于或等于0的整数。
在一种实施方式中,资源单元,可以为Kubernetes集群中的调度以及资源单元。
在一种实施方式中,资源单元,可以为Kubernetes集群中的最小调度以及资源单元。示例性地,资源单元,可以是Pod。Kubernetes集群的核心功能就是运行Pod,Kubernetes集群中的其它组件则是为了Pod能够正常运行而设置的。
在一种实施方式中,资源单元信息,可以包括以下至少之一:资源单元的名称、资源单元标识符、资源单元地址、资源单元基本功能说明、资源单元所处的命名空间等。
在一种实施方式中,资源单元的名称以及资源单元标识符,可以是以字符串或数字的形式表示的。
在一种实施方式中,资源单元地址,可以是资源单元的IP地址,还可以包括资源单元的端口号。
在一种实施方式中,资源单元基本功能说明,可以是对资源单元中所承载的服务实例的基本功能的说明。
在一种实施方式中,资源单元所处的命名空间,可以是为资源单元所划分的逻辑空间。
在一种实施方式中,消息队列服务对Kubernetes集群中承载有服务实例的每一资源单元信息的管理,可以包括以下至少之一:
动态更新Kubernetes集群中承载有服务实例的每一资源单元信息;
实时监控Kubernetes集群中承载有服务实例的每一资源单元信息的变更;
根据云环境中的配置需求对承载有服务实例的资源单元信息进行配置;
根据服务实例能够提供的服务类型对其所对应的资源单元信息进行存储更新;
根据服务实例启动或创建时间对其所对应的资源单元信息进行存储更新;
根据服务实例响应数据请求的频率对其所对应的资源单元信息进行存储更新。
在一种实施方式中,获取消息队列服务集群,可以是通过云环境中配置的相关服务实现的。
示例性地,上述相关服务,可以将云环境中多个Kubernetes集群对应的消息队列服务集群管理起来,并提供获取消息队列服务集群的接口,当云环境检测到数据请求时,可以通过该接口获取消息队列服务集群。
在一种实施方式中,消息队列服务集群,可以是云环境中配置的相关服务、通过启动各个Kubernetes集群中对消息队列服务进行管理的服务而获取到的。
步骤103、基于数据请求以及消息队列服务集群,确定目标资源单元。
其中,目标资源单元中承载有目标服务实例。
在一种实施方式中,目标资源单元中,可以承载有多个目标服务实例。
在一种实施方式中,目标资源单元的个数,可以是一个,也可以是多个。
在一种实施方式中,目标资源单元,可以是通过以下方式确定的:解析数据请求,确定数据请求对应的服务实例类型或服务实例名称,根据服务实例类型或服务实例名称,向消息队列服务集群发起查询请求,消息队列服务集群获取到该查询请求之后,查询其所管理的资源单元信息,从而确定与数据请求对应的目标资源单元。
在一种实施方式中,目标资源单元,可以是通过以下方式确定的:解析数据请求,确定数据请求是否具备访问权限,若具备访问权限,则进一步从数据请求中获取其所请求的数据类型,根据数据类型确定与数据请求对应的服务实例属性信息,并根据服务实例属性信息向消息队列服务集群发起查询请求,消息队列服务集群根据该查询请求确定对应的目标资源单元。
步骤104、基于目标资源单元,处理数据请求。
在一种实施方式中,基于目标资源单元,处理数据请求,可以是从目标资源单元中确定目标服务实例之后,基于目标服务实例对数据请求进行处理的。
由以上可知,本发明实施例提供的应用于包含有多个Kubernetes集群的跨集群数据请求处理方法,监控到数据请求之后,能够获取到管理有多个Kubernetes集群中每一资源单元信息的消息队列服务集群,并根据数据请求以及消息队列服务集群,确定目标资源单元,最后根据目标资源单元处理该数据请求。
如此,本发明实施例提供的跨集群数据请求处理方法,通过云环境中用于管理每一Kubernetes集群中承载有服务实例的资源单元信息的消息队列服务集群,使得云环境中的任一Kubernetes集群、在接收到其它Kubernetes集群中发起的数据请求的情况下,都能够准确高效为该数据请求确定对应的目标资源单元,从而使得在客户端与服务端跨Kubernetes集群的情况下,也能够实现服务的准确快速提供。
基于前述实施例,本发明实施例提供了第二种应用于包含多个Kubernetes集群的跨集群数据请求处理方法。图2为本发明实施例提供的第二种跨集群数据请求处理方法流程示意图。
如图2所示,本发明实施例提供的跨集群数据请求处理方法,可以包括以下步骤:
步骤201、监控数据请求。
其中,数据请求与目标服务实例分布于不同的Kubernetes集群;目标服务实例能够处理数据请求。
示例性地,步骤201可以通过步骤A1-步骤A3来实现:
步骤A1、确定第一服务。
其中,第一服务,用于基于第一地址信息监控数据请求。
在一种实施方式中,第一地址可以为云环境提供服务的入口地址。示例性地,第一地址,可以包括以下至少之一:统一资源定位符(Uniform Resource Locator,URL)、IP地址、云环境提供的端口号等。
在一种实施方式中,第一地址信息,可以包括以下至少之一:第一地址的域名信息、第一地址的IP范围、第一地址的对数据请求的过滤条件、第一地址的有效时间等。
在一种实施方式中,第一地址信息,可以是云环境对各个Kubernetes集群中的资源单元进行汇总整理之后得到的。
在一种实施方式中,第一服务,还能够对第一地址信息中得到的数据请求进行初步分析,并根据分析结果将数据请求转发至与数据请求对应的Kubernetes集群。
在一种实施方式中,第一服务,可以是基于Kubernetes集群中的特定控制器的基础上创建的。示例性地,特定控制器,可以是根据云环境中对跨集群数据访问的需求、对云环境中的某些控制器进行扩展得到的。
在一种实时方式中,第一服务,能够对云环境中的每一Kubernetes集群的访问入口进行管理。
在一种实施方式中,第一服务,能够暴露云服务中的各个Kubernetes集群访问入口。示例性地,第一服务的类型可以是LoadBalancer、NodePort、Ingress等。
示例性地,步骤A1可以通过步骤B1-步骤B3来实现:
步骤B1、创建目标数据类型。
其中,目标数据类型,表示与跨集群的数据请求对应的数据类型。
在一种实施方式中,目标数据类型,可以与Kubernetes集群架构中所包含的数据类型完全不同。
在一种实施方式中,目标数据类型,可以是对Kubernetes集群现有的数据类型进行扩展或变更而得到的。
在一种实施方式中,目标数据类型,可以是根据Kubernetes集群中数据类型定义的要求而全新定义的,此时可以该目标数据类型为自定义数据类型,示例性地,可以记录为NewKind。
在一种实施方式中,目标数据类型,可以是通过编辑Yaml并执行Yaml文件而创建的。
示例性地,目标数据类型,可以表示跨集群的数据请求对应的数据类型,作为一种新的数据类型,在不影响云环境当前数据请求的处理流程的基础上,通过对数据请求类型的过滤,就可以实现跨集群的数据请求的处理,从而有利于云环境中数据请求方式的平稳过度。
示例性地,在步骤B1执行结束之后,还可以执行步骤C:
步骤C、配置与目标数据类型的数据请求的对应的运行空间。
在一种实施方式中,与目标数据类型的数据请求的对应的运行空间,可以是目标数据类型的数据请求的处理流程所对应的运行空间。
在一种实施方式中,与目标数据类型的数据请求的对应的运行空间,可以是逻辑运行空间,示例性地,可以是命名空间Namespace。
在一种实施方式中,与目标数据类型的数据请求的对应的运行空间,可以是通过执行Kubernetes集群的Yaml文件来创建的,如此,可以使得各种数据请求的处理流程,在Kubernetes集群的逻辑空间中互不干扰,从而在不更改Kubernetes集群硬件架构的基础上,实现了对跨集群的数据请求处理流程的隔离处理。
步骤B2、在云环境的每一Kubernetes集群中,部署监控目标数据类型的数据请求的控制器集群。
在一种实施方式中,监控目标数据类型的数据请求的控制器集群,可以是对Kubernetes集群中现有控制器进行扩展后得到的。
在一种实施方式中,监控目标数据类型的数据请求的控制器集群,可以是根据对目标类型的数据请求的监控需求,对Kubernetes集群中现有控制器进行扩展后得到的。
在一种实施方式中,监控目标数据类型的数据请求的控制器集群,可以是根据对目标类型的数据请求的监控需求,按照Kubernetes集群中控制器监控规则自定义控制器得到的。
在一种实施方式中,部署监控目标数据类型的数据请求的控制器集群,可以是通过执行Kubernetes集群的Yaml来实现的。
在一种实施方式中,部署监控目标数据类型的数据请求的控制器集群,可以是通过Deployment控制器,在Kubernetes集群部署监听NewKind类型的数据请求来实现的。
其中,Deployment控制器是用于管理无状态应用的,其可以运行应用的多个副本,并自动替换任何失败或无响应的实例。通过这种方式,Deployment控制器可以确保应用的一个或多个实例能够用于处理用户请求。相应的,通过Deployment控制器所创建的用于监控目标数据类型的数据请求的控制器集群,也能够实现高可用。
步骤B3、基于控制器集群,确定第一服务。
在一种实施方式中,第一服务,可以是在控制器集群创建完成之后,获取各个Kubernetes集群中控制器的入口,并基于这些入口确定的。
在一种实施方式中,第一服务,可以是在确定服务类型之后,结合各个Kubernetes集群中部署的能够监控目标数据类型的控制器的入口等参数,而确定的。
示例性地,第一服务,用于对每一Kubernetes集群中部署的能够监控目标数据类型的控制器集群的数据交互进行管理,即在接收到目标数据类型的数据请求时,将这些数据请求按照第一服务中约定的方式转发至对应的Kubernetes集群,当Kubernetes集群对数据请求处理之后,返回至第一服务,以供第一服务将数据请求处理结果返回至发起数据请求的客户端。
在一种实施方式中,第一服务,可以是第一服务集群中的任一第一服务,如此,可以实现第一服务的高可用。
步骤A2、基于第一服务,得到第一地址信息。
在一种实施方式中,在当前云环境的第一服务确定之后,第一服务对应的地址以及访问方式,即为确定的,因此,当第一服务确定之后,第一服务就可以结合当前云环境的整体配置信息,得到第一地址信息。
步骤A3、通过第一地址信息,监控数据请求。
在一种实施方式中,监控数据请求,可以是第一服务实时执行的操作。
在一种实施方式中,监控数据请求,也可以是第一服务按照目标数据类型的数据请求的监控策略而执行的。
步骤202、在监控到数据请求的情况下,获取消息队列服务集群。
其中,消息队列服务集群中的每一消息队列服务,与云环境的Kubernetes集群一一对应;消息队列服务,用于管理每一Kubernetes集群中承载有服务实例的资源单元信息。
在一种实施方式中,步骤202,可以通过步骤D1-步骤D2来实现:
步骤D1、确定第二服务。
其中,第二服务,用于管理消息队列服务集群。
在一种实施方式中,第二服务,可以是通过执行Kubernetes集群的Yaml文件来实现的。
示例性地,步骤D1可以是通过步骤E1-步骤E3来实现的:
步骤E1、创建目标数据类型。
其中,目标数据类型,表示与数据请求对应的数据类型。
此处的目标数据类型的创建过程,可以与前述实施例相同,且此处的目标数据类型,可以与前述实施例的目标数据创建过程为一个过程,此处不再赘述。
步骤E2、在云环境的每一Kubernetes集群中,部署与目标数据类型对应的消息队列服务集群。
在一种实施方式中,部署与目标数据类型对应的消息队列服务集群,可以是通过执行Kubernetes集群的Yaml文件来实现的。
示例性地,步骤E2可以通过步骤F1-步骤F2来实现:
步骤F1、确定第二地址信息。
其中,第二地址信息,包括每一Kubernetes集群中的每一资源单元的网络地址信息。
在一种实施方式中,第二地址信息,可以表示每一资源单元的非IP地址的网络地址信息。
示例性地,对于Kubernetes集群中的Pod而言,在Pod重建之后其IP地址有可能会发生改变,因此,基于Pod的IP地址对Pod进行搜索的方法,不利于服务实例的扩缩容。
示例性地,步骤F1可以通过步骤G1-步骤G2来实现:
步骤G1、确定第三服务。
其中,第三服务,用于将每一Kubernetes集群中的每一资源单元进行状态化管理。
在一种实施方式中,第三服务,可以是通过Kubernetes集群中的控制器来实现的。
在一种实施方式中,第三服务,可以是通过Kubernetes集群中能够使得Pod的属性信息相对固定的控制器来实现的。
在一种实施方式中,第三服务,可以是基于Kubernetes集群中的Statefulsets控制器来实现的。
其中,Statefulsets控制器适用于有状态管理的场景,其管理了基于相同容器定义的一组Pod,并为每个Pod维护了一个固定的网络标识。并且,这些Pod是基于相同的声明来创建的,但是无法相互替换,在实际应用中,无论如何调度,每个Pod的网络标识符都不会发生改变。这种稳定的唯一的网络标识符,有利于Pod信息的稳定和持久的存储,且有利于服务实例的有序部署和缩放,进而有利于Pod的有序自动滚动更新。
与Statefulsets控制器对应的是Headless Service,即无头服务,该服务不会分配集群IP地址,也不会通过kube-proxy做反向代理和负载均衡。而是通过DNS提供稳定的网络ID来访问,DNS会将Headless Service的后端直接解析为Pod的网络标识列表,以供StatefulSet控制器使用,从而能够直连后端的Pod。因此,在本发明实施例中,在通过Statefulsets控制器提供第三服务之前,还可以先创建一个Headless Service,以实现自定义控制器集群在接收到数据请求之后,将数据请求直接转发至后端的Pod处理。
在Kubernetes集群中,Service是一个应用服务抽象,其定义了Pod逻辑集合,以及访问这个Pod集合的策略,并且能够关联多个相同标签的Pod,通过LableSelector选择一组Pod提供服务。其对外的表现是能够为一个访问入口分配一个集群IP地址,来自这个IP地址的请求,将被执行负载均衡并转发之后Pod的容器中。
步骤G2、通过第三服务,为每一Kubernetes集群中的每一资源单元,确定第二地址信息。
在一种实施方式中,第二地址信息,可以是通过第三服务对资源单元的管理、而得到的资源单元的网络标识。
步骤F2、基于第二地址信息,在云环境的每一Kubernetes集群中,部署与目标数据类型对应的消息队列服务集群。
在一种实施方式中,消息队列服务集群,可以是通过执行目标数据类型的Yaml文件而部署的。
在一种实施方式中,消息队列服务集群中的任一消息队列服务在启动时,会自动在消息队列元数据中,通过资源单元的主机名获取并注册资源单元的网络标识,并且,同一Kubernetes集群中的多个消息队列服务实例之间,可以通过资源单元的网络标识进行通信和数据同步。
如此,在本发明实施例中的消息队列服务集群中,就可以稳定的存储有云环境中每一Kubernetes集群中的资源单元的网络标识,从而为资源单元中服务实例的准确发现奠定了基础,也为Kubernetes集群中服务实例的动态扩缩容提供了便利。
步骤E3、基于多个消息队列服务集群,确定第二服务。
示例性地,第二服务的类型,也可以是LoadBalancer、NodePort、Ingress等。
在一种实施方式中,第二服务,可以是对多个消息队列服务集群执行相对于云环境的访问接口暴露操作。
在一种实施方式中,第二服务,可以是在消息队列服务集群创建完成之后,获取消息队列服务集群中每一消息队列服务的入口,并基于这些入口确定的。
在一种实施方式中,第二服务,可以是在确定服务类型之后,结合各消息队列服务集群的入口等参数而确定的。
在一种实施方式中,第二服务,可以是第二服务集群中的任一第二服务,如此,可以实现第二服务的高可用。
步骤D2、通过第二服务,获取消息队列服务集群。
示例性地,当第一服务通过第一地址信息监控到数据请求之后,可以将数据请求发送至第二服务,第二服务接收到该数据请求之后,可以获取消息队列服务集群。
步骤203、基于消息队列服务集群对数据请求进行处理,得到主题集群信息。
其中,主题集群信息,包括目标Kubernetes集群的类型以及标识信息。
在一种实施方式中,目标Kubernetes集群,可以表示承载有目标服务实例的资源单元所在的集群。
在一种实施方式中,目标Kubernetes集群,可以包括至少两个Kubernetes集群。
在一种实施方式中,目标Kubernetes集群的类型,可以表示目标Kubernetes集群的资源单元中所承载的服务实例的类型。
在一种实施方式中,目标Kubernetes集群的类型,可以表示目标Kubernetes集群中资源单元所承载的服务实例对应的数据请求的类型。
在一种实施方式中,目标Kubernetes集群的标识信息,可以包括目标Kubernetes集群中每一Kubernetes集群的标识信息。示例性地,标识信息,可以为Kubernetes集群的网络标识信息。
示例性地,通过主题集群信息,可以得到目标Kubernetes集群的范围,从而为目标服务实例的快速确定奠定基础。
示例性地,步骤203,可以通过步骤H1-步骤H3来实现:
步骤H1、基于消息队列服务集群,对数据请求进行验证,得到验证结果。
在一种实施方式中,对数据请求进行验证,可以是通过Kubernetes集群的数据请求验证机制进行的。
在一种实施方式中,对数据请求进行验证,可以是通过Kubernetes集群中的能够监控目标数据类型的、数据请求的、控制器集群来实现的。
在一种实施方式中,对数据请求进行验证,可以是通过Kubernetes集群中能够监控目标数据类型的数据请求的控制器集群、调用Kubernetes集群中的服务来实现的。示例性地,上述控制器集群可以调用通过Headless Service调用消息队列元数据开放应用程序接口(Application Programming Interface,API),对数据请求的权限、密钥、令牌等至少之一进行验证。
步骤H2、在验证结果为验证成功的情况下,获取消息队列服务集群的配置信息。
其中,配置信息,包括消息队列服务集群对应的Kubernetes集群中的资源单元标识信息。
示例性地,在验证结果为验证失败的情况下,向发起数据请求的客户端返回数据请求失败的结果。
在一种实施方式中,消息队列服务集群的配置信息,可以包括每一消息队列服务的配置信息。
在一种实施方式中,每一消息队列服务的配置信息,用于描述每一消息队列的属性信息,比如,每一消息队列服务的创建时间、消息队列服务所管理的数据的类型等。
在一种实施方式中,消息队列服务所管理的数据的类型,可以包括消息队列所对应的Kubernetes集群所能够提供的服务实例的类型、以及服务实例的服务能力的描述说明等。
在一种实施方式中,资源单元标识信息,可以为资源单元的稳定不变的标识信息。示例性地,资源单元标识信息,可以为前述实施例所述的通过Statefulsets控制器得到的稳定不变的Pod的网络标识。
在一种实施方式中,消息队列服务集群的配置信息,可以是通过Kubernetes集群的配置信息获取机制进行的。
在一种实施方式中,消息队列服务集群的配置信息,可以是通过Kubernetes集群中的、能够监控目标数据类型的数据请求的控制器集群获取的。
在一种实施方式中,消息队列服务集群的配置信息,可以是通过Kubernetes集群中能够监控目标数据类型的数据请求的控制器集群、调用Kubernetes集群中的相关接口来实现的。示例性地,上述相关接口可以是消息队列元数据开放API而获取的。
步骤H3、基于配置信息,得到主题集群信息。
在一种实施方式中,基于配置信息与数据请求之间的匹配关系,就可以得到主题集群信息。
示例性地,对数据请求进行验证之前,还需要对数据请求进行解析,从而能够得到数据请求对应的服务实例的属性信息,根据该数据信息与配置信息之间的匹配关系,就可以得到主题集群信息。
步骤204、基于主题集群信息,确定目标资源单元。
示例性地,确定了主题集群信息,就可以得到管理目标资源单元信息的目标消息队列服务实例。示例性地,目标消息队列服务实例中消息队列服务实例的个数,可以为多个。
相应地,在确定了目标消息队列服务实例之后,可以基于数据请求的解析结果,在目标消息队列服务实例中查找对应的目标资源单元。
示例性地,步骤204,可以通过步骤J1-步骤J2来实现:
步骤J1、基于主题集群信息,在目标Kubernetes集群中查询资源单元状态信息。
在一种实施方式中,资源单元的状态,可以为存活状态、或非存活状态。
在一种实施方式中,基于主题集群信息,在目标消息队列服务实例中确定资源单元状态的信息,从而过滤出存活状态的资源单元,以便于提供稳定的数据处理服务。
步骤J2、基于资源单元状态信息,确定目标资源单元。
在一种实施方式中,在得到存活状态的资源单元状态后,可以根据该资源单元状态,在目标消息队列服务实例中,确定目标资源单元,同时,获取目标资源单元对应的网络标识以及端口号。并将目标资源单元的网络标识以及端口号添加至主题集群信息中。
步骤205、基于目标资源单元,处理数据请求。
示例性地,步骤205还可以通过步骤Q1-步骤Q3来实现:
步骤Q1、将目标资源单元的信息发送至客户端。
在一种实施方式中,将目标资源单元的信息发送至客户端,可以是通过以下方式实现的:
对目标资源单元的网络标识以及端口号等信息进行组合,得到目标资源单元的信息,并将目标资源单元的信息添加至主题集群信息中,通过第一地址信息,将主题集群信息发送至客户端。
示例性地,目标资源单元的信息,可以是通过能够监控目标数据类型的数据请求的控制器集群、将目标资源单元的网络标识以及端口号转换得到的目标资源单元的外部地址。相应地,主题集群信息中所包含的是目标资源单元的外部地址。
步骤Q2、接收客户端发送至目标资源单元的直连请求,建立客户端与目标资源单元之间的直连链路。
在一种实施方式中,客户端接收到的主题集群信息之后,从主题集群信息中获取目标资源单元的网络标识以及端口号,并基于该网络标识以及端口号向消息队列服务实例所管理的目标资源单元发起直连请求,从而建立起目标资源单元与客户端之间的直连链路。
步骤Q3、通过直连链路,基于目标资源单元,处理数据请求。
示例性地,本发明实施例提供的应用于包含多个Kubernetes集群的云环境的跨集群数据请求处理方法,可以由两部分组成,即服务实例的注册流程以及服务实例的发现流程。
图3为本发明实施例提供的跨集群数据请求处理方法中的服务实例的注册流程示意图。
图3所示的跨集群数据请求处理方法的服务实例注册流程,可以包括以下步骤:
步骤301、创建自定义资源类型。
示例性的,步骤301中的自定义资源类型,可以是前述实施例中所述的目标数据类型,即Newkind。自定义资源类型,可以是通过执行Kubernetes集群的Yaml文件来创建的。
步骤302、创建Namespace。
示例性地,步骤302中的Namespace,可以是前述实施例中所述的与目标数据类型的数据请求对应的运行空间。且Namespace可以通过执行Kubernetes集群的Yaml文件来实现。
步骤303、部署自定义控制器集群。
示例性地,自定义控制器集群,可以是如前述实施例中所述的监控目标数据类型的数据请求的控制器集群。具体的,自定义控制器集群,可以是通过执行Kubernetes集群的Yaml文件来部署,示例性地,可以是执行Yaml文件,通过Deployment控制器,在Kubernetes集群中部署自定义资源类型的自定义控制器集群。
步骤304、部署消息队列服务集群,服务实例启动时,自动注册集群内部DNS域名。
示例性地,为了实现高可用,每一Kubernetes集群可以部署一个消息队列服务集群,且集群内部DNS域名,可以包括服务实例的网络标识和端口号。
步骤305、为每个消息队列集群的Pod创建跨集群Service。
示例性地,为每个消息队列集群的Pod创建的跨集群Service,可以是如前述实施例所述的第二服务。
示例性地,第二服务所管理的每一Pod,具有稳定不变的网络标识,因而即使Pod重建,也不会改变网络标识,从而为通过消息队列服务集群稳定精确地确定目标Pod奠定了基础。
步骤306、创建自定义控制器跨集群Service。
示例性地,为每个自定义控制器创建的跨集群Service,可以是如前述实施例所述的第一服务。
通过以上服务注册流程,云平台的每一Kubernetes集群中的Pod都能够通过其网络标识稳定地被当前Kubernetes集群的消息队列服务集群管理起来,且云平台的每一Kubernetes集群,还能够提供跨集群的连接请求接收入口,从而为服务实例的精准发现奠定了基础。
相应地,图4为本发明实施例提供的跨集群数据请求处理方法中的服务实例的发现流程示意图。
图4所示的跨集群数据请求处理方法的服务实例发现流程,可以包括以下步骤:
步骤401、客户端向自定义控制器跨集群Service请求连接。
示例性地,客户端发送的请求连接,可以是如前述实施例所述的数据请求。
示例性地,自定义控制器跨集群Service,可以是如前述实施例所述的第一服务。
步骤402、自定义控制器跨集群Service接受请求,并转发到Pod处理。
步骤403、通过Headless Service调用消息队列元数据Open API对连接请求进行验证。
示例性地,调用消息队列元数据Open API,可以是自定义控制器集群通过Headless Service来执行的。此时,自定义控制器集群作为拦截器,对连接请求进行验证。
示例性地,对连接请求进行验证,可以是验证连接请求的权限、令牌、密钥等至少之一。
步骤404、调用消息队列元数据Open API,查询主题集群信息。
步骤405、过滤出存活Pod信息。
示例性地,存活Pod,可以是Kubernetes集群根据主题集群信息查询Kubernetes集群中所有Pod的存活状态后,并根据存活状态而过滤得到的。
示例性地,存活状态的Pod,可以包括多个Pod,将所有存活状态的Pod进行统计,从而可以得到存活Pod信息列表。
步骤406、存活Pod信息中的服务实例地址和端口号转换为跨集群服务地址和端口号。
示例性地,跨集群服务地址和端口号,可以存活Pod信息中的服务实例对外暴露的服务实例地址和端口号。
示例性地,将存活Pod信息中的服务实例地址和端口号、转换为跨集群服务地址和端口号,可以是通过自定义控制器集群来实现的。
示例性地,在得到服务实例跨集群服务地址和端口号之后,还可以将其添加至主题集群信息中。
步骤407、返回主题集群信息。
示例性地,此时的主题集群信息中,包含有跨集群的服务实例的服务地址和端口号。
示例性地,主题集群信息,可以直接返回至客户端。
步骤408、客户端直连消息队列Pod。
示例性地,客户端在获取到服务实例跨集群的服务地址和端口号之后,可以依据该服务地址和端口号,请求与目标Pod之间建立直连链路,示例性地,客户端与目标Pod之间可以建立传输控制协议(TCP,Transmission Control Protocol)连接。
由以上可知,在本发明实施例中,云环境接收到连接请求之后,通过第一服务可以将连接请求转发至任一Kubernetes集群,且每一自定义控制器集群,都能够通过调用消息队列服务集群的相关API对连接请求进行过滤,还能够确定连接请求对应的存活Pod,并将存活Pod信息中的网络标识转化为跨集群的服务实例地址和端口、以添加至主题集群信息,当主题集群信息发送至客户端之后,客户端能够根据主题集群信息中携带的服务实例地址和端口,精准快速地与服务实例建立直连连接。
由以上可知,本发明实施例提供的应用于包含多个Kubernetes集群的跨集群数据请求处理方法,在监控到数据请求的情况下,获取与云环境的Kubernetes集群一一对应的消息队列服务集群,并基于消息队列服务集群对数据请求进行处理,得到主题集群信息,然后基于主题集群信息,确定目标资源单元,最后基于目标资源单元,处理数据请求。
如此,本发明实施例提供的跨集群数据请求处理方法,在监控到来自其它集群的客户端发送的数据请求的情况下,通过与云环境中每一Kubernetes集群对应的、且用于管理每一Kubernetes集群中承载有服务实例的资源单元信息的、消息队列服务集群确定目标资源单元,然后基于目标资源单元,处理该数据请求,而目标资源单元中承载有目标服务实例,也就是说,本发明实施例提供的跨集群数据请求处理方法,云平台中的任一Kubernetes集群在接收到其它Kubernetes集群中的客户端发送的数据请求的情况下,能够快速精确地为数据请求精准确定对应的目标服务实例,从而能够灵活便捷地为任一客户端提供服务。
基于前述实施例,本发明实施例提供了一种跨集群数据请求处理设备5,该设备应用于包含多个Kubernetes集群的云环境中。
图5为本发明实施例提供的跨集群数据请求处理设备5的结构示意图。
如图5所示,该跨集群数据请求处理设备5包括:监控模块501、处理模块502以及确定模块503,其中:
监控模块501,用于监控数据请求;其中,数据请求与目标服务实例对应的服务分布于不同的Kubernetes集群中;目标服务实例能够处理数据请求。
处理模块502,用于在监控到数据请求的情况下,获取消息队列服务集群。其中,消息队列服务集群中的每一消息队列服务,与云环境的Kubernetes集群一一对应;消息队列服务,用于管理每一Kubernetes集群中资源单元。
确定模块503,用于基于数据请求以及消息队列服务集群,确定目标资源单元;其中,目标资源单元中承载有目标服务实例。
处理模块502,用于基于目标资源单元,处理数据请求。
在一些实施方式中,处理模块502,用于基于消息队列服务集群对数据请求进行处理,得到主题集群信息;其中,主题集群信息,包括目标Kubernetes集群的类型以及标识信息;目标Kubernetes集群,包括至少两个Kubernetes集群。
处理模块502,还用于基于主题集群信息,确定目标资源单元。
在一些实施方式中,处理模块502,用于基于主题集群信息,在目标Kubernetes集群中查询资源单元状态信息。
处理模块502,还用于基于资源单元状态信息,确定目标资源单元。
在一些实施方式中,处理模块502,用于基于消息队列服务集群,对数据请求进行验证,得到验证结果。
处理模块502,还用于在验证结果为验证成功的情况下,获取消息队列服务集群的配置信息;其中,配置信息,包括消息队列服务集群对应的Kubernetes集群中的资源单元标识信息。
处理模块502,还用于基于配置信息,得到主题集群信息。
在一些实施方式中,处理模块502,用于确定第一服务;其中,第一服务,用于基于第一地址信息监控数据请求。
处理模块502,还用于基于第一服务,得到第一地址信息。
监控模块501,用于通过第一地址信息,监控数据请求。
在一些实施方式中,处理模块502,用于创建目标数据类型;其中,目标数据类型,表示与跨集群的数据请求对应的数据类型。
处理模块502,还用于在云环境的每一Kubernetes集群中,部署监控目标数据类型的数据请求的控制器集群。
确定模块503,用于基于控制器集群,确定第一服务。
在一些实施方式中,处理模块502,用于配置与目标数据类型的数据请求对应的运行空间。
在一些实施方式中,处理模块502,用于确定第二服务;其中,第二服务,用于管理消息队列服务集群。
处理模块502,还用于通过第二服务,获取消息队列服务集群。
在一些实施方式中,处理模块502,用于创建目标数据类型;其中,目标数据类型,表示与数据请求对应的数据类型。
处理模块502,还用于在云环境的每一Kubernetes集群中,部署与目标数据类型对应的消息队列服务集群。
确定模块503,用于基于多个消息队列服务集群,确定第二服务。
在一些实施方式中,确定模块503,用于确定第二地址信息;其中,第二地址信息,包括每一Kubernetes集群中的每一资源单元的网络地址信息。
处理模块502,用于基于第二地址信息,在云环境的每一Kubernetes集群中,部署与目标数据类型对应的消息队列服务集群。
在一些实施方式中,确定模块503,用于确定第三服务;其中,第三服务,用于将每一Kubernetes集群中的每一资源单元进行状态化管理。
确定模块503,还用于通过第三服务,为每一Kubernetes集群中的每一资源单元,确定第二地址信息。
在一些实施方式中,跨集群数据请求处理设备5还包括发送模块,用于将目标资源单元的信息发送至客户端。
跨集群数据请求处理设备5还包括接收模块,用于接收客户端发送至目标资源单元的直连请求,建立客户端与目标资源单元之间的直连链路。
处理模块502,用于通过直连链路,基于目标资源单元,处理数据请求。
在实际应用中,上述监控模块501、处理模块502以及确定模块503均可由位于跨集群数据请求处理设备中的处理器实现,上述处理器为ASIC、DSP、DSPD、PLD、FPGA、CPU、控制器、微控制器、微处理器中的至少一种。
如此,本发明实施例提供的跨集群数据请求处理设备5,通过管理每一Kubernetes集群中承载有服务实例的资源单元信息的消息队列服务集群,使得云环境中的任一Kubernetes集群、都能够在接收到其它Kubernetes集群中发起的数据请求的情况下,准确高效为该数据请求确定对应的目标资源单元,从而使得客户端与服务端跨Kubernetes集群的情况下,也能够实现服务的准确快速提供。
基于前述实施例,本发明实施例还提供了一种跨集群数据请求处理设备6。
图6为本发明实施例提供的跨集群数据请求处理设备6的结构示意图。如图6所示,跨集群数据请求处理设备6可以包括处理器601和存储器602,其中,存储器602中存储有计算机程序,该计算机程序被处理器601执行时,能够实现如前任一实施例所示的跨集群数据请求处理方法。
其中,上述处理器601可以为特定用途集成电路ASIC、DSP、DSPD、PLD、FPGA、CPU、控制器、微控制器、微处理器中的至少一种。可以理解地,用于实现上述处理器功能的电子器件还可以为其它,本发明实施例不作具体限定。
上述存储器602,可以是易失性存储器(volatile memory),例如RAM;或者非易失性存储器(non-volatile memory),例如ROM,快闪存储器(flash memory,硬盘(Hard DiskDrive,HDD)或固态硬盘(Solid-State Drive,SSD);或者上述种类的存储器的组合,并向处理器提供指令和数据。
基于前述实施例,本发明实施例还提供了一种计算机可读存储介质,该计算机可读存储介质中存储有计算机程序,该计算机程序能够被处理器执行,以实现如前任一实施例所示的跨集群数据请求处理方法。
在一些实施例中,本申请实施例提供的装置具有的功能或包含的模块可以用于执行上文方法实施例描述的方法,其具体实现可以参照上文方法实施例的描述,为了简洁,这里不再赘述。
上文对各个实施例的描述倾向于强调各个实施例之间的不同之处,其相同或相似之处可以互相参考,为了简洁,本文不再赘述。
本发明所提供的各方法实施例中所揭露的方法,在不冲突的情况下可以任意组合,得到新的方法实施例。
本发明所提供的各产品实施例中所揭露的特征,在不冲突的情况下可以任意组合,得到新的产品实施例。
本发明所提供的各方法或设备实施例中所揭露的特征,在不冲突的情况下可以任意组合,得到新的方法实施例或设备实施例。
需要说明的是,上述计算机可读存储介质可以是只读存储器(Read Only Memory,ROM)、可编程只读存储器(Programmable Read-Only Memory,PROM)、可擦除可编程只读存储器(Erasable Programmable Read-Only Memory,EPROM)、电可擦除可编程只读存储器(Electrically Erasable Programmable Read-Only Memory,EEPROM)、磁性随机存取存储器(Ferromagnetic Random Access Memory,FRAM)、快闪存储器(Flash Memory)、磁表面存储器、光盘、或只读光盘(Compact Disc Read-Only Memory,CD-ROM)等存储器;也可以是包括上述存储器之一或任意组合的各种电子设备,如移动电话、计算机、平板设备、个人数字助理等。
需要说明的是,在本文中,术语“包括”、“包含”或者其任何其它变体意在涵盖非排他性的包含,从而使得包括一系列要素的过程、方法、物品或者装置不仅包括那些要素,而且还包括没有明确列出的其它要素,或者是还包括为这种过程、方法、物品或者装置所固有的要素。在没有更多限制的情况下,由语句“包括一个……”限定的要素,并不排除在包括该要素的过程、方法、物品或者装置中还存在另外的相同要素。
上述本发明实施例序号仅仅为了描述,不代表实施例的优劣。
通过以上的实施方式的描述,本领域的技术人员可以清楚地了解到上述实施例方法可借助软件加必需的通用硬件平台的方式来实现,当然也可以通过硬件,但很多情况下前者是更佳的实施方式。基于这样的理解,本发明的技术方案本质上或者说对现有技术做出贡献的部分可以以软件产品的形式体现出来,该计算机软件产品存储在一个存储介质(如ROM/RAM、磁碟、光盘)中,包括若干指令用以使得一台终端设备(可以是手机,计算机,服务器,空调器,或者网络设备等)执行本发明各个实施例所描述的方法。
本发明是参照根据本发明实施例的方法、设备(系统)、和计算机程序产品的流程图和/或方框图来描述的。应理解可由计算机程序指令实现流程图和/或方框图中的每一流程和/或方框、以及流程图和/或方框图中的流程和/或方框的结合。可提供这些计算机程序指令到通用计算机、专用计算机、嵌入式处理机或其它可编程数据处理设备的处理器以产生一个机器,使得通过计算机或其它可编程数据处理设备的处理器执行的指令产生用于实现在流程图一个流程或多个流程和/或方框图一个方框或多个方框中指定的功能的装置。
这些计算机程序指令也可存储在能引导计算机或其它可编程数据处理设备以特定方式工作的计算机可读存储器中,使得存储在该计算机可读存储器中的指令产生包括指令装置的制造品,该指令装置实现在流程图一个流程或多个流程和/或方框图一个方框或多个方框中指定的功能。
这些计算机程序指令也可装载到计算机或其它可编程数据处理设备上,使得在计算机或其它可编程设备上执行一系列操作步骤以产生计算机实现的处理,从而在计算机或其它可编程设备上执行的指令提供用于实现在流程图一个流程或多个流程和/或方框图一个方框或多个方框中指定的功能的步骤。
以上仅为本发明的优选实施例,并非因此限制本发明的专利范围,凡是利用本发明说明书及附图内容所作的等效结构或等效流程变换,或直接或间接运用在其它相关的技术领域,均同理包括在本发明的专利保护范围内。
Claims (15)
1.一种跨集群数据请求处理方法,其特征在于,所述方法应用于包含多个Kubernetes集群的云环境,所述方法包括:
监控数据请求;其中,所述数据请求与目标服务实例分布于不同的Kubernetes集群;所述目标服务实例能够处理所述数据请求;
在监控到所述数据请求的情况下,获取消息队列服务集群;其中,所述消息队列服务集群中的每一消息队列服务,与所述云环境的Kubernetes集群一一对应;所述消息队列服务,用于管理每一所述Kubernetes集群中承载有服务实例的资源单元信息;
基于所述数据请求以及所述消息队列服务集群,确定目标资源单元;其中,所述目标资源单元中承载有所述目标服务实例;
基于所述目标资源单元,处理所述数据请求。
2.根据权利要求1所述的方法,其特征在于,所述基于所述数据请求以及所述消息队列服务集群,确定目标资源单元,包括:
基于所述消息队列服务集群对所述数据请求进行处理,得到主题集群信息;其中,所述主题集群信息,包括目标Kubernetes集群的类型以及标识信息;所述目标Kubernetes集群,包括至少两个Kubernetes集群;
基于所述主题集群信息,确定所述目标资源单元。
3.根据权利要求2所述的方法,其特征在于,所述基于所述主题集群信息,确定所述目标资源单元,包括:
基于所述主题集群信息,在所述目标Kubernetes集群中查询资源单元状态信息;
基于所述资源单元状态信息,确定所述目标资源单元。
4.根据权利要求2所述的方法,其特征在于,所述基于所述消息队列服务集群对所述数据请求进行处理,得到主题集群信息,包括:
基于所述消息队列服务集群,对所述数据请求进行验证,得到验证结果;
在所述验证结果为验证成功的情况下,获取所述消息队列服务集群的配置信息;其中,所述配置信息,包括所述消息队列服务集群对应的Kubernetes集群中的资源单元标识信息;
基于所述配置信息,得到所述主题集群信息。
5.根据权利要求1所述的方法,其特征在于,所述监控数据请求,包括:
确定第一服务;其中,所述第一服务,用于基于第一地址信息监控所述数据请求;
基于所述第一服务,得到所述第一地址信息;
通过所述第一地址信息,监控所述数据请求。
6.根据权利要求5所述的方法,其特征在于,所述确定第一服务,包括:
创建目标数据类型;其中,所述目标数据类型,表示与跨集群的数据请求对应的数据类型;
在所述云环境的每一Kubernetes集群中,部署监控所述目标数据类型的数据请求的控制器集群;
基于所述控制器集群,确定所述第一服务。
7.根据权利要求6所述的方法,其特征在于,所述部署监控所述目标数据类型的数据请求的控制器集群之前,还包括:
配置与所述目标数据类型的数据请求对应的运行空间。
8.根据权利要求1所述的方法,其特征在于,所述获取消息队列服务集群,包括:
确定第二服务;其中,所述第二服务,用于管理所述消息队列服务集群;
通过所述第二服务,获取所述消息队列服务集群。
9.根据权利要求8所述的方法,其特征在于,所述确定第二服务,包括:
创建目标数据类型;其中,所述目标数据类型,表示与所述数据请求对应的数据类型;
在所述云环境的每一Kubernetes集群中,部署与所述目标数据类型对应的所述消息队列服务集群;
基于多个所述消息队列服务集群,确定所述第二服务。
10.根据权利要求9所述的方法,其特征在于,所述部署与所述目标数据类型对应的所述消息队列服务集群,包括:
确定第二地址信息;其中,所述第二地址信息,包括每一所述Kubernetes集群中的每一资源单元的网络地址信息;
基于所述第二地址信息,在所述云环境的每一Kubernetes集群中,部署与所述目标数据类型对应的所述消息队列服务集群。
11.根据权利要求10所述的方法,其特征在于,所述确定第二地址信息,包括:
确定第三服务;其中,所述第三服务,用于将每一所述Kubernetes集群中的每一资源单元进行状态化管理;
通过第三服务,为每一所述Kubernetes集群中的每一资源单元,确定所述第二地址信息。
12.根据权利要求1所述的方法,其特征在于,所述基于所述目标资源单元,处理所述数据请求,包括:
将所述目标资源单元的信息发送至客户端;
接收所述客户端发送至所述目标资源单元的直连请求,建立所述客户端与所述目标资源单元之间的直连链路;
通过所述直连链路,基于所述目标资源单元,处理所述数据请求。
13.一种跨集群数据请求处理设备,其特征在于,所述设备应用于包含多个Kubernetes集群的云环境中,所述设备包括:监控模块、处理模块以及确定模块,其中:
所述监控模块,用于监控数据请求;其中,所述数据请求与目标服务实例对应的服务分布于不同的Kubernetes集群中;所述目标服务实例能够处理所述数据请求;
所述处理模块,用于在监控到所述数据请求的情况下,获取消息队列服务集群;其中,所述消息队列服务集群中的每一消息队列服务,与所述云环境的Kubernetes集群一一对应;所述消息队列服务,用于管理每一所述Kubernetes集群中资源单元;
所述确定模块,用于基于所述数据请求以及所述消息队列服务集群,确定目标资源单元;其中,所述目标资源单元中承载有所述目标服务实例;
所述处理模块,用于基于所述目标资源单元,处理所述数据请求。
14.一种跨集群数据请求处理设备,其特征在于,所述设备处理器和存储器;其中,所述存储器中存储有计算机程序,所述计算机程序被所述处理器执行时实现如权利要求1-12任一所述的跨集群数据请求处理方法。
15.一种计算机可读存储介质,其特征在于,所述计算机可读存储介质中存储有计算机程序,所述计算机程序能够被处理器执行,以实现如权利要求1-12任一所述的跨集群数据请求处理方法。
Priority Applications (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
CN202011225818.5A CN113746887B (zh) | 2020-11-05 | 2020-11-05 | 一种跨集群数据请求处理方法、设备及存储介质 |
Applications Claiming Priority (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
CN202011225818.5A CN113746887B (zh) | 2020-11-05 | 2020-11-05 | 一种跨集群数据请求处理方法、设备及存储介质 |
Publications (2)
Publication Number | Publication Date |
---|---|
CN113746887A true CN113746887A (zh) | 2021-12-03 |
CN113746887B CN113746887B (zh) | 2024-06-18 |
Family
ID=78728142
Family Applications (1)
Application Number | Title | Priority Date | Filing Date |
---|---|---|---|
CN202011225818.5A Active CN113746887B (zh) | 2020-11-05 | 2020-11-05 | 一种跨集群数据请求处理方法、设备及存储介质 |
Country Status (1)
Country | Link |
---|---|
CN (1) | CN113746887B (zh) |
Cited By (14)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN113992758A (zh) * | 2021-12-27 | 2022-01-28 | 杭州金线连科技有限公司 | 一种系统数据资源的动态调度方法、装置及电子设备 |
CN114338769A (zh) * | 2021-12-22 | 2022-04-12 | 浙江中控技术股份有限公司 | 访问请求的处理方法及装置 |
CN114363332A (zh) * | 2021-12-27 | 2022-04-15 | 徐工汉云技术股份有限公司 | 一种基于分布式的网关远程自动化运维方法 |
CN114422492A (zh) * | 2022-01-17 | 2022-04-29 | 星环信息科技(上海)股份有限公司 | 一种请求转发方法、设备及存储介质 |
CN114710311A (zh) * | 2022-02-11 | 2022-07-05 | 浙江高信技术股份有限公司 | 一种多项目消息管理方法和系统 |
CN114745378A (zh) * | 2022-02-14 | 2022-07-12 | 优刻得科技股份有限公司 | 基于边缘云场景的函数模块分发方法及系统 |
CN114826964A (zh) * | 2022-04-11 | 2022-07-29 | 京东科技信息技术有限公司 | 一种资源监控方法、装置和系统 |
CN114938394A (zh) * | 2022-04-13 | 2022-08-23 | 京东科技信息技术有限公司 | 跨集群网络控制方法、装置、设备及存储介质 |
CN115174657A (zh) * | 2022-06-13 | 2022-10-11 | 青岛中科曙光科技服务有限公司 | 微服务应用调用方法、装置、计算机设备及存储介质 |
CN115297066A (zh) * | 2022-07-23 | 2022-11-04 | 杭州半云科技有限公司 | 一种资源动态协同方法、装置、服务器及介质 |
CN115499444A (zh) * | 2022-09-14 | 2022-12-20 | 中国建设银行股份有限公司 | 跨集群负载均衡的方法、装置、设备和存储介质 |
CN116112569A (zh) * | 2023-02-23 | 2023-05-12 | 安超云软件有限公司 | 微服务调度方法及管理系统 |
CN117149396A (zh) * | 2023-10-31 | 2023-12-01 | 北京比格大数据有限公司 | 一种集群故障转移方法及装置、设备及存储介质 |
US20240028640A1 (en) * | 2022-07-25 | 2024-01-25 | Sap Se | Image scaling cloud database |
Citations (10)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
EP0942363A2 (en) * | 1998-03-11 | 1999-09-15 | International Business Machines Corporation | Method and apparatus for controlling the number of servers in a multisystem cluster |
CN105681217A (zh) * | 2016-04-27 | 2016-06-15 | 深圳市中润四方信息技术有限公司 | 用于容器集群的动态负载均衡方法及系统 |
CN107508795A (zh) * | 2017-07-26 | 2017-12-22 | 中国联合网络通信集团有限公司 | 跨容器集群的访问处理装置及方法 |
CN109558446A (zh) * | 2018-12-13 | 2019-04-02 | 杭州数梦工场科技有限公司 | 作业请求方法、装置、电子设备及存储介质 |
CN109660607A (zh) * | 2018-12-05 | 2019-04-19 | 北京金山云网络技术有限公司 | 一种业务请求分发方法、接收方法、装置及服务器集群 |
CN110120979A (zh) * | 2019-05-20 | 2019-08-13 | 华为技术有限公司 | 一种调度方法、装置及相关设备 |
CN110474940A (zh) * | 2018-05-10 | 2019-11-19 | 北京金山安全软件有限公司 | 请求调度方法、装置、电子设备、及介质 |
CN110941474A (zh) * | 2018-09-25 | 2020-03-31 | 北京京东尚科信息技术有限公司 | Hadoop与Kubernetes系统共享计算资源的方法、系统、设备及存储介质 |
CN111726388A (zh) * | 2019-03-22 | 2020-09-29 | 苏宁易购集团股份有限公司 | 一种跨集群高可用的实现方法、装置、系统及设备 |
CN111885123A (zh) * | 2020-07-06 | 2020-11-03 | 苏州浪潮智能科技有限公司 | 一种跨K8s目标服务访问通道的构建方法及装置 |
-
2020
- 2020-11-05 CN CN202011225818.5A patent/CN113746887B/zh active Active
Patent Citations (10)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
EP0942363A2 (en) * | 1998-03-11 | 1999-09-15 | International Business Machines Corporation | Method and apparatus for controlling the number of servers in a multisystem cluster |
CN105681217A (zh) * | 2016-04-27 | 2016-06-15 | 深圳市中润四方信息技术有限公司 | 用于容器集群的动态负载均衡方法及系统 |
CN107508795A (zh) * | 2017-07-26 | 2017-12-22 | 中国联合网络通信集团有限公司 | 跨容器集群的访问处理装置及方法 |
CN110474940A (zh) * | 2018-05-10 | 2019-11-19 | 北京金山安全软件有限公司 | 请求调度方法、装置、电子设备、及介质 |
CN110941474A (zh) * | 2018-09-25 | 2020-03-31 | 北京京东尚科信息技术有限公司 | Hadoop与Kubernetes系统共享计算资源的方法、系统、设备及存储介质 |
CN109660607A (zh) * | 2018-12-05 | 2019-04-19 | 北京金山云网络技术有限公司 | 一种业务请求分发方法、接收方法、装置及服务器集群 |
CN109558446A (zh) * | 2018-12-13 | 2019-04-02 | 杭州数梦工场科技有限公司 | 作业请求方法、装置、电子设备及存储介质 |
CN111726388A (zh) * | 2019-03-22 | 2020-09-29 | 苏宁易购集团股份有限公司 | 一种跨集群高可用的实现方法、装置、系统及设备 |
CN110120979A (zh) * | 2019-05-20 | 2019-08-13 | 华为技术有限公司 | 一种调度方法、装置及相关设备 |
CN111885123A (zh) * | 2020-07-06 | 2020-11-03 | 苏州浪潮智能科技有限公司 | 一种跨K8s目标服务访问通道的构建方法及装置 |
Non-Patent Citations (1)
Title |
---|
平凡;陈莉君;: "基于Kubernetes的动态负载均衡机制研究与设计", 计算机与数字工程, no. 01, 20 January 2020 (2020-01-20) * |
Cited By (23)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN114338769A (zh) * | 2021-12-22 | 2022-04-12 | 浙江中控技术股份有限公司 | 访问请求的处理方法及装置 |
CN114338769B (zh) * | 2021-12-22 | 2024-04-12 | 浙江中控技术股份有限公司 | 访问请求的处理方法及装置 |
CN114363332B (zh) * | 2021-12-27 | 2024-01-23 | 徐工汉云技术股份有限公司 | 一种基于分布式的网关远程自动化运维方法 |
CN114363332A (zh) * | 2021-12-27 | 2022-04-15 | 徐工汉云技术股份有限公司 | 一种基于分布式的网关远程自动化运维方法 |
CN113992758A (zh) * | 2021-12-27 | 2022-01-28 | 杭州金线连科技有限公司 | 一种系统数据资源的动态调度方法、装置及电子设备 |
CN114422492A (zh) * | 2022-01-17 | 2022-04-29 | 星环信息科技(上海)股份有限公司 | 一种请求转发方法、设备及存储介质 |
CN114422492B (zh) * | 2022-01-17 | 2023-12-12 | 星环信息科技(上海)股份有限公司 | 一种请求转发方法、设备及存储介质 |
CN114710311B (zh) * | 2022-02-11 | 2024-01-02 | 浙江高信技术股份有限公司 | 一种多项目消息管理方法和系统 |
CN114710311A (zh) * | 2022-02-11 | 2022-07-05 | 浙江高信技术股份有限公司 | 一种多项目消息管理方法和系统 |
CN114745378A (zh) * | 2022-02-14 | 2022-07-12 | 优刻得科技股份有限公司 | 基于边缘云场景的函数模块分发方法及系统 |
CN114745378B (zh) * | 2022-02-14 | 2024-05-28 | 优刻得科技股份有限公司 | 基于边缘云场景的函数模块分发方法及系统 |
CN114826964A (zh) * | 2022-04-11 | 2022-07-29 | 京东科技信息技术有限公司 | 一种资源监控方法、装置和系统 |
CN114826964B (zh) * | 2022-04-11 | 2024-04-05 | 京东科技信息技术有限公司 | 一种资源监控方法、装置和系统 |
CN114938394B (zh) * | 2022-04-13 | 2024-05-17 | 京东科技信息技术有限公司 | 跨集群网络控制方法、装置、设备及存储介质 |
CN114938394A (zh) * | 2022-04-13 | 2022-08-23 | 京东科技信息技术有限公司 | 跨集群网络控制方法、装置、设备及存储介质 |
CN115174657A (zh) * | 2022-06-13 | 2022-10-11 | 青岛中科曙光科技服务有限公司 | 微服务应用调用方法、装置、计算机设备及存储介质 |
CN115297066A (zh) * | 2022-07-23 | 2022-11-04 | 杭州半云科技有限公司 | 一种资源动态协同方法、装置、服务器及介质 |
US20240028640A1 (en) * | 2022-07-25 | 2024-01-25 | Sap Se | Image scaling cloud database |
US11914637B2 (en) * | 2022-07-25 | 2024-02-27 | Sap Se | Image scaling cloud database |
CN115499444A (zh) * | 2022-09-14 | 2022-12-20 | 中国建设银行股份有限公司 | 跨集群负载均衡的方法、装置、设备和存储介质 |
CN116112569A (zh) * | 2023-02-23 | 2023-05-12 | 安超云软件有限公司 | 微服务调度方法及管理系统 |
CN117149396B (zh) * | 2023-10-31 | 2024-01-19 | 北京比格大数据有限公司 | 一种集群故障转移方法及装置、设备及存储介质 |
CN117149396A (zh) * | 2023-10-31 | 2023-12-01 | 北京比格大数据有限公司 | 一种集群故障转移方法及装置、设备及存储介质 |
Also Published As
Publication number | Publication date |
---|---|
CN113746887B (zh) | 2024-06-18 |
Similar Documents
Publication | Publication Date | Title |
---|---|---|
CN113746887B (zh) | 一种跨集群数据请求处理方法、设备及存储介质 | |
US10715485B2 (en) | Managing dynamic IP address assignments | |
CN109688235B (zh) | 虚拟网络业务处理方法、装置和系统,控制器,存储介质 | |
US10146848B2 (en) | Systems and methods for autonomous, scalable, and distributed database management | |
US20220094761A1 (en) | Server Invocation Method and Proxy Server | |
CN110381163B (zh) | 网关节点转发服务请求的方法及网关节点 | |
CN112199419B (zh) | 一种分布式时序数据库、存储方法、设备及存储介质 | |
CN109391592B (zh) | 网络功能服务的发现方法及设备 | |
CN105993161B (zh) | 用于解析地址的元件、方法、系统和计算机可读存储设备 | |
US10992575B2 (en) | Assignment of internet protocol addresses to services | |
US10069941B2 (en) | Scalable event-based notifications | |
CN113810230A (zh) | 对容器集群中的容器进行网络配置的方法、装置及系统 | |
CN115150410B (zh) | 多集群访问方法和系统 | |
CN112187958A (zh) | 微服务注册、发现转发的方法及装置 | |
US20040143654A1 (en) | Node location management in a distributed computer system | |
KR20190076836A (ko) | 분산 캐싱 시스템 및 방법 | |
CN112583760B (zh) | 一种对象存储的访问方法、装置、设备和计算机存储介质 | |
CN115242882A (zh) | 一种基于传输层路由访问k8s容器环境的方法及装置 | |
US20240015135A1 (en) | Domain management and synchronization system | |
CN114466011A (zh) | 一种元数据服务请求方法、装置、设备及介质 | |
US9841929B1 (en) | Distributed system software infrastructure | |
US9019964B2 (en) | Methods and systems for routing application traffic | |
CN118051342A (zh) | 一种在局域网环境下创建k8s负载均衡的方法、系统、设备 | |
US10417093B2 (en) | Methods for providing global spare data storage device management and devices thereof | |
Tirkkonen | Utilising configuration management node data for network infrastructure management |
Legal Events
Date | Code | Title | Description |
---|---|---|---|
PB01 | Publication | ||
PB01 | Publication | ||
SE01 | Entry into force of request for substantive examination | ||
SE01 | Entry into force of request for substantive examination | ||
GR01 | Patent grant | ||
GR01 | Patent grant |