dlaczego elasticsearch nie działa na Ubuntu 14.04?

Próbuję ustalić, czy instancja elasticsearch działa, ale nie wygląda na to:

ubuntu@ubuntu:~$ sudo service elasticsearch status
 * elasticsearch is not running
ubuntu@ubuntu:~$ sudo service elasticsearch start
 * Starting Elasticsearch Server  [ OK ] 
ubuntu@ubuntu:~$ sudo service elasticsearch status
 * elasticsearch is not running
and

ubuntu@ubuntu:~$ sudo /etc/init.d/elasticsearch status
 * elasticsearch is not running
ubuntu@ubuntu:~$ sudo /etc/init.d/elasticsearch start
 * Starting Elasticsearch Server  [ OK ] 
ubuntu@ubuntu:~$ sudo /etc/init.d/elasticsearch status
 * elasticsearch is not running
ubuntu@ubuntu:/etc/elasticsearch# sudo service elasticsearch restart
 * Stopping Elasticsearch Server  [ OK ] 
 * Starting Elasticsearch Server  [ OK ] 
ubuntu@ubuntu:/etc/elasticsearch# sudo service elasticsearch status
 * elasticsearch is not running

I

ubuntu@ubuntu:~$ curl -XGET localhost:9200/_nodes/_all/process?pretty
curl: (7) Failed to connect to localhost port 9200: Connection refused

I

ubuntu@ubuntu:/etc/elasticsearch$ sudo netstat -nlp
tcp6       0      0 :::9300                 :::*                    LISTEN      4413/java       

UPD

Moje elasticsearch.log:
[2014-12-03 00:00:02,161][INFO ][cluster.metadata         ] [Zero] [logstash-2014.12.03] creating index, cause [auto(bulk api)], shards [5]/[1], mappings [_default_]
[2014-12-03 00:00:02,617][INFO ][cluster.metadata         ] [Zero] [logstash-2014.12.03] update_mapping [logs] (dynamic)
[2014-12-03 00:00:12,737][INFO ][cluster.metadata         ] [Zero] [logstash-2014.12.03] update_mapping [logs] (dynamic)
[2014-12-03 00:00:17,587][INFO ][cluster.metadata         ] [Zero] [logstash-2014.12.03] update_mapping [logs] (dynamic)
[2014-12-03 00:00:18,842][INFO ][cluster.metadata         ] [Zero] [logstash-2014.12.03] update_mapping [logs] (dynamic)
[2014-12-03 01:00:01,430][INFO ][cluster.metadata         ] [Zero] [logstash-2014.11.25] deleting index
[2014-12-03 09:46:57,461][INFO ][cluster.metadata         ] [Zero] [logstash-2014.12.03] update_mapping [logs] (dynamic)
Author: pdm, 2014-12-03

9 answers

Skrypt init usługi Elasticsearch nie wyświetla żadnych informacji o błędach na konsoli lub pliku dziennika, gdy nie uruchamia się, zamiast tego śmiesznie pokazuje [OK].

Aby sprawdzić, co się dzieje, musisz uruchomić elaticsearch ręcznie z tym samym użytkownikiem i tymi samymi parametrami, co skrypt init. Komunikat o błędzie zostanie wydrukowany na konsoli.

Na moim Ubuntu 14.10 z elasticsearch-1.4.1.DEB zainstalowany, bez zmiany ścieżki, polecenie do uruchomienia elastisearch jest:

sudo -u elasticsearch /usr/share/elasticsearch/bin/elasticsearch -d -p /var/run/elasticsearch.pid --default.config=/etc/elasticsearch/elasticsearch.yml --default.path.home=/usr/share/elasticsearch --default.path.logs=/var/log/elasticsearch --default.path.data=/var/lib/elasticsearch --default.path.work=/tmp/elasticsearch --default.path.conf=/etc/elasticsearch

Dodałem wiersz do /etc/init.d/elasticsearch, aby wydrukować powyższe polecenie:

# Start Daemon
log_daemon_msg "sudo -u $ES_USER $DAEMON $DAEMON_OPTS"    # <-- Add this line
start-stop-daemon --start -b --user "$ES_USER" -c "$ES_USER" --pidfile "$PID_FILE" --exec $DAEMON -- $DAEMON_OPTS
log_end_msg $?
 78
Author: aleung,
Warning: date(): Invalid date.timezone value 'Europe/Kyiv', we selected the timezone 'UTC' for now. in /var/www/agent_stack/data/www/doraprojects.net/template/agent.layouts/content.php on line 54
2014-12-13 16:52:48

Użytkownik elasticsearch nie może zapisać pliku PID, ponieważ nie ma uprawnień do tworzenia pliku w /var / run/:

FileNotFoundException[/var/run/elasticsearch.pid (Keine Berechtigung)]

Poprawka: utwórz katalog / var / run/ elasticsearch/, zmień jego własność na elasticsearch:elasticsearch i zmień lokalizację pliku PID na ten katalog w skrypcie init.

mkdir -p /var/run/elasticsearch
chown elasticsearch: /var/run/elasticsearch
sed -e 's|^PID_FILE=.*$|PID_FILE=/var/run/$NAME/$NAME.pid|g' -i /etc/init.d/elasticsearch

Gdy dojdziesz tak daleko, oto następny błąd, który możesz zobaczyć:

ElasticsearchIllegalStateException[Failed to obtain node lock, is the following location writable?: [/var/lib/elasticsearch/elasticsearch]]

Ponownie zasób nie ma poprawnych uprawnień do elasticsearch użytkownik.

chown -R elasticsearch: /var/lib/elasticsearch
Jeszcze nie skończyłem. Teraz musisz edytować /etc / init.d / elasticsearch i usuń tę linię:
test "$START_DAEMON" == true || exit 0

Ta linia jest kompletnym śmieciem i gwarantuje wyjście.

Teraz powinno się w końcu zacząć.

 26
Author: Carlos Konstanski,
Warning: date(): Invalid date.timezone value 'Europe/Kyiv', we selected the timezone 'UTC' for now. in /var/www/agent_stack/data/www/doraprojects.net/template/agent.layouts/content.php on line 54
2015-08-10 19:33:46

Jeśli używasz Elasticsearch > 5, 0

Wymagania dotyczące rozmiaru sterty min/max dla Elasticsearch 5.0 są teraz domyślnie ustawione na 2 GB

Sprawdź pliki ls /tmp/hs_err_pid*.log, w logach zobaczysz, że JVM nie uruchomił ES z powodu niewystarczającej pamięci.

Możesz ustawić rozmiar sterty w /etc/elasticsearch/jvm.options. Dostosuj linie -Xms2g i -Xmx2g odpowiednio do -Xms1g i -Xmx1g, Jeśli używasz pudełka z 2 GB PAMIĘCI RAM. Jeśli masz zamiar używać pudełka z 1 GB PAMIĘCI RAM to polecam używając -Xms512m i -Xmx512m.

Numer referencyjny

 11
Author: Ronak Jain,
Warning: date(): Invalid date.timezone value 'Europe/Kyiv', we selected the timezone 'UTC' for now. in /var/www/agent_stack/data/www/doraprojects.net/template/agent.layouts/content.php on line 54
2019-11-06 09:17:49

Podczas gdy zaakceptowane polecenie odpowiedzi działało dla mnie przy użyciu Elasticsearch 1.7.3, z pewnymi zmianami w Elasticsearch >2.0 uruchomienie zaakceptowanego polecenia odpowiedzi przyniosłoby

es.default.config is no longer supported. elasticsearch.yml 
must be placed in the config directory and cannot be renamed

Problem Z Githubem

Polecenie określone w powyższym wydaniu Github będzie teraz następujące:

sudo -u elasticsearch /usr/share/elasticsearch/bin/elasticsearch -d -p /var/run/elasticsearch.pid --path.conf=/etc/elasticsearch --default.path.home=/usr/share/elasticsearch --default.path.logs=/var/log/elasticsearch --default.path.data=/var/lib/elasticsearch --default.path.work=/tmp/elasticsearch --default.path.conf=/etc/elasticsearch
 8
Author: Khaliq Gant,
Warning: date(): Invalid date.timezone value 'Europe/Kyiv', we selected the timezone 'UTC' for now. in /var/www/agent_stack/data/www/doraprojects.net/template/agent.layouts/content.php on line 54
2016-03-21 01:01:34

Natknąłem się na ten sam problem dziś rano. Po długich poszukiwaniach okazało się, że było to spowodowane nieudaną instalacją Javy 8. Wszystko było w porządku po instalacji Javy 8 została naprawiona.

 3
Author: Bo Guo,
Warning: date(): Invalid date.timezone value 'Europe/Kyiv', we selected the timezone 'UTC' for now. in /var/www/agent_stack/data/www/doraprojects.net/template/agent.layouts/content.php on line 54
2016-02-24 00:45:07

Parametry linii poleceń, do których odnosi się @aleung, można ustawić w pliku konfiguracyjnym. Domyślnie parametry są komentowane.

Ustaw w /etc/default/elasticsearch

################################
# Elasticsearch
################################

# Elasticsearch home directory
ES_HOME=/usr/share/elasticsearch

# Elasticsearch configuration directory
CONF_DIR=/etc/elasticsearch

# Elasticsearch data directory
DATA_DIR=/var/lib/elasticsearch

# Elasticsearch logs directory
LOG_DIR=/var/log/elasticsearch

# Elasticsearch PID directory
PID_DIR=/var/run/elasticsearch
 1
Author: KevinO,
Warning: date(): Invalid date.timezone value 'Europe/Kyiv', we selected the timezone 'UTC' for now. in /var/www/agent_stack/data/www/doraprojects.net/template/agent.layouts/content.php on line 54
2017-05-23 12:26:09

To polecenie rozwiązało mój problem:

sudo chown -R elasticsearch:elasticsearch /var/lib/elasticsearch/

Odwołany z @ imsaar github

 1
Author: Taimoor Changaiz,
Warning: date(): Invalid date.timezone value 'Europe/Kyiv', we selected the timezone 'UTC' for now. in /var/www/agent_stack/data/www/doraprojects.net/template/agent.layouts/content.php on line 54
2016-08-01 10:01:26

Dla mnie ten problem był spowodowany przez dane Elasticsearch i / lub logów katalogu przy 100% użyciu dysku. Uruchom df -h, aby sprawdzić, czy katalog, którego proces Elasticsearch używa dla danych i dzienników, ma wolne miejsce, czy nie.

 1
Author: spiffygene,
Warning: date(): Invalid date.timezone value 'Europe/Kyiv', we selected the timezone 'UTC' for now. in /var/www/agent_stack/data/www/doraprojects.net/template/agent.layouts/content.php on line 54
2017-04-04 21:27:18

Doszedłem do tego samego punktu po wykonaniu apt-get dist-upgrade-JAVA została zaktualizowana do " Java (TM) SE Runtime Environment (build 1.8.0_91-b14) Java HotSpot (TM) 64-Bit Server VM (build 25.91-B14, mixed mode)" wersja.

Mój ES nie chciał zaczynać. Znalazłem przyczynę tutaj (tail-N100 / var / log / elasticsearch / elasticsearch."log"): {]}
java.lang.IllegalArgumentException: Plugin [license] is incompatible with Elasticsearch [2.3.2]. Was designed for version [2.3.1]

Właśnie usunąłem wtyczkę (bin / plugin usunąć licencję) i uruchomił es pomyślnie.

Mam nadzieję, że to pomoże innym.
 0
Author: Strabek,
Warning: date(): Invalid date.timezone value 'Europe/Kyiv', we selected the timezone 'UTC' for now. in /var/www/agent_stack/data/www/doraprojects.net/template/agent.layouts/content.php on line 54
2016-05-03 10:18:19