(57)【要約】【課題】サーバのハードウェア構成を若干変更することにより、障害発生時にはサーバ間の優先度に応じた迅速な障害復旧を可能にするコストの安い情報処理装置の障害復旧システムを提供すること。【解決手段】サーバ１００，１１０，１２０は、ホットスワップ可能なローカルディスクを２個ずつ実装している。また、代替サーバを用意する。サーバ１００，１１０，１２０のいずれかにサーバ障害が発生した場合には、障害発生サーバの同期データ（バックアップデータ）が入っているローカルディスクを、ホットスワップにて取り外し、代替サーバに実装して起動する。【選択図】図１
2010198467.tif 000002
【特許請求の範囲】
【請求項１】
互いに通信可能にネットワーク接続された複数のサーバ装置で構成され、前記複数のサーバ装置のいずれかに生じる障害を復旧する情報処理装置の障害復旧システムにおいて、
前記複数のサーバ装置間の処理の優先度を決定する手段と、
前記複数のサーバ装置の各々において、該サーバ装置間での同期を要する自サーバ装置用の同期データを確保し、同期データとして保存する手段と、
前記複数のサーバ装置のいずれか１つで実行されるアプリケーションプログラムにおいて前記同期データの書き込み要求が生じた時に、前記アプリケーションプログラムを実行するサーバ装置側から、他のサーバ装置の１つに前記データの保存を依頼して前記データを保存させる手段と、
前記複数のサーバ装置の各々が、該複数のサーバ装置の１つに障害が生じたことを検出した際には、前記複数のサーバ装置の各々は、互いに通信することにより、前記障害が検出されたサーバ装置と前記同期データの保存を依頼されたサーバ装置との間の、前記優先度の高低に応じた障害復旧を行う障害復旧手段と、
を備えたことを特徴とする情報処理装置の障害復旧システム。
【請求項２】
前記障害復旧手段は、前記障害が検出されたサーバ装置の前記優先度が前記データの保存を依頼されたサーバ装置の前記優先度よりも低い場合には、前記同期データの保存を依頼されたサーバ装置の動作を前記アプリケーションプログラムを代行する代替サーバ装置が接続されるまで待機させる手段と、前記代替サーバ装置が接続された時には、前記複数のサーバ装置の各々に、前記接続を確認する手段と、前記障害発生後に保守コマンドの投入が無い場合には、前記同期データの保存を依頼されたサーバ装置が保存していた前記同期データを前記代替サーバ装置用の同期データとする手段と、前記同期データに基づいて前記代替サーバ装置を起動する手段と、を備えたことを特徴とする請求項１記載の情報処理装置の障害復旧システム。
【請求項３】
前記障害復旧手段は、前記アプリケーションプログラムを実行するサーバ装置の前記優先度が前記データの保存を依頼されたサーバ装置の前記優先度よりも高い場合には、前記同期データの保存を依頼されたサーバ装置が保存していた前記同期データに基づいて前記同期データの保存を依頼されたサーバ装置を起動する手段と、前記代替サーバ装置が接続されたことを確認する手段と、前記障害発生後に保守コマンドの投入が無い場合には、前記同期データの保存を依頼されたサーバ装置自体が使用していた同期データを前記代替サーバ装置の同期データとして使用させる手段と、前記同期データの保存を依頼されたサーバ装置が保存していた同期データを前記代替サーバ装置に保存させる手段と、を備えたことを特徴とする請求項１記載の情報処理装置の障害復旧システム。
【請求項４】
前記障害復旧手段は、前記障害発生後にホットスワップ実行用の保守コマンドの投入が有った場合に、抜去されるディスクに対応した前記同期データを確保する処理を中止する手段と、前記障害を発生させたサーバ装置が備える前記同期データ記憶用のディスクが、前記代替サーバ装置に実装されたことを確認する手段と、前記確認後に、前記複数のサーバ装置の各々における前記同期データを確保する処理を開始する手段と、を備えたことを特徴とする請求項２または請求項３記載の情報処理装置の障害復旧システム。
【請求項５】
互いに通信可能にネットワーク接続された複数のサーバ装置のいずれか１つとして障害復旧処理を実行する情報処理装置であって、
前記複数のサーバ間の処理の優先度を記憶する手段と、
前記複数のサーバ間での同期を要する自サーバ用の同期データを確保し、同期データとして保存する手段と、
実行中のアプリケーションプログラムにおいて前記同期データの書き込み要求が生じた時に、他のサーバ装置の１つに前記データの保存を依頼して前記データを保存させる手段と、
前記複数のサーバ装置の１つに障害が生じたことを検出した時、若しくは他のサーバ装置から、前記複数のサーバ装置の１つに障害が生じたことが通知された時には、他のサーバ装置と互いに通信することにより、前記障害が検出されたサーバ装置と前記障害が検出されたサーバ装置の同期データを保存するサーバ装置との間の、前記優先度の高低に応じた障害復旧を行う障害復旧手段と、
を備えたことを特徴とする情報処理装置。
【請求項６】
互いに通信可能にネットワーク接続された複数のサーバ装置のいずれか１つにおいて障害復旧処理を制御するコンピュータプログラムであって、
前記複数のサーバ間の処理の優先度を記憶するステップと、
前記複数のサーバ間での同期を要する自サーバ用の同期データを確保し、同期データとして保存するステップと、
実行中のアプリケーションプログラムにおいて前記同期データの書き込み要求が生じた時に、他のサーバ装置の１つに前記データの保存を依頼して前記データを保存させるステップと、
前記複数のサーバ装置の１つに障害が生じたことを検出した時、若しくは他のサーバ装置から、前記複数のサーバ装置の１つに障害が生じたことが通知された時には、他のサーバ装置と互いに通信することにより、前記障害が検出されたサーバ装置と前記障害が検出されたサーバ装置の同期データを保存するサーバ装置との間の、前記優先度の高低に応じた障害復旧を行う障害復旧ステップと、
を備えたことを特徴とするコンピュータプログラム。
【請求項７】
互いに通信可能にネットワーク接続された複数のサーバ装置で構成され、前記複数のサーバ装置のいずれかに生じる障害を復旧する情報処理装置の障害復旧方法であって、
前記複数のサーバ装置間の処理の優先度を決定するステップと、
前記複数のサーバ装置の各々において、該サーバ装置間での同期を要する自サーバ装置用の同期データを確保し、同期データとして保存するステップと、
前記複数のサーバ装置のいずれか１つで実行されるアプリケーションプログラムにおいて前記同期データの書き込み要求が生じた時に、前記アプリケーションプログラムを実行するサーバ装置側から、他のサーバ装置の１つに前記データの保存を依頼して前記データを保存させるステップと、
前記複数のサーバ装置の各々が、該複数のサーバ装置の１つに障害が生じたことを検出した際には、前記複数のサーバ装置の各々は、互いに通信することにより、前記障害が検出されたサーバ装置と前記同期データの保存を依頼されたサーバ装置との間の、前記優先度の高低に応じた障害復旧を行う障害復旧ステップと、
を備えたことを特徴とする情報処理装置の障害復旧方法。
【発明の詳細な説明】
【技術分野】
【０００１】
本発明は、情報処理装置の障害復旧システム及び情報処理装置の障害復旧方法に係り、特に、データをバックアップすることにより、複数のサーバを有するシステムの一部に障害が生じた際に、該障害からの復旧を短時間で行うことができる情報処理装置の障害復旧システム及び情報処理装置の障害復旧方法に関する。
【背景技術】
【０００２】
従来の情報処理装置の障害復旧システムでは、障害発生に備えてデータをバックアップする方式が採用されている。例えば、共有ディスクなどの特殊な外部記憶装置を使用せずにデータをバックアップすることを可能にするため、異なる機能を持ったサーバ間でのデータ同期を実現する方式として、特許文献２に記載の方式が有り、先行技術として参照できる。これらの技術では、障害によるサーバ交換時には、交換した空のサーバへ他のサーバが保持しているバックアップデータを書き込んでいる。
なお、本発明の関連技術として、例えば、特許文献１及び前述の特許文献２には、ディスク障害時に代替ディスクをホットスワップ（実行時交換）する方式によるディスクアレイ障害時の復旧手段を開示している。
【先行技術文献】
【特許文献】
【０００３】
【特許文献１】特開２００１−１０９６４２号公報
【特許文献２】特開２００８−２７６２８１号公報
【発明の概要】
【発明が解決しようとする課題】
【０００４】
しかしながら、上記背景技術で述べた従来の情報処理装置の障害復旧システムにあっては、前述のとおり、障害によるサーバ交換時には、交換した空のサーバへ他のサーバが保持しているバックアップデータを書き込むため、復旧までの時間が長くなるという問題点があった。
障害発生に備えて、複数のサーバ間でデータを同期してバックアップを行う方式としては、例えば前述の特願２００７−１１５５１７号に示す方式があり、この方式では、共有ディスクなどの高価な設備が不要となり、各ローカルディスクに必要な容量はサーバ数に依存せずにサーバ２台分に収まり、またクラスタシステムなどに限らず別個の機能を持ったサーバ群にも適用可能であるといった特長を有する反面、障害によるサーバ交換時には、やはり、前述のとおり、交換した空のサーバへ他のサーバが保持しているバックアップデータを書き込むため、復旧に要する時間が長くなるという問題点があった。
【０００５】
そこで、この問題点に対処する技術として、例えば前述の特願２００８−１１５２６０号に示す技術では、各サーバにプライオリティを設定し、よりプライオリティの高いサーバに障害が発生した場合に、該サーバの同期データを保持するサーバを検出し、該同期データを保持するサーバ側にて再起動させるように改良した方式を示している。しかしながら、この方式では、障害が発生した高プライオリティサーバと、正常に動作している低プライオリティサーバとを引き換えにする方式となっているが、高プライオリティサーバは早期に復旧しても、相対的にプライオリティの低かったサーバにあっては、空のサーバを用意してバックアップデータから復旧させる必要があり、復旧に要する時間はやはり長くなるという問題点があった。
【０００６】
なお、このような問題点は、復旧対象の装置は異なるものであっても、前述の特許文献１及び特許文献２に対しても同様に指摘できるものである。
本発明は、上記従来の問題点に鑑みてなされたものであって、サーバのハードウェア構成を若干変更することにより、障害発生時にはサーバ間のプライオリティに応じた迅速な障害復旧を可能にするコストの安い情報処理装置の障害復旧システムを提供することを目的としている。
本発明の他の目的は、サーバのハードウェア構成を若干変更することにより、障害発生時にはサーバ間のプライオリティに応じた迅速な障害復旧を可能にするコストの安い情報処理装置の障害復旧方法を提供することにある。
【課題を解決するための手段】
【０００７】
上記課題を解決するために、本発明に係る情報処理装置の障害復旧システムは、互いに通信可能にネットワーク接続された複数のサーバ装置で構成され、前記複数のサーバ装置のいずれかに生じる障害を復旧する情報処理装置の障害復旧システムにおいて、前記複数のサーバ装置間の処理の優先度を決定する手段と、前記複数のサーバ装置の各々において、該サーバ装置間での同期を要する自サーバ装置用の同期データを確保し、同期データとして保存する手段と、前記複数のサーバ装置のいずれか１つで実行されるアプリケーションプログラムにおいて前記同期データの書き込み要求が生じた時に、前記アプリケーションプログラムを実行するサーバ装置側から、他のサーバ装置の１つに前記データの保存を依頼して前記データを保存させる手段と、前記複数のサーバ装置の各々が、該複数のサーバ装置の１つに障害が生じたことを検出した際には、前記複数のサーバ装置の各々は、互いに通信することにより、前記障害が検出されたサーバ装置と前記同期データの保存を依頼されたサーバ装置との間の、前記優先度の高低に応じた障害復旧を行う障害復旧手段と、を備えたことを特徴とする情報処理装置の障害復旧システムを提供するものである。
【０００８】
また、本発明に係る情報処理装置は、互いに通信可能にネットワーク接続された複数のサーバ装置のいずれか１つとして障害復旧処理を実行する情報処理装置であって、前記複数のサーバ間の処理の優先度を記憶する手段と、前記複数のサーバ間での同期を要する自サーバ用の同期データを確保し、同期データとして保存する手段と、実行中のアプリケーションプログラムにおいて前記同期データの書き込み要求が生じた時に、他のサーバ装置の１つに前記データの保存を依頼して前記データを保存させる手段と、前記複数のサーバ装置の１つに障害が生じたことを検出した時、若しくは他のサーバ装置から、前記複数のサーバ装置の１つに障害が生じたことが通知された時には、他のサーバ装置と互いに通信することにより、前記障害が検出されたサーバ装置と前記障害が検出されたサーバ装置の同期データを保存するサーバ装置との間の、前記優先度の高低に応じた障害復旧を行う障害復旧手段と、を備えたことを特徴とする情報処理装置を提供するものである。
【０００９】
また、本発明に係るコンピュータプログラムは、互いに通信可能にネットワーク接続された複数のサーバ装置のいずれか１つにおいて障害復旧処理を制御するコンピュータプログラムであって、前記複数のサーバ間の処理の優先度を記憶するステップと、前記複数のサーバ間での同期を要する自サーバ用の同期データを確保し、同期データとして保存するステップと、実行中のアプリケーションプログラムにおいて前記同期データの書き込み要求が生じた時に、他のサーバ装置の１つに前記データの保存を依頼して前記データを保存させるステップと、前記複数のサーバ装置の１つに障害が生じたことを検出した時、若しくは他のサーバ装置から、前記複数のサーバ装置の１つに障害が生じたことが通知された時には、他のサーバ装置と互いに通信することにより、前記障害が検出されたサーバ装置と前記障害が検出されたサーバ装置の同期データを保存するサーバ装置との間の、前記優先度の高低に応じた障害復旧を行う障害復旧ステップと、を備えたことを特徴とするコンピュータプログラムを提供するものである。
【００１０】
さらに、本発明に情報処理装置の障害復旧方法は、互いに通信可能にネットワーク接続された複数のサーバ装置で構成され、前記複数のサーバ装置のいずれかに生じる障害を復旧する情報処理装置の障害復旧方法であって、前記複数のサーバ装置間の処理の優先度を決定するステップと、前記複数のサーバ装置の各々において、該サーバ装置間での同期を要する自サーバ装置用の同期データを確保し、同期データとして保存するステップと、前記複数のサーバ装置のいずれか１つで実行されるアプリケーションプログラムにおいて前記同期データの書き込み要求が生じた時に、前記アプリケーションプログラムを実行するサーバ装置側から、他のサーバ装置の１つに前記データの保存を依頼して前記データを保存させるステップと、前記複数のサーバ装置の各々が、該複数のサーバ装置の１つに障害が生じたことを検出した際には、前記複数のサーバ装置の各々は、互いに通信することにより、前記障害が検出されたサーバ装置と前記同期データの保存を依頼されたサーバ装置との間の、前記優先度の高低に応じた障害復旧を行う障害復旧ステップと、を有することを特徴とする情報処理装置の障害復旧方法を提供するものである。
【発明の効果】
【００１１】
以上説明したように、本発明の情報処理装置の障害復旧システムによれば、サーバ間で同期データをセーブする仕組みを構成し、障害発生時には、サーバ間で互いに通信することにより、サーバ間の優先度に応じた迅速な障害復旧を可能にすると共に、コストの安い情報処理装置の障害復旧システムを提供することができる効果がある。
【図面の簡単な説明】
【００１２】
【図１】本発明の実施形態に係る情報処理装置の障害復旧システムの全体構成を示す構成図である。
【図２】本障害復旧システムのファイルレプリケーションの処理手順を、サーバ１００の動作を例として示したフローチャート図である。
【図３】サーバ１００に障害が発生した場合を例として、障害発生時の処理手順を示したフローチャート図である。
【図４】サーバ１００に障害が発生した場合を例として、障害発生時の処理手順のイメージを示した説明図である。
【発明を実施するための形態】
【００１３】
本発明に係る情報処理装置の障害復旧システム及び情報処理装置の障害復旧方法は、共有ディスクなどの外部記憶装置を具備しない複数のサーバ間において、それぞれのローカルディスク上に他のサーバのバックアップデータを保持することにより耐障害性を高め、また障害などによるサーバ交換時に、バックアップデータを保持しているローカルディスクを直接代替サーバに実装することにより短時間で復旧する。即ち、ホットスワップ可能なディスクを使用し、バックアップデータを持つディスクを代替サーバに直接実装することにより、必要に応じて迅速な復旧を可能にしている。
【００１４】
本発明に係る情報処理装置の障害復旧システムの構成は、各サーバがホットスワップ可能なローカルディスクを２個ずつ実装しているものとする。サーバ障害が発生した場合には、障害発生サーバの同期データ（バックアップデータ）が入っているローカルディスクを、ホットスワップにて取り外し、代替サーバに実装して起動する。よって、この方式ならば、障害発生時点で空のローカルディスクにバックアップデータをコピーする従来方式よりも短時間で障害からの復旧が可能となる。
【００１５】
以下、本発明の情報処理装置の障害復旧システムの実施形態について、図面を参照して詳細に説明する。
図１は、本発明の実施形態に係る情報処理装置の障害復旧システムの全体構成を示す構成図である。
同図において、本実施形態の情報処理装置の障害復旧システムは、ネットワーク２００を介して接続され、データ同期システムを構成する３つのサーバ、即ち、互いに通信可能なサーバ１００、サーバ１１０、及びサーバ１２０を備える。これら３つのサーバはそれぞれ異なる機能を持つサーバである。また、この他に、障害発生時に起動される代替サーバを少なくとも１つは備えるものとする。
【００１６】
サーバ１００は、ホットスワップ可能なローカルディスク１０３，１０４を具備し、また、レプリケーション機能部１０１と、アプリケーションプログラム１０２とを具備している。さらに、サーバ１００は、保持データ管理テーブル１０５と、各サーバのプライオリティ（優先度）を管理するためのプライオリティ管理テーブル１０６と、ディスク１０３と、ディスク１０４と、を具備する。
ディスク１０３とディスク１０４とは、いずれか一方がサーバ１００自体が使用するデータ（同期データ用を含む）を保持するオリジナルデータ用ディスク（領域）となり、他方が、他サーバとの同期データ（オリジナルデータを含む）を保持する同期データ用ディスク（領域）となる。
【００１７】
以下、本システムの動作について説明する場合には、例えば、サーバ１１０をサーバ１００の代替サーバとする場合には、サーバ１００のオリジナルデータ用であるディスク１０３のことを１００用データ領域１０３と称し、サーバ１００の同期データ用ディスク１０４のことを１１０用データ領域１０４と称することがある。
【００１８】
但し、１００用データ領域１０３と、１１０用データ領域１０４とは、ＯＳ（オペレーティング・システム）を含むマルチブート環境を構成することが可能であり、この場合には、サーバ１００は、１００用データ領域１０３と、１１０用データ領域１０４との、どちらのデータからでも起動することが可能である。１００用データ領域１０３と、１１０用データ領域１０４とのどちらがオリジナルデータ用ディスクとなり得るか、及び同期データ用ディスクがどのサーバのデータを保持しているかは保持データ管理テーブル１０５，１１５，１２５によって管理される。
【００１９】
サーバ１１０及びサーバ１２０に関してもサーバ１００と同様の構成となっており、図１に示す構成例ではローカルディスク１０４，１１４，１２４は、同期データ用ディスクであり、それぞれサーバ１１０，１２０，１３０との同期データを保持している。
保持データ管理テーブル１０５，１１５，１２５は、対応するサーバのローカルディスクがどのサーバのデータを保持するかを管理するためのテーブルである。また、プライオリティ管理テーブル１０６，１１６，１２６は、対応するサーバに設定されたプライオリティを記憶する。各サーバのプライオリティは、例えばシステム管理者などにより事前に設定することができるが、同位のプライオリティは付与しないものとする。このプライオリティは、例えば、重要な機能を担っているために可能な限り稼動状態を維持したいサーバほど高く設定することができる。保持データ管理テーブル１０５，１１５，１２５及びプライオリティ管理テーブル１０６，１１６，１２６は、それぞれレプリケーション機能部１０１，１１１，１２１の内部に保持される構成であってもよい。
【００２０】
各サーバのレプリケーション機能部は大きく分けて３つの機能を有する。以下、この各レプリケーション機能部の機能について説明する。
まず、各レプリケーション機能部の１つ目の機能は、自サーバのデータをオリジナルデータ用ディスクに書き込む際に、他サーバのレプリケーション機能部を介して、他サーバの同期データ用ディスクに、オリジナルデータ用ディスクに書き込んだデータと同じ内容を書き込む機能である。例えば、サーバ１００のレプリケーション機能部１０１は、アプリケーションプログラム１０２からデータの書き込み要求を受け取ると、まず、データをオリジナルデータ用ディスクの１００用データ領域１０３に書き込み、この書き込みが正常に完了すると、サーバ１２０上で動作しているレプリケーション機能部１２１を介して、サーバ１２０が備える同期データ用ディスクの１００用データ領域１２４にも、オリジナルデータ用ディスクの１００用データ領域１０３に書き込んだデータと同じデータを書き込む。
【００２１】
次に、各レプリケーション機能部の２つ目の機能は、ネットワーク２００の構成が変化した際、例えば、ネットワーク２００に接続されているいずれかのサーバが削除されるか、若しくは、何らかの他のサーバがネットワーク２００に追加接続された際に、該変化後のネットワーク構成に合わせて、各サーバの同期データ用ディスクに保持する同期データの割り当てを変更する機能である。即ち、各レプリケーション機能部は、障害によってサーバが交換される際に、対応する保持データ管理テーブルを参照し、障害が発生したサーバのデータを同期データ用ディスクに保持しているサーバを特定する。次に、レプリケーション機能部は、当該データを、この特定したサーバから、交換されたサーバのオリジナルデータ用ディスクにコピーする。また、レプリケーション機能部は、ネットワーク２００に新規サーバが追加された場合は、この追加されたサーバも含めて各サーバにおいて他サーバの同期データが保持できるように、各サーバで保持する同期データの組み合わせを見直し、同期データの新たな組み合わせを割り当てる。
【００２２】
最後に、各レプリケーション機能部の３つ目の機能は、よりプライオリティの高いサーバに障害が発生した際に、この障害発生サーバのデータを同期データ用ディスクに保持させるべきサーバを、障害サーバの代替サーバとして動作させる機能である。即ち、各レプリケーション機能部は、ネットワーク２００を構成するいずれかのサーバに障害が発生すると、保持データ管理テーブルを参照して、該障害発生サーバの同期データを保持させるべきサーバを特定する。この際、各レプリケーション機能部は、プライオリティ管理テーブルを参照して、その特定したサーバのプライオリティと障害が発生したサーバのプライオリティとを比較する。各レプリケーション機能部は、障害が発生したサーバのプライオリティが、前記特定したサーバのプライオリティよりも高い場合は、障害発生サーバの同期データを記憶させるべきサーバを同期データ用ディスク側で再起動する。同期データ用ディスク側で再起動したサーバは、その後、障害サーバの代替サーバとして機能することになり、同期データ用ディスクとオリジナルデータ用ディスクとが入れ替わる。
【００２３】
例えば、サーバ１００を、同期データ用ディスクの１１０用データ領域１０４に記憶するサーバ１１０用のデータで再起動したときは、サーバ１００はサーバ１１０の代替サーバとなり、サーバ１１０のデータを記憶する同期データ用ディスク１０４がオリジナルデータ用ディスクに変わり、オリジナルデータ用ディスク１０３が同期データ用ディスクに変わる。
また、各サーバのローカルディスクはホットスワップ可能であり、同期データ用ディスクであればサーバの動作を中断することなく抜去可能である。また、抜去した同期データ用ディスクを別のサーバに実装することで、その同期データにて起動することが可能である。例えば、サーバ１００で障害が発生した場合、サーバ１００の同期データを記憶しているサーバ１２０の同期データ用ディスク１２４を抜去し、代替サーバにオリジナルデータ用ディスクとして実装することにより、該代替サーバを、サーバ１００のデータで起動することができるようになる。
【００２４】
なお、ホットスワップ実行時には、いずれかのサーバに対してホットスワップ用の保守コマンドを投入する必要がある。保守コマンドを投入されたサーバのレプリケーション機能部は、各サーバのレプリケーション機能部に対して対象ディスクへのデータ同期の停止を指示し、また各サーバの保持データ管理テーブルの更新を指示する。同様に、ホットスワップによるディスク実装時には、いずれかのサーバに対してホットスワップ用の保守コマンドを投入する必要がある。保守コマンドを投入されたサーバのレプリケーション機能部は、各サーバのレプリケーション機能部に対して対象ディスクへのデータ同期の開始を指示し、また、各サーバの保持データ管理テーブルの更新を指示する。
本実施形態に係る情報処理装置の障害復旧システムは、以上の構成を備えることにより、安価なデータ同期機能及び迅速な障害復旧を実現している。
【００２５】
図２は、本障害復旧システムのファイルレプリケーションの処理手順を、サーバ１００の動作を例として示したフローチャート図である。
以下、図１を参照しながら、図２に示すフローチャート図を使用して、ファイルレプリケーションの処理手順を説明する。
まず、通常運用時のデータ同期手順について説明する。
（ステップＳ１）
ステップＳ１では、サーバ１００上のアプリケーションプログラム１０２から、レプリケーション機能部１０１へ、データの書き込み要求を行う。
（ステップＳ２）
ステップＳ２では、上記データの書き込み要求を受信したレプリケーション機能部１０１が、オリジナルデータ用ディスクである１００用データ領域１０３へ、データ（即ち、サーバ間の同期が必要なバックアップデータ）の書き込みを実行する。
（ステップＳ３）
ステップＳ３では、レプリケーション機能部１０１は、上記データの書き込みが正常に終了したか否かを検証し、上記データの書き込みに成功した場合はステップＳ４に進み、上記データの書き込みに失敗した場合はステップＳ２に戻って上記データの書き込みを再試行する。
【００２６】
（ステップＳ４）
ステップＳ４では、上記データの書き込みに成功した場合として、レプリケーション機能部１０１は、保持データ管理テーブル１０６を参照し、サーバ１００の同期データを記憶するための同期データ用ディスクを検索する。
（ステップＳ５）
ステップＳ５では、レプリケーション機能部１０１は、サーバ１２０のレプリケーション機能部１２１に対して書き込み要求を行う。
（ステップＳ６）
ステップＳ６では、上記データの書き込み要求を受信したレプリケーション機能部１２１が、サーバ１００のオリジナルデータ用ディスク１０３へ書き込まれたのと同じデータを同期データ用ディスクである１００用データ領域１２４に書き込む。
（ステップＳ７）
ステップＳ７では、レプリケーション機能部１２１は、データの書き込みが正常に終了したか否かを検証し、上記データの書き込みに成功した場合は処理を終了し、上記データの書き込みに失敗した場合はステップＳ６に戻ってデータの書き込みを再試行する。
【００２７】
次に、障害発生などによりサーバを交換した際のデータコピー手順について説明する。図３は、サーバ１００に障害が発生した場合を例として、障害発生時の処理手順を示したフローチャート図である。また、図４は、サーバ１００に障害が発生した場合を例として、障害発生時の処理手順のイメージを示した説明図である。
障害発生サーバ（ここではサーバ１００）と、該サーバの同期データを持つサーバ（ここではサーバ１２０）との間のプライオリティの関係、及び保守コマンドによって可能となるホットスワップによる復旧機能を利用するかどうかにより、障害発生時の動作は大きく３つに分かれる。
まず、サーバ１２０のプライオリティよりもサーバ１００のプライオリティの方が低い場合の障害発生時の処理手順を図３に示すフローチャートを使用して説明する。
（ステップＳ２１）
ステップＳ２１では、各サーバのレプリケーション機能部が、障害発生サーバを検出する。
【００２８】
（ステップＳ２２）
次に、ステップＳ２２では、各サーバ間で通信することにより、障害サーバ１００の同期データを同期データ用ディスクに記憶するサーバ（ここではサーバ１２０）を検出する。  （ステップＳ２３）
次に、ステップＳ２３では、サーバ１００とサーバ１２０の間で通信することにより、サーバ１００とサーバ１２０のプライオリティを比較し、サーバ１２０のプライオリティよりもサーバ１００のプライオリティが低いのでステップＳ２４に進む。
（ステップＳ２４）
ステップＳ２４では、サーバ１２０は、サーバ１００の代替サーバが接続されるまで待機する。
（ステップＳ２５）
ステップＳ２５では、サーバ１２０は、サーバ１３０の接続を確認する。
【００２９】
（ステップＳ２６）
ステップＳ２６では、サーバ１３０が接続されると、各サーバのレプリケーション機能部は、内部に保持している保持データ管理テーブルを参照することにより、サーバ１３０がサーバ１００の代替サーバだと判断し、ここまでにホットスワップ実行用の保守コマンドの投入が無かった場合、若しくは保守コマンドにてデータ同期を指示された場合は、ステップＳ２７に進み、さもなくて、保守コマンドがホットスワップ実行用に投入された場合は、ステップＳ３８（後述）に移る。
（ステップＳ２７）
ステップＳ２７では、レプリケーション機能部１２１は、同期データ用ディスク１２４に記憶しているサーバ１００の同期データ（バックアップデータ）を、サーバ１３０のオリジナルデータ用ディスク１３３にコピーする。
【００３０】
（ステップＳ２８）
次に、ステップＳ２８では、レプリケーション機能部１１１が、オリジナルデータ用ディスク１１３に保持している自サーバのデータを、サーバ１３０の同期データ用ディスク１３４にコピーする。
（ステップＳ２９）
次に、ステップＳ２９では、データのコピーが完了したため、代替サーバであるレプリケーション機能部１３１が、通常のレプリケーション処理を開始する。
以上に示す処理の流れで、サーバ１３０はサーバ１００のデータを引き継いで動作する。
【００３１】
次に、サーバ１２０のプライオリティよりもサーバ１００のプライオリティの方が高い場合の障害発生時の処理手順を図３に示すフローチャートを使用して説明する。
この場合も、図３に示すステップＳ２２までは前述した動作と同様である。即ち、サーバ１００に障害が発生すると、各サーバのレプリケーション機能部が障害発生サーバを検出し（ステップＳ２１）、障害サーバ１００の同期データを同期データ用ディスクに記憶するサーバを検出する（ステップＳ２２）。
（ステップＳ２３）
ステップＳ２３では、サーバ１００とサーバ１２０のプライオリティを比較し、ここでは、サーバ１００の方がプライオリティが高いので、ステップＳ３０に進む。
（ステップＳ３０）
ステップＳ３０では、サーバ１２０を再起動するが、この時、同期データ用ディスクである１００用データ領域１２４に記憶されているサーバ１００の同期データを使用して起動する。
【００３２】
（ステップＳ３１）
ステップＳ３１では、これ以降、サーバ１２０はサーバ１００の担っていた機能を代行する。サーバ１２０の内部ではサーバ１００のデータを記憶するディスク１２４がオリジナルデータ用ディスク、サーバ１２０のデータを記憶するディスクの１２０用データ領域１２３が同期データ用ディスクとして扱われる。
（ステップＳ３２）
次に、ステップＳ３２では、各サーバのレプリケーション機能部は、障害発生サーバの代替としてサーバ１３０が接続されたことを確認する。
（ステップＳ３３）
ステップＳ３３では、サーバ１３０が接続されると、各サーバのレプリケーション機能部は、内部に保持している保持データ管理テーブルを参照することにより、サーバ１３０がサーバ１００の代替サーバだと判断し、ここまでにホットスワップ実行用の保守コマンドの投入が無かった場合、若しくは保守コマンドにてデータ同期を指示された場合は、ステップＳ３４に進み、さもなくて、保守コマンドがホットスワップ実行用に投入された場合は、ステップＳ３８（後述）に移る。
【００３３】
（ステップＳ３４）
ステップＳ３４では、レプリケーション機能部１２１は、同期データ用ディスク１２３に記憶しているサーバ１００の同期データ（バックアップデータ）を、サーバ１３０のオリジナルデータ用ディスク１３３にコピーする。この時、サーバ１２０は、前述のとおり、サーバ１００用データ１２４で起動されたサーバ１００の代替サーバとして起動しているため、ここではサーバ１２０用データ１２３が同期データ用ディスクとなる。
（ステップＳ３５）
次に、ステップＳ３５では、レプリケーション機能部１１１が、オリジナルデータ用ディスク１１３に保持している自サーバのデータを、サーバ１２０の同期データ用ディスクである１２０用データ領域１２３にコピーする。
【００３４】
（ステップＳ３６）
次に、ステップＳ３６では、レプリケーション機能部１２１が、ローカルディスク１２４に保持しているデータを、サーバ１２０の１２０用データ領域１３４にコピーする。
（ステップＳ３７）
次に、ステップＳ３７では、データのコピーが完了したため、代替サーバであるレプリケーション機能部１３１が、通常のレプリケーション処理を開始する。
以上に示す処理の流れで、サーバ１３０はサーバ１００のデータを引き継いで動作する。
最後に、上記処理手順に共通する処理手順として、ホットスワップ実行用の保守コマンドの投入が有った場合の処理手順、即ち、ホットスワップ機能を利用して障害復旧する場合の処理手順（ステップＳ３７以下の動作）について説明する。この処理手順は、障害発生を検出してから代替サーバの接続を検出するまでの期間に、ホットスワップによるディスク交換を指示する保守コマンドの投入が有った場合に実行される。
【００３５】
（ステップＳ３８）
ステップＳ３８では、各サーバのレプリケーション機能部は、抜去対象となるディスクに対するデータ同期を休止し、保持データ管理テーブルを更新する。サーバ１００のプライオリティがサーバ１２０のプライオリティよりも低い場合は、サーバ１２０の同期データ用ディスク１２４が抜去対象となり、サーバ１００のプライオリティがサーバ１２０のプライオリティよりも高い場合は、サーバ１２０はサーバ１００のデータで起動しているので、同期データ用ディスク１２３が抜去対象となる。
（ステップＳ３９）
ステップＳ３９では、保守者が抜去対象ディスク（１２０用データ領域１２３または１００用データ領域１２４）を手動で抜去し、代替サーバ１３０にオリジナルデータ用ディスク１３３として実装後、該ディスク１３３のデータでサーバ１３０が起動する。
（ステップＳ４０）
ステップＳ４０では、サーバ１３０の起動後、保守者が保守コマンドでもってデータ同期を指示することにより、各サーバのレプリケーション機能部は、サーバ１３０も含めてデータ同期を開始する。
【００３６】
なお、図２，３に示すフローチャート図では、サーバ１００全体が障害になったケースを例示しているが、障害が生じた箇所がディスク以外の部分であり、オリジナルデータ用ディスク１０３や同期データ用ディスク１０４には障害が発生していない場合には、該ディスク１０３及び該ディスク１０４を、代替サーバ１３０に直接実装することも可能である。
本実施形態に係る情報処理装置の障害復旧システムは、現用系、待機系から構成されるクラスタシステムに適用されるとは限らず、別個の機能を持ったサーバ群にも適用可能であり、共有ディスクなどの高価な設備を必要とせずに各サーバのデータ同期（バックアップ手段）を実施することができる効果がある。なお、本発明の構成にはホットスワップ可能なローカルディスクが必要となるが、ホットスワップに対応した規格としてＵＳＢや、ｅＳＡＴＡなどが急速に普及しており、通常のハードディスクと比較しても性能的・コスト的な不利は殆ど無いものと考えられる。
【００３７】
また、サーバに障害が発生する直前までファイルを同期させているため、定期バックアップ方式に比べて多くのデータを救済できる効果がある。
また、サーバ数には上限はなく、サーバ数がどれだけ増加しても、各ローカルディスクに必要な容量はサーバ２台分に収まるため、システムのコストを安く抑えることができる効果がある。
また、プライオリティの高いサーバが障害になった際には、該サーバの同期データを保持するサーバを代替機として使用することができる効果がある。
また、同期を行っているサーバ群のうち、複数のサーバが同時に障害になったとしても、システムを復旧させることができる可能性を残す効果がある。例えば、サーバＡが障害になった時には、サーバＡの同期データを持つ他のサーバも同時に障害にならない限りは復旧が可能となる。
【００３８】
さらに、サーバに障害が発生しても、ローカルディスクが無事ならば、該ローカルディスクを容易に流用することが可能となる効果がある。
なお、本発明に係る情報処理装置の障害復旧システムにおける上記処理を、図２，３のフローチャートで示した手順により実行せしめるコンピュータにプログラムは、半導体メモリを始め、ＣＤ−ＲＯＭや磁気テープなどのコンピュータ読み取り可能な記録媒体に格納して配付してもよい。そして、少なくともマイクロコンピュータ、パーソナルコンピュータ、汎用コンピュータを範疇に含むコンピュータが、上記の記録媒体から上記プログラムを読み出して、実行するものとしてもよい。
【産業上の利用可能性】
【００３９】
本発明に係る情報処理装置の障害復旧システムによれば、処理速度よりも耐障害性が重視される計算機（例えばファイルサーバ）などにおいて、安価にミラーリングを実現するといった用途に好適に適用することができる。
【符号の説明】
【００４０】
１００，１１０，１２０  サーバ
１０１，１１１，１２１  レプリケーション機能部
１０２，１１２，１２２  アプリケーションプログラム
１０３，１１３，１２３  ディスク（領域）
１０４，１１４，１２４  ディスク（領域）
１０５，１１５，１２５  保持データ管理テーブル
１０６，１１６，１２６  プライオリティ管理テーブル
【図１】
2010198467.tif 000003
【図２】
2010198467.tif 000004
【図３】
2010198467.tif 000005
【図４】
2010198467.tif 000006