負載均衡:高並發網關設計原理與實踐

愛奇藝網絡虛擬化團隊

  • 出版商: 電子工業
  • 出版日期: 2022-02-01
  • 售價: $534
  • 貴賓價: 9.5$507
  • 語言: 簡體中文
  • 頁數: 212
  • ISBN: 7121428865
  • ISBN-13: 9787121428869
  • 立即出貨 (庫存=1)

買這商品的人也買了...

商品描述

本書分為10章。第1章,主要介紹負載均衡技術的背景、發展歷史、現狀、原理和不同產品。第2章~第5章,主要介紹四層負載均衡和七層負載均衡的工作原理、功能應用和實現方式,以及負載均衡技術在雲計算、微服務領域中的應用。第6章~第8章,主要從協議和實現兩個層面,深入介紹負載均衡的性能優化和安全設計,並詳細介紹基於DPDK技術的高性能並發網關DPVS的設計與實現。第9章,結合負載均衡技術在愛奇藝的落地實踐,主要介紹負載均衡服務的部署方法、監控告警、故障處理、性能分析等實例,以及負載均衡技術在雲計算、邊緣計算中的應用。第10章,簡單地展望了未來負載均衡的一些發展趨勢。本書主要面向的是負載均衡服務的提供者和使用者、網絡技術研發人員、後端服務開發人員,同時也面向對負載均衡技術感興趣的廣大技術愛好者。

目錄大綱

目錄
第1章負載均衡概述....................................................................................................... 1
1.1 從數據中心說起........................................................................................... 1
1.1.1 數據中心的發展歷史......................................................................... 2
1.1.2 超融合數據中心架構和大型互聯網架構............................................ 3
1.2 負載均衡必要性分析.................................................................................... 4
1.2.1 負載均衡的作用................................................................................ 5
1.2.2 場景需求........................................................................................... 7
1.3 負載均衡的產生........................................................................................... 8
1.3.1 負載均衡的歷史................................................................................ 9
1.3.2 負載均衡的現狀.............................................................................. 10
1.3.3 負載均衡面臨的挑戰....................................................................... 10
1.4 負載均衡的原理......................................................................................... 11
1.4.1 四層負載均衡的原理....................................................................... 11
1.4.2 七層負載均衡的原理....................................................................... 12
1.5 典型的負載均衡器介紹.............................................................................. 13
1.5.1 LVS ................................................................................................. 13
1.5.2 Nginx .............................................................................................. 15
第2 章負載均衡詳細介紹.............................................................................................. 18
2.1 四層負載均衡技術...................................................................................... 18
2.1.1 經典四層負載均衡器LVS 的相關術語........................................... 19
2.1.2 LVS 轉發模式及配置實例............................................................... 20
2.1.3 不同協議下的負載均衡................................................................... 27
2.1.4 獲取真實的客戶端IP 地址和端口信息............................................ 31
2.2 七層負載均衡技術...................................................................................... 33
2.2.1 經典七層負載均衡器Nginx 的部署架構........................................ 33
2.2.2 Nginx 轉發粒度控制........................................................................ 34
2.2.3 獲取真實的客戶端IP 地址和端口信息............................................ 35
2.3 Real Server 調度算法................................................................................. 35
2.3.1 輪詢(RR) .................................................................................... 35
2.3.2 加權輪詢(WRR) .......................................................................... 37
2.3.3 *少連接調度(LC) ...................................................................... 39
2.3.4 加權*少連接調度(WLC) ........................................................... 39
2.3.5 一致性哈希(CONNHASH) .......................................................... 41
2.3.6 連接模板......................................................................................... 43
第3 章負載均衡功能..................................................................................................... 45
3.1 基本功能特性............................................................................................. 46
3.1.1 負載均衡器的網絡結構................................................................... 47
3.1.2 提供外網VIP 和流量均衡............................................................... 50
3.1.3 提供內網VIP 和IDC 內部服務....................................................... 54
3.1.4 使用SNAT 集群提供外網訪問......................................................... 56
3.1.5 使用SNAT 隧道服務無外網出口的IDC .......................................... 58
3.1.6 服務隔離和安全控制....................................................................... 59
3.2 高可用性.................................................................................................... 60
3.2.1 使用Keepalived 做健康檢查............................................................ 60
3.2.2 使用VRRP 實現主備....................................................................... 62
3.2.3 使用ECMP 實現集群化................................................................... 64
3.2.4 使用網卡綁定擴展單網卡流量......................................................... 65
3.3 高可擴展性................................................................................................ 65
3.3.1 擴展負載均衡器.............................................................................. 66
3.3.2 擴展後端服務器.............................................................................. 69
3.4 使用BGP Anycast 實現多個IDC 負載均衡和機房災備............................... 72
第4 章現有負載均衡器比較.......................................................................................... 74
4.1 四層負載均衡器......................................................................................... 74
4.1.1 硬件實現......................................................................................... 74
4.1.2 軟件實現:Linux Virtual Server(LVS) .......................................... 75
4.1.3 軟件實現方案對比........................................................................... 75
4.2 七層負載均衡器......................................................................................... 76
4.2.1 硬件實現......................................................................................... 76
4.2.2 軟件實現:HAProxy ........................................................................ 77
4.2.3 實現方案對比:F-Stack 與Nginx ..................................................... 77
第5 章負載均衡與雲計算.............................................................................................. 79
5.1 負載均衡與彈性計算.................................................................................. 79
5.2 跨區域調度與容災...................................................................................... 80
5.3 API Gateway ............................................................................................... 82
第6 章網絡協議優化..................................................................................................... 84
6.1 TCP 協議優化............................................................................................. 84
6.2 TLS/HTTPS 協議優化................................................................................. 87
6.2.1 TLS/HTTPS 協議的性能問題........................................................... 87
6.2.2 Session ID 及Session Ticket ............................................................. 89
6.2.3 False-Start ........................................................................................ 93
6.2.4 TLS1.3 協議.................................................................................... 94
6.2.5 硬件加速卡和計算分離................................................................... 98
6.2.6 自動化數字證書管理..................................................................... 100
6.3 HTTP 協議優化和HTTP2.0 ...................................................................... 101
6.4 基於UDP 的傳輸協議優化....................................................................... 104
6.4.1 基於UDP 的傳輸協議簡介............................................................ 104
6.4.2 QUIC 協議優化............................................................................. 106
6.5 DNS 協議優化.......................................................................................... 115
第7 章性能優化.......................................................................................................... 117
7.1 主要性能指標........................................................................................... 117
7.2 性能挑戰與分析....................................................................................... 120
7.2.1 C10K 問題及C10M 問題............................................................... 120
7.2.2 LVS 性能瓶頸分析........................................................................ 121
7.2.3 內核成為瓶頸的原因..................................................................... 123
7.3 高性能四層負載均衡關鍵技術.................................................................. 126
7.3.1 Kernel Bypass 技術與DPDK .......................................................... 127
7.3.2 Share-Nothing 思想........................................................................ 129
7.3.3 避免上下文切換............................................................................ 130
7.3.4 使用輪詢而非中斷......................................................................... 131
7.3.5 避免數據複製................................................................................ 131
7.3.6 其他技術....................................................................................... 131
7.4 使用DPDK 加速四層負載均衡................................................................. 132
7.4.1 高性能負載均衡器的架構.............................................................. 133
7.4.2 高性能負載均衡器功能模塊.......................................................... 136
7.4.3 數據流大圖................................................................................... 144
7.4.4 項目開源的緣由和一些經驗.......................................................... 147
7.5 七層負載均衡性能優化............................................................................ 149
7.5.1 Nginx 調優.................................................................................... 149
7.5.2 內核參數調優................................................................................ 152
7.5.3 利用*新內核的特性..................................................................... 154
7.5.4 利用硬件卸載................................................................................ 156
7.6 性能環境與數據................................................................................ 158
7.6.1 大並發環境............................................................................ 158
7.6.2 四層負載均衡性能數據................................................................. 160
7.6.3 七層負載均衡性能數據................................................................. 161
7.7 大容量網卡.............................................................................................. 163
第8 章安全設計.......................................................................................................... 165
8.1 數據中心面臨的安全問題......................................................................... 165
8.2 Syn-flood 攻擊與防禦............................................................................... 165
8.3 DDoS 與流量清洗..................................................................................... 167
8.4 黑名單與ACL .......................................................................................... 167
8.5 WAF ......................................................................................................... 168
第9 章負載均衡實踐................................................................................................... 171
9.1 服務配置部署........................................................................................... 171
9.1.1 主備模式與集群模式..................................................................... 171
9.1.2 部署FullNAT 外網集群................................................................. 172
9.1.3 部署FullNAT 內網集群................................................................. 173
9.1.4 部署DR 集群................................................................................ 175
9.1.5 部署SNAT 集群............................................................................ 175
9.1.6 部署SNAT-GRE 集群.................................................................... 177
9.1.7 部署Nginx 集群............................................................................ 178
9.2 監控與故障分析....................................................................................... 179
9.2.1 負載均衡監控指標及基本監控....................................................... 179
9.2.2 監控數據成圖................................................................................ 181
9.2.3 線上故障及排查實例..................................................................... 182
9.3 SLA 簡介.................................................................................................. 182
9.3.1 服務自助化................................................................................... 183
9.3.2 服務告警....................................................................................... 183
9.3.3 流量異常檢測................................................................................ 185
9.4 集群性能分析........................................................................................... 186
9.5 負載均衡與Kubernetes 雲原生................................................................ 188
9.5.1 負載均衡服務................................................................................ 189
9.5.2 Ingress ........................................................................................... 190
9.5.3 SNAT 出網訪問............................................................................ 192
9.6 邊緣計算.................................................................................................. 193
第10 章展望............................................................................................................... 195