JP4353005B2 - クラスタ構成コンピュータシステムの系切替方法 - Google Patents

クラスタ構成コンピュータシステムの系切替方法 Download PDF

Info

Publication number
JP4353005B2
JP4353005B2 JP2004190633A JP2004190633A JP4353005B2 JP 4353005 B2 JP4353005 B2 JP 4353005B2 JP 2004190633 A JP2004190633 A JP 2004190633A JP 2004190633 A JP2004190633 A JP 2004190633A JP 4353005 B2 JP4353005 B2 JP 4353005B2
Authority
JP
Japan
Prior art keywords
reset
computer
computers
procedure
priority
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
Application number
JP2004190633A
Other languages
English (en)
Other versions
JP2006011992A (ja
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.)
Hitachi Ltd
Original Assignee
Hitachi 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 Hitachi Ltd filed Critical Hitachi Ltd
Priority to JP2004190633A priority Critical patent/JP4353005B2/ja
Priority to US11/065,352 priority patent/US7418627B2/en
Publication of JP2006011992A publication Critical patent/JP2006011992A/ja
Priority to US12/194,642 priority patent/US7853835B2/en
Application granted granted Critical
Publication of JP4353005B2 publication Critical patent/JP4353005B2/ja
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/2046Error 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 persistent storage
    • 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/2023Failover techniques
    • G06F11/2028Failover techniques eliminating a faulty processor or activating a spare
    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04LTRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
    • H04L69/00Network arrangements, protocols or services independent of the application payload and not provided for in the other groups of this subclass
    • H04L69/40Network arrangements, protocols or services independent of the application payload and not provided for in the other groups of this subclass for recovering from a failure of a protocol instance or entity, e.g. service redundancy protocols, protocol state redundancy or protocol service redirection

Description

本発明はアプリケーションシステムを構築する障害許容性のあるコンピュータシステムに関し、特にアプリケーションを実行中であるコンピュータのプログラムもしくはオペレーティングシステムに障害があった時に、その実行中のアプリケーションを別のコンピュータに引き継がせる系切替機能を有するプログラムを持つコンピュータシステムに関する。
高信頼性を必要とするコンピュータシステムでは、処理(アプリケーション)を実行する現用系コンピュータと、現用系に障害が発生した際に処理を引き継ぐ予備系コンピュータとを含む構成をとる。現用系で発生した障害の検出から予備系に処理を引き継ぐ手続きはクラスタプログラムによって提供される。さらに、アプリケーションがディスク上のデータを利用する場合には、ディスクは現用系と予備系との間で共有される構成をとる。現用系障害時に予備系が処理を引き継ぐためには、クラスタを構成するコンピュータから予備系となるコンピュータを決定することと、アプリケーションやオペレーティングシステム(OS)が使用している資源のうち、同時に利用することのできない資源(共有リソース)、例えば、共有ディスクやIPアドレスを引き継ぐことが必要となる。さらに、予備系が現用系の障害を監視するパスが遮断される障害(ネットワークスプリット)が生じた場合であっても、現用系と予備系が同時に共有リソースを利用しないように保証することが、さらなる高信頼性を実現するためには必要である。
クラスタ構成において、共有ディスクを排他的に引き継ぐことで、処理を引き継ぐ予備系を決定する方法が多くのクラスタプログラムで行われており、その例として、文献1と特許文献2がある。
特許文献1では、予備系から現用系を停止させるための機構を利用し、予備系が現用系をリセットすることによって、現用系が所有する共有リソースを解放させ、予備系が解放された共有リソースを所有することで、共有リソースを排他制御する技術が記載される。
次に、非特許文献1では、現用系で障害が発生し、系切替を行なう場合に、クラスタプログラムがSCSIコマンドのRESERVEとRESETとを利用し、共有ディスクへのアクセス権限を排他制御する技術が記載される。ここで、RESERVEはディスクへのアクセス権限を予約するコマンドであり、ある計算機によってRESERVE予約されたディスクは他の計算機からのアクセスとRESERVEを拒否するコマンドである。一方、RESETは、ディスクのアクセス権限を解放するコマンドであり、RESERVEされたディスクのアクセス権限を解放するコマンドである。
特開平10−207855号公報 共有ディスク型多重系システム
マイクロソフト社 サポート技術情報 309186
特許文献1では、クラスタ構成のコンピュータシステムにおいて、予備系は、現用系の監視が出来なくなった場合には、現用系を停止させることで、共有リソースの排他制御を実現している。しかし、お互いが相手の予備系であるような2台からなるクラスタにおいて、ネットワークスプリット時が生じた場合には、互いに相手の系をリセットしようとするため、全ての系がリセットされてしまう可能性がある。従って、ネットワークスプリット時には処理が中断してしまい、高可用性が実現できないという問題がある。
また、予備系は現用系をリセットするが、現用系が予備系をリセットすることはない。従って、現用系とそれを引き継ぐ予備系2台(予備系1、予備系2)から構成されるクラスタを考えた場合、ネットワークスプリットにより、現用系と予備系1からなる2台のクラスタと、予備系2とに分離するようなケースにおいては、予備系2は、現用系をリセットし、系切替を行なう。一方で、予備系1も、予備系2により現用系がリセットされたことで、現用系の障害を検知し、系切替を実行してしまう。そのため、予備系1と予備系2が同時に現用系になり、共有リソースの二重アクセスが生じてしまうという問題がある。
また、非特許文献1では、クラスタ構成のコンピュータシステムにおいて、予備系は、現用系の監視が出来なくなった場合には、共有ディスクに対する現用系の制御権をSCSIコマンドのRESETにより強制的に解放させる処理と、その後、任意の予備系がSCSIのRESERVEコマンドを発行することで解放された共有ディスクの制御権を獲得する処理とからなり、この二つの処理によって、共有ディスクを引継ぐ系、すなわち、処理を引き継ぐ系が決定する。ここで、後者のRESERVEによる処理が、前者のRESETによる処理によって無効化されてしまうと、一度、ある予備系がRESERVEによって引継ぎが行なわれた処理を、別の予備系が引き継ぎ直すという過剰な系切り替えが生じてしまうため、これを防ぐために、前者のRESETによる処理から、後者のRESERVEによる処理が行なわれるまでの間は、全ての予備系がRESETコマンドを発行し終えることが保証できるために十分な時間が必要となる。従って、ネットワークスプリットが実際に起きているかどうかに関わらず、系切替時間が一定時間遅延してしまう問題がある。
また、この方式では、ネットワークスプリットが生じた場合であっても、系切り替えを行なうことが可能であるが、共有ディスク以外の共有リソースの引継ぎに、例えばIPアドレスの引継ぎを行なうためにさらなる処理が必要であり、系切り替えが完了するまでに要する時間が増大し、系切り替え時間が遅くなる問題がある。
本発明は、現用/待機系コンピュータを含む高可用性コンピュータシステムであって、現用/待機系が少なくとも一つのリソースを共有し、各コンピュータ間が互いの障害を監視するためのハートビートパスと、互いの系を停止させるためのリセットパスとを兼ね備えているコンピュータシステムにおいて、系切替を実現する機能を提供する。たとえば、共有されるリソースは、ディスク装置である。
本発明では、各コンピュータが他系をリセットするためのリセット命令を発行する順番を決定するための指標(リセット優先度)を有する。リセット優先度は、コンピュータシステム内で一意に決定される値からなる。たとえば、各系のコンピュータのIPアドレスの順に優先度が定まる。現用系以外のクラスタ内の各コンピュータは、現用系コンピュータが監視できなくなるような障害が発生した場合に、それぞれ自己のコンピュータのリセット優先度に基づいてリセット発行までの遅延時間をタイマに設定する。
タイマが設定されたリセット遅延時間の経過を検出した場合、その系は、障害となった現用系(障害系)にリセットを発行する。各系に設定されるリセット遅延時間は、各系が同時にリセットを行うことが生じない時間差を持つ。たとえば、各系のリセット遅延時間の間に、リセットを実行し、リセットが成功あるいは失敗したことが確定するまでに生じる一定の時間差を用いるのが好ましい。
つぎに、ある系によって障害系のリセットが行われると、障害系の動作を停止させ、共有リソースの使用を終了させる。この動作の停止処理は、たとえば、電源オフであったり、あるいは、OSのシャットダウンであったりしてもよい。
さらに、リセットを発行した系(リセット系)は、障害系のリセットをその他の系に対して通知する。この障害系のリセット通知を受けた系は、その障害系に対するリセットタイマを停止させる。このようにして、同じマシンに対して、リセットが複数回行われることを防ぐ。
障害系がリセットされた後、障害系の処理を引き継ぐ予備系が共有リソースを引き継ぎ、障害系で行なわれていた処理を引き継ぐ。
ここで、予備系コンピュータの決定は、障害系をリセットしたリセット系が行なう方式でもよいし、リセット系が別のコンピュータに通知を行い、そのコンピュータが行なう方式でもよい。
このようにして、クラスタ構成のコンピュータシステムにおいて、正常に動作している系があれば、その系のうち、最上位のリセット優先度を有する系によって、必ず障害系がリセットされ、さらに、障害系の処理を引き継ぐべき予備系も、リセット系を含め必ず一つ存在することになるため、予備系に系切り替えされることで処理が引継がれる高可用性システムが実現される。
本発明に関する図と説明は、本発明を鮮明に理解するのに適当な要素を示すために簡単化されており、発明を実施するのに支障ない範囲で既知の要素等は省略していることを理解されたい。本技術中で従来技術の中には、本発明を実装するために他の要素が望ましく、かつ/または、必要とされると思われるものが幾つかある。しかし、技術中のこれらの要素は既知であり、本発明の理解を容易にするものではないので、ここでは説明しない。以下では、添付の図に関して詳細に説明していく。
図1・図2は、本発明における現用/予備系コンピュータのシステムブロックを簡易に示したものである。説明を分かりやすくするために、各プログラムのラベルとして4桁の数字を用いている。また、数字は現用系コンピュータと待機系コンピュータは同一のプログラムに対して同じ下3桁の数字を用い、千の位は現用系コンピュータ(系A)で1を、予備系コンピュータ(系B、系C)ではそれぞれ2、3で表している。以下では、先に各プログラムについて説明する。この説明では、各コンピュータのプログラムは現用系コンピュータ上のプログラム番号で説明しているが、待機系コンピュータ上の対応したプログラムの説明も兼ねる。さらに、以降の図2において同様の番号を用いているものがあるが、それらについては特に説明がない場合、図1の説明と同様である。
図1では、系Aは、外部との通信を送受信するための装置として、ネットワークアダプタ(NIC)1103、1104、1105と、リセット部1106とを持つ。また、ソフトウェアプログラムとして、オペレーティングシステム(OS)1105、アプリケーション1102、クラスタプログラム1110を持つ。
NIC1103は、アプリケーション1102が外部と通信するために用いられ、NIC1104はクラスタプログラム1110がお互いの系の監視するための通信に用いられ、NIC1105は、クラスタプログラム1110が他系をリセットするために用いられる。ここで、NIC1103と1104は理解のために別としたが、同一であっても良い。
次に、リセット部1106は、他系のクラスタプログラム1210、1310からのリセットを受け、系Aを停止させる機能を持つ。この系の停止機能として、例えば、OS1105に対して、強制停止を行うことで実現する。
クラスタプログラム1110は、3つのモジュールを有する。以降、クラスタプログラムの説明のため、図2を用いて、説明する。
(1)監視部1111は、自系のアプリケーション1102が正常動作するか監視する機能と、通信部1112を介して、他系のクラスタプログラム1210、1310の状態を監視する機能とをもつ。
(2)通信部1102は、前記NIC1104を介して、他系のクラスタプログラム1210、1310と通信する機能と、系切替部1113からの要求によって他系のリセット部1206、1306に対してリセット指示を行う通信機能とをもつ。
(3)系切替部1113は、前記監視部1111によって得られた各系の状態に基づいて、障害が生じている系に対して前期通信部1112を介してリセットを指示する機能と、リセットが成功した場合に、前記通信部1112を用いて他系のクラスタプログラム1210、1310に障害系のリセット成功を通知する機能を持つ。さらに、他系のクラスタプログラム1210、1310から障害系のリセット成功を通知された場合に、自系が障害系の処理を引き継ぐ必要がある予備系である場合には、障害系の処理を引き継ぐ機能とを有する。クラスタプログラム1110、1210、1310のより詳細な処理については、図3を用いて後述する。
さらに、前記系切替部1113は、クラスタの状態を管理するためのクラスタ状態管理表1114を持つ。図2は、本発明によるクラスタ状態管理表を表したものである。図2では、クラスタ状態管理表は、5つの情報を有する。
(1)各系を一意に識別するための系識別子21と、
(2)前記監視部1111によって監視された状態を表す系状態22、
(3)各系がリセットを発行する順序を表すリセット優先度23、
(4)他系をリセットする場合に、そのリセット指示の通信先となる他系のリセット部1206、1306を識別するためのリセット先識別子24、
(5)各系のリセットをどのタイミングで指示するかを表すリセットタイマ25である。
ここで、リセットタイマ25には、障害系が検出されてから自系が障害系に対してリセットを発行するまでの遅延時間(リセット遅延時間)が格納される。ある障害が発生し、それにより例えば系Cのハートビート検出が不可能になった場合、各系にて各々のタイマに設定されるリセット遅延時間は差を有する。つまり、複数の系でそれぞれトリガされるリセット指示の発行タイミングが時間間隔を有するように、各系それぞれ個別のリセット遅延時間が格納される。実施例では、具体的には前記リセット優先度23に基づいた順番で、リセットが行われるように各系個別のリセット遅延時間が格納される。
たとえば、自系より優先度が一つ高い系がリセットを指示し、リセットが行われることが保証される一定以上の時間差であれば、リセット優先度23に則ったリセットが行われることが保証できる。したがって、各系のタイマに設定されるリセット遅延時間は、各系に設定されたリセット優先度に応じて、システムハードウエアに即した系ごとの時間差を有するように設定すれば良い。リセット間隔定義1116、1216、1316はこの時間差の情報を保持するものである。また別の方法では、このリセット間隔定義1116、1216、1316に対しそれぞれ直接その系のリセット遅延時間をユーザが設定するようにしても良い。
また、リセット優先度23は、クラスタを構成する全ての系で、重複がなく、一意に定まる値を用いればよい。例えば、ユーザが静的に与える場合には、クラスタプログラム1110に対して、優先度定義1115で与える方法がある。図5は、優先度定義1115を示したものである。優先度定義1115には、系識別子51とリセット優先度52が含まれる。前記系識別子51は、前記系識別子21と同一の値であっても良いし、一意に前記計識別子21に対応する値であれば良い。
また、前記リセット優先度52も、前記リセット優先度識別子23と同一の値であっても良いし、前記リセット優先度52を用いて、前記リセット優先度23を一意に決定する値であれば良い。例えば、IPアドレスをリセット優先度52に用いた場合には、その大小関係を用いることで、リセット優先度23が一意に定まる。また、ユーザが前期優先度定義1115によって静的に与える以外に、クラスタプログラムが動的に定める方法を用いても良く、この場合も、前記優先度定義1115に含まれる情報を用いても良い。
さらに、状態管理表1114における系の追加削除は次のように行なわれる。まず、クラスタプログラム1110が前記監視部1111によって、新たな系のクラスタプログラムとの監視を開始したことを契機として、新たな系が表に加えられる。一方、クラスタプログラム1110が前記系切替部1113によって、障害系をリセットした場合、あるいは、他系のクラスタプログラムがクラスタプログラム1110に対して、障害系をリセットしたことを通知してきた場合に、障害系の削除が行なわれる。
本実施例では、説明を容易にするために、系切替部1113が一つのクラスタ状態管理表1114を持つ例を示しているが、クラスタ状態管理表に含まれる各情報21〜25は、幾つかの表に分割して管理してもよいし、さらには、系切替部以外のクラスタプログラム内にあっても良い。
図3、図4は、本発明によるクラスタプログラムの処理のフローを表しており、図3は、監視部1111を中心とした系の障害監視動作を、図4は系切替部1113を中心とした系切り替え動作を表している。以下、図1、図2と対応づけながら、詳細に説明する。
まず、クラスタプログラム1110は実行されると、互いの系の障害を監視する。まず、前記監視部1111が定期的に前記通信部1112を介して、他のクラスタプログラム1210、1310と通信することで、他系の系監視を行なう。ステップ31によって得られた各系の状態は、前記状態管理表1114中の系識別子21に対応する系状態22に登録される(ステップ301)。
次に、前記ステップ301によって得られた各系の系状態22を参照することで、障害の発生した系(障害系)が存在するかどうかを判断する(ステップ302)。もし、障害系が存在していない場合には、全系が正常に動作しているため、ステップ301に戻り、定期的に障害監視を継続する。一方、障害系が存在する場合には、前記監視部1111が系切替部1113を呼び出し(図中点線)、系切替部のステップ401が実行される(ステップ303)。
監視部1111は、ステップ303を実行後、再び、ステップ301に戻り、再びクラスタ内の他系の状態を監視を行なう。
一方、前記ステップ303で行われた系切替部への指示は、ステップ401で判断される。ステップ401では、新たな障害系が発生するかどうかを判断し、もし、新たな障害系がある場合は、系切替部1113が前記管理表1114のリセット優先度23を参照する(ステップ402)。続いて、前記のリセット優先度に基づいて、自系が障害系をリセットするまでの時間を状態管理表1114のリセットタイマ25に設定し(ステップ403)、ステップ404が行なわれる。一方、ステップ401で、新たな障害系が存在しない場合には、そのままステップ404が行なわれる。
ステップ404では、ステップ403で設定されたリセットタイマの時間が経過したかどうかを判断する。もし、リセットを発行する時間になった場合には、前記状態管理表1114からリセット対象となる系識別子21のリセット先識別子24に示される他系のリセット部1206、1306に対して、通信部1112を介して、リセットを指示する(ステップ405)。
ここで、リセットを受け取ったリセット部1206、1306は、自系の動作を停止させることで、共有リソースの使用を停止する。自系の動作を停止させる方法は、たとえば、電源オフであったり、あるいは、ソフトウェアリセットであったり、OSのシャットダウンであったり、OSをハングアップさせる処理であってもよい。
ステップ405で、リセットに成功した後、系切替部1113は、通信部1112を介して、他系のクラスタプログラムに対して、障害系のリセットを行ったことを通知する(ステップ406)。さらに、状態管理表1114中からリセットされた障害系のリセットタイマ25をクリアし(ステップ407)、再度ステップ401へと戻る。
一方、ステップ404で、まだステップ403で設定されたリセットタイマの時間が経過していない場合には、続いて、リセット完了が他系から行われたかどうかを判断する(ステップ408)。これは、自系よりもリセット優先度が高い他系が存在する場合に、その他系のクラスタプログラムが先に前記ステップ404〜407を実行するため、すでに障害系がリセットされている場合があるためである。
従って、もし、他系のクラスタプログラムからリセット完了通知があった場合には、リセットされた障害系のリセットタイマをクリアし(ステップ407)、リセット済みの障害系を再度リセットしないようにしてから、ステップ401へと戻る。
一方、上記ステップ408において、他系のクラスタプログラムからリセット完了通知がない場合には、まだ障害系がリセットされていないため、何も行わず、再びステップ401へと戻る。
図6は、本発明によって実現されるリセットが行われるタイミングについて示した図である。図6の縦軸は時間経過になっており、時間経過によるリセット処理を表す。また、図6の左は共有リソースの所有者、すなわち、現用系がどの系かを表しており、図6の右は各系でのリセット処理を表している。
また、説明の簡略化のため、図6は、リセット優先度が高い順番に系A・系B・系Cという3台からなるクラスタにおいて、ネットワークスプリットが発生した場合について示している。
時刻T0にネットワークスプリットが発生すると、リセット優先度に基づいて、系A、系B、系Cのリセットタイマは、それぞれ時刻T1、T2、T3が設定される。各系が正常である場合には、それぞれ、設定された時間に、自系からみて障害となっている系に対してリセットを行う。
例えば、系Aからみて系B、系Cが障害であるため、時刻T1に系Aは、それぞれをリセットする(矢印601、602)。仮に、系Aがリセットを行えないような障害が同時に発生していた場合には、時刻T2に系Bがリセットを行う(矢印611612)。同様に系Bもリセットが行えないような障害が生じていれば、時刻T3には、系Cがリセットを行う(矢印621622)ゆえに、時刻T0〜T2までは系Aが、時刻T2〜T3までは系Bが、時刻T3〜T4までは系Cが共有リソースを所有することとなり、系切替が行なわれる。時刻T4以降になる場合は、リセットパスが正常でない場合であるので、本発明の対象外である。以上に述べた本発明の実施例によれば、以下のような効果がある。


まず、リセットパスを持つクラスタ構成の高可用性コンピュータシステムにおいて、系監視用のハートビートが失われた場合には、リセット優先度に従って、障害系をリセットすることにより、リセットを行った系が存在するクラスタ内の系だけが、共有リソースを利用することを保証するため、ネットワークスプリット時でも、系切替を実現することが可能となる。
さらに、リセット優先度が最も高い系が障害にならない場合であれば、その系が障害系をすぐにリセットすることにより、高速な系切替を実現可能である。
さらに、ユーザが優先度定義をクラスタプログラムに静的に定義することで、リセット優先度を自由に設定し、系切替先を制御した系切替を実現可能である。
さらに、ユーザがリセット間隔をクラスタプログラムに定義することで、リセットが行なわれるタイミングを制御することが可能である。
本発明によれば、現用系コンピュータの監視ができなくなった場合に、リセット優先度の高い系が存在するクラスタに系切替を実現することができるので、高速な系切替を可能とし、高可用性コンピュータシステムとして広く実施されることが期待される。
本発明の実施例において、系切替が行なわれる場合におけるクラスタ構成のコンピュータシステムモデルの高位のシステムブロック図である。 本発明の実施例において、クラスタプログラムが管理するクラスタ状態管理表の構成を示した図である。 本発明の実施例において、クラスタプログラムが他系の監視時に行なう処理を説明した処理フロー図である。 本発明の実施例において、クラスタプログラムが系切替を行なう処理を説明した処理フロー図である。 本発明の実施例において、クラスタプログラムがリセットを行う優先度を定義する優先度定義の構成を示した図である。 本発明の実施例において、クラスタプログラムがリセットを行うタイミングについて説明したシーケンス図である。
符号の説明
1101,1201,1301 コンピュータ
1102,1202,1302 アプリケーション
1103,1104,1105,1203,1204,1205,1303,1304,1305 ネットワークアダプタ(NIC)
1106,1206,1306 リセット部
1107,1207,1307 オペレーティングシステム(OS)
1110,1210,1310 クラスタプログラム
1111,1211,1311 監視部
1112,1212,1312 通信部
1113,1213,1313 系切替部
1114,1214,1314 クラスタ状態管理表
1115,1215,1315 優先度定義
1116,1216,1316 リセット間隔定義
21,51 系識別子
22 系状態
23,52 リセット優先度
24 リセット先識別子
25 リセットタイマ。

Claims (8)

  1. 複数のコンピュータが共有リソースを有し、かつ互いに他のコンピュータの動作を監視するためのハートビートパスと、他のコンピュータを停止するためのリセットパスで接続され、もって前記複数のコンピュータの一つが実行系として前記共有リソースを用いる処理を実行するとき、前記共有リソースの排他制御が行われ、他のコンピュータは前記実行系のコンピュータの予備系として機能するクラスタ構成コンピュータの系切替方法であって、
    各コンピュータが
    クラスタ内の他のコンピュータをリセットする優先度を一意に決定する手続き1と、
    前記ハートビートパスによるハートビート検出が途絶えたコンピュータを障害系として検知した場合に、前記優先度に基づいて障害系にリセットを発行するまでのリセット遅延時間を設定する手続き2と、
    前記手続き2で設定されたリセット遅延時間が経過すると障害系をリセットする手続き3と、
    前記手続き3を実行した場合に、他のコンピュータに障害系のリセット完了を通知する手続き4と、
    障害の発生を検知してから前記リセット遅延時間が経過するまでの間に、他のコンピュータから障害系のリセット完了の通知を受けた場合に、前記リセット遅延時間によるタイミングを無効にして、障害系へのリセットを停止する手続き5とをもつことを特徴とする系切替方法。
  2. 前記手続き1では障害系にリセットを発行するまでの前記リセット遅延時間の指定を受けて前記優先度を決定することを特徴とする請求項1に記載の系切替方法。
  3. 前記手続き1では、リセットを行う系の順番の指定を受けて前記優先度とし決定することを特徴とする請求項1に記載の系切替方法。
  4. 前記手続き3を実行したコンピュータが前記障害系の処理を引き継ぐことを特徴とする請求項1の系切替方法。
  5. 各コンピュータは、前記手続き3を実行した場合に、障害系の処理を引き継ぐ予備系を定める手続き6を更に有し、前記手続き6によって定められたコンピュータが、他のコンピュータから前記障害系のリセット完了の通知を受けたことを契機として、障害系の処理を引き継ぐことを特徴とする請求項1に記載の系切替方法。
  6. 所定の記憶リソースを共有する複数のコンピュータを有し、かつ該複数のコンピュータが互いに他のコンピュータの状態を監視するためのハートビートパスと、他のコンピュータをお停止するためのリセットパスとを備えたクラスタ構成コンピュータシステムであって、
    前記複数のコンピュータは、他のコンピュータをリセットする動作の優先度が一意に決定され、
    各コンピュータは、
    現用系であるコンピュータの障害発生を前記ハードビートパスを介して検知したとき、自コンピュータに決定された前記優先度の値に応じて定められるリセット遅延時間をタイマに設定する手段、
    他コンピュータから障害発生による現用系コンピュータのリセットの完了が通知されると前記タイマを停止させる手段、
    前記タイマが前記設定されたリセット遅延時間の経過を検知したことを条件に前記障害が発生した現用系コンピュータに対しリセットを指示し、かつリセットの完了を他のコンピュータに通知する手段、及び
    他コンピュータからリセットが指示されると自コンピュータを強制的に停止させる手段、を有することを特徴とするクラスタ構成コンピュータシステム。
  7. 前記リセット遅延時間を各コンピュータに個別に設定するインターフェースをもつことを特徴とする請求項6のクラスタ構成コンピュータシステム。
  8. 前記複数のコンピュータはリセットを実施する順番の指定を受けて該順番を前記優先度としてそれぞれ設定する手段と、予め設定されたリセットの時間間隔と各コンピュータに設定された前記優先度とからそれぞれの前記リセット遅延時間を決定する手段を有することを特徴とする請求項6のクラスタ構成コンピュータシステム。
JP2004190633A 2004-06-29 2004-06-29 クラスタ構成コンピュータシステムの系切替方法 Active JP4353005B2 (ja)

Priority Applications (3)

Application Number Priority Date Filing Date Title
JP2004190633A JP4353005B2 (ja) 2004-06-29 2004-06-29 クラスタ構成コンピュータシステムの系切替方法
US11/065,352 US7418627B2 (en) 2004-06-29 2005-02-25 Cluster system wherein failover reset signals are sent from nodes according to their priority
US12/194,642 US7853835B2 (en) 2004-06-29 2008-08-20 Cluster system wherein failover reset signals are sent from nodes according to their priority

Applications Claiming Priority (1)

Application Number Priority Date Filing Date Title
JP2004190633A JP4353005B2 (ja) 2004-06-29 2004-06-29 クラスタ構成コンピュータシステムの系切替方法

Related Child Applications (1)

Application Number Title Priority Date Filing Date
JP2009122653A Division JP5012850B2 (ja) 2009-05-21 2009-05-21 クラスタ構成コンピュータシステムの排他制御方法

Publications (2)

Publication Number Publication Date
JP2006011992A JP2006011992A (ja) 2006-01-12
JP4353005B2 true JP4353005B2 (ja) 2009-10-28

Family

ID=35507499

Family Applications (1)

Application Number Title Priority Date Filing Date
JP2004190633A Active JP4353005B2 (ja) 2004-06-29 2004-06-29 クラスタ構成コンピュータシステムの系切替方法

Country Status (2)

Country Link
US (2) US7418627B2 (ja)
JP (1) JP4353005B2 (ja)

Families Citing this family (49)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
JP4529767B2 (ja) * 2005-04-04 2010-08-25 株式会社日立製作所 クラスタ構成コンピュータシステム及びその系リセット方法
US7937616B2 (en) * 2005-06-28 2011-05-03 International Business Machines Corporation Cluster availability management
US7743372B2 (en) * 2005-06-28 2010-06-22 Internatinal Business Machines Corporation Dynamic cluster code updating in logical partitions
US7774785B2 (en) * 2005-06-28 2010-08-10 International Business Machines Corporation Cluster code management
US7647474B2 (en) * 2005-09-27 2010-01-12 Intel Corporation Saving system context in the event of power loss
EP1943580A2 (en) * 2005-10-25 2008-07-16 Koninklijke Philips Electronics N.V. Data processing arrangement comprising a reset facility
JP2007279890A (ja) * 2006-04-04 2007-10-25 Hitachi Ltd バックアップシステム及びバックアップ方法
US7913105B1 (en) * 2006-09-29 2011-03-22 Symantec Operating Corporation High availability cluster with notification of resource state changes
JP2008123357A (ja) * 2006-11-14 2008-05-29 Honda Motor Co Ltd 並列計算機システム、並列計算方法および並列計算機用プログラム
JP4863905B2 (ja) * 2007-03-02 2012-01-25 株式会社日立製作所 ストレージ利用排他方式
JP2008269462A (ja) * 2007-04-24 2008-11-06 Hitachi Ltd ノードの管理装置及び方法
JP4836979B2 (ja) * 2008-03-07 2011-12-14 三菱電機株式会社 二重化プログラマブルコントローラ
JP4571203B2 (ja) * 2008-05-09 2010-10-27 株式会社日立製作所 情報処理システムにおける管理サーバ、及びクラスタ管理方法
JP5377898B2 (ja) 2008-07-10 2013-12-25 株式会社日立製作所 クラスタリングを構成する計算機システムの系切替方法、及びシステム
US9454444B1 (en) 2009-03-19 2016-09-27 Veritas Technologies Llc Using location tracking of cluster nodes to avoid single points of failure
US8458515B1 (en) 2009-11-16 2013-06-04 Symantec Corporation Raid5 recovery in a high availability object based file system
US8555105B2 (en) * 2010-04-12 2013-10-08 International Business Machines Corporation Fallover policy management in high availability systems
JP5285045B2 (ja) * 2010-06-04 2013-09-11 日本電信電話株式会社 仮想環境における故障復旧方法及びサーバ及びプログラム
JP5277229B2 (ja) * 2010-06-04 2013-08-28 日本電信電話株式会社 クラスタシステム復旧方法、サーバ及びソフトウェア
JP5285044B2 (ja) * 2010-06-04 2013-09-11 日本電信電話株式会社 クラスタシステム復旧方法及びサーバ及びプログラム
JP5277227B2 (ja) * 2010-06-04 2013-08-28 日本電信電話株式会社 クラスタシステム復旧方法、サーバ及びソフトウェア
JP5277228B2 (ja) * 2010-06-04 2013-08-28 日本電信電話株式会社 クラスタシステム復旧方法、サーバ及びソフトウェア
US8738961B2 (en) 2010-08-17 2014-05-27 International Business Machines Corporation High-availability computer cluster with failover support based on a resource map
US8495323B1 (en) 2010-12-07 2013-07-23 Symantec Corporation Method and system of providing exclusive and secure access to virtual storage objects in a virtual machine cluster
JP2013156963A (ja) * 2012-01-31 2013-08-15 Fujitsu Ltd 制御プログラム、制御方法、情報処理装置、制御システム
CN103546872B (zh) * 2012-07-17 2017-04-05 普天信息技术研究院有限公司 一种集群通信系统中的寻呼消息发送方法
JP6056554B2 (ja) * 2013-03-04 2017-01-11 日本電気株式会社 クラスタシステム
US9444748B2 (en) 2013-03-15 2016-09-13 International Business Machines Corporation Scalable flow and congestion control with OpenFlow
US9407560B2 (en) 2013-03-15 2016-08-02 International Business Machines Corporation Software defined network-based load balancing for physical and virtual networks
US9769074B2 (en) 2013-03-15 2017-09-19 International Business Machines Corporation Network per-flow rate limiting
US9596192B2 (en) 2013-03-15 2017-03-14 International Business Machines Corporation Reliable link layer for control links between network controllers and switches
US9609086B2 (en) 2013-03-15 2017-03-28 International Business Machines Corporation Virtual machine mobility using OpenFlow
US9104643B2 (en) * 2013-03-15 2015-08-11 International Business Machines Corporation OpenFlow controller master-slave initialization protocol
US9118984B2 (en) 2013-03-15 2015-08-25 International Business Machines Corporation Control plane for integrated switch wavelength division multiplexing
KR102170720B1 (ko) * 2013-10-30 2020-10-27 삼성에스디에스 주식회사 클러스터 노드 상태 변경 장치 및 방법과 그 프로그램을 기록한 기록 매체
US11223515B2 (en) * 2017-09-06 2022-01-11 Nec Corporation Cluster system, cluster system control method, server device, control method, and non-transitory computer-readable medium storing program
JP6935819B2 (ja) 2017-09-13 2021-09-15 日本電気株式会社 ノード装置、回復動作制御方法、及び回復動作制御プログラム
CN108199912B (zh) * 2017-12-15 2020-09-22 北京奇艺世纪科技有限公司 一种异地多活的分布式消息的管理、消费方法及装置
US10802715B2 (en) * 2018-09-21 2020-10-13 Microsoft Technology Licensing, Llc Mounting a drive to multiple computing systems
CN112099995A (zh) * 2020-09-18 2020-12-18 山东超越数控电子股份有限公司 一种实现网络密码机双机热备功能的系统及方法
US11934670B2 (en) 2021-03-31 2024-03-19 Netapp, Inc. Performing various operations at the granularity of a consistency group within a cross-site storage solution
US11740811B2 (en) 2021-03-31 2023-08-29 Netapp, Inc. Reseeding a mediator of a cross-site storage solution
US11709743B2 (en) 2021-03-31 2023-07-25 Netapp, Inc. Methods and systems for a non-disruptive automatic unplanned failover from a primary copy of data at a primary storage system to a mirror copy of the data at a cross-site secondary storage system
US11550679B2 (en) * 2021-03-31 2023-01-10 Netapp, Inc. Methods and systems for a non-disruptive planned failover from a primary copy of data at a primary storage system to a mirror copy of the data at a cross-site secondary storage system
US11481139B1 (en) 2021-03-31 2022-10-25 Netapp, Inc. Methods and systems to interface between a multi-site distributed storage system and an external mediator to efficiently process events related to continuity
US11409622B1 (en) 2021-04-23 2022-08-09 Netapp, Inc. Methods and systems for a non-disruptive planned failover from a primary copy of data at a primary storage system to a mirror copy of the data at a cross-site secondary storage system without using an external mediator
US11893261B2 (en) 2021-05-05 2024-02-06 Netapp, Inc. Usage of OP logs to synchronize across primary and secondary storage clusters of a cross-site distributed storage system and lightweight OP logging
US11892982B2 (en) 2021-10-20 2024-02-06 Netapp, Inc. Facilitating immediate performance of volume resynchronization with the use of passive cache entries
US11907562B2 (en) 2022-07-11 2024-02-20 Netapp, Inc. Methods and storage nodes to decrease delay in resuming input output (I/O) operations after a non-disruptive event for a storage object of a distributed storage system by utilizing asynchronous inflight replay of the I/O operations

Family Cites Families (17)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US4228496A (en) * 1976-09-07 1980-10-14 Tandem Computers Incorporated Multiprocessor system
US4639859A (en) * 1984-05-24 1987-01-27 Rca Corporation Priority arbitration logic for a multi-master bus system
GB2290891B (en) * 1994-06-29 1999-02-17 Mitsubishi Electric Corp Multiprocessor system
JP3537281B2 (ja) * 1997-01-17 2004-06-14 株式会社日立製作所 共有ディスク型多重系システム
US6370656B1 (en) * 1998-11-19 2002-04-09 Compaq Information Technologies, Group L. P. Computer system with adaptive heartbeat
US6393590B1 (en) * 1998-12-22 2002-05-21 Nortel Networks Limited Method and apparatus for ensuring proper functionality of a shared memory, multiprocessor system
US6550017B1 (en) * 1999-06-29 2003-04-15 Sun Microsystems, Inc. System and method of monitoring a distributed fault tolerant computer system
JP2001101033A (ja) * 1999-09-27 2001-04-13 Hitachi Ltd オペレーティングシステム及びアプリケーションプログラムの障害監視方法
US6584587B1 (en) * 1999-10-14 2003-06-24 Sony Corporation Watchdog method and apparatus
US6789213B2 (en) * 2000-01-10 2004-09-07 Sun Microsystems, Inc. Controlled take over of services by remaining nodes of clustered computing system
US6728897B1 (en) * 2000-07-25 2004-04-27 Network Appliance, Inc. Negotiating takeover in high availability cluster
US6738923B1 (en) * 2000-09-07 2004-05-18 International Business Machines Corporation Network station adjustable fail-over time intervals for booting to backup servers when transport service is not available
US6922791B2 (en) * 2001-08-09 2005-07-26 Dell Products L.P. Failover system and method for cluster environment
US6892311B2 (en) * 2002-05-08 2005-05-10 Dell Usa, L.P. System and method for shutting down a host and storage enclosure if the status of the storage enclosure is in a first condition and is determined that the storage enclosure includes a critical storage volume
JP2004021556A (ja) * 2002-06-14 2004-01-22 Hitachi Ltd 記憶制御装置およびその制御方法
US20040103345A1 (en) * 2002-11-21 2004-05-27 Dunstan Robert A. Method, apparatus and system for ensuring reliable power down of a personal computer
US7380163B2 (en) * 2003-04-23 2008-05-27 Dot Hill Systems Corporation Apparatus and method for deterministically performing active-active failover of redundant servers in response to a heartbeat link failure

Also Published As

Publication number Publication date
US7418627B2 (en) 2008-08-26
US20090089609A1 (en) 2009-04-02
US20050289390A1 (en) 2005-12-29
US7853835B2 (en) 2010-12-14
JP2006011992A (ja) 2006-01-12

Similar Documents

Publication Publication Date Title
JP4353005B2 (ja) クラスタ構成コンピュータシステムの系切替方法
US8386830B2 (en) Server switching method and server system equipped therewith
JP4529767B2 (ja) クラスタ構成コンピュータシステム及びその系リセット方法
US6952766B2 (en) Automated node restart in clustered computer system
US9110717B2 (en) Managing use of lease resources allocated on fallover in a high availability computing environment
CA3168286A1 (en) Data flow processing method and system
JP4669487B2 (ja) 情報処理システムの運用管理装置および運用管理方法
US20040205148A1 (en) Method for operating a computer cluster
JP2005209191A (ja) 高可用性システムの遠隔エンタープライズ管理
JP2002526821A (ja) 複数のファイルサーバ間における永続状況情報の調整
JPWO2008126325A1 (ja) クラスタシステム、ソフトウェア更新方法、サービス提供ノード、およびサービス提供用プログラム
WO2017063521A1 (zh) 协程监控方法及装置
EP2645635B1 (en) Cluster monitor, method for monitoring a cluster, and computer-readable recording medium
JP2002259155A (ja) 多重系計算機システム
CN101442437B (zh) 一种实现高可用性的方法、系统及设备
JP5012850B2 (ja) クラスタ構成コンピュータシステムの排他制御方法
JP2000222376A (ja) 計算機システムとその運用方法
JP5561308B2 (ja) クラスタ構成コンピュータシステムの排他制御方法
JP4485560B2 (ja) コンピュータ・システム及びシステム管理プログラム
JP6856574B2 (ja) サービス継続システムおよびサービス継続方法
US10514975B2 (en) Preventing corruption by blocking requests
CN111984376B (zh) 协议处理方法、装置、设备及计算机可读存储介质
JP7389387B2 (ja) 呼制御装置、呼処理継続方法、および、呼制御プログラム
KR101615577B1 (ko) 클러스터 시스템에서 클러스터를 처리하기 위한 방법과 장치 및 시스템
JP2014116035A (ja) サーバ切り替え方法、サーバシステム、及び管理計算機

Legal Events

Date Code Title Description
RD04 Notification of resignation of power of attorney

Free format text: JAPANESE INTERMEDIATE CODE: A7424

Effective date: 20060424

A621 Written request for application examination

Free format text: JAPANESE INTERMEDIATE CODE: A621

Effective date: 20070314

A977 Report on retrieval

Free format text: JAPANESE INTERMEDIATE CODE: A971007

Effective date: 20090316

A131 Notification of reasons for refusal

Free format text: JAPANESE INTERMEDIATE CODE: A131

Effective date: 20090324

A521 Request for written amendment filed

Free format text: JAPANESE INTERMEDIATE CODE: A523

Effective date: 20090521

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: 20090707

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: 20090720

R151 Written notification of patent or utility model registration

Ref document number: 4353005

Country of ref document: JP

Free format text: JAPANESE INTERMEDIATE CODE: R151

FPAY Renewal fee payment (event date is renewal date of database)

Free format text: PAYMENT UNTIL: 20120807

Year of fee payment: 3

FPAY Renewal fee payment (event date is renewal date of database)

Free format text: PAYMENT UNTIL: 20120807

Year of fee payment: 3

FPAY Renewal fee payment (event date is renewal date of database)

Free format text: PAYMENT UNTIL: 20130807

Year of fee payment: 4