机器:centos7.2
javahome:
export JAVA_HOME=/root/jdk1.8.0_60
export PATH=$JAVA_HOME/bin:$PATH
export CLASSPATH=.:$JAVA_HOME/lib/dt.jar:$JAVA_HOME/lib/tools.jar
[root@i-j73a8nn6 ~]# java -version
java version "1.8.0_60"
Java(TM) SE Runtime Environment (build 1.8.0_60-b27)
Java HotSpot(TM) 64-Bit Server VM (build 25.60-b23, mixed mode)
[root@i-j73a8nn6 ~]# $PATH
-bash: /root/jdk1.8.0_60/bin:/usr/local/sbin:/usr/local/bin:/usr/sbin:/usr/bin:/root/bin: No such file or directory
如果不是sudo启动时报错:
[root@i-j73a8nn6 ~]# elasticsearch-2.2.1/bin/elasticsearch
Exception in thread "main" java.lang.RuntimeException: don't run elasticsearch as root.
at org.elasticsearch.bootstrap.Bootstrap.initializeNatives(Bootstrap.java:93)
at org.elasticsearch.bootstrap.Bootstrap.setup(Bootstrap.java:144)
at org.elasticsearch.bootstrap.Bootstrap.init(Bootstrap.java:285)
at org.elasticsearch.bootstrap.Elasticsearch.main(Elasticsearch.java:35)
Refer to the log for complete error details.
sudo启动报错:
[root@i-j73a8nn6 ~]# sudo elasticsearch-2.2.1/bin/elasticsearch
which: no java in (/sbin:/bin:/usr/sbin:/usr/bin)
Could not find any executable java binary. Please install java in your PATH or set JAVA_HOME
Pertama sekali, anda tidak boleh log masuk sebagai pengguna root Secara lalai, sudo ialah pengguna root Anda perlu menentukan nama pengguna lain semasa sudo. Contohnya: sudo -iu user_a bin/elasticsearch
Pengguna baharu telah ditambah, sila mulakan dengan pengguna baharu itu kemudian.
Saya tertanya-tanya sama ada mana-mana pakar mempunyai cara untuk memulakannya di bawah akar?
vi /etc/sysconfig/elasticsearch
Tulis JAVA_HOME=/root/jdk1.8.0_60 pada fail, simpan dan mulakannya
perkhidmatan elasticsearch mula
Memulakan elasticsearch: [OK]
Jawapan betul di tingkat 3, saya mulakannya sebagai pengguna root
@geekfranca
Logstash saya ialah versi 2.2.2, persekitaran sistem ialah ubuntu kylin 16, dan kemudian saya memasang fail logstash_2.2.2-1_all.deb yang dimuat turun dari [laman web rasmi], menggunakan pengguna biasa, laksanakan Apabila sudo service logstash configtest, gesaan adalah seperti berikut:
Pasang kaedah yang disebut oleh @geekfranca, ubah suai fail /etc/init.d/logstash dan pelaksanaannya haruslah sama