CN1834912B - 用于可扩展互联网引擎的iSCSI引导驱动系统及方法 - Google Patents
用于可扩展互联网引擎的iSCSI引导驱动系统及方法 Download PDFInfo
- Publication number
- CN1834912B CN1834912B CN2005100553142A CN200510055314A CN1834912B CN 1834912 B CN1834912 B CN 1834912B CN 2005100553142 A CN2005100553142 A CN 2005100553142A CN 200510055314 A CN200510055314 A CN 200510055314A CN 1834912 B CN1834912 B CN 1834912B
- Authority
- CN
- China
- Prior art keywords
- iscsi
- server
- client
- request
- server end
- 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.)
- Expired - Fee Related
Links
Images
Landscapes
- Computer And Data Communications (AREA)
Abstract
一种用于服务器远程引导的系统,通常包括一个客户端发送端、一个iSCSI虚拟机以及一个iSCSI发送端。所述客户端发送端请求接入服务器,所述iSCSI虚拟机接收到该接入请求。然后,所述iSCSI发送端根据iSCSI虚拟机接收到的请求,通过使用所述服务器上的iSCSI引导ROM向DHCP服务器发送发现请求,根据所述DHCP服务器返回的应答消息中包含的iSCSI登陆信息发起对服务器的登录,并通过将重新定位矢量Int13指向所述iSCSI引导ROM中的代码的方式模拟一个能够使得该服务器进行引导的磁盘操作系统。所述服务器以8位模式以及并发32位模式进行引导。在服务器引导完成后,所述iSCSI引导ROM显示为本地设备。所述iSCSI虚拟机对登录至少进行两次鉴权。所述iSCSI虚拟机包括一对重复的活动目录服务服务器(ADSS)。
Description
技术领域
本发明涉及一种服务器远程引导技术,确切地说,是通过使用互联网小型计算机系统接口(iSCSI)引导驱动远程启动服务器的方法。
背景技术
对于一个计算机或者计算机系统来说,当打开其电源时,必须通过加载一个操作系统以便进行操作。在一个单独的计算机系统中进行操作时,当用户向该计算机发出一个引导指令,该计算机就会试图通过从计算机系统内存中获取操作系统文件来进行相应处理。同时,为了对特定的硬件进行配置,就需要配置数据文件以及进行这些特定硬件配置所必需的硬件参数。这些文件中也包括初始化视频、打印机以及与某特定机器相连接的外设所必需的信息。例如,在Microsoft公司的MS-DOS操作系统中,配置文件中就需要包括文件CONFIG.SYS。
数台计算机或计算机系统可以连接到一个网络中,该网络通常包括一台客户工作站、一台服务器以及中心网络。在一个计算机存储器中的内容在关闭电源后保持不变的系统内,操作系统可以保存在该计算机中。而对于计算机存储器中的内容在关闭电源后丢失的系统,该计算机就无法从自身恢复引导信息。此时,客户端可以通过网络向作为引导服务器的服务器发送获取操作系统文件的请求。即便在该客户端工作站有非易失性存储空间的时候,从服务器进行引导由于能节省工作站计算机的内存空间,因而也具有相当的优势。由于现在的操作系统和应用程序所占用的容量空间越来越大,从服务器进行引导就具有相当大的优势。
目前在市场上存在多种远程引导的方法。其中之一就是远程初始程序加载(Remote Initial Program Load,RIPL),RIPL是一个从远程位置向工作站加载操作系统的过程。RIPL协议是由3Com、以及共同开发的。目前已应用在在OS/2 Warp Server、Pathworks以及NT等系统中。另外两个常用的远程IPL协议是与UNIX以及TCP/IP网络一同使用的IEEE标准核心协议(NetWare CoreProtocol,NetWare NCP)和BOOT-P。
RIPL是由硬件及软件共同完成的。提出请求的设备,也叫请求者或者工作站,通过请求加载设备向其发送引导程序进行引导。其中,所述加载设备是配备有硬盘的另一台计算机,叫作RIPL服务器或者文件服务器。该RIPL服务器利用加载程序向工作站发送引导程序。当工作站接收到该引导程序后,便通过引导程序的配置进行对操作系统的请求,而该操作系统又可以接着请求和使用应用程序。软件的实施方式可能因其提供商的不同而有所不同,但是理论上讲,它们都执行相似的功能,并按照相似的步骤运行。该客户端工作站需要一个安装在其本地网(LAN)适配器或者网络接口卡(Network Interface Card,NIC)上的特殊的只读存储器(ROM)。所述特殊的ROM一般是一个远程引导ROM,但是也有两个特例是远程引导芯片:支持ANSI/IEEE标准802.2的RIPL芯片和用于传输控制协议/互联网协议(Transmission Control Protocol/Internet Protocol,TCP/IP)环境的预引导执行环境(Preboot Execution Environment,PXE)芯片。
在专利号为6,487,601的美国专利文件中描述了另外一种远程引导的方法。这种动态MAC(DMAC)分配和配置的方法基于从服务器远程引导一个客户端机器的能力,并将该能力用于分配一个本地管理地址(LocallyAdministered Address,LAA)来替代全球管理地址(Universally AdministeredAddress,UAA)。在工作站中安装的一系列程序可以保证其进行远程引导以及与服务器的交互。客户端机器将发送一个DMAC查找帧。该查找帧会被安装在服务器中的DMAC程序截取,该DMAC程序用于接收和处理该请求。在截取该请求后,DMAC程序就会对其进行分析,并采取两种动作中的一种。如果必要,服务器将会运行一个“初始化”脚本。对于已经完成初始化的工作站,服务器将从列表(table)或者池(pool)中读取一个LAA地址发送给客户端工作站。该客户端工作站就可以利用这个新的LAA请求操作系统。此时的引导选项是与一个LAA或者一系列LAA相对应的一个列表或者池。为了获得UAA的替代品,DMAC将为该工作站指定一个LAA地址。一旦该LAA地址指定完毕,就可以根据将要传送给该地址的数据包进行引导。
互联网SCSI(iSCSI)协议定义了一种可以使TCP/IP网络承载块存储应用的方法。SCSI结构基于客户端/服务器模型,iSCSI将其应用到实现TCP/IP网络承载的储存功能中。其中,所述的客户端一般是诸如发送读/写数据请求的文件服务器的主机系统。而服务器是诸如磁盘阵列的资源,它可以对客户端的请求进行反应。从存储的角度上讲,客户端是一个发送端,在发送指令的过程中起着主动的作用。服务器是一个接收端,它在完成客户端请求的过程中处于被动的地位,它包含一个或多个处理引导程序指令的逻辑单元。所述逻辑单元带有指定的标识号或者逻辑单元号(logic unit numbers,LUNs)。
由逻辑单元处理的指令包含在一个由主机系统发布的指令描述块(CDB)中。例如,一个发送到某特定逻辑单元中的CDB可以是一个读取某个特定数据块的指令。接收端的逻辑单元将启动向发送端传送所请求数据块的传送过程,并以一个标明请求完成的状态符终止。iSCSI的中心任务就是封装以及在发送端与TCP/IP网络承载的接收端之间可靠地传送CDB。
发明内容
本发明提供了一种用于服务器远程引导的系统及方法。所述系统包括客户端和服务器端,所述客户端包括客户端发送端和iSCSI发送端,所述服务器端包括iSCSI虚拟机:该客户端发送端请求接入服务器,iSCSI虚拟机接收到该接入请求。然后所述iSCSI发送端根据iSCSI虚拟机接收到的请求,通过使用iSCSI发送端中的iSCSI引导ROM向所述iSCSI虚拟机中的DHCP服务器发送发现请求,根据所述DHCP服务器返回的应答消息中包含的iSCSI登录信息发起到服务器端的登录,并通过将重新定位矢量Int13指向所述iSCSI引导ROM中的代码的方式模拟一个能够使得该客户端进行引导的磁盘操作系统。
根据本发明的服务器远程引导的方法包括以下步骤:(1)接收到一个来自客户端发送端的访问服务器端的请求;(2)根据所述请求,通过给所述服务器端加电的方式进行服务器引导的初始化;(3)利用iSCSI引导ROM向服务器端发送发现请求,并根据所述服务器端返回的应答消息中包含的iSCSI登录信息发起到所述服务器端的登录(4)通过将重新定位矢量Int13指向所述iSCSI引导ROM中的代码的方式模拟一个磁盘操作系统;(5)根据上述磁盘操作系统的模拟使所述客户端完成引导。
附图说明
图1是本发明配有利用了所述iSCSI引导驱动的复制服务器的可扩展互联网引擎的简化结构框图;
图2是本发明所述iSCSI引导驱动激活/运转过程的流程示意图;
图3是根据本发明建立的服务器群组结构框图。
具体实施方式
为使本发明的目的、技术方案和优点更加清楚,以下举实施例对本发明进一步详细说明。
如图1所示,一种可扩展互联网引擎结构100包括一系列按照引擎刀片110方式排布的服务器板卡。关于该互联网引擎可扩展性的更多细节在美国专利号为6,452,809、标题为“可扩展互联网引擎”的美国专利文件中有详细的说明。该结构进一步包括一组硬件130,所述硬件130构成了活动数据储存系统(activedata storage system,ADSS),它包括一个ADSS模块132、一个域主机控制协议服务器(Domain host control protocol server,DHCPD)134、一个数据库136、一个XML接口138以及一个看门狗计时器140。硬件150与硬件130的结构相同,所述硬件150包括一个ADSS模块152、一个域主机控制协议服务器(DHCPD)154、一个数据库156、一个XML接口158以及一个看门狗计时器160。ADSS硬件130以及ADSS硬件150都通过以太网交换设备120与刀片110连接。将ADSS硬件130以及ADSS硬件150合在一起考虑,可以认为是一个虚拟机,亦即一个可以将虚拟卷发送给发送端的系统,所述发送端可以是客户端、主机系统或者请求数据读写的文件管理器。
所述结构100还进一步包括一个引擎操作系统(OS)162和一个存储交换166。其中,所述操作系统162有效地结合了ADSS硬件130、150以及系统管理单元(SMU)164,所述存储交换166有效地结合了ADSS硬件130、150以及一系列存储磁盘168。
所述ADSS模块132及152可以通过独立的、简化的一系列接口为离散计算环境以及当前应用程序提供目录服务,这样,用户就可以避开各种特定服务的差异从各种网络中找到和利用目录资源;这是一种集中的、标准化的系统,对用户数据、安全性以及分布式的资源进行自动网络管理,并可以保证与其他目录的协同。另外,由于网络管理员被赋予了直观查看网络各级结构以及对所有网络对象进行单点管理的权利,所述活动目录服务还允许用户通过一次独立的登录过程访问网络中任何位置可以进行访问的资源。
DHCPD 134和154为与结构100相连接的设备分配服务器系统中唯一的IP地址,例如,当一台计算机登录网络时,该DHCPD服务器从主列表中选择一个唯一的且未使用的IP地址,并将该地址分配给该系统。而与各自的ADSS模块和DHCPD相连接的数据库136、156,在作为DHCPD的信息源的同时,也可以作为所有接收端、发送端、卷以及原始储存映射信息的数据库。所述数据库在所有的ADSS组成员之间进行复制,这样,就可以保证关键的系统信息是冗余的。XML接口进程138和158作为引擎操作系统162与ADSS硬件130及150之间的接口,它们可以提供登录功能,也可以提供逻辑以自动完成ADSS功能。而当任何服务器的操作锁定之后,看门狗计时器140和160可以用于再初始化服务器的操作。例如,看门狗计时器超时就表明ADSS发生错误。所述存储交换166较佳地采用光纤通道或者以太网形式,以保证在磁盘168以及ADSS硬件130、150之间进行数据的存储和恢复。
值得注意的是,在所描述的结构100的实施例中,除非发生故障,否则ADSS硬件130是作为主DHCP服务器进行工作的。如线路139所示,在ADSS硬件130和ADSS硬件150之间配备了一个用来对故障进行检测的心跳监控电路。一旦服务器130发生故障,服务器150就会检测到心跳反应消失,并立即开始提供DHCP信息服务。特别是在大型的应用环境中,服务器硬件可以通过光纤通道交换看到所有现存的储存设备,比如磁盘阵列168中的储存设备,这样,当其中的一个服务器发生故障时,其他服务器(虽然在图中只画出了一个服务器)就可以承担故障服务器的功能。所述DHCPD模块直接与相应的数据库相连接,因为每个服务器上只有一个数据库提供结构100中所有IP和MAC地址信息。
在本实施例中,引擎操作系统接口164(或者简单的基于Web的接口)通过XML接口进程138和158发送“动作”指令用以生成、修改或者删除虚拟卷。在发送检查点、镜像、拷贝以及转移等动作指令的同时,XML接口138还为分配/取消或者增加/紧缩虚拟卷发送动作指令,用来为发送端制造可用的虚拟卷。XML接口进程138的逻辑部分同样接收“动作”指令,这些指令涉及以下过程:检查动作的有效性;转换到服务器指令;执行服务器指令;在指令错误时回转;以及为引擎操作系统162提供反馈等。引擎操作系统162还通过XML接口138进行信息查询,同时XML接口138检查查询的有效性,将XML查询转换为数据库查询,将应答转换为XML,并将XML数据发回到操作系统162。当有通过登录服务器或者SNMP发送的故障报警时,XML接口138还向操作系统162发出报警。
应该指出的是,本发明中的ADSS系统具有分布式的特性。特别是,本发明具有分布式的虚拟,其中任何ADSS都可以为任何客户端刀片提供服务,这是因为本发明中所有的ADSS单元都可以“看到”所有的客户端刀片,所有的ADSS单元都可以“看到”所有的储存虚拟卷的RAID储存单元。通过这种方式,当需要转移故障或者重新分配负荷时,客户端刀片可以映射到任何任意的ADSS单元。然后ADSS单元就可以在任何时间内被加入到组群中,用以升级整个系统的混合带宽。将本发明与现有的由DatacoreTM生产的SANSymphonyTM产品相对比,该产品带有一对容错存储虚拟机,具有简单的故障转移方法而没有其它改变的可能性。
根据上述对可扩展互联网引擎结构100的说明,并参照图2中的流程图,登录可扩展互联网引擎的过程就比较容易理解了。登录是通过利用iSCSI引导驱动建立起来的,该操作使iSCSI引导驱动被划分到如图2中右侧所示的一个iSCSI虚拟机(ADSS硬件130以及ADSS硬件150组成该虚拟机)和如图2中左侧所示的一个发送端中。在起始步骤202:每个登录过程都开始于一个从发送端到iSCSI虚拟机的请求。然后在步骤204:该iSCSI虚拟机判断是否已经给上述请求的发送端分配了一个虚拟卷。如果没有分配虚拟卷,则该iSCSI虚拟机就会等待新的发送端请求;如果已经给该发送端分配了一个虚拟卷,则登录过程就前进到步骤206:DHCP服务器134为发送端的MAC(介质访问控制地址)做出应答。下一步执行步骤208:通知ADSS模块132分配与该MAC地址相关的虚拟卷;并且iSCSI发送端执行步骤210:进行通讯使得适当的引擎刀片110加电。
下一步,步骤212,为所述刀片的网络接口卡产生一个周边元件扩展接口(Peripheral component interconnect,PCI)设备ID掩码,并据此发出一个引导请求。值得注意的是,在数据库136中刀片具有如下特征:1)预先设定的网络接口卡(NIC)的MAC地址;2)(指定的)发送端IP地址,包括(1)A级子网掩码[255.0.0.0],(2)10.[rack].[chassis].[slot];以及3)(指定的)iSCSI认证域,包括(1)“透传DHCP”和(2)发送端名称。此处的“透传DHCP”是指所有的iSCSI认证域都在DHCP上被透传到DHCP承载的客户端发送端。确切地说,以前所有的iSCSI实施方法都需要将诸如提供文件集服务的iSCSI接收端的用户名、密码、IP地址等鉴权信息通过操作系统应用软件手动输入到客户端控制台。这就是为什么现有的iSCSI实施方法都不能进行引导的主要原因之一,因为只有当一个操作系统以及各自相应的iSCSI软件驱动都已经加载并且通过读取预先设置的参数或者用户手动将上述信息输入到系统中时,该信息方是可用的。
动态主机配置协议(Dynamic Host Configuration Protocol,DHCP)的传统使用方法是从特定网络中一个有效的地址库中为客户端分配一个IP地址。通常来说,这些地址都是以随机的方式少量发放的,此时,客户端通过乏IP地址(IPaddress-less)广播寻找DHCP服务器,而DHCP则通过从其地址库中“出租”给客户端一个有效的IP地址作为回应。在本发明中,创建了一个特定的DHCP服务器,该服务器根据MAC地址(以太网网络接口卡的不可更改的物理地址)与IP地址的关联性,为刀片客户端分配特定的IP地址,从而保证刀片客户端的IP地址永远是不变的,因为它的MAC地址是恒定的。所述IP地址与MAC地址的关联性是在ADSS初始化配置过程中随机生成的,并在此之后一直保持不变。另外,我们还利用DHCP标准中的特定扩展域向该刀片客户端发送额外的信息,包括iSCSI参数和登录ADSS所必需的认证,所述iSCSI参数在查询将来为刀片磁盘请求服务的ADSS的过程中是必需的。
通过将该信息透传给DHCP,本发明不仅提供了一种能够使在引导过程的前操作系统阶段中客户端发送端获得此信息的方法,而且本发明还可以创建一个中央授权管理结构ADSS,它可以储存并动态修改上述设置,以便在从客户端角度看没有任何干扰的情况下,进行诸如故障转移至另外一个可选的ADSS单元、添加或修改安装在客户端上的虚拟磁盘的数量和容量等一系列操作。
现在继续进行图2所示的操作过程。在步骤214中,所述iSCSI引导ROM中断该引导过程,并向DHCP服务器134发送一个发现请求(discover request)。值得注意的是,在本发明的刀片结构中,刀片主板上的PCI-X总线穿过转接板,与底板后部的PCI-X插槽相接。这是通过系统管理板(system management board)实现的,该板利用了PCI桥芯片调节和再生PCI信号。该桥芯片还可以确保该系统能够接入到所述管理板中的PCI-X总线,而iSCSI引导ROM正处于这个位置。如上所述,该iSCSI引导ROM位于主板的PCI-X总线上。在引导时,与Intel兼容的主板结构都受到主板BIOS芯片的控制。在引导过程中,有一部分工作是要寻找位于PCI-X总线上的所谓的选配ROM或扩展ROM。在引导过程中的某特定点,该主板BIOS将控制权交给扩展ROM,而扩展ROM就能够执行其代码。在本发明中,上述过程点正是加载TCP/IP堆栈以及iSCSI发送端的时间,而且也是模拟过程的起始点,例如此时一个iSCSI块设备(虚拟卷)显示为客户端的一个本地磁盘。
这个过程在很大程度上与SCSI卡中断引导过程、并使系统从某SCSI设备引导的过程相似。扩展ROM的主要目的是将前引导环境中主板的性能扩展到一个主板BIOS不能自动识别的设备。
步骤216:在收到发现请求后,该DHCP服务器根据发送端的MAC以及负载平衡规则集(load balancing rule set)对该发现请求进行应答。特别地,该DHCP服务器134发送客户端的IP地址、子网掩码、网关以及iSCSI登录信息:1)服务器的IP地址(ADSS的IP);2)协议(缺省值为TCP);3)端口号(缺省值为3260);4)初始逻辑单元号(logic unit numbers,LUN);5)接收端名称,例如ADSS服务器的iSCSI接收端名称;以及6)发送端名称。
以上所述的负载平衡规则集是指在各种ADSS单元之间分配虚拟卷服务责任。ADSS系统的结构同时包括两个主ADSS服务器,这两个主ADSS服务器提供DHCP、数据库以及管理资源,并被设置成为关键数据库信息和DHCP服务的容错簇。该ADSS系统结构还包括许多与主ADSS服务器对相连接并受其控制的“从属”ADSS工作单元。这些ADSS单元仅仅是为虚拟卷服务。负载平衡是通过循环方式,利用最少连接优先模型(least connections priority model),在各种不同的ADSS单元之间分配虚拟服务责任实现的,在最少连接优先模型中所服务的客户端数量最少的ADSS单元将首先为新的客户端服务。服务种类也可以通过对一个ADSS单元能够服务的最大客户端数量设置限制的方式进行划分,与那些在正常ADSS库中运行的客户端相比,进一步为那些使用上述进行了限制的ADSS单元的客户端创建更大的储存带宽。
下一步,再参照图2,在步骤218中所述iSCSI引导ROM接收到DHCP服务器134的信息,并在步骤220中利用该信息对刀片服务器发起登录。步骤222,该ADSS模块132接收到登录请求,并根据当前登录的MAC和发送端名称对该请求进行鉴权。然后,在步骤224,ADSS模块创建登录对话,并为分配的虚拟卷提供服务。在步骤226,所述iSCSI引导ROM利用虚拟卷和重新定位矢量(re-voctor)Int13模拟出一个DOS磁盘。在步骤228,该iSCSI引导ROM在其上位内存块(Upper Memory Block,UMB)中储存ADSS登录信息。然后,在步骤230,iSCSI引导ROM准许上述中断了的引导过程继续进行。
这样,在步骤232,刀片从网络承载的iSCSI设备按8位(bit)模式进行引导。在步骤234,该8位操作系统引导加载机加载32位的标准iSCSI驱动。在步骤236,该标准iSCSI驱动从UMB读取ADSS登录信息,并重新发起登录。在步骤238,所述ADSS模块132接收到该登录请求,并根据MAC重新对其进行鉴权。然后,在步骤240,该ADSS模块重新创建登录对话,并重新为指定的虚拟卷提供服务;最后,在步骤242,所述32位操作系统被充分激活,并将所述iSCSI块设备当作本地设备加以利用。
关于步骤226和术语“重新定位矢量Int13”,下面的说明将为了解步骤226的操作和功能提供有益的背景知识。从1983年的第一台个人计算机(PC)开始,所有兼容机都配备了一些非常基本的操作,这些操作由位于主板上的基本输入输出系统(BIOS)ROM处理。当硬件相对比较简单时,所有对一台计算机硬件的访问都是通过BIOS利用所谓的中断进行处理的,一旦执行该操作,就会中断用户代码的执行过程并转而运行BIOS代码来实现对硬件的访问。不幸的是,为了维持兼容性,这种中断体制至今仍然存在着,而且成为在运行现代操作系统时所必须解决的问题。
现代操作系统使用自己的32位驱动程序直接访问该硬件,但是,在这些32位驱动程序发挥其功能之前,它们必须被那些在1983年开发并遗留下来的BIOS硬件访问方法加载。中断13h是在PC兼容机中提供磁盘服务的处理程序,即在系统的磁盘中寻找引导扇区。为了能使一台PC兼容机从一个BIOS不支持的磁盘设备进行引导,就必须将矢量Int13重新定位,使之脱离该BIOS,而指向所需要的扩展ROM代码。
通过上述对中断的重新指向,磁盘调用利用扩展ROM代码截取BIOS的程序,使得扩展ROM代替BIOS提供磁盘服务。但是,该扩展ROM提供的磁盘服务要访问的是iSCSI块设备(虚拟卷),而不是本地磁盘驱动。当主板BIOS在本地磁盘寻找引导扇区的时候,它将会在附属iSCSI块设备中发现引导扇区,并开始执行储存在该处的代码,而这通常就是操作系统的引导加载过程。通过上述重新指向或者矢量重新定位,现代操作系统引导加载机(WindowsTM的NTLOADER.EXE,或者LinuxTM的LILOTM、GRUDTM)就会被激活,并加载所有直接访问系统硬件自身所必需的驱动,其中包括本发明中提供对iSCSI块设备(虚拟卷)进行32位访问的iSCSI驱动。
关于步骤236以及术语“UMB”,下面进行了较为详尽的说明。同样,这必须要提到1983年开发的PC结构的历史。第一台PC是一部8位计算机,也就是说,该计算机的微处理器总共只能达到1MB或者1024KB内存。其中包括用于执行程序的RAM、用于储存BIOS和扩展BIOS的ROM,以及用于设备控制的内存区域和视频RAM(Video RAM)等。原先的PC将内存进行了如下划分:0-640KB分配给RAM,640KB-1024KB作为上位内存块(UMBs),所有的其他设备和内存在UMB内都有映射。
现代的处理器已经从8位发展到16位,一直到最新的64位处理器(由于位数的增加,可以访问大得多的内存),但是,为了与原先的8位计算机保持兼容,所有的现代计算机仍然都在8位环境下进行引导,与原先的PC机遵守着同样的规则和约束。因此,在引导时依然存在UMB的概念。
在本发明的iSCSI引导过程中,开始是以如上所述的8位扩展ROM进行的,它使计算机经历上述初始化过程,然后就必须将iSCSI接收端信息及相关参数传送给在操作系统中加载的32位iSCSI驱动。本发明通过以下方法实现上述过程:使用所述iSCSI扩展ROM将该信息储存到未使用的UMB中(该UMB已经映射到系统的RAM),以便以后由32位iSCSI驱动重新取回。
以下对上面使用的术语“iSCSI块设备”进行说明。iSCSI块设备是指经过iSCSI连接获得的磁盘或虚拟卷。使用块设备这个词的目的是将其与一个标准的网络文件系统相互区分开来。SCSI驱动器是由排列成块的扇区构成的,其读取过程是通过发出SCSI指令以读、写这些块(因此是一种更为“自然的”访问数据的方法),而与运行在文件系统层次上的网络共享方式不同,它是对文件或目录提出请求,并且依赖于操作系统的兼容性。由于本发明使用iSCSI承载的块层次访问,因此,本发明可以从本质上支持任何与SCSI兼容的操作系统。
现在参照图3,该图展示了组成结构100一部分的一个监控数据管理部分300。所述监控数据管理部分300包括与若干分布式管理单元(distributedmanagement uints,DMUs)332-338相连接的一系列刀片服务器312~318,而所述DMUs 332-338依次与至少一个监控管理单元(supervisory managementuint,SMU)360相连。所述SMU 360包括一个连接到共享KVM/USB设备的输出端362,以及一个用于以太网管理的输出端364。
在本实施例中,每个刀片服务器312-318(四个)都包括8个分布在底盘上的刀片。每个DMU模块都通过连接线322A-328A监控各刀片和底盘风扇的状况、电压线路以及服务器单元的温度等。DMU模块还控制着底盘中刀片的供电功能,并(通过连接线322B-328B)根据来自输入/输出设备的指令,在刀片服务器底盘上的各个刀片之间进行切换。另外,每个DMU模块(332-338)都配置成可以对各种刀片功能进行控制和监视,并对指定的刀片服务器通过管理总线342A和I/O总线342B决定出入SMU 360的管理通讯。进一步,DMU模块将KVM/USB输出和管理信号合并到与SMU 360相连接的单模DVI型电缆中,并维持事件的管理日志。
在本发明实施例中,每个刀片服务器中的每个刀片都包含一个内置的微控制器。该内置微控制器监控主板的工作状态,将状态存储到一个管理日志中,以及在轮询时报告状态等,它还可以在发生问题时发送报警、接收执行各种功能的指令(比如,打开电源、关闭电源、重置、KVM(键盘、视频及鼠标)选择以及KVM释放等)。这些功能的通讯是通过线路322C-328C完成的。
例如,在管理总线342A及I/O总线342B连接中,SMU 360可以被配置成与DMU模块以星型结构相连接。SMU 360可以通过由各DMU的管理连接传输的指令与各DMU进行通讯。管理通讯是通过带有冲突检测以及重传功能的共享总线上可靠的数据包通讯完成的。SMU模块与DMU具有相同的物理形态,并包含一个用于本地底盘的内置DMU。SMU利用通过其管理连接342-348向所述DMU发送的指令与四个(4)底盘(刀片服务器单元)的整个机架进行通讯。该SMU通过以太网口为机架提供了一个高水平的用户接口。SMU将KVM/USB总线进行切换和统一,并将其传送到共享的KVM/USB输出插口。
键盘/视频/鼠标/USB(KVM/USB)在刀片之间的切换是通过一种交换总线方法进行的。选择第一个刀片将在背板上产生一个将所有刀片从KVM/USB上释放的信号广播。所有在背板上的刀片都会收到该信号,并且先前与所述总线连接的刀片将与该总线脱离电连接。被选刀片将与上述通讯总线实现电连接。
本发明的公开部分内容是受版权保护的。由于其出现在知识产权局的文件或者记录中,该版权所有人允许对本发明的公开部分内容进行复制,但是保留保护所有版权的权利。
虽然上面对本发明的自动系统的较佳实施例进行了说明,需要说明的是,在此基础上可以进行很多变化及修改,并且本发明的保护范围由权利要求确定。
Claims (17)
1.一种用于服务器远程引导的系统,该系统包括客户端和服务器端,所述客户端包括客户端发送端和iSCSI发送端,所述服务器端包括iSCSI虚拟机,其中所述客户端发送端请求接入服务器端;其中所述iSCSI虚拟机接收上述接入请求;其中所述iSCSI发送端根据所述iSCSI虚拟机接收到的请求,通过使用所述iSCSI发送端中的iSCSI引导ROM向所述iSCSI虚拟机中的域主机控制协议DHCP服务器发送发现请求,根据所述DHCP服务器返回的应答消息中包含的iSCSI登录信息发起到所述服务器端的登录,并通过将重新定位矢量Int13指向所述iSCSI引导ROM中的代码的方式模拟一个磁盘操作系统以使所述客户端能够进行引导。
2.根据权利要求1所述的系统,所述客户端以16bit模式和并发32bit模式进行引导。
3.根据权利要求1所述的系统,所述iSCSI引导ROM在客户端引导完成后显示为本地设备。
4.根据权利要求1所述的系统,所述iSCSI虚拟机对所述登录进行鉴权。
5.根据权利要求4所述的系统,所述iSCSI虚拟机对所述登录至少进行两次鉴权。
6.根据权利要求1所述的系统,所述iSCSI虚拟机包含一对重复的活动目录服务服务器。
7.一种用于服务器远程引导的方法,包括以下步骤:
接收到一个来自客户端发送端的访问服务器端的请求;
根据所述请求,通过给所述服务器端加电的方式进行服务器引导的初始化;
利用iSCSI引导ROM向服务器端发送发现请求,并根据所述服务器端返回的应答消息中包含的iSCSI登录信息发起到所述服务器端的登录;通过将重新定位矢量Int13指向所述iSCSI引导ROM中的代码的方式模拟一个磁盘操作系统;以及
根据上述磁盘操作系统的模拟使所述客户端完成引导。
8.根据权利要求7所述的方法,所述使所述客户端完成引导的步骤进一步包括所述客户端以16bit模式和并发32bit模式完成引导。
9.根据权利要求7所述的方法,进一步包括在所述客户端引导完成之后将所述iSCSI引导ROM显示为本地设备的步骤。
10.根据权利要求7所述的方法,进一步包括对到所述服务器端的登录进行鉴权的步骤。
11.根据权利要求10所述的方法,进一步包括对到所述服务器端的登录至少进行两次鉴权的步骤。
12.一种用于服务器远程引导的系统,该系统包括客户端和服务器端:所述客户端包括:用于请求接入所述服务器端的设备;
所述服务器端包括:用于接收上述接入请求的设备;
所述客户端还包括:用于根据所述的接入请求通过使用自身中的iSCSI引导ROM向所述用于接收上述接入请求的设备中的域主机控制协议DHCP服务器发送发现请求,根据所述DHCP服务器返回的应答消息中包含的iSCSI登录信息发起对所述服务器端的登录,并用于通过将重新定位矢量Int13指向所述iSCSI引导ROM中的代码的方式模拟一个磁盘操作系统以使该客户端进行引导的设备。
13.根据权利要求12所述的系统,所述客户端以16bit模式以及并发32bit模式进行引导。
14.根据权利要求12所述的系统,所述iSCSI引导ROM在所述客户端引导完成后显示为本地设备。
15.根据权利要求12所述的系统,所述用于接收的设备还用于对所述登录进行鉴权。
16.根据权利要求15所述的系统,所述用于接收的设备用于对所述登录至少进行两次鉴权。
17.根据权利要求12所述的系统,所述用于接收的设备包括一对重复的活动目录服务服务器。
Priority Applications (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
CN2005100553142A CN1834912B (zh) | 2005-03-15 | 2005-03-15 | 用于可扩展互联网引擎的iSCSI引导驱动系统及方法 |
Applications Claiming Priority (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
CN2005100553142A CN1834912B (zh) | 2005-03-15 | 2005-03-15 | 用于可扩展互联网引擎的iSCSI引导驱动系统及方法 |
Publications (2)
Publication Number | Publication Date |
---|---|
CN1834912A CN1834912A (zh) | 2006-09-20 |
CN1834912B true CN1834912B (zh) | 2011-08-31 |
Family
ID=37002677
Family Applications (1)
Application Number | Title | Priority Date | Filing Date |
---|---|---|---|
CN2005100553142A Expired - Fee Related CN1834912B (zh) | 2005-03-15 | 2005-03-15 | 用于可扩展互联网引擎的iSCSI引导驱动系统及方法 |
Country Status (1)
Country | Link |
---|---|
CN (1) | CN1834912B (zh) |
Cited By (1)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN103117991A (zh) * | 2012-07-18 | 2013-05-22 | 北京智网科技股份有限公司 | 一种网络启动sBOOT协议设计与实现 |
Families Citing this family (7)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
US8171278B2 (en) * | 2008-08-11 | 2012-05-01 | Vmware, Inc. | Booting a computer system from central storage |
CN102833237B (zh) * | 2012-08-14 | 2015-01-14 | 南京斯坦德云科技股份有限公司 | 一种基于桥接的无限带宽协议转换方法及系统 |
CA2931098A1 (en) * | 2013-09-27 | 2015-04-02 | Intel Corporation | Determination of a suitable target for an initiator by a control plane processor |
US9934050B2 (en) * | 2014-12-17 | 2018-04-03 | Quanta Computer Inc. | System and method for network-based ISCSI boot parameter deployment |
CN108536515B (zh) * | 2018-03-02 | 2021-10-01 | 武汉噢易云计算股份有限公司 | Vdi的虚拟机播放客户机的音乐cd的方法及系统 |
CN109086099A (zh) * | 2018-07-25 | 2018-12-25 | 浪潮(北京)电子信息产业有限公司 | 一种启动虚拟机的方法、装置、设备以及存储介质 |
CN111857598A (zh) * | 2020-07-28 | 2020-10-30 | 山东超越数控电子股份有限公司 | 一种远程磁盘本地化的映射方法、装置、设备及可读介质 |
Citations (3)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
US5974463A (en) * | 1997-06-09 | 1999-10-26 | Compaq Computer Corporation | Scaleable network system for remote access of a local network |
CN1487417A (zh) * | 2002-09-05 | 2004-04-07 | �Ҵ���˾ | iSCSI驱动程序与适配器的接口协议 |
CN1490704A (zh) * | 2002-10-17 | 2004-04-21 | �Ҵ���˾ | 用于在逻辑卷管理器上仿真iSCSI设备的方法和装置 |
-
2005
- 2005-03-15 CN CN2005100553142A patent/CN1834912B/zh not_active Expired - Fee Related
Patent Citations (3)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
US5974463A (en) * | 1997-06-09 | 1999-10-26 | Compaq Computer Corporation | Scaleable network system for remote access of a local network |
CN1487417A (zh) * | 2002-09-05 | 2004-04-07 | �Ҵ���˾ | iSCSI驱动程序与适配器的接口协议 |
CN1490704A (zh) * | 2002-10-17 | 2004-04-21 | �Ҵ���˾ | 用于在逻辑卷管理器上仿真iSCSI设备的方法和装置 |
Non-Patent Citations (1)
Title |
---|
JP特开2004-289809A 2004.10.14 |
Cited By (1)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN103117991A (zh) * | 2012-07-18 | 2013-05-22 | 北京智网科技股份有限公司 | 一种网络启动sBOOT协议设计与实现 |
Also Published As
Publication number | Publication date |
---|---|
CN1834912A (zh) | 2006-09-20 |
Similar Documents
Publication | Publication Date | Title |
---|---|---|
US9998464B2 (en) | Storage device security system | |
CA2578017C (en) | Iscsi boot drive system and method for a scalable internet engine | |
US7882206B2 (en) | Storage device system and storage device system activating method | |
US7099996B2 (en) | Disk array system | |
CN1834912B (zh) | 用于可扩展互联网引擎的iSCSI引导驱动系统及方法 | |
US6874060B2 (en) | Distributed computer system including a virtual disk subsystem and method for providing a virtual local drive | |
CN101142553B (zh) | 跨越多个计算平台的操作系统不可知的资源共享 | |
US9612814B2 (en) | Network topology-aware recovery automation | |
US8060542B2 (en) | Template-based development of servers | |
US6658562B1 (en) | Method, system, and program for customizing a basic input/output system (“BIOS”) configuration according to the type of user | |
JP2018045688A (ja) | プロキシ装置、その動作方法、及びプロキシ装置に係る装置の動作方法 | |
EP2477111B1 (en) | Computer system and program restoring method thereof | |
US20060173912A1 (en) | Automated deployment of operating system and data space to a server | |
US11095445B2 (en) | Key management and recovery | |
US8010513B2 (en) | Use of server instances and processing elements to define a server | |
US11196549B2 (en) | Key recovery system | |
US20080162809A1 (en) | Operating system-independent remote accessibility to disk storage | |
US10956170B2 (en) | BIOS setting modification system | |
JP2008123412A (ja) | 計算機システム、システムソフトウェア更新方法及び第1サーバ装置 | |
US20060242396A1 (en) | Method and apparatus for configuring a computer system | |
US11853803B2 (en) | Workload compliance governor system | |
US9971532B2 (en) | GUID partition table based hidden data store system | |
US11601262B2 (en) | Distributed key management system | |
US20210019221A1 (en) | Recovering local storage in computing systems | |
US20070174034A1 (en) | Transparent intellectual network storage device |
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 | ||
CF01 | Termination of patent right due to non-payment of annual fee |
Granted publication date: 20110831 Termination date: 20160315 |
|
CF01 | Termination of patent right due to non-payment of annual fee |