2

CDH3のフェイルオーバーモードでのFlume(0,9x)ノードの構成については多くの情報があります。

ただし、CDH4のFlume(1.x)構成の構成形式は完全に異なります。Flume 1.x(flume-ng)をフェイルオーバーモードで構成するにはどうすればよいですか?

4

1 に答える 1

7

flume-ngでは、いわゆる「シンク」(イベントコンシューマー)のグループを定義できます。これらはすべて1つのチャネルに接続され、このグループの「フェイルオーバー」ポリシーを指定できるため、シンクの1つに障害が発生した場合、イベントはにリダイレクトされます。別。

main_sinkbackup_sinkの2つのシンクがあり、どちらも1つのチャネルからのイベントを消費し、ある宛先にイベントを配信するように構成されているとします。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ユーザーガイドをご覧ください。

于 2012-12-13T19:28:26.573 に答える