第1章 认识DevOps 1
1-1 DevOps出现的背景 2
1-1-1 DevOps诞生的背景 3
1-1-2 以敏捷开发为代表的持续开发方式的出现 4
1-1-3 持续开发带来的运维问题 5
1-1-4 DevOps 的诞生和历史 11
1-1-5 小结 14
1-2 认识 DevOps 15
1-2-1 以迅速满足商业需求为目标 15
1-2-2 PDCA循环和DevOps 16
1-2-3 抽象化 17
1-2-4 自动化 21
1-2-5 统一管理 21
1-2-6 持续集成 24
1-2-7 监控 25
1-2-8 目的意识、同理心和自主思考 26
1-2-9 小结 27
1-3 组织和 DevOps 28
1-3-1 DevOps能解决组织、团队中的什么问题 28
1-3-2 康威定律 31
1-3-3 小结 31
第2章 从个人开始实践DevOps 33
2-1 从小的地方开始实践DevOps 34
2-2 个人也能够实现DevOps 36
2-2-1 从哪里开始入手 36
2-2-2 构建本地开发环境 37
2-3 从个人环境到团队环境的准备 45
2-3-1 使用Vagrant实现本地开发环境的代码化 46
2-3-2 使用Ansible将构建工作通用化,并向其他环境展开 56
2-3-3 使用Serverspec实现基础设施测试代码化 76
2-3-4 使用Git在团队内共享配置信息 90
2-3-5 基础设施即代码和DevOps的目标 103
第3章 在团队中普及DevOps 105
3-1 在团队内实施DevOps的意义 106
3-2 实现团队工作的效率化 108
3-2-1 使用GitHub进行团队开发 108
3-2-2 使用Docker进一步提高开发效率 129
3-2-3 使用Jenkins管理工作 163
3-2-4 使用持续集成和持续交付优化发布 197
3-3 在团队中实施DevOps的效果 211
第4章 面向DevOps的架构变革 213
4-1 以DevOps为中心对架构进行变革 214
4-2 改变应用程序架构 215
4-2-1 The Twelve-Factor App 215
4-2-2 微服务架构 218
4-3 改变基础设施架构 222
4-3-1 使用不可变基础设施进行高效管理 222
4-3-2 使用蓝绿部署切换服务 227
4-3-3 本地部署和公有云 233
4-3-4 SaaS 236
4-3-5 日志收集和分析 240
4-4 改变团队 245
4-4-1 DevOps和敏捷开发 245
4-4-2 ticket驱动开发 255
4-4-3 网站可靠性工程 257
4-4-4 ChatOps 263
4-5 DevOps团队的作用 271
4-5-1 故障处理 271
4-5-2 实现持续集成和持续交付 273
4-5-3 性能优化 273
4-5-4 建立开发和运维之间的合作体制 274
第5章 实践基础设施即代码 277
5-1 实践 持续集成和持续交付 278
5-1-1 持续集成和持续交付的组成要素和集成 278
5-1-2 集成GitHub和Slack:将GitHub的事件通知给Slack 281
5-1-3 集成GitHub和Jenkins:git push之后的自动化处理 286
5-1-4 集成Jenkins和Slack:将任务事件通知到Slack 295
5-1-5 集成Jenkins和Ansible:通过任务触发基础设施构建 299
5-1-6 集成Jenkins和Serverspec:通过构建任务触发基础设施测试 305
5-1-7 从GitHub触发Jenkins的Provisioning 311
5-1-8 使用持续集成和持续交付,将开发、构建和测试组合到一起 312
5-1-9 如何实现更实用的架构 314
5-2 实践 ELK技术栈 317
5-2-1 ELK技术栈的构成要素和集成 317
5-2-2 构建ELK技术栈 318
5-2-3 访问日志的可视化 330
5-2-4 可视化让我们距离DevOps更近一步 340
5-3 实践 不可变基础设施 342
5-3-1 实现不可变基础设施所需要的要素以及发布流程 342
5-3-2 使用CloudFormation构建基础环境 345
5-3-3 基于蓝绿部署进行发布工作 353
5-3-4 发生故障时切换基础设施 355
5-3-5 更具实用性的架构 356
5-3-6 不可变基础设施会从根本上改变基础设施的使用方式 358
第6章 跨越组织和团队间壁垒的DevOps 359
6-1 普及DevOps的困难之处 360
6-2 在组织中实施DevOps 361
6-2-1 在新的组织中实施DevOps 361
6-2-2 在既有组织中实施DevOps 361
6-2-3 实施DevOps的反模式 370
6-2-4 在组织形式方面是否有实施DevOps的最佳实践 373
6-3 团队整体的DevOps 377
· · · · · · (
收起)