Crear servicio para elasticsearch con Systemd

Dependiendo del tipo de instalación que hagamos en sistemas Linux puede que necesitemos crear el servicio manualmente, en mi caso con una instalación de Elasticsearch con formato tar.gz no crea un servicio como tal, ya que lo descomprimes y lo ejecutas desde un binario, por lo que hay que hacerlo a mano.

Para este post me he ayudado de este otro post de el atareao https://www.atareao.es/tutorial/trabajando-con-systemd/como-crear-un-servicio-con-systemd/ donde explica muy bien como crear un servicio con Systemd.

Siguiendo el post he creado un fichero en la ruta /lib/systemd/system llamado elasticsearch.service, para que inicie automáticamente y no tenga que ejecutar el binario manualmente cada vez que reinicie la maquina virtual o física.

He cambiado los siguientes campos:

  • Descripción: como su nombre indica, una descripción del servicio
  • User: he puesto mi usuario, en este caso llamado kibana
  • ExecStart: la ruta a un script o un binario como en este caso llamado elasticsearch

Una vez creado el fichero, habilitamos el servicio con sudo systemctl enable elasticsearch.service.

Lo iniciamos con systemctl start elasticsearch.service

Y comprobamos el estado con systemctl status elasticsearch.service

Comprobado que funciona el nuevo servicio, por si acaso comprobamos que esta funcionando desde el navegador con localhost:9200.

Si no disponemos de entorno gráfico lo podemos comprobar desde la consola con curl localhost:9200.

Saludos y espero que os sirva.