У меня есть версия поиска elists 2.3.3, установленная на vm с версией ubuntu 14.04. Я попытался перезапустить службу elasticsearch, но после перезагрузки я проверил статус с sudo service elasticsearch status
, и он вернул * elasticsearch is not running
. Когда я пытаюсь запустить его с помощью sudo service elasticsearch start
, он возвращает * Starting Elasticsearch Server
, но при проверке состояния он не работает.Не удалось перезагрузить elasticsearch
Я попытался запустить ее вручную путем ввода /usr/share/elasticsearch/bin/elasticsearch
(что путь бинарного файла), но в начале я получаю следующее сообщение об ошибке:
Exception in thread "main" ElasticsearchException[Failed to load logging configuration]; nested: NoSuchFileException[/usr/share/elasticsearch/config];
Likely root cause: java.nio.file.NoSuchFileException: /usr/share/elasticsearch/config
at sun.nio.fs.UnixException.translateToIOException(UnixException.java:86)
at sun.nio.fs.UnixException.rethrowAsIOException(UnixException.java:102)
at sun.nio.fs.UnixException.rethrowAsIOException(UnixException.java:107)
at sun.nio.fs.UnixFileAttributeViews$Basic.readAttributes(UnixFileAttributeViews.java:55)
at sun.nio.fs.UnixFileSystemProvider.readAttributes(UnixFileSystemProvider.java:144)
at sun.nio.fs.LinuxFileSystemProvider.readAttributes(LinuxFileSystemProvider.java:97)
at java.nio.file.Files.readAttributes(Files.java:1686)
at java.nio.file.FileTreeWalker.walk(FileTreeWalker.java:109)
at java.nio.file.FileTreeWalker.walk(FileTreeWalker.java:69)
at java.nio.file.Files.walkFileTree(Files.java:2602)
at org.elasticsearch.common.logging.log4j.LogConfigurator.resolveConfig(LogConfigurator.java:142)
at org.elasticsearch.common.logging.log4j.LogConfigurator.configure(LogConfigurator.java:103)
at org.elasticsearch.bootstrap.Bootstrap.init(Bootstrap.java:243)
at org.elasticsearch.bootstrap.Elasticsearch.main(Elasticsearch.java:35)
Refer to the log for complete error details.
ошибка говорит, что не в состоянии найти конфигурацию протоколирования, чтобы я последовал совет в https://github.com/elastic/ansible-elasticsearch/issues/58 пути создания символической ссылки: sudo ln -s /etc/elasticsearch/ /usr/share/elasticsearch/config
Затем я получаю следующее сообщение об ошибке при выполнении упругого поиска через /usr/share/elasticsearch/bin/elasticsearch
:
Exception in thread "main" ElasticsearchException[Failed to load logging configuration]; nested: AccessDeniedException[/usr/share/elasticsearch/config];
Likely root cause: java.nio.file.AccessDeniedException: /usr/share/elasticsearch/config
at sun.nio.fs.UnixException.translateToIOException(UnixException.java:84)
at sun.nio.fs.UnixException.rethrowAsIOException(UnixException.java:102)
at sun.nio.fs.UnixException.rethrowAsIOException(UnixException.java:107)
at sun.nio.fs.UnixFileSystemProvider.newDirectoryStream(UnixFileSystemProvider.java:426)
at java.nio.file.Files.newDirectoryStream(Files.java:413)
at java.nio.file.FileTreeWalker.walk(FileTreeWalker.java:179)
at java.nio.file.FileTreeWalker.walk(FileTreeWalker.java:69)
at java.nio.file.Files.walkFileTree(Files.java:2602)
at org.elasticsearch.common.logging.log4j.LogConfigurator.resolveConfig(LogConfigurator.java:142)
at org.elasticsearch.common.logging.log4j.LogConfigurator.configure(LogConfigurator.java:103)
at org.elasticsearch.bootstrap.Bootstrap.init(Bootstrap.java:243)
at org.elasticsearch.bootstrap.Elasticsearch.main(Elasticsearch.java:35)
Refer to the log for complete error details.
При попытке как корень (sudo /usr/share/elasticsearch/bin/elasticsearch
) Я получаю следующее сообщение об ошибке:
Exception in thread "main" java.lang.RuntimeException: don't run elasticsearch as root.
at org.elasticsearch.bootstrap.Bootstrap.initializeNatives(Bootstrap.java:93)
at org.elasticsearch.bootstrap.Bootstrap.setup(Bootstrap.java:144)
at org.elasticsearch.bootstrap.Bootstrap.init(Bootstrap.java:270)
at org.elasticsearch.bootstrap.Elasticsearch.main(Elasticsearch.java:35)
Refer to the log for complete error details.
Это не первый раз, когда я сталкиваюсь с этим вопросом. Я столкнулся с той же проблемой (с первым исключением - конфигурацией протоколирования не найдена) на другой виртуальной машине и попытался ее решить, создав путь /usr/share/elasticsearch/config
и скопировав файлы конфигурации (elasticsearch.yml и logging.yml). Впоследствии я снова столкнулся со второй проблемой (работа в качестве обычного пользователя - доступ запрещен и работает с правами root).
У кого-нибудь есть идея об этой проблеме? Любая помощь будет рассмотрена!
Спасибо, но это та же ссылка я refered в описании проблемы – mshabeeb
выглядит как пользователь, который работает elasticsearch не имеет доступа к файлам в '/ и т.д./elasticsearch'. Elasticsearch обычно работает как пользователь 'elasticsearch'. Поэтому, возможно, попробуйте 'chown -R elasticsearch./etc/elasticsearch/* ' – Ceilingfish
, пожалуйста, приложите команду вывода id и выполните« cat/usr/share/elasticsearch/config »работу без ошибок? –