問題一: 在安裝logstash時出現以下報錯:「could not find java; set JAVA_HOME or ensure java is in PATH chmod: cannot access ‘/etc/default/logstash’: No such file or directory warning: %post(logstash-1:6.6.0-1.noarch) scriptlet failed, exit status 1」 could not find java; set JAVA_HOME or ensure java is in PATH chmod: cannot access ‘/etc/default/logstash’: No such file or directory warning: %post(logstash-1:6.6.0-1.noarch) scriptlet failed, exit status 1
原覺得是jdk沒有安裝經查是正常的。但啓動logstash 的時候也是報錯的。java
[root@ES3-4 opt]# java -version java version "1.8.0_144" Java(TM) SE Runtime Environment (build 1.8.0_144-b01) Java HotSpot(TM) 64-Bit Server VM (build 25.144-b01, mixed mode)
猜想應該是環境變量的事了。vim
[root@ES4-4 config]# echo $PATH /usr/local/jdk/bin:/usr/local/sbin:/usr/local/bin:/usr/sbin:/usr/bin:/root/bin
可是發現是有的。bash
查看整個系統的變量,發現沒有,應該就是這個問題了。
[root@kafka1-master preuser-0]# set |grep JAVA_HOMEide
解決步驟以下:
一、設置變量post
[root@ES3-4 opt]# vim ~/.bash_profile # .bash_profile # Get the aliases and functions if [ -f ~/.bashrc ]; then . ~/.bashrc fi PATH=$PATH:$HOME/bin export JAVA_HOME=/usr/local/jdk export PATH=$PATH:/usr/local/jdk/bin [root@ES3-4 opt]# source ~/.bash_profile
二、查看變量值
[root@ES3-4 opt]# set |grep JAVA_HOME
JAVA_HOME=/usr/local/jdkui
三、從新安裝ok了,問題解決。rest
[root@ES3-4 opt]# rpm -ivh logstash-6.6.0.rpm warning: logstash-6.6.0.rpm: Header V4 RSA/SHA512 Signature, key ID d88e42b4: NOKEY Preparing... ################################# [100%] Updating / installing... 1:logstash-1:6.6.0-1 ################################# [100%] Using provided startup.options file: /etc/logstash/startup.options Successfully created system startup script for Logstash
問題二:當設置完畢的時候仍是出現以下報錯"logstash: could not find java; set JAVA_HOME or ensure java is in PATH"
這是由於缺乏個java的軟鏈接,作個軟鏈接便可解決此問題code
[root@ES3-4 conf.d]# ln -s /usr/local/jdk/bin/java /usr/bin/java [root@ES3-4 conf.d]# systemctl restart logstash [root@ES3-4 conf.d]# systemctl status logstash ● logstash.service - logstash Loaded: loaded (/etc/systemd/system/logstash.service; enabled; vendor preset: disabled) Active: active (running) since Wed 2019-06-26 11:06:47 CST; 27s ago Main PID: 5543 (java) CGroup: /system.slice/logstash.service └─5543 /usr/bin/java -Xms1g -Xmx1g -XX:+UseParNewGC -XX:+UseConcMarkSweepGC -XX:CMSInitiatingOccupancyFraction=75 -XX:+... Jun 26 11:06:47 ES3-4.217 systemd[1]: Started logstash. Jun 26 11:06:47 ES3-4.217 systemd[1]: Starting logstash...