『高级篇』docker之了解CICD和DevOps(41)

栏目: 编程工具 · 发布时间: 7年前

内容简介:之前已经说了mesos,swarm,k8s都部署了,k8s因为机器的问题,我没做部署,有了微服务和服务编排的基础,我们可以一起了解下CICD和DevOps,之前在中级篇的文章讲过,老铁一起回顾学习下。* 编译失败

之前已经说了mesos,swarm,k8s都部署了,k8s因为机器的问题,我没做部署,有了微服务和服务编排的基础,我们可以一起了解下CICD和DevOps,之前在中级篇的文章讲过,老铁一起回顾学习下。

『高级篇』docker之了解CICD和DevOps(41)

它的产生

* 编译失败

从痛苦中产生,小公司人手少。开发人员每天需要处理bug和开发任务,当到达一个阶段的时候,开发人员我说bug修复可以进行测试了,告诉QA,QA进入内网执行部署的脚本,发布到测试环境,告诉我发布失败了,告诉编译有个错误,报错的代码是其他人写的,需要喊过来其他人,看看谁的问题,很快其中一个人说是他写的忘了提交一个类了, 提交代码后告诉我,我告诉QA好了可以重新发布了,起初一两次大家都忍了,后来发现粗心的老铁经常会发生这个或者那样的错误,都有人少提交类或者少提交一个配置导致内网的发布失败,于是就想了一个办法,找了个专用的服务器,每次提交代码的时候,都会触发一个webhook,将代码重新一遍,如果发现编译错误,都会编译对应的代码提交者,这就是最初的持续集成了。(老司机可能都遇见过,其实这个就是最早的持续集成)

  • 运行时异常

    虽然之前的编译的异常解决了,但是运行时异常又凸显出来了,所以就在这个基础上增加了代码的风格检查,单元测试,覆盖率,加入阿里巴巴编码规范插件啊,这里要吐槽下,据说代码规范都是给外部人看的,内部人都不遵守,其实规范很好,遵守风格统一利于维护,不要挖坑啊老铁。

  • 手动发布

    新项目,要申请资源,申请端口,配置nginx。老项目也不简单,在二线城市也没运维,stop下线服务。

  • 手动部署

    上传代码,重启,验证,上线。其实都是重复性的工作,但是这个工作要非常的消息,万一遇见个傻叉rm -rf ,大家都喝西北风了。

  • 上边的痛点优化

    从细节慢慢的去优化,优化每个环节,为了让流程更顺畅更优雅,这也就是CICD它的由来。

了解CICD和DevOps

CI 是持续集成。CD 是持续部署。

  • CI

在传统软件中,集成基本是项目的收尾阶段,我们花费几周或者数月的时间。持续集成就是把集成提前了,搞到了开发阶段,一边开发一边集成。让构建和测试经常反复的一个过程。持续集成一般是多个开发者,为同一个产品同时编写代码。把代码放到一个源数据库的地方,然后开发人员通过一个CI-server的 工具 进行构建和集成。持续集成首先要求开发者需要自测代码,分别测试各自的代码,保证他们能够正常的工作,测试也成为单元测试,当所有的代码都顺利的测试通过,就认为他们就顺利的集成到一起了。代码的表现也是之前所预计的。好处是使集成不在是一个让人头疼的事情,软件一直在编写集成。在有持续集成之前,软件的开发都是到收尾统一进行的。并不知道它要耗时多久,CI就是让我们的集成融入我们日常的工作中。

『高级篇』docker之了解CICD和DevOps(41)

  • CD

持续部署是建立在持续集成之上的,持续部署就是开发人员在开发和测试代码的时候,同时也在其他环境进行测试这段代码。通常将不同的环境下的部署,叫做部署流水线。我们公司的部署流水线:开发环境,测试环境,准生产环境,生产环境。根据不同的公司,不同的产品,不同的团队而变化,所有的代码会经过前一个测试,才会进入下一个流水线中。通过这种方式,开发人员提交代码后,都是自动的完成的。这个过程叫持续部署。

『高级篇』docker之了解CICD和DevOps(41)

  • DevOps

更好的去优化开发,运维,测试的流程。使开发和运维通过高度自动化的工具,来使得的软件发布和构建更加的快捷频繁可靠。Devops其实是CICD思想的延伸,如果没有CICD其实DevOps就是空中楼阁,没有一点意义,CICD为基础优化开发和运维测试的所有环节。DevOps包含的东西很多,落地方案也是五花八门。

PS:CICD和DevOps有了进一步的认识,下次开始针对CICD做个环境跑跑实践一下。

>>原创文章,欢迎转载。转载请注明:转载自,谢谢!>>原文链接地址:上一篇:

已是最新文章


以上就是本文的全部内容,希望本文的内容对大家的学习或者工作能带来一定的帮助,也希望大家多多支持 码农网

查看所有标签

本站部分资源来源于网络,本站转载出于传递更多信息之目的,版权归原作者或者来源机构所有,如转载稿涉及版权问题,请联系我们

Building Websites with Joomla!

Building Websites with Joomla!

H Graf / Packt Publishing / 2006-01-20 / USD 44.99

This book is a fast paced tutorial to creating a website using Joomla!. If you've never used Joomla!, or even any web content management system before, then this book will walk you through each step i......一起来看看 《Building Websites with Joomla!》 这本书的介绍吧!

JSON 在线解析
JSON 在线解析

在线 JSON 格式化工具

在线进制转换器
在线进制转换器

各进制数互转换器

随机密码生成器
随机密码生成器

多种字符组合密码