2015-08-05 1 views
0

Quand j'ai mon fichier elasticsearch.yml comme:Logstash A défaut de se connecter à ElasticSearch Cluster

cluster.name: elasticsearch-sam-dev 
node.name: Wolverine 

Ma config de sortie logstash comme:

output { 
    elasticsearch { 
    cluster => "elasticsearch-sam-dev" 
    host => localhost 
} 
    stdout { codec => rubydebug } 
} 

Il ne parvient pas à se connecter au cluster et ne peut pas figure pourquoi? Lorsque je commente le cluster de lignes dans la config logstash et le fichier elasticsearch.yml cela fonctionne.

L'erreur que je reçois:

erreur Logstash - pas complètement copié comme ne peut pas copier-coller de l'environnement dev :(

org.elasticsearch.discovery.zend.ping.unicast.UnicastZenPing$4 handlException 
WARNING: [logstash-mymachine] failed to send ping to [[ 

Logstash Transitaire Erreur:

Connecting to [127.0.0.1]:5000 (127.0.0.1) 
Failed to tls handshake with 127.0.0.1 read tcp 127.0.0.1:5000: i/o timeout 

Maintenant, quand je redémarrer le logstash, logstash-forwarder, elasticsearch sans le clustername tout fonctionne magiquement, logstash-forwarder traite 'x' nombre d'événements et logstash détecte le nœud Wo la lverine. Je n'arrive pas à comprendre pourquoi le nom du cluster cause un problème. Est-ce que quelqu'un d'autre a eu le même problème et a réussi à le résoudre?

Merci

Répondre

0

je résolu le problème semble que dans ma config de sortie logstash Je dois fournir un numéro de port, donc ma config finale ressemble ci-dessous, ne sais pas pourquoi je dois fournir un port comme on le suppose qu'il choisira la valeur par défaut qui est 9300, mais cela a fonctionné.

output { 
    elasticsearch { 
    cluster => "elasticsearch-sam-dev" 
    host => localhost 
    port => "9300" 
} 
    stdout { codec => rubydebug } 
}