API создания или обновления политики жизненного цикла снимков
Создаёт или обновляет политику жизненного цикла снимков.
Запрос
PUT /_slm/policy/<snapshot-lifecycle-policy-id>
Предварительные условия
Если в Elasticsearch включены функции безопасности, необходимо иметь привилегию manage_slm для кластера и привилегию manage для включенных индексов, чтобы использовать этот API. Дополнительная информация представлена в разделе Привилегии безопасности.
Описание
Используйте API создания или обновления политики жизненного цикла снимков для создания или обновления политики жизненного цикла снимков.
Если политика уже существует, этот запрос увеличивает версию политики. Только последняя версия политики хранится.
Параметры пути
-
<snapshot-lifecycle-policy-id> - (Обязательно, строка) Идентификатор политики жизненного цикла снимков, которую требуется создать или обновить.
Параметры запроса
-
master_timeout - (Необязательно, единицы измерения времени) Период ожидания подключения к узлу-мастеру. Если ответ не получен до истечения срока ожидания, запрос завершается ошибкой. По умолчанию
30s. -
timeout - (Необязательно, единицы измерения времени) Период ожидания ответа. Если ответ не получен до истечения срока ожидания, запрос завершается ошибкой. По умолчанию
30s.
Тело запроса
-
config -
(Обязательно, объект) Настройка для каждого снимка, создаваемого политикой.
Свойства
config-
expand_wildcards -
(Необязательно, строка) Определяет, как шаблоны подстановок в параметре
indicesсопоставляют потоки данных и индексы. Поддерживает значения, разделенные запятыми, такие какclosed,hidden. По умолчаниюopen,hidden. Допустимые значения:-
all - Сопоставлять любые потоки данных или индексы, включая скрытые.
-
open - Сопоставлять открытые индексы и потоки данных.
-
closed - Сопоставлять закрытые индексы и потоки данных.
-
hidden - Сопоставлять скрытые потоки данных и индексы. Должно комбинироваться с
open,closedили обоими. -
none - Не расширять шаблоны подстановок.
-
-
ignore_unavailable - (Необязательно, Булево) Если
false, снимок завершается неудачей, если отсутствует или закрыт любой поток данных или индекс вindices. Еслиtrue, снимок игнорирует отсутствующие или закрытые потоки данных и индексы. По умолчаниюfalse. -
include_global_state -
(Необязательно, Булево) Если
true, включать состояние кластера в снимок. По умолчаниюtrue. Состояние кластера включает:- Постоянные настройки кластера
- Шаблоны индексов
- Шаблоны индексов (старая версия)
- Потоки обработки данных
- Политики ILM
- Хранящиеся скрипты
- Для снимков, сделанных после 7.12.0, состояния функций
-
indices -
(Необязательно, строка или массив строк) Список потоков данных и индексов, разделяемых запятыми, для включения в снимок. Поддерживает синтаксис для нескольких целей. По умолчанию пустой массив (
[]), который включает все потоки данных и индексы, включая системные индексы.Чтобы исключить все потоки данных и индексы, используйте
-*.
-
feature_states -
(Необязательно, массив строк) Состояния функций для включения в снимок. Чтобы получить список возможных значений и их описаний, воспользуйтесь API получения функций.
Если
include_global_stateравноtrue, снимок по умолчанию включает все состояния функций. Еслиinclude_global_stateравноfalse, снимок по умолчанию не включает никаких состояний функций.Обратите внимание, что указание пустого массива приведёт к поведению по умолчанию. Чтобы исключить все состояния функций, независимо от значения
include_global_state, укажите массив только со значениемnone(["none"]). -
metadata - (Необязательно, объект) Прикрепляет произвольные метаданные к снимку, например, запись о том, кто выполнил снимок, зачем он был сделан, или любые другие полезные данные. Метаданные должны иметь размер менее 1024 байт.
-
partial -
(Необязательно, Булево) Если
false, весь снимок завершится неудачей, если один или несколько индексов, включенных в снимок, не имеют всех первичных фрагментов. По умолчаниюfalse.Если
true, разрешено создавать частичный снимок индексов с недоступными фрагментами.
-
-
name - (Обязательно, строка) Название, автоматически присваиваемое каждому снимку, создаваемому политикой. Поддерживается математика дат. Для предотвращения конфликтов имён снимков к каждому имени снимка автоматически добавляется UUID.
-
repository - (Обязательно, строка) Репозиторий, используемый для хранения снимков, создаваемых этой политикой. Этот репозиторий должен существовать до создания политики. Вы можете создать репозиторий, используя API репозитория снимков.
-
retention -
(Необязательно, объект) Правила хранения, используемые для сохранения и удаления снимков, создаваемых политикой.
Свойства
retention-
expire_after - (Необязательно, единицы измерения времени) Период времени после которого снимок считается истекшим и подлежит удалению. SLM удаляет истекшие снимки на основе
slm.retention_schedule. -
max_count - (Необязательно, целое число) Максимальное количество снимков для хранения, даже если снимки ещё не истекли. Если количество снимков в репозитории превышает это значение, политика хранит самые последние снимки и удаляет более старые. Это ограничение относится только к снимкам со значением
stateSUCCESS. -
min_count - (Необязательно, целое число) Минимальное количество снимков для хранения, даже если снимки истекли.
-
-
schedule - (Обязательно, синтаксис cron) Периодический или абсолютный график, по которому политика создаёт снимки. SLM применяет изменения
scheduleнемедленно.
Примеры
Создайте политику жизненного цикла:
PUT /_slm/policy/daily-snapshots
{
"schedule": "0 30 1 * * ?",
"name": "<daily-snap-{now/d}>",
"repository": "my_repository",
"config": {
"indices": ["data-*", "important"],
"ignore_unavailable": false,
"include_global_state": false
},
"retention": {
"expire_after": "30d",
"min_count": 5,
"max_count": 50
}
} | Время создания моментальной копии, в данном случае, ежедневно в 1:30 | |
| Имя, которое должно быть присвоено каждой моментальной копии | |
| Репозиторий, в котором нужно создать моментальную копию | |
| Дополнительные параметры конфигурации моментальной копии | |
| Потоки данных и индексы, которые должны быть включены в моментальную копию | |
| Дополнительная конфигурация удержания | |
| Хранить моментальные копии в течение 30 дней | |
| Всегда хранить как минимум 5 успешных моментальных копий, даже если они старше 30 дней | |
| Хранить не более 50 успешных моментальных копий, даже если они младше 30 дней |
© 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/slm-api-put-policy.html