注冊 | 登錄讀書好,好讀書,讀好書!
讀書網(wǎng)-DuShu.com
當(dāng)前位置: 首頁出版圖書科學(xué)技術(shù)計算機/網(wǎng)絡(luò)網(wǎng)絡(luò)與數(shù)據(jù)通信Kong入門與實戰(zhàn):基于Nginx和OpenResty的云原生微服務(wù)網(wǎng)關(guān)

Kong入門與實戰(zhàn):基于Nginx和OpenResty的云原生微服務(wù)網(wǎng)關(guān)

Kong入門與實戰(zhàn):基于Nginx和OpenResty的云原生微服務(wù)網(wǎng)關(guān)

定 價:¥109.00

作 者: 閆觀濤 著
出版社: 人民郵電出版社
叢編項:
標(biāo) 簽: 暫缺

ISBN: 9787115554901 出版時間: 2021-01-01 包裝: 平裝
開本: 16開 頁數(shù): 372 字?jǐn)?shù):  

內(nèi)容簡介

  本書是一本介紹云原生微服務(wù)網(wǎng)關(guān)Kong的入門與實戰(zhàn)的書,內(nèi)容全面務(wù)實、由淺入深,幾乎涵蓋Kong相關(guān)的所有知識點。全書共12章,包括Kong的基礎(chǔ)知識點概述、安裝和基本概念、管理運維、基本功能、配置詳解、Lua語言、日志收集與分析、指標(biāo)監(jiān)控與報警、Kong的高級進階、內(nèi)置插件與自定義插件、高級案例實戰(zhàn)。本書配有大量的實戰(zhàn)示例,尤其是第12章的九大新穎場景案例,使讀者從理論到實戰(zhàn)學(xué)以致用。本書適合軟件開發(fā)人員、測試人員、運維人員、安全人員、架構(gòu)師、技術(shù)經(jīng)理等IT資深人士閱讀。

作者簡介

  閆觀濤 架構(gòu)師,Kong項目貢獻者,擁有多年IT行業(yè)從業(yè)經(jīng)驗,目前就職于北森云計算股份有限公司,專注于云原生分布式SaaS/PaaS系統(tǒng)的架構(gòu)和研發(fā),擁有多項國家發(fā)明專利。

圖書目錄

第1章 基礎(chǔ)知識點概述 1
1.1 網(wǎng)關(guān) 1
1.2 微服務(wù) 1
1.3 Nginx 2
1.4 OpenResty 3
1.5 Kong 5
1.6 Kong 的插件 5
1.7 服務(wù)網(wǎng)格 7
1.8 小結(jié) 8
第 2 章 Kong 的安裝和基本概念 9
2.1 Kong 的安裝部署 9
2.1.1 環(huán)境介紹 10
2.1.2 直接安裝 10
2.1.3 容器安裝 10
2.1.4 Kubernetes 安裝 11
2.2 Kong 數(shù)據(jù)庫的安裝部署 11
2.2.1 PostgreSQL 11
2.2.2 Cassandra 12
2.2.3 DB-less 12
2.3 Kong 基礎(chǔ)配置 15
2.4 Kong 的啟動和停止 16
2.5 Kong 的基礎(chǔ)對象 17
2.5.1 路由 18
2.5.2 服務(wù) 19
2.5.3 上游 20
2.5.4 目標(biāo) 22
2.5.5 消費者 22
2.5.6 插件 22
2.5.7 證書 24
2.5.8 SNI 24
2.5.9 對象之間的關(guān)系 24
2.6 小結(jié) 26
第 3 章 Kong 的管理運維 27
3.1 Konga 介紹 27
3.2 源碼安裝 28
3.2.1 安裝 Git 和 Node.js 28
3.2.2 安裝 Konga 28
3.2.3 配置 Konga 28
3.2.4 啟動 Konga 29
3.3 容器安裝 29
3.4 連接 Konga 與 Kong 30
3.5 Konga 模塊與功能 31
3.5.1 首頁儀表盤 32
3.5.2 集群節(jié)點信息 33
3.5.3 服務(wù)管理 34
3.5.4 路由管理 36
3.5.5 消費者管理 36
3.5.6 插件管理 38
3.5.7 上游管理 39
3.5.8 目標(biāo)節(jié)點管理 39
3.5.9 證書管理 40
3.5.10 用戶管理 41
3.5.11 快照管理 41
3.5.12 系統(tǒng)設(shè)置 42
3.6 All-In-One 43
3.7 小結(jié) 45
第4章 Kong 的基本功能 46
4.1 路由轉(zhuǎn)發(fā) 46
4.1.1 配置服務(wù) 46
4.1.2 配置路由 47
4.1.3 測試轉(zhuǎn)發(fā)請求 48
4.2 負載均衡 48
4.2.1 案例準(zhǔn)備 49
4.2.2 配置服務(wù) 52
4.2.3 配置路由 53
4.2.4 配置上游 54
4.2.5 添加目標(biāo)節(jié)點 55
4.2.6 驗證結(jié)果 56
4.3 灰度發(fā)布 58
4.4 藍綠部署 60
4.5 正則路由 60
4.6 HTTPS 跳轉(zhuǎn) 61
4.7 混合模式 63
4.7.1 案例準(zhǔn)備 63
4.7.2 部署網(wǎng)格集群 64
4.7.3 驗證網(wǎng)格集群 65
4.7.4 配置路由及限速 65
4.7.5 驗證 67
4.8 TCP 流代理 67
4.9 小結(jié) 70
第 5 章 Kong 的配置詳解 71
5.1 常規(guī)通用配置 71
5.2 Nginx 通用配置 72
5.2.1 代理 / 監(jiān)聽類 72
5.2.2 工作進程類 74
5.2.3 請求類 74
5.2.4 SSL/TLS 類 75
5.2.5 真實 IP 類 75
5.2.6 其他類 76
5.3 指令注入配置 77
5.4 數(shù)據(jù)存儲配置 78
5.5 存儲緩存配置 80
5.6 DNS 解析配置 81
5.7 路由同步配置 82
5.8 Lua 綜合配置 83
5.9 混合模式配置 83
5.10 小結(jié) 84
第 6 章 Lua 語言 85
6.1 簡介 85
6.2 環(huán)境 85
6.3 注釋 86
6.4 變量 86
6.5 數(shù)據(jù)類型 87
6.6 字符串 87
6.7 運算符 88
6.7.1 算術(shù)運算符 88
6.7.2 關(guān)系運算符 89
6.7.3 邏輯運算符 89
6.7.4 連接運算符 89
6.8 控制語句 90
6.8.1 分支語句 90
6.8.2 循環(huán)語句 91
6.8.3 中斷語句 92
6.9 函數(shù) 93
6.9.1 可變參數(shù) 94
6.9.2 多值返回 94
6.9.3 命名參數(shù) 95
6.10 表 95
6.10.1 表的構(gòu)造 95
6.10.2 表的引用 97
6.10.3 表的迭代 97
6.10.4 表的操作 98
6.10.5 元表 99
6.10.6 類對象 100
6.11 模塊 101
6.11.1 模塊定義 101
6.11.2 加載函數(shù) 101
6.11.3 加載機制 102
6.12 小結(jié) 103
第 7 章 日志收集與分析 104
7.1 日志的分類與配置 104
7.1.1 訪問日志的屬性 104
7.1.2 訪問日志的配置 105
7.1.3 錯誤日志的配置 106
7.2 ELK+Filebeat 的選擇 107
7.3 Filebeat 107
7.3.1 安裝 107
7.3.2 配置 107
7.3.3 啟動 109
7.4 Elasticsearch 109
7.4.1 安裝 109
7.4.2 配置 109
7.4.3 啟動 110

7.5 Logstash 111
7.5.1 安裝 111
7.5.2 配置 111
7.5.3 啟動 111
7.6 Kibana 112
7.6.1 安裝 112
7.6.2 配置 112
7.6.3 啟動 112
7.6.4 應(yīng)用 113
7.7 Elasticsearch 的輔助工具 116
7.8 小結(jié) 118
第 8 章 指標(biāo)監(jiān)控與報警 119
8.1 Kong 的監(jiān)控指標(biāo) 119
8.2 Prometheus 122
8.2.1 安裝 122
8.2.2 配置 122
8.2.3 啟動 123
8.2.4 驗證 123
8.3 Grafana 125
8.3.1 安裝 125
8.3.2 配置 125
8.3.3 啟動 125
8.4 監(jiān)控指標(biāo)的可視化 126
8.5 監(jiān)控指標(biāo)的報警 129
8.5.1 郵件報警 129
8.5.2 企業(yè)微信報警 133
8.6 小結(jié) 135
第 9 章 高級進階 136
9.1 負載均衡的原理 136
9.1.1 基于 DNS 的負載均衡 136
9.1.2 基于環(huán)形均衡器的負載均衡 137
9.2 健康檢測的原理 140
9.2.1 健康檢測的原理 140
9.2.2 健康檢測的類型 142
9.3 集群機制的原理 143
9.3.1 單節(jié)點 Kong 144
9.3.2 多節(jié)點 Kong 集群 144
9.3.3 數(shù)據(jù)庫緩存 144
9.4 緩存管理 145
9.4.1 lua_shared_dict 145
9.4.2 lua-resty-lrucache 149
9.4.3 lua-resty-mlcache 150
9.5 定時器 155
9.5.1 ngx.timer.a(chǎn)t 155
9.5.2 ngx.timer.every 156
9.5.3 參數(shù)控制和優(yōu)化 157
9.6 進程管理 157
9.6.1 主 / 工作進程 158
9.6.2 單進程 158
9.6.3 輔助進程 158
9.6.4 信號進程 159
9.6.5 特權(quán)代理進程 159
9.7 協(xié)程管理 159
9.7.1 ngx.thread.spawn 159
9.7.2 ngx.thread.wait 160
9.7.3 ngx.thread.kill 161
9.8 Kong 參數(shù)優(yōu)化 161
9.8.1 驚群效應(yīng) 161
9.8.2 參數(shù)優(yōu)化 162
9.9 Kong 與 HTTP2 165
9.10 Kong 與 WebSocket 167
9.11 Kong 與 gRPC 171
9.12 Kong 與 LVS 173
9.12.1 基本概念 173
9.12.2 LVS 的三種模式 175
9.12.3 LVS 負載均衡算法 178
9.12.4 Keepalived+LVS+Kong實踐 179
9.13 Kong 與 Consul 184
9.13.1 整體框架結(jié)構(gòu)圖 185
9.13.2 Kong+Consul 實踐 186
9.14 Kong 與 Kubernetes 192
9.14.1 基本概念 192
9.14.2 安裝 Kong Ingress Controller ..193
9.14.3 驗證 Kong Ingress Controller ..194
9.15 Kong 的安全 198
9.15.1 通過 3 層或者 4 層網(wǎng)絡(luò)控制 ..198
9.15.2 Kong API 本地回環(huán) 199
9.16 火焰圖 199
9.16.1 概念 199
9.16.2 安裝火焰圖工具 200
9.16.3 生成火焰圖 201
9.17 小結(jié) 203

第 10 章 內(nèi)置插件

10.1 插件分類 204
10.2 環(huán)境準(zhǔn)備 204
10.3 身份驗證 207
10.3.1 基本身份驗證 207
10.3.2 密鑰身份驗證 211
10.3.3 HMAC 身份驗證 213
10.3.4 OAuth 2.0 216
10.4 安全防護 223
10.4.1 IP 限制 223
10.4.2 機器人檢測 224
10.4.3 CORS 227
10.5 流量控制 228
10.5.1 請求大小限制 228
10.5.2 終止請求 230
10.6 無服務(wù)器架構(gòu) 232
10.6.1 AWS Lambda 232
10.6.2 Azure Functions 235
10.6.3 Serverless Functions 237
10.7 分析監(jiān)控 240
10.7.1 Prometheus 240
10.7.2 Zipkin 242
10.8 信息轉(zhuǎn)換器 244
10.8.1 請求轉(zhuǎn)換器 244
10.8.2 響應(yīng)轉(zhuǎn)換器 246
10.8.3 Correlation ID 247
10.9 日志記錄 249
10.9.1 UDP 日志 249
10.9.2 HTTP 日志 253
10.9.3 Kafka 日志 255
10.9.4 MySQL 日志 261
10.10 小結(jié) 264
第 11 章 自定義插件 265
11.1 簡介 265
11.1.1 基本插件 265
11.1.2 高級插件 266
11.2 原理 266
11.3 詳解 PDK 269
11.3.1 單個屬性 269
11.3.2 kong.client 270
11.3.3 kong.ctx 273
11.3.4 kong.ip 274
11.3.5 kong.log 275
11.3.6 kong.nginx 277
11.3.7 kong.node 277
11.3.8 kong.request 278
11.3.9 kong.response 284
11.3.10 kong.router 288
11.3.11 kong.service 289
11.3.12 kong.service.request...290
11.3.13 kong.service.response ...296
11.3.14 kong.table 298
11.4 插件開發(fā) 299
11.5 插件測試的運行環(huán)境 299
11.6 插件的制作與安裝 300
11.7 插件測試與運行 302
11.8 插件與 C 語言 304
11.9 插件與 Go 語言 306
11.9.1 Go 安裝 306
11.9.2 開發(fā)流程 307
11.9.3 開發(fā)示例 308
11.10 小結(jié)
第 12 章 高級案例實戰(zhàn) 312
12.1 案例 1:智能路由 312
12.1.1 插件需求 313
12.1.2 插件開發(fā) 313
12.1.3 插件部署 315
12.1.4 插件配置 316
12.1.5 插件驗證 317
12.2 案例 2:動態(tài)限頻 317
12.2.1 插件需求 318
12.2.2 插件開發(fā) 319
12.2.3 插件部署 325
12.2.4 插件配置 325
12.2.5 插件驗證 327
12.3 案例 3:下載限流 327
12.3.1 插件需求 328
12.3.2 插件開發(fā) 328
12.3.3 插件部署 329
12.3.4 插件配置 329
12.3.5 插件驗證 330
12.4 案例 4:流量鏡像 331
12.4.1 插件需求 332
12.4.2 插件開發(fā) 332
12.4.3 插件部署 333
12.4.4 插件配置 334
12.4.5 插件驗證 334
12.5 案例 5:動態(tài)緩存 335
12.5.1 插件需求 335
12.5.2 插件開發(fā) 336
12.5.3 插件部署 339
12.5.4 插件配置 340
12.5.5 插件驗證 341
12.6 案例 6:IP 地址位置 342
12.6.1 插件需求 342
12.6.2 插件開發(fā) 343
12.6.3 插件部署 345
12.6.4 插件配置 345
12.6.5 插件驗證 346
12.7 案例 7:合并靜態(tài)文件 347
12.7.1 插件需求 347
12.7.2 插件開發(fā) 348
12.7.3 插件部署 350
12.7.4 插件配置 351
12.7.5 插件驗證 352
12.8 案例 8:WAF 352
12.8.1 插件需求 353
12.8.2 插件開發(fā) 353
12.8.3 插件部署 358
12.8.4 插件配置 359
12.8.5 插件驗證 360
12.9 案例 9:跨數(shù)據(jù)中心 361
12.9.1 插件需求 361
12.9.2 源碼調(diào)整 362
12.9.3 插件開發(fā) 363
12.9.4 插件部署 364
12.9.5 插件配置 365
12.9.6 插件驗證 365
12.10 小結(jié) 366
附錄 A Kong CLI 367
附錄 B Kong PDK 索引表 370

本目錄推薦

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