JPH09237226A - マルチコンピュータ・システムにおける信頼性の高いディスク・フェンシングのための方法および装置 - Google Patents

マルチコンピュータ・システムにおける信頼性の高いディスク・フェンシングのための方法および装置

Info

Publication number
JPH09237226A
JPH09237226A JP8307544A JP30754496A JPH09237226A JP H09237226 A JPH09237226 A JP H09237226A JP 8307544 A JP8307544 A JP 8307544A JP 30754496 A JP30754496 A JP 30754496A JP H09237226 A JPH09237226 A JP H09237226A
Authority
JP
Japan
Prior art keywords
node
membership
value
disk
resource
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.)
Pending
Application number
JP8307544A
Other languages
English (en)
Other versions
JPH09237226A5 (ja
Inventor
Vladimir Matena
ウラジミール・マテナ
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.)
Sun Microsystems Inc
Original Assignee
Sun Microsystems Inc
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 Sun Microsystems Inc filed Critical Sun Microsystems Inc
Publication of JPH09237226A publication Critical patent/JPH09237226A/ja
Publication of JPH09237226A5 publication Critical patent/JPH09237226A5/ja
Pending legal-status Critical Current

Links

Classifications

    • GPHYSICS
    • G06COMPUTING OR CALCULATING; COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F11/00Error detection; Error correction; Monitoring
    • G06F11/07Responding to the occurrence of a fault, e.g. fault tolerance
    • G06F11/14Error detection or correction of the data by redundancy in operations
    • G06F11/1402Saving, restoring, recovering or retrying
    • G06F11/1415Saving, restoring, recovering or retrying at system level
    • G06F11/142Reconfiguring to eliminate the error
    • G06F11/1425Reconfiguring to eliminate the error by reconfiguration of node membership
    • GPHYSICS
    • G06COMPUTING OR CALCULATING; COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F11/00Error detection; Error correction; Monitoring
    • G06F11/07Responding to the occurrence of a fault, e.g. fault tolerance
    • G06F11/14Error detection or correction of the data by redundancy in operations
    • G06F11/1402Saving, restoring, recovering or retrying
    • G06F11/1415Saving, restoring, recovering or retrying at system level
    • G06F11/142Reconfiguring to eliminate the error
    • GPHYSICS
    • G06COMPUTING OR CALCULATING; 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

Landscapes

  • Engineering & Computer Science (AREA)
  • Theoretical Computer Science (AREA)
  • Quality & Reliability (AREA)
  • Physics & Mathematics (AREA)
  • General Engineering & Computer Science (AREA)
  • General Physics & Mathematics (AREA)
  • Hardware Redundancy (AREA)
  • Storage Device Security (AREA)

Abstract

(57)【要約】 【課題】 ネットワーク化システム上の共用ディスクな
どの資源の高速かつ確実な分離のための方法および装置
を提供する。 【解決手段】 システム上のノードと資源からなる新し
い構成ごとに、新しいメンバシップ・リストを生成し、
それに基づいて、それが存在する時期と相関関係にある
メンバシップを明確に識別する新しいエポック番号を生
成する。エポック番号に基づく制御キーが生成され、シ
ステム上の各資源制御装置およびノードで格納される。
あるノードが障害が発生したものと識別されると、それ
はメンバシップ・リストから除去され、新しいエポック
番号と制御キーが生成される。ノードが資源に対してア
クセス要求を送ると、資源制御装置は、ローカルに格納
されたその制御キーと、ノードで格納された制御キー
(アクセス要求とともに伝送されたもの)とを比較す
る。2つのキーが一致した場合のみ、アクセス要求が実
行される。

Description

【発明の詳細な説明】
【0001】
【発明の属する技術分野】本発明は、複数のコンピュー
タ(ノード)が共用ディスクに対して並行アクセス可能
なマルチコンピュータ・システム、たとえば、クラスタ
における共用ディスクの信頼性の高いディスク・フェン
シング(disk fencing)のためのシステムに関する。具
体的には、このシステムは、共用アクセス・ディスクを
備えた高可用性のシステムに対処するものである。
【0002】
【従来の技術】クラスタ化コンピュータ・システムで
は、他のノードが従う任意の定義済み基準により、所与
のノードで「障害が発生する」、すなわち、それが使用
不能になることがある。たとえば、所与のノードが任意
の所定の時間より短時間の間に要求に応答できなかった
可能性が考えられる。したがって、異常にゆっくり実行
しているノードは障害が発生したと見なされる可能性が
あり、それに応じて残りのノードが応答することにな
る。
【0003】1つのノード(または複数のノード)で障
害が発生すると、残りのノードはシステム再構成を実行
して、障害が発生したノード(複数も可)をシステムか
ら除去しなければならず、その場合、残りのノードは障
害が発生したノード(複数も可)が提供していたサービ
スを提供することが好ましい。
【0004】障害が発生したノードをできるだけ迅速に
共用ディスクから分離することが重要である。そうでな
い場合、システム再構成が完了するまでに障害が発生し
た(またはゆっくり実行している)ノードが分離されな
いと、そのノードが共用ディスクに対して読み書き要求
を出し続ける可能性があり、それにより、共用ディスク
上のデータを破壊する恐れがある。
【0005】この種の問題に対処するために、ディスク
・フェンシングプロトコルが開発されている。たとえ
ば、VAXクラスタ・システムでは、「デッドマン・ブ
レーキ」機構を使用する。参照により本明細書に組み込
まれるDavis,R.J.のVAX cluster
Principles(Digital Pres
s,1993)を参照されたい。VAXクラスタ・シス
テムでは、障害が発生したノードが新しい構成から分離
され、新しい構成内のノードは、ディスクへのアクセス
が許可されるまでの所与の所定のタイムアウト期間中、
待機しなければならない。分離したノード上のデッドマ
ン・ブレーキ機構により、タイムアウト期間の終了ま
で、分離したノードが「アイドル」状態になることが保
証される。
【0006】VAXクラスタ・システム内の分離したノ
ード上のデッドマン・ブレーキ機構は、ハードウェアと
ソフトウェアの両方を含む。分離したノード上のソフト
ウェアは、共用ディスクとクラスタ相互接続との間に結
合されるクラスタ相互接続アダプタ(CI)に対して、
そのノードが「健全」であることを定期的に通知しなけ
ればならない。このソフトウェアは、そのノードが新し
い構成の一部ではないことを限られた時間内に検出する
ことができる。このような状態が検出されると、ソフト
ウェアはディスク入出力をブロックし、その結果、障害
が発生したノードによる共用ディスクへのすべてのアク
セスを防止するソフトウェア「フェンス」がセットアッ
プされる。このソフトウェア・フェンスがもたらす欠点
は、ソフトウェアが信頼性の高いものでなければならな
いことであり、「フェンス」ソフトウェアの障害(また
はバグ)が発生すると、その結果、表面上分離したノー
ドによる共用ディスクへのアクセスをブロックできなく
なる。
【0007】ソフトウェアの実行速度が遅すぎ、かつ適
切にソフトウェア・フェンスがセットアップされない場
合、CIハードウェアはそのノードを相互接続から遮断
し、それにより、ハードウェア・フェンス、すなわち、
障害が発生したノードが共用ディスクにアクセスできな
いようにするハードウェア障害物をセットアップする。
このハードウェア・フェンスは、CIホスト・アダプタ
上の健全タイマにより実現される。ソフトウェアは、そ
のソフトウェアが「健全」であることをCIハードウェ
アに定期的に通知しなければならない。所与のタイムア
ウト期間内にこれを行わないと、CI内の健全タイマが
起動されることになる。これが「デッドマン・ブレー
キ」機構である。
【0008】このノード分離システムには、上記以外に
次のような欠点がある。 ・ハードウェア・フェンスを実現するために内部タイマ
を使用する相互接続アダプタが必要である。 ・ノードとディスクとの間の相互接続がスイッチまたは
その他のバッファ装置を含む場合、この解決策は機能し
ない。分離したノードからのディスク要求は本来、この
ようなスイッチまたはバッファによって遅延され、新し
い構成がすでにディスクにアクセスした後にディスクに
送られるはずである。このような要求の遅延によって、
ファイルまたはデータベースが破壊される恐れがある。 ・様々なタイムアウト値によっては、新しい構成のメン
バがディスクにアクセスできるようになるまで待機しな
ければならない時間が長くなりすぎる場合があり、その
結果、システム全体のパフォーマンスが低下し、高可用
性の原則に反することになる。
【0009】アーキテクチャ・レベルで見た場合、上記
のノード分離方法の重大な欠点は、そのノードが端末間
特性を備えていないことであり、フェンスがディスク制
御装置上ではなく、ノード上にセットアップされること
である。
【0010】ディスク制御装置で障害が発生したディス
クの分離を迅速にセットアップしながら高可用性を提示
するシステムを用意すると、有利であると思われる。
【0011】UNIXベースのその他のクラスタ化シス
テムでは、クラスタ化ノードの不要なサブセットが共用
ディスクにアクセスできないようにするために、SCS
I(small computer systems ubterface 小型コンピュ
ータ・システム・インタフェース)の「ディスク予約」
を使用する。たとえば、情報システムに関するANSI
SCSI−2規格案(1990年3月9日付け、Gl
obal Engineering Document
sが配布)を参照されたい。これは参照により本明細書
に組み込まれるものである。ディスク予約にはいくつか
の欠点がある。たとえば、ディスク予約プロトコルは、
2つのノードを有するシステムにしか適用できない。と
いうのは、ノードが1つだけの場合、一度に1枚ずつデ
ィスクを予約できる(すなわち、他のどのノードも同時
にそのディスクにアクセスすることができない)からで
ある。もう1つは、SCSIシステムでは、SCSIバ
ス・リセット動作によりディスク予約が除去され、ソフ
トウェア・ディスク・ドライバがいつでもSCSIバス
・リセットを出すことができることである。したがっ
て、SCSIのディスク予約は、信頼性の高いディスク
・フェンシング技法ではない。
【0012】もう1つのノード分離方法は「毒薬」を含
む。すなわち、再構成中にシステムから1つのノードが
除去されると、残りのノードの1つが障害が発生したノ
ードに対して「毒薬」すなわち停止要求を送るのであ
る。障害が発生したノードが活動状態にある(たとえ
ば、ゆっくり実行している)場合、そのノードは毒薬を
摂取し、所定の時間内にアイドル状態になる。
【0013】この毒薬は、障害が発生したノードのホス
ト・アダプタ・カードまたは障害が発生したノード上の
割込みハンドラのいずれかによって処理される。これが
ホスト・アダプタ・カードによって処理される場合、こ
の方法を実現するためにシステムは特別に設計したホス
ト・アダプタ・カードを必要とするという欠点がもたら
される。障害が発生したノード上の割込みハンドラによ
って処理される場合は、ノード分離が信頼できなくなる
という欠点がある。たとえば、上記のVAXクラスタの
場合のように、ノードのソフトウェア自体が信頼できな
いものになる可能性があり、タイムアウト遅延が発生
し、やはり共用ディスクではなくノードで分離が行われ
る。
【0014】
【発明が解決しようとする課題】したがって、分離した
ノードが共用ディスクにアクセスするのを迅速かつ確実
にブロックし、ディスク・アクセスへの防止をするのに
分離したノードに依存しない機構を使用して、共用ディ
スクへのアクセスをそのディスク側で防止するシステム
が要求されている。
【0015】
【課題を解決するための手段】本発明は、共用ディスク
などの入出力装置を含む、障害が発生した資源を迅速か
つ確実に分離するための方法および装置で、コンピュー
タ・システムまたはネットワーク上のほぼすべての共用
資源に適用可能である。本発明のシステムは、すべての
活動状態の共用資源のメンバシップ・リストを維持し、
資源が追加されるかまたは障害が発生した場合(その結
果、機能的に除去しなければならない場合)など、新し
い構成のたびに、システムは、その時点でその構成を明
確に識別する新しいエポック番号またはその他の値を生
成する。したがって、異なる時点で生成した同一のメン
バシップは、特に、中間に異なるメンバシップ・セット
が発生した場合には、エポック番号が異なることにな
る。
【0016】新しいエポック番号が生成されるたびに、
それから制御キー値が導出され、システム内のノードに
送られる。それぞれのノードは、それ専用のノード・キ
ーとしてその制御キーをローカルに格納する。資源用の
制御装置(ディスク制御装置など)も制御キーをローカ
ルに格納する。その後、共用資源アクセス要求が資源制
御装置に送られると、それとともに必ずノード・キーが
送られる。次に制御装置は、そのノード・キーが制御装
置が格納しているバージョンの制御キーと一致するかど
うかを検査し、2つのキーが一致する場合のみ、資源ア
クセス要求を許可する。
【0017】資源ファイルで障害が発生した場合、たと
えば、資源ファイルが所定の期間内に要求に応答しない
場合(ハードウェアまたはソフトウェア欠陥の可能性を
示す)、システムのメンバシップは新規と判定され、障
害が発生した資源が除去される。新しいエポック番号が
生成され、そこから新しい制御キーが生成され、システ
ム上のすべての資源制御装置およびノードに伝送され
る。新しい制御キーの生成された後でアクセス要求が資
源制御装置に到達した場合、そのアクセス要求には、現
行制御キーとは異なるノード・キーが付けられ、したが
って、その要求は実行されないことになる。これは、ノ
ードが現行メンバシップ・セットに含まれない資源にア
クセス要求を出すのを防止することと結合すると、処理
するためにはすべてのノード要求が現行制御キー(およ
びその結果のメンバシップ)情報を有していなければな
らないと要求することにより、障害が発生した資源が迅
速にアクセスから除去されることになる。
【0018】それぞれのノードは、本発明の諸機能を実
行するためにプログラム・モジュール、たとえば、ディ
スク(または資源)マネージャ・モジュール、分散ロッ
ク・マネージャ・モジュール、メンバシップ・モジュー
ルを格納している。このようなモジュールの分散によっ
て、どのノードも、障害が発生したものとして資源を識
別し、残りのノードにそれを連絡し、新しいメンバシッ
プ・リスト、エポック番号、制御キーを生成できるよう
になる。
【0019】したがって、上記のシステムは、障害が発
生した資源のハードウェアまたはソフトウェアに依存せ
ず、高速の端末間(すなわち、資源側での)資源分離を
可能にする。
【0020】
【発明の実施の形態】本発明のシステムは、一般に、複
数のノード20〜40(この例ではノード1〜3)と1
組または複数組の共用ディスク50とを含む、図1に示
すシステム10などのクラスタ化システムに適用可能で
ある。ノード20〜40のそれぞれは、1つまたは複数
のプロセッサを有し、メモリ、大容量記憶装置、ユーザ
入出力装置(モニタ、キーボード、マウスなど)、その
他の従来のコンピュータ・システム要素(図1にすべて
示されているわけではない)を含む、従来のプロセッサ
ベースのシステムにすることができ、クラスタ化環境で
動作するように構成することができる。
【0021】ディスク50はディスク制御装置60によ
りアクセスされ制御されるが、この制御装置は従来のデ
ィスク制御装置のハードウェアとソフトウェアを含むこ
とができ、以下に記載する特徴に加え、ディスク制御機
能を実行するためにプロセッサとメモリ(個別に図示せ
ず)とを含む。
【0022】一般に、本発明のシステムは、ノード20
〜40およびディスク制御装置のメモリに格納されたソ
フトウェア・モジュールによって実現することができ
る。このソフトウェア・モジュールは、本発明のディス
ク・フェンシングシステムを実現するための適当な要素
に関する以下の教示に基づいて、従来のソフトウェア・
エンジニアリングによって構築することができる。した
がって、一般に以下の説明では、記載する各機能は、ノ
ードまたは資源(たとえば、ディスク)制御装置のいず
れか該当する方に格納された個別のプログラム・モジュ
ールによって実現することができ、また、このような機
能のいくつかは、単一の多目的モジュールによって効果
的に実現することもできる。
【0023】図2は、本発明を実現するクラスタ化シス
テム70をより詳細に示している。システム70は、4
つのノード80〜110(ノードA〜D)と、少なくと
も1つの共用ディスク・システム120とを含む。ノー
ド80〜110は、従来のどのようなクラスタ・ノード
(ノード20〜40またはその他の適切なクラスタ・ノ
ードのように、ワークステーション、パーソナル・コン
ピュータ、その他のプロセッサベースのシステムなど)
にすることもでき、ディスク・システムは、図1に関連
して述べたように、ディスク・システム50を含む、適
切な共用ディスク・アセンブリにすることができる。
【0024】各ノード80〜110は、少なくとも以下
のソフトウェア・モジュールを含む。すなわち、ディス
ク・マネージャ(DM)、任意の分散ロック・マネージ
ャ(DLM)、メンバシップ・モニタ(MM)である。
これらのモジュールは、大部分はクラスタ化コンピュー
ティングの分野に従来からあるものでよく、本発明の特
徴を実現するために必要な修正を加えたものにすること
ができる。4つのMMモジュールMMA〜MMDは、図
2に示すように互いに連絡した状態で接続されており、
ディスク・マネージャ・モジュールDMA〜DMDのそ
れぞれはディスク・システム120のディスク制御装置
(個別に図示せず)に結合されている。
【0025】従来のクラスタ化システムのノードは、上
記のVAX cluster Principlesに
記載されているような「メンバシップ・プロトコル」に
関与する。メンバシップ・プロトコルは、障害の認知に
よって所与のノードが脱落したときに新しい構成を形成
するノードの組について合意を確立するために使用する
ものである。メンバシップ・プロトコルを使用すると、
(a)システムの現行メンバであると見なされるノード
のサブセットと、(b)システムの現行状況を反映した
「エポック番号」(EN)とを含む出力が得られる。E
Nに代わるものとしては、所与の時間のシステムの状況
を明確に反映する時間値または状況値がある。本システ
ムでは、このようなメンバシップ・プロトコルを使用す
ることができる。
【0026】メンバシップ・プロトコルにより、メンバ
シップ・セットが変わると、新しい固有のエポック番号
が必ず生成され、新しいメンバシップ・セットと関連付
けられる。たとえば、システムが(図2のように)4つ
のノードA〜Dからなるメンバシップで始まり、エポッ
ク番号100が現行構成に割り当てられている場合、こ
れは<A,B,C,D;#100>または<MEM=
A,B,C,D;EN=100>として表すことができ
る。ただし、MEMは「メンバシップ」を表す。これ
は、図3(a)に表されている構成であり、4つのノー
ドすべてが活動状態で、クラスタ内の関与ノードになっ
ている。
【0027】ノードDがクラッシュするかまたは誤動作
しているものとして検出された場合、新しいメンバシッ
プは<MEM=A,B,C;EN=101>になる。す
なわち、ノードDがメンバシップ・リストから除去さ
れ、エポック番号が101に増分されて、Dがほんの最
近までメンバーだったというエポックが終了したことを
示す。新しいメンバシップに関与するすべてのノードは
新しいメンバシップ・リストと新しいエポック番号を格
納するが、障害が発生したノードD(および障害が発生
したその他のノード)は古いメンバシップ・リストと古
いエポック番号を維持する。これは図3(b)に示す通
りであり、ノードA〜Cのメモリはいずれも<MEM=
A,B,C;EN=101>を格納しているが、障害が
発生し分離されたノードDは<MEM=A,B,C,
D;EN=100>を格納している。
【0028】本発明では、この事実、すなわち、現行情
報は活動状態のノードによって格納され、時代遅れの情
報は分離したノード(複数も可)によって格納されると
いうことを利用して、ディスク・フェンシングを達成す
る。これは、ノードと共用ディスク・システムの制御装
置(たとえば、ディスク制御装置の揮発性メモリ)によ
って格納された「制御キー」(CK)変数の値を使用す
ることによって行われる。
【0029】図4は、ノード410〜440と、ディス
ク452〜456(システム450)と462〜466
(システム460)を含む2つの共用ディスク・システ
ム450〜460とを含む、4ノード・クラスタ化・シ
ステム400のブロック図である。ディスク・システム
450および460はそれらとクラスタ相互接続490
との間に接続されたそれぞれ用のディスク制御装置47
0および480によって制御される。この相互接続はデ
ィスク制御装置とノードとの間に設けられている。
【0030】ノード410〜440は、前述のようにプ
ロセッサベースのシステムにすることができ、ディスク
制御装置も前述の通りであるので、ノード、共用ディス
ク・システム(制御装置あり)、クラスタ相互接続は、
当技術分野で従来のものにここに記載する特徴を追加し
たものにすることができる。
【0031】各ノードは、「ノード・キー」(NK)変
数とメンバシップ情報の両方を格納する。NK値は、方
法1〜3として以下に記載するいくつかの代替機能の1
つによって、現行メンバシップから計算される。図4
は、いずれかのノードで障害が発生し、そのノードがメ
ンバシップ・セットから除外された場合に、そのノード
が残りのノードとは異なるCK番号を有する可能性があ
ることを考慮に入れた汎用状況を示している。
【0032】しかし、原則として、すべてのノードが活
動状態の場合、それぞれの格納NK値とディスク制御装
置で格納されたCK値はすべて等しくなる。
【0033】ノード・キー値および制御キー値を使用す
ノード/ディスク制御装置の動作 ディスク制御装置にアクセスするためのノードによる各
読み書き要求はNK値を含む。すなわち、ノードが共用
ディスクへの読取りまたは書込みアクセスを要求する場
合、必ずその要求の一部としてNK値が渡される。した
がって、このように読み書き要求にNK値を含めること
がノードと制御装置(複数も可)との間のプロトコルの
一部を構成する。
【0034】ノードとディスク制御装置との間のプロト
コルは、制御装置上でCK値を操作する2つの動作も含
む。すなわち、現行CK値を読み取るためのGetKe
yと、CKの値を新しい値に設定するSetKeyであ
る。GetKeyでは、NK値、CK値、EN値を供給
する必要はないが、SetKeyプロトコルでは、NK
値を入力として使用し、さらに制御装置が採用すべき新
しいCK値「new.CK」を供給する。
【0035】上記の4通りの要求とそれぞれの入出力引
数は、次のように表し、まとめることができる。 Read(NK,...) Write(NK,...) GetKey(...) SetKey(NK,new.CK)
【0036】GetKey(...)動作は、CKの現
行値を返す。この動作が制御装置によって拒否されるこ
とはない。
【0037】SetKey(NK,new.CK)動作
は、まず、要求のNKフィールドが制御装置内の現行C
K値と一致するかどうかを検査する。一致する場合、制
御装置内のCK値は(SetKey要求の)「new.
CK」フィールド内の値に等しくなるように設定され
る。要求側ノードからのNKが制御装置に格納された現
行CK値と一致しない場合、この動作が拒否され、要求
側ノードにエラー表示が送られる。
【0038】パケット内のNKフィールドがCKの現行
値と一致する場合のみディスクにアクセスするために、
Read(NK,...)動作とWrite(N
K,...)動作が許可される。それ以外の場合、この
動作は制御装置によって拒否され、要求側ノードにエラ
ー表示が送られる。
【0039】制御装置を始動したときに、CK値が0に
初期設定されることが好ましい。
【0040】ノードの障害時の手順 障害が発生した1つまたは複数のノードがシステムから
除去されるためにメンバシップが変わる場合、残りのノ
ードは、(後述するように)新しいメンバシップ情報か
らCKの新しい値を計算する。ノードの1つは、Set
Key(NK,new.CK)動作を使用してディスク
制御装置に新しいCK値を連絡する。新しいCK値が設
定された後、新しい構成のすべてのメンバ(活動)ノー
ドがそれぞれのNK値をこの新しいCK値に設定する。
【0041】ノードが新しい構成の一部ではない(たと
えば、障害が発生したノード)場合、そのNKを変更す
ることができない。このようなノードがディスクの読取
りまたは書込みを試みると、制御装置は、新しいCK値
と古いNK値との不一致を検出する。
【0042】ノードを始動すると、そのNKが0値に初
期設定される。
【0043】制御キー(CK)の値を計算するための手
制御キーCKはいくつかの方法で設定することができ
る。選択した計算は、少なくとも制御装置側で格納また
は搭載されるソフトウェアまたはファームウェアに反映
される。一般に、CK値の計算は、次のようなメンバシ
ップ情報を考慮に入れる必要がある。 CK=func(MEM,EN) 式中、MEMは活動状態のメンバシップ・リストに関す
る情報を含み、ENはエポック番号である。
【0044】方法1.CK値が新しいメンバシップ・セ
ット(複数ノードの符号化セット)のリストとエポック
番号の両方を明示的に含むことが理想的であると思われ
る。しかし、ノードの数が大きい場合、これは不要であ
ると思われる。というのは、CKの値が各ノードの情報
の少なくとも1ビット分を含む必要があるはずだからで
ある。すなわち、4ノード構成では、少なくとも4ビッ
ト・シーケンスBBBB(ただし、B=0または1)を
使用する必要があり、各ビットBは、所与の関連ノード
が活動状態か非活動状態(障害が発生した状態)かを示
すはずである。さらに、エポック番号ENのためにいく
つかのビットが必要であり、そのため、変数CKの全長
が非常に長くなる可能性がある。
【0045】以下の方法2と方法3は、CK値を計算す
るときのメンバシップ情報を圧縮するために設計された
ものである。
【0046】方法2では、エポック番号ENのみを使用
し、メンバシップ・リストMEMを無視する。例えば、
CK値はエポック番号ENと等しくなるように設定され
る。
【0047】メンバシップ・プロトコルが(たとえば、
多数決により)ネットワークの区分化を防止する場合、
方法2が最も実用的である。ハードウェア障害の場合な
ど、メンバシップの区分化が許される場合、クラスタの
実際のメンバシップを反映せずにCK値を使用すると、
区分のいずれかの側のノード間で競合が発生する可能性
がある。
【0048】方法3は、区分に関する方法2の課題を解
決するものである。この方法では、新しい構成の最高ノ
ードのIDによってCK値が符号化される。たとえば、
CK値は、ノードID(最高ノードに割り当てられる番
号)とエポック番号の連結にすることができる。この方
法は、メンバシップ・モニタ自体がネットワークの区分
化を防止しない場合でも安全なディスク・フェンシング
を可能にする。というのは、所与の区分内の最高ノード
の番号が別の区分のそれとは異なるからであり、このた
め、各種サブクラスタ用のENが偶然同じになった場合
でも、各種区分内のノードからの要求間で競合が発生す
ることがない。
【0049】上記の方法のうち、ノードの数が少ない場
合は方法1が好ましい。というのは、クラスタ化システ
ムの状態に関する最も明示的な情報が含まれるからであ
る。しかし、ノードの数が多い場合は方法3が好ましく
なる。システムがネットワークの区分化を防止する場合
は、方法2が適当である。
【0050】本発明の方法 前記の構造および機能ならびにそれらを実現するための
適切なモジュールの場合、本発明のディスク・フェンシ
ングシステムは、図5の流れ図に示す方法510に従う
ことによって実施される。ボックス(ステップ)520
では、クラスタ化システムのメンバシップが従来通りに
決定され、メンバシップ・セット(またはリスト)の値
がMEMの値として格納される。エポック番号EN(ま
たはその他の固有の状態ID)はボックス530で生成
される。この2つの機能はメンバシップ・モニタ(M
M)モジュールによって実行されるが、このモジュール
は、どのノードがシステム内に存在するかを判定し、E
Nの値をその構成に割り当てるために、メンバ・ノード
間で実現される。このようにMMモジュールを使用する
システムの一例としては、出願人であるSun Mic
rosystems,Inc.のSparcClust
er PDB(パラレル・データベース)がある。
【0051】現行システムでは、所与のメッセージまた
はデータ・パケットが古くなっているかどうかをノード
が判定できるように、エポック番号が使用される。すな
わち、エポック番号が時代遅れになっている場合、メッ
セージは、そのクラスタの以前の別の構成中に作成され
たものであると認識される。たとえば、T.Mann他
の「An Algorithm for Data R
eplication」という1989年6月のDEC
SRCリサーチ・レポートを参照されたい。これは参
照により本明細書に組み込まれるものであり、同書に
は、分散システム内でファイル複製にスタンプする際に
使用するものとしてエポック番号が記載されている。
【0052】本システムでは、まったく新しいやり方で
エポック番号を使用するが、これはエポック番号の従来
システムの使い方とは無関係である。Sun Micr
osystems,Inc.のシステムにおけるクラス
タ・メンバシップ・モニタの好ましい使い方の例につい
ては、本明細書に付属の付録Aを参照されたい。その場
合の再構成シーケンス番号はエポック番号と類似のもの
である。したがって、本発明により積年の問題が解決さ
れるという明確な利点がもたらされる。すなわち、新し
い出力を生成してプロセスを制御するのに新しい手順を
必要とせずに、障害が発生したノードを迅速かつ確実に
クラスタ・メンバシップから除去し、そのノードが共用
ディスクにアクセスし続けるのを防止する。また、すで
に生成されたタイプの情報を本発明によるモジュールと
ともに使用すると、所望の機能を実施することができ、
その結果、信頼性の高い高可用性のシステムが得られ
る。
【0053】ボックス540に移行すると、上記の方法
1〜3のいずれか1つまたは他の適当な方法により、ノ
ード・キーNK(活動ノード用)と制御キーCKが生成
される。
【0054】ボックス550では、ノードが使用不能に
なっているかどうかが判定される。このステップはほぼ
連続して(または、少なくとも比較的高い頻度、たとえ
ば、入出力要求の頻度より高い頻度で)実行される。た
とえば、ほぼいつでも、所与のノードは、他のノードが
要求に応答するための許容時間を超えていることを判定
し、後者のノードで障害が発生しているのでそれをクラ
スタのメンバシップ・セットから除去する必要があると
決定することができる。したがって、ボックス550の
ステップは、この方法の実行中のほぼどこでも行うこと
ができる。
【0055】ボックス560は、クラスタに接続された
ノードの1つが入出力要求(ディスク・アクセス要求な
ど)を生成するという事象を表している。そのような場
合、ボックス570では、要求側ノードからのNKの現
行値が入出力アクセス要求とともに送られ、ボックス5
80では、これが制御装置によって格納されたCKの値
と一致するかどうかが判定される。一致しない場合、方
法はステップ600に移行し、そこで要求が拒否され
(アクションなしで単に制御装置によって落とされるこ
とを意味する場合もある)、方法はボックス520に戻
る。
【0056】ノードのNK値が制御装置のCK値と一致
する場合、ボックス590で要求が実行される。
【0057】あるノードで障害が発生した場合、方法は
ボックス550からボックス520に戻り、そこで障害
が発生したノードが従来通りメンバシップ・セットから
除去され、その結果、MEMの値がこれを反映するよう
に変化する。この時点で、新しいエポック番号ENが生
成され(ボックス530)、格納されて、新たに改訂し
たメンバシップ・リストを反映する。さらに、ボックス
540では、新しい制御キー値CKが生成され、活動ノ
ードのNK値が新しいCK値の値を獲得し、方法はもう
一度ボックス550〜560に移行してさらにディスク
・アクセスが行われる。
【0058】上記により、クラスタ化システム内の所与
のノードの障害の結果、クラスタ・メンバシップからそ
のノードが除去されるとともに、重要なことに、障害が
発生したノードが共用ディスクに対してさらにディスク
・アクセスするのを確実に防止することが分かるだろ
う。障害が発生したノードを共用ディスク・アクセスか
ら無効化することは、障害が発生したノードのハードウ
ェアまたはソフトウェアのいずれにも依存せずに適切に
機能するが、むしろ、障害が発生したノードとはまった
く無関係である。
【0059】CK値はディスク制御装置に格納され、障
害が発生したノードが共用ディスク・アクセスを獲得す
るのを防止するためにアクセス制御モジュールによって
使用されるので、本発明のディスク・フェンシングシス
テムは、ディスク管理ソフトウェア自体と同程度に信頼
できるものである。したがって、クラスタ化システム
は、障害が発生したノードを迅速かつ確実に除去するこ
とができ、その共用ディスク上に格納されているデータ
の保全性を損なうという危険は最小限になる。
【0060】本発明には、従来のシステムに比べ、その
端末間特性によってそれがディスク相互接続ネットワー
クまたはバス構成とは無関係になるという重要な利点が
ある。したがって、エポック番号またはその他の固有の
状況値を決定する際にノード構成だけが考慮される。す
なわち、いかなる低レベル機構(転送機構など)とは無
関係である。
【0061】本発明のシステムは、マルチプロセッサ・
システム内の複数のノードによってアクセスされる他の
周辺装置にも適用可能であることに留意されたい。たと
えば、上記の共用ディスクの代わりに、他の入出力装置
またはメモリ装置を使用することもできる。また、ディ
スク制御装置470および480に対応する制御装置が
使用され、分離動作を実行するためのソフトウェア・モ
ジュールを装備しているはずである。
【0062】さらに、クラスタのメンバであるノード、
すなわち、プロセッサベースのシステムは、様々なプロ
セッサベースの装置のいずれでもよく、特に、パーソナ
ル・コンピュータやワークステーションにする必要はな
いが、共用ディスクなどの周辺装置にアクセス要求を出
すことができる他のプロセッサ駆動装置にすることもで
きる。
【図面の簡単な説明】
【図1】 1組の共用ディスクへのアクセスが設けられ
た複数のノードを示す最上位ブロック図である。
【図2】 図1のそれと同様のシステムのより詳細なブ
ロック図であるが、ディスク・フェンシングを達成する
ためにやりとりする本発明のシステムの諸要素を示す図
である。
【図3】 ノードDが使用不能の場合に再構成の前後の
図2または図3の各ノードの構造の諸要素を示す図であ
る。
【図4】 ノードが複数組の共用ディスクにアクセスす
る場合の本発明のシステムのブロック図である。
【図5】 本発明の方法を示す流れ図である。
【符号の説明】
10 システム 20 ノード 30 ノード 40 ノード 50 共用ディスク 60 ディスク制御装置

Claims (2)

    【特許請求の範囲】
  1. 【請求項1】 マルチノード・システム内のプロセッサ
    ベースのノードによる共用周辺装置へのアクセスを防止
    するための方法において、 (1)マルチノード・システムの第1の構成を表す第1
    の固有の値を周辺装置側で格納するステップと、 (2)マルチノード・システムの第2の構成を表す第2
    の固有の値を含むアクセス要求を、ノードから周辺装置
    へ送るステップと、 (3)前記第1の値と第2の値が同一であるかどうかを
    判定するステップと、 (4)第1および第2の値が同一である場合、周辺装置
    側でアクセス要求を実行するステップとを含むことを特
    徴とする方法。
  2. 【請求項2】 周辺資源が制御装置メモリを含む資源制
    御装置によってマルチノード・システムに結合されてお
    り、そのシステムの複数のプロセッサベースのノードの
    それぞれが諸機能を実行するように構成されたプログラ
    ム・モジュールを格納するノード・メモリに結合された
    プロセッサを含むときに、マルチノード・システム内の
    ノードによる少なくとも1つの共用周辺資源へのアクセ
    スを防止する装置において、 システムのメンバシップが変更された時期を少なくとも
    含む所定の時期にマルチノード・システム上の前記資源
    を含むノードのメンバシップ・リストを判定するように
    構成されたメンバシップ・モニタ・モジュールと、 資源が障害状態になったときを判定するように構成さ
    れ、資源の障害を前記メンバシップ・モニタに連絡し
    て、新しいメンバシップ・リストを生成するようにメン
    バシップ・モニタに指示する資源マネージャ・モジュー
    ルと、 前記新しいメンバシップ・リストに基づいて固有の値を
    生成し、マルチノード・システム上の各ノード側で前記
    固有の値をローカルに格納するように構成された構成値
    モジュールと、 前記制御装置メモリ側で格納され、前記要求側ノードで
    ローカルに格納された固有の値が前記資源制御装置で格
    納された固有の値と等しくないときに少なくとも1つの
    前記要求側ノードによる前記資源へのアクセス要求をブ
    ロックするように構成されたアクセス制御モジュールと
    を含むことを特徴とする装置。
JP8307544A 1995-11-02 1996-11-05 マルチコンピュータ・システムにおける信頼性の高いディスク・フェンシングのための方法および装置 Pending JPH09237226A (ja)

Applications Claiming Priority (2)

Application Number Priority Date Filing Date Title
US08/552316 1995-11-02
US08/552,316 US5996075A (en) 1995-11-02 1995-11-02 Method and apparatus for reliable disk fencing in a multicomputer system

Publications (2)

Publication Number Publication Date
JPH09237226A true JPH09237226A (ja) 1997-09-09
JPH09237226A5 JPH09237226A5 (ja) 2004-11-04

Family

ID=24204832

Family Applications (1)

Application Number Title Priority Date Filing Date
JP8307544A Pending JPH09237226A (ja) 1995-11-02 1996-11-05 マルチコンピュータ・システムにおける信頼性の高いディスク・フェンシングのための方法および装置

Country Status (5)

Country Link
US (2) US5996075A (ja)
EP (2) EP0772126A2 (ja)
JP (1) JPH09237226A (ja)
DE (1) DE69638312D1 (ja)
WO (1) WO1997016744A1 (ja)

Cited By (3)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
JP2014170394A (ja) * 2013-03-04 2014-09-18 Nec Corp クラスタシステム
JPWO2013108351A1 (ja) * 2012-01-16 2015-05-11 株式会社日立製作所 計算機システム及び論理記憶領域管理方法
JP2020529668A (ja) * 2017-08-02 2020-10-08 セールスフォース ドット コム インコーポレイティッド 分散クラスタシステムにおけるノードのフェンシングアウト

Families Citing this family (130)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
JPH096706A (ja) * 1995-06-22 1997-01-10 Hitachi Ltd 疎結合計算機システム
US7168088B1 (en) * 1995-11-02 2007-01-23 Sun Microsystems, Inc. Method and apparatus for reliable disk fencing in a multicomputer system
US6421704B1 (en) * 1998-03-20 2002-07-16 Sun Microsystems, Inc. Method, apparatus, and product for leasing of group membership in a distributed system
US6272559B1 (en) * 1997-10-15 2001-08-07 Sun Microsystems, Inc. Deferred reconstruction of objects and remote loading for event notification in a distributed system
US6393497B1 (en) 1998-03-20 2002-05-21 Sun Microsystems, Inc. Downloadable smart proxies for performing processing associated with a remote procedure call in a distributed system
US6185611B1 (en) * 1998-03-20 2001-02-06 Sun Microsystem, Inc. Dynamic lookup service in a distributed system
US6446070B1 (en) 1998-02-26 2002-09-03 Sun Microsystems, Inc. Method and apparatus for dynamic distributed computing over a network
US6466947B2 (en) * 1998-03-20 2002-10-15 Sun Microsystems, Inc. Apparatus and method for dynamically verifying information in a distributed system
US6938263B2 (en) 1996-04-23 2005-08-30 Sun Microsystems, Inc. System and method for facilitating dynamic loading of “stub” information to enable a program operating in one address space to invoke processing of a remote method or procedure in another address space
US6138238A (en) 1997-12-11 2000-10-24 Sun Microsystems, Inc. Stack-based access control using code and executor identifiers
US5832529A (en) 1996-10-11 1998-11-03 Sun Microsystems, Inc. Methods, apparatus, and product for distributed garbage collection
US6108699A (en) * 1997-06-27 2000-08-22 Sun Microsystems, Inc. System and method for modifying membership in a clustered distributed computer system and updating system configuration
US6021508A (en) * 1997-07-11 2000-02-01 International Business Machines Corporation Parallel file system and method for independent metadata loggin
US6092213A (en) * 1997-09-30 2000-07-18 Tandem Computers Incorporated Fault tolerant method of maintaining and distributing configuration information in a distributed processing system
US6957427B1 (en) 1997-10-15 2005-10-18 Sun Microsystems, Inc. Remote object activation in a distributed system
US6192483B1 (en) * 1997-10-21 2001-02-20 Sun Microsystems, Inc. Data integrity and availability in a distributed computer system
US6279032B1 (en) * 1997-11-03 2001-08-21 Microsoft Corporation Method and system for quorum resource arbitration in a server cluster
US6092220A (en) * 1997-11-17 2000-07-18 International Business Machines Corporation Method and apparatus for ordered reliable multicast with asymmetric safety in a multiprocessing system
US7930278B2 (en) * 1998-02-13 2011-04-19 Oracle International Corporation Methods to perform disk writes in a distributed shared disk system needing consistency across failures
US7200623B2 (en) * 1998-11-24 2007-04-03 Oracle International Corp. Methods to perform disk writes in a distributed shared disk system needing consistency across failures
AU3297199A (en) * 1998-02-26 1999-09-15 Sun Microsystems, Inc. Dynamic lookup service in a distributed system
EP1057272A2 (en) * 1998-02-26 2000-12-06 Sun Microsystems, Inc. Apparatus and method for dynamically verifying information in a distributed system
US6654881B2 (en) * 1998-06-12 2003-11-25 Microsoft Corporation Logical volume mount manager
US6336187B1 (en) * 1998-06-12 2002-01-01 International Business Machines Corp. Storage system with data-dependent security
US6212595B1 (en) * 1998-07-29 2001-04-03 International Business Machines Corporation Computer program product for fencing a member of a group of processes in a distributed processing environment
US6192443B1 (en) * 1998-07-29 2001-02-20 International Business Machines Corporation Apparatus for fencing a member of a group of processes in a distributed processing environment
US6205510B1 (en) * 1998-07-29 2001-03-20 International Business Machines Corporation Method for fencing a member of a group of processes in a distributed processing environment
US7392945B1 (en) 1998-09-11 2008-07-01 Lv Partners, L.P. Portable scanner for enabling automatic commerce transactions
US7386600B1 (en) 1998-09-11 2008-06-10 Lv Partners, L.P. Launching a web site using a personal device
US7370114B1 (en) 1998-09-11 2008-05-06 Lv Partners, L.P. Software downloading using a television broadcast channel
US6745234B1 (en) 1998-09-11 2004-06-01 Digital:Convergence Corporation Method and apparatus for accessing a remote location by scanning an optical code
US6636896B1 (en) 1998-09-11 2003-10-21 Lv Partners, L.P. Method and apparatus for utilizing an audibly coded signal to conduct commerce over the internet
US7284066B1 (en) 1998-09-11 2007-10-16 Lv Partners, Lp Method and apparatus for matching a user's use profile in commerce with a broadcast
US7536478B2 (en) 1998-09-11 2009-05-19 Rpx-Lv Acquisition Llc Method and apparatus for opening and launching a web browser in response to an audible signal
US7440993B1 (en) 1998-09-11 2008-10-21 Lv Partners, L.P. Method and apparatus for launching a web browser in response to scanning of product information
US7159037B1 (en) 1998-09-11 2007-01-02 Lv Partners, Lp Method and apparatus for utilizing an existing product code to issue a match to a predetermined location on a global network
US7379901B1 (en) 1998-09-11 2008-05-27 Lv Partners, L.P. Accessing a vendor web site using personal account information retrieved from a credit card company web site
US6823388B1 (en) 1998-09-11 2004-11-23 L.V. Parners, L.P. Method and apparatus for accessing a remote location with an optical reader having a programmable memory system
US7191247B1 (en) 1998-09-11 2007-03-13 Lv Partners, Lp Method for connecting a wireless device to a remote location on a network
US6757715B1 (en) * 1998-09-11 2004-06-29 L.V. Partners, L.P. Bar code scanner and software interface interlock for performing encrypted handshaking and for disabling the scanner in case of handshaking operation failure
US6868433B1 (en) 1998-09-11 2005-03-15 L.V. Partners, L.P. Input device having positional and scanning capabilities
US6704864B1 (en) 1999-08-19 2004-03-09 L.V. Partners, L.P. Automatic configuration of equipment software
US7065540B2 (en) 1998-11-24 2006-06-20 Oracle International Corporation Managing checkpoint queues in a multiple node system
US6401120B1 (en) 1999-03-26 2002-06-04 Microsoft Corporation Method and system for consistent cluster operational data in a server cluster using a quorum of replicas
US7774469B2 (en) * 1999-03-26 2010-08-10 Massa Michael T Consistent cluster operational data in a server cluster using a quorum of replicas
US6453426B1 (en) 1999-03-26 2002-09-17 Microsoft Corporation Separately storing core boot data and cluster configuration data in a server cluster
US6442713B1 (en) * 1999-03-30 2002-08-27 International Business Machines Corporation Cluster node distress signal
US6587860B1 (en) * 1999-03-31 2003-07-01 International Business Machines Corporation Apparatus and method for tracking access to data resources in a cluster environment
US7756830B1 (en) 1999-03-31 2010-07-13 International Business Machines Corporation Error detection protocol
US6901518B1 (en) 1999-04-08 2005-05-31 Sun Microsystems, Inc. Method and system for establishing trust in downloaded proxy code
US7020695B1 (en) 1999-05-28 2006-03-28 Oracle International Corporation Using a cluster-wide shared repository to provide the latest consistent definition of the cluster (avoiding the partition-in time problem)
US7076783B1 (en) 1999-05-28 2006-07-11 Oracle International Corporation Providing figure of merit vote from application executing on a partitioned cluster
US6871222B1 (en) * 1999-05-28 2005-03-22 Oracle International Corporation Quorumless cluster using disk-based messaging
US6845393B1 (en) 1999-06-14 2005-01-18 Sun Microsystems, Inc. Lookup discovery service in a distributed system having a plurality of lookup services each with associated characteristics and services
US6754661B1 (en) * 1999-07-13 2004-06-22 Microsoft Corporation Hierarchical storage systems for holding evidentiary objects and methods of creating and operating upon hierarchical storage systems
US6553389B1 (en) * 1999-09-13 2003-04-22 Hewlett-Packard Company Resource availability determination mechanism for distributed data storage system
US6553387B1 (en) * 1999-11-29 2003-04-22 Microsoft Corporation Logical volume configuration data management determines whether to expose the logical volume on-line, off-line request based on comparison of volume epoch numbers on each extents of the volume identifiers
US6684231B1 (en) * 1999-11-29 2004-01-27 Microsoft Corporation Migration of friendly volumes
EP1107119A3 (en) * 1999-12-02 2005-07-20 Sun Microsystems, Inc. Extending cluster membership and quorum determinations to intelligent storage systems
US6487680B1 (en) * 1999-12-03 2002-11-26 International Business Machines Corporation System, apparatus, and method for managing a data storage system in an n-way active controller configuration
US6970941B1 (en) * 1999-12-10 2005-11-29 Sun Microsystems, Inc. System and method for separating addresses from the delivery scheme in a virtual private network
US6662219B1 (en) 1999-12-15 2003-12-09 Microsoft Corporation System for determining at subgroup of nodes relative weight to represent cluster by obtaining exclusive possession of quorum resource
US6742034B1 (en) 1999-12-16 2004-05-25 Dell Products L.P. Method for storage device masking in a storage area network and storage controller and storage subsystem for using such a method
US6546403B1 (en) * 2000-01-19 2003-04-08 International Business Machines Corporation Mechanism to resubmit queries in a parallel database system
US6460113B1 (en) 2000-01-25 2002-10-01 Dell Products L.P. System and method for performing backup operations using a fibre channel fabric in a multi-computer environment
US6654902B1 (en) * 2000-04-11 2003-11-25 Hewlett-Packard Development Company, L.P. Persistent reservation IO barriers
US6775703B1 (en) * 2000-05-01 2004-08-10 International Business Machines Corporation Lease based safety protocol for distributed system with multiple networks
US7243356B1 (en) * 2000-05-09 2007-07-10 Sun Microsystems, Inc. Remote method invocation with secure messaging in a distributed computing environment
US6915391B2 (en) * 2000-12-15 2005-07-05 International Business Machines Corporation Support for single-node quorum in a two-node nodeset for a shared disk parallel file system
US7296275B2 (en) 2001-01-04 2007-11-13 Sun Microsystems, Inc. Method and system for passing objects in a distributed system using serialization contexts
US7792977B1 (en) * 2001-02-28 2010-09-07 Oracle International Corporation Method for fencing shared resources from cluster nodes
US6952766B2 (en) * 2001-03-15 2005-10-04 International Business Machines Corporation Automated node restart in clustered computer system
US6918051B2 (en) * 2001-04-06 2005-07-12 International Business Machines Corporation Node shutdown in clustered computer system
US6889253B2 (en) 2001-04-30 2005-05-03 International Business Machines Corporation Cluster resource action in clustered computer system incorporation prepare operation
US6708175B2 (en) * 2001-06-06 2004-03-16 International Business Machines Corporation Program support for disk fencing in a shared disk parallel file system across storage area network
US6965929B2 (en) 2001-06-29 2005-11-15 Intel Corporation Configuring a network device
US6925582B2 (en) * 2001-08-01 2005-08-02 International Business Machines Corporation Forwarding of diagnostic messages in a group
US20030051029A1 (en) 2001-09-07 2003-03-13 Reedy Dennis G. Dynamic provisioning of sevice components in a distributed system
US7756969B1 (en) 2001-09-07 2010-07-13 Oracle America, Inc. Dynamic provisioning of identification services in a distributed system
US7660887B2 (en) 2001-09-07 2010-02-09 Sun Microsystems, Inc. Systems and methods for providing dynamic quality of service for a distributed system
US7694303B2 (en) * 2001-09-25 2010-04-06 Sun Microsystems, Inc. Method for dynamic optimization of multiplexed resource partitions
US7277952B2 (en) * 2001-09-28 2007-10-02 Microsoft Corporation Distributed system resource protection via arbitration and ownership
US20030101160A1 (en) * 2001-11-26 2003-05-29 International Business Machines Corporation Method for safely accessing shared storage
JP2005512190A (ja) * 2001-11-30 2005-04-28 オラクル・インターナショナル・コーポレイション ネットワーク化システムにおけるリソースの高可用性をもたらす実複合オブジェクト
US8086579B1 (en) 2002-01-22 2011-12-27 Oracle International Corporation Semantic response to lock requests to reduce coherence overhead in multi-node systems
US20030187927A1 (en) * 2002-02-22 2003-10-02 Winchell David F. Clustering infrastructure system and method
US7631066B1 (en) * 2002-03-25 2009-12-08 Symantec Operating Corporation System and method for preventing data corruption in computer system clusters
JP2003330905A (ja) * 2002-05-14 2003-11-21 Nec Corp コンピュータシステム
US20040039816A1 (en) * 2002-08-23 2004-02-26 International Business Machines Corporation Monitoring method of the remotely accessible resources to provide the persistent and consistent resource states
US20040103193A1 (en) * 2002-11-08 2004-05-27 Pandya Suketu J. Response time and resource consumption management in a distributed network environment
DE10256148A1 (de) * 2002-11-29 2004-06-17 Basf Ag Gegenstand der vorliegenden Erfindung sind Zusammensetzungen enthaltend mindestens ein Copolymer (A) und mindestens ein Copolymer (B) sowie deren Verwendung in kosmetischen Zubereitungen
US7379444B2 (en) 2003-01-27 2008-05-27 International Business Machines Corporation Method to recover from node failure/recovery incidents in distributed systems in which notification does not occur
US7030739B2 (en) * 2003-01-27 2006-04-18 Audiovox Corporation Vehicle security system and method for programming an arming delay
US7376744B2 (en) 2003-05-09 2008-05-20 Oracle International Corporation Using local locks for global synchronization in multi-node systems
US20050120616A1 (en) * 2003-12-05 2005-06-09 Joe Stugan Bird abatement system for boats
US7792874B1 (en) 2004-01-30 2010-09-07 Oracle America, Inc. Dynamic provisioning for filtering and consolidating events
US7584382B2 (en) * 2004-02-19 2009-09-01 Microsoft Corporation Method and system for troubleshooting a misconfiguration of a computer system based on configurations of other computer systems
US7392295B2 (en) 2004-02-19 2008-06-24 Microsoft Corporation Method and system for collecting information from computer systems based on a trusted relationship
US8255422B2 (en) 2004-05-28 2012-08-28 Microsoft Corporation Highly reliable and scalable architecture for data centers
US20110082928A1 (en) * 2004-10-22 2011-04-07 Microsoft Corporation Maintaining consistency within a federation infrastructure
US8095600B2 (en) * 2004-10-22 2012-01-10 Microsoft Corporation Inter-proximity communication within a rendezvous federation
US8392515B2 (en) * 2004-10-22 2013-03-05 Microsoft Corporation Subfederation creation and maintenance in a federation infrastructure
US8014321B2 (en) * 2004-10-22 2011-09-06 Microsoft Corporation Rendezvousing resource requests with corresponding resources
US20060090003A1 (en) * 2004-10-22 2006-04-27 Microsoft Corporation Rendezvousing resource requests with corresponding resources
US7694167B2 (en) * 2004-10-22 2010-04-06 Microsoft Corporation Maintaining routing consistency within a rendezvous federation
US8549180B2 (en) * 2004-10-22 2013-10-01 Microsoft Corporation Optimizing access to federation infrastructure-based resources
US7958262B2 (en) * 2004-10-22 2011-06-07 Microsoft Corporation Allocating and reclaiming resources within a rendezvous federation
US8090880B2 (en) 2006-11-09 2012-01-03 Microsoft Corporation Data consistency within a federation infrastructure
US7730220B2 (en) * 2004-10-22 2010-06-01 Microsoft Corporation Broadcasting communication within a rendezvous federation
US8095601B2 (en) 2004-10-22 2012-01-10 Microsoft Corporation Inter-proximity communication within a rendezvous federation
US7613774B1 (en) * 2005-03-01 2009-11-03 Sun Microsystems, Inc. Chaperones in a distributed system
JP2006318012A (ja) * 2005-05-10 2006-11-24 Hitachi Ltd ディスク制御システム
US20070022314A1 (en) * 2005-07-22 2007-01-25 Pranoop Erasani Architecture and method for configuring a simplified cluster over a network with fencing and quorum
JP4414961B2 (ja) * 2005-12-13 2010-02-17 株式会社日立製作所 管理サーバによる管理方法、管理サーバ、計算機システムおよび管理プログラム
US7584182B2 (en) * 2005-12-19 2009-09-01 Microsoft Corporation Determining cardinality of a parameter using hash values
US20080022157A1 (en) * 2006-07-24 2008-01-24 Shannon Hsinhen Chang 'isolating a tape drive from communication'
US7913050B2 (en) * 2007-06-26 2011-03-22 Oracle International Corporation Fencing using a hierarchical relationship
US7882389B2 (en) * 2008-11-18 2011-02-01 International Business Machines Corporation Dynamic reassignment of devices attached to redundant controllers
US8145938B2 (en) * 2009-06-01 2012-03-27 Novell, Inc. Fencing management in clusters
US8510334B2 (en) * 2009-11-05 2013-08-13 Oracle International Corporation Lock manager on disk
US9847907B2 (en) * 2012-11-26 2017-12-19 Amazon Technologies, Inc. Distributed caching cluster management
US9602614B1 (en) 2012-11-26 2017-03-21 Amazon Technologies, Inc. Distributed caching cluster client configuration
US9529772B1 (en) 2012-11-26 2016-12-27 Amazon Technologies, Inc. Distributed caching cluster configuration
US9262323B1 (en) 2012-11-26 2016-02-16 Amazon Technologies, Inc. Replication in distributed caching cluster
US10528752B2 (en) 2014-08-13 2020-01-07 Hewlett Packard Enterprise Development Lp Non-volatile storage of management data
US11290486B1 (en) * 2015-12-28 2022-03-29 Amazon Technologies, Inc. Allocating defective computing resources for honeypot services
US10320841B1 (en) 2015-12-28 2019-06-11 Amazon Technologies, Inc. Fraud score heuristic for identifying fradulent requests or sets of requests
US10097581B1 (en) 2015-12-28 2018-10-09 Amazon Technologies, Inc. Honeypot computing services that include simulated computing resources
US10437517B2 (en) 2018-02-15 2019-10-08 International Business Machines Corporation Enhanced soft fence of devices
US10620856B2 (en) * 2018-03-06 2020-04-14 Vmware, Inc. Input/output (I/O) fencing with persistent reservation information in shared virtual storage environments

Family Cites Families (21)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US3735360A (en) * 1971-08-25 1973-05-22 Ibm High speed buffer operation in a multi-processing system
US4480304A (en) * 1980-10-06 1984-10-30 International Business Machines Corporation Method and means for the retention of locks across system, subsystem, and communication failures in a multiprocessing, multiprogramming, shared data environment
US4805134A (en) * 1986-01-09 1989-02-14 International Business Machines Corporation Electronic system for accessing graphical and textual information
DE3688136T2 (de) * 1986-04-04 1993-10-07 Ibm Verfahren zum Testen und Setzen von Daten in einen Datensatz auf einer Platte in eine atomaren Ein/Ausgabeoperation.
US5003464A (en) * 1988-05-23 1991-03-26 Bell Communications Research, Inc. Methods and apparatus for efficient resource allocation
JPH0213197A (ja) * 1988-06-30 1990-01-17 Fujitsu Ltd 蓄積プログラム制御システムにおけるオフィスデータの自動編集方式
US4961224A (en) * 1989-03-06 1990-10-02 Darby Yung Controlling access to network resources
US5187790A (en) * 1989-06-29 1993-02-16 Digital Equipment Corporation Server impersonation of client processes in an object based computer operating system
US5202923A (en) * 1989-11-30 1993-04-13 Kabushiki Kaisha Toshiba Portable electronic device capable of registering subprograms
US5469556A (en) * 1989-12-12 1995-11-21 Harris Corporation Resource access security system for controlling access to resources of a data processing system
US5214778A (en) * 1990-04-06 1993-05-25 Micro Technology, Inc. Resource management in a multiple resource system
US5204961A (en) * 1990-06-25 1993-04-20 Digital Equipment Corporation Computer network operating with multilevel hierarchical security with selectable common trust realms and corresponding security protocols
US5347648A (en) * 1990-06-29 1994-09-13 Digital Equipment Corporation Ensuring write ordering under writeback cache error conditions
US5404482A (en) * 1990-06-29 1995-04-04 Digital Equipment Corporation Processor and method for preventing access to a locked memory block by recording a lock in a content addressable memory with outstanding cache fills
AU1893392A (en) * 1991-05-03 1992-12-21 Storage Technology Corporation Knowledge based resource management
US5257379A (en) * 1991-09-04 1993-10-26 International Business Machines Corporation Establishing synchronization of hardware and software I/O configuration definitions
EP0543560B1 (en) * 1991-11-19 1999-12-22 Sun Microsystems, Inc. Arbitrating multiprocessor accesses to shared resources
US5408653A (en) * 1992-04-15 1995-04-18 International Business Machines Corporation Efficient data base access using a shared electronic store in a multi-system environment with shared disks
JPH0713838A (ja) * 1993-06-14 1995-01-17 Internatl Business Mach Corp <Ibm> エラーの回復方法及び装置
US5416921A (en) * 1993-11-03 1995-05-16 International Business Machines Corporation Apparatus and accompanying method for use in a sysplex environment for performing escalated isolation of a sysplex component in the event of a failure
US5619497A (en) * 1994-12-22 1997-04-08 Emc Corporation Method and apparatus for reordering frames

Cited By (3)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
JPWO2013108351A1 (ja) * 2012-01-16 2015-05-11 株式会社日立製作所 計算機システム及び論理記憶領域管理方法
JP2014170394A (ja) * 2013-03-04 2014-09-18 Nec Corp クラスタシステム
JP2020529668A (ja) * 2017-08-02 2020-10-08 セールスフォース ドット コム インコーポレイティッド 分散クラスタシステムにおけるノードのフェンシングアウト

Also Published As

Publication number Publication date
US6243814B1 (en) 2001-06-05
EP0801746B1 (en) 2010-12-22
US5996075A (en) 1999-11-30
EP0801746A1 (en) 1997-10-22
EP0801746A4 (en) 2005-05-25
WO1997016744A1 (en) 1997-05-09
DE69638312D1 (de) 2011-02-03
EP0772126A2 (en) 1997-05-07

Similar Documents

Publication Publication Date Title
JPH09237226A (ja) マルチコンピュータ・システムにおける信頼性の高いディスク・フェンシングのための方法および装置
JP4567125B2 (ja) データ・ストレージとデータ処理システムにおける書き込みキャッシュデータの転送方法及びその装置
US6105122A (en) I/O protocol for highly configurable multi-node processing system
US7739541B1 (en) System and method for resolving cluster partitions in out-of-band storage virtualization environments
US6256740B1 (en) Name service for multinode system segmented into I/O and compute nodes, generating guid at I/O node and exporting guid to compute nodes via interconnect fabric
US6081812A (en) Identifying at-risk components in systems with redundant components
US6247077B1 (en) Highly-scalable parallel processing computer system architecture
US6934878B2 (en) Failure detection and failure handling in cluster controller networks
US6279032B1 (en) Method and system for quorum resource arbitration in a server cluster
US6078990A (en) Volume set configuration using a single operational view
US6148349A (en) Dynamic and consistent naming of fabric attached storage by a file system on a compute node storing information mapping API system I/O calls for data objects with a globally unique identification
US6594698B1 (en) Protocol for dynamic binding of shared resources
WO1997016744A9 (en) Method and apparatus for reliable disk fencing in a multicomputer system
JP5185483B2 (ja) ストレージネットワーク内のクォーラムリソースアービタ
US6965936B1 (en) Method for detecting and resolving a partition condition in a cluster
EP0575067A2 (en) Shared, distributed lock manager for loosely coupled processing systems
US20030065782A1 (en) Distributed system resource protection via arbitration and ownership
JP2003515813A5 (ja)
KR20040015223A (ko) 클러스터형 컴퓨터 시스템의 자원 작용 수행 방법,클러스터형 컴퓨터 시스템 및 그의 수행을 위한 컴퓨터프로그램
JP2000155729A (ja) 改良したクラスタ管理方法及び装置
US7168088B1 (en) Method and apparatus for reliable disk fencing in a multicomputer system
US7590811B1 (en) Methods and system for improving data and application availability in clusters
US20030182479A1 (en) Implementing clustering in raid controllers
Cardoza et al. Overview of digital UNIX cluster system architecture

Legal Events

Date Code Title Description
A131 Notification of reasons for refusal

Free format text: JAPANESE INTERMEDIATE CODE: A131

Effective date: 20070918

A521 Request for written amendment filed

Free format text: JAPANESE INTERMEDIATE CODE: A523

Effective date: 20071218

A02 Decision of refusal

Free format text: JAPANESE INTERMEDIATE CODE: A02

Effective date: 20081021