CN101626403B - 一种iSCSI服务的磁盘虚拟化方法 - Google Patents

一种iSCSI服务的磁盘虚拟化方法 Download PDF

Info

Publication number
CN101626403B
CN101626403B CN200910159221A CN200910159221A CN101626403B CN 101626403 B CN101626403 B CN 101626403B CN 200910159221 A CN200910159221 A CN 200910159221A CN 200910159221 A CN200910159221 A CN 200910159221A CN 101626403 B CN101626403 B CN 101626403B
Authority
CN
China
Prior art keywords
iscsi
lun
user
target
holder
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
CN200910159221A
Other languages
English (en)
Other versions
CN101626403A (zh
Inventor
林瑞兴
张扬挥
Current Assignee (The listed assignees may be inaccurate. Google has not performed a legal analysis and makes no representation or warranty as to the accuracy of the list.)
RUIHONG TECHNOLOGY CO Ltd
Original Assignee
RUIHONG 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 RUIHONG TECHNOLOGY CO Ltd filed Critical RUIHONG TECHNOLOGY CO Ltd
Priority to CN200910159221A priority Critical patent/CN101626403B/zh
Publication of CN101626403A publication Critical patent/CN101626403A/zh
Application granted granted Critical
Publication of CN101626403B publication Critical patent/CN101626403B/zh
Active legal-status Critical Current
Anticipated expiration legal-status Critical

Links

Images

Landscapes

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

Abstract

本发明有关一种iSCSI服务的磁盘虚拟化方法,属于电子类。一种iSCSI服务的磁盘虚拟化方法,系可利用磁盘虚拟化技术将磁盘阵列逻辑单元号分割成至少一个iSCSI LUN,且每一个iSCSI LUN可以是个人的储存空间或是可以分享资料的储存空间。这样做iSCSI储存器的功能不仅能服务服务器,而且可以直接服务使用者,提供给使用者备份或存取数据的功能。

Description

一种iSCSI服务的磁盘虚拟化方法
技术领域
本发明涉及电子类,特别涉及一种应用于iSCSI服务的磁盘虚拟化方法,尤指一种将磁盘阵列逻辑单元号分割成至少一个iSCSI LUN的iSCSI服务的磁盘虚拟化方法。
背景技术
iSCSI标准定义于RFC-3720内,是一个划时代的磁盘存取标准,它让计算机可以跨Internet存取远程的iSCSI储存器。自从计算机被发明以来SCSI技术一直是服务器计算机和工作站计算机所采用的标准储存装置接口,过去SCSI接口的储存装置有硬盘、光驱、光盘烧录器、磁带机等等储存装置。但SCSI装置受限于SCSI实体联机最长只能12米(Ultra-wide SCSI),所以SCSI界面只能被限定在同一室内的储存装置连接。今日,Internet已经是普及的技术,它采用TCP/IP为标准的通讯协议,让通讯能跨越世界传递数据。iSCSI则是将SCSI接口结合TCP/IP通讯协议,成为一个跨越世界的储存装置接口。iSCSI可以把储存装置和该储存装置的驱动程序间的SCSI接口的命令封装成标准的TCP/IP封包,让储存装置和执行该驱动程序的作业环境分隔于相同或是不同的网域,因此储存装置和执行该驱动程序的作业环境间的距离可以在同一间机房内或是分处于数百、数千甚至数万公里的两端。
iSCSI标准只有定义将一个SCSI装置的命令和结果用因特网传送,因此一个SCSI装置只能同时被一个使用者所使用,这个SCSI装置可能是一个RAID LUN、一颗硬盘、一台光驱或一台磁带机等等。但是,硬盘的速度和储存空间随着新技术的诞生,它的反应速度、读写速度和储存容量不断的提升,并且价格越来越便宜。例如,在公元2000年时,一颗3.5时硬盘只不过40GB到120GB,但是在2008年硬盘已经160GB到1500GB(1.5TB)的容量,且每GB的最低价格约为0.12美元。所以,一台16bays,安装16颗1500TB的iSCSI磁盘阵列系统,使用RAID 0来整合这16颗1500GB的硬盘最大可提供24000GB的空间。若这24000GB的空间只能提供256个iSCSI LUN(所有磁盘阵列系统或磁盘阵列卡都落在这个限制内)给使用者,则每个iSCSI LUN可分配到93.75GB,这个空间若被企业用在服务器数据的备份也许是适当的容量,但是若是企业配给员工备份工作数据则太大。除此以外,一部16bays,安装16颗1500GB的磁盘阵列系统的建置成本约8425美元,若只分配给256个员工备份,则每个员工的备份成本为32.9美元。
上述iSCSI储存器于使用时,存在下列问题与缺失尚待改进:
根据Gartner研究报告指出,一个员工只要有20GB的空间就足以备份该员工的工作数据,所以iSCSI储存器必须分割出更多独立的iSCSI LUN。假设iSCSI储存装置可以提供更多的iSCSI LUN,则每个员工备份工作数据的成本可以降低。例如当该iSCSI磁盘阵列系统以24000GB可以提供1200个iSCSI LUN时,每一个员工可以分配到约20GB,而每个员工的备份成本可以降低到7.02美元,这是只能分出256个iSCSI LUN的iSCSI储存器不到四分的一的成本。当备份成本降低,企业应该更积极的建立iSCSI这跨越因特网的备份技术,让外务人员也可以轻易的在世界各地备份数据。
发明内容
本发明的目的在于提供一种iSCSI服务的磁盘虚拟化方法,将磁盘阵列逻辑单元号分割成至少一个iSCSI LUN的一种iSCSI服务的磁盘虚拟化方法,该各iSCSILUN(因特网小计算机系统接口逻辑单元号)可供使用者进行存取动作。
本发明的技术方案是:本发明以供iSCSI(因特网小计算机系统接口)储存器提供超过256个iSCSI LUN(因特网小计算机系统接口逻辑单元号),其中该各iSCSILUN(因特网小计算机系统接口逻辑单元号)可属于至少一个iSCSI Target(因特网小计算机系统接口指针);其中该iSCSI Target(因特网小计算机系统接口指针)包括有一私有iSCSI Target(因特网小计算机系统接口指针)与一分享iSCSI Target(因特网小计算机系统接口指针);其中该私有iSCSI Target(因特网小计算机系统接口指针)包括有一拥有者,该拥有者可以对该iSCSI Target(因特网小计算机系统接口指针)下的iSCSI LUN(因特网小计算机系统接口逻辑单元号)拥有读写权;其中该分享iSCSI Target(因特网小计算机系统接口指针)包括有一拥有者,并可以被设定给至少一个群组,群组内的所有使用者可以读取该分享iSCSI Target(因特网小计算机系统接口指针)下的所有iSCSI LUN(因特网小计算机系统接口逻辑单元号)的数据。
本发明理论上可以把单一储存装置虚拟成无限多个虚拟装置,但碍于iSCSI储存器的内存的容量及储存装置容量(硬盘容量)的限制而有所限制。例如,一部16Bays的iSCSI储存器用它的磁盘阵列系统将该16颗硬盘制作成1个iSCSI LUN。若没有本发明在该iSCSI储存器上,该iSCSI储存器只能给一个使用者使用或分享给多个使用者但只能存取同一个磁盘空间;在多个使用者存取同一个磁盘空间的状况下,使用者可以读取其它使用者的数据,所以这个磁盘非只属于一个使用者。采用本发明的磁盘虚拟化的方法,该16颗硬盘制作成的1个iSCSI LUN可以被分成数百或数千的完全独立的iSCSI LUN,且每一个iSCSI LUN可以是个人的储存空间或是可以分享资料的储存空间。这样做iSCSI储存器的功能不仅仅能服务服务器,而是可以直接的服务使用者,提供使用者备份或是存取数据的功能。
因为本发明用磁盘虚拟化技术让iSCSI储存器可以提供数百、数千甚至数百万个完全独立的iSCSI LUN,所以管理iSCSI储存器不能只是分割空间管理和使用者的登入认证如此单纯而已。本发明必须严格的管理使用者存取iSCSI LUN的权限。本发明订立管理iSCSI LUN的权限的原则,这些原则如下列:
原则1:一个iSCSI LUN必只属于一个iSCSI Target(因特网小计算机系统接口指针)。但一个iSCSI Target可拥有超过1个iSCSI LUN。
原则2:iSCSI Target被分成私有的iSCSI Target和分享的iSCSI Target。
原则3:私有的iSCSI Target内的iSCSI LUN必为私有的iSCSI LUN。
原则4:分享的iSCSI Target内的iSCSI LUN必为分享的iSCSI LUN。
原则5:私有的iSCSI Target只能有一个拥有者可以读取和写入该私有的iSCSITarget内的私有的iSCSI LUN。
原则6:分享的iSCSI Target的权限管理,使用者分成2类,即拥有者和分享者。
原则7:分享的iSCSI Target只能有一个拥有者可以读取和写入该分享的iSCSI Target内分享的iSCSI LUN。
原则8:分享的iSCSI Target可以属于数个群组,每个群组内的分享者可以读取该分享的iSCSI Target内分享的iSCSI LUN的数据。
原则9:分享的iSCSI Target被拥有者登入后,分享者自动离线,直到拥有者注销该分享的iSCSI Target后,分享者才可以登入和读取该分享的iSCSI Target内分享的iSCSI LUN。
本发明的优点在于:一种iSCSI服务的磁盘虚拟化方法为可改善原有的技术关键在于:利用磁盘虚拟化技术将磁盘阵列逻辑单元号分割成至少一个iSCSI LUN,理论上,可以虚拟成无限多个虚拟装置,并且,每一个iSCSI LUN可以是个人的储存空间或是可以分享资料的储存空间。这样做iSCSI储存器的功能不仅仅能服务服务器,而是可以直接的服务使用者。
附图说明
附图1为本发明较佳实施例的实施示意图。
附图2为本发明较佳实施例的实施示意图。
附图3为本发明另一较佳实施例的实施示意图。
附图4为本发明较佳实施例的硬件架构图。
附图5为本发明较佳实施例的方块图。
附图6为本发明较佳实施例的另一方块图。
具体实施方式
如全部附图所示,系为本发明较佳实施例的实施示意图、第一较佳实施例的实施示意图、第二较佳实施例的实施示意图、较佳实施例的硬件架构图、方块图1与方块图2,由图中可清楚看出本发明系包括:
附图1、磁盘阵列空间虚拟化概念。
RAID LUN(11)是由磁盘阵列系统利用1颗或是数颗硬盘所建构出来的储存空间。这个空间提供磁盘虚拟化模块产出iSCSI LUN。
iSCSI LUN1(12)是磁盘虚拟化模块利用RAID LUN(11)所生产的iSCSI储存空间,iSCSI LUN 1(12)必只属于一个iSCSI Target。而该iSCSI Target为私有的iSCSI Target且属于使用者1。
iSCSI LUN 2(13)是磁盘虚拟化模块利用RAID LUN(11)所生产的iSCSI储存空间,iSCSI LUN 2(13)必只属于一个iSCSI Target。而该iSCSI Target为私有的iSCSI Target且属于使用者2。
iSCSI LUN n(14)是磁盘虚拟化模块利用RAID LUN(11)所生产的iSCSI储存空间,iSCSI LUN n(14)必只属于一个iSCSI Target。而该iSCSI Target为私有的iSCSI Target且属于使用者n。
iSCSI LUN s(15)是磁盘虚拟化模块利用RAID LUN(11)所生产的iSCSI储存空间,iSCSI LUN s(15)必只属于一个iSCSI Target。而该iSCSI Target为分享的iSCSI Target。该iSCSI Target有一个拥有者使用者s,他拥有iSCSI LUN s(15)读写的权力。该iSCSI Target又属于群组1、群组2…群组m。属于这些群组的使用者可以读iSCSI LUN s(15)内的数据。
iSCSI LUN x(16)是磁盘虚拟化模块利用RAID LUN(11)所生产的iSCSI储存空间,iSCSI LUN x(16)必只属于一个iSCSI Target。而该iSCSI Target为分享的iSCSI Target。该iSCSI Target有一个拥有者使用者x,他拥有iSCSI LUN x(16)读写的权力。该iSCSI Target又属于群组1、群组6…群组z。属于这些群组的使用者可以读iSCSI LUN x(16)内的数据。
附图2、私有的iSCSI LUN和使用者间的关系。
这些iSCSILUN和使用者间的关系实作于iSCSI服务(54,64)。iSCSILUN(28,29,210,211)则由磁盘虚拟化模块(55,65)产生。RAID LUN(212)由磁盘阵列系统程序(56,67)产生。使用者(21,22,23)则存在于管理系统(58)或iSCSI储存器管理(66)上。iSCSI Target(24,25,26),则由iSCSI服务(54,64)产生。
使用者1(拥有者)(21)表示一个使用者在iSCSI储存器上的账号。
使用者2(拥有者)(22)表示一个使用者在iSCSI储存器上的账号。
使用者m(拥有者)(23)表示一个使用者在iSCSI储存器上的账号。
iSCSI Target 1(24)表示由iSCSI通讯协议接口所建立的一个私有的iSCSITarget。该私有的iSCSI Target属于使用者1(拥有者)(21)。所以使用者1(拥有者)(21)可以对iSCSI Target 1(24)下的所有iSCSI LUN 1(27)~iSCSI LUN n1(28)做读写。
iSCSI Target 2(25)表示由iSCSI通讯协议接口所建立的一个私有的iSCSITarget。该私有的iSCSI Target属于使用者2(拥有者)(22)。所以使用者2(拥有者)(22)可以对iSCSI Target 2(25)下的iSCSI LUN n1+1(29)做读写。
iSCSI Target m(26)表示由iSCSI通讯协议接口所建立的一个私有的iSCSITarget。该私有的iSCSI Target属于使用者m(拥有者)(23)。所以使用者m(拥有者)(23)可以对iSCSI Target m(26)下的所有iSCSI LUN n1+2(210)~iSCSI LUNn2(211)做读写。
iSCSI LUN 1(27)表示由磁盘虚拟化模块利用RAID LUN(212)所建立的一个iSCSI LUN。该iSCSI LUN只属于iSCSI Target 1(24)。因为iSCSI Target 1(24)为私有的iSCSI Target,所以iSCSI LUN 1(27)为私有的iSCSI LUN,并只能给iSCSITarget 1(24)的拥有者使用者1(拥有者)(21)读写。
iSCSI LUN n1(28)表示由磁盘虚拟化模块利用RAID LUN(212)所建立的一个iSCSI LUN。该iSCSI LUN只属于iSCSI Target 1(24)。因为iSCSI Target 1(24)为私有的iSCSI Target,所以iSCSI LUN n1(28)为私有的iSCSI LUN,并只能给iSCSI Target 1(24)的拥有者使用者1(拥有者)(21)读写。
iSCSI LUN n1+1(29)表示由磁盘虚拟化模块利用RAID LUN(212)所建立的一个iSCSI LUN。该iSCSI LUN只属于iSCSI Target 2(25)。因为iSCSI Target 2(25)为私有的iSCSI Target,所以iSCSI LUN n1+1(29)为私有的iSCSI LUN,并只能给iSCSI Target 2(25)的拥有者使用者2(拥有者)(22)读写。
iSCSI LUN n1+2(210)表示由磁盘虚拟化模块利用RAID LUN(212)所建立的一个iSCSI LUN。该iSCSI LUN只属于iSCSI Target m(26)。因为iSCSI Target m(26)为私有的iSCSI Target,所以iSCSI LUN n1+2(210)为私有的iSCSI LUN,并只能给iSCSI Target m(26)的拥有者使用者m(拥有者)(23)读写。
iSCSI LUN n2(211)表示由磁盘虚拟化模块利用RAID LUN(212)所建立的一个iSCSI LUN。该iSCSI LUN只属于iSCSI Target m(26)。因为iSCSI Target m(26)为私有的iSCSI Target,所以iSCSI LUN n2(211)为私有的iSCSI LUN,并只能给iSCSI Target m(26)的拥有者使用者m(拥有者)(23)读写。
RAID LUN(212)为磁盘阵列系统利用1颗或是数颗硬盘所建构出来的储存空间。这个空间提供磁盘虚拟化模块产出iSCSI LUN。
附图3、分享的iSCSI LUN和使用者间的关系。
这些iSCSILUN和使用者间的关系实作于iSCSI服务(54,64)。iSCSILUN(310,311,312,313,314,315)则由磁盘虚拟化模块(55,65)产生。RAID LUN(316)由磁盘阵列系统程序(56,67)产生。使用者(31,32,33,34)则存在于管理系统(58)或iSCSI储存器管理(66)上。iSCSI Target(37,38,39)和群组(35,36),则由iSCSI服务(54,64)产生。
使用者1(拥有者)(31)表示一个使用者在iSCSI储存器上的账号。
使用者2(拥有者)(32)表示一个使用者在iSCSI储存器上的账号。
使用者3(分享者)(33)表示一个使用者在iSCSI储存器上的账号。
使用者4(分享者)(34)表示一个使用者在iSCSI储存器上的账号。
群组1(35)表示在iSCSI储存器上的一个群组。群组专为分享iSCSI LUN设计,一个群组可包括1到数个使用者账号和1到数个分享的iSCSI Target。这些使用者可以读取这些iSCSI Target下的所有iSCSI LUN。群组1(35)包括使用者2(拥有者)(32)、使用者3(分享者)(33)和使用者4(分享者)(34)三个使用者,这三个使用者可以读取iSCSI Target 1(37)下的iSCSI LUN 1(310)到iSCSI LUN n1(311)和iSCSI Target m(38)下的iSCSI LUN n1+1(312)到iSCSI LUN n2(313)这些iSCSILUN。
群组2(36)表示在iSCSI储存器上的一个群组。群组专为分享iSCSI LUN设计,一个群组可包括1到数个使用者账号和1到数个分享的iSCSI Target。这些使用者可以读取这些iSCSI Target下的所有iSCSI LUN。群组2(36)包括使用者4(分享者)(34)一个使用者,这使用者可以读取iSCSI Target m(38)下的iSCSI LUNn1+1(312)到iSCSI LUN n2(313)和iSCSI Target m+1(39)下的iSCSI LUN n2+1(314)到iSCSI LUN n3(315)这些iSCSI LUN。
iSCSI Target 1(37)表示由iSCSI通讯协议接口所建立的一个分享的iSCSITarget。该分享的iSCSI Target属于使用者1(拥有者)(31)。所以使用者1(拥有者)(31)可以对iSCSI Target 1(37)下的所有iSCSI LUN 1(310)~iSCSI LUNn1(311)做读写。iSCSI Target 1(37)被归属于群组1(35),因此属于群组1(35)的使用者,包括使用者2(拥有者)(32)、使用者3(分享者)(33)和使用者4(分享者)(34),都可以读取iSCSI Target 1(37)下的iSCSI LUN 1(310)~iSCSI LUNn1(311)的资料。
iSCSI Target m(38)表示由iSCSI通讯协议接口所建立的一个分享的iSCSITarget。该分享的iSCSI Target属于使用者2(拥有者)(32)。所以使用者2(拥有者)(32)可以对iSCSI Target m(38)下的所有iSCSI LUN n1+1(312)~iSCSI LUNn2(313)做读写。iSCSI Target m(38)被归属于群组1(35)和群组2(36),因此属于群组1(35)的使用者,包括使用者2(拥有者)(32)、使用者3(分享者)(33)和使用者4(分享者)(34),都可以读取iSCSI Target m(38)下的iSCSI LUN n1+1(312)~iSCSI LUN n2(313)的资料。还有群组2(36)的使用者,包括使用者4(分享者)(34),都可以读取iSCSI Target m(38)下的iSCSI LUN n1+1(312)~iSCSI LUNn2(313)的资料。
iSCSI Target m+1(39):
iSCSI Target m+1(39)表示由iSCSI通讯协议接口所建立的一个分享的iSCSITarget。该分享的iSCSI Target属于使用者2(拥有者)(32)。所以使用者2(拥有者)(32)可以对iSCSI Target m+1(39)下的所有iSCSI LUN n2+1(314)~iSCSILUN n3(315)做读写。iSCSI Target m+1(39)被归属于群组2(36),因此属于群组2(36)的使用者,包括使用者4(分享者)(34),都可以读取iSCSI Target m+1(39)下的iSCSI LUN n2+1(314)~iSCSI LUN n3(315)的资料。
iSCSI LUN 1(310)表示由磁盘虚拟化模块利用RAID LUN(316)所建立的一个iSC8I LUN。该iSCSI LUN只属于iSCSI Target 1(37)。因为iSCSI Target 1(37)为分享的iSCSI Target,所以iSCSI LUN 1(310)为分享的iSCSI LUN。该分享的iSCSI Target属于使用者1(拥有者)(31)。所以使用者1(拥有者)(31)可以对iSCSI LUN 1(310)做读写。而iSCSI Target 1(37)被设定在群组1(38)下,所以群组1(35)上的使用者,包括使用者2(拥有者)(32)、使用者3(分享者)(33)和使用者4(分享者)(34)都可以读取iSCSI LUN 1(310)上的数据。
iSCSI LUN n1(311)表示由磁盘虚拟化模块利用RAID LUN(316)所建立的一个iSCSI LUN。该iSCSI LUN只属于iSCSI Target 1(37)。因为iSCSI Target 1(37)为分享的iSCSI Target,所以iSCSI LUN n1(311)为分享的iSCSI LUN。该分享的iSCSI Target属于使用者1(拥有者)(31)。所以使用者1(拥有者)(31)可以对iSCSI LUN n1(311)做读写。而iSCSI Target 1(37)被设定在群组1(38)下,所以群组1(35)上的使用者,包括使用者2(拥有者)(32)、使用者3(分享者)(33)和使用者4(分享者)(34)都可以读取iSCSI LUN n1(311)上的数据。
iSCSI LUN n1+1(312)表示由磁盘虚拟化模块利用RAID LUN(316)所建立的一个iSCSI LUN。该iSCSI LUN只属于iSCSI Target m(38)。因为iSCSI Target m(38)为分享的iSCSI Target,所以iSCSI LUN n1+1(312)为分享的iSCSI LUN。该分享的iSCSI Target属于使用者2(拥有者)(32)。所以使用者2(拥有者)(32)可以对iSCSI LUN n1+1(312)做读写。而iSCSI Target m(38)被设定在群组1(35)和群组2(36)下,所以群组1(35)上的使用者,包括使用者2(拥有者)(32)、使用者3(分享者)(33)和使用者4(分享者)(34)都可以读取iSCSI LUN n1+1(312)上的数据。还有群组2(36)上的使用者,包括使用者4(分享者)(34)也都可以读取iSCSILUN n1+1(312)上的数据。
iSCSI LUN n2(313)表示由磁盘虚拟化模块利用RAID LUN(316)所建立的一个iSCSI LUN。该iSCSI LUN只属于iSCSI Target m(38)。因为iSCSI Target m(38)为分享的iSCSI Target,所以iSCSI LUN n2(313)为分享的iSCSI LUN。该分享的iSCSI Target属于使用者2(拥有者)(32)。所以使用者2(拥有者)(32)可以对iSCSI LUN n2(313)做读写。而iSCSI Target m(38)被设定在群组1(35)和群组2(36)下,所以群组1(35)上的使用者,包括使用者2(拥有者)(32)、使用者3(分享者)(33)和使用者4(分享者)(34)都可以读取iSCSI LUN n2(313)上的数据。还有群组2(36)上的使用者,包括使用者4(分享者)(34)也都可以读取iSCSILUN n2(313)上的数据。
iSCSI LUN n2+1(314)表示由磁盘虚拟化模块利用RAID LUN(316)所建立的一个iSCSI LUN。该iSCSI LUN只属于iSCSI Target m+1(39)。因为iSCSI Target m+1(39)为分享的iSCSI Target,所以iSCSI LUN n2+1(314)为分享的iSCSI LUN。该分享的iSCSI Target属于使用者2(拥有者)(32)。所以使用者2(拥有者)(32)可以对iSCSI LUN n2+1(314)做读写。而iSCSI Target m+1(39)被设定在群组2(36)下,所以群组2(36)上的使用者,包括使用者4(分享者)(34)都可以读取iSCSI LUNn2(313)上的数据。
iSCSI LUN n3(315)表示由磁盘虚拟化模块利用RAID LUN(316)所建立的一个iSCSI LUN。该iSCSI LUN只属于iSCSI Target m+1(39)。因为iSCSI Target m+1(39)为分享的iSCSI Target,所以iSCSI LUN n3(315)为分享的iSCSI LUN。该分享的iSCSI Target属于使用者2(拥有者)(32)。所以使用者2(拥有者)(32)可以对iSCSI LUN n3(315)做读写。而iSCSI Target m+1(39)被设定在群组2(36)下,所以群组2(36)上的使用者,包括使用者4(分享者)(34)都可以读取iSCSI LUNn3(315)上的数据。
RAID LUN(316)为磁盘阵列系统利用1颗或是数颗硬盘所建构出来的储存空间。这个空间提供磁盘虚拟化模块产出iSCSI LUN。
附图4、磁盘虚拟化技术硬件架构。
iSCSI储存器硬件(41),为一台iSCSI储存器除了机壳和电源供应器外的核心硬件组件。iSCSI储存器硬件(41)必须包括4种硬件,包括网络卡(42)、iSCSI处理硬件(43)、磁盘阵列处理硬件(44)和硬盘(45)。
网络卡(42)负责收送TCP/IP的封包,这些TCP/IP的封包封装iSCSI的命令和回应。
iSCSI处理硬件(43)包括中央处理器、内存、周边装置沟通接口、系统储存装置等等硬件。依据上述的2种实作架构,iSCSI处理硬件(43)执行的内容可以分为下列2种方法:
iSCSI处理硬件(43)和磁盘阵列处理硬件(44)为同硬件。
若是iSCSI处理硬件(43)和磁盘阵列处理硬件(44)为同一组硬件执行,这个硬件必须除了中央处理器、内存、周边装置沟通接口和系统储存装置等硬件装置外,在加上硬盘控制接口。中央处理器执行iSCSI储存器上的操作系统(51)、网络卡驱动程序(52)、TCP/IP(53)、iSCSI服务(54)、磁盘虚拟化模块(55)、磁盘阵列系统程序(56)、储存装置接口驱动程序(57)和iSCSI储存管理(58)。内存则提供中央处理器暂存资料。周边装置沟通接口变得不是必须要的接口。系统储存装置则储存中央处理器执行的所有软件,包括操作系统(51)、网络卡驱动程序(52)、TCP/IP(53)、iSCSI服务(54)、磁盘虚拟化模块(55)、磁盘阵列系统程序(56)、储存装置接口驱动程序(57)和管理系统(58)。硬盘控制接口负责控制和存取硬盘(45)。
iSCSI处理硬件(43)和磁盘阵列处理硬件(44)为不同硬件。
若是iSCSI处理硬件(43)和磁盘阵列处理硬件(44)为不同硬件执行,中央处理器执行iSCSI储存器上的操作系统(61)、网络卡驱动程序(62)、TCP/IP(63)、iSCSI服务(64)、磁盘虚拟化模块(65)和iSCSI储存管理(66)。内存则提供中央处理器暂存资料。周边装置沟通接口则和独立的磁盘阵列处理硬件(44)连接,该接口可能为PCI、PCI-X、PCI-E等接口。系统储存装置则储存中央处理器执行的所有软件,包括操作系统(61)、网络卡驱动程序(62)、TCP/IP(63)、iSCSI服务(64)、磁盘虚拟化模块(65)和iSCSI储存管理(66)。
磁盘阵列系统硬件(44)可能和iSCSI处理硬件(43)为同一套硬件。若是为不同一套硬件,这硬件为完全独立运作的计算机系统,iSCSI处理硬件(43)和磁盘阵列处理硬件(44)之间透过周边装置沟通接口相互连接,该接口可能为PCI、PCI-X、PCI-E等接口。磁盘阵列系统硬件(44)包括中央处理器、内存、周边装置沟通接口、系统储存装置和硬盘控制接口等等硬件。中央处理器执行磁盘阵列操作系统(610)、磁盘阵列系统程序(67)、储存装置接口驱动程序(68)和磁盘阵列管理(69)。内存则提供中央处理器暂存资料。周边装置沟通接口和iSCSI处理硬件(43)沟通。系统储存装置则储存中央处理器执行的所有软件,包括操作系统(610)、磁盘阵列系统程序(67)、储存装置接口驱动程序(68)和磁盘阵列管理(69)。硬盘控制接口负责控制和存取硬盘(45)。
硬盘(45)被硬盘控制接口控制,若以iSCSI处理硬件(43)和磁盘阵列处理硬件(44)为同一硬件,硬盘控制接口控制被包含于iSCSI处理硬件(43)内。若以iSCSI处理硬件(43)和磁盘阵列处理硬件(44)为不同硬件。
附图5、磁盘虚拟化技术软件实作1。
iSCSI储存器操作系统(51)执行于iSCSI处理硬件(43)上,iSCSI处理硬件(43)同时也是磁盘阵列系统硬件(44),所以必须同时执行iSCSI储存器软件和磁盘阵列系统。因此,iSCSI储存器操作系统(51)必须执行一个iSCSI储存器的所有软件,包括网络卡驱动程序(52)、TCP/IP(53)、iSCSI服务(54)、磁盘虚拟化模块(55)、磁盘阵列系统程序(56)、储存装置接口驱动程序(57)、管理系统(58)。
网络卡驱动程序(52)必执行于iSCSI处理硬件(43),负责传送和接收被TCP/IP封装的iSCSI命令。
TCP/IP(53)是TCP/IP通讯协议的程序,这程序存在操作系统(51)的系统核心中。TCP/IP(53)将接收到的封包送给iSCSI服务,并接收iSCSI服务需要传送的iSCSI命令执行结果。若管理系统(58)用网络提供iSCSI储存器管理者远程管理的能力,则TCP/IP(53)也必须同时服务管理系统(58)需要的TCP/IP通讯。
iSCSI服务(54)执行iSCSI通讯协议,负责从TCP/IP(53)接收TCP/IP封包并转换成iSCSI命令后,执行这个命令。执行该iSCSI命令结束后,iSCSI服务(54)将结果在封装成TCP/IP封包后,再用TCP/IP(53)送回给使用者。除此的外,iSCSI服务(54)必须根据管理系统(58)所提供的信息,执行管理使用者和iSCSI LUN的权限关系。因此再上述的iSCSI Target、群组、使用者(拥有者)、使用者(分享者)间的关系都是由iSCSI服务(54)来实作。
磁盘虚拟化模块(55)为本发明最重要的组件,磁盘虚拟化模块(55)负责将磁盘阵列系统程序(56)所提供的RAID LUN分割成数百到数千个iSCSI LUN。而这分割的信息来自管理系统(58)。
磁盘阵列系统程序(56)执行于iSCSI处理硬件(43)上,负责将硬盘(45)制作成RAID LUN(212)。RAID LUN(316)依据不同的RAID技术可以做成RAID 0、1、10、5、50、6、60和JBOD等等磁盘阵列型态。
储存装置接口驱动程序(57)建立于操作系统(51)内,负责驱动硬盘控制接口。
管理系统(58)必须提供磁盘虚拟化模块(55)和iSCSI服务(54)信息,执行本发明的磁盘虚拟化技术。上述iSCSI LUN、iSCSI Target、群组、使用者(拥有者)和使用者(分享者)的关系必须详细的定义在管理系统(58)内,等磁盘虚拟化模块(55)和iSCSI服务(54)开始运作后,管理系统(58)将这些信息提供给这2个模块来规划这iSCSI储存器。管理系统(58)除了提供本发明的重要信息外,也必须管理其它的软件组件,例如磁盘阵列系统程序(56)和操作系统(51)的设定。管理系统(58)也必须提供iSCSI储存器管理者管理接口,让iSCSI储存器管理者可以透过远程控制的方式控制该iSCSI储存器。
附图6、磁盘虚拟化技术软件实作2。
iSCSI储存器操作系统(61)执行于iSCSI处理硬件(43)上,iSCSI处理硬件(43)和磁盘阵列系统硬件(44)是完全独立的计算机系统;两者透过周边装置沟通接口来连接。所以,iSCSI储存器操作系统(61)只需要执行一个iSCSI储存器上关于iSCSI服务的相关软件即可,包括网络卡驱动程序(62)、TCP/IP(63)、iSCSI服务(64)、磁盘虚拟化模块(65)和iSCSI储存器管理(66)等软件。至于磁盘阵列系统程序(67)、储存装置接口驱动程序(68)和磁盘阵列管理(69)则交由磁盘阵列操作系统(610)执行。
网络卡驱动程序(62)必执行于iSCSI处理硬件(43),负责传送和接收被TCP/IP封装的iSCSI命令。
TCP/IP(63)是TCP/IP通讯协议的程序,这程序存在iSCSI储存器操作系统(61)的系统核心中。TCP/IP(63)将接收到的封包送给iSCSI服务,并接收iSCSI服务需要传送的iSCSI命令执行结果。若iSCSI储存器管理(66)用网络提供iSCSI储存器管理者远程管理的能力,则TCP/IP(63)也必须同时服务iSCSI储存器管理(66)需要的TCP/IP通讯。
iSCSI服务(64)执行iSCSI通讯协议,负责从TCP/IP(63)接收TCP/IP封包并转换成iSCSI命令后,执行这个命令。执行该iSCSI命令结束后,iSCSI服务(64)将结果在封装成TCP/IP封包后,再用TCP/IP(63)送回给使用者。除此的外,iSCSI服务(64)必须根据管理系统(66)所提供的信息,执行管理使用者和iSCSI LUN的权限关系。因此再上述的iSCSI Target、群组、使用者(拥有者)、使用者(分享者)间的关系都是由iSCSI服务(64)来实作。
磁盘虚拟化模块(65)为本发明最重要的组件,磁盘虚拟化模块(65)负责将磁盘阵列系统程序(67)所提供的RAID LUN分割成数百到数千个iSCSI LUN。而这分割的信息来自iSCSI储存器管理(66)。
iSCSI储存器管理(66)必须提供磁盘虚拟化模块(65)和iSCSI服务(64)信息,执行本发明的磁盘虚拟化技术。上述iSCSI LUN、iSCSI Target、群组、使用者(拥有者)和使用者(分享者)的关系必须详细的定义在iSCSI储存器管理(66)内,等磁盘虚拟化模块(65)和iSCSI服务(64)开始运作后,iSCSI储存器管理(66)将这些信息提供给这2个模块来规划这iSCSI储存器。iSCSI储存器管理(66)除了提供本发明的重要信息外,也必须管理其它的软件组件,例如iSCSI储存器操作系统(61)的设定。iSCSI储存器管理(66)也必须提供iSCSI储存器管理者管理接口,让iSCSI储存器管理者可以透过远程控制的方式控制该iSCSI储存器。
磁盘阵列系统程序(67)执行于磁盘阵列系统硬件(44)上,负责将硬盘(45)制作成RAID LUN(212)。RAID LUN(316)依据不同的RAID技术可以做成RAID 0、1、10、5、50、6、60和JBOD等等磁盘阵列型态。
储存装置接口驱动程序(68)建立于磁盘阵列操作系统(610)内,负责驱动硬盘控制接口。
磁盘阵列管理(69)必须提供磁盘阵列系统程序(67)信息,执行磁盘阵列将一颗以上的硬盘(45)规划成RAID 0、1、10、5、50、6、60和JBOD等等RAID形式。磁盘阵列管理(69)除了提供磁盘阵列系统程序(67)信息外,也必须提供iSCSI储存器管理(66)管理磁盘阵列系统程序(67)的功能,让磁盘阵列系统程序(67)和iSCSI服务(64)能完全的整合。
磁盘阵列操作系统(610)必执行于磁盘阵列系统硬件(44)上,磁盘阵列操作系统(610)执行磁盘阵列系统程序(67)、储存装置接口驱动程序(68)和磁盘阵列管理(69)。
其中,本发明的管理原则以图1来说明:
磁盘阵列逻辑单元号(11)是由磁盘阵列系统(56,57)提供的一个RAIDLUN(212,316)。对操作系统(51,61)来说,RAID LUN(212,316)是一颗实体的磁盘驱动器。过去的iSCSI技术只能将该RAID LUN(212,316)做成一个iSCSI LUN让使用者存取。利用本技术磁盘阵列逻辑单元号(11)在本发明中,利用磁盘虚拟化技术,将磁盘阵列逻辑单元号(11)分割成数百或数千个iSCSI LUN,在的前的iSCSI技术是必须由数百或数千个RAID LUN来实现,现在利用本发明只要一个磁盘阵列逻辑单元号(11)便可以做到。
iSCSI LUN 1(12)、iSCSI LUN 2(13)和iSCSI LUN n(14)是由RAID LUN(11)的部份储存区定义成完全独立的iSCSI LUN。每一个iSCSI LUN等完全同于过去的iSCSI技术用一个RAID LUN做成一个iSCSI LUN。(12,13,14)表示有n颗私有的iSCSI LUN,因此这n颗iSCSI LUN都只属于一个使用者,例如iSCSI LUN 1属于使用者1(12)、iSCSI LUN 2(13)属于使用者2和iSCSI LUN n(14)属于使用者n。
附图2表示私有的iSCSI LUN(27,28,29,210,211)、iSCSI Target(24,25,26)和使用者(21,22,23)间的关系。根据原则5,iSCSI LUN被定义成私有的iSCSI LUN必属于一个被定义成私有的iSCSI Target,且每一个iSCSI LUN都只能属于一个iSCSI Target。每一个私有的iSCSI Target可以拥有数个到理论上无限多个iSCSILUN。而每一个私有的iSCSI Target必只有一个拥有者,这个拥有者可以对属于该私有的iSCSI Target的所有iSCSI LUN做读写。例如iSCSI LUN 1~n1(27,28)属于iSCSI Target 1(24),iSCSI Target 1(24)属于使用者1(21),所以使用者1可以存取iSCSI LUN 1~n1(27,28)。相对的,使用者2(22)对于iSCSI LUN 1~n1(27,28)就没有存取权限。所有的iSCSI LUN(27,28,29,210,211)都是由同一个RAID LUN提供储存空间。
这些私有的iSCSI LUN只能被拥有者所存取,所以拥有者的数据不会被泄漏出去。反观现有的iSCSI储存器没有向本发明的管理系统,当一个使用者登入iSCSI储存器后,该使用者可以存取所有的iSCSI LUN,对于使用者来说,数据可能被别的使用者读取是危险的。比较含本发明的iSCSI储存器和现有的,现有的适合作为服务器的储存器,因为现有的储存器无法控制不同使用者和iSCSI LUN的权限,这些权限的关系必须由服务器管理。例如若是iSCSI储存器作为NAS服务器的储存器,使用者权限和储存空间存取权由NAS服务器管理。使用本发明,iSCSI储存器就有使用者权限和储存空间存取权的管理机制,因此不需要在iSCSI储存器前再加一台NAS服务器就可以直接服务使用者;本发明的架构可以节省一台服务器的支出。
本发明更重要的是提供可分享的iSCSI LUN,让多人只读某一个iSCSI LUN。因应分享的iSCSI LUN的发明,本发明提出群组管理的方法管理一个分享的iSCSILUN的读取权。用图1来说明,iSCSI LUN s(15)和iSCSI LUN x(16)是分享的iSCSILUN。iSCSI LUN s(15)和iSCSI LUN x(16)必各有一个唯一的拥有者,例如iSCSILUN s(15)的拥有者为使用者s,iSCSI LUN s(16)的拥有者为使用者x。使用者s可以对iSCSI LUN s(15)读取和写入的作业;使用者s是唯一对iSCSI LUN s(15)有写入权力的使用者。iSCSI LUN s(15)读取的权力则藉由群组管理的方法管理。以图1的(15)和(16)说明,iSCSI LUN s(15)可以属于数个群组,每一个群组内的使用者都有iSCSI LUN s(15)的读取权。而一个群组可以设定数个分享的iSCSI LUN,例如群组1就有iSCSI LUN s(15)和iSCSI LUN x(16)的读取权。
iSCSI LUN、iSCSI Target、群组和使用者间的关系用图3深入的说明。在iSCSI标准中,iSCSI LUN被设定成iSCSI Target的结构,一个iSCSI使用者用iSCSIInitiator内的iSCSI Target寻找功能来得到在一个iSCSI储存系统中有那些iSCSI Target可以使用。每一个iSCSI Target拥有完全存取iSCSI LUN的权力。一个iSCSITarget可以有超过1个iSCSI LUN。因此,当一个使用者通过iSCSITarget的认证,该使用者可以存取该iSCSI Target下的所有iSCSI LUN。
本发明更进一步将iSCSI Target规范成私有的iSCSI Target和分享的iSCSITarget,私有的iSCSI Target和一般的iSCSI定义的一样,但是分享的iSCSI Target则是本发明才有的功能。一个分享的iSCSI LUN必属于一个分享的iSCSI Target。图3内,这台iSCSI储存器有m+1个iSCSI Target(37,38,39)被设定完成,iSCSI LUN1~iSCSI LUN n1(310,311)属于iSCSI Target 1(37)、iSCSI LUN n1+1~iSCSI LUNn2(312,313)属于iSCSI Target m(38)和iSCSI LUN n2+1~iSCSI LUN n3(314,315)属于iSCSI Target m+1(39)。上述的每一个iSCSI LUN(310,311,312,313,314,315)都是由同一个RAID LUN(316)所提供的储存空间。iSCSI Target 1(37)、iSCSITarget m(38)和iSCSI Target m+1(39)分别各有一个拥有者:使用者1(31)和使用者2(32)。其中,使用者2(32)拥有iSCSI Target m(38)和iSCSI Target m+1(39)两个iSCSI Target的写入权。群组1(35)包括使用者2(32)、使用者3(33)和使用者4(34);使用者2(32)虽然是iSCSI Target m(38)和iSCSI Target m+1(39)的拥有者,但是使用者2(32)还是可以加入任意群组。群组1(35)被设定拥有iSCSITarget 1(37)和iSCSI Target m(38)的读取权,因此使用者2(32)、使用者3(33)和使用者4(34)都可以任意的读取iSCSI Target 1(37)和iSCSI Target m(38)内所有的iSCSI LUN内的数据,包括iSCSI LUN 1~iSCSI LUN n1(310,311)和iSCSI LUNn1+1~iSCSI LUN n2(312,313)。但是,这样的设定会有一个麻烦,因为使用者2(32)为iSCSI Target m(38)的拥有者,因此当使用者2(32)登入时,iSCSI Target m(38)下的所有iSCSI LUN变成可擦写,使用者3(33)和使用者4(34)便不可以读取资料。因此建议,若使用者2(32)要读数据时,还是另外建立一个账号,例如使用者5,该账号不是iSCSI Target m(38)的拥有者才方便使用者2(32)读取数据。群组2(36)则包含iSCSI Target m(38)和iSCSI Target m+1(39),其中iSCSI Target m(38)也属于群组1,这样的设定在本发明并不冲突。只要使用者2(32)不登入,iSCSITarget m(38)内可以被使用者4(34)读取。
本发明的分享的iSCSI Target管理机制让iSCSI LUN可以被有限制的分享,而不是分享后,所有的使用者都可以使用的漫无目的的分享。利用使用者、群组和分享的iSCSI Target间的定义,让使用者可以读取使用者有权限读取的数据,既提供数据分享的方便性,也提供数据安全的保护性。安全性和保护性的平衡则透过该机制交由iSCSI储存器管理者来决定。
本发明iSCSI储存器硬件架构。
iSCSI储存器硬件通常是一部嵌入式系统、PC计算机、I作站或服务器,iSCSI客户端可以用硬件的方式或软件的方式来实现。该计算机必须提供一个运算的平台,让iSCSI系统可以被执行。这系统必须包括下列组件:
iSCSI处理硬件(43)负责执行iSCSI储存系统的运算和储存系统设定数据库,本发明的磁盘虚拟化技术内含于iSCSI储存系统内,所以也在iSCSI处理硬件(43)执行。这硬件必须包括至少一棵中央处理器、内存和大量储存装置。大量储存装置必须储存iSCSI处理硬件的操作系统、iSCSI系统程序和储存系统设定数据库。另外,iSCSI处理硬件(43)必须能和网络卡(42)与磁盘阵列系统沟通。由网络卡(42)接收iSCSI Initiator的命令或管理的指令,送到iSCSI处理硬件(43)处理,然后对磁盘阵列系统发出IO命令。
磁盘阵列处理硬件(44)负责执行磁盘阵列系统。这硬件(44)必须包括至少一棵中央处理器、内存、硬盘控制接口和大量储存装置。大量储存装置必须储存磁盘阵列处理硬件(44)的操作系统。若iSCSI储存器使用独立的磁盘阵列系统,例如磁盘阵列适配卡,则磁盘阵列处理硬件(44)和iSCSI处理硬件(43)完全互相独立。但是、iSCSI储存器用iSCSI处理硬件(43)执行磁盘阵列系统程序,则磁盘阵列处理硬件(44)和iSCSI处理硬件(43)使用同一套硬设备,不过执行磁盘阵列系统程序必须在iSCSI处理硬件(43)加上硬盘控制接口来控制大量的硬盘。
网络卡(42)负责接收从iSCSI initiator来的iSCSI命令,透过硬件接口将iSCSI命令送到iSCSI处理硬件处理(43)。这些iSCSI命令的处理结果也会透过硬件接口送到这网络卡上,再由网络卡送回给iSCSI initiator。在iSCSI储存系统上可能有超过1张以上的网络卡(42),这些网络卡(42)会透过PCI或PCI-E接口和iSCSI处理硬件(43)结合。而这些网络卡(42)可能为GbE或10GbE等可以执行TCP/IP(53,63)的网络接口形式。
硬盘(45)则提供iSCSI储存系统的磁盘储存空间,本发明的磁盘虚拟化技术也是在控制由磁盘阵列系统所操作的这些磁盘空间。这些硬盘的接口必须和硬盘控制接口一样或是兼容,这些接口可能为:IDE、SCSI、SATA、SAS、External SATA、External SAS和光纤等等磁盘控制接口。
本发明iSCSI储存器软件架构。
一个标准的iSCSI储存器软件架构如附图5所示。iSCSI储存器操作系统(51,61)是负责驱动iSCSI储存器硬件,包括iSCSI处理器硬件(43)、磁盘阵列系统硬件(44)和网络卡(42)。若iSCSI处理器硬件(43)和磁盘阵列系统硬件(44)是相互独立的系统,操作系统必须包含磁盘阵列系统驱动程序,例如若iSCSI储存器使用3WARE的磁盘阵列卡,iSCSI储存器操作系统(31)便需要该磁盘阵列卡的驱动程序。在此架构下,磁盘阵列系统程序(67)和储存装置接口驱动程序(68)是由另一个硬件运算,因此除了iSCSI储存器操作系统(51)外,还有一个磁盘阵列操作系统(610)来执行磁盘阵列系统程序(67)和储存装置接口驱动程序(68)。若是iSCSI处理器硬件(43)和磁盘阵列系统硬件(44)是相同一套硬件,则iSCSI储存器操作系统(51)必须包含储存装置接口驱动程序(57)。例如iSCSI储存器使用Intel芯片组上的硬盘控制器所控制的硬盘当成磁盘阵列的硬盘,iSCSI储存器操作系统(51,61)便需要该硬盘控制器的驱动程序。
磁盘虚拟化模块(55,65)必执行于iSCSI储存器操作系统(51,61)上,该技术最重要的功能是将磁盘阵列系统程序(56,67)建立的RAID LUN分割成多个iSCSI LUN,且这些iSCSI LUN在RAID LUN上的范围是绝对没有交集。因此,权限管理系统会记录每一个iSCSI LUN在一个RAID LUN的相对位置,当使用者存取某一个iSCSI LUN时,权限管理系统会告知磁盘虚拟化模块(55,65)该iSCSI LUN的存取范围。当磁盘虚拟化模块(55,65)了解该iSCSI LUN的范围后,磁盘虚拟化模块(55,65)将收到的IO命令的存取位置转换成对应于RAID LUN的位置。例如,使用者1发出的IO命令是存取iSCSI LUN位置A,但是送入磁盘虚拟化模块(55,65)后,根据权限管理系统给予该iSCSI LUN的范围,磁盘虚拟化模块(55,65)将该位置A转换为位置B的位置,位置B是使用者1的IO命令预期存取的数据在RAID LUN上的实际位置。藉由这个技术,可以将一个RAID LUN分割成数百或数千个iSCSI LUN。iSCSI储存器有这磁盘虚拟化模块(55,65),它便有提供数百或数千个iSCSI Target给数百或数千个使用者的潜力。这个技术加上前述的管理原则,让原本专门服务服务器的iSCSI储存器技术变成可以服务个人使用者,并且可以节省一台前端服务器的成本。此外,让iSCSI储存器服务数百或数千个使用者可以让这台iSCSI储存器的功效最大化。
磁盘虚拟化模块(55,65)产生出iSCSI LUN后,iSCSI服务(54,64)将iSCSI LUN再定义成许多的iSCSI Target。iSCSI服务(54,64)再赋予这些iSCSI Target和使用者或是群组间的关系。依据权限管理系统的设定,被定义成私有的iSCSI Target必只能有一个拥有者,且不能成为任何一个群组的iSCSI Target。当该拥有者登入和完成iSCSI Di scovery流程后,该iSCSI Target变成可以选择联机的iSCSITarget。若为分享的iSCSI Target也必只能有一个拥有者,但是该分享的iSCSITarget可以被设定于几个群组内。只要使用者属于这些群组,该使用者可以读取该分享的iSCSI Target。iSCSI服务(54,64)也是使用者用iSCSI Initiator联机的目标软件。iSCSI通讯协议接口接受iSCSI Initiator联机后并认证该使用者的账号密码。当使用者通过账号密码的验证后,iSCSI通讯协议接口通知该使用者可以存取的iSCSI Target的列表。使用者选择想要联机的iSCSI Target后,iSCSI服务(54,64)开始接受由iSCSI Initiator发出的IO命令。iSCSI服务(54,64)从TCP/IP(53,63)模块收到TCP封包内的资料后,它将这些数据解读为iSCSI命令。iSCSI服务(54,64)再根据这些命令的内容对磁盘虚拟化模块(55,65)下达IO命令。当这些命令完成后,iSCSI服务(54,64)将这些结果再封装成iSCSI命令,再用TCP的联机送为iSCSI Initiator。
管理系统将根据磁盘阵列系统的硬件形式不同而可能有2种实作的方式:
磁盘阵列处理硬件(43)和iSCSI(44)处理硬件为共享同一套硬件系统~这样的硬件条件下,管理系统(58)以图5表示。该管理系统内包括操作系统管理、iSCSI管理、磁盘阵列系统管理和使用者管理四大部分。其负责的功能如下:
操作系统管理:包括iSCSI储存器的IP Address设定、iSCSI储存器系统时间和远程遥控关机或重新开机。
iSCSI管理:它负责管理iSCSI Target、iSCSI LUN。iSCSI管理提供iSCSI Target的新增、更新和删除,也提供iSCSI LUN的新增、更新和删除。除此的外,iSCSI LUN是透过磁盘虚拟化模块(55)建立在磁盘阵列系统程序(56)所产生的RAID LUN上,因此iSCSI管理上也包括可用的RAID LUN寻找机制,将可用的RAID LUN作为建立iSCSI LUN的资源。
磁盘阵列管理:它负责将iSCSI储存器内的硬盘设定成各种的磁盘阵列形式,例如RAID 0,1,10,5,50,6,60,JBOD或Single Disk。它所提供的功能有RAID的新增、更新、扩充、删除、修复等等。
使用者管理:使用者管理在传统的iSCSI储存器上非常阳春。因为本发明磁盘虚拟化模块让iSCSI储存器可以提供数百或数千个iSCSI LUN和提供分享的iSCSILUN的功能,因此本发明必须提供完整的使用者管理机制,管理包括使用者账号密码、使用者使用iSCSI LUN的权限、使用者加入或移出群组、群组管理等等进阶的管理机制。
这样的管理系统的整合性非常的高,iSCSI储存器制造商只要制作一个管理系统就可以管理iSCSI储存器内的所有组件。
磁盘阵列处理硬件(44)和iSCSI处理硬件(43)为独立的硬件系统-
这样的硬件条件下,管理系统以图5表示。该管理系统必须先分为2个部分:iSCSI储存器管理和磁盘阵列管理。iSCSI储存器管理执行于iSCSI处理硬件上,而磁盘阵列管理执行于磁盘阵列处理硬件(44)。iSCSI储存器管理系统内包括操作系统管理、iSCSI管理和使用者管理四大部分,不包含磁盘阵列系统管理。这四个管理系统所负责的功能如下:
操作系统管理:包括iSCSI储存器的IP Address设定、iSCSI储存器系统时间和远程遥控关机或重新开机。
iSCSI管理:它负责管理iSCSI Target、iSCSI LUN。iSCSI管理提供iSCSITarget的新增、更新和删除,也提供iSCSI LUN的新增、更新和删除。除此的外,iSCSI LUN是透过磁盘虚拟化模块(65)建立在磁盘阵列系统程序(67)所产生的RAID LUN上,因此iSCSI管理上也包括可用的RAID LUN寻找机制,将可用的RAID LUN作为建立iSCSI LUN的资源。
磁盘阵列管理接口:这个磁盘阵列管理接口不是真正执行磁盘阵列管理的软件,因为磁盘阵列系统程序(67)执行于另一个硬件上,这个磁盘阵列管理接口透过该硬件的驱动程序将控制命令送到于磁盘阵列处理硬件(44)上的磁盘阵列管理上做实际的磁盘阵列管理。
使用者管理:使用者管理在传统的iSCSI储存器上非常阳春。因为本发明磁盘虚拟化模块(65)让iSCSI储存器可以提供数百或数千个iSCSI LUN和提供分享的iSCSI LUN的功能,因此本发明必须提供完整的使用者管理机制,管理包括使用者账号密码、使用者使用iSCSI LUN的权限、使用者加入或移出群组、群组管理等等进阶的管理机制。
磁盘阵列管理(69)执行于磁盘阵列处理硬件(44)上,磁盘阵列管理接口可以透过磁盘阵列处理硬件(44)的驱动程序将磁盘阵列的操作命令送到磁盘阵列管理。磁盘阵列管理负责将iSCSI储存器内的硬盘设定成各种的磁盘阵列形式,例如RAID 0,1,10,5,50,6,60,JBOD或Single Disk。它所提供的功能有RAID的新增、更新、扩充、删除、修复等等。

Claims (1)

1.一种iSCSI服务的磁盘虚拟化方法,其特征在于包括:
利用磁盘虚拟化技术将RAID LUN分割成至少一个iSCSI LUN;
该各iSCSI LUN可供使用者进行存取动作;
该各iSCSI LUN可属于至少一个iSCSI Target(因特网小计算机系统接口指针);
该iSCSI Target(因特网小计算机系统接口指针)包括有一私有iSCSI Target与一分享iSCSI Target;
该私有iSCSI Target包括有一拥有者,该拥有者可以对该私有iSCSI Target(因特网小计算机系统接口指针)下的iSCSI LUN拥有读写权;
该分享iSCSI Target(因特网小计算机系统接口指针)包括有一拥有者,该拥有者可以对该分享iSCSI Target(因特网小计算机系统接口指针)下的iSCSI LUN拥有读写权;
该分享iSCSI Target(因特网小计算机系统接口指针)可以被设定给至少一个群组,群组内的所有使用者可以读取该分享iSCSITarget(因特网小计算机系统接口指针)下的所有iSCSI LUN的数据。
CN200910159221A 2009-07-31 2009-07-31 一种iSCSI服务的磁盘虚拟化方法 Active CN101626403B (zh)

Priority Applications (1)

Application Number Priority Date Filing Date Title
CN200910159221A CN101626403B (zh) 2009-07-31 2009-07-31 一种iSCSI服务的磁盘虚拟化方法

Applications Claiming Priority (1)

Application Number Priority Date Filing Date Title
CN200910159221A CN101626403B (zh) 2009-07-31 2009-07-31 一种iSCSI服务的磁盘虚拟化方法

Publications (2)

Publication Number Publication Date
CN101626403A CN101626403A (zh) 2010-01-13
CN101626403B true CN101626403B (zh) 2012-10-17

Family

ID=41522084

Family Applications (1)

Application Number Title Priority Date Filing Date
CN200910159221A Active CN101626403B (zh) 2009-07-31 2009-07-31 一种iSCSI服务的磁盘虚拟化方法

Country Status (1)

Country Link
CN (1) CN101626403B (zh)

Families Citing this family (4)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
CN103327114B (zh) * 2013-07-04 2016-07-06 北京飞杰信息技术有限公司 数据安全存储传输的方法及装置
CN106293502B (zh) * 2015-06-29 2019-09-24 联想(北京)有限公司 一种配置方法、数据交换方法及服务器系统
CN106445410B (zh) * 2016-09-13 2020-08-25 苏州浪潮智能科技有限公司 一种存储设备共享方法、系统及具有该系统的智能网关
CN110806991A (zh) * 2019-10-31 2020-02-18 山东超越数控电子股份有限公司 一种支持多路连接高可靠易扩展的硬盘及其使用方法

Citations (1)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
CN1633131A (zh) * 2005-01-14 2005-06-29 清华大学 一种iSCSI存储系统的实现方法

Patent Citations (1)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
CN1633131A (zh) * 2005-01-14 2005-06-29 清华大学 一种iSCSI存储系统的实现方法

Non-Patent Citations (1)

* Cited by examiner, † Cited by third party
Title
李斌 等.RAID技术在iSCSI环境中的应用研究.《湖北职业技术学院学报》.2008,第11卷(第3期),第89-91页. *

Also Published As

Publication number Publication date
CN101626403A (zh) 2010-01-13

Similar Documents

Publication Publication Date Title
JP4383148B2 (ja) 処理オフロード機能モジュールを備えた磁気ディスクアレイ装置
CN105075413B (zh) 在配置成收纳多个模块化信息处理系统和多个模块化信息处理资源的机壳中镜像虚拟功能的系统和方法
CN1841295B (zh) 通用存储总线适配器
US20120185413A1 (en) Specifying Physical Attributes of a Cloud Storage Device
CN1326026C (zh) 将数据净荷从第一扇区格式转换成第二扇区格式的系统和方法
CN103946821B (zh) 数据存储器架构扩展系统及方法
US8112362B2 (en) Storage system and license management method
CN102065071B (zh) 一种支持多传输协议的存储设备
US7127575B2 (en) Offsite management using disk based tape library and vault system
US20190079693A1 (en) Dynamic data relocation using cloud based ranks
CN103546529A (zh) 集群中的虚拟共享存储
CN101702115B (zh) 一种基于集群存储系统实现块协议接口的方法
CN1936818A (zh) 存储控制装置、数据管理系统及数据管理方法
CN101582915A (zh) 存储系统以及使用管理装置的存储系统的管理方法
CN101626403B (zh) 一种iSCSI服务的磁盘虚拟化方法
CN101238432B (zh) 具有用户接口的海量存储系统
US7716440B2 (en) Storage system and management method thereof
WO2019053565A1 (en) STORAGE SYSTEM USING CLOUD STORAGE AS A ROW
CN100447731C (zh) 冗余存储虚拟化计算机系统
CN101788888A (zh) 一种实现目标端驱动的方法及该目标端驱动
KR101110309B1 (ko) PCI-e 버스 종단 저장장치를 위한 PCI-e 레이드 제어장치 및 그 를 이용한 시스템
CN101630236B (zh) 业务数据的处理方法、系统、存储设备和应用服务器
CN100440213C (zh) 验证信息存储和检索系统的配置的方法和系统
US6721857B2 (en) Flexible allegiance storage and computing architecture
CN101764805A (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