ElasticSearch 安裝時一些錯誤以及解決方法


第1章 ElasticSearch 安裝時一些錯誤以及解決方法

1.1 JDK版本問題

1.1.1 問題:

[2020-01-16T09:26:22,296][WARN ][o.e.b.ElasticsearchUncaughtExceptionHandler] [node-1] uncaught exception in thread [main]

org.elasticsearch.bootstrap.StartupException: org.elasticsearch.common.inject.CreationException: Guice creation errors:

 

1) An exception was caught and reported. Message: access denied ("java.lang.RuntimePermission" "accessClassInPackage.jdk.internal.vm.annotation")

  at _unknown_

Caused by: java.security.AccessControlException: access denied ("java.lang.RuntimePermission" "accessClassInPackage.jdk.internal.vm.annotation")

    at java.base/java.security.AccessControlContext.checkPermission(AccessControlContext.java:472)

    at java.base/java.security.AccessController.checkPermission(AccessController.java:1036)

    at java.base/java.lang.SecurityManager.checkPermission(SecurityManager.java:408)

    at java.base/java.lang.SecurityManager.checkPackageAccess(SecurityManager.java:1324)

 

1.1.2 解決方法:

JDK版本不對

java -version看了下是jdk13,卸載裝jdk11以及以下版本(版本也不能太低)

 

1.2 啟動用戶問題

問題:

java.lang.RuntimeException:can not run elasticsearch as root

解決方法:

useradd es(加用戶)

passwd es(給密碼)

chown –R es:es /usr/local/elasticsearch(給權限)

su – es(切換用戶)

./usr/local/elasticsearch/bin/elasticsearch &(后台啟動)

 

1.3 安裝phantomjs出錯

問題:

npm install

Phantom installation failed { Error: EACCES: permission denied, link '/tmp/phantomjs/phantomjs-2.1.1-linux-x86_64.tar.bz2-extract-1496325965675/phantomjs-2.1.1-linux-x86_64' -> '/XXX/node_modules/phantomjs-prebuilt/lib/phantom'

at Error (native)

errno: -13,

code: 'EACCES',

syscall: 'link',

path: '/tmp/phantomjs/phantomjs-2.1.1-linux-x86_64.tar.bz2-extract-1496325965675/phantomjs-2.1.1-linux-x86_64',

dest: '/XXX/node_modules/phantomjs-prebuilt/lib/phantom' } Error: EACCES: permission denied, link '/tmp/phantomjs/phantomjs-2.1.1-linux-x86_64.tar.bz2-extract-1496325965675/phantomjs-2.1.1-linux-x86_64' -> '/XXX/node_modules/phantomjs-prebuilt/lib/phantom'

at Error (native)

npm ERR! code ELIFECYCLE

npm ERR! errno 1

npm ERR! phantomjs-prebuilt@2.1.14 install: `node install.js`

npm ERR! Exit status 1

 

解決方法:

rm -rf node_modules(刪除前面構建錯的目錄)

npm install --unsafe-perm(重新構建)

 

1.4 文件描述符內存限制

1.4.1 問題:

[1]: max file descriptors [65535] for elasticsearch process is too low, increase to at least [65536]

[2]: max virtual memory areas vm.max_map_count [65530] is too low, increase to at least [262144]

[3]: max number of threads [3895] for user [es] is too low, increase to at least [4096]

1.4.2 解決方法:

vi /etc/security/limits.conf

增加(加完重啟)

* soft nofile 65536

* hard nofile 131072

 

vim /etc/sysctl.conf

增加(加完執行sysctl -p)

vm.max_map_count=262144


免責聲明!

本站轉載的文章為個人學習借鑒使用,本站對版權不負任何法律責任。如果侵犯了您的隱私權益,請聯系本站郵箱yoyou2525@163.com刪除。



 
粵ICP備18138465號   © 2018-2025 CODEPRJ.COM