企業(yè)級(jí)DevOps技術(shù)與工具實(shí)戰(zhàn)
鏈接:https://pan.baidu.com/s/1NBNblpWqiDHxtFwyPGvVDw?pwd=6c0f?
提取碼:6c0f

1 業(yè)內(nèi)專家張樂、趙瞬東傾情作序。
2 本書系統(tǒng)、全面地介紹了企業(yè)級(jí)DevOps的現(xiàn)狀、趨勢(shì)、基礎(chǔ)理論和實(shí)踐方法,對(duì)DevOps實(shí)踐中的架構(gòu)設(shè)計(jì)、開發(fā)、測(cè)試、部署等各階段所需要踐行的原則和方法進(jìn)行了總結(jié),并提出了相關(guān)建議。
3 本書包含大量企業(yè)級(jí)DevOps落地實(shí)踐,將手把手地幫助你從零搭建企業(yè)級(jí)DevOps工具鏈體系。
4 學(xué)完本書能獲得三方面的收獲:全面理解DevOps基礎(chǔ)理論、能夠選擇和構(gòu)建合適的工具鏈、學(xué)習(xí)實(shí)踐的原則和策略。
內(nèi)容簡(jiǎn)介
本書系統(tǒng)全面地介紹了DevOps 的現(xiàn)狀趨勢(shì)、基礎(chǔ)理論和實(shí)踐方法,對(duì)DevOps 實(shí)踐中的架構(gòu)設(shè)計(jì)、開發(fā)、測(cè)試、部署等各階段所需踐行的原則和方法進(jìn)行了總結(jié),并提出相關(guān)建議。以實(shí)戰(zhàn)為中心,對(duì)DevOps實(shí)踐中的常用工具進(jìn)行了分類介紹和特性分析,并結(jié)合相關(guān)示例進(jìn)行了使用說(shuō)明和演示。
作者簡(jiǎn)介
劉淼
資深架構(gòu)師,PMP、OCP、CSM、HPE University講師,EXIN DevOps Professional與DevOps Master認(rèn)證講師,曾擔(dān)任HPE GD China DevOps & Agile Leader,幫助企業(yè)級(jí)客戶提供DevOps咨詢培訓(xùn)以及實(shí)施指導(dǎo)。熟悉通信和金融領(lǐng)域,有超過(guò)10年金融外匯行業(yè)的架構(gòu)設(shè)計(jì)、開發(fā)、維護(hù)經(jīng)驗(yàn),在十幾年的IT從業(yè)生涯中擁有了軟件開發(fā)設(shè)計(jì)領(lǐng)域接近全生命周期的經(jīng)驗(yàn)和知識(shí)積累。CSDN博客專家,博客地址為https://liumiaocn.blog.csdn.net/。
張笑梅
IT從業(yè)15年,其中含5年歐美外包經(jīng)驗(yàn),10多年國(guó)內(nèi)行業(yè)咨詢服務(wù)與解決方案經(jīng)驗(yàn),涉及電信、金融、航空等領(lǐng)域。先后服務(wù)于HPE、惠普、畢博等公司,曾負(fù)責(zé)過(guò)大中型項(xiàng)目實(shí)施開發(fā)與管理工作,擔(dān)任過(guò)產(chǎn)品經(jīng)理、咨詢顧問、培訓(xùn)講師及教練等職位。目前致力于項(xiàng)目和組織的敏捷與DevOps轉(zhuǎn)型實(shí)施和培訓(xùn)。EXIN Agile Master、DevOps Professional、Lean IT、VeriSM、TSP、PSP模型認(rèn)證講師,鳳凰沙盤/火星沙盤教練,CMMI 2.0 評(píng)估員,ISO 9K內(nèi)審員,擁有CSM、SAFE、SAFE Advance Master、ITIL、SIGMA GB認(rèn)證。
精彩書評(píng)
本書的前1/4篇幅重點(diǎn)講解了DevOps的基礎(chǔ)理論、關(guān)鍵原則、實(shí)踐經(jīng)驗(yàn)和誤區(qū),剩余的3/4篇幅都是關(guān)于DevOps落地實(shí)踐的內(nèi)容。面向企業(yè)級(jí)DevOps的實(shí)施和推廣,需要在道、fa、術(shù)、器4個(gè)層面立體化推進(jìn),自上而下、以終為始地系統(tǒng)化思考,自下而上通過(guò)工具提升效率、解決具體問題。本書作者有著非常豐富的大型企業(yè)DevOps實(shí)施經(jīng)驗(yàn),尤其對(duì)工具的技術(shù)實(shí)現(xiàn)細(xì)節(jié)、如何相互集成和整合頗有心得,書中也包含了大量的相關(guān)說(shuō)明和示例,本書將手把手地幫助你從零搭建DevOps工具鏈體系。
這是一個(gè)數(shù)字化時(shí)代,DevOps越來(lái)越流行,理論+實(shí)踐的組合至關(guān)重要,相信這本書能給你帶來(lái)很大的幫助,祝你的DevOps之旅一帆風(fēng)順!
張樂
京東 DevOps與研發(fā)效能專家
DevOpsDays中國(guó)區(qū)核心組織者
本書不僅包含了DevOps的基礎(chǔ)理論知識(shí),而且涵蓋了從需求管理、設(shè)計(jì)與開發(fā)、版本控制、編譯構(gòu)建、代碼質(zhì)量、測(cè)試管理、發(fā)布與部署、自動(dòng)化運(yùn)維、自動(dòng)化測(cè)試、日志監(jiān)控、安全監(jiān)控到容器化的一個(gè)完整DevOps工具鏈,讓讀者可以從0到1地學(xué)習(xí)DevOps落地實(shí)踐的知識(shí),并進(jìn)行全開源DevOps工具鏈的實(shí)戰(zhàn)。
本書作者之一劉淼是一位資深DevOps專家,我更愿意稱他為一名不折不扣的骨灰級(jí)技術(shù)達(dá)人,他癡迷于持續(xù)學(xué)習(xí)和持續(xù)分享。我在閱讀完本書后,收獲甚大?,F(xiàn)在我將這本書介紹給所有想要學(xué)習(xí)和進(jìn)行DevOps工具鏈落地實(shí)踐的工程師,尤其是運(yùn)維圈的小伙伴們,我相信本書一定能讓你受益匪淺。準(zhǔn)備好實(shí)驗(yàn)環(huán)境,讓我們一起玩轉(zhuǎn)DevOps工具鏈吧。
趙舜東
新運(yùn)維社區(qū)發(fā)起人
目錄
第1 章 DevOps 概述 1
1.1 什么是DevOps 2
1.2 DevOps 能帶來(lái)什么 3
1.3 DevOps 的現(xiàn)狀 5
1.4 常見的理解誤區(qū) 10
第2 章 DevOps 基礎(chǔ)理論 12
2.1 敏捷理論體系解讀 12
2.1.1 敏捷背景介紹 12
2.1.2 三大支柱解讀 13
2.1.3 四大核心價(jià)值觀及解讀 14
2.1.4 12 條原則及解讀 15
2.1.5 Scrum 敏捷框架 17
2.2 敏捷與DevOps 24
2.3 精益理論體系解讀 25
2.3.1 精益產(chǎn)生背景 25
2.3.2 精益IT 及其原則 25
2.4 精益與DevOps 29
2.4.1 節(jié)拍 29
2.4.2 交貨時(shí)間 29
2.4.3 度量指標(biāo) 29
2.4.4 浪費(fèi)種類 30
2.4.5 安燈拉繩 31
2.4.6 看板 31
2.4.7 改善 32
2.4.8 挑戰(zhàn)與對(duì)策 33
2.5 實(shí)踐案例分析 33
第3 章 構(gòu)建企業(yè)的DevOps 文化 36
3.1 對(duì)失敗友好的架構(gòu)與環(huán)境 36
3.1.1 對(duì)失敗友好的架構(gòu)與環(huán)境的特點(diǎn) 37
3.1.2 對(duì)失敗友好的架構(gòu)與環(huán)境的設(shè)計(jì)原則 37
3.1.3 當(dāng)失敗遇見復(fù)雜系統(tǒng) 40
3.1.4 保障復(fù)雜系統(tǒng)的安全 41
3.2 以高度信任為基石的企業(yè)文化 42
3.2.1 傳統(tǒng)制造業(yè)的懲罰文化 43
3.2.2 聚焦改善的免責(zé)事后分析 44
3.2.3 多角度的知識(shí)與經(jīng)驗(yàn)分享 45
3.3 持續(xù)學(xué)習(xí)與持續(xù)試驗(yàn) 49
3.3.1 通過(guò)內(nèi)部與外部會(huì)議促進(jìn)人員技術(shù)成長(zhǎng) 50
3.3.2 向生產(chǎn)環(huán)境中引入故障來(lái)增強(qiáng)彈性 50
3.3.3 持續(xù)學(xué)習(xí)與持續(xù)試驗(yàn)的建議 51
3.4 常見的理解誤區(qū) 52
3.5 實(shí)踐經(jīng)驗(yàn)研究 54
第4 章 設(shè)計(jì)和優(yōu)化軟件全生命周期相關(guān)流程 56
4.1 持續(xù)評(píng)估與DevOps 成熟度模型 56
4.2 持續(xù)規(guī)劃的評(píng)估策略 57
4.3 持續(xù)集成的策略與原則 58
4.4 持續(xù)測(cè)試的策略與原則 58
4.5 持續(xù)部署的策略與原則 59
4.6 持續(xù)監(jiān)控的策略與原則 59
4.7 持續(xù)運(yùn)維的策略與原則 60
4.8 持續(xù)反饋的策略與機(jī)制 60
4.9 常見的理解誤區(qū)和實(shí)踐經(jīng)驗(yàn) 60
第5 章 DevOps 實(shí)踐中的設(shè)計(jì)與開發(fā) 62
5.1 傳統(tǒng)架構(gòu)的痛點(diǎn) 62
5.2 DevOps 中的架構(gòu)設(shè)計(jì) 62
5.2.1 康威定律的影響 63
5.2.2 耦合設(shè)計(jì)原則 64
5.2.3 獨(dú)立部署原則 66
5.2.4 自動(dòng)部署策略 66
5.2.5 12 要素 68
5.2.6 應(yīng)用擴(kuò)容機(jī)制 68
5.3 環(huán)境一致性 69
5.3.1 環(huán)境一致性的重要性 69
5.3.2 常用工具介紹 69
5.4 版本管理實(shí)踐 71
5.4.1 版本管理的痛點(diǎn) 71
5.4.2 常用工具介紹 74
5.4.3 實(shí)踐經(jīng)驗(yàn)總結(jié) 75
5.5 制品管理實(shí)踐 75
5.6 代碼質(zhì)量分析 77
第6 章 DevOps 實(shí)踐中的測(cè)試 78
6.1 傳統(tǒng)測(cè)試及其痛點(diǎn) 78
6.2 測(cè)試驅(qū)動(dòng)開發(fā) 79
6.3 測(cè)試分類 81
6.4 測(cè)試策略 83
6.4.1 測(cè)試團(tuán)隊(duì)結(jié)構(gòu)重組策略:測(cè)試團(tuán)隊(duì)去中心化的應(yīng)對(duì)策略 84
6.4.2 測(cè)試促進(jìn)架構(gòu)重構(gòu)策略:根據(jù)測(cè)試的反饋不斷優(yōu)化系統(tǒng)架構(gòu) 84
6.4.3 測(cè)試團(tuán)隊(duì)技能提升策略:逐步推動(dòng)測(cè)試團(tuán)隊(duì)知識(shí)與技能的重建 84
6.4.4 各階段測(cè)試策略:分階段使用不同方式保證系統(tǒng)功能 85
6.5 自動(dòng)化測(cè)試 85
6.5.1 自動(dòng)化測(cè)試現(xiàn)狀 86
6.5.2 做還是不做:決策因素 86
6.5.3 自動(dòng)化測(cè)試推行策略 88
6.5.4 自動(dòng)化測(cè)試工具選型 89
6.6 實(shí)踐經(jīng)驗(yàn)研究 90
6.6.1 常見的實(shí)踐誤區(qū) 90
6.6.2 實(shí)踐案例 91
第7 章 DevOps 實(shí)踐中的部署 101
7.1 部署方式 101
7.1.1 藍(lán)綠部署 102
7.1.2 金絲雀部署 103
7.2 部署依賴 104
7.2.1 架構(gòu)的影響 104
7.2.2 基礎(chǔ)設(shè)施的影響 104
7.3 常用工具 106
7.4 實(shí)踐經(jīng)驗(yàn)總結(jié) 107
第8 章 DevOps 工具選型:開源與閉源 108
8.1 通用選型指標(biāo) 108
8.1.1 系統(tǒng)限制要素 109
8.1.2 可用性 109
8.1.3 交互性 110
8.1.4 市場(chǎng)狀況 110
8.1.5 功能可裁剪度 111
8.2 開源/閉源選型指標(biāo) 111
8.2.1 成本 112
8.2.2 更新頻度 112
8.2.3 改善速度 113
8.2.4 集成方式 113
8.2.5 文檔說(shuō)明 114
8.3 選型模型介紹 115
8.4 實(shí)踐經(jīng)驗(yàn)總結(jié) 115
第9 章 DevOps 工具:需求管理與缺陷追蹤 117
9.1 常用工具介紹 117
9.1.1 JIRA 117
9.1.2 Redmine 118
9.1.3 Trac 120
9.1.4 Bugzilla 121
9.2 詳細(xì)介紹:Redmine 121
9.2.1 安裝Redmine 121
9.2.2 設(shè)定Redmine 125
9.2.3 REST API 操作 130
9.3 需求管理工具選型比較 137
第10 章 DevOps 工具:持續(xù)集成 139
10.1 常用工具介紹 139
10.1.1 Jenkins 139
10.1.2 Apache Continuum 140
10.1.3 CruiseControl 141
10.2 詳細(xì)介紹:Jenkins 141
10.2.1 安裝Jenkins 142
10.2.2 設(shè)定Jenkins 144
10.3 持續(xù)集成實(shí)踐 146
10.3.1 Jenkins+GitLab 147
10.3.2 Jenkins+Docker 150
10.3.3 Jenkins pipeline 157
第11 章 DevOps 工具:版本管理 169
11.1 常用工具介紹 169
11.1.1 RCS 169
11.1.2 SVN 179
11.1.3 Git 180
11.1.4 GitLab 181
11.2 詳細(xì)介紹:GitLab 與開發(fā)模型 182
11.2.1 Git Flow 分支模型 182
11.2.2 GitLab+Git Flow 185
11.2.3 GitHub Flow 分支模型 200
11.2.4 GitLab+GitHub Flow 201
11.3 實(shí)踐經(jīng)驗(yàn)總結(jié) 205
第12 章 DevOps 工具:構(gòu)建工具 208
12.1 常用工具介紹 208
12.1.1 Make 208
12.1.2 Maven 209
12.1.3 Gradle 209
12.1.4 MSBuild 210
12.2 詳細(xì)介紹:Maven 211
12.2.1 安裝Maven 211
12.2.2 Maven 的使用 211
12.3 詳細(xì)介紹:Gradle 214
12.3.1 安裝Gradle 214
12.3.2 Gradle 的使用 214
12.4 實(shí)踐經(jīng)驗(yàn)總結(jié) 221
第13 章 DevOps 工具:代碼質(zhì)量 223
13.1 常用工具介紹 223
13.1.1 SonarQube 223
13.1.2 Frotify 224
13.1.3 Coverity 225
13.1.4 FindBugs 225
13.2 詳細(xì)介紹:SonarQube 226
13.2.1 安裝SonarQube 226
13.2.2 SonarQube 基礎(chǔ) 231
13.2.3 SonarQube 使用方式 239
13.3 代碼質(zhì)量檢測(cè)實(shí)踐 244
13.3.1 代碼掃描與概要信息獲取 245
13.3.2 指標(biāo)信息的獲取 249
13.3.3 測(cè)試指標(biāo)與事前準(zhǔn)備 259
13.3.4 測(cè)試指標(biāo)實(shí)踐 261
13.3.5 項(xiàng)目與質(zhì)量規(guī)約管理 272