一种软件安装方法、装置、电子设备与存储介质与流程

文档序号:36386593发布日期:2023-12-15 01:10阅读:17来源:国知局
一种软件安装方法与流程

本发明涉及互联网,尤其涉及一种软件安装方法、装置、电子设备与存储介质。


背景技术:

1、目前大型软件在安装或升级时,有的需要运维人员手动操作,涉及到相关软件制品包的获取、上传、安装、调试、配置参数等步骤,并且软件的各个子组件之间有依赖关系,如b依赖a,必须先安装a,然后再安装b,运维人员不仅需要了解软件的子组件安装、部署、调试,还需要了解组件之前的依赖关系,这无疑对运维人员的技能有较高要求。

2、现有的软件安装或升级方案中,可通过软件研发技术人员指导运维人员安装或升级,对于架构较为简单,功能单一的软件而言此种方式较为可行。

3、但对于大型的、复杂的、集成度高的软件而言,上述解决方案不可取,有如下几种原因:1、运维人员对软件相关架构了解不够,容易在软件安装或升级过程中出现错误;2、出现错误后需要找研发工程师提供技术支持,运维工程师和研发工程师通常在异地办公,远程沟通效果、效率不佳。3、对于相关配置项,运维人员手动操作配置可能出现人为失误,导致软件安装或升级完成后运行效果大打折扣。同理,针对同类软件进行相应的逆序操作即软件卸载操作时也会遇到类似的问题。


技术实现思路

1、本发明的目的是提供一种软件安装方法、装置、电子设备与存储介质,用以解决现有技术中大型软件安装效率低、容易出错的问题,通过本技术基于软件子组件的依赖关系生成的有向无环图,实现了软件的灵活自动的可自定义的安装或升级。

2、本发明提供一种软件安装方法,方法包括:

3、确定待安装软件中的各个组件在所述网络集群中的安装节点;

4、根据预先确定的待安装软件的组件间依赖顺序关系,将所述待安装软件中的各个组件依次安装在对应的安装节点上;其中,对所述待安装软件中的任意一个组件的安装包括:

5、判断第一待安装组件是否为独立安装组件;其中,所述第一待安装组件为所述待安装软件中的当前待安装组件;

6、在所述第一待安装组件为非独立安装组件的情况下,根据组件间依赖顺序关系,确定所述第一待安装组件依赖的至少一个第二待安装组件;在所述第二待安装组件对应的安装节点上完成所述第二待安装组件的一个安装阶段后,在所述第一待安装组件对应的安装节点上执行所述第一待安装组件的一个安装阶段,然后在所述第二待安装组件对应的安装节点上再执行所述第二待安装组件的下一个安装阶段;在所述第一待安装组件的所有安装阶段均完成后,完成对所述第一待安装组件的安装。

7、根据本发明提供的软件安装方法,所述根据预先确定的待安装软件的组件间依赖顺序关系,将所述待安装软件中的各个组件依次安装在对应的安装节点上,还包括:

8、根据预先确定的待安装软件的组件间依赖顺序关系,生成一个有向无环图,其中,所述有向无环图是一个拓扑排序图;

9、基于所述有向无环图,将所述待安装软件中的各个组件依次安装在对应的安装节点上。

10、根据本发明提供的软件安装方法,所述对所述待安装软件中的任意一个组件的安装,还包括:

11、在所述第一待安装组件为独立安装组件的情况下,在对应的安装节点上连续完成所述第一待安装组件的所有安装阶段。

12、根据本发明提供的软件安装方法,在所述根据预先确定的待安装软件的组件间依赖顺序关系,将所述待安装软件中的各个组件依次安装在对应的安装节点上之前,方法还包括:

13、根据待安装软件的需求,对网络集群中的各个节点进行校验,确定所述待安装软件在所述网络集群中安装时的安装规格。

14、根据本发明提供的软件安装方法,所述根据待安装软件的需求,对网络集群中的各个节点进行校验,确定所述待安装软件在所述网络集群中安装时的安装规格,包括:

15、根据待安装软件的需求,确定至少一个候选安装规格;所述候选安装规格包括所述待安装软件的校验信息;

16、将所述至少一个候选安装规格所对应的校验信息传输到所述网络集群中的各个节点,以使得所述网络集群中的各个节点根据所述校验信息进行校验;

17、在接收到所述网络集群中的所有节点通过校验的消息后,从通过校验的所述候选安装规格中确定所述待安装软件在所述网络集群中安装时的安装规格。

18、根据本发明提供的软件安装方法,在所述根据预先确定的待安装软件的组件间依赖顺序关系,将所述待安装软件中的各个组件依次安装在对应的安装节点上之前,方法还包括:

19、为所述待安装软件中的各个组件配置安装、运行时所需要的参数,并为所述网络集群的各个节点配置所述待安装软件中的各个组件安装、运行时所需要的环境参数。

20、根据本发明提供的软件安装方法,在所述根据待安装软件的需求,对网络集群中的各个节点进行校验,确定所述待安装软件在所述网络集群中安装时的安装规格之前,方法还包括:

21、引导用户输入安装所述待安装软件所需的信息;

22、根据所述信息,为各个节点生成免密登录信息;

23、其中,所述信息包括各个节点ip、hostname、root用户密码中的至少一个。

24、本发明还提供一种软件卸载方法,用于实现对上述任一项所述软件安装方法所安装软件的卸载,包括:

25、确定待卸载软件中的各个组件在网络集群中的安装节点;

26、对所述待卸载软件的组件间依赖顺序关系做逆序操作,得到组件间依赖逆序关系;

27、根据所述组件间依赖逆序关系,将所述待卸载软件中的各个组件依次从对应的安装节点上卸载。

28、本发明还提供一种软件安装装置,装置包括:

29、安装节点确定模块,用于确定待安装软件中的各个组件在所述网络集群中的安装节点;

30、软件组件安装模块,用于根据预先确定的待安装软件的组件间依赖顺序关系,将所述待安装软件中的各个组件依次安装在对应的安装节点上;其中,对所述待安装软件中的任意一个组件的安装包括:

31、判断第一待安装组件是否为独立安装组件;其中,所述第一待安装组件为所述待安装软件中的当前待安装组件;

32、在所述第一待安装组件为非独立安装组件的情况下,根据组件间依赖顺序关系,确定所述第一待安装组件依赖的至少一个第二待安装组件;在所述第二待安装组件对应的安装节点上完成所述第二待安装组件的一个安装阶段后,在所述第一待安装组件对应的安装节点上执行所述第一待安装组件的一个安装阶段,然后在所述第二待安装组件对应的安装节点上再执行所述第二待安装组件的下一个安装阶段;在所述第一待安装组件的所有安装阶段均完成后,完成对所述第一待安装组件的安装。

33、本发明还提供一种电子设备,包括存储器、处理器及存储在所述存储器上并可在所述处理器上运行的计算机程序,所述处理器执行所述程序时实现任一项所述软件安装方法的步骤。

34、本发明还提供一种非暂态计算机可读存储介质,其上存储有计算机程序,所述计算机程序被处理器执行时实现任一项所述软件安装方法的步骤。

35、本发明还提供一种计算机程序产品,所述计算机程序产品包括计算机可执行指令,所述指令在被执行时用于实现任一项所述软件安装方法的步骤。

36、本发明提供一种软件安装方法、装置、电子设备与存储介质,通过确定待安装软件中的各个组件在所述网络集群中的安装节点;根据预先确定的待安装软件的组件间依赖顺序关系,将所述待安装软件中的各个组件依次安装在对应的安装节点上;其中,对所述待安装软件中的任意一个组件的安装包括:判断第一待安装组件是否为独立安装组件;其中,所述第一待安装组件为所述待安装软件中的当前待安装组件;在所述第一待安装组件为非独立安装组件的情况下,根据组件间依赖顺序关系,确定所述第一待安装组件依赖的至少一个第二待安装组件;在所述第二待安装组件对应的安装节点上完成所述第二待安装组件的一个安装阶段后,在所述第一待安装组件对应的安装节点上执行所述第一待安装组件的一个安装阶段,然后在所述第二待安装组件对应的安装节点上再执行所述第二待安装组件的下一个安装阶段;在所述第一待安装组件的所有安装阶段均完成后,完成对所述第一待安装组件的安装。本发明基于待安装软件中的各个组件所配置的依赖关系,能够实现软件的灵活自动的可自定义的安装或升级。

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