Ch02 DevOps工具
有一些工具可以帮助团队采用DevOps技术。本章介绍这些工具,在本书后面,将用实操示例更详细地介绍这些工具。服务器
2.1为成功而组织:看板
- 若是运营团队老是专一于堆积如山的指派任务,他们什么时候才有时间改善系统,偿还技术债务呢?咱们如何正确排定工做的优先级,考虑任务之间的依赖性?
- 看板(Kanban,字面翻译为“标记卡片”)系统有助于解决这些问题,以及其余的一些问题。这种方法是Taiichi Ohno在开发丰田制造系统时为了实现即时(JIT)生产目标而开发的,它经过检查制造过程不一样步骤的流程,识别须要补救的瓶颈,使系统更加高效。具体的思路是,缓解瓶颈,就会将工做任务从在途状态带到完成状态。限制在途工做能够为工做者带来空闲时间,对制造过程进行改进(例如,在缓解旧瓶颈的同时识别和消除新瓶颈)。
- 在成功地改变工做方式以前,咱们必须用一种条理性的方法来安排工做、识别系统中的问题。
- 看板系统最重要的特征是工做过程管理。
- 技术负债是在计划好的工做期间,因为错误或者效率低下形成的全部计划外工做。
- 看板的另外一个重要特征是工做流自始至终的可视化。最流行的展现方式是看板图,它能够采用物理或数字形式。
- 看板图的思路是每一个任务由一张索引卡或即时贴表示,在看板图左侧的“积压工做”(Backlog)分类下排队。“积压工做”和“完成”(Done)之间的栏目表明在途工做(WIP: Work In Progress)。
2.2服务器部署
- VMware发布了Auto Deploy,对vSphere服务器的部署有很大的帮助。
- Red Hat 开发了CloudForms,该系统包括多平台的服务器部署、配置管理(可与Chef和Puppet集成)、服务器生命期管理等。
- Michael DeHaan开发了Cobbler
- Nick Weaver推出了Razor
- Crowbar
- Foreman
2.3配置管理
- 配置管理(CM)技术能够显著地改善金映像构建和生产系统部署的速度和可靠性。当你把服务器配置当成软件看待,就能够利用Git等源代码管理系统跟踪环境变化。
- CM技术还能够用于配给与生产服务器的配置彻底相符的一致开发环境。
- 本书介绍的CM技术—Puppet(Ch04-Ch06)、Chef(Ch07-Ch09)和PowerShell DSC(Ch12-Ch13)是描述性语言,你能够描述配给资源的预期状态,而不用担忧工做是如何完成的。
- 配置管理的好处能够经过使用Ansible(Ch10-Ch11)、Fabric、MCollective等编排系统大规模实现,这些系统用命令式的风格描述环境状态。编排框架容许配置管理在多个系统上以受控方式并行执行。
2.4持续集成
Jenkins和相似的解决方案可能显著地节省开发和运营团队的时间。对于开发团队,若是编写了好的单元测试,它能够在代码移交给QA以前及早识别缺陷,对于运营团队,可以更加确保他们不会在预演阶段以前遇到未经验证的代码。框架
2.5日至分析
- 系统的成功必须是可计量的。验证系统稳定性的最佳手段是什么?观察日志!
- VMware vRealize Log Insight
- Splunk
- Logstash。它能与Elasticsearch(Ch17)、Graphite以及DevOps社区中流行的其余工具相结合。
2.6小结
如今咱们已经简单地概述了DevOps从业者可用的工具,第3章将聚焦于如何构建一个测试环境,以便跟踪本书其他部分介绍的工做流。工具