API создания снимка
Создает снимок кластера или указанных потоков данных и индексов.
PUT /_snapshot/my_repository/my_snapshot
Запрос
PUT /_snapshot/<repository>/<snapshot>
POST /_snapshot/<repository>/<snapshot>
Предварительные условия
- Если включены функции безопасности Elasticsearch, у вас должны быть права
create_snapshotилиmanageна кластер, чтобы использовать этот API.
Параметры пути
-
<repository> - (Обязательно, строка) Название репозитория снимков.
-
<snapshot> - (Обязательно, строка) Название снимка. Поддерживает date math. Должно быть уникальным в рамках репозитория снимков.
Параметры запроса
-
master_timeout - (Необязательно, единицы времени) Время ожидания подключения к мастер-узлу. Если ответ не получен до истечения тайм-аута, запрос завершается ошибкой. По умолчанию
30s. -
wait_for_completion - (Необязательно, логическое значение) Если
true, запрос возвращает ответ, когда снимок завершен. Еслиfalse, запрос возвращает ответ при инициализации снимка. По умолчаниюfalse.
Тело запроса
-
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. Состояние кластера включает:- Постоянные настройки кластера
- Шаблоны индексов
- Устаревшие шаблоны индексов
- Конвейеры ingest
- Политики 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, разрешено создание частичного снимка индексов с недоступными фрагментами.
Примеры
Следующий запрос создает снимок index_1 и index_2.
PUT /_snapshot/my_repository/snapshot_2?wait_for_completion=true
{
"indices": "index_1,index_2",
"ignore_unavailable": true,
"include_global_state": false,
"metadata": {
"taken_by": "user123",
"taken_because": "backup before upgrading"
}
} API возвращает следующий ответ:
{
"snapshot": {
"snapshot": "snapshot_2",
"uuid": "vdRctLCxSketdKb54xw67g",
"repository": "my_repository",
"version_id": <version_id>,
"version": <version>,
"indices": [],
"data_streams": [],
"feature_states": [],
"include_global_state": false,
"metadata": {
"taken_by": "user123",
"taken_because": "backup before upgrading"
},
"state": "SUCCESS",
"start_time": "2020-06-25T14:00:28.850Z",
"start_time_in_millis": 1593093628850,
"end_time": "2020-06-25T14:00:28.850Z",
"end_time_in_millis": 1593094752018,
"duration_in_millis": 0,
"failures": [],
"shards": {
"total": 0,
"failed": 0,
"successful": 0
}
}
}
© 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/create-snapshot-api.html