Не удалось запустить Elasticsearch. Ошибка при открытии файла журнала «/gc.log»: разрешение отклонено - PullRequest
1 голос
/ 07 февраля 2020

Уважаемое сообщество StackOverflow,

Я без проблем запускал Kibana / Elasticsearch до установки плагина Kibana. Затем служба перестала работать, и я заметил, что проблема в том, что Elasticsearch остановился. Я попробовал несколько способов это исправить, а потом даже все переустановил. Но проблема по-прежнему избегает запуска Elasticsearch, даже при установке fre sh.

Установка на Debian 9 с использованием apt install.

systemctl start elasticsearch.service

приводит к следующим результатам:

Exception in thread "main" java.lang.RuntimeException: starting java failed with [1]

[0.000s][error][logging] Error opening log file '/gc.log': Permission denied

Полный журнал с journalctl -xe

-- Unit elasticsearch.service has begun starting up.
Feb 07 14:09:06 Debian-911-stretch-64-minimal kibana[576]: {"type":"log","@timestamp":"2020-02-07T13:09:06Z","tags":["warning","elasticsearch","admin"],"pid":576,"message":"Unable to revive connection: http://localhost:9200/"}
Feb 07 14:09:06 Debian-911-stretch-64-minimal kibana[576]: {"type":"log","@timestamp":"2020-02-07T13:09:06Z","tags":["warning","elasticsearch","admin"],"pid":576,"message":"No living connections"}
Feb 07 14:09:06 Debian-911-stretch-64-minimal kibana[576]: {"type":"log","@timestamp":"2020-02-07T13:09:06Z","tags":["warning","elasticsearch","admin"],"pid":576,"message":"Unable to revive connection: http://localhost:9200/"}
Feb 07 14:09:06 Debian-911-stretch-64-minimal kibana[576]: {"type":"log","@timestamp":"2020-02-07T13:09:06Z","tags":["warning","elasticsearch","admin"],"pid":576,"message":"No living connections"}
Feb 07 14:09:06 Debian-911-stretch-64-minimal elasticsearch[2312]: Exception in thread "main" java.lang.RuntimeException: starting java failed with [1]
Feb 07 14:09:06 Debian-911-stretch-64-minimal elasticsearch[2312]: output:
Feb 07 14:09:06 Debian-911-stretch-64-minimal elasticsearch[2312]: [0.000s][error][logging] Error opening log file '/gc.log': Permission denied
Feb 07 14:09:06 Debian-911-stretch-64-minimal elasticsearch[2312]: [0.000s][error][logging] Initialization of output 'file=/var/log/elasticsearch/gc.log' using options 'filecount=32,filesize=64m' failed.
Feb 07 14:09:06 Debian-911-stretch-64-minimal elasticsearch[2312]: error:
Feb 07 14:09:06 Debian-911-stretch-64-minimal elasticsearch[2312]: OpenJDK 64-Bit Server VM warning: Option UseConcMarkSweepGC was deprecated in version 9.0 and will likely be removed in a future release.
Feb 07 14:09:06 Debian-911-stretch-64-minimal elasticsearch[2312]: Invalid -Xlog option '-Xlog:gc*,gc+age=trace,safepoint:file=/var/log/elasticsearch/gc.log:utctime,pid,tags:filecount=32,filesize=64m', see error log for details.
Feb 07 14:09:06 Debian-911-stretch-64-minimal elasticsearch[2312]: Error: Could not create the Java Virtual Machine.
Feb 07 14:09:06 Debian-911-stretch-64-minimal elasticsearch[2312]: Error: A fatal exception has occurred. Program will exit.
Feb 07 14:09:06 Debian-911-stretch-64-minimal elasticsearch[2312]:         at org.elasticsearch.tools.launchers.JvmErgonomics.flagsFinal(JvmErgonomics.java:118)
Feb 07 14:09:06 Debian-911-stretch-64-minimal elasticsearch[2312]:         at org.elasticsearch.tools.launchers.JvmErgonomics.finalJvmOptions(JvmErgonomics.java:86)
Feb 07 14:09:06 Debian-911-stretch-64-minimal elasticsearch[2312]:         at org.elasticsearch.tools.launchers.JvmErgonomics.choose(JvmErgonomics.java:59)
Feb 07 14:09:06 Debian-911-stretch-64-minimal elasticsearch[2312]:         at org.elasticsearch.tools.launchers.JvmOptionsParser.main(JvmOptionsParser.java:92)
Feb 07 14:09:06 Debian-911-stretch-64-minimal systemd[1]: elasticsearch.service: Main process exited, code=exited, status=1/FAILURE
Feb 07 14:09:06 Debian-911-stretch-64-minimal systemd[1]: Failed to start Elasticsearch.
-- Subject: Unit elasticsearch.service has failed
-- Defined-By: systemd
-- Support: https://www.debian.org/support
-- 
-- Unit elasticsearch.service has failed.

Указанный файл g c .log не был в этой папке. И разрешения были:

drwxr-s--- 2 elasticsearch elasticsearch 4096 Jan 15 13:20 elasticsearch

Я создал файл и также играл с разрешениями до тех пор, пока у них не было:

-rwxrwxrwx 1 root elasticsearch 0 Feb 7 15:19 gc.log

.. .и даже сменил владельца:

-rwxrwxrwx 1 root root 0 Feb 7 15:19 gc.log

Но безуспешно, у меня все та же проблема.

Спасибо

Ответы [ 2 ]

0 голосов
/ 01 мая 2020

Во-первых, я не знал, почему g c .log файла не было. Вы изменили путь к папке журналов или что-то? Путь g c .log может быть установлен в файле jvm.options. По умолчанию журналы ES ​​и java журналы сбора мусора подаются в папку журналов внутри каталога $ ES_HOME.

О перспективе user, elasti c search нельзя запустить как root user. Таким образом, из подробностей каталога ES видно, что вы создали пользователя elasticsearch и пытаетесь запустить кластер этим пользователем.

Проблема здесь может быть решена путем изменения прав доступа к файлам insd ie каталога ES, к которому все это относится. Теперь файл g c .log принадлежит пользователю root, и он не доступен для пользователяasticsearch.

Попробуйте это: sudo chown <user> <path/to/es/directory> -R

Здесь он становится: sudo chown elasticsearch elasticsearch/ -R

Если проблема не устранена, проверьте файл jvm.options , правильно ли он настроен. Если вы не измените параметр -Xloggc:logs/gc.log, файл g c .log не будет выдвигаться до /var/log.

Feb 09 17:09:02 server elasticsearch[2199]: Invalid -Xlog option '-Xlog:gc*,gc+age=trace,safepoint:file=/var/log/elasticsearch/gc.log:utctime,pid,tags:filecount=32,filesize=64m', see error log for details.

В вашем журнале указывается, что опция указана в виде file = / var / log /asticsearch / g c .log . Исправьте все неправильные конфигурации согласно документации: https://www.elastic.co/guide/en/elasticsearch/reference/master/jvm-options.html

0 голосов
/ 10 февраля 2020

sudo systemctl -l status elasticsearch.service

Возвращает этот журнал:

● elasticsearch.service - Elasticsearch
   Loaded: loaded (/usr/lib/systemd/system/elasticsearch.service; enabled; vendor preset: enabled)
  Drop-In: /etc/systemd/system/elasticsearch.service.d
           └─override.conf
   Active: failed (Result: exit-code) since Sun 2020-02-09 17:09:02 CET; 2min 48s ago
     Docs: http://www.elastic.co
  Process: 2199 ExecStart=/usr/share/elasticsearch/bin/elasticsearch -p ${PID_DIR}/elasticsearch.pid --quiet (code=exited, status=1/FAILURE)
 Main PID: 2199 (code=exited, status=1/FAILURE)

Feb 09 17:09:02 server elasticsearch[2199]: Invalid -Xlog option '-Xlog:gc*,gc+age=trace,safepoint:file=/var/log/elasticsearch/gc.log:utctime,pid,tags:filecount=32,filesize=64m', see error log for details.
Feb 09 17:09:02 server elasticsearch[2199]: Error: Could not create the Java Virtual Machine.
Feb 09 17:09:02 server elasticsearch[2199]: Error: A fatal exception has occurred. Program will exit.
Feb 09 17:09:02 server elasticsearch[2199]:         at org.elasticsearch.tools.launchers.JvmErgonomics.flagsFinal(JvmErgonomics.java:118)
Feb 09 17:09:02 server elasticsearch[2199]:         at org.elasticsearch.tools.launchers.JvmErgonomics.finalJvmOptions(JvmErgonomics.java:86)
Feb 09 17:09:02 server elasticsearch[2199]:         at org.elasticsearch.tools.launchers.JvmErgonomics.choose(JvmErgonomics.java:59)
Feb 09 17:09:02 server elasticsearch[2199]:         at org.elasticsearch.tools.launchers.JvmOptionsParser.main(JvmOptionsParser.java:92)
Feb 09 17:09:02 server systemd[1]: elasticsearch.service: Main process exited, code=exited, status=1/FAILURE
Feb 09 17:09:02 server systemd[1]: elasticsearch.service: Failed with result 'exit-code'.
Feb 09 17:09:02 server systemd[1]: Failed to start Elasticsearch.

На данный момент я делаю fre sh установку. Не могу найти решение, которое мне нужно, чтобы продолжить работу ...

Добро пожаловать на сайт PullRequest, где вы можете задавать вопросы и получать ответы от других членов сообщества.
...