CN105933137B - 一种资源管理方法、装置及系统 - Google Patents
一种资源管理方法、装置及系统 Download PDFInfo
- Publication number
- CN105933137B CN105933137B CN201510968169.0A CN201510968169A CN105933137B CN 105933137 B CN105933137 B CN 105933137B CN 201510968169 A CN201510968169 A CN 201510968169A CN 105933137 B CN105933137 B CN 105933137B
- Authority
- CN
- China
- Prior art keywords
- service
- slave
- container
- service container
- destination
- 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
Links
Classifications
-
- 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/06—Management of faults, events, alarms or notifications
- H04L41/0654—Management of faults, events, alarms or notifications using network fault recovery
- H04L41/0668—Management of faults, events, alarms or notifications using network fault recovery by dynamic selection of recovery network elements, e.g. replacement by the most appropriate element after failure
-
- 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/0893—Assignment of logical groups to network elements
-
- 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/50—Network service management, e.g. ensuring proper service fulfilment according to agreements
- H04L41/5041—Network service management, e.g. ensuring proper service fulfilment according to agreements characterised by the time relationship between creation and deployment of a service
- H04L41/5054—Automatic deployment of services triggered by the service manager, e.g. service implementation by automatic configuration of network components
Landscapes
- Engineering & Computer Science (AREA)
- Computer Networks & Wireless Communication (AREA)
- Signal Processing (AREA)
- Debugging And Monitoring (AREA)
Abstract
本发明公开了一种资源管理方法、装置及系统,用以得到高可靠和高可用的服务系统。包括:获取从机上的服务容器的服务运行状态信息;接收创建目标服务容器的指令,根据指令中目标服务容器的服务标识和配置信息,遍历服务存储目录中存储的服务容器与从机的映射关系,按照预定调度策略确定创建目标服务容器的目标从机;在服务存储目录中添加目标服务容器与目标从机的映射关系,以使目标从机根据映射关系,在目标从机上创建目标服务容器,使得目标服务容器代替运行异常的服务容器提供相同的服务。该方法可实现资源自适应配置,并基于容器技术,实现系统的高可用。
Description
技术领域
本发明实施例涉及通信技术领域,尤其涉及一种资源管理方法、装置及系统。
背景技术
随着互联网交易量的迅速增长,要求支付平台应具备快速、高效的处理模式,但是针对突发资源需求和复杂配置环境,国内支付平台的支付管理系统存在着从开发测试到生产部署不能快速创建模型、缺少密集资源场景中基于容器的模块化分布式系统设计、以及还不能针对所有从机资源进行自适应配置等技术问题,支付管理系统存在的这些问题使得支付系统的高可靠性和高可用性已经成为亟待解决的技术难题。例如,在支付安全方面,差错处理平台就亟待一种高可用系统架构来以保证交易的有效性和不可抵赖性。
容器技术可提供操作系统级的进程隔离,并具有启动快消耗低的特点,容器技术应用在集群管理系统具有显著的成效,例如,美国谷歌公司的Omega系统,Google的Omega系统采用的是第三代共享状态架构。又如国内百度公司的Matrix集群管理系统,百度的Matrix是基于容器技术、可以实现机器共享的集群管理系统,目前服务器规模超过10万,Matrix可实现机器的全自动运维,大部分故障都可以实现无人介入处理。
尽管容器技术潜力巨大,但是目前国内外大多数容器集群管理框架主要集中于简化配置、代码流水线管理、应用管理和快速开发,大多数容器集群管理框架在国内支付领域尚没有应用案例。
综上,现有支付管理平台亟待一种基于容器技术的高可用框架来实现支付系统的可靠性和高可用性。
发明内容
本发明实施例提供一种资源管理方法、装置及系统,用以实现支付系统的可靠性和高可用性。
本发明实施例提供一种资源管理方法,包括:
获取从机上的服务容器的服务运行状态信息;
接收创建目标服务容器的指令,所述指令是根据获取的所述从机上的服务容器的服务运行状态信息,确定存在运行异常的服务容器时发送的,所述指令中包括所述目标服务容器的服务标识和配置信息,所述目标服务容器的服务标识和配置信息与所述运行异常的服务容器相同;
根据所述服务标识和配置信息,遍历服务存储目录中存储的服务容器与从机的映射关系,按照预定调度策略确定创建所述目标服务容器的目标从机;
在所述服务存储目录中添加所述目标服务容器与所述目标从机的映射关系,以使所述目标从机根据所述映射关系,在所述目标从机上创建所述目标服务容器,使得所述目标服务容器代替所述运行异常的服务容器提供相同的服务。
上述方法流程中,由主机执行,主机实时获取从机上的服务容器的运行状态信息,同时接收针对运行异常的服务容器而发起的创建目标服务容器的指令,指令中目标服务容器的服务标识和配置信息与运行异常的服务容器相同,主机根据创建指令中目标服务容器的服务标识和配置信息快速进行资源自适应配置,通过遍历服务存储目录中存储的服务容器与从机的映射关系,按照预定调度策略确定创建目标服务容器的目标从机,将创建目标服务容器的任务分配给目标从机,并通过在服务存储目录中添加目标服务容器与目标从机的映射关系,以使目标从机根据映射关系,在目标从机上创建目标服务容器,使得目标服务容器代替运行异常的服务容器提供相同的服务,因从机基于容器技术创建服务容器具有占用底层硬件资源少,可快速配置,迁移可靠性好的特点,将服务的运行部署在从机最底层的服务容器上执行,使得服务运行一旦出错,可快速启动新的服务容器使得故障服务得以快速修复,因此本发明实施例通过主从机模式进行资源自适应配置进而实现整个服务系统的可靠性和高可用性。
本发明实施例提供一种资源管理方法,包括:
检测主机的服务存储目录中从机与服务容器的映射关系是否有更新;
若检测到更新的目标服务容器与目标从机的映射关系中,所述目标从机的从机标识为本机标识,则根据更新的所述映射关系,在本机上创建所述目标服务容器;
其中,新添加的所述映射关系是所述主机根据接收到创建所述目标服务器的指令时新添加的;所述指令是根据从机上的服务容器的服务运行状态信息,确定存在运行异常的服务容器时向所述主机发送的,所述指令中包括所述目标服务容器的服务标识和配置信息,所述目标服务容器的服务标识和配置信息与所述运行异常的服务容器相同。
上述方法流程由从机控制执行,从机通过定时从机与服务容器的映射关系是否有更新,若检测到更新的目标服务容器与目标从机的映射关系中,目标从机的从机标识为本机标识,则根据更新的目标服务容器与本机的映射关系,在本机上创建目标服务容器,因更新的目标服务容器与本机的映射关系是主机接收到指令之后更新的,而指令是针对运行异常的服务容器而发起的创建目标服务容器的指令,指令中目标服务容器的服务标识和配置信息与运行异常的服务容器相同,使得在本机上创建的目标服务容器能够代替运行异常的服务容器提供相同的服务。因从机基于容器技术创建服务容器具有占用底层硬件资源少,可快速配置,迁移可靠性好的特点,将服务的运行部署在从机最底层的服务容器上执行,使得服务运行一旦出错,可快速启动新的服务容器使得故障服务得以快速修复,因此本发明实施例通过主从机模式进行资源自适应配置进而实现整个服务系统的可靠性和高可用性。
本发明实施例提供一种资源管理装置,包括:
获取单元,用于获取从机上的服务容器的服务运行状态信息;
接收单元,用于接收创建目标服务容器的指令,所述指令是根据获取的所述从机上的服务容器的服务运行状态信息,确定存在运行异常的服务容器时发送的,所述指令中包括所述目标服务容器的服务标识和配置信息,所述目标服务容器的服务标识和配置信息与所述运行异常的服务容器相同;
第一处理单元,用于根据所述服务标识和配置信息,遍历服务存储目录中存储的服务容器与从机的映射关系,按照预定调度策略确定创建所述目标服务容器的目标从机;
第二处理单元,用于在所述服务存储目录中添加所述目标服务容器与所述目标从机的映射关系,以使所述目标从机根据所述映射关系,在所述目标从机上创建所述目标服务容器,使得所述目标服务容器代替所述运行异常的服务容器提供相同的服务。
上述装置位于主机中,主机实时获取从机上的服务容器的运行状态信息,同时接收针对运行异常的服务容器而发起的创建目标服务容器的指令,指令中目标服务容器的服务标识和配置信息与运行异常的服务容器相同,主机根据创建指令中目标服务容器的服务标识和配置信息快速进行资源自适应配置,通过遍历服务存储目录中存储的服务容器与从机的映射关系,按照预定调度策略确定创建目标服务容器的目标从机,将创建目标服务容器的任务分配给目标从机,并通过在服务存储目录中添加目标服务容器与目标从机的映射关系,以使目标从机根据映射关系,在目标从机上创建目标服务容器,使得目标服务容器代替运行异常的服务容器提供相同的服务,因从机基于容器技术创建服务容器具有占用底层硬件资源少,可快速配置,迁移可靠性好的特点,将服务的运行部署在从机最底层的服务容器上执行,使得服务运行一旦出错,可快速启动新的服务容器使得故障服务得以快速修复,因此本发明实施例通过主从机模式进行资源自适应配置进而实现整个服务系统的可靠性和高可用性。
本发明实施例提供一种资源管理装置,包括:
检测单元,用于检测主机的服务存储目录中从机与服务容器的映射关系是否有更新;
创建单元,用于若所述检测单元检测到更新的目标服务容器与目标从机的映射关系中,所述目标从机的从机标识为本机标识,则根据更新的所述映射关系,在本机上创建所述目标服务容器;
其中,新添加的所述映射关系是所述主机根据接收到创建所述目标服务器的指令时新添加的;所述指令是根据从机上的服务容器的服务运行状态信息,确定存在运行异常的服务容器时向所述主机发送的,所述指令中包括所述目标服务容器的服务标识和配置信息,所述目标服务容器的服务标识和配置信息与所述运行异常的服务容器相同。
上述装置位于从机中,从机通过定时从机与服务容器的映射关系是否有更新,若检测到更新的目标服务容器与目标从机的映射关系中,目标从机的从机标识为本机标识,则根据更新的目标服务容器与本机的映射关系,在本机上创建目标服务容器,因更新的目标服务容器与本机的映射关系是主机接收到指令之后更新的,而指令是针对运行异常的服务容器而发起的创建目标服务容器的指令,指令中目标服务容器的服务标识和配置信息与运行异常的服务容器相同,使得在本机上创建的目标服务容器能够代替运行异常的服务容器提供相同的服务。因从机基于容器技术创建服务容器具有占用底层硬件资源少,可快速配置,迁移可靠性好的特点,将服务的运行部署在从机最底层的服务容器上执行,使得服务运行一旦出错,可快速启动新的服务容器使得故障服务得以快速修复,因此本发明实施例通过主从机模式进行资源自适应配置进而实现整个服务系统的可靠性和高可用性。
本发明实施例提供一种资源管理系统,包括:
主机,用于获取所述从机上的服务容器的服务运行状态信息;接收向主机下发的创建目标服务容器的指令,所述指令是根据从机上的服务容器的服务运行状态信息,确定存在运行异常的服务容器时发送的;所述指令中包括所述目标服务容器的服务标识和配置信息,所述目标服务容器的服务标识和配置信息与所述运行异常的服务容器相同;根据所述服务标识和配置信息,遍历服务存储目录中存储的服务容器与从机的映射关系,按照预定调度策略确定创建所述目标服务容器的目标从机;在所述服务存储目录中添加所述目标服务容器与所述目标从机的映射关系,以使所述目标从机根据所述映射关系,在所述目标从机上创建所述目标服务容器,使得所述目标服务容器代替所述运行异常的服务容器提供相同的服务;
从机,用于检测所述主机的服务存储目录中从机与服务容器的映射关系是否有更新;若检测到更新的目标服务容器与目标从机的映射关系中,所述目标从机的从机标识为本机标识,则根据更新的所述映射关系,在本机上创建所述目标服务容器。
上述实施例中,主机实时获取从机上的服务容器的运行状态信息,同时接收针对运行异常的服务容器而发起的创建目标服务容器的指令,指令中目标服务容器的服务标识和配置信息与运行异常的服务容器相同,主机根据创建指令中目标服务容器的服务标识和配置信息快速进行资源自适应配置,通过遍历服务存储目录中存储的服务容器与从机的映射关系,按照预定调度策略确定创建所述目标服务容器的目标从机,将创建目标服务容器的任务分配给目标从机,并通过在所述服务存储目录中添加所述目标服务容器与所述目标从机的映射关系。从机通过定时从机与服务容器的映射关系是否有更新,若检测到更新的目标服务容器与目标从机的映射关系中,所述目标从机的从机标识为本机标识,则根据更新的目标服务容器与本机的映射关系,在本机上创建所述目标服务容器,因更新的目标服务容器与本机的映射关系是主机接收到指令之后更新的,而指令是针对运行异常的服务容器而发起的创建目标服务容器的指令,指令中目标服务容器的服务标识和配置信息与运行异常的服务容器相同,使得在本机上创建的所述目标服务容器能够代替所述运行异常的服务容器提供相同的服务。因从机基于容器技术创建服务容器具有占用底层硬件资源少,可快速配置,迁移可靠性好的特点,将服务的运行部署在从机最底层的服务容器上执行,使得服务运行一旦出错,可快速启动新的服务容器使得故障服务得以快速修复,因此本发明实施例通过主从机模式进行资源自适应配置进而实现整个服务系统的可靠性和高可用性。
附图说明
为了更清楚地说明本发明实施例中的技术方案,下面将对实施例描述中所需要使用的附图作简要介绍,显而易见地,下面描述中的附图仅仅是本发明的一些实施例,对于本领域的普通技术人员来讲,在不付出创造性劳动性的前提下,还可以根据这些附图获得其他的附图。
图1a为本发明实施例提供的一种HECF模型的框架示意图;
图1b为本发明实施例提供的基于HECF模型的服务访问流程图;
图2为本发明实施例提供的HECF模型中从机的层次结构示意图;
图3为本发明实施例提供的一种资源管理方法的方法流程图;
图4为本发明实施例提供的一种对筛选的候选从机进行评分的方法流程图;
图5为本发明实施例提供的一种资源管理方法流程图;
图6为本发明实施例提供的一种HECF模型的性能测试的两个容器管理单元nmon监控结果示意图;
图7为本发明实施例提供的一种HECF模型的性能测试的两个容器管理单元nmon监控结果示意图;
图8为本发明实施例提供的一种HECF模型应用在差错处理平台中的构架示意图;
图9为本发明实施例提供的一种HECF模型应用在差错处理平台中的测试流量分析示意图;
图10为本发明实施例提供的一种资源管理装置的结构示意图;
图11为本发明实施例提供的一种资源管理装置的结构示意图;
图12为本发明实施例提供的一种资源系统的结构示意图。
具体实施方式
为了使本发明的目的、技术方案和优点更加清楚,下面将结合附图对本发明作进一步地详细描述,显然,所描述的实施例仅仅是本发明一部分实施例,而不是全部的实施例。基于本发明中的实施例,本领域普通技术人员在没有做出创造性劳动前提下所获得的所有其它实施例,都属于本发明保护的范围。
为了实现支付系统的可靠性和高可用性,本发明实施例提供了一种如图1a所示的HECF模型(High-availability Elastic Container Framework,高可用弹性容器框架),HECF模型具体包括:由主机控制的主机控制模块和主机下挂的多个从机的从机控制模块构成,其中,主机控制模块包括:高可用代理模块、键值存储模块、服务中心、调度器、复制器。从机控制模块包括:从机代理,容器管理单元,服务容器。
主机是HECF模型的控制节点,用于通过RESTful接口接收维护人员发出的创建新服务容器的指令,通过键值存储模块存储服务容器与从机的映射关系,通过高可用代理模块读取键值存储模块中的数据,获取从机上的服务容器的服务运行状态信息,并由服务中心执行资源配置操作。
高可用代理模块通过序列化和反序列化读取键值存储模块中的数据,通过RESTful接口实时反馈监测到的从机上的服务容器的服务运行状态数据给数据中心的维护人员,维护人员根据从机上的服务容器的服务运行状态数据监控从机中服务容器的运行情况。为了提高序列化效率和数据的通用性,所有RESTful接口发送的数据均采用JSON格式。
主机中的键值存储模块采用支持多机REST-API访问的轻量级Key/Value平台。从机启动时,通过HTTP+JSON API接口在键值存储模块中为从机上的每个服务容器注册,生成代表服务容器与从机映射关系的键值对,并通过设置Key TTL来定制保证服务心跳的时间。在从机运行过程中,如果服务容器故障退出,需要通过HTTP+JSON API接口删除故障服务容器对应的键值对。键值存储模块为从机中运行的服务建立了一个强一致性高可用的服务存储目录,存储了所有从机与从机上的服务容器的映射关系。
服务中心,用于根据实际的资源配置需求,执行资源的快速再配置。触发服务中心进行资源配置包括以下几种场景:其一,当需要进行服务的横向扩展时,服务中心接受维护人员的操作命令执行资源的快速再配置;其二,对各从机以及从机上的服务容器集群进行编排时,服务中心接受维护人员的操作命令执行资源的快速再配置;其三,数据中心维护人员根据高可用代理模块监测到的从机上的服务容器的运行状态信息,确定从机或者从机上的服务容器故障时,服务中心接受维护人员的操作命令执行资源的快速再配置。具体的,服务中心通过调度器确定合适的目标从机,通过复制器获取需要创建的服务容器的配置,然后在键值存储模块添加或删除键值对来触发从机创建新的服务容器。
另外,服务中心本身提供访问代理的功能,使得从机上部署的服务可以响应外部请求。以具体场景为例,如图1b所示的基于HECF模型的服务访问流程图,要实现服务的访问,第1步,从机代理响应一个访问代理的请求,访问代理的请求是主机的服务中心发送的,第2步,基于端口制定规则,从机代理打开本地一个端口,第3步,获取对客户侧发起的访问请求响应的访问代理的端口和地址,第4步,通过配置的iptables规则将访问代理的流量重定向到之前打开的端口,第5步,访问代理将访问该端口的请求转发到下层的某一个容器单元的服务容器。
复制器为集群提供了副本管理功能,当服务容器损坏时,可以根据为服务容器预先设定的配置快速将损坏的服务容器的配置复制给将要创建的目标服务容器。
调度器,能够按照设定的筛选策略确定可用的从机,并根据评分规则快速快速确定目标从机,以使服务中心将创建目标服务容器的任务分配给目标从机上,实现资源的动态调配。
以一个具体场景为例,当数据中心维护人员向服务中心发起请求要创建一个目标服务容器时,服务中心调用调度器,调度器根据服务中心的调用,选择某一台可用的从机作为目标从机,并向服务中心返回一个确认信号。服务中心在键值存储模块创建一个“对象占位符”来添加代表目标服务容器与目标从机映射关系的键值对,Key值是服务容器的服务标识,Value的值是从机的host值。服务中心调用复制器,得到为目标服务容器复制的配置信息,并将目标服务容器的配置与输入的键值对建立对应关系,存储在键值存储模块中。因此,相当于从机集群中所有消息和实体对象都作为资源存储到键值存储模块。
整个主机部署在一台服务器上,相当于集群的控制中心。从机控制模块被配置为定时主动检测主机上的键值存储模块的信息,若检测到主机的键值存储模块添加的“对象占位符”中的对象信息与本机相关,则根据键值存储模块添加的“对象占位符”中的对象信息,向本机的内部接口发起创建服务容器的请求。
对于从机来说,每一个从机都是三层结构,如图2所示,从机本身是最高级,通过从机代理控制从机上的多个容器管理单元,每个容器管理单元中又运行至少一个容器。每个容器管理单元在创建时都自动创建一个基础容器,这个基础容器配置了容器管理单元集群内部访问IP和端口,内部IP和集群中主机的内部IP配置在同一网段。数据中心维护人员通过服务中心请求创建的容器都使用这个基础容器的网络配置。在每个容器管理单元中,提供同一服务的容器只能有一个,而提供不同服务的容器需要的端口不冲突,没有数量的限制。
本发明实施例利用HECF模型的主从模式实现资源的自适应配置。HECF模型的控制原理如下:
从机根据预先设定的配置要求向键值存储模块实时写入服务运行状态、服务运行过程信息;主机中的高可用代理模块实时读取键值存储模块中从机的运行状态,为资源再配置提供支持。维护人员通过主机上的高可用代理模块监控从机上部署的服务运行状态,并在发生主机无法自动修复的故障时进行人工干预。当物理节点故障停止运行时,在上面运行的服务容器或容器管理单元要迁移到正在运行的物理节点上,当容器管理单元或服务容器故障停止运行时,需要重启一个容器管理单元或服务容器来实现服务的高可用;服务中心接收到维护人员的命令创建一定数量的服务容器提供服务时,服务中心根据服务需求,执行资源的快速再配置,通过确定目标从机,将服务容器合理的分配在目标从机上来动态地调配底层硬件资源。因服务容器具有占用底层硬件资源少,可快速配置,迁移可靠性好的特点,由服务容器执行服务的运行,使得服务运行一旦出错,可快速得到修复,本发明实施例将上述HECF模型应用在支付系统,使得支付系统能够进行资源自适应配置,实现支付系统的可靠性和高可用性。
基于上述基于容器技术的高可用框架,本发明实施例提供了一种资源管理方法如图3所示,包括:
步骤301,获取从机上的服务容器的服务运行状态信息;
步骤302,接收创建目标服务容器的指令,指令是根据获取的从机上的服务容器的服务运行状态信息,确定存在运行异常的服务容器时发送的,指令中包括目标服务容器的服务标识和配置信息,目标服务容器的服务标识和配置信息与运行异常的服务容器相同;
步骤303,根据服务标识和配置信息,遍历服务存储目录中存储的服务容器与从机的映射关系,按照预定调度策略确定创建目标服务容器的目标从机;
步骤304,在服务存储目录中添加目标服务容器与目标从机的映射关系,以使目标从机根据映射关系,在目标从机上创建目标服务容器,使得目标服务容器代替运行异常的服务容器提供相同的服务。
上述方法流程中,服务存储目录中存储有任一服务容器的服务标识与该服务容器所属从机的从机标识之间的映射关系。上述方法流程由主机上的服务中心执行。
为了实现服务的高可用,当从机因故障停止运行时,在上面运行的所有服务容器需要迁移到正常运行的其他可用从机上,恢复故障从机上的服务容器提供服务,当服务容器因故障停止运行时,需要重建一个服务容器来代替故障的服务容器。本发明实施例若检测到从机故障,将从机上的所有服务容器作为运行异常容器,若检测到某个从机上的某一个服务容器故障,将该服务容器确定为运行异常容器。一种可选的实施方式中,根据从机上服务容器的服务运行状态信息,确定存在运行异常的服务容器。
具体实现中,由从机上的从机代理检测下挂的容器管理单元中的服务容器是否存在网络异常,若从机代理检测到容器管理单元的某个服务容器存在网络异常,则向主机上报服务容器运行异常的通知消息。从机代理检测服务容器是否故障包括:若检测到服务容器上报的数据包所携带的访问端口、访问IP信息与预先配置的访问端口、访问IP不一致,则确定该服务容器为运行异常的服务容器;若检测到在设定时间内未接收到服务容器发送的数据包,则确定该服务容器为运行异常的服务容器。
另一种具体实现中,通过从机上的从机代理实时向主机发送服务心跳包,以使主机上的高可用代理根据从机代理发送的服务心跳包检测从机是否发生网络异常,例如,若检测到任一从机发送服务心跳包的服务心跳时间不符合定制的服务心跳时间,则将该从机确定为故障从机,并将部署在故障从机上的所有服务容器确定为运行异常的服务容器,通过上述步骤将故障从机上的所有服务容器迁移到目标从机上。但本发明实施例并不限于通过上述方式来确定存在运行异常的服务容器,其他途径确定从机故障的实施方式也落入本发明的保护范围之内。
因此步骤303主要包括两个过程:第一个过程是筛选出可用的候选从机;第二个过程是对筛选的候选从机进行评分,确定最终要分配的目标从机。
具体的,可根据目标服务容器的配置信息,如CPU个数、内存大小、磁盘空间、访问端口等信息,查找空闲资源至少满足目标服务容器的配置条件的候选从机;例如,根据以下筛选条件确定候选从机:
第一,判断目标服务容器所申请的本机端口在本机上是否可用;
第二,在不考虑抢占机制的情况下,检查本机空闲资源是否满足创建一个容器管理单元里所有服务容器的需求,包括CPU、内存、磁盘空间等;
第三,是否匹配从服务中心接收到的指令要求的标签。如指令中可能包含映射主机的端口,此时筛选策略就必须保证该端口不能在主机上已经被占用;或者指令中可能包含主机内核版本要求,需要在某个内核版本的物理机上启动服务容器。这些标签应当可以扩展,为后续的优化提供方便。
第四,从服务中心接收到的指令是否指定在本机创建服务容器。
基于上述筛选条件,将主机下挂的从机可以是物理机或虚拟机,根据主机下挂的所有从机,将满足上述条件的可用从机作为候选从机。基于第一过程确定的候选从机,又第二过程对筛选的候选从机进行评分,确定最终要分配的目标从机,如图4所示,上述第二个过程主要包括以下步骤:
步骤401,建立待评分的候选从机队列,查询队列内所有候选从机的空闲资源;
步骤402,按照空闲资源的大小对所有候选从机进行第一次优先级排序,其中,将空闲资源大的候选从机设置为高优先级;
步骤403,根据候选从机的从机标识,遍历服务存储目录中存储的服务容器与从机的映射关系,查找与从机标识对应的服务容器的服务标识;
因服务存储目录中存储有任一服务容器的服务标识与该服务容器所属从机的从机标识之间的映射关系,可以根据任一从机标识,查找与该从机标识对应的所有服务容器的服务标识。
步骤404,确定候选从机中服务标识与目标服务容器的服务标识相同的服务容器的个数;
步骤405,根据候选从机中服务标识与目标服务容器的服务标识相同的服务容器的个数,对候选从机进行第二次优先级排序;其中,将候选从机中服务标识与目标服务容器的服务标识相同的服务容器的个数多的候选从机设置为低优先级;
其中,若候选从机中不存在与目标服务容器的服务标识相同的服务容器,则候选从机中服务标识与目标服务容器的服务标识相同的服务容器的个数为0,并具有最高的优先级;
步骤406,根据最终优先级的高低,从候选从机中确定目标从机。
若存在运行异常的服务容器为多个,则需创建的目标服务容器为多个,那么根据步骤406,确定至少一个目标从机,并将多个目标服务容器分配在这多个目标从机上,使得这些目标从机上创建的目标服务容器替代多个运行异常的服务容器提供相同的服务。
根据上述流程确定目标从机后,在主机的服务存储目录中添加目标服务容器与目标从机的映射关系,具体包括:创建一个对象占位符,以Key-Value键值对的格式在对象占位符中存储目标从机与目标服务容器的映射关系,其中,Key值为创建的目标服务容器的服务标识,Value值为目标从机的从机标识。
在主机的服务存储目录中添加目标服务容器与目标从机的映射关系之后,还包括:建立以对象占位符为索引,以目标服务容器的配置信息为索引内容的数据表项,以使目标服务容器运行异常时,根据目标服务容器的配置信息创建新的服务容器,使得新创建的服务容器替代目标服务容器提供相同的服务。
上述方法流程中,还包括:删除服务存储目录中运行异常的服务容器与运行异常的服务容器所属从机的映射关系。
上述方法流程中,主机实时获取从机上的服务容器的运行状态信息,同时接收针对运行异常的服务容器而发起的创建目标服务容器的指令,指令中目标服务容器的服务标识和配置信息与运行异常的服务容器相同,主机根据创建指令中目标服务容器的服务标识和配置信息快速进行资源自适应配置,通过遍历服务存储目录中存储的服务容器与从机的映射关系,按照预定调度策略确定创建目标服务容器的目标从机,将创建目标服务容器的任务分配给目标从机,并通过在服务存储目录中添加目标服务容器与目标从机的映射关系,以使目标从机根据映射关系,在目标从机上创建目标服务容器,使得目标服务容器代替运行异常的服务容器提供相同的服务,因从机基于容器技术创建服务容器具有占用底层硬件资源少,可快速配置,迁移可靠性好的特点,将服务的运行部署在从机最底层的服务容器上执行,使得服务运行一旦出错,可快速启动新的服务容器使得故障服务得以快速修复,因此本发明实施例通过主从机模式进行资源自适应配置进而实现整个服务系统的可靠性和高可用性。
本发明实施例提供了一种从机侧的一种资源管理方法,如图5所示,具体包括:
步骤501,检测主机的服务存储目录中从机与服务容器的映射关系是否有更新,若检测到更新的目标服务容器与目标从机的映射关系中,目标从机的从机标识为本机标识,则执行步骤502;
其中,新添加的映射关系是主机根据接收到创建目标服务器的指令时新添加的;指令是根据从机上的服务容器的服务运行状态信息,确定存在运行异常的服务容器时向主机发送的,指令中包括目标服务容器的服务标识和配置信息,目标服务容器的服务标识和配置信息与运行异常的服务容器相同;
步骤502,根据更新的映射关系,在本机上创建目标服务容器。
上述方法流程中,具体由从机上的从机代理定时检测主机的服务存储目录中从机与服务容器的映射关系是否有更新,若从机代理检测到更新的目标服务容器与目标从机的映射关系中,目标从机的从机标识为本机标识,则向服务容器的守护进程(如Dockerd进程,Docker是一个开源的应用容器引擎,具有启动快,资源占用小的特点)对应的接口发起创建目标服务容器的请求,服务容器的守护进程根据目标服务容器的配置信息在本机上创建目标服务器。
具体的,从机代理检测主机上的服务存储目录中是否有更新,包括:检测主机上是否新增加了对象占位符,若检测到主机上新增加了对象占位符,判断新增加的对象占位符中存储的Key-Value键值对中的从机标识是否为本机标识。若从机代理检测到主机上新增加的对象占位符中存储的Key-Value键值对中的从机标识是本机标识,则获取主机上以新增加的对象占位符为索引的配置信息,新增加的对象占位符用于存储主机更新的目标服务容器与本机的映射关系,因此,以新增加的对象占位符为索引的配置信息为目标服务容器的配置信息。服务容器的守护进程根据从机代理获取的目标服务容器的配置信息,在本机上创建目标服务容器。
具体的,服务容器的守护进程根据从机代理获取的目标服务容器的配置信息,在本机上创建目标服务容器,包括:首先创建基础容器,并为基础容器配置本机的内部访问端口和访问IP;根据为基础容器的配置的内部访问端口和访问IP,在本机上创建目标服务容器,使得目标服务器的内部访问端口和访问IP与基础容器相同。将创建的基础容器和目标服务容器作为一个容器管理单元。在该容器管理单元中,也可以以基础容器的网络配置,在该容器管理单元中创建其他的服务容器,但保证该容器管理单元中的服务容器的服务标识不同。
在从机上创建目标服务容器之后,还包括:
从机向主机反馈创建的目标服务容器的服务运行状态信息;从机定时向主机发送心跳检测包,以使主机定时检测任一从机发送服务心跳包的服务跳心时间是否符合定制的服务心跳时间。
具体实现中,由从机代理通过主机的键值存储模块向主机反馈从机上部署的所有服务容器的服务运行状态信息,并定时向主机的高可用代理模块发送心跳检测包,以使主机定时检测任一从机发送服务心跳包的服务跳心时间是否符合定制的服务心跳时间。
本发明实施例还提供一种可选的实施方式,即接收主机发送的创建指令,其中,创建指令是根据从机上的服务容器的服务运行状态信息,判断出存在运行异常的服务容器时发送的;创建指令中包括需创建的运行异常的服务容器的配置信息及运行异常的服务容器的服务标识;根据创建指令创建与运行异常的服务容器提供服务相同的目标服务容器。
上述方法流程中,从机通过定时从机与服务容器的映射关系是否有更新,若检测到更新的目标服务容器与目标从机的映射关系中,目标从机的从机标识为本机标识,则根据更新的目标服务容器与本机的映射关系,在本机上创建目标服务容器,因更新的目标服务容器与本机的映射关系是主机接收到指令之后更新的,而指令是针对运行异常的服务容器而发起的创建目标服务容器的指令,指令中目标服务容器的服务标识和配置信息与运行异常的服务容器相同,使得在本机上创建的目标服务容器能够代替运行异常的服务容器提供相同的服务。因从机基于容器技术创建服务容器具有占用底层硬件资源少,可快速配置,迁移可靠性好的特点,将服务的运行部署在从机最底层的服务容器上执行,使得服务运行一旦出错,可快速启动新的服务容器使得故障服务得以快速修复,因此本发明实施例通过主从机模式进行资源自适应配置进而实现整个服务系统的可靠性和高可用性。
本发明实施例提供对上述HECF模型进行可用性测试的具体实例。将上述实施例中HECF模型的架构部署在在线支付平台中,配置从机上的服务容器提供Apache服务(Apache是一种网页服务器软件),HECF模型架构在支付平台中的运行环境申请成功之后,进行HECF模型的功能测试和性能测试。
HECF模型的功能测试的测试结果为:维护人员可以从高可用代理模块实时查看从机上Apache服务的运行状态。在某个状态,数据中心维护人员向服务中心发送创建指令,测试服务中心可以自动创建容器管理单元,容器管理单元中的服务容器提供的Apache服务也可以正常访问。并且数据显示高可用代理模块实时查询的时间约为1秒,启动一个后端Apache服务容器的时间约为1秒。
HECF模型的性能测试,主要测试HECF模型在负载均衡方面的性能,测试时每个Apache服务容器都绑定到CPU的两个不同的逻辑核上。启动两个含有Apache服务容器的容器管理单元,使用nmon查看系统CPU使用情况,如图6所示,有4个CPU在运行,每个CPU的使用率在13%~20%之间。启动四个含有Apache服务容器的容器管理单元,使用nmon查看系统CPU使用情况,如图7所示,有8个CPU在运行,每个CPU的使用率在6%~10%之间。因此,从测试结果可以看出启动容器管理单元中的服务容器运行Apache服务,使CPU使用率基本相同,实现了负载均衡,并且增加后端Apache容器,能够使得CPU使用率明显下降。
在银行支付系统中,差错处理平台供接入的机构进行跨行交易差错处理的平台,差错处理平台需要高可用性以保证交易的有效性和不可抵赖性。本发明实施例将HECF模型具体应用在跨行交易差错处理平台中,用于保证差错处理平台的高可用性。HECF模型应用在差错处理平台中的一种构架如图8所示,HECF模型包括两个容器管理单元,容器管理单元中的每个服务容器启动Apache服务,每个容器管理单元通过四个端口与差错处理平台中的JBOSS服务(JBOSS是一个基于J2EE的开放源代码的应用服务器,是一个可伸缩的服务器平台)连接,将接收到的外部访问请求随机通过某个端口转发到JBOSS服务。
在上述架构部署完成并正常运行时,使用Apache开发的压力测试工具JMeter进行性能测试,具体的,新建一个线程组,在线程组中添加一个取样器向从机发送HTTP请求,并将此取样器作为监听器,测试流量分析如图9所示,在第0~12秒之间,当一个容器管理单元中的服务容器发生故障后,系统流量值没有明显变化,表明整个系统可以正常运行并自动恢复;在12~14秒之间,流量迅速降到接近0的位置,但是2秒后恢复正常运行,这说明从机故障或者所有容器管理单元中的服务容器都故障时系统停止运行后,在2秒内进行自动修复,在第14秒,系统流量恢复正常,因此,HECF模型应用在差错处理平台,通过主从机模式进行资源自适应配置,确实实现了差错处理平台的高可用。
针对上述方法流程,本发明实施例还提供一种资源管理装置及系统,这些装置及系统的具体内容可以参照上述方法实施,在此不再赘述。
基于上述方法流程,本发明实施例提供一种如图10所示的资源管理装置,包括:
获取单元1001,用于获取从机上的服务容器的服务运行状态信息;
接收单元1002,用于接收创建目标服务容器的指令,指令是根据获取的从机上的服务容器的服务运行状态信息,确定存在运行异常的服务容器时发送的,指令中包括目标服务容器的服务标识和配置信息,目标服务容器的服务标识和配置信息与运行异常的服务容器相同;
第一处理单元1003,用于根据服务标识和配置信息,遍历服务存储目录中存储的服务容器与从机的映射关系,按照预定调度策略确定创建目标服务容器的目标从机;
第二处理单元1004,用于在服务存储目录中添加目标服务容器与目标从机的映射关系,以使目标从机根据映射关系,在目标从机上创建目标服务容器,使得目标服务容器代替运行异常的服务容器提供相同的服务。
所述接收单元1002具体用于:在满足触发条件时,接收所述指令;
其中,所述触发条件包括:
若检测到服务容器上报的数据包所携带的访问端口、访问IP信息与预先配置的访问端口、访问IP不一致,则确定该服务容器为运行异常的服务容器;或者,
若检测到在设定时间内未接收到服务容器发送的数据包,则确定该服务容器为运行异常的服务容器;或者,
若检测到任一从机发送服务心跳包的服务心跳时间不符合定制的服务心跳时间,则将该从机上的所有服务容器确定为运行异常的服务容器。
进一步地,服务存储目录中存储有任一服务容器的服务标识与该服务容器所属从机的从机标识之间的映射关系;则第一处理单元1003具体用于:
根据目标服务容器的配置信息,查找空闲资源至少满足目标服务容器的配置条件的候选从机;
按照空闲资源的大小对所有候选从机进行第一次优先级排序,其中,将空闲资源大的候选从机设置为高优先级;
根据候选从机的从机标识,遍历服务存储目录中存储的服务容器与从机的映射关系,查找与从机标识对应的服务容器的服务标识;
确定候选从机中服务标识与目标服务容器的服务标识相同的服务容器的个数;
根据候选从机中服务标识与目标服务容器的服务标识相同的服务容器的个数,对候选从机进行第二次优先级排序;其中,将候选从机中服务标识与目标服务容器的服务标识相同的服务容器的个数多的候选从机设置为低优先级;
根据优先级的高低,从候选从机中确定目标从机。
进一步地,第二处理单元1004具体用于:
创建一个对象占位符,以Key-Value键值对的格式在对象占位符中存储目标从机与目标服务容器的映射关系,其中,Key值为创建的目标服务容器的服务标识,Value值为目标从机的从机标识。
进一步地,第二处理单元1004还用于:
建立以对象占位符为索引,以目标服务容器的配置信息为索引内容的数据表项,以使目标服务容器运行异常时,根据目标服务容器的配置信息创建新的服务容器,使得新创建的服务容器替代目标服务容器提供相同的服务。
进一步地,第二处理单元1004还用于:确定存在运行异常的服务容器时,删除服务存储目录中运行异常的服务容器与运行异常的服务容器所属从机的映射关系。
上述实施例中,主机实时获取从机上的服务容器的运行状态信息,同时接收针对运行异常的服务容器而发起的创建目标服务容器的指令,指令中目标服务容器的服务标识和配置信息与运行异常的服务容器相同,主机根据创建指令中目标服务容器的服务标识和配置信息快速进行资源自适应配置,通过遍历服务存储目录中存储的服务容器与从机的映射关系,按照预定调度策略确定创建目标服务容器的目标从机,将创建目标服务容器的任务分配给目标从机,并通过在服务存储目录中添加目标服务容器与目标从机的映射关系,以使目标从机根据映射关系,在目标从机上创建目标服务容器,使得目标服务容器代替运行异常的服务容器提供相同的服务,因从机基于容器技术创建服务容器具有占用底层硬件资源少,可快速配置,迁移可靠性好的特点,将服务的运行部署在从机最底层的服务容器上执行,使得服务运行一旦出错,可快速启动新的服务容器使得故障服务得以快速修复,因此本发明实施例通过主从机模式进行资源自适应配置进而实现整个服务系统的可靠性和高可用性。
本发明实施例还提供一种如图11所示的一种资源管理装置,包括:
检测单元1101,用于检测主机的服务存储目录中从机与服务容器的映射关系是否有更新;
创建单元1102,用于若检测单元1101检测到更新的目标服务容器与目标从机的映射关系中,目标从机的从机标识为本机标识,则根据更新的映射关系,在本机上创建目标服务容器;
其中,新添加的映射关系是主机根据接收到创建目标服务器的指令时新添加的;指令是根据从机上的服务容器的服务运行状态信息,确定存在运行异常的服务容器时向主机发送的,指令中包括目标服务容器的服务标识和配置信息,目标服务容器的服务标识和配置信息与运行异常的服务容器相同。
进一步地,还包括反馈单元,反馈单元用于:
向主机反馈创建的目标服务容器的服务运行状态信息;
定时向主机发送心跳检测包,以使主机定时检测任一从机发送服务心跳包的服务跳心时间是否符合定制的服务心跳时间。
进一步地,检测单元1101,具体用于若检测到主机上存在新增加的对象占位符,判断新增加的对象占位符中存储的Key-Value键值对中的从机标识是否为本机标识,若是本机标识,则获取以新增加的对象占位符为索引的配置信息;
创建单元1102,具体用于根据检测单元获取的配置信息在本机上创建目标服务器。
进一步地,创建单元1102具体用于:
创建基础容器,并为基础容器配置本机的内部访问端口和访问IP;
根据为基础容器的配置的内部访问端口和访问IP,在本机上创建目标服务容器,使得目标服务器的内部访问端口和访问IP与基础容器相同。
上述实施例中,从机通过定时从机与服务容器的映射关系是否有更新,若检测到更新的目标服务容器与目标从机的映射关系中,目标从机的从机标识为本机标识,则根据更新的目标服务容器与本机的映射关系,在本机上创建目标服务容器,因更新的目标服务容器与本机的映射关系是主机接收到指令之后更新的,而指令是针对运行异常的服务容器而发起的创建目标服务容器的指令,指令中目标服务容器的服务标识和配置信息与运行异常的服务容器相同,使得在本机上创建的目标服务容器能够代替运行异常的服务容器提供相同的服务。因从机基于容器技术创建服务容器具有占用底层硬件资源少,可快速配置,迁移可靠性好的特点,将服务的运行部署在从机最底层的服务容器上执行,使得服务运行一旦出错,可快速启动新的服务容器使得故障服务得以快速修复,因此本发明实施例通过主从机模式进行资源自适应配置进而实现整个服务系统的可靠性和高可用性。
基于相同的发明构思,本发明实施例提供了一种如图12所示的一种资源管理系统,包括:
主机1201,用于获取从机1202上的服务容器的服务运行状态信息;接收向主机1201下发的创建目标服务容器的指令,指令是根据从机1202上的服务容器的服务运行状态信息,确定存在运行异常的服务容器时发送的;指令中包括目标服务容器的服务标识和配置信息,目标服务容器的服务标识和配置信息与运行异常的服务容器相同;根据服务标识和配置信息,遍历服务存储目录中存储的服务容器与从机1202的映射关系,按照预定调度策略确定创建目标服务容器的目标从机;在服务存储目录中添加目标服务容器与目标从机的映射关系,以使目标从机根据映射关系,在目标从机上创建目标服务容器,使得目标服务容器代替运行异常的服务容器提供相同的服务;
从机1202,用于检测主机1201的服务存储目录中从机1202与服务容器的映射关系是否有更新;若检测到更新的目标服务容器与目标从机的映射关系中,目标从机的从机标识为本机标识,则根据更新的映射关系,在本机上创建目标服务容器。
其中,由维护人员实时查看主机获取的从机上的服务容器的服务运行状态信息,根据从机上的服务容器的服务运行状态信息,确定存在运行异常的服务容器时向主机下发创建目标服务容器的指令。
具体的,根据从机上的服务容器的服务运行状态信息,确定存在运行异常的服务容器,包括:若检测到服务容器上报的数据包所携带的访问端口、访问IP信息与预先配置的访问端口、访问IP不一致,则确定该服务容器为运行异常的服务容器;或者,若检测到在设定时间内未接收到服务容器发送的数据包,则确定该服务容器为运行异常的服务容器;或者,若检测到任一从机发送服务心跳包的服务心跳时间不符合定制的服务心跳时间,则将该从机上的所有服务容器确定为运行异常的服务容器。
上述系统中,主机实时获取从机上的服务容器的运行状态信息,同时接收针对运行异常的服务容器而发起的创建目标服务容器的指令,指令中目标服务容器的服务标识和配置信息与运行异常的服务容器相同,主机根据创建指令中目标服务容器的服务标识和配置信息快速进行资源自适应配置,通过遍历服务存储目录中存储的服务容器与从机的映射关系,按照预定调度策略确定创建目标服务容器的目标从机,将创建目标服务容器的任务分配给目标从机,并通过在服务存储目录中添加目标服务容器与目标从机的映射关系。从机通过定时从机与服务容器的映射关系是否有更新,若检测到更新的目标服务容器与目标从机的映射关系中,目标从机的从机标识为本机标识,则根据更新的目标服务容器与本机的映射关系,在本机上创建目标服务容器,因更新的目标服务容器与本机的映射关系是主机接收到指令之后更新的,而指令是针对运行异常的服务容器而发起的创建目标服务容器的指令,指令中目标服务容器的服务标识和配置信息与运行异常的服务容器相同,使得在本机上创建的目标服务容器能够代替运行异常的服务容器提供相同的服务。因从机基于容器技术创建服务容器具有占用底层硬件资源少,可快速配置,迁移可靠性好的特点,将服务的运行部署在从机最底层的服务容器上执行,使得服务运行一旦出错,可快速启动新的服务容器使得故障服务得以快速修复,因此本发明实施例通过主从机模式进行资源自适应配置进而实现整个服务系统的可靠性和高可用性。
本发明是参照根据本发明实施例的方法、设备(系统)、和计算机程序产品的流程图和/或方框图来描述的。应理解可由计算机程序指令实现流程图和/或方框图中的每一流程和/或方框、以及流程图和/或方框图中的流程和/或方框的结合。可提供这些计算机程序指令到通用计算机、专用计算机、嵌入式处理机或其他可编程数据处理设备的处理器以产生一个机器,使得通过计算机或其他可编程数据处理设备的处理器执行的指令产生用于实现在流程图一个流程或多个流程和/或方框图一个方框或多个方框中指定的功能的装置。
这些计算机程序指令也可存储在能引导计算机或其他可编程数据处理设备以特定方式工作的计算机可读存储器中,使得存储在该计算机可读存储器中的指令产生包括指令装置的制造品,该指令装置实现在流程图一个流程或多个流程和/或方框图一个方框或多个方框中指定的功能。
这些计算机程序指令也可装载到计算机或其他可编程数据处理设备上,使得在计算机或其他可编程设备上执行一系列操作步骤以产生计算机实现的处理,从而在计算机或其他可编程设备上执行的指令提供用于实现在流程图一个流程或多个流程和/或方框图一个方框或多个方框中指定的功能的步骤。
尽管已描述了本发明的优选实施例,但本领域内的技术人员一旦得知了基本创造性概念,则可对这些实施例作出另外的变更和修改。所以,所附权利要求意欲解释为包括优选实施例以及落入本发明范围的所有变更和修改。
显然,本领域的技术人员可以对本发明进行各种改动和变型而不脱离本发明的精神和范围。这样,倘若本发明的这些修改和变型属于本发明权利要求及其等同技术的范围之内,则本发明也意图包含这些改动和变型在内。
Claims (21)
1.一种资源管理方法,其特征在于,包括:
获取从机上的服务容器的服务运行状态信息;
接收创建目标服务容器的指令,所述指令是根据获取的所述从机上的服务容器的服务运行状态信息,确定存在运行异常的服务容器时发送的,所述指令中包括所述目标服务容器的服务标识和配置信息,所述目标服务容器的服务标识和配置信息与所述运行异常的服务容器相同;
根据所述服务标识和配置信息,遍历服务存储目录中存储的服务容器与从机的映射关系,按照预定调度策略确定用于创建所述目标服务容器的目标从机;
在所述服务存储目录中添加所述目标服务容器与所述目标从机的映射关系,以使所述目标从机根据所述映射关系,在所述目标从机上创建所述目标服务容器,使得所述目标服务容器代替所述运行异常的服务容器提供相同的服务。
2.如权利要求1所述的方法,其特征在于,
所述根据从机上的服务容器的服务运行状态信息,确定存在运行异常的服务容器,包括:
若检测到服务容器上报的数据包所携带的访问端口、访问IP信息与预先配置的访问端口、访问IP不一致,则确定该服务容器为运行异常的服务容器;或者,
若检测到在设定时间内未接收到服务容器发送的数据包,则确定该服务容器为运行异常的服务容器;或者,
若检测到任一从机发送服务心跳包的服务心跳时间不符合定制的服务心跳时间,则将该从机上的所有服务容器确定为运行异常的服务容器。
3.如权利要求1所述的方法,其特征在于,所述服务存储目录中存储有任一服务容器的服务标识与该服务容器所属从机的从机标识之间的映射关系;则
根据所述服务标识和配置信息,遍历服务存储目录中存储的服务容器与从机的映射关系,按照预定调度策略确定创建所述目标服务容器的目标从机,包括:
根据所述目标服务容器的配置信息,查找空闲资源至少满足所述目标服务容器的配置条件的候选从机;
按照空闲资源的大小对所有候选从机进行第一次优先级排序,其中,将空闲资源大的候选从机设置为高优先级;
根据候选从机的从机标识,遍历服务存储目录中存储的服务容器与从机的映射关系,查找与所述从机标识对应的服务容器的服务标识;
确定候选从机中服务标识与所述目标服务容器的服务标识相同的服务容器的个数;
根据候选从机中服务标识与所述目标服务容器的服务标识相同的服务容器的个数,对候选从机进行第二次优先级排序;其中,将候选从机中服务标识与所述目标服务容器的服务标识相同的服务容器的个数多的候选从机设置为低优先级;
根据最终优先级的高低,从候选从机中确定目标从机。
4.如权利要求1所述的方法,其特征在于,所述在所述服务存储目录中添加所述目标服务容器与所述目标从机的映射关系,包括:
创建一个对象占位符,以Key-Value键值对的格式在所述对象占位符中存储所述目标从机与所述目标服务容器的映射关系,其中,Key值为创建的目标服务容器的服务标识,Value值为所述目标从机的从机标识。
5.如权利要求4所述的方法,其特征在于,还包括:
建立以所述对象占位符为索引,以所述目标服务容器的配置信息为索引内容的数据表项,以使所述目标服务容器运行异常时,根据所述目标服务容器的配置信息创建新的服务容器,使得新创建的服务容器替代所述目标服务容器提供相同的服务。
6.如权利要求1所述的方法,其特征在于,还包括:确定存在运行异常的服务容器时,删除所述服务存储目录中所述运行异常的服务容器与所述运行异常的服务容器所属从机的映射关系。
7.一种资源管理方法,其特征在于,包括:
检测主机的服务存储目录中从机与服务容器的映射关系是否有更新;
若检测到更新的目标服务容器与目标从机的映射关系中,所述目标从机的从机标识为本机标识,则根据更新的所述映射关系,在本机上创建所述目标服务容器;
其中,新添加的所述映射关系是所述主机根据接收到创建所述目标服务器的指令时新添加的;所述指令是根据从机上的服务容器的服务运行状态信息,确定存在运行异常的服务容器时向所述主机发送的,所述指令中包括所述目标服务容器的服务标识和配置信息,所述目标服务容器的服务标识和配置信息与所述运行异常的服务容器相同。
8.如权利要求7所述的方法,其特征在于,在所述根据所述新添加的映射关系,在本机上创建所述目标服务容器之后,还包括:
向所述主机反馈创建的所述目标服务容器的服务运行状态信息;
定时向所述主机发送心跳检测包,以使所述主机定时检测任一从机发送服务心跳包的服务跳心时间是否符合定制的服务心跳时间。
9.如权利要求7所述的方法,其特征在于,若检测到更新的目标服务容器与目标从机的映射关系中,所述目标从机的从机标识为本机标识,则根据更新的所述映射关系,在本机上创建所述目标服务容器,包括:
若检测到所述主机上存在新增加的对象占位符,判断新增加的对象占位符中存储的Key-Value键值对中的从机标识是否为本机标识,若是本机标识,则获取以所述新增加的对象占位符为索引的配置信息,并根据获取的所述配置信息在本机上创建所述目标服务器。
10.如权利要求7所述的方法,其特征在于,所述根据更新的所述映射关系,在本机上创建所述目标服务容器,包括:
创建基础容器,并为所述基础容器配置本机的内部访问端口和访问IP;
根据为所述基础容器的配置的内部访问端口和访问IP,在本机上创建所述目标服务容器,使得所述目标服务器的内部访问端口和访问IP与所述基础容器相同。
11.一种资源管理装置,其特征在于,包括:
获取单元,用于获取从机上的服务容器的服务运行状态信息;
接收单元,用于接收创建目标服务容器的指令,所述指令是根据获取的所述从机上的服务容器的服务运行状态信息,确定存在运行异常的服务容器时发送的,所述指令中包括所述目标服务容器的服务标识和配置信息,所述目标服务容器的服务标识和配置信息与所述运行异常的服务容器相同;
第一处理单元,用于根据所述服务标识和配置信息,遍历服务存储目录中存储的服务容器与从机的映射关系,按照预定调度策略确定创建所述目标服务容器的目标从机;
第二处理单元,用于在所述服务存储目录中添加所述目标服务容器与所述目标从机的映射关系,以使所述目标从机根据所述映射关系,在所述目标从机上创建所述目标服务容器,使得所述目标服务容器代替所述运行异常的服务容器提供相同的服务。
12.如权利要求11所述的装置,其特征在于,
所述接收单元具体用于:在满足触发条件时,接收所述指令;
其中,所述触发条件包括:
若检测到服务容器上报的数据包所携带的访问端口、访问IP信息与预先配置的访问端口、访问IP不一致,则确定该服务容器为运行异常的服务容器;或者,
若检测到在设定时间内未接收到服务容器发送的数据包,则确定该服务容器为运行异常的服务容器;或者,
若检测到任一从机发送服务心跳包的服务心跳时间不符合定制的服务心跳时间,则将该从机上的所有服务容器确定为运行异常的服务容器。
13.如权利要求11所述的装置,其特征在于,所述服务存储目录中存储有任一服务容器的服务标识与该服务容器所属从机的从机标识之间的映射关系;则所述第一处理单元具体用于:
根据所述目标服务容器的配置信息,查找空闲资源至少满足所述目标服务容器的配置条件的候选从机;
按照空闲资源的大小对所有候选从机进行第一次优先级排序,其中,将空闲资源大的候选从机设置为高优先级;
根据候选从机的从机标识,遍历服务存储目录中存储的服务容器与从机的映射关系,查找与所述从机标识对应的服务容器的服务标识;
确定候选从机中服务标识与所述目标服务容器的服务标识相同的服务容器的个数;
根据候选从机中服务标识与所述目标服务容器的服务标识相同的服务容器的个数,对候选从机进行第二次优先级排序;其中,将候选从机中服务标识与所述目标服务容器的服务标识相同的服务容器的个数多的候选从机设置为低优先级;
根据最终优先级的高低,从候选从机中确定目标从机。
14.如权利要求11所述的装置,其特征在于,所述第二处理单元具体用于:
创建一个对象占位符,以Key-Value键值对的格式在所述对象占位符中存储所述目标从机与所述目标服务容器的映射关系,其中,Key值为创建的目标服务容器的服务标识,Value值为所述目标从机的从机标识。
15.如权利要求14所述的装置,其特征在于,所述第二处理单元还用于:
建立以所述对象占位符为索引,以所述目标服务容器的配置信息为索引内容的数据表项,以使所述目标服务容器运行异常时,根据所述目标服务容器的配置信息创建新的服务容器,使得新创建的服务容器替代所述目标服务容器提供相同的服务。
16.如权利要求11所述的装置,其特征在于,所述第二处理单元还用于:确定存在运行异常的服务容器时,删除所述服务存储目录中所述运行异常的服务容器与所述运行异常的服务容器所属从机的映射关系。
17.一种资源管理装置,其特征在于,包括:
检测单元,用于检测主机的服务存储目录中从机与服务容器的映射关系是否有更新;
创建单元,用于若所述检测单元检测到更新的目标服务容器与目标从机的映射关系中,所述目标从机的从机标识为本机标识,则根据更新的所述映射关系,在本机上创建所述目标服务容器;
其中,新添加的所述映射关系是所述主机根据接收到创建所述目标服务器的指令时新添加的;所述指令是根据从机上的服务容器的服务运行状态信息,确定存在运行异常的服务容器时向所述主机发送的,所述指令中包括所述目标服务容器的服务标识和配置信息,所述目标服务容器的服务标识和配置信息与所述运行异常的服务容器相同。
18.如权利要求17所述的装置,其特征在于,还包括反馈单元,所述反馈单元用于:
向所述主机反馈创建的所述目标服务容器的服务运行状态信息;
定时向所述主机发送心跳检测包,以使所述主机定时检测任一从机发送服务心跳包的服务跳心时间是否符合定制的服务心跳时间。
19.如权利要求17所述的装置,其特征在于,
所述检测单元,具体用于若检测到所述主机上存在新增加的对象占位符,判断新增加的对象占位符中存储的Key-Value键值对中的从机标识是否为本机标识,若是本机标识,则获取以所述新增加的对象占位符为索引的配置信息;
所述创建单元,具体用于根据所述检测单元获取的所述配置信息在本机上创建所述目标服务器。
20.如权利要求17所述的装置,其特征在于,所述创建单元具体用于:
创建基础容器,并为所述基础容器配置本机的内部访问端口和访问IP;
根据为所述基础容器的配置的内部访问端口和访问IP,在本机上创建所述目标服务容器,使得所述目标服务器的内部访问端口和访问IP与所述基础容器相同。
21.一种资源管理系统,其特征在于,包括:
主机,用于获取从机上的服务容器的服务运行状态信息;接收向主机下发的创建目标服务容器的指令,所述指令是所述主机根据从机上的服务容器的服务运行状态信息,确定存在运行异常的服务容器时发送的;所述指令中包括所述目标服务容器的服务标识和配置信息,所述目标服务容器的服务标识和配置信息与所述运行异常的服务容器相同;根据所述服务标识和配置信息,遍历服务存储目录中存储的服务容器与从机的映射关系,按照预定调度策略确定创建所述目标服务容器的目标从机;在所述服务存储目录中添加所述目标服务容器与所述目标从机的映射关系,以使所述目标从机根据所述映射关系,在所述目标从机上创建所述目标服务容器,使得所述目标服务容器代替所述运行异常的服务容器提供相同的服务;
从机,用于检测所述主机的服务存储目录中从机与服务容器的映射关系是否有更新;若检测到更新的目标服务容器与目标从机的映射关系中,所述目标从机的从机标识为本机标识,则根据更新的所述映射关系,在本机上创建所述目标服务容器。
Priority Applications (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
CN201510968169.0A CN105933137B (zh) | 2015-12-21 | 2015-12-21 | 一种资源管理方法、装置及系统 |
Applications Claiming Priority (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
CN201510968169.0A CN105933137B (zh) | 2015-12-21 | 2015-12-21 | 一种资源管理方法、装置及系统 |
Publications (2)
Publication Number | Publication Date |
---|---|
CN105933137A CN105933137A (zh) | 2016-09-07 |
CN105933137B true CN105933137B (zh) | 2019-06-07 |
Family
ID=56840004
Family Applications (1)
Application Number | Title | Priority Date | Filing Date |
---|---|---|---|
CN201510968169.0A Active CN105933137B (zh) | 2015-12-21 | 2015-12-21 | 一种资源管理方法、装置及系统 |
Country Status (1)
Country | Link |
---|---|
CN (1) | CN105933137B (zh) |
Families Citing this family (25)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN106445637B (zh) * | 2016-09-29 | 2019-10-01 | 中国银联股份有限公司 | 容器管理调度系统 |
CN108573443A (zh) * | 2017-03-13 | 2018-09-25 | 平安科技(深圳)有限公司 | 额度审批方法和装置 |
CN107450989B (zh) * | 2017-09-26 | 2020-08-07 | 中国科学院声学研究所 | 一种嵌入式平台及动态调控应用资源的方法 |
CN107798086B (zh) * | 2017-10-19 | 2021-07-23 | 福建中金在线信息科技有限公司 | 服务器信息更新方法、装置、系统及电子设备 |
CN107948259A (zh) * | 2017-11-14 | 2018-04-20 | 郑州云海信息技术有限公司 | 一种云服务器资源的配置方法和配置系统 |
CN110007929A (zh) * | 2018-01-02 | 2019-07-12 | 中国移动通信有限公司研究院 | 一种混合部署下获取资源的方法及装置 |
CN108712464A (zh) * | 2018-04-13 | 2018-10-26 | 中国科学院信息工程研究所 | 一种面向集群微服务高可用的实现方法 |
CN108763090B (zh) * | 2018-05-31 | 2024-04-05 | 天航长鹰(江苏)科技有限公司 | 测试环境部署方法、装置、计算机设备和存储介质 |
CN110908774B (zh) * | 2018-09-14 | 2023-04-14 | 阿里巴巴集团控股有限公司 | 一种资源调度方法、设备、系统及存储介质 |
CN109445904B (zh) * | 2018-09-30 | 2020-08-04 | 咪咕文化科技有限公司 | 一种信息处理方法、装置和计算机存储介质 |
CN111352689B (zh) * | 2018-12-21 | 2023-04-07 | 中国电信股份有限公司 | 实现应用容器化部署无缝迁移的方法和装置 |
CN112148420B (zh) * | 2019-06-28 | 2024-04-02 | 杭州海康威视数字技术股份有限公司 | 基于容器技术的异常任务处理方法、服务器及云平台 |
CN112242933A (zh) * | 2019-07-16 | 2021-01-19 | 贵州白山云科技股份有限公司 | 一种tcpcopy测试方法、装置、介质及设备 |
CN112395072A (zh) * | 2019-08-14 | 2021-02-23 | 北京三快在线科技有限公司 | 模型部署的方法、装置、存储介质及电子设备 |
CN110647395A (zh) * | 2019-08-30 | 2020-01-03 | 联想(北京)有限公司 | 一种任务处理方法及系统、装置、计算机存储介质 |
CN110830289B (zh) * | 2019-10-21 | 2021-06-11 | 华中科技大学 | 一种容器异常监测方法及监测系统 |
CN112860424A (zh) * | 2019-11-28 | 2021-05-28 | 上海商汤智能科技有限公司 | 任务处理方法及系统 |
CN111104126B (zh) * | 2019-12-09 | 2024-05-24 | 海尔优家智能科技(北京)有限公司 | 用于部署应用的方法及装置、服务器、系统 |
CN111131449B (zh) * | 2019-12-23 | 2021-03-26 | 华中科技大学 | 一种水资源管理系统服务集群化框架构建方法 |
CN111522659B (zh) * | 2020-04-15 | 2024-04-19 | 联想(北京)有限公司 | 一种空间使用方法和装置 |
CN111694658A (zh) * | 2020-04-30 | 2020-09-22 | 北京城市网邻信息技术有限公司 | Cpu资源分配方法、装置、电子设备和存储介质 |
CN111722917A (zh) * | 2020-06-30 | 2020-09-29 | 北京来也网络科技有限公司 | 性能测试任务的资源调度方法、装置和设备 |
CN113114715B (zh) * | 2021-02-24 | 2024-01-23 | 网宿科技股份有限公司 | 一种基于边缘计算的调度方法及边缘设备集群 |
CN113285833B (zh) * | 2021-05-26 | 2023-03-31 | 北京百度网讯科技有限公司 | 用于获取信息的方法和装置 |
CN113590146B (zh) * | 2021-06-04 | 2023-10-27 | 聚好看科技股份有限公司 | 服务器及容器升级方法 |
Family Cites Families (5)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
US8683466B2 (en) * | 2011-05-24 | 2014-03-25 | Vmware, Inc. | System and method for generating a virtual desktop |
CN103888495A (zh) * | 2012-12-20 | 2014-06-25 | 中国移动通信集团辽宁有限公司 | 一种组合服务的执行方法和系统 |
CN105045656B (zh) * | 2015-06-30 | 2018-11-30 | 深圳清华大学研究院 | 基于虚拟容器的大数据存储与管理方法 |
CN105119913A (zh) * | 2015-08-13 | 2015-12-02 | 东南大学 | 一种基于Docker的Web服务器架构及各模块之间的交互方法 |
CN105099706A (zh) * | 2015-08-25 | 2015-11-25 | 华为技术有限公司 | 一种数据通信方法、用户设备和服务器 |
-
2015
- 2015-12-21 CN CN201510968169.0A patent/CN105933137B/zh active Active
Also Published As
Publication number | Publication date |
---|---|
CN105933137A (zh) | 2016-09-07 |
Similar Documents
Publication | Publication Date | Title |
---|---|---|
CN105933137B (zh) | 一种资源管理方法、装置及系统 | |
CN113169952B (zh) | 一种基于区块链技术的容器云管理系统 | |
US9667750B2 (en) | Client-initiated leader election in distributed client-server systems | |
CN106020930B (zh) | 一种基于应用容器的应用管理方法及系统 | |
EP3149591B1 (en) | Tracking application deployment errors via cloud logs | |
US20150263983A1 (en) | System and Method for Allocating Resources and Managing a Cloud Based Computer System | |
CN112099918A (zh) | 容器化环境中的集群的实时迁移 | |
WO2020135799A1 (zh) | Vnf服务实例化方法及装置 | |
US20180351792A1 (en) | System and method for providing secure and redundant communications and processing for a collection of internet of things (iot) devices | |
JP5352890B2 (ja) | 計算機システムの運用管理方法、計算機システム及びプログラムを記憶する計算機読み取り可能な媒体 | |
WO2021190360A1 (zh) | 汽车诊断云平台中的虚拟化资源调度系统、方法 | |
CN110661647A (zh) | 一种生命周期管理方法及装置 | |
CN109842651A (zh) | 一种业务不间断的负载均衡方法和系统 | |
EP3442201B1 (en) | Cloud platform construction method and cloud platform | |
CN108595306A (zh) | 一种面向混部云的服务性能测试方法 | |
CN111343219B (zh) | 计算服务云平台 | |
CN112948091B (zh) | 应用系统的迁移方法、装置、电子设备及存储介质 | |
CN110365762A (zh) | 服务处理方法、装置、设备及存储介质 | |
US10761869B2 (en) | Cloud platform construction method and cloud platform storing image files in storage backend cluster according to image file type | |
US11341032B1 (en) | Testing in a disaster recovery computer system | |
CN108347339A (zh) | 一种业务恢复方法及装置 | |
CN110119308B (zh) | 管理大规模容器应用的系统 | |
CN108696373B (zh) | 虚拟资源分配方法、nfvo和系统 | |
CN107707398B (zh) | 云计算系统中管理物理主机的方法和装置 | |
CN115865942A (zh) | 云平台资源监控方法、电子设备、计算机可读存储介质 |
Legal Events
Date | Code | Title | Description |
---|---|---|---|
C06 | Publication | ||
PB01 | Publication | ||
C10 | Entry into substantive examination | ||
SE01 | Entry into force of request for substantive examination | ||
GR01 | Patent grant | ||
GR01 | Patent grant |