应用部署方法、目标服务器、调度引擎及分布式系统与流程

文档序号:26139008发布日期:2021-08-03 14:22阅读:112来源:国知局
应用部署方法、目标服务器、调度引擎及分布式系统与流程

本发明涉及分布式技术领域,尤其涉及应用部署方法、目标服务器、调度引擎及分布式系统。



背景技术:

本部分旨在为权利要求书中陈述的本发明实施例提供背景或上下文。此处的描述不因为包括在本部分中就承认是现有技术。

人工部署是一种常用的应用部署方法。在应用正式版本下发后,运维人员获取应用软件包,按照安装手册的要求,根据生产环境的参数,手工客户化下发版本中需要修改的参数,之后等待投产部署时间点。开始部署应用时,运维人员手工将客户化好的应用软件包通过工具拷贝到生产环境上然后启动,对于需要部署在多台服务器上的应用软件包,其拷贝和启动操作需要在多台服务器上重复进行,无法实现并行操作,降低应用部署的效率,而且手工部署增加了人为操作失误的风险;同时,在使用虚拟化技术后手工部署无法发挥虚拟化技术带来的优势。



技术实现要素:

本发明实施例提供一种应用部署方法,应用于分布式系统的目标服务器,用以提高应用部署的效率及安全性,该应用部署方法包括:

在接收到分布式系统的调度引擎推送的应用部署工作流时初始化agent进程;

利用agent进程执行应用部署工作流以在目标服务器上部署应用,反馈应用部署进度至分布式系统的调度引擎;

在利用agent进程执行完应用部署工作流后,根据接收到的销毁指令销毁目标服务器上的agent进程。

本发明实施例还提供一种目标服务器,应用于分布式系统,用以提高应用部署的效率及安全性,该目标服务器包括:

agent初始化模块,用于在接收到分布式系统的调度引擎推送的应用部署工作流时初始化agent进程;

应用部署模块,用于利用agent进程执行应用部署工作流以在目标服务器上部署应用,反馈应用部署进度至分布式系统的调度引擎;

agent进程销毁模块,用于在利用agent进程执行完应用部署工作流后,根据接收到的销毁指令销毁目标服务器上的agent进程。

本发明实施例提供一种应用部署方法,应用于分布式系统的调度引擎,用以提高应用部署的效率及安全性,该应用部署方法包括:

推送应用部署工作流至目标服务器,以使目标服务器在接收到调度引擎推送的应用部署工作流时初始化agent进程;

接收目标服务器利用agent进程执行应用部署工作流以部署应用的同时反馈的应用部署进度;

在目标服务器利用agent进程执行完应用部署工作流后,发送销毁指令至目标服务器,以使目标服务器根据销毁指令销毁agent进程。

本发明实施例还提供一种调度引擎,应用于分布式系统,用以提高应用部署的效率及安全性,该调度引擎包括:

工作流推送模块,用于推送应用部署工作流至目标服务器,以使目标服务器在接收到调度引擎推送的应用部署工作流时初始化agent进程;

部署进度接收模块,用于接收目标服务器利用agent进程执行应用部署工作流以部署应用的同时反馈的应用部署进度;

销毁指令发送模块,用于在目标服务器利用agent进程执行完应用部署工作流后,发送销毁指令至目标服务器,以使目标服务器根据销毁指令销毁agent进程。

本发明实施例还提供一种分布式系统,用以提高应用部署的效率及安全性,该分布式系统包括目标服务器及调度引擎;

调度引擎,用于推送应用部署工作流至目标服务器;

目标服务器,用于在接收到调度引擎推送的应用部署工作流时初始化agent进程;

目标服务器,还用于利用agent进程执行应用部署工作流以部署应用,反馈应用部署进度至调度引擎;

调度引擎,还用于在目标服务器利用agent进程执行完应用部署工作流后,发送销毁指令至目标服务器;

目标服务器,还用于根据接收到的销毁指令销毁目标服务器上执行完应用部署工作流的agent进程。

本发明实施例还提供一种计算机设备,包括存储器、处理器及存储在存储器上并可在处理器上运行的计算机程序,所述处理器执行所述计算机程序时实现上述应用部署方法。

本发明实施例还提供一种计算机可读存储介质,所述计算机可读存储介质存储有执行上述应用部署方法的计算机程序。

本发明实施例中,在接收到分布式系统的调度引擎推送的应用部署工作流时初始化agent进程;利用agent进程执行应用部署工作流以在目标服务器上部署应用,反馈应用部署进度至分布式系统的调度引擎;在利用agent进程执行完应用部署工作流后,根据接收到的销毁指令销毁目标服务器上的agent进程。本发明实施例通过在目标服务器上创建agent进程,利用agent进程执行应用部署工作流的方式在目标服务器上部署应用,大大提高应用部署的效率;同时销毁执行完应用部署工作流的agent进程,消除对目标服务器资源和应用的影响,提高应用部署的安全性。

附图说明

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

图1为本发明实施例提供的应用部署方法的实现流程图;

图2为本发明实施例提供的应用部署方法中步骤101的实现流程图;

图3为本发明实施例提供的应用部署方法的另一实现流程图;

图4为本发明实施例提供的目标服务器的功能模块图;

图5为本发明实施例提供的目标服务器中agent初始化模块401的结构框图;

图6为本发明实施例提供的目标服务器的另一功能模块图;

图7为本发明实施例提供的应用部署方法的再一实现流程图;

图8为本发明实施例提供的调度引擎的功能模块图;

图9为本发明实施例提供的分布式系统的结构示意图;

图10为本发明实施例提供的分布式系统的架构示意图。

具体实施方式

为使本发明实施例的目的、技术方案和优点更加清楚明白,下面结合附图对本发明实施例做进一步详细说明。在此,本发明的示意性实施例及其说明用于解释本发明,但并不作为对本发明的限定。

图1示出了本发明实施例提供的应用部署方法的实现流程,为便于描述,仅示出了与本发明实施例相关的部分,详述如下:

如图1所示,应用部署方法,应用于分布式系统的目标服务器。应用部署方法包括:

步骤101,在接收到分布式系统的调度引擎推送的应用部署工作流时初始化agent进程;

步骤102,利用agent进程执行应用部署工作流以在目标服务器上部署应用,反馈应用部署进度至分布式系统的调度引擎;

步骤103,在利用agent进程执行完应用部署工作流后,根据接收到的销毁指令销毁目标服务器上的agent进程。

分布式系统至少包括目标服务器及调度引擎,目标服务器为待部署应用的服务器。在分布式系统的目标服务器上部署应用时,分布式系统的调度引擎推送应用部署工作流至目标服务器。目标服务器在接收到调度引擎推送的应用部署工作流时,说明需要在目标服务器部署应用,此时在目标服务器上初始化agent进程。

在目标服务器上初始化agent进程后,目标服务器利用初始化后的agent进程执行调度引擎推送的应用部署工作流,以在目标服务器上部署应用。以agent进程执行应用部署工作流的方式在目标服务器上部署应用,能够大大提高应用部署效率。与此同时,目标服务器反馈应用部署进度(应用部署工作流的执行进度)至调度引擎,以便调度引擎随时掌控应用部署进度。

最后,目标服务器在利用agent进程执行完应用部署工作流后,调度引擎发送销毁指令至目标服务器,目标服务器根据接收到的销毁指令销毁执行完应用部署工作流的agent进程。销毁执行完应用部署工作流的agent进程,能够尽可能减少agent进程对目标服务器资源和应用的影响,大大提高应用部署的安全性。

在本发明实施例中,在接收到分布式系统的调度引擎推送的应用部署工作流时初始化agent进程;利用agent进程执行应用部署工作流以在目标服务器上部署应用,反馈应用部署进度至分布式系统的调度引擎;在利用agent进程执行完应用部署工作流后,根据接收到的销毁指令销毁目标服务器上的agent进程。本发明实施例通过在目标服务器上创建agent进程,利用agent进程执行应用部署工作流的方式在目标服务器上部署应用,大大提高应用部署的效率;同时销毁执行完应用部署工作流的agent进程,消除对目标服务器资源和应用的影响,提高应用部署的安全性。

图2示出了本发明实施例提供的应用部署方法中步骤101的实现流程,为便于描述,仅示出了与本发明实施例相关的部分,详述如下:

在本发明的一实施例中,为了提高初始化agent进程的效率,如图2所示,步骤101,在接收到分布式系统的调度引擎推送的应用部署工作流时初始化agent进程,包括:

步骤201,接收分布式系统的调度引擎推送的agent执行码及应用部署工作流;

步骤202,根据agent执行码创建并启动agent进程。

分布式系统的调度引擎在推送应用部署工作流的同时,推送agent执行码,目标服务器在接收到分布式系统的调度引擎推送的agent执行码及应用部署工作流后,目标服务器根据agent执行码创建并启动agent进程,以初始化agent进程。以agent执行码的方式初始化agent进程,能够提高初始化agent进程的效率。

在本发明实施例中,接收分布式系统的调度引擎推送的agent执行码及应用部署工作流;根据agent执行码创建并启动agent进程。本发明实施例以agent执行码的方式初始化agent进程,能够提高初始化agent进程的效率。

图3示出了本发明实施例提供的应用部署方法的另一实现流程,为便于描述,仅示出了与本发明实施例相关的部分,详述如下:

在本发明的一实施例中,为了提高调度引擎与目标服务器连接的安全性,如图3所示,在上述方法步骤的的基础上,应用部署方法还包括:

步骤301,通过ssh远程连接的方式连接分布式系统的目标服务器与调度引擎。

分布式系统的调度引擎与分布式系统的目标服务器在连接时,可以通过ssh远程连接的方式连接目标服务器与调度引擎,以提高连接的安全性。

在本发明的一实施例中,为了提高登录目标服务器的便捷性,如图3所示,在上述方法步骤的的基础上,应用部署方法还包括:

步骤302,通过配置sshkey的方式免密登录分布式系统的目标服务器。

在登录分布式系统的目标服务器,可以通过配置sshkey的方式免密登录目标服务器,以提高登录分布式系统目标服务器的便捷性。

在本发明的一实施例中,为了便于查询应用部署情况,如图3所示,在上述方法步骤的的基础上,应用部署方法还包括:

步骤303,在利用agent进程执行应用部署工作流的同时,将目标服务器上产生的应用部署日志同步至web端。

目标服务器在利用agent进程执行应用部署工作流,以部署应用时,还可以将目标服务器上产生的应用部署日志同步至web端,以便分布式系统查询应用部署情况。

在本发明的一实施例中,为了了解调度引擎与目标服务器的连接状态,如图3所示,在上述方法步骤的的基础上,应用部署方法还包括:

步骤304,按照预设频率利用心跳检测程序保持分布式系统的调度引擎与目标服务器的agent进程之间心跳同步。

在目标服务器利用agent进程执行应用部署工作流时,可以利用心跳检测程序,按照预设频率(定时)在分布式系统的调度引擎与目标服务器的agent进程进行心跳同步,即利用心跳检测程序定时检查调度引擎与目标服务器之间的连接状态,以便在调度引擎与目标服务器之间的连接状态异常时,重新建立调度引擎与目标服务器之间的连接。

在本发明的一实施例中,为了实现目标服务器与分布式系统数据库的数据同步,如图3所示,在上述方法步骤的的基础上,应用部署方法还包括:

步骤305,目标服务器的agent进程与分布式系统的数据库进行数据同步。

目标服务器在利用agent进程执行应用部署工作流时,还利用agent进程与分布式系统的数据库进行数据同步。

在本发明实施例中,通过ssh远程连接的方式连接分布式系统的目标服务器与调度引擎,能够提高调度引擎与目标服务器连接的安全性;通过配置sshkey的方式免密登录分布式系统的目标服务器,能够登录目标服务器的便捷性;在利用agent进程执行应用部署工作流的同时,将目标服务器上产生的应用部署日志同步至web端,能够便于查询应用部署情况;按照预设频率利用心跳检测程序保持分布式系统的调度引擎与目标服务器的agent进程之间心跳同步,能够了解调度引擎与目标服务器的连接状态;目标服务器的agent进程与分布式系统的数据库进行数据同步,能够实现目标服务器与分布式系统数据库的数据同步。

本发明实施例还提供一种目标服务器,如下面的实施例所述。由于这些目标服务器解决问题的原理与应用于目标服务器的应用部署方法相似,因此这些目标服务器的实施可以参见应用于目标服务器的应用部署方法的实施,重复之处不再赘述。

图4示出了本发明实施例提供的目标服务器的功能模块,为便于说明,仅示出了与本发明实施例相关的部分,详述如下:

参考图4,所述目标服务器所包含的各个模块用于执行图1对应实施例中的各个步骤,具体请参阅图1以及图1对应实施例中的相关描述,此处不再赘述。本发明实施例中,所述目标服务器应用于分布式系统中。目标服务器包括agent初始化模块401、应用部署模块402及agent进程销毁模块403。

agent初始化模块401,用于在接收到分布式系统的调度引擎推送的应用部署工作流时初始化agent进程。

应用部署模块402,用于利用agent进程执行应用部署工作流以在目标服务器上部署应用,反馈应用部署进度至分布式系统的调度引擎;

agent进程销毁模块403,用于在利用agent进程执行完应用部署工作流后,根据接收到的销毁指令销毁目标服务器上的agent进程。

在本发明实施例中,agent初始化模块401在接收到分布式系统的调度引擎推送的应用部署工作流时初始化agent进程;应用部署模块402利用agent进程执行应用部署工作流以在目标服务器上部署应用,反馈应用部署进度至分布式系统的调度引擎;agent进程销毁模块403在利用agent进程执行完应用部署工作流后,根据接收到的销毁指令销毁目标服务器上的agent进程。本发明实施例agent初始化模块401通过在目标服务器上创建agent进程,应用部署模块402利用agent进程执行应用部署工作流的方式在目标服务器上部署应用,大大提高应用部署的效率;同时agent进程销毁模块403销毁执行完应用部署工作流的agent进程,消除对目标服务器资源和应用的影响,提高应用部署的安全性。

图5示出了本发明实施例提供的目标服务器中agent初始化模块401的结构示意,为便于说明,仅示出了与本发明实施例相关的部分,详述如下:

在本发明的一实施例中,为了提高初始化agent进程的效率,参考图5,所述agent初始化模块401所包含的各个单元用于执行图2对应实施例中的各个步骤,具体请参阅图2以及图2对应实施例中的相关描述,此处不再赘述。本发明实施例中,所述agent初始化模块401包括工作流接收单元501及agent进程初始化单元502。

工作流接收单元501,用于接收分布式系统的调度引擎推送的agent执行码及应用部署工作流。

agent进程初始化单元502,用于根据agent执行码创建并启动agent进程。

在本发明实施例中,工作流接收单元501接收分布式系统的调度引擎推送的agent执行码及应用部署工作流;agent进程初始化单元502根据agent执行码创建并启动agent进程。本发明实施例agent进程初始化单元502以agent执行码的方式初始化agent进程,能够提高初始化agent进程的效率。

图6示出了本发明实施例提供的目标服务器的另一功能模块,为便于说明,仅示出了与本发明实施例相关的部分,详述如下:

在本发明的一实施例中,为了提高调度引擎与目标服务器连接的安全性,参考图6,所述目标服务器所包含的各个模块用于执行图3对应实施例中的各个步骤,具体请参阅图3以及图3对应实施例中的相关描述,此处不再赘述。本发明实施例中,在上述模块结构的基础上,所述目标服务器还包括ssh连接模块601。

ssh连接模块601,用于通过ssh远程连接的方式连接分布式系统的目标服务器与调度引擎。

在本发明的一实施例中,为了提高登录目标服务器的便捷性,参考图6,在上述模块结构的基础上,所述目标服务器还包括ssh免密登录模块602。

ssh免密登录模块602,用于通过配置sshkey的方式免密登录分布式系统的目标服务器。

在本发明的一实施例中,为了便于查询应用部署情况,参考图6,在上述模块结构的基础上,所述目标服务器还包括日志同步模块603。

日志同步模块603,用于在利用agent进程执行应用部署工作流的同时,将目标服务器上产生的应用部署日志同步至web端。

在本发明的一实施例中,为了了解调度引擎与目标服务器的连接状态,参考图6,在上述模块结构的基础上,所述目标服务器还包括心跳检测模块604。

心跳检测模块604,用于按照预设频率利用心跳检测程序保持分布式系统的调度引擎与目标服务器的agent进程之间心跳同步。

在本发明的一实施例中,为了实现目标服务器与分布式系统数据库的数据同步,参考图6,在上述模块结构的基础上,所述目标服务器还包括数据同步模块605。

数据同步模块605,用于目标服务器的agent进程与分布式系统的数据库进行数据同步。

在本发明实施例中,ssh连接模块601通过ssh远程连接的方式连接分布式系统的目标服务器与调度引擎,能够提高调度引擎与目标服务器连接的安全性;ssh免密登录模块602通过配置sshkey的方式免密登录分布式系统的目标服务器,能够登录目标服务器的便捷性;日志同步模块603在利用agent进程执行应用部署工作流的同时,将目标服务器上产生的应用部署日志同步至web端,能够便于查询应用部署情况;心跳检测模块604按照预设频率利用心跳检测程序保持分布式系统的调度引擎与目标服务器的agent进程之间心跳同步,能够了解调度引擎与目标服务器的连接状态;数据同步模块605目标服务器的agent进程与分布式系统的数据库进行数据同步,能够实现目标服务器与分布式系统数据库的数据同步。

图7示出了本发明实施例提供的应用部署方法的再一实现流程,为便于描述,仅示出了与本发明实施例相关的部分,详述如下:

如图7所示,应用部署方法,应用于分布式系统的调度引。应用部署方法包括:

步骤701,推送应用部署工作流至目标服务器,以使目标服务器在接收到调度引擎推送的应用部署工作流时初始化agent进程;

步骤702,接收目标服务器利用agent进程执行应用部署工作流以部署应用的同时反馈的应用部署进度;

步骤703,在目标服务器利用agent进程执行完应用部署工作流后,发送销毁指令至目标服务器,以使目标服务器根据销毁指令销毁agent进程。

在本发明实施例中,分布式系统至少包括目标服务器及调度引擎,目标服务器为待部署应用的服务器。在分布式系统的目标服务器上部署应用时,分布式系统的调度引擎推送应用部署工作流至目标服务器。目标服务器在接收到调度引擎推送的应用部署工作流时,说明需要在目标服务器部署应用,此时在目标服务器上初始化agent进程。

在目标服务器上初始化agent进程后,目标服务器利用初始化后的agent进程执行调度引擎推送的应用部署工作流,以在目标服务器上部署应用。以agent进程执行应用部署工作流的方式在目标服务器上部署应用,能够大大提高应用部署效率。与此同时,目标服务器反馈应用部署进度(应用部署工作流的执行进度)至调度引擎,以便调度引擎随时掌控应用部署进度。

最后,目标服务器在利用agent进程执行完应用部署工作流后,调度引擎发送销毁指令至目标服务器,目标服务器根据接收到的销毁指令销毁执行完应用部署工作流的agent进程。销毁执行完应用部署工作流的agent进程,能够尽可能减少agent进程对目标服务器资源和应用的影响,大大提高应用部署的安全性。

在本发明实施例中,推送应用部署工作流至目标服务器,以使目标服务器在接收到调度引擎推送的应用部署工作流时初始化agent进程;接收目标服务器利用agent进程执行应用部署工作流以部署应用的同时反馈的应用部署进度;在目标服务器利用agent进程执行完应用部署工作流后,发送销毁指令至目标服务器,以使目标服务器根据销毁指令销毁agent进程。本发明实施例通过在目标服务器上创建agent进程,利用agent进程执行应用部署工作流的方式在目标服务器上部署应用,大大提高应用部署的效率;同时销毁执行完应用部署工作流的agent进程,消除对目标服务器资源和应用的影响,提高应用部署的安全性。

本发明实施例还提供一种调度引擎,如下面的实施例所述。由于这些调度引擎解决问题的原理与应用于调度引擎的应用部署方法相似,因此这些调度引擎的实施可以参见应用于调度引擎的应用部署方法的实施,重复之处不再赘述。

图8示出了本发明实施例提供的调度引擎的功能模块,为便于说明,仅示出了与本发明实施例相关的部分,详述如下:

参考图8,所述调度引擎所包含的各个模块用于执行图7对应实施例中的各个步骤,具体请参阅图7以及图7对应实施例中的相关描述,此处不再赘述。本发明实施例中,所述调度引擎应用于分布式系统中。调度引擎包括工作流推送模块801、部署进度接收模块802及销毁指令发送模块803。

工作流推送模块801,用于推送应用部署工作流至目标服务器,以使目标服务器在接收到调度引擎推送的应用部署工作流时初始化agent进程。

部署进度接收模块802,用于接收目标服务器利用agent进程执行应用部署工作流以部署应用的同时反馈的应用部署进度。

销毁指令发送模块803,用于在目标服务器利用agent进程执行完应用部署工作流后,发送销毁指令至目标服务器,以使目标服务器根据销毁指令销毁agent进程。

在本发明实施例中,工作流推送模块801推送应用部署工作流至目标服务器,以使目标服务器在接收到调度引擎推送的应用部署工作流时初始化agent进程;部署进度接收模块802接收目标服务器利用agent进程执行应用部署工作流以部署应用的同时反馈的应用部署进度;销毁指令发送模块803在目标服务器利用agent进程执行完应用部署工作流后,发送销毁指令至目标服务器,以使目标服务器根据销毁指令销毁agent进程。本发明实施例工作流推送模块801通过在目标服务器上创建agent进程,部署进度接收模块802利用agent进程执行应用部署工作流的方式在目标服务器上部署应用,大大提高应用部署的效率;同时销毁指令发送模块803销毁执行完应用部署工作流的agent进程,消除对目标服务器资源和应用的影响,提高应用部署的安全性。

图9示出了本发明实施例提供的分布式系统的结构示意,为便于说明,仅示出了与本发明实施例相关的部分,详述如下:

参考图9,所述分布式系统所包含的各个模块用于执行图1及图7对应实施例中的各个步骤,具体请参阅图1及图7以及图1及图7对应实施例中的相关描述,此处不再赘述。本发明实施例中,所述分布式系统包括目标服务器901及调度引擎902。

调度引擎902,用于推送应用部署工作流至目标服务器901。

目标服务器901,用于在接收到调度引擎902推送的应用部署工作流时初始化agent进程。

目标服务器901,还用于利用agent进程执行应用部署工作流以部署应用,反馈应用部署进度至调度引擎902。

调度引擎902,还用于在目标服务器901利用agent进程执行完应用部署工作流后,发送销毁指令至目标服务器901。

目标服务器901,还用于根据接收到的销毁指令销毁目标服务器901上执行完应用部署工作流的agent进程。

分布式系统至少包括目标服务器901及调度引擎902,目标服务器901为待部署应用的服务器。在分布式系统的目标服务器901上部署应用时,分布式系统的调度引擎902推送应用部署工作流至目标服务器901。目标服务器901在接收到调度引擎902推送的应用部署工作流时,说明需要在目标服务器901部署应用,此时在目标服务器901上初始化agent进程。

在目标服务器901上初始化agent进程后,目标服务器901利用初始化后的agent进程执行调度引擎902推送的应用部署工作流,以在目标服务器901上部署应用。以agent进程执行应用部署工作流的方式在目标服务器901上部署应用,能够大大提高应用部署效率。与此同时,目标服务器901反馈应用部署进度(应用部署工作流的执行进度)至调度引擎902,以便调度引擎902随时掌控应用部署进度。

最后,目标服务器901在利用agent进程执行完应用部署工作流后,调度引擎902发送销毁指令至目标服务器901,目标服务器901根据接收到的销毁指令销毁执行完应用部署工作流的agent进程。销毁执行完应用部署工作流的agent进程,能够尽可能减少agent进程对目标服务器901资源和应用的影响,大大提高应用部署的安全性。

在本发明实施例中,在接收到分布式系统的调度引擎902推送的应用部署工作流时初始化agent进程;利用agent进程执行应用部署工作流以在目标服务器901上部署应用,反馈应用部署进度至分布式系统的调度引擎902;在利用agent进程执行完应用部署工作流后,根据接收到的销毁指令销毁目标服务器901上的agent进程。本发明实施例通过在目标服务器901上创建agent进程,利用agent进程执行应用部署工作流的方式在目标服务器901上部署应用,大大提高应用部署的效率;同时销毁执行完应用部署工作流的agent进程,消除对目标服务器901资源和应用的影响,提高应用部署的安全性。

图10示出了本发明实施例提供的分布式系统的架构示意,为便于说明,仅示出了与本发明实施例相关的部分,详述如下:

如图10所示,所述分布式系统包括:

业务相关模块:主要包括有软件版本管理、部署管理、服务器管理、命令管理、自动化运维。业务相关模块主要完成版本以及参数相关的配置信息。通过部署管理模块中的配置中心对应用的各个级别的参数信息进行配置管理;软件管理模块负责将产品的版本信息导入到系统中并解析相关记录到系统中;服务器管理负责配置系统中各个部署服务器的相关信息,包括服务器的ip地址以及待部署的中间件类型都在服务器管理菜单下进行配置;命令管理模块,对系统内标准化的执行脚本进行修改与配置;自动化运维模块,包含对应用参数的在线检查以及对版本实现不依赖于版本的扩容动作。

调度服务器模块:调度引擎负责任务调度、并发控制、agent管理和信息同步,采用事件驱动模式,功能可插拔式扩展。

参数计算引擎:参数计算引擎负责计算版本包在指定环境下完成部署所需要的所有参数及部署方案。

作业流编排引擎:根据部署方案选择工作流模版,通过规则引擎对工作流模版实例化,用户定制工作流。

本方法采用实时在目标服务器创建agent并且跟随着部署完成之后就对该agent进行现场清理,这样大大避免了对目标环境可能造成的影响以及可能对资源造成的占用,同时在安全问题上也得到了有力的保障。

本发明实施例还提供一种计算机设备,包括存储器、处理器及存储在存储器上并可在处理器上运行的计算机程序,所述处理器执行所述计算机程序时实现上述应用部署方法。

本发明实施例还提供一种计算机可读存储介质,所述计算机可读存储介质存储有执行上述应用部署方法的计算机程序。

本发明提供的应用部署方法及装置可应用于金融领域,还可以应用于除金融领域之外的其它应用领域,本发明实施例对此不作特别的限制。

综上所述,本发明实施例中,在接收到分布式系统的调度引擎推送的应用部署工作流时初始化agent进程;利用agent进程执行应用部署工作流以在目标服务器上部署应用,反馈应用部署进度至分布式系统的调度引擎;在利用agent进程执行完应用部署工作流后,根据接收到的销毁指令销毁目标服务器上的agent进程。本发明实施例通过在目标服务器上创建agent进程,利用agent进程执行应用部署工作流的方式在目标服务器上部署应用,大大提高应用部署的效率;同时销毁执行完应用部署工作流的agent进程,消除对目标服务器资源和应用的影响,提高应用部署的安全性。

本领域内的技术人员应明白,本发明的实施例可提供为方法、系统、或计算机程序产品。因此,本发明可采用完全硬件实施例、完全软件实施例、或结合软件和硬件方面的实施例的形式。而且,本发明可采用在一个或多个其中包含有计算机可用程序代码的计算机可用存储介质(包括但不限于磁盘存储器、cd-rom、光学存储器等)上实施的计算机程序产品的形式。

本发明是参照根据本发明实施例的方法、设备(系统)、和计算机程序产品的流程图和/或方框图来描述的。应理解可由计算机程序指令实现流程图和/或方框图中的每一流程和/或方框、以及流程图和/或方框图中的流程和/或方框的结合。可提供这些计算机程序指令到通用计算机、专用计算机、嵌入式处理机或其他可编程数据处理设备的处理器以产生一个机器,使得通过计算机或其他可编程数据处理设备的处理器执行的指令产生用于实现在流程图一个流程或多个流程和/或方框图一个方框或多个方框中指定的功能的装置。

这些计算机程序指令也可存储在能引导计算机或其他可编程数据处理设备以特定方式工作的计算机可读存储器中,使得存储在该计算机可读存储器中的指令产生包括指令装置的制造品,该指令装置实现在流程图一个流程或多个流程和/或方框图一个方框或多个方框中指定的功能。

这些计算机程序指令也可装载到计算机或其他可编程数据处理设备上,使得在计算机或其他可编程设备上执行一系列操作步骤以产生计算机实现的处理,从而在计算机或其他可编程设备上执行的指令提供用于实现在流程图一个流程或多个流程和/或方框图一个方框或多个方框中指定的功能的步骤。

以上所述的具体实施例,对本发明的目的、技术方案和有益效果进行了进一步详细说明,所应理解的是,以上所述仅为本发明的具体实施例而已,并不用于限定本发明的保护范围,凡在本发明的精神和原则之内,所做的任何修改、等同替换、改进等,均应包含在本发明的保护范围之内。

当前第1页1 2 
网友询问留言 已有0条留言
  • 还没有人留言评论。精彩留言会获得点赞!
1