CN113778623B - 资源处理方法和装置、电子设备及存储介质 - Google Patents

资源处理方法和装置、电子设备及存储介质 Download PDF

Info

Publication number
CN113778623B
CN113778623B CN202110991387.1A CN202110991387A CN113778623B CN 113778623 B CN113778623 B CN 113778623B CN 202110991387 A CN202110991387 A CN 202110991387A CN 113778623 B CN113778623 B CN 113778623B
Authority
CN
China
Prior art keywords
instance object
server cluster
target
resource
target instance
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.)
Active
Application number
CN202110991387.1A
Other languages
English (en)
Other versions
CN113778623A (zh
Inventor
孙晓飞
Current Assignee (The listed assignees may be inaccurate. Google has not performed a legal analysis and makes no representation or warranty as to the accuracy of the list.)
Beijing Dajia Internet Information Technology Co Ltd
Original Assignee
Beijing Dajia Internet Information Technology Co Ltd
Priority date (The priority date 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 date listed.)
Filing date
Publication date
Application filed by Beijing Dajia Internet Information Technology Co Ltd filed Critical Beijing Dajia Internet Information Technology Co Ltd
Priority to CN202110991387.1A priority Critical patent/CN113778623B/zh
Publication of CN113778623A publication Critical patent/CN113778623A/zh
Application granted granted Critical
Publication of CN113778623B publication Critical patent/CN113778623B/zh
Active legal-status Critical Current
Anticipated expiration legal-status Critical

Links

Classifications

    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F9/00Arrangements for program control, e.g. control units
    • G06F9/06Arrangements for program control, e.g. control units using stored programs, i.e. using an internal store of processing equipment to receive or retain programs
    • G06F9/44Arrangements for executing specific programs
    • G06F9/455Emulation; Interpretation; Software simulation, e.g. virtualisation or emulation of application or operating system execution engines
    • G06F9/45533Hypervisors; Virtual machine monitors
    • G06F9/45558Hypervisor-specific management and integration aspects
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F9/00Arrangements for program control, e.g. control units
    • G06F9/06Arrangements for program control, e.g. control units using stored programs, i.e. using an internal store of processing equipment to receive or retain programs
    • G06F9/44Arrangements for executing specific programs
    • G06F9/455Emulation; Interpretation; Software simulation, e.g. virtualisation or emulation of application or operating system execution engines
    • G06F9/45533Hypervisors; Virtual machine monitors
    • G06F9/45558Hypervisor-specific management and integration aspects
    • G06F2009/45562Creating, deleting, cloning virtual machine instances
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F9/00Arrangements for program control, e.g. control units
    • G06F9/06Arrangements for program control, e.g. control units using stored programs, i.e. using an internal store of processing equipment to receive or retain programs
    • G06F9/44Arrangements for executing specific programs
    • G06F9/455Emulation; Interpretation; Software simulation, e.g. virtualisation or emulation of application or operating system execution engines
    • G06F9/45533Hypervisors; Virtual machine monitors
    • G06F9/45558Hypervisor-specific management and integration aspects
    • G06F2009/45591Monitoring or debugging support
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F9/00Arrangements for program control, e.g. control units
    • G06F9/06Arrangements for program control, e.g. control units using stored programs, i.e. using an internal store of processing equipment to receive or retain programs
    • G06F9/44Arrangements for executing specific programs
    • G06F9/455Emulation; Interpretation; Software simulation, e.g. virtualisation or emulation of application or operating system execution engines
    • G06F9/45533Hypervisors; Virtual machine monitors
    • G06F9/45558Hypervisor-specific management and integration aspects
    • G06F2009/45595Network integration; Enabling network access in virtual machine instances

Landscapes

  • Engineering & Computer Science (AREA)
  • Software Systems (AREA)
  • Theoretical Computer Science (AREA)
  • Physics & Mathematics (AREA)
  • General Engineering & Computer Science (AREA)
  • General Physics & Mathematics (AREA)
  • Computer And Data Communications (AREA)

Abstract

本公开关于一种资源处理方法和装置、电子设备及存储介质,其中,该方法包括:监听第一服务器集群中资源的更新消息,其中,目标资源管理模块为多个资源管理模块中具有唯一处理权限的资源管理模块,在更新消息指示资源发生变化时,根据多个第二服务器集群的资源使用状况,从多个第二服务器集群中选择至少一个第三服务器集群,在至少一个第三服务器集群中根据更新消息管理目标实例对象,其中,目标实例对象是按照更新后的资源确定的实例对象,不同的第三服务器集群中的目标实例对象分别具有唯一标识。解决了相关技术中存在的资源处理的效率较低的技术问题。

Description

资源处理方法和装置、电子设备及存储介质
技术领域
本公开涉及计算机领域,尤其涉及资源处理方法和装置、电子设备及存储介质。
背景技术
目前,相关技术中,在进行多集群管理的过程中,一般是通过为每个集群配置对应的资源管理模块,以在多集群的场景下进行资源处理。
例如,Kubernetes是一个开源的,用于管理云平台中多个主机上的容器化的应用,Kubernetes的目标是让部署容器化的应用简单并且高效,Kubernetes提供了应用部署,规划,更新,维护的一种机制。在Kubernetes场景下进行多集群管理的过程中,一般配置为每个集群部署operater+多集群管理模块,在每个Kubernetes集群中都部署operator,多集群管理模块负责管理每个集群的有状态服务。
但是,由于需要每个Kubernetes集群都部署operator,进而无法充分利用资源:当服务所用资源超过单个集群剩余的资源量,该服务会因为资源不足无法创建,而所有集群的剩余资源总量是满足需求的,这会造成一定的资源浪费,导致资源处理效率较低的技术问题。
因此,针对相关技术中存在的资源处理的效率较低的技术问题,目前尚未存在有效的解决方案。
公开内容
本公开提供一种资源处理方法和装置、电子设备及存储介质,以至少解决相关技术中存在的资源处理的效率较低的技术问题。本公开的技术方案如下:
根据本公开实施例的第一方面,提供一种资源处理方法,包括:监听第一服务器集群中资源的更新消息,其中,所述第一服务器集群用于存储所述资源,所述资源用于按照预期状态管理一组实例对象,所述目标资源管理模块为多个资源管理模块中具有唯一处理权限的资源管理模块;在所述更新消息指示所述资源发生变化时,根据多个第二服务器集群的资源使用状况,从所述多个第二服务器集群中选择至少一个第三服务器集群;在所述至少一个第三服务器集群中根据所述更新消息管理目标实例对象,其中,所述一组实例对象包括所述目标实例对象,所述目标实例对象是按照更新后的所述资源确定的实例对象,不同的所述第三服务器集群中的所述目标实例对象分别具有唯一标识。
可选地,所述资源包括基于服务创建请求生成的定制资源CR。
可选地,所述监听第一服务器集群中资源的更新消息,包括:监听所述第一服务器集群中待处理的资源的第一资源类型;在确定所述第一资源类型与当前允许处理的目标资源类型相同,且已获取到所述唯一处理权限的情况下,获取第一服务器集群中资源的更新消息。
可选地,在所述至少一个第三服务器集群中根据所述更新消息管理目标实例对象,包括:从所述第一服务器集群中获取所述更新消息,其中,所述更新消息指示所述资源更新了以下内容至少之一:新建所述目标实例对象,修改所述目标实例对象,删除所述目标实例对象;基于所述更新消息,管理所述至少一个第三服务器集群中的所述目标实例对象。
可选地,基于所述更新消息,管理所述至少一个第三服务器集群中的目标实例对象,包括以下至少之一:在所述更新消息指示需要新建所述目标实例对象的情况下,在所述至少一个第三服务器集群中创建新的所述目标实例对象;在所述更新消息指示需要修改所述目标实例对象的情况下,在所述至少一个第三服务器集群中修改已创建的所述目标实例对象;在所述更新消息指示需要删除所述目标实例对象的情况下,在所述至少一个第三服务器集群中删除已创建的所述目标实例对象。
可选地,所述在所述至少一个第三服务器集群中根据所述更新消息管理目标实例对象,包括:在所述目标实例对象已创建的情况下,监听所述目标实例对象在所述第三服务器集群中的当前状态,得到状态结果;在所述状态结果表示所述当前状态与所述预期状态不同时,将所述目标实例对象按照所述预期状态进行调整。
可选地,所述在所述状态结果表示所述当前状态与所述预期状态不同时,将所述目标实例对象按照所述预期状态进行调整,包括:在所述状态结果表示所述目标实例对象中的第一实例对象处于异常状态的情况下,在所述多个第二服务器集群中选择第四服务器集群,其中,所述第一实例对象为所述目标实例对象中的任意实例对象;在所述第四服务器集群中创建第二实例对象,并删除所述第三服务器集群中的所述第一实例对象,其中,所述第二实例对象与所述第一实例对象具有同一标识。
可选地,所述在所述状态结果表示所述当前状态与所述预期状态不同时,将所述目标实例对象按照所述预期状态进行调整,包括:在所述状态结果表示所述目标实例对象位于的所述第三服务器集群处于故障状态的情况下,在所述多个第二服务器集群中选择第五服务器集群;在所述第五服务器集群中,重新创建处于故障状态中的第三服务器集群中的实例对象,并删除所述第三服务器集群中的实例对象,其中,所述第五服务器集群中的实例对象与处于故障中的所述第三服务器集群中的实例对象具有同一标识。
根据本公开实施例的第二方面,提供一种资源处理***,包括:第一服务器集群,用于存储资源;目标资源管理模块,用于监听所述第一服务器集群中资源的更新消息,其中,所述资源用于按照预期状态管理一组实例对象,所述目标资源管理模块为多个资源管理模块中具有唯一处理权限的资源管理模块;所述目标资源管理模块,还用于在所述更新消息指示所述资源发生变化时,根据多个第二服务器集群的资源使用状况,从所述多个第二服务器集群中选择至少一个第三服务器集群;所述至少一个第三服务器集群,用于根据所述更新消息管理目标实例对象,其中,所述一组实例对象包括所述目标实例对象,所述目标实例对象是按照更新后的所述资源确定的实例对象,不同的所述第三服务器集群中的所述目标实例对象分别具有唯一标识。
可选地,所述资源包括基于服务创建请求生成的定制资源CR。
可选地,所述目标资源管理模块包括:第一监听单元,用于监听所述第一服务器集群中待处理的资源的第一资源类型;第一获取单元,用于在确定所述第一资源类型与当前允许处理的目标资源类型相同,且已获取到所述唯一处理权限的情况下,获取第一服务器集群中资源的更新消息。
可选地,所述目标资源管理模块用于通过如下方式在所述至少一个第三服务器集群中根据所述更新消息管理目标实例对象:从所述第一服务器集群中获取所述更新信息,其中,所述更新信息指示所述资源更新了以下内容至少之一:新建所述目标实例对象,修改所述目标实例对象,删除所述目标实例对象;基于所述更新信息,管理所述至少一个第三服务器集群中的所述目标实例对象。
可选地,所述目标资源管理模块用于通过如下至少之一的方式基于所述更新信息,管理所述至少一个第三服务器集群中的目标实例对象:在所述更新信息指示需要新建所述目标实例对象的情况下,在所述至少一个第三服务器集群中创建新的所述目标实例对象;在所述更新信息指示需要修改所述目标实例对象的情况下,在所述至少一个第三服务器集群中修改已创建的所述目标实例对象;在所述更新信息指示需要删除所述目标实例对象的情况下,在所述至少一个第三服务器集群中删除已创建的所述目标实例对象。
可选地,所述目标资源管理模块用于通过如下方式在至少一个第三服务器集群中根据所述更新消息调整目标实例对象:在所述目标实例对象已创建的情况下,监听所述目标实例对象在所述第三服务器集群中的当前状态,得到状态结果;在所述状态结果表示所述当前状态与所述预期状态不同时,将所述目标实例对象按照所述预期状态进行调整。
可选地,所述目标资源管理模块用于通过如下方式在所述状态结果表示所述当前状态与所述预期状态不同时,将所述目标实例对象按照所述预期状态进行调整:在所述状态结果表示所述目标实例对象中的第一实例对象处于异常状态的情况下,在所述多个第二服务器集群中选择第四服务器集群,其中,所述第一实例对象为所述目标实例对象中的任意实例对象;在所述第四服务器集群中创建第二实例对象,并删除所述第三服务器集群中的所述第一实例对象,其中,所述第二实例对象与所述第一实例对象具有同一标识。
可选地,所述目标资源管理模块用于通过如下方式在所述状态结果表示所述当前状态与所述预期状态不同时,将所述目标实例对象按照所述预期状态进行调整:在所述状态结果表示所述目标实例对象位于的所述第三服务器集群处于故障状态的情况下,在所述多个第二服务器集群中选择第五服务器集群;在所述第五服务器集群中,重新创建处于故障状态中的第三服务器集群中的实例对象,并删除所述第三服务器集群中的实例对象,其中,所述第五服务器集群中的实例对象与处于故障中的所述第三服务器集群中的实例对象具有同一标识。
根据本公开实施例的第三方面,提供一种资源处理装置,包括:监听模块,用于接收第一服务器集群的资源创建请求,其中,所述资源创建请求中携带有待创建的目标资源的资源信息;选择模块,用于根据所述资源信息,以及多个第二服务器集群的资源使用状况,从所述多个第二服务器集群中选择至少一个第二服务器集群;管理模块,用于根据所述资源信息生成分别与所述至少一个第二服务器集群对应的实例创建信息;创建模块,用于在所述至少一个第二服务器集群中,分别采用对应的实例创建信息创建实例,其中,在所述至少一个第二服务器集群中创建的实例构成所述目标资源对应的目标实例,所述目标实例由同一资源管理模块创建,分别具有唯一标识。
可选地,所述资源包括基于服务创建请求生成的定制资源CR。
可选地,所述监听模块包括:第二监听单元,用于监听所述第一服务器集群中待处理的资源的第一资源类型;第二获取单元,用于在确定所述第一资源类型与当前允许处理的目标资源类型相同,且已获取到所述唯一处理权限的情况下,获取第一服务器集群中资源的更新消息。
可选地,所述装置用于通过如下方式在所述至少一个第三服务器集群中根据所述更新消息管理目标实例对象:从所述第一服务器集群中获取所述更新信息,其中,所述更新信息指示所述资源更新了以下内容至少之一:新建所述目标实例对象,修改所述目标实例对象,删除所述目标实例对象;基于所述更新信息,管理所述至少一个第三服务器集群中的所述目标实例对象。
可选地,所述装置用于通过如下至少之一的方式基于所述更新信息,管理所述至少一个第三服务器集群中的目标实例对象:在所述更新信息指示需要新建所述目标实例对象的情况下,在所述至少一个第三服务器集群中创建新的所述目标实例对象;在所述更新信息指示需要修改所述目标实例对象的情况下,在所述至少一个第三服务器集群中修改已创建的所述目标实例对象;在所述更新信息指示需要删除所述目标实例对象的情况下,在所述至少一个第三服务器集群中删除已创建的所述目标实例对象。
可选地,所述装置用于通过如下方式在至少一个第三服务器集群中根据所述更新消息调整目标实例对象:在所述目标实例对象已创建的情况下,监听所述目标实例对象在所述第三服务器集群中的当前状态,得到状态结果;在所述状态结果表示所述当前状态与所述预期状态不同时,将所述目标实例对象按照所述预期状态进行调整。
可选地,所述装置用于通过如下方式在所述状态结果表示所述当前状态与所述预期状态不同时,将所述目标实例对象按照所述预期状态进行调整:在所述状态结果表示所述目标实例对象中的第一实例对象处于异常状态的情况下,在所述多个第二服务器集群中选择第四服务器集群,其中,所述第一实例对象为所述目标实例对象中的任意实例对象;在所述第四服务器集群中创建第二实例对象,并删除所述第三服务器集群中的所述第一实例对象,其中,所述第二实例对象与所述第一实例对象具有同一标识。
可选地,所述装置用于通过如下方式在所述状态结果表示所述当前状态与所述预期状态不同时,将所述目标实例对象按照所述预期状态进行调整:在所述状态结果表示所述目标实例对象位于的所述第三服务器集群处于故障状态的情况下,在所述多个第二服务器集群中选择第五服务器集群;在所述第五服务器集群中,重新创建处于故障状态中的第三服务器集群中的实例对象,并删除所述第三服务器集群中的实例对象,其中,所述第五服务器集群中的实例对象与处于故障中的所述第三服务器集群中的实例对象具有同一标识。
根据本公开实施例的第四方面,提供一种资源处理电子设备,包括:处理器;用于存储所述处理器可执行指令的存储器;其中,所述处理器被配置为执行所述指令,以实现如上述的资源处理方法。
根据本公开实施例的又一方面,还提供了一种计算机可读的存储介质,该计算机可读的存储介质中存储有计算机程序,其中,该计算机程序被设置为运行时执行上述资源处理方法。
本公开的实施例提供的技术方案至少带来以下有益效果:采用监听第一服务器集群中资源的更新消息,其中,第一服务器集群用于存储资源,资源用于按照预期状态管理一组实例对象,目标资源管理模块为多个资源管理模块中具有唯一处理权限的资源管理模块,在更新消息指示资源发生变化时,根据多个第二服务器集群的资源使用状况,从多个第二服务器集群中选择至少一个第三服务器集群,在至少一个第三服务器集群中根据更新消息管理目标实例对象的方式,通过具有唯一处理权限的资源管理模块根据更新消息在多个第二服务器集群中管理目标实例对象,以按照更新后的资源确定目标实例对象,并且,使得不同的第三服务器集群中的目标实例对象分别具有唯一标识,进而,无需为每个集群分别部署资源管理模块,直接通过具有唯一处理权限的资源管理模块实现全局管理,提高了资源处理的效率,解决了相关技术中存在的资源处理的效率较低的技术问题。
应当理解的是,以上的一般描述和后文的细节描述仅是示例性和解释性的,并不能限制本公开。
附图说明
此处的附图被并入说明书中并构成本说明书的一部分,示出了符合本公开的实施例,并与说明书一起用于解释本公开的原理,并不构成对本公开的不当限定。
图1是根据一示例性实施例示出的一种资源处理方法的流程图;
图2是根据一示例性实施例示出的另一种资源处理方法的流程示意图;
图3是根据一示例性实施例示出的又一种资源处理方法的流程示意图;
图4是根据一示例性实施例示出的一种资源处理方法的应用环境示意图;
图5是根据一示例性实施例示出的一种资源处理装置的框图;
图6是根据一示例性实施例示出的一种电子设备的框图。
具体实施方式
为了使本领域普通人员更好地理解本公开的技术方案,下面将结合附图,对本公开实施例中的技术方案进行清楚、完整地描述。
需要说明的是,本公开的说明书和权利要求书及上述附图中的术语“第一”、“第二”等是用于区别类似的对象,而不必用于描述特定的顺序或先后次序。应该理解这样使用的数据在适当情况下可以互换,以便这里描述的本公开的实施例能够以除了在这里图示或描述的那些以外的顺序实施。以下示例性实施例中所描述的实施方式并不代表与本公开相一致的所有实施方式。相反,它们仅是与如所附权利要求书中所详述的、本公开的一些方面相一致的装置和方法的例子。
首先,在对本申请实施例进行描述的过程中出现的部分名词或者术语适用于如下解释:
operator:即为下述的资源管理模块,是Kubernetes的扩展软件,可以包括但不限于利用定制资源CR(Custom Resource)管理应用及其组件,通常管理的是有状态服务。负责相应的定制资源的创建、更新、删除等行为,最终会将定制资源转换为Pod(与下述目标实例对象对应)。
CR:定制资源(Custom Resource)是对Kubernetes API的扩展,在Kubernetes集群中定义一种新的资源类型,一般每种资源类型会对应一个operator。
有状态服务:像MySQL集群(有主从状态)、分片服务(每个分片完成不同的功能,所有分片组合才能实现完整的功能)等服务的每个实例Pod的名字是独一无二的不可以随意替代,通过实例名来区分不同的功能。
下面结合实施例对本发明进行说明:
根据本发明实施例的一个方面,提供了一种资源处理方法,可选地,在本实施例中,上述资源处理方法可以应用于如图1所示的由服务器101和终端设备103所构成的硬件环境中。如图1所示,服务器101通过网络与终端103进行连接,可用于为终端设备或终端设备上安装的客户端提供服务,客户端可以是视频客户端、即时通信客户端、浏览器客户端、教育客户端、游戏客户端等。可在服务器上或独立于服务器设置数据库105,用于为服务器101提供数据存储服务,例如,游戏数据存储服务器,上述网络可以包括但不限于:有线网络,无线网络,其中,该有线网络包括:局域网、城域网和广域网,该无线网络包括:蓝牙、WIFI及其他实现无线通信的网络,终端设备103可以是配置有客户端的终端,可以包括但不限于以下至少之一:手机(如Android手机、iOS手机等)、笔记本电脑、平板电脑、掌上电脑、MID(Mobile Internet Devices,移动互联网设备)、PAD、台式电脑、智能电视等计算机设备,上述服务器可以是单一服务器,也可以是由多个服务器组成的服务器集群,或者是云服务器,可以包括但不限于路由或者网关。
结合图1所示,上述资源处理方法可以在用户终端103通过如下步骤实现:
S1,在终端设备103上安装的客户端上监听第一服务器集群中资源的更新消息,其中,第一服务器集群用于存储资源,资源用于按照预期状态管理一组实例对象,目标资源管理模块为多个资源管理模块中具有唯一处理权限的资源管理模块;
S2,在终端设备103上安装的客户端上在更新消息指示资源发生变化时,根据多个第二服务器集群的资源使用状况,从多个第二服务器集群中选择至少一个第三服务器集群;
S3,在终端设备103上安装的客户端上在至少一个第三服务器集群中根据更新消息管理目标实例对象,其中,一组实例对象包括目标实例对象,目标实例对象是按照更新后的资源确定的实例对象,不同的第三服务器集群中的目标实例对象分别具有唯一标识。
可选地,在本实施例中,上述资源处理方法还可以通过服务器实现,例如,图1所示的服务器101中实现;或由用户终端和服务器共同实现。
上述仅是一种示例,本实施例不做具体的限定。
可选地,作为一种可选的实施方式,如图2所示,上述资源处理方法包括:
S202,监听第一服务器集群中资源的更新消息,其中,第一服务器集群用于存储资源,资源用于按照预期状态管理一组实例对象,目标资源管理模块为多个资源管理模块中具有唯一处理权限的资源管理模块;
S204,在更新消息指示资源发生变化时,根据多个第二服务器集群的资源使用状况,从多个第二服务器集群中选择至少一个第三服务器集群;
S206,在至少一个第三服务器集群中根据更新消息管理目标实例对象,其中,一组实例对象包括目标实例对象,目标实例对象是按照更新后的资源确定的实例对象,不同的第三服务器集群中的目标实例对象分别具有唯一标识。
可选地,在本实施例中,上述第一服务器集群可以包括但不限于Kubernetes集群中的主集群,接收由容器平台根据用户发送的服务请求生成的更新消息,以管理上述目标实例对象。
可选地,在本实施例中,可以包括但不限于根据全局锁机制,将多个资源管理模块中的任一资源管理模块配置为唯一目标资源管理模块,以用于管理上述目标实例对象,还可以包括但不限于将与第一服务器集群关联的资源管理模块确定为唯一目标资源管理模块,以用于管理上述目标实例对象。
需要说明的是,上述目标资源管理模块根据全局锁机制具有唯一处理权限。
可选地,在本实施例中,上述资源可以包括但不限于对Kubernetes API的扩展,在Kubernetes集群中定义,用于通过目标资源管理模块管理目标实例对象,一般每种类型的资源会对应一个资源管理模块。
以定制资源CR为例,CR资源(Custom Resource),是对Kubernetes API的扩展,不一定在默认的Kubernetes安装中就可用。定制资源可以通过动态注册的方式在运行中的集群内或出现或消失,集群管理员可以独立于集群更新定制资源。一旦某定制资源被安装,用户可以使用kubectl来创建和访问其中的对象,就像他们为pods这种内置资源所做的一样。
当然,上述资源还可以包括但不限于Kubernetes平台之外的资源,以上仅是通过Kubernetes进行举例说明。
可选地,在本实施例中,上述更新消息可以包括但不限于用于表示资源的变化情况的消息(例如,新建实例对象,修改实例对象以及删除实例对象等),通过目标资源管理模块根据上述更新消息来管理目标实例对象。
可选地,在本实施例中,上述多个第二服务器集群的资源使用状况可以包括但不限于某个计算平台中所有第二服务器集群的可用资源情况,例如,以Kubernetes为例,上述第二服务器集群可以包括但不限于除上述第一服务器集群之外的其他Kubernetes集群。
可选地,在本实施例中,上述从多个第二服务器集群中选择至少一个第二服务器集群可以包括但不限于根据资源使用状况,将上述第二服务器集群中可用的第二服务器集群确定为上述至少一个第二服务器集群,或者,根据资源使用状况,确定出上述第二服务器集群中不可用的第二服务器集群,将除上述不可用的第二服务器集群之外的其他第二服务器集群确定为上述至少一个第二服务器集群。
可选地,在本实施例中,上述目标实例对象由目标资源管理模块创建,分别具有唯一标识可以包括但不限于为第一服务器集群配置上述资源管理模块,并采用上述与第一服务器集群关联的目标资源管理模块管理上述目标实例对象,上述目标实例对象可以包括但不限于pod实例。
可选地,在本实施例中,上述资源处理的应用场景可以包括但不限于医疗、金融、征信、银行、政务、政府、游戏、能源、教育、安防、楼宇、交通、物联、工业等多种应用场景中。
具体而言,以Kubernetes集群为例,在上述不同领域的企业中,可以使用上游开源或商业软件分发或通过云服务来部署Kubernetes平台。云服务提供了简化的操作和快速上市时间,而软件分发提供了更好的多云支持和可管理性。上游开源提供可定制性,容器和Kubernetes的成功需要各种核心和辅助角色,具体取决于企业的用例和成熟度。在平台工程,运营和安全工程方面具有必要的技能至关重要。
图3是根据一示例性实施例示出的一种资源处理的方法流程示意图,如图3所示,上述资源处理方法可以包括但不限于如下步骤实现:
S1、当容器云平台接收到用户的服务创建请求,生成CR配置,然后向主Kubernetes集群(对应于前述的第一服务器集群)发送创建请求,创建CR资源(对应于前述的资源);
S2、operator(对应于前述的目标资源管理模块)监听到CR资源对象的创建(对应于前述的监听更新消息),计算所有Kubernetes集群(对应于前述的第二服务器集群)的可用资源情况,选出一个或多个可用的Kubernetes集群(对应于前述的第三服务器集群);
S3、operator根据CR的配置信息,生成Pod(实例)配置信息,向具体的Kubernetes集群创建Pod请求,Pod的名字根据统一规则生成,保证全局唯一性;
S4、Kubernetes集群负责创建Pod实例;
S5、operator周期性查询Pod状态,并进行状态同步;
S6,operator在Pod出现异常状况时,自动创建同名Pod进行替换。
通过本实施例,采用监听第一服务器集群中资源的更新消息,其中,第一服务器集群用于存储资源,资源用于按照预期状态管理一组实例对象,目标资源管理模块为多个资源管理模块中具有唯一处理权限的资源管理模块,在更新消息指示资源发生变化时,根据多个第二服务器集群的资源使用状况,从多个第二服务器集群中选择至少一个第三服务器集群,在至少一个第三服务器集群中根据更新消息管理目标实例对象的方式,通过具有唯一处理权限的资源管理模块根据更新消息在多个第二服务器集群中管理目标实例对象,以按照更新后的资源确定目标实例对象,并且,使得不同的第三服务器集群中的目标实例对象分别具有唯一标识,进而,无需为每个集群分别部署资源管理模块,直接通过具有唯一处理权限的资源管理模块实现全局管理,提高了资源处理的效率,解决了相关技术中存在的资源处理的效率较低的技术问题。
作为一种可选的方案,所述资源包括基于服务创建请求生成的定制资源CR。
可选地,在本实施例中,上述定制资源CR(Custom Resource)是对Kubernetes API的扩展。定制资源所代表的是对特定Kubernetes安装的一种定制。不过,很多Kubernetes核心功能现在都用定制资源来实现,这使得Kubernetes更加模块化。
具体而言,可以包括但不限于在如下情况中将目标资源配置为定制资源CR:
1)使用Kubernetes客户端库和CLI来创建和更改新的资源。
2)kubectl能够直接支持你的资源;例如,kubectl get my-object object-name。
3)构造新的自动化机制,监听对象上的更新事件,并对其他对象执行CRUD操作,或者监测后者更新前者。
4)编写自动化组件来处理对对象的更新。
5)使用Kubernetes API对诸如.spec、.status和.metadata等字段的约定。
6)对象是对一组受控资源的抽象,或者对其他资源的归纳提炼。
上述仅是一种示例,本实施例不做任何具体的限定。
上述定制资源可以通过动态注册的方式在运行中的集群内或出现或消失,集群管理员可以独立于集群更新定制资源,进而,达到提高管理定制资源的效率的技术效果。
作为一种可选的方案,监听第一服务器集群中资源的更新消息,包括:
监听所述第一服务器集群中待处理的资源的第一资源类型;
在确定所述第一资源类型与当前允许处理的目标资源类型相同,且已获取到所述唯一处理权限的情况下,获取第一服务器集群中资源的更新消息。
可选地,在本实施例中,上述监听所述第一服务器集群中待处理的资源的第一资源类型可以包括但不限于使用Kubernetes客户端实现,例如,kube operator是一个kubernetes集群部署及多集群管理工具,提供web ui支持在离线环境部署多个kubernetes集群,通过Web UI在VMware、OpenStack和物理机上规划、部署和运营生产级别的Kubernetes集群。支持内网离线环境、支持GPU、内置应用商店。
具体而言,可以包括但不限于定期或根据配置参数来监听上述待处理的资源的第一资源类型,上述第一资源类型可以包括但不限于定制资源CR等。
例如,图4是根据一示例性实施例示出的一种资源处理的方法的应用环境示意图,如图4所示,上述资源处理方法可以包括但不限于如下步骤实现:
S402,容器云平台向主Kubernetes集群发送CR创建请求;
S404,选择具有唯一处理权限的operator作为与CR对应的operator;
S406,计算多个Kubernetes集群的可用资源状况,筛选出合适的Kubernetes集群作为上述第二服务器集群;
S408,根据CR配置信息,生成Pod实例创建请求,并在对应的Kubernetes集群上创建Pod实例。
通过本实施例,采用监听第一服务器集群中待处理的资源的第一资源类型,在确定第一资源类型与当前允许处理的目标资源类型相同,且已获取到唯一处理权限的情况下,获取第一服务器集群中资源的更新消息的方式,无需为每个集群分别部署资源管理模块,直接通过具有唯一处理权限的资源管理模块实现全局管理,提高了资源处理的效率,解决了相关技术中存在的资源处理的效率较低的技术问题。
作为一种可选的方案,在所述至少一个第三服务器集群中根据所述更新消息管理目标实例对象,包括:
从所述第一服务器集群中获取所述更新消息,其中,所述更新消息指示所述资源更新了以下内容至少之一:新建所述目标实例对象,修改所述目标实例对象,删除所述目标实例对象;
基于所述更新消息,管理所述至少一个第三服务器集群中的所述目标实例对象。
可选地,在本实施例中,上述更新消息可以包括但不限于新建目标实例对象,修改目标实例对象,删除目标实例对象。
可选地,在本实施例中,上述目标资源的更新消息可以包括但不限于用于维持实例状态达到目标资源指定的预期状态的更新消息。
例如,以目标资源为CR资源,资源管理设备为operator,实例为Pod为例,进行如下示例性说明:
1)当CR资源发生创建、更新、删除操作时,获取目标资源的更新消息,通过operator对Pod也进行与更新消息相关的创建、更新、删除操作;
2)当CR资源需要扩容时,获取目标资源的更新消息,通过operator通过创建新Pod,以达到更新消息中携带的预期实例个数;当CR资源需要缩容时,获取目标资源的更新消息,通过operator删除Pod,以达到更新消息中携带的预期实例个数;
3)当Pod实例由于资源不足,造成Pending或者被删除时,通过operator资源计算,以在新的Kubernetes集群创建同名Pod,替换原来的Pod;当单集群发生故障时,通过operator资源计算,以在新Kubernetes集群创建同名Pod,替换故障集群的Pod实例。
通过本实施例,采用从第一服务器集群中获取更新消息,其中,更新消息指示资源更新了以下内容至少之一:新建目标实例对象,修改目标实例对象,删除目标实例对象;基于更新消息,管理至少一个第三服务器集群中的目标实例对象的方式,能够灵活根据更新消息更新实例对象,例如新建、修改、删除等管理方式,从而通过具有唯一处理权限的资源管理模块实现全局管理,提高了资源处理的效率,解决了相关技术中存在的资源处理的效率较低的技术问题。
作为一种可选的方案,基于所述更新消息,管理所述至少一个第三服务器集群中的目标实例对象,包括以下至少之一:
在所述更新消息指示需要新建所述目标实例对象的情况下,在所述至少一个第三服务器集群中创建新的所述目标实例对象;
在所述更新消息指示需要修改所述目标实例对象的情况下,在所述至少一个第三服务器集群中修改已创建的所述目标实例对象;
在所述更新消息指示需要删除所述目标实例对象的情况下,在所述至少一个第三服务器集群中删除已创建的所述目标实例对象。
可选地,在本实施例中,以新建目标实例对象为例,在上述资源中需要创建的实例对象的数目增加的情况下,触发生成上述新建目标实例对象的更新消息,以指示目标资源管理模块在第二服务器集群中选择第三服务器集群创建目标实例对象。
可选地,在本实施例中,以修改目标实例对象为例,在上述资源中需要修改的实例对象的情况下,触发生成上述修改目标实例对象的更新消息,以指示目标资源管理模块在第三服务器集群中修改目标实例对象。
可选地,在本实施例中,以删除目标实例对象为例,在上述资源中需要创建的实例对象的数目减少的情况下,触发生成上述删除目标实例对象的更新消息,以指示目标资源管理模块在第三服务器集群删除目标实例对象。
通过本实施例,采用在更新消息指示需要新建目标实例对象的情况下,在至少一个第三服务器集群中创建新的目标实例对象;在更新消息指示需要修改目标实例对象的情况下,在至少一个第三服务器集群中修改已创建的目标实例对象;在更新消息指示需要删除目标实例对象的情况下,在至少一个第三服务器集群中删除已创建的目标实例对象的方式,能够灵活根据更新消息更新实例对象,例如新建、修改、删除等管理方式,从而通过具有唯一处理权限的资源管理模块实现全局管理,提高了资源处理的效率,解决了相关技术中存在的资源处理的效率较低的技术问题。
作为一种可选的方案,所述在至少一个第三服务器集群中根据所述更新消息调整目标实例对象,包括:
在所述目标实例对象已创建的情况下,监听所述目标实例对象在所述第三服务器集群中的当前状态,得到状态结果;
在所述状态结果表示所述当前状态与所述预期状态不同时,将所述目标实例对象按照所述预期状态进行调整。
可选地,在本实施例中,上述监听目标实例对象对象的状态可以包括但不限于使用Kubernetes客户端实现。
具体而言,可以包括但不限于定期或根据预期状态来查询目标实例对象的状态,通过同步状态,以确定上述状态结果,其中,根据预期状态可以包括但不限于根据创建的实例对象数目,服务器集群的负载情况,实例对象的运行效率等参数与预定阈值进行比较来确定。
通过本实施例,采用在目标实例对象已创建的情况下,监听目标实例对象在第三服务器集群中的当前状态,得到状态结果,在状态结果表示当前状态与预期状态不同时,将目标实例对象按照预期状态进行调整的方式,能够灵活根据目标实例对象在第三服务器集群中的状态,调整为预期状态,从而通过具有唯一处理权限的资源管理模块实现全局管理,提高了资源处理的效率,解决了相关技术中存在的资源处理的效率较低的技术问题。
作为一种可选的方案,所述基于所述状态结果,所述在所述状态结果表示所述当前状态与所述预期状态不同时,将所述目标实例对象按照所述预期状态进行调整,包括:
在所述状态结果表示所述目标实例对象中的第一实例对象处于异常状态的情况下,在所述多个第二服务器集群中选择第四服务器集群,其中,所述第一实例对象为所述目标实例对象中的任意实例对象;
在所述第四服务器集群中创建第二实例对象,并删除所述第三服务器集群中的所述第一实例对象,其中,所述第二实例对象与所述第一实例对象具有同一标识。
可选地,在本实施例中,上述第一实例对象处于异常状态可以包括但不限于在第一实例对象由于资源不足,造成Pending(等待)或者被删除时,确定上述第一实例对象处于异常状态。
可选地,在本实施例中,上述在多个第二服务器集群中选择的第二服务器集群实际上可以包括但不限于资源状态表示可用的服务器集群,例如,新的Kubernetes集群。
可选地,在本实施例中,上述第二实例对象与上述第一实例对象具有同一标识可以理解为根据第一实例对象的标识,创建与第一实例对象对应的第二实例对象,并删除第一实例对象,以保证全局唯一性。
通过本实施例,采用在状态结果表示目标实例对象中的第一实例对象处于异常状态的情况下,在多个第二服务器集群中选择第四服务器集群,其中,第一实例对象为目标实例对象中的任意实例对象,在第四服务器集群中创建第二实例对象,并删除第三服务器集群中的第一实例对象,其中,第二实例对象与第一实例对象具有同一标识的方式,能够通过具有唯一处理权限的资源管理模块实现全局管理,以保证全局中实例对象标识的唯一性,提高了资源处理的效率,解决了相关技术中存在的资源处理的效率较低的技术问题。
作为一种可选的方案,所述在所述状态结果表示所述当前状态与所述预期状态不同时,将所述目标实例对象按照所述预期状态进行调整,包括:
在所述状态结果表示所述目标实例对象位于的所述第三服务器集群处于故障状态的情况下,在所述多个第二服务器集群中选择第五服务器集群;
在所述第五服务器集群中,重新创建处于故障状态中的第三服务器集群中的实例对象,并删除所述第三服务器集群中的实例对象,其中,所述第五服务器集群中的实例对象与处于故障中的所述第三服务器集群中的实例对象具有同一标识。
可选地,在本实施例中,上述第二服务器集群处于故障状态可以包括但不限于第二服务器集群关闭、第二服务器集群负载过高等,可以通过包括但不限于获取新的第二服务器集群,以替代上述处于故障状态的第二服务器集群,其中,替代过程中,需要在新的第二服务器集群创建与故障状态的第二服务器集群上相同的实例对象,以保证业务的正常进行。
通过本实施例,采用在状态结果表示目标实例对象位于的第三服务器集群处于故障状态的情况下,在多个第二服务器集群中选择第五服务器集群,在第五服务器集群中,重新创建处于故障状态中的第三服务器集群中的实例对象,并删除第三服务器集群中的实例对象,其中,第五服务器集群中的实例对象与处于故障中的第三服务器集群中的实例对象具有同一标识的方式,能够通过具有唯一处理权限的资源管理模块实现全局管理,将故障状态的服务器集群进行替换,以保证业务的正常进行,提高了资源处理的效率,解决了相关技术中存在的资源处理的效率较低的技术问题。
下面结合具体的示例,对本公开进行进一步的解释说明:
主Kubernetes集群:用于存储CR资源对象,供operator进行读写;
operator:监听主Kubernetes集群的CR对象的变动,通过资源计算模块筛选出合适的集群,创建Pod实例。
具体而言,operator可以部署多个副本,实现高可用;通过全局锁机制,保证任何时刻只有一个operator在工作。由于同一个CR的所有Pod由同一个operator创建,可以保证实例名字全局唯一。
operator负责部分多集群管理功能,根据资源计算模块的结果,直接向相应Kubernetes集群发送创建Pod请求。
operator维持Pod状态达到CR指定的预期状态:
1)当CR资源发生创建、更新、删除操作时,operator对Pod也进行相关的创建、更新、删除操作;
2)CR扩容时,operator通过创建新Pod,达到预期实例个数;CR缩容时,operator通过删除Pod,达到预期实例个数;
3)当Pod实例由于资源不足,造成Pending或者被删除时,operator通过资源计算在新Kubernetes集群创建同名Pod,替换原来的Pod;当单集群发生故障时,通过operator资源计算,在新Kubernetes集群创建同名Pod,替换故障集群的Pod实例。
可以包括但不限于如下方式创建对应的服务:
S1、当容器云平台接收到用户的服务创建请求,生成CR配置,然后向主Kubernetes集群发送创建请求,创建CR资源;
S2、operator监听到CR资源对象的创建,向资源计算模块计算所有Kubernetes的可用资源情况,选出一个或多个可用的Kubernetes集群;
S3、operator根据CR的配置信息,生成Pod配置信息,向具体的Kubernetes集群创建Pod请求,Pod的名字根据统一规则生成,保证全局唯一性;
S4、底层Kubernetes集群负责创建Pod实例;
S5、operator周期性查询Pod状态,并进行状态同步;Pod出现异常状况时,自动创建同名Pod进行替换.
通过本实施例,采用上述资源处理方法,由于operator大部分代码已经生成,只需要实现具体的业务逻辑即可,且容器云平台侧,只需要和单个Kubernetes集群进行交互,不需要多集群管理模块即可实现,operator只需要在主Kubernetes部署,不需要每个Kubernetes集群都部署。
此外,采用上述资源处理方法,进行业务处理过程中故障自愈能力强,由于operator采用的监听模式,可以实时感知集群CR资源和Pod资源的变更,并根据变更采取相应的策略,采用同名Pod替换故障Pod,操作比较方便,不需要考虑命名索引问题。
在示例性的实施例中,还提出一种资源处理***,包括:
第一服务器集群,用于存储资源;
目标资源管理模块,用于监听所述第一服务器集群中资源的更新消息,其中,所述资源用于按照预期状态管理一组实例对象,所述目标资源管理模块为多个资源管理模块中具有唯一处理权限的资源管理模块;
所述目标资源管理模块,还用于在所述更新消息指示所述资源发生变化时,根据多个第二服务器集群的资源使用状况,从所述多个第二服务器集群中选择至少一个第三服务器集群;
所述至少一个第三服务器集群,用于根据所述更新消息管理目标实例对象,其中,所述一组实例对象包括所述目标实例对象,所述目标实例对象是按照更新后的所述资源确定的实例对象,不同的所述第三服务器集群中的所述目标实例对象分别具有唯一标识。
作为一种可选的方案,所述资源包括基于服务创建请求生成的定制资源CR。
作为一种可选的方案,所述目标资源管理模块,包括:
第一监听单元,用于监听所述第一服务器集群中待处理的资源的第一资源类型;
第一获取单元,用于在确定所述第一资源类型与当前允许处理的目标资源类型相同,且已获取到所述唯一处理权限的情况下,获取第一服务器集群中资源的更新消息。
作为一种可选的方案,所述***用于通过如下方式在所述至少一个第三服务器集群中根据所述更新消息管理目标实例对象:
从所述第一服务器集群中获取所述更新消息,其中,所述更新消息指示所述资源更新了以下内容至少之一:新建所述目标实例对象,修改所述目标实例对象,删除所述目标实例对象;
基于所述更新消息,管理所述至少一个第三服务器集群中的所述目标实例对象。
作为一种可选的方案,所述***用于通过如下至少之一的方式基于所述更新消息,管理所述至少一个第三服务器集群中的目标实例对象:
在所述更新消息指示需要新建所述目标实例对象的情况下,在所述至少一个第三服务器集群中创建新的所述目标实例对象;
在所述更新消息指示需要修改所述目标实例对象的情况下,在所述至少一个第三服务器集群中修改已创建的所述目标实例对象;
在所述更新消息指示需要删除所述目标实例对象的情况下,在所述至少一个第三服务器集群中删除已创建的所述目标实例对象。
作为一种可选的方案,所述***用于通过如下方式在所述至少一个第三服务器集群中根据所述更新消息管理目标实例对象,包括:
在所述目标实例对象已创建的情况下,监听所述目标实例对象在所述第三服务器集群中的当前状态,得到状态结果;
在所述状态结果表示所述当前状态与所述预期状态不同时,将所述目标实例对象按照所述预期状态进行调整。
作为一种可选的方案,所述***用于通过如下方式在所述状态结果表示所述当前状态与所述预期状态不同时,将所述目标实例对象按照所述预期状态进行调整:
在所述状态结果表示所述目标实例对象中的第一实例对象处于异常状态的情况下,在所述多个第二服务器集群中选择第四服务器集群,其中,所述第一实例对象为所述目标实例对象中的任意实例对象;
在所述第四服务器集群中创建第二实例对象,并删除所述第三服务器集群中的所述第一实例对象,其中,所述第二实例对象与所述第一实例对象具有同一标识。
作为一种可选的方案,所述***用于通过如下方式在所述状态结果表示所述当前状态与所述预期状态不同时,将所述目标实例对象按照所述预期状态进行调整:
在所述状态结果表示所述目标实例对象位于的所述第三服务器集群处于故障状态的情况下,在所述多个第二服务器集群中选择第五服务器集群;
在所述第五服务器集群中,重新创建处于故障状态中的第三服务器集群中的实例对象,并删除所述第三服务器集群中的实例对象,其中,所述第五服务器集群中的实例对象与处于故障中的所述第三服务器集群中的实例对象具有同一标识。
图5是根据一示例性实施例示出的一种资源处理装置框图。参照图5,该装置包括监听模块502,选择模块504以及管理模块506。
其中,该监听模块502,被配置为监听第一服务器集群中资源的更新消息,其中,所述第一服务器集群用于存储所述资源,所述资源用于按照预期状态管理一组实例对象,所述目标资源管理模块为多个资源管理模块中具有唯一处理权限的资源管理模块;
该选择模块504,被配置为在所述更新消息指示所述资源发生变化时,根据多个第二服务器集群的资源使用状况,从所述多个第二服务器集群中选择至少一个第三服务器集群;
该管理模块506,被配置为在所述至少一个第三服务器集群中根据所述更新消息管理目标实例对象,其中,所述一组实例对象包括所述目标实例对象,所述目标实例对象是按照更新后的所述资源确定的实例对象,不同的所述第三服务器集群中的所述目标实例对象分别具有唯一标识。
作为一种可选的方案,所述资源包括基于服务创建请求生成的定制资源CR。
作为一种可选的方案,上述装置用于通过如下方式监听第一服务器集群中资源的更新消息:监听所述第一服务器集群中待处理的资源的第一资源类型;在确定所述第一资源类型与当前允许处理的目标资源类型相同,且已获取到所述唯一处理权限的情况下,获取第一服务器集群中资源的更新消息。
作为一种可选的方案,上述装置用于通过如下方式在所述至少一个第三服务器集群中根据所述更新消息管理目标实例对象:从所述第一服务器集群中获取所述更新信息,其中,所述更新信息指示所述资源更新了以下内容至少之一:新建所述目标实例对象,修改所述目标实例对象,删除所述目标实例对象;基于所述更新信息,管理所述至少一个第三服务器集群中的所述目标实例对象。
作为一种可选的方案,上述装置用于通过如下至少之一的方式基于所述更新信息,管理所述至少一个第三服务器集群中的目标实例对象:在所述更新信息指示需要新建所述目标实例对象的情况下,在所述至少一个第三服务器集群中创建新的所述目标实例对象;在所述更新信息指示需要修改所述目标实例对象的情况下,在所述至少一个第三服务器集群中修改已创建的所述目标实例对象;在所述更新信息指示需要删除所述目标实例对象的情况下,在所述至少一个第三服务器集群中删除已创建的所述目标实例对象。
作为一种可选的方案,上述装置用于通过如下方式在至少一个第三服务器集群中根据所述更新消息调整目标实例对象:在所述目标实例对象已创建的情况下,监听所述目标实例对象在所述第三服务器集群中的当前状态,得到状态结果;在所述状态结果表示所述当前状态与所述预期状态不同时,将所述目标实例对象按照所述预期状态进行调整。
作为一种可选的方案,上述装置用于通过如下方式在所述状态结果表示所述当前状态与所述预期状态不同时,将所述目标实例对象按照所述预期状态进行调整:在所述状态结果表示所述目标实例对象中的第一实例对象处于异常状态的情况下,在所述多个第二服务器集群中选择第四服务器集群,其中,所述第一实例对象为所述目标实例对象中的任意实例对象;在所述第四服务器集群中创建第二实例对象,并删除所述第三服务器集群中的所述第一实例对象,其中,所述第二实例对象与所述第一实例对象具有同一标识。
作为一种可选的方案,上述装置用于通过如下方式在所述状态结果表示所述当前状态与所述预期状态不同时,将所述目标实例对象按照所述预期状态进行调整:在所述状态结果表示所述目标实例对象位于的所述第三服务器集群处于故障状态的情况下,在所述多个第二服务器集群中选择第五服务器集群;在所述第五服务器集群中,重新创建处于故障状态中的第三服务器集群中的实例对象,并删除所述第三服务器集群中的实例对象,其中,所述第五服务器集群中的实例对象与处于故障中的所述第三服务器集群中的实例对象具有同一标识。
关于上述实施例中的装置,其中各个模块执行操作的具体方式已经在有关该方法的实施例中进行了详细描述,此处将不做详细阐述说明。
关于上述实施例中的装置,可以通过包括但不限于使用相同或不同的模块执行上述任一步骤。
图6是根据一示例性实施例示出的一种用于资源处理的电子设备的框图。如图6所示,该电子设备包括处理器620和用于存储上述处理器可执行指令的存储器610。上述处理器被配置为执行指令,以实现上述的资源处理方法。本实施例中的电子设备还可以包括传输装置630、显示器640和连接总线650。传输装置630用于经由一个网络接收或者发送数据。上述的网络具体实例可包括有线网络及无线网络。在一个实例中,传输装置630包括一个网络适配器(Network Interface Controller,NIC),其可通过网线与其他网络设备与路由器相连从而可与互联网或局域网进行通讯。在一个实例中,传输装630为射频(RadioFrequency,RF)模块,其用于通过无线方式与互联网进行通讯。上述显示器640用于显示上述原始图像和目标图像;上述连接总线650,用于连接上述电子设备中的各个模块部件。
在示例性实施例中,还提供了一种包括指令的存储介质,例如包括指令的存储器610,上述指令可由电子设备的处理器620执行以完成上述方法。可选地,存储介质可以是非临时性计算机可读存储介质,例如,所述非临时性计算机可读存储介质可以是ROM、随机存取存储器(RAM)、CD-ROM、磁带、软盘和光数据存储设备等。
在示例性实施例中,还提供一种计算机程序产品,包括计算机程序/指令,上述计算机程序/指令被处理器执行时实现上述的信息传输方法。
本领域技术人员在考虑说明书及实践这里公开的公开后,将容易想到本公开的其它实施方案。本申请旨在涵盖本公开的任何变型、用途或者适应性变化,这些变型、用途或者适应性变化遵循本公开的一般性原理并包括本公开未公开的本技术领域中的公知常识或惯用技术手段。说明书和实施例仅被视为示例性的,本公开的真正范围和精神由下面的权利要求指出。
应当理解的是,本公开并不局限于上面已经描述并在附图中示出的精确结构,并且可以在不脱离其范围进行各种修改和改变。本公开的范围仅由所附的权利要求来限制。

Claims (21)

1.一种资源处理方法,其特征在于,应用于目标资源管理模块,包括:
监听第一服务器集群中资源的更新消息,其中,所述第一服务器集群用于存储所述资源,所述资源用于按照预期状态管理一组实例对象,所述目标资源管理模块为多个资源管理模块中具有唯一处理权限的资源管理模块,所述目标资源管理模块与所述第一服务器集群具有对应关系;
在所述更新消息指示所述资源发生变化时,根据多个第二服务器集群的资源使用状况,从所述多个第二服务器集群中选择至少一个第三服务器集群;
在所述至少一个第三服务器集群中根据所述更新消息管理目标实例对象,其中,所述一组实例对象包括所述目标实例对象,所述目标实例对象是按照更新后的所述资源确定的实例对象,不同的所述第三服务器集群中的所述目标实例对象分别具有唯一标识;
所述在所述至少一个第三服务器集群中根据所述更新消息管理目标实例对象,包括:在所述目标实例对象已创建的情况下,监听所述目标实例对象在所述第三服务器集群中的当前状态,得到状态结果,在所述状态结果表示所述当前状态与所述预期状态不同时,将所述目标实例对象按照所述预期状态进行调整;
所述在所述状态结果表示所述当前状态与所述预期状态不同时,将所述目标实例对象按照所述预期状态进行调整,包括:在所述状态结果表示所述目标实例对象中的第一实例对象处于异常状态的情况下,在所述多个第二服务器集群中选择第四服务器集群,其中,所述第一实例对象为所述目标实例对象中的任意实例对象,在所述第四服务器集群中创建第二实例对象,并删除所述第三服务器集群中的所述第一实例对象,其中,所述第二实例对象与所述第一实例对象具有同一标识。
2.根据权利要求1所述的方法,其特征在于,所述资源包括基于服务创建请求生成的定制资源CR。
3.根据权利要求1所述的方法,其特征在于,所述监听第一服务器集群中资源的更新消息,包括:
监听所述第一服务器集群中待处理的资源的第一资源类型;
在确定所述第一资源类型与当前允许处理的目标资源类型相同,且已获取到所述唯一处理权限的情况下,获取第一服务器集群中资源的更新消息。
4.根据权利要求1所述的方法,其特征在于,在所述至少一个第三服务器集群中根据所述更新消息管理目标实例对象,包括:
从所述第一服务器集群中获取所述更新消息,其中,所述更新消息指示所述资源更新了以下内容至少之一:新建所述目标实例对象,修改所述目标实例对象,删除所述目标实例对象;
基于所述更新消息,管理所述至少一个第三服务器集群中的所述目标实例对象。
5.根据权利要求4所述的方法,其特征在于,基于所述更新消息,管理所述至少一个第三服务器集群中的目标实例对象,包括以下至少之一:
在所述更新消息指示需要新建所述目标实例对象的情况下,在所述至少一个第三服务器集群中创建新的所述目标实例对象;
在所述更新消息指示需要修改所述目标实例对象的情况下,在所述至少一个第三服务器集群中修改已创建的所述目标实例对象;
在所述更新消息指示需要删除所述目标实例对象的情况下,在所述至少一个第三服务器集群中删除已创建的所述目标实例对象。
6.根据权利要求1所述的方法,其特征在于,所述在所述状态结果表示所述当前状态与所述预期状态不同时,将所述目标实例对象按照所述预期状态进行调整,包括:
在所述状态结果表示所述目标实例对象位于的所述第三服务器集群处于故障状态的情况下,在所述多个第二服务器集群中选择第五服务器集群;
在所述第五服务器集群中,重新创建处于故障状态中的第三服务器集群中的实例对象,并删除所述第三服务器集群中的实例对象,其中,所述第五服务器集群中的实例对象与处于故障中的所述第三服务器集群中的实例对象具有同一标识。
7.一种资源处理***,其特征在于,包括:
第一服务器集群,用于存储资源;
目标资源管理模块,用于监听所述第一服务器集群中资源的更新消息,其中,所述资源用于按照预期状态管理一组实例对象,所述目标资源管理模块为多个资源管理模块中具有唯一处理权限的资源管理模块,所述目标资源管理模块与所述第一服务器集群具有对应关系;
所述目标资源管理模块,还用于在所述更新消息指示所述资源发生变化时,根据多个第二服务器集群的资源使用状况,从所述多个第二服务器集群中选择至少一个第三服务器集群;
所述至少一个第三服务器集群,用于根据所述更新消息管理目标实例对象,其中,所述一组实例对象包括所述目标实例对象,所述目标实例对象是按照更新后的所述资源确定的实例对象,不同的所述第三服务器集群中的所述目标实例对象分别具有唯一标识;
在所述至少一个第三服务器集群中根据所述更新消息管理目标实例对象,包括:在所述目标实例对象已创建的情况下,监听所述目标实例对象在所述第三服务器集群中的当前状态,得到状态结果,在所述状态结果表示所述当前状态与所述预期状态不同时,将所述目标实例对象按照所述预期状态进行调整;
所述在所述状态结果表示所述当前状态与所述预期状态不同时,将所述目标实例对象按照所述预期状态进行调整,包括:在所述状态结果表示所述目标实例对象中的第一实例对象处于异常状态的情况下,在所述多个第二服务器集群中选择第四服务器集群,其中,所述第一实例对象为所述目标实例对象中的任意实例对象,在所述第四服务器集群中创建第二实例对象,并删除所述第三服务器集群中的所述第一实例对象,其中,所述第二实例对象与所述第一实例对象具有同一标识。
8.根据权利要求7所述的***,其特征在于,所述资源包括基于服务创建请求生成的定制资源CR。
9.根据权利要求7所述的***,其特征在于,所述目标资源管理模块,包括:
第一监听单元,用于监听所述第一服务器集群中待处理的资源的第一资源类型;
第一获取单元,用于在确定所述第一资源类型与当前允许处理的目标资源类型相同,且已获取到所述唯一处理权限的情况下,获取第一服务器集群中资源的更新消息。
10.根据权利要求7所述的***,其特征在于,所述***用于通过如下方式在所述至少一个第三服务器集群中根据所述更新消息管理目标实例对象:
从所述第一服务器集群中获取所述更新消息,其中,所述更新消息指示所述资源更新了以下内容至少之一:新建所述目标实例对象,修改所述目标实例对象,删除所述目标实例对象;
基于所述更新消息,管理所述至少一个第三服务器集群中的所述目标实例对象。
11.根据权利要求10所述的***,其特征在于,所述***用于通过如下至少之一的方式基于所述更新消息,管理所述至少一个第三服务器集群中的目标实例对象:
在所述更新消息指示需要新建所述目标实例对象的情况下,在所述至少一个第三服务器集群中创建新的所述目标实例对象;
在所述更新消息指示需要修改所述目标实例对象的情况下,在所述至少一个第三服务器集群中修改已创建的所述目标实例对象;
在所述更新消息指示需要删除所述目标实例对象的情况下,在所述至少一个第三服务器集群中删除已创建的所述目标实例对象。
12.根据权利要求7所述的***,其特征在于,所述***用于通过如下方式在所述状态结果表示所述当前状态与所述预期状态不同时,将所述目标实例对象按照所述预期状态进行调整:
在所述状态结果表示所述目标实例对象位于的所述第三服务器集群处于故障状态的情况下,在所述多个第二服务器集群中选择第五服务器集群;
在所述第五服务器集群中,重新创建处于故障状态中的第三服务器集群中的实例对象,并删除所述第三服务器集群中的实例对象,其中,所述第五服务器集群中的实例对象与处于故障中的所述第三服务器集群中的实例对象具有同一标识。
13.一种资源处理装置,其特征在于,包括:
监听模块,用于监听第一服务器集群中资源的更新消息,其中,所述第一服务器集群用于存储所述资源,所述资源用于按照预期状态管理一组实例对象,目标资源管理模块为多个资源管理模块中具有唯一处理权限的资源管理模块,所述目标资源管理模块与所述第一服务器集群具有对应关系;
选择模块,用于在所述更新消息指示所述资源发生变化时,根据多个第二服务器集群的资源使用状况,从所述多个第二服务器集群中选择至少一个第三服务器集群;
管理模块,用于在所述至少一个第三服务器集群中根据所述更新消息管理目标实例对象,其中,所述一组实例对象包括所述目标实例对象,所述目标实例对象是按照更新后的所述资源确定的实例对象,不同的所述第三服务器集群中的所述目标实例对象分别具有唯一标识;
所述装置用于通过如下方式在所述至少一个第三服务器集群中根据所述更新消息管理目标实例对象:在所述目标实例对象已创建的情况下,监听所述目标实例对象在所述第三服务器集群中的当前状态,得到状态结果,在所述状态结果表示所述当前状态与所述预期状态不同时,将所述目标实例对象按照所述预期状态进行调整;
所述装置用于通过如下方式在所述状态结果表示所述当前状态与所述预期状态不同时,将所述目标实例对象按照所述预期状态进行调整:在所述状态结果表示所述目标实例对象中的第一实例对象处于异常状态的情况下,在所述多个第二服务器集群中选择第四服务器集群,其中,所述第一实例对象为所述目标实例对象中的任意实例对象,在所述第四服务器集群中创建第二实例对象,并删除所述第三服务器集群中的所述第一实例对象,其中,所述第二实例对象与所述第一实例对象具有同一标识。
14.根据权利要求13所述的装置,其特征在于,所述资源包括基于服务创建请求生成的定制资源CR。
15.根据权利要求13所述的装置,其特征在于,所述监听模块,包括:
第二监听单元,用于监听所述第一服务器集群中待处理的资源的第一资源类型;
第二获取单元,用于在确定所述第一资源类型与当前允许处理的目标资源类型相同,且已获取到所述唯一处理权限的情况下,获取第一服务器集群中资源的更新消息。
16.根据权利要求13所述的装置,其特征在于,所述装置用于通过如下方式在所述至少一个第三服务器集群中根据所述更新消息管理目标实例对象:
从所述第一服务器集群中获取所述更新消息,其中,所述更新消息指示所述资源更新了以下内容至少之一:新建所述目标实例对象,修改所述目标实例对象,删除所述目标实例对象;
基于所述更新消息,管理所述至少一个第三服务器集群中的所述目标实例对象。
17.根据权利要求16所述的装置,其特征在于,所述装置用于通过如下至少之一的方式基于所述更新消息,管理所述至少一个第三服务器集群中的目标实例对象:
在所述更新消息指示需要新建所述目标实例对象的情况下,在所述至少一个第三服务器集群中创建新的所述目标实例对象;
在所述更新消息指示需要修改所述目标实例对象的情况下,在所述至少一个第三服务器集群中修改已创建的所述目标实例对象;
在所述更新消息指示需要删除所述目标实例对象的情况下,在所述至少一个第三服务器集群中删除已创建的所述目标实例对象。
18.根据权利要求13所述的装置,其特征在于,所述装置用于通过如下方式在所述状态结果表示所述当前状态与所述预期状态不同时,将所述目标实例对象按照所述预期状态进行调整:
在所述状态结果表示所述目标实例对象位于的所述第三服务器集群处于故障状态的情况下,在所述多个第二服务器集群中选择第五服务器集群;
在所述第五服务器集群中,重新创建处于故障状态中的第三服务器集群中的实例对象,并删除所述第三服务器集群中的实例对象,其中,所述第五服务器集群中的实例对象与处于故障中的所述第三服务器集群中的实例对象具有同一标识。
19.一种电子设备,其特征在于,包括:
处理器;
用于存储所述处理器可执行指令的存储器;
其中,所述处理器被配置为执行所述指令,以实现如权利要求1至6中任一项所述的资源处理方法。
20.一种计算机可读存储介质,其特征在于,当所述计算机可读存储介质中的指令由电子设备的处理器执行时,使得电子设备能够执行如权利要求1至6中任一项所述的资源处理方法。
21.一种计算机程序产品,包括计算机程序,其特征在于,所述计算机程序被处理器执行时实现权利要求1至6中任一项所述的资源处理方法。
CN202110991387.1A 2021-08-26 2021-08-26 资源处理方法和装置、电子设备及存储介质 Active CN113778623B (zh)

Priority Applications (1)

Application Number Priority Date Filing Date Title
CN202110991387.1A CN113778623B (zh) 2021-08-26 2021-08-26 资源处理方法和装置、电子设备及存储介质

Applications Claiming Priority (1)

Application Number Priority Date Filing Date Title
CN202110991387.1A CN113778623B (zh) 2021-08-26 2021-08-26 资源处理方法和装置、电子设备及存储介质

Publications (2)

Publication Number Publication Date
CN113778623A CN113778623A (zh) 2021-12-10
CN113778623B true CN113778623B (zh) 2024-04-16

Family

ID=78839726

Family Applications (1)

Application Number Title Priority Date Filing Date
CN202110991387.1A Active CN113778623B (zh) 2021-08-26 2021-08-26 资源处理方法和装置、电子设备及存储介质

Country Status (1)

Country Link
CN (1) CN113778623B (zh)

Families Citing this family (6)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
CN114363175A (zh) * 2022-03-01 2022-04-15 北京金山云网络技术有限公司 集群监控方法、装置和电子设备
CN114884668A (zh) * 2022-03-17 2022-08-09 阿里巴巴(中国)有限公司 资源管理方法及计算机可读存储介质
CN114936048B (zh) * 2022-05-10 2024-03-19 北京达佳互联信息技术有限公司 配置管理方法、装置、电子设备及存储介质
CN115396290B (zh) * 2022-06-29 2023-11-17 北京车网科技发展有限公司 一种故障自动恢复方法、装置及服务***
CN115277652B (zh) * 2022-06-29 2024-03-22 北京百度网讯科技有限公司 基于推理服务的流媒体处理方法、装置、电子设备
CN115623008B (zh) * 2022-11-14 2023-04-07 杭州谐云科技有限公司 一种Kubernetes资源的索引构建方法及***

Citations (5)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
CN111277460A (zh) * 2020-01-17 2020-06-12 江苏满运软件科技有限公司 一种ZooKeeper容器化控制的方法、装置、存储介质及电子设备
CN111405055A (zh) * 2020-03-23 2020-07-10 北京达佳互联信息技术有限公司 多集群管理方法、***、服务器、存储介质
CN112104723A (zh) * 2020-09-07 2020-12-18 腾讯科技(深圳)有限公司 一种多集群的数据处理***及方法
CN112905306A (zh) * 2021-03-29 2021-06-04 建信金融科技有限责任公司 多集群容器管理方法、装置、电子设备和存储介质
CN113031874A (zh) * 2021-03-26 2021-06-25 网易(杭州)网络有限公司 基于Kubernetes集群的缓存处理方法、装置、设备及存储介质

Patent Citations (5)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
CN111277460A (zh) * 2020-01-17 2020-06-12 江苏满运软件科技有限公司 一种ZooKeeper容器化控制的方法、装置、存储介质及电子设备
CN111405055A (zh) * 2020-03-23 2020-07-10 北京达佳互联信息技术有限公司 多集群管理方法、***、服务器、存储介质
CN112104723A (zh) * 2020-09-07 2020-12-18 腾讯科技(深圳)有限公司 一种多集群的数据处理***及方法
CN113031874A (zh) * 2021-03-26 2021-06-25 网易(杭州)网络有限公司 基于Kubernetes集群的缓存处理方法、装置、设备及存储介质
CN112905306A (zh) * 2021-03-29 2021-06-04 建信金融科技有限责任公司 多集群容器管理方法、装置、电子设备和存储介质

Also Published As

Publication number Publication date
CN113778623A (zh) 2021-12-10

Similar Documents

Publication Publication Date Title
CN113778623B (zh) 资源处理方法和装置、电子设备及存储介质
US10887404B2 (en) Method and apparatus for virtualized network function chaining management
US10644952B2 (en) VNF failover method and apparatus
CN107534570B (zh) 用于虚拟化网络功能监控的计算机***、方法和介质
US9515952B2 (en) Method of and system for managing computing resources
EP2796996B1 (en) Cloud infrastructure based management system and method for performing maintenance and deployment for application system
US10511506B2 (en) Method and device for managing virtualized network function
CN106301876B (zh) 物理机升级方法、业务迁移方法及装置
CN110708188B (zh) 一种基于sla的网络切片的创建方法和装置
CN107800565B (zh) 巡检方法、装置、***、计算机设备和存储介质
CN113742031B (zh) 节点状态信息获取方法、装置、电子设备及可读存储介质
CN111277432B (zh) 配置信息更新方法、装置、电子设备及存储介质
CN104243515A (zh) 一种配置信息处理方法及装置
CN104978172A (zh) Sdn应用集成管理和控制的方法、***及设备
CN111970354A (zh) 一种边缘计算中的应用管理方法以及相关装置
EP3457668B1 (en) Clustering in unified communication and collaboration services
CN110932914A (zh) 部署方法、部署装置、混合云***架构及计算机存储介质
CN115086330A (zh) 跨集群负载均衡***
CN110609656A (zh) 存储管理方法、电子设备和计算机程序产品
CN111897643A (zh) 线程池配置***、方法、装置和存储介质
CN111078238A (zh) 容器环境下应用配置集中处理方法及装置
CN113824801B (zh) 一种智能融合终端统一接入管理组件***
CN115543793A (zh) 一种目标服务器的***部署方法、装置和运维中台
CN111061723A (zh) 工作流实现方法及装置
CN111338647B (zh) 一种大数据集群管理方法和装置

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