JP4435142B2 - Cluster system and synchronization method - Google Patents
Cluster system and synchronization method Download PDFInfo
- Publication number
- JP4435142B2 JP4435142B2 JP2006325033A JP2006325033A JP4435142B2 JP 4435142 B2 JP4435142 B2 JP 4435142B2 JP 2006325033 A JP2006325033 A JP 2006325033A JP 2006325033 A JP2006325033 A JP 2006325033A JP 4435142 B2 JP4435142 B2 JP 4435142B2
- Authority
- JP
- Japan
- Prior art keywords
- computer
- update
- information
- data
- area
- 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
Links
Images
Description
本発明は、稼動系計算機で障害が発生した場合に、当該稼動系計算機で開始されているサービスを待機系計算機が引き継ぐクラスタシステムに係り、特に稼動系計算機及び待機系計算機の各々がデータ記憶手段を有するクラスタシステムにおいて、当該データ記憶手段のデータを同期化するのに好適なクラスタシステム及び同期化方法に関する。 The present invention relates to a cluster system in which a standby computer takes over a service started by an active computer when a failure occurs in the active computer. The present invention relates to a cluster system and a synchronization method suitable for synchronizing data stored in the data storage means.
従来から、システムの可用性を高める計算機システムとして、同一のサービスを提供可能な複数の計算機を含むクラスタシステムが知られている。この種のクラスタシステムでは、現在サービスを提供している計算機に障害が発生した場合、他の正常な計算機が当該サービスを開始する。このサービスの引き継ぎにより、サービスが使用不能になる時間を最小限にすることができる。 2. Description of the Related Art Conventionally, a cluster system including a plurality of computers capable of providing the same service is known as a computer system that increases system availability. In this type of cluster system, when a failure occurs in a computer that currently provides a service, another normal computer starts the service. By taking over this service, the time during which the service becomes unavailable can be minimized.
障害が発生した計算機から他の計算機がサービスを引き継ぐためには、各計算機がサービスを続行する上で必要となるデータを共有する必要がある。このデータ共有方式の1つとして、クラスタシステムに含まれる全ての計算機(ノード)が同じデータを個々に保持する分散共有方式が知られている。 In order for another computer to take over the service from the computer in which the failure has occurred, it is necessary for each computer to share data necessary for continuing the service. As one of the data sharing methods, a distributed sharing method is known in which all computers (nodes) included in a cluster system individually hold the same data.
分散共有方式を適用するクラスタシステムでは、あるノードにおいてデータの更新が発生した際には、当該ノードからクラスタシステム内の他のノードにネットワークを介して更新情報が送信される。この更新情報により、クラスタシステム内の他のノードにおいても上記あるノードでのデータ更新と同一のデータ更新が行われる。これにより、システム内の全てのノードが保持するデータの一致化(同期化)が図られる。このような、システム内の全てのノードが保持するデータを同期化させる仕組みは、例えば特許文献1に記載されている。
クラスタシステムでは、サービスを提供しているノード(計算機)の障害に備えて待機しているノード(待機系ノード)が存在する。待機系ノードが障害の発生により停止すると、その停止期間に他のノードで発生するデータ更新は当該待機系ノードに反映されない。このため、待機系ノードは、障害から復帰した場合に、他のノードからデータを送信してもらうことにより自身が保持するデータを他のノードのデータに一致化させる同期化処理を行う必要がある。この同期化処理が完了するまでの間は、たとえサービスを提供しているノード(稼動系ノード)に障害が発生しても、待機系ノードは当該待機系ノードが保持しているデータを利用できず当該サービスを引き継ぐ状態には至らない。 In a cluster system, there is a node (standby node) that is waiting for a failure of a node (computer) that provides a service. When the standby node stops due to the occurrence of a failure, data updates that occur in other nodes during the stop period are not reflected on the standby node. For this reason, when the standby node recovers from the failure, it is necessary to perform a synchronization process for matching the data held by the standby node with the data of the other node by having the data transmitted from the other node. . Until this synchronization process is completed, even if a failure occurs in the node providing the service (active node), the standby node can use the data held by the standby node. Therefore, the service will not be taken over.
本発明は上記事情を考慮してなされたものでその目的は、待機系計算機の障害からの復帰時に行われる同期化処理が完了する前でも、当該待機系計算機が稼動系計算機からサービスを引き継ぐことが可能となるクラスタシステム及び同期化処理方法を提供することにある。 The present invention has been made in consideration of the above circumstances, and its purpose is that the standby computer takes over the service from the active computer even before the synchronization processing performed at the time of recovery from the failure of the standby computer is completed. It is an object of the present invention to provide a cluster system and a synchronization processing method.
本発明の1つの観点によれば、第1及び第2の計算機のいずれか1つが所定のサービスの提供に関して稼動系計算機として機能すると共に、前記第1及び第2の計算機の残りが待機系計算機として機能し、前記稼動系計算機で障害が発生した場合に、当該稼動系計算機で開始されているサービスを前記待機系計算機が引き継ぐクラスタシステムが提供される。このクラスタシステムの第1及び第2の計算機の各々は、データを記憶するデータ記憶手段と、前記稼動系計算機として機能している状態でデータ更新が発生した前記データ記憶手段の領域の情報を、前記待機系計算機でのデータ更新に未反映の領域を表す更新反映待ち情報として記憶する更新反映待ち情報記憶手段と、前記発生したデータ更新を前記待機系計算機に反映させるための更新要求情報を当該待機系計算機に送信する更新要求情報送信手段と、前記待機系計算機として機能している状態で前記稼動系計算機で発生したデータ更新が当該待機系計算機に反映されていない領域の情報を未更新領域情報として記憶する未更新領域情報記憶手段と、前記待機系計算機として機能している状態で前記稼動系計算機の前記更新要求情報送信手段から送信された更新要求情報を受信して、当該稼動系計算機で発生したデータ更新を当該更新要求情報に基づいて前記待機系計算機の前記データ記憶手段に反映させて、当該データ更新が反映された領域の更新領域情報を当該稼動系計算機に通知すると共に、当該データ更新が反映された領域に対応する未更新領域情報が前記待機系計算機の前記未更新領域情報記憶手段に記憶されている場合には当該未更新領域情報を削除する更新要求情報受信手段と、前記更新要求情報に対して前記待機系計算機の前記更新要求情報受信手段から前記稼動系計算機に更新領域情報が通知された場合、当該更新領域情報の示す領域に対応する更新反映待ち情報を当該稼動系計算機の前記更新反映待ち情報記憶手段から削除する更新反映待ち手段と、前記待機系計算機として機能している状態で障害が発生して当該待機系計算機が一旦動作を停止し、その後障害から復旧した場合に、前記稼動系計算機に対して同期化処理の開始を要求して、当該稼動系計算機の前記更新反映待ち情報記憶手段に記憶されている更新反映待ち情報を当該稼動系計算機から取得して、当該更新反映待ち情報を未更新領域情報として前記待機系計算機の前記未更新領域情報記憶手段に格納する組み込み要求手段と、前記稼動系計算機として機能している状態で前記待機系計算機の前記組み込み要求手段から同期化処理の開始が要求された場合、当該稼動系計算機の前記更新反映待ち情報記憶手段に記憶されている更新反映待ち情報を当該組み込み要求手段に送信すると共に、当該更新反映待ち情報によって表される領域のデータを当該稼動系計算機の前記データ記憶手段から読み出し、当該データにより前記待機系計算機の前記データ記憶手段の対応する領域のデータを更新させるための同期化処理に必要な更新要求情報を当該待機系計算機の前記更新要求情報受信手段に送信する組込要求受理手段とを具備する。 According to one aspect of the present invention, one of the first and second computers functions as an active computer with respect to providing a predetermined service, and the rest of the first and second computers are standby computers. When a failure occurs in the active computer, a cluster system is provided in which the standby computer takes over the service started by the active computer. Each of the first and second computers of the cluster system includes data storage means for storing data, and information on the area of the data storage means in which data update has occurred while functioning as the active computer. Update reflection wait information storage means for storing as update reflection wait information representing an area not reflected in data update in the standby computer, and update request information for reflecting the generated data update in the standby computer Update request information transmitting means for transmitting to the standby computer, and information on an area in which data update generated in the active computer is not reflected in the standby computer in a state of functioning as the standby computer is an unupdated area Unupdated area information storage means for storing information, and transmission of the update request information of the active computer in a state of functioning as the standby computer The update request information transmitted from the stage is received, the data update generated in the active computer is reflected in the data storage means of the standby computer based on the update request information, and the data update is reflected The updated area information of the updated area is notified to the active computer, and the unupdated area information corresponding to the area in which the data update is reflected is stored in the unupdated area information storage unit of the standby computer When the update area information is notified from the update request information receiving means for deleting the unupdated area information to the active computer from the update request information receiving means of the standby computer with respect to the update request information, Update reflection waiting means for deleting update reflection waiting information corresponding to the area indicated by the update area information from the update reflection waiting information storage means of the active computer; and When a failure occurs when the computer is functioning as a computer, the standby computer temporarily stops operating, and then recovers from the failure, requesting the active computer to start synchronization processing The update reflection wait information stored in the update reflection wait information storage means of the active computer is acquired from the active computer, and the update reflection wait information is used as unupdated area information to determine whether the standby computer When the start of synchronization processing is requested from the built-in request unit stored in the update area information storage unit and the built-in request unit of the standby computer in a state of functioning as the active system computer, The update reflection waiting information stored in the update reflection waiting information storage means is transmitted to the incorporation request means, and the area represented by the update reflection waiting information Is read from the data storage unit of the active computer, and update request information necessary for synchronization processing for updating the data in the corresponding area of the data storage unit of the standby computer is updated with the data. Embedded request receiving means for transmitting to the update request information receiving means of the system computer.
本発明によれば、待機系計算機での同期化処理の開始に際して、稼動系計算機から取得される更新反映待ち領域の情報(更新反映待ち情報)が未更新領域情報として未更新領域情報記憶手段に記憶される。このため待機系計算機は、同期化処理が完了する前に稼動系計算機で障害が発生した場合でも、未更新領域情報記憶手段に記憶されている未更新領域情報に基づいて未更新領域を確認できるため、当該稼動系計算機で開始されていたサービスを速やかに引き継ぐことが可能となる。 According to the present invention, at the start of the synchronization processing in the standby computer, the update reflection waiting area information (update reflection waiting information) acquired from the active computer is stored in the unupdated area information storage means as unupdated area information. Remembered. Therefore, the standby computer can check the unupdated area based on the non-updated area information stored in the non-updated area information storage unit even if a failure occurs in the active system before the synchronization processing is completed. Therefore, it is possible to quickly take over the service that has been started on the active computer.
以下、本発明の実施の形態につき図面を参照して説明する。
[第1の実施形態]
図1は本発明の第1の実施形態に係るクラスタシステムの構成を示すブロック図である。このクラスタシステムは、例えば2台の計算機(ノード)10-1及び10-2から構成されるものとする。なお、クラスタシステムが3台以上の計算機(ノード)から構成されていても構わない。ノード10-1及び10-2は、ネットワークのような通信路11によって相互接続されている。
Embodiments of the present invention will be described below with reference to the drawings.
[First Embodiment]
FIG. 1 is a block diagram showing a configuration of a cluster system according to the first embodiment of the present invention. This cluster system is composed of, for example, two computers (nodes) 10-1 and 10-2. Note that the cluster system may be composed of three or more computers (nodes). The nodes 10-1 and 10-2 are interconnected by a
図1の状態では、あるサービスの提供に関して、ノード10-1が稼動系として機能し、ノード10-2が待機系として機能しているものとする。この状態において、別のサービスに関して、ノード10-2が稼動系として機能し、ノード10-1が待機系として機能することもある。但し、以下の説明では、便宜的にノード10-1が稼動系ノードであり、ノード10-2が待機系ノードであるとする。なお図1では、サービスの提供を受けるクライアント端末は省略されている。 In the state of FIG. 1, it is assumed that the node 10-1 functions as an active system and the node 10-2 functions as a standby system for providing a certain service. In this state, for another service, the node 10-2 may function as an active system, and the node 10-1 may function as a standby system. However, in the following description, for the sake of convenience, it is assumed that the node 10-1 is an active node and the node 10-2 is a standby node. In FIG. 1, a client terminal that receives service provision is omitted.
ノード10-1及び10-2は、それぞれ、クラスタ制御部100-1及び100-2を有する。クラスタ制御部100-1及び100-2は、ノード10-1及び10-2の一方(1つ)が稼動系となって、他方(残り)が待機系となるように、通信路11を介して互いに合意をとりながら動作する。クラスタ制御部100-1及び100-2は、障害検知部101-1及び101-2を有する。障害検知部101-1及び101-2は、通信路11を介して互いに通信を行うことにより、それぞれノード10-2及び10-1の障害を検知する。
The nodes 10-1 and 10-2 have cluster control units 100-1 and 100-2, respectively. The cluster control units 100-1 and 100-2 are connected via the
ノード10-1及び10-2は、それぞれ、データ記憶部102-1及び102-2と、更新反映待ち情報記憶部103-1及び103-2と、未更新領域情報記憶部104-1及び104-2とを有する。本実施形態において、データ記憶部102-1及び102-2は、それぞれハードディスクドライブのようなディスク記憶装置上に確保される。一方、更新反映待ち情報記憶部103-1及び103-2と、未更新領域情報記憶部104-1及び104-2とは、それぞれ書き換え可能な不揮発性メモリ内に確保される。なお、更新反映待ち情報記憶部103-1及び103-2と、未更新領域情報記憶部104-1及び104-2とが、それぞれディスク記憶装置上に確保されても構わない。 The nodes 10-1 and 10-2 include data storage units 102-1 and 102-2, update reflection waiting information storage units 103-1 and 103-2, and unupdated area information storage units 104-1 and 104, respectively. -2. In the present embodiment, the data storage units 102-1 and 102-2 are each secured on a disk storage device such as a hard disk drive. On the other hand, the update reflection waiting information storage units 103-1 and 103-2 and the non-updated area information storage units 104-1 and 104-2 are secured in rewritable nonvolatile memories, respectively. The update reflection waiting information storage units 103-1 and 103-2 and the unupdated area information storage units 104-1 and 104-2 may be secured on the disk storage device, respectively.
データ記憶部102-1及び102-2は、稼動系が提供するサービス105からの要求によって更新/参照されるデータを記憶する。データ記憶部102-1及び102-2の記憶領域は、複数の一定サイズの領域(ブロック、部分領域)に分割して管理される。各領域には、連続する番号であるアドレスが割り当てられる。図1では、作図の都合上、データ記憶部102-1及び102-2の記憶領域が9つの領域に分割して管理される例が示されている。この9つの領域には、図1に示されるように、それぞれアドレス1乃至9が割り当てられているものとする。
The data storage units 102-1 and 102-2 store data that is updated / referenced by a request from the
ノード10-1が稼動系である図1の例では、当該ノード10-1でサービス105が開始されている。サービス105は、データの変更(更新)が必要な場合には更新要求情報106を発行し、データの参照が必要な場合には参照要求情報107を発行する。
In the example of FIG. 1 in which the node 10-1 is an active system, the
図2は更新要求情報106及び参照要求情報107のデータ構造例を示す。ここでは更新要求情報106は、更新領域情報と更新データとから構成される。更新領域情報は、データ記憶部102-1内の更新の対象となる領域範囲を指定する。本実施形態において更新領域情報は、更新の対象となる領域範囲の先頭領域のアドレス(開始アドレス)及び最終領域のアドレス(終了アドレス)から構成される。なお、更新領域情報が、開始アドレス及び領域数から構成されていても構わない。一方、参照要求情報107は、参照領域情報から構成される。参照領域情報は、データ記憶部102-1内の参照の対象となる領域範囲を指定する。本実施形態において参照領域情報は、参照の対象となる領域範囲の開始アドレス及び終了アドレスから構成される。参照領域情報が、開始アドレス及び領域数から構成されていても構わない。
FIG. 2 shows an example of the data structure of the
更新反映待ち情報記憶部103-1及び103-2は、キュー構造の更新反映待ち情報(更新反映待ち情報キュー)を記憶する。更新反映待ち情報キューは、更新要求情報中の更新領域情報の待ち行列である。ここでは、ノード10-1または10-2が稼動系として機能している状態で、当該ノード10-1または10-2で更新要求情報に基づいてデータ記憶部102-1または102-2の領域に対するデータ更新が発生した場合に、その領域の情報(更新領域情報)が、待機系ノードでのデータ更新に未反映の領域を表す更新反映待ち情報として、更新反映待ち情報記憶部103-1及び103-2内の更新反映待ち情報キューにつながれる(追加される)。未更新領域情報記憶部104-1及び104-2は、未更新の領域を示す情報(未更新領域情報)を記憶する。 The update reflection wait information storage units 103-1 and 103-2 store update reflection wait information (update reflection wait information queue) having a queue structure. The update reflection wait information queue is a queue of update area information in the update request information. Here, in a state where the node 10-1 or 10-2 functions as an active system, the area of the data storage unit 102-1 or 102-2 based on the update request information in the node 10-1 or 10-2. When a data update occurs for the update update wait information storage unit 103-1 and the update area information (update area information) as update reflection wait information indicating an area not yet reflected in the data update in the standby node. It is connected (added) to the update reflection waiting information queue in 103-2. The unupdated area information storage units 104-1 and 104-2 store information indicating unupdated areas (unupdated area information).
ノード10-1は、データ要求監視部108を有する。データ要求監視部108はノード10-1が稼動系の場合に、サービス105によって発行される更新要求情報106及び参照要求情報107を監視する。データ要求監視部108は、更新要求情報106を検知したときは、当該更新要求情報106に従ってデータ記憶部102-1内の該当する領域のデータを更新し、当該更新要求情報106を後述する更新要求情報送信部109-1に渡す。なお、図1では省略されているが、ノード10-2には、データ要求監視部108に相当するデータ要求監視部が設けられている。但し、ノード10-2のデータ要求監視部は、当該ノード10-2が待機系の状態では動作しない。
The node 10-1 has a data
ノード10-1及び10-2は、それぞれ、更新要求情報送信部109-1及び109-2と、更新要求情報受信部110-1及び110-2と、更新反映待ち部111-1及び111-2と、組込要求部112-1及び112-2と、組込要求受理部113-1及び113-2とを有する。 The nodes 10-1 and 10-2 respectively include update request information transmitting units 109-1 and 109-2, update request information receiving units 110-1 and 110-2, and update reflection waiting units 111-1 and 111-. 2, incorporation request units 112-1 and 112-2, and incorporation request reception units 113-1 and 113-2.
ノード10-1の更新要求情報送信部109-1は、データ要求監視部108から更新要求情報106を渡された場合、当該更新要求情報106に含まれている更新領域情報を更新反映待ち情報記憶部103-1に追加する。更新要求情報送信部109-1は、ノード10-1以外の更新要求情報受信部(ここでは、ノード10-2の更新要求情報受信部110-2)に、更新要求情報106を送信する。
When receiving the
更新要求情報送信部109-1は、更新反映待ち情報記憶部103-1に格納されている更新反映待ち情報が組込要求受理部113-1によってノード10-2の組込要求部112-2に送信された場合、当該更新反映待ち情報の示す領域のデータ(更新済みデータ)をデータ記憶部102-1から取得する。更新要求情報送信部109-1は、更新反映待ち情報(更新領域情報)と取得されたデータとを含む更新要求情報を生成して、当該更新要求情報をノード10-2の更新要求情報受信部110-2に送信する。 The update request information transmission unit 109-1 receives the update reflection wait information stored in the update reflection wait information storage unit 103-1 from the incorporation request reception unit 113-1 and includes the integration request unit 112-2 of the node 10-2. In this case, the data (updated data) in the area indicated by the update reflection waiting information is acquired from the data storage unit 102-1. The update request information transmitting unit 109-1 generates update request information including update reflection waiting information (update area information) and the acquired data, and the update request information is received by the update request information receiving unit of the node 10-2 To 110-2.
ノード10-2の更新要求情報送信部109-2も、当該ノード10-2が稼動系ノードの場合に、上述の更新要求情報送信部109-1と同様の動作を行う。 The update request information transmitting unit 109-2 of the node 10-2 performs the same operation as the above-described update request information transmitting unit 109-1 when the node 10-2 is an active node.
ノード10-2の更新要求情報受信部110-2は、ノード10-1の更新要求情報送信部109-1から更新要求情報が送信された場合に当該更新要求情報を受信して、データ記憶部102-1に格納されているデータを当該更新要求情報に従って更新する。更新要求情報受信部110-2は、受信された更新要求情報に含まれている更新領域情報と同一の未更新領域情報が未更新領域情報記憶部104-2に格納されている場合に、当該未更新領域情報を未更新領域情報記憶部104-2から削除する。更新要求情報受信部110-2は更新要求情報に従うデータ更新の完了後に、当該更新要求情報に含まれている更新領域情報をノード10-1の更新反映待ち部111-1に通知する。ノード10-1の更新要求情報受信部110-1も、当該ノード10-1が待機系ノードであって、且つノード10-2の更新要求情報送信部109-2から更新要求情報が送信された場合に、上述の更新要求情報受信部110-2と同様の動作を行う。 The update request information receiving unit 110-2 of the node 10-2 receives the update request information when the update request information is transmitted from the update request information transmitting unit 109-1 of the node 10-1, and the data storage unit The data stored in 102-1 is updated according to the update request information. The update request information receiving unit 110-2, when the non-updated area information identical to the update area information included in the received update request information is stored in the unupdated area information storage unit 104-2, Unupdated area information is deleted from the unupdated area information storage unit 104-2. After completing the data update according to the update request information, the update request information receiving unit 110-2 notifies the update reflection waiting unit 111-1 of the node 10-1 of the update area information included in the update request information. The update request information receiving unit 110-1 of the node 10-1 also receives the update request information from the update request information transmitting unit 109-2 of the node 10-2 when the node 10-1 is a standby node. In this case, the same operation as the update request information receiving unit 110-2 described above is performed.
ノード10-2の組込要求部112-2は、ノード10-2が待機系として動作している状態で当該ノード10-2(つまり待機系ノード)に障害が発生して当該ノード10-2が停止し、その後障害から復旧して再度動作を開始して同期化処理が開始される際に動作する。組込要求部112-2は、ノード10-2が障害から復旧した待機系ノードである場合に、稼動系ノード10-1の組込要求受理部113-1に同期化処理の開始を要求する。組込要求部112-2は、ノード10-1の組込要求受理部113-1から同期化処理の開始要求に対する応答として更新反映待ち情報を受け取った場合に、当該更新反映待ち情報を未更新領域情報記憶部104-2に反映する。ノード10-1の組込要求部112-1も、当該ノード10-1が待機系ノードであって、且つ当該ノード10-1に障害が発生して当該ノード10-1が停止し、その後障害から復旧して再度動作を開始して同期化処理が開始される際に、上述の組込要求部112-2と同様の動作を行う。 The integration request unit 112-2 of the node 10-2 causes a failure in the node 10-2 (that is, the standby node) while the node 10-2 is operating as a standby system, and the node 10-2 Stops, then recovers from the failure and starts again to start the synchronization process. When the node 10-2 is a standby node that has recovered from a failure, the integration request unit 112-2 requests the integration request reception unit 113-1 of the active node 10-1 to start the synchronization process. . When the update request wait information is received as a response to the synchronization processing start request from the request to receive synchronization 113-1 of the node 10-1, the update request wait information 112-2 is not updated. This is reflected in the area information storage unit 104-2. The integration request unit 112-1 of the node 10-1 also has a failure in the node 10-1 when the node 10-1 is a standby node, and the node 10-1 is stopped. When the synchronization processing is started after the operation is resumed and the operation is started again, the same operation as the above-described incorporation request unit 112-2 is performed.
ノード10-1の組込要求受理部113-1は、ノード10-2の組込要求部112-2から同期化処理の開始が要求された場合、更新反映待ち情報記憶部103-1に格納されている更新反映待ち情報を当該組込要求部112-2に送信する。このとき更新要求情報送信部109-1は、更新反映待ち情報記憶部103-1に格納されている更新反映待ち情報を先頭から順に取り出し、更新反映待ち情報の示す領域のデータ(更新済みデータ)をデータ記憶部102-1から取得する。更新要求情報送信部109-1は、更新反映待ち情報(更新領域情報)と取得されたデータとを含む更新要求情報を生成して、当該更新要求情報を更新要求情報受信部110-2に送信する。更新要求情報送信部109-1は、たとえノード10-1のサービス105が停止しても、更新反映待ち情報記憶部103-1に情報が格納されている限り動作する。ノード10-2の組込要求受理部113-2も、当該ノード10-2が稼動系ノードであって、且つノード10-1の組込要求部112-1から同期化処理の開始が要求された場合に、上述の組込要求受理部113-1と同様の動作を行う。この点は、ノード10-2の更新要求情報送信部109-2についても同様である。
The integration request reception unit 113-1 of the node 10-1 stores in the update reflection waiting information storage unit 103-1 when the synchronization request is started from the integration request unit 112-2 of the node 10-2. The updated reflection waiting information is transmitted to the incorporation request unit 112-2. At this time, the update request information transmission unit 109-1 sequentially extracts the update reflection wait information stored in the update reflection wait information storage unit 103-1 from the head, and data in the area indicated by the update reflection wait information (updated data) Is acquired from the data storage unit 102-1. The update request information transmitting unit 109-1 generates update request information including update reflection waiting information (update region information) and the acquired data, and transmits the update request information to the update request information receiving unit 110-2. To do. Even if the
次に、図1のクラスタシステムにおける動作について、図3のフローチャートを参照して説明する。
まず、サービス105の実行に関して、ノード10-1が稼動系ノードとして機能し、ノード10-2が待機系ノードとして機能しているものとする。つまりノード10-1において、サービス105が開始されているものとする。
Next, the operation of the cluster system of FIG. 1 will be described with reference to the flowchart of FIG.
First, regarding execution of the
ノード10-1のデータ要求監視部108は、サービス105がデータ記憶部102-1に格納されているデータを更新または参照するために当該サービス105によって発行される要求情報を監視する(ステップS1)。データ要求監視部108は、サービス105によって要求情報が発行されたことを検知した場合、当該要求情報の種類を判定する(ステップS2)。即ちデータ要求監視部108は、検知された要求情報が更新要求情報106及び参照要求情報107のいずれであるかを判定する。
The data request monitoring
もし、更新要求情報106である場合、データ要求監視部108は当該更新要求情報106に従って、データ記憶部102-1内の該当する領域のデータを更新する(ステップS3)。次にデータ要求監視部108は、データ更新に用いられた更新要求情報106を更新要求情報送信部109-1に送出する(ステップS4)。この場合、データ要求監視部108はステップS1に戻って、サービス105によって発行される要求情報を監視する。
If it is the
更新要求情報送信部109-1は、データ要求監視部108によって送出された更新要求情報106を受け取ると(ステップS11)、更新反映待ち情報記憶部103-1に当該更新要求情報106中の更新領域情報を更新反映待ち情報として追加する(ステップS12)。ここでは、更新要求情報106中の更新領域情報は、更新反映待ち情報記憶部103-1に格納されている更新反映待ち情報キューの最後尾につながれる。更新要求情報送信部109-1は、受け取った更新要求情報106を当該更新要求情報送信部109-1を有するノード以外(つまり他のノード)の更新要求情報受信部に通信路11を介して送信する(ステップS13)。ここでは、更新要求情報106はノード10-2の更新要求情報受信部110-2に送信される。更新要求情報送信部109-1は、ステップS13を実行すると、データ要求監視部108からの新たな更新要求情報106を待つ。
When the update request information transmission unit 109-1 receives the
更新要求情報受信部110-2は、更新要求情報送信部109-1から更新要求情報106を受け取ると(ステップS21)、当該更新要求情報106に従ってデータ記憶部102-2内の該当する領域のデータを更新する(ステップS22)。次に更新要求情報受信部110-2は、データ更新に用いられた更新要求情報106に含まれている更新領域情報と同一の領域(アドレス)を示す未更新領域情報が未更新領域情報記憶部104-2に格納されているかを判定する(ステップS23)。つまり更新要求情報受信部110-2は、ステップS22でデータ更新されたデータ記憶部102-1内の領域が、未更新領域情報記憶部104-2に格納されている未更新領域情報によってデータ未更新の領域として示されているかを判定する。
When receiving the
もし、データ更新された領域がデータ未更新の領域であると未更新領域情報によって示されている場合、更新要求情報受信部110-2は当該未更新領域情報を未更新領域情報記憶部104-2から削除する(ステップS24)。そして更新要求情報受信部110-2は、ノード10-1の更新反映待ち部111-1に通信路11を介して更新領域情報を返すことにより更新完了を通知する(ステップS25)。これに対し、データ更新された領域に関する未更新領域情報が未更新領域情報記憶部104-2に格納されていない場合(ステップS23)、更新要求情報受信部110-2はステップS24をスキップして、更新反映待ち部111-1に更新完了を通知する(ステップS25)。この場合、更新要求情報受信部110-2はステップS21に戻って、ノード10-1の更新要求情報送信部109-1から新たな更新要求情報106が送信されるのを待つ。
If the data updated area is indicated by the unupdated area information that the data has not been updated, the update request information receiving unit 110-2 stores the unupdated area information in the unupdated area information storage unit 104-. Delete from 2 (step S24). Then, the update request information receiving unit 110-2 notifies the update completion by returning the update area information to the update reflection waiting unit 111-1 of the node 10-1 via the communication path 11 (step S25). On the other hand, when the non-updated area information regarding the data-updated area is not stored in the non-updated area information storage unit 104-2 (step S23), the update request information receiving unit 110-2 skips step S24. Then, the update reflection waiting unit 111-1 is notified of the update completion (step S25). In this case, the update request information receiving unit 110-2 returns to step S21 and waits for new
更新反映待ち部111-1は、ノード10-2の更新要求情報受信部110-2から更新完了の通知を受け取ると(ステップS31)、当該更新要求情報受信部110-2によってデータ更新された領域と同一の領域を指定する更新領域情報を更新反映待ち情報記憶部103-1から削除する(ステップS32)。そして、更新反映待ち部111-1はステップS31に戻って、更新要求情報受信部110-2からの新たな更新完了の通知を待つ。 When the update reflection waiting unit 111-1 receives an update completion notification from the update request information receiving unit 110-2 of the node 10-2 (step S31), the data updated by the update request information receiving unit 110-2 The update area information designating the same area as is deleted from the update reflection waiting information storage unit 103-1 (step S32). Then, the update reflection waiting unit 111-1 returns to step S31 and waits for a new update completion notification from the update request information receiving unit 110-2.
一方、ステップS1で検知された要求情報が参照要求情報107である場合(ステップS2)、データ要求監視部108は当該参照要求情報107の指定する参照領域とアドレスが同一の領域を示す未更新領域情報が未更新領域情報記憶部104-1に格納されているかを判定する(ステップS5)。もし、参照領域と同一の領域を示す未更新領域情報が未更新領域情報記憶部104-1に格納されている場合、データ要求監視部108は参照領域が未更新領域であると判定する。この場合、データ要求監視部108は、参照領域と同一の領域を示す未更新領域情報が未更新領域情報記憶部104-1から削除されるのを待つ(ステップS6)。やがて、参照領域とアドレスが同一の領域を示す未更新領域情報が未更新領域情報記憶部104-1から削除されたものとする。すると、データ要求監視部108は参照要求情報107によって指定されるデータ記憶部102-1の参照領域が未更新領域でなくなったものとして、当該参照領域からデータを読み出して、当該データをサービス105に返す(ステップS7)。そして、データ要求監視部108はステップS1に戻って、サービス105によって発行される要求情報を監視する。
On the other hand, when the request information detected in step S1 is the reference request information 107 (step S2), the data
このような状態で、サービス105の提供に関して待機系ノードとして動作しているノード10-2に障害が発生して当該ノード10-2が停止し、その後当該ノード10-2が障害から復旧して再度動作を開始したものとする。この場合、図1のクラスタシステムでは同期化処理が行われる。この同期化処理について、図4の動作説明図を参照して説明する。
In this state, a failure occurs in the node 10-2 operating as a standby node for providing the
まず、ノード10-2の組込要求部112-2が動作を開始して、ノード10-1の組込要求受理部113-1に対して同期化処理の開始を要求する(ステップS41)。このとき、ノード10-2のデータ記憶部102-2においてアドレス1乃至9が割り当てられている9つの領域(アドレスが1乃至9の9つの領域)にいずれもデータAが格納されているものとする。
First, the incorporation request unit 112-2 of the node 10-2 starts operation, and requests the incorporation request reception unit 113-1 of the node 10-1 to start the synchronization process (step S41). At this time, the data A is stored in all nine areas (the nine
一方、ノード10-1のデータ記憶部102-1におけるアドレスが1乃至9の9つの領域領域のうち、アドレスが2,3,4,5及び8の領域のデータは、ノード10-2が停止していた期間にそれぞれB,B,B,C及びDに更新されているものとする。つまり、データ記憶部102-1においてアドレスが2,3,4,5及び8の領域のデータの更新が、データ記憶部102-2の同じアドレスの領域(同一領域)に反映されていないものとする。この場合、ノード10-1の更新反映待ち情報記憶部103-1には、アドレス2,3,4,5及び8を示す更新反映待ち情報が格納されている。
On the other hand, among the nine area areas with
さて、ノード10-1の組込要求受理部113-1はノード10-2の組込要求部112-2から同期化処理の開始が要求されると(ステップS41)、更新反映待ち情報記憶部103-1に格納されている更新反映待ち情報を、当該同期化処理の開始要求に対する応答として当該組込要求部112-2に送信する(ステップS42)。この更新反映待ち情報は、ノード10-1の更新要求情報送信部109-1からノード10-2の更新要求情報受信部110-2に送信された更新要求情報の示す更新要求に対して、当該更新要求情報受信部110-2から更新完了が通知されていないことを示す。つまり、更新反映待ち情報は、ノード10-2においてデータ更新が完了していない領域の情報であって、ノード10-1でのデータ更新をノード10-2に反映する必要がある領域の情報を示す。 When the integration request reception unit 113-1 of the node 10-1 is requested to start the synchronization process from the integration request unit 112-2 of the node 10-2 (step S41), the update reflection waiting information storage unit The update reflection waiting information stored in 103-1 is transmitted to the integration request unit 112-2 as a response to the synchronization processing start request (step S42). This update reflection waiting information is in response to the update request indicated by the update request information transmitted from the update request information transmitting unit 109-1 of the node 10-1 to the update request information receiving unit 110-2 of the node 10-2. The update request information receiving unit 110-2 indicates that update completion has not been notified. In other words, the update reflection waiting information is information on an area where the data update is not completed in the node 10-2, and information on an area where the data update in the node 10-1 needs to be reflected in the node 10-2. Show.
組込要求部112-2は、組込要求受理部113-1から更新反映待ち情報を受け取ると、当該更新反映待ち情報を未更新領域情報記憶部104-2に反映する(ステップS43)。即ち組込要求部112-2は、組込要求受理部113-1から受け取った更新反映待ち情報を未更新領域情報として未更新領域情報記憶部104-2に追加する。ここでは、アドレス2,3,4,5及び8を示す更新反映待ち情報が未更新領域情報として未更新領域情報記憶部104-2に格納される。
When receiving the update reflection waiting information from the integration request receiving unit 113-1, the incorporation request unit 112-2 reflects the update reflection waiting information in the unupdated area information storage unit 104-2 (step S43). That is, the incorporation request unit 112-2 adds the update reflection waiting information received from the incorporation request reception unit 113-1 to the unupdated area information storage unit 104-2 as unupdated area information. Here, the update reflection waiting information indicating the
この状態で、ノード10-1に障害が発生し、当該ノード10-1で開始されていたサービス105をノード10-2が引き継ぐ必要があるものとする。この場合、従来であれば、同期化処理が完了するまでノード10-2によるサービス105の引き継ぎが待たされる。その理由は、同期化処理が完了するまでは、どの領域のデータが未更新であるか確認する手段がないためである。
In this state, it is assumed that a failure occurs in the node 10-1 and the node 10-2 needs to take over the
これに対して本実施形態では、ノード10-2(の組込要求部112-2)は障害からの復帰時にノード10-1から更新反映待ち情報を取得して、当該更新反映待ち情報を未更新領域情報記憶部104-2に未更新領域情報として反映している。このため、ノード10-2は図4のフローチャートからも明らかなように、未更新領域情報記憶部104-2に格納されている未更新領域情報の示す未更新領域(ここではアドレス2,3,4,5及び8の領域)を参照する処理は行えないものの、その他の領域を参照する処理と全ての領域のデータを更新する処理は行える。よってノード10-2は、サービス105を引き継ぐことができる。未更新領域を参照する処理は、図3のフローチャートに示されるように、未更新領域情報記憶部104-2から当該領域を示す未更新領域情報が削除されるまで、つまり当該領域が未更新領域でなくなるまで待たされる(ステップS6)
さて、ノード10-1の更新要求情報送信部109-1は、更新反映待ち情報記憶部103-1に格納されている更新反映待ち情報が組込要求受理部113-1によってノード10-2の組込要求部112-2に送信された場合にも動作する。この場合、更新要求情報送信部109-1は、更新反映待ち情報記憶部103-1に格納されている更新反映待ち情報を先頭から順に取り出し、当該更新反映待ち情報の示す領域のデータ(更新済みデータ)をデータ記憶部102-1から取得する。更新要求情報送信部109-1は、更新反映待ち情報(更新領域情報)と取得されたデータとを含む更新要求情報を生成して、当該更新要求情報を更新要求情報受信部110-2に送信する。更新要求情報送信部109-1は、たとえノード10-1のサービス105が停止しても、更新反映待ち情報記憶部103-1に情報が格納されている限り動作する。
On the other hand, in this embodiment, the node 10-2 (embedding request unit 112-2) acquires the update reflection waiting information from the node 10-1 at the time of recovery from the failure, and the update reflection waiting information is not yet received. The updated area information storage unit 104-2 reflects it as unupdated area information. Therefore, as is apparent from the flowchart of FIG. 4, the node 10-2 has an unupdated area (in this case, addresses 2, 3 and 3) indicated by the unupdated area information stored in the unupdated area information storage unit 104-2. Although the process of referring to the areas (4, 5 and 8) cannot be performed, the process of referring to other areas and the process of updating the data in all areas can be performed. Therefore, the node 10-2 can take over the
Now, the update request information transmitting unit 109-1 of the node 10-1 receives the update reflection waiting information stored in the update reflection waiting information storage unit 103-1 by the built-in request receiving unit 113-1 of the node 10-2. It also operates when it is transmitted to the incorporation request unit 112-2. In this case, the update request information transmission unit 109-1 sequentially extracts the update reflection wait information stored in the update reflection wait information storage unit 103-1 from the top, and the data in the area indicated by the update reflection wait information (updated) Data) is acquired from the data storage unit 102-1. The update request information transmitting unit 109-1 generates update request information including update reflection waiting information (update region information) and the acquired data, and transmits the update request information to the update request information receiving unit 110-2. To do. Even if the
図4の例では、まず、アドレス2の領域の領域情報(更新領域情報)と当該アドレス2の領域のデータBとを含む更新要求情報が、ノード10-1の更新要求情報送信部109-1からノード10-2の更新要求情報受信部110-2に送信される(ステップS44)。この場合、ノード10-2では、データ記憶部102-2のアドレス2の領域のデータAがデータBに更新される(ステップS45)。すると、ノード10-2の未更新領域情報記憶部104-2から、アドレス2の領域を示す未更新領域情報が削除される(ステップS46)。この段階で、ノード10-2は、アドレス3,4,5及び8の領域を参照する処理は行えないものの、その他の領域を参照する処理と全ての領域のデータを更新する処理を行うことができる。この参照する処理が行えない領域は、未更新領域情報記憶部104-2の内容から判定される。
In the example of FIG. 4, first, update request information including area information (update area information) of the area of
次に、アドレス3の領域の領域情報と当該アドレス3の領域のデータBとを含む更新要求情報が、ノード10-1の更新要求情報送信部109-1からノード10-2の更新要求情報受信部110-2に送信される(ステップS47)。この場合、ノード10-2では、データ記憶部102-2のアドレス3の領域のデータAがデータBに更新される(ステップS48)。すると、ノード10-2の未更新領域情報記憶部104-2から、アドレス3の領域を示す未更新領域情報が削除される(ステップS49)。この段階で、ノード10-2は、アドレス4,5及び8の領域を参照する処理は行えないものの、その他の領域を参照する処理と全ての領域のデータを更新する処理を行うことができる。
Next, the update request information including the area information of the area of
次に、アドレス4の領域の領域情報と当該アドレス3の領域のデータBとを含む更新要求情報が、ノード10-1の更新要求情報送信部109-1からノード10-2の更新要求情報受信部110-2に送信される(ステップS50)。この場合、ノード10-2では、データ記憶部102-2のアドレス4の領域のデータAがデータBに更新される(ステップS51)。すると、ノード10-2の未更新領域情報記憶部104-2から、アドレス4の領域を示す未更新領域情報が削除される(ステップS52)。この段階で、ノード10-2は、アドレス5及び8の領域を参照する処理は行えないものの、その他の領域を参照する処理と全ての領域のデータを更新する処理を行うことができる。
Next, the update request information including the area information of the area of
次に、アドレス5の領域の領域情報と当該アドレス5の領域のデータCとを含む更新要求情報が、ノード10-1の更新要求情報送信部109-1からノード10-2の更新要求情報受信部110-2に送信される(ステップS53)。この場合、ノード10-2では、データ記憶部102-2のアドレス5の領域のデータAがデータCに更新される(ステップS54)。すると、ノード10-2の未更新領域情報記憶部104-2から、アドレス5の領域を示す未更新領域情報が削除される(ステップS55)。この段階で、ノード10-2は、アドレス8の領域を参照する処理は行えないものの、その他の領域を参照する処理と全ての領域のデータを更新する処理を行うことができる。
Next, the update request information including the area information of the area of the
次に、アドレス8の領域の領域情報と当該アドレス8の領域のデータDとを含む更新要求情報が、ノード10-1の更新要求情報送信部109-1からノード10-2の更新要求情報受信部110-2に送信される(ステップS56)。この場合、ノード10-2では、データ記憶部102-2のアドレス8の領域のデータAがデータDに更新される(ステップS57)。すると、ノード10-2の未更新領域情報記憶部104-2から、アドレス8の領域を示す未更新領域情報が削除される(ステップS58)。この段階で、ノード10-2は、全ての領域について、参照する処理とデータを更新する処理を行うことができる。
Next, the update request information including the area information of the area of
このように本実施形態においては、同期化処理の開始に際してノード10-2からノード10-1に与えられる同期化処理開始要求に応じて、ノード10-1からノード10-2に更新反映待ち領域の情報(更新反映待ち情報)を未更新領域情報として送信し、その領域に対する参照要求をノード10-2にてブロックすることで、ノード10-2での同期化処理が完了していない状態でノード10-1に障害が発生しても、ノード10-2は速やかにサービス105を引き継ぐことができる。このように、本実施形態のクラスタシステムにおいては、従来技術に比較してより早くサービスを引き継げる状態となるため、可用性が高くなる。
As described above, in the present embodiment, the update reflection waiting area is transferred from the node 10-1 to the node 10-2 in response to the synchronization process start request given from the node 10-2 to the node 10-1 at the start of the synchronization process. Information (waiting for update reflection) is transmitted as unupdated area information, and the reference request for that area is blocked at the node 10-2, so that the synchronization processing at the node 10-2 has not been completed. Even if a failure occurs in the node 10-1, the node 10-2 can quickly take over the
[第2の実施形態]
図5は本発明の第2の実施形態に係るクラスタシステムの構成を示すブロック図である。図5において、図1と同様の要素には同一参照符号を付してある。図5に示すクラスタシステムの特徴は、図1のノード10-1及び10-2に代えて、当該ノード10-1及び10-2の構成に、それぞれデータ要求部201-1及び201-2と、データ要求受理部202-1及び202-2とが追加されたノード20-1及び20-2が用いられることにある。
[Second Embodiment]
FIG. 5 is a block diagram showing the configuration of the cluster system according to the second embodiment of the present invention. In FIG. 5, the same elements as those in FIG. 5 is different from the nodes 10-1 and 10-2 in FIG. 1 in that the configuration of the nodes 10-1 and 10-2 includes data request units 201-1 and 201-2, respectively. The nodes 20-1 and 20-2 to which the data request receiving units 202-1 and 202-2 are added are used.
次に、図5のクラスタシステムの動作について、図1のクラスタシステムと相違する点を中心に、図6のフローチャートを参照して説明する。
まず、ノード20-1が、ノード20-2で開始されていたサービス105を引き継いで稼動系となったものとする。ここでは、ノード20-1が障害から回復した際に実行される同期化処理が完了しない状態で、当該ノード20-1がサービス105を引き継いだものとする。また、ノード20-1の同期化処理の開始に際して、当該ノード20-1からノード20-2に同期化処理開始要求が与えられることにより、ノード20-2からノード20-1に更新反映待ち情報が未更新領域情報として送信され、その領域に対する参照要求がノード20-1にてブロックされるものとする。これにより、ノード20-1での同期化処理が完了していない状態でノード20-2に障害が発生しても、ノード20-1はサービス105を速やかに引き継ぐことができる。この点は、ノード20-1とノード20-2との関係(稼動系と待機系との関係)が上記第1の実施形態と逆となった点を除けば、当該第1の実施形態と同様である。
Next, the operation of the cluster system of FIG. 5 will be described with reference to the flowchart of FIG. 6, focusing on the differences from the cluster system of FIG.
First, it is assumed that the node 20-1 takes over the
さて、ノード20-1の同期化処理が完了しない状態で、当該ノード20-1がサービス105を引き継いだ本実施形態では、上記第1の実施形態とは逆に、ノード20-1の未更新領域情報記憶部104-1には未更新領域情報が格納され、ノード20-2の更新反映待ち情報記憶部103-2には更新反映待ち情報が格納されている。このような状態でサービス105が開始されているノード20-1(つまり新たに稼動系となったノード20-1)において、図5において矢印51で示されるように、サービス105によって参照要求情報107が発行されたものとする。
In the present embodiment in which the synchronization process of the node 20-1 is not completed and the node 20-1 takes over the
データ要求監視部108は、サービス105によって発行される参照要求情報107を検知したときは(ステップS41,S42)、未更新領域情報記憶部104-1を参照する。もし、参照要求情報107中の参照領域情報の指定する参照領域とアドレスが同一の領域を示す未更新領域情報が未更新領域情報記憶部104-1に格納されているならば(ステップS45)、データ要求監視部108は、参照領域が未更新領域である(つまり参照領域に格納されているデータが未更新データである)と判定する。ここまでの動作は、前記第1の実施形態のステップS1乃至S5と同様である。
When the data
データ要求監視部108は、参照領域が未更新領域であると判定した場合、当該参照領域を指定する参照領域情報を図5において矢印52で示されるようにデータ要求部201-1に渡す(ステップS46)。そしてデータ要求監視部108は、参照領域と同一の領域を示す未更新領域情報が未更新領域情報記憶部104-1から削除されるのを待つ(ステップS47)。
If the data
一方、データ要求監視部108から参照領域情報を渡されたデータ要求部201-1は、当該参照領域情報を図5において矢印53で示されるようにノード20-2のデータ要求受理部202-2に送信して、当該参照領域情報の指定する領域のデータ(更新データ)を要求する(ステップS50)。
On the other hand, the data request unit 201-1 to which the reference area information is passed from the data
データ要求受理部202-2は、データ要求部201-1から参照領域情報を受け取ると、当該参照領域情報によって指定されるデータ記憶部102-2の参照領域から図5において矢印54で示されるようにデータを読み出す(ステップS61)。このデータは、参照要求情報107中の参照領域情報によって指定されるデータ記憶部102-1の参照領域のデータ(未更新データ)に対応する更新データである。
When the data request receiving unit 202-2 receives the reference area information from the data requesting unit 201-1, the data request receiving unit 202-2 is indicated by an
データ要求受理部202-2は、参照領域情報によって指定されるデータ記憶部102-2の参照領域から読み出されたデータと当該参照領域情報に一致する更新領域情報とを含む更新要求情報を生成して、当該更新要求情報を図5において矢印55で示されるようにノード20-1の更新要求情報受信部110-1に送信する(ステップS62)。このデータは、上記第1の実施形態であれば同期化処理でノード20-1のデータ記憶部102-1に反映されるべきデータである。
The data request receiving unit 202-2 generates update request information including data read from the reference region of the data storage unit 102-2 designated by the reference region information and update region information that matches the reference region information. Then, the update request information is transmitted to the update request information receiving unit 110-1 of the node 20-1 as indicated by the
更新要求情報受信部110-1は、データ要求受理部202-2からの更新要求情報を受け取ると、当該更新要求情報に従って、図5において矢印56で示されるようにデータ記憶部102-1内の該当する領域のデータを更新する(ステップS71)。これにより、サービス105からの参照要求情報107中の参照領域情報(つまりデータ要求受理部202-2からの更新要求情報中の更新領域情報)によって指定されるデータ記憶部102-1のデータ(未更新データ)は、当該領域情報によって指定されるデータ記憶部102-2のデータ(更新データ)に一致化される。そこで更新要求情報受信部110-1は、ステップS71でデータが更新された領域と同一の領域を指定する未更新領域情報を、図5において矢印57で示されるように未更新領域情報記憶部104-1から削除する(ステップS72)。
When the update request information receiving unit 110-1 receives the update request information from the data request receiving unit 202-2, the update request information receiving unit 110-1 stores the update request information in the data storage unit 102-1 as indicated by an
データ要求監視部108は、ステップS47の待ち合わせ中に、参照要求情報107中の参照要求情報で指定される領域と同一の領域を指定する未更新領域情報が未更新領域情報記憶部104-1から削除されると、当該領域のデータに関してノード20-1(のデータ記憶部102-1)とノード20-2(のデータ記憶部102-2)との間で一致化されていると判定する。この場合、データ要求監視部108は、参照要求情報107中の参照要求情報で指定されるデータ記憶部102-1の領域からデータを読み出して、図5において矢印58で示されるように当該データをサービス105に返す(ステップS48)。
The data request monitoring
一方、更新要求情報受信部110-1は、データ要求受理部202-2からの更新要求情報に従う更新完了の通知として、当該更新要求情報中の更新領域情報を図5において矢印59で示されるようにノード20-2の更新反映待ち部111-2に返す(ステップS73)。更新反映待ち部111-2は、更新要求情報受信部110-1から更新完了の通知として更新領域情報を受け取ると、当該更新領域情報と同一の領域を指定する更新反映待ち情報を図5において矢印60で示されるように更新反映待ち情報記憶部103-2から削除する(ステップS80)。
On the other hand, the update request information receiving unit 110-1 indicates the update area information in the update request information as indicated by an
このように本実施形態においては、同期化処理が完了しない状態でサービス105を引き継いだノード20-1において、未更新領域に対する参照要求が発生した場合に、当該ノード20-1のデータ要求部201-1からノード20-2のデータ要求受理部202-2に当該未更新領域のデータ更新が要求される。するとノード20-1の更新要求情報受信部110-1は、ノード20-2のデータ記憶部102-2の対応する領域のデータ(更新データ)をデータ要求受理部202-2から受け取って、そのデータで当該未更新領域のデータを更新する。つまり本実施形態においては、未更新領域に対する参照要求が発生した場合、その参照要求をトリガとして当該未更新領域のデータが更新される。これにより、データ要求監視部108が参照要求を検知してから当該参照要求で指定される領域のデータを読み出せるようになるまで待ち合わせる時間を短縮することができる。
As described above, in this embodiment, when a reference request for an unupdated area occurs in the node 20-1 that has taken over the
[第3の実施形態]
図7は本発明の第3の実施形態に係るクラスタシステムの構成を示すブロック図である。図7において、図5と同様の要素には同一参照符号を付してある。図7に示すクラスタシステムの特徴は、図5のノード20-1及び20-2に代えて、3台のノード30-1,30-2及び30-3が用いられることにある。ノード30-1,30-2及び30-3の基本的な構成は、図5のノード20-1及び20-2のそれと同様である。このため、図7のクラスタシステムにおいても前記第1及び第2の実施形態と同様の動作が行われる。
[Third Embodiment]
FIG. 7 is a block diagram showing the configuration of the cluster system according to the third embodiment of the present invention. In FIG. 7, the same elements as those in FIG. The feature of the cluster system shown in FIG. 7 is that three nodes 30-1, 30-2 and 30-3 are used instead of the nodes 20-1 and 20-2 of FIG. The basic configuration of the nodes 30-1, 30-2 and 30-3 is the same as that of the nodes 20-1 and 20-2 in FIG. Therefore, the same operation as in the first and second embodiments is also performed in the cluster system of FIG.
さて、図7の例では、ノード30-1でサービス105が開始されている。つまり図7の例では、サービス105に関して、ノード30-1が稼動系として機能し、ノード30-2及び30-3が待機系として機能する。
In the example of FIG. 7, the
ノード30-1がノード20-1と異なるのは、更新反映待ち情報記憶部103-1に加えて、当該更新反映待ち情報記憶部103-1と同様の更新反映待ち情報記憶部203を有する点にある。更新反映待ち情報記憶部103-1及び203は、書き換え可能な不揮発性メモリ内に確保される。更新反映待ち情報記憶部103-1及び203は、ノード30-1のデータ記憶部102-1でのデータ更新がそれぞれノード30-2及び30-3のデータ記憶部に反映されていない領域の情報(更新領域情報)を更新反映待ち情報として格納する。ノード30-2及び30-3においても、更新反映待ち情報記憶部103-1及び203に相当する、それぞれ2つの更新反映待ち情報記憶部が書き換え可能な不揮発性メモリ内に確保される。但し、図7では、ノード30-2内の更新反映待ち情報記憶部103-2以外の更新反映待ち情報記憶部については省略されている。なお、更新反映待ち情報記憶部103-1内に、ノード30-1のデータ記憶部102-1でのデータ更新がそれぞれノード30-2及び30-3のデータ記憶部に反映されていない領域の情報を更新反映待ち情報として格納する領域が確保されても構わない。この場合、更新反映待ち情報記憶部203は不要となる。
The node 30-1 is different from the node 20-1 in that, in addition to the update reflection wait information storage unit 103-1, the node 30-1 has an update reflection wait
図7のクラスタシステムにおいて、ノード30-1で障害が発生して、ノード30-1のクラスタ制御部100-1に含まれている障害検知部101-1、ノード30-2のクラスタ制御部100-1に含まれている障害検知部101-2またはノード30-2のクラスタ制御部に含まれている障害検知部(図示せず)で当該ノード30-1の障害が検出されたものとする。この場合、ノード30-1で開始されていたサービス105が、ノード30-2または30-3に引き継がれる。
In the cluster system of FIG. 7, when a failure occurs in the node 30-1, the failure detection unit 101-1 included in the cluster control unit 100-1 of the node 30-1 and the cluster control unit 100 of the node 30-2. -1 includes a failure detection unit 101-2 or a failure detection unit (not shown) included in the cluster control unit of the node 30-2, and the failure of the node 30-1 is detected. . In this case, the
本実施形態においてノード30-2のクラスタ制御部100-2及びノード30-3のクラスタ制御部は、サービス105が開始されていたノード30-1の更新反映待ち情報記憶部103-1及び更新反映待ち情報記憶部203にそれぞれ格納されている更新反映待ち情報を比較することにより、ノード30-2及び30-3のいずれが当該サービス105を引き継ぐかを決定する。具体的には、ノード30-2のクラスタ制御部100-2及びノード30-3のクラスタ制御部は、更新反映待ち情報記憶部103-1及び更新反映待ち情報記憶部203にそれぞれ格納されている更新反映待ち情報の示す更新反映待ちの総領域量が少ない方のノードがサービス105を引き継ぐように合意をとる。
In this embodiment, the cluster control unit 100-2 of the node 30-2 and the cluster control unit of the node 30-3 are the update reflection waiting information storage unit 103-1 and the update reflection of the node 30-1 where the
これにより、サービス105を引き継ぐノードが同期化処理を完了していないとしても、更新反映待ちの総領域量が少ないことから、同期化処理が完了して全ての領域に対する参照が可能となるまでの時間が短くて済む。また、更新反映待ちの総領域量が少ない方のノードがサービス105を引き継ぐことにより、未更新領域に対する参照要求が発生する確率を低くすることができる。また、たとえ未更新領域に対する参照要求が発生しても、第2の実施形態と同様に、未更新領域のデータに対する更新要求を行うことで、参照要求で指定される領域のデータを読み出せるようになるまで待ち合わせる時間を短縮することもできる。
As a result, even if the node that takes over the
[第3の実施形態の変形例]
次に、本発明の第3の実施形態の変形例について説明する。本変形例で適用されるクラスタシステムの構成は第3の実施形態と同様であるため、図7を援用する。本変形例の特徴は、ノード30-1でサービス105が開始されている状態で、ノード30-2で同期化処理が開始される場合を想定すると、ノード30-1の組込要求受理部113-1によって更新反映待ち情報がノード30-2に送信された場合に、ノード30-1の更新要求情報送信部109-1による更新要求情報の送信が行われない点にある。
[Modification of Third Embodiment]
Next, a modification of the third embodiment of the present invention will be described. Since the configuration of the cluster system applied in this modification is the same as that of the third embodiment, FIG. 7 is used. The feature of this modification is that assuming that the synchronization process is started in the node 30-2 while the
以下、本変形例の同期化処理について説明する。まず、ノード30-1でサービス105が開始されている状態で、ノード30-2で同期化処理が開始されるものとする。この場合、ノード30-2の組込要求部112-2からノード30-1の組込要求受理部113-1に対して同期化処理の開始が要求される。すると組込要求受理部113-1は、更新反映待ち情報記憶部103-1に格納されている更新反映待ち情報を組込要求部112-2に送信する。組込要求部112-2は、組込要求受理部113-1から更新反映待ち情報を受け取ると、当該更新反映待ち情報を未更新領域情報として未更新領域情報記憶部104-2に追加する。ここまでの動作は、第1の実施形態における同期化処理の場合(ステップS41〜S43)と同様である。
Hereinafter, the synchronization processing of this modification will be described. First, it is assumed that the synchronization process is started in the node 30-2 while the
組込要求部112-2は、更新反映待ち情報を未更新領域情報として未更新領域情報記憶部104-2に追加すると、当該未更新領域情報記憶部104-2に格納されている未更新領域情報の示す領域のデータを、データ要求部201-2によりノード30-3のデータ要求受理部(図示せず)から取得させる。即ちデータ要求部201-2は、未更新領域情報記憶部104-2に格納されている未更新領域情報を参照領域情報としてノード30-3のデータ要求受理部に送信することにより、当該参照領域情報(未更新領域情報)の指定する領域のデータを要求する。 When the update request waiting information 112-2 is added to the unupdated area information storage unit 104-2 as update update area information, the incorporation request unit 112-2 stores the unupdated area stored in the unupdated area information storage unit 104-2. Data in the area indicated by the information is acquired from the data request receiving unit (not shown) of the node 30-3 by the data requesting unit 201-2. That is, the data request unit 201-2 transmits the non-updated area information stored in the non-updated area information storage unit 104-2 as reference area information to the data request receiving unit of the node 30-3, so that the reference area Requests data in the area specified by the information (unupdated area information).
すると、ノード30-3のデータ要求受理部は、前記第2の実施形態において、ノード10-2のデータ要求受理部202-2がノード10-1のデータ要求部201-1から参照領域情報を受け取った場合と同様の動作を行う。即ちノード30-3のデータ要求受理部は、データ要求部201-1からの参照領域情報(未更新領域情報)の指定するデータ記憶部の領域からデータを読み出して、そのデータと当該参照領域情報とを含む更新要求情報を生成し、当該更新要求情報をノード30-2の更新要求情報受信部110-2に送信する。 Then, in the second embodiment, the data request receiving unit 202-2 of the node 30-3 receives the reference area information from the data requesting unit 201-1 of the node 10-1 by the data request receiving unit 202-2 of the node 10-2. The same operation as when received is performed. That is, the data request receiving unit of the node 30-3 reads the data from the area of the data storage unit designated by the reference area information (unupdated area information) from the data requesting unit 201-1, and the data and the reference area information. Is generated, and the update request information is transmitted to the update request information receiving unit 110-2 of the node 30-2.
更新要求情報受信部110-2は、ノード30-3のデータ要求受理部から更新要求情報を受け取ると、当該更新要求情報に従って、データ記憶部102-2内の該当する領域のデータを更新する。このように本変形例においては、ノード30-2の組込要求部112-2からノード30-1の組込要求受理部113-1に対する同期化処理の開始要求に応じて当該組込要求受理部113-1から返される更新反映待ち情報によって指定される領域のデータを、待機系として機能しているノード30-3のデータ要求受理部から取得して、当該データでデータ記憶部102-2の該当する領域の未更新データを更新することができる。ここで、ノード30-1の更新要求情報送信部109-1による更新要求情報の生成及び送信が行われない点に注意されたい。つまり本変形例においては、サービス105が開始されているノード30-1に負担をかけることなく、同期化処理を行うことができる。
When receiving the update request information from the data request receiving unit of the node 30-3, the update request information receiving unit 110-2 updates the data in the corresponding area in the data storage unit 102-2 in accordance with the update request information. As described above, in the present modification, the incorporation request acceptance is received in response to the synchronization processing start request from the incorporation request unit 112-2 of the node 30-2 to the incorporation request acceptance unit 113-1 of the node 30-1. The data of the area specified by the update reflection waiting information returned from the unit 113-1 is acquired from the data request receiving unit of the node 30-3 functioning as the standby system, and the data storage unit 102-2 is used as the data. The unupdated data in the corresponding area can be updated. Here, it should be noted that update request information is not generated and transmitted by the update request information transmitting unit 109-1 of the node 30-1. That is, in this modification, the synchronization process can be performed without imposing a burden on the node 30-1 where the
さてノード30-2の更新要求情報受信部110-2は、ノード30-3のデータ要求受理部から送信された更新要求情報に従ってデータ記憶部102-2内の該当する領域のデータ(未更新データ)を更新すると、前記第1の実施形態におけるステップS23〜S25と同様の処理を行い、ノード30-1の更新反映待ち部111-1に更新領域情報を返すことにより更新完了を通知する。これにより更新領域情報と同一の領域を指定する更新反映待ち情報が、更新反映待ち部111-1によって更新反映待ち情報記憶部103-1から削除される。 Now, the update request information receiving unit 110-2 of the node 30-2 receives the data (unupdated data) in the corresponding area in the data storage unit 102-2 according to the update request information transmitted from the data request receiving unit of the node 30-3. ) Is updated, the same processing as steps S23 to S25 in the first embodiment is performed, and the update completion information is notified by returning the update area information to the update reflection waiting unit 111-1 of the node 30-1. As a result, the update reflection waiting information specifying the same area as the update area information is deleted from the update reflection waiting information storage unit 103-1 by the update reflection waiting unit 111-1.
なお、本発明は、上記各実施形態そのままに限定されるものではなく、実施段階ではその要旨を逸脱しない範囲で構成要素を変形して具体化できる。また、上記各実施形態に開示されている複数の構成要素の適宜な組み合せにより種々の発明を形成できる。例えば、各実施形態に示される全構成要素から幾つかの構成要素を削除してもよい。 Note that the present invention is not limited to the above-described embodiments as they are, and can be embodied by modifying constituent elements without departing from the scope of the invention in the implementation stage. Various inventions can be formed by appropriately combining a plurality of constituent elements disclosed in the above embodiments. For example, some components may be deleted from all the components shown in each embodiment.
10-1,10-2,20-1,20-2,30-1,30-2,30-3…ノード(計算機)、100-1,100-2…クラスタ制御部、102-1,102-2…データ記憶部、103-1,103-2,203…更新反映待ち情報記憶部、104-1,104-2…未更新領域情報記憶部、105…サービス、106…更新要求情報、107…参照要求情報、108…データ要求監視部、109-1,109-2…更新要求情報送信部、110-1,110-2…更新要求情報受信部、111-1,111-2…更新反映待ち部、112-1,112-2…組込要求部、113-1,113-2…組込要求受理部、201-1,201-2…データ要求部、202-1,202-2…データ要求受理部。
10-1, 10-2, 20-1, 20-2, 30-1, 30-2, 30-3 ... nodes (computers), 100-1, 100-2 ... cluster control units, 102-1, 102 -2 ... Data storage unit, 103-1, 103-2, 203 ... Update reflection waiting information storage unit, 104-1, 104-2 ... Unupdated area information storage unit, 105 ... Service, 106 ... Update request information, 107
Claims (5)
前記第1及び第2の計算機の各々は、
データを記憶するデータ記憶手段と、
前記稼動系計算機として機能している状態でデータ更新が発生した前記データ記憶手段の領域の情報を、前記待機系計算機でのデータ更新に未反映の領域を表す更新反映待ち情報として記憶する更新反映待ち情報記憶手段と、
前記発生したデータ更新を前記待機系計算機に反映させるための更新要求情報を当該待機系計算機に送信する更新要求情報送信手段と、
前記待機系計算機として機能している状態で前記稼動系計算機で発生したデータ更新が当該待機系計算機に反映されていない領域の情報を未更新領域情報として記憶する未更新領域情報記憶手段と、
前記待機系計算機として機能している状態で前記稼動系計算機の前記更新要求情報送信手段から送信された更新要求情報を受信して、当該稼動系計算機で発生したデータ更新を当該更新要求情報に基づいて前記待機系計算機の前記データ記憶手段に反映させて、当該データ更新が反映された領域の更新領域情報を当該稼動系計算機に通知すると共に、当該データ更新が反映された領域に対応する未更新領域情報が前記待機系計算機の前記未更新領域情報記憶手段に記憶されている場合には当該未更新領域情報を削除する更新要求情報受信手段と、
前記待機系計算機への前記更新要求情報の送信に対して前記待機系計算機の前記更新要求情報受信手段から前記稼動系計算機に更新領域情報が通知された場合、当該更新領域情報の示す領域に対応する更新反映待ち情報を当該稼動系計算機の前記更新反映待ち情報記憶手段から削除する更新反映待ち手段と、
前記待機系計算機として機能している状態で障害が発生して当該待機系計算機が一旦動作を停止し、その後障害から復旧した場合に、前記稼動系計算機に対して同期化処理の開始を要求して、当該稼動系計算機の前記更新反映待ち情報記憶手段に記憶されている更新反映待ち情報を当該稼動系計算機から取得して、当該更新反映待ち情報を未更新領域情報として前記待機系計算機の前記未更新領域情報記憶手段に格納する組み込み要求手段と、
前記稼動系計算機として機能している状態で前記待機系計算機の前記組み込み要求手段から同期化処理の開始が要求された場合、当該稼動系計算機の前記更新反映待ち情報記憶手段に記憶されている更新反映待ち情報を当該待機系計算機の前記組み込み要求手段に送信すると共に、当該更新反映待ち情報によって表される領域のデータを当該稼動系計算機の前記データ記憶手段から読み出し、当該データにより前記待機系計算機の前記データ記憶手段の対応する領域のデータを更新させるための同期化処理に必要な更新要求情報を当該待機系計算機の前記更新要求情報受信手段に送信する組込要求受理手段とを具備し、
前記更新要求情報受信手段は、前記待機系計算機として機能している状態で前記稼動系計算機の前記組込要求受理手段から送信された前記同期化処理に必要な更新要求情報を受信した場合、当該稼動系計算機で発生したデータ更新を当該更新要求情報に基づいて前記待機系計算機の前記データ記憶手段に反映させて、当該データ更新が反映された領域の更新領域情報を当該稼動系計算機に通知すると共に、当該データ更新が反映された領域に対応する未更新領域情報が前記待機系計算機の前記未更新領域情報記憶手段に記憶されている場合には当該未更新領域情報を削除する
ことを特徴とするクラスタシステム。 One of the first and second computers functions as an active computer with respect to provision of a predetermined service, and the rest of the first and second computers function as standby computers, causing a failure in the active computer. In the cluster system in which the standby computer takes over the service started by the active computer,
Each of the first and second computers is
Data storage means for storing data;
Update reflection storing information of the area of the data storage means in which data update has occurred while functioning as the active computer as update reflection wait information representing an area not yet reflected in the data update in the standby computer Waiting information storage means;
Update request information transmitting means for transmitting update request information for reflecting the generated data update to the standby computer to the standby computer;
Unupdated area information storage means for storing, as unupdated area information, information of an area in which data update generated in the active system computer in a state of functioning as the standby system computer is not reflected in the standby system computer;
Based on the update request information, the update request information transmitted from the update request information transmitting means of the active computer in a state of functioning as the standby computer is received, and the data update generated in the active computer is based on the update request information. To update the data storage means of the standby computer and notify the active computer of the update region information of the region in which the data update is reflected, and not update corresponding to the region in which the data update is reflected An update request information receiving means for deleting the unupdated area information when the area information is stored in the unupdated area information storage means of the standby computer;
If the update request information update area information to the operating system computer from the update request information receiving means of the standby computer for transmission to said standby computer is notified, corresponding to the region indicated by the update area information Update reflection waiting means for deleting the update reflection waiting information to be deleted from the update reflection waiting information storage means of the active computer;
When a failure occurs in the state of functioning as the standby computer and the standby computer temporarily stops operating and then recovers from the failure, it requests the active computer to start synchronization processing. The update reflection wait information stored in the update reflection wait information storage means of the active computer is acquired from the active computer, and the update reflection wait information is set as unupdated area information in the standby computer. Built-in request means for storing in the unupdated area information storage means,
When the start of synchronization processing is requested from the incorporation request unit of the standby computer while functioning as the active computer, the update stored in the update reflection waiting information storage unit of the active computer The reflection waiting information is transmitted to the incorporation request means of the standby computer, and the data of the area represented by the update reflection waiting information is read from the data storage means of the active computer, and the standby computer is read by the data. Embedded request receiving means for transmitting update request information necessary for synchronization processing for updating data in the corresponding area of the data storage means to the update request information receiving means of the standby computer ,
When the update request information receiving unit receives the update request information necessary for the synchronization processing transmitted from the built-in request receiving unit of the active computer while functioning as the standby computer, Based on the update request information, the data update generated in the active computer is reflected in the data storage means of the standby computer, and the update area information of the area in which the data update is reflected is notified to the active computer. In addition, when the unupdated area information corresponding to the area in which the data update is reflected is stored in the unupdated area information storage unit of the standby computer, the unupdated area information is deleted. Cluster system.
当該計算機で前記サービスが開始されている状態で、当該サービスにより発行される参照要求を検知して、当該検知された参照要求の指定する領域が未更新領域であるかを当該計算機の前記未更新領域情報記憶手段に記憶されている未更新領域情報に基づいて判別し、未更新領域である場合には、前記未更新領域情報記憶手段から対応する未更新領域情報が削除されるまで当該参照要求の実行を待ち合わせるデータ要求監視手段を更に具備することを特徴とする請求項1記載のクラスタシステム用計算機。 Each of the first and second computers is
When the service is started on the computer, a reference request issued by the service is detected, and whether the area designated by the detected reference request is an unupdated area is not updated on the computer. Based on the non-updated area information stored in the area information storage means, and if it is an unupdated area, the reference request until the corresponding non-updated area information is deleted from the non-updated area information storage means 2. The cluster system computer according to claim 1, further comprising a data request monitoring unit for waiting for execution of the cluster system.
当該計算機の前記未更新領域に未更新領域を示す未更新領域情報が記憶されている状態で前記サービスを引き継いだ場合であって、当該計算機の前記データ要求監視手段によって検知された参照要求の指定する領域が未更新領域である場合、当該領域のデータを前記サービスを引き継ぐまで当該サービスが開始されていて現在は当該サービスが停止されている計算機に要求するために、当該領域を表す参照領域情報を当該サービスが停止されている計算機に送信するデータ要求手段と、
前記サービスが停止されている状態で前記サービスが開始されている計算機の前記データ要求手段から参照領域情報が送信された場合、当該参照領域情報の指定する領域のデータを前記データ記憶手段から読み出し、当該データにより前記サービスが開始されている計算機のデータ記憶手段の対応する領域のデータを更新させるための更新要求情報を当該サービスが開始されている計算機の前記更新要求情報受信手段に送信するデータ要求受理手段と
を更に具備することを特徴とする請求項2記載のクラスタシステム。 Each of the first and second computers is
Specification of a reference request detected by the data request monitoring unit of the computer when the service is taken over in a state where unupdated region information indicating an unupdated region is stored in the unupdated region of the computer If the area to be updated is an unupdated area, reference area information representing the area is used to request the computer in which the service has been started and the service has been stopped until the service is taken over. A data requesting means for transmitting the request to the computer where the service is stopped,
When the reference area information is transmitted from the data request unit of the computer in which the service is started in the state where the service is stopped, the data of the area specified by the reference area information is read from the data storage unit, A data request for transmitting update request information for updating the data in the corresponding area of the data storage means of the computer on which the service has been started to the update request information receiving means of the computer on which the service is started. The cluster system according to claim 2, further comprising: a receiving unit.
前記第1及び第2の計算機並びに前記少なくとも1つの第3の計算機の各々は、いずれか1つの計算機が稼動系となって、残りの各計算機が待機系となるように互いに合意をとりながら動作するクラスタ制御手段を具備し、
前記第1及び第2の計算機並びに前記少なくとも1つの第3の計算機の各々が有する前記更新反映待ち情報記憶手段は、当該計算機が前記稼動系計算機として機能し、残りの各計算機が前記待機系計算機として機能している場合、前記稼動系計算機でデータ更新が発生した前記データ記憶手段の領域の情報を、前記待機系計算機毎に、当該待機系計算機でのデータ更新に未反映の領域を表す更新反映待ち情報として記憶するのに用いられ、
前記第1及び第2の計算機並びに前記少なくとも1つの第3の計算機の前記クラスタ制御手段は、前記稼動系計算機で障害が発生した場合、当該稼動系計算機の前記更新反映待ち情報記憶手段に記憶されている前記待機系計算機毎の更新反映待ち情報の示す更新反映待ちの総領域量を比較し、当該更新反映待ちの総領域量が最も少ない計算機が前記サービスを引き継ぐように合意をとる
ことを特徴とする請求項1記載のクラスタシステム。 And further comprising at least one third computer having the same configuration as the first and second computers,
Each of the first and second computers and the at least one third computer operate in agreement with each other such that any one computer becomes an active system and the remaining computers become standby systems. Cluster control means for
The update reflection waiting information storage means included in each of the first and second computers and the at least one third computer is such that the computer functions as the active computer and each remaining computer is the standby computer. If the function is functioning as an update, the information of the area of the data storage means in which the data update has occurred in the active system computer is updated for each standby system computer to indicate the area that has not been reflected in the data update in the standby system computer. Used to store as reflection waiting information,
The cluster control means of the first and second computers and the at least one third computer are stored in the update reflection waiting information storage means of the active computer when a failure occurs in the active computer. Comparing the total area waiting for update reflection indicated by the update reflection waiting information for each standby computer, and making an agreement so that the computer having the smallest total area waiting for update reflection takes over the service. The cluster system according to claim 1.
前記稼動系計算機で当該稼動系計算機の前記データ記憶手段に対するデータ更新が発生した場合、当該データ更新が発生した領域の情報を、前記待機系計算機でのデータ更新に未反映の領域を表す更新反映待ち情報として前記稼動系計算機の更新反映待ち情報記憶手段に格納するステップと、
前記発生したデータ更新を前記待機系計算機に反映させるための更新要求情報を前記稼動系計算機から前記待機系計算機に送信するステップと、
前記稼動系計算機から前記待機系計算機に送信された更新要求情報に基づいて、前記稼動系計算機で発生したデータ更新を前記待機系計算機が当該待機系計算機の前記データ記憶手段に反映するステップと、
前記データ更新が反映された領域に対応する未更新領域情報が前記待機系計算機の未更新領域情報記憶手段に記憶されている場合には当該待機系計算機が当該未更新領域情報を削除するステップと、
前記データ更新が反映された領域の更新領域情報を前記待機系計算機から前記稼動系計算機に通知するステップと、
前記稼動系計算機に通知された更新領域情報の示す領域に対応する更新反映待ち情報を当該稼動系計算機が当該稼動系計算機の前記更新反映待ち情報記憶手段から削除するステップと、
前記待機系計算機で障害が発生して当該待機系計算機が一旦動作を停止し、その後障害から復旧した場合に、当該待機系計算機から前記稼動系計算機に対して同期化処理の開始を要求するステップと、
前記同期化処理の開始が要求された場合、前記稼動系計算機の前記更新反映待ち情報記憶手段に記憶されている更新反映待ち情報を当該稼動系計算機から前記待機系計算機に送信するステップと、
前記送信された更新反映待ち情報を未更新領域情報として前記待機系計算機の前記未更新領域情報記憶手段に当該待機系計算機が格納するステップと、
前記稼動系計算機が前記待機系計算機に送信した更新反映待ち情報によって表される領域のデータを当該稼動系計算機が当該稼動系計算機の前記データ記憶手段から読み出し、当該データにより前記待機系計算機の前記データ記憶手段の対応する領域のデータを更新させるための同期化処理に必要な更新要求情報を当該稼動系計算機から前記待機系計算機に送信するステップと、
前記稼動系計算機から前記待機系計算機に送信された前記同期化処理に必要な更新要求情報に基づいて、前記稼動系計算機で発生したデータ更新を前記待機系計算機が当該待機系計算機の前記データ記憶手段に反映するステップと、
前記同期化処理に必要な更新要求情報に基づいて前記データ更新が反映された領域に対応する未更新領域情報が前記待機系計算機の未更新領域情報記憶手段に記憶されている場合には当該待機系計算機が当該未更新領域情報を削除するステップと
を具備することを特徴とする同期化方法。 When a failure occurs in the active computer, the data storage means of each of the active computer and the standby computer applied to the cluster system in which the standby computer takes over the service started by the active computer In the synchronization method for synchronizing data,
When data update to the data storage unit of the active system computer occurs in the active system computer, update information indicating an area that has not been reflected in the data update in the standby system computer, information on the area in which the data update has occurred Storing in the update reflection waiting information storage means of the active computer as waiting information;
Sending an update request information for reflecting the generated data update to the standby computer to the standby computer from the operating system computer,
Based on the transmitted update request information from the operating system computer to the standby computer, the steps of the data update generated in the active system computer said standby computer is reflected in the data storage means of the standby computer,
A step of deleting the non-updated area information by the standby computer when the non-updated area information corresponding to the area where the data update is reflected is stored in the non-updated area information storage means of the standby computer; ,
Notifying the active computer from the standby computer of update region information of the region in which the data update is reflected;
Deleting the update reflection wait information corresponding to the area indicated by the update area information notified to the active computer from the update reflection wait information storage unit of the active computer;
A step of requesting the active computer to start synchronization processing from the standby computer when a failure occurs in the standby computer and the standby computer temporarily stops operating and then recovers from the failure. When,
When the start of the synchronization process is requested, the update reflection waiting information stored in the update reflection waiting information storage means of the active computer is transmitted from the active computer to the standby computer;
The standby computer stores the transmitted update reflection waiting information as unupdated region information in the unupdated region information storage unit of the standby computer;
The active computer reads the data in the area represented by the update reflection waiting information transmitted from the active computer to the standby computer from the data storage means of the active computer, and the data of the standby computer is determined by the data. Transmitting update request information necessary for the synchronization process for updating data in the corresponding area of the data storage means from the active computer to the standby computer ;
Based on the update request information necessary for the synchronization process transmitted from the active computer to the standby computer, the standby computer stores the data update generated by the active computer in the data storage of the standby computer. Steps reflected in the means;
If the non-updated area information corresponding to the area where the data update is reflected based on the update request information necessary for the synchronization processing is stored in the non-updated area information storage unit of the standby computer, the standby A synchronization method comprising: deleting a non-updated area information from the system computer .
Priority Applications (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
JP2006325033A JP4435142B2 (en) | 2006-11-30 | 2006-11-30 | Cluster system and synchronization method |
Applications Claiming Priority (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
JP2006325033A JP4435142B2 (en) | 2006-11-30 | 2006-11-30 | Cluster system and synchronization method |
Publications (2)
Publication Number | Publication Date |
---|---|
JP2008140079A JP2008140079A (en) | 2008-06-19 |
JP4435142B2 true JP4435142B2 (en) | 2010-03-17 |
Family
ID=39601474
Family Applications (1)
Application Number | Title | Priority Date | Filing Date |
---|---|---|---|
JP2006325033A Active JP4435142B2 (en) | 2006-11-30 | 2006-11-30 | Cluster system and synchronization method |
Country Status (1)
Country | Link |
---|---|
JP (1) | JP4435142B2 (en) |
Families Citing this family (1)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
JP5669179B2 (en) * | 2010-09-03 | 2015-02-12 | 日本電気株式会社 | Information processing system |
-
2006
- 2006-11-30 JP JP2006325033A patent/JP4435142B2/en active Active
Also Published As
Publication number | Publication date |
---|---|
JP2008140079A (en) | 2008-06-19 |
Similar Documents
Publication | Publication Date | Title |
---|---|---|
JP5714571B2 (en) | Cache data processing using cache clusters in configurable mode | |
JP6382454B2 (en) | Distributed storage and replication system and method | |
JP6963168B2 (en) | Information processing device, memory control method and memory control program | |
CN100591031C (en) | Methods and apparatus for implementing a high availability fibre channel switch | |
US20070174849A1 (en) | Non-disruptive multipath device driver update system and method | |
JP5699852B2 (en) | Information processing apparatus, storage control method, and program | |
JP5948933B2 (en) | Job continuation management apparatus, job continuation management method, and job continuation management program | |
US7797458B2 (en) | Data synchronous system for synchronizing updated data in a redundant system | |
CN103207867A (en) | Method for processing data blocks, method for initiating recovery operation and nodes | |
JP2007286860A (en) | Data transfer method and information processor | |
JP4479930B2 (en) | Node system, server switching method, server device, data takeover method, and program | |
CN112052230B (en) | Multi-machine room data synchronization method, computing device and storage medium | |
CN103828331A (en) | System and method for providing reliable storage | |
CN112015595B (en) | Master-slave database switching method, computing device and storage medium | |
JP4435142B2 (en) | Cluster system and synchronization method | |
TWI669605B (en) | Fault tolerance method and system for virtual machine group | |
CN109508261B (en) | Power grid data node backup method and system based on big data | |
CN110351122A (en) | Disaster recovery method, device, system and electronic equipment | |
JP4806382B2 (en) | Redundant system | |
JP5798056B2 (en) | Call processing information redundancy control system and spare maintenance server used therefor | |
JP5716460B2 (en) | Cluster system and control method thereof | |
JP2015095015A (en) | Data arrangement method, data arrangement program, and information processing system | |
JP2001027951A (en) | File loading device for information processing system of multiprocessor configuration and recording medium | |
CN112882771A (en) | Server switching method and device of application system, storage medium and electronic equipment | |
JP4435143B2 (en) | Cluster system and synchronization method |
Legal Events
Date | Code | Title | Description |
---|---|---|---|
A977 | Report on retrieval |
Free format text: JAPANESE INTERMEDIATE CODE: A971007 Effective date: 20090203 |
|
A131 | Notification of reasons for refusal |
Free format text: JAPANESE INTERMEDIATE CODE: A131 Effective date: 20090217 |
|
A521 | Written amendment |
Free format text: JAPANESE INTERMEDIATE CODE: A523 Effective date: 20090417 |
|
TRDD | Decision of grant or rejection written | ||
A01 | Written decision to grant a patent or to grant a registration (utility model) |
Free format text: JAPANESE INTERMEDIATE CODE: A01 Effective date: 20091201 |
|
A01 | Written decision to grant a patent or to grant a registration (utility model) |
Free format text: JAPANESE INTERMEDIATE CODE: A01 |
|
A61 | First payment of annual fees (during grant procedure) |
Free format text: JAPANESE INTERMEDIATE CODE: A61 Effective date: 20091222 |
|
R150 | Certificate of patent or registration of utility model |
Ref document number: 4435142 Country of ref document: JP Free format text: JAPANESE INTERMEDIATE CODE: R150 Free format text: JAPANESE INTERMEDIATE CODE: R150 |
|
FPAY | Renewal fee payment (event date is renewal date of database) |
Free format text: PAYMENT UNTIL: 20130108 Year of fee payment: 3 |
|
FPAY | Renewal fee payment (event date is renewal date of database) |
Free format text: PAYMENT UNTIL: 20140108 Year of fee payment: 4 |
|
S531 | Written request for registration of change of domicile |
Free format text: JAPANESE INTERMEDIATE CODE: R313531 |
|
R350 | Written notification of registration of transfer |
Free format text: JAPANESE INTERMEDIATE CODE: R350 |
|
S533 | Written request for registration of change of name |
Free format text: JAPANESE INTERMEDIATE CODE: R313533 |
|
R350 | Written notification of registration of transfer |
Free format text: JAPANESE INTERMEDIATE CODE: R350 |