Linux-----------DevOps

一、devops简介

devops是开发和运维的组合,其目的在于缩短系统开发的生命周期,在这过程中发布特性、修复bug以及更新均被紧密的结合。
devops是一组针对企业研发人员、运维人员和测试人员在应用开发、部署和测试整条生命周期中写作和沟通的最佳实践,devops强调整个组织的合作以及交付和基础设施变更的自动化,从而实现持续集成、持续部署和持续持续交付。
devops 四大平台:代码托管(gitlab/svn)、项目管理(jira/禅道)、运维平台(腾讯蓝鲸/CMDB开源平台)、持续交付(Jenkins/gitlab)

1.1 什么是devops

Dev(研发) :开发流程高效、稳定、快速、交付结果可预期
Ops(运维) :容器监控、自动化运维、降低运维成本
QA(质量) :持续进行自动化测试。提升交付质量
DevOps :研发运维一体化,持续集成,持续交付

1.2 为什么要推广devops

产品流水线
计划--需求--设计--开发--部署--运营--终止
敏捷管理---持续交付---IT服务管理
精益管理

1.3 传统技术团队

有问题都找运维

1.4 devops技术团队

devops流程包括:plan(计划)--code(开发)--build(构建)--test(内部测试)--release(发布)--deploy(部署)--operate(运营)--monitor(监控及优化),这是一个循环的过程。devops是依托容器、自动化、云计算等技术及精益化管理形成的一种项目过程,有效的促进了开发、测试、运营、运维、QA等团队间的协作,使得团队内、跨团队之间的协作得到极大的提升,可以帮助企业做到产品精益化、运营精益化、管理精益化。
  从项目的全生命周期来看,DevOps实现了项目全生命周期的团队高效协作、自动化。DevOps的职责包括:开发和运维的紧密协作、测试和运维的自动化、产品持续交付、持续集成。例如DevOps打通了开发和运维之间的隔阂,加之紫定华运维的出现,大大提高了系统部署的稳定性和安全性。
  当团队甚至公司之间践行DevOps理念并且团队成员都能有DevOps的思维时,才能真正做到敏捷。

1.5 什么是持续集成

持续集成是多名开发者在开发不同功能代码的过程当中,可以频繁的将代码行合并到一起且不相互影响工作。

1.6 什么是持续部署

是基于某种工具或平台实现代码自动化的构建、测试和部署到线上环境以实现交付高质量的产品,持续部署在某种程度上代表了一个开发团队的更新迭代速率。

1.7 什么是持续交付

持续交付是在持续部署的基础之上,将产品交付到线上环境,因此持续交付是产品价值的一种交付,是产品价值的一种盈利的实现。

1.8 devops流程的程序体现

plan(禅道、gitlab)、code(git)、build(maven)、test(selenium)、release(Jenkins)、deploy(ansible)、operation(elk)、monitor(zabbix)

1.9 常见的部署方式

开发自己上场----最原始的方案
开发给运维手动上传--运维自己部署
运维使用脚本复制---半自动化
结合web界面一键部署(Jenkins)---自动化

posted @ 2020-03-27 15:12  A学无止境A  阅读(568)  评论(0编辑  收藏  举报