G06F11/14
1.一种实时快照扩容方法,其特征在于,包括以下步骤:
接收快照源卷扩容的指令;
根据接收的快照源卷扩容的指令,判断目标卷所在的存储池剩余容量是否满足扩容;如果满足扩容,所述目标卷向所在存储池剩余容量申请待扩容容量;判断源卷所在的存储池剩余容量是否满足扩容;如果满足扩容,所述源卷向所在存储池剩余容量申请待扩容容量;
计算所述待扩容容量所需位图;判断位图剩余容量是否满足待扩容容量所需位图;如果满足,则将所需位图设置为已拷贝。
2.根据权利要求1所述的一种实时快照扩容方法,其特征在于,在接收快照源卷扩容的指令之后,还包括暂停源卷所在主机。
3.根据权利要求1所述的一种实时快照扩容方法,其特征在于,所述判断目标卷所在的存储池剩余容量是否满足扩容包括:
如果源卷和目标卷在相同的存储池,则存储池的剩余容量大于待扩容容量的两倍,满足扩容;
如果源卷和目标卷在不同的存储池,则目标卷所在存储池的剩余容量大于待扩容容量,满足扩容。
6.根据权利要求3所述的一种实时快照扩容方法,其特征在于,
如果目标卷所在的存储池剩余容量不满足扩容;则返回源卷扩容失败,并恢复源卷主机;
如果源卷所在的存储池剩余容量不满足扩容;则对已扩容的目标卷缩容扩容前的容量,并返回源卷扩容失败,恢复源卷主机。
4.根据权利要求1所述的一种实时快照扩容方法,其特征在于,所述判断源卷所在的存储池剩余容量是否满足扩容包括:
所述源卷所在的存储池剩余容量大于待扩容容量,满足扩容。
5.根据权利要求4所述的一种实时快照扩容方法,其特征在于,所述源卷向所在存储池剩余容量申请待扩容容量之后,将所述待扩容容量空间进行格式化操作。
7.根据权利要求1所述的一种实时快照扩容方法,其特征在于,如果位图剩余容量不满足待扩容容量所需位图,则对已经扩容的目标卷和源卷均执行缩容操作,将目标卷和源卷均缩容至扩容前的容量,并返回源卷扩容失败,恢复源卷主机。
8.一种实时快照扩容系统,其特征在于,包括接收模块、判断扩容模块和计算设置模块;
所述接收模块用于接收快照源卷扩容的指令;
所述判断扩容模块用于根据接收的快照源卷扩容的指令,判断目标卷所在的存储池剩余容量是否满足扩容;如果满足扩容,所述目标卷向所在存储池剩余容量申请待扩容容量;判断源卷所在的存储池剩余容量是否满足扩容;如果满足扩容,所述源卷向所在存储池剩余容量申请待扩容容量;
所述计算设置模块用于计算所述待扩容容量所需位图;判断位图剩余容量是否满足待扩容容量所需位图;如果满足,则将所需位图设置为已拷贝。
9.根据权利要求8所述的一种实时快照扩容系统,其特征在于,所述判断扩容模块包括第一判断扩容模块和第二判断扩容模块;
所述第一判断扩容模块用于根据接收的快照源卷扩容的指令,判断目标卷所在的存储池剩余容量是否满足扩容;如果满足扩容,所述目标卷向所在存储池剩余容量申请待扩容容量;
所述第二判断扩容模块用于判断源卷所在的存储池剩余容量是否满足扩容;如果满足扩容,所述源卷向所在存储池剩余容量申请待扩容容量。
本发明属于存储灾备技术领域,特别涉及一种实时快照扩容方法和系统。
快照是一种基于时间点的数据保护技术。当对一个卷创建了快照之后,快照关系中的目标卷就拥有了创建快照时刻源卷中相同的数据。之后当源卷数据被修改,目标卷中的数据仍然会保持不变,这就达到了保护数据的目的。
卷扩容技术可以使一个已有的卷容量增大,从而达到存储更多数据的目的。两个卷之间可以创建快照关系的前提条件是这两个卷的容量必须一样大。当创建完快照关系后,存储系统会生成一个位图用于管理该快照关系。此时无论是源卷还是目标卷都无法执行卷扩容操作。因为一旦某一个或两个卷容量发生改变,这块多出来的区域没有对应的位图进行管理,就会出现数据不一致现象,这样就达不到使用快照保护数据的目的了。如果想实现卷扩容,就必须先断开快照关系,对两个卷都扩容后,再重新建立快照关系。这样操作不但繁琐,而且如果快照进度未完成时断开快照关系,也会出现数据不一致的后果。
为了解决上述技术问题,本发明提出了一种实时快照扩容方法和系统,能在不断开快照关系的前提下进行卷扩容操作。
为实现上述目的,本发明采用以下技术方案:一种实时快照扩容方法,包括以下步骤:
接收快照源卷扩容的指令;
根据接收的快照源卷扩容的指令,判断目标卷所在的存储池剩余容量是否满足扩容;如果满足扩容,所述目标卷向所在存储池剩余容量申请待扩容容量;判断源卷所在的存储池剩余容量是否满足扩容;如果满足扩容,所述源卷向所在存储池剩余容量申请待扩容容量;
计算所述待扩容容量所需位图;判断位图剩余容量是否满足待扩容容量所需位图;如果满足,则将所需位图设置为已拷贝。
进一步的,在接收快照源卷扩容的指令之后,还包括暂停源卷所在主机。
进一步的,所述判断目标卷所在的存储池剩余容量是否满足扩容包括:
如果源卷和目标卷在相同的存储池,则存储池的剩余容量大于待扩容容量的两倍,满足扩容;
如果源卷和目标卷在不同的存储池,则目标卷所在存储池的剩余容量大于待扩容容量,满足扩容。
进一步的,所述判断源卷所在的存储池剩余容量是否满足扩容包括:
所述源卷所在的存储池剩余容量大于待扩容容量,满足扩容。
进一步的,所述源卷向所在存储池剩余容量申请待扩容容量之后,将所述待扩容容量空间进行格式化操作。
进一步的,如果目标卷所在的存储池剩余容量不满足扩容;则返回源卷扩容失败,并恢复源卷主机;
如果源卷所在的存储池剩余容量不满足扩容;则对已扩容的目标卷缩容至扩容前的容量,并返回源卷扩容失败,恢复源卷主机。
进一步的,如果位图剩余容量不满足待扩容容量所需位图,则对已经扩容的目标卷和源卷均执行缩容操作,将目标卷和源卷均缩容至扩容前的容量,并返回源卷扩容失败,恢复源卷主机。
本发明还提出了一种实时快照扩容系统,包括接收模块、判断扩容模块和计算设置模块;
所述接收模块用于接收快照源卷扩容的指令;
所述判断扩容模块用于根据接收的快照源卷扩容的指令,判断目标卷所在的存储池剩余容量是否满足扩容;如果满足扩容,所述目标卷向所在存储池剩余容量申请待扩容容量;判断源卷所在的存储池剩余容量是否满足扩容;如果满足扩容,所述源卷向所在存储池剩余容量申请待扩容容量;
所述计算设置模块用于计算所述待扩容容量所需位图;判断位图剩余容量是否满足待扩容容量所需位图;如果满足,则将所需位图设置为已拷贝。
进一步的,所述判断扩容模块包括第一判断扩容模块和第二判断扩容模块;
所述第一判断扩容模块用于根据接收的快照源卷扩容的指令,判断目标卷所在的存储池剩余容量是否满足扩容;如果满足扩容,所述目标卷向所在存储池剩余容量申请待扩容容量;
所述第二判断扩容模块用于判断源卷所在的存储池剩余容量是否满足扩容;如果满足扩容,所述源卷向所在存储池剩余容量申请待扩容容量。
如图1为本发明实施例1一种实时快照扩容方法流程图;
如图2为本发明实施例2一种实时快照扩容系统示意图。
为能清楚说明本方案的技术特点,下面通过具体实施方式,并结合其附图,对本发明进行详细阐述。下文的公开提供了许多不同的实施例或例子用来实现本发明的不同结构。为了简化本发明的公开,下文中对特定例子的部件和设置进行描述。此外,本发明可以在不同例子中重复参考数字和/或字母。这种重复是为了简化和清楚的目的,其本身不指示所讨论各种实施例和/或设置之间的关系。应当注意,在附图中所图示的部件不一定按比例绘制。本发明省略了对公知组件和处理技术及工艺的描述以避免不必要地限制本发明。
实施例1
本发明实施例1提出了一种实时快照扩容方法可以在不断开快照关系的前提下进行卷扩容操作。包括以下步骤:
接收快照源卷扩容的指令。
暂停源卷所在主机。
根据接收的快照源卷扩容的指令,判断目标卷所在的存储池剩余容量是否满足扩容;如果满足扩容,目标卷向所在存储池剩余容量申请待扩容容量;判断源卷所在的存储池剩余容量是否满足扩容;如果满足扩容,所源卷向所在存储池剩余容量申请待扩容容量。
计算待扩容容量所需位图;判断位图剩余容量是否满足待扩容容量所需位图;如果满足,则将所需位图设置为已拷贝。
如图1为本发明实施例1一种实时快照扩容方法流程图。
在步骤S101中,接收快照源卷扩容的指令。
在步骤S102中,暂停源卷所在主机。
在步骤S103中,判断目标卷所在的存储池剩余容量是否满足扩容;如果源卷和目标卷在相同的存储池,则存储池的剩余容量大于待扩容容量的两倍,满足扩容;如果源卷和目标卷在不同的存储池,则目标卷所在存储池的剩余容量大于待扩容容量,满足扩容。如果满足扩容至执行步骤S104。如果不满足,则执行步骤S110。
在步骤S104中,目标卷向所在存储池剩余容量申请待扩容容量。
在步骤S105中,判断源卷所在的存储池剩余容量是否满足扩容。源卷所在的存储池剩余容量大于待扩容容量,满足扩容。如果满足,则执行步骤S107,如果不满足,则执行步骤S106。
在步骤S106中,对已扩容的目标卷缩容至扩容前的容量。源卷扩容后,仍与目标卷容量保持一致。虽然不执行步骤S104、S105和S106,也不会影响到本次快照的数据一致性。但是如果用户想再次启动这个快照时,就会出现源卷与目标卷容量不相同,从而无法正常启动的问题。
在步骤S107中,源卷向所在存储池剩余容量申请待扩容容量
在步骤S108中,判断位图剩余容量是否满足待扩容容量所需位图。如果满足,则执行步骤S112,如果不满足,则执行步骤S109。位图用于管理快照关系中从源卷向目标卷拷贝数据操作的一个数组结构。数组中每一个元素大小为1bit,用于标记源卷中某块固定大小(比如256KB)数据是否已经从源卷拷贝到了目标卷。若已拷贝,则将位图对应bit置为1;若为拷贝,则置为0.
在步骤S109中,将目标卷和源卷均缩容至扩容前的容量。
在步骤S110中,返回源卷扩容失败。
在步骤S111中,恢复源卷主机。
在步骤S112中,将所需位图设置为已拷贝,根据位图信息更新快照进度。在本发明中,将所需位图全部置位为1。由于快照是基于时间点的数据保护,在创建快照的时候,源卷没有待扩容容量的空间,因此在源卷扩容后,不需要将这段空间中的数据拷贝到目标卷,因此可以将这段空间的位图全部置为已拷贝。这样做也大大减少了无用数据的拷贝,降低了系统的性能压力。
如果该快照关系设置了后台拷贝速率,则扩容过程中无需将后台拷贝操作禁用。因为后台拷贝操作是根据位图来判断源卷哪些位置的数据需要向目标卷拷贝。由于位图的扩展位于最后,因此不会出现源卷还未进行扩容却需要拷贝扩容后位置数据的现象。
在步骤S113中,报告卷扩容成功。
实施例2
本发明实施例2还提出了一种实时快照扩容系统。如图2给出了本发明实施例1一种实时快照扩容系统示意图,该系统包括接收模块、判断扩容模块和计算设置模块;
接收模块用于接收快照源卷扩容的指令;
判断扩容模块用于根据接收的快照源卷扩容的指令,判断目标卷所在的存储池剩余容量是否满足扩容;如果满足扩容,所述目标卷向所在存储池剩余容量申请待扩容容量;判断源卷所在的存储池剩余容量是否满足扩容;如果满足扩容,源卷向所在存储池剩余容量申请待扩容容量;
计算设置模块用于计算所述待扩容容量所需位图;判断位图剩余容量是否满足待扩容容量所需位图;如果满足,则将所需位图设置为已拷贝。
判断扩容模块包括第一判断扩容模块和第二判断扩容模块;
第一判断扩容模块用于根据接收的快照源卷扩容的指令,判断目标卷所在的存储池剩余容量是否满足扩容;如果满足扩容,目标卷向所在存储池剩余容量申请待扩容容量;
第二判断扩容模块用于判断源卷所在的存储池剩余容量是否满足扩容;如果满足扩容,源卷向所在存储池剩余容量申请待扩容容量。
上述虽然结合附图对本发明的具体实施方式进行了描述,但并非对本发明保护范围的限制。对于所属领域的技术人员来说,在上述说明的基础上还可以做出其它不同形式的修改或变形。这里无需也无法对所有的实施方式予以穷举。在本发明的技术方案的基础上,本领域技术人员不需要付出创造性劳动即可做出的各种修改或变形仍在本发明的保护范围以内。
本文发布于:2023-04-15 01:02:07,感谢您对本站的认可!
本文链接:https://patent.en369.cn/patent/3/86960.html
版权声明:本站内容均来自互联网,仅供演示用,请勿用于商业和其他非法用途。如果侵犯了您的权益请与我们联系,我们将在24小时内删除。
留言与评论(共有 0 条评论) |