Elasticsearch es un servidor de búsquedas open source , basado en Lucene y desarrollado en Java.
Elasticsearch pertenece al stack Elastic o ELK (elastichsearch+logstah+kibana)
Este stack nos proporcionará una herramienta de recolección de datos (logstash: logs,eventos,ficheros..) , una base de datos (elastic) y una web donde visualizar los datos o realizar consultas (kibana).
La instalación la realizaremos sobre un ubuntu 16.04
wget -qO – https://artifacts.elastic.co/GPG-KEY-elasticsearch | sudo apt-key add –
sudo apt-get install apt-transport-https
echo «deb https://artifacts.elastic.co/packages/7.x/apt stable main» | sudo tee -a /etc/apt/sources.list.d/elastic-7.x.list
Actualizar e instalar elastic con apt-get:
sudo apt-get update && sudo apt-get install elasticsearch
Una vez instalado , lo habilitamos al inicio del sistema y lo iniciamos
sudo /bin/systemctl daemon-reload
sudo /bin/systemctl enable elasticsearch.service
sudo systemctl start elasticsearch.service
Comprobar servicio con:
curl -XGET http://localhost:9200
y
tail -f /var/log/elasticsearch/elasticsearch.log
Configuración de la memoria RAM para el servicio
Será necesario realizar modificaciones en tres archivos:
En /etc/elasticsearch/elasticsearch.yml , descomentar la siguiente línea:
bootstrap.memory_lock: true
Esto permite a Elasticsearch reservarse memoria Ram
En /etc/default/elasticsearch , descomentar la siguiente línea:
MAX_LOCKED_MEMORY=unlimited
No se establece límite para elasticsearch
En el fichero /etc/elasticsearch/jvm.options
-Xms2g
-Xmx2g
Se establece la cantidad mínima y máxima de memoria Ram ,en este caso 2Gigas
Crear el fichero :
/etc/systemd/system/elasticsearch.service.d/override.conf
con el contenido:
[Service]
LimitMEMLOCK=infinity
y reiniciar el servicio
sudo systemctl daemon-reload
El último de los cambios a aplicar a la configuración de la memoria es deshabilitar el uso de memoria SWAP ya que puede afectar muy negativamente al rendimiento debido a que es mucho más lenta que la memoria RAM. Para ello será necesario comentar la línea de configuración de la SWAP en el archivo:
/etc/fstab
Comprobar que no se usa swap con free -m