首页> 中国专利> 分布式系统物理节点的任务部署方法

分布式系统物理节点的任务部署方法

摘要

本发明实施例提供一种分布式系统物理节点的任务部署方法,应用于服务器,包括:从新加入分布式系统的物理节点的启用通知中获取物理节点的环境信息;查询待分配任务列表,确定是否存在与物理节点的环境信息相匹配的待分配任务,其中待分配软件任务列表中存储有各待分配任务及相应的要求的环境信息;当存在时,将所匹配的待分配任务分配给物理节点。该方法实现了物理节点的任务自动部署,简化了分布式系统的部署,减轻分布式系统的日常维护负担,提高分布式系统管理的自动化程度。

著录项

  • 公开/公告号CN107294774A

    专利类型发明专利

  • 公开/公告日2017-10-24

    原文格式PDF

  • 申请/专利权人 深圳市迈岭信息技术有限公司;

    申请/专利号CN201710427661.6

  • 发明设计人 谢勇;蔡源楠;陈玉成;

    申请日2017-06-08

  • 分类号

  • 代理机构北京商专永信知识产权代理事务所(普通合伙);

  • 代理人高之波

  • 地址 518000 广东省深圳市南山区桃源街道留仙大道1183号南山云谷创新产业园南风楼6楼A

  • 入库时间 2023-06-19 03:35:50

法律信息

  • 法律状态公告日

    法律状态信息

    法律状态

  • 2020-07-10

    授权

    授权

  • 2017-11-24

    实质审查的生效 IPC(主分类):H04L12/24 申请日:20170608

    实质审查的生效

  • 2017-10-24

    公开

    公开

说明书

技术领域

本发明涉及分布式系统领域,尤其涉及一种分布式系统物理节点的任务部署方法。

背景技术

分布式系统是一种利用多个物理节点共同运行软件系统的一种系统运行环境。分布式服务器系统将复杂多样的数据运算和业务处理分散到各个不同的硬件系统(物理节点)去完成,每个硬件系统(物理节点)完成服务器系统的部分功能。服务器系统的复杂度越大,物理节点也越多。由于分布式服务器系统的物理节点多而且分散,因此不便于维护和部署。在分布式服务器系统中,物理节点的部署效率和维护效率对整个系统的整体性能具有十分重要的影响。分布式系统物理节点部署和管理越灵活,越有利于分布式系统的管理和稳定。

目前,现有技术中在添加新物理节点时大部分采用的方法是:管理员手动查询物理节点的资源信息(如内存、硬件信息、网络带宽等)和服务器中的软件任务运行所需的要求,然后对查询到的物理节点和软件任务进行匹配,匹配成功后,通过第三方组件和零散的功能脚本将所匹配的软件任务部署到该物理节点中。通过第三方组件和零散的功能脚本部署物理节点的具体过程如下:将物理节点所要运行的节点软件打包,通过ssh(SecureSell,安全外壳协议)等手段连接物理节点,将节点软件包发送到物理节点;通过功能脚本将节点软件程序包解压,并生成软件运行所需的配置文件;最后通过运行事先设计和测试好的功能脚本将节点软件程序运行起来,并启用监测功能脚本监测节点软件运行状态。通常会使用一些开源的监控工具例如Monit来监控每个物理节点的资源使用情况(如内存、CPU、磁盘空间、网络带宽等)。

虽然当前对物理节点的部署和维护方式可以基本保证分布式系统的正常运行,但是需要用户干预,当增加的物理节点数量多时,不仅需要耗费大量的人力,还容易发生大量的人工操作不慎造成系统功能障碍的情况;当控工具由于某些原因不可访问了,会失去整个分布式服务器系统的工作情况,无法及时反馈物理节点的异常;功能脚本零散,配置繁琐,不便于全局管理和分配。

发明内容

为了至少解决现有技术中物理节点部署和维护不便的问题,第一方面,本发明实施例提供了一种分布式系统物理节点的任务部署方法,应用于服务器,包括:

从新加入分布式系统的物理节点的启用通知中获取所述物理节点的环境信息;

查询待分配任务列表,确定是否存在与所述物理节点的环境信息相匹配的待分配任务,其中所述待分配任务列表中存储有各待分配任务及相应的要求的环境信息;

当存在时,将所匹配的待分配任务分配给所述物理节点。

第二方面,本发明实施例还提供一种分布式系统的物理节点的任务部署方法,应用于物理节点,所述方法包括:

当物理节点新加入分布式系统时,基于所述物理节点的环境信息,生成启用通知;

将所述启用通知发送至服务器。

第三方面,本发明实施例还提供了一种非易失性计算机存储介质,存储有计算机可执行指令,所述计算机可执行指令用于执行本发明上述任一项分布式系统的物理节点的任务部署方法。

第四方面,本发明实施例还提供了一种电子设备,包括:至少一个处理器;以及存储器;其中,所述存储器存储有可被所述至少一个处理器执行的程序,所述指令被所述至少一个处理器执行,以使所述至少一个处理器能够执行本发明上述任一项应用于服务器的分布式系统的物理节点的任务部署方法。

第五方面,本发明实施例还提供了一种电子设备,包括:至少一个处理器;以及存储器;其中,所述存储器存储有可被所述至少一个处理器执行的程序,所述指令被所述至少一个处理器执行,以使所述至少一个处理器能够执行本发明上述任一项应用于物理节点的分布式系统的物理节点的任务部署方法。

本发明实施例提供的分布式系统的物理节点的任务部署方法,实现物理节点的任务自动部署,简化了分布式系统的部署,减轻分布式系统的日常维护负担,提高分布式系统管理的自动化程度。

附图说明

为了更清楚地说明本发明实施例或现有技术中的技术方案,下面将对实施例或现有技术描述中所需要使用的附图作一简单地介绍,显而易见地,下面描述中的附图是本发明的一些实施例,对于本领域普通技术人员来讲,在不付出创造性劳动的前提下,还可以根据这些附图获得其他的附图。

图1为本发明一实施例提供的分布式系统物理节点的任务部署方法的流程图;

图2为本发明另一实施例提供的分布式系统物理节点的任务部署方法的流程图;

图3为本发明又一实施例提供的分布式系统物理节点的任务部署方法的流程图;

图4为本发明再一实施例提供的分布式系统物理节点的任务部署方法的流程图;

图5为本发明再一实施例提供的分布式系统物理节点的任务部署方法的流程图;

图6为本发明实施例提供的执行分布式系统物理节点的任务部署方法的电子设备的结构示意图。

具体实施方式

为使本发明实施例的目的、技术方案和优点更加清楚,下面将结合本发明实施例中的附图,对本发明实施例中的技术方案进行清楚、完整地描述,显然,所描述的实施例是本发明一部分实施例,而不是全部的实施例。基于本发明中的实施例,本领域普通技术人员在没有作出创造性劳动前提下所获得的所有其他实施例,都属于本发明保护的范围。

如图1所示为本发明实施例提供的分布式系统物理节点的任务部署方法的流程图。该方法应用于物理节点,该方法包括:

步骤S11:当物理节点新加入分布式系统时,基于所述物理节点的环境信息,生成启用通知;

步骤S12:将所述启用通知发送至服务器。

在本发明实施例中,物理节点的环境信息包括物理节点的命名(或ID)、物理节点的IP地址、操作系统、内存大小、硬盘空间大小、网络带宽、物理节点与服务器(该服务器也可以称之为运维服务器)的通信端口中的一种或多种信息。在其他可选的实施例中,物理节点的环境信息还可以包括其他信息,例如处理器及处理器的主频。该环境信息可以根据工作需求配置,本发明对此不做限制。在可选的实施例中,物理节点的网络带宽、与服务器的通信端口和物理节点的命名可以由物理节点的配置文件获得。当物理节点新加入分布式系统时,新加入的物理节点将获得的环境信息按照预定的规则和格式生成启用通知,例如预定的规则和格式可以如下表1所示:

表1:

表1中的类型标志用于标识物理节点向运维服务器发送的通知信息的类型。当通知信息的类型标志为new时,该通知信息为物理节点新加入分布式系统时发送的启用通知;当通知信息的类型标志为warning(如下表3所示)时,该通知信息为被分配任务的物理节点发送的异常通知。

在可选的实施例中,在新加入的物理节点中预置有安全证书。新加入的物理节点可以基于该预置的安全证书和环境信息生成启用通知。在另一些可选的实施例中,物理节点可以对安全证书进行加密,例如可以通过RSA加密算法进行加密。该安全证书可以由运维服务器生成并保存在运维服务器中,在物理节点新加入分布式系统之前手动将该安全证书上传至物理节点中。

作为一种具体的示例,基于安全证书和环境信息生成的启用通知如下表2所示:

表2:

对于步骤S12,新加入分布式系统的物理节点将启用通知发送至运维服务器进行物理节点注册。

如图2所示为本发明实施例提供的物理节点的任务部署方法的流程图。该方法应用于物理节点,该方法包括:

步骤S23:监测所述物理节点的环境信息中的依赖项的资源参数;

步骤S24:当监测到所述依赖项的资源参数低于预定阈值时,向所述服务器发送异常通知。

步骤S21至S22与图1中的步骤S11至S12相同,本发明在此不再赘述。

在本发明实施例中,对于步骤S23,在新加入分布式系统的物理节点将启用通知发送给运维服务器,接收并执行运维服务器发送的根据所述启用通知所匹配的任务之后,监测该物理节点的环境信息中的影响该任务运行的资源参数,例如影响该任务运行的资源参数(依赖项的资源参数)可以是内存、硬盘空间和网络带宽。

对于步骤S24,例如运行该任务的依赖项的资源参数为:1G的内存、80G的硬盘空间和50M的网络带宽,即预定阈值为:内存1G、硬盘80G、网络带宽50M。当监测到该物理节点的内存低于1G或者硬盘空间低于80G或者网络带宽低于50M时,该物理节点向运维服务器发送异常通知。所述异常通知可以包括物理节点以及该物理节点当前环境信息中的依赖项的资源参数,例如下表3所示:

表3:

本发明实施例提供的任务部署方法,可以在物理节点环境异常时,主动向运维服务器发送异常通知,保证物理节点的异常能够最快的被运维服务器或是管理员发现。

在本发明实施例中,物理节点安装有客户端程序。该客户端程序包含了自身的进程守护程序,以保证物理节点和运维服务器之间能够稳定地通信。

如图3所示为本发明实施例提供的物理节点的任务部署方法的流程图,该方法应用于服务器,该方法包括:

步骤S31:从新加入分布式系统的物理节点的启用通知中获取所述物理节点的环境信息;

步骤S32:查询待分配任务列表,确定是否存在与所述物理节点的环境信息相匹配的待分配任务,其中所述待分配任务列表中存储有各待分配任务及相应的要求的环境信息;

步骤S33:当存在时,将所匹配的待分配任务分配给所述物理节点。

在本发明实施例中,对于步骤S31,运维服务器从接收到的启用通知中按照预定的顺序读取该物理节点的环境信息,其中,预定的顺序可以如上表1所示。

在可选的实施例中,当运维服务器接收到通知信息时,可以先判断该通知信息是否完整,例如可以通过判断该通知信息的长度,当服务器接收到的通知信息为8字节时(例如服务器与物理节点之间的通信协议规定:物理节点向服务器发送的启用通知和异常通知都是8字节,包括2字节的安全证书和6字节的环境信息),服务器可以确定该通知信息完整。当接收到的通知信息不是8字节时,运维服务器可以放弃对该通知消息的后续处理将其删除。当运维服务器确定接收的启用通知完整之后,从该启用通知中获取安全证书进行验证。将获得的安全证书与保存在运维服务器中的安全证书进行比对,当两者相同时,验证通过,该启用通知为有效信息;当两者不同时,验证失败,运维服务器可以放弃对该通知消息的后续处理将其删除。当安全证书验证通过时,判断类型标志,当该类型标志位为新启用通知标志时,确定该通知信息是新加入分布式系统的物理节点发送的启用通知;当该类型标志为异常通知标志时,确定该通知信息是已分配任务的物理节点发送的异常通知。

对于步骤S32,运维服务器中存储待分配任务列表,所述待分配任务列表中存储有各待分配任务及相应的要求的环境信息。该待分配任务列表可以按照时间顺序排序,例如下表4所示;也可以按照任务紧急度排序,当紧急度相同时按时间顺序排序,例如下表5所示。

表4:

表5:

当运维服务器收到新加入物理节点的启用通知后,按照待分配任务列表的顺序比对任务要求的环境信息与从启用通知中获得的环境信息,当新加入的物理节点的环境信息满足待分配任务要求的环境信息时,将该待分配任务分配给所述新加入的物理节点,并将该待分配任务从待分配任务列表中删除。

参考表1和表4,新加入的物理节点Node A的环境信息与任务T1要求的环境信息相匹配,则运维服务器将任务TI发送至物理节点Node A。之后,运维服务器将任务TI从待分配任务列表4中删除。

本发明实施例提供的分布式系统的物理节点部署方法,实现了物理节点的自动发现和快速自动部署,提高了运维管理的效率,便于批量管理。

在可选的实施例中,上述方法还包括当新加入的物理节点的环境信息不满足任何一个任务要求的环境信息时,将所述新加入的物理节点作为待命物理节点加入可用节点待命列表。在可选的实施例中,可用节点待命列表按时间顺序存储有各待命物理节点及相应的环境信息,例如,可以如下表6所示:

表6:

如图4所示为本发明另一实施例提供的分布式系统物理节点的任务部署方法的流程图,该方法包括:

步骤S44:监测被分配任务的物理节点的环境信息中的依赖项的资源参数;

步骤S45:当监测到所述依赖项的资源参数低于预定阈值时,确定所述被分配任务的物理节点环境异常,发出异常告警信息。

在本发明实施例中,步骤S41-S43与步骤S31-S33相同,本发明在此不再赘述。

在本发明实施例中,在物理节点的任务部署成功后(例如可以是接收到物理节点反馈的任务运行成功通知),运维服务器可以向被分配任务的物理节点发送获取依赖项的资源参数指令,接收该被分配任务的物理节点反馈的依赖项的资源参数并与预定阈值(该预定阈值和上述方法实施例中步骤S24相同)比较。当低于阈值时,确定该被分配任务的物理节点的呃环境异常,例如可以向该运维服务器的显示装置输出警告信息或者通过邮件通知管理员。在可选的实施例中,可以根据需求设置获取依赖项资源参数的周期。

本发明实施例提供的方法,通过对被分配任务的物理节点进行监测,保证分布式系统的正常运行。

在可选的实施例中,当接收到被分配任务的物理节点的异常通知时,运维服务器也可以确定所述被分配任务的物理节点环境异常,发出异常告警信息。

在可选的实施例中,当确定被分配任务的物理节点环境异常时,可以根据预定的规则判断异常等级,按照指定的异常等级做出相应的操作。

当获取的依赖项的资源参数导致运行在该物理节点上任务的不能正常工作时,例如内存、硬盘空间以及网络带宽都低于预定阈值或者有两个低于预定阈值时,异常等级为二级,相应的操作为运维服务器可以不间断的发出声音警告信息直到收到管理员的操作;当获取的依赖项的资源参数可以满足运行在该物理节点上任务的正常工作时,例如硬盘空间或者网络带宽低于预定阈值时,异常等级为一级,相应的操作为运维服务器在显示装置上显示告警信息输出警告信息。在本发明实施例中对判断异常等级的规则不做限制,本领域技术人员可以根据实际需求灵活设置。

如图5所示为本发明实施例提供的物理节点的任务部署方法的流程图,该方法应用于服务器,该方法包括:

步骤S53:当不存在时,将所述物理节点作为待命物理节点加入可用节点列表;

步骤S54:根据接收到的新的待分配任务,确定相应的要求的环境信息,其中,所述新的待分配任务独立于所述待分配任务列表之外;

步骤S55:查询所述可用节点待命列表,确定是否存在与所述新的待分配任务相匹配的待命物理节点,其中所述可用节点待命列表中存储有各待命物理节点及相应的环境信息;

步骤S56:当存在时,将所述新的待分配任务分配至所匹配的待命物理节点。

步骤S51-S52与步骤S31-S32相同,本发明在此不再赘述。

在本发明实施例中,新的待分配任务包括任务本身及该任务要求的环境信息。新的待分配任务不在待分配任务列表之中。运维服务器按照可用节点待命列表的顺序比对新的待分配任务要求的环境信息,当存在待命物理节点的环境信息满足待分配任务要求的环境信息时,将该待分配任务分配给所述待命物理节点,并将该待命物理节点从可用节点待命列表中删除。

当没有待命物理节点满足待分配任务要求的的环境信息时,将所述新的待分配任务加入所述待分配任务列表。

本发明实施例提供的任务部署方法,在物理节点新加入分布式系统时主动向运维服务器发送其环境信息,运维服务器将与该环境信息相匹配的待分配任务发送至该新加入的物理节点,实现了物理节点的自动发现和任务自动部署,提高了分布式系统的运维管理效率。

本申请实施例提供了一种非易失性计算机存储介质,所述计算机存储介质存储有计算机可执行指令,该计算机可执行指令可执行上述任意方法实施例中的分布式系统物理节点的任务部署方法;

非易失性计算机可读存储介质可以包括存储程序区和存储数据区,其中,存储程序区可存储操作系统、至少一个功能所需要的应用程序;存储数据区可存储根据服务器或物理节点执行上述方法实施例所创建的数据等。此外,非易失性计算机可读存储介质可以包括高速随机存取存储器,还可以包括非易失性存储器,例如至少一个磁盘存储器件、闪存器件、或其他非易失性固态存储器件。在一些实施例中,非易失性计算机可读存储介质可选包括相对于处理器远程设置的存储器,这些远程存储器可以通过网络连接至存储器的存储优化装置。上述网络的实例包括但不限于互联网、企业内部网、局域网、移动通信网及其组合。

图6是本发明一实施例提供的电子设备的结构示意图,该电子设备可以是服务器或是物理节点,如图6所示,该设备包括:

一个或多个处理器610以及存储器620,图6中以一个处理器610为例。

存储器的存储优化方法的设备还可以包括:输入装置630和输出装置640。

处理器610、存储器620、输入装置630和输出装置640可以通过总线或者其他方式连接,图6中以通过总线连接为例。

存储器620为上述的非易失性计算机可读存储介质。处理器610通过运行存储在存储器620中的非易失性软件程序、指令以及模块,从而执行服务器的各种功能应用以及数据处理,即实现上述方法实施例分布式系统物理节点的任务部署方法。

输入装置630可接收输入的数字或字符信息,以及产生与存储器的存储优化装置的用户设置以及功能控制有关的键信号输入。输出装置640可包括显示屏等显示设备。

上述产品可执行本申请实施例所提供的方法,具备执行方法相应的功能模块和有益效果。未在本实施例中详尽描述的技术细节,可参见本申请实施例所提供的方法。

作为一种实施方式,上述电子设备为运维服务器,该电子设备包括:至少一个处理器;以及,与所述至少一个处理器通信连接的存储器;其中,所述存储器存储有可被所述至少一个处理器执行的指令,所述指令被所述至少一个处理器执行,以使所述至少一个处理器能够:

从新加入分布式系统的物理节点的启用通知中获取所述物理节点的环境信息;

查询待分配任务列表,确定是否存在与所述物理节点的环境信息相匹配的待分配任务,其中所述待分配软件任务列表中存储有各待分配任务及相应的要求的环境信息;

当存在时,将所匹配的待分配任务分配给所述物理节点。

作为另一种实施方式,上述电子设备为物理节点,该电子设备包括:至少一个处理器;以及,与所述至少一个处理器通信连接的存储器;其中,所述存储器存储有可被所述至少一个处理器执行的指令,所述指令被所述至少一个处理器执行,以使所述至少一个处理器能够:

当物理节点新加入分布式系统时,基于所述物理节点的环境信息,生成启用通知;

将所述启用通知发送至服务器。

本发明实施例的电子设备以多种形式存在,包括但不限于:

(1)超移动个人计算机设备:这类设备属于个人计算机的范畴,有计算和处理功能,一般也具备移动上网特性。这类终端包括:PDA、MID和UMPC设备等,例如iPad。

(2)服务器:提供计算服务的设备,服务器的构成包括处理器、硬盘、内存、系统总线等,服务器和通用的计算机架构类似,但是由于需要提供高可靠的服务,因此在处理能力、稳定性、可靠性、安全性、可扩展性、可管理性等方面要求较高。

(3)其他具有数据交互功能的电子装置。

在本文中,诸如第一和第二等之类的关系术语仅仅用来将一个实体或者操作与另一个实体或操作区分开来,而不一定要求或者暗示这些实体或操作之间存在任何这种实际的关系或者顺序。而且,术语“包括”、“包含”,不仅包括那些要素,而且还包括没有明确列出的其他要素,或者是还包括为这种过程、方法、物品或者设备所固有的要素。在没有更多限制的情况下,由语句“包括……”限定的要素,并不排除在包括所述要素的过程、方法、物品或者设备中还存在另外的相同要素。

以上所描述的装置实施例仅仅是示意性的,其中所述作为分离部件说明的单元可以是或者也可以不是物理上分开的,作为单元显示的部件可以是或者也可以不是物理单元,即可以位于一个地方,或者也可以分布到多个网络单元上。可以根据实际的需要选择其中的部分或者全部模块来实现本实施例方案的目的。

通过以上的实施方式的描述,本领域的技术人员可以清楚地了解到各实施方式可借助软件加通用硬件平台的方式来实现,当然也可以通过硬件。基于这样的理解,上述技术方案本质上或者说对相关技术做出贡献的部分可以以软件产品的形式体现出来,该计算机软件产品可以存储在计算机可读存储介质中,如ROM/RAM、磁碟、光盘等,包括若干指令用以使得一台计算机设备(可以是个人计算机,服务器,或者网络设备等)执行各个实施例或者实施例的某些部分所述的方法。

最后应说明的是:以上实施例仅用以说明本发明的技术方案,而非对其限制;尽管参照前述实施例对本发明进行了详细的说明,本领域的普通技术人员应当理解:其依然可以对前述各实施例所记载的技术方案进行修改,或者对其中部分技术特征进行等同替换;而这些修改或者替换,并不使相应技术方案的本质脱离本发明各实施例技术方案的精神和范围。

去获取专利,查看全文>

相似文献

  • 专利
  • 中文文献
  • 外文文献
获取专利

客服邮箱:kefu@zhangqiaokeyan.com

京公网安备:11010802029741号 ICP备案号:京ICP备15016152号-6 六维联合信息科技 (北京) 有限公司©版权所有
  • 客服微信

  • 服务号