본문 바로가기
ELK

Kibana circuit_breaking_exception

by yeonn108 2024. 7. 10.

키바나에서 elasticsearch과 연결이 안된다는 문구가 떴고 로그를 보니 kibana에서 모니터링 인덱스를 elasticsesarch에 넣을 때 circuit_breaking_exception이 난다.

모니터링 인덱스 data 크기가 커서 발생한 에러로 보인다.

elasticsearch의 힙 사이즈를 늘려줬다. 

elasticsearch 공식 docs를 보니 elasticsearch는 default로 서버 메모리의 절반 (도커로 띄워져 있는 경우 컨테이너에 설정된 메모리의 절반)을 힙 사이즈로 지정해준다고 한다.

직접 설정하기보다는 운영레벨에서는 default sizing으로 설정하라고 권장한다.

따라서, docker-compose.yml에서 mem_limit을 ec2서버 메모리를 고려해줘 늘려서 해결했다.

 

> 마스터 노드의 jvm 설정 확인하는 api

curl http://${host}${port}:/_nodes/_master/jvm?pretty

 

 

+ 추가적으로 디스크 용량도 많이 찼길래 봤더니 역시나 모니터링 인덱스가 많이 잡아먹고 있었다. 

모니터링 인덱스 보존기간을 하루로 설정해서 용량 확보도 해줬다. 

 

> 모니터링 인덱스 보존 기간 설정 (이 기간이 지난 모니터링 인덱스는 자동으로 삭제됨) 

PUT _cluster/settings {"persistent": {"xpack.monitoring.history.duration":"1d"}}
  • minimum 1day

 

[es jvm 설정 관련 참고]

https://www.elastic.co/guide/en/elasticsearch/reference/8.10/advanced-configuration.html#set-jvm-heap-size

https://www.elastic.co/guide/en/elasticsearch/reference/8.10/cluster-nodes-info.html

 

[참고]

https://boying-blog.tistory.com/95

https://www.elastic.co/guide/en/elasticsearch/reference/8.10/important-settings.html#heap-size-settings:~:text=By%20default%2C%20Elasticsearch%20automatically%20sets%20the%20JVM%20heap%20size%20based%20on%20a%20node%E2%80%99s%20roles%20and%20total%20memory.%20We%20recommend%20the%20default%20sizing%20for%20most%20production%20environments

https://www.elastic.co/guide/en/elasticsearch/reference/8.10/advanced-configuration.html#set-jvm-heap-size:~:text=Using%20the%20Elasticsearch%2Dprovided%20defaults%20is%20recommended%20in%20most%20circumstances

 

'ELK' 카테고리의 다른 글

[Filebeat] 파일 수집과 registry  (1) 2024.07.14
[Filebeat] 8 버전 filestream input 타입 재수집 이슈  (0) 2024.07.14