新書推薦:
《
爱琴海的光芒 : 千年古希腊文明
》
售價:HK$
204.7
《
不被他人左右:基于阿德勒心理学的无压力工作法
》
售價:HK$
67.9
《
SDGSAT-1卫星热红外影像图集
》
售價:HK$
457.7
《
股市趋势技术分析(原书第11版)
》
售價:HK$
227.7
《
汉匈战争全史
》
售價:HK$
102.4
《
恶的哲学研究(社会思想丛书)
》
售價:HK$
109.8
《
不止江湖
》
售價:HK$
101.2
《
天才留步!——从文艺复兴到新艺术运动(一本关于艺术天才的鲜活故事集,聚焦艺术史的高光时刻!)
》
售價:HK$
158.7
|
內容簡介: |
ELKstack是Elasticsearch、Logstash、Kibana三个开源软件的组合,是目前开源界*流行的实时数据分析方案,成为实时日志处理领域开源界的**选择。然而,ELKstack也并不是实时数据分析界的灵丹妙药,使用不恰当,反而会事倍功半。本书对ELKstack的原理进行了解剖,不仅分享了大量实战案例和实现效果,而且分析了部分源代码,使读者不仅知其然还知其所以然。读者可通过本书的学习,快速掌握实时日志处理方法,并搭建符合自己需要的大数据分析系统。本书分为三大部分,共19章。**部分“Logstash”介绍Logstash的安装与配置、场景示例、性能与测试、扩展方案、源码解析、插件开发等,第二部分“Elasticsearch”介绍Elasticsearch的架构原理、数据接口用例、性能优化、测试和扩展方案、映射与模板的定制、监控方案等,第三部分“Kibana”介绍Kibana3和Kibana4的特点对比,Kibana3的配置、案例与源代码解析、Kibana4的配置、案例与源代码解析。
|
目錄:
|
第部分 Logstash
第1章入门示例 3
1.1下载安装 3
1.2HellOWbrld 5
1.3配置语法 7
1.3.1语法 8
1.3.2命令行参数 10
1.4插件安装 1l
1.5长期运行方式 12
第2章插件配置 15
2.1输入插件 15
2.1.1标准输入 16
2.1.2文件输入 17
2.1.3 TCP输入 18
2.1.4 syslog输入 19
2.1.5 collectd输入 21
2.2编解码配置 23
2.2.1 JSON编解码 24
2.2.2多行事件编码 -25
2.2.3网络流编码 26
2.3过滤器配置 _28
2.3.1 date时间处理 28
2.3.2 grok正则捕获 30
2.3.3 GeoIP地址查询 33
2.3.4 JSON编解码 34
2.3.5 key-value切分 35
2.3.6 metrics数值统计 36
2.3.7 mutate数据修改 37
2.3.8随心所欲的Ruby处理 42
2.3.9 split拆分事件 _43
2.3.10 elapsed 43
2.4输出插件 44
2.4.1输出到Elasticsearch 44
2.4.2发送email 49
2.4.3调用系统命令执行 ’50
2.4.4保存成文件 50
2.4.5报警发送到Nagios 51
2.4.6 statsd 52
2.4.7标准输出stdout 54
?2.4.8 TCP发送数据 55
2.4.9输出到HDFS 55
第3章场景示例 57
3.1 Nginx访问日志 57
3.1.1 grok处理方式 57
3.1.2 split处理方式 -58
3.1.3 json格式 -6l
3.1.4 syslog方式发送 62
3.2 Nginx错误日志 62
3.3 Postfix日志 63
3.4 0ssec日志 64
3.4.1配置所有Ossec agent采用
syslog输出 -64
3.4.2配置Logstash 65
3.4.3推荐Kibana仪表盘 65
3.5Windows系统日志 67
3.5.1采集端配置 67
3.5.2接收解析端配置 68
3.6 Java日志 69
3.6.1 Log4J配置 70
3.6.2 Logstash配置 70
3.6.3异常堆栈测试验证 70
3.6.4 JSON Event layout 71
3.7 MySQL慢查询日志 -73
3.8 Docker日志 74
3.8.1记录到主机磁盘 75
3.8.2通过logspout收集 75
第4章性能与监控 77
4.1性能测试 77
4.1.1配置示例 77
4.1.2使用方式 78
4.1.3额外的话 79
4.2监控方案 79
4.2.1 logstash-input-heartbeat心跳
检测方式 80
4.2.2 JMX启动参数方式 8l
第5章扩展方案 83
5.1通过Redis队列扩展 84
5.1.1读取Redis数据 84
5.1.2采用list类型扩展Logstash''''''''85
5.1.3输出到Redis 86
5.2通过Kafka队列扩展 87
5.2.1 Logstashl.4版本插件的安装 88
5.2.2 Input配置 88
5.2.3 0utput配置 90
5.3 logstash-forwarder''''''. 91
5.3.1 Indexer端配置 91
5.3.2 Shipper端配置 92
5.3.3 AIX上的logstash-forwarder-
java -‘93
5.4 Rsyslog'''''''''' 95
5.4.1常用模块介绍 95
5.4.2与Logstash合作 96
5.4.3 Mmextemal模块 ’97
5.5 NxlOg ‘99
5.6 Heka 101
5.7 Fluentd 102
5.7.1配置示例 103
5.7.2 Fluentd插件 -104
?5.8 MeSSage::PaSSing 104
第6章Logstash源码解析 --107
6.2.1 Input中的 Codec ll0
6.2.2 0utput中的 Worker 111
第7章插件开发 113
7.1插件格式 113
7.2插件的关键方法 114
7.3插件打包 115
7.4 Filter插件开发示例 116
7.4.1 mmdb数据库的生成方法 116
7.4.2 LogStash::Filters::Mmdb实现117
7.4.3 logstash-filter-mmdb打包 l l 9
7.5 Input插件开发示例 119
7.5.1 FileWatch模块原理 120
7.5.2 LogStash::Inputs::Utmp实现 l21
7.6 0utput插件开发示例 124
第二部分 Elasticsearch
第8章架构原理 129
8.1准实时索引的实现 129
8.1.1动态更新的Lucene索引 129
8.1.2利用磁盘缓存实现的
准实时检索 l30
8.1.3 translog提供的磁盘同步
控制 131
8.2 segmentmerge的影响 132
8.2.1归并线程配置 133
8.2.2归并策略 134
8.2.3 0ptimize接口 134
8.3 routing和replica的读写过程 134
8.3.1路由计算 134
8.3.2副本致性 135
8.4 shard的allocate控制 136
8.4.1 reroute接口 138
8.4.2冷热数据的读写分离 138
8.5 自动发现的配置 139
8.5.1 multicast方式 140
8.5.2 unicast方式 l40
第9章数据接口用例 141
9.1增删改查操作 141
9.2搜索请求 143
9.2.1全文搜索 143
9.2.2聚合请求 145
9.3脚本 147
9.3.1动态提交 147
9.3.2固定文件 l47
9.3.3其他语言 148
9.4重建索引 148
9.4.1 Perl客户端 149
9.4.2用Logstash重建索引 l49
9.5 Spark Streaming交互 150
第10章性能优化 l53
10.1 bulk提交 153
10.1.1bulk大小 154
第11章测试和扩展方案167
第12章映射与模版的订制181
第13章监控方案189
第14章Elasticsearch在运维监控领域的其他应用215
第三部分Kibana
第15章Kibana的产品对比231
第16章Kibana3 235
第17章Kibana3 源码解析297
第18章Kibana4 319
第19章Kibana4源码解析363
|
內容試閱:
|
本书包括三大部分共19章,各部分可以独立阅读。但对于还没有大规模应用经验的新手,建议按顺序阅读全文。
第一部分Logstash第1章:入门示例。该章介绍Logstash及其插件的配置安装方法,自定义配置语言的设计用途,并为不熟悉Linux系统管理的开发人员介绍了多种后台运行方式。
第2章:插件配置。该章列举Logstash*常用的几十种插件,通过实际示例和效果,讲解各插件的配置细节和用途。
第3章:场景示例。该章以*常见的运维、网络、开发和数据库场景,介绍Logstash处理Nginx、Postfix、Ossec、Log4J、MySQL、Docker等日志的**实践。
第4章:性能与监控。了解Logstash的性能情况一直是个难题,该章从Logstash设计原理和JVM平台本质出发,介绍几种行之有效的检测和监控方案。
第5章:扩展方案。该章介绍采用Redis和Kafka完成Logstash水平扩展的方案,同时也介绍其他几种日志收集系统与Logstash的配合方式。
第6章:Logstash源码解析。该章解析Logstash源码中*重要的Pipeline设计,以及Logstash::Event的来龙去脉。
第7章:插件开发。该章以*常见的用户登录记录和地址库解析、Consul数据更新等需求,实际演示Logstash的自定义Filter、Input和Output插件的编写,同时还涉及了插件打包的RubyGems规范共有HttpClient功能项等细节。
第二部分 Elasticsearch第8章:架构原理。该章从更高级的架构层面,介绍Elasticsearch分布式设计中涉及稳定性和高性能的部分原理,并由此引发相关的优化配置介绍。另外,还提供了一种针对时序数据索引的读写分离方案,适用于拥有少部分SSD设备的用户。
第9章:数据接口用例。该章介绍Elasticsearch的RESTful接口的基础知识,并针对常见的重建索引需求提供两种快速实现方案,为有Spark经验的读者介绍通过Spark Streaming接口读写Elasticsearch的方法。
第10章:性能优化。该章介绍Elasticsearch在日志处理场景下的读写优化知识和官方推事的curator工具,其中重点介绍了Elasticsearch中几种不同的cache的区别和有效场景。
第11章:测试和扩展方案。该章介绍Elasticsearch在生产环境中需要的一些周边工具,比如Puppet配置管理、Shield权限管理、版本升级操作、别名切换流程设计等。
第12章:映射与模板的定制。该章详细介绍Elasticsearch中的核心类型及其对应的常见映射设置,以及如何通过动态模板简化映射定制操作的复杂度。
第13章:监控方案。Elasticsearch作为一个分布式系统,也是有一定的运维难度的,因此其本身的监控也相当重要。该章介绍Elasticsearch自带的一系列监控接口,以及由此衍生的多种实时或长期的监控方案。
第14章:Elasticsearch在运维监控领域的其他应用。该章介绍Elasticsearch在运维方面的其他运用方式,包括实时过滤接口、定时报警系统设计、时序数据存储和相关性排序等奠:£‘1第三部分 Kibana第15章:Kibana的产品对比。该章介绍Kibana 3与Kibana 4之间,以及它们与Hadoop、Splunk之间的差异,方便读者在不同场景需求下选择更正确的工具。
……
|
|