《企業級雲原生架構技術、服務與實踐》是2021年人民郵電出版社出版的圖書,作者是劉景應(四牛)。本書基於作者在阿里公司多年的大型項目架構設計實踐經驗,介紹雲原生相關技術及產品;內容深入淺出,既有方法論詳述也有技術原理深入分析;理論與實踐並重,深入闡述雲原生架構設計;緊貼技術趨勢,把握主流技術發展。
基本介紹
- 中文名:企業級雲原生架構技術、服務與實踐
- 作者:劉景應(四牛)
- 出版社:人民郵電出版社
- ISBN:9787115551740
內容簡介,圖書目錄,作者簡介,
內容簡介
《企業級雲原生架構:技術、服務與實踐》較為全面、系統地介紹了雲原生架構相關的方法論與技術產品,並結合作者多年的大型項目建設實施經驗,闡述了分散式環境下面向雲原生的架構設計實踐。本書主要分為4個部分,分別是雲原生概述、雲原生技術、雲原生服務、雲原生架構實踐。本書兼顧理論、技術與實踐,對從事相關行業的讀者具有很好的學習指導意義。
《企業級雲原生架構:技術、服務與實踐》面向的讀者對象為網際網路行業的業務諮詢師、系統架構師,以及相關領域的技術開發人員。
圖書目錄
目 錄
第 一部分 雲原生概述
第 1章 初見雲原生 2
1.1 什麼是雲原生 2
1.1.1 雲原生起源 2
1.1.2 企業為什麼需要雲原生 3
1.1.3 雲原生的設計原則 7
1.2 雲原生架構 9
1.2.1 敏捷基礎設施 10
1.2.2 微服務 12
1.2.3 持續交付 14
1.2.4 DevOps 16
1.2.5 雲原生套用十二要素 19
1.3 CNCF 28
1.3.1 CNCF生態藍圖 28
1.3.2 CNCF路線圖 31
1.4 企業套用上雲 33
1.4.1 雲託管模式 35
1.4.2 雲原生模式 37
第 2章 企業套用架構演進 40
2.1 單體架構 40
2.2 分散式架構 41
2.3 SOA 42
2.4 微服務架構 43
2.5 服務格線架構 45
2.6 Serverless架構 48
第二部分 雲原生技術
第3章 Docker 52
3.1 Docker概述 52
3.1.1 容器和虛擬機 52
3.1.2 Docker的歷史與版本 54
3.1.3 Docker的構成 55
3.1.4 Docker處理流程 57
3.1.5 Docker的優勢 57
3.1.6 Docker常用命令 58
3.2 Docker分層設計 63
3.2.1 分層設計與寫時拷貝 64
3.2.2 鏡像分層管理 66
3.2.3 鏡像版本變更管理 69
3.3 Docker三要素 70
3.3.1 鏡像 70
3.3.2 容器 74
3.3.3 鏡像倉庫 81
3.4 Docker數據管理 85
3.4.1 非持久化數據 86
3.4.2 持久化數據 88
3.4.3 集群節點間共享存儲 91
3.5 Docker網路 92
3.5.1 網路命名空間 92
3.5.2 Linux網路虛擬化 93
3.5.3 Docker網路架構 95
3.5.4 容器網路模型 96
3.5.5 單機橋接網路 98
3.5.6 多機覆蓋網路 100
3.5.7 混合網際網路 102
3.5.8 網路訪問控制 104
3.6 Docker三劍客 106
3.6.1 Docker Machine 107
3.6.2 Docker Compose 109
3.6.3 Docker Swarm 110
第4章 Kubernetes 116
4.1 Kubernetes的基本概念和術語 117
4.1.1 資源抽象對象 120
4.1.2 控制器抽象對象 123
4.1.3 其他輔助對象 128
4.2 Kubernetes系統架構 128
4.2.1 K8s整體架構 128
4.2.2 K8s集群高可用架構 131
4.2.3 K8s網路架構 133
4.3 Kubernetes運行機制 138
4.3.1 套用運行原理 138
4.3.2 套用訪問機制 141
4.3.3 核心組件運行原理 147
4.4 kubectl命令 155
4.4.1 kubeconfig 155
4.4.2 kubectl子命令 157
4.4.3 kubectl可操作的資源對象類型 159
4.4.4 kubectl參數列表 160
4.4.5 kubectl輸出格式 161
4.5 Kubernetes容器雲 162
4.5.1 阿里雲容器服務(ACK) 162
4.5.2 Amazon Elastic Kubernetes Service(Amazon EKS) 165
4.5.3 Azure Kubernetes Service(AKS) 166
4.5.4 Google Kubernetes Engine (GKE) 167
第5章 Prometheus 169
5.1 Prometheus概述 169
5.1.1 Prometheus簡介 169
5.1.2 Prometheus相關概念 170
5.1.3 Prometheus組成及架構 172
5.1.4 prometheus.yml配置檔案 175
5.2 Prometheus監控K8s集群 179
5.2.1 監控K8s集群節點 181
5.2.2 監控K8s的pod 183
5.2.3 監控K8s的API server 184
5.2.4 監控K8s的服務 185
5.2.5 監控kube-state-metrics 187
5.3 Prometheus監控傳統套用 187
第6章 微服務 190
6.1 微服務架構概述 190
6.1.1 微服務架構的演進 190
6.1.2 微服務架構的特點 192
6.1.3 微服務治理 193
6.1.4 微服務的組織架構 195
6.2 微服務設計原則 196
6.3 服務化實踐 202
6.4 微服務框架 203
6.4.1 High-Speed Service Framework(HSF) 203
6.4.2 Dubbo 205
6.4.3 Spring Cloud 206
6.4.4 gRPC 209
6.4.5 服務格線(service mesh) 211
6.5 微服務通信 215
6.5.1 RPC 215
6.5.2 RESTful 218
6.5.3 優缺點對比 221
6.5.4 兩種協定風格的融合方案 222
第三部分 雲原生服務
第7章 雲原生IaaS服務 234
7.1 容器服務 235
7.2 鏡像倉庫服務 238
7.3 分散式存儲服務 240
7.4 虛擬網路服務 243
第8章 雲原生DaaS服務 247
8.1 資料庫服務 247
8.2 分散式對象存儲 249
8.3 分散式快取 252
8.4 分散式日誌服務 257
8.5 分散式訊息佇列 260
8.6 大數據服務 264
8.6.1 大數據平台 265
8.6.2 數據資源池 268
8.6.3 數據集成平台 269
第9章 雲原生PaaS服務 270
9.1 分散式套用服務 270
9.2 分散式配置中心 273
9.3 分散式資料庫服務 276
9.4 分散式定時任務 281
9.5 業務實時監控服務 283
9.6 服務網關 286
9.7 技術組件服務 288
9.7.1 統一認證服務 288
9.7.2 單點登錄服務 289
9.7.3 全局序列號服務 290
9.7.4 持久化服務 292
9.7.5 連線池服務 293
9.7.6 事務管理 295
9.7.7 異常管理 297
9.7.8 數據傳輸服務 300
第四部分 雲原生架構實踐
第 10章 高可用解決方案 304
10.1 高可用定義 304
10.2 高可用設計 305
10.2.1 套用設計 305
10.2.2 數據設計 311
10.2.3 兼容性設計 314
10.2.4 容量設計 315
10.3 高可用方案 317
10.3.1 全鏈路壓測方案 317
10.3.2 流控降級方案 321
10.3.3 故障演練方案 323
10.3.4 故障隔離方案 327
10.3.5 彈性伸縮方案 330
10.3.6 套用應急預案 333
第 11章 數據一致性解決方案 337
11.1 數據一致性理論 337
11.1.1 ACID特性 338
11.1.2 事務隔離級別 338
11.1.3 CAP定理 339
11.1.4 BASE思想 340
11.2 數據一致性模型 341
11.3 數據一致性原則 342
11.3.1 數據一致性實現指導 342
11.3.2 數據拆分原則 344
11.3.3 熱點數據處理 345
11.4 鎖機制 346
11.4.1 悲觀鎖與樂觀鎖 346
11.4.2 資料庫鎖 347
11.4.3 分散式鎖 347
11.5 數據一致性解決方案 348
11.5.1 強一致性解決方案 349
11.5.2 弱一致性解決方案 352
11.5.3 終一致性解決方案 353
第 12章 容災多活解決方案 359
12.1 SHARE 78容災等級 359
12.2 容災目標 362
12.3 數據容災方案 363
12.4 同城雙活方案 364
12.5 兩地三中心方案 366
12.6 異地雙活方案 367
12.7 單元化方案 369
作者簡介
劉景應,具有20年軟體開發、架構設計以及解決方案諮詢經驗,目前就職於阿里云云原生套用平台,熟悉網際網路企業的技術棧與開發管理模式,對雲原生相關技術、產品、架構有較為全面的理解,是國內雲原生技術的先行者和布道者,致力於推動雲原生相關理念和技術在國內IT套用中的落地實踐;具備豐富的大型實時線上套用系統的架構設計經驗,曾負責了多個部委以及行業頭部客戶的核心業務系統的架構諮詢與技術指導。