多控制器的储存区域网络设备的升级方法

文档序号:7763365阅读:283来源:国知局
专利名称:多控制器的储存区域网络设备的升级方法
技术领域
本发明关于一种储存区域网络设备的升级方法特别有关于一种多控制器的储存区域网络设备的升级方法。
背景技术
随着网络速度的提高,也让文件存储系统连带的快速的发展。为能实时的提供给使用者不中断的服务,因此在文件存储系统中会设置多个控制器,并且每一个控制器皆能独立的提供文件存储的服务。举例来说,存储区域网络(Storage Area Network, SAN)的硬件由两个独立的控制器所组成,每一个控制器相当于一个完整的系统,可以自行的独立运行和工作。只要有一个控制器处于正常运行状态,整个SAN就能够正常工作。而且通过两个控制器的配合,用户能够对任何一个控制器进行更换、重启、关闭等操作而不影响SAN的正常工作。但同时也需要处理两个控制器上的信息同步等问题。文件服务作为双控制器上的一个重要应用,也需要保证双控制器上用户操作的同步,用户更新的配置文件要能得到及时更新并在双控制器上进行同步。目前,对于双控制器上文件服务的故障转移(fail Over),基本上都是采用高可用性(HA)集群来实现的。但是在对SAN进行升级的期间,SAN中的双控制器均会被停止。如果在此期间使用者也在进行存取的话,就有可能会文件毁损的问题。

发明内容
鉴于以上的问题,本发明在于提供一种多控制器的储存区域网络设备的升级方法,用以升级多控制器的运作程序。本发明所公开的多控制器的储存区域网络设备的升级方法包括以下步骤透过第一控制器对第二控制器发出故障转移命令,并停止第二控制器的运作并记录第二控制器的环境设定;对第二控制器进行更新程序,用以更新第二控制器的运作程序;在第二控制器完成更新程序后,第二控制器向第一控制器发出故障恢复命令,并重新启动第二控制器;由第一控制器向第二控制器发出故障转移命令,并停止第一控制器的运作并记录第一控制器的环境设定;对第一控制器进行更新程序,用以更新第一控制器的运作程序;在第一控制器完成更新程序后,第一控制器向该第二控制器发出故障恢复命令,并重新启动第一控制
ο本发明所提出的多控制器的储存区域网络设备的升级方法可以在不停止多控制器的储存区域网络设备的服务并对每一个控制器进行升级的处理。因此使用者在传输文件的同时,不会因为多控制器的储存区域网络设备的升级而中断文件传输。有关本发明的特征与实作,配合附图作最佳实施例详细说明如下。


图1为本发明的架构示意图;图2为本发明的双控制器上文件更新的方法流程图;图3为本发明的控制器状态示意图;图4为本发明的各项环境设定流程图;图5为本发明的iSCSI服务的架构示意图。其中,附图标记110第一控制器120第二控制器112、122 微处理器114、124 记忆体116、126 网络卡130 底板140 硬盘
具体实施例方式本发明的功效及其执行方法在下列较佳实施例中详细说明。然而本发明的概念亦可用于其他范围。以下列举的实施例仅用于说明本发明的目的与执行方法,并非用以限制其范围。多控制器的储存区域网络设备的升级方法用于测试具备双控制器且共用单一储存装置的系统架构。图1为本发明较佳实施例的具备双控制器且共用单一储存装置的系统架构的示意图。本发明所谓的双控制器系统,可视为是以两台具基本运算能力的电脑连结而成的分散式系统,然而这里所指的双控制器系统与一般分散式系统稍有不同,请参照图 1。第一控制器Iio具有微处理器112、记忆体124、以及网络卡116,第二控制器120同样的具有微处理器122、记忆体114、以及网络卡126,两控制器皆设置有相异的内网的内网IP 位址,且可以网络线(或以无线网络媒介)等设备相互连结为小型区域网络。多颗硬盘140 以底板130 (backplane)串连,用以供第一控制器110与第二控制器120连接而共同存取数据。换言之,双控制器系统可视为以两台有基本运算及网络功能的电脑连结而成的小型网络,但是此两台电脑共用单一储存装置。接下来,说明本发明的多控制器的储存区域网络设备的升级方法。图2与图3,其分别为本发明的双控制器上文件更新的方法流程图与控制器状态示意图。请参照图2,校验储存装置的读写功能的方法用以检验前述第一控制器110及第二控制器120存取单一储存装置(即图1的多颗硬盘140)的功能是否正常,其包括下列步骤步骤S210 透过第一控制器对第二控制器发出故障转移命令(failover),并停止第二控制器的运作并记录第二控制器的环境设定;步骤S220 对第二控制器进行更新程序,用以更新第二控制器的运作程序;步骤S230 在第二控制器完成更新程序后,第二控制器向第一控制器发出故障恢复命令(failback),并重新启动第二控制器;步骤S240 由第一控制器向第二控制器发出故障转移命令,并停止第一控制器的运作并记录第一控制器的环境设定;
步骤S250 对第一控制器进行更新程序,用以更新第一控制器的运作程序;以及步骤S260 在第一控制器完成更新程序后,第一控制器向该第二控制器发出故障恢复命令,并重新启动第一控制器。由于为确保控制器在升级的过程中,另一控制器可以暂代其运作。所以在控制器欲进行升级程序时会向另一个控制器发出故障转移命令。故障转移命令所起的作用是当一个控制器由于升级而无法继续工作时,该个控制器的所有存取操作和服务请求由另一个控制器透明地接管的过程。而接管上述的过程中更包括如图4中的各项环境设定步骤S410 对欲进行更新的控制器记录所属的存储设备的状态;步骤S420 由执行更新程序的控制器接管欲进行更新的控制器的网络服务;以及步骤S430 将欲进行更新的控制器所接收的服务请求转发至执行更新程序的控制器。相应于故障转移命令,当控制器完成升级后,控制器会向另一控制器要求返回所暂代的存取服务的命令,这个命令就是故障恢复命令。故障恢复命令所起的作用是如果控制器升级完成之后,重新正常运行后,另一个控制器会把存取操作和服务请求重新接管回去的过程。对于故障转移命令与故障转移命令的环境设定,以下以具有双控制器的iSCSI文件存储系统作为说明,并请参考图5所示,其为本发明的iSCSI服务的架构示意图。使用者透过iSCSI发起端对iSCSI目标端进行文件的复制。iSCSI发起端会从双控制器中选择其中之一作为文件存取的控制端。由于双控制器架构,系统能向使用者提供了交叉访问的功能,所以对于使用者而言,使用者无须对哪一个控制器做出选择,也可以达到相同环境的操作。换言之,使用者只是连接其中的一个控制器,但仍然可以访问另一个控制器上的虚拟磁盘(virtual disk)。iSCSI服务接管是在IP被第一控制器110接管之前,把第二控制器120上的iSCSI 目标端复制到第一控制器110。这样整个iSCSI服务的连接就能够从第二控制器120被接管到第一控制器110上,原连接的任务也被分配到正确连接上。网络协定服务接管由各控制器中的网络管理模块所提供。网络管理模块能够在某一个控制器的外网服务停止时,让网络服务在另一个控制器上建立起来,相当于让第一控制器110接管了第二控制器120外网的服务。有了这个正确的网络协定的目标,使用者的 iSCSI发起端才能以TCP方式连接到第一控制器110。存储设备的状态的接管是由各控制器的存储设备管理模块提供,存储设备管理模块所做的事情是通过修改了存储设备管理模块的控制器属性,把一个控制器上的虚拟磁盘的存储设备转移到另一个控制器上,iSCSI服务才能访问接管后的虚拟磁盘,并进行正常的读写操作。本发明除了上述应用在iSCSI文件存储系统外,亦可以应用于其他多控制器的系统中。对于其他多控制器系统所提供的服务与存储设备也会有对应的设定,并非仅局限上述例子。更新程序(upgrade service)是一种守护进程(daemon),每一个控制器都会时刻的运行更新程序,并透过传输控制协定transmission Control Protocol,简称TCP)方式与另一控制器来进行升级。其中,两个控制器可以透过心跳线(heart beat)的方式进行联系。
5
为方便说明多控制器的每一个控制器,因此以第一控制器110与第二控制器120 作为区隔,其执行顺序并不受限于此。假设第二控制器120为第一个进行更新程序的控制器。在图3中以由上往下作为时间的流向。在图3中一开始两个控制器均会启动更新程序(对应图3的步骤a)。接着,由第二控制器120向第一控制器110发出故障转移命令(对应图3的步骤b)。当第一控制器 110完成接管第二控制器120的相关环境后,就会对第二控制器120进行更新程序(对应图 3的步骤c)。当完成第二控制器120完成更新程序后,第二控制器120向第一控制器110发出故障恢复命令,并返回第二控制器120的相关的环境设定,重新启动第二控制器120(对应图3的步骤d与步骤e)。在第二控制器120已经确定可以正常运行后,接着由第一控制器 110向第二控制器120发出故障转移命令(对应图3的步骤f),并停止第一控制器110的运作并记录第一控制器110的环境设定。接着,对第一控制器110进行更新程序(对应图3 的步骤g)。并在第一控制器Iio完成更新程序后,第一控制器110向该第二控制器120发出故障恢复命令(对应图3的步骤h),重新启动第一控制器110(对应图3的步骤i),即可完成文件存储系统的升级。本发明所提出的多控制器的储存区域网络设备的升级方法可以在不停止储存区域网络设备的服务并对每一个控制器进行升级的处理。因此使用者在传输文件的同时,不会因为储存区域网络设备的升级而中断文件传输。
权利要求
1.一种多控制器的储存区域网络设备的升级方法,用以升级多控制器的运作程序,其特征在于,该升级方法包括以下步骤透过一多控制器中的一第一控制器对一第二控制器发出一故障转移命令,并停止该第二控制器的运作并记录该第二控制器的一环境设定;对该第二控制器进行一更新程序,用以更新该第二控制器的一运作程序; 在该第二控制器完成该更新程序后,该第二控制器向该第一控制器发出一故障恢复命令,并重新启动该第二控制器;由该第一控制器向该第二控制器发出该故障转移命令,并停止该第一控制器的运作并记录该第一控制器的该环境设定;对该第一控制器进行该更新程序,用以更新该第一控制器的该运作程序;以及在该第一控制器完成该更新程序后,该第一控制器向该第二控制器发出该故障恢复命令,并重新启动该第一控制器。
2.如权利要求1所述的多控制器的储存区域网络设备的升级方法,其特征在于,记录该环境设定的步骤中还包括对欲进行更新的该控制器记录所属的一存储设备的状态; 由执行该更新程序的该控制器接管欲进行更新的该控制器的一网络服务;以及将欲进行更新的该控制器所接收的一服务请求转发至执行该更新程序的该控制器。
全文摘要
本发明公开了一种多控制器的储存区域网络设备的升级方法用以升级多控制器的运作程序,其包括透过第一控制器对第二控制器发出故障转移命令,停止第二控制器的运作并记录第二控制器的环境设定;对第二控制器进行更新程序,更新第二控制器的运作程序;在第二控制器完成更新程序后,第二控制器向第一控制器发出故障恢复命令,并重新启动第二控制器;由第一控制器向第二控制器发出故障转移命令,停止第一控制器的运作并记录第一控制器的环境设定;对第一控制器进行更新程序;第一控制器向第二控制器发出故障恢复命令,并重新启动第一控制器。
文档编号H04L29/08GK102457547SQ201010522930
公开日2012年5月16日 申请日期2010年10月20日 优先权日2010年10月20日
发明者汤春耀, 陈志丰 申请人:英业达股份有限公司
网友询问留言 已有0条留言
  • 还没有人留言评论。精彩留言会获得点赞!
1