ES 설치 문제 요약

Elasticsearch 프로세스에 대한 최대 파일 설명자[4096]가 너무 낮습니다. 최소 [65535]로 늘리십시오.

문제 설명

ES가 오류를 보고하기 시작합니다. 그 이유는 ES에서 요구하는 최소 최대 파일 디스크립터가 65535인데 우리는 4096으로 설정했고 최대 파일 디스크립터 값을 늘려야 합니다.

해결책

시스템의 최대 파일 설명자 값을 늘립니다.

/etc/security/limits.conf다음에서 두 줄의 구성을 추가합니다 .

* hard nofile 65536
* soft nofile 65536

여기서는 *모든 사용자를 나타내며 지정된 사용자에 대한 매개변수를 조정하려는 경우 *지정된 사용자 이름으로 대체됩니다.

조정 후 매개변수를 볼 수 있습니다.

$ ulimit -Hn
65536
$ ulimit -Sn
65536

elasticsearch 프로세스에 대해 메모리 잠금이 요청되었지만 메모리가 잠기지 않았습니다.

문제 설명

ES가 오류를 보고하기 시작합니다. 그 이유는 ES 프로세스가 메모리 잠금을 요청했지만 메모리가 잠기지 않았기 때문입니다.

해결책

옵션 1 마감됨bootstrap.memory_lock

에서 메모리 잠금 해제를 elasticsearch.yml구성합니다 .bootstrap.memory_lock: false

이 해결 방법은 권장되지 않습니다. 메모리 잠금을 끄면 성능에 영향을 미칩니다.

솔루션 2 memlock 활성화

다음 위치에 구성을 추가합니다 /etc/security/limits.conf.

* hard memlock unlimited
* soft memlock unlimited

여기서는 *모든 사용자를 나타내며 지정된 사용자에 대한 매개변수를 조정하려는 경우 *지정된 사용자 이름으로 대체됩니다.

최대 가상 메모리 영역 vm.max_map_count[65530]가 너무 낮습니다. 최소 [262144]로 늘리십시오.

문제 설명

ES가 오류를 보고하기 시작합니다. 시스템 가상 메모리의 기본 최대 매핑 수는 65530이며 ES 시스템 요구 사항을 충족할 수 없으며 262144 이상으로 조정해야 합니다.

해결책

시스템에서 가상 메모리 매핑의 최대 수를 늘리십시오.

다음에 추가 /etc/sysctl.conf:

vm.max_map_count = 262144

시스템 설정 다시 로드:

sysctl -p

루트로 elasticsearch를 실행할 수 없습니다

문제 설명

루트 사용자를 사용하여 오류 보고 시작

org.elasticsearch.bootstrap.StartupException: java.lang.RuntimeException: can not run elasticsearch as root
···

해결책

없으면 esuser와 같이 Elasticsearch를 시작하는 데 특별히 사용되는 사용자를 생성하고 해당 시스템 디렉터리와 데이터 저장소 디렉터리를 esuser 계정에 소유자로 할당합니다. 그런 다음 esuser 사용자로 전환하고 es를 다시 시작합니다.

おすすめ

転載: blog.csdn.net/qq_32907195/article/details/132275746