本文由 dbaplus 社群授权转载。
前言
某业务导致NameNode RPC通信频繁,后来观察监控发现,是由于该业务获取HDFS列表文件的频率过于频繁。检查代码后,优化由20s获取一次目录列表改为5分钟获取一次,获取列表的RPC操作次数下降了约1.5倍,平均每秒减少了2~3w次的RPC操作。
还有很多业务场景,通过分析观察RPC画像,都发现了其不合理性,这里就不一一列举了。本文主要记录如何通过ELK快速分析NameNode RPC操作并对接Grafana展示。
通过ELK快速分析NameNode RPC操作
ELK是当前比较主流的分布式日志收集处理工具。这里采用Filebeat→Kafka集群→Logstash→ES→Kibana。
采用原因:
1)Filebeat是基于原先logstash-forwarder的源码改造出来的。换句话说:Filebeat就是新版的logstash-forwarder,也会是Elastic Stack在shipper端的第一选择。