Como ya sabéis, Liferay 7 viene por defecto con ElsaticSearch embebido, el que ahora mismo es el mejor motor de búsqueda(En mi opinión). Gracias a esto, Liferay ahora es mas rápido y permite funcionalidades como el enlazado de contenidos al estilo de Linkedin o Facebook.
Pero de la misma forma que pasa con Hipersonic(La base de datos que trae embedida por defecto) no es óptimo para producción. Debemos instalar nuestro propio servidor ElasticSearch y configurárselo. Y como no! Hoy vamos ha hacerlo con Docker(Rápido y sencillo):
Arrancamos la imagen de ElasticSearch
Para arrancar la imagen de ElasticSearch solamente tenemos que ejecutar este comando:
docker run --restart=always -d elasticsearch:latest
En mi caso he instalado la última versión que funciona bien con Liferay CE 7 GA2.
Comprobamos la configuración de ElasticSearch
Para saber la dirección IP de nuestro contenedor podemos ejecutar el siguiente comando:
# Consultamos el listado de contenedores doccke ps # Consultamos la configuración de un cntenedor en concreto docker inspect <id-contenedor>
Ahora, podemos consultar la configuración de ElasticSearch accediendo a la URL http://<ip -contenedor>:9200:
Podemos contrastarla con la configuración del ElasticSearch instalada en nuestro Liferay accediendo a la URL http://127,0,0,1:9200. La nueva versión de Lucene es un poco superior(5.5.0) pero son compatibles.
Configuramos Liferay
Ahora ya solo queda configurar Liferay, hacemos click en la ‘Productivity bar’ y ‘Panel de control’->’Configuración’->’Configuraciones del sistema’->’Fundación’ y buscamos ‘Elasticsearch’. Aquí configuramos solamente estos tres parámetros:
- ‘Cluster name’ le ponemos el de nuestro elastic search, es decir, ‘elasticsearch’
- ‘Operation mode’ le ponemos el valor ‘REMOTE’
- ‘Transport addresses’ le ponemos el valor ‘<ip-contenedor-docker>:9300’
Una vez guardado, vamos a ‘Productivity bar’ y ‘Panel de control’->’Configuración’->’Administración del servidor’ y ejecutamos ‘Regenerar todos los índices de la búsqueda.’.
Finalizado!
Ya podemos reiniciar Liferay y deberíamos notar un incremento de rendimiento bastante grande. Buen fin de semana y ha disfrutar 😀
[…] con extensión ‘.cfg’. Por ejemplo, en el pasado post “Configurando LiferayDXP para producción: ElasticSearch en un contenedor Docker” explicaba como configurar Elastic Search en producción. Pues si queremos poner la misma […]