商品簡介
作者簡介
目次
相關商品
商品簡介
本書共分為6個部分:第一部分概述DevOps的歷史和三個基本原則,即“三步工作法”;第二部分介紹開啟DevOps轉型的過程;第三到五部分深入探討“三步工作法”的各個要素;第六部分關注如何將安全性和合規性正確集成到日常工作中。全書涵蓋40餘個DevOps案例,以穀歌、亞馬遜、Facebook等全球知名企業和組織的實際調查結果為依據,展示如何通過現代化的運維管理提升管理效率,進而為企業贏得更大市場、創造更多利潤。
作者簡介
Gene Kim
Tripwire創始人、前CTO,IT Revolution創始人,DevOps企業峰會主辦人,暢銷書《鳳凰項目》合著者。
Jez Humble
DevOps Research and Assessment公司CTO,加州大學伯克利分校信息學院講師;曾任ThoughtWorks顧問。《精益企業》和Jolt大獎圖書《持續交付》的合著者。
Patrick Debois
DevOps之父,致力於通過在開發、項目管理和系統管理之中應用敏捷技術來填補項目和運維之間的鴻溝。
John Willis
Chain Bridge System創始人,曾任Docker公司佈道師,現任職於SJ Technologies公司。
【譯者簡介】
劉征
Nutanix路坦力架構師,EXIN國內DevOps Master和DevOps Professional認證講師,持有紅帽RHCA認證和AWS架構師認證,諳熟企業數據中心的IT服務管理。目前致力於推廣DevOps相關的理念和實踐,在DevOps社區中積極地參與培訓和研討會等活動,是DevOpsDays大會社區在中國的核心組織者和志願工作者。
王磊
前ThoughtWorks諮詢師,EXIN國內DevOps Master認證講師。擁有10多年軟件行業經驗,以及服務化架構、持續交付和DevOps轉型等方面的豐富實踐經驗。國內較早倡導和實踐微服務的先行者,著有國內微服務架構相關圖書《微服務架構與實踐》,是西安DevOps Meetup活動的聯合發起人。
馬博文
前ThoughtWorks諮詢師,AWS認證助理架構師。擁有多年Web開發和DevOps經驗,熟悉持續交付、微服務。曾參與翻譯《Scala編程實戰》《DevOps實踐》等書,是西安DevOps Meetup活動的發起人。
曾朝京
Micro Focus解決方案顧問,曾參加EXIN國內Devops Master講師認證培訓。長期從事IT運維管理領域諮詢工作,曾為能源、金融、航空運輸、政府行業中的多個大型企業提供IT運維管理規劃。目前致力於探索DevOps理念在企業IT部門的實踐。
Tripwire創始人、前CTO,IT Revolution創始人,DevOps企業峰會主辦人,暢銷書《鳳凰項目》合著者。
Jez Humble
DevOps Research and Assessment公司CTO,加州大學伯克利分校信息學院講師;曾任ThoughtWorks顧問。《精益企業》和Jolt大獎圖書《持續交付》的合著者。
Patrick Debois
DevOps之父,致力於通過在開發、項目管理和系統管理之中應用敏捷技術來填補項目和運維之間的鴻溝。
John Willis
Chain Bridge System創始人,曾任Docker公司佈道師,現任職於SJ Technologies公司。
【譯者簡介】
劉征
Nutanix路坦力架構師,EXIN國內DevOps Master和DevOps Professional認證講師,持有紅帽RHCA認證和AWS架構師認證,諳熟企業數據中心的IT服務管理。目前致力於推廣DevOps相關的理念和實踐,在DevOps社區中積極地參與培訓和研討會等活動,是DevOpsDays大會社區在中國的核心組織者和志願工作者。
王磊
前ThoughtWorks諮詢師,EXIN國內DevOps Master認證講師。擁有10多年軟件行業經驗,以及服務化架構、持續交付和DevOps轉型等方面的豐富實踐經驗。國內較早倡導和實踐微服務的先行者,著有國內微服務架構相關圖書《微服務架構與實踐》,是西安DevOps Meetup活動的聯合發起人。
馬博文
前ThoughtWorks諮詢師,AWS認證助理架構師。擁有多年Web開發和DevOps經驗,熟悉持續交付、微服務。曾參與翻譯《Scala編程實戰》《DevOps實踐》等書,是西安DevOps Meetup活動的發起人。
曾朝京
Micro Focus解決方案顧問,曾參加EXIN國內Devops Master講師認證培訓。長期從事IT運維管理領域諮詢工作,曾為能源、金融、航空運輸、政府行業中的多個大型企業提供IT運維管理規劃。目前致力於探索DevOps理念在企業IT部門的實踐。
目次
第 一部分 DevOps介紹
第 1章 敏捷、持續交付和三步法 4
1.1 製造業價值流 4
1.2 技術價值流 4
1.2.1 聚焦於部署前置時間 5
1.2.2 關注返工指標――%C/A 7
1.3 三步工作法:DevOps的基礎原則 7
1.4 小結 8
第 2章 第 一步:流動原則 9
2.1 使工作可見 9
2.2 限制在製品數 10
2.3 減小批量大小 11
2.4 減少交接次數 13
2.5 持續識別和改善約束點 14
2.6 消除價值流中的困境和浪費 15
2.7 小結 16
第3章 第二步:反饋原則 17
3.1 在複雜系統中安全地工作 17
3.2 及時發現問題 18
3.3 群策群力,戰勝問題獲取新知 19
3.4 在源頭保障質量 21
3.5 為下游工作中心而優化 22
3.6 小結 22
第4章 第三步:持續學習與實驗原則 23
4.1 建立學習型組織和安全文化 23
4.2 將日常工作的改進制度化 25
4.3 把局部發現轉化為全域優化 26
4.4 在日常工作中注入彈性模式 27
4.5 領導層強化學習文化 27
4.6 小結 29
4.7 第 一部分總結 29
第二部分 從何處開始
第5章 選擇合適的價值流作為切入點 32
5.1 綠地項目與棕地項目 34
5.2 兼顧記錄型系統和交互型系統 35
5.3 從最樂於創新的團隊開始 36
5.4 擴大DevOps的範圍 37
5.5 小結 38
第6章 理解、可視化和運用價值流 39
6.1 確定創造客戶價值所需的團隊 40
6.2 針對團隊工作繪製價值流圖 40
6.3 組建專門的轉型團隊 42
6.3.1 擁有共同的目標 43
6.3.2 保持小跨度的改進計劃 44
6.3.3 為非功能性需求預留20%的開發時間,減少技術債務 44
6.3.4 提高工作的可視化程度 47
6.4 用工具強化預期行為 47
6.5 小結 48
第7章 參考康威定律設計組織結構 49
7.1 組織原型 51
7.2 過度職能導向的危害(“成本優化”) 51
7.3 組建以市場為導向的團隊(“速度優化”) 52
7.4 使職能導向有效 53
7.5 將測試、運維和信息安全融入日常工作 54
7.6 使團隊成員都成為通才 54
7.7 投資於服務和產品,而非項目 56
7.8 根據康威定律設定團隊邊界 56
7.9 創建松耦合架構,提高生產力和安全性 57
7.10 小結 60
第8章 將運維融入日常開發工作 61
8.1 創建共享服務,提高開發生產力 62
8.2 將運維工程師融入服務團隊 63
8.3 為每個服務團隊分派運維聯絡人 64
8.4 邀請運維工程師參加開發團隊的會議 65
8.4.1 邀請運維工程師參加每日站會 65
8.4.2 邀請運維工程師參加回顧會議 66
8.4.3 使用看板圖展示運維工作 66
8.5 小結 67
8.6 第二部分總結 67
第三部分 第 一步:流動的技術實踐
第9章 為部署流水線奠定基礎 70
9.1 按需搭建開發環境、測試環境和生產環境 71
9.2 應用統一的代碼倉庫 72
9.3 使基礎設施的重建更容易 74
9.4 運行在類生產環境裡才算“完成” 75
9.5 小結 76
第 10章 實現快速可靠的自動化測試 77
10.1 對代碼和環境做持續構建、測試和集成 79
10.2 構建快速可靠的自動化測試套件 81
10.2.1 在自動化測試中儘早發現錯誤 83
10.2.2 盡可能並行地快速執行測試 84
10.2.3 先編寫自動化測試 84
10.2.4 儘量將手動測試自動化 85
10.2.5 在測試套件中集成性能測試 86
10.2.6 在測試套件中集成非功能性需求測試 86
10.3 在部署流水線失敗時拉下安燈繩 87
10.4 小結 89
第 11章 應用和實踐持續集成 90
11.1 小批量開發與大批量合併 92
11.2 應用基於主幹的開發實踐 93
11.3 小結 95
第 12章 自動化和低風險發佈 96
12.1 自動化部署流程 97
12.1.1 應用自動化的自助式部署 100
12.1.2 在部署流水線中集成代碼部署 101
12.2 將部署與發佈解耦 104
12.2.1 基於環境的發佈模式 105
12.2.2 基於應用的發佈模式更安全 109
12.3 持續交付和持續部署實踐的調查 112
12.4 小結 113
第 13章 降低發佈風險的架構 114
13.1 能提高生產力、可測試性和安全性的架構 115
13.2 架構原型:單體架構與微服務 116
13.3 安全地演進企業架構 118
13.4 小結 121
13.5 第三部分總結 121
第四部分 第二步:反饋的技術實踐
第 14章 建立能發現並解決問題的遙測系統 125
14.1 建設集中式監控架構 127
14.2 建立生產環境的應用程序日誌遙測 129
14.3 使用遙測指導問題的解決 131
14.4 將建立生產遙測融入日常工作 132
14.5 建立自助訪問的遙測和信息輻射器 133
14.6 發現和填補遙測的盲區 135
14.6.1 應用程序和業務度量指標 136
14.6.2 基礎架構度量指標 137
14.6.3 顯示疊加的指標組合 138
14.7 小結 139
第 15章 分析遙測數據以更好地預測故障和實現目標 140
15.1 用均值和標準差識別潛在問題 141
15.2 異常狀態的處理和告警 142
15.3 非高斯分佈遙測數據的問題 143
15.4 應用異常檢測技術 146
15.5 小結 149
第 16章 應用反饋實現安全部署 150
16.1 通過遙測使部署更安全 151
16.2 開發和運維共同承擔值班工作 153
16.3 讓開發人員跟蹤工作對下游的影響 153
16.4 讓開發人員自行管理生產服務 155
16.5 小結 159
第 17章 將假設驅動的開發和A/B測試融入日常工作 160
17.1 A/B測試簡史 161
17.2 在功能測試中集成A/B測試 162
17.3 在發佈中集成A/B測試 162
17.4 在功能規劃中集成A/B測試 163
17.5 小結 165
第 18章 建立評審和協作流程以提升當前工作的質量 166
18.1 變更審批流程的危險 168
18.2 “過度控制變更”的潛在危險 168
18.3 變更的協調和排程 170
18.4 變更的同行評審 170
18.5 人工測試和變更凍結的潛在危害 173
18.6 利用結對編程改進代碼變更 173
18.7 消除官僚流程 176
18.8 小結 177
18.9 第四部分總結 178
第五部分 第三步:持續學習與實驗的技術實踐
第 19章 將學習融入日常工作 180
19.1 建立公正和學習的文化 181
19.2 舉行不指責的事後分析會議 182
19.3 盡可能廣泛地公開事後分析會議結果 184
19.4 降低事故容忍度,尋找更弱的故障信號 185
19.5 重新定義失敗,鼓勵評估風險 186
19.6 在生產環境注入故障來恢復和學習 186
19.7 創建故障演練日 187
19.8 小結 189
第 20章 將局部經驗轉化為全域改進 190
20.1 使用聊天室和聊天機器人自動積累組織知識 190
20.2 軟件中便於重用的自動化、標準化流程 192
20.3 創建全組織共享的單一源代碼庫 192
20.4 運用自動化測試記錄和交流實踐來傳播知識 194
20.5 通過確定非功能性需求來設計運維 194
20.6 把可重用的運維用戶故事納入開發 195
20.7 確保技術選型有助於實現組織目標 195
20.8 小結 197
第 21章 預留組織學習和改進的時間 198
21.1 償還技術債務的制度化慣例 199
21.2 讓所有人教學相長 200
21.3 在DevOps會議中分享經驗 201
21.4 傳播實踐的內部顧問和教練 203
21.5 小結 204
21.6 第五部分總結 204
第六部分 集成信息安全、變更管理和合規性的技術實踐
第 22章 將信息安全融入每個人的日常工作 207
22.1 將安全集成到開發迭代的演示中 207
22.2 將安全集成到缺陷跟蹤和事後分析會議中 208
22.3 將預防性安全控制集成到共享源代碼庫及共享服務中 208
22.4 將安全集成到部署流水線中 209
22.5 保證應用程序的安全性 210
22.6 確保軟件供應鏈的安全 214
22.7 確保環境的安全 215
22.8 將信息安全集成到生產環境遙測中 216
22.9 在應用程序中建立安全遙測系統 217
22.10 在環境中建立安全遙測系統 217
22.11 保護部署流水線 219
22.12 小結 219
第 23章 保護部署流水線 220
23.1 將安全和合規性集成到變更批准流程中 220
23.2 將大量低風險變更重新歸類為標準變更 221
23.3 如何處理常規變更 222
23.4 減少對職責分離的依賴 224
23.5 確保為審計人員和合規人員留存文檔和證據 226
23.6 小結 228
23.7 第六部分總結 228
行動起來――本書總結 229
附加材料
附 錄 232
附錄1 DevOps的大融合 232
附錄2 約束理論和核心的長期衝突 234
附錄3 惡性循環列表 235
附錄4 交接和隊列的危害 235
附錄5 工業安全神話 236
附錄6 豐田安燈繩 237
附錄7 軟件包產品 238
附錄8 事後分析會議 238
附錄9 猿猴軍團 239
附錄10 上線時間透明化 240
參考資源 241
致 謝 243
EXIN DevOps Professional認證備考指南&模擬題 245
第 1章 敏捷、持續交付和三步法 4
1.1 製造業價值流 4
1.2 技術價值流 4
1.2.1 聚焦於部署前置時間 5
1.2.2 關注返工指標――%C/A 7
1.3 三步工作法:DevOps的基礎原則 7
1.4 小結 8
第 2章 第 一步:流動原則 9
2.1 使工作可見 9
2.2 限制在製品數 10
2.3 減小批量大小 11
2.4 減少交接次數 13
2.5 持續識別和改善約束點 14
2.6 消除價值流中的困境和浪費 15
2.7 小結 16
第3章 第二步:反饋原則 17
3.1 在複雜系統中安全地工作 17
3.2 及時發現問題 18
3.3 群策群力,戰勝問題獲取新知 19
3.4 在源頭保障質量 21
3.5 為下游工作中心而優化 22
3.6 小結 22
第4章 第三步:持續學習與實驗原則 23
4.1 建立學習型組織和安全文化 23
4.2 將日常工作的改進制度化 25
4.3 把局部發現轉化為全域優化 26
4.4 在日常工作中注入彈性模式 27
4.5 領導層強化學習文化 27
4.6 小結 29
4.7 第 一部分總結 29
第二部分 從何處開始
第5章 選擇合適的價值流作為切入點 32
5.1 綠地項目與棕地項目 34
5.2 兼顧記錄型系統和交互型系統 35
5.3 從最樂於創新的團隊開始 36
5.4 擴大DevOps的範圍 37
5.5 小結 38
第6章 理解、可視化和運用價值流 39
6.1 確定創造客戶價值所需的團隊 40
6.2 針對團隊工作繪製價值流圖 40
6.3 組建專門的轉型團隊 42
6.3.1 擁有共同的目標 43
6.3.2 保持小跨度的改進計劃 44
6.3.3 為非功能性需求預留20%的開發時間,減少技術債務 44
6.3.4 提高工作的可視化程度 47
6.4 用工具強化預期行為 47
6.5 小結 48
第7章 參考康威定律設計組織結構 49
7.1 組織原型 51
7.2 過度職能導向的危害(“成本優化”) 51
7.3 組建以市場為導向的團隊(“速度優化”) 52
7.4 使職能導向有效 53
7.5 將測試、運維和信息安全融入日常工作 54
7.6 使團隊成員都成為通才 54
7.7 投資於服務和產品,而非項目 56
7.8 根據康威定律設定團隊邊界 56
7.9 創建松耦合架構,提高生產力和安全性 57
7.10 小結 60
第8章 將運維融入日常開發工作 61
8.1 創建共享服務,提高開發生產力 62
8.2 將運維工程師融入服務團隊 63
8.3 為每個服務團隊分派運維聯絡人 64
8.4 邀請運維工程師參加開發團隊的會議 65
8.4.1 邀請運維工程師參加每日站會 65
8.4.2 邀請運維工程師參加回顧會議 66
8.4.3 使用看板圖展示運維工作 66
8.5 小結 67
8.6 第二部分總結 67
第三部分 第 一步:流動的技術實踐
第9章 為部署流水線奠定基礎 70
9.1 按需搭建開發環境、測試環境和生產環境 71
9.2 應用統一的代碼倉庫 72
9.3 使基礎設施的重建更容易 74
9.4 運行在類生產環境裡才算“完成” 75
9.5 小結 76
第 10章 實現快速可靠的自動化測試 77
10.1 對代碼和環境做持續構建、測試和集成 79
10.2 構建快速可靠的自動化測試套件 81
10.2.1 在自動化測試中儘早發現錯誤 83
10.2.2 盡可能並行地快速執行測試 84
10.2.3 先編寫自動化測試 84
10.2.4 儘量將手動測試自動化 85
10.2.5 在測試套件中集成性能測試 86
10.2.6 在測試套件中集成非功能性需求測試 86
10.3 在部署流水線失敗時拉下安燈繩 87
10.4 小結 89
第 11章 應用和實踐持續集成 90
11.1 小批量開發與大批量合併 92
11.2 應用基於主幹的開發實踐 93
11.3 小結 95
第 12章 自動化和低風險發佈 96
12.1 自動化部署流程 97
12.1.1 應用自動化的自助式部署 100
12.1.2 在部署流水線中集成代碼部署 101
12.2 將部署與發佈解耦 104
12.2.1 基於環境的發佈模式 105
12.2.2 基於應用的發佈模式更安全 109
12.3 持續交付和持續部署實踐的調查 112
12.4 小結 113
第 13章 降低發佈風險的架構 114
13.1 能提高生產力、可測試性和安全性的架構 115
13.2 架構原型:單體架構與微服務 116
13.3 安全地演進企業架構 118
13.4 小結 121
13.5 第三部分總結 121
第四部分 第二步:反饋的技術實踐
第 14章 建立能發現並解決問題的遙測系統 125
14.1 建設集中式監控架構 127
14.2 建立生產環境的應用程序日誌遙測 129
14.3 使用遙測指導問題的解決 131
14.4 將建立生產遙測融入日常工作 132
14.5 建立自助訪問的遙測和信息輻射器 133
14.6 發現和填補遙測的盲區 135
14.6.1 應用程序和業務度量指標 136
14.6.2 基礎架構度量指標 137
14.6.3 顯示疊加的指標組合 138
14.7 小結 139
第 15章 分析遙測數據以更好地預測故障和實現目標 140
15.1 用均值和標準差識別潛在問題 141
15.2 異常狀態的處理和告警 142
15.3 非高斯分佈遙測數據的問題 143
15.4 應用異常檢測技術 146
15.5 小結 149
第 16章 應用反饋實現安全部署 150
16.1 通過遙測使部署更安全 151
16.2 開發和運維共同承擔值班工作 153
16.3 讓開發人員跟蹤工作對下游的影響 153
16.4 讓開發人員自行管理生產服務 155
16.5 小結 159
第 17章 將假設驅動的開發和A/B測試融入日常工作 160
17.1 A/B測試簡史 161
17.2 在功能測試中集成A/B測試 162
17.3 在發佈中集成A/B測試 162
17.4 在功能規劃中集成A/B測試 163
17.5 小結 165
第 18章 建立評審和協作流程以提升當前工作的質量 166
18.1 變更審批流程的危險 168
18.2 “過度控制變更”的潛在危險 168
18.3 變更的協調和排程 170
18.4 變更的同行評審 170
18.5 人工測試和變更凍結的潛在危害 173
18.6 利用結對編程改進代碼變更 173
18.7 消除官僚流程 176
18.8 小結 177
18.9 第四部分總結 178
第五部分 第三步:持續學習與實驗的技術實踐
第 19章 將學習融入日常工作 180
19.1 建立公正和學習的文化 181
19.2 舉行不指責的事後分析會議 182
19.3 盡可能廣泛地公開事後分析會議結果 184
19.4 降低事故容忍度,尋找更弱的故障信號 185
19.5 重新定義失敗,鼓勵評估風險 186
19.6 在生產環境注入故障來恢復和學習 186
19.7 創建故障演練日 187
19.8 小結 189
第 20章 將局部經驗轉化為全域改進 190
20.1 使用聊天室和聊天機器人自動積累組織知識 190
20.2 軟件中便於重用的自動化、標準化流程 192
20.3 創建全組織共享的單一源代碼庫 192
20.4 運用自動化測試記錄和交流實踐來傳播知識 194
20.5 通過確定非功能性需求來設計運維 194
20.6 把可重用的運維用戶故事納入開發 195
20.7 確保技術選型有助於實現組織目標 195
20.8 小結 197
第 21章 預留組織學習和改進的時間 198
21.1 償還技術債務的制度化慣例 199
21.2 讓所有人教學相長 200
21.3 在DevOps會議中分享經驗 201
21.4 傳播實踐的內部顧問和教練 203
21.5 小結 204
21.6 第五部分總結 204
第六部分 集成信息安全、變更管理和合規性的技術實踐
第 22章 將信息安全融入每個人的日常工作 207
22.1 將安全集成到開發迭代的演示中 207
22.2 將安全集成到缺陷跟蹤和事後分析會議中 208
22.3 將預防性安全控制集成到共享源代碼庫及共享服務中 208
22.4 將安全集成到部署流水線中 209
22.5 保證應用程序的安全性 210
22.6 確保軟件供應鏈的安全 214
22.7 確保環境的安全 215
22.8 將信息安全集成到生產環境遙測中 216
22.9 在應用程序中建立安全遙測系統 217
22.10 在環境中建立安全遙測系統 217
22.11 保護部署流水線 219
22.12 小結 219
第 23章 保護部署流水線 220
23.1 將安全和合規性集成到變更批准流程中 220
23.2 將大量低風險變更重新歸類為標準變更 221
23.3 如何處理常規變更 222
23.4 減少對職責分離的依賴 224
23.5 確保為審計人員和合規人員留存文檔和證據 226
23.6 小結 228
23.7 第六部分總結 228
行動起來――本書總結 229
附加材料
附 錄 232
附錄1 DevOps的大融合 232
附錄2 約束理論和核心的長期衝突 234
附錄3 惡性循環列表 235
附錄4 交接和隊列的危害 235
附錄5 工業安全神話 236
附錄6 豐田安燈繩 237
附錄7 軟件包產品 238
附錄8 事後分析會議 238
附錄9 猿猴軍團 239
附錄10 上線時間透明化 240
參考資源 241
致 謝 243
EXIN DevOps Professional認證備考指南&模擬題 245
主題書展
更多
主題書展
更多書展今日66折
您曾經瀏覽過的商品
購物須知
大陸出版品因裝訂品質及貨運條件與台灣出版品落差甚大,除封面破損、內頁脫落等較嚴重的狀態,其餘商品將正常出貨。
特別提醒:部分書籍附贈之內容(如音頻mp3或影片dvd等)已無實體光碟提供,需以QR CODE 連結至當地網站註冊“並通過驗證程序”,方可下載使用。
無現貨庫存之簡體書,將向海外調貨:
海外有庫存之書籍,等候約45個工作天;
海外無庫存之書籍,平均作業時間約60個工作天,然不保證確定可調到貨,尚請見諒。
為了保護您的權益,「三民網路書店」提供會員七日商品鑑賞期(收到商品為起始日)。
若要辦理退貨,請在商品鑑賞期內寄回,且商品必須是全新狀態與完整包裝(商品、附件、發票、隨貨贈品等)否則恕不接受退貨。