注冊(cè) | 登錄讀書好,好讀書,讀好書!
讀書網(wǎng)-DuShu.com
當(dāng)前位置: 首頁(yè)出版圖書科學(xué)技術(shù)計(jì)算機(jī)/網(wǎng)絡(luò)軟件工程及軟件方法學(xué)云原生測(cè)試實(shí)戰(zhàn)

云原生測(cè)試實(shí)戰(zhàn)

云原生測(cè)試實(shí)戰(zhàn)

定 價(jià):¥79.80

作 者: 孫高飛
出版社: 人民郵電出版社
叢編項(xiàng):
標(biāo) 簽: 暫缺

購(gòu)買這本書可以去


ISBN: 9787115618733 出版時(shí)間: 2023-10-01 包裝: 平裝
開本: 頁(yè)數(shù): 字?jǐn)?shù):  

內(nèi)容簡(jiǎn)介

  本書用通俗易懂的語(yǔ)言介紹云原生理論基礎(chǔ),用豐富的實(shí)際案例還原云原生測(cè)試場(chǎng)景,是一本專注于講述云原生測(cè)試的實(shí)戰(zhàn)圖書。本書共 9 章,第 1 章至第 3 章主要介紹云原生基礎(chǔ),包括云原生的概念和相關(guān)測(cè)試挑戰(zhàn),Docker 的核心能力和測(cè)試場(chǎng)景,Kubernetes 的集群搭建、常用對(duì)象和定制化開發(fā)等內(nèi)容;第 4 章至第 6 章主要介紹云原生測(cè)試場(chǎng)景,包括在 Kubernetes 中實(shí)施混沌工程、性能測(cè)試、穩(wěn)定性測(cè)試,使用 Prometheus搭建監(jiān)控系統(tǒng)等內(nèi)容;第 7 章至第 9 章主要介紹云原生與其他領(lǐng)域的結(jié)合,包括邊緣計(jì)算、CI/CD 和大數(shù)據(jù)技術(shù)與 Kubernetes 結(jié)合的測(cè)試場(chǎng)景及對(duì)應(yīng)的測(cè)試方案。

作者簡(jiǎn)介

  孫高飛騰訊優(yōu)圖實(shí)驗(yàn)室資深測(cè)試開發(fā)工程師,專注人工智能與云原生領(lǐng)域的測(cè)試實(shí)踐,曾就職于第四范式。TesterHome社區(qū)專欄作者,并作為社區(qū)管理員參與組織過(guò)多場(chǎng)中國(guó)互聯(lián)網(wǎng)測(cè)試開發(fā)大會(huì)(MTSC),是MTSC2023技術(shù)委員會(huì)成員。

圖書目錄

第 1 章 認(rèn)識(shí)云原生 1
1.1 什么是云原生 1
1.2 云原生的測(cè)試挑戰(zhàn) 3
1.3 本章總結(jié) 4
第 2 章 容器技術(shù)基礎(chǔ) 5
2.1 構(gòu)建瀏覽器集群 5
2.1.1 Selenium Grid 5
2.1.2 Docker 部署 Selenium Grid 6
2.1.3 小結(jié) 8
2.2 容器隔離的原理 9
2.2.1 隔離 9
2.2.2 Linux 名字空間 10
2.2.3 小結(jié) 13
2.3 網(wǎng)絡(luò)模式 13
2.3.1 bridge 網(wǎng)絡(luò)模式 13
2.3.2 host 網(wǎng)絡(luò)模式 16
2.3.3 container 網(wǎng)絡(luò)模式 17
2.3.4 小結(jié) 18
2.4 容器鏡像 19
2.4.1 鏡像構(gòu)建 19
2.4.2 聯(lián)合文件系統(tǒng) 23
2.4.3 鏡像分層的優(yōu)勢(shì) 25
2.4.4 鏡像掃描工具的開發(fā) 26
2.4.5 小結(jié) 28
2.5 本章總結(jié) 28
第 3 章 Kubernetes 基礎(chǔ) 29
3.1 深入解析 Pod 29
3.1.1 Pod 的架構(gòu) 29
3.1.2 Pod 的調(diào)度 31
3.1.3 Pod 的資源管理 34
3.1.4 小結(jié) 37
3.2 服務(wù)高可用設(shè)計(jì) 37
3.2.1 高可用的常見設(shè)計(jì) 38
3.2.2 服務(wù)副本與水平擴(kuò)展 38
3.2.3 基于 Service 的負(fù)載均衡網(wǎng)絡(luò) 41
3.2.4 基于探針的健康檢查 43
3.2.5 小結(jié) 46
3.3 再談鏡像掃描工具 50
3.3.1 DaemonSet 定義 50
3.3.2 DaemonSet 與 Headless Service 51
3.3.3 在容器中調(diào)用 Docker 52
3.3.4 小結(jié) 52
3.4 離線業(yè)務(wù) 52
3.4.1 Job 52
3.4.2 CronJob 54
3.4.3 小結(jié) 54
3.5 K8s 開發(fā)基礎(chǔ) 55
3.5.1 客戶端的初始化 55
3.5.2 基本 API 的使用 56
3.5.3 資源回收工具的開發(fā) 58
3.5.4 讓工具在集群中運(yùn)行-InCluster 模式和 RBAC 61
3.5.5 解決容器時(shí)區(qū)問題 64
3.5.6 小結(jié) 65
3.6 本章總結(jié) 66
第 4 章 混沌工程 67
4.1 什么是混沌工程 67
4.2 高可用測(cè)試的理論 67
4.2.1 冪等與重試 68
4.2.2 狀態(tài)管理 69
4.2.3 CAP 70
4.2.4 BASE 73
4.2.5 監(jiān)控告警 75
4.2.6 小結(jié) 75
4.3 高可用掃描工具 75
4.3.1 掃描規(guī)則 76
4.3.2 代碼實(shí)現(xiàn) 76
4.3.3 小結(jié) 80
4.4 故障注入工具 81
4.4.1 故障注入工具的底層原理 81
4.4.2 開源工具的選擇 82
4.4.3 Chaos Mesh 的架構(gòu) 83
4.4.4 K8s 的 Operator 84
4.4.5 Chaos Dashboard 87
4.4.6 chaosd-server 88
4.4.7 sidecar 模式的故障注入 89
4.4.8 jvm-sandbox 97
4.4.9 故障注入的注意點(diǎn) 100
4.4.10 小結(jié) 100
4.5 K8s 中的特殊故障 101
4.5.1 Pod 無(wú)法被刪除 101
4.5.2 驅(qū)逐策略與搶占優(yōu)先級(jí) 103
4.5.3 K8s 核心組件故障 105
4.5.4 小結(jié) 107
4.6 高可用的評(píng)估手段 107
4.6.1 以模擬 SLA 為角度評(píng)估 107
4.6.2 以故障場(chǎng)景為角度評(píng)估 109
4.6.3 RPO 與 RTO 109
4.6.4 小結(jié) 110
4.7 本章總結(jié) 110
第 5 章 性能測(cè)試與監(jiān)控 111
5.1 Prometheus 快速入門 112
5.1.1 快速部署 112
5.1.2 架構(gòu)介紹 113
5.1.3 可視化 114
5.1.4 小結(jié) 116
5.2 PromQL 詳解 116
5.2.1 理解時(shí)間序列 117
5.2.2 理解指標(biāo)類型 117
5.2.3 語(yǔ)法詳解 119
5.2.4 HTTP API 123
5.2.5 小結(jié) 126
5.3 容量測(cè)試 126
5.3.1 超賣的風(fēng)險(xiǎn) 127
5.3.2 資源的初步評(píng)估 128
5.3.3 統(tǒng)計(jì)具體的資源 130
5.3.4 小結(jié) 134
5.4 分布式壓力測(cè)試工具 JMeter 134
5.4.1 部署 JMeter 集群 135
5.4.2 小結(jié) 136
5.5 測(cè)試 K8s 的性能 136
5.5.1 測(cè)試方法 136
5.5.2 Kubemark 簡(jiǎn)介 137
5.5.3 Kubemark 部署 138
5.5.4 小結(jié) 143
5.6 本章總結(jié) 143
第 6 章 穩(wěn)定性測(cè)試與監(jiān)控 144
6.1 什么是穩(wěn)定性測(cè)試 144
6.2 List-Watch 145
6.2.1 K8s 的控制器模型 145
6.2.2 List-Watch 簡(jiǎn)介 146
6.2.3 小結(jié) 148
6.3 構(gòu)建事件監(jiān)控組件 149
6.3.1 Pod 與容器的狀態(tài) 149
6.3.2 Pod 的 Condition 和 Phase 150
6.3.3 獲取異常容器 152
6.3.4 獲取異常信息 153
6.3.5 NPD 154
6.3.6 小結(jié) 157
6.4 持續(xù)性觀測(cè) 157
6.4.1 自定義 Exporter 157
6.4.2 服務(wù)可用時(shí)間 164
6.4.3 業(yè)務(wù)巡檢與Pushgateway 167
6.4.4 小結(jié) 168
6.5 Operator 168
6.5.1 什么是 Operator 169
6.5.2 Prometheus Operator 170
6.5.3 小結(jié) 171
6.6 本章總結(jié) 171
第 7 章 邊緣計(jì)算 172
7.1 什么是邊緣計(jì)算 172
7.1.1 云計(jì)算的不足 172
7.1.2 就近計(jì)算的設(shè)計(jì) 173
7.1.3 小結(jié) 174
7.2 K8s 與邊緣計(jì)算 174
7.2.1 邊緣自治 175
7.2.2 分布式健康檢查 176
7.2.3 邊緣調(diào)度 177
7.2.4 就近計(jì)算 180
7.2.5 邊緣灰度 182
7.2.6 邊緣存儲(chǔ) 184
7.2.7 小結(jié) 185
7.3 核心測(cè)試場(chǎng)景 185
7.3.1 邊緣計(jì)算的容量測(cè)試 186
7.3.2 邊緣計(jì)算的高可用測(cè)試 186
7.3.3 數(shù)據(jù)通信測(cè)試 188
7.3.4 調(diào)度測(cè)試 189
7.3.5 小結(jié) 190
7.4 本章總結(jié) 190
第 8 章 持續(xù)集成和持續(xù)部署 191
8.1 構(gòu)建 CI/CD 系統(tǒng)的關(guān)鍵 191
8.1.1 CI/CD 與流水線 191
8.1.2 規(guī)模擴(kuò)大帶來(lái)的挑戰(zhàn) 194
8.1.3 高度自動(dòng)化的工程能力 195
8.1.4 小結(jié) 196
8.2 Jenkins 流水線 196
8.2.1 流水線基礎(chǔ) 197
8.2.2 多分支流水線 200
8.2.3 Jenkins 共享庫(kù) 202
8.2.4 小結(jié) 207
8.3 K8s 中的 CI/CD 207
8.3.1 Jenkins 與 Docker 207
8.3.2 Jenkins 與 K8s 208
8.3.3 小結(jié) 215
8.4 環(huán)境治理 215
8.4.1 環(huán)境的隔離級(jí)別 215
8.4.2 K8s 中的資源隔離 216
8.4.3 在 K8s 中實(shí)現(xiàn)邏輯隔離 218
8.4.4 Helm 221
8.4.5 小結(jié) 223
8.5 本章總結(jié) 223
第 9 章 云原生與大數(shù)據(jù) 224
9.1 什么是大數(shù)據(jù) 224
9.1.1 大數(shù)據(jù)的 4 個(gè)特征 224
9.1.2 分布式存儲(chǔ) 225
9.1.3 分布式計(jì)算 226
9.1.4 批處理和流計(jì)算 226
9.1.5 大數(shù)據(jù)生態(tài) 227
9.1.6 小結(jié) 228
9.2 K8s 中的分布式計(jì)算 228
9.2.1 K8s 中的存儲(chǔ) 229
9.2.2 Spark Operator 233
9.2.3 小結(jié) 235
9.3 Spark 基礎(chǔ) 235
9.3.1 搭建本地環(huán)境 236
9.3.2 Spark 的運(yùn)行機(jī)制 236
9.3.3 RDD 基礎(chǔ) 237
9.3.4 小結(jié) 239
9.4 典型測(cè)試場(chǎng)景介紹 239
9.4.1 shuffle 與數(shù)據(jù)傾斜 239
9.4.2 分區(qū)對(duì)性能的影響 240
9.4.3 多種數(shù)據(jù)源的對(duì)接 241
9.4.4 功能測(cè)試與數(shù)據(jù)質(zhì)量監(jiān)控242
9.4.5 流計(jì)算與數(shù)據(jù)一致性 243
9.4.6 小結(jié) 245
9.5 造數(shù)工具 245
9.5.1 造數(shù)的難點(diǎn)與解決方案 246
9.5.2 代碼實(shí)現(xiàn) 247
9.5.3 非結(jié)構(gòu)化數(shù)據(jù)的構(gòu)建 250
9.5.4 小結(jié) 252
9.6 本章總結(jié) 252

本目錄推薦

掃描二維碼
Copyright ? 讀書網(wǎng) ranfinancial.com 2005-2020, All Rights Reserved.
鄂ICP備15019699號(hào) 鄂公網(wǎng)安備 42010302001612號(hào)