Управление резервными копиями в Managed Service for OpenSearch
Managed Service for OpenSearch позволяет создавать резервные копии индексов как средствами Yandex Cloud, так и с помощью механизма снапшотов OpenSearch. Подробнее о механизме снапшотов см. в документации OpenSearch
Резервное копирование средствами Yandex Cloud
Вы можете создавать резервные копии и восстанавливать кластеры из имеющихся резервных копий.
Также Managed Service for OpenSearch каждый час создает автоматическую резервную копию.
Получить список резервных копий
Вы можете получить список резервных копий, которые были созданы за последние 14 дней.
Чтобы получить список резервных копий кластера:
- Перейдите на страницу каталога и выберите сервис Managed Service for OpenSearch.
- Нажмите на имя нужного кластера и выберите вкладку
Резервные копии.
Чтобы получить список всех резервных копий в каталоге:
- Перейдите на страницу каталога и выберите сервис Managed Service for OpenSearch.
- Выберите вкладку
Резервные копии.
Если у вас еще нет интерфейса командной строки Yandex Cloud, установите и инициализируйте его.
По умолчанию используется каталог, указанный в профиле CLI. Вы можете указать другой каталог с помощью параметра --folder-name
или --folder-id
.
Чтобы получить список всех резервных копий в каталоге, выполните команду:
yc managed-opensearch backup list
Результат:
+----------------------+---------------------+-------------------+---------------------+
| ID | CREATED AT | SOURCE CLUSTER ID | STARTED AT |
+----------------------+---------------------+-------------------+---------------------+
| c9qlk4v13uq7******** | 2024-01-09 14:38:34 | c9qpm4i******** | 2024-01-09 14:38:28 |
| c9qpm90p3pcg******** | 2024-01-09 13:38:31 | c9qpm4i******** | 2024-01-09 13:38:28 |
+----------------------+---------------------+-------------------+---------------------+
Если вы хотите ограничить список резервных копий, который выводится после запуска команды, передайте в команде флаг --limit <количество_записей>
. Например, если вывод команды yc managed-opensearch backup list
занимает несколько экранов, выполните команду yc managed-opensearch backup list --limit 5
. Тогда вывод будет содержать список из последних пяти резервных копий.
Чтобы получить список резервных копий кластера, воспользуйтесь методом REST API listBackups для ресурса Cluster или вызовом gRPC API ClusterService/ListBackups и передайте в запросе идентификатор кластера в параметре clusterId
.
Идентификатор кластера можно получить со списком кластеров в каталоге.
Чтобы получить список резервных копий всех кластеров Managed Service for OpenSearch в каталоге, воспользуйтесь методом REST API list для ресурса Backup или вызовом gRPC API BackupService/List и передайте в запросе идентификатор каталога в параметре folderId
.
Получить информацию о резервной копии
Чтобы получить информацию о резервной копии существующего кластера:
- Перейдите на страницу каталога и выберите сервис Managed Service for OpenSearch.
- Нажмите на имя нужного кластера и выберите вкладку
Резервные копии.
Чтобы получить информацию о резервной копии удаленного ранее кластера:
- Перейдите на страницу каталога и выберите сервис Managed Service for OpenSearch.
- Выберите вкладку
Резервные копии.
Если у вас еще нет интерфейса командной строки Yandex Cloud, установите и инициализируйте его.
По умолчанию используется каталог, указанный в профиле CLI. Вы можете указать другой каталог с помощью параметра --folder-name
или --folder-id
.
Чтобы получить информацию о резервной копии кластера:
-
Получите идентификатор резервной копии вместе со списком всех резервных копий в каталоге:
yc managed-opensearch backup list
Идентификатор указан в столбце
ID
в выводе команды. -
Получите информацию о нужной резервной копии:
yc managed-opensearch backup get <идентификатор_резервной_копии>
Пример результата команды:
id: c9qlk4v13uq7******** folder_id: b1g86q4m5vej******** source_cluster_id: c9qpm4i******** started_at: "2024-01-09T10:38:28.683Z" created_at: "2024-01-09T10:38:31.685Z" indices: - .mdb-sli - .opendistro_security - .kibana_1 - .opendistro-job-scheduler-lock - .opensearch-observability - .opendistro-ism-config opensearch_version: 2.8.0 indices_total: "6"
Чтобы получить информацию о резервной копии, воспользуйтесь методом REST API get для ресурса Backup или вызовом gRPC API BackupService/Get и передайте в запросе идентификатор резервной копии в параметре backupId
.
Чтобы узнать идентификатор резервной копии, получите список резервных копий.
Создать резервную копию
- Перейдите на страницу каталога и выберите сервис Managed Service for OpenSearch.
- Нажмите на имя нужного кластера и выберите вкладку
Резервные копии. - Нажмите кнопку
Создать резервную копию.
Сервис начнет создавать резервную копию без дополнительного подтверждения.
Если у вас еще нет интерфейса командной строки Yandex Cloud, установите и инициализируйте его.
По умолчанию используется каталог, указанный в профиле CLI. Вы можете указать другой каталог с помощью параметра --folder-name
или --folder-id
.
Чтобы создать резервную копию данных кластера, выполните команду:
yc managed-opensearch cluster backup <имя_или_идентификатор_кластера>
Имя и идентификатор кластера можно запросить со списком кластеров в каталоге.
Чтобы создать резервную копию, воспользуйтесь методом REST API backup для ресурса Cluster или вызовом gRPC API ClusterService/Backup и передайте в запросе идентификатор кластера в параметре clusterId
.
Идентификатор кластера можно получить со списком кластеров в каталоге.
Важно
Во время создания резервной копии производительность кластера может снижаться.
Восстановить кластер из резервной копии
Восстанавливая кластер из резервной копии, вы создаете новый кластер с данными из резервной копии. Если в каталоге не хватает ресурсов для создания такого кластера, восстановиться из резервной копии не получится.
Для нового кластера необходимо задать все параметры, обязательные при его создании.
Чтобы восстановить из резервной копии существующий кластер:
- Перейдите на страницу каталога и выберите сервис Managed Service for OpenSearch.
- Нажмите на имя нужного кластера и выберите вкладку
Резервные копии. - Нажмите на значок
для нужной резервной копии, затем нажмите Восстановить кластер. - Задайте настройки нового кластера.
- Нажмите кнопку Восстановить кластер.
Чтобы восстановить из резервной копии удаленный ранее кластер:
- Перейдите на страницу каталога и выберите сервис Managed Service for OpenSearch.
- Выберите вкладку
Резервные копии. - Найдите нужную резервную копию по времени создания и идентификатору кластера. В колонке Идентификатор содержатся идентификаторы в формате
<идентификатор_кластера>:<идентификатор_резервной_копии>
. - Нажмите на значок
для нужной резервной копии, затем нажмите Восстановить кластер. - Задайте настройки нового кластера.
- Нажмите кнопку Восстановить кластер.
Managed Service for OpenSearch запустит операцию создания кластера из резервной копии.
Если у вас еще нет интерфейса командной строки Yandex Cloud, установите и инициализируйте его.
По умолчанию используется каталог, указанный в профиле CLI. Вы можете указать другой каталог с помощью параметра --folder-name
или --folder-id
.
Чтобы восстановить кластер из резервной копии:
-
Получите идентификатор резервной копии вместе со списком всех резервных копий в каталоге:
yc managed-opensearch backup list
Результат:
+----------------------+---------------------+-------------------+---------------------+ | ID | CREATED AT | SOURCE CLUSTER ID | STARTED AT | +----------------------+---------------------+-------------------+---------------------+ | c9qlk4v13uq7******** | 2024-01-09 14:38:34 | c9qpm4i******** | 2024-01-09 14:38:28 | | ... | +----------------------+---------------------+-------------------+---------------------+
Идентификатор резервной копии указан в столбце
ID
. Время завершения создания резервной копии указано в столбцеCREATED AT
в форматеyyyy-mm-dd hh:mm:ss
. -
Запросите создание кластера из резервной копии:
yc managed-opensearch cluster restore --backup-id <идентификатор_резервной_копии>
В команде также можно передать параметры, которые задаются при создании кластера. Описание таких параметров читайте в разделе Создание кластера.
Чтобы восстановить из резервной копии существующий кластер, воспользуйтесь методом REST API restore для ресурса Cluster или вызовом gRPC API ClusterService/Restore и передайте в запросе:
- Идентификатор нужной резервной копии в параметре
backupId
. Чтобы узнать идентификатор, получите список резервных копий в кластере. - Имя нового кластера, который будет содержать восстановленные из резервной копии данные, в параметре
name
. Имя кластера должно быть уникальным в рамках каталога. - Конфигурацию кластера в параметре
configSpec
. - Идентификатор сети в параметре
networkId
. - Идентификатор каталога, в котором должен быть размещен кластер, в параметре
folderId
.
Резервное копирование с помощью снапшотов
Для работы со снапшотами используется публичный API OpenSearch
Получить список снапшотов
-
Найдите в списке репозиториев OpenSearch тот, который содержит в себе резервные копии в виде снапшотов:
GET https://admin:<пароль>@<идентификатор_хоста_OpenSearch_с_ролью_DATA>.mdb.yandexcloud.net:9200/_snapshot/_all
Если нужного репозитория нет в списке, подключите его.
-
Получите список снапшотов в репозитории:
GET https://admin:<пароль>@<идентификатор_хоста_OpenSearch_с_ролью_DATA>.mdb.yandexcloud.net:9200/_snapshot/<имя_репозитория>/_all
Каждой резервной копии соответствует один снапшот.
Создать снапшот
-
Найдите в списке репозиториев OpenSearch тот, в котором нужно создать резервную копию в виде снапшота:
GET https://admin:<пароль>@<идентификатор_хоста_OpenSearch_с_ролью_DATA>.mdb.yandexcloud.net:9200/_snapshot/_all
Если нужного репозитория нет в списке, подключите его.
-
Создайте снапшот
нужных данных или целого кластера в выбранном репозитории:PUT https://admin:<пароль>@<идентификатор_хоста_OpenSearch_с_ролью_DATA>.mdb.yandexcloud.net:9200/_snapshot/<имя_репозитория>/<имя_снапшота>
Восстановить кластер из снапшота
Важно
При восстановлении из снапшота версия OpenSearch в кластере должна быть не ниже версии OpenSearch, в которой был сделан снапшот.
-
Создайте новый кластер OpenSearch в нужной конфигурации, но не наполняйте его данными.
При создании кластера выберите:
-
Количество и класс хостов, размер и тип хранилища исходя из размера снапшота и требований к быстродействию.
-
Версию OpenSearch, в которой был создан снапшот, или более новую.
-
-
Закройте открытые индексы с помощью OpenSearch API
:POST: https://admin:<пароль>@<идентификатор_хоста_OpenSearch_с_ролью_DATA>.mdb.yandexcloud.net:9200/<имя_индекса>/_close
Для восстановления всего кластера закройте все открытые индексы. Для восстановления отдельных индексов закройте только их.
-
Получите список резервных копий и найдите нужный снапшот.
-
Запустите операцию восстановления
из нужного снапшота всего кластера или отдельных индексов и потоков данных.