DavidCao
1 Nickel

如果clone的状态是consistent condition是normal 时 source跟dest的数据是一样的吗?

转到解答

source 跟dest 在没有fracture的情况下   上面的数据是一样的吗?请详细解释一下。

标签 (1)
标记 (1)
0 项奖励
1 个已接受解答

已接受的解答
Roger_Wu
4 Ruthenium

Re: 如果clone的状态是consistent condition是normal 时 source跟dest的数据是一样的吗?

转到解答

按照Clone的原理,fracture后,新的I/O就会被记入fracture log  (基于bitmap),以备将来再一次同步,或者reverse sync  (反向同步)使用。

这时你点击synchronizing  (同步的是增量数据),或者reserve sync (源LUN回退到Clone时间点的状态),数据需要根据fracture log中的bitmap,反映在LUN上。因此如果期间I/O较多,或者两次同步时间间隔较长,所需的时间就越久。

0 项奖励
11 条回复11
Roger_Wu
4 Ruthenium

Re: 如果clone的状态是consistent condition是normal 时 source跟dest的数据是一样的吗?

转到解答

Clone如果仍然是consistent state说明两边数据当时是相同的,但如果此时立即fracture而不先quiesce I/O,那clone LUN就可能没法写入后续源LUN接收到的写I/O了。如果要确保fracture后的clone和源LUN一模一样,主机必须没有新的写入。Synchronized state就是这样的一个状态。

当然一些特殊情况下,在consistent state时也可以直接fracture,比如:

1. 你已经100%确认不会再有新的I/O写入源LUN

2. 你要的就是一个可能不完整的clone image

3. 应用有内建的机制可以判断并忽略在执行fracture时间点之后才收到的数据

DavidCao
1 Nickel

Re: 如果clone的状态是consistent condition是normal 时 source跟dest的数据是一样的吗?

转到解答

如何quiesce i/o  在storage上?

我们每次都是直接fracture掉 然后下次再做synchronize

那我们这种情况下怎么能看出来 这次需要传输多少数据呢? 也就说我们怎么能看出来clone的速度是快还是慢呢?每次在gui上面只是看到一个百分比  也不知道它其他的信息

0 项奖励
Highlighted
Roger_Wu
4 Ruthenium

Re: 如果clone的状态是consistent condition是normal 时 source跟dest的数据是一样的吗?

转到解答

Quiesce I/O都是在源LUN挂载的那台主机上做的。一般停掉或迁移走应用负载,I/O就下来了。

如果是配置好Clone的第一次同步,那就是一次完整的同步,这个应该很好估算(如果没有历史经验参考,也可以建一个测试LUN然后同步一次看看)。后续同步就是增量了,这个确实比较难估算。

DavidCao
1 Nickel

Re: 如果clone的状态是consistent condition是normal 时 source跟dest的数据是一样的吗?

转到解答

好的 谢谢

如果我有一个新的lun 放到storage group里面去  在host上面对lun 搞了一个分区表 然后搞了一个clone group 同步到clone lun上面  那会不会很快就能同步完呢(因为上面没数据呀)?

我在vmax发现 即使source上面没数据(不知道有没有数据 是一个新lun)搞第一次同步也要很久

0 项奖励
Roger_Wu
4 Ruthenium

Re: 如果clone的状态是consistent condition是normal 时 source跟dest的数据是一样的吗?

转到解答

按照块(block)存储的机制,存储无法感知到LUN上实际内容的,因此建一个空LUN与上面拷满数据的LUN,两者clone所需时间应该一样。VMAX也是块存储,因此空LUN同步也要很久。

如果实在不放心,那你就建一个LUN再拷一些数据上去好了,也没多久

0 项奖励
DavidCao
1 Nickel

Re: 如果clone的状态是consistent condition是normal 时 source跟dest的数据是一样的吗?

转到解答

恩 有道理

又上班了 继续提问。。

当生成了clone 后,source lun会syncing到clone lun,当第一次完成之后会变成consistent的状态,这个时候往source lun上面写的数据在后台仍然会copy到clone lun上面,也就是说这个时候source lun跟clone lun上面的数据是相同的, 但是这个时候如果点击 synchronizing 的话, 为什么还是需要很久才能同步完呢?(好像记得是这样,所以感觉有些问题)

0 项奖励
Roger_Wu
4 Ruthenium

Re: 如果clone的状态是consistent condition是normal 时 source跟dest的数据是一样的吗?

转到解答

按照Clone的原理,fracture后,新的I/O就会被记入fracture log  (基于bitmap),以备将来再一次同步,或者reverse sync  (反向同步)使用。

这时你点击synchronizing  (同步的是增量数据),或者reserve sync (源LUN回退到Clone时间点的状态),数据需要根据fracture log中的bitmap,反映在LUN上。因此如果期间I/O较多,或者两次同步时间间隔较长,所需的时间就越久。

0 项奖励
wangjun_li
1 Nickel

Re: 如果clone的状态是consistent condition是normal 时 source跟dest的数据是一样的吗?

转到解答

为何同一个clon group里面的clon 速率不一样

0 项奖励
Roger_Wu
4 Ruthenium

Re: 如果clone的状态是consistent condition是normal 时 source跟dest的数据是一样的吗?

转到解答

看到你问的是楼主,不知道你是自己遇到了类似问题,还是想和楼主确认一下背景信息?

我自己觉得,不同clone速率不同应该还是初始条件以及clone中存储I/O负担的不同造成的。

0 项奖励