System.ArgumentOutOfRangeException: 索引和长度必须引用该字符串内的位置。 参数名: length 在 System.String.Substring(Int32 startIndex, Int32 length) 在 zhuanliShow.Bind() 一种软件自动化部署方法、装置、存储介质及计算机设备制造方法及图纸_技高网

一种软件自动化部署方法、装置、存储介质及计算机设备制造方法及图纸

技术编号:40558416 阅读:21 留言:0更新日期:2024-03-05 19:20
本申请提供的一种软件自动化部署方法、装置、存储介质及计算机设备,当接收到用户发送的软件部署清单时,可以根据软件部署清单进行初始化,形成初始配置数据;接着可以根据预设分配规则和初始配置数据依次将软件部署清单中每一软件实例分配至相应的目标服务器中,并在根据分配结果生成软件部署计划后,在各个目标服务器上对各个软件实例进行部署安装,并生成各个待安装软件的部署结果;最后可以基于各个部署结果对每一待安装软件的运行状态进行校验,并根据校验结果生成实际部署逻辑图。本申请采用根据软件部署清单生成软件部署计划后进行自动化部署的方式,可以在传统软件部署的模式下实现自动化部署,从而高效、便捷地完成应用软件的部署安装。

【技术实现步骤摘要】

本申请涉及软件部署,尤其涉及一种软件自动化部署方法、装置、存储介质及计算机设备


技术介绍

1、随着计算机应用领域的扩大,计算机应用软件的应用规模不断扩大和延伸,例如,企业应用系统通常在服务端进行部署和安装,将一个或多个应用软件分散安装至多个计算机或服务器中,从而可以更好地利用计算资源和提高应用程序的可伸缩性和可靠性,以实现多用户、多角色、多业务流程的管理和协同。

2、在b/s模式下的服务端软件应用安装部署方面,常见的有传统的手工部署安装和基于docker技术的容器化部署安装两种模式。其中,手工部署安装对安装人员的要求较高,部署场景越复杂,操作失误率越高,导致部署成功率较低;而容器化部署受到安装环境和客户方资源的限制,导致一些企业无法对应用软件进行自动化部署,只能采用手工部署安装。


技术实现思路

1、本申请的目的旨在至少能解决上述的技术缺陷之一,特别是现有技术中容器化部署受到安装环境和客户方资源的限制,导致一些企业无法对应用软件进行自动化部署,只能采用手工部署安装的技术缺陷。

2、本申请提供了一种软件自动化部署方法,所述方法包括:

3、当接收到用户发送的软件部署清单时,根据所述软件部署清单进行初始化,形成初始配置数据;所述初始配置数据包括多个待安装软件的配置信息以及多个目标服务器的配置信息;其中,每一待安装软件由至少一个软件实例构成;

4、根据预设分配规则和所述初始配置数据依次将每一软件实例分配至相应的目标服务器中,并根据分配结果生成软件部署计划;

5、根据所述软件部署计划在各个目标服务器上对各个软件实例进行部署安装,生成各个待安装软件的部署结果;

6、基于各个部署结果对每一待安装软件的运行状态进行校验,并根据校验结果生成实际部署逻辑图。

7、可选地,所述软件部署清单包括资源信息、软件信息和个性化配置信息;

8、所述根据所述软件部署清单进行初始化,形成初始配置数据,包括:

9、基于所述资源信息与多个目标服务器建立网络连接,并获取每一目标服务器的配置信息;

10、获取所述软件信息中各个待安装软件对应的软件安装包,并根据所述个性化配置信息调整各个软件安装包的配置参数,作为每一待安装软件的配置信息;

11、根据各个目标服务器的配置信息和各个待安装软件的配置信息生成初始配置数据。

12、可选地,所述根据预设分配规则和所述初始配置数据依次将每一软件实例分配至相应的目标服务器中,包括:

13、针对每一软件实例:

14、根据所述初始配置数据确认该软件实例的目标部署资源和各个目标服务器的空闲资源;其中,各个目标服务器的空闲资源依据各个软件实例的分配情况进行实时更新;

15、将该软件实例的目标部署资源与各个空闲资源进行比对后,根据比对结果将该软件实例分配至其中一个空闲资源大于所述目标部署资源的目标服务器中。

16、可选地,所述根据比对结果将该软件实例分配至其中一个空闲资源大于所述目标部署资源的目标服务器中,包括:

17、根据比对结果将空闲资源大于所述目标部署资源的目标服务器作为待分配的目标服务器;

18、从所述待分配的目标服务器中筛选出,包含与该软件实例同属于一个待安装软件的其他软件实例的数量最少的目标服务器,作为最终分配的目标服务器;

19、将该软件实例分配至所述最终分配的目标服务器中。

20、可选地,所述根据所述软件部署计划在各个目标服务器上对各个软件实例进行部署安装,得到部署结果,包括:

21、根据各个软件类型对所述软件部署计划中的各个软件实例进行划分,得到多个软件实例集合,每一软件实例集合对应一种软件类型;

22、确定所述软件部署计划中每一软件实例对应的目标服务器,并根据所述软件部署计划在相应的目标服务器上依次对各个软件实例集合进行部署安装,得到部署结果;

23、其中,所述软件实例集合的部署顺序依次为环境类、中间件类和应用类。

24、可选地,所述根据所述软件部署计划在相应的目标服务器上依次对各个软件实例集合进行部署安装,包括:

25、当部署安装的软件实例集合为环境类或中间件类时,针对每一软件实例:

26、获取所述软件部署计划中该软件实例对应的配置信息,并判断该软件实例对应的目标服务器中是否存在所述配置信息;

27、若是,则直接确认所述目标服务器中该软件实例部署完成;

28、若否,则在所述目标服务器中对所述配置信息进行部署,生成该软件实例。

29、可选地,所述根据所述软件部署计划在相应的目标服务器上依次对各个软件实例集合进行部署安装,包括:

30、当部署安装的软件实例集合为应用类时,针对每一软件实例:

31、获取所述软件部署计划中该软件实例对应的配置信息和启动参数;

32、根据所述配置信息,在所述目标服务器中进行实例部署,生成该软件实例,并利用所述启动参数启动该软件实例。

33、可选地,所述基于所述各个部署结果对每一待安装软件的运行状态进行校验,包括:

34、针对每一待安装软件,获取该待安装软件对应的部署结果中的安装路径,并判断所述安装路径下是否存在软件运行进程;

35、若否,则标记该待安装软件安装失败;

36、若是,则获取该软件运行进程对应的端口号,并对所述端口号进行连通性检测;当检测结果为不连通时,标记该待安装软件安装失败;当检测结果为连通时,标记该待安装软件安装成功。

37、可选地,所述根据预设分配规则和所述初始配置数据依次将每一软件实例分配至相应的目标服务器中的步骤之前,还包括:

38、根据所述初始配置数据确定各个待安装软件的配置环境和目标部署总资源、以及各个目标服务器的基础环境和空闲总资源;

39、判断所述初始配置数据是否满足所述空闲总资源大于所述目标部署总资源以及所述配置环境符合所述基础环境的条件;

40、若是,则继续执行所述根据预设分配规则和所述初始配置数据依次将每一软件实例分配至相应的目标服务器中及后续步骤;

41、若否,则结束软件自动化部署操作。

42、本申请还提供了一种软件自动化部署装置,包括:

43、数据获取模块,用于当接收到用户发送的软件部署清单时,根据所述软件部署清单进行初始化,形成初始配置数据;所述初始配置数据包括多个待安装软件的配置信息以及多个目标服务器的配置信息;其中,每一待安装软件由至少一个软件实例构成;

44、计划生成模块,用于根据预设分配规则和所述初始配置数据依次将每一软件实例分配至相应的目标服务器中,并根据分配结果生成软件部署计划;

45、部署安装模块,用于根据所述软件部署计划在各个目标服务器上对各个软件实例进行部署安装,生成各个待安装软件的部署结果;本文档来自技高网...

【技术保护点】

1.一种软件自动化部署方法,其特征在于,所述方法包括:

2.根据权利要求1所述的软件自动化部署方法,其特征在于,所述软件部署清单包括资源信息、软件信息和个性化配置信息;

3.根据权利要求1所述的软件自动化部署方法,其特征在于,所述根据预设分配规则和所述初始配置数据依次将每一软件实例分配至相应的目标服务器中,包括:

4.根据权利要求3所述的软件自动化部署方法,其特征在于,所述根据比对结果将该软件实例分配至其中一个空闲资源大于所述目标部署资源的目标服务器中,包括:

5.根据权利要求1所述的软件自动化部署方法,其特征在于,所述根据所述软件部署计划在各个目标服务器上对各个软件实例进行部署安装,得到部署结果,包括:

6.根据权利要求5所述的软件自动化部署方法,其特征在于,所述根据所述软件部署计划在相应的目标服务器上依次对各个软件实例集合进行部署安装,包括:

7.根据权利要求5所述的软件自动化部署方法,其特征在于,所述根据所述软件部署计划在相应的目标服务器上依次对各个软件实例集合进行部署安装,包括:

8.根据权利要求1所述的软件自动化部署方法,其特征在于,所述基于所述各个部署结果对每一待安装软件的运行状态进行校验,包括:

9.根据权利要求1所述的软件自动化部署方法,其特征在于,所述根据预设分配规则和所述初始配置数据依次将每一软件实例分配至相应的目标服务器中的步骤之前,还包括:

10.一种软件自动化部署装置,其特征在于,包括:

11.一种存储介质,其特征在于:所述存储介质中存储有计算机可读指令,所述计算机可读指令被一个或多个处理器执行时,使得一个或多个处理器执行如权利要求1至9中任一项所述软件自动化部署方法的步骤。

12.一种计算机设备,其特征在于,包括:一个或多个处理器,以及存储器;

...

【技术特征摘要】

1.一种软件自动化部署方法,其特征在于,所述方法包括:

2.根据权利要求1所述的软件自动化部署方法,其特征在于,所述软件部署清单包括资源信息、软件信息和个性化配置信息;

3.根据权利要求1所述的软件自动化部署方法,其特征在于,所述根据预设分配规则和所述初始配置数据依次将每一软件实例分配至相应的目标服务器中,包括:

4.根据权利要求3所述的软件自动化部署方法,其特征在于,所述根据比对结果将该软件实例分配至其中一个空闲资源大于所述目标部署资源的目标服务器中,包括:

5.根据权利要求1所述的软件自动化部署方法,其特征在于,所述根据所述软件部署计划在各个目标服务器上对各个软件实例进行部署安装,得到部署结果,包括:

6.根据权利要求5所述的软件自动化部署方法,其特征在于,所述根据所述软件部署计划在相应的目标服务器上依次对各个软件实例集合进行部署安装,包括...

【专利技术属性】
技术研发人员:丁家奎田宝龙刘建文钟国文鲁胜钊
申请(专利权)人:广州天维信息技术股份有限公司
类型:发明
国别省市:

网友询问留言 已有0条评论
  • 还没有人留言评论。发表了对其他浏览者有用的留言会获得科技券。

1