首页
学习
活动
专区
圈层
工具
发布
社区首页 >问答首页 >如何在故障转移模式下配置Flume 1.x (flume-ng)?

如何在故障转移模式下配置Flume 1.x (flume-ng)?
EN

Stack Overflow用户
提问于 2012-12-13 01:46:40
回答 1查看 4.2K关注 0票数 2

在CDH3中,有大量关于在故障转移模式下配置Flume (0,9x)节点的信息。

但CDH4中Flume (1.x)配置的配置格式完全不同。如何在故障转移模式下配置Flume 1.x (flume-ng)?

EN

回答 1

Stack Overflow用户

回答已采纳

发布于 2012-12-14 03:28:27

在flume-ng中,您可以定义一组所谓的“接收器”(事件消费者),它们都连接到一个通道,并为该组指定“故障转移”策略,因此如果其中一个接收器失败,事件将被重定向到另一个接收器。

假设我们有两个接收器- main_sinkbackup_sink,这两个接收器都配置为使用来自一个通道的事件,并将事件传递到某个目的地。我们将main_sink的优先级设置为高于backup_sink的优先级,因此只要Flume正常工作,它就会将事件从通道转发到main_sink。但是,如果main_sink失败,Flume将把它降级到失败的接收器池中,在那里它将被分配一个冷却期。同时,来自通道的事件将被转发到backup_sink.

完整示例可能如下所示:

代码语言:javascript
复制
# channels
agent.channels = mem_channel
agent.channels.mem_channel.type = memory

# sources
agent.sources = event_source
agent.sources.event_source.type = avro
agent.sources.event_source.bind = 127.0.0.1
agent.sources.event_source.port = 10000
agent.sources.event_source.channels = mem_channel

# sinks
agent.sinks = main_sink backup_sink

agent.sinks.main_sink.type = avro
agent.sinks.main_sink.hostname = 127.0.0.1
agent.sinks.main_sink.port = 10001
agent.sinks.main_sink.channel = mem_channel

agent.sinks.backup_sink.type = avro
agent.sinks.backup_sink.hostname = 127.0.0.1
agent.sinks.backup_sink.port = 10002
agent.sinks.backup_sink.channel = mem_channel

# sink groups    
agent.sinkgroups = failover_group
agent.sinkgroups.failover_group.sinks = main_sink backup_sink
agent.sinkgroups.failover_group.processor.type = failover
agent.sinkgroups.failover_group.processor.priority.main_sink = 10
agent.sinkgroups.failover_group.processor.priority.backup_sink = 5

您可以在Flume User Guide中找到有关该主题的更多详细信息。

票数 7
EN
页面原文内容由Stack Overflow提供。腾讯云小微IT领域专用引擎提供翻译支持
原文链接:

https://stackoverflow.com/questions/13845598

复制
相关文章

相似问题

领券
问题归档专栏文章快讯文章归档关键词归档开发者手册归档开发者手册 Section 归档