Elasticsearch 5 安裝部署常見錯誤或問題__elasticsearch

來源:互聯網
上載者:User

問題1:

uncaught exception in thread [main]org.elasticsearch.bootstrap.StartupException: java.lang.RuntimeException: can not run elasticsearch as root

問題原因:不能使用root使用者啟動
解決方案:改用別的使用者

問題2:

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.SystemCallFilter.linuxImpl(SystemCallFilter.java:350) ~[elasticsearch-5.4.0.jar:5.4.0]        at org.elasticsearch.bootstrap.SystemCallFilter.init(SystemCallFilter.java:638) ~[elasticsearch-5.4.0.jar:5.4.0]        at org.elasticsearch.bootstrap.JNANatives.tryInstallSystemCallFilter(JNANatives.java:215) [elasticsearch-5.4.0.jar:5.4.0]        at org.elasticsearch.bootstrap.Natives.tryInstallSystemCallFilter(Natives.java:99) [elasticsearch-5.4.0.jar:5.4.0]        at org.elasticsearch.bootstrap.Bootstrap.initializeNatives(Bootstrap.java:111) [elasticsearch-5.4.0.jar:5.4.0]        at org.elasticsearch.bootstrap.Bootstrap.setup(Bootstrap.java:204) [elasticsearch-5.4.0.jar:5.4.0]        at org.elasticsearch.bootstrap.Bootstrap.init(Bootstrap.java:360) [elasticsearch-5.4.0.jar:5.4.0]        at org.elasticsearch.bootstrap.Elasticsearch.init(Elasticsearch.java:123) [elasticsearch-5.4.0.jar:5.4.0]        at org.elasticsearch.bootstrap.Elasticsearch.execute(Elasticsearch.java:114) [elasticsearch-5.4.0.jar:5.4.0]        at org.elasticsearch.cli.EnvironmentAwareCommand.execute(EnvironmentAwareCommand.java:67) [elasticsearch-5.4.0.jar:5.4.0]        at org.elasticsearch.cli.Command.mainWithoutErrorHandling(Command.java:122) [elasticsearch-5.4.0.jar:5.4.0]        at org.elasticsearch.cli.Command.main(Command.java:88) [elasticsearch-5.4.0.jar:5.4.0]        at org.elasticsearch.bootstrap.Elasticsearch.main(Elasticsearch.java:91) [elasticsearch-5.4.0.jar:5.4.0]        at org.elasticsearch.bootstrap.Elasticsearch.main(Elasticsearch.java:84) [elasticsearch-5.4.0.jar:5.4.0]

原因:報了一大串錯誤,大家不必驚慌,其實只是一個警告,主要是因為你Linux版本過低造成的。

解決方案:
1、重新安裝新版本的Linux系統
2、警告不影響使用,可以忽略

問題3:

ERROR: bootstrap checks failedmemory locking requested for elasticsearch process but memory is not locked

原因:鎖定記憶體失敗

解決方案:
切換到root使用者,編輯limits.conf設定檔, 添加類似如下內容:
sudo vim /etc/security/limits.conf

添加如下內容:
* soft memlock unlimited
* hard memlock unlimited
備忘:* 代表Linux所有使用者名稱稱

儲存、退出、重新登入才可生效
臨時取消限制
ulimit -l unlimited

問題4:

ERROR: bootstrap checks failedmax file descriptors [4096] for elasticsearch process is too low, increase to at least [65536]

原因:無法建立本地檔案問題,使用者最大可建立檔案數太小

解決方案:

切換到root使用者,編輯limits.conf設定檔, 添加類似如下內容:sudo vim /etc/security/limits.conf添加如下內容:* soft nofile 65536* hard nofile 131072備忘:* 代表Linux所有使用者名稱稱

儲存、退出、重新登入才可生效

問題5:

max number of threads [1024] for user [es] is too low, increase to at least [2048]
原因:無法建立本地線程問題,使用者最大可建立線程數太小
解決方案:切換到root使用者,進入limits.d目錄下,修改90-nproc.conf 設定檔。

sudo vim /etc/security/limits.d/90-nproc.conf

找到如下內容:
* soft nproc 1024

修改為
* soft nproc 2048

問題6:

max virtual memory areas vm.max_map_count [65530] is too low, increase to at least [262144]
原因:最大虛擬記憶體太小
解決方案:切換到root使用者下,修改設定檔sysctl.conf

sudo vim /etc/sysctl.conf

添加下面配置:
vm.max_map_count=655360

並執行命令:
sysctl -p

問題7:

system call filters failed to install; check the logs and fix your configuration or disable system call filters at your own risk
問題原因:因為Centos6不支援SecComp

SecComp是Linux kernel (自從2.6.23版本之後)所支援的一種簡潔的sandboxing機制。它能使一個進程進入到一種“安全”運行模式,該模式下的進程只能調用4種系統調用(system calls),即read(), write(), exit()和sigreturn(),否則進程便會被終止。

而ES5.2以後的版本預設bootstrap.system_call_filter為true進行檢測,所以導致檢測失敗,失敗後直接導致ES不能啟動。
詳見 :https://github.com/elastic/elasticsearch/issues/22899
System call filter settingedit
Elasticsearch has attempted to install a system call filter since version 2.1.0. These are enabled by default and could be disabled via bootstrap.seccomp. The naming of this setting is poor since seccomp is specific to Linux but Elasticsearch attempts to install a system call filter on various operating systems. Starting in Elasticsearch 5.2.0, this setting has been renamed to bootstrap.system_call_filter. The previous setting is still support but will be removed in Elasticsearch 6.0.0.

解決方案:在elasticsearch.yml中配置bootstrap.system_call_filter為false,注意要在Memory下面:
bootstrap.memory_lock: false
bootstrap.system_call_filter: false

問題8:

Elasticsearch啟動找不到主機或路由
原因:Elasticsearch 單播配置有問題
解決方案:
檢查Elasticsearch中的設定檔
vim config/elasticsearch.yml
找到如下配置:
discovery.zen.ping.unicast.hosts:[“192.168..:9300”,”192.168..:9300”]
一般情況下,是這裡配置有問題,注意書寫格式

問題9:

org.elasticsearch.transport.RemoteTransportException: Failed to deserialize exception response from stream
原因:Elasticsearch節點之間的jdk版本不一致
解決方案:Elasticsearch叢集統一jdk環境ls

問題10:

Unsupported major.minor version 52.0
原因:jdk版本問題太低
解決方案:更換jdk版本,Elasticsearch5.0.0支援jdk1.8.0

問題11:

bin/elasticsearch-plugin install license
ERROR: Unknown plugin license

原因:Elasticsearch5.0.0以後外掛程式命令已經改變
解決方案:使用最新命令安裝所有外掛程式
bin/elasticsearch-plugin install x-pack

聯繫我們

該頁面正文內容均來源於網絡整理,並不代表阿里雲官方的觀點,該頁面所提到的產品和服務也與阿里云無關,如果該頁面內容對您造成了困擾,歡迎寫郵件給我們,收到郵件我們將在5個工作日內處理。

如果您發現本社區中有涉嫌抄襲的內容,歡迎發送郵件至: info-contact@alibabacloud.com 進行舉報並提供相關證據,工作人員會在 5 個工作天內聯絡您,一經查實,本站將立刻刪除涉嫌侵權內容。

A Free Trial That Lets You Build Big!

Start building with 50+ products and up to 12 months usage for Elastic Compute Service

  • Sales Support

    1 on 1 presale consultation

  • After-Sales Support

    24/7 Technical Support 6 Free Tickets per Quarter Faster Response

  • Alibaba Cloud offers highly flexible support services tailored to meet your exact needs.