impala&hive大数据平台数据血缘与数据地图(二)-实时采集impala血缘日志推送到kafka
impala数据血缘与数据地图系列:1. 解析impala与hive的血缘日志2. 实时采集impala血缘日志推送到kafka-----------------------------------------实时采集impala血缘日志推送到kafka-----------------------------------------------------使用filebeat采集...
impala数据血缘与数据地图系列:
-----------------------------------------实时采集impala血缘日志推送到kafka-----------------------------------------------------
使用filebeat采集impala的血缘日志并推送到kafka
采用filebeat的主要原因是因为轻量,对impala的血缘日志采集不需要进行数据过滤和格式转换,因此不需要使用flume或logstash这样占用资源较大的工具。
filebeat的安装及使用请参考官方手册:
https://www.elastic.co/guide/en/beats/filebeat/current/filebeat-overview.html
参数配置:
vim conf/filebeat_impala_lineage.yml
#=========================== Filebeat inputs =============================
filebeat.inputs:
- type: log
# Change to true to enable this input configuration.
enabled: true
# Paths that should be crawled and fetched. Glob based paths.
paths:
#这里指定impala血缘目录,会读取该目录下所有日志
- /var/log/impalad/lineage/*
#============================= Filebeat modules ===============================
filebeat.config.modules:
# Glob pattern for configuration loading
path: ${path.config}/modules.d/*.yml
# Set to true to enable config reloading
reload.enabled: false
# Period on which files under path should be checked for changes
#reload.period: 10s
#===========kafka output===============
output.kafka:
#指定kafka的节点和topic
hosts: ["uatka01:9092","uatka02:9092","uatka03:9092"]
topic: wyk_filebeat_impala_lineage_new_demo
required_acks: 1
#output.console:
# pretty: true
DEMO:
启动filebeat,注意每个机器上只能启动一个filebeat进程,因此上面的读取日志不要指定文件名。
$FILEBEAT_HOME/filebeat --c $FILEBEAT_HOME/conf/filebeat_impala_lineage.yml -e
启动kafka consumer:
./kafka-console-consumer.sh --bootstrap-server uatka01:9092,uatka02:9092,uatka03:9092 --topic wyk_filebeat_impala_lineage_new_demo --zookeeper uatka01:2181,uatka02:2181,uatka03:2181
启动impala-shell:
impala-shell -i uathd03
1. 在impala-shell内建一个视图:vw_lineage_test11
2.查看impala lineage 日志文件,血缘已记录日志:
3. 查看filebeat控制台,已监听日志文件并写入kafka topic内:
4. 查看kafka consumer是否消费到该血缘记录:
流程结束:
impalaSQL--> impala血缘日志-->Filebeat-->Kafka
完成监控impala脚本并将血缘日志推送到kafka内。
后续只需要实时消费kafka里的信息即可。
开放原子开发者工作坊旨在鼓励更多人参与开源活动,与志同道合的开发者们相互交流开发经验、分享开发心得、获取前沿技术趋势。工作坊有多种形式的开发者活动,如meetup、训练营等,主打技术交流,干货满满,真诚地邀请各位开发者共同参与!
更多推荐
所有评论(0)