Spec-Zone.ru › Elasticsearch 7
›Elasticsearch Руководство [7.17] ›REST API ›API создания и восстановления снимков

API восстановления снимков

Восстанавливает снимок кластера или указанных потоков данных и индексов.

POST /_snapshot/my_repository/my_snapshot/_restore
{
  "indices": "*,-.*",
  "feature_states": [ "geoip" ]
}

Запрос

POST /_snapshot/<repository>/<snapshot>/_restore

Предварительные условия

  • Если вы используете функции безопасности Elasticsearch, у вас должен быть manage или cluster:admin/snapshot/* привилегия кластера, чтобы использовать этот API.
  • Вы можете восстановить снимок только в работающем кластере с избранным узлом-мастером. Репозиторий снимка должен быть зарегистрирован и доступен для кластера.
  • Версии снимка и кластера должны быть совместимы. См. Совместимость снимков.
  • Для восстановления снимка глобальные метаданные кластера должны быть доступны для записи. Убедитесь, что нет блоков кластера, которые препятствуют записям. Операция восстановления игнорирует блоки индексов.
  • Перед восстановлением потока данных убедитесь, что кластер содержит соответствующую шаблон индекса с включенным потоком данных. Для проверки используйте функцию Управление индексами Kibana или API получения шаблона индекса:

    GET _index_template/*?filter_path=index_templates.name,index_templates.index_template.index_patterns,index_templates.index_template.data_stream

    Если такого шаблона нет, вы можете создать его или восстановить состояние кластера, который его содержит. Без соответствующего шаблона индекса поток данных не может переходить к новой версии или создавать вспомогательные индексы.

  • Если ваш снимок содержит данные из App Search или Workplace Search, убедитесь, что вы восстановили ключ шифрования Enterprise Search перед восстановлением снимка.

Параметры пути

<repository>
(Обязательно, строка) Имя репозитория для восстановления снимка.
<snapshot>
(Обязательно, строка) Имя снимка для восстановления.

Параметры запроса

master_timeout
(Необязательно, единицы времени) Период ожидания подключения к узлу-мастеру. Если ответ не получен до истечения срока ожидания, запрос завершается ошибкой. По умолчанию 30s.
wait_for_completion

(Необязательно, Булево) Если true, запрос возвращает ответ по завершении операции восстановления. Операция завершена, когда она завершает все попытки восстановления первичных фрагментов для восстановленных индексов. Это относится даже в случае неудачных попыток восстановления.

Если false, запрос возвращает ответ при инициализации операции восстановления. По умолчанию false.

Тело запроса

ignore_unavailable
(Необязательно, Булево) Если true, запрос игнорирует любые индексы или потоки данных в indices, отсутствующие в снимке. Если false, запрос возвращает ошибку для любого отсутствующего индекса или потока данных. По умолчанию false.
ignore_index_settings

(Необязательно, строка или массив строк) Настройки индекса, которые не нужно восстанавливать из снимка. Вы не можете использовать этот параметр для игнорирования index.number_of_shards.

Для потоков данных этот параметр применяется только к восстановленным вспомогательным индексам. Новые вспомогательные индексы настраиваются с помощью соответствующего шаблона индекса потока данных.

include_aliases
(Необязательно, Булево) Если true, запрос восстанавливает алиасы для любых восстановленных потоков данных и индексов. Если false, запрос не восстанавливает алиасы. По умолчанию true.
include_global_state

(Необязательно, Булево) Если true, восстановить состояние кластера. По умолчанию false.

Состояние кластера включает:

  • Постоянные настройки кластера
  • Шаблоны индексов
  • Шаблоны индексов (старая версия)
  • Трубопроводы инжеста
  • Политики жизненного цикла индексов
  • Сохраненные скрипты
  • Для снимков, сделанных после 7.12.0, состояния функций

Если include_global_state равно true, операция восстановления объединяет шаблоны индексов кластера со шаблонами из снимка, заменяя существующие шаблоны с совпадающими именами. Полностью удаляются все постоянные настройки, шаблоны индексов (не старой версии), трубопроводы инжеста и политики жизненного цикла ILM, существующие в кластере, и заменяются соответствующими элементами из снимка.

Используйте параметр feature_states для настройки восстановления состояний функций.

feature_states

(Необязательно, массив строк) Состояния функций для восстановления.

Если include_global_state равно true, по умолчанию запрос восстанавливает все состояния функций из снимка. Если include_global_state равно false, по умолчанию запрос не восстанавливает состояния функций. Обратите внимание, что указание пустого массива приведет к поведению по умолчанию. Чтобы не восстанавливать состояния функций независимо от значения include_global_state, укажите массив, содержащий только значение none (["none"]).

index_settings

(Необязательно, объект) Настройки индекса для добавления или изменения в восстановленных индексах, включая вспомогательные индексы. Вы не можете использовать этот параметр для изменения index.number_of_shards.

Для потоков данных этот параметр применяется только к восстановленным вспомогательным индексам. Новые вспомогательные индексы настраиваются с помощью соответствующего шаблона индекса потока данных.

indices
(Необязательно, строка или массив строк) Список индексов и потоков данных для восстановления, разделенных запятыми. Поддерживает синтаксис для нескольких целей. По умолчанию все индексы и потоки данных в снимке, включая системные индексы.
partial

(Необязательно, Булево) Если false, вся операция восстановления завершится ошибкой, если один или несколько индексов, включенных в снимок, не имеют всех первичных фрагментов. По умолчанию false.

Если true, позволяет восстановить частичный снимок индексов с недоступными фрагментами. Будут восстановлены только те фрагменты, которые успешно вошли в снимок. Все отсутствующие фрагменты будут созданы как пустые.

rename_pattern

(Необязательно, строка) Определяет шаблон переименования для восстановленных потоков данных и индексов. Потоки данных и индексы, соответствующие шаблону переименования, будут переименованы согласно rename_replacement.

Шаблон переименования применяется согласно регулярному выражению, поддерживающему ссылки на исходный текст, по логике appendReplacement.

rename_replacement
(Необязательно, строка) Определяет строку замены для переименования. См. rename_pattern для получения дополнительной информации.

Примеры

Следующий запрос восстанавливает index_1 и index_2 из snapshot_2. Параметры rename_pattern и rename_replacement указывают, что любой индекс, соответствующий регулярному выражению index_(.+), будет переименован по шаблону restored_index_$1 при восстановлении.

Например, index_1 будет переименован в restored_index_1. index_2 будет переименован в restored_index_2.

POST /_snapshot/my_repository/snapshot_2/_restore?wait_for_completion=true
{
  "indices": "index_1,index_2",
  "ignore_unavailable": true,
  "include_global_state": false,
  "rename_pattern": "index_(.+)",
  "rename_replacement": "restored_index_$1",
  "include_aliases": false
}

API возвращает подтверждение, если запрос успешен. Если запрос столкнётся с ошибками, ответ укажет на любые проблемы, такие как открытые индексы, которые препятствуют завершению операции восстановления.

© 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/restore-snapshot-api.html

Spec-Zone.ru

Настройки Оффлайн Что нового Помощь О нас
Spec-Zone .ru
спецификации, руководства, описания, API