@nreshetnyak
Ничерта не понятно, но очень интересно

Как правильно настроить ILM?

Доброго времени суток! Пытаюсь заставить работать ILM. Скажу сразу, делаю впервые, гуглил много, понимания не пришло.
Есть Индекс app-dev-logs-7.6.2

Шаблон индекса

PUT _template/app
{
  "order": 100,
  "index_patterns": [
    "app-dev-logs-7.6.2-*"
  ],
  "settings": {
    "index": {
      "lifecycle": {
        "name": "app",
        "rollover_alias": "app-dev-logs-7.6.2"
      }
    }
  },
  "mappings": {
    "_doc": {
      "_meta": {},
      "_source": {},
      "properties": {}
    }
  }
}


Политика ILM

PUT _ilm/policy/app
{
  "policy": {
    "phases": {
      "hot": {
        "min_age": "0ms",
        "actions": {
          "rollover": {
            "max_age": "1m",
            "max_size": "50gb"
          },
          "set_priority": {
            "priority": 100
          }
        }
      },
      "delete": {
        "min_age": "1nanos",
        "actions": {
          "delete": {}
        }
      }
    }
  }
}


В итоге получаю ошибку

illegal_argument_exception: index name [app-dev-logs-7.6.2-03.2021] does not match pattern '^.*-\d+$'

После некоторых правок, ошибка пропадает. Но и действия не происходит. Что я делаю не так?
  • Вопрос задан
  • 665 просмотров
Пригласить эксперта
Ответы на вопрос 1
@vitaly_il1
DevOps Consulting
1) Если цель не научиться делать это через API, а просто создать policy, можно сделать это в Kibana
2) когда вы создаете политику, что отвечает Elastic?

"delete": {
"min_age": "1nanos",

Тут логическая ошибка - мы не хотим удалять индексы после 1nanos.
Советую что-то вроде

"min_age": "1d"

Ну или один час.
Ответ написан
Ваш ответ на вопрос

Войдите, чтобы написать ответ

Войти через центр авторизации
Похожие вопросы