Можно ли указать существующий экземпляр CloudSQL в качестве места назначения для службы миграции базы данных в GCP?

Согласно руководствам GCP, настройка миграции базы данных включает создание задания миграции в консоли с помощью мастера [1]. Мастер создает новый экземпляр CloudSQL, но я хотел бы указать существующий экземпляр, чтобы мы могли управлять целевым экземпляром через контроль версий (например, Terraform)

Можно ли указать существующий экземпляр CloudSQL в качестве места назначения для службы миграции базы данных в GCP? Если да, то как?

Если нет, то другим решением для контроля версий является создание задания миграции (и, возможно, экземпляра назначения) с помощью скрипта, выполняющего команды gcloud CLI/API.

Из руководства по API для миграции баз данных [2] следует, что нам нужно указать профиль подключения назначения.

destination-connection-profile-id: the destination connection profile ID

Это отражено в документации gcloud CLI [3]

--destination=DESTINATION
ID of the connection_profile or fully qualified identifier for the connection_profile. To set the connection_profile attribute:
provide the argument --destination on the command line.

Означает ли это, что для создания задания миграции через CLI мне нужно будет вручную создать целевой экземпляр CloudSQL и профиль подключения для этого экземпляра? Если да, то какие привилегии нужны пользователю подключения? Или команда "gcloud database-migration migration-jobs create" автоматически создает целевой экземпляр?

В противном случае, открыт для предложений о том, что может означать флаг --destination.

[1] https://cloud.google.com/database-migration/docs/mysql/create-migration-job

[2] https://cloud.google.com/database-migration/docs/mysql/api-migration-jobs#create_a_continuous_migration_job_with_reverse_ssh_connectivity

[3] https://cloud.google.com/sdk/gcloud/reference/database-migration/migration-jobs/create

1
задан 22 July 2021 в 08:56
1 ответ

Вы спросили следующие вопросы:

  • Можно ли указать существующий экземпляр CloudSQL в качестве места назначения для службы миграции базы данных в GCP?

  • Команда "gcloud database-migration migration-jobs create" {{ 1}} автоматически создать целевой экземпляр?

  • Означает ли это, что для создания задания миграции через интерфейс командной строки мне нужно будет вручную создать целевой экземпляр CloudSQL И профиль подключения для

  • Ответ на 1-й вопрос: Нет, это невозможно. Я считаю, что служба миграции базы данных всегда будет создавать новый экземпляр. При использовании мастера / консоли для выполнения службы миграции, когда вы нажимаете "создать место назначения" он автоматически создает для вас новый целевой экземпляр Cloud SQL. При использовании API ожидается, что вы создадите целевой профиль. См. Эту ссылку , где упоминается "Создание профиля подключения для Cloud SQL для MySQL назначения ..."Служба миграции базы данных для MySQL использует информацию в этом запросе для создания нового экземпляра Cloud SQL для MySQL . "

    Я думаю, что было бы довольно сложно заставить службу работать надежно {{ 1}}, если бы мы не создавали каждый раз новый экземпляр. Тем не менее, я думаю, что служба в том виде, в котором она существует сейчас, предназначена для поддержки большего количества опций в будущем, поэтому это может случиться, но я не вижу никаких доказательств того, что это можно сделать сейчас.

  • Ответ на второй вопрос: Нет, он не создает его. Когда вы запускаете , gcloud database-migration migration-jobs create »необходимо создать профили подключения источника и назначения и задать их в качестве параметров для этой команды в соответствии с документацией .

  • Ответ на третий вопрос: Нет. Для этого с помощью gcloud (или API) вам необходимо создать профили подключения источника и назначения, затем задание миграции и целевой экземпляр будет создано для вас в соответствии с формирование предусмотрено здесь .

Ваше беспокойство о том, как управлять этим с помощью terraform, вероятно, обосновано и, возможно, интересно, но terraform является сторонним продуктом, и Google не создает API-интерфейсы с учетом своей модели. Возможно, вы могли бы создать проблему с этим, и кто-нибудь с этой стороны сможет разобраться в этом.

0
ответ дан 28 July 2021 в 13:22

Теги

Похожие вопросы