Ajustes de Parámetros del Sistema
vim /etc/security/limits.conf
* soft nofile 655350
* hard nofile 655350
es soft memlock ilimitado
es hard memlock ilimitado
vim /etc/sysctl.conf
vm.max_map_count=262144
fs.file-max=655360
vm.swappiness=1
Ejecutar después de guardar: sysctl -p
Configuración Principal
vim elasticsearch.yml
nombre_cluster: mi-cluster
nodo_nombre: nodo-principal
ruta_datos: /datos/elastic
ruta_logs: /logs/elastic
bloqueo_memoria: true
host_red: 192.168.0.10
puerto_http: 9200
puerto_transporte: 9300
nodo_datos: true
nodo_maestro: true
hosts_descubrimiento: ["192.168.0.10","192.168.0.11","192.168.0.12"]
nodos_maestros_iniciales: ["192.168.0.10","192.168.0.11","192.168.0.12"]
timeout_descubrimiento: 60s
seguridad_habilitada: true
ssl_transporte: true
ruta_certificado: certificados-elastic.p12
Generación de Certificados
bin/elasticsearch-certutil cert -out config/certificados-elastic.p12 -pass ""
Reiniciar Elasticsearch y configuarr contraseñas:
bin/elasticsearch-setup-passwords interactivo
Configuración Systemd
[Unit]
Descripción=Servicio Elasticsearch
[Service]
Usuario=elastic
Grupo=elastic
ExecStart=/ruta/elasticsearch/bin/elasticsearch
LímiteMEMLOCK=infinito
[Install]
RequeridoPor=multi-usuario.target
Recargar e iniciar sevricio:
systemctl daemon-reload
systemctl iniciar elasticsearch
Operaciones Básicas
1. Estado del Clúster
curl -u usuario:clave 'localhost:9200/_cluster/health?format=json'
2. Nodos del Clúster
curl 'localhost:9200/_cat/nodos?encabezados'
3. Índices Existentes
curl 'localhost:9200/_cat/indices'
4. Almacenamiento
curl 'localhost:9200/_cat/asignación'
5. Distribución de Fragmentos
curl 'localhost:9200/_cat/fragmentos'
6. Segmentos de Índices
curl 'localhost:9200/_cat/segmentos'
7. Crear Índice
curl -XPUT 'localhost:9200/ejemplo_indice' -H 'Content-Type: application/json' -d'
{
"configuracion": {
"fragmentos": 3,
"replicas": 2
}
}'
8. Insertar Documento
curl -XPUT 'localhost:9200/ejemplo_indice/_doc/101' -d'
{
"nombre": "Ana",
"rol": "desarrolladora"
}'
9. Eliminar Índice
curl -XDELETE 'localhost:9200/ejemplo_indice'
10. Plugins Instalados
curl 'localhost:9200/_cat/plugins'
11. Información del Nodo
curl 'localhost:9200'