Flume не может поместить файлы в корзину S3
Я использую Flume в режиме "только для узлов" (тестирование); Flume извлекает сообщения из RabbitMQ и помещает их в корзину Amazon S3.
Эта проблема:
Flume фактически извлекает данные из RabbitMQ, но файлы не отображаются в корзине S3.
Технические детали:
Я начинаю флюме следующим образом:
flume node -1 -c $FQDN':amqp("exchangeName=[exchange name]", "bindings=[binding name]", "host=127.0.0.1", "port=5672", "userName=[user]", "password=[pass]", "exchangeType=direct", "durableExchange=false", "queueName=[queue name]", "durableQueue=true", "exclusiveQueue=false", "autoDeleteQueue=false", "useMessageTimestamp=true")|collectorSink("s3n://[Amazon key]:[Amazon secret]@[path at S3]","server");' -s "$@" > "$log" 2>&1
Журнал Flume:
После перезапуска потока при отправке чего-либо через соответствующий обмен и очередь в журнале потока появляются следующие строки:
INFO com.cloudera.flume.handlers.hdfs.EscapedCustomDfsSink: Opening s3n://[key]:[secret]@[path at S3]
WARN org.apache.hadoop.util.NativeCodeLoader: Unable to load native-hadoop library for your platform... using builtin-java classes where applicable
WARN org.apache.hadoop.io.compress.snappy.LoadSnappy: Snappy native library not loaded
1 ответ
Решение
Ты не поверишь...
Flume просто не может справиться с ключом Amazon, содержащим '/' Ключ, который я использовал, содержал один. Тогда Flume признал это и просто не призывал к Amazon.
Решение: меняйте ключ Amazon, пока не получите ключ без '/'