Я хотел настроить способ (с помощью GCP) автоматически и часто загружать копию / резервную копию одного экземпляра MongoDB, размещенного на mlab, и использовать его для восстановления / заполнения другого экземпляра MongoDB также на mlab. Мой мыслительный процесс был следующим:
- Создайте задание cron в GCP с помощью Cloud Scheduler. Это задание cron будет запускать сообщение по теме публикации / подписки каждую неделю.
- Затем я бы настроил облачную функцию, которая будет прослушивать эту тему pub / sub, чтобы облачная функция вызывалась каждую неделю.
- Наконец, в облачной функции (написанной на Python) я бы каким-то образом вызвал
mongodump
в моем экземпляре mlab mongodb. Затем я бы позвонилmongorestore
и загрузил резервную копию
Моя проблема в том, что mongodump
и mongorestore
являются общими утилитами командной строки и на самом деле не связаны с Python. Локально я мог бы просто установить их, однако я не думаю, что смогу сделать это с помощью облачной функции. Мои вопросы таковы,
- Есть ли способ использовать
mongodump
или загрузить резервную копию из облачной функции в Python? - Есть ли более простой способ выполнить весь этот процесс? (т.е. загружать резервную копию с GCP один раз в неделю)