內容簡介
本書依託作者在網際網路行業多年的從業經歷,結合一線實際工作實踐,從套用生命周期的視角,全面詳細地介紹了分散式架構體系下,套用運維體系建設的方方面面,涵蓋了體系建設方法論指導、持續交付體系建設思路和實踐、穩定性體系規劃建設,以及故障的科學管理方法等內容,視角新穎且獨特,換個角度看運維,能夠帶給讀者不一樣的思考方式。
本書是各行業運維工程師和運維架構師了解新時代運維趨勢的必不可少的學習材料,同時也是業務架構師、開發、測試等技術人員以及技術經理、總監等管理人員用來豐富技術視角的、不可多得的寶貴參考書。
作者簡介
趙成,美麗聯合集團技術服務經理,極客時間專欄作者。多屆ArchSummit 運維專題明星講師和優秀出品人,專注於雲計算和人工智慧時代的運維轉型和提升。
曾在華為工作7年,經歷過開發、測試、運維以及一線客戶服務等諸多崗位。具備全面思考的意識和能力,十年的從業經歷也積累了豐富的電信和網際網路業務研發及運維經驗。
目錄
第1章 運維的本質
1.1頂級公司的運維定義/ 2
1.1.1沒有運維的Netflix / 2
1.1.2 Netflix是如何成為行業典範的/ 3
1.1.3總結/ 7
1.2運維體系建設的核心概念:套用/ 7
1.2.1套用的起源/ 8
1.2.2套用模型及關係模型的建立/ 9
1.2.3微服務架構時代下為什麼要以套用為核心/ 12
第2章 運維體系建設
2.1標準化體系建設基礎/ 16
2.1.1標準化的原因和步驟/ 16
2.1.2基礎設施層面的標準化/ 17
2.1.3套用層面的標準化/ 19
2.1.4總結/ 21
2.2標準化體系建設實踐:基礎架構標準化/ 22
2.2.1常見的分散式基礎架構組件/ 23
2.2.2基礎架構組件的選型問題/ 24
2.2.3基礎架構的服務化/ 26
2.2.4運維的職責/ 27
2.3套用運維體系建設:從生命周期的視角看 / 28
2.3.1 怎樣理解生命周期 / 29
2.3.2 套用的生命周期分析 / 30
2.3.3 總結 / 33
第3章 配置管理資料庫(CMDB)
3.1 CMDB的前世今生/ 36
3.1.1 CMDB源起/ 36
3.1.2傳統運維思路下的CMDB / 37
3.1.3網際網路運維體系下的CMDB / 39
3.1.4 CMDB進行時/ 40
3.2有了CMDB,為什麼還需要套用配置管理/ 41
3.2.1 CMDB是面向資源的管理,是運維的基石/ 42
3.2.2套用配置管理是面向套用的管理,是運維的核心/ 43
3.2.3總結/ 45
3.3在CMDB中落地套用的概念/ 46
3.3.1如何有效組織和管理套用/ 46
3.3.2套用的集群服務分組建設/ 49
3.3.3 CMDB在基礎服務體系中的核心位置/ 51
3.3.4總結/ 54
第4章 運維組織架構及模式
4.1運維組織架構和轉型/ 56
4.1.1自助化運維能力的建設/ 56
4.1.2從價值呈現的角度看運維/ 57
4.1.3運維協作模式的改變/ 59
4.1.4運維的組織架構/ 61
4.1.5總結/ 62
4.2 Google SRE的運維模式/ 63
4.2.1 SRE崗位的定位/ 63
4.2.2 SRE崗位的職責/ 64
4.2.3如何借鑑和落地/ 67
4.3從Google CRE談運維的服務意識/ 67
4.3.1 CRE產生的背景/ 68
4.3.2 CRE崗位的職責/ 69
4.3.3從CRE談談做運維為什麼要有服務心態/ 70
4.4雲計算和AI時代下的運維轉型/ 73
4.4.1套用運維的轉型/ 75
4.4.2雲計算和AI帶給我們的挑戰/ 78
4.4.3總結/ 80
第5章 持續交付
5.1提升效率,為什麼要先做持續交付/ 84
5.1.1什麼是持續交付/ 85
5.1.2持續交付的關鍵點/ 86
5.2持續交付的第一關鍵點:配置管理/ 88
5.2.1版本控制/ 89
5.2.2依賴管理/ 90
5.2.3軟體配置/ 91
5.3多環境配置管理/ 94
5.3.1多環境問題/ 94
5.3.2不同環境下的套用配置管理/ 95
5.3.3環境配置管理解決方案/ 96
5.3.4總結/ 100
5.4多環境建設/ 101
5.4.1環境分類/ 101
5.4.2線下環境分類建設/ 102
5.4.3環境建設上的關鍵技術點/ 106
5.4.4總結/ 109
5.5線上環境建設/ 110
5.5.1生產環境/ 110
5.5.2 Beta環境/ 112
5.5.3預發環境/ 113
5.5.4辦公網生產環境/ 116
5.5.5總結/ 117
5.6流水線模式/ 118
5.6.1持續交付流水線簡要說明/ 119
5.6.2項目需求分解/ 119
5.6.3提交階段之開發模式選擇/ 121
5.6.4開發模式的選型原則/ 123
5.7流水線軟體構建/ 125
5.7.1構建環節/ 126
5.7.2幾個關鍵問題/ 127
5.8流水線構建完成後的質量保障/ 131
5.8.1依賴規則限制/ 131
5.8.2功能測試/ 132
5.8.3非功能測試/ 133
5.8.4總結/ 135
5.9持續交付實踐:根據業務場景找方案/ 136
5.9.1軟體的持續部署發布/ 137
5.9.2發布策略/ 139
5.9.3持續交付體系的收益/ 141
5.9.4總結/ 141
第6章 穩定性保障
6.1極端業務場景下的穩定性保障/ 144
6.1.1我們所面對的極端業務場景/ 144
6.1.2技術上的挑戰/ 146
6.1.3極端業務場景下的不確定因素/ 148
6.2穩定性實踐/ 150
6.2.1容量規劃/ 150
6.2.2限流降級/ 160
6.2.3開關和預案/ 167
6.2.4全鏈路跟蹤系統/ 172
第7章 故障管理
7.1我對故障的理解/ 182
7.2故障定級和定責/ 186
7.2.1故障的定級標準/ 187
7.2.2故障的定責標準/ 189
7.3故障定責的目的/ 192
7.3.1關於定責和處罰/ 192
7.3.2目的是鼓勵做事,而不是處罰錯誤/ 194
7.3.3處罰的“負”作用遠超我們的想像/ 196
7.4故障應急和故障復盤/ 197
7.4.1故障應急/ 198
7.4.2故障復盤/ 201
7.4.3定期總結故障案例/ 203
7.4.4總結/ 204
第8章 雲運維的技術選型
8.1為什麼蘑菇街會選擇上雲/ 206
8.1.1我們所面臨的問題/ 206
8.1.2縱觀技術發展趨勢/ 211
8.1.3沒有銀彈/ 212
8.2為什麼混合雲是未來雲計算的主流形態/ 213
8.2.1關於混合雲/ 213
8.2.2我們所經歷的幾個基礎設施建設階段/ 215
8.2.3總結/ 219
8.3面向套用層的雲架構解決方案:Spring Cloud / 219
8.3.1 Spring Cloud框架中雲的影子/ 220
8.3.2 CNCF / 223
8.3.3可以預見的技術發展趨勢/ 224
8.4雲計算時代的彈性伸縮/ 225
8.4.1彈性伸縮的主體是誰/ 225
8.4.2總結/ 228
第9章CDN
9.1從CDN和雲存儲來聊聊雲生態的崛起/ 230
9.1.1 CDN和雲存儲/ 230
9.1.2雲生態的優勢/ 231
9.1.3總結/ 234
9.2頁面靜態化架構和二級CDN建設/ 235
9.2.1靜態化架構建設的業務場景/ 235
9.2.2頁面靜態化架構/ 237
9.2.3靜態化架構在大促場景中的套用/ 239
9.2.4二級CDN建設/ 240
9.2.5總結/ 241
第10章 運維人員的成長之路
10.1我是如何走上運維崗位的/ 244
10.1.1我是怎么開始做運維工作的/ 244
10.1.2我為什麼會把運維當作職業發展的方向/ 247
10.1.3給我們的一點啟發/ 251
10.2運維需要懂產品和運營嗎/ 252
10.2.1運維的角色轉變和價值體現/ 253
10.2.2技術產品/ 254
10.2.3技術運營/ 254
10.2.4總結/ 256
10.3從技術到管理,如何轉身/ 257
10.3.1從員工離職說起/ 257
10.3.2關於員工離職的兩個觀點/ 258
10.3.3談談如何做好技術管理/ 259
10.3.4技術管理中引以為戒的一些反模式/ 261
10.3.5總結/ 262
10.4樹立個人品牌意識/ 263
10.4.1對求職者的背景調查/ 263
10.4.2如何樹立個人口碑/ 265
10.4.3要引以為戒的反例/ 266
10.4.4共勉/ 268