multiple - Error Elasticsearch 503 al verificar el estado del servidor
search all elastic search (3)
He estado utilizando elasticsearch como motor de búsqueda para mi aplicación Rails, sin embargo, dejó de funcionar correctamente debido a una razón que no puedo entender. Cuando realizo una solicitud de curl al servidor de búsqueda elástica, aparece un error 503.
curl -XGET http://localhost:9200
{
"ok" : true,
"status" : 503,
"name" : "Killpower",
"version" : {
"number" : "0.90.3",
"build_hash" : "5c38d6076448b899d758f29443329571e2522410",
"build_timestamp" : "2013-08-06T13:18:31Z",
"build_snapshot" : false,
"lucene_version" : "4.4"
},
"tagline" : "You Know, for Search"
}
Intenté resolver el problema con la recarga del servicio elasticsearch y la instalación de una nueva versión sin éxito.
Esto es lo que encontré en los registros
[2013-09-03 12:31:45,320][INFO ][node ] [Killpower] version[0.90.3],
pid[4222], build[5c38d60/2013-08-06T13:18:31Z]
[2013-09-03 12:31:45,321][INFO ][node ] [Killpower] initializing ...
[2013-09-03 12:31:45,327][INFO ][plugins ] [Killpower] loaded [], sites []
[2013-09-03 12:31:47,248][INFO ][node ] [Killpower] initialized
[2013-09-03 12:31:47,248][INFO ][node ] [Killpower] starting ...
[2013-09-03 12:31:47,313][INFO ][transport ] [Killpower] bound_address {inet[/0:0:0:0:0:0:0:0:9300]}, publish_address {inet[/172.20.46.32:9300]}
[2013-09-03 12:31:51,443][INFO ][discovery.zen ] [Killpower] master_left [[Amphibion][IMB4uACSTyOx3MO2u-FsWg][inet[/fe80:0:0:0:52e5:49ff:fec2:9718%2:9300]]], reason [do not exists on master, act as master failure]
[2013-09-03 12:31:51,446][INFO ][discovery ] [Killpower] elasticsearch/iavpGrMtRHmWLHMTNpscGQ
[2013-09-03 12:31:51,483][INFO ][http ] [Killpower] bound_address {inet[/0:0:0:0:0:0:0:0:9200]}, publish_address {inet[/172.20.46.32:9200]}
[2013-09-03 12:31:51,484][INFO ][node ] [Killpower] started
[2013-09-03 12:31:54,712][WARN ][transport.netty ] [Killpower] exception caught on transport layer [[id: 0xa929f24d, /127.0.0.1:50456 => /127.0.0.1:9300]], closing connection
Después de eso también sigue una larga stack stack de Java. ¿Cómo puedo solucionar el problema?
Además, verifique el valor de
discovery.zen.ping.unicast.hosts
porque es necesario descubrir los nodos elásticos
Instale la cabeza para que pueda ver el estado con más detalle. Creo que 503 puede aparecer en estado cuando el clúster no se recupera correctamente, por ejemplo, fragmento perdido / no recuperable
En el directorio elasticsearch:
bin/plugin -install mobz/elasticsearch-head
Luego en tu navegador:
http://127.0.0.1:9200/_plugin/head/
Podría haber otra instancia en su red local con el servidor elasticsearch en funcionamiento. Como los fragmentos en elasticsearch funcionan desde la caja y están habilitados por defecto, podría haber un conflicto de nodo principal. Revise su archivo elasticsearch.log. Si hay algo así como
{"error":"MasterNotDiscoveredException[waited for [30s]]","status":503}
Debería ir a su archivo de configuración /etc/elasticsearch/elasticsearch.yml
y agregar esta línea:
discovery.zen.ping.multicast.enabled: false