JP2005535044A - マルチコンピュータ・アーキテクチャにおけるソフトウェアの模写による作動の連続性 - Google Patents

マルチコンピュータ・アーキテクチャにおけるソフトウェアの模写による作動の連続性 Download PDF

Info

Publication number
JP2005535044A
JP2005535044A JP2004526954A JP2004526954A JP2005535044A JP 2005535044 A JP2005535044 A JP 2005535044A JP 2004526954 A JP2004526954 A JP 2004526954A JP 2004526954 A JP2004526954 A JP 2004526954A JP 2005535044 A JP2005535044 A JP 2005535044A
Authority
JP
Japan
Prior art keywords
application
node
replication
resources
continuity
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
JP2004526954A
Other languages
English (en)
Inventor
ベルト、マルク
デュフール、ローラン
リシャルド、フランソワ
クルツ、グレゴリ
Original Assignee
メイオシス
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 メイオシス filed Critical メイオシス
Publication of JP2005535044A publication Critical patent/JP2005535044A/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/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/2097Error 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 maintaining the standby controller/processing unit updated
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F11/00Error detection; Error correction; Monitoring
    • G06F11/07Responding to the occurrence of a fault, e.g. fault tolerance
    • G06F11/16Error detection or correction of the data by redundancy in hardware
    • G06F11/20Error detection or correction of the data by redundancy in hardware using active fault-masking, e.g. by switching out faulty elements or by switching in spare elements
    • G06F11/202Error detection or correction of the data by redundancy in hardware using active fault-masking, e.g. by switching out faulty elements or by switching in spare elements where processing functionality is redundant
    • G06F11/2038Error detection or correction of the data by redundancy in hardware using active fault-masking, e.g. by switching out faulty elements or by switching in spare elements where processing functionality is redundant with a single idle spare processing component
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F11/00Error detection; Error correction; Monitoring
    • G06F11/07Responding to the occurrence of a fault, e.g. fault tolerance
    • G06F11/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/2041Error detection or correction of the data by redundancy in hardware using active fault-masking, e.g. by switching out faulty elements or by switching in spare elements where processing functionality is redundant with more than one idle spare processing component
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F11/00Error detection; Error correction; Monitoring
    • G06F11/07Responding to the occurrence of a fault, e.g. fault tolerance
    • G06F11/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

Abstract

マルチコンピュータ・アーキテクチャ(クラスター)においてアプリケーション・ソフトウェアをレプリカ模写する方法。このアプリケーション・ソフトウェアは、クラスターのうちプライマリ・ノード又はオペレーショナル・ノードを構成するプライマリ・コンピュータ上で予め実行されていると共に、クラスターのうちセカンダリ・ノードを構成する少なくとも1つの他のコンピュータ上に模写されるようになっており、この方法はこのアプリケーション・ソフトウェアに関連するリソースの模写を含む。この方法は模写すべきアプリケーションの構造を供給するためのダイナミック内省メカニズムによってリソースレプリカを最新式にアップデートすること、並びに、使用するリソースおよび従属性のダイナミックグラフを包含する。

Description

本発明は、マルチコンピュータ・アーキテクチャ(クラスター)においてアプリケーション・ソフトウェアを模写する(レプリカを作る)方法に関する。本発明は、また、本発明の模写方法を用いてコンピュータのクラスターの中でアプリケーション・ソフトウェアの作動の連続性を実現する方法、および、この作動の連続性方法を実施するマルチコンピュータ装置に関する。
本発明の分野は、互いに協働する複数のコンピュータで構成されたコンピュータクラスターの分野である。これらのクラスターは例えばアプリケーションソフトウェアを実行するために使用される。即ち、所与の瞬間において、アプリケーションはクラスターの複数のコンピュータのうちプライマリノード又はオペレーショナルノード(OP)と呼ばれる1つのコンピュータで実行され、クラスターの他のコンピュータは、冗長アーキテクチャの文脈においては、二次的ノード又はスタンドバイ・ノード(SB)と呼ばれる。
ところが、このようなクラスターの作動には、ハードウエアや開発システムの欠陥や、人的な誤りや、アプリケーション自体の欠陥に起因する信頼性の問題がある。
これらの信頼性の問題を解決するため、現在、今日の大部分のクラスターで使用されている高利用性と呼ばれるメカニズムがあり、これはクラスターの二次的ノードのいづれかのバックアップノード上でのアプリケーションの冷間自動リスタートに立脚している。
ところが、自動リスタートに立脚するこれらのメカニズムは、欠陥時に実行中のアプリケーションが提供するサービスの完全な連続性を保障することを可能にするものではない。
特に、マルチコンピュータ・アーキテクチャの中でアプリケーション・ソフトウェアを模写(レプリカ化)するという問題があり、この模写はサービスの完全な連続性を保障しなければならない。
そこで、本発明の主たる目的は、マルチコンピュータ・アーキテクチャ(クラスター)においてアプリケーション・ソフトウェアを模写(レプリカ化)するための方法を提供するもので、このアプリケーション・ソフトウェアは、前記クラスターのうちプライマリ・ノードを構成するプライマリ・コンピュータ上で予め実行されていると共に、前記クラスターのうちセカンダリ・ノードを構成する少なくとも1つの他のコンピュータ上に模写されるようになっており、この方法は前記アプリケーション・ソフトウェアに関連するリソースの模写を含む。
この主たる目的は、模写すべきアプリケーションの構造を供給するためのダイナミック内省メカニズムによって模写されたリソースを最新式にアップデートすることを包含すると共に、使用するリソースおよび従属性のダイナミックグラフを包含することを特徴とする模写方法によって達成される。
好ましくは、この模写方法は、更に、各瞬間に模写が必要なリソースについての情報を供給する従属性ツリーの生成と維持を包含する。
留意すべきことに、本発明の模写方法においては、関連するセカンダリ(又はスタンバイ)ノードの数は任意である。
本発明の好ましい実施態様においては、本発明の模写方法は、更に、模写すべきリソースを1若しくは複数のセカンダリノード上に模写する“チェックポインティング”メカニズムを包含する。
本発明の模写方法は、好ましくは、以下の3段階を包含することができる:
−プライマリノード上でのリソースの獲得、
−ネットワークによる1又は複数のセカンダリノードへの移送、および、
−前記セカンダリノード上での復旧。
本発明の模写方法は、好ましくは、ダイナミックプロセス分配によるロードシェアリングによってデータ処理リソースを自動的に最適化するために使用することができる。この方法は、また、データ処理リソース・ネットワークにおける要求によるプロセス・リロケーションによるノン・インタラプティブ・メンテナンスのために、或いは、モバイル・アプリケーションにおいてアプリケーション・コンテキストを保存するために、利用することができる。
本発明の他の目的は、マルチコンピュータ・アーキテクチャ(クラスター)においてアプリケーションソフトウェアの作動の連続性を実現する方法を提供することにあり、このアプリケーションは所与の瞬間にクラスターの複数のコンピュータのうちプライマリノード又はオペレーショナルノードと呼ばれる1つのコンピュータで実行され、前記クラスターの他のコンピュータは二次的ノードと呼ばれる。
前記他の目的は、マルチコンピュータ・アーキテクチャ(クラスター)においてアプリケーションソフトウェアの作動の連続性を実現する方法によって達成されるもので、このアプリケーションは所与の瞬間にクラスターの複数のコンピュータのうちプライマリノード又はオペレーショナルノードと呼ばれる1つのコンピュータで実行されており、前記クラスターの他のコンピュータは二次的ノードと呼ばれる。
本発明によれば、この方法は以下の段階を包含する:
−前記アプリケーションの少なくとも1つのクローンを形成するべく少なくともセカンダリノード上にアプリケーションを模写すること、
−前記クローンを最新式にアップデートすること、および、
−欠陥又は前記プライマリノードに影響する出来事を検出したときに、前記クローンの少なくとも1つの方へサービスを切り換えること。
こうして、本発明の作動の連続性を実現する方法によれば、アプリケーションの模写から得られたクローン・アプリケーションを備え、かつ、欠陥又はプライマリノードに影響する出来事を検出したときにこのアプリケーションを連続的にリレーすることの可能な、セカンダリノードを利用することが可能となる。
本発明の模写方法で実施する模写は好ましくはホリスティックタイプである。従って、これらのクローンをアップデートしながら、決定論的かつ完全にアプリケーションの最新式のクローンが得られる。
これらのクローンはいわゆる“ホット”であり、即ち、それらはアプリケーションおよびその全てのオペレーショナル・コンテキストの正確なレプリカである。それらは規則的に(周期的に又は特徴的な出来事に応じて)アップデートされる。これらのクローンはアプリケーションがそのサービスを提供するに必要なあらゆるリソースと情報をもっている。
本発明の模写方法は、更に、アプリケーションの良好な作動に必要なリソースの状態を監視することを可能にする。もしもいづれかのアプリケーションが回復不能に劣化したならば、本発明の模写方法は新たなプライマリとして1つのクローンを選択し、それに交代するよう命令する。
この選択は切換え(スイッチング)と呼ばれ、アプリケーションと通信する残部の世界にとって透明である:即ち、プライマリノードが稼働していないにも拘わらず、アプリケーションが提供するサービスは中断されない。何故ならば、アプリケーションはそのあらゆるコンテキストと共に選択されたクローンによって交代されるからである。
こうして、プライマリノードによるにせよ(切換え前)、クローンによるにせよ(切換え後)、アプリケーションに対し残部の世界によって送信された全てのメッセージが処理されることを保障することができる。このため、本発明の模写方法は、クローンの最後のアップデート以降にプライマリが受け取った全てのメッセージを(周期的クローン生成メカニズムに加えて)各クローン上に登録することを更に包含することができる。これらのメッセージは切換えの場合には選択された新たなプライマリクローン内に注入されるであろう。
ホリスティックな模写は移動(マイグレーション)プロセスの既存システム内で既に実行されているメカニズムに交代する。しかし、本発明の模写方法内でなされた構想と用途は従来公知のあらゆる開発とは異なるものである。
本発明の作動の連続性を実現する方法は、従って、透明で、ホリスティックで、最適化されたレプリカを使用し、このレプリカはアプリケーションの脱ローカル化とリソースの仮想化によるサービスの連続性に捧げられる。
この方法によれば、クラスター型マルチコンピュータの中でのフォールト許容範囲の使用を無効にする従来方法の幾つかの制約が解消される。
第1の制約はプライマリノードとセカンダリノードとの間の独立性の問題である。従来のシステムにおいては、プライマリノードからセカンダリノードへのリソースの模写はプロセスを通じてプライマリノードがオペレーショナルに存在することを前提としており、かつ、必要としている。本発明の模写方法は、プライマリが消失した場合でもクローンはあらゆる瞬間において全く自律的に生きているので、この制約を解消するものである。このプライマリ/セカンダリ脱相関関係はフォールト許容範囲の必要条件である。
本発明の模写方法で実施する模写はホリスティックであるので、相互依存式非同期式リソースの首尾一貫した一体性を獲得する。従来技術の方法においては、独立したリソースの状態のみが獲得されていた。
従来技術の方法の他の制約は、侵入性の問題にある。本発明の模写方法はソースコードに対して非侵入的である:即ち、従来例は、生成されたデータ処理プロセスおよび使用するリソースが移動されることができるためには、ソースコードの修正(又はソースコードを明白に設計すること)を必要としていた。
留意すべきことに、本発明の模写方法を実施するため、好ましくは、2002年8月2日公開の公開特許出願FR2820221に記載された非侵入的ダイナミック・ソフトウェア・エンジニアリング技術を利用することができる。これらのソフトウェア・エンジニアリング技術は、本発明の作動の連続性を実現する方法をアプリケーションに対して透明(従って、ジェネリック)にするべく、二値表示(実行可能)においてアプリケーションを操作するのを可能にする。
本発明の他の観点によれば、少なくともマルチコンピュータ上で少なくとも1つのアプリケーションソフトウェアを実行するためのマルチコンピュータ装置であって、本発明の作動の連続性を実現する方法を実行する装置が提供される。
本発明の他の利点や特徴は非限定的な実施例の詳細な説明および添付図面から明らかとなろう。
先ず、図面を参照しながら、本発明の模写方法で実施するホリスチック模写(レプリカ)メカニズムの動作を説明する。
切換えをする場合にアプリケーションをセカンダリノード上で正確に走らせるため、このアプリケーションに必要な全てのリソース(資源)がやはりセカンダリノード上に模写される必要がある。
もしもこれらのリソースが状態型のリソース(即ち、アプリケーションの実行と共に変化し、そのグローバルな文脈に寄与するリソース)であるならば、それらの状態もまた首尾一貫して獲得され模写されなければならない。
これらのリソースの全ては、アプリケーションの初期化の際に発見され、次いで、保護すべきアプリケーションの構造を自動的に得るのを可能にするダイナミック内省メカニズムによって、および、使用するリソースおよび従属性のダイナミックグラフによって、最新式にアップデートされる。
このメカニズムは、二値システムの再帰特性に、オペレーティングシステムの相続メカニズムに、および、そのリソースの状態の変更に寄与するメカニズム(システムコールを含む)の二値インスツルメンテーションによる監視に、立脚している。
図4を参照するに、本発明の模写方法の実施例においては、内省・監視ドライバは、クラスターの全てのノードに対する監視を行うと共に、監視データをシステムの情報管理ベースMIBへ送信する。このMIBベースは、チェックポイントのトリッガのためのオペレーショナルノードに対するクラスターの管理とバックアップノードに対するクラスターの管理内で同時に付勢される。MIBベースは、また、合成MIBベースを有する監督マネージャによって付勢され、グラフィックユーザインターフェース(GUI)が連携する管理システムによってアクセスされる。
この発見および最新式内省作業の結果は、各瞬間に模写が必要なリソースについての情報を本発明の模写方法に供給する“従属性ツリー”の生成と維持である。このグラフの存在はクローンの完全さと統一を保障する。
本発明の作動の連続性を実現する方法で実施する他のチェックポイント・メカニズムは、1又は複数のセカンダリノード上でリソースを模写することからなる。このリソース模写メカニズムは3段階で行われる:
−プライマリノード上でのリソースの獲得、
−ネットワークによる1又は複数のセカンダリノードへの移送、および、
−セカンダリノード上での復旧。
模写されたリソースは:
−関連する各プロセスの仮想メモリ、および、そのコールスタックと、
−システム(プロセス間通信、ネットワーク接続、など)リソースと、
−ディスクに書き込まれたデータ、
を含む。
リソースの模写メカニズムはアプリケーションに必要なリソースの全てが完全にかつ首尾一貫して(故に、ホリスティック)移送されることを保障する。
本発明の模写方法の実施は、アプリケーションがそのコンテキスト(前後関係)を失うことなくセカンダリ上で生き続けることができることを保障する:即ち、アプリケーションは脱ローカル化され、下にあるハードウエアとオペレーティングシステムは仮想化され、アプリケーションは物理的ローカル化とは独立に振る舞う。
切換えをする場合には、アプリケーションは停止したものとは考えられない:即ち、アプリケーションはそのコンテキストにおいて回り続けてはいるが、但し他のハードウエアリソース上でである。
アプリケーションが使用するリソースは多種多様である(マルチプロセス、オペレーティングシステム、等)。それは非決定論的な環境で非同期式に生きている。
本発明の模写方法は非同期式“チェックポインティング(チェックポイント生成)”アルゴリズムを実行する:同期化バリヤーが全てのリソースへ送信され、本発明の模写方法は状態の獲得が完全で首尾一貫していることを保障する。
次に本発明の模写方法で使用する最適化技術を説明する。全てのリソースの状態の決定論的かつ完全な獲得はシステムの性能にとって高価である。更に、アプリケーションの性能に対するインパクトが小さいことが製品市場によって認められるための(従って、要するに、その有用性のための)必要条件である。従って、このインパクトを最小にするため、複数の最適化技術が想定され開発されている。
最初に、略同期式のチェックポイントは従来型のチェックポイント生成メカニズムの最適化である:それは、非同期式アルゴリズムが必要とするように獲得の最中にシステムを全体的に停止させることなく、同期式アルゴリズムの獲得の首尾一貫性を提供する。
チェックポイントの周期は、切換え後のチェックの時間(潜在的には2つのチェックポイント間の周期が長ければ長いほど長い)と獲得し移送すべき状態の情報量との間の妥協を最適化するべく、調節可能である。
更に、チェックポイントはインクレメント式である:図1の作動例が示すように、2つのチェックポイントの間の状態の差のみが送信される。この実施例では、インクレメント式チェックポイントはレプリカ・アプリケーションを得るべくマスターアプリケーションから行われ、プライマリノードとセカンダリノードとの間で分担(シェア)されたディスクが使用される。
従って、最初のチェックポイントは性能(クローンの初期化)の点で高価であるが、後続のチェックポイントはインパクトが小さい。
チェックポイントは、また、デクレメント式である:従属性グラフの知的分析は送信すべき情報量を必要最小限に制限するのを可能にする。
最後に、本発明の模写方法で実施するコピー・オン・ライト(書き込み時コピー)のメカニズムの一例を示す図5を参照するに、オペレーティングシステムが提供する“コピー・オン・ライト”のメカニズムは、チェックポイントのトリッガの次に、獲得の時間を移送の時間から分離するために実行される。この実施例では、コピー・オン・ライト・メカニズムは、プロセス又はiノード(インデックスノード)を介してユーザが出力した書き込み要求の後に、新たな参照毎にデータブロック(メモリ又はディスク)上で起こる。図6に示したように、修正されたデータブロックだけが模写される。
次に、本発明の作動の連続性を実現する方法における略同期式チェックポイント生成メカニズムの実施例を説明する。このメカニズムは以下のものを含む:
−プロセス同期化バリヤー(PSB)、
−リソースの管理(RM)、
−システムリソースの管理(SRM)、
−プロセスリソースの管理(PRM)。
プロセス同期化バリヤー(PSB)は、進行中の入力/出力の管理を尊重しながら、瞬間Tにおいてシステムおよびアプリケーションの状態の鮮明な“写真”を取る目的で、アプリケーションを構成するプロセスのロックの同期化を可能にするメカニズムである。
リソース管理(RM)は、1つのマシンから他のマシンへとアプリケーションを模写するに必要な異なるリソースに対して、チェックポイント操作の異なる段階のシーケンスを行うのを可能にする一組の上位自動装置である。
システムリソース管理(SRM)はチェックポイント生成メカニズムの異なる段階でアプリケーション(プロセスの全体)が利用するシステムリソースの管理の異なるルーチンの管理を可能にするメカニズムを含む。
プロセスリソース管理(PRM)はチェックポイント生成メカニズムの異なる段階でプロセスが利用するリソースの管理の異なるルーチンの管理を可能にするメカニズムを含む。このコードはアプリケーションプロセスの起動時にその内部にダイナミックにロードされる。
今日ではアプリケーションが利用するリソースを獲得するに必要な3つの主要段階が存在し、後者それ自身は異なる段階に分割される。
これらの異なる下位段階の存在理由は、異なるアプリケーションリソースおよびシステムリソースの回収/復旧にリンクされたアプリケーションロックの時間を最小限にすると共に、バックアップされた情報の首尾一貫性を保障することにある。
ダンプ:
RM_PRE_ダンプ
RM_ダンプ
RM_ポスト_ダンプ
RM_アボート_ダンプ
復旧:
RM_PRE_復旧
RM_復旧
RM_ポスト_復旧
RM_アボート_復旧
スイッチ:
RM_PRE_スイッチ
RM_スイッチ
RM_ポスト_スイッチ
RM_アボート_スイッチ
次に、本発明の模写方法の枠内におけるシステムリソースの仮想化(バーチャル化)を説明する。ある種のシステムリソースUNIXは各マシンに固有の独自のアイデンティファイアーによって特徴づけられる。これらのアイデンティファイアーは変数の形でアプリケーションによって保存され、これは後者が前者を参照するのを可能にする。1つのマシンから他のマシンへとアプリケーションを移動するときには、アプリケーションのメモリはシステムリソースに関連するデータも含め一体的に送られる。システムリソースの参照の単一性を保障するため、アプリケーションMETA-CLUSTERはシステムリソースの仮想化メカニズムを使用し、クラスターを構成する異なるマシンの間で単一のアイデンティファイアーを維持するのを可能にする。
これらの仮想化メカニズムは今日では以下のシステムリソースのアイデンティファイアーに適用される:
−プロセス
−PIPE
−FIFO
−IPCシステムV
−シェアメモリ
−セマフォア
−メッセージキュー
−AF UNIXソケット
−スレッド
従って、仮想化メカニズムはクラスターの中でのシステムリソースの参照の単一性を保障すると共に、各マシン上のシステムリソースの方へのその並進移動を保障する。それらは、これらのアイデンティファイアーの操作を可能にする異なるルーチンを内省する能力を備えた、モノシステム上およびマルチプロセッサ上で、それらになされる要求の非先取り性を保障するダイナミック・コアモジュールの形で実行される。
非限定的な例として、getpidルーチンはMETA-CLUSTERがアプリケーションを引き継いだときにMETAによって編成され、アプリケーションによるその利用はCLUSTER_PIDへ戻り、後者は次いでパラメータとしてPID(kill、waitpid、など)を採用する全てのルーチン上でアプリケーションによって利用されるであろう。
図2を参照するに、本発明の模写方法は、また、CFOR(クラスター・ファイル・システムの最適化された模写)の術語で表される、オペレーショナルノードとスタンバイノードとの間のアプリケーションデータファイルの模写モジュールを含む。
CFORモジュールは従って以下の機能を遂行する:
a)データの書き込み
b)ログ(ジャーナル)の修正
c)模写の順序
d)データに基づいて構築された合成
e)移送の合成
f)ファイルシステムのアップデート
この模写モジュールの作動は次の通りである:各コピー(ダンプ)の間に、CFORはクラスターが管理するアプリケーションによってファイルシステムにもたらされた修正の累積的合成的ジャーナルを機敏に構築する。
ファイルシステムの修正は多様なコールシステム(write(2)、mkdir(2)、rmdir(2)、unlink(2)、・・・)のアプリケーションプロセス内における編成によって機敏に抽出される。原理はデータのない動作のみをメモリすることからなる。即ち、もしアプリケーションがファイルに2Moを書き込むならば、動作“ファイル、書き込み、開始、終わり”しかメモリせず、データの2MoはOSによってディスク上にバックアップされ、それらを他所に複製する必要はない。
多重書き込みは最新式に合成される。もしアプリケーションが以下の動作を行うならば:
1.ファイル“toto”を開く
2.ファイルtoto内にオフセット30で30000バイトを書き込む
3.ファイルtoto内にオフセット20で20000バイトを書き込む
4.ファイル“toto”を閉じる。
得られるCFORログは以下のようになろう:
・ファイルtoto、20 ? 30030
コピー(ダンプ)の瞬間には、構造的データ(メタデータ)並びに修正内容は別のファイルに登録される。
この別のファイルはスタンバイノードへ送信され、その実行はそれがダンプ時のオペレーショナルノードのツリー構造と厳密に同一になるようにツリー構造を同期化するのを可能にする。
次に、本発明の模写方法で実施する同期化メカニズムを説明する。
マシンSBが現れたときには、そのファイルシステム(FS)をオペレーショナルノードOPのそれに対して同期化する必要がある。この同期化はオペレーショナルノードOPをロックすることなく行わなければならず、従って、それは一定不変に進展するファイルシステムに対して行われる。画像のぼやけの問題を回避するため、同期化はオペレーショナルノードOPのファイルシステムのスナップショットを通って行われる。CFORのログのサイズを制限するため、手続きは2段階に分解される。
1.オペレーショナルノードOP上でのスナップショットの生成
2.ノードSBとの最初の同期
3.オペレーショナルノードOP上でのスナップショットの破壊
4.CFORの活性化とオペレーショナルノードOP上でのスナップショットの2回目の生成
5.ノードSBとの2回目の同期(できるだけ短時間にしなければならない)
6.オペレーショナルノードOP上でのスナップショットの削除(ノードSBは最初の全コピーを受け取る準備ができている)
7.次のコピーにおける、CFORログの移送、および、CFORのデータとのノードSBのファイルシステムFSのアップデート
8.コピー/復旧の通常サイクルが位置につく。
プロセスのメモリの再複写はプロセスの内部メモリ機構をダイナミックに分析しながら、かつ、異なる領域を分離しながら行われる:
−テキスト
−データ
−実行スタック
メモリの分析はユーザコードに侵入することなくオペレーティングシステムによって供給されたデータに基づいて行われる。これらのデータはプロセスの文脈において獲得されかつ分析され、使用したメモリの領域のテーブルを作成するのを可能にする。
分析が終わると、メモリ割り当て/開放システムコールの挿入エージェントはメモリ領域のテーブルの進展の追従を行う。
コピー(ダンプ)の際には、修正可能な(即ち、書き込みアクセス可能な)メモリ領域だけがスタンバイノードに送信され、そこで再複写される。こうして、スタンバイノード上のプロセスはオペレーショナルノード上のメモリ領域と同じメモリ領域を含んでおり、同じデータを有する。
メモリの内容のバックアップはプロセスの観点から原子的でなければならないので、バックアップはプロセスが状態を変えることができないように行われなければならない(従って、プロセスはロックされる)。従って、プロセスを余りにも長い時間ロックしないようにするため、オペレーティングシステムの“コピー・オン・ライト”メカニズム(例えば、プリミティブ(fork))を押して、プロセスのメモリ画像のコピーを作り、この画像をスタンバイノードの方へ送る。移送が終わると、“コピー・オン・ライト”メカニズムによって維持されたメモリ画像は削除される。
本発明の模写方法は、また、メモリ分析に基づくインクレメント的コピー(ダンプ)メカニズムを実行するが、更に、ページの書き込みプロテクト(保護)メカニズムを追加する。
ページの分析が行われると、書き込みアクセス可能な全てのページはプロテクト(保護)される。即ち、これらのページへの書き込みはページプロテクト違反信号の送信をトリッガする。
プロテクトはシステムコール“mprotect”のようなオペレーティングシステムが供給するメカニズムに基づいている。
アプリケーションがデータを修正しようとする時には、このデータを含んでいるページは修正されプロテクト解除されたものとマークされる。アプリケーションコードの作動はこれらのメカニズムの付加によってインパクトを受けない(非侵入性)。
インクレメント的コピー(ダンプ)の際には、前回のダンプ以降に修正されたページだけが送られる。コピー(ダンプ)が終わると、修正された全てのページは次の書き込みを検出するべく再びプロテクトされる。インクレメント的コピー(ダンプ)は各コピー(ダンプ)毎にスタンバイの方へ送るべきデータのサイズを減少させるのを可能にする。
チェックポイントのトリッガの管理はMIBベースから行うことができ、後者は、図7に示したように、プライマリノード又はオペレーショナルノードから、システムおよびアプリケーションの状態に関する情報、出来事とアプリケーションのコールバックに関する情報、および合成式状態分析装置から送られた情報を受け取る。プライマリノードからセカンダリノードへのアプリケーションの切換え装置は例えば最後のチェックポイントEVENT、最後のチェックポイントPERIODIC、入力の登録(ロギング)に作用し、以下のものを含む:
−切換えの筋書きの選択、
−チェックポイントの選択、
−復旧のトリッガ、
−ログのリプレーのトリッガ(又は非トリッガ)、
−新たなオペレーショナルノードの通知。
勿論、本発明は前述した実施例に限定されるものではなく、本発明の範囲を逸脱することなくこれらの実施例に種々の変更を加えることができる。
図1は本発明の模写方法で実施するダイナミック・ミラー機能を示す。 図2は本発明の模写方法で実施するデータ模写の原理を模式的に示す。 図3は本発明の模写方法を実施する、欠陥を監視し検出するためのソフトウェア・アーキテクチャの一例を示す。 図4は本発明の模写方法で実施する監視の原理を模式的に示す。 図5は本発明の模写方法で実施する書き込み時コピーのメカニズムを模式的に示す。 図6は本発明の模写方法で実施する模写のためのインクレメント・メカニズムを模式的に示す。 図7は本発明の模写方法で実施する切換えメカニズムを模式的に示す。

Claims (19)

  1. マルチコンピュータ・アーキテクチャ(クラスター)においてアプリケーション・ソフトウェアを模写する方法であって、前記アプリケーション・ソフトウェアは、前記クラスターのうちプライマリ・ノードを構成するプライマリ・コンピュータ上で予め実行されていると共に、前記クラスターのうちセカンダリ・ノードを構成する少なくとも1つの他のコンピュータ上に模写されるようになっており、この方法は前記アプリケーション・ソフトウェアに関連するリソースの模写を含み、この方法の特徴は、模写されたリソースは:
    −関連する各プロセスの仮想メモリ、および、そのコールスタックと、
    −システム(プロセス間通信、ネットワーク接続、など)リソースと、
    −ディスクに書き込まれたデータ、
    を含み、この方法は、更に、模写されたリソースを模写すべきアプリケーションの構造を供給するためのダイナミック内省メカニズムによって最新式にアップデートすることを包含すると共に、使用するリソースおよび従属性のダイナミックグラフを包含することからなる方法。
  2. 前記方法は、更に、各瞬間に模写が必要なリソースについての情報を供給する従属性ツリーの生成と維持を包含することを特徴とする請求項1に基づく模写方法。
  3. 前記方法は、更に、模写すべきリソースを1若しくは複数のセカンダリノード上に模写するチェックポイント生成メカニズムを包含することを特徴とする請求項1又は2のいづれかに基づく模写方法。
  4. 前記方法は:
    −プライマリノード上でのリソースの獲得、
    −ネットワークによる1又は複数のセカンダリノードへの移送、および、
    −前記セカンダリノード上での復旧、
    の3段階を包含することを特徴とする請求項3に基づく模写方法。
  5. 前記方法は、更に、チェックポイント生成メカニズムを最適化するメカニズムを包含することを特徴とする前記請求項のいづれかおよび請求項3に基づく模写方法。
  6. チェックポイントメカニズムはインクレメント式であることを特徴とする請求項5に基づく模写方法。
  7. チェックポイントメカニズムはデクレメント式であることを特徴とする請求項5又は6に基づく模写方法。
  8. チェックポイントメカニズムは以下の機能の少なくとも1つを包含することを特徴とする請求項5から7のいづれかに基づく模写方法:
    −プロセス同期化バリヤー(PSB)、
    −リソースの管理(RM)、
    −システムリソースの管理(SRM)、
    −プロセスリソースの管理(PRM)。
  9. 前記方法は、更に、アプリケーションが実行されるオペレーショナルノード(OP)とスタンバイノード(SB)との間のアプリケーションデータファイルの模写メカニズムを包含することを特徴とする前記請求項のいづれかに基づく模写方法。
  10. マルチコンピュータ・アーキテクチャ(クラスター)においてアプリケーションソフトウェアの作動の連続性を実現する方法であって、このアプリケーションは所与の瞬間にクラスターの複数のコンピュータのうちプライマリノード又はオペレーショナルノードと呼ばれる1つのコンピュータで実行され、クラスターの他のコンピュータは二次的ノードと呼ばれ、この方法は前記請求項のいづれかに基づく模写方法を実施し、この方法は以下の段階を包含することを特徴とする:
    −前記アプリケーションの少なくとも1つのクローンを形成するべく少なくとも前記セカンダリノード上でアプリケーションを模写すること、
    −前記クローンを最新式にアップデートすること、および、
    −欠陥又は前記オペレーショナルノードに影響する出来事を検出したときに、前記クローンの少なくとも1つの方へサービスを切り換えること。
  11. アプリケーションの模写はホリスティックな性質のものであることを特徴とする請求項10に基づく作動の連続性方法。
  12. アプリケーションのクローンのアップデートを更に包含することを特徴とする請求項10又は11に基づく作動の連続性方法。
  13. アプリケーションの作動に必要なリソースの状態の監視を更に包含することを特徴とする請求項10から12のいづれかに基づく作動の連続性方法。
  14. 欠陥又はオペレーショナルノードに影響する出来事を検出したときに、セカンダリノードにインストールしたクローンの中で、最初のアプリケーションと置換すべきクローンを選択する段階を更に包含し、前記選択されたクローンがインストールされているノードは新たなオペレーショナルノードとなることを特徴とする請求項10から13のいづれかに基づく作動の連続性方法。
  15. プライマリ又はオペレーショナルノードが受け取ったメッセージを各クローン上に登録することを更に包含し、これらのメッセージは切換えの場合には選択された新たなオペレーショナルクローン内に注入されることを特徴とする請求項10から14のいづれかに基づく作動の連続性方法。
  16. 少なくともマルチコンピュータ上で少なくとも1つのアプリケーションソフトウェアを実行するためのマルチコンピュータ装置であって、請求項11から15のいづれかに基づく作動の連続性を実現する方法を実行するようになった装置。
  17. ダイナミックプロセス分配によるロードシェアリングによってデータ処理リソースを自動的に最適化するために請求項1から9のいづれかに基づく模写方法を応用すること。
  18. データ処理リソース・ネットワークにおける要求によるプロセス・リロケーションによるノン・インタラプティブ・メンテナンスのために請求項1から9のいづれかに基づく模写方法を応用すること。
  19. モバイル・アプリケーションにおいてアプリケーション・コンテキストを保存するために請求項1から9のいづれかに基づく模写方法を応用すること。
JP2004526954A 2002-08-02 2003-07-28 マルチコンピュータ・アーキテクチャにおけるソフトウェアの模写による作動の連続性 Pending JP2005535044A (ja)

Applications Claiming Priority (2)

Application Number Priority Date Filing Date Title
FR0209855A FR2843209B1 (fr) 2002-08-02 2002-08-02 Procede de replication d'une application logicielle dans une architecture multi-ordinateurs, procede pour realiser une continuite de fonctionnement mettant en oeuvre ce procede de replication, et systeme multi-ordinateurs ainsi equipe.
PCT/FR2003/002371 WO2004015574A2 (fr) 2002-08-02 2003-07-28 Continuite de fonctionnement par replication d’un locigiel dans une architecture multi-ordinateurs

Publications (1)

Publication Number Publication Date
JP2005535044A true JP2005535044A (ja) 2005-11-17

Family

ID=30129640

Family Applications (1)

Application Number Title Priority Date Filing Date
JP2004526954A Pending JP2005535044A (ja) 2002-08-02 2003-07-28 マルチコンピュータ・アーキテクチャにおけるソフトウェアの模写による作動の連続性

Country Status (9)

Country Link
US (1) US7725763B2 (ja)
EP (1) EP1529259B1 (ja)
JP (1) JP2005535044A (ja)
AT (1) ATE434790T1 (ja)
AU (1) AU2003273481A1 (ja)
CA (1) CA2493407C (ja)
DE (1) DE60328100D1 (ja)
FR (1) FR2843209B1 (ja)
WO (1) WO2004015574A2 (ja)

Cited By (2)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
JP2008530672A (ja) * 2005-02-11 2008-08-07 エアバス・フランス 試験飛行の機上処理システムおよび方法
JP2009539160A (ja) * 2006-06-02 2009-11-12 インターナショナル・ビジネス・マシーンズ・コーポレーション クラスタ回復のための機器および方法

Families Citing this family (68)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US9213609B2 (en) * 2003-12-16 2015-12-15 Hewlett-Packard Development Company, L.P. Persistent memory device for backup process checkpoint states
US20050216552A1 (en) * 2004-03-24 2005-09-29 Samuel Fineberg Communication-link-attached persistent memory system
US7475296B2 (en) * 2004-05-20 2009-01-06 International Business Machines Corporation Serviceability and test infrastructure for distributed systems
FR2872605B1 (fr) * 2004-06-30 2006-10-06 Meiosys Sa Procede de gestion d'un processus logiciel, procede et systeme de redistribution ou de continuite de fonctionnement dans une architecture multi-ordinateurs
EP1784727B1 (en) * 2004-08-26 2019-05-08 Red Hat, Inc. Method and system for providing transparent incremental and multiprocess check-pointing to computer applications
WO2006026402A2 (en) 2004-08-26 2006-03-09 Availigent, Inc. Method and system for providing high availability to computer applications
FR2881244B1 (fr) * 2005-01-24 2007-05-04 Meiosys Soc Par Actions Simpli Procede de comptage d'instructions pour journalisation et rejeu d'une sequence d'evenements deterministes
JP5102634B2 (ja) * 2005-01-28 2012-12-19 インターナショナル・ビジネス・マシーンズ・コーポレーション 決定的イベント・シーケンスのロギングおよび再生のための命令をカウントする方法
FR2883083B1 (fr) * 2005-03-14 2007-05-04 Meiosys Soc Par Actions Simpli Procede d'execution d'une application dans un conteneur virtuel formant une session d'environnement virtualise
US7937616B2 (en) * 2005-06-28 2011-05-03 International Business Machines Corporation Cluster availability management
US8082468B1 (en) * 2008-12-15 2011-12-20 Open Invention Networks, Llc Method and system for providing coordinated checkpointing to a group of independent computer applications
US9141481B1 (en) 2010-08-06 2015-09-22 Open Invention Network, Llc System and method for reliable non-blocking messaging for multi-process application replication
US8195722B1 (en) 2008-12-15 2012-06-05 Open Invention Network, Llc Method and system for providing storage checkpointing to a group of independent computer applications
US8584145B1 (en) 2010-08-06 2013-11-12 Open Invention Network, Llc System and method for dynamic transparent consistent application-replication of multi-process multi-threaded applications
US8589953B1 (en) 2010-08-06 2013-11-19 Open Invention Network, Llc System and method for transparent consistent application-replication of multi-process multi-threaded applications
US8281184B1 (en) 2010-08-06 2012-10-02 Open Invention Network Llc System and method for reliable non-blocking messaging for multi-process application replication
US8301700B1 (en) 2010-08-06 2012-10-30 Open Invention Network Llc System and method for event-driven live migration of multi-process applications
US9043640B1 (en) * 2005-08-26 2015-05-26 Open Invention Network, LLP System and method for event-driven live migration of multi-process applications
US8752049B1 (en) 2008-12-15 2014-06-10 Open Invention Network, Llc Method and computer readable medium for providing checkpointing to windows application groups
US8078910B1 (en) 2008-12-15 2011-12-13 Open Invention Network, Llc Method and system for providing coordinated checkpointing to a group of independent computer applications
US7681075B2 (en) * 2006-05-02 2010-03-16 Open Invention Network Llc Method and system for providing high availability to distributed computer applications
US8621275B1 (en) 2010-08-06 2013-12-31 Open Invention Network, Llc System and method for event-driven live migration of multi-process applications
US20070174484A1 (en) * 2006-01-23 2007-07-26 Stratus Technologies Bermuda Ltd. Apparatus and method for high performance checkpointing and rollback of network operations
US20070234342A1 (en) * 2006-01-25 2007-10-04 Flynn John T Jr System and method for relocating running applications to topologically remotely located computing systems
US7904886B2 (en) * 2006-03-13 2011-03-08 International Business Machines Corporation Method for executing an application in a virtual container forming a virtualized environment session
US7613749B2 (en) 2006-04-12 2009-11-03 International Business Machines Corporation System and method for application fault tolerance and recovery using topologically remotely located computing devices
US8117604B2 (en) * 2006-07-31 2012-02-14 International Business Machines Corporation Architecture cloning for power PC processors
US7594138B2 (en) 2007-01-31 2009-09-22 International Business Machines Corporation System and method of error recovery for backup applications
US9384159B2 (en) 2007-05-24 2016-07-05 International Business Machines Corporation Creating a checkpoint for a software partition in an asynchronous input/output environment
US9473598B2 (en) * 2007-12-18 2016-10-18 International Business Machines Corporation Network connection failover during application service interruption
US7996094B2 (en) * 2008-09-09 2011-08-09 Rockwell Automation Technologies, Inc. Usage of a virtual unit
US8281317B1 (en) 2008-12-15 2012-10-02 Open Invention Network Llc Method and computer readable medium for providing checkpointing to windows application groups
US8880473B1 (en) 2008-12-15 2014-11-04 Open Invention Network, Llc Method and system for providing storage checkpointing to a group of independent computer applications
US9256496B1 (en) * 2008-12-15 2016-02-09 Open Invention Network, Llc System and method for hybrid kernel—and user-space incremental and full checkpointing
US8826070B1 (en) 2008-12-15 2014-09-02 Open Invention Network, Llc Method and system for providing storage checkpointing to a group of independent computer applications
US8745442B1 (en) * 2011-04-28 2014-06-03 Open Invention Network, Llc System and method for hybrid kernel- and user-space checkpointing
US10019327B1 (en) 2008-12-15 2018-07-10 Open Invention Network Llc System and method for hybrid kernel- and user-space incremental and full checkpointing
US8752048B1 (en) 2008-12-15 2014-06-10 Open Invention Network, Llc Method and system for providing checkpointing to windows application groups
US8341631B2 (en) 2009-04-10 2012-12-25 Open Invention Network Llc System and method for application isolation
US9354977B1 (en) * 2008-12-15 2016-05-31 Open Invention Network Llc System and method for hybrid kernel- and user-space incremental and full checkpointing
US11538078B1 (en) 2009-04-10 2022-12-27 International Business Machines Corporation System and method for usage billing of hosted applications
US9058599B1 (en) 2009-04-10 2015-06-16 Open Invention Network, Llc System and method for usage billing of hosted applications
US9003360B1 (en) * 2009-12-10 2015-04-07 The Mathworks, Inc. Configuring attributes using configuration subgraphs
US9195500B1 (en) 2010-02-09 2015-11-24 F5 Networks, Inc. Methods for seamless storage importing and devices thereof
US9135127B1 (en) 2010-08-06 2015-09-15 Open Invention Network, Llc System and method for dynamic transparent consistent application-replication of multi-process multi-threaded applications
US9286298B1 (en) * 2010-10-14 2016-03-15 F5 Networks, Inc. Methods for enhancing management of backup data sets and devices thereof
US11307941B1 (en) 2011-04-28 2022-04-19 Open Invention Network Llc System and method for hybrid kernel- and user-space incremental and full checkpointing
US11625307B1 (en) 2011-04-28 2023-04-11 International Business Machines Corporation System and method for hybrid kernel- and user-space incremental and full checkpointing
KR101249719B1 (ko) * 2011-05-04 2013-04-03 주식회사 인프라웨어테크놀러지 어플리케이션 클론 실행 방법, 컴퓨터로 판독가능한 기록매체, 및 이를 지원하는 클론단말
US9020912B1 (en) 2012-02-20 2015-04-28 F5 Networks, Inc. Methods for accessing data in a compressed file system and devices thereof
US8984336B1 (en) * 2012-02-20 2015-03-17 Symantec Corporation Systems and methods for performing first failure data captures
US8935568B2 (en) 2012-07-27 2015-01-13 Dell Products, Lp System and method of replicating virtual machines for live migration between data centers
US9104645B2 (en) 2012-07-27 2015-08-11 Dell Products, Lp System and method of replicating virtual machines for live migration between data centers
US9201649B2 (en) * 2012-10-26 2015-12-01 Inforsys Limited Systems and methods for estimating an impact of changing a source file in a software
US9251002B2 (en) 2013-01-15 2016-02-02 Stratus Technologies Bermuda Ltd. System and method for writing checkpointing data
US9298790B2 (en) * 2013-01-18 2016-03-29 Microsoft Technology Licensing, Llc Replication of assets across data centers
US10719562B2 (en) 2013-12-13 2020-07-21 BloomReach Inc. Distributed and fast data storage layer for large scale web data services
WO2015102875A1 (en) 2013-12-30 2015-07-09 Stratus Technologies Bermuda Ltd. Checkpointing systems and methods of using data forwarding
WO2015102873A2 (en) 2013-12-30 2015-07-09 Stratus Technologies Bermuda Ltd. Dynamic checkpointing systems and methods
EP3090345B1 (en) 2013-12-30 2017-11-08 Stratus Technologies Bermuda Ltd. Method of delaying checkpoints by inspecting network packets
US10834065B1 (en) 2015-03-31 2020-11-10 F5 Networks, Inc. Methods for SSL protected NTLM re-authentication and devices thereof
US10228962B2 (en) 2015-12-09 2019-03-12 Commvault Systems, Inc. Live synchronization and management of virtual machines across computing and virtualization platforms and using live synchronization to support disaster recovery
US10387266B2 (en) 2015-12-23 2019-08-20 Commvault Systems, Inc. Application-level live synchronization across computing platforms including synchronizing co-resident applications to disparate standby destinations and selectively synchronizing some applications and not others
US10404698B1 (en) 2016-01-15 2019-09-03 F5 Networks, Inc. Methods for adaptive organization of web application access points in webtops and devices thereof
US11308109B2 (en) * 2018-10-12 2022-04-19 International Business Machines Corporation Transfer between different combinations of source and destination nodes
US11188386B2 (en) * 2019-11-01 2021-11-30 Sap Portals Israel Ltd. Lightweight remote process execution
US11327663B2 (en) 2020-06-09 2022-05-10 Commvault Systems, Inc. Ensuring the integrity of data storage volumes used in block-level live synchronization operations in a data storage management system
US20220382478A1 (en) * 2021-06-01 2022-12-01 Samsung Electronics Co., Ltd. Systems, methods, and apparatus for page migration in memory systems

Family Cites Families (12)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US5852724A (en) * 1996-06-18 1998-12-22 Veritas Software Corp. System and method for "N" primary servers to fail over to "1" secondary server
US6014686A (en) * 1996-06-21 2000-01-11 Telcordia Technologies, Inc. Apparatus and methods for highly available directory services in the distributed computing environment
US6360331B2 (en) * 1998-04-17 2002-03-19 Microsoft Corporation Method and system for transparently failing over application configuration information in a server cluster
US6363416B1 (en) * 1998-08-28 2002-03-26 3Com Corporation System and method for automatic election of a representative node within a communications network with built-in redundancy
US6438705B1 (en) * 1999-01-29 2002-08-20 International Business Machines Corporation Method and apparatus for building and managing multi-clustered computer systems
US7028217B2 (en) * 2001-06-04 2006-04-11 Lucent Technologies Inc. System and method of general purpose data replication between mated processors
US7093013B1 (en) * 2002-06-19 2006-08-15 Alcatel High availability system for network elements
US7134044B2 (en) * 2002-08-16 2006-11-07 International Business Machines Corporation Method, system, and program for providing a mirror copy of data
US7058846B1 (en) * 2002-10-17 2006-06-06 Veritas Operating Corporation Cluster failover for storage management services
JP4315016B2 (ja) * 2004-02-24 2009-08-19 株式会社日立製作所 コンピュータシステムの系切替方法
US7743372B2 (en) * 2005-06-28 2010-06-22 Internatinal Business Machines Corporation Dynamic cluster code updating in logical partitions
US7761573B2 (en) * 2005-12-07 2010-07-20 Avaya Inc. Seamless live migration of virtual machines across optical networks

Cited By (2)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
JP2008530672A (ja) * 2005-02-11 2008-08-07 エアバス・フランス 試験飛行の機上処理システムおよび方法
JP2009539160A (ja) * 2006-06-02 2009-11-12 インターナショナル・ビジネス・マシーンズ・コーポレーション クラスタ回復のための機器および方法

Also Published As

Publication number Publication date
AU2003273481A8 (en) 2004-02-25
FR2843209B1 (fr) 2006-01-06
US7725763B2 (en) 2010-05-25
FR2843209A1 (fr) 2004-02-06
AU2003273481A1 (en) 2004-02-25
CA2493407A1 (fr) 2004-02-19
EP1529259A2 (fr) 2005-05-11
EP1529259B1 (fr) 2009-06-24
ATE434790T1 (de) 2009-07-15
US20050251785A1 (en) 2005-11-10
DE60328100D1 (de) 2009-08-06
WO2004015574B1 (fr) 2004-12-16
WO2004015574A2 (fr) 2004-02-19
CA2493407C (fr) 2010-05-11
WO2004015574A3 (fr) 2004-09-02

Similar Documents

Publication Publication Date Title
JP2005535044A (ja) マルチコンピュータ・アーキテクチャにおけるソフトウェアの模写による作動の連続性
Leon et al. Fail-safe PVM: A portable package for distributed programming with transparent recovery
EP1784727B1 (en) Method and system for providing transparent incremental and multiprocess check-pointing to computer applications
Sicard et al. Using components for architecture-based management: the self-repair case
US7366742B1 (en) System and method for distributed discovery and management of frozen images in a storage environment
Kalaiselvi et al. A survey of checkpointing algorithms for parallel and distributed computers
JP2008059583A (ja) クラスタ・システムならびにクラスタ・システム内でレプリカをバックアップする方法およびプログラム製品
JP2002091938A (ja) フェールオーバを処理するシステムおよび方法
Dieter et al. User-Level Checkpointing for LinuxThreads Programs.
Saridakis A System of Patterns for Fault Tolerance.
US11880282B2 (en) Container-based application data protection method and system
Speirs et al. Using passive replicates in delta-4 to provide dependable distributed computing
Huang et al. NT-SwiFT: Software implemented fault tolerance on Windows NT
Moser et al. A fault tolerance framework for CORBA
Cristian Automatic reconfiguration in the presence of failures
Hursey et al. A composable runtime recovery policy framework supporting resilient HPC applications
Maloney et al. A survey and review of the current state of rollback‐recovery for cluster systems
Becker Application-transparent fault tolerance in distributed systems
Badrinath et al. Checkpointing and recovery of shared memory parallel applications in a cluster
Sens The performance of independent checkpointing in distributed systems
US7991849B1 (en) System for managing configuration memory with transaction and redundancy support in an optical network element
Liang et al. NT-SwiFT: software implemented fault tolerance on Windows NT
Sens et al. STAR: A fault-tolerant system for distributed applications
Balasubramanian et al. Brief announcement: MUSIC: multi-site entry consistencyfor geo-distributed services
Thompson et al. DVM: an object-oriented framework for building large distributed Ada systems

Legal Events

Date Code Title Description
A711 Notification of change in applicant

Free format text: JAPANESE INTERMEDIATE CODE: A711

Effective date: 20051226

A521 Request for written amendment filed

Free format text: JAPANESE INTERMEDIATE CODE: A821

Effective date: 20051227