Linux 환경에서 Elasticsearch 설치 5.x、6.x 질문 요약
[o.e.b.ElasticsearchUncaughtExceptionHandler] [] uncaught exception in thread [main] org.elasticsearch.bootstrap.StartupException: java.lang.RuntimeException: can not run elasticsearch as root
해결 방안: 보안 문제 때문에elasticsearch는 루트 사용자로 직접 실행하지 못하게 합니다.elasticsearch를 실행하는 단독 사용자를 만드는 것을 권장합니다.우리는elsearch 사용자 그룹과elsearch 사용자를 만들고 이 사용자로elasticsearch를 시작할 수 있습니다.
groupadd elsearch
useradd elsearch -g elsearch -p elasticsearch
access denied
main ERROR Could not register mbeans java.security.AccessControlException: access denied ("javax.management.MBeanTrustPermission""register")
해결 방안: 루트 사용자에서 elasticsearch-5.1.1 폴더 소유자를 elasticsearch 시작 사용자에게 변경합니다.
sudo chown -R elsearch:elsearch elasticsearch-5.1.1
There is insufficient memory for the Java Runtime Environment to continue
Cannot allocate memory Java HotSpot(TM) 64-Bit Server VM warning: INFO: os::commit_memory(0x0000000085330000, 2060255232, 0) failed; error='Cannot allocate memory' (errno=12) There is insufficient memory for the Java Runtime Environment to continue.
해결 방안:config/jvm를 수정합니다.options, 2g에서 1g으로 변경하면 더 작아질 수 있습니다
-Xmx2g => -Xmx1g
unable to install syscall filter
unable to install syscall filter: java.lang.UnsupportedOperationException: seccomp unavailable: requires kernel 3.5+ with CONFIG_SECCOMP and CONFIG_SECCOMP_FILTER compiled in at org.elasticsearch.bootstrap.Seccomp.linuxImpl(Seccomp.java:349) ~[elasticsearch-5.0.0.jar:5.0.0] at org.elasticsearch.bootstrap.Seccomp.init(Seccomp.java:630) ~[elasticsearch-5.0.0.jar:5.0.0]
일련의 잘못을 보고하였는데, 사실은 단지 경고일 뿐이다.
해결 방안: 최신 Linux 버전을 사용하면 이런 문제가 발생하지 않고 무시할 수 있습니다.
max number of threads [1024] for user [lish] likely too low, increase to at least [2048]
해결 방안: 루트 사용자 아래,limits에 들어갑니다.d 디렉토리에서 구성 파일을 수정하려면 다음과 같이 하십시오.
vim /etc/security/limits.d/90-nproc.conf
soft nproc 수정:
soft nproc 2048
max file descriptors for elasticsearch process likely too low
ERROR: bootstrap checks failed max file descriptors [4096] for elasticsearch process likely too low, increase to at least [65536] max number of threads [1024] for user [lishang] likely too low, increase to at least [2048]
해결 방안: 루트 사용자에서 limits를 편집합니다.conf:
vim /etc/security/limits.conf
다음 항목을 추가합니다.
* soft nofile 65536
* hard nofile 65536
* soft nproc 2048
* hard nproc 4096
system call filters failed to install
ERROR: bootstrap checks failed system call filters failed to install; 로그를 확인하고 자신의 위험 해결 방안에서 구성 또는 시스템 콜 필터를 사용하지 않도록 설정합니다. elasticsearch 프로필 수정:
vim config/elasticsearch.yml
추가 구성:
bootstrap.system_call_filter: false
max virtual memory areas vm.max_map_count [65530] likely too low, increase to at least [262144]
해결 방안: 루트 사용자 아래sysctl 설정을 수정합니다.conf
vim /etc/sysctl.conf
다음 구성을 추가합니다.
vm.max_map_count=655360
명령 실행:
sysctl -p
elasticsearch 다시 시작
이 내용에 흥미가 있습니까?
현재 기사가 여러분의 문제를 해결하지 못하는 경우 AI 엔진은 머신러닝 분석(스마트 모델이 방금 만들어져 부정확한 경우가 있을 수 있음)을 통해 가장 유사한 기사를 추천합니다:
다양한 언어의 JSONJSON은 Javascript 표기법을 사용하여 데이터 구조를 레이아웃하는 데이터 형식입니다. 그러나 Javascript가 코드에서 이러한 구조를 나타낼 수 있는 유일한 언어는 아닙니다. 저는 일반적으로 '객체'{}...
텍스트를 자유롭게 공유하거나 복사할 수 있습니다.하지만 이 문서의 URL은 참조 URL로 남겨 두십시오.
CC BY-SA 2.5, CC BY-SA 3.0 및 CC BY-SA 4.0에 따라 라이센스가 부여됩니다.