【发布时间】:2020-05-20 18:54:52
【问题描述】:
我想建立一种方法(使用 GCP)来自动且频繁地下载托管在 mlab 上的一个 MongoDB 实例的副本/备份,并使用它来恢复/填充也在 mlab 上的另一个 MongoDB 实例。我的思考过程如下:
- 使用 Cloud Scheduler 在 GCP 上创建一个 cron 作业。这个 cron 作业每周都会触发一条关于 pub/sub 主题的消息。
- 接下来,我将设置一个云函数来侦听此发布/订阅主题,因此云函数每周都会被调用
- 最后,在云函数(用 Python 编写)中,我会以某种方式在我的 mlab mongodb 实例上调用
mongodump。然后我会用下载的备份调用mongorestore
我的问题是 mongodump 和 mongorestore 是通用命令行实用程序,与 Python 没有真正的关联。在本地,我可以只安装它们,但是,我认为我不能使用云功能来做到这一点。我的问题是这样的,
- 我有没有办法使用
mongodump或从 Python 中的云函数下载备份? - 有没有更简单的方法来完成整个过程? (即每周从 GCP 下载一次备份)
【问题讨论】:
标签: mongodb google-cloud-functions mlab mongodump google-cloud-scheduler