Splunk是业界赫赫有名的数据分析工具,比较擅长BI和安全日志分析,我司很多部门都有购买其产品和服务。最近有个需求要把Splunk和分布式消息队列Kafka做个集成,Splunk官方提供的一个Kafka的插件,可以很容易的做到与开源Kafka集成,本文简单描述一下集成的配置方法。
这里假设你的环境里已经搭建好了Splunk和Kafka(Splunk搭建请参考,Kafka搭建请参考)。
概述
Splunk Add-on for kafka
支持三种输入
- 监控Kafka本身的日志,需要在Kafka的机器上部署Forward
- 用JMX输入来收集kafka集群的性能指标,这还需要额外安装一个Splunk Add-on for JMX来跟Kafka的JMX对接
- 与Kafka的topic对接直接消费数据,通常会把插件装在heavy forwarder上,通过他与Kafka对接一个完整的部署架构和数据流向如下图所示,实际上前两种输入都是可选的,根据实际需求选择即可:
安装Splunk Add-on for Kafka
1.下载插件:https://splunkbase.splunk.com/app/2935/#/overview
2.安装插件,在Splunk主界面上点“Apps”后面的图标
在弹出界面上点“Install app from file”,在弹出界面上选择前一步下载的Splunk Add-on for kafka,然后点“upload”安装完后会提示重启。
配置Splunk集成Kafka
官方推荐把接收Kafka消息的集成点放在Heavy Forwarder上,但是直接在Splunk实例上配置订阅Kafka主题也是可以的。
- 在Splunk Web上点Apps->Manage Apps
- 在弹出页面中找到Splunk Add-on for Kafka,点击“Set up”
- (可选)配置“Logging level”
- 在下面的“Credential Settings ”中,点击“Add Kafka Cluster”,在弹出窗口中只需配置前两项即可,其他都可以留白
- 点“save”
- 点击“Settings->Data inputs”
- 找到“Splunk Add-on for kafka”那一行,点击“Add new”
- 填写表格
- Kafka data input name 给这个输入定个名字
- Kafka cluster kafka 集群的名字,见上面4、5两步
- Kafka topic 收集数据的kafka 主题
- Kafka partitions (选填)
- Kafka partition offset 指定是从头开始还是从尾开始
- Topic group (选填)订阅者的group标识
- Index (选填)
- 点“Next”
通过上述步骤,Splunk就和kafka集成好了,通过producer往kafka发一些数据,然后在Splunk里搜索:sourcetype=kafka:topicEvent