Opendistro для Elasticsearch - ISM не запускает задания
Я пытаюсь использовать ISM с opendistro на AWS Elasticsearch Service v7.8. Я пытаюсь настроить базовую политику одновременного нажатия клавиш / удаления, и мне кажется, что политика не срабатывает. Я предполагаю, что делаю что-то не так, но я не могу его отследить... Я тестирую это, используя ролловер каждый час и удаление через 6 часов...
Вот моя политика ISM, которую я так удачно назвал "тест":
{
"policy": {
"policy_id": "test",
"description": "A test policy",
"last_updated_time": 1605196195481,
"schema_version": 1,
"error_notification": null,
"default_state": "active",
"states": [{
"name": "active",
"actions": [{
"rollover": {
"min_index_age": "1h"
}
}],
"transitions": [{
"state_name": "delete",
"conditions": {
"min_index_age": "6h"
}
}]
},
{
"name": "delete",
"actions": [{
"delete": {}
}],
"transitions": []
}
]
}
}
Я создал шаблон для поддержки создания индекса и т. Д. Вот шаблон. Обратите внимание, что я добавляю псевдоним одновременного нажатия клавиш "atest", но policy_id имеет значение "test". Я не добавляю индекс ни к одному псевдониму в этом шаблоне:
PUT /_template/atest
{
"index_patterns" : [
"atest-*"
],
"settings" : {
"index" : {
"opendistro" : {
"index_state_management" : {
"policy_id" : "test",
"rollover_alias" : "atest"
}
},
"analysis" : {
}
}
},
"mappings" : {
},
"aliases" : { }
}
Затем я создаю индекс, используя шаблон индекса из шаблона, добавляя его к тому, что я определил как псевдоним ролловера выше:
PUT /atest-000001
{
"aliases": {"atest": {}}
}
Затем я могу увидеть документ в указателе opendistro-ism-config:
{
"_index": ".opendistro-ism-config",
"_type": "_doc",
"_id": "T_k8jMI5RvuWRaLp1tY_hg",
"_version": 2,
"_score": null,
"_source": {
"managed_index": {
"name": "atest-000001",
"enabled": true,
"index": "atest-000001",
"index_uuid": "T_k8jMI5RvuWRaLp1tY_hg",
"schedule": {
"interval": {
"start_time": 1605200587242,
"period": 30,
"unit": "Minutes"
}
},
"last_updated_time": 1605200587242,
"enabled_time": 1605200587242,
"policy_id": "test",
"policy_seq_no": 422,
"policy_primary_term": 111,
"policy": {
"policy_id": "test",
"description": "A test policy",
"last_updated_time": 1605196195481,
"schema_version": 1,
"error_notification": null,
"default_state": "active",
"states": [
{
"name": "active",
"actions": [
{
"rollover": {
"min_index_age": "1h"
}
}
],
"transitions": [
{
"state_name": "delete",
"conditions": {
"min_index_age": "6h"
}
}
]
},
{
"name": "delete",
"actions": [
{
"delete": {}
}
],
"transitions": []
}
]
},
"change_policy": null
}
},
"fields": {
"managed_index.last_updated_time": [
"2020-11-12T17:03:07.242Z"
],
"policy.last_updated_time": [],
"policy.states.actions.notification.destination.last_update_time": [],
"policy.error_notification.destination.last_update_time": [],
"managed_index.schedule.interval.start_time": [
"2020-11-12T17:03:07.242Z"
],
"managed_index.enabled_time": [
"2020-11-12T17:03:07.242Z"
]
},
"sort": [
1605200587242
]
}
В какой-то момент я вижу, что информация об управляемом индексе переходит от "инициализации" к
{
"message": "Successfully initialized policy: test"
}
На данный момент ничего не происходит. Строка для "atest-000001" в консоли ISM в кибане говорит, что "состояние"-"активно", "действие"-"-", а "Статус задания"-"Выполняется". Так будет оставаться в течение нескольких дней... Я также пробовал:
PUT _cluster/settings
{
"persistent": {
"opendistro.index_state_management.enabled" : true
}
}
По-прежнему ничего не срабатывает. Что я делаю неправильно?
1 ответ
Оказывается, это была внутренняя вещь AWS ES. Обновление до R20201117 устранило проблему.