Elasticsearch. Error al hacer una petición curl
Elasticsearch es una herramienta para la agilización de búsquedas, utilizada muchas veces por plataformas como WordPress o Magento. Al instalarla vía línea de comandos, comprobamos el estado del servicio mediante
systemctl status elasticsearch.service
y nos devuelve que está ejecutándose sin problema. Bien. Pero al ejecutar
curl -XGET 'localhost:9200/?pretty'
Nos devuelve:
curl: (7) Failed to connect to localhost port 9200: Connection refused
Eso es debido a un simple tema de permisos. Ejecutamos
chmod u+w /var/lib/elasticsearch
y la instrucción curl nos devolverá el resultado esperado.
Otro de los errores más comunes, como ya explicamos en el artículo Errores comunes en Magento 2 es
No alive nodes found in your cluster
En este caso, habrá que comprobar si la swap está o no bien configurada y dimensionada para Elasticsearch además de tener en cuenta que hasta la versión de Magento 2.4.x, sólo podemos trabajar con las versiones de Elasticsearch 5.x ó 6.x, pero no con la 7.x que es la versión que se instala actualmente por defecto, por lo que si tenemos la versión 7.x de Elasticsearch, Magento no podrá hacer un reindex de sus índices, por ejemplo. La solución a esto es sencilla, desinstalar la versión 7.x de Elasticsearch e instalar la versión 6.x
Si al hacer un
bin/magento setup:upgrade
recibes un error como:
{"error":{"root_cause":[{"type":"illegal_argument_exception","reason":"Unknown filter type [phonetic] for [phonetic]"}],"type":"illegal_argument_exception","reason":"Unknown filter type [phonetic] for [phonetic]"},"status":400}
Muy probablemente tengas que instalar estas dos extensiones de Elasticsearch que te falten. Para ello, primero vas a
cd /usr/share/elasticsearch
Y una vez allí, ejecutas
bin/elasticsearch-plugin install analysis-phonetic
bin/elasticsearch-plugin install analysis-icu
Y no se nos puede olvidar después hacer
service elasticsearch restart
0 comments