elasticsearchmulticasthigh-availabilitylogstashdiscovery

Logstash cluster output to Elasticseach cluster without multicast


I want to run logstash -> elasticsearch with high availability and cannot find an easy way to achieve it. Please review how I see it and correct me:

Goal:

Constraint:

Solution:

Question:

Thanks!


Solution

  • You could potentially run a separate (non-embedded) Elasticsearch instance within the Logstash container, but configure Elasticsearch not to store data, maybe set these as the master nodes.

    node.data: false
    node.master: true
    

    You could then add your Zookeeper plugin to all Elasticsearch instances so they form the cluster.

    Logstash then logs over http to the local Elasticsearch, who works out where in the 5 data storing nodes to actually index the data.

    Alternatively this Q explains how to get plugins working with the embedded version of Elasticsearch Logstash output to Elasticsearch on AWS EC2