《凤凰项目 一个 IT 运维的传奇故事》
《凤凰项目 一个 IT 运维的传奇故事》
这本书虽然讲的是以前的部门工作模式,但是其中一些内容还是非常值得学习的,比如说如何创建快速工作流,关于三步工作法,关于计划外工作,关于对 IT 部门的认知。这些内容都以一本小说的角度,在小说经历的事情中给出启示。小说揭示了管理现代 IT 组织与管理传统工厂的共通之处,让读者不仅能对如何管理 IT 组织心领神会,更重要的是将以完全不同于以往的视角来看待自己的工作环境。
这本书讲的什么:主题
书中核心观点:IT 不只是一个部门。相反,它就像电力一样无处不在。
快捷交付,敏捷开发,三步工作法
- 第一步是建立起工作流,建立起看板,不只是让原来不可见的工作变得可见,更重要的是,它让每个部门负责的对象发生了变化。从他们各自独立的目标,变成了改善整个工作流。
- 第二步其实有两方面,反馈和改善,反馈是对上游的反馈,改善是对下游的改善。
- 第三步,建立起持续学习的文化。也就是说如果出现了问题,针对问题的改善,个人的认真和努力肯定是需要的,但是更重要的是从系统进行解决。
作者细部说了什么?怎么说的:找出作者的观点、声明和论点
本文要回答的几个问题如下:
- 过往 IT 方法的问题
- DevOps 是如何解决的?
- 书中核心的 DevOps 三步法指的是什么?
名词解释:
- 前置时间:把产品从原材料生产为成品的过程所需要的时间。在软件领域代表从需求产生到最终发布到生产环境的时间
- 技术价值流:把业务构想转化为向客户交付价值的、由技术驱动的服务所需要的流程
过往 IT 方法的问题
我们总是承诺一有时间就改进那些系统,但这一天永远也不会到来
传统企业的恶性循环:
- 技术债产生在业务前期,我们可以确保我们的服务在线上稳定的运行,尽管它还存在很多问题,但是我们有计划将他们修复
- 技术债累加,某个很重要的客户有一个大需求,需要我们倾尽全力去交付,我们的技术人员忽视了之前的计划与排期,全身心的投入到了新需求的研发中,并在以往技术债未解决的情况下产生了许多新的技术债
- 技术债爆发所有人越来越忙,就像本书开始那样,每一次改动都可能引发未知的故障,新手不敢变更,因为他们不了解系统。老手不敢变更,因为他们太了解系统。
DevOps 如何解决的?
DevOps 目标:(小步试错,快速迭代)拥有一个快速交付的流水线,可以快速的交付需求,并同时保证系统的稳定性以及安全性
- 开发在开发环境独立的实现功能
- 并在测试环境(与生产环境一致)中自动化测试
- 新的代码可靠的发布到线上,并且对于客户是无感知的
- 黑启动,先将新功能发布到线上,但启动开关只给内部用户或者部分外部客户开放,回滚只需要改动一个配置
- 每次发布规模小,发布成本低
- 保证团队完整性,每个人都要对自己的代码负责,并编写可靠的单元测试
- 强化学习文化,从失败中吸取教训,进行充分的事后分析,并不是针对出错的人
- 通过故障演练来验证服务可用性以及预案可操作性
DevOps 对于业务的价值是什么?
- 增加的发布频率:增加发布的频率可以使得我们比竞争对手更快的对市场做出反应,新功能的上线时间远远低于对手,从效率和成本上大幅度领先对手
- 增加服务可靠性:通过自动化的测试,生产环境、测试环境一致性保证将变更导致的故障尽可能的在投入生产环境之前被发现,使得我们的服务稳定性增加,在故障发生后能快速的回滚我们的代码降低损失,平均恢复时间同步降低
- 生产力、市值提高:通过上述两个优势我们获得了更多的客户,卖出了更多的产品,直接影响到了我们的营业额和公司市值
书中核心的 DevOps 三步法指的是什么?
- 第一步:流动原则:建立从开发到运维之间快速的、平滑的、能向客户交付价值的工作流》目标:在缩短代码从变更到生产环境上线所需时间的同时,提高服务的质量和可靠性。提升技术价值流的流动性对实施 DevOps 来说至关重要。为此,我们需要是将这些浪费和困境(任何需要填坑侠的场合)都可视化,并系统地进行改进,减轻或消除这些负担,从而实现快速流动的目标
- 工作流程可视化
- 限制半成品(工作队列)
- 减少每次变更的内容
- 减少交接
- 不断改进瓶颈点:在任何价值流中,总是有一个流动方向、一个约束点,任何不针对此约束点而做的优化都是假象。
- 消除价值流传递中的资源浪费
- 反馈原则:在整个价值流和组织中建立快速、频繁、高质量的信息流,包括反馈和前馈回路,可以让系统更安全。并在不断从失败和事故中学习,增加系统的反脆弱性。及时的发现问题,并快速解决从长远的视角来看会节省我们大量的时间,而从输入和输出上控制质量,做到标准化操作,可以大幅度提升我们的工作效率
- 及时发现问题
- 及时战胜问题,而不是拖延
- 在源头保证质量
- 保证输出产品的质量
- 持续学习与实验原则
- 建立学习性的组织与文化
- 通过制度来改进日常工作
- 知识共享
- 领导层强化学习
作者讲的和我有什么关系:关联性
对于 IT 部门的认知,以及工作流的认知。
- 在瓶颈外的任何改进都是无效的
- 本书以小说的形式给我们讲述了 DevOps 在企业中是如何应用的,更是从一个高层的视角来总览全局,相信这是一本对于每一位 IT 人员都应该去阅读的书,本书给我最大的震撼就是我们在向传统行业学习工作方法。一直以来我们以高科技、创新者、颠覆者自居,看不起传统行业,殊不知传统行业发展了这么多年我们所遇到的困境、难题他们早就有了非常完备的解决方案。
本博客所有文章除特别声明外,均采用 CC BY-NC-SA 4.0 许可协议。转载请注明来自 Thatched house!