Elasticsearch es un motor para realizar búsquedas y se caracteriza por su gran rendimiento. Puede integrarse en múltiples entornos y es especialmente usado en páginas web, por ejemplo tiendas online diseñadas con Prestashop o Magento.
| Requisito | Descripción |
|---|---|
| Sistema operativo | Se instala a nivel de sistema operativo |
| Dependencia | Requiere Java instalado |
| Permisos | Necesita permisos de ejecución en /tmp |
Esto implica una alta complejidad para integrarlo de forma segura en un entorno de alojamiento compartido.
💡 En definitiva: Es necesario instalar Elasticsearch en un servidor VPS. ¡Pero no te asustes! Es muy fácil de instalar y cuesta menos de 10 €/mes.
⚠️ Importante: NO tienes que cambiar tu web de hosting. Simplemente necesitas un nuevo VPS para correr el motor Elasticsearch.
| Recurso | Mínimo | Recomendado |
|---|---|---|
| RAM | 2 GB | 4 GB+ (según carga) |
| Almacenamiento | Depende de los datos indexados |
Conecta por SSH a tu servidor y ejecuta los siguientes comandos:
apt update && apt dist-upgrade -y
apt install gnupg curl nano wget sudo apt-transport-https -y
timedatectl set-timezone Europe/Madrid
wget -qO - https://artifacts.elastic.co/GPG-KEY-elasticsearch | apt-key add -
apt update
echo "deb https://artifacts.elastic.co/packages/7.x/apt stable main" | tee /etc/apt/sources.list.d/elastic-7.x.list
apt update && apt install elasticsearch -y
echo "deb https://artifacts.elastic.co/packages/8.x/apt stable main" | tee /etc/apt/sources.list.d/elastic-8.x.list
apt update && apt install elasticsearch -y
Edita el fichero de configuración:
nano /etc/elasticsearch/elasticsearch.yml
Define el valor de la variable:
xpack.security.enabled: false
systemctl restart elasticsearch
systemctl enable elasticsearch
# Comprobar estado del servicio
systemctl status elasticsearch
# Probar que responde correctamente
curl -X GET localhost:9200
✅ ¡Listo! Ya tienes Elasticsearch instalado.
Para evitar que cualquiera pueda conectar a nuestro servidor Elasticsearch, vamos a protegerlo con reglas de firewall.
# Instalar firewall
apt install ufw -y
# Configurar políticas por defecto
ufw default deny incoming
ufw default allow outgoing
# Permitir puertos esenciales
ufw allow 22 # SSH
ufw allow 80 # HTTP
ufw allow 443 # HTTPS
Permite que solo se pueda conectar al puerto 9200 desde la IP de tu hosting:
# Sustituye x.x.x.x por la IP de tu hosting
ufw allow from x.x.x.x to any port 9200
ufw enable
ufw status numbered
¿Necesitas ayuda con la instalación? Contacta con nuestro soporte.