一种分布式系统部署方法、系统、电子设备及存储介质技术方案

技术编号:20221467 阅读:14 留言:0更新日期:2019-01-28 20:04
本申请公开了一种分布式系统部署方法,区别于现有使用编排文件加额外功能组件完成分布式系统部署的方法,本申请将额外安装或部署的功能组件进行抽象化处理,作为与原编排文件中的各编排命令同等地位的存在,并与其它编排命令就统一的依赖关系进行完整的命令排布,以防止因依赖关系不满足导致的不可用问题,同时也由于将额外功能组件的安装或部署过程整合进编排文件,使得目标分布式系统的部署仅基于单一的编排文件即可完成,集成度和自动化程度更高,真正实现了一键式部署,而更少的部署操作步骤,也提升了用户的使用体验。本申请还同时公开了一种分布式系统部署系统、电子设备及计算机可读存储介质,具有上述有益效果。

【技术实现步骤摘要】
一种分布式系统部署方法、系统、电子设备及存储介质
本申请涉及分布式系统
,特别涉及一种分布式系统部署方法、系统、电子设备及计算机可读存储介质。
技术介绍
在部署一个分布式系统时,不仅涉及多个功能组件,且注意事项较多、步骤极其繁琐,尤其在一些框架的搭建过程中,涉及的各组件间还存在有依赖关系,一步出错,可能将需要重新部署,因此快速、准确、步骤简单的完成一个分布式系统的部署是十分具有研究价值的。现有存在通过编排文件来实现分布式系统部署的方式,编排文件的作用相当于功能程序的配置文件或者部署指导,但现阶段编排文件内仅包含的要素较少,而一些在部署分布式系统过程中需要的重要功能,例如运行测试功能、监控报警功能以及数据库的初始化操作,却是通过独立于编排文件之外的功能组件来实现,编排文件存在的目的在于期望实现自动化的部署,而除编排文件中涉及的要素,额外功能组件往往还需要手动进行安装或部署,不仅与编排文件的目的相违背,且后续安装的功能组件还存在因依赖关系不满足导致出现的不可用现象。在分开进行的同时,还增加了完成部署需要操作的步骤和多个对象,无法真正实现一键式部署,用户使用体验有待改进。因此,如何克服现有部署分布式系统方式中存在的各技术缺陷,提供一种要素构成更丰富、无需手动安装或部署功能组件、集成度和自动化更高的分布式系统部署机制,是本领域技术人员亟待解决的问题。
技术实现思路
本申请的目的是提供一种分布式系统部署方法,区别于现有使用编排文件加额外功能组件完成分布式系统部署的方法,本申请将额外安装或部署的功能组件进行抽象化处理,作为与原编排文件中的各编排命令同等地位的存在,并与其它编排命令就统一的依赖关系进行完整的命令排布,以防止因依赖关系不满足导致的不可用问题,同时也由于将额外功能组件的安装或部署过程整合进编排文件,使得目标分布式系统的部署仅基于单一的编排文件即可完成,集成度和自动化程度更高,真正实现了一键式部署,而更少的部署操作步骤,也提升了用户的使用体验。本申请的另一目的在于提供了一种分布式系统部署系统、电子设备及计算机可读存储介质。为实现上述目的,本申请提供一种分布式系统部署方法,该方法包括:根据系统部署要求选取构成目标分布式系统的各要素;其中,所述要素包括应用、属性信息、配置信息、存储、数据接口、监控报警规则、冒烟测试规则、数据初始化规则中的至少一项;将各所述要素按照统一的格式抽象为各编排命令,并按照各所述要素间的依赖关系排布对应的各编排命令,得到编排文件;利用解析器依次解析所述编排文件中各编排命令,并按各所述编排命令将对应的容器化应用部署至目标节点,以完成所述目标分布式系统的部署。可选的,在完成所述目标分布式系统的部署之前,还包括:利用由所述数据初始化规则抽象得到的初始化编排命令对安装完成的数据库进行数据初始化操作。可选的,在完成所述目标分布式系统的部署之后,还包括:利用由所述监控报警规则抽象得到的监控报警编排命令对运行的目标分布式系统进行监控;当所述目标分布式系统任意组成部分或功能部分存在异常时,通过预设路径反馈携带有异常信息的异常警报信息。可选的,在按各所述编排命令将对应的容器化应用部署至目标节点之前,还包括:利用容器化技术封装各目标应用,得到各所述容器化应用;利用Kubernetes的service自动发现并区分不同的服务。可选的,在完成所述目标分布式系统的部署之后,还包括:利用由所述冒烟测试规则抽象得到的冒烟测试编排命令调用预先定义的冒烟测试用例进行冒烟测试,并反馈得到的测试结果。可选的,该分布式系统部署方法还包括:当需要迁移所述目标分布式系统时,将所述编排文件导出至目标设备;在所述目标设备上根据所述编排文件完成所述目标分布式系统的迁移。可选的,该分布式系统部署方法还包括:接收所述目标分布式系统部署完成后返回的部署完成信号,并根据所述部署完成信号中包含的信息更新所述目标分布式系统的部署状态。为实现上述目的,本申请还提供了一种分布式系统部署系统,包括:构成要素确定单元,用于根据系统部署要求选取构成目标分布式系统的各要素;其中,所述要素包括应用、属性信息、配置信息、存储、数据接口、监控报警规则、冒烟测试规则、数据初始化规则中的至少一项;要素抽象及按序编排单元,用于将各所述要素按照统一的格式抽象为各编排命令,并按照各所述要素间的依赖关系排布对应的各编排命令,得到编排文件;分布式系统部署单元,用于利用解析器依次解析所述编排文件中各编排命令,并按各所述编排命令将对应的容器化应用部署至目标节点,以完成所述目标分布式系统的部署。可选的,该分布式系统部署系统还包括:数据初始化单元,用于在完成所述目标分布式系统的部署之前,利用由所述数据初始化规则抽象得到的初始化编排命令对安装完成的数据库进行数据初始化操作。可选的,该分布式系统部署系统还包括:监控单元,用于在完成所述目标分布式系统的部署之后,利用由所述监控报警规则抽象得到的监控报警编排命令对运行的目标分布式系统进行监控;警报单元,用于当所述目标分布式系统任意组成部分或功能部分存在异常时,通过预设路径反馈携带有异常信息的异常警报信息。可选的,该分布式系统部署系统还包括:容器化封装单元,用于在按各所述编排命令将对应的容器化应用部署至目标节点之前,利用容器化技术封装各目标应用,得到各所述容器化应用;服务自动发现单元,用于利用Kubernetes的service自动发现并区分不同的服务。可选的,该分布式系统部署系统还包括:冒烟测试单元,用于在完成所述目标分布式系统的部署之后,利用由所述冒烟测试规则抽象得到的冒烟测试编排命令调用预先定义的冒烟测试用例进行冒烟测试,并反馈得到的测试结果。可选的,该分布式系统部署系统还包括:迁移导出单元,用于当需要迁移所述目标分布式系统时,将所述编排文件导出至目标设备;迁移还原单元,用于在所述目标设备上根据所述编排文件完成所述目标分布式系统的迁移。可选的,该分布式系统部署系统还包括:完成信号接收及处理单元,用于接收所述目标分布式系统部署完成后返回的部署完成信号,并根据所述部署完成信号中包含的信息更新所述目标分布式系统的部署状态。为实现上述目的,本申请还提供了一种电子设备,包括:存储器,用于存储计算机程序;处理器,用于执行所述计算机程序时实现如上述内容所描述的分布式系统部署方法的步骤。为实现上述目的,本申请还提供了一种计算机可读存储介质,所述计算机可读存储介质上存储有计算机程序,所述计算机程序被处理器执行时实现如上述内容所描述的分布式系统部署方法的步骤。显然,本申请所提供的一种分布式系统部署方法,区别于现有使用编排文件加额外功能组件完成分布式系统部署的方法,本申请将额外安装或部署的功能组件进行抽象化处理,作为与原编排文件中的各编排命令同等地位的存在,并与其它编排命令就统一的依赖关系进行完整的命令排布,以防止因依赖关系不满足导致的不可用问题,同时也由于将额外功能组件的安装或部署过程整合进编排文件,使得目标分布式系统的部署仅基于单一的编排文件即可完成,集成度和自动化程度更高,真正实现了一键式部署,而更少的部署操作步骤,也提升了用户的使用体验。本申请同时还提供了一种分布式系统部署系统、电子设备及计算机可读存储介质,具有上述有益效果,在此不再赘述本文档来自技高网...

【技术保护点】
1.一种分布式系统部署方法,其特征在于,包括:根据系统部署要求选取构成目标分布式系统的各要素;其中,所述要素包括应用、属性信息、配置信息、存储、数据接口、监控报警规则、冒烟测试规则、数据初始化规则中的至少一项;将各所述要素按照统一的格式抽象为各编排命令,并按照各所述要素间的依赖关系排布对应的各编排命令,得到编排文件;利用解析器依次解析所述编排文件中各编排命令,并按各所述编排命令将对应的容器化应用部署至目标节点,以完成所述目标分布式系统的部署。

【技术特征摘要】
1.一种分布式系统部署方法,其特征在于,包括:根据系统部署要求选取构成目标分布式系统的各要素;其中,所述要素包括应用、属性信息、配置信息、存储、数据接口、监控报警规则、冒烟测试规则、数据初始化规则中的至少一项;将各所述要素按照统一的格式抽象为各编排命令,并按照各所述要素间的依赖关系排布对应的各编排命令,得到编排文件;利用解析器依次解析所述编排文件中各编排命令,并按各所述编排命令将对应的容器化应用部署至目标节点,以完成所述目标分布式系统的部署。2.根据权利要求1所述的分布式系统部署方法,其特征在于,在完成所述目标分布式系统的部署之前,还包括:利用由所述数据初始化规则抽象得到的初始化编排命令对安装完成的数据库进行数据初始化操作。3.根据权利要求1所述的分布式系统部署方法,其特征在于,在完成所述目标分布式系统的部署之后,还包括:利用由所述监控报警规则抽象得到的监控报警编排命令对运行的目标分布式系统进行监控;当所述目标分布式系统任意组成部分或功能部分存在异常时,通过预设路径反馈携带有异常信息的异常警报信息。4.根据权利要求1所述的分布式系统部署方法,其特征在于,在按各所述编排命令将对应的容器化应用部署至目标节点之前,还包括:利用容器化技术封装各目标应用,得到各所述容器化应用;利用Kubernetes的service自动发现并区分不同的服务。5.根据权利要求1所述的分布式系统部署方法,其特征在于,在完成所述目标分布式系统的部署之后,还包括:利用由所述冒烟测试规则抽象得到的冒烟测试编...

【专利技术属性】
技术研发人员:陈军马文艺
申请(专利权)人:杭州数梦工场科技有限公司
类型:发明
国别省市:浙江,33

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

1