【发布时间】:2018-08-06 08:50:51
【问题描述】:
我在 Google Compute Engine 虚拟机实例上部署了 Docker 映像(请参阅 containers on compute engine)。我想对此实例及其磁盘执行定期、自动备份。
Container-Optimized OS 有一些限制,不允许实施像google-compute-snapshot 这样需要安装系统包的解决方案。
关于我应该如何自动执行此任务的任何建议?
【问题讨论】:
我在 Google Compute Engine 虚拟机实例上部署了 Docker 映像(请参阅 containers on compute engine)。我想对此实例及其磁盘执行定期、自动备份。
Container-Optimized OS 有一些限制,不允许实施像google-compute-snapshot 这样需要安装系统包的解决方案。
关于我应该如何自动执行此任务的任何建议?
【问题讨论】:
您可以获取附加到 GCP 实例的任何永久磁盘的 snapshot(无论您的 VM 是否具有容器优化的操作系统)。
为了对快照执行自动化,您可以在 shell 脚本的帮助下使用“gcloud command for snapshot”。然后,此脚本可以在 cron job 的帮助下自动运行,这将最终生成快照备份的自动化(请查看 this link 了解更多详细信息)。
此外,Google Cloud Platform 中还有用于自动快照管理的“Feature Request”。您也可以在那里推荐您宝贵的 cmets。
【讨论】:
确保您的容器相关数据存储在永久性磁盘上。然后安装 Google Cloud SDK 以便在您的本地机器上获取 gcloud 计算命令。或者使用现成的 Google Cloud Shell。
然后拍摄永久性磁盘的快照。为确保快照与永久磁盘的所需状态一致,最佳做法是暂停它。即使您的应用程序将数据写入磁盘,您也可以创建永久性磁盘的快照。
用途:
$ gcloud compute disks snapshot [DISK_NAME]
这是您获得根目录或数据卷屏幕截图所需的唯一命令。
【讨论】: