【问题标题】:Can Flume use ElasticSearch with Amazon Elastic Search Service?Flume 能否将 ElasticSearch 与 Amazon Elastic Search Service 结合使用?
【发布时间】:2018-01-23 21:04:15
【问题描述】:

最初我试图设置 Flume 以将 S3 写入我的 AWS 设置,如下所示:

aws.sinks.channel1.type = hdfs
aws.sinks.channel1.hdfs.path=s3n://<id>:<secretkey>/<bucketname>
aws.sinks.channel1.hdfs.fileType=DataStream
aws.sinks.channel1.hdfs.writeFormat=Text
aws.sinks.channel1.hdfs.rollCount = 0
aws.sinks.channel1.hdfs.rollSize = 67108864
aws.sinks.channel1.hdfs.batchSize = 1000
aws.sinks.channel1.hdfs.rollInterval = 0

但是,我发现我无法访问“bucketname”。
我们在 Amazon 上的 ElasticSearch 服务不公开文件系统层。

有没有办法使用 elasticsearch sink 或某种 http sink 来将 Flume 信息推送到 AWS 上的 Kibana 之类的东西?

为了清楚起见,我想将 ElasticSearch 推送到亚马逊。我的来源是 avro 和 http,并非来自亚马逊。

【问题讨论】:

    标签: amazon-web-services hadoop amazon-ec2 flume flume-ng


    【解决方案1】:

    不清楚您的来源是什么,但 Beats 是 Fl​​ume 代理的 ELK 堆栈替代品。而 Logstash 和/或 Kafka 是持久通道

    Flume 将读取您的 hdfs-site.xml 以获取 S3 访问密钥,因此它将从那里获取您的密钥

    您可以安装 ES-Hadoop 以让 Elastic 从 Hadoop(和 S3 文件系统)读取数据。我没有亲自尝试过,但我知道图书馆就是因为这个原因而存在的。

    如果你想使用 Flume,你可以使用 syslog 或 netcat Flume sinks 写入 Logstash(如果你有的话),它可以索引到 Elasticsearch。我相信还有一个用于 Logstash 的 WebHDFS 插件。

    另一个解决方案包括使用 NiFi 或 Streamsets 代替 Flume

    【讨论】:

    【解决方案2】:

    https://forums.aws.amazon.com/thread.jspa?messageID=683536

    在谈到 AWS ElasticSearch Service 时,本机传输 不支持协议。支持基于 HTTP 协议的 REST API 目前。

    无赖!

    【讨论】:

      猜你喜欢
      • 2016-09-02
      • 1970-01-01
      • 1970-01-01
      • 1970-01-01
      • 1970-01-01
      • 1970-01-01
      • 1970-01-01
      • 2016-07-23
      • 2016-04-16
      相关资源
      最近更新 更多