第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
· · · · · · (
收起)