Montée de version

Installer un nouveau cluster ES et utiliser la procédure d’index from remote

Pour effectuer la montée de version d’Elasticsearch, il est nécessaire d’installer un nouveau cluster Elasticsearch dans la version cible. Ensuite, la procédure suivante décrit comment pousser les données d’un cluster Elasticsearch à un autre après avoir créer votre scope à partir du CLM.

Lancement de la ré-indexation

Dans cette section, nous allons demander à Elasticsearch la population d’un index à partir d’un autre index distant.

Elasticsearch va tout d’abord vérifier la demande puis retourner l’identifiant d’une tâche asynchrone. Pour cela, exécuter la requête suivante sur le cluster cible en adaptant aux environnements :

POST /_reindex?wait_for_completion=false
{
  "source": {
    "remote": {
      "host": "http://localhost:9200",
      "username": "user",
      "password": "password"
    },
    "index": "<scope>-flower-docs",
    "type": "document",
    "size": 100
  },
  "dest": {
    "index": "<scope>-flower-docs"
  }
}

Nota : Dans cette requête, <scope> est l’identifiant du scope Flower en minuscule.

La réponse retournée par Elasticsearch est du type :

{
    "task": "<nodeId>:<taskId>"
} 

Etat de la ré-indexation

La tâche de ré-indexation étant asynchrone, il est possible de connaître son état :

GET /_tasks/<nodeId>:<taskId>

Selon la réponse retournée, il est donc possible de déterminer si la ré-indexation a été exécutée avec succès ou si elle est encore en cours d’exécution.

  • Un flag completed indique si la ré-indexation est terminée ou non
  • La tâche récupérée mentionne un objet response ou error indiquant si la tâche a pu être terminée avec succès

L’ensemble des tâches de ré-indexation peuvent être également consultées avec :

GET /_tasks?detailed=true&actions=*reindex