써먹는 웹개발

[Aws Elasticsearch] allocating the shard to this node will bring the node above the high watermark cluster setting... 내가 해결한 방법 (용량 최적화) 본문

Study/Elasticsearch

[Aws Elasticsearch] allocating the shard to this node will bring the node above the high watermark cluster setting... 내가 해결한 방법 (용량 최적화)

kmhan 2021. 7. 8. 12:55


728x90
반응형

1. 현상 : allocating the shard to this node will bring the node above the high watermark cluster setting [cluster.routing.allocation.disk.watermark.high=3.4325714111328125gb] and cause it to have less than the minimum required [3.4gb] of free space (free: [14.4gb], estimated shard size: [12.7gb])

 ※ 메세지 (클러스터 watermark 상태) 확인 : GET _cluster/settings

 

2. 원인 : 하나의 노드에 용량 부족

 - 노드별 용량 확인

  GET _cat/allocation?v

 - 디테일한 내용

  1) 여유용량 35gb * 7개 노드였는데

     13gb 3개를 reindex해야되는 상황이였습니다.

     이 상황에서 1,2번째 reindex는 성공적으로 상태가 green으로 바뀌었지만 3번째 reindex했을때는 안되는 것이었습니다.

   2) 용량을 계산해보니 3gb가량 부족했다는 것을 알 수 있었습니다.

1. 여유용량 35gb일때
여유용량 35*7개
ontology_data_test : 13*2/7 => 4gb씩 -
여유용량 31*7개
ontology_data_20200312 : 13*2/7 => 4gb씩 -
여유용량 27*7개
ontology_data3_bak 13*2 => 2개 13gb씩 - 
A 노드 여유용량 14, (14, 27*5개)
ontology_data3_bak을 ontology_data3로 reindex할때 16.4(13+3.4)gb가 필요한데 14gb밖에 없어서 인덱스 할당이 안되는 상태

   3) 최적의 용량을 찾은게 1개의 노드당 38gb 여유용량이었고 45gb가 충분했습니다.

 

3. 복제본을 없애서 용량 확보

PUT 인덱스명/_settings
{
  "number_of_replicas": 0
}

728x90
반응형


Comments