Миграция базы данных YDB в другую зону доступности
Имеет смысл выполнять миграцию в другую зону доступности только для Dedicated базы данных YDB. К Serverless БД миграция не применяется.
Dedicated БД располагается в нескольких зонах доступности региона центральной России ru-central1
. Вы можете заменить одну зону на другую. Для этого:
-
Создайте подсеть в зоне доступности, в которую вы переносите БД.
-
Переместите базу данных YDB в новый набор подсетей:
Yandex Cloud CLITerraformЕсли у вас еще нет интерфейса командной строки Yandex Cloud, установите и инициализируйте его.
По умолчанию используется каталог, указанный в профиле CLI. Вы можете указать другой каталог с помощью параметра
--folder-name
или--folder-id
.Выполните команду:
yc ydb database update <имя_БД> \ --subnet-id <идентификатор_подсети_в_зоне_ru-central1-a> \ --subnet-id <идентификатор_подсети_в_зоне_ru-central1-b> \ --subnet-id <идентификатор_подсети_в_зоне_ru-central1-d>
Если у вас еще нет Terraform, установите его и настройте провайдер Yandex Cloud.
-
Откройте конфигурационный файл Terraform с планом инфраструктуры и измените фрагмент с описанием БД:
resource "yandex_ydb_database_dedicated" "<название_БД>" { ... subnet_ids = [<идентификаторы_подсетей>] ... }
В параметре
subnet_ids
перечислите через запятую идентификаторы подсетей в зонах доступностиru-central1-a
,ru-central1-b
иru-central1-d
. -
Примените изменения:
-
В терминале перейдите в папку, где вы отредактировали конфигурационный файл.
-
Проверьте корректность конфигурационного файла с помощью команды:
terraform validate
Если конфигурация является корректной, появится сообщение:
Success! The configuration is valid.
-
Выполните команду:
terraform plan
В терминале будет выведен список ресурсов с параметрами. На этом этапе изменения не будут внесены. Если в конфигурации есть ошибки, Terraform на них укажет.
-
Примените изменения конфигурации:
terraform apply
-
Подтвердите изменения: введите в терминале слово
yes
и нажмите Enter.
-
-
Миграция в Yandex Data Transfer
Если вы используете трансфер типа Репликация или Копирование и репликация и ваша БД выступает в роли эндпоинта, после смены подсетей в БД перезапустите трансфер одним из двух способов:
Чтобы перезапустить трансфер, выберите один из двух способов:
- Деактивируйте трансфер и дождитесь его перехода в статус Остановлен. Затем активируйте трансфер и дождитесь его перехода в статус Реплицируется.
- Измените какую-либо настройку трансфера или эндпоинта.
Подробнее см. в разделе Миграция эндпоинтов и трансфера Data Transfer в другую зону доступности.