System.ArgumentOutOfRangeException: 索引和长度必须引用该字符串内的位置。 参数名: length 在 System.String.Substring(Int32 startIndex, Int32 length) 在 zhuanliShow.Bind() 一种基于K8S的软件动态测试环境管理系统及方法技术方案_技高网

一种基于K8S的软件动态测试环境管理系统及方法技术方案

技术编号:40382803 阅读:5 留言:0更新日期:2024-02-20 22:19
本发明专利技术涉及环境部署技术领域,公开一种基于K8S的软件动态测试环境管理系统及方法,包括对各个微服务的K8S公共配置以及部署文件进行预先定义,并将K8S公共配置与部署文件进行关联;构建对应的各个微服务,并将定义的对应的微服务所对应的部署文件按照不同的K8S集群打包发送给Nexus仓库中该微服务的文件夹下,所述文件名为该微服务的版本号;获取当前环境名、当前集群名、期望部署的当前服务名以及对应的当前版本号;根据获取到的当前服务名以及对应的当前版本号,在Nexus仓库上找到对应的部署文件以及其所关联的公共配置,并根据匹配的部署文件以及公共配置,在对应的K8S集群进行部署;接收K8S部署结果,判断部署是否成功,并根据判断结果进行对应的显示。

【技术实现步骤摘要】

本专利技术涉及环境部署,具体涉及一种基于k8s的软件动态测试环境管理系统及方法。


技术介绍

1、目前越来越多的科技公司使用k8s来进行软件环境的部署与管理。

2、对软件人员来说,k8s学习成本比较高,部署文件、网络、存储、配置等管理更加复杂,在搭建产品环境的时候会拉长软件的迭代时间,也很难区分环境问题与产品问题,这就是使得操作人员在进行软件环境的部署和管理时,需要大量的学习时间以及部署时间,极大提高了测试环境管理的成本。


技术实现思路

1、本专利技术的目的之一在于提供一种基于k8s的软件动态测试环境管理系统及方法,能够降低测试环境管理的成本,极大缩短测试环境部署时间。

2、为了达到上述目的,提供了一种基于k8s的软件动态测试环境管理方法,包括以下步骤:

3、s1、对各个微服务所对应的k8s公共配置以及部署文件进行预先定义,并将k8s公共配置与部署文件进行关联;所述k8s公共配置包括服务配置、网络配置、存储配置、第三方依赖存储;

4、s2、构建对应的各个微服务,并将定义的对应的微服务所对应的部署文件按照不同的k8s集群打包发送给nexus仓库中该微服务的文件夹下,所述文件名为该微服务的版本号;

5、s3、获取当前数据,所述当前数据包括当前环境名、当前集群名、期望部署的当前服务名以及对应的当前版本号;

6、s4、根据获取到的当前服务名以及对应的当前版本号,在nexus仓库上找到对应的部署文件以及其所关联的公共配置,并根据匹配出来的部署文件以及公共配置,在对应的k8s集群进行部署;

7、s5、接收对应的k8s部署结果,判断部署是否成功,并根据判断结果进行对应的显示。

8、本方案的原理及有益效果:在本方案中,首先就是一开始进行k8s公共配置以及对应的部署文件的预先定义,通过预先约定的方式实现对各个微服务所对应的环境条件的提前设定,为后续快速的实现对应的环境条件的确定提供了较大的帮助。之后就进行各个微服务的构建,同时将定义好的各个微服务所对应的部署文件按照不同的k8s集群打包发送给nexus仓库中对应的微服务的文件夹下,其中文件名为对应的微服务的版本号。

9、在完成上述步骤之后,获取对应的当前数据,其中当前数据包括当前环境名、当前集群名、期望部署的当前服务名以及对应的当前版本号;利用当前数据中所涉及到的当前服务名以及当前版本号,就能在nexus仓库上快速定位到满足当前服务名以及当前版本号条件的对应的当前微服务部署所需要的部署文件以及公共配置,实现对测试环境的前期数据的快速匹配,极大提高了后续在k8s集群中进行部署的效率,能够降低测试环境管理的成本,极大缩短测试环境部署时间。

10、进一步,所述s4包括以下步骤:

11、s40、根据获取到的当前服务名以及当前版本号,在nexus仓库上进行对应的服务名和版本号的识别和判断,判断出在nexus仓库中是否存在与当前服务名和当前版本号均相同的服务名和版本号;

12、s41、若判断结果为是,则匹配出该版本号所对应的部署文件,并将部署文件所关联的公共配置进行调取,并根据匹配出来的部署文件和公共配置,在对应的k8s集群进行部署;

13、s42、若判断结果为否,则对当前数据进行记录,并保持到记录数据库中,然后生成对应的匹配失败提醒发送给操作人员。

14、有益效果:在本方案中,

15、进一步,所述s42还包括:

16、在判断结果为否时,依次对当前服务名和当前版本号进行匹配结果的生成,确定当前服务名和当前版本号在nexus仓库中的匹配情况,并根据该匹配结果,生成能匹配成功的当前组合信息,所述组合信息包括新的服务名和新的版本号,并发送给操作人员进行当前组合信息的确定;

17、接收操作人员的反馈信息,若反馈信息为当前组合信息为可行的,则执行s40。

18、有益效果:在本方案中,在对应的当前服务名和当前版本号不匹配的时候,就会对其匹配结果进行依次生成,例如对应的匹配结果为当前服务名匹配不到,当前版本号所对应的版本在服务名为a中存在,那么就可以尝试在符合当前版本号的版本的服务名下进行部署文件的获取,又或者在当前服务名匹配出来了,但是对应的当前版本号无法匹配到,那么也可以尝试基于该当前服务名下的版本号下进行部署文件的获取,这些当前组合信息都需要操作人员来进行确定,是否进行,如果不进行则操作人员可以重新进行当前数据的获取,这样也就能够给予操作人员更加多元化的选择。

19、进一步,所述s3和s4之间还包括:

20、在获取到当前数据后,基于记录数据库中所记录的数据,判断当前服务名和当前版本号是否能够与记录数据库中所记录的数据相匹配,若是,则判断当前数据存在错误,并向操作人员发送错误提醒信息,并根据匹配结果生成对应的修改方案。

21、有益效果:在对当前数据进行获取之后第一时间进行当前数据与记录数据库中的数据进行匹配从而实现对当前数据的初步筛选,进而极大提高后续部署成功的准确度。

22、进一步,所述服务配置、网络配置、存储配置、第三方依赖存储均存储在产品infra仓库中。

23、有益效果:在本方案中,将服务配置、网络配置、存储配置、第三方依赖存储均存储在产品infra仓库中,可以确保不同的微服务都能够使用相同的配置,极大提高了系统的一致性。

24、一种基于k8s的软件动态测试环境管理系统,应用上述权利要求1-5任一项所述的基于k8s的软件动态测试环境管理方法的步骤。

本文档来自技高网...

【技术保护点】

1.一种基于K8S的软件动态测试环境管理方法,其特征在于:包括以下步骤:

2.根据权利要求1所述的一种基于K8S的软件动态测试环境管理方法,其特征在于:所述S4包括以下步骤:

3.根据权利要求2所述的一种基于K8S的软件动态测试环境管理方法,其特征在于:所述S42还包括:

4.根据权利要求3所述的一种基于K8S的软件动态测试环境管理方法,其特征在于:所述S3和S4之间还包括:

5.根据权利要求4所述的一种基于K8S的软件动态测试环境管理方法,其特征在于:所述服务配置、网络配置、存储配置、第三方依赖存储均存储在产品infra仓库中。

6.一种基于K8S的软件动态测试环境管理系统,其特征在于:应用上述权利要求1-5任一项所述的基于K8S的软件动态测试环境管理方法的步骤。

【技术特征摘要】

1.一种基于k8s的软件动态测试环境管理方法,其特征在于:包括以下步骤:

2.根据权利要求1所述的一种基于k8s的软件动态测试环境管理方法,其特征在于:所述s4包括以下步骤:

3.根据权利要求2所述的一种基于k8s的软件动态测试环境管理方法,其特征在于:所述s42还包括:

4.根据权利要求3所述的一种基于k8s的软件动态测试环境管...

【专利技术属性】
技术研发人员:殷鸿伟王皓苏迪莫彬赵瑜
申请(专利权)人:盛宝金融科技有限公司
类型:发明
国别省市:

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

1