(57)【要約】【課題】業務要件を満たし、かつ、予備のサーバ計算機で提供する第２の業務への影響を抑えて、現用のサーバ計算機の第１の業務を予備のサーバ計算機に切り替える。【解決手段】管理計算機が、第１の業務を第２のサーバ計算機へ切り替える際の切り替えパターンを設定した切替レベル情報を参照して、切り替えパターン毎にレベルと所要時間を設定し、第１の業務を第２のサーバ計算機へ切り替える際に許容された停止時間を参照し、切替レベル情報の切り替え所要時間が第１の業務に設定された停止時間未満で、かつ、切替レベル情報のレベルが最も高い前記切り替えパターンを選択する。【選択図】図２
2011248735.tif 000002
【特許請求の範囲】
【請求項１】
第１の業務を提供する第１のサーバ計算機と、第２の業務を提供する第２のサーバ計算機と、前記第１のサーバ計算機及び第２のサーバ計算機に接続された管理計算機が、前記第１のサーバ計算機で提供される第１の業務を、前記第２のサーバ計算機に引き継がせるサーバ計算機の切り替え方法であって、
前記管理計算機が、前記第１の業務を第２のサーバ計算機へ切り替える際の切り替えパターンを設定した切替レベル情報を参照し、前記切り替えパターン毎にレベルを設定する第１のステップと、
前記管理計算機が、前記切替レベル情報を参照し、前記切り替えパターン毎に前記第１の業務を第２のサーバ計算機へ切り替える際の切り替え所要時間を設定する第２のステップと、
前記管理計算機が、前記第１の業務を第２のサーバ計算機へ切り替える際に許容された停止時間を予め設定した業務要件情報を参照する第３のステップと、
前記管理計算機が、前記切替レベル情報の前記切り替え所要時間が、前記第１の業務に設定された前記業務要件情報の停止時間未満で、かつ、前記切替レベル情報のレベルが最も高い前記切り替えパターンを選択する第４のステップと、
前記管理計算機が、前記選択された切り替えパターンで、前記第２のサーバ計算機の第２の業務を停止させてから、前記第１の業務を前記第２のサーバ計算機で提供させる第５のステップと、
を含むことを特徴とするサーバ計算機の切替方法。
【請求項２】
請求項１に記載のサーバ計算機の切替方法であって、
前記第１のステップは、
前記切替レベル情報の切り替えパターン毎に設定された前記第２のサーバ計算機に対する複数の制御項目を予め設定した切替特徴情報を参照し、前記制御項目毎に前記レベルを算出する数値情報を取得し、前記切り替えパターンに含まれる前記制御項目の数値情報から当該切り替えパターンのレベルを設定し、
前記第２のステップは、
前記切り替えパターン毎の過去の実績を格納したログ情報を参照して前記切り替え所要時間を設定することを特徴とするサーバ計算機の切替方法。
【請求項３】
請求項１に記載のサーバ計算機の切替方法であって、
前記管理計算機が、前記第１のサーバ計算機の障害を検知する第６のステップをさらに含み、
前記第１のサーバ計算機の障害の検知を契機に、前記第３のステップ、第４のステップ及び第５のステップを行うことを特徴とするサーバ計算機の切替方法。
【請求項４】
請求項３に記載のサーバ計算機の切替方法であって、
前記第４のステップは、
前記第１のサーバ計算機の障害要因を特定し、前記障害要因毎に制限すべき切り替えパターンを予め設定した障害制約情報を参照して、前記特定した障害要因に対応する制限すべき切り替えパターンを取得して、前記切替レベル情報の前記切り替え所要時間が、前記第１の業務に設定された前記業務要件情報の停止時間未満で、かつ、前記制限すべき切り替えパターン以外の切り替えパターンのうち、前記切替レベル情報のレベルが最も高い前記切り替えパターンを選択することを特徴とするサーバ計算機の切替方法。
【請求項５】
請求項１に記載のサーバ計算機の切替方法であって、
前記管理計算機が、前記第１のサーバ計算機の障害の予兆を検知する第７のステップをさらに含み、
前記第１のサーバ計算機の障害の予兆の検知したことを契機に、前記第３のステップ、第４のステップ及び第５のステップを行うことを特徴とするサーバ計算機の切替方法。
【請求項６】
第１の業務を提供する第１のサーバ計算機と第２の業務を提供する第２のサーバ計算機にそれぞれ接続されて、前記第１のサーバ計算機で提供される第１の業務を、前記第２のサーバ計算機に引き継がせる障害復旧部を備えた管理計算機であって、
前記障害復旧部は、
前記第１の業務を第２のサーバ計算機へ切り替える際の切り替えパターンと、前記切り替えパターン毎のレベルと、前記切り替えパターン毎に前記第１の業務を第２のサーバ計算機へ切り替える際の切り替え所要時間とを設定する切替レベル情報生成部と、
前記第１の業務を第２のサーバ計算機へ切り替える際に許容された停止時間を予め設定した業務要件情報と、
前記切替レベル情報の前記切り替え所要時間が、前記第１の業務に設定された前記業務要件情報の停止時間未満で、かつ、前記切替レベル情報のレベルが最も高い前記切り替えパターンを選択する切り替えパターン選択部と、
前記選択された切り替えパターンで、前記第２のサーバ計算機の第２の業務を停止させてから、前記第１の業務を前記第２のサーバ計算機で提供させる切り替え実行部と、
を備えたことを特徴とする管理計算機。
【請求項７】
請求項６に記載の管理計算機であって、
前記切替レベル情報生成部は、
前記切替レベル情報の切り替えパターン毎に設定された前記第２のサーバ計算機に対する複数の制御項目を予め設定した切替特徴情報を参照し、前記制御項目毎に前記レベルを算出する数値情報を取得し、前記切り替えパターンに含まれる前記制御項目の数値情報から当該切り替えパターンのレベルを設定し、前記切り替えパターン毎の過去の実績を格納したログ情報を参照して前記切り替え所要時間を設定することを特徴とする管理計算機。
【請求項８】
請求項６に記載の管理計算機であって、
前記第１のサーバ計算機の障害を検知する障害管理部をさらに有し、
前記切り替えパターン選択部は、障害管理部が前記第１のサーバ計算機の障害の検知したことを契機に、前記切り替えパターンを選択することを特徴とする管理計算機。
【請求項９】
請求項８に記載の管理計算機であって、
前記切り替えパターン選択部は、
前記障害管理部が検知した前記第１のサーバ計算機の障害要因を特定し、前記障害要因毎に制限すべき切り替えパターンを予め設定した障害制約情報を参照して、前記特定した障害要因に対応する制限すべき切り替えパターンを取得して、前記切替レベル情報の前記切り替え所要時間が、前記第１の業務に設定された前記業務要件情報の停止時間未満で、かつ、前記制限すべき切り替えパターン以外の切り替えパターンのうち、前記切替レベル情報のレベルが最も高い前記切り替えパターンを選択することを特徴とする管理計算機。
【請求項１０】
請求項８に記載の管理計算機であって、
前記第１のサーバ計算機の障害の予兆を検知する障害管理部をさらに有し、
前記切り替えパターン選択部は、障害管理部が前記第１のサーバ計算機の障害の予兆を検知したことを契機に、前記切り替えパターンを選択することを特徴とする管理計算機。
【請求項１１】
第１の業務を提供する第１のサーバ計算機と、第２の業務を提供する第２のサーバ計算機と、前記第１のサーバ計算機及び第２のサーバ計算機に接続されて、プロセッサとメモリを備えた管理計算機を制御するプログラムであって、
前記第１の業務を第２のサーバ計算機へ切り替える際の切り替えパターンを設定した切替レベル情報を参照し、前記切り替えパターン毎にレベルを設定する第１の手順と、
前記切替レベル情報を参照し、前記切り替えパターン毎に前記第１の業務を第２のサーバ計算機へ切り替える際の切り替え所要時間を設定する第２の手順と、
前記第１の業務を第２のサーバ計算機へ切り替える際に許容された停止時間を予め設定した業務要件情報を参照する第３の手順と、
前記切替レベル情報の前記切り替え所要時間が、前記第１の業務に設定された前記業務要件情報の停止時間未満で、かつ、前記切替レベル情報のレベルが最も高い前記切り替えパターンを選択する第４の手順と、
前記選択された切り替えパターンで、前記第２のサーバ計算機の第２の業務を停止させてから、前記第１の業務を前記第２のサーバ計算機で提供させる第５の手順と、
を前記プロセッサに実行させることを特徴とするプログラム。
【請求項１２】
請求項１１に記載のプログラムであって、
前記第１の手順は、
前記切替レベル情報の切り替えパターン毎に設定された前記第２のサーバ計算機に対する複数の制御項目を予め設定した切替特徴情報を参照し、前記制御項目毎に前記レベルを算出する数値情報を取得し、前記切り替えパターンに含まれる前記制御項目の数値情報から当該切り替えパターンのレベルを設定し、
前記第２の手順は、
前記切り替えパターン毎の過去の実績を格納したログ情報を参照して前記切り替え所要時間を設定することを特徴とプログラム。
【請求項１３】
請求項１１に記載のプログラムであって、
前記第１のサーバ計算機の障害を検知する第６の手順をさらに含み、
前記第１のサーバ計算機の障害の検知を契機に、前記第３の手順、第４の手順及び第５の手順を行うことを特徴とするプログラム。
【請求項１４】
請求項１３に記載のプログラムであって、
前記第４の手順は、
前記第１のサーバ計算機の障害要因を特定し、前記障害要因毎に制限すべき切り替えパターンを予め設定した障害制約情報を参照して、前記特定した障害要因に対応する制限すべき切り替えパターンを取得して、前記切替レベル情報の前記切り替え所要時間が、前記第１の業務に設定された前記業務要件情報の停止時間未満で、かつ、前記制限すべき切り替えパターン以外の切り替えパターンのうち、前記切替レベル情報のレベルが最も高い前記切り替えパターンを選択することを特徴とするプログラム。
【請求項１５】
請求項１１に記載のプログラムであって、
前記第１のサーバ計算機の障害の予兆を検知する第７の手順をさらに含み、
前記第１のサーバ計算機の障害の予兆の検知したことを契機に、前記第３の手順、第４の手順及び第５の手順を行うことを特徴とするプログラム。
【発明の詳細な説明】
【技術分野】
【０００１】
本発明は、フェイルオーバー構成を備える計算機システムに係り、特にサーバの切替パターンを決定する手順を含むサーバ切替の技術に関する。
【背景技術】
【０００２】
サーバの障害発生時の業務復旧方法として、サーバの切替手段が存在する（例えば、特許文献１、特許文献２、特許文献３）。このようなサーバの切替手段を備えたフェイルオーバー構成における、予備サーバの有効活用に関する方法として、予備サーバでの開発、テスト、Ｗｅｂサーバなどへの一時的な割当が知られている。
【先行技術文献】
【特許文献】
【０００３】
【特許文献１】特開２００６−１６３９６３号公報
【特許文献２】特開２００６−１１７８１号公報
【特許文献３】特開２００６−２２７７７０号公報
【発明の概要】
【発明が解決しようとする課題】
【０００４】
しかし、上記従来の方法では、サーバの切替を実施する際に予備系サーバ上で稼動する業務（例えば、ソフトウェアの開発業務等）が一旦停止されてしまう。これは、切替の際に、Ｉ／Ｏ(Input/Output)障害発生の防止、ＷＷＮ(World Wide Name)やＢＩＯＳ(Basic Input/Output System)設定の更新などのため、予備系サーバを一旦停止させる必要があるからである。
【０００５】
上記は、サーバ切替において、予備系または現用系サーバ上の業務に影響を与えることとなる。例えば、迅速な切替のために予備系サーバを強制停止した場合、ハードウェアの故障や、業務データの破損などが発生する場合がある。予備系サーバ上の業務停止を待ってからサーバを切り替えた場合、現用系サーバ上の業務復旧が遅延しＳＬＡ（Service Level Agreement）を満たせない場合が発生する。この問題は、要件の異なる複数の業務で予備系サーバを共有する状況にて特に顕著となる。
【０００６】
そこで、本発明が解決しようとする課題は、業務要件を満たしかつサーバ切替の予備系サーバへの影響を抑えるために、サーバ切替時に予備系サーバを可能な限り安全に停止させるサーバの切替方法を決定すること、また現用系サーバの障害予兆を検出し事前に予備系サーバを停止させることである。
【課題を解決するための手段】
【０００７】
本発明は、第１の業務を提供する第１のサーバ計算機と、第２の業務を提供する第２のサーバ計算機と、前記第１のサーバ計算機及び第２のサーバ計算機に接続された管理計算機が、前記第１のサーバ計算機で提供される第１の業務を、前記第２のサーバ計算機に引き継がせるサーバ計算機の切り替え方法であって、前記管理計算機が、前記第１の業務を第２のサーバ計算機へ切り替える際の切り替えパターンを設定した切替レベル情報を参照し、前記切り替えパターン毎にレベルを設定する第１のステップと、前記管理計算機が、前記切替レベル情報を参照し、前記切り替えパターン毎に前記第１の業務を第２のサーバ計算機へ切り替える際の切り替え所要時間を設定する第２のステップと、前記管理計算機が、前記第１の業務を第２のサーバ計算機へ切り替える際に許容された停止時間を予め設定した業務要件情報を参照する第３のステップと、前記管理計算機が、前記切替レベル情報の前記切り替え所要時間が、前記第１の業務に設定された前記業務要件情報の停止時間未満で、かつ、前記切替レベル情報のレベルが最も高い前記切り替えパターンを選択する第４のステップと、前記管理計算機が、前記選択された切り替えパターンで、前記第２のサーバ計算機の第２の業務を停止させてから、前記第１の業務を前記第２のサーバ計算機で提供させる第５のステップと、を含む。
【０００８】
また、前記管理計算機が、前記第１のサーバ計算機の障害の予兆を検知する第７のステップをさらに含み、前記第１のサーバ計算機の障害の予兆の検知したことを契機に、前記第３のステップ、第４のステップ及び第５のステップを行う。
【発明の効果】
【０００９】
したがって、本発明によれば、サーバ切替時に第２のサーバ計算機（予備サーバ）を可能な限り安全に停止させるサーバの切替パターンを決定することができる。また、第１のサーバ計算機（現用サーバ）の障害予兆を検出し事前に予備サーバを停止させることで、サーバ切替時に予備サーバで稼動する業務への影響を抑えることができる。
【図面の簡単な説明】
【００１０】
【図１】本発明の第１の実施形態を示し、計算機システムの構成を示すブロック図である。
【図２】本発明の第１の実施形態を示し、管理サーバ装置の構成を示すブロック図である。
【図３】本発明の第１の実施形態を示し、サーバ装置の構成を示すブロック図である。
【図４】本発明の第１の実施形態を示し、仮想化システムを備えるサーバ装置の構成を示すブロック図である。
【図５】本発明の第１の実施形態を示し、現用のサーバ装置と予備のサーバ装置及び管理サーバ間の処理を示すシーケンス図である。
【図６】本発明の第１の実施形態を示し、切り替えレベルテーブルの構成を示す説明図である。
【図７】本発明の第１の実施形態を示し、業務要件テーブルの構成を示す説明図である。
【図８】本発明の第１の実施形態を示し、切り替え方法決定部の処理の一例を示すフローチャートである。
【図９】本発明の第１の実施形態を示し、切替情報テーブル群の構成を示すブロック図である。
【図１０】本発明の第１の実施形態を示し、切替方法特徴テーブルの構成を示す説明図である。
【図１１】本発明の第１の実施形態を示し、制御対象レートテーブルの構成を示す説明図である。
【図１２】本発明の第１の実施形態を示し、資源解放方法レートテーブルの構成を示す説明図である。
【図１３】本発明の第１の実施形態を示し、業務再起動レートテーブルの構成を示す説明図である。
【図１４】本発明の第１の実施形態を示し、切替レベルテーブル生成部の処理の一例を示すフローチャートである。
【図１５】本発明の第１の実施形態を示し、切替方法のレベルを決定する処理の一例を示すフローチャートである。
【図１６】本発明の第１の実施形態を示し、切替方法の所要時間を決定する処理の一例を示すフローチャートである。
【図１７】本発明の第１の実施形態を示し、切替レベル情報を設定するＧＵＩの例を示す画面イメージである。
【図１８】本発明の第１の実施形態を示し、業務要件情報を設定するＧＵＩの例を示す画面イメージである。
【図１９】本発明の第１の実施形態を示し、切替実行部の処理の一例を示すフローチャートである。
【図２０】本発明の第２の実施形態を示し、障害制約テーブルの構成を示す図である。
【図２１】本発明の第２の実施形態を示し、切替方法決定部の処理の一例を示すフローチャートである。
【図２２】本発明の第３の実施形態を示し、現用サーバ装置と予備サーバ装置及び管理サーバ間の処理の一例を示すシーケンス図である。
【図２３】本発明の第３の実施形態を示し、障害予兆情報テーブルの構成を示す説明図である。
【図２４】本発明の第３の実施形態を示し、障害予兆情報テーブル生成部の処理の一例を示すフローチャートである。
【図２５】本発明の第３の実施形態を示し、障害予兆情報を設定するＧＵＩの例を示す画面イメージである。
【図２６】本発明の第１の実施形態を示し、業務管理部が保持する情報の例を示す説明図である。
【発明を実施するための形態】
【００１１】
以下、本発明の一実施形態を添付図面に基づいて説明する。
【００１２】
＜第１実施形態＞
図１は、計算機システムの構成を示す。この計算機システムは、管理サーバ装置１００、１つ以上のサーバ装置１１０−Ａ、１１０−Ｂ、ＳＶＰ（Service Processor）１１１、サーバ装置１１０−Ａ、１１０−Ｂ及びＳＶＰ１１１を収めるサーバシャーシ１１２、ストレージ装置１２０、１つ以上のネットワークスイッチ１３０、１つ以上のストレージスイッチ１４０を有する。なお、図１において、サーバ装置１１０−Ａは現用系として機能し、サーバ装置１１０−Ｂは予備系として機能する。また、複数のサーバ装置１１０−Ａ，１１０−Ｂの総称をサーバ装置１１０とする。
【００１３】
管理サーバ装置１００は、プログラム制御により動作するコンピュータであり、管理サーバ装置１００のユーザ（本計算機システムの管理者）が使用する入力装置１５０及び出力装置１５１を接続し、ネットワークスイッチ１３０に接続するＮＩＣ（Network Interface Card）、及びストレージスイッチ１４０に接続するＨＢＡ（Host Bus Adapter）を備える。
【００１４】
管理サーバ装置１００は、ネットワークスイッチ１３０、ストレージスイッチ１４０を介して、各サーバ装置１１０、ＳＶＰ１１１、及びストレージ装置１２０に接続する。管理サーバ装置１００は、障害復旧管理部１０１を動作させ、また障害復旧管理部１０１の動作に必要なテーブル群１０２を有する。テーブル群１０２に含まれる各テーブルは、図６以降のテーブル構成例を用いて後述する。
【００１５】
サーバ装置１１０は、プログラム制御により動作するコンピュータであり、ネットワークスイッチ１３０に接続するＮＩＣ（Network Interface Card）、及びストレージスイッチ１４０に接続するＨＢＡ（Host Bus Adapter）を備える。サーバ装置１１０は、ネットワークスイッチ１３０、ストレージスイッチ１４０を介して、管理サーバ装置１００、他のサーバ装置１１０、ＳＶＰ１１１、及びストレージ装置１２０に接続する。
【００１６】
ストレージ装置１２０は、ＦＣ（Fiber Channel）及びＬＡＮインタフェースを備えてストレージスイッチ１４０、ネットワークスイッチ１３０に接続され、管理サーバ装置１００及び各サーバ装置１１０が使用する１つ以上のディスク１２１を含む記憶装置システムである。
【００１７】
ネットワークスイッチ１３０は、１つ以上のネットワーク機器である。ネットワーク機器は、具体的にはネットワークスイッチやルータ、ロードバランサ、及びファイアウォールなどである。
【００１８】
図２は、管理サーバ装置１００の構成を示すブロック図である。管理サーバ装置１００は、演算処理を行うプロセッサ（ＣＰＵ）２４１と、データやプログラムを格納するメモリ２４２と、データやプログラムを保持するローカルディスク２４３と、ネットワークスイッチ１３０に接続されるＮＩＣ２４５と、ストレージスイッチ１４０に接続されるＨＢＡ２４４を備える。なお、ローカルディスク２４３は、各プログラムを記憶する媒体として機能する。メモリ２４２には、障害復旧管理部１０１、テーブル群１０２、サーバ管理部２００がロードされる。
【００１９】
障害復旧管理部１０１は、切替レベルテーブル生成部２１０、切り替え実行部２１２、切り替え方法決定部２１３、障害予兆情報テーブル生成部２１４を含む。尚、本実施形態では、障害復旧管理部１０１、及びサーバ管理部２００は、プロセッサ２４１により実行されるプログラムとして説明するが、管理サーバ装置１００に搭載するハードウェアやファームウェア、またはそれらの組み合わせにより実装しても良い。また、障害復旧管理部１０１、及びサーバ管理部２００は、管理サーバ装置１００が備えるローカルディスク２４３等の補助記憶装置に格納され、実行時にはメモリ２４２にロードされてから、プロセッサ２４１によって実行される。
【００２０】
障害管理部２３２は、各サーバ装置１１０で発生した障害（ＣＰＵ温度上昇、ファン回転数異常、メモリＥＣＣコレクトエラーなど）を、各サーバ装置１１０またはＳＶＰ１１１から送信される情報によって検知する。
【００２１】
テーブル群１０２は、業務要件テーブル２２０、切り替えレベルテーブル２２１、切替情報テーブル群２２２、障害制約テーブル２２３、障害予兆情報テーブル２２４を含む。なお、障害制約テーブル２２３は第２の実施形態で使用するテーブルである。また、障害予兆情報テーブル２２４は第３の実施形態で使用するテーブルである。
【００２２】
サーバ管理部２００は、障害管理部２３０、構成管理部２３１、資源管理部２３２、ログ管理部２３３及び業務管理部２３４を含む。構成管理部２３１は、各サーバ装置１１０に関する構成情報（ホスト名、オペレーティングシステムの種別、デバイス情報など）を、各サーバ装置１１０より収集して保持する。
【００２３】
資源管理部２３２は、各サーバ装置１１０の負荷情報（ＣＰＵ使用率、メモリ使用量など）を、各サーバ装置１１０より収集して保持する。ログ管理部２３３は、過去に実施した切替の履歴（切替方法６０２（切り替えパターン））の識別子、開始時刻、終了時刻、対象サーバ装置、対象業務など）を保持する。業務管理部２３４は、各サーバ装置１１０上で稼動する業務の情報を収集して保持する。なお、ログ管理部２３３は、過去に実施した切替の実績を示す情報として、切替方法６０２（切り替えパターン）の識別子と、切り替えに要した時間（所要時間）を含んでいてもよい。また、切り替えの所要時間は、後述するように過去に実施した切り替えパターン毎の平均値を用いることができる。
【００２４】
図２６は、業務管理部２３４が保持する情報の例を示す。カラム２６００は、サーバ装置１１０を識別するための識別子である。具体的には、サーバ装置１１０上で稼動するオペレーティングシステムに設定されたホスト名、ＩＰアドレス、サーバ装置１１０に設定されたＵＵＩＤ（Universally Unique Identifier）などである。カラム２６０１は、各サーバ装置１１０上で稼動する業務を識別するための識別子である。具体的には、業務の名称、及びユーザ（またはシステム管理者）が定義した名称である。
【００２５】
図３は、サーバ装置１１０の構成を示すブロック図である。ブレードサーバシャーシ１１２に格納されるサーバ装置１１０−Ａ、１１０−Ｂは同一の構成である。サーバ装置１１０は、メモリ３００、ローカルディスク３０１、プロセッサ（ＣＰＵ）３０２、ＮＩＣ３０３、ＨＢＡ３０４を有する。ローカルディスク３０１は、補助記憶装置として使用する。尚、サーバ装置１１０は補助記憶装置としてフラッシュメモリなどを使用しても良い。またサーバ装置１１０は複数のＮＩＣ及びＨＢＡを有しても良い。
【００２６】
メモリ３００は、オペレーティングシステム３１１を動作させるプログラムを保持する。サーバ装置１１０内では、プロセッサ３０２がメモリ３００にロードしたオペレーティングシステム３１１、アプリケーション（業務）３１０などのプログラムを実行する。
【００２７】
また、サーバ装置１１０は、図示しないＢＭＣ（Baseboard Management Controller）を備えており、ＳＶＰ１１１からの指令に応じて電源の制御や、プロセッサ３０２の温度やファン回転数などハードウェアの監視を行うことができる。
【００２８】
また、サーバ装置１１０内では仮想化システムを動作させても良い。仮想化システムを備える場合のサーバ装置１１０の構成は、図４を用いて後述する。
【００２９】
図４は、仮想化システムを備える場合のサーバ装置１１０の構成を示す。メモリ３００は、仮想化システム４００を動作させるプログラムを保持する。仮想化システム４００としては、ハイパバイザやＶＭＭ（Virtual Machine Monitor）等を採用することができる。仮想化システム４００内では、仮想サーバ４０１、構成管理部４０２、障害管理部４０３、資源管理部４０４が動作する。
【００３０】
仮想サーバ４０１は、物理コンピュータをエミュレートした論理コンピュータであり、仮想化システム４００によって割当てられた仮想資源を使用して、仮想サーバ４０１内で、ＯＳ（Operating System）３１１、アプリケーション３１０などのプログラムを動作させる。
【００３１】
構成管理部４０２は、仮想化システム４００及び各仮想サーバ４０１に関する構成情報（ホスト名、仮想サーバ名など）を収集し、収集した情報を整形し、整形した情報を管理サーバ装置１００へ送信する。
【００３２】
障害管理部４０３は、サーバ装置１１０及び仮想化システム４００で発生した障害（ＣＰＵ温度上昇、ファン回転数異常など）を検知し、障害内容を示す情報を整形し、整形した情報を管理サーバ装置１００へ送信する。
【００３３】
資源管理部４０４は、サーバ装置１１０及び仮想サーバ４０１の負荷情報（ＣＰＵ使用率、メモリ使用量など）を計測し、現況の負荷情報を整形し、整形した負荷情報を管理サーバ装置１００へ送信する。尚、資源管理部４０４が、管理サーバ装置１００へ送信する情報には、過去に計測した情報を含んでも良い。
【００３４】
図５は、現用のサーバ装置１１０−Ａ、予備のサーバ装置１１０−Ｂ、及び管理サーバ装置１００間の処理の一例を示すシーケンス図である。現用のサーバ装置１１０−Ａは、その上で動作するＯＳ３１１または仮想化システム４００を通じて、現用のサーバ装置１１０−Ａ及びその上で稼動する仮想化システム４００に関する構成情報、障害情報、資源情報を管理サーバ装置１００に送信する（処理５００）。なお、処理５００は、所定の周期毎に繰り返して実行される。また、サーバ装置１１０のＢＭＣ（図示省略）が構成情報、障害情報、資源情報を管理サーバ装置１００に送信するようにしても良い。
【００３５】
管理サーバ装置１００は、現用のサーバ装置１１０から送信された情報を受信し、その内容をサーバ管理部２００の、障害管理部２３０、構成管理部２３１、及び資源管理部２３２に通知する（処理５０１）。
【００３６】
管理サーバ装置は、障害管理部２３０、構成管理部２３１、資源管理部２３２、及びログ管理部２３３の情報を元に、テーブル群１０２の、業務要件テーブル２２０、及び切り替えレベルテーブル２２１の内容を生成または更新する（処理５０２）。
【００３７】
管理サーバ装置１００は、現用のサーバ装置１１０の障害を検知することなどを契機とし（処理５１０）、テーブル群１０２の参照を行い（処理５１１）、参照した情報を元に障害が発生した現用のサーバ装置１１０の切替方法（または切り替えパターン）を選択する（処理５１２）。管理サーバ装置１００は、処理５１２で選択した切替方法に基づいて、現用のサーバ装置１１０−Ａの業務を予備のサーバ装置１１０−Ｂへ引き継ぐ切替を実施する（処理５１３）。サーバ装置１１０の切替は、まず、予備のサーバ装置１１０−Ｂで提供（または実行）されている業務（第２の業務）を選択した切替方法に応じて停止させ、現用のサーバ装置１１０−Ａで提供されていた業務（第１の業務）を、予備のサーバ装置１１０−Ｂで提供させることで行われる。
【００３８】
尚、本実施形態では、処理５１０で検知する契機を現用のサーバ装置１１０の障害（ハードウェア故障によるサーバ停止など）として説明するが、現用のサーバ装置１１０を構成するハードウェアの保守、ハードウェアまたはソフトウェアからのイベント通知、及びユーザが入力装置１５０及び出力装置１５１によるＧＵＩ(Graphical User Interface)を通して設定した情報を契機として用いても良い。
【００３９】
図６は、切り替えレベルテーブル２２１の例を示す説明図である。切り替えレベルテーブル２２１は、切替レベルテーブル生成部２１０によって生成または更新され、サーバ装置１１０の切り替え方法（または切り替えパターン）とその特徴に関する情報を保持する。レベル６０１は、切り替え方法を安全度などの非数値項目を数値化し、比較するための情報である。尚、本実施形態ではレベル６０１の情報を後述する安全度として説明するが他の情報を用いても良い。安全度とは、稼働中の予備のサーバ装置１１０−Ｂに対して系切り替えを実施した場合の、ハードウェアの消費、業務継続性、データ破損、などに基づいて管理サーバ装置１００が、切り替えパターン毎に決定する情報である。本実施形態では、安全度の数値がより高い切り替えパターンの方が、予備のサーバ装置１１０−Ｂの業務に与える影響を抑制しながら現用のサーバ装置１１０−Ａの業務を引き継ぐことができる。
【００４０】
レベル６０１は、後述する図９の、切替方法特徴テーブル９００、制御対象レートテーブル９０１、資源解放レートテーブル９０２、及び業務再起動レートテーブル９０３の内容より、管理サーバ装置１００が決定する値が格納される。切替方法（または切り替えパターン）６０２は、現用のサーバ装置１１０−Ａの業務を予備のサーバ装置１１０−Ｂへ引き継ぐ切り替え方法（切り替えパターン）を識別するための識別子である。具体的には、切替方法の名称、及びユーザ（またはシステム管理者）が定義した名称である。カラム６０３は、切り替え方法毎の実施に要する所要時間６０３である。所要時間６０３は、ログ管理部２３３の情報や、ユーザが入力装置１５０及び出力装置１５１によるＧＵＩ(Graphical User Interface)を通して設定した情報を元に、管理サーバ装置１００が決定する。
【００４１】
図７は、業務要件テーブル２２０の例を示す説明図である。業務要件テーブル７００は、サーバ装置１１０を切り替える際に業務ダウン許容時間などのＳＬＡに基づいた切り替え時間要件である。カラム（業務識別子）７０１は、サーバ装置１１０で実行される業務を識別するための識別子である。この識別子には、業務管理部２３４が保持する業務識別子２６０１と関連付けられるものを使用する。カラム（切替時間要件）７０２は、業務を現用のサーバ装置１１０−Ａから予備のサーバ装置１１０−Ｂへの切り替える際に許可される停止時間である。例えば、カラム７０２の値が６０秒である場合、所要時間が６０秒を超える切り替え方法（または切り替えパターン）は業務要件上許可されないこととなる。尚、本実施形態ではカラム７０２の単位を秒として説明するが他の単位を用いても良い。また、カラム７０２の値は、業務の提供を受けるクライアントとの間に停止時間に関する定めがない場合には、値なし（要件が特にない）とすることもできる。また、業務要件テーブル７００は、管理者などが予め設定しておくことができる。
【００４２】
図８は、障害復旧管理部１０１に含まれる切り替え方法決定部２１３で行われる処理の一例を示すフローチャートである。切替方法決定部２１３は、障害復旧管理部１０１が切替方法（または切り替えパターン）を決定する（図５の処理５１２）際に動作する。切替方法決定部２１３は、切り替え対象の現用系のサーバ装置１１０−Ａで実行されている業務について、業務要件テーブル２２０を参照して切替対象となる業務の切替時間要件７０２を参照する。切替対象となる業務とは、管理サーバ装置１００が障害を検出した現用のサーバ装置１１０−Ａに関連付けられている業務である。現用のサーバ装置１１０−Ａ上で仮想化システム４００が稼動することで、複数の業務が関連付けられている場合は、複数の業務の切替時間要件７０２の中から最も低い切替時間要件７０２を参照する（ステップ８００）。
【００４３】
切替方法決定部２１３は、現用のサーバ装置１１０−Ａの切替先となる予備のサーバ装置１１０−Ｂを選択する。予備のサーバ装置１１０−Ｂが複数ある場合は、各予備のサーバ装置１１０−Ｂの稼動状態を資源管理部２３２より参照し、未稼働または別の現用サーバ装置（図示省略）の切替先として選択されていないサーバ装置１１０から選択する。なお、切替先として選択するサーバ装置１１０は、ユーザが入力装置１５０及び出力装置１５１によるＧＵＩ(Graphical User Interface)を通して設定した情報（優先度や、ユーザが直接指定した予備サーバ装置）から選択してもよい（ステップ８０１）。
【００４４】
切替方法決定部２１３は、切替レベルテーブル２２１より、本処理にてまだ一度も選択されていない切替方法６０２があるか否かを判定し、一度も選択されていない切替方法６０２があればステップ８０２へ、無ければステップ８０６に移動する（ステップ８０５）。
【００４５】
切り替え方法決定部２１３は、切替レベルテーブル２２１より、最もレベル６０１が高く（値が大きい）、本処理にて一度も選択されていない切替方法６０２を選択する（ステップ８０２）。切替方法決定部２１３は、ステップ８０２において選択した切替方法６０２の所要時間６０３と、ステップ８００で参照した業務の切替時間要件７０２を比較する（ステップ８０３）。
【００４６】
切替方法決定部２１３は、ステップ８０３の比較により切替時間要件７０２が所要時間６０３を上回らない場合、ステップ８０２で選択した切替方法６０２の実行によって業務がダウンしてもそれは業務要件を違反しないものとして判定し、切替方法決定部２１３の処理を終了する。切替時間要件７０２が所要時間６０３を上回る場合、当該切替方法は業務要件に対し利用できないと判定しステップ８０５に移動する（ステップ８０４）。ステップ８０６は、切替時間要件７０２を満足する切替方法６０２が無い場合の処理である。ステップ８０６では、所要時間６０３が最も早い切替方法６０２を選択する。
【００４７】
上記処理により、まず切り替え対象の業務に許される切替時間要件７０２と、切り替え先の予備系のサーバ装置１１０−Ｂが選択される。そして、ステップ８０２、８０３、８０４、８０５を切替レベルテーブル２２１のエントリの数だけ繰り返し行うことで、切替方法６０２（または切り替えパターン）の内、切替時間要件７０２を満たしかつ最もレベル６０１の値が大きい切替方法６０２を選択する。また、ステップ８０４でＮＯとなった回数が切替レベルテーブル２２１のエントリの数を超えた場合には、所要時間６０３が最も短い切替方法６０２を選択することができる。
【００４８】
図９は、切替情報テーブル群２２２の構成を示す説明図である。切替情報テーブル群２２２は、切替方法特徴テーブル９００、制御対象レートテーブル９０１、資源解放レートテーブル９０２、業務再起動レートテーブル９０３を有する。切替情報テーブル群２２２は、切替レベルテーブル２２１のレベル６０１の判定に用いる。
【００４９】
図１０は、切替方法特徴テーブル９００の構成を示す説明図である。切替方法特徴テーブル９００は、各切替方法（切り替えパターン）を実施する際の、予備のサーバ装置１１０−Ｂの動作の特徴、及び予備のサーバ装置１１０−Ｂ上で既に実行されている業務への影響に関する情報を保持する。切替方法特徴テーブル９００はユーザなどが予め設定したテーブルである。
【００５０】
カラム（切替方法）１０００は、サーバ装置１１０の切替方法を識別するための識別子である。具体的には、切替方法の名称、及びユーザ（またはシステム管理者）が定義した名称である。カラム１００１は、レベル６０１が示す情報（本実施形態では安全度）の判定要素となる情報である。換言すれば、切替方法１０００を実行する際に、予備のサーバ装置１１０−Ｂに指令する制御の内容を、制御の項目毎に設定したものである。
【００５１】
カラム１００１は、サブカラム（制御の項目）として制御対象１０１０、資源確保方法１０１１、業務再起動１０１２を備える。制御対象１０１０は、切替方法（切り替えパターン）１０００を実施する際の、制御命令の送信先となる、予備のサーバ装置１１０−Ｂ内の構成要素（ＯＳ、ハードウェア、仮想化システムなど）である。資源解放方法１０１１は、切替方法１０００を実施する際の、現用のサーバ装置１１０−Ａ上の業務を割り当てるために予備のサーバ装置１１０−Ｂの資源を解放する方法（サーバ装置停止、資源割当率変更など）を示す。業務再起動１０１２は、切替方法１０００を実施する際に、予備のサーバ装置１１０−Ｂ上の業務の再起動の有無を示す。
【００５２】
図１１は、制御対象レートテーブル９０１の構成を示す説明図である。制御対象レートテーブル９０１は、制御対象１０１０をレベル６０１が示す情報（本実施形態では安全度）に関連付けるための情報を示す。制御対象レートテーブル９０１はユーザなどが予め設定したテーブルである。
【００５３】
カラム１１００は、制御対象レートテーブル９０１を制御対象１０１０と関連付けるための識別子である。カラム１１０１は、カラム１１００間でレベル６０１が示す情報（本実施形態では安全度）を比較するための情報である。例えば、図１１を例として用いると、ハードウェアに対して電源停止などの制御命令を送信する場合と比べて、ＯＳや仮想化システムなどのソフトウェアにシャットダウンなどの制御命令を送信する場合の方が、ハードウェアの負担を低減できるため安全度が高い。なお、ハードウェアを強制的に電源停止させた場合、再度通電したときに管理サーバ装置１００からサーバ装置１１０を認識できない場合などの不具合が発生することがある。このため、ハードウェアの電源を強制的に停止する手順を含む切り替えパターン（切り替え方法）の安全度を低く設定しておく。
【００５４】
図１２は、資源解放レートテーブル９０２の構成を示す。資源解放レートテーブル９０２は、資源解放方法１０１１をレベル６０１が示す情報（本実施形態では安全度）に関連付けるための情報を示す。資源解放レートテーブル９０２はユーザなどが予め設定したテーブルである。
【００５５】
カラム１２００は、資源解放レートテーブル９０２を資源解放方法１０１１と関連付けるための識別子である。カラム１２０１は、カラム１２００間でレベル６０１が示す情報（本実施形態では安全度）を比較するための情報である。例えば、図１２を例として用いると、予備のサーバ装置１１０−Ｂを停止し、予備のサーバ装置１１０−Ｂ全体を現用のサーバ装置１１０−Ａ上の業務に割り当てる場合の方が、資源割当率を変更して予備のサーバ装置１１０−Ｂの一部を現用のサーバ装置１１０−Ａ上の業務に割り当てる場合と比べて、必要な資源を用意できるため業務継続性の面で安全度が高い。
【００５６】
図１３は、業務再起動レートテーブル９０３の構成を示す説明図である。業務再起動レートテーブル９０３は、業務再起動１０１２をレベル６０１が示す情報（本実施形態では安全度）に関連付けるための情報を示す。業務再起動レートテーブル９０３はユーザなどが予め設定したテーブルである。
【００５７】
カラム１３００は、業務再起動レートテーブル９０３を業務再起動１０１２と関連付けるための識別子である。カラム１３０１は、カラム１３００間でレベル６０１が示す情報（本実施形態では安全度）を比較するための情報である。例えば、図１３を例として用いると、業務の再起動が必要な場合と比べて、業務再起動が不要な場合の方がデータ損失性の面で安全度が高い。
【００５８】
図１４は、切替レベルテーブル生成部２１０で行われる処理の一例を示すフローチャートである。この処理は、図５の処理５０２で実行される。
【００５９】
切替レベルテーブル生成部２１０は、障害復旧管理部１０１が切替レベルテーブル２２１を生成する（処理５０２）際に動作する。切替レベルテーブル生成部２１０は、切替方法特徴テーブル９００より切替方法１０００を参照し、切替レベルテーブル２２１の切替方法６０２に追加する（ステップ１４００）。
【００６０】
切替レベルテーブル生成部２１０は、ステップ１４００で追加した切替方法の内、本処理にて一度も選択されていない選択方法があるか否かを判定し、一度も選択されていない選択方法がある場合はステップ１４０２へ進み、無い場合は処理を終了する（ステップ１４０１）。なお、切替レベルテーブル２２１には、図示しないフラグなどを設けておき、切替方法６０２が選択されたときにフラグをセットすることで、上記判定を行うようにすればよい。
【００６１】
切替レベルテーブル生成部２１０は、切替レベルテーブル２２１の切替方法６０２のうち本処理にて一度も選択されていない切替方法を１つ選択する（ステップ１４０２）。切替レベルテーブル生成部２１０は、ステップ１４０２にて選択した切替方法６０２のレベルを決定し、切替レベルテーブル２２１の該当するレコードのレベル６０１に追加する（ステップ１４０３）。ステップ１４０３の詳細な処理フローチャートは図１５に示す。
【００６２】
切替レベルテーブル生成部２１０は、ステップ１４０２にて選択した切替方法６０２の所要時間を決定し、切替レベルテーブル２２１の該当するレコードのレベル６０１に追加し、ステップ１４０１に移動する（ステップ１４０４）。ステップ１４０４の詳細な処理フローチャートは図１７に示す。
【００６３】
図１５は、図１４に示したステップ１４０３の、切替方法６０２のレベル６０１を決定する処理のフローチャートを示す。ステップ１５００では、選択した切替方法６０２に対応する制御対象１０１０を図１０の切替方法特徴テーブル９００より読み込んで、図１１に示した制御対象レートテーブル９０１のレート１１０１を参照する。
【００６４】
ステップ１５０１では、選択した切替方法６０２に対応する資源解放方法１０１１を図１０の切替方法特徴テーブル９００より読み込んで、資源解放レートテーブル９０２のレート１２０１を参照する。
【００６５】
ステップ１５０２では、選択した切替方法６０２の業務再起動１０１２を図１０の切替方法特徴テーブル９００より読み込んで、業務再起動レートテーブル９０３のレート１３０１を参照する。
【００６６】
ステップ１５０３では、ステップ１５００、ステップ１５０１、ステップ１５０２で参照した情報より切替レベルテーブル２２１のレベル６０１を決定する。尚、本実施形態ではステップ１５０２の決定方法を、レート１１０１、レート１２０１、レート１３０１の和として説明するが、最も高いレートの値や、切替レベルテーブル２２１における順位（例えば、前記和の値が切替レベルテーブル２２１において2番目に高い場合は2）など、別の決定方法を用いても良い。
【００６７】
図１６は、図１４に示したステップ１４０４の、選択した切替方法６０２の所要時間６０３を決定する処理のフローチャートを示す。ステップ１６００では、ログ管理部２３３から上記選択した切替方法６０２の開始、終了といった実行履歴を示すイベントログ情報を参照する。
【００６８】
ステップ１６０１では、ステップ１６００で参照したイベントログ情報より、所要時間を決定する。尚、本実施形態ではステップ１６０１の決定方法を、ステップ１４０４にて選択した切替方法６０２（切り替えパターン）に関する直近の終了時刻と開始時刻の差として説明するが、過去Ｎ回分の実施に関する差の最悪値や平均値など、別の決定方法を用いても良い。尚、イベントログ情報からの切替方法６０２（切り替えパターン）に関する情報の取得は、ステップ１４０４にて選択した切替方法の識別子と、イベントログ情報に含まれる切替方法６０２（切り替えパターン）の識別子の比較によって行うこととする。
【００６９】
図１７は、障害復旧管理部１０１が、ユーザに切替レベルテーブル２２１の内容を設定させるために提供するＵＩ（User Interface）の例として、ＧＵＩ（Graphical User Interface）の例を示す。このＧＵＩは、管理サーバ装置１００に接続した出力装置１５１や、管理サーバ装置１００にネットワークスイッチ１３０を介して接続された他の端末の表示装置等にブラウザや専用のプログラム、及びテキストなどを用いて表示する。
【００７０】
切替レベル情報設定ウィンドウ１７００には、切替レベル情報と、操作のためのボタン等が表示される。ウィンドウ１７００に表示される切替レベル情報は、切替レベルテーブル２２１の内容に基づいている。
【００７１】
レベル１７０１には、レベル６０１の情報が表示される。切替方法１７０２には、切替方法６０２の情報が表示される。所要時間１７０３には、カラム６０３の情報が表示される。ユーザは、レベル１７０１、所要時間１７０３に値を入力する。ユーザは、設定を更新する場合、ボタン１７０４をクリックし、キャンセルする場合はボタン１７０５をクリックする。ボタン１７０４をクリックすると、障害復旧管理部１０１は、レベル１７０１、所要時間１７０３に入力された情報を切替レベルテーブル２２１に反映する。
【００７２】
図１８は、障害復旧管理部１０１が、ユーザに業務要件テーブル２２０の内容を設定させるために提供するＵＩ（User Interface）の例として、ＧＵＩ（Graphical User Interface）の例を示す。このＧＵＩは、管理サーバ装置１００に接続した出力装置１５１や、管理サーバ装置１００にネットワークスイッチ１３０を介して接続された他の端末の表示装置等にブラウザや専用のプログラム、及びテキストなどを用いて表示する。
【００７３】
業務要件情報設定ウィンドウ１８００には、業務要件情報と、操作のためのボタン等が表示される。ウィンドウ１８００に表示される業務要件情報は、業務要件テーブル２２０の内容に基づいている。業務１８０１には、カラム７０１の情報が表示される。切替時間要件１８０２には、カラム７０２の情報が表示される。ユーザは切替時間要件１８０２に値を入力する。ユーザは、設定を更新する場合、ボタン１８０３をクリックし、キャンセルする場合はボタン１８０４をクリックする。ボタン１８０３をクリックすると、障害復旧管理部１０１は、切替時間要件１８０２に入力された情報を業務要件テーブル２２０に反映する。
【００７４】
図１９は、切替実行部２１２で行われる処理の一例を示すフローチャートである。切替実行部２１２は、切替方法選択（図５の処理５１２）の際に、切替方法決定部２１３の処理の後に、障害復旧管理部１０１によって動作が開始される。
【００７５】
切替実行部２１２は、切替方法決定部２１３で決定された切替方法を障害復旧管理部１０１より受け取る（ステップ１９００）。切替実行部２１２は、ステップ１９００で受け取った切替方法に基づいて、現用及び予備のサーバ装置１１０を制御する（ステップ１９０１）。例えば、受け取った切替方法が強制電源停止の場合、予備のサーバ装置１１０−Ｂのハードウェアに対し電源停止命令を送信し、電源停止を判定した後、現用のサーバ装置１１０−Ａの系切替を実施する。
【００７６】
本実施形態によれば、障害復旧管理部１０１は、サーバ切替時に予備のサーバ装置１１０−Ｂを可能な限り安全に停止させるためのサーバの切替方法（切替手順）をレベルに応じて決定し、決定した切替方法に基づいてサーバ切替を実施することで業務の復旧が可能となる。サーバ装置１１０の切り替え時には、予備系が現用系を引き継ぐまでの制約である業務要件を満たし、かつ、予備系のサーバ装置１１０−Ｂを可能な限り安全に停止させることが可能となり、予備系のサーバ装置１１０−Ｂで実行していた業務（開発やテスト）のデータが破損するのを防ぐことができる。
【００７７】
以上のように、予備のサーバ装置１１０−Ｂで開発やテストなどの業務を実行することで、計算機システムのリソースを有効に活用しながら、現用のサーバ装置１１０−Ａに障害が発生したときには、予備のサーバ装置１１０−Ｂで実行していた業務に与える影響を最小にしながら、所定の業務条件を満たして現用系から予備系に切り替えを実施することが可能となる。
【００７８】
＜第２実施形態＞
前記実施形態１では、切替方法毎のレベル６０１と切替対象となる業務の要件から切替方法を選択するステップを含む切替方法について述べた。本第２実施形態では、現用のサーバ装置１１０−Ａで発生した障害の内容を考慮して切替方法を選択するステップを含む切替方法について述べる。本実施形態では、障害制約テーブル２２３を新たに用いる。その他の構成については、前記第１実施形態と同様である。
【００７９】
図２０は、障害制約テーブル２２３の構成を示す。障害制約テーブル２２３は、図２のテーブル群１０２に含まれ、現用のサーバ装置１１０−Ａ（また、その上で稼動するＯＳ３１１や仮想化システム４００など）で発生した障害内容（障害要因）に対する、切替方法決定の際の制約（例えば、ＣＰＵ（プロセッサ）に温度障害が発生した場合は、仮想サーバマイグレーションなどＣＰＵを酷使する移動手段を多用しない、など）を示す。カラム２０００は、障害内容を識別するための識別子である。具体的には、ユーザ（またはサーバ管理者）が定義した名称である。カラム２００１は、障害が切替方法の決定に与える制約の内容を示す。図２０を例とすると、ネットワークアダプタ障害が発生しネットワーク帯域が低下した場合は、仮想サーバマイグレーションなどネットワーク負荷の大きい切替方法は実施しないよう切替方法を決定する。
【００８０】
なお、障害要因の特定は、管理サーバ装置１００がサーバ装置１１０のＢＭＣやＯＳ等から取得したログや通知に基づいて行うことができる。障害要因の特定については、公知または周知の技術を用いることができる。
【００８１】
図２１は、本第２実施形態の切替方法決定部２１３の処理フローチャートを示す。図２１は、前記第１実施形態の図８に示した切替方法決定部２１３を本実施形態のために変更した処理である。図２１が図８と異なる箇所は、ステップ２１０５、ステップ２１０６の追加である。その他のステップは、前記第１実施形態の図８と同様である。
【００８２】
切替方法決定部２１３は、管理サーバ装置１００が受信した現用のサーバ装置１１０−Ａの障害情報より、障害制約テーブル２２３の障害内容２０００を参照する（ステップ２１０５）。切替方法決定部２１３は、ステップ２１０２で選択した切替方法を実行することによって、ステップ２１０５で取得した制約に違反しない否かを判定する（ステップ２１０６）。違反するならば、ステップ２１０２に移動する。
【００８３】
本実施形態によれば、障害復旧管理部１０１は、現用のサーバ装置１１０−Ａに発生した障害の内容を考慮し、サーバ装置１１０の切替方法を決定することができる。その結果、サーバ装置１１０の切替方法が障害を誘発することや、障害によりサーバ装置１１０の切替に必要な資源が使用できず切替失敗となるなどの問題を回避することができる。
【００８４】
＜第３実施形態＞
本第３実施形態では、特徴的な切替方法として現用のサーバ装置１１０−Ａの障害予兆検出に基づいた切替方法について述べる。図２２では、本第３実施形態における、現用のサーバ装置１１０−Ａ、予備のサーバ装置１１０−Ｂ、及び管理サーバ装置１００間の処理シーケンスの例を示す。なお、図２２の処理は、前記第１実施形態の図５に示した処理５００〜５０２に加えて実行される。
【００８５】
管理サーバ装置１００は、サーバ管理部２００の障害管理部２３０、ログ管理部２３３の情報を元に、障害予兆情報テーブル２２４を生成する（処理２２０７）。
【００８６】
現用のサーバ装置１１０は、サーバ装置１１０、その上で動作するＯＳ３１１または仮想化システム４００に関する警告情報（例えば、ＣＰＵ温度上昇、ファン回転上昇、メモリコレクトエラー、リソース逼迫など）を管理サーバ装置１００に送信する（処理２２００）。なお、処理２２００は、所定の周期毎に繰り返して実行される。
【００８７】
管理サーバ装置１００は、現用のサーバ装置１１０−Ａから送信された警告情報を受信し、その内容より現用のサーバ装置１１０−Ａの障害予兆を検出する（処理２２０１）。管理サーバ装置１００は、現用のサーバ装置１１０−Ａの障害予兆を検出すると予備のサーバ装置１１０−Ｂに対して停止命令（ＯＳシャットダウンなど）を送信する（処理２２０２）。予備のサーバ装置１１０−Ｂは、管理サーバ装置１００から停止命令を受信するとその内容に基づいてサーバ装置１１０−Ｂを停止する（処理２２０３）。
【００８８】
その後、現用のサーバ装置１１０−Ａが障害発生により停止すると、管理サーバ装置１００は、現用のサーバ装置１１０−Ａの障害を検知する（処理２２０４）。管理サーバ装置１００は、障害検知後に、現用のサーバ装置１１０−Ａから予備のサーバ装置１１０−Ｂへの切替を開始する（処理２２０５）。現用及び予備のサーバ装置１１０は、管理サーバ装置１００からの要求に対し切替を実施する（処理２２０６）。
【００８９】
図２３は、障害予兆情報テーブル２２４の構成を示す説明図である。障害予兆情報テーブル２２４は、後述の障害予兆情報テーブル生成部２１４によって生成され、障害復旧管理部１０１が、サーバ装置１１０の障害予兆を判定するための情報を保持する。カラム２３００は、サーバ装置１１０の障害予兆に関する情報を示す。図２３を例とすると、現用のサーバ装置１１０−ＡよりＣＰＵ温度警告に関する状態情報を、管理サーバ装置１００が受信した場合、障害復旧管理部１０１は現用のサーバ装置１１０−Ａに、今後障害が発生し停止すると判定する。
【００９０】
図２４は、障害予兆情報テーブル生成部２１４で行われる処理の一例を示すフローチャートである。障害予兆情報テーブル生成部２１４は、障害復旧管理部１０１が障害予兆情報を生成する（処理２２０７）際に動作する。
【００９１】
障害予兆情報テーブル生成部２１４は、ログ管理部２３３より過去の現用のサーバ装置１１０−Ａについて警告情報及び障害情報を参照する（ステップ２４００）。障害予兆情報テーブル生成部２１４は、ステップ２４００で参照した警告情報及び障害情報を関連付ける（ステップ２４０１）。
【００９２】
この関連付けは、直接的な関連がある部位（例えば、ＣＰＵ（プロセッサ）の障害情報とＣＰＵ（プロセッサの）警告情報は関連がある）、間接的な関連がある部位（例えば、ＣＰＵの警告情報が発生すると、その関連部位であるＯＳ、仮想化システム、アプリケーションの性能障害などが発生する可能性がある）、受信時刻（例えば、受信時刻が近いほど関連がある）などより行う。
【００９３】
障害予兆情報テーブル生成部２１４は、ステップ２４０１により障害情報に関連する警告情報があるか否かを判定し、障害情報に関連する警告情報がある場合はステップ２４０３へ進み、無い場合は処理を終了する（ステップ２４０２）。障害予兆情報テーブル生成部２１４は、ステップ２４０１により障害情報に関連する警告情報を、障害予兆情報テーブルに追加してステップ２４０２に移動する（ステップ２４０３）。
【００９４】
図２５は、障害復旧管理部１０１が、ユーザに障害予兆情報テーブル２２４の内容を設定させるために提供するＵＩ（User Interface）の例として、ＧＵＩ（Graphical User Interface）の例を示す。このＧＵＩは、管理サーバ装置１００に接続した出力装置１５１や、管理サーバ装置１００にネットワークスイッチ１３０を介して接続された他の端末の表示装置等にブラウザや専用のプログラム、及びテキストなどを用いて表示する。
【００９５】
障害予兆情報設定ウィンドウ２５００には、障害予兆情報と、操作のためのボタン等が表示される。ウィンドウ２５００に表示される障害予兆情報は、障害予兆情報テーブル２２４の内容に基づいている。障害予兆２５０１には、カラム２３００の情報が表示される。ユーザは、２５０１に、管理サーバ装置１００が備える、サーバ装置１１０の状態に関する情報より、障害予兆として扱う情報を選択することができる。ユーザは、新しい障害予兆２５０１を追加する場合、ボタン２５０５をクリックする。ユーザは、既存の障害予兆２５０１を削除する場合、ボタン２５０２をクリックする。ユーザは、設定を更新する場合、ボタン２５０３をクリックし、キャンセルする場合はボタン２５０４をクリックする。ボタン２５０３をクリックすると、障害復旧管理部１０１は、切替時間要件２５０１に入力された情報を障害予兆情報テーブル２２４に反映する。
【００９６】
本実施形態によれば、障害復旧管理部１０１は、現用のサーバ装置１１０―Ａの障害予兆を検出して、実際に障害が発生する前に予備のサーバ装置１１０−Ｂを停止させることができる。その結果、障害発生による現用サーバ装置１１０−Ａ及び予備サーバ装置１１０−Ｂの強制停止、及び強制停止による予備サーバ装置１１０−Ｂ上のデータの破損などの問題を回避することができる。
【産業上の利用可能性】
【００９７】
以上のように、本発明は、現用系のサーバに障害が発生したときに予備系のサーバに切り替える計算機システムや、管理サーバに適用することができる。特に、予備系のサーバにテストやシステム開発などの業務を割り当てて、計算機システムの計算資源を有効活用する計算機システムに好適である。
【符号の説明】
【００９８】
１００  管理サーバ
１０１  障害復旧管理部
１１０−Ａ、１１０−Ｂ  サーバ装置
２００  サーバ管理部
２１０  切替レベル生成テーブル
２１２  切替実行部
２１３  切替方法決定部
２１４  障害予兆情報テーブル生成部
２２０  業務要件テーブル
２２１  切替レベルテーブル
２２２  切替情報テーブル
２２３  障害制約テーブル
２２４  障害予兆情報テーブル
２３０  障害管理部
２３１  構成管理部
２３２  資源管理部
２３３  ログ管理部
２３４  業務管理部
９００  切替方法特徴テーブル
９０１  制御対象レートテーブル
９０２  資源解放レートテーブル
９０３  業務再起動レートテーブル
【図１】
2011248735.tif 000003
【図２】
2011248735.tif 000004
【図３】
2011248735.tif 000005
【図４】
2011248735.tif 000006
【図５】
2011248735.tif 000007
【図６】
2011248735.tif 000008
【図７】
2011248735.tif 000009
【図８】
2011248735.tif 000010
【図９】
2011248735.tif 000011
【図１０】
2011248735.tif 000012
【図１１】
2011248735.tif 000013
【図１２】
2011248735.tif 000014
【図１３】
2011248735.tif 000015
【図１４】
2011248735.tif 000016
【図１５】
2011248735.tif 000017
【図１６】
2011248735.tif 000018
【図１７】
2011248735.tif 000019
【図１８】
2011248735.tif 000020
【図１９】
2011248735.tif 000021
【図２０】
2011248735.tif 000022
【図２１】
2011248735.tif 000023
【図２２】
2011248735.tif 000024
【図２３】
2011248735.tif 000025
【図２４】
2011248735.tif 000026
【図２５】
2011248735.tif 000027
【図２６】
2011248735.tif 000028