Подтвердить что ты не робот

Elasticsearch/kibana errors "Данные слишком велики, данные для [@timestamp] будут больше, чем предел

В моем тестовом кластере ELK я сталкиваюсь с следующей ошибкой при попытке увидеть данные с прошлой недели.

Data too large, data for [@timestamp] would be larger than limit

Предупреждение о сбоях осколков кажется ошибочным, поскольку инструменты мониторинга elasticsearch kopf и head показывают, что все осколки работают правильно, а эластичный кластер зеленый.

enter image description here

Один пользователь в группе google для elasticsearch предложил увеличить ram. Я увеличил свои 3 узла до 8 ГБ каждый с кучей 4,7 ГБ, но проблема продолжается. Я генерирую от 5 до 25 ГБ данных в день с 30-дневным удержанием.

4b9b3361

Ответ 1

Очистка кеша пока облегчает симптомы.

http://www.elastic.co/guide/en/elasticsearch/reference/current/indices-clearcache.html

Очистить один индекс

curl -XPOST 'http://localhost:9200/twitter/_cache/clear'

Очистить несколько признаков

curl -XPOST 'http://localhost:9200/kimchy,elasticsearch/_cache/clear'

curl -XPOST 'http://localhost:9200/_cache/clear'

Или по предложению пользователя в IRC. Этот, кажется, работает лучше всего.

curl -XPOST 'http://localhost:9200/_cache/clear' -d '{ "fielddata": "true" }'

Обновление: эти ошибки исчезли, как только кластер был перемещен на более быстрый гипервизор

Ответ 2

Проблема в памяти, предоставленной Elasticsearch ES_JAVA_OPTS.

Попробуйте выделить больше памяти с помощью: ES_JAVA_OPTS = "-Xmx2g -Xms2g".

Ответ 3

Очистка кэша не работает для нашего кластера. При проверке различных узлов с помощью http://x.x.x.x:9200/_cat/indices?v&s=index:desc один выдавал вышеуказанную ошибку, а другие имели недопустимые ошибки указателя. Я перезапустил эластичный сервис на том, который дает ограничение скорости/слишком большую ошибку данных. Когда он вернулся в оперативный режим, было несколько неназначенных сегментов, которые я исправил, уменьшив число репликаций до меньшего (это нужно сделать только на одном из узлов, чтобы изменить настройки индекса для кластера):

IFS=$'\n'
for line in $(curl -s 'elastic-search.example.com:9200/_cat/shards' | fgrep UNASSIGNED); do
  INDEX=$(echo $line | (awk '{print $1}'))
  echo start $INDEX
  curl -XPUT "elastic-search.example.com:9200/$INDEX/_settings" -d '{
      "index" : {
        "number_of_replicas" : 1
      }
    }
    '
done

# Check shard/cluster status (may take some time to rebalance):
# http://elastic-search.example.com:9200/_cat/shards?v&s=index:desc
# http://elastic-search.example.com:9200/_cluster/health?pretty

Также https://discuss.elastic.co/t/data-too-large/32141, кажется, упоминает, что это может быть проблема с размером кучи JVM.