CN101741861A - 一种数据存储方法及装置 - Google Patents
一种数据存储方法及装置 Download PDFInfo
- Publication number
- CN101741861A CN101741861A CN 201010000087 CN201010000087A CN101741861A CN 101741861 A CN101741861 A CN 101741861A CN 201010000087 CN201010000087 CN 201010000087 CN 201010000087 A CN201010000087 A CN 201010000087A CN 101741861 A CN101741861 A CN 101741861A
- Authority
- CN
- China
- Prior art keywords
- memory device
- server
- application server
- virtualized
- selection
- 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
Links
Images
Landscapes
- Information Retrieval, Db Structures And Fs Structures Therefor (AREA)
Abstract
本发明公开了一种数据存储方法,包括:虚拟化服务器获取存储设备的资源信息,并获取所述应用服务器所需要的存储空间大小;所述虚拟化服务器根据所述资源信息和所述存储空间大小为所述应用服务器选择存储设备;所述虚拟化服务器将选择结果发送给所述应用服务器和所述存储设备,由所述应用服务器和所述存储设备建立连接。本发明中,应用服务器的客户端上不需要安装私有的客户端软件,就可以实现应用服务器对存储设备的访问。
Description
技术领域
本发明涉及存储技术领域,特别是涉及一种数据存储方法及装置。
背景技术
随着Internet的迅速发展以及对数据安全观念的加强,对数据的保护提出了越来越高的要求,而使用存储设备进行数据存储的方法得到了重视;对于一个企业来说,需要存储更多的数据,也要求更大的存储容量,而且企业数据的安全性极为重要,一旦重要的数据被破坏或丢失,就会对企业日常生产造成重大影响,甚至是难以弥补的损失,因此,提供可靠的数据存储保证是至关重要的。
iSCSI(internet Small Computer System Interface,基于internet的SCSI传输协议)是一种基于TCP(Transmission Control Protocol,输控制协议)/IP(Internet Protocol,网络互连协议)的SCSI(Small Computer System Interface,小型计算机系统接口)传输协议。在iSCSI中,Initiator(连接发起端)和target(连接接收端)之间可以利用因特网来传输SCSI命令和数据。
目前,iSCSI协议主要用于应用服务器和存储系统的数据传输,典型的iSCSI应用场景如图1所示。其中,在应用服务器上集成了一个iSCSI Initiator模块,在存储系统上集成一个iSCSI target模块。客户端通过将SCSI命令和/或数据封装在iSCSI报文中,并通过IP网络发送给存储系统,由存储系统对每个iSCSI报文进行处理,取出其中的数据并写入到存储介质(例如,磁盘)中。
现有技术中,应用服务器与存储系统的连接方式有多种:
(1)应用服务器知道存储系统的地址,并单独与存储系统相连,如图1所示。
在这种连接方式下,应用服务器需要知道存储系统的地址,并且应用服务器能够与存储系统进行通信。此时,应用服务器只需要安装initiator软件(采用公有的iSCSI协议),即可以与存储系统进行通信,获取存储资源,并进行数据读写。
(2)在应用服务器与存储系统之外还存在一个虚拟化服务器,如图2所示的示意图。
在这种连接方式下,虚拟化服务器需要首先将存储设备虚拟化,而虚拟化的过程是将存储设备上的资源分配给虚拟化服务器,然后虚拟化服务器再在该资源上加一层虚拟化信息。同时,在应用服务器上除了需要安装initiator软件之外,还需要安装一个与虚拟化服务器配套的软件(例如,虚拟客户端软件)。应用服务器需要通过虚拟客户端软件与虚拟化服务器进行通信,发送控制信息给虚拟化服务器;而虚拟化服务器通过控制信息,将存储设备的数据块地址分配给应用服务器,应用服务器与存储设备建立连接,并进行数据的读取操作。
而在应用服务器进行数据读写时,每次都需要首先向虚拟化服务器发送读写请求,请求读写的数据块地址,虚拟化服务器根据资源的虚拟化信息,查找到应用服务器需要读写的数据块地址,并将这些地址发送给应用服务器,应用服务器根据这些地址,向存储设备进行读写,即应用服务器每次数据读写都需要经过虚拟化服务器。
但是,对于应用服务器单独与存储系统相连的情况,由于应用服务器只关心有多少存储空间,并不关心实际的存储设备在哪里,而且不需要知道存储设备的地址,所以当应用服务器与存储设备都非常多时,管理非常不方便。
对于应用服务器与存储系统之外还存在一个虚拟化服务器的情况,需要在每个应用服务器上安装虚拟客户端,当应用服务器很多时,很不方便;而且应用服务器与虚拟化服务器之间采用的是私有协议,不利于互通。此外,当存在多个图2所示的小网时,统一管理也存在问题。图3所示的一种存在多个小网的示意图,例如,1个省下面有5个市,每个市下面有5个县,而每个县中都有这样一个小网时,如果省里需要统一管理存储设备时,需要使省里的服务器可以与所有的存储设备通信,从而加大了网络建设的难度。
发明内容
本发明提供一种数据存储方法及装置,以实现对存储设备的访问,并且能够自动扩容,管理方便。
为了达到上述目的,本发明提出了一种数据存储方法,应用于包括虚拟化服务器、应用服务器和至少一个存储设备的系统中,所述方法包括以下步骤:
所述虚拟化服务器获取存储设备的资源信息,并获取所述应用服务器所需要的存储空间大小;
所述虚拟化服务器根据所述资源信息和所述存储空间大小从至少一个存储设备中为所述应用服务器选择存储设备;
所述虚拟化服务器将选择结果发送给所述应用服务器和所述选择的存储设备,由所述应用服务器和所述选择的存储设备建立连接。
获取所述应用服务器所需要的存储空间大小具体包括:
所述虚拟化服务器接收来自所述应用服务器的iSCSI协议的discovery报文,所述discovery报文中携带了所述应用服务器所需要的存储空间大小;
所述虚拟化服务器从所述discovery报文中获取所述应用服务器所需要的存储空间大小。
所述虚拟化服务器根据所述资源信息和所述存储空间大小从至少一个存储设备中为所述应用服务器选择存储设备具体包括:
所述虚拟化服务器根据所述资源信息维护所述存储设备的存储空间情况;
所述虚拟化服务器根据所述存储设备的存储空间情况选择不小于所述存储空间大小的存储设备为所述应用服务器提供存储空间。
所述虚拟化服务器将选择结果发送给所述应用服务器和所述选择的存储设备具体包括:
所述虚拟化服务器通过iSCSI协议的回应报文将所述选择的存储设备的IP地址和所述选择的存储设备对应的target名称发送给所述应用服务器;
并通过iSCSI协议的SNACK Request报文将所述应用服务器对应的initiator与所述选择的存储设备对应的target的对应关系发送给所述选择的存储设备。
当所述应用服务器对应的存储空间不够时,所述方法还包括:
所述虚拟化服务器接收来自所述应用服务器的携带了需要扩容空间大小的信息;
所述虚拟化服务器根据所述需要扩容空间大小和所述资源信息为所述应用服务器增加存储空间。
所述方法应用的系统中还包括至少一个级别的管理服务器,不同级别的管理服务器之间构成上下级关系,最低级别的管理服务器与所述虚拟化服务器构成上下级关系;当上级管理服务器需要对存储设备进行统一管理时,所述方法还包括:
所述虚拟化服务器将自身存储的资源信息发送给自身的上级管理服务器,由各级管理服务器依次向自身的上级管理服务器发送所述资源信息,并最终将所述资源信息发送给需要对存储设备进行统一管理的管理服务器。
一种数据存储装置,应用于包括虚拟化服务器、应用服务器和至少一个存储设备的系统中,所述数据存储装置在所述系统中作为所述虚拟化服务器,所述装置包括:
获取模块,用于获取存储设备的资源信息,并获取所述应用服务器所需要的存储空间大小;
选择模块,与所述获取模块连接,用于根据所述资源信息和所述存储空间大小从至少一个存储设备中为所述应用服务器选择存储设备;
收发模块,与所述选择模块连接,用于将选择结果发送给所述应用服务器和所述选择的存储设备,由所述应用服务器和所述选择的存储设备建立连接。
所述获取模块具体用于,接收来自所述应用服务器的iSCSI协议的discovery报文,所述discovery报文中携带了所述应用服务器所需要的存储空间大小;并从所述discovery报文中获取所述应用服务器所需要的存储空间大小;
所述选择模块具体用于,根据所述资源信息维护所述存储设备的存储空间情况;并根据所述存储设备的存储空间情况选择不小于所述存储空间大小的存储设备为所述应用服务器提供存储空间;
所述收发模块具体用于,通过iSCSI协议的回应报文将所述选择的存储设备的IP地址和所述选择的存储设备对应的target名称发送给所述应用服务器;并通过iSCSI协议的SNACK Request报文将所述应用服务器对应的initiator与所述选择的存储设备对应的target的对应关系发送给所述选择的存储设备。
当所述应用服务器对应的存储空间不够时,
所述收发模块还用于,接收来自所述应用服务器的携带了需要扩容空间大小的信息;
所述选择模块还用于,根据所述需要扩容空间大小和所述资源信息为所述应用服务器增加存储空间。
所述装置应用的系统中还包括至少一个级别的管理服务器,不同级别的管理服务器之间构成上下级关系,最低级别的管理服务器与所述虚拟化服务器构成上下级关系;当上级管理服务器需要对存储设备进行统一管理时,
所述收发模块还用于,将自身存储的资源信息发送给自身的上级管理服务器,由各级管理服务器依次向自身的上级管理服务器发送所述资源信息,并最终将所述资源信息发送给需要对存储设备进行统一管理的管理服务器。
与现有技术相比,本发明具有以下优点:
通过使用公有的iSCSI协议,使得应用服务器的客户端上不需要安装私有的客户端软件,就可以实现应用服务器对存储设备的访问,从而在应用服务器与存储设备之间建立连接并进行数据读写。而且应用服务器能够自动扩容,提高了应用服务器的使用感受。在上级管理服务器需要管理存储设备时,能够由虚拟化服务器将存储设备的资源信息逐级上报,并最终上报给需要管理存储设备的管理服务器上,从而实现了存储设备的分级管理。
附图说明
图1为现有技术中应用服务器与存储系统的连接方式示意图;
图2为现有技术中应用服务器与存储系统的另一种连接方式示意图;
图3为现有技术中存在多个应用服务器与存储系统对应小网的示意图;
图4为本发明提出的一种数据存储方法流程图;
图5为本发明一种具体应用场景示意图;
图6为对应图5应用场景下提出的一种数据存储方法流程图;
图7为本发明中discovery报文示意图;
图8为本发明中回应报文示意图;
图9为本发明中SNACK Request报文示意图;
图10为本发明中NOP-OUT报文示意图;
图11为本发明中NOP-IN报文示意图;
图12为另一种应用场景下discovery报文示意图;
图13为另一种应用场景下将ST-A的IP地址与target名称发送给S的报文示意图;
图14为另一种应用场景下将S的initiator与target名称发送给ST-A的报文示意图;
图15为另一种应用场景下NOP-OUT报文示意图;
图16为另一种应用场景下NOP-IN报文示意图;
图17为本发明提出的一种数据存储装置结构图。
具体实施方式
针对现有技术中应用服务器上需要安装客户端软件,而且与虚拟化服务器之间使用私有协议,当存在多级管理时,上级管理服务器很难管理所有存储空间的问题,本发明中提供一种数据存储方法,使得应用服务器上不需要安装客户端软件,并能够使用公有协议(例如,iSCSI协议)与虚拟化服务器进行通信,而且上级管理服务器只需要与下一级虚拟化服务器通信,即可以获得存储设备的空间信息,方便管理。
具体的,存储设备上的资源信息首先发送给虚拟化服务器,由虚拟化服务器根据该资源信息获得存储设备对应的资源类型、存储空间大小、使用情况等信息。而应用服务器通过向虚拟化服务器发送携带了需要存储空间大小的报文,由虚拟化服务器根据该需要存储空间大小和资源信息为该应用服务器选择符合要求的存储设备,并将存储设备IP地址以及target名称返回给应用服务器,继而由应用服务器根据存储设备IP地址以及target名称向存储设备发送连接建立的请求,并在存储设备与应用服务器之间建立连接,应用服务器开始进行数据读写,在应用服务器与存储设备之间的数据读写过程中,不需要虚拟化服务器进行相应的处理。
本发明提出的一种数据存储方法,如图4所示,应用于包括虚拟化服务器、应用服务器和至少一个存储设备的系统中,所述方法包括以下步骤:
步骤S401,所述虚拟化服务器获取存储设备的资源信息,并获取所述应用服务器所需要的存储空间大小。
步骤S402,所述虚拟化服务器根据所述资源信息和所述存储空间大小从至少一个存储设备中为所述应用服务器选择存储设备。
步骤S403,所述虚拟化服务器将选择结果发送给所述应用服务器和所述选择的存储设备,由所述应用服务器和所述选择的存储设备建立连接。
为了更加清楚的阐述本发明所提出的数据存储方法,以下结合一种具体的应用场景对本发明进行详细描述,如图5所示的具体应用场景示意图。管理服务器通过IP网络与各个虚拟化服务器连接,虚拟化服务器通过IP网络与各个应用服务器和各个存储设备分别连接,而且上下级间的管理服务器通过IP网络进行连接。当然,在实际应用中,上述各个设备之间的连接关系并不局限于通过IP网络进行连接,该连接方式还可以为其他的方式,例如,直接连接等方式,本应用场景下不再赘述。
如图6所示,上述的数据存储方法包括以下步骤:
步骤S601,存储设备将资源信息发送给虚拟化服务器。
具体的,在存储系统中,包含有多个存储设备,各个存储设备都需要将自身的资源信息发送给对应的虚拟化服务器。其中,该资源信息包括但不限于该存储设备上的资源类型、存储空间大小、使用情况等。
步骤S602,虚拟化服务器获取存储设备的资源信息。
当虚拟化服务器接收到该资源信息后,可以获知对应存储设备的资源类型、存储空间大小、使用情况等信息。例如,当存储设备1通过IP网络将自身的资源信息发送给虚拟化服务器1后,该虚拟化服务器1可以知道存储设备1的资源类型、存储空间大小、使用情况。
步骤S603,应用服务器向虚拟化服务器发送携带了自身需要存储空间大小的报文。其中,该应用服务器可以通过自身的initiator向虚拟化服务器发送携带了自身需要存储空间大小的报文。
为了使该报文能够广泛应用,该报文可以为iSCSI协议的discovery报文,当然,实际应用中,也可以为其他的公有报文,本发明中以discovery报文为例进行说明。
如图7所示的discovery报文(对应的类型字段为0x04),在该discovery报文中,利用reserved字段(第32个字节),携带了该应用服务器所需要的存储空间大小(need size)。
步骤S604,虚拟化服务器为应用服务器选择合适的存储设备。
具体的,虚拟化服务器接收到应用服务器的discovery报文后,可以获知该应用服务器所需要的存储空间大小。根据存储设备的资源信息和应用服务器所需要的存储空间大小,该虚拟化服务器可以为应用服务器选择合适的存储设备。例如,当存储设备1中能够使用的存储空间大小为100M,存储设备2中能够使用的存储空间大小为200M,而应用服务器1所需要的存储空间大小为150M时,则该虚拟化服务器将选择存储设备2为应用服务器1的合适的存储设备。
需要说明的是,在虚拟化服务器中,还需要维护存储空间的使用情况,如表1所示。
表1
SAN资源名称 | 所属存储设备名 | 存储设备IP地址 | target名称 | 使用该SAN资源的应用服务器 |
当虚拟化服务器获取到存储设备2的资源信息后,根据该资源信息,可以更新存储空间的使用情况,如表2所示。
表2
SAN资源名称 | 所属存储设备名 | 存储设备IP地址 | target名称 | 使用该SAN资源的应用服务器 |
SAN1 | 存储设备2 | IP2 | target1 |
而本步骤中,当确定需要使用存储设备2的SAN(Storage Area Network,存储区域网络)1为应用服务器1提供服务时,则需要更新存储空间的使用情况,如表3所示。
表3
SAN资源名称 | 所属存储设备名 | 存储设备IP地址 | target名称 | 使用该SAN资源的应用服务器 |
SAN1 | 存储设备2 | IP2 | target1 | 应用服务器1 |
步骤S605,虚拟化服务器将选择的存储设备的IP地址和target名称发送给应用服务器。
虚拟化服务器可以使用iSCSI协议的回应报文将选择的存储设备的IP地址和target名称发送给应用服务器,当然,实际应用中,也可以为其他的公有报文,本发明中以回应报文为例进行说明。
如图8所示的回应报文(对应的类型字段为0x24),利用reserved字段(第36个字节),携带选择的存储设备的IP地址和target名称(IP ADDRESS &TARGET NAME)。
步骤S606,虚拟化服务器将initiator与target的绑定关系通知给对应的存储设备。例如,当虚拟化服务器1选择存储设备2为应用服务器1提供服务时,则需要将存储设备2的target与应用服务器1的initiator进行绑定,并将该绑定关系通过给存储设备2。具体的,initiator为iSCSI协议的客户端,即连接发起端;而target为iSCSI协议的服务端,即连接接收端。
具体的,虚拟化服务器可以使用iSCSI协议的SNACK Request报文将initiator与target的绑定关系通知给对应的存储设备,当然,实际应用中,也可以为其他的公有报文,本发明中以SNACK Request报文为例进行说明。
如图9所示的SNACK Request报文(对应的类型字段为0x10),利用reserved字段(第32个字节),携带initiator与target的绑定关系(initiator name&target name)。
步骤S607,应用服务器根据存储设备的IP地址和target名称向对应的存储设备发送建立连接请求。例如,应用服务器1可以根据来自虚拟化服务器1的存储设备2的IP地址和target名称向存储设备2发送建立连接请求。
步骤S608,存储设备应答,并与应用服务器成功建立连接。例如,当存储设备2中存储了自身target与应用服务器1的initiator的绑定关系时,当接收到来自应用服务器1的initiator的建立连接请求后,可以与应用服务器1成功建立连接。
步骤S609,存储设备与应用服务器之间进行数据读写。
如果应用服务器对应的存储空间不够时,本发明提供的方法中,还包括以下步骤:
步骤S610,应用服务器向虚拟化服务器发送需要扩容的报文,其中,该需要扩容的报文中携带了需要扩容的空间大小。
具体的,应用服务器空间不够时,该应用服务器需要向虚拟化服务器发送需要扩容的报文,该应用服务器可以使用iSCSI协议的NOP-OUT报文将需要扩容的空间大小发送给虚拟化服务器;当然,实际应用中,也可以为其他的公有报文,本发明中以NOP-OUT报文为例进行说明。
如图10所示的NOP-OUT报文(对应的类型字段为0x00),利用reserved字段(第32个字节),携带该应用服务器所需要的扩容的空间大小(need size)。
步骤S611,虚拟化服务器根据该应用服务器所需要的扩容的空间大小再次为该应用服务器选择合适的存储设备。
实际应用中,该虚拟化服务器可以保留应用服务器所使用的存储资源,并为该应用服务器选择对应扩容空间大小的新存储资源。或者,释放应用服务器所使用的存储资源,并为该应用服务器选择对应总空间大小的存储资源。本发明中以选择对应扩容空间大小的新存储资源为例进行说明。
后续过程中,虚拟化服务器需要将新选择的存储设备的IP地址和target名称发送给应用服务器,并将initiator与target的绑定关系通知给对应的新选择的存储设备,由应用服务器与新选择的存储设备建立连接,并进行数据的读写操作。
具体的,虚拟化服务器可以使用iSCSI协议的NOP-IN报文将新选择的存储设备的IP地址和target名称发送给应用服务器,当然,实际应用中,也可以为其他的公有报文,本发明中以NOP-IN报文为例进行说明。
如图11所示的NOP-IN报文(对应的类型字段为0x20),利用reserved字段(第36个字节),携带新选择的存储设备的IP地址和target名称(IPADDRESS & TARGET NAME)。
当存在多个小网时,还需要对各个网络中的存储设备进行统一管理,即需要由管理服务器对存储设备进行统一管理。而在实际应用中,管理服务器之间也是具有不同级别的,例如,省级管理服务器的级别高于市级管理服务器的级别。
可以看出,不同级别的管理服务器之间将构成上下级关系,而本发明中,最低级别的管理服务器与虚拟化服务器之间也构成上下级关系;如果上级管理服务器需要统一管理存储设备时,本发明提供的方法中,还包括以下步骤:
步骤S612,上级管理服务器向下级管理服务器发送查询信息,并由下级管理服务器将存储设备的资源信息返回给上级管理服务器。
在图5所示的应用场景中,虚拟化服务器与上级管理服务器构成上下级关系,上级管理服务器与再上级管理服务器构成上下级关系,可以将上级管理服务器作为第一级管理服务器,为最低级别的管理服务器,将再上级管理服务器作为第二级管理服务器,以此类推。
如果第二级管理服务器需要统一管理存储设备时,将向第一级管理服务器发送查询信息,此时,如果该第一级管理服务器中存储了各个存储设备的资源信息时,则直接将资源信息返回给第二级管理服务器;而如果第一级管理服务器中没有存储各个存储设备的资源信息时,则第一级管理服务器还需要向虚拟化服务器发送查询信息,而虚拟化服务器中已经存储了各个存储设备的资源信息,能够将各个存储设备的资源信息返回给第一级管理服务器,继而由第一级管理服务器将各个存储设备的资源信息返回给第二级管理服务器,从而使得第二级管理服务器能够根据各个存储设备的资源信息统一管理各个存储设备。对于其他级别管理服务器的处理方式,与此类似,本发明中不再详加赘述。
其中,本发明中的各个步骤还可以根据实际的需要进行调整。
以下结合一个具体的例子进一步阐述上述过程。为了方便说明,假设系统中存在1台应用服务器(S:192.168.0.100,initiator名称为i-S),1台在线存储设备(ST-A:192.168.1.100,与S路由可达),1台虚拟化服务器(V-A:192.168.0.10),1台上级服务器(Higher:192.168.3.10,与V-A路由可达)。
S需要90G的存储空间,ST-A上有3个SAN资源(SAN-A,SAN-B,SAN-C),每个SAN资源对应1个target(target-A,target-B,target-C),SAN-A、SAN-B、SAN-C的空间大小如表4所示。
表4
SAN资源 | SAN-A | SAN-B | SAN-C |
空间大小 | 100G | 150G | 200G |
上述的数据存储方法包括:
1、ST-A将SAN-A、SAN-B、SAN-C的资源信息发送给V-A。
2、V-A读取各个SAN资源的资源信息,获得各个SAN资源的空间大小,并在V-A上维护存储空间的使用情况,如表5所示。
表5
SAN资源名称 | 所属存储设备名 | 存储设备IP地址 | target名称 | 使用该SAN资源的应用 |
服务器 | ||||
SAN-A | ST-A | 192.168..100 | target-A | 无 |
SAN-B | ST-A | 192.168..100 | target-B | 无 |
SAN-C | ST-A | 192.168..100 | target-C | 无 |
3、S向V-A发送discovery报文,申请存储空间(90G),报文格式如图12所示。
4、V-A选择SAN-A作为S的存储资源,将ST-A的IP地址(192.168.1.100)与target名称(target-A)发送给S,并将S的initiator与target名称(i-S&target-A)发送给ST-A。
将ST-A的IP地址(192.168.1.100)与target名称(target-A)发送给S的报文如图13所示,将S的initiator与target名称(i-S&target-A)发送给ST-A的报文如图14所示。
5、S收到V-A发送的报文后,向ST-A发送连接请求报文。
6、ST-A收到S发送的报文后,与S建立连接,并在S与ST-A之间进行数据读写。
如果S上空间不够时,还包括:
7、S向V-A发送NOP-OUT报文,该NOP-OUT报文中携带了需要扩容的空间大小(140G);当V-A接收到NOP-OUT报文后,选择适当的资源,并向S发送NOP-IN报文;其中,NOP-OUT报文如图15所示,NOP-IN报文如图16所示。其中,NOP-IN报文中携带了新选择的ST-A的IP地址和target名称,此外,该V-A还需要向ST-A发送携带了新选择的S的initiator与target名称绑定关系的报文。
如果Higher需要统一管理存储设备时,还包括:
8、Higher向V-A发送请求,要求查看V-A所管理的所有存储信息。
9、V-A将所管理的存储信息发送给Higher。
本发明提出的一种数据存储装置,应用于包括虚拟化服务器、应用服务器和至少一个存储设备的系统中,所述数据存储装置在所述系统中作为所述虚拟化服务器,如图17所示,所述装置包括:
获取模块171,用于获取存储设备的资源信息,并获取所述应用服务器所需要的存储空间大小。所述获取模块171具体用于,接收来自所述应用服务器的iSCSI协议的discovery报文,所述discovery报文中携带了所述应用服务器所需要的存储空间大小;并从所述discovery报文中获取所述应用服务器所需要的存储空间大小。
选择模块172,与所述获取模块171连接,用于根据所述资源信息和所述存储空间大小从至少一个存储设备中为所述应用服务器选择存储设备。
在选择存储设备时,所述选择模块172具体用于根据所述资源信息维护所述存储设备的存储空间情况;并根据所述存储设备的存储空间情况选择不小于所述存储空间大小的存储设备为所述应用服务器提供存储空间。
收发模块173,与所述选择模块172连接,用于将选择结果发送给所述应用服务器和所述选择的存储设备,由所述应用服务器和所述选择的存储设备建立连接。
在发送选择结果时,所述收发模块173具体用于通过iSCSI协议的回应报文将所述选择的存储设备的IP地址和所述选择的存储设备对应的target名称发送给所述应用服务器;并通过iSCSI协议的SNACK Request报文将所述应用服务器对应的initiator与所述选择的存储设备对应的target的对应关系发送给所述选择的存储设备。
在本发明中,当所述应用服务器对应的存储空间不够时,所述收发模块173还用于接收来自所述应用服务器的携带了需要扩容空间大小的信息;此时,所述选择模块172还用于根据所述需要扩容空间大小和所述资源信息为所述应用服务器增加存储空间。
进一步的,在本发明中,所述装置应用的系统中还包括至少一个级别的管理服务器,不同级别的管理服务器之间构成上下级关系,最低级别的管理服务器与所述虚拟化服务器构成上下级关系;当上级管理服务器需要对存储设备进行统一管理时,所述收发模块173还用于将自身存储的资源信息发送给自身的上级管理服务器,由各级管理服务器依次向自身的上级管理服务器发送所述资源信息,并最终将所述资源信息发送给需要对存储设备进行统一管理的管理服务器。
其中,本发明装置的各个模块可以集成于一体,也可以分离部署。上述模块可以合并为一个模块,也可以进一步拆分成多个子模块。
通过以上的实施方式的描述,本领域的技术人员可以清楚地了解到本发明可以通过硬件实现,也可以借助软件加必要的通用硬件平台的方式来实现。基于这样的理解,本发明的技术方案可以以软件产品的形式体现出来,该软件产品可以存储在一个非易失性存储介质(可以是CD-ROM,U盘,移动硬盘等)中,包括若干指令用以使得一台计算机设备(可以是个人计算机,服务器,或者网络设备等)执行本发明各个实施例所述的方法。
本领域技术人员可以理解附图只是一个优选实施例的示意图,附图中的模块或流程并不一定是实施本发明所必须的。
本领域技术人员可以理解实施例中的装置中的模块可以按照实施例描述进行分布于实施例的装置中,也可以进行相应变化位于不同于本实施例的一个或多个装置中。上述实施例的模块可以合并为一个模块,也可以进一步拆分成多个子模块。
上述本发明序号仅仅为了描述,不代表实施例的优劣。
以上公开的仅为本发明的几个具体实施例,但是,本发明并非局限于此,任何本领域的技术人员能思之的变化都应落入本发明的保护范围。
Claims (10)
1.一种数据存储方法,其特征在于,应用于包括虚拟化服务器、应用服务器和至少一个存储设备的系统中,所述方法包括以下步骤:
所述虚拟化服务器获取存储设备的资源信息,并获取所述应用服务器所需要的存储空间大小;
所述虚拟化服务器根据所述资源信息和所述存储空间大小从至少一个存储设备中为所述应用服务器选择存储设备;
所述虚拟化服务器将选择结果发送给所述应用服务器和所述选择的存储设备,由所述应用服务器和所述选择的存储设备建立连接。
2.如权利要求1所述的方法,其特征在于,获取所述应用服务器所需要的存储空间大小具体包括:
所述虚拟化服务器接收来自所述应用服务器的iSCSI协议的discovery报文,所述discovery报文中携带了所述应用服务器所需要的存储空间大小;
所述虚拟化服务器从所述discovery报文中获取所述应用服务器所需要的存储空间大小。
3.如权利要求1所述的方法,其特征在于,所述虚拟化服务器根据所述资源信息和所述存储空间大小从至少一个存储设备中为所述应用服务器选择存储设备具体包括:
所述虚拟化服务器根据所述资源信息维护所述存储设备的存储空间情况;
所述虚拟化服务器根据所述存储设备的存储空间情况选择不小于所述存储空间大小的存储设备为所述应用服务器提供存储空间。
4.如权利要求1所述的方法,其特征在于,所述虚拟化服务器将选择结果发送给所述应用服务器和所述选择的存储设备具体包括:
所述虚拟化服务器通过iSCSI协议的回应报文将所述选择的存储设备的IP地址和所述选择的存储设备对应的target名称发送给所述应用服务器;
并通过iSCSI协议的SNACK Request报文将所述应用服务器对应的initiator与所述选择的存储设备对应的target的对应关系发送给所述选择的存储设备。
5.如权利要求1-4任一项所述的方法,其特征在于,当所述应用服务器对应的存储空间不够时,所述方法还包括:
所述虚拟化服务器接收来自所述应用服务器的携带了需要扩容空间大小的信息;
所述虚拟化服务器根据所述需要扩容空间大小和所述资源信息为所述应用服务器增加存储空间。
6.如权利要求1-4任一项所述的方法,其特征在于,所述方法应用的系统中还包括至少一个级别的管理服务器,不同级别的管理服务器之间构成上下级关系,最低级别的管理服务器与所述虚拟化服务器构成上下级关系;当上级管理服务器需要对存储设备进行统一管理时,所述方法还包括:
所述虚拟化服务器将自身存储的资源信息发送给自身的上级管理服务器,由各级管理服务器依次向自身的上级管理服务器发送所述资源信息,并最终将所述资源信息发送给需要对存储设备进行统一管理的管理服务器。
7.一种数据存储装置,其特征在于,应用于包括虚拟化服务器、应用服务器和至少一个存储设备的系统中,所述数据存储装置在所述系统中作为所述虚拟化服务器,所述装置包括:
获取模块,用于获取存储设备的资源信息,并获取所述应用服务器所需要的存储空间大小;
选择模块,与所述获取模块连接,用于根据所述资源信息和所述存储空间大小从至少一个存储设备中为所述应用服务器选择存储设备;
收发模块,与所述选择模块连接,用于将选择结果发送给所述应用服务器和所述选择的存储设备,由所述应用服务器和所述选择的存储设备建立连接。
8.如权利要求7所述的装置,其特征在于,
所述获取模块具体用于,接收来自所述应用服务器的iSCSI协议的discovery报文,所述discovery报文中携带了所述应用服务器所需要的存储空间大小;并从所述discovery报文中获取所述应用服务器所需要的存储空间大小;
所述选择模块具体用于,根据所述资源信息维护所述存储设备的存储空间情况;并根据所述存储设备的存储空间情况选择不小于所述存储空间大小的存储设备为所述应用服务器提供存储空间;
所述收发模块具体用于,通过iSCSI协议的回应报文将所述选择的存储设备的IP地址和所述选择的存储设备对应的target名称发送给所述应用服务器;并通过iSCSI协议的SNACK Request报文将所述应用服务器对应的initiator与所述选择的存储设备对应的target的对应关系发送给所述选择的存储设备。
9.如权利要求7或8所述的装置,其特征在于,当所述应用服务器对应的存储空间不够时,
所述收发模块还用于,接收来自所述应用服务器的携带了需要扩容空间大小的信息;
所述选择模块还用于,根据所述需要扩容空间大小和所述资源信息为所述应用服务器增加存储空间。
10.如权利要求7或8所述的装置,其特征在于,所述装置应用的系统中还包括至少一个级别的管理服务器,不同级别的管理服务器之间构成上下级关系,最低级别的管理服务器与所述虚拟化服务器构成上下级关系;当上级管理服务器需要对存储设备进行统一管理时,
所述收发模块还用于,将自身存储的资源信息发送给自身的上级管理服务器,由各级管理服务器依次向自身的上级管理服务器发送所述资源信息,并最终将所述资源信息发送给需要对存储设备进行统一管理的管理服务器。
Priority Applications (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
CN 201010000087 CN101741861B (zh) | 2010-01-07 | 2010-01-07 | 一种数据存储方法及装置 |
Applications Claiming Priority (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
CN 201010000087 CN101741861B (zh) | 2010-01-07 | 2010-01-07 | 一种数据存储方法及装置 |
Publications (2)
Publication Number | Publication Date |
---|---|
CN101741861A true CN101741861A (zh) | 2010-06-16 |
CN101741861B CN101741861B (zh) | 2013-06-05 |
Family
ID=42464747
Family Applications (1)
Application Number | Title | Priority Date | Filing Date |
---|---|---|---|
CN 201010000087 Expired - Fee Related CN101741861B (zh) | 2010-01-07 | 2010-01-07 | 一种数据存储方法及装置 |
Country Status (1)
Country | Link |
---|---|
CN (1) | CN101741861B (zh) |
Cited By (3)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN102480522A (zh) * | 2010-11-30 | 2012-05-30 | 国际商业机器公司 | 存储设备、应用服务器及其方法 |
CN103853670A (zh) * | 2012-11-28 | 2014-06-11 | 联想(北京)有限公司 | 一种信息处理方法及电子设备 |
CN112468567A (zh) * | 2020-10-22 | 2021-03-09 | 杭州智尔科技有限公司 | 一种物联网数据传输方法、装置及电子设备 |
Family Cites Families (6)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
US5544347A (en) * | 1990-09-24 | 1996-08-06 | Emc Corporation | Data storage system controlled remote data mirroring with respectively maintained data indices |
US5410667A (en) * | 1992-04-17 | 1995-04-25 | Storage Technology Corporation | Data record copy system for a disk drive array data storage subsystem |
CN100347692C (zh) * | 2005-05-31 | 2007-11-07 | 清华大学 | San系统中虚拟化智能控制器的实现方法 |
CN100423491C (zh) * | 2006-03-08 | 2008-10-01 | 杭州华三通信技术有限公司 | 虚拟化网络存储系统及其网络存储设备 |
CN101022400B (zh) * | 2007-03-16 | 2011-04-06 | 杭州华三通信技术有限公司 | 一种实现网络存储系统的资源分配方法及装置 |
CN101527728A (zh) * | 2009-04-28 | 2009-09-09 | 杭州华三通信技术有限公司 | 一种带外容灾方法和设备 |
-
2010
- 2010-01-07 CN CN 201010000087 patent/CN101741861B/zh not_active Expired - Fee Related
Cited By (4)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN102480522A (zh) * | 2010-11-30 | 2012-05-30 | 国际商业机器公司 | 存储设备、应用服务器及其方法 |
US9571576B2 (en) | 2010-11-30 | 2017-02-14 | International Business Machines Corporation | Storage appliance, application server and method thereof |
CN103853670A (zh) * | 2012-11-28 | 2014-06-11 | 联想(北京)有限公司 | 一种信息处理方法及电子设备 |
CN112468567A (zh) * | 2020-10-22 | 2021-03-09 | 杭州智尔科技有限公司 | 一种物联网数据传输方法、装置及电子设备 |
Also Published As
Publication number | Publication date |
---|---|
CN101741861B (zh) | 2013-06-05 |
Similar Documents
Publication | Publication Date | Title |
---|---|---|
CN101751233B (zh) | 存储设备容量的扩展方法及系统 | |
US7478177B2 (en) | System and method for automatic reassignment of shared storage on blade replacement | |
CN104603739A (zh) | 对并行存储的块级访问 | |
US8732381B2 (en) | SAS expander for communication between drivers | |
CN103473272A (zh) | 数据处理方法、装置及系统 | |
WO2002025446A2 (en) | Method and system of allocating storage resources in a storage area network | |
CN102413156B (zh) | 一种分布式数据存储系统和方法 | |
US7953827B2 (en) | System and method for dynamic allocation of information handling system network addresses | |
CN107924289A (zh) | 计算机系统和访问控制方法 | |
CN103828332A (zh) | 数据处理方法、装置、存储控制器和机柜 | |
CN110099142A (zh) | Ip地址分配方法、装置、设备和存储介质 | |
CN105095103A (zh) | 用于云环境下的存储设备管理方法和装置 | |
CN101778050A (zh) | 负载均衡方法、装置和系统 | |
CN102685245A (zh) | 一种基于互联网的数据社交存储方法和系统 | |
US20220342832A1 (en) | Expander i/o module discovery and management system | |
US7581007B2 (en) | Method, apparatus and services for leasing volumes | |
CN114765630B (zh) | 多租户平台的数据访问方法、多租户平台及服务器 | |
US20160014203A1 (en) | Storage fabric address based data block retrieval | |
CN101741861B (zh) | 一种数据存储方法及装置 | |
US7386622B2 (en) | Network converter and information processing system | |
CN108667903B (zh) | 数据发送方法、装置和存储介质 | |
US8832229B2 (en) | System and method for using a network file system mount from a remote management card | |
CN105765542B (zh) | 访问文件的方法、分布式存储系统和存储节点 | |
CN101588389B (zh) | 选择存储设备的方法、应用服务器和存储设备 | |
CN101201723A (zh) | 虚拟磁盘路由器系统、虚拟磁盘访问系统及方法 |
Legal Events
Date | Code | Title | Description |
---|---|---|---|
C06 | Publication | ||
PB01 | Publication | ||
C10 | Entry into substantive examination | ||
SE01 | Entry into force of request for substantive examination | ||
C14 | Grant of patent or utility model | ||
GR01 | Patent grant | ||
CP03 | Change of name, title or address |
Address after: 310052 Binjiang District Changhe Road, Zhejiang, China, No. 466, No. Patentee after: Xinhua three Technology Co., Ltd. Address before: 310053 Hangzhou hi tech Industrial Development Zone, Zhejiang province science and Technology Industrial Park, No. 310 and No. six road, HUAWEI, Hangzhou production base Patentee before: Huasan Communication Technology Co., Ltd. |
|
CP03 | Change of name, title or address | ||
CF01 | Termination of patent right due to non-payment of annual fee |
Granted publication date: 20130605 Termination date: 20200107 |
|
CF01 | Termination of patent right due to non-payment of annual fee |