%20%EB%85%B8%EB%93%9C%EC%97%90%20%EC%83%A4%EB%93%9C%EB%A5%BC%20%ED%95%A0%EB%8B%B9%ED%95%98%EC%A7%80%20%EC%95%8A%EC%8A%B5%EB%8B%88%EB%8B%A4..png)
현재 비어 있는 다시 시작된 노드와 샤드의 균형을 맞추지 못하는 클러스터에 문제가 있습니다.
- 나는 샤드와 복제본이 재할당되기를 기다렸습니다
my_node
.my_cluster
이것은 성공했습니다. - 그런 다음 다시 시작했지만
my_node
클러스터가 샤드를 할당하지 않았습니다. - 새 인덱스가 생성되었고 클러스터가 샤드를 에 할당했습니다
my_node
. - 하루가 지난 후에도 노드에는 여전히 새 인덱스의 샤드만 남아 있습니다.
노드 전체에 걸쳐 샤드의 균등한 균형을 강제하는 방법이 있습니까? 내 경우에는 트리거 후 노드 재시작을 테스트했지만 gateway.recover_after_time
이 문제로 인해 다음과 같은 생각이 들었습니다.
- 새 노드를 추가하고 재조정을 실행하려면 어떻게 해야 합니까?
답변1
NVM, 이전 버전인 것으로 보이며 my_node
Elasticsearch는 버전이 이전 버전으로 재할당되는 것을 거부합니다.
내가 달렸 curl -XPOST '10.10.1.4:9200/_cluster/reroute' -d '{ "commands" : [ { "allocate" : { "index" : "my_cluster", "node" : "my_node", "shard" : 0 } } ] }'
더니 클러스터가 응답했습니다.
{
"오류": "RemoteTransportException[[es-master][inet[/10.10.1.14:9300]][cluster:admin/reroute]];
중첩: ElasticsearchIllegalArgumentException[[allocate] 노드 [my_node][o7-MlqgXTU-51t4O7iBu6g][my_node][inet[10.10.1.4/10.10.1.4:9300]]{max_local_storage_nodes=1, 마스터의 [my_cluster][0] 할당 =true}는 허용되지 않습니다. 이유:
[예(동일한 노드나 호스트에 샤드를 할당하지 않았습니다)]
[예(노드 패스 포함/제외/필수 필터)]
[예(기본이 이미 활성화되어 있습니다)]
[예(샤드 복구 제한 [2] 미만)]
[YES(할당 비활성화는 무시됩니다)]
[YES(할당 비활성화는 무시됩니다)]
[예(할당 인식이 활성화되지 않음)]
[예(총 샤드 제한 비활성화됨: [-1] <= 0)]
[NO(대상 노드 버전[1.6.0]은 소스 노드 버전[1.6.1]보다 이전 버전입니다)]
[예(노드의 샤드를 위한 충분한 디스크, 여유 공간: [478.1gb])]
[예(샤드가 기본이 아니거나 재배치가 비활성화됨)]
]; ",
"상태": 400
}