新書推薦:
《
国术健身 易筋经
》
售價:HK$
33.4
《
古罗马800年
》
售價:HK$
188.2
《
写出心灵深处的故事:踏上疗愈之旅(修订版)(创意写作书系)
》
售價:HK$
66.1
《
控制权视角下的家族企业管理与传承
》
售價:HK$
87.4
《
冯友兰和青年谈心系列
》
售價:HK$
167.3
《
利他主义的生意:偏爱“非理性”的市场(英国《金融时报》推荐读物!)
》
售價:HK$
77.3
《
认知行为疗法:心理咨询的顶层设计
》
售價:HK$
99.7
《
FANUC工业机器人装调与维修
》
售價:HK$
99.7
|
編輯推薦: |
本书从入门到高级应用,从Zabbix基本应用到安装包定制、协议、API,全面剖析、应有尽有。
包含大量监控案例,详解触发器、告警等Zabbix监控中令人头疼的问题,学到的不止是技术,还有思路和方法。
|
內容簡介: |
《Zabbix企业级分布式监控系统》从运维(OPS)角度对Zabbix 的各项功能进行了详细介绍,以自动化运维视角为出发点,对Zabbix 的安装配置、自动化功能、监控告警、性能调优、Zabbix API、Zabbix 协议、RPM安装包定制,结合saltstack 实现自动化配置管理等内容进行了全方位的深入剖析。
《Zabbix企业级分布式监控系统》分为初级内容、中级内容、高级内容和附录部分,分别由浅入深地讲解Zabbix 监控系统这个开源软件。从最简单的安装配置,到复杂的高级使用,详细讲解了数据库分表、高可用、性能调优、架构设计,以及大量的监控案例,对即将构建Zabbix 监控系统,或者已经在使用Zabbix 的用户具有非常高的参考价值。
《Zabbix企业级分布式监控系统》适合想了解、学习和规划构建监控系统的人员阅读,可以作为学习Zabbix 的工具书,也适合有一定基础,想更深入学习Zabbix 的读者,通过大量的案例,让读者真正理解Zabbix。
|
關於作者: |
吴兆松,运维开发工程师,具有丰富的一线运维实战经验,曾做过CDN运维、游戏运维、云计算运维,对Linux系统、云计算、监控系统有较深入的研究,熟悉运维自动化工具的使用和二次定制开发,乐于折腾开源软件,偶尔写写博客、技术文档,其始终坚信,技术的积累只是时间问题,而解决问题的思路和思想高于具体的技术细节。
|
目錄:
|
第1部分 Zabbix基础部分
第1章 监控系统简介 2
1.1 为何需要监控系统 2
1.2 监控系统的实现 2
1.3 监控系统的开源软件现状 4
1.4 监控系统的原理探究 11
第2章 Zabbix简介 14
2.1 Zabbix的客户 14
2.2 使用Zabbix的准备 15
2.3 Zabbix为何物 15
2.4 选择Zabbix的理由 16
2.5 Zabbix的架构 17
2.6 Zabbix的运行流程 18
2.7 Zabbix的功能特性 19
第3章 安装部署 21
3.1 安装环境概述 21
3.2 Zabbix_Server服务端的安装 25
3.3 Zabbix_Agent客户端的安装 39
3.4 SNMP监控方式的安装配置 40
3.5 Windows上安装Zabbix-Agent 40
3.6 其他平台的安装 43
3.7 zabbix_get的使用 43
3.8 Zabbix相关术语(命令) 44
3.9 Zabbix Server对数据的存储 45
3.10 Zabbix init脚本解释 55
3.11 高可用和安全 56
3.12 Zabbix数据库的备份 57
第4章 快速配置使用 59
4.1 配置流程 59
4.2 主机组的添加 61
4.3 模板的添加 63
4.4 添加主机 65
4.5 Graphs的配置 68
4.6 Screen的配置 74
4.7 Slide shows的配置 78
4.8 Zatree的使用 79
4.9 Map的配置 80
4.10 Web监控 85
4.11 IT服务 92
4.12 报表 95
4.13 资产管理 97
第5章 深入配置使用 99
5.1 Items的添加 99
5.2 Items key的添加 105
5.3 Items的类型 109
5.4 宏的配置 129
5.5 维护时间 131
5.6 事件确认 132
5.7 数据的导入导出配置 134
第6章 告警的配置 135
6.1 告警概述 135
6.2 Trigger的配置 136
6.3 添加Actions 151
6.4 邮件告警配置实例 160
6.5 自定义脚本告警 163
6.6 邮件告警脚本的配置实例 165
6.7 告警升级的机制 169
6.8 告警配置故障排查 172
第2部分 Zabbix中级部分
第7章 监控方式剖析 176
7.1 Zabbix支持的监控方式 176
7.2 Zabbix监控方式的逻辑 177
7.3 Agent监控方式 177
7.4 Trapper监控方式 177
7.5 SNMP监控方式 180
7.6 IPMI监控方式 189
7.7 JMX监控方式 194
7.8 命令执行 201
第8章 分布式监控 202
8.1 代理架构 202
8.2 节点架构 205
8.3 被动模式和主动模式 206
第9章 Zabbix与自动化运维 211
9.1 监控自动化 211
9.2 网络发现 212
9.3 主动方式的自动注册 215
9.4 Low level discovery 221
9.5 Zabbix与自动化配置管理工具Saltstack 238
第10章 使用的经验技巧 242
10.1 如何有效地设置监控告警 242
10.2 监控项的使用技巧 246
10.3 触发器的使用技巧 246
10.4 触发器配置 247
10.5 谷歌浏览器告警插件 249
10.6 数据图断图的原因 250
第11章 监控案例 252
11.1 监控TCP连接数 252
11.2 监控Nginx 254
11.3 监控PHP-FPM 256
11.4 监控MySQL 260
11.6 监控DELL服务器 272
11.7 监控Cisco路由器 272
11.8 监控VMware 274
第3部分 Zabbix高级部分
第12章 性能优化 282
12.1 Zabbix性能优化概述 282
12.2 Zabbix性能优化的依据 283
12.3 配置文件的参数优化 285
12.4 Zabbix的架构优化 287
12.5 Zabbix的Items中工作模式以及Trigger的优化 287
12.6 Zabbix的数据库优化 287
12.7 其他方面 289
第13章 Zabbix API的使用 290
13.1 Zabbix API简介 290
13.2 JSON-RPC 290
13.3 Zabbix API的使用流程 293
13.4 第三方Zabbix API模块 302
第14章 使用Zabbix协议 304
14.1 Zabbix协议概述 304
14.2 Zabbix Sender协议 305
14.3 Zabbix Get协议 310
14.4 Zabbix Agent协议 310
第15章 定制Zabbix安装包 313
15.1 为什么要定制安装包 313
15.2 如何定制安装包 313
第16章 大型分布式监控案例 316
16.1 监控系统构建概述 316
16.2 监控环境架构图 317
16.3 架构实现的过程 317
16.4 业务相关的配置 335
16.5 其他需求 338
附录A 源码安装及相关配置 339
|
內容試閱:
|
为何要写这本书
“运筹帷幄之中,决胜千里之外。”在IT运维中,监控占据着很重要的地位,按比例来算,说30%一点也不为过。对IT运维工程师来说,构建一个真正可用的监控告警系统是一项艰巨的任务。在监控系统的开源软件中,可供选择的工具众多,然而真正适合自己需求,能够真正解决自己业务问题的监控系统软件却凤毛麟角。
在笔者的运维从业生涯中,监控系统用过Cacti、Nagios,以及笔者公司开发的监控告警系统,直到接触了Zabbix,才发现这个灵活而强大的自动化监控工具正是笔者以前所寻找的。Zabbix灵活的设计为用户提供了易用的二次开发接口,让用户既可以使用Zabbix本身提供的功能,又可以自定义更多的监控项功能,从硬件监控,到操作系统,再到服务进程,以及网络设备,其无所不能的监控功能令人叹为观止,不禁要为这么优秀的开源工具而震撼。
在Zabbix的使用过程中,也会遇到很多问题,包括:配置使用、架构设计、性能调优、大规模部署应用等。由于Zabbix是一个集众多功能于一体的工具,自带的功能实在太多,一般用户往往仅用到基本的功能,对更高级的功能并未使用到。然而随着使用的加深,会遇到更多的问题,这其中最大的问题是告警和数据存储。本书对这两部分内容都有深入的讲解。
笔者从2012年12月开始学习并使用Zabbix,在此过程中,通过对Zabbix官网的学习,将Zabbix的部署和配置,以及其丰富的功能整理成文档,并对外公开,已在网络上公开过两个版本《Zabbix使用手册V1.4》和《Zabbix使用手册V2.0》,对不少学习Zabbix的朋友有所帮助。然而,为了将Zabbix的功能更加详细地展示出来,于是有了本书的出现。本书以简洁通俗的方式将Zabbix的各项功能展现给读者,使读者即学即用,以此来节省读者宝贵的时间。
本书将不会开源电子书PDF版本,但笔者将来会对《Zabbix使用手册》做更多的更新,本书的所有代码和软件是开源的。另外,笔者开源的Zabbix安装包定制项目对重新打包Zabbix RPM安装包有一定的参考价值,其地址为https:github.comitnihaozabbix-rpm,希望对大家有所帮助。
如何阅读本书
本书从运维(OPS)角度对Zabbix的各项功能进行了详细介绍,以自动化运维视角为出发点,对自动化功能、高可用、监控告警、性能调优、Zabbix API、Zabbix协议、RPM安装包定制等进行了深入浅出的探讨。
第1部分为基础部分,包括第1~6章,介绍了监控系统的原理,让初次接触监控的读者了解监控的组成架构,从宏观上认识监控系统,接下来讲解了Zabbix的架构、Zabbix的安装、监控配置、自定义监控项、告警配置、告警脚本等功能。这部分内容适合初学者系统地学习Zabbix监控系统,对稍有经验的使用者来说,重点掌握3.9节中Zabbix对数据存储的处理,以及第5章中深入配置使用Zabbix和第6章中监控告警部分。
第2部分为中级部分,包括第7~11章,对Zabbix的多种监控方式进行了详述(如IPMI、SNMP、JMX等),对Zabbix的自动化功能进行了深入讲解,介绍了分布式监控系统,并有大量自定义脚本的监控案例,对自动化发现LLD功能进行了深入的讲解,适合对Zabbix有一定基础的读者深入学习。通过这部分的学习,读者将会深入理解Zabbix的自动化功能。
第3部分为高级部分,包括第12~16章,介绍了Zabbix的性能调优,解决Zabbix使用过程中遇到性能瓶颈的问题,并让读者学会使用Zabbix API、Zabbix协议来扩展Zabbix,从而为构建运维平台提供了更多的扩展性。同时,也讲解了如何定制RPM包,以及如何使用Saltstack来自动化部署和配置,最后用一个实例来讲解如何构建企业级分布式监控系统,适合对Zabbix非常熟悉的读者进行深入应用。通过这部分的学习,读者能够深入理解Zabbix。
第4部分为附录部分,介绍了Zabbix的源码安装和Zabbix的升级,仅供读者参考。在介绍Zabbix的安装时,作者极力推荐在RHEL这类系统中使用RPM包的安装方式,但网络中大部分资料都采用源码安装,且在多种书籍中均有使用源码安装的习惯,从而误导了读者,认为源码安装才是真正的懂Linux,以此造成部分用户以使用源码安装为荣,让源码安装具有“优越感”。使用源码安装导致了部分初学者连最基本的安装和配置都会遇到很多麻烦,甚至为了安装一个软件需要几天才能完成。当然,这里并不排斥使用源码安装,只是为了纠正一个观念,请读者尽量使用自己打包的RPM这种适合大规模安装的方式去部署Zabbix程序。本书将RPM定制的内容作为单独的一章进行介绍,让读者深入理解安装和定制的过程。
读者对象
中高级Linux系统管理员
系统运维工程师
运维开发工程师
系统集成商
运维监控系统工程师
监控系统软件开发(设计)人员
IT管理人员
架构设计人员
勘误和支持
因作者水平有限,书中的错误或不妥之处难免,恳请读者批评、指正。如果读者有任何宝贵的意见或建议,可以发送邮件到zabbix@itnihao.com,期待您的真挚反馈。
本书所有的代码和安装软件将放在github中托管,地址为https:github. comitnihao zabbix-book,读者可以自行下载使用。另外,本书的勘误也会在此链接中得到反馈。
声明
本书采用的Zabbix版本为2.0和2.2,因此对Zabbix 1.8不再讨论,Zabbix 2.4将在未来两年内会发布,其功能与Zabbix 2.2将会有所不同(例如,Zabbix 2.4中的分布式模式会去掉node架构等)。本书采用的操作系统以RHEL(CentOS)、Windows为主,对于其他系统,其配置方法类似,请读者举一反三。本书对部分不重要的内容只是简略地介绍,希望能起到抛砖引玉的作用。
另外,本书在编写过程中,参考了以下网址中的内容,并对官网的部分内容进行了翻译整理,后面不再单独声明。
https:www.zabbix.comdocumentation2.2manual
https:www.zabbix.orgwiki
http:pengyao.orgzabbix-triggers-functions.html
鸣谢
本书在编写过程中得到了众多朋友的支持。在这里要感谢姚炫伟、陈益超、窦喆、冯颖聪等对本书的技术问题进行审校;感谢电子工业出版社编辑任晓露和李利健对本书的精心指导,更正了书稿中的很多错误之处,才得以与读者面市。特别感谢以下朋友对作者的支持与鼓励:伊杨林、吴华、黄小路、芮峰云、罗坤、温宏强、曾兵、范仁更、邝玲、张克元(网名Geek)、沈灿、薛群、李佃田、罗苗、杨晨、焦婷婷、KissPuppet(网名)、司鼎任、汤永全、罗伟、水喜云、唐文军、李彬(网名彬彬)、高鹏程、唐博、罗涛(网名MorningSong)等。注意,以上排名不分先后(使用Linux命令sort -R随机生成排序)。感谢SJCloud公司的全体成员,感谢金总,陶总,付总在我工作期间的支持和帮助。
另外,也要感谢史应生、李庆雷、姚仁捷、邓磊、马永亮、孙科伟、虚拟的现实(网名)等分享的有关Zabbix的技术文档、视频录制和讲座等内容,这些内容对促进Zabbix在国内的推广和发展有很大帮助。很多网友也写了大量的有关Zabbix的博客文章,相关链接会放在本书的github项目中。
本书的代码示例规范
1.在shell环境中使用,shell命令用黑体加粗。
shell# vim etcphp.ini
2.在MySQL环境中使用,SQL命令用黑体加粗。
mysql flush privileges;
3.在本书中,Zabbix-Server(Zabbix Server)表示zabbix-server服务或zabbix_server进程,其他Zabbix Agent,Zabbix Get,Zabbix Proxy情况类似,后面不再声明。
4.重要参数的解释,用灰色底纹标示。
? Proxy name,即zabbix-proxy的hostname。
? Proxy mode,即zabbix-proxy的工作模式,被动或主动,默认是主动模式。
作者(网名itnihao)2014年6月1号于上海
|
|