(57)【特許請求の範囲】
【請求項１】
故障状態を監視する故障監視手段と、故障状態に基づく現用機及び予備機のサービス稼働状態として、サービス稼働中の状態と、サービス稼働中へ遷移できる状態と、サービス稼働中への遷移が抑止されている状態と、クラスタ状態に組み込まれていない状態とを含むクラスタ状態を管理する状態管理手段と、クラスタ状態及び故障状態を格納する状態記憶手段と、故障箇所が示された故障ログを格納する故障ログ記憶手段とをそれぞれ含む現用機と予備機とで構成されるクラスタシステムで、該予備機でサービス稼働中であり、該現用機がクラスタ構成に組み込まれていない場合に、現用機のクラスタ状態をサービス稼働中へ遷移させるクラスタシステム復旧方法であって、
前記現用機の故障箇所推定手段が、前記状態記憶手段に格納された現用機のクラスタ状態がクラスタ構成に組み込まれていない状態であり、前記状態記憶手段に格納された予備機のクラスタ状態がサービス稼働中の状態である場合、前記現用機の前記故障ログ記憶手段に格納された故障ログから、現用機の故障箇所を推定する故障箇所推定ステップと、
現用機の故障箇所がネットワーク故障であると推定された場合に、前記現用機の導通確認手段が、前記現用機に接続されたルータまで導通を確認する導通確認ステップと、
ルータまでの導通確認が成功した場合に、前記現用機のクラスタ構成手段が、現用機のクラスタ状態をサービス稼働中へ遷移できる状態へ遷移させるクラスタ構成ステップと、
前記現用機の遷移抑止手段が、前記状態記憶手段に格納された現用機のクラスタ状態がサービス稼働中へ遷移できる状態であり、前記状態記憶手段に格納された予備機のクラスタ状態がサービス稼働中の状態である場合、予備機のクラスタ状態をサービス稼働中への遷移が抑止されている状態へ遷移させる遷移抑止ステップと、
前記現用機の遷移抑止解除手段が、前記状態記憶手段に格納された現用機のクラスタ状態がサービス稼働中の状態であり、前記状態記憶手段に格納された予備機のクラスタ状態がサービス稼働中への遷移が抑止されている状態である場合、予備機のクラスタ状態をサービス稼働中へ遷移できる状態へ遷移させる遷移抑止解除ステップと、
を有するクラスタシステム復旧方法。
【請求項２】
前記予備機が、前記現用機に対して強制的に電源を切断する強制電源断機能を有する場合に、
前記予備機の故障箇所推定手段が、前記予備機の前記故障ログ記憶手段に格納された故障ログから、予備機の強制電源断機能の故障を推定するステップと、
予備機の強制電源断機能の故障であると推定された場合に、前記予備機の導通確認手段が、前記現用機の電源を制御する電源制御手段までの導通を確認するステップと、
を更に有する、請求項１に記載のクラスタシステム復旧方法。
【請求項３】
故障状態を監視する故障監視手段と、故障状態に基づく現用機及び予備機のサービス稼働状態として、サービス稼働中の状態と、サービス稼働中へ遷移できる状態と、サービス稼働中への遷移が抑止されている状態と、クラスタ状態に組み込まれていない状態とを含むクラスタ状態を管理する状態管理手段と、クラスタ状態及び故障状態を格納する状態記憶手段と、故障箇所が示された故障ログを格納する故障ログ記憶手段とをそれぞれ含む現用機と予備機とで構成されるクラスタシステムで、現用機として動作するサーバであって、
前記状態記憶手段に格納された現用機のクラスタ状態がクラスタ構成に組み込まれていない状態であり、前記状態記憶手段に格納された予備機のクラスタ状態がサービス稼働中の状態である場合、前記現用機の前記故障ログ記憶手段に格納された故障ログから、現用機の故障箇所を推定する故障箇所推定手段と、
現用機の故障箇所がネットワーク故障であると推定された場合に、前記現用機に接続されたルータまでの導通を確認する導通確認手段と、
ルータまでの導通確認が成功した場合に、現用機のクラスタ状態をサービス稼働中へ遷移できる状態へ遷移させるクラスタ構成手段と、
前記状態記憶手段に格納された現用機のクラスタ状態がサービス稼働中へ遷移できる状態であり、前記状態記憶手段に格納された予備機のクラスタ状態がサービス稼働中の状態である場合、予備機のクラスタ状態をサービス稼働中への遷移が抑止されている状態へ遷移させる遷移抑止手段と、
前記状態記憶手段に格納された現用機のクラスタ状態がサービス稼働中の状態であり、前記状態記憶手段に格納された予備機のクラスタ状態がサービス稼働中への遷移が抑止されている状態である場合、予備機のクラスタ状態をサービス稼働中へ遷移できる状態へ遷移させる遷移抑止解除手段と、
を有するサーバ。
【請求項４】
故障状態を監視する故障監視手段と、故障状態に基づく現用機及び予備機のサービス稼働状態として、サービス稼働中の状態と、サービス稼働中へ遷移できる状態と、サービス稼働中への遷移が抑止されている状態と、クラスタ状態に組み込まれていない状態とを含むクラスタ状態を管理する状態管理手段と、クラスタ状態及び故障状態を格納する状態記憶手段と、故障箇所が示された故障ログを格納する故障ログ記憶手段とをそれぞれ含む現用機と予備機とで構成されるクラスタシステムで、現用機として動作するサーバを、
前記状態記憶手段に格納された現用機のクラスタ状態がクラスタ構成に組み込まれていない状態であり、前記状態記憶手段に格納された予備機のクラスタ状態がサービス稼働中の状態である場合、前記現用機の前記故障ログ記憶手段に格納された故障ログから、現用機の故障箇所を推定する故障箇所推定手段、
現用機の故障箇所がネットワーク故障であると推定された場合に、前記現用機に接続されたルータまでの導通を確認する導通確認手段、
ルータまでの導通確認が成功した場合に、現用機のクラスタ状態をサービス稼働中へ遷移できる状態へ遷移させるクラスタ構成手段、
前記状態記憶手段に格納された現用機のクラスタ状態がサービス稼働中へ遷移できる状態であり、前記状態記憶手段に格納された予備機のクラスタ状態がサービス稼働中の状態である場合、予備機のクラスタ状態をサービス稼働中への遷移が抑止されている状態へ遷移させる遷移抑止手段、及び
前記状態記憶手段に格納された現用機のクラスタ状態がサービス稼働中の状態であり、前記状態記憶手段に格納された予備機のクラスタ状態がサービス稼働中への遷移が抑止されている状態である場合、予備機のクラスタ状態をサービス稼働中へ遷移できる状態へ遷移させる遷移抑止解除手段、
として機能させるためのプログラム。
【発明の詳細な説明】
【技術分野】
【０００１】
本発明は、クラスタシステム復旧方法、サーバ及びソフトウェアに関する。
【背景技術】
【０００２】
サービスの重要性が増すにつれ、ダウンタイムの少ないシステムの要求が高まっている。このため、複数のサーバで冗長構成されたクラスタシステムを構築し、何らかの故障が発生したときに自動的にサーバを切り替えることにより、サービスの継続を可能とするＨｅａｒｔｂｅａｔおよびＰａｃｅｍａｋｅｒなどの高可用性クラスタソフトが開発されている（非特許文献１参照）。
【０００３】
高可用性クラスタソフトでは、サーバ上のリソース、ネットワーク、共有ディスク等を監視しており、サービス稼働中のサーバで故障を検知すると、予め待機しているサーバに切り替え、サービスを継続させる。
【０００４】
図１に、高可用性クラスタソフトを用いたクラスタシステムの概略図を示す。クラスタシステムは、ネットワークに接続されている複数のサーバ（現用機及び予備機）と、これらの複数のサーバで共有して用いられる共有ディスクとを有する。
【０００５】
現用機及び予備機は、オペレーティングシステム（ＯＳ）と、高可用性クラスタソフトと、サービスを提供するために必要な構成要素であるリソースとをそれぞれ有する。高可用性クラスタソフトは、現用機での故障の発生を検知し、故障が発生したときに自動的に予備機に切り替える。サーバにおけるサービスの稼働状態、リソースの稼働状態及び故障状態は、内蔵ディスクの状態記憶部に格納され、故障箇所等の詳細な情報は、内蔵ディスクのログ記憶部に格納される。
【０００６】
現用機及び予備機は、サービスＬＡＮと呼ばれるネットワークに接続されており、リソースによるサービスをクライアントに提供する。また、現用機及び予備機は、インターコネクトＬＡＮと呼ばれるネットワークに接続されており、サーバにおけるサービスの稼働状態、リソースの稼働状態、故障状態等の情報を交換する。更に、現用機及び予備機は、管理ＬＡＮと呼ばれるネットワークに接続されており、保守端末からのコマンドを受け付けることができる。
【０００７】
また、現用機及び予備機には、故障時に他サーバの電源を強制的に切断する強制電源断機能を設定することができる。強制電源断機能は、管理ＬＡＮを経由して他サーバのハードウェア制御ボードに対して電源を切断する指示を送信することにより、他サーバの電源を切断する。
【０００８】
共有ディスクは、サービスの一貫性を保つために、サービス提供に用いられるデータを保存する記憶装置である。共有ディスクにより、現用機から予備機に切り替わった後も、同じデータを用いてサービスを継続できる。
【０００９】
このように、高可用性クラスタソフトでリソースの故障を監視しているため、リソース故障が発生した場合に、予備機でサービスを継続させることができる。予備機に系切り替えを行った後は、予備機でサービスが継続される（特許文献１参照）。
【先行技術文献】
【特許文献】
【００１０】
【特許文献１】特許第４３５３００５号，「クラスタ構成コンピュータシステムの系切替方法」
【非特許文献】
【００１１】
【非特許文献１】三井  一能  他，「サービスの可用性を向上させるＯＳＳミドルＨｅａｒｔｂｅａｔの開発」，ＮＴＴ技術ジャーナル，２００９年３月，４６〜４９ページ
【発明の概要】
【発明が解決しようとする課題】
【００１２】
上記のように、予備機に系切り替えを行った後は予備機でサービスが提供される。また、現用機に故障が発生して現用機の電源断が行われた場合にも、予備機でサービスが継続される。現用機の電源断は、現用機の電源に故障が発生した場合に加えて、ネットワークや共有ディスク等の故障の理由で予備機から現用機に対して強制的に電源を切断した場合にも生じる。このとき、現用機の故障箇所によっては現用機を単に起動させたとしても、正常に動作するとは限らない。
【００１３】
更に、クラスタシステムにおいて予備機の性能が現用機の性能より劣る場合には、予備機でのサービス提供中は、処理速度が低下する。このような処理速度の低下は、予備機の性能が現用機の性能より劣っている場合だけでなく、２つ以上の現用機と１つの予備機とでクラスタシステムが構成されている場合にも生じる可能性がある。
【００１４】
本発明は、クラスタシステムの現用機の電源断が行われて予備機でサービス稼働中であり、現用機がクラスタ構成に組み込まれていない場合に、現用機でサービスを再開させることを目的とする。
【課題を解決するための手段】
【００１５】
本発明の上記の課題を解決するため、本発明のクラスタシステム復旧方法は、
故障状態を監視する故障監視手段と、故障状態に基づく現用機及び予備機のサービス稼働状態として、サービス稼働中の状態と、サービス稼働中へ遷移できる状態と、サービス稼働中への遷移が抑止されている状態と、クラスタ状態に組み込まれていない状態とを含むクラスタ状態を管理する状態管理手段と、クラスタ状態及び故障状態を格納する状態記憶手段と、故障箇所が示された故障ログを格納する故障ログ記憶手段とをそれぞれ含む現用機と予備機とで構成されるクラスタシステムで、該予備機でサービス稼働中であり、該現用機がクラスタ構成に組み込まれていない場合に、現用機のクラスタ状態をサービス稼働中へ遷移させるクラスタシステム復旧方法であって、
前記現用機の故障箇所推定手段が、前記状態記憶手段に格納された現用機のクラスタ状態がクラスタ構成に組み込まれていない状態であり、前記状態記憶手段に格納された予備機のクラスタ状態がサービス稼働中の状態である場合、前記現用機の前記故障ログ記憶手段に格納された故障ログから、現用機の故障箇所を推定する故障箇所推定ステップと、
現用機の故障箇所がネットワーク故障であると推定された場合に、前記現用機の導通確認手段が、前記現用機に接続されたルータまで導通を確認する導通確認ステップと、
ルータまでの導通確認が成功した場合に、前記現用機のクラスタ構成手段が、現用機のクラスタ状態をサービス稼働中へ遷移できる状態へ遷移させるクラスタ構成ステップと、
前記現用機の遷移抑止手段が、前記状態記憶手段に格納された現用機のクラスタ状態がサービス稼働中へ遷移できる状態であり、前記状態記憶手段に格納された予備機のクラスタ状態がサービス稼働中の状態である場合、予備機のクラスタ状態をサービス稼働中への遷移が抑止されている状態へ遷移させる遷移抑止ステップと、
前記現用機の遷移抑止解除手段が、前記状態記憶手段に格納された現用機のクラスタ状態がサービス稼働中の状態であり、前記状態記憶手段に格納された予備機のクラスタ状態がサービス稼働中への遷移が抑止されている状態である場合、予備機のクラスタ状態をサービス稼働中へ遷移できる状態へ遷移させる遷移抑止解除ステップと、
を有することを特徴とする。
【００１６】
また、本発明のサーバは、
故障状態を監視する故障監視手段と、故障状態に基づく現用機及び予備機のサービス稼働状態として、サービス稼働中の状態と、サービス稼働中へ遷移できる状態と、サービス稼働中への遷移が抑止されている状態と、クラスタ状態に組み込まれていない状態とを含むクラスタ状態を管理する状態管理手段と、クラスタ状態及び故障状態を格納する状態記憶手段と、故障箇所が示された故障ログを格納する故障ログ記憶手段とをそれぞれ含む現用機と予備機とで構成されるクラスタシステムで、現用機として動作するサーバであって、
前記状態記憶手段に格納された現用機のクラスタ状態がクラスタ構成に組み込まれていない状態であり、前記状態記憶手段に格納された予備機のクラスタ状態がサービス稼働中の状態である場合、前記現用機の前記故障ログ記憶手段に格納された故障ログから、現用機の故障箇所を推定する故障箇所推定手段と、
現用機の故障箇所がネットワーク故障であると推定された場合に、前記現用機に接続されたルータまでの導通を確認する導通確認手段と、
ルータまでの導通確認が成功した場合に、現用機のクラスタ状態をサービス稼働中へ遷移できる状態へ遷移させるクラスタ構成手段と、
前記状態記憶手段に格納された現用機のクラスタ状態がサービス稼働中へ遷移できる状態であり、前記状態記憶手段に格納された予備機のクラスタ状態がサービス稼働中の状態である場合、予備機のクラスタ状態をサービス稼働中への遷移が抑止されている状態へ遷移させる遷移抑止手段と、
前記状態記憶手段に格納された現用機のクラスタ状態がサービス稼働中の状態であり、前記状態記憶手段に格納された予備機のクラスタ状態がサービス稼働中への遷移が抑止されている状態である場合、予備機のクラスタ状態をサービス稼働中へ遷移できる状態へ遷移させる遷移抑止解除手段と、
を有することを特徴とする。
【００１７】
また、本発明のプログラムは、
故障状態を監視する故障監視手段と、故障状態に基づく現用機及び予備機のサービス稼働状態として、サービス稼働中の状態と、サービス稼働中へ遷移できる状態と、サービス稼働中への遷移が抑止されている状態と、クラスタ状態に組み込まれていない状態とを含むクラスタ状態を管理する状態管理手段と、クラスタ状態及び故障状態を格納する状態記憶手段と、故障箇所が示された故障ログを格納する故障ログ記憶手段とをそれぞれ含む現用機と予備機とで構成されるクラスタシステムで、現用機として動作するサーバを、
前記状態記憶手段に格納された現用機のクラスタ状態がクラスタ構成に組み込まれていない状態であり、前記状態記憶手段に格納された予備機のクラスタ状態がサービス稼働中の状態である場合、前記現用機の前記故障ログ記憶手段に格納された故障ログから、現用機の故障箇所を推定する故障箇所推定手段、
現用機の故障箇所がネットワーク故障であると推定された場合に、前記現用機に接続されたルータまでの導通を確認する導通確認手段、
ルータまでの導通確認が成功した場合に、現用機のクラスタ状態をサービス稼働中へ遷移できる状態へ遷移させるクラスタ構成手段、
前記状態記憶手段に格納された現用機のクラスタ状態がサービス稼働中へ遷移できる状態であり、前記状態記憶手段に格納された予備機のクラスタ状態がサービス稼働中の状態である場合、予備機のクラスタ状態をサービス稼働中への遷移が抑止されている状態へ遷移させる遷移抑止手段、及び
前記状態記憶手段に格納された現用機のクラスタ状態がサービス稼働中の状態であり、前記状態記憶手段に格納された予備機のクラスタ状態がサービス稼働中への遷移が抑止されている状態である場合、予備機のクラスタ状態をサービス稼働中へ遷移できる状態へ遷移させる遷移抑止解除手段、
として機能させるためのプログラムであることを特徴とする。
【発明の効果】
【００１８】
本発明によれば、予備機でサービス稼働中であり、現用機がクラスタ構成に組み込まれていない場合に、現用機でサービスを再開させることが可能になる。
【図面の簡単な説明】
【００１９】
【図１】高可用性クラスタソフトを用いたクラスタシステムの概略図
【図２】本発明の実施例に係るクラスタシステムの機能ブロック図
【図３】状態管理部で管理されるクラスタ状態の状態遷移図
【図４】状態記憶部に格納される情報を示す図
【図５】本発明の実施例に係るクラスタ状態の遷移を示す図
【図６】本発明を高可用性クラスタソフトに適用したときの機能ブロック図
【図７】本発明を高可用性クラスタソフトに適用したときのクラスタシステムの復旧方法のフローチャート
【発明を実施するための形態】
【００２０】
以下、図面を参照して本発明の実施例について説明する。
【００２１】
本発明の実施例では、現用機と予備機とで構成されるクラスタシステムが用いられる。現用機及び予備機は、それぞれ、故障状態を監視する故障監視手段と、故障状態に基づいて現用機及び予備機のサービス稼働状態を示すクラスタ状態を管理する状態管理手段と、クラスタ状態及び故障状態を格納する状態記憶手段と、故障箇所が示された故障ログを格納する故障ログ記憶手段とを有する。
【００２２】
予備機でサービス稼働中であり、現用機がクラスタ構成に組み込まれていない場合に、現用機の故障箇所推定手段は、現用機の故障ログ記憶手段に格納された故障ログから、現用機の故障箇所を推定する。現用機の故障箇所がネットワーク故障であると推定された場合に、現用機の導通確認手段は、現用機に接続されたルータまで導通を確認する。ルータまでの導通確認が成功した場合に、現用機のクラスタ構成手段は、現用機をクラスタ構成に組み込み、現用機のクラスタ状態をサービス稼働中へ遷移できる状態へ遷移させる。次に、現用機の遷移抑止手段は、予備機のクラスタ状態をサービス稼働中への遷移が抑止されている状態へ遷移させる。この遷移抑止により、現用機のクラスタ状態はサービス稼働中へ遷移する。次に、現用機の遷移抑止解除手段は、予備機のクラスタ状態をサービス稼働中へ遷移できる状態へ遷移させる。このようにして、現用機のクラスタ状態をサービス稼働中へ遷移させることができる。
【００２３】
本発明の実施例に係るクラスタシステム及び方法を詳細に説明する前に、まず、本発明の実施例で用いられる用語について説明する。
【００２４】
「クラスタ構成」とは、複数のサーバを相互に接続し、サービスを提供するユーザ又は他サーバに対して全体で１つのサーバであるかのように振舞わせる技術のことを言う。クラスタ構成により、１つのサーバが故障しても、システム全体でサービスを継続させることができ、また、サービス継続中に故障修理や交換を行うことができる。
【００２５】
「現用機」とは、クラスタシステムにおいて、サービス提供を開始して故障が発生していないときに、サービス稼働中であるサーバのことを言う。
【００２６】
「予備機」とは、クラスタシステムにおいて、現用機の故障発生時にサービスを引き継ぐサーバのことを言う。予備機は、１つの現用機のサービスを引き継いでもよく、複数の現用機のサービスを引き継いでもよい。すなわち、現用機と予備機との関係は、１対１の関係でもよく、Ｎ対１の関係でもよい。
【００２７】
「高可用性クラスタソフト」とは、クラスタ構成を提供するためのソフトウェアのことを言う。高可用性クラスタソフトは、サーバの故障を監視し、故障時に系切り替えを実施する。
【００２８】
「リソース」とは、サービスを提供するために必要な構成要素のことを言う。クラスタ構成におけるリソースとは、高可用性クラスタソフトが起動、停止、監視等の制御対象とするアプリケーションを示す。リソースには、データベース等が含まれる。
【００２９】
「クラスタ状態」とは、サーバにおけるサービスの稼働状態を言う。クラスタ状態には、ＡＣＴと、ＳＢＹ［ｏｎｌｉｎｅ］と、ＳＢＹ［ｓｔａｎｄｂｙ］と、ＳＢＹ［遷移中］と、ＯＵＳと、ＮＯＮＥとが含まれる。
【００３０】
「リソース状態」とは、サーバにおけるリソースの稼働状態を言う。リソース状態には、他サーバでリソース稼働中である状態と、自サーバでリソースが稼働中である状態と、リソースが停止中である状態と、リソースの管理を行わない状態とが含まれる。
【００３１】
「ＡＣＴ」とは、サーバでサービス稼働中の状態を言う。クラスタ構成において、データベース等のサービスを提供するリソースが稼働しているサーバの状態を「ＡＣＴ」と言う。
【００３２】
「ＳＢＹ［ｏｎｌｉｎｅ］」とは、ＡＣＴへ遷移できる状態を言う。クラスタ構成において、故障等による系切り替えが発生した場合、ＡＣＴからリソースを切り替えることが可能なサーバの状態を「ＳＢＹ［ｏｎｌｉｎｅ］」と言う。
【００３３】
「ＳＢＹ［ｓｔａｎｄｂｙ］」とは、ＡＣＴへの遷移が抑止されている状態を言う。クラスタ構成において、故障等による系切り替えが発生した場合でも、ＡＣＴに遷移しないように抑止されているサーバの状態を「ＳＢＹ［ｓｔａｎｄｂｙ］」と言う。
【００３４】
「ＳＢＹ［遷移中］」とは、系切り替え中の状態を言う。クラスタ構成において、故障等による系切り替えが発生したが、リソース停止に失敗して系切り替えが終了していないサーバの状態を「ＳＢＹ［遷移中］」と言う。
【００３５】
「ＯＵＳ」とは、サーバでリソース故障中の状態を言う。クラスタ構成において、リソース故障が発生している状態を「ＯＵＳ」と言う。
【００３６】
「ＮＯＮＥ」とは、サーバがクラスタ構成に組み込まれていない状態を言う。高可用性クラスタソフトが停止している状態のように、クラスタ構成に組み込まれていないサーバの状態を「ＮＯＮＥ」と言う。
【００３７】
＜クラスタシステムの構成＞
図２に、本発明の実施例に係るクラスタシステムの機能ブロック図を示す。クラスタシステムは、相互に接続されている複数のサーバ（現用機１０及び予備機２０）と、これらの複数のサーバで共有して用いられる共有ディスク３０とを有する。現用機１０及び予備機２０は、ルータ４０を介してクライアントにサービスを提供する。なお、現用機１０の性能は、予備機２０の性能より優れていてもよい。また、クラスタシステムは、２つ以上の現用機と１つの予備機とで構成されてもよい。
【００３８】
現用機１０は、リソース１０１と、故障監視部１１１と、リソース起動・停止部１１３と、状態管理部１１５と、状態記憶部１１７と、故障ログ記憶部１１９と、故障箇所推定部１２１と、導通確認部１２３と、クラスタ構成起動部１２５と、系切り替え指示部１２７と、ＡＣＴ化抑止解除部１２９と、状態確認部１３１と、オペレーティングシステム（ＯＳ）１５１と、電源制御部１５３と、電源１５５とを有する。
【００３９】
予備機２０は、リソース２０１と、故障監視部２１１と、リソース起動・停止部２１３と、状態管理部２１５と、状態記憶部２１７と、故障ログ記憶部２１９と、故障箇所推定部２２１と、導通確認部２２３と、オペレーティングシステム（ＯＳ）２５１と、電源制御部２５３と、電源２５５とを有する。
【００４０】
リソース１０１及び２０１は、クライアントにサービスを提供するアプリケーションである。リソース１０１及び２０１は、クラスタ状態がサービス稼働中（ＡＣＴ）のサーバで起動している。
【００４１】
故障監視部１１１及び２１１、リソース起動・停止部１１３及び２１３、状態管理部１１５及び２１５が高可用性クラスタソフトに相当する。
【００４２】
故障監視部１１１及び２１１は、サーバの故障状態を監視する。例えば、リソース、ネットワーク、共有ディスク等を監視する。リソースはサービス稼働中（ＡＣＴ）のサーバのみで監視されるが、ネットワーク、共有ディスク及び内蔵ディスクは、現用機と予備機との双方で監視される。現用機で故障が検知された場合、故障状態は、状態管理部１１５を介して状態記憶部１１７に格納される。例えば、故障状態として、故障回数や、故障発生タイミング（リソース開始失敗、リソース監視時の故障、リソース停止失敗）を示すエラーステータスが状態記憶部１１７に格納される。以下に説明するように、現用機の故障状態は、状態管理部２１５を介して予備機の状態記憶部２１７にも格納される。予備機で故障が検知された場合も同様に、予備機の故障状態は、状態管理部２１５を介して状態記憶部２１７に格納され、更に、状態管理部１１５を介して状態記憶部１１７に格納される。また、現用機及び予備機の故障箇所を示す詳細な故障ログ（エラーメッセージ）は、それぞれ故障ログ記憶部１１９及び２１９に格納される。
【００４３】
リソース起動・停止部１１３及び２１３は、クラスタ状態及び故障状態に基づいてリソースを起動及び停止させる。サーバのクラスタ状態がＡＣＴへ遷移できる状態（ＳＢＹ［ｏｎｌｉｎｅ］）のときに他サーバのリソースが停止した場合、リソース起動・停止部１１３及び２１３は、リソースを起動させる。サーバのクラスタ状態がサービス稼働中（ＡＣＴ）のときに故障が発生した場合、リソース起動・停止部１１３及び２１３は、リソースを停止させる。
【００４４】
状態管理部１１５及び２１５は、故障状態に基づいてクラスタ状態を管理する。現用機１０の状態管理部１１５と予備機２０の状態管理部２１５は、互いに状態記憶部に格納された故障状態（故障回数、エラーステータス）、クラスタ状態等の情報を交換し、各サーバの情報を状態記憶部１１７及び２１７に格納する。
【００４５】
図３に、状態管理部１１５及び２１５で管理されるクラスタ状態の状態遷移図を示す。クラスタ状態には、ＡＣＴと、ＳＢＹ［ｏｎｌｉｎｅ］と、ＳＢＹ［ｓｔａｎｄｂｙ］と、ＳＢＹ［遷移中］と、ＯＵＳと、ＮＯＮＥとが含まれる。ＡＣＴのサーバにリソース故障が発生した場合、クラスタ状態はＡＣＴからＯＵＳになる（Ｔ１）。ＡＣＴのサーバにリソース以外の故障（ネットワーク、共有ディスク等の故障）が発生した場合、クラスタ状態はＡＣＴからＳＢＹ［遷移中］になる（Ｔ２）。ＯＵＳのサーバの故障状態がクリアされた場合、クラスタ状態はＯＵＳからＳＢＹ［ｏｎｌｉｎｅ］になる（Ｔ３）。故障等により系切り替えが発生して、ＳＢＹ［ｏｎｌｉｎｅ］のサーバがサービスを引き継ぐ場合、クラスタ状態はＳＢＹ［ｏｎｌｉｎｅ］からＳＢＹ［遷移中］になり（Ｔ４）、更に、ＡＣＴになる（Ｔ５）。ＡＣＴのサーバから他サーバにサービスを引き継ぐためにＡＣＴのサーバでサービスの稼働が抑止された場合、クラスタ状態はＡＣＴからＳＢＹ［ｓｔａｎｄｙ］になる（Ｔ６）。ＳＢＹ［ｓｔａｎｄｙ］のサーバでＡＣＴへの遷移抑止が解除された場合、クラスタ状態はＳＢＹ［ｓｔａｎｄｙ］からＳＢＹ［ｏｎｌｉｎｅ］になる（Ｔ７）。ＳＢＹ［ｏｎｌｉｎｅ］のサーバでＡＣＴへの遷移が抑止された場合、クラスタ状態はＳＢＹ［ｏｎｌｉｎｅ］からＳＢＹ［ｓｔａｎｄｙ］になる（Ｔ８）。また、電源の停止、オペレーティングシステムの停止又は高可用性クラスタソフト自体の停止により、高可用性クラスタソフトが停止した場合、クラスタ状態はＮＯＮＥになる（Ｔ９〜Ｔ１３）。高可用性クラスタソフトが起動した場合、クラスタ状態はＮＯＮＥからＳＢＹ［ｏｎｌｉｎｅ］になる（Ｔ１４）。また、現用機及び予備機の双方のクラスタ状態がＮＯＮＥのときに高可用性クラスタソフトが起動した場合、クラスタ状態はＮＯＮＥからＡＣＴになる（Ｔ１５）。
【００４６】
状態記憶部１１７及び２１７は、各サーバのクラスタ状態及び故障状態を格納する。具体的には、状態記憶部１１７及び２１７は、現用機１０の情報と予備機２０の情報との双方をそれぞれ格納し、状態管理部１１５と状態管理部２１５との情報交換によって、状態記憶部１１７に格納される情報と状態記憶部２１７に格納される情報とは同一に保持される。
【００４７】
図４に、状態記憶部１１７及び２１７に格納される情報の例を示す。状態記憶部１１７及び２１７は、サーバ毎にクラスタ状態、故障回数、エラーステータス及びリソース状態を格納する。状態記憶部１１７及び２１７は、クラスタ状態として、ＡＣＴと、ＳＢＹ［ｏｎｌｉｎｅ］と、ＳＢＹ［ｓｔａｎｄｂｙ］と、ＳＢＹ［遷移中］と、ＯＵＳと、ＮＯＮＥとのうちいずれかを記憶する。故障回数として、故障が発生した回数（０〜Ｎの値）を記憶する。故障発生タイミングを示すエラーステータスとして、エラー無しの状態と、リソース開始に失敗した状態と、リソース監視時に故障を検知した状態と、リソース停止に失敗した状態とのうちいずれかを記憶する。リソース状態として、他サーバでリソース稼働中である状態と、自サーバでリソースが稼働中である状態と、リソースが停止中である状態と、リソースの管理を行わない状態とのうちいずれを記憶する。
【００４８】
また、状態記憶部１１７及び２１７は、他サーバの電源を強制的に切断する機能が設定されているか否かを示す強制電源断設定状態を格納してもよい。強制電源断設定状態は、システム全体として設定されてもよく、サーバ毎に設定されてもよい。なお、現用機１０及び予備機２０は、ネットワークや共有ディスク及び内蔵ディスク等に故障が発生した場合等に、他サーバの電源制御部２５３又は１５３に対して強制的に電源を切断する指示を送信する強制電源断機能部を有してもよい。
【００４９】
故障ログ記憶部１１９及び２１９は、それぞれ現用機１０及び予備機２０の故障ログ（エラーメッセージ）を格納する。故障ログには、故障箇所を示す詳細な情報が含まれる。
【００５０】
故障箇所推定部１２１は、故障ログ記憶部１１９に格納された故障ログから、現用機１０の故障箇所を推定する。例えば、故障ログを検索して故障箇所が共有ディスクであるか、ネットワークであるか、リソースであるかを推定する。
【００５１】
導通確認部１２３は、故障箇所推定部１２１で故障箇所がネットワーク故障であると推定された場合に、ルータ４０までの導通を確認する。導通確認には、ＰＩＮＧが用いられてもよい。導通確認が成功した場合には、ネットワークの瞬断による一時的な故障と考えられる。
【００５２】
故障箇所推定部２２１は、故障ログ記憶部２１９に格納された故障ログから、予備機２０の故障箇所を推定する。例えば、故障ログを検索して強制電源断機能の故障であるかを推定する。
【００５３】
導通確認部２２３は、故障箇所推定部２２１で故障箇所が強制電源断機能の故障であると推定された場合に、電源制御部１５３までの導通を確認する。導通確認には、ＰＩＮＧが用いられてもよい。導通確認が成功した場合には、ネットワークの瞬断による一時的な故障と考えられる。
【００５４】
クラスタ構成起動部１２５は、現用機１０をクラスタ構成に組み込み、状態記憶部１１７に格納された現用機のクラスタ状態をサービス稼働中へ遷移できる状態へ遷移させる。具体的には、クラスタ構成起動部１２５は、現用機１０の高可用性クラスタソフト（故障監視部１１１及び２１１、リソース起動・停止部１１３及び２１３、状態管理部１１５及び２１５）を起動させる。例えば、クラスタ構成起動部１２５が状態管理部１１５を起動させ、状態管理部１１５が故障管理部１１１及びリソース起動・停止部１１３を起動させてもよい。この起動により、状態管理部２１５を介して、状態記憶部２１７に格納された現用機１０のクラスタ状態も遷移し、現用機１０のクラスタ状態は、ＳＢＹ［ｏｎｌｉｎｅ］になる。
【００５５】
系切り替え指示部１２７は、状態管理部１１５を介して、予備機２０から現用機１０への系切り替えを指示する。具体的には、状態記憶部１１７に格納された予備機２０のクラスタ状態をサービス稼働中への遷移が抑止されている状態へ遷移させる。この遷移抑止により、現用機１０のクラスタ状態はサービス稼働中へ遷移する。この結果、状態管理部２１５を介して、状態記憶部２１７に格納された予備機２０及び現用機１０のクラスタ状態も遷移し、予備機２０のクラスタ状態はＳＢＹ［ｓｔａｎｄｂｙ］になり、現用機１０のクラスタ状態はＡＣＴになる。そして、予備機２０のリソース２０１が停止し、現用機１０のリソース１０１が起動する。
【００５６】
ＡＣＴ化抑止解除部１２９は、状態管理部１１５を介して、状態記憶部１１７に格納された予備機２０のクラスタ状態をサービス稼働中へ遷移できる状態へ遷移させる。この遷移抑止の解除により、状態管理部２１５を介して、状態記憶部２１７に格納された予備機２０のクラスタ状態も遷移し、予備機２０のクラスタ状態は、ＳＢＹ［ｏｎｌｉｎｅ］になる。
【００５７】
状態確認部１３１は、状態管理部１１５を介して、状態記憶部１１７に格納された情報を確認する。例えば、現用機１０及び予備機２０の双方のクラスタ状態、故障回数、エラーステータス及びリソース状態を確認する。
【００５８】
オペレーティングシステム１５１は、サーバ上で高可用性クラスタソフトやアプリケーション等を動作させるための基本ソフトウェアである。
【００５９】
電源制御部１５３は、他サーバから強制的に電源を切断する指示を受信し、サーバに電力を供給する電源１５５をオン及びオフにする。
【００６０】
図５に、本発明の実施例に係るクラスタ状態の遷移を示す。本発明の実施例では、予備機でサービス稼働中であり、現用機がクラスタ構成に組み込まれていない状態を前提とする。この状態から、現用機への復旧処理を実施し、現用機でサービスを再開させる。
【００６１】
具体的には、図５に示すように、サービスを開始して故障が発生していない場合、現用機のクラスタ状態は、ＡＣＴであり、予備機のクラスタ状態は、ＳＢＹ［ｏｎｌｉｎｅ］である（Ｓ１）。故障が発生して現用機のＯＳ又は電源が停止した場合、状態管理部２１５は、現用機のクラスタ状態をＮＯＮＥにする（Ｓ２）。現用機のクラスタ状態がＮＯＮＥになると、現用機から予備機への系切り替えが実行され、予備機のリソース起動・停止部２１３はリソースを起動させる。予備機のリソースの起動が成功した場合、状態管理部２１５は、予備機のクラスタ状態をＡＣＴにする（Ｓ３）。現用機のＯＳ又は電源を起動しても、現用機がクラスタ構成に組み込まれるまで、現用機のクラスタ状態はＮＯＮＥのままである（Ｓ４）。
【００６２】
この状態から現用機でサービスを再開させるために、状態確認部１３１は、現用機のクラスタ状態がＮＯＮＥであり、予備機のクラスタ状態がＡＣＴであると確認してもよい。現用機をクラスタ構成に組み込んでもよいか確認するために、故障箇所推定部１２１は、故障ログを検索して、故障箇所が共有ディスクであるか、ネットワークであるか、リソースであるかを推定する。導通確認部１２３は、故障箇所推定部１２１で故障箇所がネットワーク故障であると推定された場合に、ルータ４０までの導通を確認する。また、強制電源断機能が設定されている場合には、現用機の故障箇所推定部１２１は、予備機の故障箇所推定部２２１に対して、強制電源断機能の故障を診断させる。故障箇所推定部２２１は、故障ログを検索して強制電源断機能の故障であるかを推定する。導通確認部２２３は、故障箇所推定部２２１で故障箇所が強制電源断機能の故障であると推定された場合に、電源制御部１５３までの導通を確認する。
【００６３】
このような故障箇所の推定及び導通確認により、ネットワークの瞬断による一時的な故障又はリソース故障と判断された場合、現用機をクラスタ構成に組み込むことができる。クラスタ起動部１２５は、現用機の高可用性クラスタソフトを起動させ、現用機のクラスタ状態をＳＢＹ［ｏｎｌｉｎｅ］へ遷移させる（Ｓ５）。処理の正常終了を確認するため、状態確認部１３１は、現用機のクラスタ状態がＳＢＹ［ｏｎｌｉｎｅ］であると確認してもよい。次に、系切り替え指示部１２７は、予備機から現用機への系切り替えを指示する。具体的には、予備機のクラスタ状態をＳＢＹ［ｓｔａｎｄｂｙ］へ遷移させることで、現用機のクラスタ状態をＡＣＴへ遷移させる（Ｓ６）。処理の正常終了を確認するため、状態確認部１３１は、現用機のクラスタ状態がＡＣＴであり、予備機のクラスタ状態がＳＢＹ［ｓｔａｎｄｂｙ］であると確認してもよい。その後、ＡＣＴ化抑止解除部１２９は、予備機のクラスタ状態をＳＢＹ［ｏｎｌｉｎｅ］へ遷移させる（Ｓ７）。処理の正常終了を確認するため、状態確認部１３１は、現用機のクラスタ状態がＡＣＴであり、予備機のクラスタ状態がＳＢＹ［ｏｎｌｉｎｅ］であると確認してもよい。このようにして、現用機及び予備機のクラスタ状態を、サービスを開始して故障が発生していない状態に戻すことができる。
【００６４】
＜高可用性クラスタソフトへの適用＞
図６に本発明を高可用性クラスタソフトに適用したときの機能ブロック図を示す。
【００６５】
高可用性クラスタソフトには、サーバの故障状態を監視する故障監視機能と、クラスタ状態及び故障状態に基づいてリソースを起動及び停止させるリソース起動・停止機能と、故障状態に基づいてクラスタ状態を管理する状態管理機能とが含まれる。故障ログは、内蔵ディスクの故障ログ記憶部に格納され、サーバ毎のクラスタ状態、故障回数、エラーステータス及びリソース状態は、内蔵ディスクの状態記憶部に格納される。
【００６６】
このような高可用性クラスタソフトシステムの現用機に、上記の故障箇所推定部１２１と、導通確認部１２３と、クラスタ構成起動部１２５と、系切り替え指示部１２７と、ＡＣＴ化抑止解除部１２９と、状態確認部１３１とを設け、予備機に、上記の故障箇所推定部２２１と、導通確認部２２３とを設けることで、以下に説明するように現用機及び予備機のクラスタ状態を、サービスを開始して故障が発生していない状態に戻すことができる。
【００６７】
図７に、本発明を高可用性クラスタソフトに適用したときのクラスタシステムの復旧方法のフローチャートを示す。
【００６８】
この復旧方法は、現用機に故障が発生して現用機がクラスタ構成に組み込まれておらず、予備機でサービス稼働中である状態から始まる。この場合、現用機及び予備機は以下の状態である。
【００６９】
（現用機の状態）
クラスタ状態：ＮＯＮＥ
故障回数：０
エラーステータス：０
リソース状態：０
（予備機の状態）
クラスタ状態：ＡＣＴ
故障回数：０
エラーステータス：０
リソース状態：１
復旧方法の実行に先立ち、状態確認部１３１は、状態確認コマンドを実行して、現用機の状態記憶部に格納されたクラスタ状態を読み取り、現用機のクラスタ状態がＮＯＮＥであり、予備機のクラスタ状態がＡＣＴであることを確認してもよい。ここで、高可用性クラスタソフトでは予備機と現用機との間で状態記憶部の情報交換が行われているため、状態確認コマンドにより現用機及び予備機の双方の状態を読み取ることができる。
【００７０】
この状態において、故障箇所推定部１２１は、現用機の故障ログ記憶部に格納された故障ログを検索して（Ｓ１０１）、共有ディスクの故障であるかを推定する（Ｓ１０３）。例えば、共有ディスク故障に対応するキーワードを用いて、故障ログ記憶部内のエラーメッセージを検索する。
【００７１】
故障ログ記憶部内にエラーメッセージが見つかり、共有ディスクの故障であると推定された場合（Ｓ１０３：ＹＥＳ）、現用機をクラスタ構成に組み込んでも再び故障が発生する可能性が高いため、エラーが出力される（Ｓ１０５）。例えば、エラーは、管理ＬＡＮに接続された保守端末に表示される。
【００７２】
共有ディスクの故障でないと推定された場合（Ｓ１０３：ＮＯ）、故障箇所推定部１２１は、現用機の故障ログ記憶部に格納された故障ログを検索して（Ｓ１０７）、ネットワークの故障であるかを推定する（Ｓ１０９）。例えば、ネットワーク故障に対応するキーワードを用いて、故障ログ記憶部内のエラーメッセージを検索する。
【００７３】
故障ログ記憶部内にエラーメッセージが見つかり、ネットワークの故障であると推定された場合（Ｓ１０９：ＹＥＳ）、故障推定精度を向上させるため、導通確認部１２３は、ルータのＩＰアドレス宛にＰＩＮＧを実行し（Ｓ１１１）、ＰＩＮＧが成功するか確認する（Ｓ１１３）。
【００７４】
ＰＩＮＧが失敗した場合（Ｓ１１３：ＮＯ）、現用機をクラスタ構成に組み込んでも再び故障が発生する可能性が高いため、エラーが出力される（Ｓ１１５）。
【００７５】
ＰＩＮＧが成功した場合（Ｓ１１３：ＹＥＳ）、ネットワークの瞬断による一時的な故障と考えられるため、現用機をクラスタ構成に組み込むことができる。
【００７６】
更に、故障箇所推定部１２１は、故障ログ記憶部に格納された故障ログを検索して、リソースの故障であるかを推定してもよい（Ｓ１１７）。例えば、リソース故障に対応するキーワードを用いて、現用機の故障ログ記憶部内のエラーメッセージを検索する。このようにして、複数のリソースが存在する場合に、どのリソースが故障したのかを特定することができる。特定されたリソースがデータベース等のアプリケーションの場合には、現用機をクラスタ構成に組み込むことができる。このように、故障箇所推定部１２１は、ハードウェア故障から優先的に故障箇所を診断し、最後にソフトウェア故障を診断する。故障箇所推定部１２１は、現用機側の故障箇所を診断した後に、故障箇所推定部２２１に対して予備機側の故障箇所の診断を指示してもよい。
【００７７】
強制電源断機能が設定されている場合、故障箇所推定部２２１は、予備機の故障ログ記憶部に格納された故障ログを検索して（Ｓ１１９）、強制電源断機能の故障であるかを推定する（Ｓ１２１）。例えば、強制電源断故障に対応するキーワードを用いて、故障ログ記憶部内のエラーメッセージを検索する。
【００７８】
故障ログ記憶部内にエラーメッセージが見つかり、強制電源断機能の故障であると推定された場合（Ｓ１２１：ＹＥＳ）、故障推定精度を向上させるため、導通確認部２２３は、現用機のハードウェア制御ボードのＩＰアドレス宛にＰＩＮＧを実行し（Ｓ１２３）、ＰＩＮＧが成功するか否かを確認する（Ｓ１２５）。
【００７９】
ＰＩＮＧが失敗した場合（Ｓ１２５：ＮＯ）、エラーが出力される（Ｓ１２７）。この場合、予備機の強制電源断機能の故障、現用機のハードウェア制御ボードの故障、或いは管理ＬＡＮのネットワーク故障であると推定されるが、サービスの提供には影響が小さいため、現用機をクラスタ構成に組み込むことができる。
【００８０】
ＰＩＮＧが成功した場合（Ｓ１２５：ＹＥＳ）、ネットワークの瞬断による一時的な故障と考えられるため、現用機をクラスタ構成に組み込むことができる。
【００８１】
上記のように、ネットワークの瞬断による一時的な故障の場合又はリソース故障の場合には、現用機をクラスタ構成に組み込むことができる。
【００８２】
クラスタ構成起動部１２５は、現用機の高可用性クラスタソフトを起動させ、現用機をクラスタ構成に組み込む（Ｓ１２９）。より具体的には、クラスタ構成起動部１２５は、現用機の状態記憶部に格納された現用機のクラスタ状態をＳＢＹ［ｏｎｌｉｎｅ］へ遷移させる。現用機の高可用性クラスタソフトは、クラスタ状態の遷移を予備機の高可用性クラスタソフトに通知し、予備機の高可用性クラスタソフトは、この通知を受け、予備機の状態記憶部に格納された現用機のクラスタ状態をＳＢＹ［ｏｎｌｉｎｅ］にする。
【００８３】
次に、状態確認部１３１は、状態確認コマンドを実行して、現用機の状態記憶部に格納された現用機のクラスタ状態を読み取り（Ｓ１３１）、現用機のクラスタ状態がＳＢＹ［ｏｎｌｉｎｅ］であるか確認する（Ｓ１３３）。このときの現用機及び予備機の状態は以下の状態である。
【００８４】
（現用機の状態）
クラスタ状態：ＳＢＹ［ｏｎｌｉｎｅ］
故障回数：０
エラーステータス：０
リソース状態：０
（予備機の状態）
クラスタ状態：ＡＣＴ
故障回数：０
エラーステータス：０
リソース状態：１
状態遷移が失敗し、現用機が上記の状態になっていない場合（Ｓ１３３：ＮＯ）、エラーが出力される（Ｓ１３５）。
【００８５】
状態遷移が成功し、現用機が上記の状態になっている場合（Ｓ１３３：ＹＥＳ）、系切り替え指示部１２７は、状態遷移コマンド（系切り替えコマンド）を実行して、現用機の状態記憶部に格納された予備機のクラスタ状態をＳＢＹ［ｓｔａｎｄｂｙ］へ遷移させることで、現用機のクラスタ状態をＡＣＴへ遷移させる（Ｓ１３７）。現用機の高可用性クラスタソフトは、クラスタ状態の遷移を予備機の高可用性クラスタソフトに通知し、予備機の高可用性クラスタソフトは、この通知を受け、予備機の状態記憶部に格納された予備機のクラスタ状態をＳＢＹ［ｓｔａｎｄｂｙ］にし、現用機のクラスタ状態をＡＣＴにする。
【００８６】
次に、状態確認部１３１は、状態確認コマンドを実行して、現用機の状態記憶部に格納された現用機及び予備機のクラスタ状態を読み取り（Ｓ１３９）、現用機のクラスタ状態がＡＣＴであり、予備機のクラスタ状態がＳＢＹ［ｓｔａｎｄｂｙ］であるか確認する（Ｓ１４１）。このときの現用機及び予備機の状態は以下の状態である。なお、現用機のクラスタ状態がＡＣＴの場合には、現用機のリソース状態は１であり、予備機のリソース状態は０である。
【００８７】
（現用機の状態）
クラスタ状態：ＡＣＴ
故障回数：０
エラーステータス：０
リソース状態：１
（予備機の状態）
クラスタ状態：ＳＢＹ［ｓｔａｎｄｂｙ］
故障回数：０
エラーステータス：０
リソース状態：０
系切り替えが失敗し、現用機及び予備機が上記の状態になっていない場合（Ｓ１４１：ＮＯ）、エラーが出力される（Ｓ１４３）。
【００８８】
系切り替えが成功し、現用機及び予備機が上記の状態になっている場合（Ｓ１４１：ＹＥＳ）、ＡＣＴ化抑止解除部１２９は、状態遷移コマンド（系切り替えコマンド）を実行して、現用機の状態記憶部に格納された予備機のクラスタ状態をＳＢＹ［ｏｎｌｉｎｅ］へ遷移させる（Ｓ１４５）。現用機の高可用性クラスタソフトは、クラスタ状態の遷移を予備機の高可用性クラスタソフトに通知し、予備機の高可用性クラスタソフトは、この通知を受け、予備機の状態記憶部に格納された予備機のクラスタ状態をＳＢＹ［ｏｎｌｉｎｅ］にする。
【００８９】
次に、状態確認部１３１は、状態確認コマンドを実行して、現用機の状態記憶部に格納された予備機のクラスタ状態を読み取り（Ｓ１４７）、予備機のクラスタ状態がＳＢＹ［ｏｎｌｉｎｅ］であるか確認する（Ｓ１４９）。このときの現用機及び予備機の状態は以下の状態である。
【００９０】
（現用機の状態）
クラスタ状態：ＡＣＴ
故障回数：０
エラーステータス：０
リソース状態：１
（予備機の状態）
クラスタ状態：ＳＢＹ［ｏｎｌｉｎｅ］
故障回数：０
エラーステータス：０
リソース状態：０
状態遷移が失敗し、予備機が上記の状態になっていない場合（Ｓ１４９：ＮＯ）、エラーが出力される（Ｓ１５１）。
【００９１】
状態遷移が成功し、予備機が上記の状態になっている場合（Ｓ１４９：ＹＥＳ）、処理が終了する。
【００９２】
なお、上記の処理フローは、管理ＬＡＮに接続された保守端末から現用機の各機能部を実行させることにより、実施されてもよい。
【００９３】
上記のフローチャートでは、システム全体として強制電源断機能が設定されている場合を想定しているが、強制電源断機能が設定されていない場合、上記のステップＳ１１９〜Ｓ１２７は実行されなくてもよい。なお、強制電源断機能は、システム全体として設定されているのではなく、サーバ毎に設定されていることも考えられる。どのサーバが強制電源断機能を有しているかは、例えば、状態記憶部に格納される。従って、ステップＳ１１７において、故障箇所推定部１２１は、現用機側の故障箇所を診断した後に、強制電源断機能を有するサーバの故障箇所推定部２２１に対して予備機側の故障箇所の診断を指示してもよい。
【００９４】
＜実施例の効果＞
上記のように、本発明の実施例によれば、現用機に故障が発生して現用機がクラスタ構成に組み込まれておらず、予備機でサービス稼働中である場合に、現用機でサービスを再開させることが可能になる。
【００９５】
また、故障箇所の推定後に導通確認を行うことにより、故障推定精度を向上させることができる。更に、ネットワークの瞬断による一時的な故障が原因で発生したリソース故障を自動的に回復することができる。
【００９６】
また、予備機の性能が現用機の性能より劣る場合、又は、２つ以上の現用機と１つの予備機とでクラスタシステムが構成されている場合に、予備機でのサービス提供による処理速度の低下を回避することができる。
【００９７】
説明の便宜上、本発明の実施例に係るシステムは機能的なブロック図を用いて説明しているが、本発明のシステムは、ハードウェア、ソフトウェア又はそれらの組み合わせで実現されてもよい。例えば、サーバ（現用機及び予備機）の各機能部がソフトウェアで実現され、オペレーションシステム上にインストールされてもよい。また、各機能部が必要に応じて組み合わせて使用されてもよい。
【００９８】
以上、本発明の実施例について説明したが、本発明は、上記の実施例に限定されることなく、特許請求の範囲内において、種々の変更・応用が可能である。
【符号の説明】
【００９９】
１０  サーバ（現用機）
２０  サーバ（予備機）
３０  共有ディスク
４０  ルータ
１０１  リソース
１１１  故障監視部
１１３  リソース起動・停止部
１１５  状態管理部
１１７  状態記憶部
１１９  故障ログ記憶部
１２１  故障箇所推定部
１２３  導通確認部
１２５  クラスタ構成起動部
１２７  系切り替え指示部
１２９  ＡＣＴ化抑止解除部
１３１  状態確認部
１５１  オペレーティングシステム
１５３  電源制御部
１５５  電源
２０１  リソース
２１１  故障監視部
２１３  リソース起動・停止部
２１５  状態管理部
２１７  状態記憶部
２１９  故障ログ記憶部
２２１  故障箇所推定部
２２３  導通確認部
２５１  オペレーティングシステム
２５３  電源制御部
２５５  電源
【図１】
0005277229.tif 000002
【図２】
0005277229.tif 000003
【図３】
0005277229.tif 000004
【図４】
0005277229.tif 000005
【図５】
0005277229.tif 000006
【図６】
0005277229.tif 000007
【図７】
0005277229.tif 000008