Управление жизненным циклом индексов Elasticsearch удаляет индексы случайным образом - PullRequest
0 голосов
/ 13 июля 2020

Использование одного узла ES из официального dockerhub (7.7.1).

Я создал базовую c политику удаления:

"test_policy": {
    "version": 1,
    "modified_date": "2020-07-13T11:38:15.283Z",
    "policy": {
        "phases": {
            "delete": {
                "min_age": "10s",
                "actions": {
                    "delete": {}
                }
            }
        }
    }
}

Добавил указанную выше политику в шаблон , используя это в качестве примера: https://www.elastic.co/guide/en/elasticsearch/reference/current/set-up-lifecycle-policy.html (примечание: я не использовал ролловер)

PUT _template / my_template

{
  "index_patterns": ["test-*"], 
  "settings": {
    "number_of_shards": 1,
    "number_of_replicas": 1,
    "index.lifecycle.name": "test_policy" 
  }
}

затем Я ПОСТАВЛЯЮ два индекса : test-2017-11-12 и test-2222

Что произошло (согласно http://localhost:9200/test-*/_ilm/explain), так это то, что фаза обоих индексов является «новой» даже через несколько минут. Затем через 4-5мин один индекс перешел в фазу "удалить" и застрял там. Другой все еще находится в «новой» фазе.

"test-2017-11-12": {
    "index": "test-2017-11-12",
    "managed": true,
    "policy": "test_policy",
    "lifecycle_date_millis": 1594640489746,
    "age": "13.69m",
    "phase": "delete",
    "phase_time_millis": 1594640734626,
    "action": "delete",
    "action_time_millis": 1594640734626,
    "step": "wait-for-shard-history-leases",
    "step_time_millis": 1594640734626,
    "phase_execution": {
        "policy": "test_policy",
        "phase_definition": {
            "min_age": "10s",
            "actions": {
                "delete": {}
            }
        },
        "version": 1,
        "modified_date_in_millis": 1594640295283
    }
}

редактировать: наконец, через 17мин !!! индекс удаляется, теперь другой застревает на той же фазе

1. Что это за " wait-for-shard-history-leases "? Не удалось найти ничего об этом в документации ES.
2. Даже если один из них зависает на этапе удаления, почему другой индекс блокируется этим? Почему не все индексы старше 10 лет go до стадии удаления?

...