ToB产品DevOps实践(一)

233 阅读2分钟

持续创作,加速成长!这是我参与「掘金日新计划 · 6 月更文挑战」的第13天,点击查看活动详情

提要

  • 持续集成、持续交付与持续部署
  • 持续部署面临的挑战
  • 当DevOps碰到了微服务
  • 安利一种部署方式——ISO
  • ToB产品测试与交付的最佳实践

 

一 持续集成、持续交付与持续部署

1 基本概念

  • 持续集成强调开发人员提交了新代码之后,立刻进行构建、 「单元」测试。根据测试结果,我们可以确定新代码和原有代码能否正确地集成在一起;
  • 持续交付在持续集成的基础上,将集成后的代码部署到更贴近真实运行环境的「stage环境」中。如果代码没有问题,可以继续部署到生产环境中;
  • 持续部署则是在持续交付的基础上,把部署到生产环境的过程自动化。

 

2 根据这样的概念看一下某产品的的发布流程

a A产品的发布流程

image.png

数据产品利用jenkins实现发布的自动化。首先将通过ci的代码pull到类似于stage环境的dev服务器进行部署测试,通过后再将jar包拷贝到产线部署运行。按照上述概念,A产品已经做到了持续交付。

b B产品的发布流程

0907ff6121f344b2af869a4d5defed68_tplv-k3u1fbpfcp-watermark.png

B产品的测试比较复杂,图中省略了代码修复的步骤。

目前看来B产品已经在很努力在做持续交付,但是涉及到的模块众多,运行环境复杂,很难做到持续部署。

这里似乎需要把持续交付和持续部署单独拿出来说一下