Рейтинг:0

Как Google Cloud Platform обрабатывает резервные копии базы данных с флагом --async?

флаг za

В настоящее время я работаю над добавлением дополнительного шага в конвейер CI/CD нашей компании, чтобы мы делали резервные копии базы данных, прежде чем выполнять развертывание, которое потенциально может запускать миграции в нашей базе данных.

Чтобы сделать резервную копию, я аутентифицируюсь в Google Cloud Platform с помощью команды: gcloud auth активировать-сервис-аккаунт --key-file /path/to/keyfile.json

После аутентификации я использую команду: резервные копии gcloud sql create --async --instance имя_экземпляра

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

Как Google на самом деле справляется с созданием резервных копий? Делают ли они моментальный снимок базы данных в этот момент времени, а затем делают резервную копию? Будет ли безопаснее удалить флаг --async, чтобы убедиться, что резервное копирование завершено, прежде чем запускать какие-либо потенциальные миграции?

Я пытался посмотреть документацию, но на самом деле это не вдается в подробности.

Рейтинг:0
флаг us

Я думаю, что для снимка лучше не использовать --асинхронный, если вы действительно не уверены, что ваша следующая операция в CI/CD не будет мешать операции создания моментального снимка.

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

Просто, как пример: вы не можете экспортировать несколько баз данных через gcloud sql экспорт sql одновременно. Вы должны дождаться завершения первого запуска, иначе второе выполнение не удастся!

Надеюсь, это поможет!

Рейтинг:0
флаг jp

Мы можем узнать статус процесса резервного копирования, используя эти команды:

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

  2. Использовать операции gcloud sql описывают команда для получения операции положение дел. Подробнее см. здесь

Команду --async см. гугл документ. Похоже, выполнение вернется к другим заданиям, а резервное копирование продолжится в фоновом режиме.

флаг za
Я так понимаю, это означает, что создание резервной копии с флагом --async означает, что не будет никакой гарантии, что резервная копия не завершится частичной миграцией. Выбран только запуск миграции без флага --async.

Ответить или комментировать

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