Actualización a Elasticsearch versión 1.7.1

En el release 9.5 de Sterling Order Management System Software, Elasticsearch versión 0.20.1 se ha sustituido por Elasticsearch versión 1.7.1 para indexar pedidos y envíos.

Acerca de esta tarea

Elasticsearch normalmente se puede actualizar utilizando un proceso de actualización continua, lo que no provoca ninguna interrupción del servicio. Los releases anteriores a la versión 1.0 y los releases posteriores a la versión 1.0 no son compatibles con eachother, por lo que no es posible una actualización continua de estas versiones. Por lo tanto, puesto que estamos actualizando desde la versión 0.20.1, es necesario un tipo de reinicio de clúster completo de actualización.

Se recomienda realizar una copia de seguridad de los datos en el sistema antes de realizar una actualización de Elasticsearch. Esto le permite retrotraer los datos en el caso de que se produzca un problema con la actualización.

Para realizar una copia de seguridad de un sistema Elasticsearch en ejecución:

Procedimiento

  1. Inhabilite el vaciado de índices, tal como se indica a continuación, para evitar que los índices se desechen en el disco mientras la copia de seguridad está en proceso:
    curl -XPUT 'http://<local_host>:9200/_all/_settings' -d'{ "index": { "translog.disable_flush": "true" }}'
    Ejecute el mandato anterior desde la línea de mandatos, sustituyendo < local_host> por la IP del servidor donde se ejecuta Elasticsearch .

    Consulte la consola o el registro del servidor Elasticsearch para asegurarse de que se visualiza el siguiente mensaje para cada fragmento:

    updating disable_flush from [false] to [true]
  2. Inhabilite la reasignación, como se indica a continuación, para impedir que el clúster mueva archivos de datos de un nodo a otro mientras la copia de seguridad está en proceso:
    curl -XPUT 'http://<local_host>:9200/_cluster/settings' -d '{ "transient" : { "cluster.routing.allocation.disable_allocation": "true" }}'
    Consulte la consola o el registro del servidor Elasticsearch para asegurarse de que se muestra el mensaje siguiente:
    updating [cluster.routing.allocation.disable_allocation] from [false] to [true]
  3. Después de inhabilitar la reasignación y el vaciado de índices, realice una copia de seguridad de la vía de acceso de datos de Elasticsearchutilizando cualquier método de copia de seguridad, como tar, instantáneas de matriz de almacenamiento o software de copia de seguridad.
  4. Cuando se complete la copia de seguridad y ya no sea necesario leer los datos de la vía de acceso de datos de Elasticsearch , vuelva a habilitar la reasignación y el vaciado de índice, como se indica a continuación:
    curl -XPUT 'http://<local_host>:9200/_all/_settings' -d '{ "index": { "translog.disable_flush": "false" }}'
    curl -XPUT 'http://<local_host>:9200/_cluster/settings' -d '{ "transient" : { "cluster.routing.allocation.disable_allocation": "false" }}'