专栏首页热爱ITelasticsearch 启动时指定jdk版本 转

elasticsearch 启动时指定jdk版本 转

背景 我电脑环境的jdk是1.7,而需要的版本为1.8. 因此需要给elasticsearch指定jdk1.8(不需要将jdk1.8配置到环境变量).

一、下载 1、jdk:点击下载jdk1.8 2、解压 tar -xvf xxx1.8.tar.gz 二、配置 1、修改elasticsearch启动脚本 打开 elasticsearchHOME/bin/elasticsearch 编辑

[root]# vim bin/elasticsearch
添加以下代码
export JAVA_HOME=/home/hiekay/jdk1.8.0_181/      (此处配置的为刚下的1.8的配置目录)
export PATH=$JAVA_HOME/bin:$PATH

if [ -x "$JAVA_HOME/bin/java" ]; then
        JAVA="/home/yutao/jdk1.8.0_121/bin/java"
else
        JAVA=`which java`
fi

完整配置文件

#!/bin/bash

CONTROLLING STARTUP:

This script relies on a few environment variables to determine startup
behavior, those variables are:

ES_PATH_CONF -- Path to config directory
ES_JAVA_OPTS -- External Java Opts on top of the defaults set

Optionally, exact memory values can be set using the `ES_JAVA_OPTS`. Note that
the Xms and Xmx lines in the JVM options file must be commented out. Example
values are "512m", and "10g".

ES_JAVA_OPTS="-Xms8g -Xmx8g" ./bin/elasticsearch
#配置自己的jdk1.8
export JAVA_HOME=/home/hiekay/jdk1.8.0_181/
export PATH=$JAVA_HOME/bin:$PATH

source "`dirname "$0"`"/elasticsearch-env

ES_JVM_OPTIONS="$ES_PATH_CONF"/jvm.options
JVM_OPTIONS=`"$JAVA" -cp "$ES_CLASSPATH" org.elasticsearch.tools.launchers.JvmOptionsParser "$ES_JVM_OPTIONS"`
ES_JAVA_OPTS="${JVM_OPTIONS//\$\{ES_TMPDIR\}/$ES_TMPDIR} $ES_JAVA_OPTS"

#我添加的jdk判断
if [ -x "$JAVA_HOME/bin/java" ]; then
        JAVA="/home/hiekay/jdk1.8.0_181/bin/java"
else
        JAVA=`which java`
fi

cd "$ES_HOME"
manual parsing to find out, if process should be detached
if ! 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" \
    -Des.distribution.flavor="$ES_DISTRIBUTION_FLAVOR" \
    -Des.distribution.type="$ES_DISTRIBUTION_TYPE" \
    -cp "$ES_CLASSPATH" \
    org.elasticsearch.bootstrap.Elasticsearch \
    "$@"
else
  exec \
    "$JAVA" \
    $ES_JAVA_OPTS \
    -Des.path.home="$ES_HOME" \
    -Des.path.conf="$ES_PATH_CONF" \
    -Des.distribution.flavor="$ES_DISTRIBUTION_FLAVOR" \
    -Des.distribution.type="$ES_DISTRIBUTION_TYPE" \
    -cp "$ES_CLASSPATH" \
    org.elasticsearch.bootstrap.Elasticsearch \
    "$@" \
    <&- &
  retval=$?
  pid=$!
  [ $retval -eq 0 ] || exit $retval
  if [ ! -z "$ES_STARTUP_SLEEP_TIME" ]; then
    sleep $ES_STARTUP_SLEEP_TIME
  fi
  if ! ps -p $pid > /dev/null ; then
    exit 1
  fi
  exit 0
fi

exit $?

本文参与腾讯云自媒体分享计划,欢迎正在阅读的你也加入,一起分享。

我来说两句

0 条评论
登录 后参与评论

相关文章

  • Open Distro for Elasticsearch:AWS Elasticsearch 发行版

    Open Distro for Elasticsearch 是 AWS 2019年宣布开源的 Elasticsearch 发行版。Open Distro for...

    Yajun_
  • SpringBoot电商项目实战 — ElasticSearch接入实现

    如今在一些中大型网站中,搜索引擎已是必不可少的内容了。首先我们看看搜索引擎到底是什么呢?搜索引擎,就是根据用户需求与一定算法,运用特定策略从互联网检索出制定信息...

    攻城狮的那点事
  • Elasticsearch解决问题之道——请亮出你的DSL!

    以上的看似复杂的问题,如果转换成DSL,清楚的写出来,梳理清楚问题的来龙去脉,问题就自然解决了一大半。

    zhisheng
  • Elasticsearch BulkProcessor 的具体实现

    本文示例使用的是 Spring Boot 框架,由于该框架有默认的 Elasticsearch 版本,为了避免版本混乱或冲突,我在 pom.xml 文件内添加了...

    create17
  • 入门教程 | 从安装部署开始学习 Elasticsearch

    Elasticsearch 是目前最流行的搜索引擎,学习 ES 的第一步便是安装部署。本文内容包含以下三部分:

    Yajun_
  • 傻瓜也能玩转日志归集

    关注"一猿小讲"的猿友们都知道,前段时间我在《一文讲懂线上应用系统监控》给大家简单提到了日志归集,埋下了伏笔,今天的这篇分享是来给大家还债的,主要从整体到局部,...

    一猿小讲
  • Elasticsearch 中的基本概念-文档/索引/节点/分片/集群

    本文介绍 Elasticsearch 的基本概念,包括文档和索引、节点和分片,以及 Elasticsearch 和关系型数据库的类比和 REST API。

    懒人的小脑
  • 从 Elasticsearch 来看分布式系统架构设计

    分布式系统类型多,涉及面非常广,不同类型的系统有不同的特点,批量计算和实时计算就差别非常大。这篇文章中,重点会讨论下分布式数据系统的设计,比如分布式存储系统,分...

    Yajun_
  • 看完这篇还不会Elasticsearch,我跪搓衣板!

    本文转载自:https://www.cnblogs.com/jajian/p/11223992.html

    天涯泪小武
  • Elasticsearch 入门与实践系列

    Elasticsearch 是目前最流行的搜索引擎。为了能够让自己和小伙伴们更全面掌握 Elasticsearch 的原理与使用技巧,我打算根据自己的使用经验,...

    Yajun_

扫码关注云+社区

领取腾讯云代金券