(57)【要約】【課題】  コストを削減しながらバックアップの失敗を回避できる制御装置等を提供する。【解決手段】  本発明の一態様に係る制御装置は、第１の記憶装置にバックアップを行う情報処理装置から、前記バックアップにおけるエラーの情報を含む通知を受信する監視手段と、前記通知に基づいて、前記バックアップにおけるエラーを検出し、当該エラーの原因が前記第１の記憶装置の障害であるか否かを特定する障害解析を行う解析手段と、バックアップ先識別子を受信するのに応じて前記バックアップ先識別子によって特定される記憶装置にバックアップを行う前記情報処理装置に対して、前記エラーの原因が前記第１の記憶装置の障害である場合に、当該情報処理装置が通信可能である第２の記憶装置の識別子を、前記バックアップ先の識別子として送信する実行手段と、を備える。【選択図】      図７
2016157254.tif 000002
【特許請求の範囲】
【請求項１】
第１の記憶装置にバックアップを行う情報処理装置から、前記バックアップにおけるエラーの情報を含む通知を受信する監視手段と、
前記通知に基づいて、前記バックアップにおけるエラーを検出し、当該エラーの原因が前記第１の記憶装置の障害であるか否かを特定する障害解析を行う解析手段と、
バックアップ先識別子を受信するのに応じて前記バックアップ先識別子によって特定される記憶装置にバックアップを行う前記情報処理装置に対して、前記エラーの原因が前記第１の記憶装置の障害である場合に、当該情報処理装置が通信可能である第２の記憶装置の識別子を、前記バックアップ先の識別子として送信する実行手段と、
を備える制御装置。
【請求項２】
前記解析手段は、前記通知に基づいて、前記第１の記憶装置の復旧を検出し、
前記実行手段は、反映元識別子を受信するのに応じて、前記反映元識別子によって特定される記憶装置に行われたバックアップを、前記第１の記憶装置に格納する前記情報処理装置に対して、前記第１の記憶装置の復旧が検出された場合に、前記第２の記憶装置の識別子を、前記反映元識別子として送信する
請求項１に記載の制御装置。
【請求項３】
前記情報処理装置は、バックアップソフトウェアの制御によって、前記バックアップと、前記通知の送信と、受信したコマンドの実行とを行い、
前記制御装置は、
前記バックアップソフトウェアの種類毎に、前記通知の特徴である通知特徴と、前記通知における、前記バックアップにおける前記第１の記憶装置の障害によってエラーが発生したことを表すパターンと、を記憶する情報記憶手段をさらに備え、
前記解析手段は、前記通知と前記通知特徴とを比較することによって、前記情報処理装置が実行する前記バックアップソフトウェアの種類を特定し、さらに、前記通知において、特定された前記バックアップソフトウェアの種類に応じた前記パターンを検出することによって、前記障害解析を行い、
前記実行手段は、前記バックアップ先識別子として前記第２の記憶装置の識別子を含み、種類が特定された前記バックアップソフトウェアに応じた、前記バックアップ先識別子によって特定される記憶装置へのバックアップを行うコマンドを生成し、生成した前記コマンドを前記情報処理装置に送信する
請求項１又は２に記載の制御装置。
【請求項４】
前記第２の記憶装置と、
請求項１乃至３のいずれか１項に記載の制御装置と、
を含む制御システム。
【請求項５】
第１の記憶装置にバックアップを行う情報処理装置から、前記バックアップにおけるエラーの情報を含む通知を受信し、
前記通知に基づいて、前記バックアップにおけるエラーを検出し、当該エラーの原因が前記第１の記憶装置の障害であるか否かを特定する障害解析を行い、
バックアップ先識別子を受信するのに応じて前記バックアップ先識別子によって特定される記憶装置にバックアップを行う前記情報処理装置に対して、前記エラーの原因が前記第１の記憶装置の障害である場合に、当該情報処理装置が通信可能である第２の記憶装置の識別子を、前記バックアップ先の識別子として送信する、
制御方法。
【請求項６】
前記通知に基づいて、前記第１の記憶装置の復旧を検出し、
反映元識別子を受信するのに応じて、前記反映元識別子によって特定される記憶装置に行われたバックアップを、前記第１の記憶装置に格納する前記情報処理装置に対して、前記第１の記憶装置の復旧が検出された場合に、前記第２の記憶装置の識別子を、前記反映元識別子として送信する
請求項５に記載の制御方法。
【請求項７】
前記情報処理装置は、バックアップソフトウェアの制御によって、前記バックアップと、前記通知の送信と、受信したコマンドの実行とを行い、
前記バックアップソフトウェアの種類毎に、前記通知の特徴である通知特徴と、前記通知における、前記バックアップにおける前記第１の記憶装置の障害によってエラーが発生したことを表すパターンと、を情報記憶手段記憶し、
前記通知と前記通知特徴とを比較することによって、前記情報処理装置が実行する前記バックアップソフトウェアの種類を特定し、さらに、前記通知において、特定された前記バックアップソフトウェアの種類に応じた前記パターンを検出することによって、前記障害解析を行い、
前記バックアップ先識別子として前記第２の記憶装置の識別子を含み、種類が特定された前記バックアップソフトウェアに応じた、前記バックアップ先識別子によって特定される記憶装置へのバックアップを行うコマンドを生成し、生成した前記コマンドを前記情報処理装置に送信する
請求項５又は６に記載の制御方法。
【請求項８】
コンピュータを、
第１の記憶装置にバックアップを行う情報処理装置から、前記バックアップにおけるエラーの情報を含む通知を受信する監視手段と、
前記通知に基づいて、前記バックアップにおけるエラーを検出し、当該エラーの原因が前記第１の記憶装置の障害であるか否かを特定する障害解析を行う解析手段と、
バックアップ先識別子を受信するのに応じて前記バックアップ先識別子によって特定される記憶装置にバックアップを行う前記情報処理装置に対して、前記エラーの原因が前記第１の記憶装置の障害である場合に、当該情報処理装置が通信可能である第２の記憶装置の識別子を、前記バックアップ先の識別子として送信する実行手段と、
して動作させる制御プログラム。
【請求項９】
コンピュータを、
前記通知に基づいて、前記第１の記憶装置の復旧を検出する前記解析手段と、
反映元識別子を受信するのに応じて、前記反映元識別子によって特定される記憶装置に行われたバックアップを、前記第１の記憶装置に格納する前記情報処理装置に対して、前記第１の記憶装置の復旧が検出された場合に、前記第２の記憶装置の識別子を、前記反映元識別子として送信する前記実行手段と、
して動作させる請求項８に記載の制御プログラム。
【請求項１０】
前記情報処理装置は、バックアップソフトウェアの制御によって、前記バックアップと、前記通知の送信と、受信したコマンドの実行とを行い、
コンピュータを、
前記バックアップソフトウェアの種類毎に、前記通知の特徴である通知特徴と、前記通知における、前記バックアップにおける前記第１の記憶装置の障害によってエラーが発生したことを表すパターンと、を記憶する情報記憶手段と、
前記通知と前記通知特徴とを比較することによって、前記情報処理装置が実行する前記バックアップソフトウェアの種類を特定し、さらに、前記通知において、特定された前記バックアップソフトウェアの種類に応じた前記パターンを検出することによって、前記障害解析を行う前記解析手段と、
前記バックアップ先識別子として前記第２の記憶装置の識別子を含み、種類が特定された前記バックアップソフトウェアに応じた、前記バックアップ先識別子によって特定される記憶装置へのバックアップを行うコマンドを生成し、生成した前記コマンドを前記情報処理装置に送信する前記実行手段と、
して動作させる請求項８又は９に記載の制御プログラム。
【発明の詳細な説明】
【技術分野】
【０００１】
本発明は、情報処理装置によるデータのバックアップを制御する技術に関する。
【背景技術】
【０００２】
情報処理装置によるデータのバックアップが失敗した場合、データが失われる場合がある。データが失われることによる影響は、非常に大きくなる可能性がある。バックアップの失敗は、例えば、バックアップに必要なハードウェアの障害などによって生じる。情報処理装置によるデータのバックアップの失敗を回避する技術の例が、例えば特許文献１によって開示されている。
【０００３】
特許文献１に記載されているバックアップ実施システムは、データをバックアップするのに必要な資源及び経路が、複数系統分確保された場合に、確保された資源及び経路を用いてバックアップを行う。
【先行技術文献】
【特許文献】
【０００４】
【特許文献１】特開２００２−２９７４５６号公報
【発明の概要】
【発明が解決しようとする課題】
【０００５】
特許文献１に記載されている技術では、データをバックアップするのに必要な資源及び経路が、複数系統分確保されなければ、バックアップを行うことができない。言い換えると、バックアップを行うために、多くのコストが必要である。
【０００６】
本発明の目的の１つは、コストを削減しながらバックアップの失敗を回避できる制御装置等を提供することにある。
【課題を解決するための手段】
【０００７】
本発明の一態様に係る制御装置は、第１の記憶装置にバックアップを行う情報処理装置から、前記バックアップにおけるエラーの情報を含む通知を受信する監視手段と、前記通知に基づいて、前記バックアップにおけるエラーを検出し、当該エラーの原因が前記第１の記憶装置の障害であるか否かを特定する障害解析を行う解析手段と、バックアップ先識別子を受信するのに応じて前記バックアップ先識別子によって特定される記憶装置にバックアップを行う前記情報処理装置に対して、前記エラーの原因が前記第１の記憶装置の障害である場合に、当該情報処理装置が通信可能である第２の記憶装置の識別子を、前記バックアップ先の識別子として送信する実行手段と、を備える。
【０００８】
本発明の一態様に係る制御方法は、第１の記憶装置にバックアップを行う情報処理装置から、前記バックアップにおけるエラーの情報を含む通知を受信し、前記通知に基づいて、前記バックアップにおけるエラーを検出し、当該エラーの原因が前記第１の記憶装置の障害であるか否かを特定する障害解析を行い、バックアップ先識別子を受信するのに応じて前記バックアップ先識別子によって特定される記憶装置にバックアップを行う前記情報処理装置に対して、前記エラーの原因が前記第１の記憶装置の障害である場合に、当該情報処理装置が通信可能である第２の記憶装置の識別子を、前記バックアップ先の識別子として送信する。
【０００９】
本発明の一態様に係る制御プログラムは、コンピュータを、第１の記憶装置にバックアップを行う情報処理装置から、前記バックアップにおけるエラーの情報を含む通知を受信する監視手段と、前記通知に基づいて、前記バックアップにおけるエラーを検出し、当該エラーの原因が前記第１の記憶装置の障害であるか否かを特定する障害解析を行う解析手段と、バックアップ先識別子を受信するのに応じて前記バックアップ先識別子によって特定される記憶装置にバックアップを行う前記情報処理装置に対して、前記エラーの原因が前記第１の記憶装置の障害である場合に、当該情報処理装置が通信可能である第２の記憶装置の識別子を、前記バックアップ先の識別子として送信する実行手段と、して動作させる。
【発明の効果】
【００１０】
本発明には、コストを削減しながらバックアップの失敗を回避できるという効果がある。
【図面の簡単な説明】
【００１１】
【図１】図１は、本発明の第１の実施形態の制御システム１の構成の例を表すブロック図である。
【図２】図２は、本発明の第１の実施形態の制御システム１の全体像を模式的に表す図である。
【図３】図３は、情報テーブルの例を模式的に表す図である。
【図４】図４は、本発明の第１の実施形態の制御システム１の動作の例を表すフローチャートである。
【図５】図５は、本実施形態の制御システム１の、情報テーブルの登録時の動作の例を表すフローチャートである。
【図６】図６は、本発明の第２の実施形態の制御装置１００Ａの構成の例を表すブロック図である。
【図７】図７は、上述の実施形態に係る制御装置１００及び制御装置１００Ａを実現することができる、コンピュータ１０００のハードウェア構成の一例を表す図である。
【発明を実施するための形態】
【００１２】
次に、本発明の実施形態について、図面を参照して詳細に説明する。
【００１３】
＜第１の実施形態＞
図１は、本発明の第１の実施形態の制御システム１の構成の例を表すブロック図である。
【００１４】
図１を参照すると、本実施形態の制御システム１は、制御装置１００と、第２の記憶装置２００とを含む。制御システム１は、複数の第２の記憶装置２００を含んでいてもよい。制御システム１は、さらに、端末装置４００を含んでいてもよい。制御装置１００及び端末装置４００は、通信可能に接続されている。制御装置１００と、第２の記憶装置２００も、通信可能に接続されていてもよい。
【００１５】
制御装置１００は、さらに、情報処理装置３００と、通信可能に接続されている。また、情報処理装置３００は、第２の記憶装置２００と、通信可能に接続されている。図１に示す例では、情報処理装置３００は、制御装置１００を経由せずに、第２の記憶装置２００と接続されている。しかし、情報処理装置３００は、制御装置１００を介して、第２の記憶装置２００に接続されていてもよい。
【００１６】
制御装置１００は、監視部１０１と、解析部１０２と、実行部１０３と、情報記憶部１０４と、登録部１０５とを含む。
【００１７】
図２は、本実施形態の制御システム１の全体像を模式的に表す図である。図２を参照すると、複数の情報処理装置３００が、通信ネットワーク５００を介して、制御装置１００及び第２の記憶装置２００に接続されている。図２に示す例のように、複数の情報処理装置３００が制御装置１００に接続されていてもよい。以下の説明では、情報処理装置３００の数は１である。
【００１８】
情報処理装置３００は、プロセッサ３０１と、第１の記憶装置３０３とを含む。プロセッサ３０１は、バックアップソフトウェア３０２を実行する。第１の記憶装置３０３は、情報処理装置３００の筐体に含まれていてもよい。第１の記憶装置３０３は、情報処理装置３００の筐体の外部に存在し、情報処理装置３００と接続されていてもよい。
【００１９】
プロセッサ３０１は、バックアップソフトウェア３０２を実行することによって、情報処理装置３００が含む記憶装置（図示されない）に格納されているデータを、例えば、第１の記憶装置３０３に、復元可能な状態で格納する処理であるバックアップを行う。バックアップソフトウェア３０２によって制御されるプロセッサ３０１は、バックアップを、例えば、情報処理装置３００の管理者によって設定されたスケジュールに従って行う。スケジュールは、バックアップが定期的に行われるように設定されていればよい。以下では、バックアップソフトウェア３０２を実行し、バックアップソフトウェア３０２の制御によって動作するプロセッサ３０１の動作を、バックアップソフトウェア３０２が行う動作として説明する。また、バックアップされたデータを、「バックアップデータ」と表記する。バックアップされたデータが格納される記憶装置を、「バックアップ先記憶装置」と表記する。
【００２０】
バックアップソフトウェア３０２は、例えばあらかじめ設定されている装置からの指示に従って、その指示において指定されている装置にバックアップを行うように設計されている。そのあらかじめ設定されている装置は、本実施形態では、制御装置１００である。
【００２１】
バックアップソフトウェア３０２の種類は、１種類であってもよい。その場合、後述される解析部１０２は、情報処理装置３００が実行するバックアップソフトウェア３０２の種類を判定しなくてよい。複数の種類のバックアップソフトウェア３０２が存在していてもよい。その場合、後述されるように、解析部１０２は、情報処理装置３００が実行するバックアップソフトウェア３０２の種類を特定する。以下の説明では、複数の種類のバックアップソフトウェア３０２が存在する。
【００２２】
バックアップソフトウェア３０２は、さらに、例えばあらかじめ設定されている装置からの指示に従って、記憶装置に格納されているバックアップデータを、他の記憶装置に格納されているバックアップデータに統合するように設計されている。以下の説明では、バックアップデータを他のバックアップデータに統合することを、バックアップデータの他のバックアップへの統合とも表記する。
【００２３】
例えば、第１バックアップデータの第２のバックアップデータへの統合は、例えば、第１のバックアップデータに含まれ、第２バックアップデータに含まれないバックアップデータを、第２バックアップデータに追加することである。例えば、１回のバックアップにつき、ファイルの１つの集合がバックアップ先記憶装置に格納される場合、バックアップデータの統合は、ファイルの集合のコピーによって行うことができる。その場合、第１バックアップデータの第２のバックアップデータへの統合は、第１のバックアップデータに含まれ、第２バックアップデータに含まれないファイルの集合を、第２バックアップデータに追加することである。
【００２４】
以下の説明において、第１バックアップデータが第２バックアップデータに統合される場合、第１バックアップデータを、「反映元バックアップデータ」又は「統合元バックアップデータ」と表記する。第１バックアップデータを記憶する記憶装置を、「反映元記憶装置」又は「統合元記憶装置」と表記する。第２バックアップデータを、「反映先バックアップデータ」又は「統合先バックアップデータ」と表記する。第２バックアップデータを記憶する記憶装置を、「反映先記憶装置」又は「統合先記憶装置」と表記する。ある記憶装置（例えば記憶装置Ａ）に格納されているバックアップデータを、他の記憶装置（例えば記憶装置Ｂ）に格納されているバックアップデータに統合することを、「記憶装置Ａから記憶装置Ｂへのバックアップデータの統合（又は反映）」とも表記する。
【００２５】
バックアップソフトウェア３０２は、例えば、バックアップされるデータと、バックアップ先記憶装置とが指定される、バックアップを行うコマンドを実行することによって、バックアップを行うよう設計されていてもよい。また、バックアップソフトウェア３０２は、バックアップを行うコマンドを受信するのに応じて、そのコマンドを実行するように設計されていてもよい。バックアップを行うコマンド（以下、バックアップコマンドとも表記）において、バックアップ先記憶装置は、バックアップ先記憶装置の識別子（以下、バックアップ先識別子とも表記）によって指定されればよい。
【００２６】
同様に、バックアップソフトウェア３０２は、例えば、２つのバックアップデータの統合を、統合元記憶装置と、統合先記憶装置とが指定されている、統合を行うコマンドを実行することによって行ってもよい。以下では、統合を行うコマンドを、「統合コマンド」とも表記する。統合コマンドでは、統合元記憶装置及び統合先記憶装置として、統合元記憶装置の識別子と、統合先記憶装置の識別子とが指定されていればよい。
【００２７】
また、バックアップソフトウェア３０２は、行われたバックアップに関する情報含む通知を、通知の送信先として設定されている装置に送信するように設計されている。本実施形態では、通知の送信先として設定されている装置は、制御装置１００である。通知は、例えば、メールの送信によって行われる。通知は、ＳＮＭＰ（Ｓｉｍｐｌｅ  Ｎｅｔｗｏｒｋ  Ｍａｎａｇｅｍｅｎｔ  Ｐｒｏｔｏｃｏｌ）トラップによって行われてもよい。通知のフォーマットは、あらかじめ定められていればよい。通知のフォーマットとして、バックアップソフトウェア３０２の種類毎に異なるフォーマットが採用されていてもよい。通知は、バックアップソフトウェア３０２の種類を特定する情報を含んでいてもよい。
【００２８】
通知は、例えば、バックアップ先記憶装置の識別子、バックアップの成否、及び、バックアップが失敗した場合のエラーの種類等を含んでいればよい。バックアップが失敗した場合のエラーの種類は、例えば、バックアップデータの書き込みのタイムアウト、バックアップデータの書き込みのバックアップ先記憶装置による拒否、及び、バックアップ先記憶装置の認識の失敗等である。通知は、バックアップが成功した場合のエラーの種類を含んでいてもよい。バックアップが成功した場合のエラーの種類は、例えば、バックアップデータの書き込みのリトライの発生、及び、バックアップデータの書き込みの遅延等である。エラーの種類は、以上に限られない。エラーの種類は、以上でなくてもよい。バックアップの成否、及び、バックアップが失敗した場合のエラーの種類等は、エラーコードによって表されていてもよい。例えば、エラーの種類は、エラーの種類毎に異なる、複数のエラーコードのいずれかによって表されていてもよい。
【００２９】
制御装置１００は、監視部１０１と、解析部１０２と、実行部１０３と、情報記憶部１０４と、登録部１０５とを含む。
【００３０】
監視部１０１は、情報処理装置３００から、行われたバックアップに関する情報を含む通知を受信する。通知は、行われたバックアップにおけるエラーの情報（例えば上述のエラーの種類）を含む。通知は、行われたバックアップの成否を表す情報を含んでいてもよい。上述のように、バックアップにおけるエラーの種類及びバックアップの成否を表す情報は、エラーコードによって表されていてもよい。
【００３１】
情報記憶部１０４は、例えば、通知に含まれる、エラーの種類を表すパターン（例えば上述のエラーコード）を、エラーの種類毎に記憶する。情報記憶部１０４は、さらに、エラーの種類毎に、動作を記憶していてもよい。情報記憶部１０４が記憶する、エラーの種類毎の動作は、その種類のエラーが検出された場合に制御装置１００が行う動作を表す。
情報記憶部１０４は、さらに、エラーの種類毎に、エラーの種類に関連付けられているバックアップ先記憶装置の識別子を記憶していてもよい。
【００３２】
エラーの種類に識別子が関連付けられているバックアップ先記憶装置は、その種類のエラーが検出された場合に、後述の実行部１０３によって、バックアップ先記憶装置として選択される装置である。情報記憶部１０４は、エラーの種類毎に（すなわちエラーコード毎に）、その種類のエラーがバックアップ先記憶装置の障害によって発生するエラーであるか否かを表す値（以下、エラー原因種別と表記）を記憶していてもよい。エラー原因種別は、エラーがバックアップ先記憶装置の障害によって発生するエラーであることを表す値、又は、エラーがバックアップ先記憶装置の障害によって発生するエラーでないことを表す値のいずれかをとるように設定されていればよい。エラー原因種別は、他の値によって表されていてもよい。
【００３３】
情報記憶部１０４は、エラーの種類毎の、エラーの種類を表すエラーコードに関連付けられている、エラー原因種別との組み合わせを、例えばテーブルの形で記憶する。以下では、エラーの種類毎の、エラーコードと、エラー原因種別との組み合わせを含むテーブルを、「情報テーブル」と表記する。エラーコードがバックアップソフトウェア３０２の種類に応じて異なる場合、情報記憶部１０４は、バックアップソフトウェア３０２の種類毎に、情報テーブルを記憶していてもよい。
【００３４】
図３は、情報テーブルの例を模式的に表す図である。図３に示す例では、情報テーブルは、互いに関連付けられている、エラーコード、動作、及び、変更後の記憶装置の組み合わせを、エラーの種類毎に含む。動作は、その動作に関連付けられているエラーコードによって特定されるエラーが検出された場合に、制御装置１００が行う動作を表す。図３に示す例では、エラーコードである「エラー１」によって特定されるエラーが検出された場合、制御装置１００は、「再実行」と、「メッセージ出力」とを行う。「再実行」は、情報処理装置３００に、バックアップを行う指示を送信することを表す。「メッセージ出力」は、情報処理装置３００に対して、例えばエラーの内容やエラーコードを表すメッセージ等の、あらかじめ定められている種類のメッセージを出力することを表す。「変更後の記憶装置」は、情報処理装置３００に送信される指示によって指示されるバックアップにおける、バックアップ先記憶装置の識別子である。本実施形態では、「変更後の記憶装置」として識別子が情報テーブルに格納されるバックアップ先記憶装置は、第２の記憶装置２００のいずれかである。
【００３５】
図３に例示する情報テーブルは、エラーの原因がバックアップ先記憶装置の障害であるエラーコードについての「動作」の値は、「再実行」を含むように設定されている。同様に、エラーの原因がバックアップ先記憶装置の障害ではないエラーコードについての「動作」の値は、「再実行」を含まないように設定されている。すなわち、「動作」の値が、エラーの原因がバックアップ先記憶装置の障害であるか否かを表す。言い換えると、図３に示す情報テーブルの例では、「動作」が、エラー原因種別である。
【００３６】
図３に示す例では、例えば、エラーコードが「エラー１」であるエラーが検出された場合、制御装置１００は、識別子が「装置１」である記憶装置に対してバックアップを行う指示を、情報処理装置３００に送信する。そして、制御装置１００は、あらかじめ定められている種類のメッセージを、情報処理装置３００に送信する。後述されるように、制御装置１００の実行部１０３が、情報処理装置３００への指示の送信及びメッセージの出力を行う。
【００３７】
なお、情報記憶部１０４は、必ずしも、通知に含まれうる全ての種類のエラーのエラーコードを記憶していなくてもよい。情報記憶部１０４がエラーコードを記憶していないエラーが存在していてもよい。
【００３８】
通知のフォーマットがバックアップソフトウェア３０２の種類に応じて異なる場合、情報記憶部１０４は、さらに、バックアップソフトウェア３０２の種類毎に、通知の特徴（以下、通知特徴とも表記）を記憶していればよい。通知特徴は、例えば、通知のデータの構造を特定するデータであってもよい。上述のように、通知には、バックアップソフトウェア３０２の種類を表すデータが含まれていてもよい。その場合、通知特徴は、バックアップソフトウェア３０２の種類を表すデータ（以下、種類識別子と表記）であってもよい。通知特徴は、種類識別子と、通知における種類識別子の位置（以下、種類識別子格納位置と表記）との組み合わせであってもよい。
【００３９】
登録部１０５は、端末装置４００から、前述の情報テーブルを受信し、受信した情報テーブルを、情報記憶部１０４に格納する。情報テーブルは、例えば、端末装置４００のユーザによって入力される。同様に、登録部１０５は、端末装置４００から、前述の通知特徴を受信し、受信した通知特徴を、情報記憶部１０４に格納する。通知特徴例えば、端末装置４００のユーザによって入力される。
【００４０】
解析部１０２は、受信した通知に基づいて、バックアップにおけるエラーを検出する。そして、解析部１０２は、検出されたエラーの原因が、情報処理装置３００が行ったバックアップのバックアップ先記憶装置（本実施形態では、第１の記憶装置３０３）の障害であるか否かを判定する。
【００４１】
解析部１０２は、例えば、受信した通知において、情報記憶部１０４が記憶するエラーコードを検出することによって、エラーの種類を特定する。解析部１０２は、情報記憶部１０４が記憶する、検出したエラーコードによって表される種類のエラーのエラー原因種別によって、エラーの原因がバックアップ先記憶装置の障害であるか否かを判定する。
【００４２】
通知のフォーマットがバックアップソフトウェア３０２によって異なる環境下では、解析部１０２は、まず、情報処理装置３００が実行しているバックアップソフトウェア３０２の種類を特定する。そして、解析部１０２は、特定された種類のバックアップソフトウェア３０２についてのエラーコードを検出する。解析部１０２は、特定された種類のバックアップソフトウェア３０２についての、検出されたエラーコードに表される種類のエラーのエラー原因種別によって、エラーの原因がバックアップ先記憶装置の障害であるか否かを判定する。
【００４３】
その場合、解析部１０２は、例えば、受信した通知と、情報記憶部１０４に格納されている、バックアップソフトウェア３０２の種類毎の通知特徴とを比較することによって、情報処理装置３００が実行しているバックアップソフトウェア３０２の種類を特定してもよい。その際、例えば、解析部１０２は、受信した通知の特徴と合致する通知特徴を抽出する。そして、解析部１０２は、情報処理装置３００が、通知特徴が抽出された種類のバックアップソフトウェア３０２を実行していると判定する。
【００４４】
通知特徴が、上述の、バックアップソフトウェア３０２の種類を表す種類識別子を含む場合、解析部１０２は、受信した通知において、情報記憶部１０４に格納されている種類識別子を検出すればよい。解析部１０２は、情報処理装置３００が、受信した通知において種類識別子が検出された種類のバックアップソフトウェア３０２を実行していると判定すればよい。通知特徴が、さらに、上述の種類識別子格納位置を含む場合、解析部１０２は、通知の種類識別子格納位置から読み出したデータと、情報記憶部１０４に格納されている種類識別子とを比較する。解析部１０２は、情報処理装置３００が実行しているバックアップソフトウェア３０２は、通知の種類識別子格納位置から読み出したデータ同じ種類識別子が表す種類のバックアップソフトウェア３０２であると判定する。
【００４５】
解析部１０２は、さらに、受信した通知に基づいて、情報処理装置３００が行ったバックアップのバックアップ先記憶装置（上述のように第１の記憶装置３０３）の復旧を検出する。バックアップ先記憶装置の復旧は、バックアップにおけるエラーの原因として障害が検出されたバックアップ先記憶装置へのバックアップにおいて、そのバックアップ先記憶装置の障害が原因であるエラーが検出されなくなったことを表す。解析部１０２は、例えば、障害が検出されたバックアップ先記憶装置（具体的には、そのバックアップ先記憶装置の識別子）を記憶していればよい。そして、解析部１０２は、障害が検出されたバックアップ先記憶装置として記憶されているバックアップ装置へのバックアップが成功したことを表す通知を受信した場合、そのバックアップ装置の復旧を検出すればよい。例えば、解析部１０２は、通知において、バックアップが成功したことを表すコードと、バックアップ先記憶装置の識別子とが検出された場合、そのバックアップ先記憶装置へのバックアップが成功したと判定すればよい。
【００４６】
実行部１０３は、解析部１０２によってエラーが検出された場合、情報記憶部１０４に格納されている情報テーブルと、検出されたエラーの種類とに基づいて、実行する動作を決定する。そして、実行部１０３は、決定した動作を実行する。具体的には、実行部１０３は、情報テーブルにおいて検出されたエラーのエラーコードに関連付けられている動作を実行する。その動作が、バックアップを情報処理装置３００に指示すること（図３に示す例では「再実行」）を含む場合、実行部１０３は、第２の記憶装置２００に対してバックアップを行う指示を、情報処理装置３００に送信する。その第２の実施形態は、例えば叙述の情報テーブルの例では、「変更後の記憶装置」に識別子が含まれる第２の記憶装置２００である。その動作が、メッセージを情報処理装置３００に送信すること（図３に示す例では「メッセージ出力」）を含む場合、実行部１０３は、情報処理装置３００に対して、あらかじめ定められている種類のメッセージを出力する。
【００４７】
監視部１０１が受信した通知において、エラーが検出されなかった場合（すなわち、情報記憶部１０４に格納されているエラーコードが検出されなかった場合）、実行部１０３は、何もしなくてもよい。監視部１０１が受信した通知において、エラーが検出されなかった場合、実行部１０３は、あらかじめ決められている動作（例えば、情報処理装置３００への、通知の内容を表すメッセージの送信）を行ってもよい。
【００４８】
上述のように、図３に示す情報テーブルは、バックアップにおけるエラーの原因がバックアップ先記憶装置の障害であるエラーコードについての動作は、「再実行」を含むよう設定されている。図３に示す情報テーブルは、バックアップにおけるエラーの原因がバックアップ先記憶装置の障害ではないエラーコードについての動作は、「再実行」を含まないよう設定されている。そのような情報テーブルを使用する場合、エラーコードを特定することは、バックアップにおけるエラーの原因がバックアップ先記憶装置の障害であるか否かを判定することに相当する。
【００４９】
以下では、実行部１０３について、さらに詳しく説明する。
【００５０】
実行部１０３は、バックアップにおけるエラーの原因がバックアップ先記憶装置の障害であることが判定された場合、情報処理装置３００に、第２の記憶装置２００をバックアップ先記憶装置として使用して、バックアップを行う指示を送信する。その際、実行部１０３は、第２の記憶装置２００にバックアップを行うバックアップコマンドを生成してもよい。そして、実行部１０３は、生成したバックアップコマンドを情報処理装置３００に送信してもよい。
【００５１】
実行部１０３は、解析部１０２によって、第１の記憶装置３０３の復旧が検出された場合、第２の記憶装置２００が記憶するバックアップデータを、第１の記憶装置３０３が記憶するバックアップデータに統合する指示を、情報処理装置３００に送信する。その際、実行部１０３は、第２の記憶装置２００が記憶するバックアップデータを、第１の記憶装置３０３が記憶するバックアップデータに統合する統合コマンドを生成してもよい。そして、実行部１０３は、生成した統合コマンドを、情報処理装置３００に送信してもよい。
【００５２】
バックアップソフトウェア３０２が実行できるコマンドが、バックアップソフトウェア３０２の種類によって異なる環境では、解析部１０２は、情報処理装置３００が実行するバックアップソフトウェア３０２の種類を特定する。そして、実行部１０３は、解析部１０２が特定した種類のバックアップソフトウェア３０２が実行できる、そのバックアップソフトウェア３０２に応じたコマンド（例えば上述のバックアップコマンド及び統合コマンド）を生成する。
【００５３】
次に、本実施形態の制御システム１の動作について、図面を参照して詳細に説明する。
【００５４】
図４は、本実施形態の制御システム１の動作の例を表すフローチャートである。図４は、制御システム１が情報処理装置３００から通知を受信した場合の動作を表す。
【００５５】
まず、監視部１０１が、情報処理装置３００から通知を受信する（ステップＳ１０１）。上述のように、通知は、バックアップソフトウェア３０２を実行するプロセッサ３０１によって送信されるメール又はＳＮＭＰトラップなどである。
【００５６】
解析部１０２は、受信した通知に基づいて情報処理装置３００が実行するバックアップソフトウェア３０２の種類を特定する（ステップＳ１０２）。さらに、解析部１０２は、受信した通知に基づいて、第１の記憶装置３０３の障害によるバックアップのエラー（すなわち失敗）を検出する（ステップＳ１０３）。
【００５７】
例えば、解析部１０２は、通知におけるエラーコードを検出することによって、バックアップのエラーを検出する。通知においてエラーコードが検出された場合、解析部１０２は、バックアップのエラーがあったと判定する。通知においてエラーコードが検出されなかった場合、解析部１０２は、バックアップのエラーが無かったと判定する。そして、解析部１０２は、検出されたエラーコードが、バックアップ先記憶装置の障害によるエラーを表すか否かを判定する。解析部１０２は、例えば、情報記憶部１０４において、検出されたエラーコードにバックアップ先記憶装置の障害が原因であることを表す値が関連付けられている場合、検出されたエラーコードが、第１の記憶装置３０３の障害によるエラーを表すと判定する。解析部１０２は、例えば、情報記憶部１０４において、検出されたエラーコードにバックアップ先記憶装置の障害が原因であることを表す値が関連付けられていない場合、検出されたエラーコードが、第１の記憶装置３０３の障害によるエラーを表さないと判定する。通知においてエラーコードが検出され、さらに、そのエラーコードが第１の記憶装置３０３の障害によるエラーを表す場合、解析部１０２は、第１の記憶装置３０３の障害によるバックアップのエラーを検出すればよい。それ以外の場合、解析部１０２は、第１の記憶装置３０３の障害によるバックアップのエラーを検出しない。
【００５８】
情報記憶部１０４に図３に示すような情報テーブルが格納されている場合、解析部１０２は、特定したエラーコードに関連付けられている動作の値が、「再実行」を含むか否かを判定する。解析部１０２は、特定したエラーコードに関連付けられている動作の値が「再実行」を含む場合、第１の記憶装置３０３の障害によるバックアップのエラーを検出すればよい。解析部１０２は、特定したエラーコードに関連付けられている動作の値が「再実行」を含まない場合、第１の記憶装置３０３の障害によるバックアップのエラーを検出しない。
【００５９】
第１の記憶装置３０３の障害によるバックアップの失敗が検出された場合（ステップＳ１０４においてＹＥＳ）、実行部１０３は、情報処理装置３００に、第２の記憶装置２００へのバックアップを指示する（ステップＳ１０５）。指示を受信した情報処理装置３００は、指示に従って、第２の記憶装置２００へのバックアップを実行する。
【００６０】
例えば、実行部１０３は、図３に示すような情報テーブルにおいて、検出されたエラーコードに関連付けられている「変更後の記憶装置」の値によって特定される第２の記憶装置２００を、代替のバックアップ先記憶装置として選択する。そして、実行部１０３は、選択した第２の記憶装置２００へのバックアップを行うバックアップコマンドを生成する。実行部１０３が生成するバックアップコマンドは、特定したバックアップソフトウェア３０２の種類に応じたコマンドである。
【００６１】
実行部１０３は、選択した第２の記憶装置２００の識別子と、バックアップコマンドの送信先である情報処理装置３００の識別子とを関連付け、関連付けた第２の記憶装置２００の識別子と情報処理装置３００の識別子とを、例えば情報記憶部１０４に格納する。以下では、バックアップコマンドの送信先である情報処理装置３００の識別子と、その識別子に関連付けられた、代替のバックアップ先記憶装置として選択された第２の記憶装置２００の識別子との組み合わせを、「代替情報」と表記する。
【００６２】
そして、実行部１０３は、生成したバックアップコマンドを、情報処理装置３００に送信する。そのコマンドを受信した情報処理装置３００は、そのバックアップコマンドを実行することによって、第２の記憶装置２００へのバックアップを実行する。
【００６３】
第１の記憶装置３０３の障害によるバックアップの失敗が検出されない場合（ステップＳ１０４においてＮＯ）、解析部１０２は、第１の記憶装置３０３の復旧を検出する（ステップＳ１０６）。
【００６４】
第１の記憶装置３０３の復旧が検出された場合（ステップＳ１０７においてＹＥＳ）、実行部１０３は、情報処理装置３００に、第２の記憶装置２００から第１の記憶装置３０３へのバックアップの反映を指示する（ステップＳ１０８）。指示を受信した情報処理装置３００は、第２の記憶装置２００から第１の記憶装置３０３へのバックアップの反映を実行する。
【００６５】
例えば、実行部１０３は、第１の記憶装置３０３の復旧が検出された情報処理装置３００の、上述の代替情報を、情報記憶部１０４から読み出す。そして、実行部１０３は、読み出した代替情報に含まれる、情報処理装置３００の代替のバックアップ先記憶装置として選択された第２の記憶装置２００を特定する。
実行部１０３は、特定された第２の記憶装置２００に格納されているバックアップを、第１の記憶装置３０３に格納されているバックアップに反映させるコマンドを生成する。そして、実行部１０３は、生成したコマンドを、情報処理装置３００に送信する。そのコマンドを受信した情報処理装置３００は、そのコマンドを実行することによって、第２の記憶装置２００から第１の記憶装置３０３へのバックアップの反映を実行する。
【００６６】
なお、情報記憶部１０４が、図３に示すような情報テーブルを記憶している場合、検出されたエラーコードに関連付けられている動作の値が、「メッセージ送信」を含む場合、実行部１０３は、さらに、メッセージを情報処理装置３００に送信する。送信されるメッセージは、例えば、エラーコードを含むメッセージである。
【００６７】
次に、本実施形態の制御システム１の、情報テーブルの登録時の動作について、図面を参照して詳細に説明する。
【００６８】
図５は、本実施形態の制御システム１の、情報テーブルの登録時の動作の例を表すフローチャートである。図５に示すフローチャートは、制御システム１の管理者が、端末装置４００を使用して、新たに、一つのバックアップソフトウェア３０２の情報テーブルなどを、制御システム１に登楼する場合の、制御システム１の動作を表す。
【００６９】
図５を参照すると、まず、登録部１０５が、端末装置４００から、情報テーブルなどが登録されるバックアップソフトウェア３０２の識別子を取得する（ステップＳ２０１）。次に、登録部１０５は、端末装置４００から、そのバックアップソフトウェア３０２が送信する通知の特徴である、通知特徴を取得する（ステップＳ２０２）。登録部１０５は、取得した通知特徴を、ステップＳ２０１において取得したバックアップソフトウェア３０２の識別子と関連付ける。そして、登録部１０５は、ステップＳ２０１において取得したバックアップソフトウェア３０２の識別子と関連付けられている通知特徴を、情報記憶部１０４に格納する（ステップＳ２０３）。登録部１０５は、端末装置４００から、さらに、情報テーブルを取得する（ステップＳ２０４）。登録部１０５は、取得した情報テーブルを、ステップＳ２０１において取得したバックアップソフトウェア３０２の識別子と関連付ける。そして、登録部１０５は、ステップＳ２０１において取得したバックアップソフトウェア３０２の識別子と関連付けられている情報テーブル情報記憶部１０４に格納する（ステップＳ２０５）。
【００７０】
以上で説明した本実施形態には、コストを削減しながらバックアップの失敗を回避できるという効果がある。
【００７１】
その理由は、解析部１０２が、監視部１０１によって受信された情報処理装置３００からの通知において、第１の記憶装置３０３の障害が原因である、バックアップのエラーを検出するからである。そして、第１の記憶装置３０３の障害が原因である、バックアップのエラーが検出された場合、実行部１０３が、第２の記憶装置２００へのバックアップを、情報処理装置３００に指示するからである。従って、バックアップのエラーによって第１の記憶装置３０３にバックアップされかったデータが、第２の記憶装置２００にバックアップされる。すなわちバックアップの失敗を回避できる。さらに、本実施形態では、複数の系統の、通信路及びリソースは必要ない。従って、コストを削減できる。また、情報処理装置３００のプロセッサ３０１が実行するバックアップソフトウェア３０２は、専用に設計されたソフトウェアである必要はない。従って、コストを削減できる。
【００７２】
＜第２の実施形態＞
次に、本発明の第２の実施形態について、図面を参照して詳細に説明する。
【００７３】
図６は、本発明の第２の実施形態の制御装置１００Ａの構成の例を表すブロック図である。
【００７４】
図６を参照すると、本実施形態の制御装置１００Ａは、監視部１０１と、解析部１０２と、実行部１０３と、を備える。監視部１０１は、第１の記憶装置３０３にバックアップを行う情報処理装置３００から、前記バックアップにおけるエラーの情報を含む通知を受信する。解析部１０２は、前記通知に基づいて、前記バックアップにおけるエラーを検出し、当該エラーの原因が前記第１の記憶装置３０３の障害であるか否かを特定する障害解析を行う。実行部１０３は、前記情報処理装置３００に対して、前記エラーの原因が前記第１の記憶装置３０３の障害である場合に、当該情報処理装置３００が通信可能である第２の記憶装置２００の識別子を、前記バックアップ先の識別子として送信する。前記情報処理装置３００は、バックアップ先識別子を受信するのに応じて前記バックアップ先識別子によって特定される記憶装置にバックアップを行う。
【００７５】
以上で説明した本実施形態には、第１の実施形態と同じ効果がある。その理由は、第１の実施形態の効果が所持瑠璃結うと同じである。
【００７６】
＜他の実施形態＞
上述の実施形態に係る制御装置１００及び１００Ａは、それぞれ、コンピュータ及びコンピュータを制御するプログラム、専用のハードウェア、又は、コンピュータ及びコンピュータを制御するプログラムと専用のハードウェアの組合せにより実現することができる。
【００７７】
図７は、上述の実施形態に係る制御装置１００及び制御装置１００Ａを実現することができる、コンピュータ１０００のハードウェア構成の一例を表す図である。図７を参照すると、コンピュータ１０００は、プロセッサ１００１と、メモリ１００２と、記憶装置１００３と、Ｉ／Ｏ（Ｉｎｐｕｔ／Ｏｕｔｐｕｔ）インタフェース１００４とを含む。また、コンピュータ１０００は、記録媒体１００５にアクセスすることができる。メモリ１００２と記憶装置１００３は、例えば、ＲＡＭ（Ｒａｎｄｏｍ  Ａｃｃｅｓｓ  Ｍｅｍｏｒｙ）、ハードディスクなどの記憶装置である。記録媒体１００５は、例えば、ＲＡＭ、ハードディスクなどの記憶装置、ＲＯＭ（Ｒｅａｄ  Ｏｎｌｙ  Ｍｅｍｏｒｙ）、可搬記録媒体である。記憶装置１００３が記録媒体１００５であってもよい。プロセッサ１００１は、メモリ１００２と、記憶装置１００３に対して、データやプログラムの読み出しと書き込みを行うことができる。プロセッサ１００１は、Ｉ／Ｏインタフェース１００４を介して、例えば、情報処理装置３００及び端末装置４００にアクセスすることができる。プロセッサ１００１は、記録媒体１００５にアクセスすることができる。記録媒体１００５には、コンピュータ１０００を、制御装置１００又は制御装置１００Ａとして動作させるプログラムが格納されている。
【００７８】
プロセッサ１００１は、記録媒体１００５に格納されている、コンピュータ１０００を、制御装置１００又は制御装置１００Ａとして動作させるプログラムを、メモリ１００２にロードする。そして、プロセッサ１００１が、メモリ１００２にロードされたプログラムを実行することにより、コンピュータ１０００は、制御装置１００又は制御装置１００Ａとして動作する。
【００７９】
以下の第１グループの各部は、例えば、プログラムを記憶する記録媒体１００５からメモリ１００２に読み込まれた、各部の機能を実現することができる専用のプログラムと、そのプログラムを実行するプロセッサ１００１により実現することができる。第１グループは、監視部１０１、解析部１０２、実行部１０３、お予備、登録部１０５である。また、以下の第２グループの各部は、コンピュータ１０００が含むメモリ１００２やハードディスク装置等の記憶装置１００３により実現することができる。第２グループは、情報記憶部１０４である。あるいは、第１グループに含まれる部及び第２グループに含まれる部の一部又は全部を、各部の機能を実現する専用の回路によって実現することもできる。
【００８０】
以上、実施形態を参照して本発明を説明したが、本発明は上記実施形態に限定されるものではない。本発明の構成や詳細には、本発明のスコープ内で当業者が理解し得る様々な変更をすることができる。
【符号の説明】
【００８１】
１    制御システム
１００    制御装置
１００Ａ    制御装置
１０１    監視部
１０２    解析部
１０３    実行部
１０４    情報記憶部
１０５    登録部
２００    第２の記憶装置
３００    情報処理装置
３０１    プロセッサ
３０２    バックアップソフトウェア
３０３    第１の記憶装置
４００    端末装置
５００    通信ネットワーク
１０００    コンピュータ
１００１    プロセッサ
１００２    メモリ
１００３    記憶装置
１００４    Ｉ／Ｏインタフェース
１００５    記録媒体
【図１】
2016157254.tif 000003
【図２】
2016157254.tif 000004
【図３】
2016157254.tif 000005
【図４】
2016157254.tif 000006
【図５】
2016157254.tif 000007
【図６】
2016157254.tif 000008
【図７】
2016157254.tif 000009