【问题标题】:Coordinating Actions on Multiple Logstash Instances协调多个 Logstash 实例的操作
【发布时间】:2015-11-13 05:49:49
【问题描述】:

我最近一直在研究建立一个 elasticsearch 集群,并且很好奇如何在多个 logstash 实例之间协调操作。我需要定期索引数据库中的数据,我可以使用 jdbc 输入插件来完成。我的问题是我不确定如何跨多个 logstash 实例协调此操作。例如,如果我仅在一个实例上运行该操作,而该实例出现故障,则数据将不会被摄取到 elasticsearch 中。另一方面,如果我在多个实例上运行该操作,我将免受任何一个实例的失败,但我将在 elasticsearch 中有重复的数据。

我相信将负载均衡器与 logstash-forwarder 或 filebeat 一起使用可以避免这个问题,因为数据会均匀地发送到所有实例。不幸的是,我只能从我的 logstash 实例中查询数据库,我无法在数据库服务器本身上设置 logstash-forwarder 或 filebeat。

【问题讨论】:

    标签: elasticsearch logstash elastic-stack


    【解决方案1】:

    我有一个我写的 ftp{} 输入过滤器,它遇到了你描述的同样的问题。目前,它只安装在一台 logstash 机器上,并且在系统出现故障时需要运行 ansible 才能将其移动到另一台 logstash。不理想。

    我开始不喜欢用 logstash 来收集数据,我倾向于使用外部程序来收集数据,而用 logstash-forwarder 来运送。

    在我的例子中,我会将 ftp 收集器重写为一个独立的脚本,它将文件放入由 logstash-forwarder 监视的目录中。当然,那里也没有固有的冗余,但至少我可以随意重启我的 logstash 实例。

    【讨论】:

    • 太糟糕了,没有更多的内置冗余支持。我真的很喜欢这个工具,因为它让我不必为每个源使用弹性搜索客户端编写脚本,并且更多地支持冗余真的会为我收紧。我感谢所有的帮助。我想我可以在github上发布一个关于这个问题的问题,看看开发人员怎么说。
    • 您的评论提醒我,他们承诺为 logstash2 提供更“类似集群”的配置,但我不知道他们做到了多远。
    • 来自github:“有计划让 Logstash 集群多个实例以允许这种事情。不过我不知道我们是否有时间表”。
    猜你喜欢
    • 1970-01-01
    • 2020-02-28
    • 1970-01-01
    • 2015-09-20
    • 1970-01-01
    • 1970-01-01
    • 2019-08-29
    • 2017-08-04
    • 1970-01-01
    相关资源
    最近更新 更多