[Elasticsearch] failed to obtain node locks
elasticsearch 를 사용하다가 갑자기 종료가 되고 나중에 다시 시작하려고하니 아래와 같은 에러가 발생 하였다.
java.lang.IllegalStateException: failed to obtain node locks, tried [[/home/morriskim/elasticsearch/data/es-cluster]] with lock id [0]
[2019-06-21T10:22:46,024][WARN ][o.e.b.ElasticsearchUncaughtExceptionHandler] [spark01] uncaught exception in thread [main]
org.elasticsearch.bootstrap.StartupException: java.lang.IllegalStateException: failed to obtain node locks, tried [[/home/morriskim/elasticsearch/data/es-cluster]] with lock id [0]; maybe these locations are not writable or multiple nodes were started without increasing [node.max_local_storage_nodes] (was [1])?
at org.elasticsearch.bootstrap.Elasticsearch.init(Elasticsearch.java:125) ~[elasticsearch-6.2.2.jar:6.2.2]
at org.elasticsearch.bootstrap.Elasticsearch.execute(Elasticsearch.java:112) ~[elasticsearch-6.2.2.jar:6.2.2]
at org.elasticsearch.cli.EnvironmentAwareCommand.execute(EnvironmentAwareCommand.java:86) ~[elasticsearch-6.2.2.jar:6.2.2]
at org.elasticsearch.cli.Command.mainWithoutErrorHandling(Command.java:124) ~[elasticsearch-cli-6.2.2.jar:6.2.2]
at org.elasticsearch.cli.Command.main(Command.java:90) ~[elasticsearch-cli-6.2.2.jar:6.2.2]
at org.elasticsearch.bootstrap.Elasticsearch.main(Elasticsearch.java:92) ~[elasticsearch-6.2.2.jar:6.2.2]
at org.elasticsearch.bootstrap.Elasticsearch.main(Elasticsearch.java:85) ~[elasticsearch-6.2.2.jar:6.2.2]
Caused by: java.lang.IllegalStateException: failed to obtain node locks, tried [[/home/morriskim/elasticsearch/data/es-cluster]] with lock id [0]; maybe these locations are not writable or multiple nodes were started without increasing [node.max_local_storage_nodes] (was [1])?
at org.elasticsearch.env.NodeEnvironment.<init>(NodeEnvironment.java:244) ~[elasticsearch-6.2.2.jar:6.2.2]
at org.elasticsearch.node.Node.<init>(Node.java:264) ~[elasticsearch-6.2.2.jar:6.2.2]
at org.elasticsearch.node.Node.<init>(Node.java:246) ~[elasticsearch-6.2.2.jar:6.2.2]
at org.elasticsearch.bootstrap.Bootstrap$5.<init>(Bootstrap.java:213) ~[elasticsearch-6.2.2.jar:6.2.2]
at org.elasticsearch.bootstrap.Bootstrap.setup(Bootstrap.java:213) ~[elasticsearch-6.2.2.jar:6.2.2]
at org.elasticsearch.bootstrap.Bootstrap.init(Bootstrap.java:323) ~[elasticsearch-6.2.2.jar:6.2.2]
at org.elasticsearch.bootstrap.Elasticsearch.init(Elasticsearch.java:121) ~[elasticsearch-6.2.2.jar:6.2.2]
... 6 more
stackoverflow에 찾아보니 jps로는 확인이 되지는 않지만 똑같은 머신에 elasticsearch 가 사용되는 경우가 있다고 하는데 아래와 같이 찾아서 프로세스를 종료하고 다시 시작 해보았다.
[morrrskim@spark01 bin]$ netstat -nlp | grep 9200
(Not all processes could be identified, non-owned process info
will not be shown, you would have to be root to see it all.)
tcp6 0 0 :::9200 :::* LISTEN 3376/java
[morrrskim@spark01 bin]$ kill 3376
[morrrskim@spark01 bin]$ netstat -nlp | grep 9200
(Not all processes could be identified, non-owned process info
will not be shown, you would have to be root to see it all.)
잘 시작된다.
해결 완료
참고
'BackEnd > ElasticSearch' 카테고리의 다른 글
사전 만들기 프로젝트(2)-Prepare Data (0) | 2019.06.29 |
---|---|
사전 만들기 프로젝트(1) - 데이터 다운로드 및 template 만들기 (0) | 2019.06.29 |
SuggestAPI 소개 (0) | 2019.06.10 |
Nori 사용 해서 노래 가사 검색하기 (0) | 2019.06.10 |
Elasticsearch Nori (0) | 2019.05.27 |