本发明属于分布式计算领域,涉及分布式计算系统的构建与管理技术,特别涉及分布式计算系统的计算环境自动配置方法。
背景技术:
随着科学技术的发展,分布式计算技术在各类系统中得到广泛应用,形成各类的分布式计算系统。例如:基于hla(highlevelarchitecture,高层体系结构)的分布式卫星仿真系统、分布式航空虚拟视景系统等。分布式计算系统由多台分散的计算机,经由网络联接而构成,通常网络中执行系统管理、计算任务分配的计算机称为中心节点,主要负责与其他计算机建立通信,采集和发送消息,传递任务资源;执行任务计算的计算机称为终端节点,接收中心节点分配的任务,并执行任务计算,反馈结果信息。分布式计算系统运行过程中,中心节点和终端节点之间交换信息,共享资源,相互协作完成一个共同任务。
由于终端节点的分散特征,在分布式计算系统构建过程中对计算环境进行配置是一项复杂繁琐的工作。首先,计算环境的配置要求多人对分散的终端节点进行协同操作,例如:终端节点的启动、设置、计算任务部署、软件配置等。但是实际应用中,处于不同空间位置的人员之间交流沟通存在困难,难于保证高效的协同合作。其次,对多样本实验的反复计算,操作人员需要为每一个样本检测和配置计算环境,操作人员的工作繁重。上述问题的存在,使得人工配置计算环境的方式会大量消耗分布式计算系统的构建时间,造成分布式计算系统使用效率低,人工操作繁琐,容错性较差。因此,有必要提出一种分布式计算系统的计算环境自动配置方法,即能减少分布式计算系统的操作人员,也能简化计算环境的配置工作,从而提高分布式计算系统的应用效率和容错性。
技术实现要素:
本发明需要解决的技术问题是:克服分布式计算系统的计算环境人工配置方式中人工操作频繁,容错性差,构建时间长,使用效率低等问题,提出一种计算环境的自动配置方法,减少操作人员及其工作量,简化计算环境的配置工作,提高分布式系统的使用效率。
本发明的技术方案是,一种分布式计算系统的计算环境自动配置方法,中心节点和每个终端节点之间存在信息传输通路,其特征在于,对任意一项任务执行下述步骤:
第一步:中心节点对任务进行描述和存储
中心节点根据接收的任务数据形成任务信息和任务包,并将任务信息和任务包存储到数据库。其中,任务信息包括:任务的识别信息、任务的功能说明、任务的配置要求,任务包是任务的可执行资源集合。
第二步:中心节点收集各终端节点信息
中心节点收集所有终端节点信息,包括每个终端节点的识别信息、计算能力、任务配置记录。设定所有终端节点为可用终端节点。
第三步:中心节点制定任务分配方案
中心节点将任务信息与所有可用终端节点信息进行匹配,形成任务分配方案,任务分配方案包括任务的指定终端节点和任务的配置要求。
第四步:中心节点发送任务包和任务配置要求
中心节点根据任务分配方案,将任务配置要求和数据库中的任务信息、任务包发送给指定终端节点。
第五步:指定终端节点执行任务配置
指定终端节点接收任务信息、任务包和任务配置要求,根据任务配置要求对任务执行环境进行配置,并更新指定终端节点的任务配置记录。
第六步:中心节点确认任务配置结果
中心节点收集指定终端节点信息,检查指定终端节点上任务配置记录是否满足要求?
如果满足任务配置要求,则执行第七步;
如果不满足任务配置要求,则返回第四步,即中心节点重新发送任务包和任务配置要求,指定终端节点重新执行任务配置。如果上述循环执行三次,指定终端节点上任务配置记录仍不满足要求,则将指定终端节点设定为不可用终端节点并返回第三步,即重新制定任务分配方案,并规避任务配置失败的终端节点。
第七步:中心节点发送启动任务命令
中心节点向指定终端节点发送启动任务命令。
第八步:终端节点启动任务程序进程
指定终端节点接收启动任务命令,启动任务程序进程,并向中心节点汇报启动任务结果。
第九步:中心节点确认计算环境配置结果
中心节点收集指定终端节点的启动任务结果,判断任务是否启动完成?
如果任务启动完成,那么计算环境配置成功。
如果任务启动未完成,那么返回第四步,即中心节点向指定终端节点重新发送任务包,重新进行任务配置。如果上述循环执行三次,任务启动均失败,则将指定终端节点设定为不可用终端节点并返回第三步,即重新制定任务分配方案,并规避任务启动失败的终端节点。
本发明的有益效果
本发明针对分布式计算系统的计算环境配置效率低、人工干预频繁、容错性差等问题,提出了分布式计算系统的计算环境自动配置方法,可根据配置情况自动进行终端节点的更换,减少操作人员,提高系统容错性,实现分布式计算系统的快速构建。该方法适用于各类分布式计算系统的计算环境自动配置,及分布式计算系统的快速构建。测试结果表明,分布式计算系统的计算环境自动配置方法可以较大幅度地提高系统的使用效率,且具有较强的稳定性和适用性。
附图说明
图1是分布式计算系统的计算环境自动配置方法的示意图。
具体实施方式
下面结合附图对本发明进行详细说明。
图1是分布式计算系统的计算环境自动配置方法的示意图。本发明的技术方案的思路是:在分布式计算系统中,中心节点实现对终端节点的通信和控制,以及任务的集中存储和管理,制定并根据任务分配方案将任务包自动部署到指定终端节点,对任务配置环境进行确认。终端节点与中心节点通信,汇报终端节点的硬件和软件信息,接收任务包和任务配置要求,执行任务配置,启动和控制任务程序进程。通过中心节点和终端节点的协同合作完成分布式计算环境的自动配置,快速构建分布式计算系统。
本发明的详细步骤描述如下:
第一步:中心节点对任务进行描述和存储
中心节点根据接收的任务数据形成任务信息和任务包,并将任务信息和任务包存储到数据库。其中,任务信息包括:任务的识别信息、任务的功能说明、任务的配置要求,任务包是任务的可执行资源集合。通常,任务识别信息描述任务名称、任务编号、任务版本号、任务更新日期等。任务功能说明描述任务的算法和模型、输入输出项。任务配置要求描述任务需要的数据、文件、操作系统、存储路径等。任务包是存储在同一目录中的任务的可执行程序、动态库、日志文件等资源集合。
第二步:中心节点收集各终端节点信息
中心节点收集所有终端节点信息,包括每个终端节点的识别信息、计算能力、任务配置记录。设定所有终端节点为可用终端节点。节点识别信息描述节点名称、节点编号、ip地址。计算能力说明描述节点的cpu主频、内存容量、操作系统等。任务配置记录描述终端节点上已经配置的任务信息,包括:任务识别信息、任务功能说明、任务存储路径、任务程序路径、任务的数据配置和文件配置。
第三步:中心节点制定任务分配方案
中心节点将任务信息与所有可用终端节点信息进行匹配,形成任务分配方案,任务分配方案包括任务的指定终端节点和任务的配置要求。根据应用需求,确定待计算的任务。根据任务信息和终端节点信息,将任务分配到指定终端节点,设置任务的配置数据和配置文件要求,形成任务分配方案。
第四步:中心节点发送任务包和任务配置要求
中心节点根据任务分配方案,将任务配置要求和数据库中的任务信息、任务包发送给指定终端节点。
第五步:指定终端节点执行任务配置
指定终端节点接收任务信息、任务包和任务配置要求,将任务包存储到指定路径,根据任务配置要求对任务执行环境进行配置,并更新指定终端节点的任务配置记录。
第六步:中心节点确认任务配置结果
中心节点收集指定终端节点信息,检查指定终端节点上任务配置记录是否满足要求?
如果满足任务配置要求,则执行第七步;
如果不满足任务配置要求,则返回第四步,即中心节点重新发送任务包和任务配置要求,指定终端节点重新执行任务配置。如果上述循环执行三次,指定终端节点上任务配置记录仍不满足要求,则将指定终端节点设定为不可用节点并返回第三步,即重新制定任务分配方案,并规避任务配置失败的终端节点。
第七步:中心节点发送启动任务命令
中心节点向指定终端节点发送启动任务命令。
第八步:终端节点启动任务程序进程
指定终端节点接收启动任务命令,启动任务程序进程,并向中心节点汇报启动任务结果。
第九步:中心节点确认计算环境配置结果
中心节点收集指定终端节点的启动任务结果,判断任务是否启动完成?
如果任务启动完成,那么计算环境配置成功。
如果任务启动未完成,那么返回第四步,即中心节点向指定终端节点重新发送任务包,重新进行任务配置。如果上述循环执行三次,任务启动均失败,则将指定终端节点设定为不可用终端节点并返回第三步,即重新制定任务分配方案,并规避任务启动失败的终端节点。
本发明应用于本单位承担的项目研制中,实现分布式航空虚拟视景系统的计算环境自动配置。分布式航空虚拟视景系统由网络连接多台航空虚拟座舱组成。每一台航空虚拟座舱由多台计算机终端节点和设备组成,不同终端节点执行不同计算任务,控制虚拟座舱中视景投影设备和人机交互设备。通过实验证明,本发明可以解决分布式航空虚拟视景系统的计算环境人工配置效率低、操作人员专业要求高、容错性差、协同配置困难等问题。本发明有效实现分布式航空虚拟视景系统计算环境的自动配置,减少配置操作人员,增强计算环境配置的容错性,提高航空虚拟座舱的计算任务配置效率,快速构建分布式航空虚拟视景系统。