Elasticsearch Bootstrap Check 설정
Elasticsearch Bootstrap Check 절차에 관련하여 개인적으로 찾아보고 설정해준 내용들 간략하게 정리한 내용
Elasticsearch 실행 시 아래의 오류가 발생
[1] bootstrap checks failed
또는 Bootstrap 관련 설정을 필요로 할때
- 참조 레퍼런스
Bootstrap Checks | Elasticsearch Reference [master] | Elastic
Collectively, we have a lot of experience with users suffering unexpected issues because they have not configured important settings. In previous versions of Elasticsearch, misconfiguration of some of these settings were logged as warnings. Understandably,
www.elastic.co
1. Heap size check
초기 및 최대 힙 크기가 서로 다른 JVM을 시작하면 시스템 사용 중 JVM 힙의 크기가 조정될 때 일시 정지 될 수 있습니다. 이러한 크기 조정 일시 중지를 피하려면 초기 힙 크기를 최대 힙 크기와 동일한 상태로 JVM을 시작하는 것이 가장 좋습니다.
- jvm.options
-Xms [ ]g
-Xmx [ ]g
2. File descriptor check
Elasticsearch는 많은 파일 디스크립터 또는 파일 핸들을 사용합니다. 파일 디스크립터가 부족하면 문제가 발생할 수 있으며 대부분 데이터가 손실 될 수 있습니다. Elasticsearch를 실행하는 사용자의 열린 파일 디스크립터 수에 대한 제한을 65,536 이상으로 늘리십시오.
- /etc/security/limits.conf
elastic hard nofile 65536
elastic soft nofile 65536
root hard nofile 65536
root soft nofile 65536
3. Memory lock check
Linux에있는 경우 최대 스레드 수 검사를 통과하려면 Elasticsearch 프로세스가 최소 4096 개의 스레드를 작성할 수 있도록 시스템을 구성해야합니다
- jvm.options
bootstrap.memory_lock: true
4. Maximum number of threads check
Linux에있는 경우 최대 스레드 수 검사를 통과하려면 Elasticsearch 프로세스가 최소 4096 개의 스레드를 작성할 수 있도록 시스템을 구성해야합니다
- /etc/security/limits.conf
elastic hard nproc 65536
elastic soft nproc 65536
root hard nproc 65536
root soft nproc 65536
5. Max file size check
클라이언트 JVM 검사를 통과하려면 서버 VM으로 Elasticsearch를 시작해야합니다
- /etc/security/limits.conf
elastic hard fsize unlimited
elastic soft fsize unlimited
root hard fsize unlimited
root soft fsize unlimited
6. Maximum size virtual memory check
- /etc/security/limits.conf
elastic hard memlock unlimited
elastic soft memlock unlimited
root hard memlock unlimited
root soft memlock unlimited
7. Maximum map count check
sysctl -w vm.max_map_count=262144
8. Client JVM check
클라이언트 JVM 검사를 통과하려면 서버 VM으로 Elasticsearch를 시작해야합니다
9. Use serial collector check
Elasticsearch와 함께 직렬 수집기를 사용하면 성능이 저하 될 수 있습니다. 직렬 수집기 검사를 통과하려면 직렬 검색기를 사용하여 Elasticsearch를 시작하지 않아야합니다.
- jvm.options
-XX:+UseSerialGC
10. System call filter check
초기 및 최대 힙 크기가 서로 다른 JVM을 시작하면 시스템 사용 중 JVM 힙의 크기가 조정될 때 일시 정지 될 수 있습니다. 이러한 크기 조정 일시 중지를 피하려면 초기 힙 크기를 최대 힙 크기와 동일한 상태로 JVM을 시작하는 것이 가장 좋습니다.
- elasticsearch.yml
bootstrap.system_call_filter: false
11. OnError and OnOutOfMemoryError checks
12. Early-access check
13. G1GC check
그러나 JDK 1.8_40 이하 버전은 해당 옵션 사용시 인덱스 손상을 유발할 수 있는 문제가 있는것으로 알려짐. (기본 GC 사용)
- jvm.options
-XX:+UseG1GC
14. All permission check
15. Discovery configuration check
다음 목록의 옵션 중 한가지를 필수로 설정해주어야 됨
- elasticsearch.yml
discovery.seed_hosts
discovery.seed_providers
cluster.initial_master_nodes
댓글