大规模组织DevOps实践(第2版)
上QQ阅读APP看本书,新人免费读10天
设备和账号都新为新人

前言

DevOps代表了IT领域最新的发展趋势,传统企业的IT部门在尝试DevOps转型过程中产生各种问题和诸多误区。我们在DevOps领域深耕多年,结合金融、运营商等企业实际问题进行各类探索与实践,提出从流水线设计、自动化、度量等维度进行DevOps体系建设,从而形成企业IT“专业化交付”能力的实践方法,构建全生命周期双模软件自动化生产发布与智能化运维的BTO(Build-Test-Operation,构建-测试-操作)蓝图。

我们将这几年在传统企业落地实施敏捷、DevOps的经验集结成册,并分享给大家,希望能够帮助大家在进行DevOps转型时少走一些弯路。

在本书即将出版之际,我想谈谈这几年从事DevOps领域业务的一些感悟,不管是帮助某运营商企业规划设计DevOps体系,还是在某科技公司作为架构师设计DevOps工具平台,或者是现在所专注的工作——DevOps解决方案咨询和售前,我始终在思考一个问题,如何将先进的DevOps思想和理念成功地引入国内的传统企业。

不管是否敏捷、是否DevOps,始终要解决以下几个核心问题。

1.流程

如何使流程更加精益,以及通过杜绝浪费提高效率。

2.工具

如何利用工具实现流程的自动化改进,使其具有可重复性及可扩展性,同时减少错误发生。

3.平台及环境

如何为从需求到生产上线全过程中各应用的交付流水线搭建更弹性、更灵活、可伸缩、可配置的平台及环境。

4.文化

尤其是如何塑造信任、沟通、协作的文化氛围。

DevOps的实施一定要有业务目标,通常业务线对IT部门的要求包括:快速交付、敏捷、创新、优质、低成本。因此IT部门需要想办法具备以下能力:

❑ 价值交付时间。

❑ 部署速度。

❑ 成本节约/交付时间。

❑ 成本节约/测试时间。

❑ 提高测试覆盖率。

❑ 提高环境利用率。

❑ 最大限度地缩短部署所需的停机时间。

❑ 最大限度地缩短部署所花费的时间。

❑ 尽可能地减少部署应用的回滚。

❑ 提高再现与缺陷修复能力。

❑ 最大限度地缩短产品问题的平均修复时间。

❑ 缩短缺陷周期。

本书分为思想篇、实践方法篇、工具技术篇、案例篇四部分,把传统企业实施DevOps会碰到的困惑,在开发、测试、运维三大领域各有哪些DevOps最佳实践,以及如何结合开源或商业工具打造交付流水线工具链,分别进行了阐述,希望对您在实施DevOps转型过程中实现上述业务目标有所帮助。

本书第1版出版之后,我们一直关注DevOps行业的发展,包括DevOps相关会议的各类议题,发现从前几年的大谈概念为主,到近期大家纷纷聚焦在落地实践方法、工具链的打造、各种探索实验总结、国内外不同行业的实践案例等,这表明DevOps已经开始深入人心,在逐步地帮助企业解决IT过程的各类问题,在走向更高级的发展阶段。

在出版本书的过程中,得到了新维数联(北京)科技有限公司(前身为“天维科技”)的大力支持,书中提炼的很多实践经验及工具平台设计理念来源于该公司的项目交付团队及产品团队。

本书“双模发布管理平台的设计与应用”的内容主要来自该公司的DevOps产品线经理付勇多年的实战经验总结,该公司的产品AutoChain已经处于业界领先地位,尤其是获得了传统金融行业(银行、保险等)客户的认可,知名度比较高,其设计理念值得大家参考借鉴。

本书关于“软件工厂”的先进软件工程思想来源于王杰先生,他是一个能深入思考和洞察软件行业发展趋势及传统IT行业各类问题的人,他一手创办了中国领先的专业金融软件测试服务提供商——北京捷科智诚科技有限公司,提出“软件工厂”思想并创办了隆正互联公司。该公司的负责人吴向东老师也是我非常敬佩的人,在落地实施“软件工厂”的建设方面不遗余力,我也有幸在两位老师的指导下,基于DevOps的理念设计了“软件工厂”的生产流水线。书中不少案例实践经验的总结提炼来源于我们所服务的客户,如中国银行、中信银行、安邦保险、青岛银行等,在此也感谢我们的客户,给予我们这么宝贵的实践机会和项目上的协助,让我们在产品设计和理论方法上都能更上一个台阶。

本书关于软件标准化生产、IT CT化的思想来源于我与福建某运营商高管的交流过程中的领悟,在此表示感谢,获益匪浅;本书关于技术债务的处理实践方法来源于浙江某运营商的项目经验,在此表示感谢,该运营商之前就在业界率先引入敏捷、DevOps思想,并建设了相关的DevOps平台,我有幸参与该平台的建设过程并负责相关规划设计工作,获益匪浅。

本书关于持续集成的部分案例来自深圳某政府单位的研发过程管控项目的实践,在此表示感谢,从这个项目的实践中我们探索了中等规模企业对DevOps的需求与实践方法,提炼出不少有用经验。

本书关于敏捷、规模化敏捷的思考受到北京光环国际教育科技股份有限公司李建昊的启发,其所属公司是国内知名的PMP、敏捷项目培训、咨询服务公司。

本书关于API全生命周期解决方案方面,得到了合作伙伴云流科技(广州)有限公司的支持,作为国内知名的API服务商,其产品已经在众多国内外企业中得到了广泛应用,其先进的文档与测试驱动开发理念已经在多家大型企业得到了验证和认可,感谢EoLink的首席执行官刘昊臻、首席运营官徐超、产品总监梁佳宝等多位老师的支持。

本书关于云原生技术应用相关的内容得到了合作伙伴中移信息技术有限公司的帮助,其磐基PaaS平台基于微服务架构进行设计和开发,并提供操作简便的一键式服务自动化部署、统一配置管理、应用弹性扩缩容、微服务管控、DevOps工具链、资源/服务/容器等多维度综合监控、安全管控等功能,感谢架构师魏宝辉、研发总监周颖、研发总监于顺治等给予的帮助,以及对本书内容提出的宝贵建议!

本书关于持续集成过程中整合性能测试的内容得到了合作伙伴北京臻云科技有限责任公司的帮助,该公司创始人金发华、王凡基于开源的JMeter发展了业界领先的性能测试平台XMeter。

本书关于研发效能度量的内容得到了合作伙伴北京思码逸科技有限公司的帮助,该公司为研发团队提供一站式效能度量分析平台及配套解决方案,感谢咨询总监关钦杰、产品经理张开云、DevOps专家郭铁心几位老师的帮助。

本书关于精准测试的内容得到了合作伙伴苏州三同星云测试的帮助,精准测试所倡导的通过代码覆盖率度量测试充分度、关联测试用例进行精准回归测试的做法与DevOps的协同、自动化理念非常吻合!

本书成书过程中还得到了公司同事的帮助,如付勇、彭菲、陈强、彭伟国、黄凯、李翅展、李雪等,他们在各自的领域都非常资深,包括Scrum、配置管理、自动化测试等,他们在并肩作战的各类项目中提炼总结的经验为书稿提供了素材,在此表示衷心感谢!

陈能技