JP2016513309A - 分散コンピューティングシステムのコンピューティングノードにおける障害に起因するエラー伝播の制御 - Google Patents

分散コンピューティングシステムのコンピューティングノードにおける障害に起因するエラー伝播の制御 Download PDF

Info

Publication number
JP2016513309A
JP2016513309A JP2015555972A JP2015555972A JP2016513309A JP 2016513309 A JP2016513309 A JP 2016513309A JP 2015555972 A JP2015555972 A JP 2015555972A JP 2015555972 A JP2015555972 A JP 2015555972A JP 2016513309 A JP2016513309 A JP 2016513309A
Authority
JP
Japan
Prior art keywords
computing node
computing
failure
node
alert indicator
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
JP2015555972A
Other languages
English (en)
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.)
Hewlett Packard Development Co LP
Original Assignee
Hewlett Packard Development Co LP
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 Hewlett Packard Development Co LP filed Critical Hewlett Packard Development Co LP
Publication of JP2016513309A publication Critical patent/JP2016513309A/ja
Pending legal-status Critical Current

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/0703Error or fault processing not based on redundancy, i.e. by taking additional measures to deal with the error or fault not making use of redundancy in operation, in hardware, or in data representation
    • G06F11/0766Error or fault reporting or storing
    • G06F11/0781Error filtering or prioritizing based on a policy defined by the user or on a policy defined by a hardware/software module, e.g. according to a severity level
    • 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/0703Error or fault processing not based on redundancy, i.e. by taking additional measures to deal with the error or fault not making use of redundancy in operation, in hardware, or in data representation
    • G06F11/0793Remedial or corrective actions
    • 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/0703Error or fault processing not based on redundancy, i.e. by taking additional measures to deal with the error or fault not making use of redundancy in operation, in hardware, or in data representation
    • G06F11/0706Error or fault processing not based on redundancy, i.e. by taking additional measures to deal with the error or fault not making use of redundancy in operation, in hardware, or in data representation the processing taking place on a specific hardware platform or in a specific software environment
    • G06F11/0709Error or fault processing not based on redundancy, i.e. by taking additional measures to deal with the error or fault not making use of redundancy in operation, in hardware, or in data representation the processing taking place on a specific hardware platform or in a specific software environment in a distributed system consisting of a plurality of standalone computer nodes, e.g. clusters, client-server systems
    • 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/0703Error or fault processing not based on redundancy, i.e. by taking additional measures to deal with the error or fault not making use of redundancy in operation, in hardware, or in data representation
    • G06F11/0751Error or fault detection not based on redundancy
    • 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/0703Error or fault processing not based on redundancy, i.e. by taking additional measures to deal with the error or fault not making use of redundancy in operation, in hardware, or in data representation
    • G06F11/0766Error or fault reporting or storing
    • G06F11/0772Means for error signaling, e.g. using interrupts, exception flags, dedicated error registers

Abstract

技法は、クラスタ相互接続ファブリックによって互いに結合された複数のコンピューティングノードを備える分散コンピュータシステムにおけるアラートインジケータを受信することを含む。このアラートインジケータは、複数のコンピューティングノードのうちの第1のコンピューティングノードにおける障害の検出を示す。この技法は、このアラートインジケータに応答して、第1のコンピューティングノードと、他のコンピューティングノードのうちの少なくとも1つとの間の通信を規制して、障害に起因するエラー伝播を第1のコンピューティングノード内に封じ込めることを示す。【選択図】図2

Description

コンピュータシステムは、従来から揮発性メモリデバイス及び不揮発性メモリデバイスの双方を含んでいる。このように、ダイナミックランダムアクセスメモリ(DRAM)デバイス等の揮発性メモリデバイスは、それらの比較的高速なアクセス時間によって、通常、コンピュータシステム用のワーキングメモリを形成するのに用いられてきた。システムの電源がオフにされたときにコンピュータシステムデータを保存するために、データは、磁気媒体又は光媒体に基づくマスストレージデバイス等のより低速のアクセス時間に関連付けられた不揮発性マスストレージデバイスに記憶することができる。
比較的高密度のソリッドステート永続メモリ技術の開発は、これらの2つの技術の間のギャップを埋めてきており、したがって、従来の「メモリ」機能及び「ストレージ」機能の双方を受け持つ永続的なバイトアドレス指定可能な「メモリ」の量が、ますます多く用いられてきている。このメモリの使用の増大に起因して、分散コンピューティングシステムは、ますます一般的なものになると予想される。分散コンピューティングシステムによると、コンピューティングノードは、通常、それらのノードのメモリリソース及びストレージリソースを共有又はプールする目的でクラスタファブリック(例えば、ネットワークファブリック)を用いて互いに結合される。
一例示の実施態様による分散コンピューティングシステムの概略図である。 一例示の実施態様によるコンピューティングノードの障害に起因する分散コンピューティングシステムにおけるエラー伝播を制御する技法を示す流れ図である。 一例示の実施態様によるコンピューティングノードの障害に起因する分散コンピューティングシステムにおけるエラー伝播を制御する技法を示す流れ図である。 一例示の実施態様によるコンピューティングノードの障害に起因する分散コンピューティングシステムにおけるエラー伝播を制御する技法を示す流れ図である。 一例示の実施態様による分散コンピューティングシステムのより詳細な概略図である。 一例示の実施態様によるコンピューティングノードの障害に起因する分散コンピューティングシステムにおけるエラー伝播を制御するノード間通信を用いる技法を示す流れ図である。 一例示の実施態様によるコンピューティングノードの障害に起因する分散コンピューティングシステムにおけるエラー伝播を制御するとともにノードの故障解析を可能にする技法を示す流れ図である。
図1を参照すると、一例示の分散コンピューティングシステム100は、N個のコンピューティングノード110を備える(図1には、例としてコンピューティングノード110−1、110−2...110−Nが示されている)。コンピューティングノード110は、一般に、ノード110用のローカルリソースを形成することができるリソースだけでなく、コンピューティングノード110間で共有又はプールされるリソースも備える。このように、分散コンピューティングシステム100は、コンピューティングノード110の異なるグループ間で共有されるメモリリソース及び入力/出力(I/O)リソースのプールを備えることができる。
より具体的な例として、コンピューティングノード110−1は、I/Oアダプタ112を備えることができる。このI/Oアダプタは、コンピューティングノード110−1が用いることができるだけでなく、他のコンピューティングノード110がアクセスすることもできる。このように、I/Oアダプタ112は、1つ又は複数のマスストレージデバイス140(コンピュータノード110−1の一部分とすることもできるし、別個のものとすることもできる)にアクセスするのに用いることができる小型コンピュータシステムインタフェース(SCSI)ベースのアダプタ、ファイバチャネルアダプタ、又は他のI/Oアダプタとすることができる。コンピューティングノード110−1は、メモリデバイス(ダイナミックランダムアクセスメモリ(例として、DRAMデバイス及び/又はソリッドステートメモリデバイス))を更に備えることができる。このメモリデバイスは、コンピューティングノード110−1用のローカルメモリ114だけでなく、他のコンピューティングノード110によって共有されるプールされたメモリ120も形成することができる。分散コンピューティングシステム100の他のコンピューティングノード110も、同様のローカルリソース及び/又はプールされたリソースを有することができる。
プールされたリソースにアクセスすることを目的として、コンピューティングノード110は、本明細書において「クラスタ相互接続ファブリック130」と呼ばれるシステムファブリックを介して通信することができる。例として、クラスタ相互接続ファブリック130は、当業者が理解することができるように、インターネットベースの接続ファブリック、ローカルエリアネットワーク(LAN)接続ベースのファブリック、広域ネットワーク(WAN)接続ベースのファブリック等を含むことができる。
コンピューティングノード110−1等の所与のコンピューティングノード110は、その通常の動作の過程において、ハードウェアエラー又はソフトウェアエラーに遭遇する場合があり、その結果、障害が、コンピューティングノード110−1の領域内に発生する。この障害は、ハードウェア故障(I/Oアダプタ112、ネットワークインタフェース、メモリデバイス等の故障)だけでなく、システムファームウェア内のプログラミングエラー、オペレーティングシステムエラー等に起因するソフトウェア故障にも起因して生じる場合がある。障害の発生源にかかわらず、そのような障害が発生すると、コンピューティングノード110−1は、破損している場合があるリソース(例えば、メモリコンテンツ)、又はコンピューティングノード110−1の更なる動作時に破損されることになり得るリソースを有する場合がある。
所与のコンピューティングノード内に発生した障害に対処する1つの手法は、エラーが、ノードの外部に伝播せず、他のコンピューティングエンティティに影響を与えないように、そのコンピューティングノードを完全に分離することである。例えば、1つの手法は、障害の原因を訂正するとともに他のコンピューティングエンティティが破損されることを防止する目的で、障害に遭遇したコンピューティングノードをオフラインにすることができるように、そのノードをシャットダウンすることとすることができる。従来から、特定のコンピューティングエンティティの障害領域は、そのエンティティ自体の内部に存在し、この障害に起因するエラーは、このエンティティの外部に伝播しないようになっているが、分散コンピューティングシステム100は、従来の構成と異なり、そのコンピューティングノード110間で共有されるプールされたI/Oリソース及びメモリリソースを有する。
したがって、例えば、コンピューティングノード110−1が障害に遭遇すると、1つ又は複数の他のコンピューティングノード110は、ノード110−1上に位置するプールされたリソース(複数の場合もある)に起因する影響を直接受ける場合がある。その上、コンピューティングノード110−1は、分散コンピューティングシステム100の他のコンピューティングノード110からのI/Oアダプタ112、プールされたメモリ120等の、コンピューティングノード110−1の外部にプールされたリソースにアクセスする。そのため、事実上の障害領域は、障害が生じているコンピューティングノード110−1の外部及び分散コンピューティングシステム100の他の領域内に拡大している。
分散コンピューティングシステム100のコンピューティングノード110において発生した障害に起因するエラーの伝播を制御することを目的とした技法及びシステムが本明細書において開示される。引き続きコンピューティングノード110−1を例として用いると、障害がコンピューティングノード110−1に関連して発生したものと仮定すると、コンピューティングノード110−1は、一例示の実施態様によれば、アラートインジケータ124を生成する。このアラートインジケータ124は、次に、エラー(コンピューティングノード110−1とともに発生した障害に起因して生じる)をコンピューティングノード110−1内に限定することを目的とした分散コンピューティングシステム100の1つ又は複数の構成要素による動作をトリガする目的で用いられる。
より具体的には、例示の実施態様によれば、アラートインジケータ124は、分散コンピューティングシステム100の他のもの150が、エラーをコンピューティングノード110−1内に封じ込める適切な動作を取ることができるように、これらの他のもの150によって受信される。当業者が理解することができるように、障害を検出するためにコンピューティングノード110−1によって用いられる特定の技法は、幾つかの障害検出技法のうちの1つとすることができることに留意されたい。
図1とともに図2を参照すると、より具体的な例として、幾つかの実施態様によれば、リソースが共有される分散コンピューティングシステムにおいて技法200をエラー伝播封じ込めの目的で用いることができる。技法200に従うと、分散コンピューティングシステムのコンピューティングノードによる障害の検出を表すアラートインジケータが受信される(ブロック202)。このアラートインジケータに応答して、このコンピューティングノードとの通信が、ブロック204に従って規制され、障害に起因するエラー伝播が制御される。
より具体的な例として、図1とともに図3を参照すると、幾つかの実施態様によれば、技法300は、分散コンピューティングシステム100のクラスタ相互接続ファブリック130が、所与のコンピューティングノードにおいて発生した障害に起因するエラーの伝播を制御する目的で用いることができる。技法300に従うと、コンピューティングノード(本明細書において、「被影響コンピューティングノード(affected computing node)」と呼ばれる)による障害の検出を表すアラートインジケータが受信される(ブロック302)。このアラートインジケータに応答して、クラスタ相互接続ファブリック130を用いて、他のコンピューティングノード(複数の場合もある)がこの被影響コンピューティングノードとともに行う場合がある動作が選択的に制限される(ブロック304)。
このように、例示の実施態様によれば、特定のコンピューティングノード110が障害を被ると、この被影響コンピューティングノード110からのアウトバウンドI/O通信が停止されて、ノード110へのインバウンドI/O通信又は進行中のI/O通信が、被影響ノード110の破損されたメモリコンテンツを読み出して、この破損されたメモリコンテンツを、破損についての知識がない、ノード110の外部の別のデバイスに通信することが防止される。したがって、幾つかの実施態様によれば、クラスタ相互接続ファブリック130は、ファブリック130を介したトランザクションを、被影響コンピューティングノード110との現在のI/Oトランザクションを中止又は停止させることを対象としたトランザクションに制限又は限定する。
例示の実施態様によれば、障害に遭遇した被影響コンピューティングノード110は、この被影響ノード110に対してプロビジョニングされた(provisioned)全てのリモートI/OアダプタへのI/Oトランザクションを中止又は停止させるそのようなコマンドを通信することができ、その結果として、クラスタ相互接続ファブリック130は、これらのコマンドが通信されることを可能にする。更なる例示の実施態様では、クラスタ相互接続ファブリック130は、アラートインジケータ124を受信すると直ちに、障害に遭遇した被影響コンピューティングノード110の代わりに、被影響ノード110に対してプロビジョニングされた全てのリモートI/OアダプタへのI/Oトランザクションを中止又は停止させるそのようなコマンドを通信することができる。このように、添付の特許請求の範囲の範囲内にある多くの変形形態が考えられる。
本明細書において更に開示されるように、被影響コンピューティングノード110がI/Oトランザクションを中止又は停止させるコマンドを通信することを可能にすることに加えて、以下で説明される更なる実施態様によれば、クラスタ相互接続ファブリックは、キャッシュされたデータを用いて故障解析を行うことを可能にする目的で、障害に遭遇したコンピューティングノード110が、このキャッシュされたデータを1つ又は複数の他のコンピュータノード110に通信することを更に許可する。
コンピューティングノードが、故障に陥ったことを示した後、ファブリック130は、その後、このコンピューティングノードが試みる場合がある複数のタイプのアクセスを拒否することができる。例えば、コンピューティングノードに、リモートメモリの新たな部分を自身のキャッシュにエンキャッシュ(encache)することを許可しないこともできるし、データ収集シーケンスを実行するのに必要なロケーションをエンキャッシュすることのみ可能とすることもできる。コンピューティングノードは、追加のメモリ及び/又はI/Oリソースを自身にプロビジョニングすることを許可されなくてもよい。その上、コンピューティングノードは、中止コマンド以外のコマンドをリモートI/Oアダプタに送信することを許可されなくてもよい。
図1とともに図4を参照すると、更なる実施態様によれば、クラスタ相互接続ファブリック130は、障害に遭遇した被影響コンピューティングノード110からのエラーの伝播を制御することを目的とした別のステップ及び/又は追加のステップを取るのに用いることができる。このように、技法400に従うと、障害に遭遇したコンピューティングノード110から、このノードが障害に遭遇したことを示すアラートインジケータが受信される(ブロック402)。このアラートインジケータに応答して、技法400は、クラスタ相互接続ファブリック130等のシステムファブリックを用いて、被影響コンピューティングノードを発信源とする各パケットに、そのノードからのデータの「疑わしいステータス」を表すタグを追加する(ブロック404)ことを含む。換言すれば、障害被影響ノード以外の所与のコンピューティングノード110は、パケットを受信し、このパケットは、起こり得る「疑わしいステータス」を示すインジケータ(又は「タグ」)を含み、その場合、受信側コンピューティングノードは、発信側ノードが障害に遭遇したノードとして識別されているので、そのパケットを慎重に取り扱う。このタグは、例示の実施態様によれば、パケットのヘッダ内の所与のフィールド(例えば、所与のビットフィールド)によって示すことができる。
図5は、更なる実施態様による分散コンピューティングシステム499のより詳細な表現を示している。この実施態様の場合、分散コンピューティングシステム499は、N個のそれぞれのコンピューティングノード110−1〜110−Nを形成する物理マシン500を備える(図5には、例として、N個の物理マシン500−1、500−2、500−3...500−Nが示されている)。物理マシン500は、実際のハードウェア及びソフトウェアから構成される実際のマシンである。
この点に関して、物理マシン500−1(この例の場合、コンピューティングノード110−1を形成する)によって示されるように、物理マシン500−1は、1つ又は複数の中央処理ユニット(CPU)526によって実行されると、当該CPU(複数の場合もある)526に、オペレーティングシステム506、1つ又は複数のアプリケーション508、障害検出器514、1つ又は複数のデバイスドライバ510等を形成させるマシン実行可能命令504を含む。一例として、アプリケーションのうちの1つは、故障解析アプリケーションとすることができる。CPU(複数の場合もある)526は、物理マシン500のハードウェア520の単なる1つの例にすぎない。この点に関して、物理マシン500は、I/Oアダプタ521、ネットワークインタフェース528、及び様々なメモリデバイス524を備えることができる。
一般に、メモリデバイス524は、特定の実施態様に応じて、半導体記憶デバイス、磁気ベースの記憶デバイス、光記憶デバイス、着脱可能媒体等の非一時的記憶デバイスとすることができる。
図5に同様に示されるように、クラスタ相互接続ファブリック130は、コンピューティングノード110間で通信をルーティングすることを目的としたゲートウェイ、ルータ、スイッチ等の様々な構成要素を備えることができる。図5は、1つ又は複数のプロセッサ552及びメモリ554を備えることができる一例示の構成要素550(例として、スイッチ、ゲートウェイ、又はアタッチメントポイント)を示している。このメモリは、障害に遭遇したコンピューティングノード110からの伝播エラーを制御するとともに故障解析の目的でノード110へのアクセスを可能にすることを目的として、プロセッサ(複数の場合もある)552によって実行されると、ファブリック130の代わりに、プロセッサ(複数の場合もある)552に、本明細書において開示された技法のうちの1つ又は複数を実行させることができる命令を記憶する。
添付の特許請求の範囲の範囲内にある他の変形形態が考えられる。例えば、更なる実施態様によれば、図6に示す技法600は、障害に遭遇したノードからのエラーの伝播を制御する目的でファブリック130以外の分散コンピューティングシステムの1つ又は複数の構成要素を用いることを目的に用いることができる。このように、技法600のブロック602に従うと、コンピューティングノードにおける障害の検出を表すアラートインジケータが受信される(ブロック602)。このアラートインジケータに応答して、検出された障害をノード(複数の場合もある)にアラートする1つ又は複数のメッセージが、ブロック604に従って、1つ又は複数の他のコンピューティングノードに通信される(ブロック604)。例えば、幾つかの実施態様によれば、障害に遭遇した被影響コンピューティングノードは、メッセージ(複数の場合もある)を生成し、このメッセージ(複数の場合もある)を他のコンピューティングノード(複数の場合もある)に通信することができる。更なる実施態様では、障害に遭遇したノード以外の別のコンピューティングノードが、このタスクを実行することができ、更なる実施態様では、システムファブリックが、そのようなメッセージを通信することができる。所与のコンピューティングノードによってそのようなメッセージが受信されると、そのノードは、被影響コンピューティングノードとのその後の全てのトランザクションに、これらのトランザクションを「疑わしい」ものとして取り扱うことを目的としたフラグを立てることができる。
所与のコンピューティングノードが障害を被ると、このコンピューティングノードは、当該コンピューティングノードに対してプロビジョニングされたリモートメモリに対応するそのプロセッサキャッシュ内の状態を有することができ、このコンピューティングノードは、ローカルメモリを有することができる。このキャッシュされたデータの状態及びコンピューティングノードのローカルメモリの状態は、故障の解析のために保存することができる。この目的のために、データが破損していることの表示を用いてデータがタグ付けされている場合には、このデータは、他のコンピューティングノードに可視にすることができることに留意されたい。
コンピューティングノードのキャッシュにキャッシュされたライトバックデータについて、コンピューティングノードは、障害を検出した後、そのキャッシュのフラッシュを試みることができる。これは、通常、変更されたキャッシュラインをリモートメモリにライトバックすることを伴うが、故障の通知を受けている相互接続ファブリック130は、これらのライトバックトランザクションを、これらのトランザクション内のデータが破損している可能性があるという表示を用いて自動的にタグ付けすることができる。これらのタグ付けされたライトバックトランザクションは、例えば、リモートメモリに保存することができる。例として、特定の実施態様に応じて、トランザクションのタグ付けは、障害に遭遇したコンピューティングノードが行うこともできるし、システムファブリックが行うこともできる。その後の解析では、障害に遭遇したコンピューティングノードに対してプロビジョニングされたリモートメモリを用いることができ、破損の可能性があることの表示は、そのデータが、故障時にコンピューティングノードにキャッシュされ、したがって、障害前の近時に参照されている可能性があるリモートメモリのエリアを識別するという点で特に役立つことができる。
障害に遭遇したコンピューティングノード上のローカルメモリについて、コンピューティングノード(又はコンピューティングノードの代わりのシステムファブリック130)は、そのローカルメモリの、ノードの外部の永続的な場所へのコピー動作を開始することができる。この目的のために、クラスタ相互接続ファブリック130等のシステムファブリックに、この解析目的でデータを保持する或る量の未使用リモートメモリをアロケートするように命令することもできるし、その目的にのみ確保されたリモートメモリの特別ポートが存在することもできる。その上、クラスタ相互接続ファブリック130は、これらのうちの1つ又は複数をアロケートすることができる。ローカルメモリのコピーアウトが行われるとき、ファブリック130は、このコピーアウトが特にアロケートされたリモートメモリを対象とすることを確保することができ、それによって、コンピューティングノードが、このノードにプロビジョニングされたメモリであっても、別の使用中のメモリにコピーアウトすることを禁止することができる。クラスタ相互接続ファブリック130は、障害の解析に役立てる目的で、ローカルメモリをログ記録した場所の或る種の表示を更に提供することができる。
したがって、図7を参照すると、幾つかの実施態様によれば、技法700が、コンピューティングノードにおける障害の検出を表すアラートインジケータを受信する(ブロック702)ことと、コンピューティングノードからのエラーの伝播を制御するとともに、故障解析を行う少なくとも1つの他のコンピューティングノードとの通信を可能にする(ブロック704)こととを含む。
幾つかの実施態様によれば、キャッシュされたデータのライトバックは、ログ記録用に割り当てられたオリジナルのリモートメモリを対象とするのではなく、代替的に、この目的でアロケートされたリモートメモリを対象とすることができる。この場合も、ファブリック130は、コンピューティングノードの代わりにこのリダイレクトを行い、それによって、このコンピューティングノードが或る別のシステムを破損することなく故障のログ記録を正しく作成する能力に依拠しないようにすることができる。コンピューティングノード内の状態の障害後の保存にリモートメモリの「ログ記録」を用いることは、コンピューティングノードのキャッシュに故障時に存在した対応する状態の解析だけでなく、故障のあるコンピューティングノードがそのデータを近時にエンキャッシュする前にリモートメモリに存在したものの解析も可能にするという利点も有することができる。その上、状態の障害後の保存に別個の「ログ記録」リモートメモリを用いることは、障害後のどの保存された状態が疑わしいのかの表示を単純にすることができる。
限られた数の例を本明細書において開示してきたが、この開示の利益を有する当業者であれば、これらの例から数多くの変更形態及び変形形態を理解するであろう。添付の特許請求の範囲はそのような全ての変更形態及び変形形態を包含することが意図されている。

Claims (15)

  1. 方法であって、
    クラスタ相互接続ファブリックによって互いに結合された複数のコンピューティングノードを備える分散コンピュータシステムにおけるアラートインジケータを受信するステップであって、該アラートインジケータは、前記複数のコンピューティングノードのうちの第1のコンピューティングノードにおける障害の検出を示す、受信するステップと、
    前記アラートインジケータに応答して、前記第1のコンピューティングノードと、他のコンピューティングノードのうちの少なくとも1つとの間の通信を規制して、前記障害に起因するエラー伝播を前記第1のコンピューティングノード内に制御するステップと、
    を含む、方法。
  2. 前記通信を規制することは、前記第1のコンピューティングノードを前記他のコンピューティングノードに結合するシステムファブリックを用いて、前記第1のコンピューティングノードとともに行われる動作を選択的に制限することを含む、請求項1に記載の方法。
  3. 前記通信を規制することは、少なくとも1つの他のコンピューティングノードと前記第1のコンピューティングノードとの間で行われる動作に関し、前記第1のコンピューティングノードとの入力/出力動作を停止させることを対象とした動作以外の動作を防止することを含む、請求項2に記載の方法。
  4. 前記通信を規制することは、前記第1のコンピューティングノードを前記他のコンピューティングノードに結合するシステムファブリックを用いて、前記第1のコンピューティングノードによって通信されるパケットに、該パケットに関連付けられた疑わしいステータスを表すタグを追加することを含む、請求項1に記載の方法。
  5. 前記アラートインジケータを受信するステップは、前記第1のコンピューティングノードから前記他のコンピューティングノードのうちの少なくとも1つへの、検出された障害を少なくとも1つの他のコンピューティングノードにアラートする少なくとも1つのメッセージを受信するステップを含む、請求項1に記載の方法。
  6. 前記通信を規制することは、前記第1のコンピューティングノードにキャッシュされたデータを、障害が検出されたコンピューティングノードのためのデータ記憶に専用化された前記システムのメモリに通信することを含む、請求項1に記載の方法。
  7. 前記第1のコンピューティングノードとの前記通信を用いて、前記第1のコンピューティングノード上で故障解析を行うステップを更に含む、請求項1に記載の方法。
  8. 装置であって、
    クラスタ相互接続ファブリックによって互いに結合された複数のコンピューティングノードのうちの第1のコンピューティングノードから、前記複数のコンピューティングノードのうちの第1のコンピューティングノードにおける障害の検出を示すアラートインジケータを受信するインタフェースと、
    前記アラートインジケータに応答して、前記第1のコンピューティングノードと、他のコンピューティングノードのうちの少なくとも1つとの間の通信を規制して、前記障害に起因するエラー伝播を前記第1のコンピューティングノード内に封じ込めるとともに、少なくとも1つの他のコンピューティングノードによる前記第1のコンピューティングノードの故障解析を可能にする前記クラスタ相互接続ファブリックの構成要素と、
    を備える、装置。
  9. 前記構成要素は、スイッチ、ゲートウェイ、又はアタッチメントポイントを含む、請求項8に記載の装置。
  10. 前記構成要素は、前記アラートインジケータに応答して前記第1のコンピューティングノードとともに行われる動作を選択的に制限するように構成されている、請求項8に記載の装置。
  11. 前記構成要素は、前記第1のコンピューティングノードを発信源とするメッセージに、該メッセージに関連付けられた疑わしいステータスを表すインジケータを追加するように構成されている、請求項8に記載の装置。
  12. 前記構成要素は、前記第1のコンピューティングノードが、前記障害の検出後に、少なくとも1つのライトバック動作を行って、前記障害の検出前に前記第1のコンピューティングノードに記憶されたキャッシュデータを、前記第1のコンピューティングノードの一部分でないシステムのメモリに書き込むことを可能にするように構成されている、請求項8に記載の装置。
  13. 物品であって、プロセッサベースのシステムによって実行されると、
    クラスタ相互接続ファブリックによって互いに結合された複数のコンピューティングノードを備える分散コンピュータシステムにおけるアラートインジケータを受信することであって、該アラートインジケータは、前記複数のコンピューティングノードのうちの第1のコンピューティングノードにおける障害の検出を示す、受信することと、
    前記アラートインジケータに応答して、前記第1のコンピューティングノードと、他のコンピューティングノードのうちの少なくとも1つとの間の通信を規制して、前記障害に起因するエラー伝播を前記第1のコンピューティングノード内に封じ込めることと、
    を前記プロセッサベースのシステムに行わせる命令を記憶する非一時的コンピュータ可読記憶媒体を備える、物品。
  14. 前記プロセッサベースのシステムは、前記ファブリック及び少なくとも1つの他のコンピューティングノードのうちの一方に配置されている、請求項13に記載の物品。
  15. 前記記憶媒体は、前記プロセッサベースのシステムによって実行されると、少なくとも1つの他のコンピューティングノードによる前記第1のコンピューティングノードの故障解析を可能にすることを前記プロセッサベースのシステムに行わせる命令を記憶する、請求項13に記載の物品。
JP2015555972A 2013-01-30 2013-01-30 分散コンピューティングシステムのコンピューティングノードにおける障害に起因するエラー伝播の制御 Pending JP2016513309A (ja)

Applications Claiming Priority (1)

Application Number Priority Date Filing Date Title
PCT/US2013/023810 WO2014120148A1 (en) 2013-01-30 2013-01-30 Controlling error propagation due to fault in computing node of a distributed computing system

Publications (1)

Publication Number Publication Date
JP2016513309A true JP2016513309A (ja) 2016-05-12

Family

ID=51262715

Family Applications (1)

Application Number Title Priority Date Filing Date
JP2015555972A Pending JP2016513309A (ja) 2013-01-30 2013-01-30 分散コンピューティングシステムのコンピューティングノードにおける障害に起因するエラー伝播の制御

Country Status (7)

Country Link
US (1) US9990244B2 (ja)
EP (1) EP2951706B1 (ja)
JP (1) JP2016513309A (ja)
CN (1) CN104956346B (ja)
BR (1) BR112015018303A2 (ja)
TW (1) TWI519942B (ja)
WO (1) WO2014120148A1 (ja)

Families Citing this family (4)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US10171288B2 (en) * 2015-12-18 2019-01-01 International Business Machines Corporation Diagnosing faults in stateless distributed computing platforms
US10437754B1 (en) * 2016-09-23 2019-10-08 Amazon Technologies, Inc. Diagnostic fault management controller for distributed computing
US10817361B2 (en) * 2018-05-07 2020-10-27 Hewlett Packard Enterprise Development Lp Controlling error propagation due to fault in computing node of a distributed computing system
US11726662B2 (en) * 2021-03-03 2023-08-15 Vast Data Ltd. Maintaining an availability of a storage system

Citations (3)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
JPH10326261A (ja) * 1997-04-08 1998-12-08 Internatl Business Mach Corp <Ibm> 分散コンピュータ・システムのハードウェア要素によりエラーを報告するシステム
JP2007280155A (ja) * 2006-04-10 2007-10-25 Hitachi Ltd 分散システムにおける信頼性向上方法
JP2010238150A (ja) * 2009-03-31 2010-10-21 Toshiba Corp PCIExpress通信システム、及びその通信方法

Family Cites Families (20)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
GB2286508A (en) * 1994-02-08 1995-08-16 Ibm Performance and status monitoring in a computer network
US6081876A (en) 1997-09-22 2000-06-27 Hewlett-Packard Company Memory error containment in network cache environment via restricted access
JP3266126B2 (ja) * 1999-01-14 2002-03-18 日本電気株式会社 ネットワーク障害情報管理システム及び記憶媒体
JP2002543494A (ja) * 1999-04-28 2002-12-17 ユニバーサル・ミュージック・グループ・インコーポレーテッド 分散コンピュータシステム内のエラーを処理するための方法およびシステム
US6918059B1 (en) * 1999-04-28 2005-07-12 Universal Music Group Method and system for handling errors in a distributed computer system
US6434568B1 (en) 1999-08-31 2002-08-13 Accenture Llp Information services patterns in a netcentric environment
US6622260B1 (en) 1999-12-30 2003-09-16 Suresh Marisetty System abstraction layer, processor abstraction layer, and operating system error handling
US6675315B1 (en) * 2000-05-05 2004-01-06 Oracle International Corp. Diagnosing crashes in distributed computing systems
US20020194319A1 (en) 2001-06-13 2002-12-19 Ritche Scott D. Automated operations and service monitoring system for distributed computer networks
US6901537B2 (en) * 2002-02-27 2005-05-31 International Business Machines Corporation Method and apparatus for preventing the propagation of input/output errors in a logical partitioned data processing system
JP2003330905A (ja) 2002-05-14 2003-11-21 Nec Corp コンピュータシステム
US20040216003A1 (en) * 2003-04-28 2004-10-28 International Business Machines Corporation Mechanism for FRU fault isolation in distributed nodal environment
US7551552B2 (en) * 2003-10-17 2009-06-23 Microsoft Corporation Method for providing guaranteed distributed failure notification
US7165192B1 (en) * 2003-12-19 2007-01-16 Sun Microsystems, Inc. Fault isolation in large networks
US7640339B1 (en) * 2005-02-14 2009-12-29 Sun Microsystems, Inc. Method and apparatus for monitoring a node in a distributed system
US7493525B2 (en) * 2005-09-21 2009-02-17 Cisco Technology, Inc. Method and system for managing failure information
US7793051B1 (en) 2007-03-05 2010-09-07 Panta Systems, Inc. Global shared memory subsystem
CN100534048C (zh) 2007-04-27 2009-08-26 中控科技集团有限公司 分布式以太网系统及基于该系统的故障检测方法
US8145938B2 (en) * 2009-06-01 2012-03-27 Novell, Inc. Fencing management in clusters
US9274902B1 (en) * 2013-08-07 2016-03-01 Amazon Technologies, Inc. Distributed computing fault management

Patent Citations (3)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
JPH10326261A (ja) * 1997-04-08 1998-12-08 Internatl Business Mach Corp <Ibm> 分散コンピュータ・システムのハードウェア要素によりエラーを報告するシステム
JP2007280155A (ja) * 2006-04-10 2007-10-25 Hitachi Ltd 分散システムにおける信頼性向上方法
JP2010238150A (ja) * 2009-03-31 2010-10-21 Toshiba Corp PCIExpress通信システム、及びその通信方法

Also Published As

Publication number Publication date
CN104956346B (zh) 2018-06-19
US9990244B2 (en) 2018-06-05
TWI519942B (zh) 2016-02-01
US20150355961A1 (en) 2015-12-10
TW201439746A (zh) 2014-10-16
EP2951706A1 (en) 2015-12-09
WO2014120148A1 (en) 2014-08-07
CN104956346A (zh) 2015-09-30
EP2951706B1 (en) 2017-06-21
BR112015018303A2 (pt) 2017-07-18
EP2951706A4 (en) 2016-10-12

Similar Documents

Publication Publication Date Title
US10310926B2 (en) Data error detection in computing systems
US10841270B2 (en) Methods and devices for switching a virtual internet protocol address
JP5851503B2 (ja) 高可用性仮想機械環境におけるアプリケーションの高可用性の提供
US8935563B1 (en) Systems and methods for facilitating substantially continuous availability of multi-tier applications within computer clusters
CN103458036B (zh) 一种集群文件系统的访问装置和方法
KR101504882B1 (ko) 하드웨어 장애 완화
US8281071B1 (en) Systems and methods for managing cluster node connectivity information
US7962782B2 (en) Modifying connection records
WO2016127600A1 (zh) 异常处理方法及装置
US20170277439A1 (en) Techniques for Path Optimization in Storage Networks
US8060773B1 (en) Systems and methods for managing sub-clusters within a multi-cluster computing system subsequent to a network-partition event
US10346269B2 (en) Selective mirroring of predictively isolated memory
JP2016513309A (ja) 分散コンピューティングシステムのコンピューティングノードにおける障害に起因するエラー伝播の制御
BR102013003822A2 (pt) Monitor de agrupamento, método para monitorar um agrupamento e meio de gravação lido por computador
US9830263B1 (en) Cache consistency
US9454485B2 (en) Sharing local cache from a failover node
JP2005535002A (ja) 共有リソース・ドメイン
CN104618191B (zh) 一种主机与裸存储块之间的通信故障检测方法和装置
US20210117263A1 (en) Using Real-Time Analytics To Manage Application Features
US10514991B2 (en) Failover device ports
US10216562B2 (en) Generating diagnostic data
US10817361B2 (en) Controlling error propagation due to fault in computing node of a distributed computing system
US10133647B2 (en) Operating a computer system in an operating system test mode in which an interrupt is generated in response to a memory page being available in physical memory but not pinned in virtual memory
KR20180065881A (ko) 멀티 코어 프로세서 및 그것의 캐시 관리 방법
JP2009294758A (ja) 仮想計算機システム及びホストバスアダプタ用ドライバプログラム

Legal Events

Date Code Title Description
A131 Notification of reasons for refusal

Free format text: JAPANESE INTERMEDIATE CODE: A131

Effective date: 20160802

A02 Decision of refusal

Free format text: JAPANESE INTERMEDIATE CODE: A02

Effective date: 20170519