Eu atualizei meu Amazon Linux (2014.03) para o Amazon Linux (2016.09). Agora o elasticsearch está funcionando bem.
Configuração: Versão Elasticsearch = 5.0.1 SO = Amazon Linux AMI release 2014.03
Estou usando a instância do AWS m3.large. Eu tenho dois nós elasticsearch. Para meu nó de dados (nó 2), Quando iniciei o serviço elasticsearch com
sudo service elasticsearch start
Eu achei isso como o log de erros.
[2016-11-25T09:31:56,884][INFO ][o.e.b.BootstrapCheck ] [node-2] bound or publishing to a non-loopback or non-link-local address, enforcing bootstrap checks
[2016-11-25T09:31:56,886][ERROR][o.e.b.Bootstrap ] [node-2] node validation exception
bootstrap checks failed
max number of threads [1024] for user [elasticsearch] is too low, increase to at least [2048]
Depois, editei o arquivo /usr/lib/systemd/system/elasticsearch.service
e adicionei a linha
LimitNPROC=2048
Quando reiniciei o serviço. Eu verifiquei o status:
sudo service elasticsearch status
Voltou,
elasticsearch dead but subsys locked
no log
[2016-11-25T09:50:32,138][INFO ][o.e.b.BootstrapCheck ] [node-2] bound or publishing to a non-loopback or non-link-local address, enforcing bootstrap checks
[2016-11-25T09:50:32,140][ERROR][o.e.b.Bootstrap ] [node-2] node validation exception
bootstrap checks failed
max number of threads [1024] for user [elasticsearch] is too low, increase to at least [2048]
A saída de
[ec2-user@ip-address]$ ls -la /var/lock/subsys
total 8
drwxr-xr-x 2 root root 4096 Nov 25 09:50 .
drwxrwxr-x 5 root lock 4096 Nov 25 03:37 ..
-rw-r--r-- 1 root root 0 Nov 9 19:10 atd
-rw-r--r-- 1 root root 0 Nov 9 19:08 auditd
-rw-r--r-- 1 root root 0 Nov 9 19:08 blk-availability
-rw-r--r-- 1 root root 0 Nov 9 19:10 crond
-rw-r--r-- 1 root root 0 Nov 25 09:50 elasticsearch
-rw-r--r-- 1 root root 0 Nov 9 19:10 local
-rw-r--r-- 1 root root 0 Nov 9 19:07 lvm2-monitor
-rw-r--r-- 1 root root 0 Nov 9 19:08 messagebus
-rw-r--r-- 1 root root 0 Nov 9 19:08 netfs
-rw-r--r-- 1 root root 0 Nov 9 19:08 network
-rw-r--r-- 1 root root 0 Nov 9 19:34 ntpd
-rw-r--r-- 1 root root 0 Nov 9 19:09 ntpdate
-rw------- 1 root root 0 Nov 9 19:08 rsyslog
-rw-r--r-- 1 root root 0 Nov 18 05:07 salt-minion
-rw-r--r-- 1 root root 0 Nov 9 19:10 sendmail
-rw-r--r-- 1 root root 0 Nov 9 19:10 sm-client
-rw-r--r-- 1 root root 0 Nov 9 19:09 sshd
Estou faltando alguma coisa?
Você não pode iniciar elasticsearch
porque um arquivo de bloqueio pendente está presente no sistema.
É suficiente eliminá-lo com:
sudo rm /var/lock/subsys/elasticsearch
Em seguida, você poderá iniciar elasticsearch
novamente.
Se isso acontecer regularmente, aconselho investigar as razões por trás disso.
Tags aws process linux elasticsearch