CN116627764A - 部署方法、装置、计算机设备和存储介质 - Google Patents

部署方法、装置、计算机设备和存储介质 Download PDF

Info

Publication number
CN116627764A
CN116627764A CN202310604136.2A CN202310604136A CN116627764A CN 116627764 A CN116627764 A CN 116627764A CN 202310604136 A CN202310604136 A CN 202310604136A CN 116627764 A CN116627764 A CN 116627764A
Authority
CN
China
Prior art keywords
deployment
subtask
execution
target
executing
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.)
Pending
Application number
CN202310604136.2A
Other languages
English (en)
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.)
China Telecom Corp Ltd
Original Assignee
China Telecom Corp 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 China Telecom Corp Ltd filed Critical China Telecom Corp Ltd
Priority to CN202310604136.2A priority Critical patent/CN116627764A/zh
Publication of CN116627764A publication Critical patent/CN116627764A/zh
Pending legal-status Critical Current

Links

Classifications

    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F11/00Error detection; Error correction; Monitoring
    • G06F11/30Monitoring
    • G06F11/3003Monitoring arrangements specially adapted to the computing system or computing system component being monitored
    • G06F11/3017Monitoring arrangements specially adapted to the computing system or computing system component being monitored where the computing system is implementing multitasking
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F11/00Error detection; Error correction; Monitoring
    • G06F11/30Monitoring
    • G06F11/3051Monitoring arrangements for monitoring the configuration of the computing system or of the computing system component, e.g. monitoring the presence of processing resources, peripherals, I/O links, software programs
    • YGENERAL 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
    • Y02TECHNOLOGIES OR APPLICATIONS FOR MITIGATION OR ADAPTATION AGAINST CLIMATE CHANGE
    • Y02DCLIMATE 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/00Energy efficient computing, e.g. low power processors, power management or thermal management

Landscapes

  • Engineering & Computer Science (AREA)
  • Theoretical Computer Science (AREA)
  • Computing Systems (AREA)
  • Physics & Mathematics (AREA)
  • Quality & Reliability (AREA)
  • General Engineering & Computer Science (AREA)
  • General Physics & Mathematics (AREA)
  • Mathematical Physics (AREA)
  • Debugging And Monitoring (AREA)

Abstract

本申请涉及一种部署方法、装置、计算机设备、存储介质和计算机程序产品。方法包括:响应于部署请求,按照预设执行顺序执行各部署子任务;在执行目标部署子任务的过程中,实时监测目标部署子任务的执行状态,在监测到目标部署子任务的执行状态异常的情况下,暂停执行执行状态为空的部署子任务,其中,目标部署子任务为任一部署子任务;在监测到目标部署子任务的执行状态由异常更新为空的情况下,在各部署子任务中,确定与目标部署子任务对应的重续部署子任务,重续部署子任务在执行过程中生成的部署数据用于执行目标部署子任务;按照预设执行顺序,从重续部署子任务开始恢复执行各部署子任务。采用本方法能够提高部署效率。

Description

部署方法、装置、计算机设备和存储介质
技术领域
本申请涉及云计算技术领域,特别是涉及一种部署方法、装置、计算机设备和存储介质。
背景技术
随着云计算技术的发展,出现了部署技术,这个技术可以基于云计算技术,将部署对象部署在云端。其中,部署对象可以是容器、容器集群等。
传统的部署技术,按照预设执行顺序对各部署子任务进行分步执行。若存有部署子任务在执行过程中出现异常情况,则停止部署,并人工根据异常情况进行人工修复。在人工修复后,重新执行第一个部署子任务,直到执行完所有部署子任务,完成部署。可以理解,出现异常情况的部署子任务为断点。
然而,目前的部署技术,若存在断点,在人工修复后只能从第一个部署子任务开始再次执行,也即无法断点重续。可以理解,在断点前的部署子任务(即历史部署子任务)的执行状态可能是正常的,实际上并不一定需要重新再次执行历史部署子任务。因此,重复执行所有历史部署子任务会降低部署效率。
发明内容
基于此,有必要针对上述技术问题,提供一种能够提高部署效率的部署方法、装置、计算机设备、计算机可读存储介质和计算机程序产品。
第一方面,本申请提供了一种部署方法。所述方法包括:
响应于部署请求,按照预设执行顺序执行各部署子任务;
在执行目标部署子任务的过程中,实时监测所述目标部署子任务的执行状态,在监测到所述目标部署子任务的所述执行状态异常的情况下,暂停执行所述执行状态为空的所述部署子任务,其中,所述目标部署子任务为任一所述部署子任务;
在监测到所述目标部署子任务的所述执行状态由异常更新为空的情况下,在各所述部署子任务中,确定与所述目标部署子任务对应的重续部署子任务,所述重续部署子任务在执行过程中生成的部署数据用于执行所述目标部署子任务;
按照所述预设执行顺序,从所述重续部署子任务开始恢复执行各所述部署子任务。
在其中一个实施例中,所述方法还包括:
在监测到所述目标部署子任务的所述执行状态由异常更新为正常的情况下,确定执行顺序与所述目标部署子任务相邻、且位于所述目标部署子任务后的相邻部署子任务;
按照所述预设执行顺序,从所述相邻部署子任务开始恢复执行各所述部署子任务。
在其中一个实施例中,所述按照所述预设执行顺序,从所述重续部署子任务开始恢复执行各所述部署子任务之前,所述方法还包括:
将执行顺序位于所述重续部署子任务和所述目标部署子任务之间的所述部署子任务,作为关联部署子任务;
将所述重续部署子任务、所述关联部署子任务及所述目标部署子任务在执行过程中生成的所述部署数据清除;
将所述重续部署子任务、所述关联部署子任务及所述目标部署子任务的所述执行状态设置为空。
在其中一个实施例中,部署任务包括基础设施构建任务、部署节点校验任务、配置文件构建任务以及运行环境初始化任务,各所述部署任务包括至少一个所述部署子任务;所述按照预设执行顺序执行各部署子任务,包括:
在所述基础设施构建任务包括的各所述部署子任务的所述执行状态均正常的情况下,执行所述部署节点校验任务;
在所述部署节点校验任务包括的各所述部署子任务的所述执行状态均正常的情况下,获取针对各部署节点的校验结果;
在所述校验结果表示各所述部署节点均满足校验条件的情况下,执行所述配置文件构建任务;
在所述配置文件构建任务包括的各所述部署子任务的所述执行状态均正常的情况下,执行所述运行环境初始化任务。
在其中一个实施例中,所述配置文件构建任务的所述部署子任务包括镜像仓库配置子任务以及部署节点安全加固子任务;所述执行所述配置文件构建任务,包括:
执行所述镜像仓库配置子任务,以使各所述部署节点均配置有所述镜像仓库;
在所述镜像仓库配置子任务的所述执行状态正常的情况下,执行所述部署节点安全加固子任务,以对包含所述镜像仓库的各所述部署节点进行安全加固处理。
在其中一个实施例中,所述方法还包括:
在监测到所述目标部署子任务的所述执行状态异常的情况下,重复执行所述目标部署子任务。
第二方面,本申请还提供了一种部署装置。所述装置包括:
响应模块,用于响应于部署请求,按照预设执行顺序执行各部署子任务;
监测模块,用于在执行目标部署子任务的过程中,实时监测所述目标部署子任务的执行状态,在监测到所述目标部署子任务的所述执行状态异常的情况下,暂停执行所述执行状态为空的所述部署子任务,其中,所述目标部署子任务为任一所述部署子任务;
第一确定模块,用于在监测到所述目标部署子任务的所述执行状态由异常更新为空的情况下,在各所述部署子任务中,确定与所述目标部署子任务对应的重续部署子任务,所述重续部署子任务在执行过程中生成的部署数据用于执行所述目标部署子任务;
第一恢复执行模块,用于按照所述预设执行顺序,从所述重续部署子任务开始恢复执行各所述部署子任务。
在其中一个实施例中,所述部署装置还包括:
第二确定模块,用于在监测到所述目标部署子任务的所述执行状态由异常更新为正常的情况下,确定执行顺序与所述目标部署子任务相邻、且位于所述目标部署子任务后的相邻部署子任务;
第二恢复执行模块,用于按照所述预设执行顺序,从所述相邻部署子任务开始恢复执行各所述部署子任务。
在其中一个实施例中,所述部署装置还包括:
第三确定模块,用于将执行顺序位于所述重续部署子任务和所述目标部署子任务之间的所述部署子任务,作为关联部署子任务;
清除模块,用于将所述重续部署子任务、所述关联部署子任务及所述目标部署子任务在执行过程中生成的所述部署数据清除;
设置模块,用于将所述重续部署子任务、所述关联部署子任务及所述目标部署子任务的所述执行状态设置为空。
在其中一个实施例中,部署任务包括基础设施构建任务、部署节点校验任务、配置文件构建任务以及运行环境初始化任务,各所述部署任务包括至少一个所述部署子任务;所述响应模块具体用于:
在所述基础设施构建任务包括的各所述部署子任务的所述执行状态均正常的情况下,执行所述部署节点校验任务;
在所述部署节点校验任务包括的各所述部署子任务的所述执行状态均正常的情况下,获取针对各部署节点的校验结果;
在所述校验结果表示各所述部署节点均满足校验条件的情况下,执行所述配置文件构建任务;
在所述配置文件构建任务包括的各所述部署子任务的所述执行状态均正常的情况下,执行所述运行环境初始化任务。
在其中一个实施例中,所述配置文件构建任务的所述部署子任务包括镜像仓库配置子任务以及部署节点安全加固子任务;所述响应模块具体用于:
执行所述镜像仓库配置子任务,以使各所述部署节点均配置有所述镜像仓库;
在所述镜像仓库配置子任务的所述执行状态正常的情况下,执行所述部署节点安全加固子任务,以对包含所述镜像仓库的各所述部署节点进行安全加固处理。
在其中一个实施例中,所述部署装置还包括:
重复执行模块,用于在监测到所述目标部署子任务的所述执行状态异常的情况下,重复执行所述目标部署子任务。
第三方面,本申请还提供了一种计算机设备。所述计算机设备包括存储器和处理器,所述存储器存储有计算机程序,所述处理器执行所述计算机程序时实现以第一方面所述的步骤。
第四方面,本申请还提供了一种计算机可读存储介质。所述计算机可读存储介质,其上存储有计算机程序,所述计算机程序被处理器执行时实现以第一方面所述的步骤。
第五方面,本申请还提供了一种计算机程序产品。所述计算机程序产品,包括计算机程序,该计算机程序被处理器执行时以第一方面所述的步骤。
上述部署方法、装置、计算机设备、存储介质和计算机程序产品,通过响应于部署请求,按照预设执行顺序执行各部署子任务;在执行目标部署子任务的过程中,实时监测目标部署子任务的执行状态,在监测到目标部署子任务的执行状态异常的情况下,暂停执行执行状态为空的部署子任务,其中,目标部署子任务为任一部署子任务;在监测到目标部署子任务的执行状态由异常更新为空的情况下,在各部署子任务中,确定与目标部署子任务对应的重续部署子任务,重续部署子任务在执行过程中生成的部署数据用于执行目标部署子任务;按照预设执行顺序,从重续部署子任务开始恢复执行各部署子任务。上述方法中,在监测到目标部署子任务的执行状态由异常更新为空的情况下,按照预设执行顺序,从该目标部署子任务对应的重续部署子任务开始恢复执行各部署子任务。因此,本方法可以确定重续部署子任务,进而无需再次执行执行顺序位于重续部署子任务前的各部署子任务,从而提高了部署效率。另外,本方法在监测到目标部署子任务的执行状态异常的情况下,暂停执行执行状态为空的部署子任务。也就是说,执行顺序位于目标部署子任务前的部署子任务的执行状态正常。而重续部署子任务在执行过程中生成的部署数据用于执行目标部署子任务,也即重续部署子任务的执行顺序位于目标部署子任务前,也即重续部署子的执行状态正常,进而可知位于重续部署子任务前的各部署子任务的执行状态也正常。因此,本方案在提高部署效率的同时也保证了部署的成功率。
附图说明
图1为一个实施例中部署方法的流程示意图;
图2为一个实施例中实时监测方法的流程示意图;
图3为一个实施例中各部署子任务的恢复执行方法的流程示意图;
图4为一个实施例中各部署子任务的执行方法的流程示意图;
图5为另一个实施例中各部署子任务的执行方法的流程示意图;
图6为一个实施例中部署装置的结构框图;
图7为一个实施例中计算机设备的内部结构图。
具体实施方式
为了使本申请的目的、技术方案及优点更加清楚明白,以下结合附图及实施例,对本申请进行进一步详细说明。应当理解,此处描述的具体实施例仅仅用以解释本申请,并不用于限定本申请。
在一个实施例中,如图1所示,提供了一种部署方法,本实施例以该方法应用于服务器进行举例说明,可以理解的是,该方法也可以应用于终端,还可以应用于包括终端和服务器的系统,并通过终端和服务器的交互实现。本实施例中,该方法包括以下步骤:
步骤102,响应于部署请求,按照预设执行顺序执行各部署子任务。
在本申请实施例中,服务器响应于部署请求,按照预设执行顺序执行各部署子任务。其中,部署请求用于触发终端开始在至少一个部署节点上部署部署对象。可选的,部署节点可以是虚拟机,也可以是物理机。可选的,部署对象可以是容器集群,也可以是容器。具体的,服务器响应于部署请求,按照预设执行顺序,执行在各部署子任务中执行顺序最前的部署子任务(即第一个部署子任务)。在第一个部署子任务的执行状态正常的情况下,执行执行顺序与第一个部署子任务相邻、且位于第一个部署子任务后的部署子任务(即第二部署子任务)。以此类推,其它各部署子任务的执行方法与上述方法类似,不再赘述。可以理解,在服务器中预先设置有部署参数。其中,部署参数包括但不限于部署节点规格、部署节点数量、部署节点角色、部署对象的版本和镜像仓库地址等。若服务器在执行目标部署子任务的过程中需要用到部署参数,则服务器通过应用程序接口(Application ProgrammingInterface,API)获取部署参数。其中,目标部署子任务是服务器当前正在执行的部署子任务。
步骤104,在执行目标部署子任务的过程中,实时监测目标部署子任务的执行状态,在监测到目标部署子任务的执行状态异常的情况下,暂停执行执行状态为空的部署子任务。
其中,目标部署子任务为任一部署子任务。
在本申请实施例中,服务器在执行目标部署子任务的过程中,实时监测目标部署子任务的执行状态。其中,执行状态包括正常、或者异常、或者空,空是各部署子任务的执行状态的初始化值。服务器在监测到目标部署子任务的执行状态异常的情况下,暂停执行执行状态为空的部署子任务,同时,服务器输出包括执行异常原因的报错消息,以使部署用户能及时发现部署异常,并使部署用户可以根据执行异常原因来进行人工修复。其中,在人工修复完成后,目标部署子任务的执行状态会由异常更新为空。
示例性的,服务器与各部署节点通过流文本定向消息协议(Streaming TextOrientated Message Protocol,STOMP)建立消息通道,实现服务器与部署节点的双向数据传输,并通过链路追踪(Tracing)实现实时监测在各部署节点上执行的目标部署子任务的执行状态。
具体的,如图2所示,其中,服务器中包括动态控制单元、数据库、缓存系统、消息队列以及消息系统。动态控制单元用于实时监测目标部署子任务的执行状态,数据库用于存储各部署子任务的执行状态,缓存系统用于存储目标部署子任务的执行状态,消息队列用于缓存各部署子任务在执行过程中生成的部署数据,消息系统用于在监测到目标部署子任务的执行状态异常的情况下输出包括执行异常原因的报错消息。在一个实施例中,在人工修复完成后,在数据库中,目标部署子任务的执行状态会由异常更新为空。动态控制单元在监测到数据库中目标部署子任务的执行状态会由异常更新为空的情况下,将缓存系统中目标部署子任务的执行状态由异常更新为空,也即同步数据库与缓存系统中目标部署子任务的执行状态。
步骤106,在监测到目标部署子任务的执行状态由异常更新为空的情况下,在各部署子任务中,确定与目标部署子任务对应的重续部署子任务。
其中,重续部署子任务在执行过程中生成的部署数据用于执行目标部署子任务。可选的,重续部署子任务可以是目标部署子任务,也可以是执行顺序位于目标部署子任务前的部署子任务。
在本申请实施例中,服务器在监测到目标部署子任务的执行状态由异常更新为空的情况下,在各部署子任务中,确定与目标部署子任务对应的重续部署子任务。在一个实施例中,在服务器中预先存储各部署子任务与重续部署子任务的对应关系,则服务器在监测到目标部署子任务的执行状态由异常更新为空的情况下,根据目标部署子任务、以及各部署子任务与重续部署子任务的对应关系,确定目标部署子任务对应的重续部署子任务。
为了方便区分,将在执行过程中生成的部署数据用于执行目标部署子任务的部署子任务称为备选部署子任务,其中,重续部署子任务的执行顺序位于各备选部署子任务前。可以理解,在目标部署子任务没有对应的备选部署子任务的情况下,目标部署子任务对应的重续部署子任务是目标部署子任务本身。在目标部署子任务存有对应的备选部署子任务的情况下,目标部署子任务对应的重续部署子任务是执行顺序位于各备选部署子任务前的备选部署子任务。
示例性的,假设各部署子任务包括部署子任务1、部署子任务2、部署子任务3和部署子任务4,部署子任务n的执行顺序位于部署子任务(n+1)前,部署子任务n在执行过程中生成的部署数据为部署数据n,n=1,2,3,4。如果在执行部署子任务4时未用到部署数据1、部署数据2和部署数据3,那么部署子任务4没有对应的备选部署子任务,则部署子任务4对应的重续部署子任务是部署子任务4。如果在执行部署子任务4时用到部署数据1和部署数据3(即部署数据1和部署数据3用于执行部署子任务4),那么部署子任务4对应的备选部署子任务包括部署子任务1和部署子任务3,则部署子任务4对应的重续部署子任务是部署子任务1。
步骤108,按照预设执行顺序,从重续部署子任务开始恢复执行各部署子任务。
在本申请实施例中,服务器按照预设执行顺序,从重续部署子任务开始恢复执行各部署子任务。服务器按照预设执行顺序执行各部署子任务的具体方法参照步骤102。可以理解,在步骤108中恢复执行各部署子任务的条件是监测到目标部署子任务的执行状态由异常更新为空,而在步骤102中开始执行各部署子任务的条件是响应于部署请求。另外,在步骤108中第一个执行的部署子任务是重续部署子任务,而在步骤102中第一执行的部署子任务是第一个部署子任务。可以理解,若服务器在执行步骤108的过程中,实时监测目标部署子任务的执行状态。在监测到目标部署子任务的执行状态异常的情况下,暂停执行执行状态为空的部署子任务。或者,在监测到目标部署子任务的执行状态由异常更新为空的情况下,执行步骤106。
上述部署方法中,在监测到目标部署子任务的执行状态由异常更新为空的情况下,按照预设执行顺序,从该目标部署子任务对应的重续部署子任务开始恢复执行各部署子任务。因此,本方法可以确定重续部署子任务,进而无需再次执行执行顺序位于重续部署子任务前的各部署子任务,从而提高了部署效率。另外,本方法在监测到目标部署子任务的执行状态异常的情况下,暂停执行执行状态为空的部署子任务。也就是说,执行顺序位于目标部署子任务前的部署子任务的执行状态正常。而重续部署子任务在执行过程中生成的部署数据用于执行目标部署子任务,也即重续部署子任务的执行顺序位于目标部署子任务前,也即重续部署子的执行状态正常,进而可知位于重续部署子任务前的各部署子任务的执行状态也正常。因此,本方案在提高部署效率的同时也保证了部署的成功率。
在一个实施例中,如图3所示,方法还包括:
步骤302,在监测到目标部署子任务的执行状态由异常更新为正常的情况下,确定执行顺序与目标部署子任务相邻、且位于目标部署子任务后的相邻部署子任务。
在本申请实施例中,服务器在监测到目标部署子任务的执行状态由异常更新为正常的情况下,根据预设执行顺序,确定执行顺序与目标部署子任务相邻、且位于目标部署子任务后的相邻部署子任务。可以理解,第k个部署子任务的相邻部署子任务是第(k+1)个部署子任务,其中,k正整数、且k为部署子任务的执行顺序对应的顺序号。
步骤304,按照预设执行顺序,从相邻部署子任务开始恢复执行各部署子任务。
在本申请实施例中,服务器按照预设执行顺序,从相邻部署子任务开始恢复执行各部署子任务。步骤304的具体执行过程可以参照步骤102,区别在于在步骤304中第一个执行的部署子任务是相邻部署子任务。
本实施例中,在监测到目标部署子任务的执行状态由异常更新为正常的情况下,确定相邻部署子任务,并从相邻部署子任务开始恢复执行各部署子任务。因此,本方法可以确定相邻部署子任务,进而无需再次执行执行顺序位于相邻部署子任务前的各部署子任务,从而提高了部署效率。
在一个实施例中,按照预设执行顺序,从重续部署子任务开始恢复执行各部署子任务之前,方法还包括:
将执行顺序位于重续部署子任务和目标部署子任务之间的部署子任务,作为关联部署子任务;将重续部署子任务、关联部署子任务及目标部署子任务在执行过程中生成的部署数据清除;将重续部署子任务、关联部署子任务及目标部署子任务的执行状态设置为空。
在本申请实施例中,服务器根据预设执行顺序,确定执行顺序位于重续部署子任务和目标部署子任务之间的部署子任务,并将执行顺序位于重续部署子任务和目标部署子任务之间的部署子任务,作为关联部署子任务。服务器将重续部署子任务、关联部署子任务及目标部署子任务在执行过程中生成的部署数据清除。在一个实施例中,各部署子任务在执行过程中生成的部署数据存储在数据库和部署日志中,其中,只有数据库中的部署数据可能被清除。也就是说,数据库中只记载各部署子任务在执行状态正常下的部署数据,而部署日志记载各部署子任务在各执行状态下的部署数据。因此,可以提高在数据库中获取执行状态正常下的部署数据的获取效率,同时,部署日志保证了部署数据的完整性。
服务器将重续部署子任务、关联部署子任务及目标部署子任务的执行状态设置为空。在一个实施例中,各部署子任务的执行状态存储在数据库和缓存系统中,其中,数据库和缓存系统中的执行状态均可被设置,但是数据库中存有各部署子任务的执行状态,而缓存系统中只存有目标部署子任务的执行状态。因此,可以提高在缓存系统中获取目标部署子任务的执行状态的获取效率。
本实施例中,将重续部署子任务、关联部署子任务及目标部署子任务的部署数据均进行清除、并将重续部署子任务、关联部署子任务及目标部署子任务的执行状态均设置为空。可以理解,重续部署子任务、关联部署子任务及目标部署子任务都是已执行的部署子任务,已执行的部署子任务的部署数据以及执行状态,可能会对步骤108的执行产生干扰,因此,本方法可以避免在历史时刻时重续部署子任务、关联部署子任务及目标部署子任务的部署数据以及执行状态对步骤108的执行产生干扰,进而提高部署的成功率。
在一个实施例中,如图4所示和图5所示,部署任务包括基础设施构建任务、部署节点校验任务、配置文件构建任务以及运行环境初始化任务,各部署任务包括至少一个部署子任务;按照预设执行顺序执行各部署子任务,包括:
步骤402,在基础设施构建任务包括的各部署子任务的执行状态均正常的情况下,执行部署节点校验任务。
在本申请实施例中,服务器在至少一个部署节点上执行基础设施构建任务,以使在各部署节点上部署对象的构建基础设施。具体的,在基础设施构建任务包括的各部署子任务的执行状态均正常的情况下,在各部署节点上部署对象的构建得到基础设施,并执行部署节点校验任务。
示例性的,以基础设施包括虚拟机为示例,基础设施构建任务包括的部署子任务有虚拟机参数设置子任务、虚拟机规格定义子任务、虚拟机网络配置子任务、以及虚拟机创建子任务。在虚拟机参数设置子任务的执行状态均正常的情况下,获得预先设置的虚拟机参数,并执行虚拟机规格定义子任务。在虚拟机规格定义子任务的执行状态均正常的情况下,获得虚拟机规格,并执行虚拟机网络配置子任务。在虚拟机网络配置子任务的执行状态均正常的情况下,获得虚拟机网络配置数据,并执行虚拟机创建子任务。在虚拟机创建子任务的执行状态均正常的情况下,在至少一个部署节点上分别创建得到至少一个虚拟机,并执行部署节点校验任务。
步骤404,在部署节点校验任务包括的各部署子任务的执行状态均正常的情况下,获取针对各部署节点的校验结果。
在本申请实施例中,服务器在部署节点校验任务包括的各部署子任务的执行状态均正常的情况下,获取针对各部署节点的校验结果。其中,部署节点校验任务用于校验部署节点的可用性,部署节点校验任务包括的校验类型有部署节点间的通讯检测、部署节点中的镜像仓库的连通性检测、端口暴露检测以及进程检测。
步骤406,在校验结果表示各部署节点均满足校验条件的情况下,执行配置文件构建任务。
在本申请实施例中,服务器在校验结果表示各部署节点均满足校验条件的情况下,执行配置文件构建任务。以部署对象包括容器集群为示例,配置文件构建任务包括容器集群身份标识号(Identity document,id)获取子任务、容器集群版本获取子任务、镜像仓库路径参数获取子任务、部署节点的镜像仓库配置子任务、镜像仓库配置子任务、部署节点安全加固子任务和部署节点基础安装包安装子任务。
步骤408,在配置文件构建任务包括的各部署子任务的执行状态均正常的情况下,执行运行环境初始化任务。
在本申请实施例中,服务器在配置文件构建任务包括的各部署子任务的执行状态均正常的情况下,执行运行环境初始化任务。以部署对象包括容器集群为示例,运行环境初始化任务包括操作系统参数优化子任务、操作系统内核调优子任务、应用容器引擎(Docker)安装及服务设置子任务、应用容器引擎的镜像仓库配置子任务以及依赖镜像下载子任务。
本实施例中,在基础设施构建任务与运行环境初始化任务之间,加入了部署节点校验任务以及配置文件构建任务。因此,本方法可以对部署节点上的基础设施进行校验,从而保证各部署节点的可用性,进而提高部署的成功率。而在运行环境初始化任务之前,先执行配置文件构建任务,可以预先备好各种配置文件,从而在执行运行环境初始化任务的过程中,可以直接采用配置文件,进而提高部署的效率。
在一个实施例中,配置文件构建任务的部署子任务包括镜像仓库配置子任务以及部署节点安全加固子任务;执行配置文件构建任务,包括:
执行镜像仓库配置子任务,以使各部署节点均配置有镜像仓库;在镜像仓库配置子任务的执行状态正常的情况下,执行部署节点安全加固子任务,以对包含镜像仓库的各部署节点进行安全加固处理。
在本申请实施例中,服务器执行镜像仓库配置子任务,以使各部署节点均配置有镜像仓库。服务器在镜像仓库配置子任务的执行状态正常的情况下,执行部署节点安全加固子任务,以对包含镜像仓库的各部署节点进行安全加固处理。
本实施例中,对包含镜像仓库的各部署节点进行安全加固处理,从而提高各部署节点的安全性,进而提高部署的成功率。
在一个实施例中,方法还包括:
在监测到目标部署子任务的执行状态异常的情况下,重复执行目标部署子任务。
在本申请实施例中,服务器在监测到目标部署子任务的执行状态异常的情况下,重复执行目标部署子任务,直到服务器监测到目标部署子任务的执行状态由异常更新为正常,或者,监测到目标部署子任务的执行状态由异常更新为空为止。服务器在监测到目标部署子任务的执行状态由异常更新为正常的情况下,跳转至步骤302。服务器在监测到目标部署子任务的执行状态由异常更新为空的情况下,跳转至步骤106。
本实施例中,服务器在监测到目标部署子任务的执行状态异常的情况下,重复执行目标部署子任务,直到服务器监测到目标部署子任务的执行状态由异常更新为正常,或者,监测到目标部署子任务的执行状态由异常更新为空为止。因此,在因外部环境原因(如断网)导致部署无法往下进行时,本方法可以自动重复执行目标部署子任务,进而在无外部环境影响时能恢复执行各部署子任务,实现自动化部署。
应该理解的是,虽然如上的各实施例所涉及的流程图中的各个步骤按照箭头的指示依次显示,但是这些步骤并不是必然按照箭头指示的顺序依次执行。除非本文中有明确的说明,这些步骤的执行并没有严格的顺序限制,这些步骤可以以其它的顺序执行。而且,如上的各实施例所涉及的流程图中的至少一部分步骤可以包括多个步骤或者多个阶段,这些步骤或者阶段并不必然是在同一时刻执行完成,而是可以在不同的时刻执行,这些步骤或者阶段的执行顺序也不必然是依次进行,而是可以与其它步骤或者其它步骤中的步骤或者阶段的至少一部分轮流或者交替地执行。
基于同样的发明构思,本申请实施例还提供了一种用于实现上述所涉及的部署方法的部署装置。该装置所提供的解决问题的实现方案与上述方法中所记载的实现方案相似,故下面所提供的一个或多个部署装置实施例中的具体限定可以参见上文中对于部署方法的限定,在此不再赘述。
在一个实施例中,如图6所示,提供了一种部署装置,包括:
响应模块602,用于响应于部署请求,按照预设执行顺序执行各部署子任务;
监测模块604,用于在执行目标部署子任务的过程中,实时监测目标部署子任务的执行状态,在监测到目标部署子任务的执行状态异常的情况下,暂停执行执行状态为空的部署子任务,其中,目标部署子任务为任一部署子任务;
第一确定模块606,用于在监测到目标部署子任务的执行状态由异常更新为空的情况下,在各部署子任务中,确定与目标部署子任务对应的重续部署子任务,重续部署子任务在执行过程中生成的部署数据用于执行目标部署子任务;
第一恢复执行模块608,用于按照预设执行顺序,从重续部署子任务开始恢复执行各部署子任务。
上述部署装置中,在监测到目标部署子任务的执行状态由异常更新为空的情况下,按照预设执行顺序,从该目标部署子任务对应的重续部署子任务开始恢复执行各部署子任务。因此,本装置可以确定重续部署子任务,进而无需再次执行执行顺序位于重续部署子任务前的各部署子任务,从而提高了部署效率。另外,本装置在监测到目标部署子任务的执行状态异常的情况下,暂停执行执行状态为空的部署子任务。也就是说,执行顺序位于目标部署子任务前的部署子任务的执行状态正常。而重续部署子任务在执行过程中生成的部署数据用于执行目标部署子任务,也即重续部署子任务的执行顺序位于目标部署子任务前,也即重续部署子的执行状态正常,进而可知位于重续部署子任务前的各部署子任务的执行状态也正常。因此,本装置在提高部署效率的同时也保证了部署的成功率。
在一个实施例中,部署装置还包括:
第二确定模块,用于在监测到目标部署子任务的执行状态由异常更新为正常的情况下,确定执行顺序与目标部署子任务相邻、且位于目标部署子任务后的相邻部署子任务;
第二恢复执行模块,用于按照预设执行顺序,从相邻部署子任务开始恢复执行各部署子任务。
在一个实施例中,部署装置还包括:
第三确定模块,用于将执行顺序位于重续部署子任务和目标部署子任务之间的部署子任务,作为关联部署子任务;
清除模块,用于将重续部署子任务、关联部署子任务及目标部署子任务在执行过程中生成的部署数据清除;
设置模块,用于将重续部署子任务、关联部署子任务及目标部署子任务的执行状态设置为空。
在一个实施例中,部署任务包括基础设施构建任务、部署节点校验任务、配置文件构建任务以及运行环境初始化任务,各部署任务包括至少一个部署子任务;响应模块602具体用于:
在基础设施构建任务包括的各部署子任务的执行状态均正常的情况下,执行部署节点校验任务;
在部署节点校验任务包括的各部署子任务的执行状态均正常的情况下,获取针对各部署节点的校验结果;
在校验结果表示各部署节点均满足校验条件的情况下,执行配置文件构建任务;
在配置文件构建任务包括的各部署子任务的执行状态均正常的情况下,执行运行环境初始化任务。
在一个实施例中,配置文件构建任务的部署子任务包括镜像仓库配置子任务以及部署节点安全加固子任务;响应模块602具体用于:
执行镜像仓库配置子任务,以使各部署节点均配置有镜像仓库;
在镜像仓库配置子任务的执行状态正常的情况下,执行部署节点安全加固子任务,以对包含镜像仓库的各部署节点进行安全加固处理。
在一个实施例中,部署装置还包括:
重复执行模块,用于在监测到目标部署子任务的执行状态异常的情况下,重复执行目标部署子任务。
上述部署装置中的各个模块可全部或部分通过软件、硬件及其组合来实现。上述各模块可以硬件形式内嵌于或独立于计算机设备中的处理器中,也可以以软件形式存储于计算机设备中的存储器中,以便于处理器调用执行以上各个模块对应的操作。
在一个实施例中,提供了一种计算机设备,该计算机设备可以是服务器,其内部结构图可以如图7所示。该计算机设备包括处理器、存储器、输入/输出接口(Input/Output,简称I/O)和通信接口。其中,处理器、存储器和输入/输出接口通过系统总线连接,通信接口通过输入/输出接口连接到系统总线。其中,该计算机设备的处理器用于提供计算和控制能力。该计算机设备的存储器包括非易失性存储介质和内存储器。该非易失性存储介质存储有操作系统、计算机程序和数据库。该内存储器为非易失性存储介质中的操作系统和计算机程序的运行提供环境。该计算机设备的数据库用于存储部署数据。该计算机设备的输入/输出接口用于处理器与外部设备之间交换信息。该计算机设备的通信接口用于与外部的终端通过网络连接通信。该计算机程序被处理器执行时以实现一种部署方法。
本领域技术人员可以理解,图7中示出的结构,仅仅是与本申请方案相关的部分结构的框图,并不构成对本申请方案所应用于其上的计算机设备的限定,具体的计算机设备可以包括比图中所示更多或更少的部件,或者组合某些部件,或者具有不同的部件布置。
在一个实施例中,还提供了一种计算机设备,包括存储器和处理器,存储器中存储有计算机程序,该处理器执行计算机程序时实现上述各方法实施例中的步骤。
在一个实施例中,提供了一种计算机可读存储介质,其上存储有计算机程序,该计算机程序被处理器执行时实现上述各方法实施例中的步骤。
在一个实施例中,提供了一种计算机程序产品,包括计算机程序,该计算机程序被处理器执行时实现上述各方法实施例中的步骤。
需要说明的是,本申请所涉及的用户信息(包括但不限于用户设备信息、用户个人信息等)和数据(包括但不限于用于分析的数据、存储的数据、展示的数据等),均为经用户授权或者经过各方充分授权的信息和数据,且相关数据的收集、使用和处理需要遵守相关国家和地区的相关法律法规和标准。
本领域普通技术人员可以理解实现上述实施例方法中的全部或部分流程,是可以通过计算机程序来指令相关的硬件来完成,所述的计算机程序可存储于一非易失性计算机可读取存储介质中,该计算机程序在执行时,可包括如上述各方法的实施例的流程。其中,本申请所提供的各实施例中所使用的对存储器、数据库或其它介质的任何引用,均可包括非易失性和易失性存储器中的至少一种。非易失性存储器可包括只读存储器(Read-OnlyMemory,ROM)、磁带、软盘、闪存、光存储器、高密度嵌入式非易失性存储器、阻变存储器(ReRAM)、磁变存储器(Magnetoresistive Random Access Memory,MRAM)、铁电存储器(Ferroelectric Random Access Memory,FRAM)、相变存储器(Phase Change Memory,PCM)、石墨烯存储器等。易失性存储器可包括随机存取存储器(Random Access Memory,RAM)或外部高速缓冲存储器等。作为说明而非局限,RAM可以是多种形式,比如静态随机存取存储器(Static Random Access Memory,SRAM)或动态随机存取存储器(Dynamic RandomAccess Memory,DRAM)等。本申请所提供的各实施例中所涉及的数据库可包括关系型数据库和非关系型数据库中至少一种。非关系型数据库可包括基于区块链的分布式数据库等,不限于此。本申请所提供的各实施例中所涉及的处理器可为通用处理器、中央处理器、图形处理器、数字信号处理器、可编程逻辑器、基于量子计算的数据处理逻辑器等,不限于此。
以上实施例的各技术特征可以进行任意的组合,为使描述简洁,未对上述实施例中的各个技术特征所有可能的组合都进行描述,然而,只要这些技术特征的组合不存在矛盾,都应当认为是本说明书记载的范围。
以上所述实施例仅表达了本申请的几种实施方式,其描述较为具体和详细,但并不能因此而理解为对本申请专利范围的限制。应当指出的是,对于本领域的普通技术人员来说,在不脱离本申请构思的前提下,还可以做出若干变形和改进,这些都属于本申请的保护范围。因此,本申请的保护范围应以所附权利要求为准。

Claims (10)

1.一种部署方法,其特征在于,所述方法包括:
响应于部署请求,按照预设执行顺序执行各部署子任务;
在执行目标部署子任务的过程中,实时监测所述目标部署子任务的执行状态,在监测到所述目标部署子任务的所述执行状态异常的情况下,暂停执行所述执行状态为空的所述部署子任务,其中,所述目标部署子任务为任一所述部署子任务;
在监测到所述目标部署子任务的所述执行状态由异常更新为空的情况下,在各所述部署子任务中,确定与所述目标部署子任务对应的重续部署子任务,所述重续部署子任务在执行过程中生成的部署数据用于执行所述目标部署子任务;
按照所述预设执行顺序,从所述重续部署子任务开始恢复执行各所述部署子任务。
2.根据权利要求1所述的方法,其特征在于,所述方法还包括:
在监测到所述目标部署子任务的所述执行状态由异常更新为正常的情况下,确定执行顺序与所述目标部署子任务相邻、且位于所述目标部署子任务后的相邻部署子任务;
按照所述预设执行顺序,从所述相邻部署子任务开始恢复执行各所述部署子任务。
3.根据权利要求1或者2所述的方法,其特征在于,所述按照所述预设执行顺序,从所述重续部署子任务开始恢复执行各所述部署子任务之前,所述方法还包括:
将执行顺序位于所述重续部署子任务和所述目标部署子任务之间的所述部署子任务,作为关联部署子任务;
将所述重续部署子任务、所述关联部署子任务及所述目标部署子任务在执行过程中生成的所述部署数据清除;
将所述重续部署子任务、所述关联部署子任务及所述目标部署子任务的所述执行状态设置为空。
4.根据权利要求1或者2所述的方法,其特征在于,部署任务包括基础设施构建任务、部署节点校验任务、配置文件构建任务以及运行环境初始化任务,各所述部署任务包括至少一个所述部署子任务;所述按照预设执行顺序执行各部署子任务,包括:
在所述基础设施构建任务包括的各所述部署子任务的所述执行状态均正常的情况下,执行所述部署节点校验任务;
在所述部署节点校验任务包括的各所述部署子任务的所述执行状态均正常的情况下,获取针对各部署节点的校验结果;
在所述校验结果表示各所述部署节点均满足校验条件的情况下,执行所述配置文件构建任务;
在所述配置文件构建任务包括的各所述部署子任务的所述执行状态均正常的情况下,执行所述运行环境初始化任务。
5.根据权利要求4所述的方法,其特征在于,所述配置文件构建任务的所述部署子任务包括镜像仓库配置子任务以及部署节点安全加固子任务;所述执行所述配置文件构建任务,包括:
执行所述镜像仓库配置子任务,以使各所述部署节点均配置有所述镜像仓库;
在所述镜像仓库配置子任务的所述执行状态正常的情况下,执行所述部署节点安全加固子任务,以对包含所述镜像仓库的各所述部署节点进行安全加固处理。
6.根据权利要求1所述的方法,其特征在于,所述方法还包括:
在监测到所述目标部署子任务的所述执行状态异常的情况下,重复执行所述目标部署子任务。
7.一种部署装置,其特征在于,所述装置包括:
响应模块,用于响应于部署请求,按照预设执行顺序执行各部署子任务;
监测模块,用于在执行目标部署子任务的过程中,实时监测所述目标部署子任务的执行状态,在监测到所述目标部署子任务的所述执行状态异常的情况下,暂停执行所述执行状态为空的所述部署子任务,其中,所述目标部署子任务为任一所述部署子任务;
第一确定模块,用于在监测到所述目标部署子任务的所述执行状态由异常更新为空的情况下,在各所述部署子任务中,确定与所述目标部署子任务对应的重续部署子任务,所述重续部署子任务在执行过程中生成的部署数据用于执行所述目标部署子任务;
第一恢复执行模块,用于按照所述预设执行顺序,从所述重续部署子任务开始恢复执行各所述部署子任务。
8.一种计算机设备,包括存储器和处理器,所述存储器存储有计算机程序,其特征在于,所述处理器执行所述计算机程序时实现权利要求1至6中任一项所述的方法的步骤。
9.一种计算机可读存储介质,其上存储有计算机程序,其特征在于,所述计算机程序被处理器执行时实现权利要求1至6中任一项所述的方法的步骤。
10.一种计算机程序产品,包括计算机程序,其特征在于,该计算机程序被处理器执行时实现权利要求1至6中任一项所述的方法的步骤。
CN202310604136.2A 2023-05-26 2023-05-26 部署方法、装置、计算机设备和存储介质 Pending CN116627764A (zh)

Priority Applications (1)

Application Number Priority Date Filing Date Title
CN202310604136.2A CN116627764A (zh) 2023-05-26 2023-05-26 部署方法、装置、计算机设备和存储介质

Applications Claiming Priority (1)

Application Number Priority Date Filing Date Title
CN202310604136.2A CN116627764A (zh) 2023-05-26 2023-05-26 部署方法、装置、计算机设备和存储介质

Publications (1)

Publication Number Publication Date
CN116627764A true CN116627764A (zh) 2023-08-22

Family

ID=87636269

Family Applications (1)

Application Number Title Priority Date Filing Date
CN202310604136.2A Pending CN116627764A (zh) 2023-05-26 2023-05-26 部署方法、装置、计算机设备和存储介质

Country Status (1)

Country Link
CN (1) CN116627764A (zh)

Similar Documents

Publication Publication Date Title
US11467823B2 (en) Constructing software delta updates for controller software and abnormality detection based on toolchain
CN116627764A (zh) 部署方法、装置、计算机设备和存储介质
CN111953535B (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