【技术实现步骤摘要】
自动化部署方法和系统
[0001]本专利技术涉及
,特别涉及自动化部署方法和系统。
技术介绍
[0002]目前,随着敏捷开发与敏捷运维一体化时代的到来,像过去那样简单的将软件交付给客户,然后手动在单独的服务器上部署已不能满足生产要求。而且面对成百上千台机器,几十个模块,应用程序又变得越来越复杂,部署包含多个组件的应用程序更是极具挑战性。手动部署既慢又容易出错,并且无法跟上我们的部署环境中不断增加的部署目标数量。部署到不同的环境,分散在不同的数据中心,使用不同的流程,这些都带来了更多风险。依赖关系比以往任何时候都更复杂,更难以跟踪,部署脚本难以维护。增加更多人员并不能解决这方面的问题,甚至可能会适得其反。
[0003]自动化部署可以解决以上传统手动部署存在的问题;但是,采用自动化部署时,在部署过程中也会出现由于接口不稳定或者部署任务的改变或者依赖环境和配置文件的生成误差等其他原因导致部署失败,当在同一目标主机执行不同的部署任务时,由于现存的自动化部署没有优化学习和问题定位分析的能力上述问题可能会频繁出现,进而导致 ...
【技术保护点】
【技术特征摘要】
1.一种自动化部署方法,其特征在于,包括:S1:基于用户的部署请求和初始部署流程执行待部署任务,记录每个待部署任务的部署过程,并生成每个待部署任务的部署日志,获得部署日志集合;S2:基于预设筛选条件,在所述部署日志集合中筛选出待分析部署日志集合;S3:对所述待分析部署日志集合进行共性分析,确定可优化步骤;基于所述可优化步骤更新所述初始部署流程,基于更新后的初始部署流程继续执行部署任务列表中包含的剩余部署任务。2.根据权利要求1所述的自动化部署方法,其特征在于,S1:基于用户的部署请求和初始部署流程执行待部署任务,记录每个待部署任务的部署过程,并生成每个待部署任务的部署日志,获得部署日志集合,包括:S101:基于用户的部署请求生成部署任务列表;S102:基于所述部署任务列表和初始部署流程,执行所述部署任务列表中包含的待部署任务;S103:记录每个待部署任务的部署过程生成每个待部署任务的部署日志;S104:当部署日志的个数不小于可分析阈值时,则将当前生成的所有部署日志汇总获得部署日志集合。3.根据权利要求2所述的自动化部署方法,其特征在于,S102:基于所述部署任务列表和初始部署流程,执行所述部署任务列表中包含的待部署任务,包括:基于所述部署任务列表中包含的待部署任务在预设软件库中调取待部署源代码;对所述待部署源代码进行编译生成待部署编译文件;基于所述待部署任务确定出待部署主机和依赖环境,基于所述待部署主机和所述依赖环境生成待部署配置文件;将所述待部署编译文件和所述待部署配置文件打包生成待部署文件;基于所述待部署文件执行所述部署任务列表中包含的待部署任务,同时,接收用户输入的实时修改指令。4.根据权利要求3所述的自动化部署方法,其特征在于,基于所述待部署主机和所述依赖环境生成待部署配置文件,包括:基于所述待部署主机和所述依赖环境在配置模板库中匹配出待配置模板,并设置所述配置模板的配置参数;基于参数设置后的待部署模板生成待部署配置文件。5.根据权利要求3所述的自动化部署方法,其特征在于,基于所述待部署文件执行所述部署任务列表中包含的待部署任务,包括:将所述待部署文件解压至所述待部署主机的目标目录,判断所述目标目录中包含的文件是否存在所述待部署文件对应的待部署软件的历史部署文件;若是,则基于所述待部署文件中包含的待部署子文件中的文件属性确定出对应待部署子文件的第一关键字符串列表,基于所述第一关键字符串列表确定出所述待部署文件中的第一关键字符串;确定出所述第一关键字符串的内码,基于所述待部署子文件中包含的所有第一关键字符串的内码计算出内码复杂度表征值,基于所述内码复杂度表征值确定出对应待部署子文
件的第一表征值函数构造方法;确定出所述第一关键字符串在对应待部署子文件中的行序数,基于所述第一表征值函数构造方法和所述第一关键字符串的行序数确定出对应第一关键字符串的第一表征值;将所述待部署子文件中相邻第一关键字符串之间包含的所有字符串排序并划分为所述相邻第一关键字符串中较前第一关键字符串的字符串序列,并将所述待部署子文件中包含的最后一个第一关键字符串之后的所有字符串划分为最后一个第一关键字符串的字符串序列;基于所述第一表征值函数构造方法确定出所述字符串序列中每个字符串的第二表征值,获得第二表征值序列;基于第一表征值对第一关键字符串进行排序,获得第一关键字符串序列,将所述第一关键字符串对应的第二表征值序列作为所述第一关键字符串的行数据,基于所述第一关键字符串序列将对应第一关键字符串的行数据进行排序,获得所述待部署子文件的待部署表征矩阵;确定出所述历史部署文件中历史部署子文件的历史部署表征矩阵,确定出所述历史部署表征矩阵和所述待部署表征矩阵之间的差异矩阵,基于所述差异矩阵中的差异数据对所述待部署表征矩阵进行字符串反向定位,获得差异定位结果,对所述差异定位结果对应的差异字符段和所述差异矩阵中的差异数据进行关联存储,获得存储结果,基于所述存储结果在所述目标目录中进行部署测试;当所述目标目录中包含的文件中不存在所述待部署文件对应的待部署软件的历史部署文件时,则基于所述待部署文件在所述目标目录中进行部署测试;...
【专利技术属性】
技术研发人员:金震,张京日,耿金帅,
申请(专利权)人:北京三维天地科技股份有限公司,
类型:发明
国别省市:
还没有人留言评论。发表了对其他浏览者有用的留言会获得科技券。