CN109871183A - 一种虚拟机磁盘精简的方法及装置 - Google Patents

一种虚拟机磁盘精简的方法及装置 Download PDF

Info

Publication number
CN109871183A
CN109871183A CN201811221107.3A CN201811221107A CN109871183A CN 109871183 A CN109871183 A CN 109871183A CN 201811221107 A CN201811221107 A CN 201811221107A CN 109871183 A CN109871183 A CN 109871183A
Authority
CN
China
Prior art keywords
size
disk
virtual machine
logical volume
dilatation
Prior art date
Legal status (The legal status is an assumption and is not a legal conclusion. Google has not performed a legal analysis and makes no representation as to the accuracy of the status listed.)
Granted
Application number
CN201811221107.3A
Other languages
English (en)
Other versions
CN109871183B (zh
Inventor
佘文魁
杨帆
许成林
何明阳
田富强
何亮
杜平
刘俊
Current Assignee (The listed assignees may be inaccurate. Google has not performed a legal analysis and makes no representation or warranty as to the accuracy of the list.)
SICHUAN ZHONGDIAN VENUS INFORMATION TECHNOLOGY Co Ltd
State Grid Information and Telecommunication Co Ltd
Original Assignee
SICHUAN ZHONGDIAN VENUS INFORMATION TECHNOLOGY Co Ltd
State Grid Information and Telecommunication Co Ltd
Priority date (The priority date is an assumption and is not a legal conclusion. Google has not performed a legal analysis and makes no representation as to the accuracy of the date listed.)
Filing date
Publication date
Application filed by SICHUAN ZHONGDIAN VENUS INFORMATION TECHNOLOGY Co Ltd, State Grid Information and Telecommunication Co Ltd filed Critical SICHUAN ZHONGDIAN VENUS INFORMATION TECHNOLOGY Co Ltd
Publication of CN109871183A publication Critical patent/CN109871183A/zh
Application granted granted Critical
Publication of CN109871183B publication Critical patent/CN109871183B/zh
Active legal-status Critical Current
Anticipated expiration legal-status Critical

Links

Landscapes

  • Signal Processing For Digital Recording And Reproducing (AREA)
  • Information Retrieval, Db Structures And Fs Structures Therefor (AREA)

Abstract

本发明公开了一种虚拟机磁盘精简的方法及装置,包括:将虚拟机磁盘镜像创建在预设的逻辑卷中,在当前虚拟机磁盘镜像为qcow2的情况下,计算虚拟机磁盘镜像中实际使用的磁盘大小;获取虚拟机磁盘镜像所在的逻辑卷的大小;并依据该虚拟机磁盘镜像实际使用的磁盘大小,对所述逻辑卷进行扩容。由此可知,实现了存储空间是依据磁盘实际的使用大小进行扩容,这样,提高了磁盘空间的利用率。

Description

一种虚拟机磁盘精简的方法及装置
本申请要求于2018年07月10日提交中国专利局、申请号为201810750715.7、发明名称为“一种虚拟机磁盘精简的方法及装置”的国内申请的优先权,其全部内容通过引用结合在本申请中。
技术领域
本发明涉及数据存储领域,尤其涉及一种虚拟机磁盘镜像精简的方法及装置。
背景技术
在虚拟化系统中,为了满足越来越大的存储需求、并提高存储效率,通常采用精简磁盘的方式对数据进行存储。磁盘精简可以理解为利用宿主文件系统空洞技术来节省虚拟机磁盘所占用的物理磁盘空间,以达到按需增长。例如:假设现有创建一个磁盘大小为100G的精简虚拟机,其磁盘占用的初始物理空间可能不到10G,其余90G为文件系统空洞,但随着虚拟机存储数据量的增加,将会不断的向这些空洞中写入数据,虚拟机磁盘可以在不超过100G空间的范围内根据需要自动增长。
现有技术中,磁盘精简的方案通常是基于qcow2格式实现的,但是qcow2格式通常使用分布式文件系统并以文件的形式进行存储,而在集中式存储上采用qcow2格式进行磁盘精简会存在如下的问题:由于不知道节点需要多大的空间而只能按主观估计进行容量划分,使用过程中容易出现部分存储空间不足而部分节点存储空间过剩的问题,从而导致存储空间利用率低的问题。
发明内容
有鉴于此,本发明公开了一种虚拟机磁盘精简的方法与装置,解决了现有技术中磁盘空间的利用低的问题。
本发明实施例公开了一种虚拟机磁盘精简的方法,所述方法应用于集中式存储,包括:
在当前虚拟机磁盘镜像的格式为qcow2的情况下,计算虚拟机磁盘镜像实际使用的磁盘大小;所述当前虚拟机磁盘镜像创建在预设的逻辑卷中;
获取所述虚拟机磁盘镜像所在的逻辑卷的大小;
依据所述虚拟机磁盘镜像实际使用的磁盘大小,对所述逻辑卷进行扩容。
可选的,所述在当前虚拟机镜像的格式为qcow2的情况下,计算虚拟机磁盘镜像中实际使用的磁盘大小,包括:
计算所述虚拟机磁盘镜像中每个单元块的大小;
获取预分配的虚拟机磁盘的大小;
依据所述预分配的虚拟机磁盘大小和每个单元块的大小,确定单元块的数量;
对所有的单元块进行遍历,确定出所有已使用过的单元块的数量;
根据已使用过的单元块的数量和每个单元块的大小,计算虚拟机磁盘镜像实际使用的磁盘大小。
可选的,所述依据所述磁盘镜像实际使用的磁盘大小,对所述逻辑卷进行扩容,包括:
判断所述虚拟机磁盘镜像实际使用的磁盘大小与所述虚拟机磁盘镜像所在的逻辑卷的大小的比值是否大于等于预先设定逻辑卷的扩容阈值与扩容增量的比值;
若大于,对所述逻辑卷进行扩容。
可选的,所述对所述逻辑卷进行增容,包括:
判断所述磁盘镜像实际使用的磁盘大小是否大于等于所述逻辑卷与预设倍数值的乘积;
若所述磁盘镜像实际使用的磁盘大小大于等于所述逻辑卷与预设倍数值的乘积,则基于所述逻辑卷的大小进行扩容;
若所述磁盘镜像实际使用的磁盘大小不大于所述逻辑卷与预设倍数值的乘积,则基于所述磁盘镜像实际使用的磁盘大小与所述逻辑卷大小的差值进行扩容。
可选的,所述预设倍数等于预先设定逻辑卷的扩容阈值与扩容增量的比值与1的和。
可选的,还包括:
创建qcow2格式的虚拟机磁盘镜像。
本发明实施例还公开了一种虚拟机磁盘精简装置,其特征在于,所述装置应用于集中式存储,包括:
实际使用的磁盘大小计算单元,用于在当前虚拟机磁盘镜像的格式为qcow2的情况下,计算虚拟机磁盘镜像实际使用的磁盘大小;所述当前虚拟机磁盘镜像创建在预设的逻辑卷中;
逻辑卷大小计算单元,用于获取所述虚拟机磁盘镜像所在的逻辑卷的大小;
扩容单元,用于依据所述虚拟机磁盘镜像实际使用的磁盘大小,对所述逻辑卷进行扩容。
可选的,所述实际使用的磁盘大小计算单元,包括:
单元块大小计算子单元,用于计算所述虚拟机磁盘镜像中每个单元块的大小;
预分配的虚拟机磁盘大小获取子单元,用于获取预分配的虚拟机磁盘的大小;
单元块总数量确定子单元,用于依据所述预分配的虚拟机磁盘大小和每个单元块的大小,确定单元块的数量;
单元块遍历子单元,用于对所有的单元块进行遍历,确定出所有已使用过的单元块的数量;
实际使用的磁盘大小计算子单元,用于根据已使用过的单元块的数量和每个单元块的大小,计算虚拟机磁盘镜像实际使用的磁盘大小。
可选的,扩容单元,包括:
第一判断子单元,用于判断所述虚拟机磁盘镜像实际使用的磁盘大小与所述虚拟机磁盘镜像所在的逻辑卷的大小的比值是否大于等于预先设定逻辑卷的扩容阈值与扩容增量的比值;
第一扩容子单元,用于若大于,对所述逻辑卷进行扩容。
可选的,所述扩容子单元,包括:
第二判断子单元,用于判断所述磁盘镜像实际使用的磁盘大小是否大于等于所述逻辑卷与预设倍数值的乘积;
第二扩容子单元,用于若所述磁盘镜像实际使用的磁盘大小大于等于所述逻辑卷与预设倍数值的乘积,则基于所述逻辑卷的大小进行扩容;
第三扩容子单元,用于若所述磁盘镜像实际使用的磁盘大小不大于所述逻辑卷与预设倍数值的乘积,则基于所述逻辑卷的大小进行扩容。
本发明实施例公开了一种虚拟机磁盘精简的方法及装置,包括:将虚拟机磁盘镜像创建在预设的逻辑卷中,在当前虚拟机磁盘镜像为qcow2的情况下,计算虚拟机磁盘镜像中实际使用的磁盘大小;获取虚拟机磁盘镜像所在的逻辑卷的大小;并依据该虚拟机磁盘镜像实际使用的磁盘大小,对所述逻辑卷进行扩容。由此可知,实现了存储空间是依据磁盘实际的使用大小进行扩容,这样,提高了磁盘空间的利用率。
并且,虚拟机还可以在集群文件系统中进行跨主机在线迁移。
附图说明
为了更清楚地说明本发明实施例或现有技术中的技术方案,下面将对实施例或现有技术描述中所需要使用的附图作简单地介绍,显而易见地,下面描述中的附图仅仅是本发明的实施例,对于本领域普通技术人员来讲,在不付出创造性劳动的前提下,还可以根据提供的附图获得其他的附图。
图1示出了本发明实施例公开的一种虚拟机磁盘精简的方法的流程示意图;
图2示出了本发明实施例公开的一种虚拟机磁盘镜像文件的实际大小的统计方法的流程示意图;
图3示出了本发明实施例公开的逻辑卷的大小、逻辑卷的扩容大小和磁盘镜像的实际大小的关系;
图4示出了本发明实施例公开的一种扩容的方法流程示意图;
图5示出了本发明实施例公开的一种虚拟机磁盘精简的装置的结构示意图。
具体实施方式
下面将结合本发明实施例中的附图,对本发明实施例中的技术方案进行清楚、完整地描述,显然,所描述的实施例仅仅是本发明一部分实施例,而不是全部的实施例。基于本发明中的实施例,本领域普通技术人员在没有做出创造性劳动前提下所获得的所有其他实施例,都属于本发明保护的范围。
申请人经研究发现,集中式存储上通过qcow2格式对文件进行存储,会存在存储空间使用的规划不精确的问题,为了解决以上问题,本技术方案提出了一种虚拟机磁盘精简的方法及装置,包括:将虚拟机磁盘镜像创建在预设的逻辑卷中,在当前虚拟机磁盘镜像为qcow2的情况下,计算虚拟机磁盘镜像中实际使用的磁盘大小;获取虚拟机磁盘镜像所在的逻辑卷的大小;并依据该虚拟机磁盘镜像实际使用的磁盘大小,对所述逻辑卷进行扩容。由此可知,实现了存储空间是依据磁盘实际的使用大小进行扩容,这样,提高了磁盘空间的利用率。
参考图1,示出了本发明实施例公开的一种虚拟机磁盘精简的方法的流程示意图,在本实施例中,该方法包括:
S101:在当前虚拟机磁盘镜像的格式为qcow2的情况下,计算虚拟机磁盘镜像实际使用的磁盘大小;所述当前虚拟机磁盘镜像创建在预设的逻辑卷中;
本实施例中,逻辑卷表示由逻辑磁盘形成的虚拟盘,具体的,逻辑卷(lv)是将几个磁盘分区或者块设备(pv,pv的id必须是8e的,pv可以位于不同的磁盘分区里,pv大小可以不一)组织起来形成一个大的扩展分区(vg,卷组,一个vg至少要包含一个pv。),该扩展分区不能直接用,需要将其划分成逻辑卷(lv)才能使用,lv可以格式化成不同的文件系统,挂载后直接使用。lv的扩展和缩减是不会影响原有数据的,但逻辑卷缩减的风险大于逻辑卷扩展的风险。
本实施例中,需要先创建qcow2格式的虚拟机磁盘镜像,并将该qcow2格式的虚拟机磁盘镜像创建在逻辑卷中。
本实施例中,qcow2格式的虚拟机磁盘镜像文件是由多个固定大小的单元块组织构成,申请人经研究发现,在集中式存储系统中,可以通过统计已使用的单元块对虚拟机磁盘镜像文件的实际大小进行统计,具体的如图2所示,S101包括:
S201:计算所述虚拟机磁盘镜像中每个单元块的大小;
S202:获取预分配的虚拟机磁盘的大小;
S203:依据所述预分配的虚拟机磁盘大小和每个单元块的大小,确定单元块的数量;
S204:对所有的单元块进行遍历,确定出所有已使用过的单元块的数量;
S205:根据已使用过的单元块的数量和每个单元块的大小,计算虚拟机磁盘镜像实际使用的磁盘大小。
本实施例中,预分配的磁盘大小表示为预先为虚拟机分配的磁盘大小,预分配的磁盘大小并不一定完全被使用,具体占用的磁盘空间,需要通过实际的磁盘镜像文件的大小确定。
举例说明:每个单元块表示为cluster,每个cluster的大小表示为cluster_size,虚拟机磁盘镜像文件的实际大小的统计过程包括:
首先需要说明的是:虚拟机磁盘镜像的第一个cluster为头文件,包含该磁盘镜像的基本信息,其结构可以表示如下:
typedef struct QCowHeader{
uint32_t magic;/*4个字节固定的标识符,在qcow2中为"QFI\xfb"*/
uint32_t version;/*版本号,其值为2或3*/
/*后端文件路径字符串相对于文件起始位置的偏移地址*/
uint64_t backing_file_offset;
uint32_t backing_file_size;/*后端文件路径字符串长度,单位为字节*/
uint32_t cluster_bits;/*当前qcow2文件中每个cluster的位数*/
uint64_t size;/*qcow2文件以块设备在虚拟机中表现出的大小(字节)*/
uint32_t crypt_method;/*0表示没有加密,1表示采用了AES加密*/
uint32_t l1_size;/*L1 table的入口个数*/
uint64_t l1_table_offset;/*L1 table相对于镜像文件起始位置的偏移*/
/*refcount_table的偏移地址*/
uint64_t refcount_table_offset;
/*refcount table的大小(单位为cluster数量)*/
uint32_t refcount_table_clusters;
uint32_t nb_snapshots;/*镜像文件包含的快照数量*/
uint64_t snapshots_offset;/*快照table相对于镜像文件起始位置的偏移*/
/*以下属性仅仅当version>=3时才合法*/
uint64_t incompatible_features;/*未实现的特征的位掩码*/
uint64_t compatible_features;/*兼容特征的位掩码*/
uint64_t autoclear_features;/*自动清除特征*/
uint32_t refcount_order;/*引用计数块的入口宽度*/
uint32_t header_length;/*文件头结构体的长度*/
}QEMU_PACKED QCowHeader;
具体的,统计过程可以包括:
a、判断当前虚拟机磁盘镜像的格式是否为qcow2;
b、若是的话,则根据虚拟机磁盘镜像中的头文件计算每个cluster的大小cluster_size;
c、获取预分配的虚拟机磁盘的大小;
d、根据如下公式1)计算预分配的cluster的数量;
1)total_cluster=size/cluster_size;
e、遍历所有的cluster,统计已使用的cluster的数量,表示为clusters_used;
其中,每个cluster对应一个refount,refount为cluster的引用计数,在cluster未被使用时,refount标记为1,当cluster被使用后,refount标记为0。
当对refount进行遍历时,当遍历到0时则结束遍历,并记录当前的遍历次数,该遍历次数可以表示为已使用的cluster的数量。
f、根据如下的公式2)计算虚拟机磁盘镜像文件的实际大小,即虚拟机磁盘镜像实际使用的磁盘大小:
2)qcow2_real_size=clusters_used*cluster_size;
其中,qcow2_real_size表示虚拟机磁盘镜像文件的实际大小。
S102:获取所述虚拟机磁盘镜像所在的逻辑卷的大小;
S103:依据所述虚拟机磁盘镜像实际使用的磁盘大小,对所述逻辑卷进行扩容。
如图3所示,逻辑卷的大小、逻辑卷的扩容大小和磁盘镜像的实际大小的关系可以表示为如下的公式4)和公式5):
4)lv_size=qcow2_real_size+qcow2_extendable_size;
5)lv_extendable_size=qcow2_pre_size-lv_size;
其中,lv_size表示逻辑卷的大小,qcow2_real_size表示虚拟机磁盘镜像文件的实际大小,qcow2_extendable_size表示虚拟机磁盘镜像文件可扩展空间的大小,lv_extendable_size表示逻辑卷可扩展空间的大小。
除此之外,为了避免qcow2格式的文件在内部数据自动增长的时候其所在逻辑卷被填满,如图4所示,可以按照如下的步骤对逻辑卷进行扩容:
S401:判断所述虚拟机磁盘镜像实际使用的磁盘大小与所述虚拟机磁盘镜像所在的逻辑卷的大小的比值是否大于等于预先设定逻辑卷的扩容阈值与扩容增量的比值;
若大于,按照如下的步骤进行扩容:
S402:判断所述磁盘镜像实际使用的磁盘大小是否大于等于所述逻辑卷与预设倍数值的乘积;
S403:若所述磁盘镜像实际使用的磁盘大小大于等于所述逻辑卷与预设倍数值的乘积,则基于所述逻辑卷的大小进行扩容;
S404:若所述磁盘镜像实际使用的磁盘大小不大于所述逻辑卷与预设倍数值的乘积,则基于所述磁盘镜像实际使用的磁盘大小与所述逻辑卷大小的差值进行扩容。
举例说明:假设预先设定逻辑卷的扩容阈值与扩容增量的比为当前逻辑卷大小的a%,即x%=lv_size*a%,x%表示预先设定逻辑卷的扩容阈值与扩容增量的比。基于上述内容,对逻辑卷进行扩容的具体过程包括:
若qcow2_pre_size>=lv_size*(1+a%),则可以对逻辑卷扩容的大小为lv_size*a%;
若qcow2_pre_size<lv_size*(1+a%),则可以对逻辑卷扩容的大小为qcow2_pre_size-lv_size。
本实施例中,将虚拟机磁盘镜像创建在预设的逻辑卷中,在当前虚拟机磁盘镜像为qcow2的情况下,计算虚拟机磁盘镜像中实际使用的磁盘大小;获取虚拟机磁盘镜像所在的逻辑卷的大小;并依据该虚拟机磁盘镜像实际使用的磁盘大小,对所述逻辑卷进行扩容。由此可知,实现了存储空间是依据磁盘实际的使用大小进行扩容,这样,提高了磁盘空间的利用率。
参考图5,示出了本发明实施例公开的一种虚拟机磁盘精简的装置的结构示意图,该装置应用于集中式存储中,在本实施例中,该装置包括:
实际使用的磁盘大小计算单元501,用于在当前虚拟机磁盘镜像的格式为qcow2的情况下,计算虚拟机磁盘镜像实际使用的磁盘大小;所述当前虚拟机磁盘镜像创建在预设的逻辑卷中;
逻辑卷大小计算单元502,用于获取所述虚拟机磁盘镜像所在的逻辑卷的大小;
扩容单元502,用于依据所述虚拟机磁盘镜像实际使用的磁盘大小,对所述逻辑卷进行扩容。
可选的,所述实际使用的磁盘大小计算单元,包括:
单元块大小计算子单元,用于计算所述虚拟机磁盘镜像中每个单元块的大小;
预分配的虚拟机磁盘大小获取子单元,用于获取预分配的虚拟机磁盘的大小;
单元块总数量确定子单元,用于依据所述预分配的虚拟机磁盘大小和每个单元块的大小,确定单元块的数量;
单元块遍历子单元,用于对所有的单元块进行遍历,确定出所有已使用过的单元块的数量;
实际使用的磁盘大小计算子单元,用于根据已使用过的单元块的数量和每个单元块的大小,计算虚拟机磁盘镜像实际使用的磁盘大小。
可选的,扩容单元,包括:
第一判断子单元,用于判断所述虚拟机磁盘镜像实际使用的磁盘大小与所述虚拟机磁盘镜像所在的逻辑卷的大小的比值是否大于等于预先设定逻辑卷的扩容阈值与扩容增量的比值;
第一扩容子单元,用于若大于,对所述逻辑卷进行扩容。
可选的,所述扩容子单元,包括:
第二判断子单元,用于判断所述磁盘镜像实际使用的磁盘大小是否大于等于所述逻辑卷与预设倍数值的乘积;
第二扩容子单元,用于若所述磁盘镜像实际使用的磁盘大小大于等于所述逻辑卷与预设倍数值的乘积,则基于所述逻辑卷的大小进行扩容;
第三扩容子单元,用于若所述磁盘镜像实际使用的磁盘大小不大于所述逻辑卷与预设倍数值的乘积,则基于所述逻辑卷的大小进行扩容。
通过本实施例的装置,将虚拟机磁盘镜像创建在预设的逻辑卷中,在当前虚拟机磁盘镜像为qcow2的情况下,计算虚拟机磁盘镜像中实际使用的磁盘大小;获取虚拟机磁盘镜像所在的逻辑卷的大小;并依据该虚拟机磁盘镜像实际使用的磁盘大小,对所述逻辑卷进行扩容。由此可知,实现了存储空间是依据磁盘实际的使用大小进行扩容,这样,提高了磁盘空间的利用率。
需要说明的是,本说明书中的各个实施例均采用递进的方式描述,每个实施例重点说明的都是与其他实施例的不同之处,各个实施例之间相同相似的部分互相参见即可。
对所公开的实施例的上述说明,使本领域专业技术人员能够实现或使用本发明。对这些实施例的多种修改对本领域的专业技术人员来说将是显而易见的,本文中所定义的一般原理可以在不脱离本发明的精神或范围的情况下,在其它实施例中实现。因此,本发明将不会被限制于本文所示的这些实施例,而是要符合与本文所公开的原理和新颖特点相一致的最宽的范围。

Claims (10)

1.一种虚拟机磁盘精简的方法,其特征在于,所述方法应用于集中式存储,包括:
在当前虚拟机磁盘镜像的格式为qcow2的情况下,计算虚拟机磁盘镜像实际使用的磁盘大小;所述当前虚拟机磁盘镜像创建在预设的逻辑卷中;
获取所述虚拟机磁盘镜像所在的逻辑卷的大小;
依据所述虚拟机磁盘镜像实际使用的磁盘大小,对所述逻辑卷进行扩容。
2.根据权利要求1所述的方法,其特征在于,所述在当前虚拟机镜像的格式为qcow2的情况下,计算虚拟机磁盘镜像中实际使用的磁盘大小,包括:
计算所述虚拟机磁盘镜像中每个单元块的大小;
获取预分配的虚拟机磁盘的大小;
依据所述预分配的虚拟机磁盘大小和每个单元块的大小,确定单元块的数量;
对所有的单元块进行遍历,确定出所有已使用过的单元块的数量;
根据已使用过的单元块的数量和每个单元块的大小,计算虚拟机磁盘镜像实际使用的磁盘大小。
3.根据权利要求2所述的方法,其特征在于,所述依据所述磁盘镜像实际使用的磁盘大小,对所述逻辑卷进行扩容,包括:
判断所述虚拟机磁盘镜像实际使用的磁盘大小与所述虚拟机磁盘镜像所在的逻辑卷的大小的比值是否大于等于预先设定逻辑卷的扩容阈值与扩容增量的比值;
若大于,对所述逻辑卷进行扩容。
4.根据权利要求3所述的方法,其特征在于,所述对所述逻辑卷进行增容,包括:
判断所述磁盘镜像实际使用的磁盘大小是否大于等于所述逻辑卷与预设倍数值的乘积;
若所述磁盘镜像实际使用的磁盘大小大于等于所述逻辑卷与预设倍数值的乘积,则基于所述逻辑卷的大小进行扩容;
若所述磁盘镜像实际使用的磁盘大小不大于所述逻辑卷与预设倍数值的乘积,则基于所述磁盘镜像实际使用的磁盘大小与所述逻辑卷大小的差值进行扩容。
5.根据权利要求4所述的方法,其特征在于,所述预设倍数等于预先设定逻辑卷的扩容阈值与扩容增量的比值与1的和。
6.根据权利要求1所述的方法,其特征在于,还包括:
创建qcow2格式的虚拟机磁盘镜像。
7.一种虚拟机磁盘精简装置,其特征在于,所述装置应用于集中式存储,包括:
实际使用的磁盘大小计算单元,用于在当前虚拟机磁盘镜像的格式为qcow2的情况下,计算虚拟机磁盘镜像实际使用的磁盘大小;所述当前虚拟机磁盘镜像创建在预设的逻辑卷中;
逻辑卷大小计算单元,用于获取所述虚拟机磁盘镜像所在的逻辑卷的大小;
扩容单元,用于依据所述虚拟机磁盘镜像实际使用的磁盘大小,对所述逻辑卷进行扩容。
8.根据权利要求7所述的装置,其特征在于,所述实际使用的磁盘大小计算单元,包括:
单元块大小计算子单元,用于计算所述虚拟机磁盘镜像中每个单元块的大小;
预分配的虚拟机磁盘大小获取子单元,用于获取预分配的虚拟机磁盘的大小;
单元块总数量确定子单元,用于依据所述预分配的虚拟机磁盘大小和每个单元块的大小,确定单元块的数量;
单元块遍历子单元,用于对所有的单元块进行遍历,确定出所有已使用过的单元块的数量;
实际使用的磁盘大小计算子单元,用于根据已使用过的单元块的数量和每个单元块的大小,计算虚拟机磁盘镜像实际使用的磁盘大小。
9.根据权利要求7所述的装置,其特征在于,扩容单元,包括:
第一判断子单元,用于判断所述虚拟机磁盘镜像实际使用的磁盘大小与所述虚拟机磁盘镜像所在的逻辑卷的大小的比值是否大于等于预先设定逻辑卷的扩容阈值与扩容增量的比值;
第一扩容子单元,用于若大于,对所述逻辑卷进行扩容。
10.根据权利要求9所述的装置,其特征在于,所述扩容子单元,包括:
第二判断子单元,用于判断所述磁盘镜像实际使用的磁盘大小是否大于等于所述逻辑卷与预设倍数值的乘积;
第二扩容子单元,用于若所述磁盘镜像实际使用的磁盘大小大于等于所述逻辑卷与预设倍数值的乘积,则基于所述逻辑卷的大小进行扩容;
第三扩容子单元,用于若所述磁盘镜像实际使用的磁盘大小不大于所述逻辑卷与预设倍数值的乘积,则基于所述逻辑卷的大小进行扩容。
CN201811221107.3A 2018-07-10 2018-10-19 一种虚拟机磁盘精简的方法及装置 Active CN109871183B (zh)

Applications Claiming Priority (2)

Application Number Priority Date Filing Date Title
CN201810750715 2018-07-10
CN2018107507157 2018-07-10

Publications (2)

Publication Number Publication Date
CN109871183A true CN109871183A (zh) 2019-06-11
CN109871183B CN109871183B (zh) 2022-04-15

Family

ID=66916913

Family Applications (1)

Application Number Title Priority Date Filing Date
CN201811221107.3A Active CN109871183B (zh) 2018-07-10 2018-10-19 一种虚拟机磁盘精简的方法及装置

Country Status (1)

Country Link
CN (1) CN109871183B (zh)

Citations (6)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
CN102999369A (zh) * 2012-12-25 2013-03-27 杭州华三通信技术有限公司 虚拟机升级的方法及装置
CN104156175A (zh) * 2014-08-06 2014-11-19 厦门天锐科技有限公司 一种虚拟磁盘容量平滑拓展方法
US8943105B1 (en) * 2014-06-02 2015-01-27 Storagecraft Technology Corporation Exposing a proprietary disk file to a hypervisor as a native hypervisor disk file
CN104572656A (zh) * 2013-10-12 2015-04-29 华为技术有限公司 一种磁盘镜像空间回收的方法及装置
US9256373B1 (en) * 2014-05-19 2016-02-09 Emc Corporation Invulnerable data movement for file system upgrade
CN105468454A (zh) * 2015-10-21 2016-04-06 北京汉柏科技有限公司 基于qcow2的虚拟磁盘使用空间的计算方法、虚拟设备

Patent Citations (6)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
CN102999369A (zh) * 2012-12-25 2013-03-27 杭州华三通信技术有限公司 虚拟机升级的方法及装置
CN104572656A (zh) * 2013-10-12 2015-04-29 华为技术有限公司 一种磁盘镜像空间回收的方法及装置
US9256373B1 (en) * 2014-05-19 2016-02-09 Emc Corporation Invulnerable data movement for file system upgrade
US8943105B1 (en) * 2014-06-02 2015-01-27 Storagecraft Technology Corporation Exposing a proprietary disk file to a hypervisor as a native hypervisor disk file
CN104156175A (zh) * 2014-08-06 2014-11-19 厦门天锐科技有限公司 一种虚拟磁盘容量平滑拓展方法
CN105468454A (zh) * 2015-10-21 2016-04-06 北京汉柏科技有限公司 基于qcow2的虚拟磁盘使用空间的计算方法、虚拟设备

Also Published As

Publication number Publication date
CN109871183B (zh) 2022-04-15

Similar Documents

Publication Publication Date Title
US11520484B2 (en) Namespaces allocation in non-volatile memory devices
US20220357847A1 (en) Namespace size adjustment in non-volatile memory devices
US11983119B2 (en) Namespace mapping structural adjustment in non-volatile memory devices
TWI682652B (zh) 資料處理方法及裝置
US20210255952A1 (en) Namespace change propagation in non-volatile memory devices
EP3367251B1 (en) Storage system and solid state hard disk
US11157173B2 (en) Namespace management in non-volatile memory devices
US20190146907A1 (en) Namespace mapping optimization in non-volatile memory devices
EP3958107A1 (en) Storage system, memory management method, and management node
KR101674335B1 (ko) 메모리 장치 및 호스트 장치
US10528268B2 (en) System and method for channel time management in solid state memory drives
CN104281528B (zh) 一种数据存储方法及装置
CN106020967B (zh) 一种混合式云资源自动扩容方法
CN102123176B (zh) 一种网络存储系统空间分配管理方法及装置
CN104980367A (zh) 一种令牌桶限速方法和装置
CN107122131A (zh) 自动精简配置的方法及装置
CN107092442A (zh) 存储系统资源分配方法及装置
CN108874688A (zh) 一种报文数据缓存方法及装置
CN109428913A (zh) 一种存储扩容方法及装置
CN103514249A (zh) 一种数据自精简方法和系统及存储装置
CN106527995A (zh) 一种i/o均衡的数据扩容迁移方法
CN107621927A (zh) 一种基于超融合系统的纵向扩展方法及其装置
EP3889785B1 (en) Stripe reconstruction method in storage system and striping server
CN109871183A (zh) 一种虚拟机磁盘精简的方法及装置
CN105446894B (zh) 一种写均衡的处理方法和装置

Legal Events

Date Code Title Description
PB01 Publication
PB01 Publication
SE01 Entry into force of request for substantive examination
SE01 Entry into force of request for substantive examination
GR01 Patent grant
GR01 Patent grant