Я пытаюсь настроить два агента в flume:
первый агент =>
- тип источника: exe c
- тип канала: память
- тип приемника: avro
код в файле .conf
exec-memort-avro.sources = exec-source
exec-memory-avro.sinks = avro-sink
exec-memory-avro.channels = memory-channel
exec-memory-avro.sources.exec-source.type = exec
exec-memory-avro.sources.exec-source.command=tail -F /root/data/data.log
exec-memory-avro.sources.exec-source.shell=/bin/sh -c
exec-memory-avro.sinks.avro-sink.type = avro
exec-memory-avro.sinks.avro-sink.hostname = localhost
exec-memory-avro.sinks.avro-sink.port = 44444
exec-memory-avro.channels.memory-channel.type = memory
exec-memory-avro.sources.exec-source.channels = memory-channel
exec-memory-avro.sinks.avro-sink.channel = memory-channel
второй агент =>
- тип источника : avro
- тип канала: память
- тип приемника: логгер
код в файле .conf:
avro-memory-logger.sources = avro-source
avro-memory-logger.sinks = logger-sink
avro-memory-logger.channels = memory-channel
avro-memory-logger.sources.avro-source.type = avro
avro-memory-logger.sources.avro-source.bind=localhost
avro-memory-logger.sources.avro-source.port=44444
avro-memory-logger.sinks.logger-sink.type = logger
avro-memory-logger.channels.memory-channel.type = memory
avro-memory-logger.sources.avro-source.channels = memory-channel
avro-memory-logger.sinks.logger-sink.channel = memory-channel
two стартовые команды:
flume-ng agent -n avro-memory-logger -c $FLUME_HOME/conf -f $FLUME_HOME/conf/avro-memory-logger.conf -Dflume.root.logger=INFO,console
flume-ng agent -n exec-memory-avro -c $FLUME_HOME/conf -f $FLUME_HOME/conf/exec-memory-avro.conf -Dflume.root.logger=INFO,console
обе команды работают, все вроде нормально, и я вижу, что оба агента запустили свои источники, приемники и каналы.
Но после того, как я выполню echo hello world >> data.log
ничего не происходит в агенте 2 (avro-memory-logger). На экране должен отображаться «hello world».
Только во втором агенте получено следующее:
2020-03-01 06:49:57,395 (New I/O server boss #1 ([id: 0x9ba59b05, /127.0.0.1:44444])) [INFO - org.apache.avro.ipc.NettyServer$NettyServerAvroHandler.handleUpstream(NettyServer.java:171)] [id: 0x3516365a, /127.0.0.1:59086 => /127.0.0.1:44444] OPEN
2020-03-01 06:49:57,397 (New I/O worker #1) [INFO - org.apache.avro.ipc.NettyServer$NettyServerAvroHandler.handleUpstream(NettyServer.java:171)] [id: 0x3516365a, /127.0.0.1:59086 => /127.0.0.1:44444] BOUND: /127.0.0.1:44444
2020-03-01 06:49:57,397 (New I/O worker #1) [INFO - org.apache.avro.ipc.NettyServer$NettyServerAvroHandler.handleUpstream(NettyServer.java:171)] [id: 0x3516365a, /127.0.0.1:59086 => /127.0.0.1:44444] CONNECTED: /127.0.0.1:59086
, и я не знаю, что такое порт: 59086.