회로 차단기 설정
Elasticsearch에는 작업으로 인해 OutOfMemoryError가 발생하는 것을 방지하는 데 사용되는 여러 회로 차단기가 포함되어 있습니다. 각 차단기는 사용할 수있는 메모리 양에 대한 제한을 지정합니다. 또한 모든 차단기에서 사용할 수있는 총 메모리 양을 지정하는 상위 수준 차단기가 있습니다.
달리 명시되지 않는 한 이러한 설정은 cluster-update-settings API 를 사용하여 라이브 클러스터에서 동적으로 업데이트 할 수 있습니다 .
부모 회로 차단기
상위 수준 차단기는 다음 설정으로 구성 할 수 있습니다.
indices.breaker.total.use_real_memory( 정적 ) 상위 차단기가 실제 메모리 사용량을 고려해야하는지 ( true) 아니면 하위 회로 차단기에 예약 된 양만 고려 할지 ( )를 결정합니다 false. 기본값은 true.
indices.breaker.total.limit
( 동적 ) 전체 상위 차단기에 대한 시작 제한. 경우 JVM 힙의 70 % 기본값 indices.breaker.total.use_real_memory입니다 false. 경우 indices.breaker.total.use_real_memory 이며 true, JVM 힙의 95 %로 기본 설정됩니다.
필드 데이터 회로 차단기
필드 데이터 회로 차단기는 필드를 필드 데이터 캐시 에로드하는 데 필요한 힙 메모리를 추정합니다 . 필드로드로 인해 캐시가 미리 정의 된 메모리 제한을 초과하는 경우 회로 차단기가 작동을 중지하고 오류를 반환합니다.
indices.breaker.fielddata.limit
( 동적 ) fielddata 차단기에 대한 제한. 기본값은 JVM 힙의 40 %입니다.
indices.breaker.fielddata.overhead
( Dynamic ) 최종 추정을 결정하기 위해 모든 필드 데이터 추정에 곱해지는 상수입니다. 기본값은 1.03.
회로 차단기 요청
요청 회로 차단기를 통해 Elasticsearch는 요청 별 데이터 구조 (예 : 요청 중 집계 계산에 사용되는 메모리)가 특정 메모리 양을 초과하지 않도록 방지 할 수 있습니다.
indices.breaker.request.limit
( 동적 ) 요청 차단기에 대한 제한, 기본값은 JVM 힙의 60 %입니다.
indices.breaker.request.overhead
( Dynamic ) 최종 추정을 결정하기 위해 모든 요청 추정에 곱해지는 상수입니다. 기본값은 1.
비행 중 회로 차단기를 요청
비행 중 요청 회로 차단기를 통해 Elasticsearch는 전송 또는 HTTP 수준에서 현재 활성화 된 모든 수신 요청의 메모리 사용량이 노드의 특정 메모리 양을 초과하지 않도록 제한 할 수 있습니다. 메모리 사용량은 요청 자체의 콘텐츠 길이를 기반으로합니다. 이 회로 차단기는 또한 원시 요청을 나타내는 데 메모리가 필요하다고 생각할뿐만 아니라 기본 오버 헤드에 반영되는 구조화 된 객체로도 고려됩니다.
network.breaker.inflight_requests.limit( 동적 ) 비행 중 요청 차단기에 대한 제한, 기본값은 JVM 힙의 100 %입니다. 이는 상위 회로 차단기에 대해 구성된 제한에 의해 제한됨을 의미합니다.network.breaker.inflight_requests.overhead( Dynamic ) 최종 추정을 결정하기 위해 모든 비행 요청 추정에 곱해지는 상수입니다. 기본값은 2입니다.
회계 요청 회로 차단기
회계 회로 차단기를 통해 Elasticsearch는 요청이 완료 될 때 해제되지 않은 메모리에 보유 된 항목의 메모리 사용량을 제한 할 수 있습니다. 여기에는 Lucene 세그먼트 메모리와 같은 것이 포함됩니다.
indices.breaker.accounting.limit( 동적 ) 계정 차단기 제한, 기본값은 JVM 힙의 100 %입니다. 이는 상위 회로 차단기에 대해 구성된 제한에 의해 제한됨을 의미합니다.indices.breaker.accounting.overhead( Dynamic ) 최종 추정을 결정하기 위해 모든 회계 추정에 곱해지는 상수입니다. 기본값은 1입니다.
스크립트 컴파일 회로 차단기
이전 메모리 기반 회로 차단기와 약간 다른 스크립트 컴파일 회로 차단기는 일정 기간 동안 인라인 스크립트 컴파일 수를 제한합니다.
자세한 내용은 스크립팅 설명서 의 "prefer-parameters"섹션 을 참조하십시오.
script.context.$CONTEXT.max_compilations_rate( 동적 ) 주어진 컨텍스트에 대해 컴파일 할 수있는 특정 간격 내 고유 동적 스크립트 수에 대한 제한입니다. 기본값은 75/5m5 분마다 75를 의미합니다.
'기술_Elasticsearch' 카테고리의 다른 글
샤드 밸런싱 휴리스틱 스 설정 (0) | 2022.06.22 |
---|---|
클러스터 수준 샤드 할당 및 라우팅 설정 (0) | 2022.06.22 |
감사 로그 파일 이벤트 무시 정책 (0) | 2022.06.22 |
보안 설정 감사 (0) | 2022.06.22 |
보안 설정 감사 (0) | 2022.06.22 |