Elasticsearch ordnet Shards keinem (neuen) Knoten zu

1259
Bastien Semene

Ich habe ein Problem damit, dass mein Cluster keine Shards mit einem zurückgebliebenen Knoten ausgleicht, der jetzt leer ist.

  1. Ich hörte my_nodeaus my_clusterund wartete, die Scherben und Repliken reallocted werden. Dies ist gelungen.
  2. Dann habe ich neu gestartet my_node, aber der Cluster hat ihm keinen Shard zugewiesen.
  3. Ein neuer Index wurde erstellt und der Cluster Shards zugewiesen my_node.
  4. Einen Tag später enthält der Knoten nur noch Splitter des neuen Index.

Gibt es eine Möglichkeit, eine gleichmäßige Verteilung von Scherben über Knoten zu erzwingen? In meinem Fall habe ich einen Neustart eines Knotens nach dem Auslösen getestet gateway.recover_after_time, aber dieses Problem lässt mich denken:

  • Was muss ich tun, wenn ich einen neuen Knoten hinzufüge und eine Neuverteilung auslösen möchte?
1

1 Antwort auf die Frage

0
Bastien Semene

NVM, es scheint, dass my_nodees sich um eine ältere Version handelt, und Elasticsearch weigert sich, die Version einer älteren Version zuzuordnen.

Ich lief curl -XPOST '10.10.1.4:9200/_cluster/reroute' -d '{ "commands" : [ { "allocate" : { "index" : "my_cluster", "node" : "my_node", "shard" : 0 } } ] }' und der Cluster antwortete:

{

"error": "RemoteTransportException [[es-master] [inet [/10.10.1.14:9300]] [Cluster: admin / reroute]];

verschachtelt: ElasticsearchIllegalArgumentException [[ordnen] Zuweisung von [my_cluster] [0] auf Knoten [my_node] [o7-MlqgXTU-51t4O7iBu6g] [my_node] [inet [10.10.1.4/10.10.1.4:9300]] ist nicht erlaubt, Grund:

[JA (Shard ist nicht demselben Knoten oder Host zugewiesen)]

[JA (Knoten übergibt einschließen / ausschließen / erfordern Filter)]

[JA (Primär ist bereits aktiv)]

[JA (unterhalb der Shard-Wiederherstellungsgrenze von [2])]

[JA (Zuweisung der Zuweisung wird ignoriert)]

[JA (Zuweisung der Zuweisung wird ignoriert)]

[JA (kein Allocation Awareness aktiviert)]

[JA (Gesamt-Shard-Limit deaktiviert: [-1] <= 0)]

[NEIN (Zielknotenversion [1.6.0] ist älter als Quellknotenversion [1.6.1])]

[JA (genug Platte für Shard auf Knoten, frei: [478.1gb])]]

[JA (Shard nicht primär oder Umzug deaktiviert)]

]; ",

"Status": 400

}