我的数据库服务器上安装了 3 个 SSD EBS 卷。主数据量10TB,日志量1TB,第三卷100GB。
当我对这 3 个卷进行快照时,1TB 日志卷的快照时间始终比 10TB 数据卷长得多,即使它只使用了大约 100GB 的空间。(已经超过 8 小时,只完成了 55%。10TB 快照大约在 2 小时后完成)。
我能做些什么来加快这个过程吗?
我的数据库服务器上安装了 3 个 SSD EBS 卷。主数据量10TB,日志量1TB,第三卷100GB。
当我对这 3 个卷进行快照时,1TB 日志卷的快照时间始终比 10TB 数据卷长得多,即使它只使用了大约 100GB 的空间。(已经超过 8 小时,只完成了 55%。10TB 快照大约在 2 小时后完成)。
我能做些什么来加快这个过程吗?
EC2 构建快照所需的时间与卷自上次快照以来看到的已修改块的数量成正比。就您的日记而言,会看到很多写入/删除操作,因此需要很长时间才能捕捉到这一点也就不足为奇了。
请记住,这些都是真正的块设备。他们对您的文件系统一无所知。日志卷目前可能只使用了 100GB,但自上次快照以来,它的每个块都可能已被修改。占用这些块的一些文件已被删除,因此它们不会在您的文件系统中显示为“已使用”,但块设备本身对此一无所知,因此它必须捕捉所有这些数据。(顺便说一句,这也是为什么 AWS 无法在没有可以在文件系统级别查询存储的服务器端代理的情况下报告 EBS 卷中存储了多少数据的原因。)
为了缓解,您可以尝试拍摄更频繁的快照。
一个问题,不过......你为什么关心它需要多长时间?一旦 API 调用从您的快照创建请求返回,您就可以继续使用该卷,并且对块设备的任何后续修改都不会包含在快照中。