博客
关于我
Elasticsearch7.3.1启动指定JDK11
阅读量:787 次
发布时间:2023-01-24

本文共 2034 字,大约阅读时间需要 6 分钟。

针对Elasticsearch 7.3.1在虚拟机中运行时的Java版本要求进行了优化。以下是详细的解决方案:

1. 确认Elasticsearch版本要求

Elasticsearch 7.3.1确实要求使用Java 11及以上版本。在实际操作中,虽然Java 8仍然可用,但推荐遵循_Elasticsearch 官方文档中的推荐设置,以确保最佳性能和兼容性。

2. 安装Java Development Kit (JDK) 11

为了满足Elasticsearch的要求,首先需安装Java 11。以下是详细的操作步骤:

# 下载JDK 11wget https://download.java.net/java/GA/jdk11/13/GPL/openjdk-11.0.1_linux-x64_bin.tar.gz# 解压并安装tar -xzvf jdk-11.0.1_linux-x64_bin.tar.gz /usr/local/

注意:如果已经有其他JDK版本安装,建议清理旧版本,以避免版本冲突。

3. 配置JVM环境变量

为了确保Elasticsearch使用正确的JDK版本,需修改启动脚本文件(如elasticsearch-env.sh)中的相关参数:

#!/bin/bash# Define tmp directorysource "`dirname "$0"`"/elasticsearch-env# 检查是否是JDK 11if [ -x "/opt/jdk-11.0.1/bin/java" ]; then    JAVA="/opt/jdk-11.0.1/bin/java"else    JAVA=`which java`fi# Define JVM options to include G1GCES_JVM_OPTIONS="$ES_PATH_CONF/jvm.options"JVM_OPTIONS=`"$JAVA" -cp "$ES_CLASSPATH" org.elasticsearch.tools.launchers.JvmOptionsParser "$ES_JVM_OPTIONS"`# Update JVM options with tmp directoryES_JAVA_OPTS="${JVM_OPTIONS//${ES_TMPDIR}/$ES_TMPDIR}"# Determine if process should run in backgroundif ! echo $* | grep -E '(^-d |-d$| -d |--daemonize$|--daemonize )' > /dev/null; then    exec "$JAVA" $ES_JAVA_OPTS -Des.path.home="$ES_HOME" -Des.path.conf="$ES_PATH_CONF" -cp "$ES_CLASSPATH" org.elasticsearch.bootstrap.Elasticsearch "$@"else    exec "$JAVA" $ES_JAVA_OPTS -Des.path.home="$ES_HOME" -Des.path.conf="$ES_PATH_CONF" -cp "$ES_CLASSPATH" org.elasticsearch.bootstrap.Elasticsearch "$@" > /dev/null &fi

4. 配置垃圾回收器

为了优化Elasticsearch的性能,建议优化垃圾回收策略。修改jvm.options文件,添加以下参数:

# 在GC配置部分添加以下内容-XX:+UseG1GC# 去掉 -XX:+UseConcMarkSweepGC# 其他G1GC配置(如Heap size and initiation percent)

5. 启动脚本修改

在启动脚本中,需确保使用正确的JVM参数。示例中的脚本已经包含了对未来版本的适配配置,至关重要的一点是正确的垃圾回收器的选择,以避免性能问题。

6. 启动并验证

完成以上配置后,运行以下命令启动Elasticsearch:

# 使用修改后的脚本启动./bin/elasticsearch -Dlog4j.shutdownHookEnabled=false -Dlog4j2.disable.jmx=true -Djava.io.tmpdir=/opt/elasticsearch/tmp

7. 确保日志正确显示

在遇到问题时,查阅logs/hs_err_pid<pid>.log中的错误日志,能够帮助快速定位问题根源。

通过以上步骤,正确配置了Elasticsearch 7.3.1的运行环境,消除了Java版本兼容性的警告,同时优化了垃圾回收策略,以提升应用程序的性能表现。

转载地址:http://seeyk.baihongyu.com/

你可能感兴趣的文章
2023最新版Node.js下载安装及环境配置教程(非常详细)从零基础入门到精通,看完这一篇就够了
查看>>
2023网络安全现状,一个(黑客)真实的收入
查看>>
2024 年需要了解的顶级大数据工具(非常详细)零基础入门到精通,收藏这一篇就够了
查看>>
2024 最新 Kali Linux 定制化魔改,完整版,添加常见60渗透工具,零基础入门到精通,收藏这篇就够了
查看>>
2024大模型行业应用十大典范案例集(非常详细)零基础入门到精通,收藏这一篇就够了
查看>>
00后才是内卷之王,被卷的头皮发麻....
查看>>
2024届秋招让我(985本硕)直接破防,感觉书读了这么久结果毫无意义,读书就只为了读书,我该怎么办?
查看>>
2024年专业介绍||现代通信技术,从零基础到精通,收藏这篇就够了!
查看>>
2024年为什么越来越多的人选择转行网络安全?零基础入门到精通,收藏这篇就够了
查看>>
2024年从零学习AI和深度学习Transformer的路线图(非常详细)零基础入门到精通,收藏这一篇就够了
查看>>
006从零开始学Python—自定义函数
查看>>
2024年全球顶尖杀毒软件,从零基础到精通,收藏这篇就够了!
查看>>
2024年度“金智奖”揭晓:绿盟科技获双项大奖,创新驱动网络安全新高度。从零基础到精通,收藏这篇就够了!
查看>>
2024年最流行的十大开源渗透测试工具
查看>>
005从零开始学Python—字符串处理
查看>>
2024年网络安全八大前沿趋势,零基础入门到精通,收藏这篇就够了
查看>>
2024年薪酬最高的五个网络安全职位,零基础入门到精通,收藏这一篇就够
查看>>
2024年非科班的人合适转行做程序员吗?
查看>>
2024数字安全创新性案例报告,从零基础到精通,收藏这篇就够了!
查看>>
2024最新最全CTF入门指南(非常详细)零基础入门到精通,收藏这一篇就够了
查看>>