CN115525302A - 一种大规模数字对象仓库集群的部署方法及装置 - Google Patents
一种大规模数字对象仓库集群的部署方法及装置 Download PDFInfo
- Publication number
- CN115525302A CN115525302A CN202211162597.0A CN202211162597A CN115525302A CN 115525302 A CN115525302 A CN 115525302A CN 202211162597 A CN202211162597 A CN 202211162597A CN 115525302 A CN115525302 A CN 115525302A
- Authority
- CN
- China
- Prior art keywords
- node
- target
- tree
- nodes
- file
- 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
Images
Classifications
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR COUNTING
- G06F—ELECTRIC DIGITAL DATA PROCESSING
- G06F8/00—Arrangements for software engineering
- G06F8/60—Software deployment
- G06F8/61—Installation
- G06F8/63—Image based installation; Cloning; Build to order
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR COUNTING
- G06F—ELECTRIC DIGITAL DATA PROCESSING
- G06F9/00—Arrangements for program control, e.g. control units
- G06F9/06—Arrangements 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/46—Multiprogramming arrangements
- G06F9/50—Allocation of resources, e.g. of the central processing unit [CPU]
- G06F9/5061—Partitioning or combining of resources
- G06F9/5072—Grid computing
-
- Y—GENERAL TAGGING OF NEW TECHNOLOGICAL DEVELOPMENTS; GENERAL TAGGING OF CROSS-SECTIONAL TECHNOLOGIES SPANNING OVER SEVERAL SECTIONS OF THE IPC; TECHNICAL SUBJECTS COVERED BY FORMER USPC CROSS-REFERENCE ART COLLECTIONS [XRACs] AND DIGESTS
- Y02—TECHNOLOGIES OR APPLICATIONS FOR MITIGATION OR ADAPTATION AGAINST CLIMATE CHANGE
- Y02D—CLIMATE CHANGE MITIGATION TECHNOLOGIES IN INFORMATION AND COMMUNICATION TECHNOLOGIES [ICT], I.E. INFORMATION AND COMMUNICATION TECHNOLOGIES AIMING AT THE REDUCTION OF THEIR OWN ENERGY USE
- Y02D10/00—Energy efficient computing, e.g. low power processors, power management or thermal management
Landscapes
- Engineering & Computer Science (AREA)
- Software Systems (AREA)
- Theoretical Computer Science (AREA)
- General Engineering & Computer Science (AREA)
- Physics & Mathematics (AREA)
- General Physics & Mathematics (AREA)
- Mathematical Physics (AREA)
- Data Exchanges In Wide-Area Networks (AREA)
Abstract
本申请提供了一种大规模数字对象仓库集群的部署方法及装置,包括:获取数字对象仓库集群中各节点的节点信息;根据节点的节点信息,按照预设规划算法,从所有节点中选取至少部分目标节点构建为树状结构的节点拓扑集合;根据节点拓扑合集,生成并向目标节点发送树状网络规划文件与数字对象仓库集群所要执行的任务文件,以供目标节点将运行脚本和目标任务部署在目标节点中;依靠建立树状传输树对集群系统中的所有节点施行统一软件部署,能够在集群节点不预装软件客户端的情况下实现整个数字对象仓库集群的软件快速部署,且节点之间的信息传输速率大幅提高;简化了数字对象仓库集群的运维过程,同时也降低了消耗的时间与人力资源。
Description
技术领域
本申请涉及数字对象技术领域,特别涉及一种大规模数字对象仓库集群的部署方法及装置。
背景技术
数字对象架构(Digital Object Architecture,简称DOA)通过数字对象统一规范互联网的数据资源,每个数字对象由三部分组成:标识、元数据、数据实体,分别在数字对象标识解析系统、数字对象注册系统、数字对象仓库系统中进行存储和管理。
相关技术中,通过将数字对象仓库系统部署在大规模集群服务器上,能够在满足数字对象数据实体基础存储管理需求的同时,拥有着高性能、高灵活性、低成本的技术优势;能够灵活地满足数字对象仓库集群之间不同节点的数据实体调度。
但现有技术方案里,对于面向大规模的跨地域集群系统的统一管理存在困难,对集群系统中的所有节点施行统一软件部署过程较为复杂且效率低下,消耗的时间与人力资源成本过高。
发明内容
本申请实施例提供一种大规模数字对象仓库集群的部署方法、装置、电子设备、计算机可读存储介质,以解决相关技术中对于面向大规模的跨云跨地域集群系统节点的统一软件部署过程中,执行效率低下且成本过高的问题。
第一方面,本申请实施例提供了一种大规模数字对象仓库集群的部署方法,应用于数字对象仓库集群中的客户端,所述方法包括:
获取数字对象仓库集群中各节点的节点信息,所述节点信息用于表征所述节点的属性特征;
根据节点的节点信息,按照预设规划算法,从所有所述节点中选取至少部分目标节点,并将所有所述目标节点构建为树状结构的节点拓扑集合;
根据所述节点拓扑合集,生成树状网络规划文件,所述树状网络规划文件包括:目标节点的标识,所述目标节点在树状结构中的节点类型;
创建任务文件,所述任务文件包括:运行脚本,以及所述目标节点通过所述运行脚本所需要执行的任务;
向所述目标节点发送启动任务执行指令,并将所述树状网路规划文件与所述任务文件发送至所述目标节点,以供所述目标节点根据所述树状网络规划文件和所述任务文件,确定自己在树状结构中的节点类型,以及将所述运行脚本和目标任务部署在所述目标节点中。
在一种可选实现方式中,所述将所述树状网络规划文件和所述任务文件发送至所述目标节点,包括:
根据所述树状结构中根节点的标识,将所述树状网络规划文件和所述任务发送至所述根节点,以供所述根节点通过所述树状网络规划文件,将所述数字对象仓库集群中的目标节点构建为树状结构,以及将所述运行脚本和目标任务部署在所述目标节点中。
在一种可选实现方式中,在所述根据节点的节点信息,按照预设规划算法,从所有所述节点中选取至少部分目标节点,并将所有所述目标节点构建为树状结构的节点拓扑集合之前,所述方法还包括:
根据获取的所述节点信息,调用解析函数对所述节点信息进行解析处理操作,将所述节点信息转化为标准数据结构格式。
在一种可选实现方式中,所述节点信息包括:连接所述数字对象仓库集群节点的每台主机的主机名、登录密码、所在城市的地理位置、所在云提供商;所述解析处理操作包括:对用户输入内容的格式检查、关键信息的数据结构存储;所述标准数据结构格式的组成包括:所述节点的互联网协议地址、安全外壳协议用户名、登录密码、节点描述。
在一种可选实现方式中,所述根据节点的节点信息,按照预设规划算法,从所有所述节点中选取至少部分目标节点,并将所有所述目标节点构建为树状结构的节点拓扑集合,包括:
根据所述节点信息解析得到的所述标准数据结构,由所述节点的地理位置计算得到各节点之间的地理距离;
通过聚类算法,选取所述数字对象仓库集群中的一个目标节点作为根节点;所述目标节点为到所述数字对象仓库集群中其他节点平均距离最短的节点;
同样根据所述节点信息解析得到的所述标准数据结构,选取当前时刻所述数字对象仓库集群中到其他所述节点传输时间最短的目标节点作为所述根节点的子孙节点,加入至所述树状结构的节点拓扑集合中;
重复上述步骤,直至加入至所述树状结构的节点拓扑集合的目标节点个数达到目标阈值时停止。
第二方面,本申请实施例提供了一种大规模数字对象仓库集群的部署方法,其特征在于,应用于数字对象仓库集群中的目标节点,所述方法包括:
获取任务文件和树状网络规划文件,所述树状网络规划文件包括:构成树状结构的目标节点的标识,所述目标节点在树状结构中的节点类型;所述任务文件包括:运行脚本,以及所述目标节点通过所述运行脚本所需执行的目标任务;
响应于客户端的启动任务执行指令,根据所述目标节点的标识和所述树状网络规划文件,确定所述目标节点在树状结构中的节点类型;并根据所述节点类型和所述树状结构,将所述任务文件和树状网络规划文件下发或不下发至所述目标节点的子节点;
安装所述任务文件中的运行脚本,并获取所述目标节点通过所述运行脚本所需执行的目标任务。
在一种可选实现方式中,所述根据所述目标节点的标识和所述树状网络规划文件,确定所述目标节点在树状结构中的节点类型;并根据所述节点类型和所述树状结构,将所述任务文件和树状网络规划文件下发或不下发至所述目标节点的子节点,包括:
解析所述树状网络规划文件,根据当前目标节点的标识,确定当前所述目标节点的节点类型;
根据当前所述目标节点的节点类型,以及当前所述目标节点的父节点标识,确定当前所述目标节点在树状结构中的位置,以及确定当前所述目标节点的子节点的标识和文件传输顺序;
在所述子节点的标识不为空的情况下,根据所述子节点的标识,按照所述文件传输顺序,将所述任务文件和树状网络规划文件下发至所述子节点。
在一种可选实现方式中,所述方法还包括:
对当前所述目标节点的子节点发出启动任务执行指令,通知所述子节点执行向所述子节点的子节点传输所述启动任务执行指令、所述任务脚本文件和所述树状网络规划文件的操作。
第三方面,本申请实施例提供了一种大规模数字对象仓库集群的部署装置,其特征在于,应用于数字对象仓库集群中的客户端,所述装置包括:
信息获取模块,用于获取数字对象仓库集群中各节点的节点信息,所述节点信息用于表征所述节点的属性特征;
拓扑结构构建模块,用于根据节点的节点信息,按照预设规划算法,从所有所述节点中选取至少部分目标节点,并将所有所述目标节点构建为树状结构的节点拓扑集合;
规划文件生成模块,用于根据所述节点拓扑合集,生成树状网络规划文件,所述树状网络规划文件包括:目标节点的标识,所述目标节点在树状结构中的节点类型;
任务文件创建模块,用于创建任务文件,所述任务文件包括:运行脚本,以及所述目标节点通过所述运行脚本所需要执行的任务;
执行指令发送模块,用于向所述目标节点发送启动任务执行指令,并将所述树状网路规划文件与所述任务文件发送至所述目标节点,以供所述目标节点根据所述树状网络规划文件和所述任务文件,确定自己在树状结构中的节点类型,以及将所述运行脚本和目标任务部署在所述目标节点中。
在一种可选实现方式中,所述执行指令发送模块,包括:
目标文件发送子模块,用于根据所述树状结构中根节点的标识,将所述树状网络规划文件和所述任务发送至所述根节点,以供所述根节点通过所述树状网络规划文件,将所述数字对象仓库集群中的目标节点构建为树状结构,以及将所述运行脚本和目标任务部署在所述目标节点中。
在一种可选实现方式中,所述装置还包括:
节点信息解析模块,用于根据获取的所述节点信息,调用解析函数对所述节点信息进行解析处理操作,将所述节点信息转化为标准数据结构格式。
在一种可选实现方式中,所述节点信息包括:连接所述数字对象仓库集群节点的每台主机的主机名、登录密码、所在城市的地理位置、所在云提供商;所述解析处理操作包括:对用户输入内容的格式检查、关键信息的数据结构存储;所述标准数据结构格式的组成包括:所述节点的互联网协议地址、安全外壳协议用户名、登录密码、节点描述。
在一种可选实现方式中,所述拓扑结构构建模块,包括:
相对距离计算子模块,用于根据所述节点信息解析得到的所述标准数据结构,由所述节点的地理位置计算得到各节点之间的地理距离;
根节点选取子模块,用于通过聚类算法,选取所述数字对象仓库集群中的一个目标节点作为根节点;所述目标节点为到所述数字对象仓库集群中其他节点平均距离最短的节点;
子孙节点选取子模块,同样根据所述节点信息解析得到的所述标准数据结构,选取当前时刻所述数字对象仓库集群中到其他所述节点传输时间最短的目标节点作为所述根节点的子孙节点,加入至所述树状结构的节点拓扑集合中;
步骤循环终止子模块,用于重复上述步骤,直至加入至所述树状结构的节点拓扑集合的目标节点个数达到目标阈值时停止。
第四方面,本申请实施例提供了一种大规模数字对象仓库集群的部署装置,应用于数字对象仓库集群中的目标节点,所述装置包括:
目标文件接收模块,用于获取任务文件和树状网络规划文件,所述树状网络规划文件包括:构成树状结构的目标节点的标识,所述目标节点在树状结构中的节点类型;所述任务文件包括:运行脚本,以及所述目标节点通过所述运行脚本所需执行的目标任务;
目标文件分发模块,用于响应于客户端的启动任务执行指令,根据所述目标节点的标识和所述树状网络规划文件,确定所述目标节点在树状结构中的节点类型;并根据所述节点类型和所述树状结构,将所述任务文件和树状网络规划文件下发或不下发至所述目标节点的子节点;
任务脚本执行模块,用于安装所述任务文件中的运行脚本,并获取所述目标节点通过所述运行脚本所需执行的目标任务。
第五方面,本申请实施例还提供了一种电子设备,包括用于存储所述处理器可执行指令的存储器;其中,所述处理器被配置为执行所述指令,以实现所述的数字对象仓库集群的部署方法。
第六方面,本申请实施例还提供了一种存储介质,当所述计算机可读存储介质中的指令由电子设备的处理器执行时,使得电子设备能够执行所述的数字对象仓库集群的部署方法。
在本申请实施例中,本申请通过本地客户端执行规划算法,基于集群中各节点的节点信息将集群中的部分节点规划生成树状拓扑集合,该集合可实现在集群中各节点之间建立网状连接,生成树状网络传输树;通过本地客户端,针对树状网络数字对象仓库集群创建运行脚本,并上传至传输树根节点,依靠树状网络的传输关系将运行脚本分发至集群中的所有节点;当同一节点接收到其传输子节点的传输完毕反馈后,即在当前节点上安装运行脚本包含的应用程序,并执行脚本中的对应指令;依靠建立树状传输树对集群系统中的所有节点施行统一软件部署,能够在集群节点不预装软件客户端的情况下实现整个集群系统的软件快速部署,且节点之间的信息传输速率大幅提高;简化了集群系统的运维过程,同时也降低了消耗的时间与人力资源。
上述说明仅是本申请技术方案的概述,为了能够更清楚了解本申请的技术手段,而可依照说明书的内容予以实施,并且为了让本申请的上述和其它目的、特征和优点能够更明显易懂,以下特举本申请的具体实施方式。
附图说明
通过阅读下文优选实施方式的详细描述,各种其他的优点和益处对于本领域普通技术人员将变得清楚明了。附图仅用于示出优选实施方式的目的,而并不认为是对本申请的限制。而且在整个附图中,用相同的参考符号表示相同的部件。在附图中:
图1是本申请实施例提供的一种数字对象仓库集群的部署方法的简要交互步骤流图;
图2是本申请实施例提供的一种网络传输关系结构对比图;
图3是本申请实施例提供的一种面向大规模集群的运维系统功能模块组成框图;
图4是是本申请实施例提供的一种应用于数字对象仓库集群中客户端的数字对象仓库集群服务器部署方法的具体步骤框图;
图5是本申请实施例提供的一种应用于数字对象仓库集群中目标节点的数字对象仓库集群服务器部署方法的具体步骤框图;
图6是本申请实施例提供的一种数字对象仓库集群中不同节点的传输与任务执行关系图;
图7是本申请实施例提供的一种数字对象仓库集群的部署装置,应用于数字对象仓库集群中的客户端;
图8是本申请实施例提供的一种数字对象仓库集群的部署装置,应用于数字对象仓库集群中的目标节点;
图9是本申请一个实施例的电子设备的逻辑框图;
图10是本申请另一个实施例的电子设备的逻辑框图。
具体实施方式
下面将参照附图更详细地描述本申请的示例性实施例。虽然附图中显示了本申请的示例性实施例,然而应当理解,可以以各种形式实现本申请而不应被这里阐述的实施例所限制。相反,提供这些实施例是为了能够更透彻地理解本申请,并且能够将本申请的范围完整的传达给本领域的技术人员。
图1是本申请实施例提供的一种数字对象仓库集群的部署方法的简要交互步骤流图,应用于数字对象仓库集群中的客户端;如图1所示,该方法可以包括:
步骤101,获取数字对象仓库集群中各节点的节点信息,所述节点信息用于表征所述节点的属性特征。
在该步骤中,首先由客户端获取待操作的数字对象仓库集群中各节点的节点信息,节点信息具体用于表征节点的属性特征;由各节点的属性特征能够得到各节点之间的相对物理距离与信息传输时延等信息,在后续对于集群树状传输树的生成过程具有重要意义。
具体地,操作用户或运维人员经本地客户端连接至集群系统信息库中,并按照预设目标开始获取整个数字对象仓库集群中所有待操作节点的节点信息;值得说明的是,在此过程中集群内的所有目标节点之间均为对等式设备节点,尚不存在物理链路或传输层级之间的上下关系。
参照图2,图2是本申请实施例提供的一种网络传输关系结构对比图;如图2所示,现有的服务器-客户机(C/S,Client Server)架构中,所有的客户端主机节点202链接于中心服务器201,数据分发速度受限于中心服务器201的网络上传带宽;而本申请依靠类对等式计算机网络(P2P,Peer to Peer)建立数字对象仓库集群,各节点之间的链路传输关系为类树状根茎式网状传输,各节点之间为对等式关系,不存在传统意义上的中心服务器。
步骤102,根据节点的节点信息,按照预设规划算法,从所有所述节点中选取至少部分目标节点,并将所有所述目标节点构建为树状结构的节点拓扑集合。
在获取到集群中所有待操作目标节点的节点信息之后,客户端根据获取的节点信息开始执行预设规划算法来生成树状传输网络框架;根据节点信息所表征的节点属性特征,客户端将至少选取集群中的部分目标节点来构建树状结构的节点拓扑集合;由集群中的至少部分节点来构建树状结构的节点拓扑集合,生成树状网络传输树,其规划算法的基本思想为,以最快速度进行已接受指令节点的增值,使得整个集群最终的总传输时间。
具体地,通过获取的节点信息得到各节点所处的真实地理位置,计算得到各节点之间的相对距离;通过聚类算法,选取出一个到集群中其他节点平均距离最短的节点作为根节点;根节点作为整个树状拓扑集合的初始节点,在树状传输网络中作为外来数据的接入点;当根节点选取完毕后,继续由获取的节点信息中包含的节点所在城市服务的云服务提供商等信息,得到各节点之间的传输速率与网络传输时延;由此根据节点之间的传输参数特征,首先选取一个当前传输结束时间最短的节点作为父节点,之后再在剩余待选取的节点中选择一个与其距离最短的节点作为其子节点加入至拓扑集合中;不断重复该步骤,直到拓扑集合中选取的节点数达到预设阈值;本申请由树状传输网络构成的大规模集群部署和运维系统可称作Treeops系统。
在本步骤中,以节点的节点信息为依据,使用拓扑算法逐渐筛选最佳目标节点加入至拓扑集合中来生成树状网络传输树;基于快速增值的思想经过多伦循环筛选构建出最优结构的拓扑集合,生成的树状网络传输树中包含每一个目标节点都分别承载着不同的数字对象;生成树的生成原则是为了达到在数据传输工作集群整体的传输时间最短的技术效果,因此在此过程中,节点信息包含的地理位置、传输速率等信息是作为算法执行的重要依据;由此构建的网络传输树,在实际使用中能够针对多节点的数据分发传输达到最优传输速率,提升了在大规模集群服务网络中的数据传输效率。
步骤103,根据所述节点拓扑合集,生成树状网络规划文件,所述树状网络规划文件包括:目标节点的标识,所述目标节点在树状结构中的节点类型。
客户端执行规划算法生成树状传输网络后,根据各节点之间的连接关系以及单个节点在整个传输网络中所处的位置信息,生成树状网络规划文件;其中树状网络规划文件中包括的信息有,传输树中每个目标节点的身份标识,以及目标节点在树状结构中的节点类型、每个目标节点之间的相互连接关系等。
网络规划文件作为整个集群节点构成的树状网络传输树蓝图,详细地记录了各节点对应的身份信息,一方面用于在网络中通过各节点承载的数字对象包含的标识信息正确辨识节点的身份;另一方面,通过该文件在后期的数据传输过程中,各节点之间能够清晰地识别出自己在当前树状结构中的位置,从而正确的进行数据分发与中转;能够正确识别各节点之间链路的上下层关系,是确保数据信息正确传输的重要保障。
步骤104,创建任务文件,所述任务文件包括:运行脚本,以及所述目标节点通过所述运行脚本所需要执行的任务。
在生成树状网络规划文件之后,继续由客户端根据用户或运维人员的实际需求生成对应的任务文件,以便后续通过生成的树状传输网络分发给集群中的所有目标节点执行。
具体地,任务文件具体包括运行脚本,以及目标节点收到后需要根据运行脚本需要执行的对应任务;其中,运行脚本可以为具体的应用程序,组成程序的数据包与对应的执行共同构成任务文件后续通过树状传输网络分发给集群中的各个节点。
通过将命令脚本与执行指令打包为一个完整的.zh(一种文件类型后缀)任务文件,依托生成的树状网络传输树分发至各个节点,在节点收到数据文件后依照对应任务指令在应用程序上进行相应操作,在集群节点之间同时以高传输速率与高执行效率完成数据指令的传输与执行,极大简化了集群节点的统一运维过程。
步骤105,向所述目标节点发送启动任务执行指令,并将所述树状网路规划文件与所述任务文件发送至所述目标节点,以供所述目标节点根据所述树状网络规划文件和所述任务文件,确定自己在树状结构中的节点类型,以及将所述运行脚本和目标任务部署在所述目标节点中。
经客户端完成树状网络传输树的生成、网络规划文件与任务文件的创建;现经客户端将上述两项文件统一发送至目标节点进行传输,并通过网络传输树向集群中的所有节点分发数据包并且下达运行指令。
参照图3,图3是本申请实施例提供的一种面向大规模集群的运维系统功能模块组成框图;如图3所示整个运维系统按照功能可大致划分为三个功能模块:即树状网络传输模块、任务脚本模块与任务执行控制模块;其中,树状网络传输模块主要负责树状传输网络的规划、网络解析与信息流控制,可对应实施例中步骤101-步骤103所述方法中包含的执行内容;任务脚本模块包括:任务脚本的创建、任务脚本的解析与任务脚本的执行,其中任务脚本的创建与主要对应步骤104所述方法包含的内容。
具体地,客户端完成上述两项文件的创建后,首先将其直接发送至树状传输网络的根节点,由根节点依据网络规划文件与任务文件所包含的内容开始向第一层父节点传输数据,父节点接收到传输的数据文件后,将返还给根节点确认信息,代表当前节点已接收完毕所有的数据的传输内容,随后各节点开始依次解析并执行接收到的任务脚本,并决定继续或不继续向其他目标节点继续传输数据文件。
值得说明的是,在整个生成的树状网络传输树中,按照生成的先后顺序与各节点在传输树中的连接关系可将所有目标节点大致划分为几个种类;参照图2,图2是本申请实施例提供的一种网络传输关系结构对比图;如图2所示,所有节点可按照结构划分为:根节点203、中间节点204、叶子结点205;其中根节点203作为整个传输网络的数据输入节点,接收到数据文件后只负责对其他节点的文件传输,叶子结点205由于不存在下层链路节点因此只负责数据文件的接受,而处于中间部的中间节点204则同时承担下载和上传文件的责任。
步骤106,获取任务文件和树状网络规划文件,所述树状网络规划文件包括:构成树状结构的目标节点的标识,所述目标节点在树状结构中的节点类型;所述任务文件包括:运行脚本,以及所述目标节点通过所述运行脚本所需执行的目标任务。
客户端将生成的任务文件和树状网络规划文件上传至集群系统后,开始由各目标节点根据上述文件开始互相按照执行指令分发数据文件;其中树状网络规划文件包括:构成树状结构的目标节点的标识,以及目标节点在树状结构中的节点类型;任务文件包括:运行脚本,以及目标节点通过运行脚本所需执行的目标任务。
具体地,在传输过程中各目标节点根据读取接收到的树状网络规划文件内容,确定自己在当前传输网络中的位置与对应的节点类型,同时根据任务文件描述的该节点类型在当前传输阶段需要执行的任务内容执行对应动作。
例如:集群中的某目标节点B当前时刻收到了来自上一目标节点A发的任务文件和树状网络规划文件,接收完毕后目标节点B由树状网络规划文件得知自己的身份标识为中间节点,在整个集群传输网络中同时担任下载和上传文件的责任;而与B连接的下层节点包含C、D、E三个目标节点,在目标节点B确认收到通过目标节点A传输的任务文件和树状网络规划文件后,继续将该文件分别下发至C、D、E三个目标节点,直至C、D、E三个目标节点都向B反馈接受完毕的信息后停止传输。
不同于传统C/S传输架构,所有目标节点均从中心服务器接受数据传输,由本申请提供的树状传输网络进行文件分发,除根节点与叶子节点外,所有中间节点均同时兼顾数据上传与下载的任务,因此同一时刻可用于分发的数据资源更多;在传输过程中,已拥有完整数据资源的目标节点越多,可用于分发的完整数据资源就越多,各节点的下载速度不再依赖于中心服务器的单一传输带宽,大大提高了集群服务的数据共享效率。
步骤107,响应于客户端的启动任务执行指令,根据所述目标节点的标识和所述树状网络规划文件,确定所述目标节点在树状结构中的节点类型;并根据所述节点类型和所述树状结构,将所述任务文件和树状网络规划文件下发或不下发至所述目标节点的子节点。
参照步骤106,在某目标节点接收到客户端的启动任务指令后,根据目标节点的标识和树状网络规划文件,确定自身在树状结构中的节点类型,并根据节点类型和所述树状结构,将任务文件和树状网络规划文件下发或不下发至目标节点的子节点。
例如,集群中的某目标节点D当前时刻收到了来自上一目标节点B发的任务文件和树状网络规划文件,接收完毕后目标节点D由树状网络规划文件得知自己的身份标识为叶子结点,在整个集群传输网络中只负责接收和下载文件的责任;而D再无连接的下层节点,在目标节点D确认收到通过目标节点B传输的任务文件和树状网络规划文件后,将无需再向其他任意节点传输任务文件和树状网络规划文件。
步骤108,安装所述任务文件中的运行脚本,并获取所述目标节点通过所述运行脚本所需执行的目标任务。
经过步骤106、步骤107后,对于单个目标节点可认为接受到了来自上一节点分发的任务文件和树状网络规划文件;由此进入到执行阶段,该阶段主要分为两步执行。
具体地,第一步为对子节点的Treeops发出启动程序的相关指令,使其继续执行向下传递信息的任务,参照步骤106和步骤107,目标节点首先根据接受到的树状网络规划文件,得到节点本身的标识信息及在传输网络中所处的位置信息,并以此决定将任务文件和树状网络规划文件下发或不下发至目标节点的子节点;第二步,当识别到传输任务完成后,开始执行任务文件中除传输外指定的剩余任务。
值得说明的是,由于在传输网络中,一个目标节点可以对应多个子节点,步骤108并非在顺序逻辑中严格在步骤106与步骤107全部完成之后才能执行的步骤,而是对应传输过程中的每个目标文件在接收传输与向外传输数据文件后必定执行的相关步骤;对于单个子节点的传输完成后,即可执行步骤108的指令发出动作。
经过步骤108,在集群中所有目标节点上执行任务文件包含的除传输指令之外的剩余指令,执行任务文件中包含程序指令的具体脚本文件,即可实现整个集群系统的软件统一部署与运维。
综上所述,本申请通过本地客户端执行规划算法,基于集群中各节点的节点信息将集群中的部分节点规划生成树状拓扑集合,该集合可实现在集群中各节点之间建立网状连接,生成树状网络传输树;通过本地客户端,针对树状网络数字对象仓库集群创建运行脚本,并上传至传输树根节点,依靠树状网络的传输关系将运行脚本分发至集群中的所有节点;当同一节点接收到其传输子节点的传输完毕反馈后,即在当前节点上安装运行脚本包含的应用程序,并执行脚本中的对应指令;依靠建立树状传输树对集群系统中的所有节点施行统一软件部署,能够在集群节点不预装软件客户端的情况下实现整个集群系统的软件快速部署,且节点之间的信息传输速率大幅提高;简化了集群系统的运维过程,同时也降低了消耗的时间与人力资源。
图4是本申请实施例提供的一种应用于数字对象仓库集群中客户端的数字对象仓库集群服务器部署方法的具体步骤框图;如图4所示,其步骤具体包括:
步骤301,获取数字对象仓库集群中各节点的节点信息,所述节点信息用于表征所述节点的属性特征。
该步骤具体可以参照上述步骤101,此处不再赘述。
可选的,步骤301还可以包括:
子步骤3011,根据获取的所述节点信息,调用解析函数对所述节点信息进行解析处理操作,将所述节点信息转化为标准数据结构格式。
其中,节点信息包括:连接数字对象仓库集群节点的每台主机的主机名、登录密码、所在城市的地理位置、所在云提供商;解析处理操作包括:对用户输入内容的格式检查、关键信息的数据结构存储;标准数据结构格式的组成包括:所述节点的互联网协议地址、安全外壳协议用户名、登录密码、节点描述。
具体地,在集群任务开始之前首先由图3中所示的树状网络规划模块,对用户输入的集群节点信息进行读取,经调用解析函数对包含节点信息的输入文件进行解析处理,从而将用户输入转化为安全外壳协议下的标准数据格式(SSH Machine,Secure ShellMachine),将对应信息转化为标准数据结构表;其中包含的数据类型包括:SSH用户名、互联网协议地址(IP,Internet Protocol Address),SSH端口、SSH密码、节点所在城市、节点云服务商、节点描述、节点内网IP。
值得说明的是,SSHMachine可以提供给负责SSH连接的类执行目标节点的SSH连接和指令执行;SSHMachine以列表的形式存储在类虚拟机(VMInfo,Virtual Machine)中,并在程序运行时始终存在。
经过对用户输入的节点信息进行解析与标准化,生成数据结构表,能够更加统一和方便地管理集群中庞大节点数量对应的节点信息,同时在后期树状传输树的生成中作为标准输入与规划算法执行的重要依据。
步骤302,根据节点的节点信息,按照预设规划算法,从所有所述节点中选取至少部分目标节点,并将所有所述目标节点构建为树状结构的节点拓扑集合。
该步骤具体可以参照上述步骤102,此处不再赘述。
可选的,步骤302还可以包括:
子步骤3021,根据所述节点信息解析得到的所述标准数据结构,由所述节点的地理位置计算得到各节点之间的地理距离。
通过调用解析操作得到的标准SSHMachine结构数据中,目标节点的云服务商、节点所在城市等信息,可以得到各目标节点之间的相对地理位置,从而可以通过计算得出各节点之间的地理距离。
目标节点之间,在现实环境中的相对距离也会对数据传输产生一定影响,经长距离传输的数据信息可能存在多次交换机的数据中转,将产生更高的传输时延。而本申请中通过计算相对距离选择最优传输网络生层策略,能够节点的基本条件特征尽可能的去除节点之间不必要的传输时延。
子步骤3022,通过聚类算法,选取所述数字对象仓库集群中的一个目标节点作为根节点;所述目标节点为到所述数字对象仓库集群中其他节点平均距离最短的节点。
根节点作为整个数字对象仓库集群与外界的接入点,需要最大程度确保其到集群中每一个节点的平均距离为最短,如此做法能够确保在后期整个数字对象仓库集群的实际使用中,面对所有节点所需要消耗的传输资源为最少。
子步骤3023,同样根据所述节点信息解析得到的所述标准数据结构,选取当前时刻所述数字对象仓库集群中到其他所述节点传输时间最短的目标节点作为所述根节点的子孙节点,加入至所述树状结构的节点拓扑集合中。
传输树的算法设计思想为,以最快的速度进行已接受指令节点的增殖,以使得集群最终的总传输时间尽量少;承接子步骤3022,在选取根节点完毕后,对于集群中的其他节点通过比较在当前结构中在树中的传输时间长短选取目标节点加入至传输树中,经过多轮循环选取传输时间最短的节点生成的传输树,集群总体需要的传输时间同样也是最短的。
具体地,对于每个已在树中的节点,都具备一个传输结束时间。在本场景中,假设对于相同的传输任务,节点到节点之间的传输时间应当是固定的;例如当时时刻,节点A至节点B、C、D的传输时间都设为1。当节点B需要增加一个子节点E时,即等同于使其增加一份传输任务,因此该节点的传输结束时间+1。在一棵生成树中,集群总体需要的传输时间,等同于生成树中节点最长的传输结束时间。
每一轮节点的选取皆遵循传输时间最短原则,能够确保集群总体需要的传输时间同样也是最短的;对于集群节点的最佳数据传输效率需求提供最优的传输策略。
子步骤3024,重复上述步骤,直至加入至所述树状结构的节点拓扑集合的目标节点个数达到目标阈值时停止。
通过重复上述步骤,经过多次节点的循环筛选和加入,直到传输树吸纳的目标节点个数达到用户的目标需求即可停止;在此过程中,传输树中包含的目标节点个数可以包括集群系统中识别到的所有节点,也可以仅为集群中所有节点中的部分节点。
步骤303,根据所述节点拓扑合集,生成树状网络规划文件,所述树状网络规划文件包括:目标节点的标识,所述目标节点在树状结构中的节点类型。
该步骤具体可以参照上述步骤103,此处不再赘述。
步骤304,创建任务文件,所述任务文件包括:运行脚本,以及所述目标节点通过所述运行脚本所需要执行的任务。
该步骤具体可以参照上述步骤104,此处不再赘述。
步骤305,向所述目标节点发送启动任务执行指令,并将所述树状网路规划文件与所述任务文件发送至所述目标节点,以供所述目标节点根据所述树状网络规划文件和所述任务文件,确定自己在树状结构中的节点类型,以及将所述运行脚本和目标任务部署在所述目标节点中。
该步骤具体可以参照上述步骤105,此处不再赘述。
综上所述,本申请通过本地客户端执行规划算法,基于集群中各节点的节点信息将集群中的部分节点规划生成树状拓扑集合,该集合可实现在集群中各节点之间建立网状连接,生成树状网络传输树;通过本地客户端,针对树状网络数字对象仓库集群创建运行脚本,并上传至传输树根节点,依靠树状网络的传输关系将运行脚本分发至集群中的所有节点;当同一节点接收到其传输子节点的传输完毕反馈后,即在当前节点上安装运行脚本包含的应用程序,并执行脚本中的对应指令;依靠建立树状传输树对集群系统中的所有节点施行统一软件部署,能够在集群节点不预装软件客户端的情况下实现整个集群系统的软件快速部署,且节点之间的信息传输速率大幅提高;简化了集群系统的运维过程,同时也降低了消耗的时间与人力资源。
图5是本申请实施例提供的一种应用于数字对象仓库集群中目标节点的数字对象仓库集群服务器部署方法的具体步骤框图;如图5所示,其步骤具体包括:
步骤401,获取任务文件和树状网络规划文件,所述树状网络规划文件包括:构成树状结构的目标节点的标识,所述目标节点在树状结构中的节点类型;所述任务文件包括:运行脚本,以及所述目标节点通过所述运行脚本所需执行的目标任务。
该步骤具体可以参照上述步骤106,此处不再赘述。
步骤402,响应于客户端的启动任务执行指令,根据所述目标节点的标识和所述树状网络规划文件,确定所述目标节点在树状结构中的节点类型;并根据所述节点类型和所述树状结构,将所述任务文件和树状网络规划文件下发或不下发至所述目标节点的子节点。
该步骤具体可以参照上述步骤107,此处不再赘述。
可选的,步骤402可以包括:
子步骤4021,调用规划图解析器对获取的树状网络规划文件进行解析,确定目标节点在树状结构中的节点类型、标识信息与位置信息。
解析阶段,对于获取的树状网络规划文件,能够得到当前节点自身的标识信息,每个目标节点的标识信息时唯一的,从而区别集群中所有其他节点,同时在实际使用中,对于系统运行出现的问题能够及时定位对应的问题节点。
进一步地,经解析获得节点类型与位置信息,用于在后续执行阶段确定当前节点的传输任务;若节点类型识别为中间节点,则在任务脚本执行阶段仍需要对其他子节点继续传输任务文件与树状网络规划文件;反之若节点类型识别为叶子节点,则无需再承担传输任务。
具体地,参考图6;图6是本申请实施例提供的一种不同节点的传输与任务执行关系图;如图6所示,对于节点A首先执行文件传输命令,接受由Treeops客户端下达的启动指令,对节点B进行文件传输,包括任务问价与树状网络规划文件;当节点B确认数据局文件接收完毕后将结果确认信息反馈给节点A,由此节点A继续向节点B下达启动指令,命令节点B开始执行接收到的相关指令,之后节点A自身开始进行本地部署,即执行任务文件中除传输指令之外的其他命令;同理,节点B与节点C之间的执行关系与节点A和节点B之间的执行关系相同,而对于节点C,因再无后续节点需要数据文件的传输,在接收到节点B的启动指令后,直接开始执行本地部署任务。
步骤403,安装所述任务文件中的运行脚本,并获取所述目标节点通过所述运行脚本所需执行的目标任务。
该步骤具体可以参照上述步骤108,此处不再赘述。
可选的,步骤403可以包括:
子步骤4031,调用任务脚本解释器对zh脚本进行解析,得知本节点需要执行的任务。
经树状传输网络的解析后,调用任务脚本解释器对zh脚本进行解析,得知本节点需要执行的任务。
值得说明的是,任务文件与树状传输网络的解析操作均在各目标节点本地完成;经解析后的脚本指令还原了客户需要实现的任务需求,对目标节点具有更高的可执行性。
子步骤4032,根据所述zh脚本解析结果,决定将所述任务文件和树状网络规划文件下发或不下发至所述目标节点的子节点。
该步骤具体可以参照上述步骤4021,此处不再赘述。
子步骤4033,对子节点发出传输启动命令。
该步骤具体可以参照上述步骤4021,此处不再赘述。
子步骤4034,执行zh脚本中除文件传输外的剩余脚本指令。
该步骤具体可以参照上述步骤4021,此处不再赘述。
综上所述,本申请通过本地客户端执行规划算法,基于集群中各节点的节点信息将集群中的部分节点规划生成树状拓扑集合,该集合可实现在集群中各节点之间建立网状连接,生成树状网络传输树;通过本地客户端,针对树状网络数字对象仓库集群创建运行脚本,并上传至传输树根节点,依靠树状网络的传输关系将运行脚本分发至集群中的所有节点;当同一节点接收到其传输子节点的传输完毕反馈后,即在当前节点上安装运行脚本包含的应用程序,并执行脚本中的对应指令;依靠建立树状传输树对集群系统中的所有节点施行统一软件部署,能够在集群节点不预装软件客户端的情况下实现整个集群系统的软件快速部署,且节点之间的信息传输速率大幅提高;简化了集群系统的运维过程,同时也降低了消耗的时间与人力资源。
图7是本申请实施例提供的一种大规模数字对象仓库集群的部署装置,应用于数字对象仓库集群中的客户端;如图7所示,所述装置包括:信息获取模块501、拓扑结构构建模块502、规划文件生成模块503、任务文件创建模块504、执行指令发送模块505;
所述信息获取模块501,用于获取数字对象仓库集群中各节点的节点信息,所述节点信息用于表征所述节点的属性特征;
所述拓扑结构构建模块502,用于根据节点的节点信息,按照预设规划算法,从所有所述节点中选取至少部分目标节点,并将所有所述目标节点构建为树状结构的节点拓扑集合;
所述规划文件生成模块503,用于根据所述节点拓扑合集,生成树状网络规划文件,所述树状网络规划文件包括:目标节点的标识,所述目标节点在树状结构中的节点类型;
所述任务文件创建模块504,用于创建任务文件,所述任务文件包括:运行脚本,以及所述目标节点通过所述运行脚本所需要执行的任务;
所述执行指令发送模块505,用于向所述目标节点发送启动任务执行指令,并将所述树状网路规划文件与所述任务文件发送至所述目标节点,以供所述目标节点根据所述树状网络规划文件和所述任务文件,确定自己在树状结构中的节点类型,以及将所述运行脚本和目标任务部署在所述目标节点中。
在一种可选实现方式中,所述信息获取模块501包括:
目标文件发送子模块,用于根据所述树状结构中根节点的标识,将所述树状网络规划文件和所述任务发送至所述根节点,以供所述根节点通过所述树状网络规划文件,将所述数字对象仓库集群中的目标节点构建为树状结构,以及将所述运行脚本和目标任务部署在所述目标节点中。
在一种可选实现方式中,所述装置还包括:
节点信息解析模块,用于根据获取的所述节点信息,调用解析函数对所述节点信息进行解析处理操作,将所述节点信息转化为标准数据结构格式。
在一种可选实现方式中,所述装置中,所述节点信息包括:
连接所述数字对象仓库集群节点的每台主机的主机名、登录密码、所在城市的地理位置、所在云提供商;所述解析处理操作包括:对用户输入内容的格式检查、关键信息的数据结构存储;所述标准数据结构格式的组成包括:所述节点的互联网协议地址、安全外壳协议用户名、登录密码、节点描述。
在一种可选实现方式中,所述拓扑结构构建模块502包括:
相对距离计算子模块,用于根据所述节点信息解析得到的所述标准数据结构,由所述节点的地理位置计算得到各节点之间的地理距离;
根节点选取子模块,用于通过聚类算法,选取所述数字对象仓库集群中的一个目标节点作为根节点;所述目标节点为到所述数字对象仓库集群中其他节点平均距离最短的节点;
子孙节点选取子模块,同样根据所述节点信息解析得到的所述标准数据结构,选取当前时刻所述数字对象仓库集群中到其他所述节点传输时间最短的目标节点作为所述根节点的子孙节点,加入至所述树状结构的节点拓扑集合中;
步骤循环终止子模块,用于重复上述步骤,直至加入至所述树状结构的节点拓扑集合的目标节点个数达到目标阈值时停止。
综上所述,本申请实施例提供的一种应用于数字对象仓库集群中客户端的集群服务器部署装置,通过本地客户端,针对树状网络数字对象仓库集群创建运行脚本,并上传至传输树根节点,依靠树状网络的传输关系将运行脚本分发至集群中的所有节点;当同一节点接收到其传输子节点的传输完毕反馈后,即在当前节点上安装运行脚本包含的应用程序,并执行脚本中的对应指令;依靠建立树状传输树对集群系统中的所有节点施行统一软件部署,能够在集群节点不预装软件客户端的情况下实现整个集群系统的软件快速部署,且节点之间的信息传输速率大幅提高;简化了集群系统的运维过程,同时也降低了消耗的时间与人力资源。
图8是本申请实施例提供的一种大规模数字对象仓库集群的部署装置,应用于数字对象仓库集群中的目标节点;如图8所示,所述装置包括:目标文件接收模块801、目标文件分发模块802、任务脚本执行模块803;
所述目标文件接收模块801,用于获取任务文件和树状网络规划文件,所述树状网络规划文件包括:构成树状结构的目标节点的标识,所述目标节点在树状结构中的节点类型;所述任务文件包括:运行脚本,以及所述目标节点通过所述运行脚本所需执行的目标任务;
所述目标文件分发模块802,用于响应于客户端的启动任务执行指令,根据所述目标节点的标识和所述树状网络规划文件,确定所述目标节点在树状结构中的节点类型;并根据所述节点类型和所述树状结构,将所述任务文件和树状网络规划文件下发或不下发至所述目标节点的子节点;
所述任务脚本执行模块803,用于安装所述任务文件中的运行脚本,并获取所述目标节点通过所述运行脚本所需执行的目标任务。
综上所述,本申请实施例提供的一种应用于数字对象仓库集群中目标节点的集群服务器部署装置,依靠树状网络的传输关系将运行脚本分发至集群中的所有节点;当同一节点接收到其传输子节点的传输完毕反馈后,即在当前节点上安装运行脚本包含的应用程序,并执行脚本中的对应指令;依靠建立树状传输树对集群系统中的所有节点施行统一软件部署,能够在集群节点不预装软件客户端的情况下实现整个集群系统的软件快速部署,且节点之间的信息传输速率大幅提高;简化了集群系统的运维过程,同时也降低了消耗的时间与人力资源。
图9是根据一示例性实施例示出的一种电子设备600的框图。例如,电子设备600可以是移动电话,计算机,数字广播终端,消息收发设备,游戏控制台,平板设备,医疗设备,健身设备,个人数字助理等。
参照图9,电子设备600可以包括以下一个或多个组件:处理组件602,存储器604,电源组件606,多媒体组件608,音频组件610,输入/输出(I/O)的接口612,传感器组件614,以及通信组件616。
处理组件602通常控制电子设备600的整体操作,诸如与显示,电话呼叫,数据通信,相机操作和记录操作相关联的操作。处理组件602可以包括一个或多个处理器620来执行指令,以完成上述的方法的全部或部分步骤。此外,处理组件602可以包括一个或多个模块,便于处理组件602和其他组件之间的交互。例如,处理组件602可以包括多媒体模块,以方便多媒体组件608和处理组件602之间的交互。
存储器604用于存储各种类型的数据以支持在电子设备600的操作。这些数据的示例包括用于在电子设备600上操作的任何应用程序或方法的指令,联系人数据,电话簿数据,消息,图片,多媒体等。存储器604可以由任何类型的易失性或非易失性存储设备或者它们的组合实现,如静态随机存取存储器(SRAM),电可擦除可编程只读存储器(EEPROM),可擦除可编程只读存储器(EPROM),可编程只读存储器(PROM),只读存储器(ROM),磁存储器,快闪存储器,磁盘或光盘。
电源组件606为电子设备600的各种组件提供电力。电源组件606可以包括电源管理系统,一个或多个电源,及其他与为电子设备600生成、管理和分配电力相关联的组件。
多媒体组件608包括在所述电子设备600和用户之间的提供一个输出接口的屏幕。在一些实施例中,屏幕可以包括液晶显示器(LCD)和触摸面板(TP)。如果屏幕包括触摸面板,屏幕可以被实现为触摸屏,以接收来自用户的输入信号。触摸面板包括一个或多个触摸传感器以感测触摸、滑动和触摸面板上的手势。所述触摸传感器可以不仅感测触摸或滑动动作的分界,而且还检测与所述触摸或滑动操作相关的持续时间和压力。在一些实施例中,多媒体组件608包括一个前置摄像头和/或后置摄像头。当电子设备600处于操作模式,如拍摄模式或多媒体模式时,前置摄像头和/或后置摄像头可以接收外部的多媒体数据。每个前置摄像头和后置摄像头可以是一个固定的光学透镜系统或具有焦距和光学变焦能力。
音频组件610用于输出和/或输入音频信号。例如,音频组件610包括一个麦克风(MIC),当电子设备600处于操作模式,如呼叫模式、记录模式和语音识别模式时,麦克风用于接收外部音频信号。所接收的音频信号可以被进一步存储在存储器604或经由通信组件616发送。在一些实施例中,音频组件610还包括一个扬声器,用于输出音频信号。
I/O接口612为处理组件602和外围接口模块之间提供接口,上述外围接口模块可以是键盘,点击轮,按钮等。这些按钮可包括但不限于:主页按钮、音量按钮、启动按钮和锁定按钮。
传感器组件614包括一个或多个传感器,用于为电子设备600提供各个方面的状态评估。例如,传感器组件614可以检测到电子设备600的打开/关闭状态,组件的相对定位,例如所述组件为电子设备600的显示器和小键盘,传感器组件614还可以检测电子设备600或电子设备600一个组件的位置改变,用户与电子设备600接触的存在或不存在,电子设备600方位或加速/减速和电子设备600的温度变化。传感器组件614可以包括接近传感器,被配置用来在没有任何的物理接触时检测附近物体的存在。传感器组件614还可以包括光传感器,如CMOS或CCD图像传感器,用于在成像应用中使用。在一些实施例中,该传感器组件614还可以包括加速度传感器,陀螺仪传感器,磁传感器,压力传感器或温度传感器。
通信组件616用于便于电子设备600和其他设备之间有线或无线方式的通信。电子设备600可以接入基于通信标准的无线网络,如WiFi,运营商网络(如2G、3G、4G或5G),或它们的组合。在一个示例性实施例中,通信组件616经由广播信道接收来自外部广播管理系统的广播信号或广播相关信息。在一个示例性实施例中,所述通信组件616还包括近场通信(NFC)模块,以促进短程通信。例如,在NFC模块可基于射频识别(RFID)技术,红外数据协会(IrDA)技术,超宽带(UWB)技术,蓝牙(BT)技术和其他技术来实现。
在示例性实施例中,电子设备600可以被一个或多个应用专用集成电路(ASIC)、数字信号处理器(DSP)、数字信号处理设备(DSPD)、可编程逻辑器件(PLD)、现场可编程门阵列(FPGA)、控制器、微控制器、微处理器或其他电子元件实现,用于实现本申请实施例提供的一种大规模数字对象仓库集群的部署方法。
在示例性实施例中,还提供了一种包括指令的非临时性计算机可读存储介质,例如包括指令的存储器604,上述指令可由电子设备600的处理器620执行以完成上述方法。例如,所述非临时性存储介质可以是ROM、随机存取存储器(RAM)、CD-ROM、磁带、软盘和光数据存储设备等。
图10是根据一示例性实施例示出的一种电子设备700的框图。例如,电子设备700可以被提供为一服务器。参照图10,电子设备700包括处理组件722,其进一步包括一个或多个处理器,以及由存储器732所代表的存储器资源,用于存储可由处理组件722的执行的指令,例如应用程序。存储器732中存储的应用程序可以包括一个或一个以上的每一个对应于一组指令的模块。此外,处理组件722被配置为执行指令,以执行本申请实施例提供的一种大规模数字对象仓库集群的部署方法。
电子设备700还可以包括一个电源组件726被配置为执行电子设备700的电源管理,一个有线或无线网络接口750被配置为将电子设备700连接到网络,和一个输入输出(I/O)接口758。电子设备700可以操作基于存储在存储器732的操作系统,例如WindowsServerTM,Mac OS XTM,UnixTM,LinuxTM,FreeBSDTM或类似。
本领域技术人员在考虑说明书及实践这里公开的申请后,将容易想到本申请的其它实施方案。本申请旨在涵盖本申请的任何变型、用途或者适应性变化,这些变型、用途或者适应性变化遵循本申请的一般性原理并包括本公开未公开的本技术领域中的公知常识或惯用技术手段。说明书和实施例仅被视为示例性的,本申请的真正范围和精神由下面的权利要求指出。
应当理解的是,本申请并不局限于上面已经描述并在附图中示出的精确结构,并且可以在不脱离其范围进行各种修改和改变。本申请的范围仅由所附的权利要求来限制。
Claims (10)
1.一种大规模数字对象仓库集群的部署方法,其特征在于,应用于数字对象仓库集群中的客户端,所述方法包括:
获取数字对象仓库集群中各节点的节点信息,所述节点信息用于表征所述节点的属性特征;
根据节点的节点信息,按照预设规划算法,从所有所述节点中选取至少部分目标节点,并将所有所述目标节点构建为树状结构的节点拓扑集合;
根据所述节点拓扑合集,生成树状网络规划文件,所述树状网络规划文件包括:目标节点的标识,所述目标节点在树状结构中的节点类型;
创建任务文件,所述任务文件包括:运行脚本,以及所述目标节点通过所述运行脚本所需要执行的任务;
向所述目标节点发送启动任务执行指令,并将所述树状网路规划文件与所述任务文件发送至所述目标节点,以供所述目标节点根据所述树状网络规划文件和所述任务文件,确定自己在树状结构中的节点类型,以及将所述运行脚本和目标任务部署在所述目标节点中。
2.根据权利要求1所述方法,其特征在于,所述将所述树状网络规划文件和所述任务文件发送至所述目标节点,包括:
根据所述树状结构中根节点的标识,将所述树状网络规划文件和所述任务发送至所述根节点,以供所述根节点通过所述树状网络规划文件,将所述数字对象仓库集群中的目标节点构建为树状结构,以及将所述运行脚本和目标任务部署在所述目标节点中。
3.根据权利要求1所述方法,其特征在于,在所述根据节点的节点信息,按照预设规划算法,从所有所述节点中选取至少部分目标节点,并将所有所述目标节点构建为树状结构的节点拓扑集合之前,所述方法还包括:
根据获取的所述节点信息,调用解析函数对所述节点信息进行解析处理操作,将所述节点信息转化为标准数据结构格式。
4.根据权利要求3所述方法,其特征在于,所述节点信息包括:连接所述数字对象仓库集群节点的每台主机的主机名、登录密码、所在城市的地理位置、所在云提供商;所述解析处理操作包括:对用户输入内容的格式检查、关键信息的数据结构存储;所述标准数据结构格式的组成包括:所述节点的互联网协议地址、安全外壳协议用户名、登录密码、节点描述。
5.根据权利要求4所述方法,其特征在于,所述根据节点的节点信息,按照预设规划算法,从所有所述节点中选取至少部分目标节点,并将所有所述目标节点构建为树状结构的节点拓扑集合,包括:
根据所述节点信息解析得到的所述标准数据结构,由所述节点的地理位置计算得到各节点之间的地理距离;
通过聚类算法,选取所述数字对象仓库集群中的一个目标节点作为根节点;所述目标节点为到所述数字对象仓库集群中其他节点平均距离最短的节点;
同样根据所述节点信息解析得到的所述标准数据结构,选取当前时刻所述数字对象仓库集群中到其他所述节点传输时间最短的目标节点作为所述根节点的子孙节点,加入至所述树状结构的节点拓扑集合中;
重复上述步骤,直至加入至所述树状结构的节点拓扑集合的目标节点个数达到目标阈值时停止。
6.一种大规模数字对象仓库集群的部署方法,其特征在于,应用于数字对象仓库集群中的目标节点,所述方法包括:
获取任务文件和树状网络规划文件,所述树状网络规划文件包括:构成树状结构的目标节点的标识,所述目标节点在树状结构中的节点类型;所述任务文件包括:运行脚本,以及所述目标节点通过所述运行脚本所需执行的目标任务;
响应于客户端的启动任务执行指令,根据所述目标节点的标识和所述树状网络规划文件,确定所述目标节点在树状结构中的节点类型;并根据所述节点类型和所述树状结构,将所述任务文件和树状网络规划文件下发或不下发至所述目标节点的子节点;
安装所述任务文件中的运行脚本,并获取所述目标节点通过所述运行脚本所需执行的目标任务。
7.根据权利要求6所述方法,其特征在于,所述根据所述目标节点的标识和所述树状网络规划文件,确定所述目标节点在树状结构中的节点类型;并根据所述节点类型和所述树状结构,将所述任务文件和树状网络规划文件下发或不下发至所述目标节点的子节点,包括:
解析所述树状网络规划文件,根据当前目标节点的标识,确定当前所述目标节点的节点类型;
根据当前所述目标节点的节点类型,以及当前所述目标节点的父节点标识,确定当前所述目标节点在树状结构中的位置,以及确定当前所述目标节点的子节点的标识和文件传输顺序;
在所述子节点的标识不为空的情况下,根据所述子节点的标识,按照所述文件传输顺序,将所述任务文件和树状网络规划文件下发至所述子节点。
8.一种大规模数字对象仓库集群的部署装置,其特征在于,应用于数字对象仓库集群中的客户端,所述装置包括:
信息获取模块,用于获取数字对象仓库集群中各节点的节点信息,所述节点信息用于表征所述节点的属性特征;
拓扑结构构建模块,用于根据节点的节点信息,按照预设规划算法,从所有所述节点中选取至少部分目标节点,并将所有所述目标节点构建为树状结构的节点拓扑集合;
规划文件生成模块,用于根据所述节点拓扑合集,生成树状网络规划文件,所述树状网络规划文件包括:目标节点的标识,所述目标节点在树状结构中的节点类型;
任务文件创建模块,用于创建任务文件,所述任务文件包括:运行脚本,以及所述目标节点通过所述运行脚本所需要执行的任务;
执行指令发送模块,用于向所述目标节点发送启动任务执行指令,并将所述树状网路规划文件与所述任务文件发送至所述目标节点,以供所述目标节点根据所述树状网络规划文件和所述任务文件,确定自己在树状结构中的节点类型,以及将所述运行脚本和目标任务部署在所述目标节点中。
9.一种电子设备,其特征在于,包括:处理器;
用于存储所述处理器可执行指令的存储器;
其中,所述处理器被配置为执行所述指令,以实现如权利要求1至7中任一项所述的方法。
10.一种计算机可读存储介质,其特征在于,当所述计算机可读存储介质中的指令由电子设备的处理器执行时,使得所述电子设备能够执行如权利要求1至7中任一项所述的方法。
Priority Applications (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
CN202211162597.0A CN115525302B (zh) | 2022-09-23 | 2022-09-23 | 一种大规模数字对象仓库集群的部署方法及装置 |
Applications Claiming Priority (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
CN202211162597.0A CN115525302B (zh) | 2022-09-23 | 2022-09-23 | 一种大规模数字对象仓库集群的部署方法及装置 |
Publications (2)
Publication Number | Publication Date |
---|---|
CN115525302A true CN115525302A (zh) | 2022-12-27 |
CN115525302B CN115525302B (zh) | 2023-06-09 |
Family
ID=84699516
Family Applications (1)
Application Number | Title | Priority Date | Filing Date |
---|---|---|---|
CN202211162597.0A Active CN115525302B (zh) | 2022-09-23 | 2022-09-23 | 一种大规模数字对象仓库集群的部署方法及装置 |
Country Status (1)
Country | Link |
---|---|
CN (1) | CN115525302B (zh) |
Cited By (3)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN116701410A (zh) * | 2023-08-07 | 2023-09-05 | 北京大学 | 数据语用内存状态数据的存储方法、系统及数联网系统 |
CN117155791A (zh) * | 2023-10-31 | 2023-12-01 | 浪潮电子信息产业股份有限公司 | 基于集群拓扑结构的模型部署方法、系统、设备及介质 |
CN118092942A (zh) * | 2024-04-17 | 2024-05-28 | 北京亚信数据有限公司 | 大数据分析平台的离线部署方法及装置 |
Citations (13)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
US20080123643A1 (en) * | 2006-08-04 | 2008-05-29 | Branda Steven J | Synchronous peer to peer deployed application propagation for large clusters |
CN101330514A (zh) * | 2008-07-15 | 2008-12-24 | 西安交通大学 | 一种具有自适应传输模型的微操作系统部署方法 |
US7770168B1 (en) * | 2005-05-25 | 2010-08-03 | Landesk Software Limited | Systems and methods for distributing software using nodes within a network group |
CN101883039A (zh) * | 2010-05-13 | 2010-11-10 | 北京航空航天大学 | 大规模集群系统的数据传输网络及其构建方法 |
CN105045619A (zh) * | 2015-07-06 | 2015-11-11 | 普元信息技术股份有限公司 | 云计算环境中基于固定带宽的多层次多节点版本分发方法 |
CN105897922A (zh) * | 2016-05-30 | 2016-08-24 | 乐视控股(北京)有限公司 | 一种数据发送方法和装置 |
CN105933226A (zh) * | 2016-04-20 | 2016-09-07 | 乐视控股(北京)有限公司 | 内容分发方法及系统 |
CN109842642A (zh) * | 2017-11-24 | 2019-06-04 | 中兴通讯股份有限公司 | 一种容器化集群系统的部署方法及装置、容器化集群系统 |
CN110597598A (zh) * | 2019-09-16 | 2019-12-20 | 电子科技大学广东电子信息工程研究院 | 一种云环境中的虚拟机迁移的控制方法 |
CN111541565A (zh) * | 2020-04-20 | 2020-08-14 | 中国人民解放军国防大学联合作战学院 | 一种基于通信拓扑结构的应用服务可视化快速部署方法 |
CN112751885A (zh) * | 2019-10-29 | 2021-05-04 | 贵州白山云科技股份有限公司 | 数据传输系统和方法 |
CN113268254A (zh) * | 2021-05-13 | 2021-08-17 | 曙光信息产业(北京)有限公司 | 一种集群系统安装方法、装置、电子设备及存储介质 |
CN113630269A (zh) * | 2021-07-29 | 2021-11-09 | 中国人民解放军国防科技大学 | 基于拓扑感知的高性能计算系统运行环境部署加速方法及系统 |
-
2022
- 2022-09-23 CN CN202211162597.0A patent/CN115525302B/zh active Active
Patent Citations (13)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
US7770168B1 (en) * | 2005-05-25 | 2010-08-03 | Landesk Software Limited | Systems and methods for distributing software using nodes within a network group |
US20080123643A1 (en) * | 2006-08-04 | 2008-05-29 | Branda Steven J | Synchronous peer to peer deployed application propagation for large clusters |
CN101330514A (zh) * | 2008-07-15 | 2008-12-24 | 西安交通大学 | 一种具有自适应传输模型的微操作系统部署方法 |
CN101883039A (zh) * | 2010-05-13 | 2010-11-10 | 北京航空航天大学 | 大规模集群系统的数据传输网络及其构建方法 |
CN105045619A (zh) * | 2015-07-06 | 2015-11-11 | 普元信息技术股份有限公司 | 云计算环境中基于固定带宽的多层次多节点版本分发方法 |
CN105933226A (zh) * | 2016-04-20 | 2016-09-07 | 乐视控股(北京)有限公司 | 内容分发方法及系统 |
CN105897922A (zh) * | 2016-05-30 | 2016-08-24 | 乐视控股(北京)有限公司 | 一种数据发送方法和装置 |
CN109842642A (zh) * | 2017-11-24 | 2019-06-04 | 中兴通讯股份有限公司 | 一种容器化集群系统的部署方法及装置、容器化集群系统 |
CN110597598A (zh) * | 2019-09-16 | 2019-12-20 | 电子科技大学广东电子信息工程研究院 | 一种云环境中的虚拟机迁移的控制方法 |
CN112751885A (zh) * | 2019-10-29 | 2021-05-04 | 贵州白山云科技股份有限公司 | 数据传输系统和方法 |
CN111541565A (zh) * | 2020-04-20 | 2020-08-14 | 中国人民解放军国防大学联合作战学院 | 一种基于通信拓扑结构的应用服务可视化快速部署方法 |
CN113268254A (zh) * | 2021-05-13 | 2021-08-17 | 曙光信息产业(北京)有限公司 | 一种集群系统安装方法、装置、电子设备及存储介质 |
CN113630269A (zh) * | 2021-07-29 | 2021-11-09 | 中国人民解放军国防科技大学 | 基于拓扑感知的高性能计算系统运行环境部署加速方法及系统 |
Non-Patent Citations (6)
Title |
---|
MAHAMADOU TOURE等: "Large scale deployment", 2010 SIXTH INTERNATIONAL CONFERENCE ON AUTONOMIC AND AUTONOMOUS SYSTEMS, pages 78 - 83 * |
QQ_32144799: "大规模并行集群规范化部署", pages 1 - 20, Retrieved from the Internet <URL:https://blog.csdn.net/qq_32144799/article/details/123057898> * |
李林昊: "大规模Linux集群部署系统的研究及实现", 中国优秀硕士学位论文全文数据库 信息科技辑, pages 137 - 165 * |
王海斌: "动态虚拟集群部署与管理", 中国优秀硕士学位论文全文数据库 信息科技辑, pages 139 - 45 * |
肖振宇;彭宇行;刘锋;王世锋;张红雷;: "基于树结构的分布式数据流水分发方法", 计算机工程与科学, no. 10, pages 90 - 92 * |
郭刚等: "大规模集群一致性维护的网络传输控制方案", 科学技术与工程, no. 06, pages 713 - 717 * |
Cited By (6)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN116701410A (zh) * | 2023-08-07 | 2023-09-05 | 北京大学 | 数据语用内存状态数据的存储方法、系统及数联网系统 |
CN116701410B (zh) * | 2023-08-07 | 2023-11-14 | 北京大学 | 数联网数据语用内存状态数据的存储方法及系统 |
CN117155791A (zh) * | 2023-10-31 | 2023-12-01 | 浪潮电子信息产业股份有限公司 | 基于集群拓扑结构的模型部署方法、系统、设备及介质 |
CN117155791B (zh) * | 2023-10-31 | 2024-02-13 | 浪潮电子信息产业股份有限公司 | 基于集群拓扑结构的模型部署方法、系统、设备及介质 |
CN118092942A (zh) * | 2024-04-17 | 2024-05-28 | 北京亚信数据有限公司 | 大数据分析平台的离线部署方法及装置 |
CN118092942B (zh) * | 2024-04-17 | 2024-07-23 | 北京亚信数据有限公司 | 大数据分析平台的离线部署方法及装置 |
Also Published As
Publication number | Publication date |
---|---|
CN115525302B (zh) | 2023-06-09 |
Similar Documents
Publication | Publication Date | Title |
---|---|---|
JP7012836B2 (ja) | ネットワークスライス管理方法及び装置 | |
CN115525302B (zh) | 一种大规模数字对象仓库集群的部署方法及装置 | |
KR100823122B1 (ko) | 이동 단말기와 관련된 데이터 베이스, 서비스 및 장치들의원격 관리 및 액세스 | |
CN111443990B (zh) | 一种边缘计算任务迁移仿真系统 | |
KR20060136437A (ko) | 이동 단말기와 관련된 데이터 베이스, 서비스 및 장치들의원격 관리 및 액세스 | |
KR20120076471A (ko) | 콘텐츠 서비스 제공 장치 및 그 방법 | |
CN104539476A (zh) | 数据包获取方法和装置 | |
CN113168334A (zh) | 数据处理方法、装置、电子设备及可读存储介质 | |
CN114189885B (zh) | 网元信息处理方法、设备及存储介质 | |
CN112328318B (zh) | 专有云平台自动规划的方法、装置及存储介质 | |
CN111338971B (zh) | 应用测试方法、装置、电子设备及存储介质 | |
CN113572822A (zh) | 一种云终端模拟控制方法、装置、存储介质及电子设备 | |
CN113326013A (zh) | 信息交互方法、装置和电子设备 | |
CN112243016B (zh) | 一种中间件平台、终端设备、5g人工智能云处理系统及处理方法 | |
Davoli et al. | A fog computing orchestrator architecture with service model awareness | |
CN114500651A (zh) | 一种区块链数据传输方法、装置和设备及可读存储介质 | |
CN114830615B (zh) | 数据分发系统及数据分发方法 | |
CN112839065B (zh) | 信息处理方法、装置、第一设备及存储介质 | |
CN112953992A (zh) | 网络系统、通信与组网方法、设备及存储介质 | |
EP3633919A1 (en) | Control method, related device, and system | |
CN116132488A (zh) | 基于边缘技术的物理终端管控方法及系统 | |
CN107347126B (zh) | 配置网络摄像头的方法 | |
CN108683586A (zh) | 即时通讯系统中的数据处理方法、装置、介质和计算设备 | |
US11676574B2 (en) | Duration based task monitoring of artificial intelligence voice response systems | |
CN113810448B (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 |