flume日志写入hbase问题记录

flume日志写入hbase问题记录

标签(空格分隔): flume


flume使用kafkachannel,source为avro,应用通过logback写入

logback-flume-appender数据发送body内容异常

这个问题在单进程写日志的时候不会出现,在2个以上的进程时出现event的body数据异常,导致flume的自定义sink中无法解析数据
原因是body中在正常的数据末尾,出现很多空串或者其他的数据,导致解析失败。
分析日志后,发现header中的message数据正常,但body出现问题。怀疑是layout格式化时出现的问题,去掉logback.xml中的layout节点后,数据不再出现异常。

kafka未自动删除队列数据

原设置时间太长kafka修改配置log.retention.hours=2

haproxy占用率提升不上去

haproxy的cpu占用率一直卡在25左右上不去,因为haproxy默认是单核启动
根据内核数量加上全局配置nbproc 4后解决

flume日志报错 Commit cannot be completed due to group rebalance

解决办法
kafka参数说明
flume消费者配置了两个参数

heartbeat.interval.ms=10000
session.timeout.ms=30000

flume中:

bft-agent.channels.bft-channel.kafka.consumer.heartbeat.interval.ms = 10000
#不能小于group.min.session.timeout.ms,不能大于group.max.session.timeout.ms
bft-agent.channels.bft-channel.kafka.consumer.session.timeout.ms = 30000

kafka配置文件server.properties中配置

group.max.session.timeout.ms=30000

flume集成hdfs ha

将hadoop集群的core-site.xml和hdfs-site.xml放在flume的conf目录下

缺包问题

flume单独部署时,可能会缺少hadoop和hbase相关的包,可以拷贝hadoop和hbase的文件到目录中,并配置环境变量解决

你可能感兴趣的:(flume,大数据,flume)