前几天收到一封来自阿里云的邮件:
尊敬的用户:
您好!
感谢您长期对阿里云快照服务的信任与支持。为了满足更严格的数据合规要求以及提供更安全的数据保护服务。阿里云快照服务进行了重大优化升级,单云盘可创建并保留512个快照,其中包含256个手工快照以及256个自动快照。
这里就不解释什么是COW什么是ROW了,反正不知道阿里云用了什么黑科技可以为一块云盘保留512个快照,注意这里是每块云盘哈,这512个快照中有256个是留给自动快照的,这意味着我们可以每个小时为云盘做一个快照,并可以保留10天以上,在当下的敏感时期正好就可以启用这样的策略,让阿里云快照成为云上信息安全的最后一道防线,有了快照兜底,最坏情况就是让服务器恢复到十天之内的某个时间点。
如上图所示,现在可以创建这样的策略,每天创建24个快照,并选择持续保留,这样最早的快照会被冲掉,这样为一块云盘最多能够保留10天以上的快照。
作为用户,在选择一项服务时不仅会关注价值,同时也会关注成本,假如我们这样做了,需要付出多大的代价呢?
以下信息来自于阿里云官网:
性能差异10%,相信对于绝大多数用户都不会太在意。在成本上,阿里云快照会存储到OSS,将按照实际占用的OSS存储空间进行计费,可通过购买OSS存储资源包来进行抵扣,假如无可用的存储资源包进行按量计费。
以下信息来自于阿里云有关快照原理的描述:
云盘格式化后会在逻辑块地址(LBA)的基础上划分数据块(Block)。一旦数据块有业务数据写入,就将参与计量。云盘第一份快照是全量快照,不拷贝空数据块。后续快照均是增量快照,拷贝自上一个快照以来的增量业务数据和脏数据。
为了能够更好的理解上面这段话,让我们来做一个测试,一个50GB的系统盘。
做第一个快照,空间占用2.80G,看来空数据块很多呀。
给这台服务器挂载一块数据盘,30G。
直接做快照,空间占用0GB,因为全是空数据块。
分区和格式化,格式化过程中要在磁盘中很多数据块中写入元数据。
从服务器内部看这块数据盘的空间。
快照,已经有些许的空间占用了,占用0.65GB,而不是30G,是增量没错。
向数据盘写入1GB的数据。
做快照,快照容量2.31GB,发现增加的空间要小于1GB,这是什么道理?作为用户,咱们不用太去操心。
数据盘写入10GB的数据。
再次快照,快照容量13.34G,已经做了四次快照了,期间还向数据盘写入了11GB的数据。
好了,有关快照就说这么多了,在这个特殊的时期,这样的代价您能承受么?