Zabbix企業級分布式監控系統(第2版)
  • 推薦0
  • 收藏2
  • 瀏覽457

Zabbix企業級分布式監控系統(第2版)

吳兆松 (作者)  葛娜 (責任編輯)

  • 書  號:978-7-121-36877-6
  • 出版日期:2019-08-01
  • 頁  數:624
  • 開  本:16(185*235)
  • 出版狀態:正在印刷
  • 維護人:付睿

相關圖書

SRE生存指南:系統中斷響應與正常運行時間最大化

Nat Welch (作者) 馮文輝 (譯者)

站點可靠性工程(Site Reliability Engineering,簡稱SRE)是一個令人興奮的新興領域,它專注于如何確保系統穩定、可靠地運行。本書基于一...

 

Nginx實戰:基于Lua語言的配置、開發與架構詳解

王力 王力 (作者)

本書主要講解了Nginx在反向代理和應用開發中的作用,閱讀本書可以了解Nginx在互聯網開發中扮演的多個角色,充分利用這些角色的各項功能有助于提升服務的整體性能...

¥47.40

容器云運維實戰——Docker與Kubernetes集群

黃靖鈞 (作者)

本書圍繞當前容器云運維的主流框架:Docker、Kubernetes詳細介紹了容器云運維的實戰技巧,在內容上分為三大部分:第一部分(第1~2章)介紹了在Linu...

¥53.40

奔跑吧Ansible(第2版)

(加)Lorin Hochstein ,(加)Rene Moser (作者) 陳爾冬 (譯者)

Ansible是近年來急速發展的開源配置管理工具。在Ansible之前,行業中已經有很多開源配置管理工具了,特別是大名鼎鼎的Puppet,簡直是配置管理工具中的...

¥119.00

Serverless架構:無服務器應用與AWS Lambda

Dr. Peter Sbarski? (作者) 覃宇 (譯者)

無服務器是軟件架構世界中的熱門新話題,它充分利用大量的云平臺服務,讓開發者只需關注核心業務邏輯的實現。同時,它按需分配和使用資源的運行方式,在降低基礎設施成本的...

¥108.00

智能運維:從0搭建大規模分布式AIOps系統

彭冬 朱偉 劉俊 等 (作者)

本書將全面完整地介紹智能運維的技術體系,以及大企業的智能運維實踐經驗,讓讀者更加了解運維技術的現狀和發展方向,在實踐中能夠有所借鑒。同時,也能幫助運維工程師在一...

¥79.00
本書基于穩定版本Zabbix 4.0,對Zabbix的各項功能進行了詳細而深入的講解,包括監控系統規劃、安裝包定制、架構高可用、性能調優、指標數據采集、自動化處理功能、觸發器使用與原理、告警配置、Zabbix API、數據可視化、網絡拓撲自動發現、內部實現原理以及部分源碼分析等內容,讓讀者真正通過一本書就能夠完全掌握Zabbix監控系統的核心技術。
本書第1版內容收獲了大量讀者好評,是一本實戰性很強的工具書,讀者將其稱為監控領域的“紅寶書”,書中所寫內容均可以在生產環境中直接應用。
而在第2版中,采納了以往讀者的寶貴意見,增加了作者的最新研究成果,擴充了大量內容,但繼續保持由淺入深、由易到難的寫作風格。通過合理的章節編排,本書內容分為初級、中級和高級3個部分,從入門的安裝與配置,到復雜的高級使用,都進行了講解,并配有大量的真實監控案例。書中包含作者參與過的真實企業級監控系統構建項目的相關經驗,通過閱讀掌握本書的內容,可以讓Zabbix監控系統的學習和使用從此不再困難。
本書適合想了解、學習和規劃構建監控系統的人員閱讀,可作為學習入門Zabbix的工具書,也適合想更深入理解Zabbix監控系統的讀者閱讀。
本書基于穩定版本Zabbix 4.0,對Zabbix的各項功能由淺入深、由易到難地進行了詳細而深入的講解,并配有大量的真實監控案例,讓讀者真正通過一本書就能夠完全掌握Zabbix監控系統的核心技術。
吳兆松,資深系統工程師,Zabbix監控系統“紅寶書”(《Zabbix企業級分布式監控系統》第1版)的作者,熟悉IT運維領域,對服務器運維、應用運維以及運維(DevOps)平臺的構思、設計、開發等都具有十分豐富的經驗,尤其擅長IT監控系統的運維和開發,是國內較早一批使用和研究Zabbix的用戶,為幾十個大型企業構建過Zabbix監控平臺體系。從業經歷相當豐富,對運維、編程、產品都有深入的實踐,被業內人士戲稱為“監控專家”。
前  言


本書由來
“運籌帷幄之中,決勝千里之外。”在IT運維中,監控占據著重要的地位,按比例來算,說占30%一點也不為過。對IT運維工程師來說,構建一個真正可用的監控告警系統是一項艱巨的任務。在監控系統的開源軟件中,可供選擇的工具眾多,然而真正符合需求,能夠真正解決業務問題的監控系統軟件卻鳳毛麟角。
筆者在自己的運維從業生涯中用過的監控系統有Cacti、Nagios等,以及筆者公司開發的監控告警系統,直到接觸了Zabbix,才發現這個靈活而強大的自動化監控工具正是筆者所尋找的。隨著近年來云計算、容器技術的大規模普及,軟件架構已經從單體架構走向微服務架構,對監控的靈活性和可靠性的要求越來越高,出現了更多有趣的監控軟件,如Prometheus、Influx家族,這些監控軟件解決了在當前環境中面臨的一些問題,提供了非常優秀的監控解決方案,但這并不妨礙Zabbix的繼續流行。從2012年開始,國內Zabbix的用戶群體在逐步擴大,當前Zabbix已經成為運維人員必須掌握的技能之一。究其原因,得益于Zabbix靈活的架構設計、極強的擴展能力、豐富的監控能力、易于與外部集成的能力,從硬件監控,到操作系統,再到服務進程,以及網絡設備,其無所不能的監控功能令人嘆為觀止,相信這也是大多數Zabbix愛好者選擇它的主要原因。
當然,在Zabbix的使用過程中,會面臨上手容易、精通較難的問題,原因在于Zabbix過于靈活,其配置的顆粒度非常細致,這也會讓大多數用戶剛接觸學習它的時候一頭霧水,所以查看官方文檔和閱讀一本相關書籍的學習方式都是明智的選擇。
筆者從2012年開始使用Zabbix,曾公開自己的使用文檔,很高興文檔對不少初學Zabbix的朋友有所幫助,但隨著向筆者咨詢問題的人數增多,其中多數問題是重復的,且筆者解答問題的精力有限,于是萌生出書的想法,在其后的2014年,正式出版了《Zabbix企業級分布式監控系統》一書,并被廣大Zabbix愛好者喜愛。時光荏苒,2018年,Zabbix 4.0版本正式發布,所以本書也需要升級換代,在此情況下,筆者對書籍內容進行了大幅度的重構,并對書籍的內容和深度進行了擴展,讓本書可以真正成為Zabbix用戶的案頭首選參考書。本書得以改版,我們的編輯付睿老師功不可沒,在2016—2017年的時候,她一直催促筆者更新內容。由于筆者當時是被動更新的,并沒有想好新加什么內容,并且筆者基于原有書稿做了一些更新,但內容無法令自己滿意,于是就沒有繼續下去,當時Zabbix是3.0版本。直到2018年,筆者覺得是時候更新內容了。
如何閱讀本書
本書共分3部分內容,筆者按照從零基礎開始學習的路線進行章節編排,從易到難逐步深入,直到讀者深入掌握,并且本書對相關的內容和思想進行了拓展,讓讀者學習到的不僅是Zabbix,而且是一個監控體系。
第1部分為基礎部分,包括第1~6章。首先介紹監控系統的原理,讓初次接觸監控的讀者了解監控系統的組成部分,從宏觀上認識監控系統。接下來講解了Zabbix的架構、Zabbix的安裝、監控配置、自定義監控項、告警配置、告警腳本等功能。這部分內容適合從零基礎開始系統地學習Zabbix監控系統,對稍有經驗的使用者來說,重點掌握Zabbix對數據存儲的處理(第3章),以及第5章和第6章的內容。
第2部分為中級部分,包括第7~11章。首先對Zabbix的觸發器使用以及內部源碼實現進行了深入講解,對Zabbix的多種監控方式進行了詳述(如IPMI、SNMP、JMX、ODBC等)。接著,對自動化功能進行了深入講解,介紹了分布式監控系統,配有大量自定義腳本的監控案例,并對監控項自動發現(LLD)功能進行了深入講解,其后對Zabbix的數據可視化方案和拓展實現進行了研究,適合對Zabbix有一定基礎的讀者深入學習。通過對這部分內容的學習,讀者將會深入理解Zabbix的整體功能。
第3部分為高級部分,包括第12~16章。首先介紹Zabbix的性能調優,從底層實現機制講解,從而理解Zabbix在使用過程中遇到性能瓶頸的問題,以及如何解決這些問題,并讓讀者學會使用Zabbix API來擴展Zabbix,從而為構建運維平臺提供了更多的擴展性。同時,這部分也講解了如何定制RPM包,源碼構建安裝,使用Elasticsearch作為后端數據存儲,以及如何使用SaltStack來自動化部署和配置,通過一個實例來講解如何構建企業級分布式監控系統。最后一章,探討了監控系統的整體實現與使用場景,與DevOps、ITIL的整合使用,以及告警輪班等深度場景,讓讀者在更豐富的場景中使用Zabbix,并理解IT運維中的關鍵思想,將監控用于更廣泛的場景,適合對Zabbix非常熟悉的讀者進行深入應用。通過對這部分內容的學習,讀者能夠深入理解Zabbix,并從更多的角度考慮監控問題。
配套代碼
書中包含的相關代碼,筆者已將其放到GitHub上,地址為https://github.com/zabbix-book,讀者可以在生產環境中直接使用相關代碼。
讀者對象
? Linux系統管理員 ? 運維監控系統工程師
? 系統運維工程師 ? 監控系統軟件開發(設計)人員
? 運維開發工程師 ? IT管理人員
? 系統集成商 ? 架構設計人員
勘誤支持
盡管筆者和編輯都努力地對書稿進行再三校對,但因筆者水平和時間所限,書中可能存在少許的錯誤或不妥之處,如讀者遇到,還懇請批評、指正。讀者若有任何寶貴的意見或建議,可以發送郵件至本書的專題郵箱[email protected],筆者將盡快給予反饋解答。本書的勘誤也會在隨書項目中得到反饋。
內容聲明
本書采用的Zabbix為4.0版本,隨著Zabbix版本的更新,本書講解的大部分使用功能與新版本相比會稍有不同。本書采用的操作系統以Linux(CentOS 7)、Windows為主,對于其他版本的操作系統并未做過多講解。本書能保證對Zabbix幾乎96%以上的功能都有細致講解,但少許筆者認為不重要的內容并未講解(也許對部分讀者來說卻非常重要),如涉及加密證書傳輸數據的內容,關于這部分內容讀者可參考學習官方文檔。另外,與本書第1版相比,第2版去掉了Zabbix協議的相關章節。本書在編寫過程中,參考了大量官方文檔和社區的內容,書中都給出了相關鏈接,如不慎遺漏,重印、改版的時候會進行增補。
本書并不能完全代替Zabbix的官方文檔,讀者在讀完本書后,建議也閱讀Zabbix的官方文檔,因為在官方文檔中還有更多的細節值得去研究,如將兩者結合,效果會更好。
示例規范
(1)在shell環境中使用,shell命令會加粗顯示。

shell# vim /etc/php.ini
(2)在MySQL環境中使用,SQL命令會加粗顯示。

mysql> flush privileges;
(3)在本書中,Zabbix-Server表示zabbix_server服務或進程,其他Zabbix-Agent、Zabbix-Get、Zabbix-Proxy的情況類似。
聯系方式
微博:http://weibo.com/itnihao
郵件:[email protected]

目錄

目  錄
第1章 開篇——監控系統簡介 1
1.1 監控系統的功能概述 1
1.2 監控系統的實現原理 2
1.2.1 模塊組成 2
1.2.2 采集協議 2
1.2.3 采集模式 3
1.2.4 監控指標 3
1.2.5 代理架構 3
1.2.6 數據存儲 4
1.2.7 告警功能 5
1.2.8 可擴展性 5
1.2.9 總結歸納 6
1.3 監控系統的開源產品 7
1.3.1 Cacti 7
1.3.2 Nagios 8
1.3.3 InfluxDB套件 9
1.3.4 Prometheus 10
1.3.5 OpenFalcon 11
1.3.6 Netdata 12
1.3.7 ELK家族 13
1.3.8 Zabbix 14
第2章 Zabbix簡介 16
2.1 Zabbix的用戶群體都有誰 16
2.2 使用Zabbix需要具備什么基礎 17
2.3 Zabbix是一個什么樣的產品 18
2.4 為何選擇Zabbix作為監控系統 19
2.5 該選用Zabbix的哪個版本 20
2.6 Zabbix的架構是什么樣的 21
2.7 Zabbix的功能特性都有哪些 22
第3章 安裝與部署 25
3.1 安裝環境概述 25
3.1.1 硬件環境需求 25
3.1.2 軟件環境需求 28
3.1.3 網絡環境需求 30
3.2 Zabbix-Server服務器端的安裝 30
3.2.1 安裝Zabbix-Server 33
3.2.2 安裝MySQL 33
3.2.3 配置zabbix_server.conf 36
3.2.4 防火墻、SELinux和權限的設置 38
3.2.5 配置Zabbix-Web 40
3.2.6 相關故障的處理 46
3.2.7 zabbix_server程序的參數 49
3.3 Zabbix-Agent客戶端的安裝 51
3.3.1 安裝Zabbix-Agent 51
3.3.2 防火墻的設置 51
3.3.3 配置zabbix_agentd.conf 52
3.4 SNMP監控配置 52
3.5 在Windows中安裝Zabbix-Agent 53
3.5.1 安裝與配置 53
3.5.2 注冊服務 53
3.5.3 啟動服務 54
3.6 在其他平臺安裝Zabbix-Agent 56
3.7 Zabbix-Get的使用 56
3.8 Zabbix相關術語(命令) 57
3.9 Zabbix-Server對數據的存儲 58
3.9.1 監控數據的存儲 58
3.9.2 MySQL表分區實例 62
3.10 高可用和安全 70
3.10.1 高可用 70
3.10.2 通信安全 70
3.10.3 禁用Zabbix的guest用戶 70
3.11 Zabbix數據庫備份 70
3.12 升級Zabbix 73
3.12.1 同版本升級的方法 73
3.12.2 跨版本升級的方法 74
3.12.3 數據庫自動升級的原理 74
3.12.4 升級失敗的處理案例 75
第4章 快速配置和使用 77
4.1 配置流程 77
4.2 添加主機組 78
4.2.1 如何劃分主機組 78
4.2.2 如何添加主機組 78
4.2.3 層級主機分組 80
4.3 添加模板 81
4.4 添加主機 82
4.5 配置圖形 86
4.6 配置大屏 92
4.7 配置幻燈片 94
4.8 配置地圖 96
4.8.1 添加背景圖 96
4.8.2 添加地圖 96
4.9 使用IT服務 102
4.10 使用報表 105
4.11 資產管理 108
4.12 圖形共享 109
4.13 全局搜索 110
4.14 最新數據 111
4.15 故障 112
4.16 數據的導入/導出 112
4.17 用戶權限 113
4.17.1 用戶組 113
4.17.2 用戶組權限 114
4.17.3 用戶 116
4.17.4 匿名用戶 117
4.18 調試模式 117
4.19 與LDAP對接 118
4.20 維護模式 119
4.21 故障確認 121
4.22 批量更新 123
第5章 處理監控指標數據 124
5.1 添加新的監控項 124
5.1.1 監控項的含義 124
5.1.2 如何添加監控項 124
5.2 監控指標的自定義 130
5.2.1 key的格式 130
5.2.2 key名稱的定義范圍 130
5.2.3 key的參數數組應用實例 131
5.2.4 用戶自定義參數 131
5.3 Zabbix內置的監控方式 133
5.3.1 Zabbix-Agent監控方式 134
5.3.2 Simple check監控方式 140
5.3.3 日志監控方式 144
5.3.4 計算型監控方式 152
5.3.5 聚合型監控方式 156
5.3.6 內部檢測監控方式 163
5.3.7 SSH監控方式 163
5.3.8 Telnet監控方式 167
5.3.9 擴展檢測監控方式 169
5.4 監控項指標數據的預處理 171
5.4.1 預處理概述 171
5.4.2 預處理的運行流程 172
5.4.3 預處理的數據類型 173
5.5 配置宏 177
5.5.1 全局宏 177
5.5.2 模板宏 178
5.5.3 主機宏 178
5.5.4 監控項宏 179
5.5.5 宏的函數運算 180
5.5.6 宏使用總結 181
5.5.7 宏的上下文 182
5.6 配置值映射 183
第6章 精通告警配置 185
6.1 告警流程 185
6.2 告警觸發器的配置 186
6.2.1 Trigger的作用 186
6.2.2 Trigger的故障等級定義 187
6.2.3 Trigger的配置步驟 187
6.2.4 Trigger告警依賴 191
6.2.5 Trigger中的數值單位 192
6.2.6 Trigger表達式 192
6.3 告警處理的配置 200
6.3.1 如何發送告警 200
6.3.2 Action功能概述 200
6.3.3 Action配置步驟 201
6.3.4 告警處理措施 203
6.3.5 在告警消息中使用宏 207
6.3.6 告警恢復措施 208
6.3.7 告警更新措施 209
6.3.8 發送告警消息的步驟總結 210
6.3.9 查看告警消息的發送記錄 211
6.3.10 執行遠程命令 211
6.3.11 不支持的Item發送告警 215
6.4 郵件告警配置 215
6.4.1 創建Media類型 215
6.4.2 創建用戶 216
6.4.3 創建Action 217
6.5 自定義腳本告警 218
6.5.1 自定義腳本告警的原理 218
6.5.2 電話告警 220
6.5.3 短信接口告警 221
6.5.4 微信告警 221
6.6 郵件告警腳本的配置 222
6.6.1 Zabbix-Server自定義告警腳本 222
6.6.2 Zabbix-Server重啟服務 224
6.6.3 Zabbix-Web配置自定義腳本 225
6.6.4 告警接收郵件的配置 226
6.6.5 查看郵件發送狀態 227
6.7 告警升級機制 227
6.7.1 告警升級的作用 227
6.7.2 告警升級的配置 228
6.8 觸發器標簽配置 230
6.8.1 標簽設置 230
6.8.2 標簽的復雜匹配 231
6.9 手動關閉告警 233
6.10 如何取消告警發送 235
6.11 如何刪除故障信息 235
6.12 告警聚合 236
6.12.1 告警聚合的原理 236
6.12.2 基于觸發器的告警聚合 236
6.12.3 基于全局的告警聚合 239
6.13 告警配置故障排查 242
6.13.1 告警消息未發送示例 242
6.13.2 郵件服務器連接失敗示例 243
第7章 探究告警觸發器 244
7.1 Trigger函數的意義 244
7.2 Trigger函數的分類 244
7.3 Trigger函數——比較與查找 245
7.3.1 求最近兩值差的絕對值——abschange 245
7.3.2 求最大值與最小值的差——delta 248
7.3.3 判斷最近兩值是否相同——diff 251
7.3.4 求最近兩值的變化量——change 254
7.3.5 數值的位與運算——band 256
7.3.6 數據失聯——nodata 261
7.3.7 獲取最新數據——last 264
7.3.8 求前一個值——prev 266
7.4 Trigger函數——計算 268
7.4.1 求最大值——max 268
7.4.2 求最小值——min 271
7.4.3 求平均值——avg 273
7.4.4 值求和——sum 276
7.4.5 統計個數——count 278
7.5 Trigger函數——時間 286
7.5.1 返回當前時間(年月日時分秒)——now 286
7.5.2 返回當前日期(年月日)——date 288
7.5.3 返回當前時間(時分秒)——time 289
7.5.4 本月第幾天——dayofmonth 291
7.5.5 本周第幾天——dayofweek 292
7.5.6 時間對比——fuzzytime 293
7.6 Trigger函數——日志 295
7.6.1 日志ID——logeventid 295
7.6.2 獲取日志等級——logseverity 296
7.6.3 獲取日志來源——logsource 297
7.7 Trigger函數——字符串匹配 299
7.7.1 正則表達式不區分大小寫——iregexp 299
7.7.2 正則表達式區分大小寫——regexp 301
7.7.3 字符串匹配——str 302
7.7.4 字符串長度——strlen 304
7.8 Trigger函數——趨勢預測 305
7.8.1 百分線——percentile 305
7.8.2 趨勢預測——forecast 307
7.8.3 剩余時間——timeleft 311
7.8.4 趨勢預測計算型監控方式 314
7.9 參考資料 318
第8章 剖析監控方式 319
8.1 Zabbix支持的監控方式 319
8.2 Zabbix監控方式的邏輯 320
8.3 Zabbix-Agent的工作模式 321
8.3.1 工作模式概述 321
8.3.2 被動模式的配置 323
8.3.3 主動模式的配置 324
8.4 Zabbix-Trapper(zabbix_sender)監控方式 326
8.4.1 Zabbix-Trapper的配置步驟 326
8.4.2 Zabbix-Trapper的配置示例 326
8.4.3 使用zabbix_sender程序發送數據 328
8.4.4 使用zabbix_sender程序批量讀取文件 329
8.5 SNMP監控方式 330
8.5.1 SNMP協議概述 330
8.5.2 SNMP協議的工作方式 331
8.5.3 SNMP協議的工作原理 331
8.5.4 SNMP MIB簡介 334
8.5.5 SNMP相關術語 336
8.5.6 配置Zabbix-Server的SNMP監控 337
8.5.7 SNMP監控中的LLD原理 340
8.6 SNMPTraps監控方式 343
8.6.1 SNMPTraps的概念 343
8.6.2 SNMPTraps的工作原理 343
8.6.3 SNMPTraps的安裝與配置 343
8.6.4 SNMPTraps的測試 346
8.7 IPMI監控方式 348
8.7.1 IPMI的概念 348
8.7.2 IPMI的特性 349
8.7.3 配置Zabbix-Server監控IPMI 349
8.7.4 Zabbix自帶的IPMI模板 350
8.7.5 在Linux系統中使用OpenIPMI 350
8.7.6 創建IPMI模板 352
8.7.7 IPMI監控主機 353
8.8 JMX監控方式 354
8.8.1 JMX在Zabbix中的運行流程 354
8.8.2 JMX監控的安裝和配置 355
8.8.3 安裝Zabbix-Java-Gateway 355
8.8.4 配置Zabbix-Java-Gateway 356
8.8.5 查看Zabbix-Java-Gateway日志 357
8.8.6 監控Java應用程序的方法 357
8.8.7 開啟Tomcat的JMX 358
8.8.8 獲取JMX數據 359
8.8.9 JMX數據的LLD 363
8.8.10 JMX監控的核心技術實現 367
8.9 HTTP agent監控方式 369
8.9.1 HTTP agent監控概述 369
8.9.2 HTTP agent監控實例 369
8.9.3 HTTP agent監控配置 370
8.9.4 轉換HTTP agent獲取的數據結果 371
8.10 Web監控方式 372
8.10.1 Web監控的原理 372
8.10.2 Web監控指標 372
8.10.3 Web監控的配置步驟 373
8.10.4 Web監控用戶認證支持 376
8.10.5 Web監控觸發器的配置 379
8.10.6 Web監控排錯 381
8.11 Dependent item監控方式 381
8.12 ODBC監控方式 381
8.12.1 安裝ODBC軟件包 381
8.12.2 查看ODBC配置 381
8.12.3 安裝MySQL ODBC驅動 382
8.12.4 使用ODBC驅動連接MySQL 382
8.12.5 配置Item 383
8.12.6 ODBC錯誤處理 385
8.12.7 安裝Oracle OBDC驅動 385
8.12.8 安裝PostgresSQL OBDC驅動 387
8.12.9 OBDC的監控項自動發現 388
8.13 其他監控方式 391
8.14 命令執行的監控方式 391
8.14.1 system.run 391
8.14.2 遠程命令 391
第9章 分布式監控與自動化 392
9.1 Zabbix-Proxy分布式監控 392
9.1.1 安裝Zabbix-Proxy 395
9.1.2 導入Zabbix-Proxy的數據庫 396
9.1.3 配置zabbix_proxy.conf 397
9.1.4 啟動Zabbix-Proxy服務 397
9.1.5 查看Zabbix-Proxy日志 397
9.1.6 添加Proxy 398
9.1.7 添加Proxy的主機監控 398
9.2 監控的自動化功能 399
9.3 網絡自動發現 400
9.4 主動方式的自動注冊功能 403
9.4.1 功能概述 403
9.4.2 配置過程 404
9.5 監控項自動發現功能 406
9.5.1 功能概述 406
9.5.2 LLD的原理 406
9.5.3 LLD的數據格式 407
9.5.4 LLD應用案例 411
9.5.5 配置Zabbix客戶端 411
9.5.6 編寫自動發現腳本 412
9.5.7 自定義key配置文件 415
9.5.8 在Web頁面添加LLD 416
9.5.9 主機信息數據LLD 425
9.5.10 定期刪除不存在的監控元素 426
9.5.11 自動創建監控項分組 427
9.6 使用自動化工具SaltStack批量部署Zabbix 428
9.6.1 使用SaltStack配置管理Zabbix 428
9.6.2 安裝salt-master 428
9.6.3 安裝salt-minion 429
9.6.4 接受客戶端密鑰申請 429
9.6.5 狀態同步文件 429
9.6.6 執行狀態同步 431
第10章 監控功能案例 433
10.1 監控TCP連接狀態 433
10.1.1 TCP連接狀態監控原理 433
10.1.2 TCP連接狀態監控腳本的實現 434
10.1.3 TCP監控模板指標 434
10.2 監控Nginx 435
10.2.1 Nginx監控原理 435
10.2.2 Nginx狀態數據配置的開啟 435
10.2.3 Nginx監控腳本的實現 436
10.2.4 Nginx監控key的配置 437
10.3 監控PHP-FPM 438
10.3.1 PHP-FPM監控原理 438
10.3.2 PHP-FPM狀態數據配置的開啟 438
10.3.3 PHP-FPM監控腳本的實現 439
10.3.4 PHP-FPM監控key的配置 441
10.4 監控MySQL 442
10.4.1 MySQL監控原理 442
10.4.2 創建MySQL監控專用賬戶 443
10.4.3 MySQL監控模板 443
10.4.4 MySQL監控指標 444
10.4.5 MySQL模板觸發器 445
10.4.6 MySQL監控效果展示 446
10.5 監控物理服務器 447
10.5.1 DELL服務器監控原理 447
10.5.2 DELL服務器IPMI的配置 447
10.5.3 通過IPMI獲取數據 449
10.5.4 DELL服務IPMI監控指標 450
10.5.5 添加IPMI監控主機 450
10.6 監控物理機磁盤 451
10.6.1 物理機磁盤監控原理 451
10.6.2 物理機磁盤監控的配置 453
10.6.3 物理機磁盤監控指標 453
10.6.4 物理機磁盤監控觸發器 454
10.6.5 物理機磁盤監控數據展示 454
10.7 監控Cisco路由器 455
10.7.1 Cisco路由器監控原理 455
10.7.2 Cisco路由器SNMP的配置 455
10.7.3 通過snmpwalk獲取SNMP數據 455
10.7.4 添加Cisco模板 455
10.8 監控VMware 458
10.8.1 VMware監控原理 458
10.8.2 Zabbix-Server的配置 458
10.8.3 vCenter監控賬戶的配置 459
10.8.4 添加監控主機 459
10.8.5 監控賬戶宏的配置 460
10.8.6 查看監控數據 461
10.9 監控RabbitMQ 462
10.9.1 RabbitMQ監控原理 462
10.9.2 RabbitMQ監控賬戶的配置 462
10.9.3 RabbitMQ監控指標 463
10.9.4 RabbitMQ監控觸發器 463
10.9.5 RabbitMQ監控效果展示 464
10.10 監控Elasticsearch 465
10.10.1 Elasticsearch監控原理 465
10.10.2 Elasticsearch監控指標 465
10.10.3 Elasticsearch監控觸發器 465
10.11 監控Kafka 466
10.11.1 Kafka監控原理 466
10.11.2 Kafka監控的配置 466
10.11.3 Kafka監控指標 466
10.11.4 Kafka監控觸發器 467
10.11.5 Kafka監控效果展示 467
10.12 監控Redis 468
10.12.1 Redis監控原理 468
10.12.2 Redis監控的配置 468
10.12.3 Redis監控指標 469
10.12.4 Redis監控觸發器 469
10.12.5 Redis監控效果展示 469
10.13 監控Oracle數據庫 470
10.13.1 Oracle監控原理 470
10.13.2 Oracle監控賬戶的配置 470
10.13.3 Oracle監控指標 472
10.13.4 Oracle監控觸發器 473
10.13.5 Oracle監控效果展示 473
10.14 監控WebLogic 474
10.14.1 WebLogic監控原理 474
10.14.2 WebLogic監控的配置 474
10.14.3 WebLogic監控指標 474
10.14.4 WebLogic監控觸發器 475
10.15 監控SQL Server 475
10.15.1 SQL Server監控原理 475
10.15.2 SQL Server監控指標 475
10.15.3 SQL Server監控觸發器 476
10.15.4 SQL Server監控效果展示 476
10.16 監控HTTPS證書過期 477
10.16.1 HTTPS證書過期監控原理 477
10.16.2 HTTPS證書過期監控指標 478
10.16.3 HTTPS證書過期監控觸發器 480
10.16.4 HTTPS證書過期監控效果展示 480
第11章 監控數據可視化 482
11.1 Grafana 482
11.1.1 Grafana簡介 482
11.1.2 安裝Grafana 484
11.1.3 安裝并啟用Grafana Zabbix插件 485
11.1.4 添加并配置Zabbix數據源 488
11.1.5 添加Grafana圖形 489
11.2 Graphtrees 492
11.2.1 安裝Graphtrees 492
11.2.2 展示效果 493
11.3 谷歌瀏覽器告警插件 493
11.4 Mac App的使用 495
11.5 手機App的使用 495
11.6 導出實時監控數據 496
11.6.1 需求來源 496
11.6.2 參數配置 496
11.6.3 數據格式 497
11.6.4 修改源碼 500
11.6.5 數據對接 501
11.7 網絡拓撲自動發現 502
11.7.1 需求概述 502
11.7.2 實現原理 503
11.7.3 網絡拓撲自動發現實例 503
11.7.4 通過SNMP獲取LLDP數據 505
11.7.5 通過Zabbix-Server獲取LLDP數據 507
11.7.6 網絡拓撲可視化的實現 508
11.8 監控數據可視化的意義 509
11.9 總結 509
第12章 監控性能優化 510
12.1 Zabbix性能優化概述 510
12.2 Zabbix性能優化依據 511
12.3 Zabbix配置文件參數的優化 515
12.4 Zabbix架構的優化 517
12.5 Item的工作模式及Trigger的優化 517
12.6 Zabbix數據庫的優化 517
12.7 Zabbix運行硬件的優化 518
12.8 Zabbix壓力測試 518
12.8.1 壓力測試原理 518
12.8.2 壓力測試準備 518
12.8.3 壓力測試過程 520
12.8.4 壓力測試總結 522
12.9 Zabbix-Server內部實現原理 522
12.9.1 Zabbix-Server的整體流程 522
12.9.2 Zabbix-Server采集器的工作流程 523
12.9.3 Zabbix-Proxy工作流程 524
12.9.4 Zabbix-Server告警的工作流程 525
12.10 Zabbix-Server配置參數 526
12.11 Zabbix-Server性能優化總結 528
第13章 Zabbix API的使用 530
13.1 Zabbix API簡介 530
13.2 JSON-RPC 530
13.3 Zabbix API的使用流程 532
13.3.1 使用API的基本步驟 532
13.3.2 如何使用官方文檔獲取幫助 533
13.3.3 使用CURL調用API 534
13.3.4 HTTP頭部Content-Type設置 536
13.3.5 用戶認證結果的返回值 536
13.3.6 獲取主機信息(用Python實現的示例) 537
13.3.7 添加主機(host.create) 540
13.3.8 刪除主機(host.delete) 543
13.4 第三方Zabbix API模塊 544
13.5 編寫命令行管理工具zbx-tool 547
第14章 安裝與部署的擴展 549
14.1 源碼安裝Zabbix-Server 549
14.1.1 安裝依賴軟件包 549
14.1.2 安裝Zabbix-Server 549
14.1.3 導入Zabbix數據庫 550
14.1.4 復制Zabbix啟動腳本 551
14.1.5 配置zabbix_server.conf 551
14.1.6 復制前端代碼文件到apache目錄 551
14.1.7 配置PHP參數 551
14.1.8 配置Zabbix-Web 552
14.2 源碼安裝Zabbix-Agent 552
14.3 定制安裝包 552
14.4 使用RPMbuild定制RPM包 553
14.5 使用Elasticsearch作為數據庫 557
14.5.1 安裝Elasticsearch 557
14.5.2 配置Elasticsearch 557
14.5.3 啟動Elasticsearch 557
14.5.4 初始化Elasticsearch數據 558
14.5.5 配置Zabbix-Server 565
14.5.6 配置Zabbix-Web 566
14.5.7 驗證數據配置 566
第15章 分布式監控項目實踐 567
15.1 監控系統項目概述 567
15.2 監控系統項目的背景 568
15.3 監控系統項目的步驟 570
15.4 監控系統項目的規劃——工作計劃 570
15.5 監控系統項目的啟動——需求調研 572
15.6 監控系統架構的設計——架構設計圖 572
15.7 監控系統項目的推進——軟硬件環境配置 573
15.7.1 安裝環境的硬件要求 573
15.7.2 安裝環境的軟件要求 573
15.8 監控系統項目的實施——安裝與部署 574
15.8.1 MySQL數據庫主從庫的部署 574
15.8.2 MySQL數據庫主庫的配置 575
15.8.3 MySQL數據庫從庫的配置 576
15.8.4 MySQL數據庫表分區與備份 577
15.8.5 Zabbix-Server的高可用配置 577
15.8.6 Zabbix前端管理界面的安裝 580
15.8.7 Zabbix-Proxy的安裝與部署 580
15.9 監控功能的實現——配置與定制開發 580
15.9.1 業務組的劃分 580
15.9.2 創建用戶組 581
15.9.3 添加用戶 581
15.9.4 定制監控模板 581
15.9.5 自動發現的配置 582
15.9.6 配置告警與告警聚合 582
15.10 監控系統與其他系統的集成 582
15.11 監控系統項目的總結 583
第16章 后記—探究監控系統 584
16.1 監控系統的使用場景 584
16.2 如何設置監控指標 585
16.3 如何度量設置告警指標 586
16.4 如何發送告警與處理告警風暴 587
16.5 告警輪班機制 588
16.6 DevOps與監控 588
16.6.1 DevOps概述 588
16.6.2 DevOps實施的方式 588
16.6.3 DevOps與監控的關系 589
16.7 ITIL與監控 589
16.7.1 ITIL概述 589
16.7.2 ITIL服務設計——可用性管理 591
16.7.3 ITIL服務設計——IT服務連續性管理 591
16.7.4 ITIL服務設計——服務目錄管理 592
16.7.5 ITIL服務設計——服務級別管理 593
16.7.6 ITIL服務運營——事件管理 594
16.7.7 ITIL服務運營——事故管理 596
16.7.8 ITIL服務運營——問題管理 597
16.8 參考資料 598

讀者評論

相關博文

  • 一個監控系統的誕生

    一個監控系統的誕生

    管理員賬號 2019-07-31

    本文主要闡述監控系統的發展歷程、監控系統的原理,以及監控系統的項目實踐,目的是讓大家全面了解監控系統。 監控,從中文的字義來看,有兩個內容,一是監測,二是控制,重點在第一個字眼“監”上,即監測、預防的意思。監控,對應的英文單詞是Mo...

    管理員賬號 2019-07-31
    111 0 0 0
0k000澳客网竞彩