DevOps(Development和Operations的组合词)的定义
是一种重视“软件开发人员(Dev)”和“IT运维技术人员(Ops)”之间沟通合作的文化、运动或惯例。透过自动化“软件交付”和“架构变更”的流程,来使得构建、测试、发布软件能够更加地快捷、频繁和可靠。
Devops概念的提出
1.单体架构+瀑布模式
单体应用架构,只有 DEV 没有 OPS,DEV 就是全栈,项目开发好,找台服务器安装好环境,开启服务就可.
2.分布式架构+敏捷开发模式
涉及到多人协同开发,多人多机器模式.需要专门的运维介入.但是这个时候也不是 DEVOPS,而是 DEV+OPS,这时 Ops 的主要职责就是:硬件维护、网络设备维护、DBA 、基础服务维护、数据监控等,运维们擅长写各种部署,监控脚本,减少机械的重复工作,开发模式变成了敏捷开发模式。加入运维,就要协调人员配合.
3.微服务架构+DEVOPS
微服务的定义:软件架构风格,小型功能区块,模块化,语言无关。
运维需要做的事情,慢慢的都沉淀到了各个平台上面,例如监控,有专门的监控组件和可视化,基础服务例如服务器,CDN,负载均衡等基础服务可以外包到云服务厂商,日志也有专门的日志工具,链路追踪也有专门的组件和可视化,还有网关等,渐渐的,只要这些都配置好了,开发也可以做运维的部分工作,毕竟开发才是最了解代码的人,哪里出了问题看看监控日志,可以最快速度定位到问题,于是DEVOPS开发模式诞生了,开发也是运维。
DevOps 的深度理解
公式:DevOps=人+流程+平台
DevOps 包括人、流程和平台三个方面,强调协作、自动化、精益、反馈等原则,需要组织文化和基础设施的支持。
DevOps 的相关工具
DevOps 实施过程中常用的工具,包括项目管理、代码管理、持续集成、镜像仓库、容器、服务治理、日志、监控等。
DevOps 的意义
通过 DevOps 可以加快软件交付速度,满足业务快速迭代的需求。它需要敏捷的基础设施支持,云计算在这方面具有优势。