Eu tenho um cluster ES com 4 nós:
number_of_replicas: 1
search01 - master: false, data: false
search02 - master: true, data: true
search03 - master: false, data: true
search04 - master: false, data: true
Eu tive que reiniciar o search03 e, quando voltou, voltou ao cluster sem problemas, mas deixou 7 shards não atribuídos espalhados.
{
"cluster_name" : "tweedle",
"status" : "yellow",
"timed_out" : false,
"number_of_nodes" : 4,
"number_of_data_nodes" : 3,
"active_primary_shards" : 15,
"active_shards" : 23,
"relocating_shards" : 0,
"initializing_shards" : 0,
"unassigned_shards" : 7
}
Agora meu cluster está no estado amarelo. Qual é a melhor maneira de resolver esse problema?
- Excluir (cancelar) os fragmentos?
- Mover os shards para outro nó?
- Alocar os shards para o nó?
- Atualizar 'number_of_replicas' para 2?
- Algo completamente diferente?
Curiosamente, quando um novo índice foi adicionado, esse nó começou a trabalhar nele e se saiu bem com o restante do cluster, deixando apenas os fragmentos não atribuídos espalhados.
Siga a pergunta: estou fazendo algo errado para que isso aconteça em primeiro lugar? Não tenho muita confiança em um cluster que se comporta dessa maneira quando um nó é reiniciado.
NOTA: Se você estiver executando um cluster de nó único por algum motivo, poderá simplesmente fazer o seguinte:
curl -XPUT 'localhost:9200/_settings' -d '
{
"index" : {
"number_of_replicas" : 0
}
}'
{ "error" : "ElasticsearchIllegalArgumentException[[allocate] failed to find [logstash-2015.01.05][1] on the list of unassigned shards]", "status" : 400 }
Mesmo que eu posso ver que caco é um dos mais não alocados em ES-Head