Flume单Channel多Sink配置

转自 https://blog.csdn.net/a632189007/article/details/74643000 

多sink可以直接按常规配置,这样的话每个sink会启动一个sinkrunner,相当于每个线程一个sink,互不干扰,负载均衡是通过channel实现的,效率会提高为n倍,如果在此基础上加入sinkgroup,则sinkgroup会启动一个sinkrunner,就是单线程,sinkgroup从channel中读取数据,然后分发到下面挂载的sink中,效率和单sink一样,没有提高,但是可以实现两个sink的负载均衡或者热备模式。


#flume配置文件
agent1.sources=s1
agent1.sinks= k1 k2
agent1.channels=c1

groups非常影响性能,此处不使用,仅列出来看下配置
#sink groups    
#agent1.sinkgroups=avroGroup
#agent1.sinkgroups.avroGroup.sinks = k1 k2

#sink调度模式 load_balance  failover
#agent1.sinkgroups.avroGroup.processor.type=load_balance
#负载均衡模式  轮询  random  round_robin
#agent1.sinkgroups.avroGroup.processor.selector=round_robin
#失效降级
#agent1.sinkgroups.avroGroup.processor.backoff=true
#降级时间30秒
#agent1.sinkgroups.avroGroup.processor.maxTimeOut=30000

#配置s1
#si channel
agent1.sources.s1.channels=c1
#souorce 类型
agent1.sources.s1.type=exec
#监控正在写入的日志文件
agent1.sources.s1.command=tail -F /home/flume/log/test.log
#如果命令死掉是否重新启动
agent1.sources.s1.restart=true
#重新启动命令的间隔时间
agent1.sources.s1.restartThrottle=2000
#记录命令的错误日志
agent1.sources.s1.logStdErr=true
#批量提交的大小
agent1.sources.s1.batchSize=1000
#批量提交的超时 单位毫秒
agent1.sources.s1.batchTimeout=1000

#配置channel c1
#channel类型  file  memory
agent1.channels.c1.type=memory
#agent1.channels.c1.checkpointDir=/home/flume/channel/log/ckpdir
#agent1.channels.c1.dataDirs=/home/flume/channel/log/data
#单个文件大小  100M
#agent1.channels.c1.maxFileSize=204800000
#channel的event个数
agent1.channels.c1.capacity=20000000
#事务event个数
agent1.channels.c1.transactionCapacity=10000
#内存channel占用内存大小 默认是jvm内存的0.8
agent1.channels.c1.byteCapacity=1024000000

#配置k1
#sink的channel
agent1.sinks.k1.channel=c1
#sink类型  avro  thrift 
agent1.sinks.k1.type=avro
#ip地址
agent1.sinks.k1.hostname=10.8.6.161
#端口
agent1.sinks.k1.port=1463
#批量提交的个数
agent1.sinks.k1.batch-size=1000
#连接超时 毫秒
agent1.sinks.k1.connect-timeout=3000
#请求超时 毫秒
agent1.sinks.k1.request-timeout=20000
#重新连接source的时间 单位秒 用于后端负载均衡的轮询
agent1.sinks.k1.reset-connection-interval=300
#最大连接数 默认5
agent1.sinks.k1.maxConnections=5

#配置k2
#sink的channel
agent1.sinks.k2.channel=c1
#sink类型  avro  thrift 
agent1.sinks.k2.type=avro
#ip地址
agent1.sinks.k2.hostname=10.8.6.160
#端口
agent1.sinks.k2.port=1463
#批量提交的个数
agent1.sinks.k2.batch-size=1000
#连接超时 毫秒
agent1.sinks.k2.connect-timeout=3000
#请求超时 毫秒
agent1.sinks.k2.request-timeout=20000
#重新连接source的时间 单位秒 用于后端负载均衡的轮询
agent1.sinks.k2.reset-connection-interval=300
#最大连接数 默认5
agent1.sinks.k2.maxConnections=5
  • 1
  • 2
  • 3
  • 4
  • 5
  • 6
  • 7
  • 8
  • 9
  • 10
  • 11
  • 12
  • 13
  • 14
  • 15
  • 16
  • 17
  • 18
  • 19
  • 20
  • 21
  • 22
  • 23
  • 24
  • 25
  • 26
  • 27
  • 28
  • 29
  • 30
  • 31
  • 32
  • 33
  • 34
  • 35
  • 36
  • 37
  • 38
  • 39
  • 40
  • 41
  • 42
  • 43
  • 44
  • 45
  • 46
  • 47
  • 48
  • 49
  • 50
  • 51
  • 52
  • 53
  • 54
  • 55
  • 56
  • 57
  • 58
  • 59
  • 60
  • 61
  • 62
  • 63
  • 64
  • 65
  • 66
  • 67
  • 68
  • 69
  • 70
  • 71
  • 72
  • 73
  • 74
  • 75
  • 76
  • 77
  • 78
  • 79
  • 80
  • 81
  • 82
  • 83
  • 84
  • 85
  • 86
  • 87
  • 88
  • 89
  • 90
版权声明:做该做的事,做好该做的事。 https://blog.csdn.net/A632189007/article/details/74643000

猜你喜欢

转载自blog.csdn.net/taoy86/article/details/80169508