提升高吞吐ELK实践:携程吴晓刚的策略与优化
需积分: 12 89 浏览量
更新于2024-07-19
收藏 1.64MB PPTX 举报
高吞吐ELK实践是携程旅行网的吴晓刚在2015年10月25日分享的主题,关注于如何在大规模的ES(Elasticsearch)集群中实现高效的数据处理和监控。ES集群由30个节点组成,主要关注监控系统的性能优化和吞吐量提升。
系统架构方面,设计了一个独立的ClientNode,它的配置中将node.data设置为false,这使得它专门处理index和bulk request,避免了与DataNode资源的竞争,提高了资源利用率。同时,ClientNode还负责接收查询请求并汇总结果,这种分离有助于故障排查,因为问题更容易定位到特定节点。
监控工具的选择上,团队倾向于使用Ganglia,一个轻量级且易于操作的监控工具,它能够实时监控节点状态,包括健康状况(通过GET/_cat/health和GET/_cat/nodes)以及节点统计信息(通过GET/_nodes/stats和nodeID1,nodeID2/stats)。此外,为了应对Windows平台的限制,团队开发了基于Go语言的Logstashforwarder,这是一个更轻量级的代理,可以在Windows上运行,并支持Lumberjack协议输出,后来通过二次开发使其支持Kafka输出,以利用Kafka的压缩功能节省网络带宽。
对于提高写入吞吐量,分享者提到了几个关键策略:首先,减少Grokfilter的使用,因为它对CPU资源需求较高;其次,通过调整LogstashOutputplugin的参数,如idle_flush_time(默认1秒,应根据延迟容忍度适当延长)、flush_size(直到单个worker达到最大吞吐量不再增长)以及workers数量(通常1到2个就足够),以优化性能。此外,还提到使用HangOut(https://github.com/chi)这样的工具进行进一步的性能优化和管理。
在整个实践过程中,团队也引入了KibanaAuthProxy,这是一个基于Django开发的认证网关,它与CtripSSO(基于JasigCAS)集成,提供了用户认证和单点登录功能,确保了数据的安全性和访问控制。
吴晓刚的分享强调了在高吞吐量的ELK实践中,从系统架构设计、监控工具选择、参数调优到安全性考虑的全面策略,旨在实现一个健壮、高效并且适应企业级需求的ELK解决方案。
2022-02-01 上传
2024-01-24 上传
2023-09-25 上传
2023-09-22 上传
2024-09-20 上传
2023-09-23 上传
2023-12-27 上传
2024-09-20 上传
princemortor
- 粉丝: 13
- 资源: 266
最新资源
- 前端面试必问:真实项目经验大揭秘
- 永磁同步电机二阶自抗扰神经网络控制技术与实践
- 基于HAL库的LoRa通讯与SHT30温湿度测量项目
- avaWeb-mast推荐系统开发实战指南
- 慧鱼SolidWorks零件模型库:设计与创新的强大工具
- MATLAB实现稀疏傅里叶变换(SFFT)代码及测试
- ChatGPT联网模式亮相,体验智能压缩技术.zip
- 掌握进程保护的HOOK API技术
- 基于.Net的日用品网站开发:设计、实现与分析
- MyBatis-Spring 1.3.2版本下载指南
- 开源全能媒体播放器:小戴媒体播放器2 5.1-3
- 华为eNSP参考文档:DHCP与VRP操作指南
- SpringMyBatis实现疫苗接种预约系统
- VHDL实现倒车雷达系统源码免费提供
- 掌握软件测评师考试要点:历年真题解析
- 轻松下载微信视频号内容的新工具介绍