Решаем проблему с нехваткой оперативной памяти
На серверах с небольшим объемом оперативной памяти может возникнуть ошибка Cannot allocate memory. Чтобы её устранить, откройте файл /etc/elasticsearch/jvm.options и отредактируйте в нем две строки, определяющие объем доступной памяти. 
1g означает, что Elasticsearch будет использовать 1 гигабайт оперативной памяти. 512m — 512 мегабайт. Вы можете подставить своё значение в зависимости от характеристик сервера. Узнать объем оперативной памяти в байтах можно с помощью команды free.
Если вы сталкиваетесь с ситуацией, когда служба Elastisearch внезапно отключается без видимой причины, то, скорее всего, проблема связана с убийцей OOM. Возможно, вы сможете подтвердить это, выполнив эту команду:
grep -i "Out of memory" /var/log/messages | grep -i java Sep 18 23:01:00 server kernel: Out of memory: Kill process 19539 (java) score 362 or sacrifice child Sep 18 23:09:09 server kernel: Out of memory: Kill process 20514 (java) score 377 or sacrifice child Sep 18 23:09:31 server kernel: Out of memory: Kill process 20514 (java) score 377 or sacrifice child Sep 18 23:19:36 server kernel: Out of memory: Kill process 21254 (java) score 382 or sacrifice child Sep 18 23:19:51 server kernel: Out of memory: Kill process 21254 (java) score 383 or sacrifice child Sep 18 23:20:06 server kernel: Out of memory: Kill process 21344 (java) score 380 or sacrifice child Sep 18 23:20:22 server kernel: Out of memory: Kill process 21344 (java) score 380 or sacrifice child
ИЛИ АЛЬТЕРНАТИВНО: (Эта команда может занять некоторое время, чтобы показать какие-либо выходные данные. Ищите строки, содержащие строку «java»)
systemctl start elasticsearch;tail -f /var/log/messages | grep -Ei "(out of memory)" --line-buffered Sep 19 00:12:31 server kernel: Out of memory: Kill process 25011 (java) score 380 or sacrifice child Sep 19 00:12:32 server kernel: Out of memory: Kill process 25011 (java) score 380 or sacrifice child Sep 19 00:12:33 server kernel: Out of memory: Kill process 25074 (VM Periodic Tas) score 380 or sacrifice child .....
В случаях, подобных этому, вам нужно либо увеличить количество процессоров, а также объем оперативной памяти на сервере, либо выбрать другой сервер для установки.
Если появляется предупреждение при запуске elasticsearch: OpenJDK 64-Bit Server VM warning:
OpenJDK 64-Bit Server VM warning: Option UseConcMarkSweepGC was deprecated in version 9.0 and will likely be removed in a future release.
Измените конфигурацию файла /etc/elasticsearch/jvm.options и замените -XX:+UseConcMarkSweepGC на -XX:+UseG1GC. И перезапустить Elasticsearch. 
При возникновение ошибки данного типа: Error: Could not find or load main class
Error: Could not find or load main class "-Djava.io.tmpdir=.var.lib.elasticsearch.tmp" Caused by: java.lang.ClassNotFoundException: "-Djava.io.tmpdir=.var.lib.elasticsearch.tmp"
В данной ситуации раскоментируем и изменяем значение в файле /etc/sysconfig/elasticsearch в строке ES_JAVA_OPTS="-Djna.tmpdir=/var/lib/elasticsearch/tmp"
Это в случае, если домашний каталог elasticsearch в пользовательском месте, и мы связываем это пользовательское местоположение с /var/lib/elasticsearch.
Также возможное появление предупреждения: OpenJDK 64-Bit Server VM warning: UseAVX=2
OpenJDK 64-Bit Server VM warning: UseAVX=2 is not supported on this CPU, setting it to UseAVX=1
В данной ситуации изменяем значение UseAVX=2 на UseAVX=1 в файле /etc/elasticsearch/jvm.options 
Elasticsearch не запускается и нет журналов
Проблеме решилась после удаления /var/lib/elasticsearch/nodes/0/node.lock и переустановки elasticsearch.
Также рекомендуется перед переустановкой удалить все каталоги Elasticsearch /var/lib/elasticsearch/, /etc/elasticsearch/, /etc/sysconfig/elasticsearch

