定价:¥79.00作者:
ELK是Elasticsearch、Logstash、Kibana三个开源软件的组合,是目前开源界流行的实时数据分析方案,成为实时日志处理领域开源界的第壹选择。然而,ELK也并不是实时数据分析界的灵丹妙药,使用不恰当,反而会事倍功半。本书对ELK的原理进行了解剖,不仅分享了大量实战案例和实现效果,而且分析了部分源代码,使读者不仅知其然还知其所以然。读者可通过本书的学习,快速掌握实时日志处理方法,并搭建符合自己需要的大数据分析系统。本书分为三大部分,第壹部分“Logstash”介绍Logstash的安装与配置、场景示例、性能与测试、扩展方案、源码解析、插件开发等,第二部分“Elasticsearch”介绍Elasticsearch的架构原理、数据接口用例、性能优化、测试和扩展方案、映射与模板的定制、监控方案等,第三部分“Kibana”介绍Kibana3和Kibana5的特点对比,Kibana的配置、案例与源代码解析。
目 录Contents
前 言
,部分 Logstash
第1章 入门示例 3
1.1 下载安装 3
1.2 Hello World 4
1.3 配置语法 8
1.3.1 语法 8
1.3.2 命令行参数 10
1.3.3 设置文件示例 11
1.4 插件安装 12
1.5 长期运行方式 13
第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 http_poller抓取 21
2.2 编解码配置 22
2.2.1 JSON编解码 23
2.2.2 多行事件编码 24
2.2.3 网络流编码 26
2.2.4 collectd输入 27
2.3 过滤器配置 30
2.3.1 date时间处理 30
2.3.2 grok正则捕获 33
2.3.3 dissect解析 35
2.3.4 GeoIP地址查询 36
2.3.5 JSON编解码 38
2.3.6 key-value切分 38
2.3.7 metrics数值统计 40
2.3.8 mutate数据修改 41
2.3.9 随心所欲的Ruby处理 45
2.3.10 split拆分事件 47
2.3.11 交叉日志合并 48
2.4 输出插件 49
2.4.1 输出到Elasticsearch 49
2.4.2 发送email 54
2.4.3 调用系统命令执行 54
2.4.4 保存成文件 55
2.4.5 报警发送到Nagios 56
2.4.6 statsd 58
2.4.7 标准输出stdout 61
2.4.8 TCP发送数据 62
2.4.9 输出到HDFS 62
第3章 场景示例 64
3.1 Nginx访问日志 64
3.1.1 grok处理方式 64
3.1.2 split处理方式 65
3.1.3 JSON格式 68
3.1.4 syslog方式发送 69
3.2 Nginx错误日志 69
3.3 Postfix日志 71
3.4 Ossec日志 72
3.4.1 配置所有Ossec agent采用syslog输出 72
3.4.2 配置Logstash 72
3.4.3 推荐Kibana仪表盘 73
3.5 Windows系统日志 73
3.5.1 采集端配置 73
3.5.2 接收解析端配置 75
3.6 Java日志 77
3.6.1 Log4J配置 77
3.6.2 Logstash配置 78
3.6.3 异常堆栈测试验证 78
3.6.4 JSON Event layout 79
3.7 MySQL慢查询日志 80
3.8 Docker日志 82
3.8.1 记录到主机磁盘 82
3.8.2 通过logspout收集 83
第4章 性能与监控 85
4.1 性能测试 85
4.1.1 配置示例 85
4.1.2 使用方式 86
4.1.3 额外的话 87
4.2 监控方案 87
4.2.1 logstash-input-heartbeat心跳检测方式 88
4.2.2 JMX启动参数方式 89
4.2.3 API方式 90
第5章 扩展方案 94
5.1 通过Redis队列扩展 95
5.1.1 读取Redis数据 95
5.1.2 采用list类型扩展Logstash 96
5.1.3 输出到Redis 97
5.2 通过Kafka队列扩展 98
5.2.1 Kafka基础概念 99
5.2.2 Input配置 100
5.2.3 Output配置 101
5.2.4 性能 103
5.3 logstash-forwarder 103
5.3.1 Indexer端配置 104
5.3.2 Shipper端配置 104
5.3.3 AIX上的logstash-forwarder-java 106
5.4 Rsyslog 107
5.4.1 常用模块介绍 107
5.4.2 与Logstash合作 109
5.4.3 Mmexternal模块 109
5.5 Nxlog 112
5.6 Heka 114
5.7 Fluentd 115
5.7.1 配置示例 115
5.7.2 Fluentd插件 117
5.8 Message::Passing 117
第6章 Logstash源码解析 119
6.1 Pipeline 120
6.2 Plugins 122
第7章 插件开发 125
7.1 插件格式 125
7.2 插件的关键方法 126
7.3 插件打包 127
7.4 Filter插件开发示例 128
7.4.1 mmdb数据库的生成方法 129
7.4.2 LogStash::Filters::Mmdb实现 130
7.4.3 logstash-filter-mmdb打包 131
7.5 Input插件开发示例 132
7.5.1 FileWatch模块原理 132
7.5.2 LogStash::Inputs::Utmp实现 133
7.6 Output插件开发示例 136
第8章 Beats 138
8.1 libbeat的通用配置 138
8.1.1 过滤器配置 138
8.1.2 输出配置 139
8.1.3 shipper网络配置 142
8.1.4 日志配置 142
8.1.5 运行配置 142
8.2 Filebeat 142
8.2.1 安装部署 143
8.2.2 配置 144
8.2.3 生成的可用字段 145
8.3 packetbeat抓包分析 145
8.3.1 安装部署 146
8.3.2 配置示例 146
8.3.3 dashboard效果 147
8.3.4 Kibana 3拓扑图 148
8.4 metricbeat 150
8.4.1 配置示例 152
8.4.2 各模块输出指标示例 152
8.4.3 采集Docker中的指标 164
8.5 winlogbeat 164
第二部分 Elasticsearch
第9章 架构原理 169
9.1 准实时索引的实现 169
9.1.1 动态更新的Lucene索引 169
9.1.2 利用磁盘缓存实现的准实时检索 170
9.1.3 translog提供的磁盘同步控制 171
9.2 segment merge的影响 172
9.2.1 归并线程配置 173
9.2.2 归并策略 174
9.2.3 forcemerge接口 174
9.3 routing和replica的读写过程 174
9.3.1 路由计算 175
9.3.2 副本一致性 175
9.4 shard的allocate控制 176
9.4.1 reroute接口 178
9.4.2 分配失败原因 179
9.4.3 节点下线 180
9.4.4 冷热数据的读写分离 180
9.5 自动发现的配置 181
第10章 数据接口用例 183
10.1 增删改查操作 183
10.2 搜索请求 185
10.2.1 全文搜索 185
10.2.2 聚合请求 187
10.2.3 pipeline聚合 189
10.2.4 搜索请求参数 191
10.3 脚本 192
10.3.1 动态提交 192
10.3.2 固定文件 193
10.3.3 其他语言 194
10.4 重建索引 194
10.4.1 Perl客户端 194
10.4.2 用Logstash重建索引 195
10.4.3 新reindex接口的应用 195
10.5 Spark Streaming交互 197
第11章 性能优化 199
11.1 bulk提交 199
11.1.1 bulk大小 200
11.1.2 UDP方式 200
11.2 gateway配置 201
11.3 集群状态维护 202
11.4 缓存 206
11.4.1 filter缓存 206
11.4.2 shard reguest缓存 207
11.4.3 field_stats 接口 208
11.5 字段数据 209
11.5.1 Circuit Breaker 209
11.5.2 doc values 210
11.6 curator工具 212
11.6.1 参数介绍 213
11.6.2 常用示例 214
11.7 profiler调试接口 214
第12章 测试和扩展方案 217
12.1 测试方案 217
12.2 多集群互联 220
12.3 puppet-elasticsearch模块的使用 223
12.3.1 安装和配置示例 223
12.3.2 配置解释 224
12.4 计划内停机升级的操作流程 224
12.5 Shield权限管理 227
12.5.1 Shield架构 227
12.5.2 安装部署 227
12.6 searchguard权限管理 229
12.6.1 安装 229
12.6.2 权限角色配置 231
12.6.3 其他组件配置方式 233
12.7 别名的应用 234
12.7.1 索引更名时的无缝切换 234
12.7.2 限制索引数据部分可读 236
12.8 快照与恢复 237
12.8.1 HDFS插件安装配置 237
12.8.2 Hadoop配置 238
12.8.3 备份操作 240
12.9 rollover和shrink管理 240
12.9.1 rollover管理 240
12.9.2 shrink缩容 241
12.10 ingest节点 243
12.10.1 创建管道流 243
12.10.2 测试管道流 243
12.10.3 处理器 244
第13章 映射与模板的定制 246
13.1 映射的增删改查 246
13.2 Elasticsearch的核心类型 248
13.3 自定义字段映射 249
13.3.1 精确索引 249
13.3.2 时间格式 249
13.3.3 多重索引 250
13.4 特殊字段 250
13.5 动态模板映射 251
13.6 索引模板 252
第14章 监 控 方 案 254
14.1 监控相关接口 254
14.1.1 集群健康状态 254
14.1.2 节点状态 257
14.1.3 热线程状态 264
14.1.4 索引状态 265
14.1.5 任务管理 266
14.1.6 cat接口的命令行使用 268
14.2 日志记录 271
14.3 实时bigdesk方案 272
14.4 cerebro 274
14.5 Zabbix trapper方案 275
14.5.1 安装配置 275
14.5.2 模板应用 276
第15章 Elasticsearch在运维监控领域的其他应用 278
15.1 Percolator接口 278
15.2 Watcher报警 281
15.3 ElastAlert 284
15.3.1 安装 284
15.3.2 配置结构 284
15.3.3 扩展 286
15.4 时序数据库 288
15.5 Etsy的Kale异常检测 290
15.6 Grafana可视化 291
15.6.1 安装 291
15.6.2 配置数据源 292
15.6.3 生成,个图表 293
15.6.4 模板功能 295
15.6.5 在线资源 300
15.7 Juttle可视化 301
15.7.1 安装部署 302
15.7.2 命令行运行示例 302
15.7.3 可视化界面 304
15.7.4 可视化相关指令介绍 304
第三部分 Kibana
第16章 Kibana的产品对比 309
16.1 Kibana 3的设计思路和功能 309
16.2 Kibana 5的设计思路和功能 310
16.3 与Hadoop体系的区别 310
16.4 Splunk场景参考 311
第17章 Kibana 5 312
17.1 安装、配置和运行 313
17.2 生产环境部署 314
17.2.1 Nginx代理配置 316
17.2.2 开启SSL 317
17.3 Discover功能 318
17.3.1 设置时间过滤器 318
17.3.2 搜索数据 319
17.3.3 按字段过滤 321
17.3.4 过滤器的协同工作方式 321
17.3.5 查看文档数据 323
17.4 各种可视化功能 324
17.4.1 area 326
17.4.2 table 329
17.4.3 line 330
17.4.4 Markdown 331
17.4.5 metric 331
17.4.6 pie 332
17.4.7 tile map 332
17.4.8 vertical bar 334
17.4.9 tagcloud 335
| 商品名称: | 深入理解ElasticSearch | ||
| 作者: | (美)酷奇 | 开本: | |
| 定价: | 69 | 页数: | |
| 现价: | 见顶部 | 出版时间 | 2016-01 |
| ISBN号: | 9787111524168 | 印刷时间: | |
| 出版社: | 机械工业出版社 | 版次: | |
| 商品类型: | 图书 | 印次: | |
书中对于一些复杂概念的解释,坦率地说,有些过于抽象和晦涩,缺乏足够的、贴近实际场景的案例来佐证其理论。很多段落读起来就像是教科书上的定义集合,虽然术语都用对了,但对于初次接触这些技术的读者来说,理解起来非常吃力。比如,当提到某种特定的数据结构或算法优化时,作者似乎默认读者已经具备了深厚的背景知识,直接抛出了结论,而没有深入剖析其背后的设计哲学和选择依据。我多次需要跳出这本书,去互联网上搜索相关的博客文章或官方文档的图解,才能勉强理清作者想表达的意图。一个真正“权威的指南”应该能够站在读者的角度,用更容易消化的语言去拆解和重构复杂的思想,提供直观的视觉辅助,而不是仅仅堆砌文字。这种高高在上的讲解方式,让学习过程充满了“猜谜”的成分,极大地降低了学习的效率和探索的兴趣。
评分我对这本书的目录结构感到非常困惑,似乎作者在内容的组织上缺乏一个清晰、连贯的逻辑主线。章节之间的跳转显得突兀且生硬,前一章还在讨论基础的概念介绍,下一章立刻就跳到了高阶的性能调优,中间缺失了大量必要的过渡和铺垫,让人感觉像是在走一段没有指引的迷宫。很多我本以为会放在一起讨论的关键技术点,却被生生地拆分到了相距甚远的几个章节里,这极大地增加了知识点串联的难度。我花费了大量时间去翻阅不同章节,试图构建一个完整的认知框架,但每次都因为这种不合理的编排而功亏一篑。对于一个需要系统性学习新技术的读者来说,这种“碎片化”的知识呈现方式是非常低效的。如果作者能按照“理论基础 -> 核心组件 -> 实践应用 -> 深入优化”这样的清晰路径来组织内容,学习曲线会平滑得多。现在的感觉是,我需要自己充当一个“知识整合者”的角色,而不是一个单纯的知识接收者,这无疑增加了学习的负担和挫败感。
评分全书的错误和笔误多到令人发指的程度,简直让人怀疑它是否经过了任何形式的专业校对。不仅仅是错别字这种小问题,更严重的是,在关键的技术解释和代码块中,存在着明显的逻辑错误和事实性偏差。比如,在描述一个关键的配置项的作用时,它给出的解释与实际系统的行为完全相反;在展示一个多步骤操作流程时,步骤的顺序描述是错误的,导致读者按照书中的指引操作必然失败。这些深层次的错误一旦出现,就会像滚雪球一样积累读者的不信任感。每发现一个错误,我都需要停下来,花费额外的精力去验证其正确性,然后自己修正认知,这极大地破坏了阅读的流畅性和对作者专业度的信任。如果一本专业书籍中充满了错误,它所传递的“权威性”便荡然无存,最终沦为一本需要读者自行“打补丁”的草稿。
评分这本书在涉及最新版本迭代和特性更新方面,明显滞后于行业发展速度。我购买时是希望能够获得最新的、与当前生产环境兼容的技术栈指导,然而,书中的很多配置示例和API调用方式,明显是基于好几个主要版本之前的旧版软件环境。当我试图将书中提供的代码片段复制粘贴到我当前的新环境中运行时,大量的报错和兼容性问题接踵而至,我不得不花费大量时间去手动修正那些过时的命令和参数,这简直是令人抓狂。技术领域的知识更新速度本来就很快,一本号称“权威”的指南,如果不能紧跟主流版本的步伐,其参考价值就会大打折扣,甚至可能误导读者走向错误的技术路径。购买技术书籍,很大程度上是图一个“省心”和“可靠”,但这本书在这方面表现得非常不尽人意,让我不得不怀疑其内容更新维护的频率和专业程度。
评分这本书的排版和印刷质量简直是一场灾难,拿到手的时候就感觉像是被粗暴对待过一样。纸张的厚度非常不均匀,有些地方薄得几乎能透过光线,另一些地方却又厚得像是贴了两层。更要命的是,油墨的附着力非常差,随便用手指蹭一下,就能看到一些文字边缘开始模糊、扩散,简直是考验我的视力极限。特别是那些涉及代码示例和配置文件的部分,本该清晰锐利的地方,现在看起来就像是蒙了一层灰尘,我不得不经常眯着眼睛去辨认那些复杂的参数和路径。阅读体验因此大打折扣,每次翻页都像是在进行一次对眼睛的折磨,完全没有沉浸在技术学习的乐趣中。如果这是一个严肃的技术参考资料,至少应该保证信息传递的准确性和舒适性吧?现在的状态,让我严重怀疑作者和出版社在装订和校对环节上是否存在严重的疏忽。我甚至担心,随着时间的推移,这些脆弱的页面会不会自己脱落,让我的学习资料支离破碎。希望未来的再版能够重视一下基础的出版工艺,毕竟内容再好,如果载体本身都难以承受阅读的重量,那也是徒劳。
本站所有内容均为互联网搜索引擎提供的公开搜索信息,本站不存储任何数据与内容,任何内容与数据均与本站无关,如有需要请联系相关搜索引擎包括但不限于百度,google,bing,sogou 等
© 2025 book.coffeedeals.club All Rights Reserved. 静流书站 版权所有