在CDH3中,有大量关于在故障转移模式下配置Flume (0,9x)节点的信息。
但CDH4中Flume (1.x)配置的配置格式完全不同。如何在故障转移模式下配置Flume 1.x (flume-ng)?
发布于 2012-12-14 03:28:27
在flume-ng中,您可以定义一组所谓的“接收器”(事件消费者),它们都连接到一个通道,并为该组指定“故障转移”策略,因此如果其中一个接收器失败,事件将被重定向到另一个接收器。
假设我们有两个接收器- main_sink和backup_sink,这两个接收器都配置为使用来自一个通道的事件,并将事件传递到某个目的地。我们将main_sink的优先级设置为高于backup_sink的优先级,因此只要Flume正常工作,它就会将事件从通道转发到main_sink。但是,如果main_sink失败,Flume将把它降级到失败的接收器池中,在那里它将被分配一个冷却期。同时,来自通道的事件将被转发到backup_sink.
完整示例可能如下所示:
# 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中找到有关该主题的更多详细信息。
https://stackoverflow.com/questions/13845598
复制相似问题