Devops流程| 青训营笔记

79 阅读2分钟

这是我参与 第三届青训营-后端场 笔记创作活动的第4篇笔记

流程

定义

DevOps(Development和Operations的组合词)是一组过程、方法与系统的统称,用于促进开发)

它是一种重视“软件开发人员(Dev)”和“IT运维技术人员(Ops)”之间沟通合作的文化、运动或惯例。透过自动化“软件交付”和“架构变更”的流程,来使得构建、测试、发布软件能够更加地快捷、频繁和可靠。

原则

  1. 端到端责任
  2. 持续改进:
  3. 自动化一切
  4. 以客户为中心的行动
  5. 监视和测试所有内容
  6. 作为一个团队工作

过程分析

code

  1. git
  2. svn

代码推送

store

项目开发编写代码,然后把代码推送到 GitLab 里存储,通过 GitLab 的 hook 使 Jenkins 执行一些 CI 的过程,比如做一些单元测试,构建 Docker image

  1. gitlab
  2. github
  3. gitee

质量分析

1.Sonarqube

  • 它是市场上最受欢迎的代码质量和安全性分析工具。

jenkins

  • 用于监控持续重复的工作,包括:持续的软件版本发布/测试项目,监控外部调用执行的工作。

CI

  1. Docker
  • 可以让开发者打包他们的应用以及依赖包到一个轻量级、可移植的容器中,然后发布到任何流行的 Linux 机器上,也可以实现虚拟化。

CD

  1. 真实的服务器

总结

  • 将完成的代码快速交付到生产环境;
  • 最小的生产故障;
  • 从故障中立即恢复。
  • 缺点:DevOps需要一个工具链。虽然许多工具都是开源的,但想要建立DevOps文化的组织在起步时将面临成本和挑战。