CODING DevOps 系列第三课:云计算、云原生模式下 DevOps 的建设

本文首先会和你们分享当前整个应用生命周期的演变历程,而后讲解云计算模式下 DevOps 建设包含的过程、流程规范和标准,最后讲解云原生时代到来会带来哪些改变,以及标准化的建设会有哪些改变和突破。数据库

应用的演变历程

企业数字化转型过程和云的迭代发展是相互做用的。在 2007 年以前主要用物理机来做为咱们当前应用的载体。而在 2007 年,KVM 诞生,它能让底层操做系统和一些虚拟的网络设备作一些虚拟化的输出。2007 年 - 2010 年是虚拟化发展较好的周期,VMware 和 openstack 是当时的表明生态。到了 2013 年 Docker 开服,云计算迎来了蓬勃发展的周期。2014 年,企业的部分业务开始逐步迁移云上。2017 年后到今天为止,在云原生的模式下,开发人员或者整个 it 部门更聚焦在业务的发展上,全部咱们不关心的部分能够所有由云来管理。云开发没必要关心开发在哪里,云服务不关心调用到哪里,而云资源方面也不用关心运行到了哪里。这就是从基础设施上云到业务上云,再到当前的全栈云,这样的一条全企业数字化转型之路。安全

在物理机阶段,使用的是单体架构,这样的架构系统封闭、没法复用,且高度耦合,内部交互复杂。而在第二阶段,采用了面向服务的 SOA 架构,这种架构一般须要 ESB 进行系统集成,进行应用模块解耦,须要统一部署。可是这种架构一般须要较大规模的团队,且可能存在职责割裂。第三阶段是当前使用的比较多的微服务架构,它能充分利用 DevOps,彻底解耦能充分利用云化资源自动弹性伸缩等特性,支持高可用,能升级、扩容但不中断业务。网络

这张图片能较好的展现应用的生命周期管理,以应用为中心,在应用之上是基础资源管理层面,这个层面能够管理应用对应的资产、环境、资源、流水线、部署和监控,这是以基础资源为核心思想下 DevOps 的建设方向。随着愈来愈云化和微服务化,咱们关注的视角从基础资源逐步转成服务思想。架构

1.jpg

云计算模式下的 DevOps

在物理机时代,随着业务的发展,可能会出现基础设施增加,软件复杂度提高,流量冲击和更新频率变高这些问题。基础设施增加和软件复杂程度提高会给运维带来压力,流量冲击要求运维的测试要有多样的变化,更高的更新频率要求研发人员的快速反馈以及更灵活的需求变动。运维

在这样的状况下,DevOps 建设迫在眉睫,企业须要提高应用交付的效率和质量,须要愈来愈多样化的应用部署方式。DevOps 建设要首先要作的是敏捷的建设,所以须要更灵活的需求管理工具,在整个应用交付阶段须要自动化构建和环境快速管理。而后在测试的阶段,咱们须要作自动化测试,才能在流程中管控好质量,另外还须要有一个统一的制品管理。从软件开发到应用交付之间,须要有一套统一的制品库将全部的制品进行统一纳管,基于统一的制品能够进行智能化的验收测试。在这整个阶段,核心准则是版本控制一切,内建质量、自动化,过程度量。微服务

这个图片是端到端的 DevOps 能力图谱,建设的重点在图谱下方的持续交付工具链。咱们须要采起统一的代码管理工具,帮助咱们自动化的提高代码的质量。在安全方面,咱们也会运用安全扫描工具集成到流程中,让它进行自动编译。另外,在持续部署阶段,要作好数据库的发布,对不一样版本的接口作好管理,并结合一些好的自动化的工具作自动化测试。这些功能点须要一个交付部署流水线串连起来。工具

2.jpg

咱们能够看到,在端到端的能力中会有不少步骤,也须要很是多的工具去执行,如何将这些工具进行很好的串连呢?在企业生产过程当中,核心目标有三项:效率、质量和成本,所以能够沿用制造业的流水线来帮助咱们快速的生产软件。流水线中咱们须要关注 4 项指标:发布频率、变动时长、服务恢复时长和变动失败率。测试

3.jpg

云原生带来的改变

云原生是一个复杂的东西,它包含开发过程、应用依赖、编排管理、流程管理、数据分析以及很是多的组件。在云计算的模式下,咱们能够作到快速交付应用、成果快速发布,可是咱们交付的产品是否能给业务带来增加,知足客户的须要呢?这就涉及到如何将应用交付转变为价值交付。经过可靠、可重复的流水线,快速进行软件生产,提高应用效率和软件交付效率,这就是应用交付。而价值交付是指可以快速地响应市场变化,在客户需求不肯定的状况下,生产出客户满意的软件。云计算

如何实现价值交付?要基于可靠可重复的流水线,简历自动化的应用交付体系。将敏捷过程全面融入到 DevOps 体系中。架构全面微服务转型,基础设施云化,让开发专一于业务开发。将运营归入到 DevOps 范畴,实现数字化运营。操作系统

4.jpg

点击观看课程完整视频。

相关文章
相关标签/搜索