我有一个Spark Streaming作业输出一些当前存储在HDFS中的日志,我想用logstash处理它们 . 不幸的是,虽然有一个插件可以在hdfs中为logstash编写,但实际上从hdfs用它来实现 read 是不可能的 .
我已经搜索了一个解决方案来链接这两个部分但是在Spark流式传输中为python api,存储东西的唯一方法是将它作为文本文件写在hdfs中,所以我必须从hdfs读取!我无法在本地保存它们,因为Spark在群集上运行,我不想从每个节点获取所有数据 .
目前我运行一个非常脏的脚本,每2秒复制hdfs目录localy的内容 . 但这种解决方案显然不令人满意 .
有没有人知道一个可以帮我发送Spark输出到Logstash的软件?
提前致谢 !
EDIT : 我使用Python和Spark 1.6.0
1 回答
这似乎是一个完美的工作,使用Kafka . 在Spark Streaming作业中,写入Kafka,然后使用Logstash中的记录 .