Как уже упоминалось в журналах, ваш сервисasticsearch использует JDK, присутствующий в пути /opt/jdk1.8.0_151/bin/java
, в то время как ваш JAVA_HOME
указывает на /usr/java/jdk1.8.0_251-amd64/
.
Пожалуйста, убедитесь, что ваш сервисasticsearch использует правильный путь. Пожалуйста, смотрите эту официальную информацию о том, как ее установить.
Редактировать Поскольку установка Elasticsearch выполняется с использованием установщика, принадлежащего пользователюasticsearch, который использует связанный JDK упомянутая в моей предыдущей ссылке, Для того, чтобы он работал, вам нужно добавить новый JDK JAVA_HOME
этому пользователю, но это не тривиально ,
Следовательно, можно предложить установить Elasticsearch из tarball по этой официальной ссылке , и когда вы сейчас запускаетеasticsearch от пользователя igwuser
, для которого JAVA_HOME
указывает на ваш последний JDK, ваш Elasticsearch также будет использовать это, и вы можете видеть это также в журналах запуска или в ваш процесс Служба эластичного поиска.
Например, в моем случае мой JAVA_HOME указывает на
/usr/lib/jvm/java-11-openjdk-amd64
И это то, что напечатано в журналах запуска Elasti c
JVM home [/ usr / lib / jvm / java -11-openjdk-amd64]
И это также можно проверить в процессе Elasti c с помощью ps aux | grep elastic
/ usr / lib / jvm / * 1 041 * -11-openjdk-amd64 / bin / java -Des.networkaddress.cache.ttl = 60 -Des.networkaddress.cache.negative.ttl = 10 -XX: + AlwaysPreTouch -Xss1m -D java .awt.headless = true -Dfile.encoding = UTF-8 -Djna.nosys = true -XX: -OmitStackTraceInFastThrow -Dio.netty.noUnsafe = true