Недавно у меня был SNAFU, поэтому у моего кластера закончилось расщепление мозга (несмотря на наличие большого количества элементов управления на месте), что привело к обрыву, который в основном был разрушен. Я вернул все узлы в игре правильно, узнав о правильном хозяине и т. Д., Но кластер остается красным и справедливо; есть несколько осколков, у которых нет дома.Как удалить конкретный осколок индекса ElasticSearch
После использования моего RubberBand script, я был в состоянии исследовать с помощью VisualJSON найти черепки, как следующие один, что не имеет никакого узла:
{
"index": "logstash-2013.12.27",
"node": null,
"primary": false,
"relocating_node": null,
"shard": 4,
"state": "UNASSIGNED"
},
Я хотел бы, чтобы удалить их, но я не могу найти вызов API для удаления осколка, только удаление целых индексов или использование запросов. Заранее спасибо!
AFAIK, не существует такой вещи. Попробуйте перезапустить узел и посмотреть, будет ли он перераспределен или нет. Если повреждение постоянно, полагаю, вам нужно удалить этот индекс. – shyos
Вы как бы правы: http://www.elasticsearch.org/guide/en/elasticsearch/reference/current/cluster-reroute.html Используя эту команду и давая ей осколок, вы сможете «распределить» осколок который не назначен или не имеет узла. Вы не можете удалить. – Spanky
Прохладный, не знал этого. – shyos