首页 文章

附加持久磁盘的实例的Google Compute Engine快照失败

提问于
浏览
3

我有一个工作的VM实例,我正在尝试复制,以允许谷歌负载均衡器后面的冗余 . 使用虚拟实例的测试运行正常,从正在运行的实例的快照创建新实例 . 现在,真正的“原始”实例附加了持久性磁盘,这会导致启动克隆实例时出现问题,因为(显然)缺少持久磁盘挂载 . 串行控制台输出的日志如下:

* Stopping cold plug devices[74G[ OK ] * Stopping log initial device creation[74G[ OK ] * Starting enable remaining boot-time encrypted block devices[74G[ OK ] The disk drive for /mnt/XXXX-log is not ready yet or not present. keys:Continue to wait, or Press S to skip mounting or M for manual recovery

据我所知,没有办法将任何这些关键笔划发送到实例,还有其他方法可以解决这个问题吗?我知道我可以在快照之前卸载磁盘,但我想要设置的工作流程是创建 生产环境 服务器的周期快照,因此每次执行磁盘之前卸载磁盘都需要实例停机(加上所有不必要的风险)一个看起来毫无意义的行动) .

有没有办法成功启动这种类型的克隆实例,然后附加一个新的持久性磁盘?

这是因为原始持久性磁盘正在使用中,或者即使原始实例处于脱机状态也会发生同样的问题(例如,由于失败,我会尝试从快照创建新实例)?

2 回答

  • 1

    我用来摆脱同一问题的一个解决方法是,我实际上并没有卸载磁盘而只是注释掉 /etc/fstab 中的挂载行并拍摄快照 . 这样,我的实例在进行快照时没有停机或磁盘不足 . (如果重要,我使用Ubuntu 14.04 作为操作系统)

    稍后,当我在新实例上使用该快照时,我修复并取消注释它 . 但是,您还可以考虑在注释行中添加 nofail 选项以获得更好的解决方案 .

    顺便说一下,我正在做一个类似的任务, Build 一个带有多个webserver节点的负载均衡设置 . 每个都是从所述快照克隆的,其中安装了额外的永久磁盘,例如上传,数据和日志等

  • 0

    关于你想要完成什么,我有点不清楚 . 听起来您希望定期快照 生产环境 服务器的数据卷,以便以后可以克隆它们 .

    很有可能,您只需要在创建快照之前同步和fsfreeze,而不是仅仅卸载/重新安装它 . GCP文档在Snapshots documentation中有一个基本示例 .

相关问题