Elasticsearch7.8 Logstash7.8 Zookeeper3.6.2 Kafka使用JDK的版本
Elasticsearch配置独立的JDK
Elasticsearch7.8的tar.gz包中会提供一个JDK为:openjdk version "14.0.1"
如果全局已经设置了其他版本的JDK,可以修改配置使用自带的openjdk
修改bin/elasticsearch-env内容
if [ ! -z "$JAVA_HOME" ]; then JAVA="$JAVA_HOME/bin/java" JAVA_TYPE="JAVA_HOME" else if [ "$(uname -s)" = "Darwin" ]; then # macOS has a different structure JAVA="$ES_HOME/jdk.app/Contents/Home/bin/java" else JAVA="$ES_HOME/jdk/bin/java" fi JAVA_TYPE="bundled jdk" fi
改为
JAVA="$ES_HOME/jdk/bin/java" JAVA_TYPE="bundled jdk"
注:如果没有全局的JDK,不用修改配置ES可以直接启动
Logstash配置独立的JDK
Logstash7.8也使用ES的openjdk时,在启动过程中会有一些警告信息
如不想出现这些警告信息,可以换成JDK1.8版本
vi /usr/local/logstash/bin/logstash
export JAVA_CMD="/usr/local/jdk1.8.0_261/bin" #改为自己JDK位置
export JAVA_HOME="/usr/local/jdk1.8.0_261/" #改为自己JDK位置
Zookeeper配置独立的JDK
修改bin/zkEnv.sh
if [[ -n "$JAVA_HOME" ]] && [[ -x "$JAVA_HOME/bin/java" ]]; then JAVA="$JAVA_HOME/bin/java" elif type -p java; then JAVA=java else echo "Error: JAVA_HOME is not set and java could not be found in PATH." 1>&2 exit 1 fi
改为
JAVA="/usr/local/jdk/bin/java"
Kafka配置独立的JDK
修改bin/kafka-run-class.sh
if [ -z "$JAVA_HOME" ]; then JAVA="java" else JAVA="$JAVA_HOME/bin/java" fi
改为
JAVA="/usr/local/jdk/bin/java"