远端部署多部计算机的方法与系统的制作方法

文档序号:6399478阅读:86来源:国知局
专利名称:远端部署多部计算机的方法与系统的制作方法
技术领域
本发明关于一种部署远端计算机的方法与系统,且特别关于一种能同时部署多部远端计算机及具有复原(restore)与备份(back up)能力的方法与系统。
先前技术随着计算机技术的发展,各种一般用途计算机或特殊用途计算机广泛地使用在办公环境以及工厂设备中。经由网络的串接,即使位在遥远距离机房的计算机仍然能够进行连接,而共同进行特定的工作。举例来说,在一个小型的工厂中,往往需要安置上百部不同用途的计算机。一旦因为计算机中毒或其他因素造成系统损毁,管理人员便需要重新安装这些计算机上面的系统,以恢复正常操作。
常规恢复系统正常操作的做法是重新安装操作系统及应用程序,并将使用者数据重新载入计算机系统中,但这种做法非常耗时,而造成企业操作上的重大不便。
另一种改良的做法是平常将计算机中的磁盘的映像(disk image)进行备份。当计算机的系统出现毁损而需要重新更新系统时,将这些映像载回计算机系统的磁盘中。这种做法较有效率,然而,由于当计算机系统出现毁损时,计算机系统无法直接读取先前存储的映像数据,此时管理人员便需要通过光盘、磁盘或网络载入一小型系统,以将备份的映像还原到磁盘中。但这种做法仍需耗费许多的人力,且当所需处理的计算机系统数目众多时,问题显得更为复杂。此外,若是在传输过程中发生中断,便无法支援续传服务,而需从头开始。例如,银行的一千部散布各地的计算机系统同时被病毒瘫痪时,使用传统的做法来还原系统可能造成相当长时间无法使用系统,因而造成巨大的损失。
虽然现在已经有所谓网络开机或操控的软件,然而其并无法达到自动化备份及同时复原多部计算机的能力。因此,如果能够在现有的软硬件结构下,找出一种有效的备份及复原方法,以部署多部远端计算机,将能够带给系统管理者更大的便利。

发明内容
因此,本发明目的之一是在于提供一种能够快速部署多部计算机的方法与系统。
依据本发明的一实施例所揭示的方法,至少包括下列步骤。首先,以一网络开机模式启动一部以上的远端计算机,关于该可通过操作介而远端进行设定。接着,通过PXE(PREBOOT EXECUTION ENVIRONMENT)等模式让这些远端计算机经由网络上载入一组客户端程序。然后,这些远端计算机依据客户端程序经由网络从部署数据服务器载入部署数据。在载入该部署数据时,将部署数据切割成多个部署数据包,且每一部署数据包具有一数据包号码。假如部分部署数据包遗失时,经由记数栏即可重新传送这些部署数据包。这些部署数据可以是磁带的映像、DIOS的内容,或是CMOS数据设定区的数值等。因此当远端计算机取得部署数据后,便利用该待部署数据进行系统的部署。
在实际的应用例中,部署数据包被进一步包装成UDP数据包,以多点传送配合移动式传输视窗,藉以有效地将部署数据同时有效率地传给多个远端计算机。此外,假如有部分远端计算机接收部署情况发生问题,亦可先忽略这些计算机,而先部署其他待部署计算机,以免拖慢整理部署的速度。
此外,亦可通过相同的数据包与传输协定,自动将这些远端计算机的磁带映像、BIOS或CMOS数据备份到部署数据服务器中,以便日后有效地进行复原或安装的操作。
因此,本发明至少具有下列优点。首先,经由本发明的特征,管理者无须到达远端计算机所在之处,使用麻烦的光盘或磁盘重新安装系统,相对地,管理者只需通过远端的操作介面,即可快速地部署多部计算机。其次,这种部署的过程几乎都是自动进行的。此外,这种结构亦可用于将远端计算机数据备份到部署数据服务器上,亦即,本发明所提供的系统与方法不但可快速部署多部计算机,亦可进行备份的操作,以提供管理者更有效管理多部远端计算机的方法。


图1是表示依据本发明的一实施例的部署示意图;图2是表示部署方法的流程示意图;图3是表示如何将客户端程序下载到远端计算机;图4A、4B是表示部署数据包的设计实例;图5是表示部署操作执行的流程图;以及图6是表示备份进行的流程图。
元件代表符号简单说明10远端计算机12网络14DHCP服务器16PXE服务器18部署数据服务器182操作介面184存储媒体具体实施方式
以下将通过较佳实施例,以说明如何利用本发明的特征,以实现同时部署多部远端计算机,以及如何进行这些远端计算机的备份工作。其中,该处所述的部署包括第一次在远端计算机上安装软件系统及/或设定,以及使用先前的备份数据对远端计算机进行复原操作等。
关于多部远端计算机的部署图1是一系统结构图,以说明如何通过本发明的较佳实施例,对于多个台远端计算机10进行部署的操作。
首先,这些待部署的远端计算机10连接于网络12上。此外,DHCP(Dynamic Host Configuration Protocol)服务器14、PXE(PrebooteXecution Environment)服务器16及部署数据服务器18亦连接于网络12。该部署数据服务器18具有一操作介面182及一存储媒体184。操作介而182与存储媒体184可直接与部署服务器18耦接,或是通过网络12与部署服务器18耦接。
在实际工作时,DHCP服务器14、PXE服务器16及部署数据服务器18可分别安装在不同机器上,亦可安装在同一部机器上。该处所述的DHCP是一提供网络地址(IP)的协定,而DHCP服务器14则是一服务器,用以响应用户端(client)的要求,以从可用的网络地址中指定其中之一给用户端,藉此以自动配置网络12上的每个用户端一个不相冲突的网络地址。至于PXE则是一个由软件与硬件厂商,如3COM,HP,Dell,Phoneix等公司所共同订定的标准。当远端计算机10通过网络12开机时,远端计算机10将寻找网络中的PXE服务器16,并通过TFTP(Trivial File Transrer Protocol)等传输协定取得程序,以进行开机的操作。
图2与图3表示如何在图1的配置下,将用来处理复原(restore)或初次安装(install)的客户端程序下载到远端计算机10中。
在图2中,首先,将这些远端计算机10的基本输入输出系统(BIOS,Basic Input Output System)设定为由预先开机执行环境(PXE,Prebootexecution Environment)模式开机(步骤202)。接着,启动PXE模式(步骤204),使远端计算机10以PXE模式操作,在该模式下,远端计算机10不去读取硬盘的开机磁区,而向DHCP服务器14取得一个网络地址,并寻找网络中的PXE服务器16,通过TFTP等协定取得一组客户端程序(步骤206)。
图3表示更为详细的PXE启动模式的操作情形。首先,远端计算机10需要取得自身跟PXE服务器16的网络IP地址,因此发出具有PXE标示的DHCP要求(步骤302)。接着DHCP服务器14提供远端计算机10一个可用的网络地址(步骤304),并且,DHCP服务器14提供远端计算机10关于PXE服务器16所使用的网络地址(步骤306)。远端计算机10需要启动程序的文件名,因此接着发出一个特殊的BINL要求(步骤308)。接着,PXE服务器16通过BINL将程序文件名传给远端计算机10(步骤310),然后,远端计算机10利用TFTP协定,下载具有指定文件名的映像文件(步骤312,步骤314)远端计算机10将该映像文件存在存储器,并将控制权转给该映像文件的程序(步骤316)。
在传统技术中,PXE服务器16的映像文件是提供网络开机的程序码,然而,本发明的特征即巧妙地运用该机理,让远端计算机10通过取得一段客户端程序,且利用该客户端程序与部署数据服务器18通过下述特殊的智慧型传输协定(QDTP,Quanta Deployment Transfer Protocol),以实现部署的操作。
在说明该智慧型传输协定之前,以下先说明这种智慧型传输协定使用的数据包格式。
图4A与图4B表示该类数据包的实施例,每个数据包具有下列栏(1)识别码栏,用以标示该数据包为智慧型传输协定的数据包;(2)控制指令,用来存放不同的控制码;(3)区段号码,用来存放目前部署的进度,客户端程序在操作过程不断更新,以利管控掌握进度,并方便续传操作的进行;(4)管理服务器IP地址及服务器识别码,用来辨识出所操作的远端计算机10;(5)群组识别码,当多个远端计算机10要同时进行部署时,用来指出这些远端计算机10所属的群组;(6)数据包号码,在数据数据包中,代表数据数据包的序号,若为ACK/NACK数据包或询问数据包,则表示所欲处理的数据包序号;(7)数据长度,指出该数据包首标之后数据栏的长度。上述安装在远端计算机10的客户端程序,以及部署数据服务器18将数据及指令通过这种数据包格式进行连通,以完成部署的操作。
上述的控制命令的栏可设定为不同数值,以代表不同的意义。例如,0x8800(Restore Send)代表包裹部署数据的数据包,由部署数据服务器18传送给客户端程序;0x8801(ACK Request)代表部署数据服务器18多点传送的询问数据包;0x8802(ACK Response)代表响应ACK Request的数据包,若数据包接收正确时送出;0x8803(NACK Response),代表响应ACK Request的数据包,若所收到的数据包编号小于ACK Request数据包的数据包编号时发出,并于该数据包的数据包号码栏填入所接收的最后一个数据包号码;0x8804(Restore End)代表告知客户端程序部署操作已结束;0x8805(Restore Join)代表初始化时客户端程序发出的数据包,用以加入部署群组;0x8806(Restore Join),部署数据服务器18接收到Restore Join数据包时,所发出的响应数据包。
图5表示进行复原部署操作方法的流程图。首先,如上所述,将客户端程序下载到多部远端计算机10并且在该多部远端计算机10上分别执行该客户端程序(步骤502)。接着,客户端程序对部署数据服务器18发出Restore Join部署数据包,以要求加入部署群组(步骤504)。部署数据服务器18搜集分别来自多部远端计算机10的Restore Join的数据包后,分别或以多点传送(multicast)方式同时传送Restore Jack部署数据包给客户端程序(步骤506)。
接着,部署数据服务器18一次将N个部署数据包以多点传送方式传送给部署群组中的所有远端计算机10的客户端程序(步骤508),此处的N为正整数的任意预定值。
请搭配参照图4B,由于网络通信品质或其他问题,该多部远端计算机10接收该N个部署数据包的情况可能有所不同。因此,部署数据服务器18接着以多点传送的方式向这些远端计算机10发出ACK request部署数据包,以要求确认接收状况(步骤510)。在该ACK request部署数据包中,N被填入上述数据包格式中的部署号码。当客户端程序接收到该ACK request部署数据包后,检查其是否已经接收到ACK request部署数据包中所指示的数据包号码,该例中即为N。如果客户端程序接收到比N还少个部署数据包时,例如P,传送一个NACK response部署数据包给部署数据服务器18(步骤512),并将P填入上述数据包格式的数据包号码中。反之,如果成功接收N个部署数据包,则传回ACK response部署数据包给部署数据服务器18(步骤512)。
部署数据服务器18统整来自所有远端计算机10的客户端程序所传回的ACK respons e或NACK response部署数据包,以决定接下来要传送的数据包为何(步骤514)。举例来说,假设部署群组中有10部远端计算机,部署数据服务器18先连续传送1000个部署数据包。当部署数据服务器18发现其中两部远端计算机传回NACK response部署数据包,且数据包号码分别为850跟950,则部署数据服务器18接下来便从编码851的数据包继续重送。
反复数次上述的部署数据包的传送后,当客户端程序接收完所需的部署数据包,将这些部署数据包解译成所需的部署数据,并用来部署远端计算机(步骤516)。
在此附加说明的是,此处的部署数据包可通过客户端程序进一步包装成UDP(User Datagram Protocol)数据包,而通过UDP协定进行传输,或解译多个UDP数据包而还原部署数据包的内容。由于UDP协定具有多点传送能力,在需要同时部署多台远端计算机10时,只要一次指定多个传输地址,通过UDP协定进行多点传送,便可大幅加快多部计算机的部署时间。
此外,系统管理者可通过部署数据服务器18的操作介面182,以指定多台远端计算机10进行部署的操作。当某些特定远端计算机10几乎或完全无法顺利接收部署数据包,部署服务器18可经由操作介面182通知管理者,或是自动先暂停该特定远端计算机10,以避免拖慢其他远端计算机10的部署操作。此外,当远端计算机10接收完部署数据,便将其写入磁盘、BIOS,或是CMOS数据设定区中,如此便能完成部署的操作。
此外,如果在操作的过程中因故出现传输中断,例如计算机停电或网络断线等问题,管理者可通过操作介面182选择续传,而非一定要从头再传一次。至于续传的实际操作方式,可由部署数据服务器18记录上述QDTP的区段号码,并继续由下一个区段号码继续传送数据而实现。
远端计算机的备份如上所述,部署远端计算机10是将磁盘映像、BIOS或CMOS的数据写入远端计算机10中对应的磁盘、BIOS或CMOS数据区。在实际的应用中,我们可在安装一部远端计算机10后,将其磁盘映像等数据备份起来,以作为日后复原(restore)该部远端计算机10之用。另一种可能是,利用该磁盘映像等数据来安装其他的远端计算机10。
关于将远端计算机10的磁盘映像、BIOS或CMOS的数据进行备份,至少有下列几种实际操作方法。
第一种方式是使用上述的PXE结构。图6表示该类的备份流程的示意图。首先,将远端计算机10设定为以网络模式开机(步骤602、步骤604),配合上述的PXE服务器16、DHCP服务器14,以下载一个客户端程序(步骤606)。接着,远端计算机执行该客户端程序以读取远端计算机10的磁盘映像等数据,并负责与部署数据服务器18进行连通(步骤608)。远端计算机10的磁盘映像等数据可包装成如图4A所示的智慧型传输协定数据包。部署数据服务器18判断是否顺利收到数据包(步骤610)。假如顺利收到数据包,则继续进行数据包的传送(步骤612)。反之,则进行数据包的重送操作(步骤614、步骤616)。
第二种方式是在备份时不使用上述的PXE结构,而以该结构在操作系统上的应用程序类型撰写处理备份的客户端程序,以在远端计算机10上执行。该客户端程序仍然可通过上述的智慧型传输协定及相关的数据包格式,与部署数据服务器18进行连通。这种方式的好处是可呼叫使用操作系统所提供的功能,简化程序撰写的复杂度。此外,此种方式亦可与远端计算机10的其他应用程序多工并行,而无须中断正在使用中的应用程序。
当然,在备份远端计算机10的数据时,亦可使用前述的续传功能。换言之,由于使用上述的智慧型传输协定及数据包格式有记载QDTP的区段号码,因此,如果在备份过程因故中断,管理者可选择续传而无须重头开始传输数据,藉以有效率进行远端计算机10的备份。
在使用如图4A所示的本发明QDTP数据包时,通过设定控制命令的栏,而实现不同的作用。举例来说,设定为0x0000(Backup Send)代表包裹备份数据的数据包,由客户端程序传送给部署服务器;0x0001(Backup ACK)代表告知部署服务器已正确收到数据包编号所指定的数据包;0x0002(BackupHeader)代表告知部署服务器开始传送映像文件首标;0x0003(BackupTerminate)代表告知部署服务器辈分操作已经结束。
其他说明此处所述的远端计算机10的涵义并非限于一般用途的计算机,而当然包括不配置屏幕的各种服务器、计算机模块等,例如安装于机架上的服务器阵列(blade)。此外,虽然上述的操作是以复原系统为说明,然而通过上面的机理,当然也可以将远端计算机10的磁盘映像、BIOS数据与CMOS数据设定区,传送到部署数据服务器18,以进行备份的操作。
由于本处所使用的机理具有续传与同时多点传送的能力,而且无须管理者亲自到计算机所在地址,而可自动快速的部署及备份远端计算机,因此对于需要管理许多计算机的管理者,确实减轻了其负担,也可以避免因为系统复原所耗费的时间过长,造成系统停摆而导致的重大损失。
虽然本发明已以一较佳实施例公开如上,然其并非用以限定本发明,任何本领域技术人员,在不脱离本发明的精神和范围的情况下,可进行各种更动与修改,因此本发明以所提出的权利要求限定的范围为准。
权利要求
1.一种远端部署计算机系统的方法,包含以一网络开机模式启动待部署的至少一远端计算机;将一客户端程序下载至该至少一远端计算机;依据该客户端程序经由该网络从一部署数据服务器将一部署数据下载至该至少一远端计算机,其中该部署数据是被切割成多个个部署数据包,且每一部署数据包具有一数据包号码;当部分这些部署数据包未成功传送时,经由该数据包号码重新传送这些未成功传送的部署数据包;以及使用该部署数据部署该至少一远端计算机。
2.如权利要求1所述的方法,其中该网络开机模式是一预先开机执行环境PXE的模式。
3.如权利要求2所述的方法,其中该至少一远端计算机是使用DHCP及TFTP传输协定,经由该网络从一PXE服务器读取该客户端程序。
4.如权利要求3所述的方法,其中该客户端程序与该部署数据服务器间是通过一智慧型传输协定传输数据进行传输,且该部署操作包括有一复原步骤与一备份步骤。
5.如权利要求4所述的方法,其中当进行该复原步骤时,该智慧型传输协定是将这些部署数据包进一步包装成多点传送型态的数据包,所有该待部署服务器会将该多点传送型态的数据包接收下来,即所有该数据包在网络上仅有一个以特定“多点传送”地址加以包裹,以一对多的方式传送给所有该待部署服务器。
6.如权利要求4所述的方法,其中当进行该备份步骤时,该智慧型传输协定是在该客户端程序与该部署数据服务器间,将这些部署数据包进行一对一传输。
7.如权利要求4所述的方法,其中该至少一远湍计算机将一响应数据包传给该部署数据服务器,该响应数据包载有已接收这些部署数据包的该数据包号码的数值。
8.如权利要求7所述的方法,其中该部署数据服务器依据这些响应数据包的数值,以决定重送未被该至少一部署服务器接收的这些部署数据包。
9.如权利要求1所述的方法,其中当这些远端计算机中的一部远端计算机无法顺利接收这些部署数据包超过一预定次数时,放弃对该部远端计算机而继续对其他远端计算机进行部署。
10.如权利要求1所述的方法,还包含依据该客户端程序将这些部署数据包的数据写入到该至少一远端计算机的至少一磁盘中。
11.如权利要求1所述的方法,还包含依据该客户端程序将这些部署数据包的数据写入到该至少一远端计算机的CMOS数据设定区中。
12.如权利要求1所述的方法,还包含依据该客户端程序,对该服务器的BIOS进行更新操作。
13.如权利要求1所述的方法,还包含通过该智慧型传输协定将该至少一远端计算机的磁盘映像传至该映像服务器以进行备份。
14.一种计算机部署系统,供部署连接于一网络的至少一远端计算机系统,包含一PXE服务器,连接于该网络,供存储一组客户端程序,当该至少一远端计算机以PXE模式开机时,该至少一远端计算机接收并执行该客户端程序;以及一部署数据服务器,连接于该网络,供存放一部署数据,其中该部署数据服务器与该待处理计算机系统的该客户端程序进行连通,以将该部署数据传送至该至少一待处理计算机系统并进行一部署,并且在传送该部署数据时是将该部署数据依序分割成多个部署数据包,如这些部署数据包遗失时,该部署数据服务器依据来自该客户端程序的一数据包接收状态,以进行一重送操作。
15.如权利要求14所述的系统,其中该客户端程序与该部署数据服务器间是通过一智慧型传输协定传输数据进行传输,且该部署操作包括有一复原步骤与一备份步骤。
16.如权利要求15所述的系统,其中当进行该复原步骤时,该智慧型传输协定是将这些部署数据包进一步包装成多点传送型态的数据包,所有该待部署服务器会将该多点传送型态的数据包接收下来,即所有该数据包在网络上仅有一个以特定“多点传送”地址加以包裹,以一对多的方式传送给所有该待部署服务器。
17.如权利要求15所述的系统,其中当进行该备份步骤时,该智慧型传输协定是在该客户端程序与该部署数据服务器间,将这些部署数据包进行一对一传输。
18.如权利要求15所述的系统,其中该至少一远端计算机将一响应数据包传给该部署数据服务器以作为该数据包接收状态,该响应数据包载有已接收这些数据包的一数据包号码的数值。
19.如权利要求18所述的系统,其中该部署数据服务器依据这些响应数据包的数值,以决定重送未被该至少一部署服务器接收的这些数据包。
20.如权利要求14所述的系统,其中当该远端计算机中的一个远端计算机无法顺利接收这些数据包超过一预定次数时,放弃对该个远端计算机而继续对其他远端计算机进行部署。
21.如权利要求14所述的系统,其中该至少一远端计算机依据该客户端程序将这些部署数据包的数据写入到一磁带中。
22.如权利要求14所述的系统,其中该至少一远端计算机依据该客户端程序,将这些部署数据包的数据写入到CMOS数据设定区中。
23.如权利要求14所述的系统,其中该至少一远端计算机依据该客户端程序,对将服务器的BIOS进行更新操作。
24.如权利要求14所述的系统,其中该至少一远端计算机的一磁盘映像亦通过该客户端程序传给该部署数据服务器以进行备份。
全文摘要
一种远端部署多部计算机的方法与系统,首先,将多部待部署的远端计算机与PXE服务器、DHCP服务器,以及部署数据服务器共同连接到一网络上。接着,管理者指定需要部署的一部或多部计算机,并让这些计算机以网络模式开机。经由DHCP服务器的协助,这些计算机从PXE服务器取得并执行客户端程序。部署数据服务器以多点传送方式将部署数据包传送给这些客户端程序。当接收这些部署数据包后,客户端程序便利用这些部署数据包的内容来部署计算机。此外,这些远端计算机平时亦可与部署数据服务器连通,将磁盘映像、BIOS等数据传回部署数据服务器以进行备份,以作为日后部署所使用的数据。
文档编号G06F9/445GK1690963SQ20041003507
公开日2005年11月2日 申请日期2004年4月23日 优先权日2004年4月23日
发明者颜进财, 邱开凤, 林君平, 李果益 申请人:广达电脑股份有限公司
网友询问留言 已有0条留言
  • 还没有人留言评论。精彩留言会获得点赞!
1