Flume负载均衡
来源:互联网 发布:superslide.min.js 编辑:程序博客网 时间:2024/06/08 05:42
负载均衡:
source里的event流经channel,进入sink组,在sink组内部根据负载算法(round_robin、random)选择sink,后续可以选择不同机器上的agent实现负载均衡。
使用JVM 运行Flume。每台机器运行一个agent,但是可以在一个agent中包含多个sources和sinks。
Client,生产数据,运行在一个独立的线程。
集群采用3台机器:
master
slave1
slave2
master 机器配置:
agent.sources=s1
agent.channels=c1agent.sinks=k1 k2
agent.sinkgroups = g1
agent.sinkgroups.g1.sinks = k1 k2
agent.sinkgroups.g1.processor.type =load_balance
agent.sinkgroups.g1.processor.selector =round_robin
agent.sinkgroups.g1.processor.backoff =true
agent.sources.s1.type=avro
agent.sources.s1.channels=c1
agent.sources.s1.bind=0.0.0.0
agent.sources.s1.port=51515
agent.sources.s1.interceptors=i1
agent.sources.s1.interceptors.i1.type=timestamp
agent.channels.c1.type=memory
agent.channels.c1.capacity = 1000
agent.channels.c1.transactionCapacity = 100
agent.sinks.k1.channel = c1agent.sinks.k1.type = avro
agent.sinks.k1.hostname = slave1
agent.sinks.k1.port = 41414
agent.sinks.k2.channel = c1
agent.sinks.k2.type = avro
agent.sinks.k2.hostname = slave2
agent.sinks.k2.port = 41414
source端可以使用exec,直接从host1端就可以采集数据
agent.sources.r1.type = exec
agent.sources.r1.channels=c1
agent.sources.r1.command=tail -F /home/flume/xx.log
slave1机器配置:
agent.channels=c1
agent.sinks=k1
agent.sources.s1.type=avro
agent.sources.s1.channels=c1
agent.sources.s1.bind=0.0.0.0
agent.sources.s1.port=41414
agent.channels.c1.type=memory
agent.channels.c1.capacity = 10000
agent.channels.c1.transactionCapacity =10000
agent.channels.c1.byteCapacityBufferPercentage= 20
agent.channels.c1.byteCapacity = 800000
agent.sinks.k1.type=hdfs
agent.sinks.k1.channel=c1
agent.sinks.k1.hdfs.path=/flume/%Y/%m
agent.sinks.k1.hdfs.filePrefix=flume
agent.sinks.k1.hdfs.fileSuffix=.log
agent.sinks.k1.hdfs.rollInterval=3600
agent.sinks.k1.hdfs.rollCount=0
agent.sinks.k1.hdfs.rollSize=0
agent.sinks.k1.hdfs.fileType=DataStream
agent.sinks.k1.hdfs.writeFormat=Text
agent.sinks.k1.hdfs.useLocalTimeStamp=fals
slave2与slave1 的配置一样。
客户端机器暂时使用flume-ng的agent发送,配置如下:
agent.channels = c1
agent.sources = r1
agent.sinks = k1
agent.sources.r1.channels = c1
agent.sources.r1.type = exec
agent.sources.r1.command = cat /tmp/linux.log
agent.channels.c1.type=memory
agent.channels.c1.capacity = 10000
agent.channels.c1.transactionCapacity =10000
agent.sinks.k1.type = avro
agent.sinks.k1.channel = c1
agent.sinks.k1.hostname = matser
agent.sinks.k1.port = 51515
客户端/tmp/linux.log 文件发送给master。
启动:
启动方式是:先启动slave1 和slave2,然后启动master,最后启动client。
测试过程中,可以随时将slave1 或slave2 停止,过一段时间再启动。
slave1启动:
bin/flume-ng agent -c conf -f conf/load_master.conf -n agent
slave2启动:
bin/flume-ng agent -c conf -f conf/load_slave1.conf -n agent
master启动
bin/flume-ng agent -c conf -f conf/load_slave2.conf -n agent
客户端:
bin/flume-ng agent -c conf -f conf/client.conf -n agent
- Flume负载均衡
- Rsyslog,HAProxy,Flume 做负载均衡
- 关于配置flume-ng负载均衡
- Flume 高可用 负载均衡问题
- 【Flume】 flume 负载均衡环境的搭建 load_balance
- flume系列-flume负载均衡(存HDFS)
- flume-ng负载均衡load-balance、failover集群搭建
- flume-ng负载均衡load-balance、failover集群搭建
- flume-ng负载均衡load-balance、failover集群搭建
- Flume的可靠性保证:故障转移、负载均衡
- flume-ng负载均衡load-balance、failover集群搭建
- flume-ng负载均衡load-balance、failover集群搭建
- Flume的可靠性保证:故障转移、负载均衡
- 【Flume】【源码分析】flume中LoadBalancingSinkProcessor负载均衡实现机制的源码分析
- Flume NG 学习笔记(七)Sink Processors(故障转移与负载均衡)测试
- flume实现kafka到hdfs实时数据采集 - 有负载均衡策略
- 均衡负载方式搭建高可用的flume-ng环境写入信息到hadoop和kafka
- 详解scribe+flume搭建高可用的负载均衡日志收集系统入hadoop和kafka
- LIGHTOJ 1410 - Consistent Verdicts【SET】
- 分享原生js代码实现图片放大境效果
- Java访问权限详解
- iOS:用UIWebView加载网页,退出控制器内存不减,每次加载持续增涨(内存警告)
- CorelDRAW中页面顺序该如何更改和管理
- Flume负载均衡
- 对线性回归、逻辑回归、各种回归的概念学习
- Android开发之自定义控件——直尺
- 东亚王瑜羞辱提示
- linux 虚拟机时间与本地时间相差15分钟解决方法
- java中的自定义异常
- android long转时间,多了8小时的解决
- java修饰符的权限范围
- GIMMS NDVI3g V1.0发布