2015-03-08 2 views
0

Я использую ElasticSearch v.1.0.1. Я запускать и останавливать elasticsearch с помощью init.d скриптElasticSearch, используя некорректный JVM

$ sudo /etc/init.d/elasticsearch start/stop

мой JAVA_HOME показывает правильную JVM:

$ echo $JAVA_HOME /usr/lib/jvm/jdk1.7.0

Кроме того, моя Java версия кажется вполне нормально

$ java -version java version "1.7.0_25" Java(TM) SE Runtime Environment (build 1.7.0_25-b15) Java HotSpot(TM) Client VM (build 23.25-b01, mixed mode)

Но когда я запускаю свой экземпляр elasticsearch и проверить состояние моего узла с помощью

curl -XGET "http://localhost:9200/_nodes?jvm=true&pretty=true"

Я получаю выход:

{ "cluster_name" : "elasticsearch", "nodes" : { . . . . "jvm" : { "pid" : 24498, "version" : "1.6.0_32", "vm_name" : "OpenJDK Client VM", "vm_version" : "23.25-b01", "vm_vendor" : "Sun Microsystems Inc.", "start_time" : 1425803965875, "mem" : { . . . . }, "plugins" : [ ] } } }

который подразумевающее, что я использую JVM 1.6 для запуска elasticsearch.

Как я могу гарантировать, что поиск elasticsearch выполняется с использованием JVM 1.7, установленного в JAVA_HOME?

Благодаря

+0

Инициированные скрипты не знают о ваших личных переменных. Вам нужно более внимательно изучить сценарий. –

ответ

0

Я не пользователь Unix, но я постараюсь помочь.

Это случилось со мной под Windows с Elastic 1.4.0, после того как мне пришлось избавиться от Java и полностью переустановить ее.

Мне пришлось переустановить Эластическое обслуживание, используя service.bat в папке/bin.

...\elasticsearch-1.4.0\bin> .\service.bat install 
Installing service  : "elasticsearch-service-x64" 
Using JAVA_HOME (64-bit): "C:\Program Files\Java\jdk1.8.0_65" 
The service 'elasticsearch-service-x64' has been installed. 

С выхода консоли кажется, что JAVA_HOME фигурная только один раз, когда команда «установить» запускается. Если вы изменили переменную JAVA_HOME, Elastic проигнорирует ее.

Я не уверен, что для Linux, но я думаю, вы должны запустить что-то вроде

<elastic-deamon> stop 
<elastic-deamon> remove 
<elastic-deamon> install 
<elastic-deamon> start 

Что бы ни быть для вас. remove удаляет только deamon и не должен влиять на ваши данные. Но я советую сделать резервную копию сначала ...

Редактирование/bin/ElasticSearch или /bin/service.bat как указано в https://github.com/elastic/elasticsearch/issues/10611 не дал никакого результата.

Надеюсь, что это помогло ...

Смежные вопросы