¿Cómo muevo los datos de Elasticsearch de un servidor a otro?
Tengo el servidor A que ejecuta Elasticsearch 1.1.1 en un nodo local con varios índices. Me gustaría copiar esos datos al servidor B que ejecuta Elasticsearch 1.3.4
Procedimiento hasta ahora
- Apague ES en ambos servidores y
- scp todos los datos al directorio de datos correcto en el nuevo servidor. (los datos parecen estar ubicados en / var / lib / elasticsearch / en mis cajas de Debian)
- cambiar los permisos y la propiedad a elasticsearch: elasticsearch
- iniciar el nuevo servidor ES
Cuando miro el clúster con el complemento ES head, no aparecen índices.
Parece que los datos no se cargan. ¿Me estoy perdiendo de algo?
elasticsearch
Jabb
fuente
fuente
Respuestas:
La respuesta seleccionada hace que suene un poco más complejo de lo que es, lo siguiente es lo que necesita (instale npm primero en su sistema).
Puede omitir el primer comando elasticdump para copias posteriores si las asignaciones permanecen constantes.
Acabo de realizar una migración de AWS a Qbox.io con lo anterior sin ningún problema.
Más detalles en:
https://www.npmjs.com/package/elasticdump
Página de ayuda (a partir de febrero de 2016) incluida para completar:
fuente
Utilice ElasticDump
1) yum instalar epel-release
2) yum instalar nodejs
3) yum instalar npm
4) npm instalar elasticdump
5) cd módulos_nodo / elasticdump / bin
6)
fuente
Puede usar la función de instantánea / restauración disponible en Elasticsearch para esto. Una vez que haya configurado un almacén de instantáneas basado en el sistema de archivos, puede moverlo entre clústeres y restaurarlo en un clúster diferente
fuente
Probé en ubuntu para mover datos de ELK 2.4.3 a ELK 5.1.1
Los siguientes son los pasos
en el directorio de inicio ir
ejecutar el comando
Si necesita autenticación http básica, puede usarla así:
Copie un índice de producción:
fuente
sudo apt-get install -y software-properties-common
antes de add-apt-repositoryTambién existe la
_reindex
opciónDe la documentación:
fuente
Si puede agregar el segundo servidor al clúster, puede hacer esto:
Esto solo funcionará si el número de reemplazos es igual al número de nodos.
fuente
Si alguien encuentra el mismo problema, al intentar volcar desde elasticsearch <2.0 a> 2.0, debe hacer:
fuente
Siempre he tenido éxito simplemente copiando el directorio / carpeta de índice en el nuevo servidor y reiniciándolo. Encontrará la identificación del índice haciendo
GET /_cat/indices
y la carpeta que coincide con esta identificación se encuentradata\nodes\0\indices
(generalmente dentro de su carpeta elasticsearch a menos que la haya movido).fuente
Podemos usar
elasticdump
omultielasticdump
para realizar la copia de seguridad y restaurarla. Podemos mover datos de un servidor / clúster a otro servidor / clúster.Encuentre una respuesta detallada que he proporcionado aquí .
fuente
Si simplemente necesita transferir datos de un servidor de elasticsearch a otro, también puede usar elasticsearch-document-transfer .
Pasos:
$ npm install elasticsearch-document-transfer.
config.js
config.js
options.js
$ node index.js
fuente
Puede tomar una instantánea del estado completo de su clúster (incluidos todos los índices de datos) y restaurarlos (utilizando la API de restauración) en el nuevo clúster o servidor.
fuente