(57)【特許請求の範囲】
【請求項１】
対象となるコンピュータシステムに発生する障害を検知する、障害検出部と、
検知された前記障害に対応する復旧方法を決定する、復旧方法決定部と、
前記障害の解析のために採取が求められる１又は２以上の採取情報、各採取情報の採取に必要となる採取時間、及び各採取情報に付与された優先順位を特定する解析情報を取得する、解析情報取得部と、
予め設定されている、前記復旧処理に使用できる時間と、決定された前記復旧方法の実施に必要な時間とから、前記採取情報の採取に使用可能な時間を特定し、そして、前記解析情報に含まれる前記採取時間に基づいて、前記優先順位の順に、特定した前記使用可能な時間内で採取可能な前記採取情報を決定する、採取情報決定部と、
前記採取情報決定部によって決定された前記採取情報の採取を実行する、情報採取部と、
前記情報採取部による採取の実行後に、前記復旧方法決定部によって決定された前記復旧方法に従って、前記コンピュータシステムを復旧させる、復旧実行部とを備えている、ことを特徴とする障害復旧装置。
【請求項２】
前記復旧方法が、想定される障害毎に、当該復旧方法の実施に必要な時間と共に予め設定されており、
前記復旧方法決定部が、予め設定されている前記復旧方法の中から、検知された前記障害に対応する復旧方法を決定する、請求項１に記載の障害復旧装置。
【請求項３】
前記採取情報決定部が、特定された前記使用可能な時間内で採取可能な前記採取情報が存在しない場合に、前記採取情報の採取を実行しないことを前記情報採取部に通知し、前記復旧実行部に前記コンピュータシステムを復旧させる、請求項１または２に記載の障害復旧装置。
【請求項４】
（ａ）対象となるコンピュータシステムに発生する障害を検知する、ステップと、
（ｂ）前記（ａ）のステップで検知された前記障害に対応する復旧方法を決定する、ステップと、
（ｃ）前記障害の解析のために採取が求められる１又は２以上の採取情報、各採取情報の採取に必要となる採取時間、及び各採取情報に付与された優先順位を特定する解析情報を取得する、ステップと、
（ｄ）予め設定されている、前記復旧処理に使用できる時間と、決定された前記復旧方法の実施に必要な時間とから、前記採取情報の採取に使用可能な時間を特定し、そして、前記解析情報に含まれる前記採取時間に基づいて、前記優先順位の順に、特定した前記使用可能な時間内で採取可能な前記採取情報を決定する、ステップと、
（ｅ）前記（ｄ）のステップによって決定された前記採取情報の採取を実行する、ステップと、
（ｆ）前記（ｅ）のステップによる採取の実行後に、前記（ｂ）のステップによって決定された前記復旧方法に従って、前記コンピュータシステムを復旧させる、ステップとを有する、ことを特徴とする障害復旧方法。
【請求項５】
前記復旧方法が、想定される障害毎に、当該復旧方法の実施に必要な時間と共に予め設定されており、
前記（ｂ）のステップにおいて、予め設定されている前記復旧方法の中から、検知された前記障害に対応する復旧方法を決定する、請求項４に記載の障害復旧方法。
【請求項６】
前記（ｄ）のステップにおいて、特定された前記使用可能な時間内で採取可能な前記採取情報が存在しない場合に、前記（ｅ）のステップを実行しないで、前記（ｆ）のステップを実行する、請求項４または５に記載の障害復旧方法。
【請求項７】
障害の発生したコンピュータシステムの復旧をコンピュータによって行うためのプログラムであって、
前記コンピュータに、
（ａ）前記コンピュータシステムに発生する障害を検知する、ステップと、
（ｂ）前記（ａ）のステップで検知された前記障害に対応する復旧方法を決定する、ステップと、
（ｃ）前記障害の解析のために採取が求められる１又は２以上の採取情報、各採取情報の採取に必要となる採取時間、及び各採取情報に付与された優先順位を特定する解析情報を取得する、ステップと、
（ｄ）予め設定されている、前記復旧処理に使用できる時間と、決定された前記復旧方法の実施に必要な時間とから、前記採取情報の採取に使用可能な時間を特定し、そして、前記解析情報に含まれる前記採取時間に基づいて、前記優先順位の順に、特定した前記使用可能な時間内で採取可能な前記採取情報を決定する、ステップと、
（ｅ）前記（ｄ）のステップによって決定された前記採取情報の採取を実行する、ステップと、
（ｆ）前記（ｅ）のステップによる採取の実行後に、前記（ｂ）のステップによって決定された前記復旧方法に従って、前記コンピュータシステムを復旧させる、ステップとを実行させる、ことを特徴とするプログラム。
【請求項８】
前記復旧方法が、想定される障害毎に、当該復旧方法の実施に必要な時間と共に予め設定されており、
前記（ｂ）のステップにおいて、予め設定されている前記復旧方法の中から、検知された前記障害に対応する復旧方法を決定する、請求項７に記載のプログラム。
【請求項９】
前記（ｄ）のステップにおいて、特定された前記使用可能な時間内で採取可能な前記採取情報が存在しない場合に、前記（ｅ）のステップを実行しないで、前記（ｆ）のステップを実行する、請求項７または８に記載のプログラム。
【発明の詳細な説明】
【技術分野】
【０００１】
本発明は、コンピュータシステムに障害が発生した場合にその復旧を行うための、障害復旧装置、障害復旧方法、及びプログラムに関する。
【背景技術】
【０００２】
近年、コンピュータシステムに障害が発生した場合において、速やかな復旧を図り、そして、利用者の負担の軽減するため、障害からの復旧を自動的に実行する仕組みが提案されている（例えば、特許文献１及び２参照。）。
【０００３】
具体的には、特許文献１は、コンピュータシステムで発生した障害を検知し自動で復旧するような仕組みとして、障害の要因に関する情報を蓄積したデータベースと、復旧方法に関する情報を蓄積したデータベースとを備えたシステム（障害自動復旧システム）を提案している。
【０００４】
特許文献１に開示のシステムでは、対象となるコンピュータシステムで障害が発生すると、障害検出手段によって障害が検出され、検出された障害に対応する復旧方法がデータベースに対して問い合わせされる。そして、適切な復旧方法が特定され、復旧実施手段によって障害復旧が行われる。
【０００５】
但し、特許文献１に開示のシステムは、原則として、発生した障害を検知すると直ちに自動的に復旧処理を実行する。よって、このシステムでは、復旧後に、ＯＳダンプ、メモリ情報、性能情報、及び復旧処理によりローテートされるログの情報、といった障害発生時にしか採取できない情報を採取することは困難である。このため、特許文献１に開示の障害自動復旧システムでは、障害解析に採取できる情報は限られており、復旧後に、真の障害原因を究明できず、障害に対して本格的な対処ができない恐れがある。
【０００６】
一方、特許文献２は、障害発生時に必要な情報を採取してから復旧を行うシステムを提案している。特許文献２に開示のシステムでは、対象となるコンピュータシステムで障害が発生すると、原因究明に必要な情報を採取してから、このコンピュータシステムの再起動が行われるようになっている。
【先行技術文献】
【特許文献】
【０００７】
【特許文献１】特開平１１−０７３３３６号公報
【特許文献２】特開平１１−１２００３２号公報
【発明の概要】
【発明が解決しようとする課題】
【０００８】
しかしながら、特許文献２に開示のシステムでは、特許文献１に開示のシステムの問題は解消できても、原因究明に必要な情報を採取するために要する時間が考慮されていないため、情報の採取に多大な時間がかかる場合がある。このため、特許文献２に開示のシステムを用いた場合は、コンピュータシステムの停止時間が非常に長くなってしまう可能性がある。
【０００９】
本発明の目的は、上記問題を解消し、コンピュータシステムからの、障害発生時にしか採取できない情報の採取を実行しつつ、当該コンピュータシステムの復旧にかかる時間の長期化を抑制し得る、障害復旧装置、障害復旧方法、及びプログラムを提供することにある。
【課題を解決するための手段】
【００１０】
上記目的を達成するため、本発明における障害復旧装置は、対象となるコンピュータシステムに発生する障害を検知する、障害検出部と、
検知された前記障害に対応する復旧方法を決定する、復旧方法決定部と、
前記障害の解析のために採取が求められる１又は２以上の採取情報、各採取情報の採取に必要となる採取時間、及び各採取情報に付与された優先順位を特定する解析情報を取得する、解析情報取得部と、
前記採取情報の採取に使用可能な時間を特定し、そして、前記解析情報に含まれる前記採取時間に基づいて、前記優先順位の順に、特定した前記使用可能な時間内で採取可能な前記採取情報を決定する、採取情報決定部と、
前記採取情報決定部によって決定された前記採取情報の採取を実行する、情報採取部と、
前記情報採取部による採取の実行後に、前記復旧方法決定部によって決定された前記復旧方法に従って、前記コンピュータシステムを復旧させる、復旧実行部とを備えている、ことを特徴とする。
【００１１】
また、上記目的を達成するため、本発明における障害復旧方法は、
（ａ）対象となるコンピュータシステムに発生する障害を検知する、ステップと、
（ｂ）前記（ａ）のステップで検知された前記障害に対応する復旧方法を決定する、ステップと、
（ｃ）前記障害の解析のために採取が求められる１又は２以上の採取情報、各採取情報の採取に必要となる採取時間、及び各採取情報に付与された優先順位を特定する解析情報を取得する、ステップと、
（ｄ）前記採取情報の採取に使用可能な時間を特定し、そして、前記解析情報に含まれる前記採取時間に基づいて、前記優先順位の順に、特定した前記使用可能な時間内で採取可能な前記採取情報を決定する、ステップと、
（ｅ）前記（ｄ）のステップによって決定された前記採取情報の採取を実行する、ステップと、
（ｆ）前記（ｅ）のステップによる採取の実行後に、前記（ｂ）のステップによって決定された前記復旧方法に従って、前記コンピュータシステムを復旧させる、ステップとを有する、ことを特徴とする。
【００１２】
更に、上記目的を達成するため、本発明におけるプログラムは、障害の発生したコンピュータシステムの復旧をコンピュータによって行うためのプログラムであって、
前記コンピュータに、
（ａ）前記コンピュータシステムに発生する障害を検知する、ステップと、
（ｂ）前記（ａ）のステップで検知された前記障害に対応する復旧方法を決定する、ステップと、
（ｃ）前記障害の解析のために採取が求められる１又は２以上の採取情報、各採取情報の採取に必要となる採取時間、及び各採取情報に付与された優先順位を特定する解析情報を取得する、ステップと、
（ｄ）前記採取情報の採取に使用可能な時間を特定し、そして、前記解析情報に含まれる前記採取時間に基づいて、前記優先順位の順に、特定した前記使用可能な時間内で採取可能な前記採取情報を決定する、ステップと、
（ｅ）前記（ｄ）のステップによって決定された前記採取情報の採取を実行する、ステップと、
（ｆ）前記（ｅ）のステップによる採取の実行後に、前記（ｂ）のステップによって決定された前記復旧方法に従って、前記コンピュータシステムを復旧させる、ステップとを実行させる、ことを特徴とする。
【発明の効果】
【００１３】
以上の特徴により、本発明における障害復旧装置、障害復旧方法、及びプログラムによれば、コンピュータシステムからの、障害発生時にしか採取できない情報の採取を実行しつつ、当該コンピュータシステムの復旧にかかる時間の長期化を抑制することが可能となる。
【図面の簡単な説明】
【００１４】
【図１】図１は、本発明の実施の形態における障害復旧装置の構成を示すブロック図である。
【図２】図２は、図１に示す障害情報データベースに登録されている障害情報の一例を示す図である。
【図３】図３（ａ）は、図１に示す復旧方法データベースに登録されている復旧方法情報の一例を示す図であり、図３（ｂ）は、決定された復旧方法の一例を示す図である。
【図４】図４（ａ）は、図１に示す障害情報データベースに登録されている解析情報の一例を示す図であり、図４（ｂ）は、取得された解析情報の一例を示す図である。
【図５】図５は、図１に示す採取情報決定部が作成した採取情報リストの一例を示す図である。
【図６】図６は、本発明の実施の形態における障害復旧装置の動作を示すフロー図である。
【図７】図７は、図６に示す障害検出処理を具体的に示すフロー図である。
【図８】図８は、図６に示す復旧方法決定処理を具体的に示すフロー図である。
【図９】図９は、図６に示す解析情報取得処理を具体的に示すフロー図である。
【図１０】図１０は、図６に示す採取情報決定処理を具体的に示すフロー図である。
【図１１】図１１は、図１０に示すステップＤ４及びＤ５を更に具体的に示すフロー図である。
【図１２】図１２は、図６に示す情報採取処理を具体的に示すフロー図である。
【図１３】図１３は、図６に示す復旧処理を具体的に示すフロー図である。
【発明を実施するための形態】
【００１５】
（実施の形態１）
以下、本発明の実施の形態における障害復旧装置、障害復旧方法、及びプログラムについて、図１〜図１３を参照しながら説明する。最初に、本実施の形態における障害復旧装置の構成について図１を用いて説明する。図１は、本発明の実施の形態における障害復旧装置の構成を示すブロック図である。
【００１６】
図１に示す本実施の形態における障害復旧装置１は、コンピュータシステム２０に障害が発生すると、コンピュータシステム２０に対して、障害に対応した適切な復旧処理を実行する装置である。図１に示すように、障害復旧装置１は、障害検出部１１と、復旧方法決定部１２と、解析情報取得部１３と、採取情報決定部１４と、情報採取部１５と、復旧実行部１６とを備えている。
【００１７】
障害検出部１１は、対象となるコンピュータシステム２０に発生する障害を検知する。復旧方法決定部１２は、検知された障害に対応する復旧方法を決定する。解析情報取得部１３は、解析情報を取得する。解析情報は、障害の解析のために採取が求められる１又は２以上の採取情報、各採取情報の採取に必要となる採取時間、及び各採取情報に付与された優先順位を特定する。
【００１８】
また、採取情報決定部１４は、採取情報の採取に使用可能な時間を特定し、そして、解析情報に含まれる採取時間に基づいて、優先順位の順に、特定した使用可能な時間内で採取可能な採取情報を決定する。そして、情報採取部１５は、採取情報決定部１４によって決定された採取情報の採取を実行する。また、復旧実行部１６は、情報採取部１５による採取の実行後に、復旧方法決定部１２によって決定された復旧方法に従って、コンピュータシステム２０を復旧させる。
【００１９】
このように、障害復旧装置１では、先ず、発生した障害の解析に必要な情報（採取情報）の中から、採取にかけることが認められている時間、各採取情報の採取時間、及び優先順位を考慮して、実際に採取できる採取情報が選出される。そして、選出された採取情報の採取が行われ、その後、障害の復旧処理が行われる。
【００２０】
つまり、障害復旧装置１では、限られた時間内で、解析に有用な情報が優先順位の高い順に出来るだけ多く採取され、直ちに復旧処理が実行される。よって、障害復旧装置１によれば、コンピュータシステム２０からの、障害発生時にしか採取できない情報の採取を実行しつつ、コンピュータシステム２０の復旧にかかる時間の長期化を抑制することが可能となる。
【００２１】
ここで、図１に加えて図２〜図５を用いて、障害復旧装置１の構成を更に具体的に説明する。本実施の形態では、図１に示すように、障害復旧装置１は、障害情報データベース１１１、復旧方法データベース１２２、解析情報データベース１３２、及び運用ポリシーデータベース１４２に接続されている。
【００２２】
障害検出部１１は、本実施の形態では、コンピュータシステム２０に発生した障害を検出すると、障害情報データベース１１１にアクセスし、発生した障害の識別子（障害情報ＩＤ）を特定する。
【００２３】
具体的には、障害情報データベース１１１は、図２に示す障害情報を格納している。図２は、図１に示す障害情報データベースに登録されている障害情報の一例を示す図である。図２に示すように、障害情報は、障害内容と、障害内容毎に付与された障害情報ＩＤとを含んでいる。なお、図２の例では、障害情報ＩＤとしては、具体的な障害の発生箇所が用いられているが、本実施の形態はこれに限定されるものではない。
【００２４】
よって、障害検出部１１は、検出した障害の内容を特定し、これと図２に示す障害情報とを照らし合わせ、該当する障害情報ＩＤを特定する。また、障害検出部１１は、特定した障害情報ＩＤを、復旧方法決定部１２と、解析情報取得部１３とに送信する。
【００２５】
また、本実施の形態では、復旧方法決定部１２は、障害検出部１１から障害情報ＩＤを受信すると、復旧方法データベース１２２にアクセスする。そして、復旧方法決定部１２は、障害検出部１１から受信した障害情報ＩＤをキーとして用いて、復旧方法を決定する。
【００２６】
具体的には、復旧方法データベース１２２は、図３（ａ）に示す復旧方法情報を格納している。図３（ａ）は、図１に示す復旧方法データベースに登録されている復旧方法情報の一例を示す図である。図３（ａ）に示すように、復旧方法情報は、障害情報ＩＤ毎に予め設定された、具体的な復旧処理と、各復旧処理の実行に必要な時間（復旧時間）とを含んでいる。各復旧処理内容及び各復旧時間は、各障害に対応している。
【００２７】
従って、復旧方法決定部１２は、障害検出部１１から障害情報ＩＤを受信すると、これに対応する復旧処理内容及び復旧時間を特定し、これらを復旧方法として決定する。図３（ｂ）は、決定された復旧方法の一例を示す図である。図３（ｂ）の例では、発生した障害の障害情報ＩＤが「メモリ１」である場合の復旧方法が示されている。また、復旧方法決定部１２は、決定した復旧方法を特定する情報（決定復旧方法情報）１２１を、採取情報決定部１４と、復旧実行部１６とに送信する。
【００２８】
また、本実施の形態では、解析情報取得部１３は、障害検出部１１から障害情報ＩＤを受信すると、解析情報データベース１３２にアクセスする。そして、解析情報取得部１３は、障害検出部１１から受信した障害情報ＩＤをキーとして用いて、検出された障害に対応する解析情報を取得する。
【００２９】
具体的には、解析情報データベース１３２は、図４（ａ）に示す解析情報を格納している。図４（ａ）は、図１に示す障害情報データベースに登録されている解析情報の一例を示す図である。図４（ａ）に示すように、解析情報は、障害情報ＩＤ毎に予め設定された、１又は２以上の採取情報、各採取情報の採取時間、及び優先順位を含んでいる。なお、優先順位は、対応する障害ＩＤが同一の採取情報間で付与されている。
【００３０】
従って、解析情報取得部１３は、障害検出部１１から障害情報ＩＤを受信すると、これに対応する、１又は２以上の採取情報、各採取情報の採取時間、及び優先順位を特定し、これらを、検出された障害に対応する解析情報として取得する。図４（ｂ）は、取得された解析情報の一例を示す図である。図４（ｂ）の例では、発生した障害の障害情報ＩＤが「メモリ１」である場合の解析情報が示されている。また、解析情報取得部１３は、取得した解析情報（取得解析情報）を採取情報決定部１４に送信する。
【００３１】
採取情報決定部１４は、本実施の形態では、先ず、運用ポリシーデータベース１４２にアクセスする。運用ポリシーデータベースには、復旧処理の運用ポリシーが格納されている。また、運用ポリシーは、復旧処理に使用できる時間、即ち、障害が発生してから復旧が完了するまでに許容可能な時間（復旧許容時間）を規定している。よって、採取情報決定部１４は、運用ポリシーデータベース１４２から、復旧許容時間を特定する。
【００３２】
そして、採取情報決定部１４は、復旧許容時間を特定すると、これと、決定復旧方法情報１２１（図３（ｂ）（参照））に含まれる復旧時間とを対比して、解析用の採取情報の採取に使用可能な時間（解析許容時間）を特定する。続いて、採取情報決定部１４は、選択解析情報（図４（ｂ）参照）に含まれている各採取情報の採取時間に基づき、各採取情報の優先順位の順に、解析許容時間内で採取できる採取情報を決定する。
【００３３】
また、採取情報決定部１４は、図５に示すように、決定した採取情報を特定するリスト（採取情報リスト）１４１を作成し、これを情報採取部１５に送信する。図５は、図１に示す採取情報決定部が作成した採取情報リストの一例を示す図である。
【００３４】
情報採取部１５は、本実施の形態では、採取情報決定部１４から採取情報リスト１４１を受信すると、コンピュータシステム２０にアクセスする。そして、情報採取部１５は、コンピュータシステム２０から、採取情報リスト１４１（図５参照）に含まれる採取情報を取得する。採取情報の取得が終了すると、情報採取部１５は、そのことを復旧実行部１６に通知する。
【００３５】
復旧実行部１６は、本実施の形態では、情報採取部１５からの通知を受けると、復旧方法決定部１２から受信した決定復旧方法情報１２１（図３（ｂ）参照）から、復旧処理を特定し、特定した復旧処理を実行する。
【００３６】
但し、本実施の形態では、採取情報決定部１４は、解析許容時間内で採取可能な採取情報が存在しない場合（例えば、復旧許容時間が０（ゼロ）の場合等）は、採取情報の採取を実行しないことを情報採取部１４に通知する。この場合、復旧実行部１６は、直ちに、コンピュータシステム２０の復旧処理を実行する。
【００３７】
次に、本発明の実施の形態における障害復旧装置１の動作について図６〜図１３を用いて説明する。先ず、障害復旧装置１の全体の動作を図６に基づいて説明する。図６は、本発明の実施の形態における障害復旧装置の動作を示すフロー図である。以下の説明においては、適宜図１を参酌する。また、本実施の形態では、障害復旧装置１を動作させることによって、本実施の形態における障害復旧方法が実施される。よって、本実施の形態における障害復旧方法の説明は、以下の障害復旧装置１の説明に代える。
【００３８】
図６に示すように、最初に、障害検出部１１によって、コンピュータシステム２０に発生した障害の検出が行われる（ステップＳ１）。次に、復旧方法決定部１２は、検出された障害に対応する復旧方法を決定する（ステップＳ２）。続いて、解析情報取得部１３は、検出された障害に対応する解析情報を取得する（ステップＳ３）。
【００３９】
次に、採取情報決定部１４によって、採取情報の採取に使用可能な時間（解析許容時間）が特定され、検出された障害の解析に必要な採取情報の中から、解析許容時間内に採取が行われる採取情報が決定される（ステップＳ４）。
【００４０】
次に、情報採取部１５によって、コンピュータシステム２０から、ステップＳ４で決定された採取情報の採取が行われる（ステップＳ５）。その後、復旧実行部１６によって、ステップＳ２で決定された復旧方法が実行され、コンピュータシステム２０の復旧処理が行われる（ステップＳ６）。ステップＳ６の実行により、障害復旧装置１における処理は終了する。
【００４１】
ここで、図６に示したステップＳ１〜Ｓ６それぞれを図７〜図１３を用いて更に具体的に説明する。先ず、図７を用いて、図６に示したステップＳ１（障害検出処理）について説明する。図７は、図６に示す障害検出処理を具体的に示すフロー図である。
【００４２】
図７に示すように、先ず、障害検出部１１は、コンピュータシステム２０に発生した障害を検出する（ステップＡ１）。そして、障害検出部１１は、障害情報データベース１１１に問い合わせを行い、検出した障害の障害情報ＩＤ（図２参照）を特定する（ステップＡ２）。例えば、検出された障害が、「メモリ不正アクセス」である場合は、障害検出部１１は、障害情報データベース１１１に格納されている障害情報を参照し、該当する障害情報ＩＤとして、「メモリ１」を特定する。
【００４３】
次に、障害検出部１１は、特定した障害情報ＩＤ、例えば「メモリ１」を、復旧方法決定部１２に送信し（ステップＡ３）、更に、これを解析情報取得部１３にも送信する（ステップＡ４）。ステップＡ４の実行により、図６に示したステップＳ１は終了する。なお、本実施の形態において、ステップＡ３とステップＡ４とは同時に実行されても良いし、ステップＡ４の実行後にステップＡ３が実行されても良い。
【００４４】
続いて、図８を用いて、図６に示したステップＳ２（復旧方法決定処理）について説明する。図８は、図６に示す復旧方法決定処理を具体的に示すフロー図である。
【００４５】
図８に示すように、先ず、復旧方法決定部１２は、障害検出部１１から障害情報ＩＤを受信する（ステップＢ１）。次に、復旧方法決定部１２は、復旧方法データベース１２２に問い合わせを行い、受信した障害情報ＩＤに対応する復旧方法（復旧処理、復旧時間）を決定する（ステップＢ２）。
【００４６】
例えば、ステップＢ１において、復旧方法決定部１２が、障害情報ＩＤとして「メモリ１」を受信していたとする。この場合、復旧方法決定部１２は、「メモリ１」をキーとし、これを、復旧方法データベース１２２に格納されている復旧方法情報（図３（ａ）参照）に照らし合わせる。そして、復旧方法決定部１２は、復旧方法情報の中から、「メモリ１」に対応する復旧処理「サーバ再起動」と、同じく「メモリ１」に対応する復旧時間「６００」とを特定し、これらを決定復旧方法とする（図３（ｂ）参照）。
【００４７】
次に、復旧方法決定部１２は、ステップＢ２で得られた決定復旧方法を特定する情報（決定復旧方法情報）１２１を、採取情報決定部１４に送信し（ステップＢ３）、更に、これを復旧実行部１６にも送信する（ステップＢ４）。ステップＢ４の実行により、図６に示したステップＳ２は終了する。なお、本実施の形態において、ステップＢ３とステップＢ４とは同時に実行されても良いし、ステップＢ４の実行後にステップＡ３が実行されても良い。
【００４８】
続いて、図９を用いて、図６に示したステップＳ３（解析情報取得処理）について説明する。図９は、図６に示す解析情報取得処理を具体的に示すフロー図である。
【００４９】
図９に示すように、先ず、解析情報取得部１３は、障害検出部１１から障害情報ＩＤを受信する（ステップＣ１）。次に、解析情報取得部１３は、解析情報データベース１３２に問い合わせを行い、受信した障害情報ＩＤに対応する解析情報を取得する（ステップＣ２）。
【００５０】
例えば、ステップＣ１において、解析情報取得部１３が、障害情報ＩＤとして「メモリ１」を受信していたとする。この場合、解析情報取得部１３は、「メモリ１」に対応する採取情報、各採取情報に対応する採取時間及び優先度を特定する。具体的には、解析情報として、メモリダンプ（採取時間：１２０秒、優先度：１）、メモリ性能情報（採取時間：３０秒、優先度：２）、ＯＳダンプ（採取時間６００秒、優先度：３）、プロセス起動ログ（採取時間：３０秒、優先度：４）が取得される（図４（ｂ）参照）。
【００５１】
次に、解析情報取得部１３は、ステップＣ２で取得された解析情報（採取情報、採取時間、優先度）を、採取情報決定部１４に送信する（ステップＣ３）。ステップＣ３の実行により、図６に示したステップＳ３は終了する。
【００５２】
続いて、図１０を用いて、図６に示したステップＳ４（採取情報決定処理）について説明する。図１０は、図６に示す採取情報決定処理を具体的に示すフロー図である。
【００５３】
図１０に示すように、先ず、採取情報決定部１４は、復旧方法決定部１２から決定復旧方法情報１２１（図３（ｂ）参照）を受信し（ステップＤ１）、更に、解析情報取得部１３から取得解析情報１３１（図４（ｂ）参照）を受信する（ステップＤ２）。
【００５４】
次に、採取情報決定部１４は、運用ポリシーデータベース１４２に問い合わせを行い、運用ポリシーに規定されている復旧許容時間を特定する（ステップＤ３）。次に、採取情報決定部１４は、復旧許容時間と、決定復旧方法情報１２１に含まれる復旧時間とを対比して、解析許容時間を特定する（ステップＤ４）。
【００５５】
次に、採取情報決定部１４は、ステップＤ４で特定された解析許容時間と、取得解析情報１３１に含まれる各採取情報の採取時間及び優先度とに基づいて、解析許容時間内で採取できる採取情報を決定し、採取情報リスト１４１（図５参照）を作成する（ステップＤ５）。
【００５６】
その後、採取情報決定部１４は、ステップＤ５で作成した採取情報リスト１４１を、情報採取部１５に送信する（ステップＤ６）。ステップＤ６の実行により、図６に示したステップＳ４は終了する。
【００５７】
ここで、ステップＤ４及びＤ５について、図１１を用いて更に具体的に説明する。図１１は、図１０に示すステップＤ４及びＤ５を更に具体的に示すフロー図である。図１１に示すステップＥ１〜Ｅ８のうち、ステップＥ１がステップＤ４に相当し、ステップＥ２〜Ｅ８がステップＤ５に相当する。
【００５８】
図１１に示すように、採取情報決定部１４は、解析許容時間を特定する（ステップＥ１）。具体的には、採取情報決定部１４は、下記の数１を用い、運用ポリシーデータベース１４２に登録されている復旧許容時間から、決定復旧方法情報１２１に含まれる復旧時間（図３（ａ）及び（ｂ）参照）を減算して、解析許容時間を算出する。
【００５９】
（数１）
解析許容時間＝復旧許容時間−復旧時間
【００６０】
次に、採取情報決定部１４は、算出した解析許容時間が０（ゼロ）より大きいかどうかを判定する（ステップＥ２）。ステップＥ２の判定の結果、解析許容時間が０（ゼロ）より大きくない場合、即ち、０（ゼロ）以下である場合は、採取情報決定部１４は、ステップＥ８を実行する。ステップＥ８の内容については後述する。
【００６１】
一方、ステップＥ２の判定の結果、解析許容時間が０（ゼロ）より大きい場合は、採取情報決定部１４は、取得解析情報１３１（図４（ｂ）参照）が空であるかどうかを判定する（ステップＥ３）。具体的には、取得解析情報１３１として、採取すべき１又は２以上の採取情報と、各採取情報に対応する採取時間及び優先度とで構成されたリストが存在しているかどうかを判定する。
【００６２】
ステップＥ３の判定の結果、取得解析情報１３１が空である場合は、即ち、採取すべき採取情報が存在しない場合は、採取情報決定部１４は、ステップＥ８を実行する。一方、ステップＥ３の判定の結果、取得解析情報１３１が空でない場合は、採取情報決定部１４は、ステップＥ４を実行する。
【００６３】
ステップＥ４では、採取情報決定部１４は、取得解析情報１３１の中から最も優先度が高い採取情報を選択し、下記の数２を用いて解析残時間を算出する。なお、以下の数２において、「該当採取時間」は、ステップＥ４で選択された採取情報についての採取時間を意味している（図４（ａ）及び（ｂ）参照）。また、解析残時間は、一時的な数値であり、図１１に示す処理だけで利用される値である。
【００６４】
（数２）
解析残時間＝解析許容時間−該当採取時間
【００６５】
次に、ステップＥ４が終了すると、採取情報決定部１４は、ステップＥ４における算出が終了した採取情報を、取得解析情報１３１中の採取情報のリストから削除する（ステップＥ５）。そして、採取情報決定部１４は、ステップＥ４で算出した解析残時間が０（ゼロ）より大きいかどうかを判定する（ステップＥ６）。
【００６６】
ステップＥ６の判定の結果、解析残時間が０（ゼロ）より大きくない場合は、ステップＥ４で選択された採取情報は解析許容時間との関係から適切でないため、採取情報決定部１４は、再度、ステップＥ３以降を実行する。
【００６７】
一方、ステップＥ６の判定の結果、解析残時間が０（ゼロ）より大きい場合は、採取情報決定部１４は、ステップＥ４で選択された採取情報を採取情報リスト１４１に追加し、更に、解析残時間を解析許容時間（解析許容時間＝解析残時間）に設定する（ステップＥ７）。
【００６８】
そして、ステップＥ７の実行後、採取情報決定部１４は、再度ステップＥ２以降を実施する。ステップＥ２〜Ｅ７が実行されることにより、解析許容時間内で採取が可能な採取情報が優先順位の順に特定される。
【００６９】
また、ステップＥ８において、採取情報決定部１４は、採取情報リスト１４１を確定する。確定された採取情報リスト１４１は、情報採取部１５に送信される。
【００７０】
ここで、ステップＥ１〜Ｅ８について、具体例に基づいて説明する。先ず、復旧許容時間が「２０００秒」、決定復旧方法情報１２１が図３（ｂ）の例、取得解析情報１３１が図４（ｂ）の例である場合について説明する。
【００７１】
上記の場合、ステップＥ１において、解析許容時間の値は、復旧許容時間「２０００」から復旧時間「６００」（図３（ｂ）参照）を減算して得られる値「１４００」となる。次に、ステップＥ２で解析許容時間の値を判定すると、「１４００＞０」であるので、ステップＥ３が実行される。
【００７２】
ステップＥ３では、採取情報決定部１４は、取得解析情報１３１が「メモリダンプ」、「メモリ性能情報」、「ＯＳダンプ」、及び「プロセス起動ログ」を含むため（図４（ｂ）参照）、「空」でないと判断し、ステップＥ４を実行する。
【００７３】
ステップＥ４では、採取情報決定部１４は、最も優先度の高い（優先度＝「１」）採取情報「メモリダンプ」を選択し、解析残時間を計算する。この場合、復旧許容時間は「１４００」、「メモリダンプ」の採取時間は「１２０」であるので、解析残時間は「１２８０」となる。
【００７４】
また、解析残時間の算出後、ステップＥ５では、採取情報決定部１４は、取得解析情報１３１の中の採取情報のリストから「メモリダンプ」の行を削除する。その後、採取情報決定部１４は、ステップＥ６において、解析残時間の値が０（ゼロ）より大きいかどうかを判定する。
【００７５】
解析残時間は「１２８０」であり、０（ゼロ）より大きいので、採取情報決定部１４は、ステップＥ７において、採取情報リスト１４１（図５参照）に「メモリダンプ」を追加し、解析許容時間の値を、解析残時間の値、即ち「１２８０」に更新する。その後、採取情報決定部１４は、更新された解析許容時間を用いて、再度、ステップＥ２以降を実行する。
【００７６】
再度のステップＥ２以降の実行により、図４（ｂ）に示された「メモリ性能情報」が採取情報リスト１４１に追加され、解析許容時間は「１２５０」に更新される。更に、「ＯＳダンプ」が採取情報リスト１４１に追加され、解析許容時間は「６５０」に更新される。続いて、「プロセス起動ログ」も採取情報リスト１４１に追加され、最終的に解析許容時間は「６２０」となる。
【００７７】
また、プロセス起動ログの採取情報リスト１４１の追加により、取得解析情報１３１は「空」となるので、プロセス起動ログの追加後のステップＥ３では「Ｙｅｓ」と判断される。よって、ステップＥ８が実行されて、最終的な採取情報リスト１４１が確定する。この場合は、採取情報リスト１４１は、図５の例と異なり、「メモリダンプ」、「メモリ性能情報」、「ＯＳダンプ」、及び「プロセス起動ログ」の全てを含んでいる。このように、運用ポリシーで設定されている復旧許容時間が十分にある場合は、解析に必要な全ての情報の採取が可能となる。
【００７８】
次に、復旧許容時間が「１０００秒」、決定復旧方法情報１２１が図３（ｂ）の例、取得解析情報１３１が図４（ｂ）の例である場合について説明する。この場合では、メモリダンプ及びメモリ性能情報を選択した後、更新された解析許容時間の値は「２５０」となる。よって、ステップＥ４において「ＯＳダンプ」を選択すると、「ＯＳダンプ」の採取時間が「６００」と長いため、解析残時間は「−３５０」となる。
【００７９】
よって、ステップＥ６では、「−３５０＜０」となって、「Ｎｏ」と判断され、ステップＥ３に戻ることになる。このため、「ＯＳダンプ」は採取情報リスト１４１に追加されず、また、解析許容時間の値は更新されずに、「２５０」のままとなる。
【００８０】
一方、優先順位がＯＳダンプの次に設定されている「プロセス起動ログ」の採取時間は「３０」と短いため、ステップＥ４における解析残時間は「２２０」となる。よって、採取情報決定部１４は、「プロセス起動ログ」を採取情報リスト１４１に追加する。本例では、最終的に、ステップＥ８において、採取情報リスト１４１は、「メモリダンプ」、「メモリ性能情報」、及び「プロセス起動ログ」のみを含むこととなる。
【００８１】
このように、運用ポリシーで設定されている復旧許容時間が足りない場合は、復旧許容時間以上にシステムが停止されないようにするため、障害復旧装置１は、優先度が高い情報から順に、可能な限り多くの情報の採取が行われる。
【００８２】
次に、復旧許容時間が「０秒」、決定復旧方法情報１２１が図３（ｂ）の例、取得解析情報１３１が図４（ｂ）の例である場合について説明する。この場合では、ステップＥ１の実行により、解析許容時間は、復旧許容時間「０」から復旧時間「６００」を引いた値、「−６００」となる。
【００８３】
よって、ステップＥ２では、「Ｎｏ」と判断されるので、その後、ステップＥ８が実行される。この場合、採取情報リスト１４１には採取情報は追加されておらず、採取情報リスト１４１は「空」の状態である。
【００８４】
この結果、後処理において、情報採取部１５は何ら情報の採取を実施せず、直ちに、復旧実行部１６が復旧処理を実施することになる。このように、運用ポリシーで設定されている復旧許容時間が存在しない場合は、障害復旧装置１は、情報の採取よりも復旧を優先し、直ちに復旧を実施する。
【００８５】
続いて、図１２を用いて、図６に示したステップＳ５（採取処理）について説明する。図１２は、図６に示す情報採取処理を具体的に示すフロー図である。
【００８６】
図１２に示すように、先ず、情報採取部１５は、採取情報決定部１４から採取情報リスト１４１（図５参照）を受信する（ステップＥ１）。次に、情報採取部１５は、採取情報リスト１４１に含まれる採取情報の採取を実施する（ステップＥ２）。例えば、採取情報リスト１４１が、図５に示すリストである場合は、情報採取部１５は、コンピュータシステム２０（図１参照）から、メモリダンプとメモリ性能情報とを採取する。その後、情報採取部１５は、復旧実行部１６に復旧の指示を行う（ステップＥ３）。
【００８７】
続いて、図１３を用いて、図６に示したステップＳ５（復旧処理）について説明する。図１３は、図６に示す復旧処理を具体的に示すフロー図である。
【００８８】
図１３に示すように、先ず、復旧実行部１６は、復旧方法決定部１２から決定復旧方法情報１２１を受信し（ステップＧ１）、更に、情報採取部１５から復旧を実行する旨の指示（復旧指示）を受け取る（ステップＧ２）。なお、ステップＧ１及びＧ２の順序は入れ替わっても良いし、両者は同時に実行されても良い。
【００８９】
その後、復旧実行部１６は、ステップＧ１で受け取った決定復旧方法情報１２１で規定されている復旧処理（図３（ａ）及び（ｂ）参照）を実行する（ステップＧ３）。このように、本実施の形態では、採取情報の採取が終了した後に、復旧処理が実施される。なお、解析許容時間内に採取時間が収まる採取情報が存在しない場合は、復旧実行部１６は、採取情報の採取を待つことなく、ステップＧ１〜Ｇ３を実行する。
【００９０】
以上のように、本実施の形態によれば、予め設定されている復旧許容時間の範囲内で、障害発生時にしか採取できない情報をできる限り多く採取することができる。また、採取される情報は、解析に有用かどうか等の点から予め設定された優先度に基づいて選択されており、解析に有効な情報である。また、本実施の形態によれば、システム停止時間を許容以上に延ばすこともなく、障害を自動的に復旧することもできる。
【００９１】
また、本発明の実施の形態におけるプログラムは、コンピュータに、図６に示すステップＳ１〜Ｓ６を実行させるプログラムであれば良い。このプログラムをコンピュータにインストールし、実行することによって、本実施の形態における障害復旧装置１と障害復旧方法とを実現することができる。この場合、コンピュータのＣＰＵ（Central Processing
Unit）は、障害検出部１１、復旧方法決定部１２、解析情報取得部１３、採取情報決定部１４、情報採取部１５及び復旧実行部１６として機能し、処理を行なう。
【００９２】
また、本実施の形態では、障害情報データベース１１１、復旧方法データベース１２２、解析情報データベース１３２、及び運用ポリシーデータベース１４２は、コンピュータに備えられたハードディスク等の記憶装置に、これらを構成するデータファイルを格納することによって実現できる。なお、記憶装置は、ネットワークを介してコンピュータに接続されていても良い。
【００９３】
なお、本実施の形態では、このプログラムがインストールされるコンピュータは、対象となるコンピュータシステム２０（図１参照）を構成するコンピュータであっても良い。この場合は、障害復旧装置１は、コンピュータシステム２０の内部に構築されている。
【産業上の利用可能性】
【００９４】
以上のように、本発明によれば、対象システムからの、障害発生時にしか採取できない情報の採取を実行しつつ、対象システムの復旧にかかる時間の長期化を抑制することができる。よって、本発明は、コンピュータシステムにおける障害の復旧に有用である。
【符号の説明】
【００９５】
１  障害復旧装置
１１  障害傑出部
１２  復旧方法決定部
１３  解析情報取得部
１４  採取情報決定部
１５  情報採取部
１６  復旧実行部
２０  コンピュータシステム
１１１  障害情報データベース
１２１  決定復旧方法情報
１２２  復旧方法データベース
１３１  取得解析情報
１３２  解析情報データベース
１４１  採取情報リスト
１４２  運用ポリシーデータベース
【図１】
0005459472.tif 000002
【図２】
0005459472.tif 000003
【図３】
0005459472.tif 000004
【図４】
0005459472.tif 000005
【図５】
0005459472.tif 000006
【図６】
0005459472.tif 000007
【図７】
0005459472.tif 000008
【図８】
0005459472.tif 000009
【図９】
0005459472.tif 000010
【図１０】
0005459472.tif 000011
【図１１】
0005459472.tif 000012
【図１２】
0005459472.tif 000013
【図１３】
0005459472.tif 000014