[go: up one dir, main page]
More Web Proxy on the site http://driver.im/

CN109814946B - A method and device for realizing distributed storage in XenServer - Google Patents

A method and device for realizing distributed storage in XenServer Download PDF

Info

Publication number
CN109814946B
CN109814946B CN201811634220.4A CN201811634220A CN109814946B CN 109814946 B CN109814946 B CN 109814946B CN 201811634220 A CN201811634220 A CN 201811634220A CN 109814946 B CN109814946 B CN 109814946B
Authority
CN
China
Prior art keywords
vdi
message
snapshot
user
xenserver
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.)
Active
Application number
CN201811634220.4A
Other languages
Chinese (zh)
Other versions
CN109814946A (en
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.)
Shenzhen Innovation Technology Co ltd
Original Assignee
Shenzhen Innovation Technology 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 Shenzhen Innovation Technology Co ltd filed Critical Shenzhen Innovation Technology Co ltd
Priority to CN201811634220.4A priority Critical patent/CN109814946B/en
Publication of CN109814946A publication Critical patent/CN109814946A/en
Application granted granted Critical
Publication of CN109814946B publication Critical patent/CN109814946B/en
Active legal-status Critical Current
Anticipated expiration legal-status Critical

Links

Images

Landscapes

  • Information Retrieval, Db Structures And Fs Structures Therefor (AREA)

Abstract

本发明提供了一种在XenServer中实现分布式存储的方法和装置,该方法包括:接收用户触发的存储库建立消息,将在分布式存储集群中建立的存储池用作XenServer的存储库;接收用户触发的物理块设备PBD创建消息,确定PBD创建消息携带的所有XenServer主机信息,创建用于连接每一XenServer主机和所述存储库的PBD,并挂载创建的所有PBD;接收用户触发的虚拟磁盘映像VDI创建消息,在XenServer中创建VDI并存储到所述存储库;接收用户触发的虚拟磁盘映射消息,建立分布式存储集群中各块设备与所述存储库中各VDI的映射关系。本发明能够使XenServer支持分布式存储。

Figure 201811634220

The present invention provides a method and device for realizing distributed storage in XenServer. The method includes: receiving a user-triggered storage repository establishment message, and using the storage pool established in the distributed storage cluster as the storage repository of XenServer; receiving The physical block device PBD creation message triggered by the user determines all XenServer host information carried in the PBD creation message, creates a PBD for connecting each XenServer host and the repository, and mounts all the created PBDs; Disk image VDI creation message, VDI is created in XenServer and stored in the storage repository; virtual disk mapping message triggered by the user is received, and the mapping relationship between each block device in the distributed storage cluster and each VDI in the storage repository is established. The present invention enables XenServer to support distributed storage.

Figure 201811634220

Description

一种在XenServer中实现分布式存储的方法和装置A method and device for realizing distributed storage in XenServer

技术领域technical field

本发明涉及存储技术领域,特别涉及一种在XenServer中实现分布式存储的方法和装置。The present invention relates to the technical field of storage, in particular to a method and device for realizing distributed storage in XenServer.

背景技术Background technique

XenServer是思杰公司(Citrix)推出的一种服务器虚拟化平台,软件包中包含所有需要创建和管理部署的虚拟x86计算机上运行的Xen开放源码,准虚拟化的虚拟机管理程序与近乎完美的性能。XenServer对Windows和Linux进行了特殊优化,不需要底层操作系统,可直接运行与服务器硬件上,是一个具有高效率和高扩展行的系统。XenServer is a server virtualization platform launched by Citrix. The software package contains Xen open source, paravirtualized hypervisor and nearly perfect Xen open source running on virtual x86 computers that need to create and manage deployments. performance. XenServer is specially optimized for Windows and Linux. It does not need the underlying operating system and can be directly run on server hardware. It is a system with high efficiency and high scalability.

现有实现中,XenServer没有分布式存储,这对Citrix XenServer在超融合HCI上是最致命的,不利于创建基于XenServer的“超融合”一体机。In the existing implementation, XenServer does not have distributed storage, which is the most fatal for Citrix XenServer in hyper-converged HCI, and is not conducive to the creation of a "hyper-converged" all-in-one machine based on XenServer.

发明内容SUMMARY OF THE INVENTION

有鉴于此,本发明的目的在于提供一种在XenServer中实现分布式存储的方法和装置,能够使XenServer支持分布式存储。In view of this, the purpose of the present invention is to provide a method and apparatus for realizing distributed storage in XenServer, so that XenServer can support distributed storage.

为了达到上述目的,本发明提供了如下技术方案:In order to achieve the above object, the present invention provides the following technical solutions:

一种在XenServer中实现分布式存储的方法,该方法包括:A method for implementing distributed storage in XenServer, the method includes:

接收用户触发的存储库建立消息,将在分布式存储集群中建立的存储池用作XenServer的存储库;Receive the repository creation message triggered by the user, and use the storage pool created in the distributed storage cluster as the repository of XenServer;

接收用户触发的物理块设备PBD创建消息,确定PBD创建消息携带的所有XenServer主机信息,创建用于连接每一XenServer主机和所述存储库的PBD,并挂载创建的所有PBD;Receive the physical block device PBD creation message triggered by the user, determine all XenServer host information carried in the PBD creation message, create a PBD for connecting each XenServer host and the storage library, and mount all the created PBDs;

接收用户触发的虚拟磁盘映像VDI创建消息,在XenServer中创建VDI并存储到所述存储库;Receive a user-triggered virtual disk image VDI creation message, create a VDI in XenServer and store it in the repository;

接收用户触发的虚拟磁盘映射消息,建立分布式存储集群中各块设备与所述存储库中各VDI的映射关系。A virtual disk mapping message triggered by a user is received, and a mapping relationship between each block device in the distributed storage cluster and each VDI in the storage library is established.

一种在XenServer中实现分布式存储的插件,该插件包括:接收单元和处理单元;A plug-in for realizing distributed storage in XenServer, the plug-in includes: a receiving unit and a processing unit;

所述接收单元,用于接收用户触发的存储库建立消息;用于接收用户触发的物理块设备PBD创建消息;用于接收用户触发的虚拟磁盘映像VDI创建消息;用于接收用户触发的虚拟磁盘映射消息;The receiving unit is configured to receive a user-triggered repository establishment message; a user-triggered physical block device PBD creation message; a user-triggered virtual disk image VDI creation message; a user-triggered virtual disk creation message map message;

所述处理单元,用于接收单元接收到用户触发的存储库建立消息时,将在分布式存储集群中建立的存储池用作XenServer的存储库;用于接收单元接收到用户触发的PBD创建消息时,确定PBD创建消息携带的所有XenServer主机信息,创建用于连接每一XenServer主机和所述存储库的PBD,并挂载创建的所有PBD;用于接收单元接收到用户触发的VDI创建消息时,在XenServer中创建VDI并存储到所述存储库;用于接收单元接收到用户触发的虚拟磁盘映射消息时,建立分布式存储集群中各块设备与所述存储库中各VDI的映射关系。The processing unit is used for the receiving unit to use the storage pool established in the distributed storage cluster as the storage library of XenServer when the receiving unit receives the user-triggered storage repository establishment message; for the receiving unit to receive the user-triggered PBD creation message When, determine all the XenServer host information carried by the PBD creation message, create a PBD for connecting each XenServer host and the repository, and mount all the created PBDs; when the receiving unit receives the user-triggered VDI creation message , creating a VDI in the XenServer and storing it in the repository; when the receiving unit receives a user-triggered virtual disk mapping message, establishes a mapping relationship between each block device in the distributed storage cluster and each VDI in the repository.

由上面的技术方案可知,本发明中,在分布式存储集群中建立存储池,将该存储池用作XenServer的一个存储库;将该存储库与XenServer中的主机通过创建和挂载PBD实现对接,然后再在该存储库中创建多个VDI,建立该存储库中的各VDI与分布式存储集群中各块设备之间的映射关系,从而将分布式存储集群引入到XenServer中,实现了XenServer对分布式存储的支持。As can be seen from the above technical solutions, in the present invention, a storage pool is established in a distributed storage cluster, and the storage pool is used as a storage library of XenServer; the storage library and the host in XenServer are connected by creating and mounting PBDs. , and then create multiple VDIs in the repository, and establish the mapping relationship between each VDI in the repository and each block device in the distributed storage cluster, so as to introduce the distributed storage cluster into XenServer and implement XenServer Support for distributed storage.

附图说明Description of drawings

图1是本发明实施例在XenServer中实现分布式存储的方法流程图;1 is a flowchart of a method for implementing distributed storage in XenServer according to an embodiment of the present invention;

图2是本发明实施例在XenServer中实现分布式存储的插件的结构示意图。FIG. 2 is a schematic structural diagram of a plug-in for implementing distributed storage in XenServer according to an embodiment of the present invention.

具体实施方式Detailed ways

为了使本发明的目的、技术方案及优点更加清楚明白,下面结合附图并据实施例,对本发明的技术方案进行详细说明。In order to make the objectives, technical solutions and advantages of the present invention clearer, the technical solutions of the present invention will be described in detail below with reference to the accompanying drawings and embodiments.

参见图1,图1是本发明实施例在XenServer中实现分布式存储的方法流程图,如图1所示,该方法包括以下步骤:Referring to FIG. 1, FIG. 1 is a flowchart of a method for implementing distributed storage in XenServer according to an embodiment of the present invention. As shown in FIG. 1, the method includes the following steps:

步骤101、接收用户触发的存储库建立消息,将在分布式存储集群中建立的存储池用作XenServer的存储库。Step 101: Receive a user-triggered repository establishment message, and use the storage pool established in the distributed storage cluster as the XenServer repository.

本发明实施例中,分布式存储集群为基于Ceph的分布式存储集群,可以预先在该分布式存储集群中创建一个用于存储VDI(虚拟磁盘映像)的存储池,当将应用本发明实现的插件安装到XenServer之后,用户可以在XenServer中触发存储库建立消息,后台接收到该存储库建立消息后,可以将该存储池用作XenServer的存储库。In this embodiment of the present invention, the distributed storage cluster is a Ceph-based distributed storage cluster, and a storage pool for storing VDI (Virtual Disk Image) may be created in the distributed storage cluster in advance. After the plug-in is installed on XenServer, the user can trigger a repository creation message in XenServer. After receiving the repository creation message in the background, the storage pool can be used as the XenServer repository.

在实际应用中,可以预先配置一个用于创建存储库的应用程序接口,该应用程序接口的输入参数为存储池信息(如存储池的uuid)、存储库的属性信息(例如存储库支持的块设备类型),实现的主要功能是:根据XenServer提供的sr-introduce命令创建一个以该输入参数指定存储池为基础的存储库,具有该输入参数指定的存储库属性。In practical applications, an application program interface for creating a repository can be pre-configured. The input parameters of the application program interface are storage pool information (such as the uuid of the storage pool), attribute information of the repository (such as the blocks supported by the repository) device type), the main function is to create a repository based on the storage pool specified by the input parameter according to the sr-introduce command provided by XenServer, and have the repository properties specified by the input parameter.

以下是执行XenServer提供的存储库建立命令(sr-introduce)的示例:The following is an example of executing the repository build command (sr-introduce) provided by XenServer:

#xe sr-introduce name-label="CEPH RBD Storage"type=rbd uuid=cda789de-c8d3-4d0d-8510-7deaa8c53aa8shared=true content-type=user#xe sr-introduce name-label="CEPH RBD Storage" type=rbd uuid=cda789de-c8d3-4d0d-8510-7deaa8c53aa8shared=true content-type=user

上述命令中,cda789de-c8d3-4d0d-8510-7deaa8c53aa8是存储池的uuid。上述命令执行后,创建得到一个基于该存储池的存储库,并且得到存储库的uuid(假设存储库uuid为4ceb0f8a-1539-40a4-bee2-450a025b04e1)。In the above command, cda789de-c8d3-4d0d-8510-7deaa8c53aa8 is the uuid of the storage pool. After the above command is executed, a repository based on the storage pool is created, and the uuid of the repository is obtained (assuming that the repository uuid is 4ceb0f8a-1539-40a4-bee2-450a025b04e1).

在上述命令中,将存储库支持的块设备类型(存储库属性之一)设置为rbd(即type=rbd),表明该存储库中存储的VDI对应的块设备类型为rbd。In the above command, the block device type supported by the repository (one of the repository properties) is set to rbd (ie type=rbd), indicating that the block device type corresponding to the VDI stored in the repository is rbd.

因此,在本步骤中,用户可以在XenServer提供存储库建立消息触发界面中指定存储池和存储库属性,然后触发存储库建立消息(携带所述指定的存储池信息和存储库属性信息),后台接收到用户触发的存储库建立消息后,可以将该存储库建立消息携带的信息作为输入参数,调用该用于创建存储库的应用程序接口,从而将用户指定的存储池用作XenServer中的存储库。Therefore, in this step, the user can specify the storage pool and the storage library attributes in the trigger interface of the storage library establishment message provided by XenServer, and then trigger the storage library establishment message (carrying the specified storage pool information and storage library attribute information), the background After receiving the user-triggered repository creation message, the information carried in the repository creation message can be used as an input parameter, and the application program interface for creating the repository can be called, thereby using the storage pool specified by the user as the storage in XenServer library.

步骤102、接收用户触发的物理块设备PBD创建消息,确定PBD创建消息携带的所有XenServer主机信息,创建用于连接每一XenServer主机和所述存储库的PBD,并挂载创建的所有PBD。Step 102: Receive a physical block device PBD creation message triggered by a user, determine all XenServer host information carried in the PBD creation message, create a PBD for connecting each XenServer host and the repository, and mount all the created PBDs.

本发明实施例中,为了使建立的存储仓库与XenServer实现对接,通过创建物理块设备(PBD)将XenServer中的部分或全部主机与该存储库连接起来。In the embodiment of the present invention, in order to realize the connection between the established storage warehouse and the XenServer, some or all of the hosts in the XenServer are connected with the storage warehouse by creating a physical block device (PBD).

在实际应用中,可以预先配置一个用于创建PBD的应用程序接口,该应用程序接口的输入参数为XenServer主机信息(如各主机的uuid)、存储库信息(例如存储库的uuid)、和PBD属性信息,实现的主要功能是:根据XenServer提供的pbd-create命令创建一个用于连接XenServer主机和存储库的PBD,该PBD具有该输入参数指定的PBD属性。In practical applications, an application program interface for creating a PBD can be pre-configured. The input parameters of the application program interface are XenServer host information (such as the uuid of each host), repository information (such as the uuid of the repository), and PBD The main function of the attribute information is to create a PBD for connecting the XenServer host and the repository according to the pbd-create command provided by XenServer, and the PBD has the PBD attribute specified by the input parameter.

需要说明的是,该应用程序接口的输入参数中,XenServer主机信息可以有一个或多个,由该应用程序接口的具体实现决定,如果只能有一个XenServer主机信息,则当需要建立该存储库与多个XenServer主机的连接时,可以多次执行本步骤。It should be noted that in the input parameters of the application program interface, there can be one or more XenServer host information, which is determined by the specific implementation of the application program interface. If there can only be one XenServer host information, the repository needs to be established when This step can be performed multiple times when connecting to multiple XenServer hosts.

以下是执行XenServer提供的PBD创建命令(pbd-create)的示例:The following is an example of executing the PBD creation command (pbd-create) provided by XenServer:

#xe pbd-create sr-uuid=4ceb0f8a-1539-40a4-bee2-450a025b04e1host-uuid=83f2c775-57fc-457b-9f98-2b9b0a7dbcb5#xe pbd-create sr-uuid=4ceb0f8a-1539-40a4-bee2-450a025b04e1host-uuid=83f2c775-57fc-457b-9f98-2b9b0a7dbcb5

上述命令中,sr-uuid和host-uuid分别为存储库的uuid和主机的uuid。执行上述命令后即可创建一个用于连接该主机和该存储库的PBD(假设该PBD的uuid为aec2c6fc-e1fb-0a27-2437-9862cffe213e,存储库的uuid即为上述步骤101的示例中创建的存储库的uuid)。In the above command, sr-uuid and host-uuid are the uuid of the repository and the uuid of the host, respectively. After executing the above command, a PBD for connecting the host and the repository can be created (assuming that the uuid of the PBD is aec2c6fc-e1fb-0a27-2437-9862cffe213e, and the uuid of the repository is the one created in the example of step 101 above. uuid of the repository).

本步骤中,用户可以在XenServer提供PBD创建消息触发界面中指定XenServer主机、存储库、及PBD属性信息,然后触发PBD创建消息(携带上述指定信息),后台接收到用户触发的PBD创建消息后,可以将该PBD创建消息携带的信息作为输入参数,调用该用于创建PBD的应用程序接口,从而实现建立用于连接用户指定的XenServer主机和存储库的PBD,且该PBD具有用户指定的PBD属性。In this step, the user can specify the XenServer host, repository, and PBD attribute information in the PBD creation message trigger interface provided by XenServer, and then trigger the PBD creation message (carrying the above specified information). After receiving the user-triggered PBD creation message in the background, The information carried in the PBD creation message can be used as an input parameter, and the application program interface for creating the PBD can be called, thereby realizing the establishment of a PBD for connecting the XenServer host and the storage library specified by the user, and the PBD has the PBD attribute specified by the user. .

发明实施例中,PBD属性信息主要包括以下几种:In the embodiment of the invention, the PBD attribute information mainly includes the following:

1)存储库安装模式(rbd-mode),主要有以下几种取值:kernel(此种模式更快但功能错误)、fuse(此种模式速度比较慢,为实现对此种模式的支持,需要在XenServer中安装rbd-fuse应用程序)、nbd(此种模式实现比较稳定为实现对此种模式的支持,需要在XenServer中安装rbd-nbd应用程序)。本发明中,优选的存储库安装模式为nbd模式,可以将此种模式设置为默认值。1) Repository installation mode (rbd-mode), mainly has the following values: kernel (this mode is faster but the function is wrong), fuse (this mode is slower, in order to support this mode, rbd-fuse application needs to be installed in XenServer), nbd (this mode is relatively stable In order to support this mode, rbd-nbd application needs to be installed in XenServer). In the present invention, the preferred repository installation mode is the nbd mode, which can be set as a default value.

上述安装rbd-fuse应用程序和rbd-nbd应用程序的实现代码如下:The implementation code for installing the rbd-fuse application and the rbd-nbd application above is as follows:

Figure BDA0001929660450000051
Figure BDA0001929660450000051

2)驱动程序类型(driver-type),主要有以下几种取值:vhd、dmp、rbd。本发明中,优选驱动程序类型为vhd,可以将其设置为默认值。2) Driver type (driver-type), there are mainly the following values: vhd, dmp, rbd. In the present invention, the preferred driver type is vhd, which can be set as a default value.

3)权限用户(cephx-id),表明使用此PBD的用户,默认取值为管理员(admin)。3) Authorized user (cephx-id), indicating the user who uses this PBD, the default value is administrator (admin).

4)使用rbd元数据(use-rbd-meta):用于指示VDI参数的存放位置,取值为True时,表明将VDI参数存储在rbd元数据中,取值为False时,表明需要使用单独的图像存储VDI参数。4) Use rbd metadata (use-rbd-meta): used to indicate the storage location of VDI parameters. When the value is True, it indicates that the VDI parameters are stored in the rbd metadata. When the value is False, it indicates that a separate The image stores VDI parameters.

5)存储库前缀(rbd-pool-suffix),用于指示存储库的名字前缀,例如“RBD_XenStorage”。5) Repository prefix (rbd-pool-suffix), used to indicate the name prefix of the repository, such as "RBD_XenStorage".

6)VDI的容量更新(vdi-update-existing),用于指示当存储库中的VDI的存储数据减小时,是否需要对VDI的容量进行更新,取值为True表明需要更新,取值为False表明不需要更新。6) VDI capacity update (vdi-update-existing), which is used to indicate whether the VDI capacity needs to be updated when the storage data of the VDI in the repository decreases. The value is True to indicate that it needs to be updated, and the value is False Indicates that no update is required.

在实际应用中,在创建PBD时,如果PBD的权限用户是admin,则需要判断分布式存储系统中的admin和XenServer中的admin是否使用相同的key密钥文件,如果是,则可以继续创建PBD,并根据调用的相应应用程序接口的输入参数设置PBD属性,否则,不可继续创建PBD,此时可以终止PBD创建,同时输出PBD创建失败信息以提示用户。如果PBD的权限用户不是admin,则可以直接创建PBD并根据调用的相应应用程序接口的输入参数设置PBD属性。In practical applications, when creating a PBD, if the authorized user of the PBD is admin, it is necessary to judge whether the admin in the distributed storage system and the admin in the XenServer use the same key key file. If so, you can continue to create the PBD. , and set the PBD attribute according to the input parameters of the corresponding application program interface called. Otherwise, the PBD creation cannot be continued. At this time, the PBD creation can be terminated, and the PBD creation failure information can be output at the same time to prompt the user. If the privileged user of the PBD is not admin, you can directly create the PBD and set the properties of the PBD according to the input parameters of the corresponding application program interface called.

在本发明实施例中,创建了PBD之后,还需要挂载PBD才能够真正实现XenServer与存储库的对接。因此,本发明中还可以在用于创建PBD的应用程序接口中根据XenServer提供的PBD挂载命令(pbd-plug)实现PBD挂载,也可以单独配置用于挂载PBD的应用程序接口,在该用于挂载PBD的应用程序接口中根据XenServer提供的PBD挂载命令实现PBD挂载。In the embodiment of the present invention, after the PBD is created, it is necessary to mount the PBD to truly realize the connection between the XenServer and the repository. Therefore, in the present invention, the PBD can also be mounted according to the PBD mount command (pbd-plug) provided by XenServer in the application program interface for creating PBD, and the application program interface for mounting PBD can also be configured separately. The application program interface for mounting the PBD implements the PBD mounting according to the PBD mounting command provided by the XenServer.

单独配置用于挂载PBD的应用程序接口的情况下,PBD挂载也可以由用户触发,过程与上述的触发存储库建立消息和PBD创建消息的过程相同,即用户在XenServer提供PBD挂载消息触发界面中指定PBD,然后触发PBD挂载消息(携带上述指定PBD信息),后台接收到用户触发的PBD挂载消息后,可以将该PBD挂载消息携带的PBD信息作为输入参数,调用该用于挂载PBD的应用程序接口,从而实现用户指定的PBD的挂载。If the application program interface for mounting PBD is configured separately, the PBD mounting can also be triggered by the user. The process is the same as the process of triggering the repository establishment message and PBD creation message above, that is, the user provides the PBD mount message on XenServer. Specify the PBD in the trigger interface, and then trigger the PBD mount message (carrying the above specified PBD information). After receiving the user-triggered PBD mount message in the background, the PBD information carried in the PBD mount message can be used as an input parameter, and the application can be called. The application program interface for mounting the PBD, so as to realize the mounting of the user-specified PBD.

以下是执行XenServer提供的PBD挂载命令(pbd-create)的示例:The following is an example of executing the PBD mount command (pbd-create) provided by XenServer:

#xe pbd-plug uuid=aec2c6fc-e1fb-0a27-2437-9862cffe213e#xe pbd-plug uuid=aec2c6fc-e1fb-0a27-2437-9862cffe213e

上述命令中,uuid的取值(aec2c6fc-e1fb-0a27-2437-9862cffe213e)为需要挂载的PBD的uuid。In the above command, the value of uuid (aec2c6fc-e1fb-0a27-2437-9862cffe213e) is the uuid of the PBD to be mounted.

步骤103、接收用户触发的VDI创建消息,在XenServer中创建VDI并存储到所述存储库。Step 103: Receive a VDI creation message triggered by the user, create a VDI in XenServer and store it in the repository.

本步骤中,创建VDI并存储到存储库中。可以通过多次执行本步骤创建多个VDI。In this step, a VDI is created and stored in the repository. Multiple VDIs can be created by performing this step multiple times.

本发明实施例中,可以配置用于创建VDI的应用程序接口。用于创建VDI的应用程序接口的输入参数包括VDI属性信息(包括:VDI所属存储库、VDI镜像名称、VDI类型和VDI镜像磁盘大小),实现的主要功能是:根据XenServer提供的VDI创建命令(vdi-create)创建一个VDI。In this embodiment of the present invention, an application program interface for creating VDI may be configured. The input parameters of the application program interface for creating VDI include VDI attribute information (including: the repository to which the VDI belongs, the name of the VDI image, the VDI type, and the size of the VDI image disk). The main functions implemented are: according to the VDI creation command provided by XenServer ( vdi-create) to create a VDI.

在实际应用中,用户可以在XenServer提供的VDI创建消息触发界面中指定VDI属性信息,然后触发VDI创建消息(携带用户指定的VDI属性信息),后台接收到用户触发的VDI创建消息后,可以将该VDI创建消息携带的VDI属性信息作为输入参数,调用该用于创建VDI的应用程序接口创建VDI。In practical applications, the user can specify the VDI attribute information in the VDI creation message trigger interface provided by XenServer, and then trigger the VDI creation message (carrying the VDI attribute information specified by the user). The VDI attribute information carried in the VDI creation message is used as an input parameter, and the application program interface for creating a VDI is invoked to create a VDI.

以下是执行XenServer提供的VDI创建命令(vdi-create)的示例:The following is an example of executing the VDI create command (vdi-create) provided by XenServer:

#xe vdi-create sr-uuid=<sr-uuid>name-label=<镜像名字>type=<system/user>virtual-size=<size_of_virtual_disk文件大小>。#xe vdi-create sr-uuid=<sr-uuid>name-label=<image name>type=<system/user>virtual-size=<size_of_virtual_disk file size>.

步骤104、接收用户触发的虚拟磁盘映射消息,建立所述存储库中各VDI与分布式存储集群中各块设备之间的映射关系。Step 104: Receive a virtual disk mapping message triggered by the user, and establish a mapping relationship between each VDI in the storage repository and each block device in the distributed storage cluster.

本步骤中,将分布式存储集群中的块设备映射到存储库中的VDI,建立起块设备与VDI之间一一对应的映射关系,从而使得分布式存储集群中的块设备在XenServer中可通过映射的VDI被访问。In this step, the block device in the distributed storage cluster is mapped to the VDI in the storage library, and a one-to-one mapping relationship between the block device and the VDI is established, so that the block device in the distributed storage cluster can be used in XenServer. Accessed via mapped VDI.

本发明实施例中,可以预先配置用于建立VDI与分布式存储集群中的块设备的映射关系的应用程序接口,该应用程序接口的输入参数包括存储库信息(存储库的uuid)和VDI信息(VDI的uuid),实现的主要功能是:根据rbd-nbd应用程序提供的映射命令(map)建立输入参数中的存储库中该VDI域分布式存储集群中的一个块设备之间的映射关系。In this embodiment of the present invention, an application program interface for establishing a mapping relationship between VDI and block devices in a distributed storage cluster may be pre-configured, and the input parameters of the application program interface include repository information (uuid of the repository) and VDI information (uuid of VDI), the main function of the implementation is: according to the mapping command (map) provided by the rbd-nbd application, establish the mapping relationship between a block device in the VDI domain distributed storage cluster in the repository in the input parameter .

在实际应用中,用户可以在XenServer提供的虚拟磁盘映射消息触发界面中指定存储库和VDI,然后触发虚拟磁盘映射消息(携带用户指定的VDI信息和块设备信息),后台接收到用户触发的虚拟磁盘映射消息后,调用该用于建立VDI与分布式存储集群中的块设备的映射关系的应用程序接口,建立该虚拟磁盘映射消息携带的VDI到分布式存储集群中的一个块设备之间的映射关系。In practical applications, the user can specify the repository and VDI in the virtual disk mapping message trigger interface provided by XenServer, and then trigger the virtual disk mapping message (carrying the VDI information and block device information specified by the user), and the background receives the virtual disk mapping message triggered by the user. After the disk mapping message, call the application program interface for establishing the mapping relationship between the VDI and the block device in the distributed storage cluster, and establish a connection between the VDI carried in the virtual disk mapping message and a block device in the distributed storage cluster. Mapping relations.

以下是执行rbd-nbd应用程序提供的映射命令(map)的示例:The following is an example of executing the map command (map) provided by the rbd-nbd application:

rbd-nbd map RBD_XenStorage-cda789de/RBD-17efad10rbd-nbd map RBD_XenStorage-cda789de/RBD-17efad10

上述命令中,“/”之前的RBD_XenStorage-cda789de是存储库的uuid,“/”之后的RBD-17efad10是VDI的uuid。In the above command, RBD_XenStorage-cda789de before "/" is the uuid of the repository, and RBD-17efad10 after "/" is the uuid of VDI.

本步骤104可以多次执行,实现多个块设备到多个VDI的一一对应的映射关系。This step 104 may be performed multiple times to realize a one-to-one mapping relationship between multiple block devices and multiple VDIs.

可以看出,上述步骤101、102实现了存储库创建并将存储库与XenServer对接,然而此时的存储库中并未存储任何VDI,本步骤103、104中,通过创建VDI并建立VDI与分布式存储集群中的块设备之间的映射关系,从而使得分布式存储集群中的块设备作为VDI加入到XenServer中,因此实现了XenServer对分布式存储的支持。It can be seen that the above steps 101 and 102 realize the creation of the repository and connect the repository with XenServer, but no VDI is stored in the repository at this time. The mapping relationship between the block devices in the distributed storage cluster enables the block devices in the distributed storage cluster to be added to XenServer as VDI, thus realizing XenServer's support for distributed storage.

图1所示本发明实施例中,由于分布式存储集群为基于Ceph的分布式存储集群,所述分布式集群中的块设备类型为rbd,为了能够在XenServer中识别rbd设备,需要预先在XenServer中配置rbd块设备类型,具体地,可以在XenServer的Xapi.conf文件中增加对rbd块设备类型的支持,为实现该目的,可以在Xapi.conf文件中增加如下内容:In the embodiment of the present invention shown in FIG. 1, since the distributed storage cluster is a Ceph-based distributed storage cluster, and the block device type in the distributed cluster is rbd, in order to be able to identify the rbd device in XenServer, it is necessary to Configure the rbd block device type in XenServer. Specifically, you can add support for the rbd block device type in the Xapi.conf file of XenServer. To achieve this, you can add the following content to the Xapi.conf file:

Figure BDA0001929660450000081
Figure BDA0001929660450000081

Figure BDA0001929660450000091
Figure BDA0001929660450000091

另外,上述步骤101中,将在分布式存储集群中建立的存储池用作XenServer的存储库时,还需要进一步基于所述存储库建立消息(消息中携带的存储库支持的设备类型的取值为rbd),设置该存储库支持的块设备类型为rbd。In addition, in the above step 101, when the storage pool established in the distributed storage cluster is used as the storage library of XenServer, a message (the value of the device type supported by the storage library carried in the message) needs to be further established based on the storage library. rbd), set the block device type supported by this repository to rbd.

另外,还需要对XenServer中的tap-ctl文件进行修改,增加用于磁盘格式转换的tap磁盘函数,修改内容如下:In addition, it is also necessary to modify the tap-ctl file in XenServer, and add the tap disk function for disk format conversion. The modifications are as follows:

Figure BDA0001929660450000092
Figure BDA0001929660450000092

基于以上修改内容,当在XenServer中捕获到rbd设备类型的磁盘文件时,可以通过调用所述tap磁盘函数实现rbd块设备支持的磁盘格式(如aio格式)到XenServer支持的磁盘格式(如vhd格式)的转换或与之相反的磁盘格式转换。这里,当建立起存储库中的VDI与分布式存储集群中的块设备之间的映射关系后,即可捕获/检测到rbd设备类型的磁盘文件。Based on the above modifications, when a disk file of the rbd device type is captured in XenServer, the disk format supported by the rbd block device (such as aio format) can be realized by calling the tap disk function to the disk format supported by XenServer (such as vhd format) ) or the opposite on-disk format conversion. Here, when the mapping relationship between the VDI in the repository and the block device in the distributed storage cluster is established, the disk file of the rbd device type can be captured/detected.

在实际应用中,上述步骤104中建立了VDI和分布式存储集群中的块设备之间的映射关系后,还可以取消该映射关系。In practical applications, after the mapping relationship between the VDI and the block device in the distributed storage cluster is established in the above step 104, the mapping relationship can also be canceled.

可以预先配置用于取消VDI与分布式存储集群中的块设备的映射关系的应用程序接口,该应用程序接口的输入参数包括存储库信息(存储库的uuid)和VDI信息(VDI的uuid),实现的主要功能是:根据rbd-nbd应用程序提供的取消映射命令(unmap)取消输入参数中的存储库中该VDI的映射关系(即该VDI和其对应的块设备之间的映射关系)。An application program interface for canceling the mapping relationship between VDI and block devices in a distributed storage cluster can be pre-configured. The input parameters of the application program interface include repository information (uuid of repository) and VDI information (uuid of VDI), The main function implemented is: according to the unmap command (unmap) provided by the rbd-nbd application program to cancel the mapping relationship of the VDI in the repository in the input parameter (that is, the mapping relationship between the VDI and its corresponding block device).

用户可以在XenServer提供的取消虚拟磁盘映射消息触发界面中指定存储库和VDI,然后触发取消虚拟磁盘映射消息(携带用户指定的信息),后台接收到用户触发的虚拟磁盘映射消息后,调用该用于取消VDI与分布式存储集群中的块设备的映射关系的应用程序接口,取消该虚拟磁盘映射消息携带的存储库中的该VDI的映射关系。The user can specify the repository and VDI in the cancel virtual disk mapping message trigger interface provided by XenServer, and then trigger the cancel virtual disk mapping message (carrying the user-specified information). After receiving the user-triggered virtual disk mapping message in the background, call the The application program interface for canceling the mapping relationship between the VDI and the block device in the distributed storage cluster cancels the mapping relationship of the VDI in the storage library carried by the virtual disk mapping message.

以下是执行rbd-nbd应用程序提供的映射命令(map)的示例:The following is an example of executing the map command (map) provided by the rbd-nbd application:

rbd-nbd unmap RBD_XenStorage-cda789de/RBD-17efad10rbd-nbd unmap RBD_XenStorage-cda789de/RBD-17efad10

上述命令中,“/”之前的RBD_XenStorage-cda789de是存储库的uuid,“/”之后的RBD-17efad10是VDI的uuid。In the above command, RBD_XenStorage-cda789de before "/" is the uuid of the repository, and RBD-17efad10 after "/" is the uuid of VDI.

图1所示本发明实施例中,还支持生成VDI快照、VDI快照数据销毁、VDI删除和VDI分离等操作,以下分别介绍:In the embodiment of the present invention shown in FIG. 1, operations such as VDI snapshot generation, VDI snapshot data destruction, VDI deletion, and VDI separation are also supported, which are introduced separately below:

生成VDI快照:Generate a VDI snapshot:

本发明实施例中,可以配置用于生成VDI快照的应用程序接口。用于生成VDI快照的应用程序接口的输入参数包括VDI信息(VDI的uuid),实现的主要功能是:根据XenServer提供的快照生成命令(vdi-snapshot)为VDI生成快照,并将快照数据存入该VDI对应的快照虚拟磁盘(VDI对应的快照虚拟磁盘可以预先设定)。In this embodiment of the present invention, an application program interface for generating a VDI snapshot may be configured. The input parameters of the application program interface for generating VDI snapshots include VDI information (uuid of VDI), and the main functions implemented are: generate snapshots for VDI according to the snapshot generation command (vdi-snapshot) provided by XenServer, and store the snapshot data in The snapshot virtual disk corresponding to the VDI (the snapshot virtual disk corresponding to the VDI can be preset).

在实际应用中,用户可以在XenServer提供的快照生成消息触发界面中指定VDI,然后触发快照生成消息(携带用户指定的VDI信息),后台接收到用户触发的快照生成消息后,可以将该快照生成消息携带的VDI信息作为输入参数,调用该用于建立VDI快照的应用程序接口,从而为该VDI生成对应的快照。In practical applications, the user can specify the VDI in the snapshot generation message trigger interface provided by XenServer, and then trigger the snapshot generation message (carrying the user-specified VDI information). After receiving the user-triggered snapshot generation message in the background, the snapshot can be generated. The VDI information carried in the message is used as an input parameter, and the application program interface for establishing a VDI snapshot is invoked, thereby generating a corresponding snapshot for the VDI.

以下是执行XenServer提供的快照生成命令(vdi-snapshot)的示例:The following is an example of executing the snapshot generation command (vdi-snapshot) provided by XenServer:

#xe vdi-snapshot uuid=<uuid_of_vdi>。#xe vdi-snapshot uuid=<uuid_of_vdi>.

VDI快照数据销毁:VDI snapshot data destruction:

本发明实施例中,可以配置用于销毁快照虚拟磁盘的应用程序接口。用于销毁快照虚拟磁盘的应用程序接口的输入参数包括VDI信息(VDI的uuid),实现的主要功能是:根据XenServer提供的快照数据销毁命令(vdi-data-destroy)销毁VDI对应的快照虚拟磁盘。In this embodiment of the present invention, an application program interface for destroying the snapshot virtual disk may be configured. The input parameters of the application program interface used to destroy the snapshot virtual disk include VDI information (the uuid of the VDI). .

在实际应用中,用户可以在XenServer提供的快照数据销毁消息触发界面中指定VDI,然后触发快照数据销毁消息(携带用户指定的VDI信息),后台接收到用户触发的快照数据销毁消息后,可以将该快照数据销毁消息携带的VDI信息作为输入参数,调用该用于销毁快照虚拟磁盘的应用程序接口,从而将该快照数据销毁消息指定的VDI对应的快照虚拟磁盘销毁。In practical applications, the user can specify the VDI in the snapshot data destruction message trigger interface provided by XenServer, and then trigger the snapshot data destruction message (carrying the user-specified VDI information). After receiving the user-triggered snapshot data destruction message in the background, you can The VDI information carried in the snapshot data destruction message is used as an input parameter, and the API for destroying the snapshot virtual disk is called, thereby destroying the snapshot virtual disk corresponding to the VDI specified by the snapshot data destruction message.

以下是执行XenServer提供的快照数据销毁命令(vdi-data-destroy)的示例:The following is an example of executing the snapshot data destroy command (vdi-data-destroy) provided by XenServer:

#xe vdi-data-destroy uuid=<uuid_of_vdi>#xe vdi-data-destroy uuid=<uuid_of_vdi>

VDI删除:VDI removal:

本发明实施例中,可以配置用于删除VDI的应用程序接口。用于删除VDI的应用程序接口的输入参数包括VDI信息(VDI的uuid),实现的主要功能是:根据XenServer提供的VDI删除命令(vdi-destroy)删除指定的VDI。In this embodiment of the present invention, an application program interface for deleting VDI may be configured. The input parameters of the application program interface for deleting VDI include VDI information (uuid of VDI), and the main function implemented is to delete the specified VDI according to the VDI delete command (vdi-destroy) provided by XenServer.

在实际应用中,用户可以在XenServer提供的VDI删除消息触发界面中指定VDI,然后触发VDI删除消息(携带用户指定的VDI信息),后台接收到用户触发的VDI删除消息后,可以将该VDI删除消息携带的VDI信息作为输入参数,调用该用于删除VDI的应用程序接口,从而将该VDI删除消息指定的VDI删除。In practical applications, the user can specify a VDI in the VDI delete message trigger interface provided by XenServer, and then trigger the VDI delete message (carrying the VDI information specified by the user). After receiving the VDI delete message triggered by the user in the background, the VDI can be deleted. The VDI information carried in the message is used as an input parameter, and the application program interface for deleting VDI is called, thereby deleting the VDI specified by the VDI deletion message.

以下是执行XenServer提供的VDI删除命令(vdi-destroy)的示例:The following is an example of executing the VDI delete command (vdi-destroy) provided by XenServer:

#xe vdi-data-destroy uuid=<uuid_of_vdi>#xe vdi-data-destroy uuid=<uuid_of_vdi>

VDI分离:VDI separation:

本发明实施例中,可以配置用于分离VDI的应用程序接口。用于分离VDI的应用程序接口的输入参数包括VDI信息(VDI的uuid),实现的主要功能是:根据XenServer提供的VDI分离命令(vdi-forget)分离指定的VDI。In this embodiment of the present invention, an application program interface for separating VDI may be configured. The input parameters of the API for separating VDI include VDI information (uuid of VDI), and the main function implemented is: separating the specified VDI according to the VDI separation command (vdi-forget) provided by XenServer.

在实际应用中,用户可以在XenServer提供的VDI分离消息触发界面中指定VDI,然后触发VDI分离消息(携带用户指定的VDI信息),后台接收到用户触发的VDI分离消息后,可以将该VDI分离消息携带的VDI信息作为输入参数,调用该用于分离VDI的应用程序接口,从而将该VDI分离消息指定的VDI分离。In practical applications, the user can specify the VDI in the VDI separation message trigger interface provided by XenServer, and then trigger the VDI separation message (carrying the VDI information specified by the user). After receiving the user-triggered VDI separation message in the background, the VDI can be separated. The VDI information carried in the message is used as an input parameter, and the application program interface for separating the VDI is called, thereby separating the VDI specified by the VDI separation message.

以下是执行XenServer提供的VDI分离命令(vdi-forget)的示例:The following is an example of executing the VDI detach command (vdi-forget) provided by XenServer:

#xe vdi-forget uuid=<uuid_of_vdi>#xe vdi-forget uuid=<uuid_of_vdi>

图1所示所示本发明实施例中,还提供快照导入/导出时的磁盘格式转换。In the embodiment of the present invention shown in FIG. 1 , disk format conversion during snapshot import/export is also provided.

本发明实施例中,可以配置用于导出快照的应用程序接口。用于导出快照的应用程序接口的输入参数包括虚拟机信息(虚拟机的uuid)、目标文件信息、和预设磁盘格式,实现的主要功能是:根据XenServer提供的快照导出命令(vm-export)导出指定虚拟机的快照,并在导出时执行磁盘格式转换。In this embodiment of the present invention, an application program interface for exporting snapshots may be configured. The input parameters of the API for exporting snapshots include virtual machine information (the uuid of the virtual machine), target file information, and preset disk format. The main functions implemented are: according to the snapshot export command (vm-export) provided by XenServer Exports a snapshot of the specified virtual machine and performs disk format conversion on export.

在实际应用中,用户可以在XenServer提供的快照导出消息触发界面中指定VM、目标文件和预设磁盘格式,然后触发快照导出消息(携带用户指定的信息),后台接收到用户触发的快照导出消息后,可以将该快照导出消息携带的信息作为输入参数,调用该用于导出快照的应用程序接口,从而将指定VM的快照导出到指定目标文件中,并在导出时将导出数据执行快照支持的磁盘格式到预设磁盘格式的转换。In practical applications, the user can specify the VM, target file and preset disk format in the snapshot export message trigger interface provided by XenServer, and then trigger the snapshot export message (carrying the information specified by the user), and the user-triggered snapshot export message is received in the background After that, the information carried in the snapshot export message can be used as an input parameter, and the API for exporting snapshots can be called to export the snapshot of the specified VM to the specified target file, and execute the snapshot-supported snapshot of the exported data when exporting. Convert disk format to preset disk format.

以下是执行XenServer提供的快照命令(vm-export)的示例:The following is an example of executing the snapshot command (vm-export) provided by XenServer:

#xe vm-export vm=0d166725-92a8-f3a7-2817 filename=export.xva#xe vm-export vm=0d166725-92a8-f3a7-2817 filename=export.xva

本发明实施例中,可以配置用于导入快照的应用程序接口。用于导入快照的应用程序接口的输入参数包括虚拟机信息(虚拟机的uuid)、目标文件信息、和预设磁盘格式,实现的主要功能是:根据XenServer提供的快照导入命令(vm-import)从指定目标文件中导入指定虚拟机的快照,并在导入时执行磁盘格式转换。In this embodiment of the present invention, an application program interface for importing snapshots may be configured. The input parameters of the application program interface for importing snapshots include virtual machine information (the uuid of the virtual machine), target file information, and preset disk format. The main functions implemented are: according to the snapshot import command (vm-import) provided by XenServer Imports a snapshot of the specified virtual machine from the specified target file, and performs disk format conversion on import.

在实际应用中,用户可以在XenServer提供的快照导入消息触发界面中指定VM、目标文件和预设磁盘格式,然后触发快照导入消息(携带用户指定的信息),后台接收到用户触发的快照导入消息后,可以将该快照导入消息携带的信息作为输入参数,调用该用于导入快照的应用程序接口,从而从指定的目标文件中导入指定VM的快照,并在导入时执行预设磁盘格式到快照支持的磁盘格式的转换。In practical applications, the user can specify the VM, target file and preset disk format in the snapshot import message triggering interface provided by XenServer, and then trigger the snapshot import message (carrying the information specified by the user), and receive the user-triggered snapshot import message in the background After that, the information carried in the snapshot import message can be used as an input parameter, and the API for importing snapshots can be called to import the snapshot of the specified VM from the specified target file, and execute the preset disk format to the snapshot during import. Conversion of supported disk formats.

以下是执行XenServer提供的快照命令(vm-import)的示例:The following is an example of executing the snapshot command (vm-import) provided by XenServer:

#xe vm-import vm=0d166725-92a8-f3a7-2817 filename=export.xva#xe vm-import vm=0d166725-92a8-f3a7-2817 filename=export.xva

在实际实现中,上对于快照导入/导出以及导入/导出的磁盘格式转换,可以通过修改XenServer中的sparse_dd、vhd-tool文件实现,其中,In actual implementation, the above snapshot import/export and import/export disk format conversion can be implemented by modifying the sparse_dd and vhd-tool files in XenServer, where,

对sparse_dd的修改如下:The modifications to sparse_dd are as follows:

Figure BDA0001929660450000131
Figure BDA0001929660450000131

Figure BDA0001929660450000141
Figure BDA0001929660450000141

Figure BDA0001929660450000151
Figure BDA0001929660450000151

Figure BDA0001929660450000161
Figure BDA0001929660450000161

对vhd-tool文件的修改内容如下:The modifications to the vhd-tool file are as follows:

Figure BDA0001929660450000162
Figure BDA0001929660450000162

Figure BDA0001929660450000171
Figure BDA0001929660450000171

Figure BDA0001929660450000181
Figure BDA0001929660450000181

Figure BDA0001929660450000191
Figure BDA0001929660450000191

需要说明的是,由于在Xenserver中建立VM时,需要为VM指定磁盘(即块设备),而本发明中又建立了块设备与VDI的映射关系,因此,这里对指定VM的快照的导入/导出,实际上是对VM的磁盘(即其对应的VDI)中数据的导入/导出。It should be noted that when a VM is created in Xenserver, a disk (ie, a block device) needs to be specified for the VM, and the mapping relationship between the block device and the VDI is established in the present invention. Therefore, the import/ An export is actually an import/export of the data in the VM's disk (ie its corresponding VDI).

图1所示本发明实施例中,还支持VDI克隆、VDI扩容、VDI快照合并等操作,以下分别介绍:In the embodiment of the present invention shown in FIG. 1 , operations such as VDI cloning, VDI expansion, and VDI snapshot merge are also supported, which are introduced separately below:

VDI克隆:VDI clone:

本发明实施例中,可以配置用于克隆VDI的应用程序接口。用于克隆VDI的应用程序接口的输入参数包括VDI信息(VDI的uuid),实现的主要功能是:根据XenServer提供的VDI克隆命令(vdi-clone)克隆指定的VDI。In this embodiment of the present invention, an application program interface for cloning VDI may be configured. The input parameters of the application program interface for cloning VDI include VDI information (uuid of VDI), and the main function implemented is: clone the specified VDI according to the VDI clone command (vdi-clone) provided by XenServer.

在实际应用中,用户可以在XenServer提供的VDI克隆消息触发界面中指定VDI,然后触发VDI克隆消息(携带用户指定的VDI信息),后台接收到用户触发的VDI克隆消息后,可以将该VDI克隆消息携带的VDI信息作为输入参数,调用该用于克隆VDI的应用程序接口,从而对该VDI克隆消息指定的VDI进行克隆。In practical applications, the user can specify the VDI in the VDI clone message trigger interface provided by XenServer, and then trigger the VDI clone message (carrying the user-specified VDI information). After receiving the user-triggered VDI clone message in the background, the VDI clone can be cloned. The VDI information carried in the message is used as an input parameter, and the API for cloning the VDI is called to clone the VDI specified by the VDI clone message.

以下是执行XenServer提供的VDI克隆命令(vdi-clone)的示例:The following is an example of executing the VDI clone command (vdi-clone) provided by XenServer:

#xe vdi-clone uuid=<uuid_of_the_vdi>#xe vdi-clone uuid=<uuid_of_the_vdi>

VDI扩容:VDI expansion:

本发明实施例中,可以配置用于VDI扩容的应用程序接口。用于VDI扩容的应用程序接口的输入参数包括VDI信息(VDI的uuid)和扩容信息,实现的主要功能是:根据XenServer提供的VDI扩容命令(vdi-resize)对指定的VDI进行扩容。In this embodiment of the present invention, an application program interface for VDI expansion can be configured. The input parameters of the application program interface used for VDI expansion include VDI information (uuid of VDI) and expansion information. The main function implemented is to expand the specified VDI according to the VDI expansion command (vdi-resize) provided by XenServer.

在实际应用中,用户可以在XenServer提供的VDI扩容消息触发界面中指定VDI和扩容信息(扩容后大小),然后触发VDI扩容消息(携带用户指定的VDI信息和扩容信息),后台接收到用户触发的VDI扩容消息后,可以将该VDI扩容消息携带的VDI信息和扩容信息作为输入参数,调用该用于VDI扩容的应用程序接口,从而根据该VDI扩容消息指定的扩容信息对指定的VDI进行扩容。In practical applications, the user can specify VDI and expansion information (size after expansion) in the VDI expansion message trigger interface provided by XenServer, and then trigger the VDI expansion message (carrying the VDI information and expansion information specified by the user), and the background receives the user trigger After the VDI expansion message is sent, the VDI information and expansion information carried in the VDI expansion message can be used as input parameters, and the application program interface for VDI expansion can be called to expand the specified VDI according to the expansion information specified in the VDI expansion message. .

以下是执行XenServer提供的VDI扩容命令(vdi-resize)的示例:The following is an example of executing the VDI resize command (vdi-resize) provided by XenServer:

#xe vdi-resize uuid=<vdi_uuid>disk-size=<new_size_for_disk>#xe vdi-resize uuid=<vdi_uuid>disk-size=<new_size_for_disk>

VDI快照合并:VDI snapback:

本发明实施例中,可以配置用于合并VDI快照的应用程序接口。用于合并VDI快照的应用程序接口的输入参数包括快照信息(快照的uuid)和目标文件信息,实现的主要功能是:根据XenServer提供的快照合并命令(snapshot-export-to-template)将指定的快照合并到目标文件中。In this embodiment of the present invention, an application program interface for merging VDI snapshots may be configured. The input parameters of the application program interface for merging VDI snapshots include snapshot information (snapshot uuid) and target file information. The main function implemented is: according to the snapshot merge command (snapshot-export-to-template) provided by XenServer Snapshots are merged into the target file.

在实际应用中,用户可以在XenServer提供的快照合并消息触发界面中指定快照和目标文件,然后触发快照合并消息(携带用户指定的快照信息和目标文件信息),后台接收到用户触发的快照合并消息后,可以将该快照合并消息携带的快照信息和目标文件信息作为输入参数,调用该用于合并VDI快照的应用程序接口,从而将该快照合并消息指定的快照合并到目标文件中。In practical applications, the user can specify the snapshot and target file in the snapshot merge message trigger interface provided by XenServer, and then trigger the snapshot merge message (carrying the snapshot information and target file information specified by the user), and receive the user-triggered snapshot merge message in the background. Afterwards, the snapshot information and target file information carried in the snapshot merging message can be used as input parameters, and the application program interface for merging VDI snapshots can be called, thereby merging the snapshot specified in the snapshot merging message into the target file.

以下是执行XenServer提供的快照合并命令(snapshot-export-to-template)的示例:The following is an example of executing the snapback command (snapshot-export-to-template) provided by XenServer:

#xe snapshot-export-to-template snapshot-uuid=30e4b27d-2e95-8a87-c340 filename=/win07bak.xva#xe snapshot-export-to-template snapshot-uuid=30e4b27d-2e95-8a87-c340 filename=/win07bak.xva

以上对本发明在XenServer中实现分布式存储的方法进行了详细说明,本发明还提供了一种在XenServer中实现分布式存储的插件,以下结合图2进行详细说明。The method for realizing distributed storage in XenServer of the present invention is described in detail above. The present invention also provides a plug-in for realizing distributed storage in XenServer, which is described in detail below with reference to FIG. 2 .

参见图2,图2是本发明实施例在XenServer中实现分布式存储的插件的结构示意图,如图2所示,该插件包括:接收单元201和处理单元202;其中,Referring to FIG. 2, FIG. 2 is a schematic structural diagram of a plug-in implementing distributed storage in XenServer according to an embodiment of the present invention. As shown in FIG. 2, the plug-in includes: a receiving unit 201 and a processing unit 202; wherein,

接收单元201,用于接收用户触发的存储库建立消息;用于接收用户触发的物理块设备PBD创建消息;用于接收用户触发的虚拟磁盘映像VDI创建消息;用于接收用户触发的虚拟磁盘映射消息;The receiving unit 201 is configured to receive a user-triggered repository establishment message; be used to receive a user-triggered physical block device PBD creation message; be used to receive a user-triggered virtual disk image VDI creation message; be used to receive a user-triggered virtual disk mapping information;

处理单元202,用于接收单元201接收到用户触发的存储库建立消息时,将在分布式存储集群中建立的存储池用作XenServer的存储库;用于接收单元201接收到用户触发的PBD创建消息时,确定PBD创建消息携带的所有XenServer主机信息,创建用于连接每一XenServer主机和所述存储库的PBD,并挂载创建的所有PBD;用于接收单元201接收到用户触发的VDI创建消息时,在XenServer中创建VDI并存储到所述存储库;用于接收单元201接收到用户触发的虚拟磁盘映射消息时,建立分布式存储集群中各块设备与所述存储库中各VDI的映射关系。The processing unit 202 is used to use the storage pool established in the distributed storage cluster as the storage library of XenServer when the receiving unit 201 receives the user-triggered repository establishment message; for the receiving unit 201 to receive the user-triggered PBD creation During the message, determine all the XenServer host information carried by the PBD creation message, create a PBD for connecting each XenServer host and the storage library, and mount all the created PBDs; for the receiving unit 201 to receive the user-triggered VDI creation When the message is sent, a VDI is created in XenServer and stored in the repository; when the receiving unit 201 receives a user-triggered virtual disk mapping message, it creates a relationship between each block device in the distributed storage cluster and each VDI in the repository. Mapping relations.

图2所示插件还包括配置单元203;The plug-in shown in FIG. 2 also includes a configuration unit 203;

所述分布式存储集群为基于Ceph的分布式存储集群,所述分布式集群中的块设备类型为rbd;The distributed storage cluster is a Ceph-based distributed storage cluster, and the block device type in the distributed cluster is rbd;

所述配置单元203,用于预先在XenServer中配置rbd块设备类型;The configuration unit 203 is used to configure the rbd block device type in XenServer in advance;

所述处理单元202,将在分布式存储集群中建立的存储池用作XenServer的存储库时,进一步基于所述存储库建立消息,设置该存储库支持的块设备类型为rbd;The processing unit 202, when using the storage pool established in the distributed storage cluster as the storage library of XenServer, further establishes a message based on the storage library, and sets the block device type supported by the storage library to rbd;

所述处理单元202,建立分布式存储集群中各块设备与所述存储库中各VDI的映射关系后,进一步包括:捕获到rbd类型的块设备时,将该块设备的磁盘格式由所述分布式存储集群支持的磁盘格式转换为XenServer支持的磁盘格式。The processing unit 202, after establishing the mapping relationship between each block device in the distributed storage cluster and each VDI in the storage library, further includes: when a block device of type rbd is captured, changing the disk format of the block device from the The disk format supported by the distributed storage cluster is converted to the disk format supported by XenServer.

图2所示插件中,In the plug-in shown in Figure 2,

所述PBD创建消息携带PBD属性信息,所述PBD属性信息包括权限用户信息和存储库安装模式;The PBD creation message carries PBD attribute information, and the PBD attribute information includes authority user information and repository installation mode;

所述处理单元202,创建用于连接每一XenServer主机和所述存储库的PBD,并挂载创建的所有PBD时,进一步确定所述PBD创建消息携带PBD属性信息中的权限用户信息,如果该权限用户是管理员,则判断分布式存储集群的管理员与该管理员是否使用相同密钥文件,若是,则根据所述PBD属性信息对创建的PBD进行属性配置,若否,则终止PBD创建,并输出PBD创建失败信息;如果该权限用户不是管理员,则根据所述PBD属性信息对创建的PBD进行属性配置。The processing unit 202, when creating a PBD for connecting each XenServer host and the repository, and when mounting all the created PBDs, further determines that the PBD creation message carries the authority user information in the PBD attribute information, if the If the authorized user is an administrator, then determine whether the administrator of the distributed storage cluster and the administrator use the same key file. If so, configure the properties of the created PBD according to the PBD property information. If not, terminate the PBD creation , and output PBD creation failure information; if the authorized user is not an administrator, configure the properties of the created PBD according to the PBD property information.

图2所示插件中,In the plug-in shown in Figure 2,

所述接收单元201,进一步用于接收用户触发的虚拟磁盘映射取消消息;The receiving unit 201 is further configured to receive a user-triggered virtual disk mapping cancellation message;

所述处理单元202,进一步用于在接收单元201接收到用户触发的映射取消消息时,根据该映射取消消息携带的rbd快设备和VDI信息,基于Xenserver提供的映射取消命令,取消该rbd块设备与该VDI之间的映射关系。The processing unit 202 is further configured to, when the receiving unit 201 receives a user-triggered mapping cancellation message, cancel the rbd block device based on the mapping cancellation command provided by the Xenserver according to the rbd fast device and VDI information carried in the mapping cancellation message The mapping relationship with this VDI.

图2所示插件中,In the plug-in shown in Figure 2,

所述接收单元201,进一步用于接收用户触发的快照生成消息、接收用户触发的快照数据销毁消息、接收用户触发的VDI删除消息、以及接收用户触发的VDI分离消息;The receiving unit 201 is further configured to receive a user-triggered snapshot generation message, a user-triggered snapshot data destruction message, a user-triggered VDI deletion message, and a user-triggered VDI separation message;

所述处理单元202,进一步用于在接收单元201接收到用户触发的快照生成消息时,基于Xenserver提供的快照生成命令,建立该快照生成消息指定的VDI对应的快照,并将快照数据存入该VDI对应的快照虚拟磁盘;在接收单元201接收到用户触发的快照数据销毁消息时,基于Xenserver提供的快照数据销毁命令,将该快照数据销毁消息指定的VDI对应的快照虚拟磁盘销毁;在接收单元201接收到用户触发的VDI删除消息时,基于Xenserver提供的VDI删除命令,将该VDI删除消息指定的VDI删除;在接收单元201接收到用户触发的VDI分离消息时,基于Xenserver提供的VDI分离命令,将该VDI分离消息指定的VDI分离。The processing unit 202 is further configured to, when the receiving unit 201 receives a user-triggered snapshot generation message, create a snapshot corresponding to the VDI specified by the snapshot generation message based on the snapshot generation command provided by the Xenserver, and store the snapshot data in the snapshot generation message. The snapshot virtual disk corresponding to the VDI; when the receiving unit 201 receives the snapshot data destruction message triggered by the user, based on the snapshot data destruction command provided by Xenserver, the snapshot virtual disk corresponding to the VDI specified by the snapshot data destruction message is destroyed; in the receiving unit When receiving the VDI deletion message triggered by the user, 201 deletes the VDI specified by the VDI deletion message based on the VDI deletion command provided by Xenserver; when the receiving unit 201 receives the VDI separation message triggered by the user, based on the VDI separation command provided by Xenserver , detach the VDI specified in the VDI detach message.

图2所示插件中,In the plug-in shown in Figure 2,

所述接收单元201,进一步用于接收用户触发的快照导出消息;用于接收用户触发的快照导入消息;The receiving unit 201 is further configured to receive a user-triggered snapshot export message; configured to receive a user-triggered snapshot import message;

所述处理单元202,进一步用于在接收单元201接收到用户触发的快照导出消息时,基于XenServer提供的快照导出命令,将该快照导出消息指定的虚拟机vm的快照导出到该快照导出消息指定的目标文件,并在导出时执行快照支持的磁盘格式到预设磁盘格式的转换;用于在接收单元201接收到用户触发的快照导入消息时,基于XenServer提供的快照导入命令,将该快照导入消息指定的虚拟机vm的快照从该快照导入消息指定的目标文件导入,并在导入时执行预设磁盘格式到快照支持的磁盘格式的转换。The processing unit 202 is further configured to, when the receiving unit 201 receives the snapshot export message triggered by the user, based on the snapshot export command provided by XenServer, export the snapshot of the virtual machine vm specified by the snapshot export message to the snapshot specified by the snapshot export message. target file, and perform the conversion of the disk format supported by the snapshot to the preset disk format when exporting; for when the receiving unit 201 receives the snapshot import message triggered by the user, based on the snapshot import command provided by XenServer, the snapshot is imported The snapshot of the virtual machine vm specified in the message is imported from the target file specified in the snapshot import message, and the conversion from the preset disk format to the disk format supported by the snapshot is performed during import.

图2所示插件中,In the plug-in shown in Figure 2,

所述接收单元201,进一步用于:接收用户触发的VDI克隆消息、接收用户触发的VDI扩容消息、以及接收用户触发的VDI扩容消息;The receiving unit 201 is further configured to: receive a user-triggered VDI clone message, receive a user-triggered VDI capacity expansion message, and receive a user-triggered VDI capacity expansion message;

所述处理单元202,进一步用于在接收单元201接收到用户触发的VDI克隆消息时,基于Xenserver提供的VDI克隆命令对该VDI克隆消息指定的VDI进行克隆;在接收单元201接收到用户触发的VDI扩容消息时,确定该VDI扩容消息携带的VDI信息和扩容信息,基于Xenserver提供的VDI扩容命令,按照所述扩容信息对该VDI进行扩容;在接收单元201接收到用户触发的快照合并消息时,确定该快照合并消息携带的快照信息和目标文件信息,基于Xenserver提供的快照合并命令,将该快照合并到目标文件中。The processing unit 202 is further configured to clone the VDI specified by the VDI clone message based on the VDI clone command provided by the Xenserver when the receiving unit 201 receives the VDI clone message triggered by the user; During the VDI expansion message, determine the VDI information and the expansion information carried in the VDI expansion message, and based on the VDI expansion command provided by Xenserver, expand the VDI according to the expansion information; when the receiving unit 201 receives the user-triggered snapshot merge message , determine the snapshot information and target file information carried in the snapshot merge message, and merge the snapshot into the target file based on the snapshot merge command provided by Xenserver.

以上所述仅为本发明的较佳实施例而已,并不用以限制本发明,凡在本发明的精神和原则之内,所做的任何修改、等同替换、改进等,均应包含在本发明保护的范围之内。The above descriptions are only preferred embodiments of the present invention, and are not intended to limit the present invention. Any modifications, equivalent replacements, improvements, etc. made within the spirit and principles of the present invention shall be included in the present invention. within the scope of protection.

Claims (14)

1. A method for implementing distributed storage in a XenServer, the method comprising:
receiving a storage library establishing message triggered by a user, and using a storage pool established in the distributed storage cluster as a storage library of the XenServer;
receiving a Physical Block Device (PBD) creation message triggered by a user, determining all XenServer host information carried by the PBD creation message, creating a PBD for connecting each XenServer host with the storage library, and mounting all the created PBDs;
receiving a Virtual Disk Image (VDI) establishing message triggered by a user, establishing a VDI in a XenServer and storing the VDI in the storage library;
and receiving a virtual disk mapping message triggered by a user, and establishing a mapping relation between each piece of equipment in the distributed storage cluster and each VDI in the storage library.
2. The method of claim 1,
the distributed storage cluster is a distributed storage cluster based on Ceph, and the type of block equipment in the distributed storage cluster is rbd;
configuring the type of the rbd block device in the XenServer in advance;
when the storage pool established in the distributed storage cluster is used as a storage pool of the XenServer, the type of the block device supported by the storage pool is set to be rbd further based on the storage pool establishment message;
after the mapping relationship between each piece of device in the distributed storage cluster and each VDI in the repository is established, the method further includes: and when the rbd type block device is captured, converting the disk format of the block device from the disk format supported by the distributed storage cluster into the disk format supported by the XenServer.
3. The method of claim 2,
the PBD establishing message carries PBD attribute information, and the PBD attribute information comprises authority user information and a memory bank installation mode;
when a PBD used for connecting each XenServer host and the memory bank is created, and all created PBDs are mounted, further determining that the PBD creation message carries authority user information in PBD attribute information, if the authority user is an administrator, judging whether the administrator of the distributed storage cluster and the administrator use the same key file, if so, performing attribute configuration on the created PBD according to the PBD attribute information, if not, terminating the PBD creation, and outputting PBD creation failure information; and if the authority user is not the administrator, performing attribute configuration on the created PBD according to the PBD attribute information.
4. The method of claim 2, further comprising:
receiving a virtual disk mapping canceling message triggered by a user, determining the information of the rbd fast device and the VDI carried by the virtual disk mapping canceling message, and canceling the mapping relation between the rbd block device and the VDI based on a mapping canceling command provided by the Xenerver.
5. The method of claim 2, further comprising:
receiving a snapshot generating message triggered by a user, establishing a snapshot corresponding to a VDI (virtual desktop infrastructure) specified by the snapshot generating message based on a snapshot generating command provided by the Xenerver, and storing snapshot data in a snapshot virtual disk corresponding to the VDI;
receiving a snapshot data destruction message triggered by a user, and destroying a snapshot virtual disk corresponding to a VDI (virtual desktop infrastructure) specified by the snapshot data destruction message based on a snapshot data destruction command provided by the Xenerver;
receiving a VDI deletion message triggered by a user, and deleting the VDI specified by the VDI deletion message based on a VDI deletion command provided by the Xenerver;
and receiving a VDI separation message triggered by a user, and separating the VDI specified by the VDI separation message based on a VDI separation command provided by the Xenerver.
6. The method of claim 5, further comprising:
receiving a snapshot export message triggered by a user, exporting a snapshot of a virtual machine vm specified by the snapshot export message to a target file specified by the snapshot export message based on a snapshot export command provided by a XenServer, and executing conversion from a disk format supported by the snapshot to a preset disk format during export;
receiving a snapshot import message triggered by a user, importing the snapshot of the virtual machine vm specified by the snapshot import message from a target file specified by the snapshot import message based on a snapshot import command provided by the XenServer, and executing conversion from a preset disk format to a disk format supported by the snapshot during import.
7. The method of claim 2, further comprising:
receiving a VDI cloning message triggered by a user, and cloning a VDI specified by the VDI cloning message based on a VDI cloning command provided by the Xenerver;
receiving a VDI capacity expansion message triggered by a user, determining VDI information and capacity expansion information carried by the VDI capacity expansion message, and based on a VDI capacity expansion command provided by Xenerver, carrying out capacity expansion on the VDI according to the capacity expansion information;
receiving a snapshot merging message triggered by a user, determining snapshot information and target file information carried by the snapshot merging message, and merging the snapshot into the target file based on a snapshot merging command provided by the Xenerver.
8. A plugin for implementing distributed storage in a XenServer, the plugin comprising: a receiving unit and a processing unit;
the receiving unit is used for receiving a repository establishment message triggered by a user; the PBD creation message is used for receiving a user-triggered PBD creation message; the virtual disk image management system is used for receiving a virtual disk image VDI creating message triggered by a user; the virtual disk mapping message is used for receiving a virtual disk mapping message triggered by a user;
the processing unit is used for using the storage pool established in the distributed storage cluster as a storage pool of the XenServer when the receiving unit receives the storage pool establishing message triggered by the user; the receiving unit is used for determining all XenServer host information carried by the PBD creation message when receiving the PBD creation message triggered by the user, creating the PBD for connecting each XenServer host with the storage library and mounting all the created PBDs; the receiving unit is used for creating the VDI in the XenServer and storing the VDI in the storage library when receiving a VDI creation message triggered by a user; the receiving unit is used for establishing the mapping relation between each piece of equipment in the distributed storage cluster and each VDI in the storage library when receiving a virtual disk mapping message triggered by a user.
9. An insert as claimed in claim 8, further comprising a configuration unit;
the distributed storage cluster is a distributed storage cluster based on Ceph, and the type of block equipment in the distributed storage cluster is rbd;
the configuration unit is used for configuring the type of the rbd block device in the XenServer in advance;
when the storage pool established in the distributed storage cluster is used as a storage pool of the XenServer, the processing unit further sets the block device type supported by the storage pool to be rbd based on the storage pool establishment message;
after the processing unit establishes the mapping relationship between each piece of device in the distributed storage cluster and each VDI in the repository, the processing unit further includes: and when the rbd type block device is captured, converting the disk format of the block device from the disk format supported by the distributed storage cluster into the disk format supported by the XenServer.
10. The insert of claim 9,
the PBD establishing message carries PBD attribute information, and the PBD attribute information comprises authority user information and a memory bank installation mode;
the processing unit is used for creating a PBD for connecting each XenServer host with the memory bank, further determining that the PBD creation message carries authority user information in PBD attribute information when mounting all the created PBDs, judging whether an administrator of the distributed storage cluster and the administrator use the same key file if the authority user is the administrator, performing attribute configuration on the created PBD according to the PBD attribute information if the authority user is the administrator, and stopping PBD creation and outputting PBD creation failure information if the authority user is the administrator; and if the authority user is not the administrator, performing attribute configuration on the created PBD according to the PBD attribute information.
11. The insert of claim 9,
the receiving unit is further configured to receive a virtual disk mapping cancellation message triggered by a user;
the processing unit is further configured to, when the receiving unit receives a mapping canceling message triggered by a user, cancel a mapping relationship between the rbd block device and the VDI based on a mapping canceling command provided by the Xenserver according to the rbd fast device and the VDI information carried in the mapping canceling message.
12. The insert of claim 9,
the receiving unit is further configured to receive a snapshot generation message triggered by a user, a snapshot data destruction message triggered by the user, a VDI deletion message triggered by the user, and a VDI separation message triggered by the user;
the processing unit is further configured to, when the receiving unit receives a snapshot generating message triggered by a user, establish a snapshot corresponding to the VDI specified by the snapshot generating message based on a snapshot generating command provided by the Xenserver, and store snapshot data in a snapshot virtual disk corresponding to the VDI; when a receiving unit receives a snapshot data destruction message triggered by a user, destroying a snapshot virtual disk corresponding to a VDI (virtual desktop infrastructure) specified by the snapshot data destruction message based on a snapshot data destruction command provided by the Xenserver; when a receiving unit receives a VDI deletion message triggered by a user, deleting the VDI specified by the VDI deletion message based on a VDI deletion command provided by the Xenerver; when the receiving unit receives a VDI separation message triggered by a user, the VDI specified by the VDI separation message is separated based on a VDI separation command provided by the Xenerver.
13. The insert of claim 12,
the receiving unit is further configured to receive a snapshot export message triggered by a user; the snapshot import message is used for receiving a snapshot triggered by a user;
the processing unit is further configured to, when the receiving unit receives a snapshot export message triggered by a user, export a snapshot of the virtual machine vm specified by the snapshot export message to a target file specified by the snapshot export message based on a snapshot export command provided by the XenServer, and perform conversion from a disk format supported by the snapshot to a preset disk format when exporting the snapshot export command; the method and the device are used for importing the snapshot of the virtual machine vm specified by the snapshot import message from the target file specified by the snapshot import message based on the snapshot import command provided by the XenServer when the receiving unit receives the snapshot import message triggered by the user, and executing the conversion from the preset disk format to the disk format supported by the snapshot during the import.
14. The insert of claim 9,
the receiving unit is further configured to: receiving a VDI cloning message triggered by a user, receiving a VDI capacity expansion message triggered by the user and receiving a VDI capacity expansion message triggered by the user;
the processing unit is further configured to clone the VDI specified by the VDI clone message based on a VDI clone command provided by the Xenserver when the receiving unit receives the VDI clone message triggered by the user; when a receiving unit receives a VDI capacity expansion message triggered by a user, VDI information and capacity expansion information carried by the VDI capacity expansion message are determined, and the VDI is subjected to capacity expansion according to the capacity expansion information based on a VDI capacity expansion command provided by Xenerver; when a receiving unit receives a snapshot merging message triggered by a user, snapshot information and target file information carried by the snapshot merging message are determined, and the snapshot is merged into the target file based on a snapshot merging command provided by the Xenerver.
CN201811634220.4A 2018-12-29 2018-12-29 A method and device for realizing distributed storage in XenServer Active CN109814946B (en)

Priority Applications (1)

Application Number Priority Date Filing Date Title
CN201811634220.4A CN109814946B (en) 2018-12-29 2018-12-29 A method and device for realizing distributed storage in XenServer

Applications Claiming Priority (1)

Application Number Priority Date Filing Date Title
CN201811634220.4A CN109814946B (en) 2018-12-29 2018-12-29 A method and device for realizing distributed storage in XenServer

Publications (2)

Publication Number Publication Date
CN109814946A CN109814946A (en) 2019-05-28
CN109814946B true CN109814946B (en) 2022-03-25

Family

ID=66601811

Family Applications (1)

Application Number Title Priority Date Filing Date
CN201811634220.4A Active CN109814946B (en) 2018-12-29 2018-12-29 A method and device for realizing distributed storage in XenServer

Country Status (1)

Country Link
CN (1) CN109814946B (en)

Families Citing this family (4)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
CN110321321B (en) * 2019-05-31 2023-06-23 平安科技(深圳)有限公司 Snapshot read-write method, device and equipment for network block equipment and storage medium
CN110321251B (en) * 2019-06-03 2023-06-20 平安科技(深圳)有限公司 Data backup method, device, equipment and storage medium based on network block equipment
CN112988468A (en) * 2021-04-27 2021-06-18 云宏信息科技股份有限公司 Method for virtualizing operating system using Ceph and computer-readable storage medium
CN112988077B (en) * 2021-04-27 2021-07-23 云宏信息科技股份有限公司 Virtual disk copying method and computer readable storage medium

Citations (8)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
CN104917815A (en) * 2015-04-21 2015-09-16 武大吉奥信息技术有限公司 Heterogeneous cloud isolation system and method for in-cloud GIS service computing
CN106201349A (en) * 2015-12-31 2016-12-07 华为技术有限公司 A kind of method and apparatus processing read/write requests in physical host
CN106776123A (en) * 2016-11-25 2017-05-31 上海爱数信息技术股份有限公司 A kind of disaster tolerance real-time data replication method and system, backup client
CN106972962A (en) * 2017-03-22 2017-07-21 北京匡恩网络科技有限责任公司 Collocation method, the apparatus and system of high-availability cluster
CN107220342A (en) * 2017-05-26 2017-09-29 郑州云海信息技术有限公司 The control method and system of a kind of distributed data base
CN108632360A (en) * 2018-04-12 2018-10-09 北京百悟科技有限公司 A kind of virtual cloud terminal and virtual cloud terminal server
CN108628765A (en) * 2018-04-13 2018-10-09 新华三技术有限公司 Cache implementation methods and device in distributed storage of increasing income software Ceph
CN108710621A (en) * 2018-03-12 2018-10-26 广东睿江云计算股份有限公司 A method of MySQL database horizontal extension is realized based on ceph

Family Cites Families (17)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
CN102081575A (en) * 2011-01-27 2011-06-01 北京深思洛克软件技术股份有限公司 Dynamic distribution method and device of memory space of virtual disc
US20120311457A1 (en) * 2011-06-06 2012-12-06 Cisco Technology, Inc. Merging Remote and Local Interfaces for Application Integration
US8732401B2 (en) * 2011-07-07 2014-05-20 Atlantis Computing, Inc. Method and apparatus for cache replacement using a catalog
CN103294675B (en) * 2012-02-23 2018-08-03 上海盛大网络发展有限公司 Data-updating method and device in a kind of distributed memory system
CN103713952B (en) * 2013-12-17 2017-02-15 创新科存储技术(深圳)有限公司 Virtual disk distributed-memory method based on UFS (Universal Flash Storage)
CN104158864A (en) * 2014-08-02 2014-11-19 成都致云科技有限公司 Self-healing cloud storage method for data block and repairing method
CN104239166B (en) * 2014-09-11 2017-10-24 武汉噢易云计算股份有限公司 A kind of method that file backup is realized to virtual machine in operation
CN104360896B (en) * 2014-12-04 2017-12-15 北京航空航天大学 A kind of parallel flow emulation accelerated method based on GPU cluster
US9851990B2 (en) * 2015-01-30 2017-12-26 American Megatrends, Inc. Method and system for performing on-demand data write through based on UPS power status
CN104580531A (en) * 2015-02-05 2015-04-29 湖南合天智汇信息技术有限公司 Web remote desktop access control method based on WebSocket agency
CN105224607B (en) * 2015-09-06 2019-05-24 浪潮(北京)电子信息产业有限公司 A kind of Virtual File System design method for simulating cloud storage equipment
CN205809860U (en) * 2016-06-15 2016-12-14 成都云祺科技有限公司 A kind of virtual machine backup and recovery system
CN106201357A (en) * 2016-07-18 2016-12-07 浪潮(北京)电子信息产业有限公司 The construction method of a kind of storage pool and system
CN106528265A (en) * 2016-10-24 2017-03-22 郑州云海信息技术有限公司 Virtual machine management method and system based on distributed SAN (Storage Area Network) storage architecture
CN107046563B (en) * 2017-01-19 2019-01-25 无锡华云数据技术服务有限公司 A kind of implementation method, system and the cloud platform of distribution type high efficient cloud disk
CN107526545A (en) * 2017-08-16 2017-12-29 国家电网公司 A kind of resource consolidation method of distributed storage and centralised storage
CN107798130B (en) * 2017-11-17 2020-08-07 广西广播电视信息网络股份有限公司 Method for storing snapshot in distributed mode

Patent Citations (8)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
CN104917815A (en) * 2015-04-21 2015-09-16 武大吉奥信息技术有限公司 Heterogeneous cloud isolation system and method for in-cloud GIS service computing
CN106201349A (en) * 2015-12-31 2016-12-07 华为技术有限公司 A kind of method and apparatus processing read/write requests in physical host
CN106776123A (en) * 2016-11-25 2017-05-31 上海爱数信息技术股份有限公司 A kind of disaster tolerance real-time data replication method and system, backup client
CN106972962A (en) * 2017-03-22 2017-07-21 北京匡恩网络科技有限责任公司 Collocation method, the apparatus and system of high-availability cluster
CN107220342A (en) * 2017-05-26 2017-09-29 郑州云海信息技术有限公司 The control method and system of a kind of distributed data base
CN108710621A (en) * 2018-03-12 2018-10-26 广东睿江云计算股份有限公司 A method of MySQL database horizontal extension is realized based on ceph
CN108632360A (en) * 2018-04-12 2018-10-09 北京百悟科技有限公司 A kind of virtual cloud terminal and virtual cloud terminal server
CN108628765A (en) * 2018-04-13 2018-10-09 新华三技术有限公司 Cache implementation methods and device in distributed storage of increasing income software Ceph

Also Published As

Publication number Publication date
CN109814946A (en) 2019-05-28

Similar Documents

Publication Publication Date Title
CN109814946B (en) A method and device for realizing distributed storage in XenServer
US8627310B2 (en) Capturing multi-disk virtual machine images automatically
EP2765508B1 (en) Installation method and installation device for application software
US8924954B2 (en) Application software installation method and application software installation apparatus
US8954760B2 (en) Authentication of solution topology
CN106557355A (en) The generation method and generating means of virtual machine image
US8924700B1 (en) Techniques for booting from an encrypted virtual hard disk
US8578064B2 (en) Interception and management of I/O operations on portable storage devices
US10169027B2 (en) Upgrade of an operating system of a virtual machine
US12099415B2 (en) Devices and methods for fast backup
CN106155753A (en) Application program installation method, device and terminal
US11263082B2 (en) Data recovery of guest virtual machines
CN106951799B (en) A Method for Constructing Android Dual Data Partitions
WO2018082289A1 (en) Method and device for managing application and computer storage medium
WO2015176359A1 (en) Android system-based multiuser management method, device, and computer storage medium
JP2023169287A (en) Memory efficient software patching for updating applications on computing devices
US11231940B2 (en) System and method for automatic recovery of information handling systems
US11449388B1 (en) Synthesized network block devices for recovery of image backups
CN115113798B (en) A data migration method, system and equipment applied to distributed storage
CN114661420B (en) Application protection method, device and system based on Kubernetes container platform
CN108089948A (en) A kind of database backup method and device
US10114664B1 (en) Systems and methods for automated delivery and identification of virtual drives
CN114489945A (en) Access control method and electronic device
US11847221B2 (en) System and method for content scanning using sparse files
US20220091747A1 (en) Fast recovery in recoverpoint using direct storage access

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
CB02 Change of applicant information

Address after: 518057 Shenzhen Software Park, No. 9, 501, 502, Science and Technology Middle Road, Nanshan District, Shenzhen City, Guangdong Province

Applicant after: Shenzhen Innovation Technology Co.,Ltd.

Address before: 518057 Shenzhen Software Park, No. 9, 501, 502, Science and Technology Middle Road, Nanshan District, Shenzhen City, Guangdong Province

Applicant before: UITSTOR (USA) Inc.

CB02 Change of applicant information
GR01 Patent grant
GR01 Patent grant
PP01 Preservation of patent right

Effective date of registration: 20241115

Granted publication date: 20220325

PP01 Preservation of patent right