The system property [es.path.conf] must be set

In Elasticsearch, How To, Windows by Enebrus Kem LemLeave a Comment

Si estás aquí es porque buscas la manera de solucionar el error ‘the system property [es.path.conf] must be set‘ que muestra Elasticsearch en el log cuando instalamos el servicio en un computador Windows y lo ejecutamos, puede que también ocurra en otro sistema operativo pero no fue nuestro caso.

También hemos estado ante esta eventualidad y te presentamos la solución que aplicamos en su momento para la versión 7.7.1, no queremos ser extensos así que vamos de una vez a los pasos:

PasoAcción
1Desinstala el servicio de Elasticsearch si aún sigue instalado, para esto ejecuta lo siguiente: elasticsearch-service.bat remove.
2Abre el archivo elasticsearch-service.bat.
Busca cada línea con el texto ‘if not "%ES_JAVA_OPTS%" == "" set ES_JAVA_OPTS=%ES_JAVA_OPTS: =;%‘.
Justo debajo de la línea que buscaste agrega la siguiente ‘if not "%ES_JAVA_OPTS%" == "" set ES_JAVA_OPTS=%ES_JAVA_OPTS:;;=;%‘.
Con esto lo que conseguimos es que si encuentra dos caracteres de punto y coma (;) seguidos los convierta en uno solo.
3Guarda los cambios y cierra el archivo elasticsearch-service.bat.
4Crea la variable de entorno ‘ES_HOME‘ y el contenido debe ser el directorio donde está instalado Elasticsearch, por ejemplo ‘C:\Program Files\Elasticsearch-7.7.1‘. Sin embargo, si el directorio contiene espacios -como el ejemplo- obtendrás un error así que tienes que usar la notación del nombre corto del directorio, esto lo puedes obtener con el comando ‘DIR /X‘; siguiendo con el ejemplo el nombre corto es ‘PROGRA~1‘ asi que el contenido de la variable de entorno será ‘C:\PROGRA~1\Elasticsearch-7.7.1‘.
5Crea la variable de entorno ‘ES_PATH_CONF‘ donde el contenido debe ser el directorio donde está la configuración de Elasticsearch, generalmente es ‘config‘, por lo que el contenido será ‘C:\PROGRA~1\Elasticsearch-7.7.1\config‘ -recuerda adaptar la ruta por la que corresponda a tu instalación de Elasticsearch-.
6Crea la variable de entorno ‘ES_JAVA_OPTS‘ y como contenido debe tener ‘-Des.path.home=%ES_HOME%;-Des.path.conf=%ES_PATH_CONF%;‘, si te fijas el contenido está usando las variables de entorno creadas previamente.
7Instala el servicio de Elasticsearch: elasticsearch-service.bat install.
8Inicia el servicio: elasticsearch-service.bat start.
No deben haber más problemas con ‘the system property [es.path.conf] must be set‘.

Estamos listos, tu servicio de Elasticsearch ya debe estarse ejecutando y esperando que lo utilices, el log debe estar sin nuevas líneas que digan ‘the system property [es.path.conf] must be set‘, y a lo mejor estarás ansioso de comenzar a trabajar con Elasticsearch así que lo dejaremos hasta aquí para que puedas hacerlo.

Como referencia adicional, el archivo ‘elasticsearch-service.bat‘ se encuentra dentro del directorio ‘bin‘ de tu instalación de Elasticsearch, si nos basamos en la ruta que usamos como ejemplo esto sería ‘C:\Program Files\Elasticsearch-7.7.1\bin‘.

Leave a Comment