API создания или обновления политики жизненного цикла
Создаёт или обновляет политику жизненного цикла. См. определение политики ILM для определений компонентов политики.
Запрос
PUT _ilm/policy/<policy_id>
Предварительные требования
- Если включены функции безопасности Elasticsearch, необходимо иметь привилегию кластера
manage_ilmдля использования этого API. Также необходимо иметь привилегию индексаmanageдля всех индексов, управляемыхpolicy. ILM выполняет операции от имени пользователя, последнего обновившего политику. ILM обладает только ролями, назначенными пользователю в момент последнего обновления политики.
Описание
Создаёт политику жизненного цикла. Если указанная политика существует, она заменяется, и версия политики увеличивается.
Хранится только последняя версия политики, вернуться к предыдущим версиям невозможно.
Параметры пути
-
<policy_id> - (Обязательный, строка) Идентификатор политики.
Параметры запроса
-
master_timeout - (Необязательный, единицы времени) Время ожидания соединения с узлом мастера. Если ответ не получен до истечения таймаута, запрос завершается ошибкой. По умолчанию
30s. -
timeout - (Необязательный, единицы времени) Время ожидания ответа. Если ответ не получен до истечения таймаута, запрос завершается ошибкой. По умолчанию
30s.
Примеры
В следующем примере создаётся новая политика с именем my_policy. Кроме того, вы можете использовать параметр _meta для добавления произвольных метаданных в политику, параметр _meta является необязательным и не генерируется или используется Elasticsearch автоматически. Чтобы сбросить значение _meta, замените политику, не указывая её. Чтобы проверить _meta, можно использовать API получения политики жизненного цикла.
PUT _ilm/policy/my_policy
{
"policy": {
"_meta": {
"description": "used for nginx log",
"project": {
"name": "myProject",
"department": "myDepartment"
}
},
"phases": {
"warm": {
"min_age": "10d",
"actions": {
"forcemerge": {
"max_num_segments": 1
}
}
},
"delete": {
"min_age": "30d",
"actions": {
"delete": {}
}
}
}
}
} В случае успешного запроса вы получите следующий результат:
{
"acknowledged": true
}
© 2023-2025 Elasticsearch
As of September 2024, Elasticsearch is available under a choice of three licenses: the Server Side Public License (SSPL), the Elastic License, or the AGPLv3 (OSI approved).
Elasticsearch and the Elasticsearch logo are trademarks of Elasticsearch B.V., registered in the U.S. and in other countries.
https://www.elastic.co/guide/en/elasticsearch/reference/7.17/ilm-put-lifecycle.html