概述
source channel sink 多种组合
单source单channel多sink
sink1+sink2=channel
单source多channel多sink
每个sink 输出内容一致
多source单channel单sink
多个source 可以读取多种信息放在一个channel 然后输出到同一个地方
官方测试报告
官方测试报告
性能调优
性能调优
文档
User Guide
Developer Guide
flume到底会丢数据吗?其可靠性如何?——轻松搞懂Flume事务机制
配置
- hadoop的jar
D:hadoop-2.9.2sharehadoopcommonlib下所有jar包
D:hadoop-2.9.2sharehadoopcommonhadoop-common-2.9.2.jar
D:hadoop-2.9.2sharehadoophdfshadoop-hdfs-2.9.2.jar
D:hadoop-2.9.2sharehadooptoolslibhadoop-aws-2.9.2.jar
D:hadoop-2.9.2sharehadooptoolslibaws-java-sdk-bundle-1.11.199.jar - hadoop文件
hadoop-2.9.2/etc/hadoop/core-site.xml 文件迁移到conf/目录下 - 安装步骤
- 将lib.rar解压覆盖flume的lib目录
- agent文件
- log日志 log4j.properties 覆盖 flume的conf目录 备注(如果flume安装目录下没有 logs文件夹 则新建一个logs文件夹 因为flume运行日志要往里面落 flume.log.dir=./logs)
- 调节flume的内存参数为2G
conf/flume-env.sh
export JAVA_OPTS="-Xms2000m -Xmx2000m -Dcom.sun.management.jmxremote -Dcom.sun.management.jmxremote.port=8888 -Dcom.sun.management.jmxremote.ssl=false -Dcom.sun.management.jmxremote.authenticate=false" - 启动命令
nohup bin/flume-ng agent -n bzlog -c conf -f conf/bzlog.conf -DFlume.root.logger=INFO,LOGFILE -Dflume.monitoring.type=http -Dflume.monitoring.port=34545 >nohup 2>&1 & - 告警
监控 参考文章
{
“SINK.k1”: {
“ConnectionCreatedCount”: “6”,// 创建连接数
“BatchCompleteCount”: “0”,// 完成的批数量
“EventWriteFail”: “0”,
“BatchEmptyCount”: “1087”,// 批量取空的数量 sink和source的速度对比指标
“EventDrainAttemptCount”: “2327843”,// 尝试提交的event数量
“StartTime”: “1629187270794”,
“BatchUnderflowCount”: “5”,// 正处于批量处理的batch数
“ChannelReadFail”: “0”,
“ConnectionFailedCount”: “0”,// 连接失败数
“ConnectionClosedCount”: “6”,// 关闭连接数量
“Type”: “SINK”,
“EventDrainSuccessCount”: “2327843”,// 成功发送event的数量
“StopTime”: “0”
},
“CHANNEL.c1”: {
“ChannelCapacity”: “500000”,// 通道容量
“ChannelFillPercentage”: “0.0”,// 通道使用比例
“Type”: “CHANNEL”,
“ChannelSize”: “0”,// 目前在channel中的event数量
“EventTakeSuccessCount”: “2327843”,// 从channel中成功取走的event数量
“EventTakeAttemptCount”: “2328936”,// 尝试从channel中取走event的次数
“StartTime”: “1629187270792”,
“EventPutAttemptCount”: “2327969”,// 尝试将event放入channel的次数
“EventPutSuccessCount”: “2327843”,// 成功放入channel的event数量
“StopTime”: “0”
},
“SOURCE.s4”: {
“KafkaEventGetTimer”: “20291542”,
“AppendBatchAcceptedCount”: “0”,// 追加到channel中的批数量
“EventAcceptedCount”: “581710”,// 成功放入channel的event数量
“AppendReceivedCount”: “0”,// source追加目前收到的数量
“StartTime”: “1629187271054”,// 组件开始时间
“AppendBatchReceivedCount”: “0”,// source端刚刚追加的批数量
“KafkaCommitTimer”: “2407”,
“EventReceivedCount”: “581732”,// source端成功收到的event数量
“Type”: “SOURCE”,
“KafkaEmptyCount”: “31820”,
“AppendAcceptedCount”: “0”,// 放入channel的event数量
# 打开的连接数
“OpenConnectionCount”: “0”, // 打开的连接数
“StopTime”: “0”// 组件停止时间
}
}
注意事项
- capacity 和 transactionCapacity 注意调节好大小 transactionCapacity 需要小于 capacity 防止导致source过快sink过慢问题
- byteCapacity 的调节充分利用内存
- channel的capacity太大容易oom
最后
以上就是精明金毛为你收集整理的flume的使用的全部内容,希望文章能够帮你解决flume的使用所遇到的程序开发问题。
如果觉得靠谱客网站的内容还不错,欢迎将靠谱客网站推荐给程序员好友。
发表评论 取消回复