前言
這是一部基於Nginx新版本和雲原生應用場景系統講解Nginx的著作,是作者十餘年運維經驗的總結。本書從應用、運維以及與Kubernetes和微服務集成3個維度對Nginx的基礎知識、工作原理、核心應用、運維管理、集成擴展等重點內容進行了全面、細緻的講解。完全以實戰為導向,包含大量的配置案例和示例代碼,能幫助讀者快速掌握並在實際工作中熟練應用Nginx。
編輯推薦
適讀人群 :本書目標群體為具有一定Linux基礎的網際網路行業運維人員,由於Nginx的功能涉及WEB服務、負載均衡等、微服務等多方面的應用,所以本書適合web開發、架構開發作為參考
(1)作者是資深運維專家,在國內知名網際網路公司有十餘年運維和架構經驗。
(2)從應用、運維及與Kubernetes和微服務集成3維度講解Nginx基礎知識、工作原理、核心應用、運維管理、集成擴展
(3)以實戰為導向,包含大量配置案例和示例代碼。
(4)基於Nginx新版本和雲原生應用場景。
通過閱讀本書,你將:
熟練掌握Nginx的配置指令使用方法
了解Nginx作為Web服務的應用實現
了解Nginx對相關通信協議的處理方法
熟悉Nginx作為代理、緩存、負載均衡的應用實現
提升Nginx日常運維管理中的日誌和監控管理能力
了解Nginx集群的搭建與配置管理方法
了解Nginx在Kubernetes和微服務架構中的應用實現
掌握軟體的Docker化部署方法
目錄簡要
內容簡介
Nginx是一款非常優秀的開源軟體,筆者主要基於自身實際使用Nginx的經驗來分享Nginx的應用和運維方法。本書在邏輯上可分為4個部分,分別為Nginx介紹、應用實戰、運維管理,以及Nginx與Kubernetes、微服務的應用集成。
第一部分 Nginx介紹(第1~4章)
首先,簡要分析了Nginx的架構特點及實現原理;其次,講解了Nginx及其衍生版本Tengine、OpenResty的編譯與部署;接著,全面介紹了Nginx的核心配置指令;後,講解了動態賦值、訪問控制和數據處理這3個Nginx的HTTP功能模塊配置指令。 由於篇幅限制僅展示了部分內容,為不影響您的閱讀,小編已整理好上傳到網盤上,一鍵三連後,私信【學習】獲取文中對應資料哦!
第1章Nginx概述:Nginx的第一個版本發布於2004年,經過多年的發展,逐漸演變出Nginx、Nginx Plus、Tengine、OpenResty這4個被廣泛應用的版本。本章分別介紹了這4個版本各自的特點,並通過對開源Nginx架構的特點及實現原理的介紹,使讀者對Nginx的功能有初步的了解。
第2章Nginx編譯及部署:Nginx是用C語言開發的,需要通過對原始碼進行編譯才能獲得可運行的二進位文件。本章介紹了Nginx開源版本的編譯配置參數及Tengine、OpenResty兩個版本的擴展編譯配置參數和所集成的模塊,同時介紹了各個開源版本的編譯和基於Docker的編譯部署方法。
第3章Nginx核心配置指令:Nginx的配置是通過在配置文件中調整不同配置指令的指令值實現的。本章介紹了Nginx配置文件的目錄結構及主配置文件nginx.conf的文件結構,並對Nginx的進程及HTTP核心配置的配置指令進行了介紹和配置舉例。
第4章Nginx HTTP模塊詳解:Nginx 的HTTP模塊配置指令主要負責HTTP請求處理的配置。本章介紹了Nginx在動態賦值、訪問控制、數據處理這3個方面的配置指令和配置舉例。
第二部分 應用實戰(第5~8章)
分別介紹Nginx 在Web服務、代理服務、緩存服務和負載均衡等方面的應用實戰,對於所涉及的每個模塊,不僅詳細分析了相關的技術特點,還給出了具體的配置指令和配置樣例。
第5章Nginx Web服務應用實戰:Nginx 的一個基本功能是作為Web伺服器提供HTTP服務,它支持對靜態頁面、動態腳本頁面、多媒體等文件的響應和處理。本章通過靜態文件伺服器、HTTPS安全伺服器、PHP網站搭建、Python網站搭建等實戰案例,介紹了Nginx作為Web服務的應用實戰。
第6章Nginx代理服務應用實戰:Nginx支持HTTP、TCP、gRPC等多種協議的代理,通過上述代理功能,後端伺服器可實現更靈活安全的部署。本章通過實戰案例介紹了Nginx代理相關配置指令的使用方法及需要關注的客戶端源IP問題的解決方案。
第7章Nginx緩存服務應用實戰:內容緩存是加速用戶訪問的常用技術。本章介紹了Nginx緩存模塊的配置指令,並通過客戶端緩存、代理緩存、鏡像緩存及Memcached集成等應用場景配置案例,介紹了Nginx作為緩存伺服器的應用實戰。
第8章Nginx負載均衡應用實戰:Nginx通過上遊模塊與代理模塊共同實現了對後端伺服器的訪問負載功能,Nginx支持HTTP、TCP/UDP、gRPC、FastCGI、uWSGI、SCGI、Memcached等協議的反向代理。本章詳細介紹了Nginx負載均衡相關的配置指令和官方自帶的負載均衡算法及實現原理。
第三部分 運維管理(第9~11章)
首先介紹Nginx的日誌配置及基於ELK的日誌分析,其次講解Nginx 的狀態監控配置,以及如何利用監控工具Prometheus、Zabbix實現對Nginx的監控管理;後介紹如何基於LVS、Keepalived搭建Nginx集群負載均衡架構,以及如何結合Jenkins、GitLab和Ansible快速搭建Web化的Nginx集群配置管理框架。 由於篇幅限制僅展示了部分內容,為不影響您的閱讀,小編已整理好上傳到網盤上,一鍵三連後,私信【學習】獲取文中對應資料哦!
第9章Nginx日誌管理:Nginx的日誌分為訪問日誌和錯誤日誌兩種。日誌的收集和分析是日常運維工作的重要內容,日誌不僅可以幫助運維工程師排查Nginx的問題及優化Nginx的性能,還可以通過與ELK集成為其代理的網站應用提供安全、性能、可用性及運行的PV/UV等方面的數據,通過對這些數據進行不同維度的分析,可以了解如何提升網站應用的運維能力。
第10章Nginx監控配置及管理:在Nginx的日常運維管理工作中,Nginx的監控管理是一項重要的工作,但開源版本Nginx自帶的監控數據採集能力相對較弱。本章介紹了開源Nginx與第三方模塊集成的方法,這些方法增強了Nginx的監控數據採集能力。本章還介紹了目前流行的監控工具Prometheus對Nginx伺服器的監控、告警方法。另外還舉例介紹了監控工具Zabbix獲取Prometheus Exporter數據,以便在運維管理工作中實現統一化監控管理的方法。
第11章Nginx集群負載與配置管理:高業務量的網際網路應用架構中,通常都是通過多組Nginx集群實現後端不同應用服務集群負載均衡的,本章介紹了基於Keepalived的Nginx集群的多層負載架構搭建,並舉例介紹了通過現有的開源軟體Jenkins、GitLab和Ansible組合,快速搭建一套Web化的Nginx集群配置管理框架的方法。
第四部分 Nginx與Kubernetes和微服務的應用集成(第12、13章)
分別介紹Nginx在Kubernetes、微服務架構中的應用,包括在Kubernetes中Nginx Ingress 的部署、管理與配置,以及基於OpenResty的開源微服務網關軟體Kong的部署與應用。
第12章Nginx在Kubernetes中的應用:Kubernetes是Google開源的分布式容器管理系統,它實現了對容器的部署、網絡管理、負載調度、節點集群和資源的擴縮容等自動化管理功能。在該服務對外發布的方案中,Nginx 以 Nginx Ingress組件的方式為Kubernetes集群的Pod應用提供了訪問控制、認證管理、應用層代理、負載均衡等功能,使Kubernetes對集群中運行於容器的應用程式具有更靈活的應用層,以提供對外訪問的管理能力。本章介紹了Kubernetes的相關術語及網絡通信機制,讀者可通過相關網絡通信機制根據實際需求選擇Nginx Ingress的部署方式,並通過本章介紹的配置映射和註解這兩種不同的配置方式實現日常Nginx Ingress的配置管理工作。
第13章Nginx在微服務架構中的應用:近幾年,微服務架構技術發展迅猛,已成為目前主流的應用架構技術。在微服務架構中,Nginx也在微服務網關等微服務的核心組件中發揮著重要的作用。本章從軟體發展歷史的角度介紹了對微服務架構的認識,並舉例介紹了基於OpenResty的開源微服務網關軟體Kong作為微服務網關的應用配置方法。
由於篇幅限制僅展示了部分內容,為不影響您的閱讀,小編已整理好上傳到網盤上
領取文章完整Nginx資料的朋友,只需要:
——對文章將進行轉發+評論,關注我之後私信100%免費領取口令「學習」即可。
若私信未回復
關注訂閱號 願天堂沒有BUG 即可