Comment supprimer un fragment spécifique d'un index ElasticSearch

J'ai récemment eu un SNAFU la cause de mon cluster à la fin avec "split-brain" (malgré le nombre de contrôles en place), résultant en fragments qui sont essentiellement éclaté. J'ai tous les nœuds dans le jeu correctement, en reconnaissant le droit master, etc. mais le groupe reste rouge et à juste titre; il y a quelques morceaux qui n'ont pas de foyer.

Après l'utilisation de mon Ruban script, j'ai pu explorer à l'aide de VisualJSON de trouver des fragments comme le suivant, qui n'ont pas de nœud:

{
    "index": "logstash-2013.12.27",
    "node": null,
    "primary": false,
    "relocating_node": null,
    "shard": 4,
    "state": "UNASSIGNED"
},

Je voudrais les supprimer, mais je n'arrive pas à trouver un appel API pour supprimer un tesson, seulement la suppression de tous les indices ou à l'aide de requêtes. Merci à l'avance!

Autant que je sache, il n'y a pas une telle chose. Essayez de redémarrer le nœud et voir si ses réaffecter ou pas. Si des dommages sont permanents, je suppose que vous devez supprimer de l'index.
Vous êtes plutôt du genre à droite: elasticsearch.org/guide/en/elasticsearch/reference/current/... à l'Aide de cette commande et en lui donnant un éclat va vous permettre de "répartir" un fragment qui n'est pas associé ou avoir un noeud. Vous ne pouvez pas supprimer.
Cool,na pas le savoir.
J'ai vraiment ne peut pas envelopper la tête autour de ne pas être en mesure de supprimer un non alloué éclat.

OriginalL'auteur Spanky | 2014-01-09