[发明专利]基于Kubernetes的持续集成与部署的方法和系统在审
申请号: | 201810849147.6 | 申请日: | 2018-07-28 |
公开(公告)号: | CN109032645A | 公开(公告)日: | 2018-12-18 |
发明(设计)人: | 曹冉;武强 | 申请(专利权)人: | 烽火云科技有限公司 |
主分类号: | G06F8/65 | 分类号: | G06F8/65;G06F11/36 |
代理公司: | 南京中律知识产权代理事务所(普通合伙) 32341 | 代理人: | 沈振涛 |
地址: | 210000 江苏省*** | 国省代码: | 江苏;32 |
权利要求书: | 查看更多 | 说明书: | 查看更多 |
摘要: | |||
搜索关键词: | 源代码文件 测试节点 服务部署 功能测试 测试 验证 测试任务分配 部署 测试通过 生成容器 升级策略 响应 推送 创建 | ||
本发明提供一种基于Kubernetes的持续集成与部署的方法和系统,所述方法包括:S1:响应于接收到任意一个功能模块,对其所对应的源代码文件进行验证,如果源代码文件通过验证,生成一测试任务;S2:创建一测试节点,将所述测试任务分配至该测试节点以对所述源代码文件进行功能测试;S3:响应于所述测试任务对应的源代码文件通过功能测试,针对该源代码文件所对应的功能模块生成至少一个容器镜像,根据预定的部署策略以将该功能模块推送至Kubernetes平台进行服务部署。本发明能够自动对功能模块的源代码文件进行测试,测试通过后生成容器镜像,并推送到Kubernetes平台之上按照预定的升级策略进行服务部署。
技术领域
本发明涉及软件开发领域,属于一种基于Kubernetes的持续集成与部署的方法和系统。
背景技术
Kubernetes是一种容器编排引擎,是Google多年大规模容器管理技术的开源版本,可以帮助用户轻松管理集群,自动分发和调度容器应用程序。
持续集成与持续部署(CICD)是当前比较流行的软件开发流程。CICD与DevOps理念相结合,能够让软件在短周期内产出,确保软件随时可以被可靠地发布。
目前一套完整的CICD系统包含众多的服务,如果每个服务都手工进行安装和配置,则部署起来较复杂,需要时间较长,同时,部署至平台的服务程序受节点状态影响较大,容易发生故障。
发明内容
本发明的目的在于提供一种基于Kubernetes的持续集成与部署的方法和系统,能够对需要部署的功能模块所对应的源代码文件进行测试,如果该功能模块的源代码文件通过测试,生成至少一个与之相对应的容器镜像,并推送到Kubernetes平台之上按照预定的升级策略进行服务部署,以上过程全部为自动执行,极大地提高了软件开发以及软件部署的速度和效率。
为达到上述目的,本发明提供如下技术方案:
一种基于Kubernetes的持续集成与部署方法,所述方法包括:
S1:响应于接收到任意一个功能模块,对其所对应的源代码文件进行验证,如果源代码文件通过验证,生成一测试任务;
S2:创建一测试节点,将所述测试任务分配至该测试节点以对所述源代码文件进行功能测试;
S3:响应于所述测试任务对应的源代码文件通过功能测试,针对该源代码文件所对应的功能模块生成至少一个容器镜像,根据预定的部署策略以将该功能模块推送至Kubernetes平台进行服务部署。
进一步的,所述方法还包括:
响应于任意一个测试任务完成,删除与该测试任务对应的测试节点。
进一步的,所述预定的部署策略是指,
将通过测试的功能模块冗余地部署在Kubernetes平台上。
进一步的,所述预定的部署策略是指,
将通过测试的功能服务部署在Kubernetes平台的至少一个服务节点上;
所述至少一个服务节点属性相同。
进一步的,所述预定的部署策略是指,
采用helm引擎以进行功能模块的部署。
进一步的,所述方法还包括:
提供一用以对验证未通过的功能模块的源代码文件进行记录和追踪的问题跟踪模块,S1中,如果源代码文件未通过验证,将该源代码文件发送至该问题跟踪模块。
进一步的,所述方法还包括:
该专利技术资料仅供研究查看技术是否侵权等信息,商用须获得专利权人授权。该专利全部权利属于烽火云科技有限公司,未经烽火云科技有限公司许可,擅自商用是侵权行为。如果您想购买此专利、获得商业授权和技术合作,请联系【客服】
本文链接:http://www.vipzhuanli.com/pat/books/201810849147.6/2.html,转载请声明来源钻瓜专利网。