# Зависание и последующее падение сервера elasticsearch

**URL:** <https://discuss.elastic.co/t/elasticsearch/174506>\
**Category:** Вопросы на русском языке\
**Created:** [March 29, 2019, 9:34am UTC](https://discuss.elastic.co/t/elasticsearch/174506 "2019-03-29T09:34:56Z")\
**Posts on this page:** 20\
**Page:** 1

<div class="post-metadata">

**Author:** ![AlexEkb](https://avatars.discourse-cdn.com/v4/letter/a/ecc23a/32.png) [@AlexEkb](https://discuss.elastic.co/u/AlexEkb)\
**Post date:** [March 29, 2019, 9:34am UTC](https://discuss.elastic.co/t/elasticsearch/174506/1 "2019-03-29T09:34:57Z")

</div>

Здравствуйте. Я добавил в своё rails приложение  
gem 'elasticsearch-model'  
gem 'elasticsearch-rails'.  
Настроил согласно инструкции, поиск работает. Но, постоянно при старте поиска идёт жуткое подвисание всей системы и после стоп сервиса elastic 9200. Приходиться делать restart. Иногда система не оживает. Проект учебный, всего поиск идёт по 15 записям. Оперативная память в размере 1гб свободна. Попытался в момент начала зависания, когда ещё что-то можно сделать взять логи с \_nodes/stats [logs](https://gist.github.com/AlexEKB/3476ee8659dc2ec1b6dd8b199e08fa7f)

---

<div class="post-metadata">

**Author:** ![Igor\_Motov](https://sea2.discourse-cdn.com/elastic/user_avatar/discuss.elastic.co/igor_motov/32/45193_2.png) [@Igor\_Motov](https://discuss.elastic.co/u/Igor_Motov)\
**Post date:** [March 29, 2019, 1:23pm UTC](https://discuss.elastic.co/t/elasticsearch/174506/2 "2019-03-29T13:23:29Z")

</div>

А что в логах elasticsearch?

---

<div class="post-metadata">

**Author:** ![AlexEkb](https://avatars.discourse-cdn.com/v4/letter/a/ecc23a/32.png) [@AlexEkb](https://discuss.elastic.co/u/AlexEkb)\
**Post date:** [March 29, 2019, 1:56pm UTC](https://discuss.elastic.co/t/elasticsearch/174506/3 "2019-03-29T13:56:11Z")

</div>

Извините, я новичок. А как их посмотреть?)

---

<div class="post-metadata">

**Author:** ![Igor\_Motov](https://sea2.discourse-cdn.com/elastic/user_avatar/discuss.elastic.co/igor_motov/32/45193_2.png) [@Igor\_Motov](https://discuss.elastic.co/u/Igor_Motov)\
**Post date:** [March 29, 2019, 2:06pm UTC](https://discuss.elastic.co/t/elasticsearch/174506/4 "2019-03-29T14:06:45Z")

</div>

Запустите команду `GET /_nodes/settings`. Вы получите назад что-то вроде:

```auto
{
  "_nodes" : {
    "total" : 1,
    "successful" : 1,
    "failed" : 0
  },
  "cluster_name":"elasticsearch",
  "nodes" : {
    "4irbd1T5TZqb03W9rGp3WQ" : {
      "name" : "...",
      ...
      "settings" : {
         ...
        "path" : {
          "logs" : "/usr/share/elasticsearch/logs", <-- Логи должны быть тут 
         ...
        },
        "discovery" : {
        ...     

```

Интересует тот, который называется `elasticsearch.log`

---

<div class="post-metadata">

**Author:** ![AlexEkb](https://avatars.discourse-cdn.com/v4/letter/a/ecc23a/32.png) [@AlexEkb](https://discuss.elastic.co/u/AlexEkb)\
**Post date:** [March 29, 2019, 2:32pm UTC](https://discuss.elastic.co/t/elasticsearch/174506/5 "2019-03-29T14:32:15Z")

</div>

вроде эти [логи](https://gist.github.com/AlexEKB/bab5a1d0e53ca5d66f9194fb4b51ecb0)

---

<div class="post-metadata">

**Author:** ![Igor\_Motov](https://sea2.discourse-cdn.com/elastic/user_avatar/discuss.elastic.co/igor_motov/32/45193_2.png) [@Igor\_Motov](https://discuss.elastic.co/u/Igor_Motov)\
**Post date:** [March 29, 2019, 2:59pm UTC](https://discuss.elastic.co/t/elasticsearch/174506/6 "2019-03-29T14:59:55Z")

</div>

Похоже, что кто-то elasticsearch из вне прибивает. Может OOMKiller безобразничает. Сколько всего памяти на сервере и что там еще запущено?

---

<div class="post-metadata">

**Author:** ![AlexEkb](https://avatars.discourse-cdn.com/v4/letter/a/ecc23a/32.png) [@AlexEkb](https://discuss.elastic.co/u/AlexEkb)\
**Post date:** [March 29, 2019, 3:25pm UTC](https://discuss.elastic.co/t/elasticsearch/174506/7 "2019-03-29T15:25:10Z")

</div>

вот скрин из диспетчера [https://i.imgur.com/YMbJQeF.png](https://i.imgur.com/YMbJQeF.png) Запущен ide rubymine и mozilla. Система ubuntu на виртуальной машине.

---

<div class="post-metadata">

**Author:** ![Igor\_Motov](https://sea2.discourse-cdn.com/elastic/user_avatar/discuss.elastic.co/igor_motov/32/45193_2.png) [@Igor\_Motov](https://discuss.elastic.co/u/Igor_Motov)\
**Post date:** [March 29, 2019, 3:53pm UTC](https://discuss.elastic.co/t/elasticsearch/174506/8 "2019-03-29T15:53:22Z")

</div>

Да. Скорее всего OOMKiller мешается. Попробуйте запустить с 512m. Задать память можно в файле [jvm.options](https://www.elastic.co/guide/en/elasticsearch/reference/current/jvm-options.html):

```auto
-Xms512m
-Xmx512m

```

---

<div class="post-metadata">

**Author:** ![AlexEkb](https://avatars.discourse-cdn.com/v4/letter/a/ecc23a/32.png) [@AlexEkb](https://discuss.elastic.co/u/AlexEkb)\
**Post date:** [March 29, 2019, 4:27pm UTC](https://discuss.elastic.co/t/elasticsearch/174506/9 "2019-03-29T16:27:06Z")

</div>

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

---

<div class="post-metadata">

**Author:** ![AlexEkb](https://avatars.discourse-cdn.com/v4/letter/a/ecc23a/32.png) [@AlexEkb](https://discuss.elastic.co/u/AlexEkb)\
**Post date:** [April 12, 2019, 4:52am UTC](https://discuss.elastic.co/t/elasticsearch/174506/10 "2019-04-12T04:52:12Z")

</div>

Теперь у меня новая проблема в тестовом окружении. Мои тесты не работают. При создании экземпляра модели gem Factory\_bot\_rails, ошибка ``` Failure/Error: let(:post) { FactoryBot.create :post, user: user }

```
 Elasticsearch::Transport::Transport::Errors::Forbidden:
   [403] {"error":{"root_cause":[{"type":"cluster_block_exception","reason":"blocked by: [FORBIDDEN/12/index read-only / allow delete (api)];"}],"type":"cluster_block_exception","reason":"blocked by: [FORBIDDEN/12/index read-only / allow delete (api)];"},"status":403}

```

`Я попытался добавить создание и рефреш индексов в тесты` let(:user) { FactoryBot.create :user }  
let(:post) { FactoryBot.create :post, user: user }  
Post. **elasticsearch**.create\_index!  
Post. **elasticsearch**.refresh\_index! ``` но это не изменило ничего

---

<div class="post-metadata">

**Author:** ![Igor\_Motov](https://sea2.discourse-cdn.com/elastic/user_avatar/discuss.elastic.co/igor_motov/32/45193_2.png) [@Igor\_Motov](https://discuss.elastic.co/u/Igor_Motov)\
**Post date:** [April 12, 2019, 6:12am UTC](https://discuss.elastic.co/t/elasticsearch/174506/11 "2019-04-12T06:12:55Z")

</div>

У вас права доступа на кластере настроены?

---

<div class="post-metadata">

**Author:** ![AlexEkb](https://avatars.discourse-cdn.com/v4/letter/a/ecc23a/32.png) [@AlexEkb](https://discuss.elastic.co/u/AlexEkb)\
**Post date:** [April 12, 2019, 9:09am UTC](https://discuss.elastic.co/t/elasticsearch/174506/12 "2019-04-12T09:09:55Z")

</div>

не могу сказать, а как можно проверить? я сам ничего не настраивал.

---

<div class="post-metadata">

**Author:** ![Igor\_Motov](https://sea2.discourse-cdn.com/elastic/user_avatar/discuss.elastic.co/igor_motov/32/45193_2.png) [@Igor\_Motov](https://discuss.elastic.co/u/Igor_Motov)\
**Post date:** [April 12, 2019, 2:44pm UTC](https://discuss.elastic.co/t/elasticsearch/174506/13 "2019-04-12T14:44:58Z")

</div>

Вы вручную, через curl или kibana без введения пароля можете какой-нибудь индекс создать?

---

<div class="post-metadata">

**Author:** ![AlexEkb](https://avatars.discourse-cdn.com/v4/letter/a/ecc23a/32.png) [@AlexEkb](https://discuss.elastic.co/u/AlexEkb)\
**Post date:** [April 12, 2019, 3:32pm UTC](https://discuss.elastic.co/t/elasticsearch/174506/14 "2019-04-12T15:32:59Z")

</div>

сейчас попробовал создать, не вышло. Хотя до этого всё создавалось без проблем. Ошибка `[403] {"error":{"root_cause":[{"type":"cluster_block_exception","reason":"blocked by: [FORBIDDEN/12/index read-only / allow delete (api)];"}],"type":"cluster_block_exception","reason":"blocked by: [FORBIDDEN/12/index read-only / allow delete (api)];"},"status":403}`

---

<div class="post-metadata">

**Author:** ![Igor\_Motov](https://sea2.discourse-cdn.com/elastic/user_avatar/discuss.elastic.co/igor_motov/32/45193_2.png) [@Igor\_Motov](https://discuss.elastic.co/u/Igor_Motov)\
**Post date:** [April 12, 2019, 3:49pm UTC](https://discuss.elastic.co/t/elasticsearch/174506/15 "2019-04-12T15:49:08Z")

</div>

> сейчас попробовал создать, не вышло. Хотя до этого всё создавалось без проблем.

Тогда скорее всего у вас это происходит потому, что у вас диски на сервере переполнились. Когда диски наполняются больше чем на 95%, elasticsearch устанавливает этот блок, чтобы предотвратить полное исчерпание дискового пространства. Надо либо диски добавить, либо данные почистить.

---

<div class="post-metadata">

**Author:** ![AlexEkb](https://avatars.discourse-cdn.com/v4/letter/a/ecc23a/32.png) [@AlexEkb](https://discuss.elastic.co/u/AlexEkb)\
**Post date:** [April 12, 2019, 3:50pm UTC](https://discuss.elastic.co/t/elasticsearch/174506/16 "2019-04-12T15:50:03Z")

</div>

я добавил сегодня, а как мне сейчас перезапустить это всё? чтобы они опять стали доступны

---

<div class="post-metadata">

**Author:** ![Igor\_Motov](https://sea2.discourse-cdn.com/elastic/user_avatar/discuss.elastic.co/igor_motov/32/45193_2.png) [@Igor\_Motov](https://discuss.elastic.co/u/Igor_Motov)\
**Post date:** [April 12, 2019, 3:52pm UTC](https://discuss.elastic.co/t/elasticsearch/174506/17 "2019-04-12T15:52:30Z")

</div>

вы путь поменяли к данным? если да - то надо elasticsearch перезапустить

---

<div class="post-metadata">

**Author:** ![AlexEkb](https://avatars.discourse-cdn.com/v4/letter/a/ecc23a/32.png) [@AlexEkb](https://discuss.elastic.co/u/AlexEkb)\
**Post date:** [April 12, 2019, 4:08pm UTC](https://discuss.elastic.co/t/elasticsearch/174506/18 "2019-04-12T16:08:02Z")

</div>

нет пути не менял. Сделал сейчас sudo service elasticsearch stop и потом start. Попробовал создать индекс, не работает.

---

<div class="post-metadata">

**Author:** ![Igor\_Motov](https://sea2.discourse-cdn.com/elastic/user_avatar/discuss.elastic.co/igor_motov/32/45193_2.png) [@Igor\_Motov](https://discuss.elastic.co/u/Igor_Motov)\
**Post date:** [April 12, 2019, 4:09pm UTC](https://discuss.elastic.co/t/elasticsearch/174506/19 "2019-04-12T16:09:01Z")

</div>

Если вы пути не меняли, то как вы размер доступного дискового пространства увеличили?

---

<div class="post-metadata">

**Author:** ![AlexEkb](https://avatars.discourse-cdn.com/v4/letter/a/ecc23a/32.png) [@AlexEkb](https://discuss.elastic.co/u/AlexEkb)\
**Post date:** [April 12, 2019, 4:15pm UTC](https://discuss.elastic.co/t/elasticsearch/174506/20 "2019-04-12T16:15:33Z")

</div>

я с виртуальной машины запускаю ubuntu, на ней уже стоит elastic.)) Я в параметрах виртуальной машины добавил дискового пространства и проверил уже в ubunte. Размер увеличился.

[Next page](https://discuss.elastic.co/t/elasticsearch/174506.md?page=2)
