CN101046758A - 冗余***的文件更新方法 - Google Patents

冗余***的文件更新方法 Download PDF

Info

Publication number
CN101046758A
CN101046758A CNA2007100024222A CN200710002422A CN101046758A CN 101046758 A CN101046758 A CN 101046758A CN A2007100024222 A CNA2007100024222 A CN A2007100024222A CN 200710002422 A CN200710002422 A CN 200710002422A CN 101046758 A CN101046758 A CN 101046758A
Authority
CN
China
Prior art keywords
file
mentioned
storage area
old
new
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
Application number
CNA2007100024222A
Other languages
English (en)
Other versions
CN101046758B (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.)
Oki Electric Industry Co Ltd
Original Assignee
Oki Electric Industry 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 Oki Electric Industry Co Ltd filed Critical Oki Electric Industry Co Ltd
Publication of CN101046758A publication Critical patent/CN101046758A/zh
Application granted granted Critical
Publication of CN101046758B publication Critical patent/CN101046758B/zh
Active legal-status Critical Current
Anticipated expiration legal-status Critical

Links

Images

Classifications

    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F11/00Error detection; Error correction; Monitoring
    • G06F11/07Responding to the occurrence of a fault, e.g. fault tolerance
    • G06F11/16Error detection or correction of the data by redundancy in hardware
    • G06F11/20Error detection or correction of the data by redundancy in hardware using active fault-masking, e.g. by switching out faulty elements or by switching in spare elements
    • G06F11/202Error detection or correction of the data by redundancy in hardware using active fault-masking, e.g. by switching out faulty elements or by switching in spare elements where processing functionality is redundant
    • G06F11/2038Error detection or correction of the data by redundancy in hardware using active fault-masking, e.g. by switching out faulty elements or by switching in spare elements where processing functionality is redundant with a single idle spare processing component
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F11/00Error detection; Error correction; Monitoring
    • G06F11/07Responding to the occurrence of a fault, e.g. fault tolerance
    • G06F11/14Error detection or correction of the data by redundancy in operation
    • G06F11/1402Saving, restoring, recovering or retrying
    • G06F11/1415Saving, restoring, recovering or retrying at system level
    • G06F11/1441Resetting or repowering
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F11/00Error detection; Error correction; Monitoring
    • G06F11/07Responding to the occurrence of a fault, e.g. fault tolerance
    • G06F11/16Error detection or correction of the data by redundancy in hardware
    • G06F11/20Error detection or correction of the data by redundancy in hardware using active fault-masking, e.g. by switching out faulty elements or by switching in spare elements
    • G06F11/202Error detection or correction of the data by redundancy in hardware using active fault-masking, e.g. by switching out faulty elements or by switching in spare elements where processing functionality is redundant
    • G06F11/2048Error detection or correction of the data by redundancy in hardware using active fault-masking, e.g. by switching out faulty elements or by switching in spare elements where processing functionality is redundant where the redundant components share neither address space nor persistent storage

Landscapes

  • Engineering & Computer Science (AREA)
  • Theoretical Computer Science (AREA)
  • Quality & Reliability (AREA)
  • Physics & Mathematics (AREA)
  • General Engineering & Computer Science (AREA)
  • General Physics & Mathematics (AREA)
  • Information Retrieval, Db Structures And Fs Structures Therefor (AREA)
  • Hardware Redundancy (AREA)
  • Stored Programmes (AREA)

Abstract

本发明提供一种冗余***的文件更新方法,能在短时间内进行正在提供服务的执行程序等的文件更新。在文件更新时,当需要恢复时可迅速地恢复。在由ACT***通过旧文件提供服务的期间,在SBY***中并行地执行旧文件和新文件。并且,在***切换前,还与以ACT***的同步对象存储区域中的数据迁移为契机、通过事件驱动进行的旧存储区域之间的数据同步并行地,进行向新存储区域的形式转换处理。由此,在***切换后的再起处理中不需要进行形式转换处理,可迅速地开始利用新文件的服务。并且,新文件区分旧存储区域和新存储区域地进行分配,即使进行向新存储区域的形式转换处理,也保留旧存储区域。由此,在再起失败时,能够在自身***中救济存储器,恢复到旧文件。

Description

冗余***的文件更新方法
技术领域
本发明涉及冗余***的文件更新方法,具体涉及例如在像呼叫服务器那样的要求高可靠性的***中,在继续所提供的服务的状态下,对正在提供该服务的执行程序等的文件进行更新时使用的文件更新方法。
背景技术
一般在呼叫服务器等要求高可靠性的***中,为了维持其可靠性,如图2所示,采用具有ACT***(运行***)服务器A001、和SBY***(待机***)服务器S001的双重冗余***。
各个服务器A001、S001包括:具有与其它***连接的接口部(网络接口卡:NIC)A007、S007和硬盘A008、S008等的硬件A006、S006;和用于使后述的软件进行协作的通用OS。在图2中,关于通用OS,只记载了核心A005、S005。
各个服务器A001、S001具有作为软件的服务进程A002、S002、再起控制部A003、S003、以及***结构管理部A004、S004。另外,共用存储器A009、S009是由RAM等半导体存储器等构成的硬件,但由于是由上述的软件部分所使用,所以表示在与软件部分相同的层级中。
***结构管理部A004、S004对冗余结构进行状态管理和故障监视。再起控制部A003、S003进行服务进程A002、S002的启动控制和监视等的管理。服务进程A002、S002保持服务(例如呼叫处理服务)所需的存储区域A010、S010,并实施服务。服务所需的存储区域A010、S010是,即使在发生了硬件或软件的故障时也必须得到救济的、ACT服务器A001和SBY服务器S001之间的同步对象存储区域。
这里的同步对象存储区域是指,用于为了在切换到SBY服务器S001时也能够提供与ACT服务器A001相同的服务,而使SBY服务器S001能够存储与ACT服务器A001所具有的数据同值的数据的各***中的存储区域。另外,在专利文献1中记载了使呼叫控制数据一致,并且进行一元管理的技术。
图2中的服务进程A002、S002是基于存储在硬盘A008、S008中的执行文件而生成的。
例如,成为生成服务进程A002、S002的生成源的执行文件等的软件,多数情况是在其运行中发现缺陷并进行改写。以下,参照图3的序列图对在图2所示的冗余***中进行文件更新的以往方法进行说明。
一般情况下,在冗余***中,首先由SBY***配置新文件,ACT***仍旧为旧文件。然后,通过进行***切换,开始进行使用新文件的服务,但是,在新文件中发生了故障时,也可通过再次进行***切换,立即重新运行旧文件。图3表示以这样的方式进行服务进程的文件更新时的序列。
虽然未记载在图3中,但在ACT***服务器A001通过旧服务进程A002提供服务的期间,例如,操作员将展开在SBY***服务器S001的硬盘S008上的执行文件更新为新的执行文件。
在这样的状态下,例如操作员对ACT***服务器A001进行***切换的指示操作(该操作也可以是明确地指示了是用于切换到新文件的***切换的操作),此时,ACT***的***结构管理部A004指示SBY***的***结构管理部S004进行***切换(P100)。
在SBY***中,再起控制部S003在从***结构管理部A004接收到再起请求时(P101),结束当前的服务进程(旧服务进程)S002(P102),将更新了的新执行文件从硬盘S008载入到工作存储器上,生成新的服务进程(P103)。然后,由再起控制部S003进行再起处理,以便能够应用新的服务进程S002(P104、P105)。另外,所谓再起是指建立能够使该新的服务进程S002动作的状态。
在ACT***服务器A001中,在指示了向SBY***服务器S001的***切换时(上述的P101),立即、或在经过了规定的时间后,把自身转移到SBY***。因此,在进行SBY***的再起处理的期间中断服务。在关于新的服务进程S002的再起处理结束,并且由再起控制部S003识别到该情况时(P106),通知***结构管理部S004再起结束(P107),由此,使到此为止是SBY***的服务器S001,作为与新的服务进程对应的ACT***开始动作。
在这样的状态下,在切换开始前是ACT***的服务器A001,安装有旧服务进程,在切换开始前是SBY***的服务器S001,成为安装了新服务进程的状态,两***的服务器A001、S001成为非同步状态。
在切换开始前是ACT***、目前是SBY***的服务器A001,根据来自其它***的服务器S001的表示切换到ACT***的通知等的到来,自身***也进行向与新的服务进程对应的状态切换的切换动作(P108~P115),由此,转移到与新的服务进程对应的SBY***的状态,两***再次成为同步状态。
在***切换之后的再起处理(P105)中,在新服务进程中,需要继承旧服务进程所使用的同步对象存储区域S010。例如,在新服务进程与旧服务进程之间,多数情况是所谓的面向对象语言中的类(class)和实例(instance)的定义、和类之间的关系等的构造体不同,在新服务进程为了适应这样的构造体的不同而使用同步对象存储区域S010时,需要进行形式转换处理。
服务进程所使用的同步对象存储区域S010根据该区域的种类等,进行分段管理。由于形式转换处理因各个段的不同而成为不同的处理,所以需要按照每个段来执行。
[专利文献1]日本特开2001-345850号公报
在以往的文件更新方法中,在***切换后,建立新的服务进程,在该新服务进程的再起处理的过程中,实施形式转换处理。由于需要按存储器的每个管理段实施形式转换处理,所以需要进行与段的数量对应的调用。在构筑像呼叫服务器这样的大规模***的情况下,由于其段数庞大,所以包含了形式转换处理的再起处理耗费时间,存在着文件更新过程中的服务中断时间变长的问题。
另外,在SBY***中,旧服务进程所使用的同步对象存储区域因形式转换处理而被盖写。因此,存在以下问题:在开始了形式转换处理之后,在再起处理失败而恢复(roll back)到旧文件时,在SBY***中不能恢复,进行向其它***(旧ACT***)的***切换处理,直到完成旧文件的服务复原,耗费时间。
因此,希望有一种在继续所提供的服务的状态下,能够以短时间对正在提供该服务的执行程序等进行文件更新的冗余***的文件更新方法。而且,希望有一种即使在文件更新时需要恢复,也能够迅速地恢复的冗余***的文件更新方法。
发明内容
关于本发明的方案1的冗余***的文件更新方法,在该冗余***中,ACT***服务器和SBY***服务器分别具有:描述了服务的处理的文件;进行冗余结构的状态管理和故障监视的***结构管理部;进行上述文件的启动控制和监视等的管理的再起控制部;和储存由同值数据构成的同步信息以确保***切换时数据的一致性的共用存储器上的同步对象存储区域,其特征在于,在上述SBY***服务器的文件更新时,上述SBY***服务器除了确保与更新前的文件对应的旧的上述同步对象存储区域之外,还另外确保与更新后的文件对应的新的同步对象存储区域,上述SBY***服务器的上述***结构管理部,在来自上述ACT***服务器的更新前的文件用同步信息到来时,把该同步信息储存在旧的上述同步对象存储区域中,并且提供给所生成的更新后的文件,该所生成的更新后的文件,在被提供了更新前的文件用同步信息时,立即进行适应上述新的同步对象存储区域的形式转换。
这里,理想的是,上述SBY***服务器的上述***结构管理部在文件更新时,到文件更新结束为止,保留更新前的文件,当在文件更新结束之前需要恢复时,上述SBY***服务器的上述***结构管理部,再起利用旧的上述同步对象存储区域的、被保留了的上述更新前的文件。
关于本发明的方案2的冗余***的文件更新方法,在该冗余***中,ACT***服务器和SBY***服务器分别具有:描述了服务的处理的文件;进行冗余结构的状态管理和故障监视的***结构管理部;进行上述文件的启动控制和监视等的管理的再起控制部;和储存由同值数据构成的同步信息以确保***切换时数据的一致性的共用存储器上的同步对象存储区域,其特征在于,在上述SBY***服务器的文件更新时,上述SBY***服务器的上述***结构管理部,在再起更新后的文件之前,根据储存在上述同步对象存储区域内的更新前的文件的同步信息,对上述更新后的文件进行形式转换,使得上述更新后的文件能够与其相适应。
根据本发明,能够在短时间内进行正在提供服务的执行程序等的文件更新。而且,根据本发明,在文件更新时,当需要恢复时可迅速地恢复。
附图说明
图1是表示本发明实施方式的冗余***的、SBY***服务器正在执行用于更新文件的***切换的状态下的功能框图。
图2是以往的冗余***的功能框图。
图3是表示以往的冗余***的文件更新处理的序列图。
图4是表示本发明实施方式的冗余***的文件更新方法的序列图。
图5是表示本发明实施方式的新旧服务进程的存储器分配状态的说明图。
图6是表示本发明实施方式的冗余***的文件更新处理的序列图。
图7是表示本发明实施方式的SBY***的***结构管理部中的同步信息处理的流程图。
图8是表示本发明实施方式的SBY***的新服务进程的同步信息处理的流程图。
图9是表示本发明实施方式的再起处理失败时的SBY***的新旧服务进程的存储器分配状态的变化的说明图。
图10是表示本发明实施方式的新文件程序中的旧文件版本认证处理的概念图。
图11是表示本发明实施方式的新文件程序中的旧文件版本认证处理的流程图。
图中:A001-ACT***服务器;A002-服务进程(旧服务进程);A003-再起控制部;A004-***结构管理部;A009-共用存储器;A010-同步对象存储区域(旧存储区域);S001-SBY***服务器;S002-服务进程(旧服务进程);S003-再起控制部;S004-***结构管理部;S009-共用存储器;S010-同步对象存储区域(旧存储区域);S011-新服务进程;S012-新同步对象存储区域(新存储区域)。
具体实施方式
(A)实施方式
下面,参照附图,对本发明的冗余***的文件更新方法的一个实施方式进行说明。
本实施方式的基本概念如下。在ACT***通过旧文件提供服务的期间,在SBY***中并行地执行旧文件和新文件。并且,在***切换之前,与以ACT***的同步对象存储区域中的数据迁移为契机、通过事件驱动进行的旧存储区域之间的数据同步并行地,进行向新存储区域的形式转换处理。由此,在***切换后的再起处理中,不需要进行形式转换处理,即可迅速地开始新文件的服务。并且,新文件区分旧存储区域和新存储区域地进行分配,即使进行向新存储区域的形式转换处理,也会保留旧存储区域。由此,在再起失败时,可通过自身***来救济存储器,恢复到旧文件。
图1是表示本实施方式的冗余***的、SBY***服务器正在执行用于更新文件的***切换的状态下的功能框图,对于与上述的图2相同、对应的部分采用相同的符号进行表示。
本实施方式的冗余***也具有ACT***服务器A001和SBY***服务器S001。这些服务器A001、S001,省略了图示,但与其它信息处理装置一样,具有CPU、存储器(ROM、RAM等)、通信部、硬盘等,如果把上述状态下的硬件和软件的功能分层级整理进行表示,则可用图1表示。
另外,在通常的运行状态下,本实施方式的冗余***也可以如上述的图2那样进行表示。
在图1中,各服务器A001、S001包括:具有与其它***连接的接口部A007、S007和硬盘A008、S008等的硬件A006、S006;和用于使后述的软件进行协作的通用OS(在图1中只记载了核心A005、S005)。
各服务器A001、S001具有作为软件的服务进程(在图1中表示为旧服务进程)A002、S002、再起控制部A003、S003、以及***结构管理部A004、S004。共用存储器A009、S009虽然是由RAM等半导体存储器等构成的硬件,但由于是由软件的一部分来使用,所以表示在与软件部分相同的层级中。在共用存储器A009、S009内,设有用于存储两***的同值数据(例如实例)的同步对象存储区域(在图1中表示为旧存储区域)A010、S010。
另外,关于文件更新功能,再起控制部A003、S003和***结构管理部A004、S004执行与以往不同的处理(参照后述的图4)。
如果是在执行文件更新之前,则根据以上的结构要素建立冗余***,但是,在SBY***服务器S001正在执行用于文件更新的***切换的中途状态下,SBY***服务器S001生成基于文件更新的服务进程(在图1中表示为新服务进程)S011、和新服务进程S011在同步处理时所使用的同步对象存储区域(在图1中表示为新存储区域)S012。
图4是表示本实施方式的冗余***的文件更新方法的序列图,其与以往技术的图3对应。
在图4中,虽然省略了图示,但在ACT***服务器A001通过旧服务进程A002提供服务的期间,例如操作员把展开在SBY***服务器S011的硬盘S008上的执行文件更新为新的执行文件。
在这样的状态下,例如,当操作员对SBY***服务器S001进行了取入新文件的指示操作时,SBY***的***结构管理部S004向再起控制部S003发出处理程序生成请求(P200),由此,再起控制部S003生成作为ACT***的新服务进程S011(P201)。另外,也可以使SBY***服务器S001的***结构管理部S004通过识别新的执行文件已展开在硬盘S008上,自动地进行上述步骤P200的处理。
在本实施方式的情况下,作为ACT***的新服务进程S011包括进行服务的提供处理的服务进程主体部分、进行在生成后立即进行的处理的生成后立即处理部分、和进行初次指示了***切换时的再起处理的再起处理部分(P202、P203)。
生成后立即处理部分包括:生成新存储区域S012,对使用中的旧存储区域S010,利用新存储区域S012实施形式转换的处理;对来自ACT***的处于缓冲中的同步信息实施形式转换的处理;和在处于缓冲中的同步信息消失后进行的、对来自ACT***的同步信息实施形式转换的处理(参照后述的图6)。另外,在图4中,所谓“事件驱动(event driven)同步状态”是指,在处于缓冲中的同步信息消失后进行的、对来自ACT***的同步信息实施形式转换的状态。
如上所述,在生成了新服务进程S011的状态下,与旧服务进程S022并行地执行。另外,在SBY***的共用存储器S009上,不仅确保旧服务进程S002所使用的旧存储区域S010,而且还确保新服务进程所使用的新存储区域S012。
新服务进程S011也可以把成为事件驱动同步状态的信息例如通过***结构管理部S004通知给操作员(通知的方式例如可以是在显示器上的显示,也可以是LED等的亮灯等)。另外,新服务进程S011也可以把成为事件驱动同步状态的信息例如通过***结构管理部S004通知给ACT***。
例如,操作员在根据通知而识别出已成为事件驱动同步状态时,或者在从对SBY***服务器S001进行了***切换的指示操作时起经过了充分长的时间,而识别为已成为事件驱动同步状态时,对ACT***服务器A001进行***切换的指示操作,此时,ACT***的***结构管理部A004向SBY***的***结构管理部S004发出***切换的指示(P204)。另外,ACT***的***结构管理部A004也可以根据事件驱动同步状态的通知,向SBY***的***结构管理部S004发出***切换的指示。
ACT***服务器A001在指示了***切换后,把自身***转移到SBY***(P205)。另外,此时所转移到的SBY***是与旧服务进程A002相关的SBY***。
如上所述,在本实施方式的情况下,在ACT***服务器A001通过旧文件(旧服务进程A002)提供服务的期间,SBY***服务器S001与旧服务进程S002并行地生成新服务进程S011,对于服务进程S002所使用的存储段,进行形式转换,使其适应新服务进程S011。并且,在ACT***A001通过旧文件(旧服务进程A002)提供服务的期间,在进行通常进行的旧存储区域A010、S010中的两个***的同步之外,还对有同步请求的段并行地进行向新存储区域S012的形式转换处理。
即,在ACT***服务器A001对SBY***服务器S001指示了***切换时,形式转换处理已经结束。
在SBY***中,再起控制部S003在从***结构管理部S004提供来再起请求时(P206),结束目前的服务进程(旧服务进程)S002(P207),指示新服务进程S011进行再起处理(P208)。新服务进程S011执行除了形式转换处理以外的再起处理(P209),在再起处理结束时,通过再起控制部S003把表示再起处理结束的信息通知给***结构管理部S004(P210、211),***结构管理部S004把自身***作为使用新服务进程S011的ACT***(P212)。在成为能够作为该ACT***进行动作的状态的瞬间,旧服务进程S002和旧存储区域S010从工作存储器上消失。
上述的图1中所示的功能框图的状态是,从生成了新服务进程S011时(P201)起,到成为使用新服务进程S011的ACT***(P212)之前为止的状态。
在SBY***服务器S001成为使用新服务进程S011的ACT***的状态下,两个***的服务器A001、S001成为非同步状态。
***切换开始之前是ACT***、当前是SBY***的服务器A001,根据来自其它***的服务器S001的表示已经切换到ACT***的通知等的到来,进行把自身***也切换到与新服务进程对应的状态的切换动作(P213~P221)。另外,在该切换动作开始前,操作员预先把展开在服务器A001的硬盘A008上的执行文件更新为新的执行文件。
即,在服务器A001的切换动作中,首先,服务器A001的***结构管理部A004通过再起控制部A003结束旧服务进程A002(P213、P214)。另外,服务器A001的***结构管理部A004通过再起控制部A003生成新服务进程(SBY***用的新服务进程)(P215~P217)。并且,***结构管理部A004在接收到该生成结束的通知后(P218、P219),从成为新的ACT***的服务器S001侧,取入并储存同步对象存储区域(新存储区域)S012的数据的全部值(P220),使自身***成为应用新服务进程的SBY***的状态(P221)。
由此,建立应用更新后的文件(新服务进程)的同步状态。
如上所述,在生成新服务进程S011、并行执行新服务进程S011和旧服务进程S002的状态下,在SBY***的共用存储器S109上确保了新存储区域S112和旧存储区域S010。图5表示新旧服务进程的存储器分配的状态。
ACT***旧服务进程A002在ACT***共用存储器A009上分配了旧存储区域A010。同样,SBY***旧服务进程S002在SBY***共用存储器S009上分配了旧存储区域S010。并且,在SBY***中,新服务进程S011在SBY***共用存储器S009上,把旧存储区域S010和新存储区域S012这两者分配在新服务进程中的假想空间内的不同区域中。
新服务进程S011包含把旧存储区域S010上的段向新存储区域S012的信息进行形式转换的描述。
图6是表示基于SBY***的***结构管理部S004和新服务进程S011的同步信息的处理流程的序列图。图6所示的处理部分与图4的步骤P202和P203相对应,并详细地表示了步骤P202和P203中的同步信息的处理部分。
在ACT***中,当同步对象段中发生了数据迁移时,从ACT***的***结构管理部A004发送同步信息,由SBY***的***结构管理部S004接收该信息。此时,接收的同步信息是同步对象段的地址、大小、以及要写入的实际数据等。通过使用这3个信息,向存储区域(旧存储区域)S010写入同步数据,由此来实现存储器同步。
在这样的同步状态下执行服务进程的文件更新。在SBY***中,当由再起控制部S003生成新服务进程S011时,由新服务进程S011实施针对在服务中正在使用的全部存储段的形式转换处理(P300)。
在该形式转换处理中,也是SBY***的***结构管理部S004接收来自ACT***的同步信息,并写入到旧存储区域S010中(P301)。但是,新服务进程S011正在进行针对使用中的全部存储段的形式转换处理,所以不能进行同步信息的处理,因此,在该处理过程中,***结构管理部S004对所接收的同步信息进行缓冲(P302)。
在新服务进程S011中,在使用中的全部存储段的形式转换处理结束时,把由***结构管理部S004进行缓冲的同步信息反映在新存储区域S012中(P303)。新服务进程S011由于把旧存储区域S010和新存储区域S012分配在不同的区域,所以能够接收已经取得同步的旧存储区域S010的段的地址、大小,并从旧存储区域S010把同步信息反映在新存储区域S012上的对应的段上。
在***结构管理部S004以新服务进程S011完成了进行缓冲的全部同步信息的处理为契机,把所接收的同步信息写入旧存储区域S010后(P304),不经过缓冲,立即转送到新服务进程S011(P305)。新服务进程S011在接收到该同步信息后,立即执行从旧存储区域S010向新存储区域S012的形式转换,所以与旧存储区域S010的同步并行地实现向新存储区域S012的形式转换(P306)。
关于上述那样的同步信息的处理,图7表示SBY***的***结构管理部S004的处理流程,图8表示新服务进程S011的处理流程。
SBY***的***结构管理部S004等待来自ACT***的同步信息(P400),在接收到同步信息后(P401),把同步数据写入旧存储区域S010(P402)。然后,判断是否生成了新服务进程S011(P403),如果还未生成,则返回等待同步信息的状态。如果生成了新服务进程S011,则判断表示是否处于缓冲同步信息的状态的标志的状态(P404)。当标志表示处于缓冲同步信息的状态时(未建立时),在缓冲了所接收的同步信息后(P405),返回等待同步信息的状态。在标志表示不处于缓冲同步信息的状态时(建立时),在把接收到的同步信息发送到新服务进程S011后(P406),返回等待同步信息的状态。
新服务进程S011实施S010的使用中的全部存储段的形式转换处理(P500)。接着,把进行缓冲的同步信息反映在新存储区域S012中(P501)。然后,建立上述的标志(P502)。另外,标志在初始状态下并未建立,表示处理进行了缓冲的同步信息。
然后,新服务进程S011转移到等待接收同步信息的状态(P503),在从***结构管理部S004接收到同步信息后(P504),调用同步对象段的形式转换处理,并反映在新存储区域S012中,然后,返回等待接收同步信息的状态。
下面,对***切换后的再起处理失败时恢复到旧文件的情况进行说明。
图9表示再起处理失败时的SBY***的新旧服务进程的存储器分配状态的变化。
从新服务进程S011的生成到***切换的期间,如结合图5所说明的那样。另外,如图9(A)所示,在SBY***中,对于新服务进程S011而言,把旧存储区域S010和新存储区域S012映射到新服务进程S011中的假想空间内的不同区域。
在从ACT***接收到***切换指示后,SBY***开始新服务进程S011的再起处理。在再起处理中,为了使新服务进程S011开始服务,进行线程的生成和存储器的救济判定等的初始设定。对于新服务进程S011而言,由于把新存储区域S012与旧存储区域S010分配在不同的区域,所以,如图9(B)所示,即使在再起处理中,旧存储区域S010也不会受到影响而被保留下来。
在该新服务进程S011的再起处理失败的情况下,新服务进程S011被终止,为了通过旧服务进程S002开始服务,进行旧服务进程S002的再起处理。此时,在旧服务进程S002中,如图9(C)所示,映射所保留的旧存储区域S010,成为与图9(A)的“***切换前”的状态一样的状态,由此可实现旧存储区域S010的存储器救济。
在图9的例子中,是在进行新服务进程S011的再起处理时结束旧服务进程S002,但是,即使在维持旧服务进程S002的情况下,也进行与上述同样的动作。
下面,说明文件更新时的版本管理方法。
在文件更新中,在存储区域内的构造体的结构发生了变更的情况下等,进行从旧存储区域S010向新存储区域S012的形式转换的处理,安装在新文件的程序(服务进程)内。另一方面,从实施该文件更新的时刻之前的全部旧文件的版本进行转移,需要掌握全部旧文件的版本和新文件的版本的存储器内的构造上的不同点,因此,安装该形式转换处理实际上是不可能的。
因此,根据旧文件的版本信息限制形式转换处理。即,只从作为可利用新文件程序进行存储器转换的对象的该版本的旧文件,进行从旧文件向新文件的存储器的继承。在旧文件的版本是新文件的转换对象以外的版本的情况下,废弃旧存储器。另外,即使在是来自能够实施存储器继承的版本的文件更新的情况下,也能够决定是否需要按每个存储段进行形式转换,或者不需要形式转换,而从旧存储区域进行复制。
图10是表示新文件程序(新服务进程)在利用内置的版本认证程序收集(P600)并认证(P601)了旧文件的版本信息后,利用内置的存储区域转换程序实施存储器转换(P602)的处理的概念图。
图11是表示新文件程序的旧文件版本认证的处理的流程图。
旧文件版本信息431ba在该旧程序文件建立时作为独特的信息被写入,在载入了程序时,通过展开在共用存储器(参照图1)上,可从新文件程序431a进行参照。
新文件程序的旧文件版本认证程序431aa在建立时,预先保持有容许对象转换的转换容许版本信息431aaa。
在载入了新文件程序时(生成了服务进程时),在实施旧存储器转换处理之前,通过收集保持在共用存储器中的旧文件版本信息431ba(P700),并与转换容许版本信息431aaa相对照,来实施认证(P701)。
根据该认证,可判断是否能够利用新文件的程序从旧文件存储区域进行形式转换,按每个存储段调用存储区域转换程序431ab,进行形式转换处理动作(P702)。
在该形式转换处理中,不需要形式转换的存储段从旧存储区域被复制到新存储区域。在进行复制处理时,与形式转换不同,不是以请求单位实施,而是在新文件的再起处理即将实施之前,执行未实施存储器转换的剩余的全部段。在一并复制该多个段的情况下,由于是在核心内实施,所以与按每个小段实施的情况相比,可高速地进行。
在形式转换处理执行后,还执行呼叫救济处理(P703)。另外,在结合图4和图6的序列图的说明中的“形式转换”的用语中也包含这样的呼叫救济处理。
在旧文件版本信息431ba未包含于转换容许形式信息431aaa,版本的认证失败时,废弃旧存储区域,将新存储区域初始化,等待再起的指示(参照图4),实施文件更新再起(P704)。
根据上述实施方式的冗余***及其文件更新方法,可达到以下的效果。
根据上述实施方式,由于与旧存储区域的同步并行地实时进行向新存储区域的形式转换,所以在***切换后的再起处理中,不需要耗费时间的形式转换处理,可缩短至新服务进程开始服务为止的时间。
另外,在上述实施方式的文件更新中,由于新旧存储区域、新旧服务进程、以及程序内的新旧动作分离,对旧服务进程所需的旧存储区域的同步不产生影响,所以在文件更新动作中,当ACT***发生了故障时,可利用与ACT***处于同步状态的SBY***的旧存储区域以及旧服务进程,将服务迅速地复原,因此,能够在确保可靠性的状态下实施文件的更新。
并且,根据上述实施方式,即使在文件更新时的新服务进程的再起处理失败了的情况下,通过映射保留了旧服务进程的旧存储区域,可在自身***中救济存储器并恢复,能够与其它***无关地实现安全、迅速的利用旧文件(旧服务进程)的服务复原。
另外,根据上述实施方式,通过使用上述那样的文件版本管理,在文件更新过程不同的***环境中,在要求新文件从未识别的旧文件版本进行文件更新的情况下,可切实地转移到不伴有呼叫救济的文件更新。
另外,根据上述实施方式,在存储区域被分成多个存储段那样的***的情况下,能够按每个存储段进行形式转换/复制处理的分支。由此,对于不需要形式转换的存储段,可从旧存储区域简单地复制,从而可实现处理的高速化。
(B)其它实施方式
通过将本发明应用在具有冗余结构,并且在执行文件的更新中也要求服务的继续性那样的要求高可靠性的***中,可减小文件更新对***产生的影响度,从而即使在文件更新时也能够维持***的可靠性。

Claims (5)

1.一种冗余***的文件更新方法,在该冗余***中,ACT***服务器和SBY***服务器分别具有:描述了服务的处理的文件;进行冗余结构的状态管理和故障监视的***结构管理部;进行上述文件的启动控制和监视等的管理的再起控制部;和储存由同值数据构成的同步信息以确保***切换时的数据的一致性的共用存储器上的同步对象存储区域,其特征在于,
在上述SBY***服务器的文件更新时,上述SBY***服务器除了确保与更新前的文件对应的旧的上述同步对象存储区域之外,还另外确保与更新后的文件对应的新的同步对象存储区域,
上述SBY***服务器的上述***结构管理部,在来自上述ACT***服务器的更新前的文件用同步信息到来时,把该同步信息储存在旧的上述同步对象存储区域中,并且提供给所生成的更新后的文件,
该所生成的更新后的文件,在被提供了更新前的文件用同步信息后,立即进行适应上述新的同步对象存储区域的形式转换。
2.根据权利要求1所述的冗余***的文件更新方法,其特征在于,上述SBY***服务器的上述***结构管理部在文件更新时,到文件更新结束为止,保留更新前的文件,
在文件更新结束之前需要恢复时,上述SBY***服务器的上述***结构管理部,再起利用旧的上述同步对象存储区域的、被保留了的上述更新前的文件。
3.一种冗余***的文件更新方法,在该冗余***中,ACT***服务器和SBY***服务器分别具有:描述了服务的处理的文件;进行冗余结构的状态管理和故障监视的***结构管理部;进行上述文件的启动控制和监视等的管理的再起控制部;和储存由同值数据构成的同步信息以确保***切换时的数据的一致性的共用存储器上的同步对象存储区域,其特征在于,
在上述SBY***服务器的文件更新时,上述SBY***服务器的上述***结构管理部,在再起更新后的文件之前,根据储存在上述同步对象存储区域内的更新前的文件的同步信息,对上述更新后的文件进行形式转换,使得上述更新后的文件能够与其适应。
4.根据权利要求1~3中的任意一项所述的冗余***的文件更新方法,其特征在于,上述更新后的文件按每个存储段判断是否需要进行上述形式转换。
5.根据权利要求1~4中的任意一项所述的冗余***的文件更新方法,其特征在于,由上述更新后的文件识别上述更新前的文件的版本信息,在上述更新前的文件的版本是上述更新后的文件的转换对象版本时,进行与旧的上述同步对象存储区域相关的存储器救济。
CN2007100024222A 2006-03-28 2007-01-17 冗余***的文件更新方法 Active CN101046758B (zh)

Applications Claiming Priority (3)

Application Number Priority Date Filing Date Title
JP2006088608 2006-03-28
JP2006-088608 2006-03-28
JP2006088608A JP4710688B2 (ja) 2006-03-28 2006-03-28 冗長システムのファイル更新方法

Publications (2)

Publication Number Publication Date
CN101046758A true CN101046758A (zh) 2007-10-03
CN101046758B CN101046758B (zh) 2010-12-08

Family

ID=38637913

Family Applications (1)

Application Number Title Priority Date Filing Date
CN2007100024222A Active CN101046758B (zh) 2006-03-28 2007-01-17 冗余***的文件更新方法

Country Status (3)

Country Link
US (1) US20070288532A1 (zh)
JP (1) JP4710688B2 (zh)
CN (1) CN101046758B (zh)

Cited By (3)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
CN107360218A (zh) * 2017-06-22 2017-11-17 浙江力石科技股份有限公司 一种面向智慧旅游的大数据一体化并行存储调度方法及***
CN110412907A (zh) * 2019-06-11 2019-11-05 武汉欣叶电子科技有限公司 一种香氛发生器、车载香氛控制***及方法
CN111666091A (zh) * 2020-06-12 2020-09-15 成都极米科技股份有限公司 ***更新方法、装置、电子设备和计算机可读存储介质

Families Citing this family (11)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
JP5098700B2 (ja) * 2008-03-03 2012-12-12 沖電気工業株式会社 情報通信システムのファイル交換装置およびファイル交換方法
JP5481845B2 (ja) * 2008-12-04 2014-04-23 日本電気株式会社 情報処理システム、サービス提供方法、装置及びプログラム
JP5293141B2 (ja) * 2008-12-16 2013-09-18 日本電気株式会社 冗長システム
JP2011253242A (ja) * 2010-05-31 2011-12-15 Fujitsu Ltd 二重化システム、現用装置、待機装置及びデータ更新方法
EP2583178A1 (de) * 2010-08-19 2013-04-24 Siemens Aktiengesellschaft Vorrichtung und verfahren zum steuern einer maschine mit codiertem und nicht codiertem programmcode
JP5845571B2 (ja) * 2010-11-30 2016-01-20 富士通株式会社 計算システムおよび計算システム管理方法
JP5501259B2 (ja) * 2011-01-25 2014-05-21 三菱電機株式会社 データファイル管理装置
JP5449229B2 (ja) * 2011-02-17 2014-03-19 日本電信電話株式会社 呼救済システム及び呼救済方法
JP6314528B2 (ja) * 2014-02-20 2018-04-25 富士通株式会社 情報処理装置及び更新方法
JP2017126139A (ja) * 2016-01-13 2017-07-20 アツミ電氣株式会社 警備センターシステム及び警備センターシステムの動作方法
US10474475B2 (en) * 2016-03-02 2019-11-12 Western Digital Technologies, Inc. Non-intrusive restart of a task manager

Family Cites Families (8)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
JPH11191069A (ja) * 1997-12-26 1999-07-13 Fujitsu Ltd 二重化装置のファイル更新方法
JPH11203157A (ja) * 1998-01-13 1999-07-30 Fujitsu Ltd 冗長装置
JP2000353106A (ja) * 1999-06-11 2000-12-19 Nec Commun Syst Ltd データ引き継ぎ装置および方法
JP2001142762A (ja) * 1999-11-12 2001-05-25 Nec Corp 二重化データベースのデータ連携装置
JP3601777B2 (ja) * 2000-06-02 2004-12-15 日本電気株式会社 コールエージェント用呼制御データの集中管理方法及びシステム
US7305672B2 (en) * 2004-01-06 2007-12-04 International Business Machines Corporation Dynamic software update system, method and program product
US7461100B2 (en) * 2004-05-27 2008-12-02 International Business Machines Corporation Method for fast reverse restore
JP2006285448A (ja) * 2005-03-31 2006-10-19 Oki Electric Ind Co Ltd 冗長システム

Cited By (5)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
CN107360218A (zh) * 2017-06-22 2017-11-17 浙江力石科技股份有限公司 一种面向智慧旅游的大数据一体化并行存储调度方法及***
CN107360218B (zh) * 2017-06-22 2020-06-02 浙江力石科技股份有限公司 面向智慧旅游的大数据一体化并行存储调度方法及***
CN110412907A (zh) * 2019-06-11 2019-11-05 武汉欣叶电子科技有限公司 一种香氛发生器、车载香氛控制***及方法
CN111666091A (zh) * 2020-06-12 2020-09-15 成都极米科技股份有限公司 ***更新方法、装置、电子设备和计算机可读存储介质
CN111666091B (zh) * 2020-06-12 2023-08-29 成都极米科技股份有限公司 ***更新方法、装置、电子设备和计算机可读存储介质

Also Published As

Publication number Publication date
CN101046758B (zh) 2010-12-08
US20070288532A1 (en) 2007-12-13
JP2007264979A (ja) 2007-10-11
JP4710688B2 (ja) 2011-06-29

Similar Documents

Publication Publication Date Title
CN101046758A (zh) 冗余***的文件更新方法
CN1291320C (zh) 保存大容量存储***的所选数据的快照
TWI428830B (zh) 將機器轉換至虛擬機器的方法及電腦程式產品
JP2007164305A (ja) ブート制御方法および計算機システム並びにその処理プログラム
US20140053149A1 (en) Fast and automatic deployment method for cluster system
US20070276897A1 (en) Method of deploying a production environment using a development environment
JP2012252704A (ja) 仮想マシンテンプレートの更新システム及びその方法
US20160147603A1 (en) Allocation of replica-sets in a storage cluster
CN1812345A (zh) 虚拟化网络存储***及其网络存储设备
CN101055537A (zh) 存储***以及数据管理方法
CN1500243A (zh) 使用可移动存储器收集和恢复用户环境数据
JP2008015768A (ja) 記憶システム並びにこれを用いたデータの管理方法
JP2009064178A (ja) ストレージ装置及びデータの管理方法
WO2010073444A1 (ja) バスコントローラ及び初期ブートプログラムのパッチ方法
WO2010116473A1 (ja) 管理サーバ、ブートサーバ、ネットワークブートシステム、ネットワークブート方法、ブートイメージ選択プログラムおよびブートイメージ提供プログラム
JP2009020886A (ja) Otaプログラミングのためのシステム及び方法
JP2008065392A (ja) ストレージ装置及びこれを用いたデータのバックアップ方法
JP2006252437A (ja) パッチ適用方式及びパッチ適用方法
CN110109782A (zh) 一种故障PCIe设备的更换方法、装置及***
CN1889042A (zh) 一种终端升级方法及***
WO2014147817A1 (ja) 情報処理装置、プログラム更新方法、及びプログラム
CN101079758A (zh) 数据的核查方法、装置及***
JP5056504B2 (ja) 制御装置、情報処理システム、情報処理システムの制御方法および情報処理システムの制御プログラム
JP4914035B2 (ja) 計算機および退避復元プログラム
JP6482211B2 (ja) 情報処理装置、その制御方法、及びプログラム

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