(57)【特許請求の範囲】
【請求項１】
互いに同一のコンピュータハードウェアで構成された第１のシステムおよび第２のシステムを備えたフォールトトレラントサーバが実行するバックアップ方法であって、
前記第１のシステムと前記第２のシステムとが互いに同期を確立した状態で、前記フォールトトレラントサーバが、前記第１のシステムにおいて第１のバックアップジョブの実行を第１のバックアップ先デバイスに開始すると共に、前記第２のシステムにおいて前記第１のバックアップジョブとは異なる第２のバックアップジョブの実行を第２のバックアップ先デバイスに開始し、
前記第１のシステムと前記第２のシステムとが互いに同期を確立した状態で、前記第１および第２のバックアップジョブの実行中に、前記フォールトトレラントサーバが、業務処理に影響を及ぼす事態が発生したか否かを監視し、
前記事態が発生したとき、前記第１のバックアップジョブの実行を停止すると共に、前記第１のバックアップジョブを前記第２のバックアップ先デバイスで実行するように再スケジューリングし、前期第２のバックアップ先デバイスでは、前記第２のバックアップジョブの実行を継続しながら前記第１のバックアップジョブの実行を開始して、前記第１のシステムと前記第２のシステムとが互いに同期を解除し、
前記第１のシステムと前記第２のシステムとが互いに同期を解除した状態で、前記第１のシステムが業務処理を実行すると共に、前記第２のシステムが前記第１および第２のバックアップジョブを実行し、
前記第２のシステムが前記第１および第２のバックアップジョブの実行を終了した時点で、前記第１および第２のシステムが互いに同期を確立して前記業務処理を実行する
フォールトトレラントサーバにおけるバックアップ方法。
【請求項２】
前記事態が、前記第１および第２のバックアップジョブが業務開始時刻までに終了しないという事態である
請求項１に記載のフォールトトレラントサーバにおけるバックアップ方法。
【請求項３】
前記事態が、前記第１および第２のシステムのＣＰＵ負荷およびＩ／Ｏ負荷の少なくとも一方が閾値を超えたという事態である
請求項１または２に記載のフォールトトレラントサーバにおけるバックアップ方法。
【請求項４】
前記第１のバックアップジョブは、第１のドライブをバックアップ元とし、
前記第２のバックアップジョブは、前記第１のドライブと種類の異なる第２のドライブをバックアップ元とする
請求項１乃至３の何れかに記載のフォールトトレラントサーバにおけるバックアップ方法。
【請求項５】
前記第１および第２のバックアップ先デバイスは、テープデバイスである
請求項１乃至４の何れかに記載のフォールトトレラントサーバにおけるバックアップ方法。
【請求項６】
互いに同一のコンピュータハードウェアで構成された第１のシステムおよび第２のシステムを備えたフォールトトレラントサーバであって、
前記第１のシステムと前記第２のシステムとが互いに同期を確立した状態で、前記フォールトトレラントサーバが、前記第１のシステムにおいて第１のバックアップジョブの実行を第１のバックアップ先デバイスに開始すると共に、前記第２のシステムにおいて前記第１のバックアップジョブとは異なる第２のバックアップジョブの実行を第２のバックアップ先デバイスに開始し、
前記第１のシステムと前記第２のシステムとが互いに同期を確立した状態で、前記第１および第２のバックアップジョブの実行中に、前記フォールトトレラントサーバが、業務処理に影響を及ぼす事態が発生したか否かを監視し、
前記事態が発生したとき、前記第１のバックアップジョブの実行を停止すると共に、前記第１のバックアップジョブを前記第２のバックアップ先デバイスで実行するように再スケジューリングし、前記第２のバックアップ先デバイスでは、前記第２のバックアップジョブの実行を継続しながら前記第１のバックアップジョブの実行を開始して、前記第１のシステムと前記第２のシステムとが互いに同期を解除し、
前記第１のシステムと前記第２のシステムとが互いに同期を解除した状態で、前記第１のシステムが業務処理を実行すると共に、前記第２のシステムが前記第１および第２のバックアップジョブを実行し、
前記第２のシステムが前記第１および第２のバックアップジョブの実行を終了した時点で、前記第１および第２のシステムが互いに同期を確立して前記業務処理を実行する
ようにプログラミングされているフォールトトレラントサーバ。
【請求項７】
互いに同一のコンピュータハードウェアで構成された第１のシステムおよび第２のシステムを備えたフォールトトレラントサーバに、
前記第１のシステムと前記第２のシステムとが互いに同期を確立した状態で、前記フォールトトレラントサーバが、前記第１のシステムにおいて第１のバックアップジョブの実行を第１のバックアップ先デバイスに開始すると共に、前記第２のシステムにおいて前記第１のバックアップジョブとは異なる第２のバックアップジョブの実行を第２のバックアップ先デバイスに開始するステップ、
前記第１のシステムと前記第２のシステムとが互いに同期を確立した状態で、前記第１および第２のバックアップジョブの実行中に、前記フォールトトレラントサーバが、業務処理に影響を及ぼす事態が発生したか否かを監視するステップ、
前記事態が発生したとき、前記第１のバックアップジョブの実行を停止すると共に、前記第１のバックアップジョブを前記第２のバックアップ先デバイスで実行するように再スケジューリングし、前記第２のバックアップ先デバイスでは、前記第２のバックアップジョブの実行を継続しながら前記第１のバックアップジョブの実行を開始して、前記第１のシステムと前記第２のシステムとが互いに同期を解除するステップ、
前記第１のシステムと前記第２のシステムとが互いに同期を解除した状態で、前記第１のシステムが業務処理を実行すると共に、前記第２のシステムが前記第１および第２のバックアップジョブを実行するステップ、
前記第２のシステムが前記第１および第２のバックアップジョブの実行を終了した時点で、前記第１および第２のシステムが互いに同期を確立して前記業務処理を実行するステップ
を実行させるためのプログラム。
【発明の詳細な説明】
【技術分野】
【０００１】
本発明はフォールトトレラントサーバにおけるバックアップ方法に関する。
【背景技術】
【０００２】
近年、コンピュータは社会生活の基盤を担っており、故障によるサービスの停止は大きな損失を招く恐れがある。そのため、障害発生時においてもサービスを継続させることが要求され、システムを二重化するフォールトトレラント技術が注目されている。フォールトトレラント技術を採用したコンピュータとして、フォールトトレラントサーバ（ＦＴサーバ）が知られている。
【０００３】
ＦＴサーバは、システムを構成するハードウェアコンポーネントが二重化されており、ＣＰＵやメモリを含むＣＰＵモジュールが、ＦＴコントローラにより同一クロックで同期  して動作するように制御されている。このような方式をロックステップ方式と呼ぶ。一方のシステムに障害が発生した場合、そのシステムは論理的に切り離され、正常に動作しているシステムが処理を続行することにより、耐障害性が向上する。
【０００４】
このように、システムを二重化することで耐障害性を高めているが、両系に障害が発生した場合などの万が一の事態に備えて、定期的にバックアップをとることは重要である。
【０００５】
ＦＴサーバにおけるバックアップ方法の一例が特許文献１に記載されている。特許文献１では、互いに同一のコンピュータハードウェアで構成された第１および第２のシステムを備えたＦＴサーバにおいて、バックアップを行う際、まず、第１および第２のシステムのロックステップ同期を解除する。次に、第１のシステムは業務処理を非同期状態で実行し、第２のシステムは一旦停止した後に起動し、バックアップの実行を開始する。その後、バックアップが終了したら、第２のシステムがその旨を第１のシステムに通知する。そして、第１および第２のシステムは互いにロックステップ同期を確立し、業務処理を同期した状態で実行する。
【先行技術文献】
【特許文献】
【０００６】
【特許文献１】特開２００９−２０５６３０号公報
【発明の概要】
【発明が解決しようとする課題】
【０００７】
特許文献１に記載のバックアップ方法によれば、ロックステップ同期を解除した状態で第１のシステムが業務処理を実行すると共に第２のシステムがバックアップ処理を実行するため、業務処理に負荷をかけることなくバックアップを実施することができる。しかし、バックアップ処理が一方のシステムでのみ実施されるため、バックアップの完了までに長時間を要する。例えば、ＤドライブとＥドライブの双方のバックアップを片方のシステムで全て実施する場合、Ｄドライブを一方のシステムで実施し、Ｅドライブを他方のシステムで実施する場合に比べて、約２倍の処理時間が必要になる。
【０００８】
本発明の目的は、上述したような課題、すなわち効率の良いバックアップが困難であるという課題を解決するフォールトトレラントサーバにおけるバックアップ方法を提供することにある。
【課題を解決するための手段】
【０００９】
本発明の一形態にかかるフォールトトレラントサーバにおけるバックアップ方法は、
互いに同一のコンピュータハードウェアで構成された第１および第２のシステムを備えたフォールトトレラントサーバが実行するバックアップ方法であって、
互いに同期を確立した状態で、前記フォールトトレラントサーバが、第１のバックアップジョブの実行を第１のバックアップ先デバイスに開始すると共に、前記第１のバックアップジョブとは異なる第２のバックアップジョブの実行を第２のバックアップ先デバイスに開始し、
互いに同期を確立した状態で、前記第１および第２のバックアップジョブの実行中に、前記フォールトトレラントサーバが、業務処理に影響を及ぼす事態が発生したか否かを監視し、
前記事態が発生したとき、前記第１のバックアップジョブの実行を停止すると共に、前記第１のバックアップジョブを前記第２のバックアップ先デバイスで実行するように再スケジューリングし、前期第２のバックアップ先デバイスでは、前記第２のバックアップジョブの実行を継続しながら前記第１のバックアップジョブの実行を開始して、互いに同期を解除し、
互いに同期を解除した状態で、前記第１のシステムが業務処理を実行すると共に、前記第２のシステムが前記第１および第２のバックアップジョブを実行し、
前記第２のシステムが前記第１および第２のバックアップジョブの実行を終了した時点で、前記第１および第２のシステムが互いに同期を確立して前記業務処理を実行する、
といった構成を採る。
【発明の効果】
【００１０】
本発明は上述したような構成を有するため、効率の良いバックアップが可能である。また、業務処理に影響を及ぼす事態が発生した場合には、同期を解除し、第１のシステムが業務処理を行うと共に第２のシステムが第１および第２のバックアップ処理を行う。このため、たとえ業務処理に影響を及ぼす事態が発生したとしても、業務処理に負荷をかけることなくバックアップを継続することが可能である。
【図面の簡単な説明】
【００１１】
【図１】本発明の第１の実施形態にかかるフォールトトレラントサーバのブロック図である。
【図２】本発明の第１の実施形態にかかるフォールトトレラントサーバが実施するバックアップ方法の手順を示すフロー図である。
【図３】本発明の第２の実施形態にかかるフォールトトレラントサーバのブロック図である。
【図４】本発明の第２の実施形態にかかるフォールトトレラントサーバが同期を解除した状態を示す図である。
【図５】本発明の第２の実施形態にかかるフォールトトレラントサーバが有する機能の説明図である。
【図６】本発明の第２の実施形態にかかるフォールトトレラントサーバにおけるバックアップジョブ実行前の状態を示す図である。
【図７】本発明の第２の実施形態にかかるフォールトトレラントサーバにおけるバックアップジョブ実行中にテープデバイスに故障が発生した際の動作を示す図である。
【図８】本発明の第２の実施形態にかかるフォールトトレラントサーバにおいて、バックアップが所定の時間内に終了しないと判断されて同期が解除された状態を示す図である。
【図９】本発明の第２の実施形態にかかるフォールトトレラントサーバにおいて、バックアップジョブの終了時に同期を再開して二重化状態に復帰した状態を示す図である。
【図１０】本発明の第２の実施形態にかかるフォールトトレラントサーバにおいて、テープデバイスに故障が発生した場合の動作を示すフローチャートである。
【図１１】本発明の第２の実施形態にかかるフォールトトレラントサーバにおいて、同期の解除を実行する際に両系がそれぞれ実施する動作を示すフローチャートである。
【図１２】本発明の第２の実施形態にかかるフォールトトレラントサーバにおいて、両系で業務処理とバックアップジョブを実行している状態を示す図である。
【図１３】本発明の第２の実施形態にかかるフォールトトレラントサーバにおいて、両系で業務処理とバックアップジョブを実行している際にＣＰＵ負荷、Ｉ／Ｏ負荷が閾値を超えた際の動作を示す図である。
【図１４】本発明の第２の実施形態にかかるフォールトトレラントサーバにおいて、ＣＰＵ負荷、Ｉ／Ｏ負荷が閾値を超えたために同期を解除した状態を示す図である。
【図１５】本発明の第２の実施形態にかかるフォールトトレラントサーバにおいて、バックアップジョブの終了時に同期を再開して二重化状態に復帰した状態を示す図である。
【図１６】本発明の第２の実施形態にかかるフォールトトレラントサーバにおいて、ＣＰＵ負荷、Ｉ／Ｏ負荷が閾値を超えた場合の動作を示すフローチャートである。
【図１７】本発明の第２の実施形態にかかるフォールトトレラントサーバにおいて、同期の解除を実行する際に両系がそれぞれ実施する動作を示すフローチャートである。
【発明を実施するための形態】
【００１２】
次に本発明の実施の形態について図面を参照して詳細に説明する。
[第１の実施形態]
図１を参照すると、本発明の第１の実施形態にかかるＦＴサーバ１０００は、第１のシステム１０１０と第２のシステム１０２０とを備えている。第１のシステム１０１０と第２のシステム１０２０は、互いに同一のコンピュータハードウェアで構成される。図１では、第１のシステム１０１０は、ＣＰＵや主記憶等を有するＣＰＵモジュール１０１１と、ＦＴコントローラ１０１２と、ハードディスクやテープ装置などを有するＩ／Ｏモジュール１０１３とから構成され、第２のシステム１０２０は、ＣＰＵや主記憶等を有するＣＰＵモジュール１０２１と、ＦＴコントローラ１０２２と、ハードディスクやテープ装置などを有するＩ／Ｏモジュール１０２３とから構成されている。
【００１３】
図２は、本実施形態におけるバックアップ方法の手順の一例を示す。以下、図１および図２を参照して、本実施形態におけるバックアップ方法について説明する。
【００１４】
バックアップは、第１のシステム１０１０と第２のシステム１０２０とが同期した状態で、ＦＴサーバ１０００が、Ｉ／Ｏモジュール１０１３中の第１のテープ装置にバックアップジョブＪ１の実行を開始し、Ｉ／Ｏモジュール１０２３中の第２のテープ装置にバックアップジョブＪ２の実行を開始することにより、開始される（Ｓ１０１）。
【００１５】
バックアップジョブＪ１とバックアップジョブＪ２とは、それぞれ異なるジョブである。ＦＴサーバ１０００がバックアップ元となる複数の記憶部として、例えばＤドライブとＥドライブとを有している場合、例えばバックアップジョブＪ１は、Ｄドライブのバックアップを行い、バックアップジョブＪ２は、Ｅドライブのバックアップを行う。バックアップ先は、例えばテープ装置（例えば磁気テープ装置）とすることができる。すなわち、バックアップジョブＪ１は、Ｄドライブの記憶内容を第１のテープ装置に書き出す処理を実行し、バックアップジョブＪ２は、Ｅドライブの記憶内容を、第２のテープ装置に書き出す処理を実行する。なお、バックアップ先デバイスは、テープ装置に限定されないことは言うまでもない。
【００１６】
続いて、同期を確立した状態で、ＦＴサーバ１０００は、業務処理に影響を及ぼす事態が発生したか否かを監視する（Ｓ１０２）。
【００１７】
上記事態の一例として、バックアップジョブＪ１、Ｊ２が業務開始時刻までに終了しないという事態がある。すなわち、業務処理が実行されていない夜間にバックアップを行う場合、業務処理が停止していることを前提とした一般的なバックアップ、すなわち業務処理によってバックアップ対象となるファイルが並行して更新されないという前提でバックアップが行われる。このため、何らかの理由によってバックアップジョブＪ１、Ｊ２が所定の時間内に終了せずに業務開始時刻を迎えると、バックアップを続行するためには業務処理の開始を遅らせる必要があるため、業務処理に影響が及ぶことになる。逆に、バックアップ中の業務処理を開始すると、バックアップが正常に行われなくなる。
【００１８】
また上記事態の他の例として、業務処理によるオープン中のファイルでも正常なバックアップが行える手法を使用して業務処理と並行してバックアップを行っている最中に、何らかの理由によってＣＰＵ負荷およびＩ／Ｏ負荷が閾値を超えるという事態がある。
【００１９】
上記のような所定の事態が発生すると、ＦＴサーバ１０００は、バックアップジョブＪ１の実行を中止し、当該バックアップジョブＪ１は第２のテープ装置で実行するように再スケジューリングされる（Ｓ１０３）。そして、ＦＴサーバ１０００は同期を解除し、第１のシステム１０１０および第２のシステム１０２０に分割される（Ｓ１０４）。
【００２０】
同期を解除した第１のシステム１０１０は、業務処理を実行する（Ｓ１０５）。また同期を解除した第２のシステム１０２０は、バックアップジョブＪ１およびバックアップジョブＪ２の双方を実行する（Ｓ１０６）。第１のシステム１０１０には、バックアップに起因する負荷がないので、業務処理を支障なく実行することができる。また第２のシステム１０２０は、バックアップ元のファイルが業務処理でアクセスされることがないので、バックアップ処理を支障なく実行することができる。
【００２１】
その後、第２のシステム１０２０は、バックアップジョブＪ１、Ｊ２の実行を終了すると、その旨を第１のシステム１０１０に通知する（Ｓ１０７）。この通知を契機に、第１のシステム１０１０および第２のシステム１０２０が再び同期を確立する（Ｓ１０８）。これにより互いに同期を確立した状態で、業務処理を実行する（Ｓ１０９）。
【００２２】
このように本実施形態によれば、効率の良いバックアップが可能である。その理由は、ＦＴサーバ１０００が第１のバックアップ先デバイスと第２のバックアップ先デバイスに互いに異なるバックアップジョブを同時に実行するためである。
【００２３】
また本実施形態によれば、業務処理に影響を及ぼす事態がたとえ発生したとしても、同期を解除し、第１のシステム１０１０が業務処理を行うと共に第２のシステム１０２０が第１および第２のバックアップジョブＪ１、Ｊ２を実行するため、業務処理に負荷をかけることなくバックアップを継続することが可能である。
【００２４】
[第２の実施形態]
[構成]
図３に示すように、本実施形態のＦＴサーバ１は、モジュール２と、モジュール３とで構成される。
【００２５】
モジュール２は、ＣＰＵモジュール１００、ＦＴコントローラ１０１、Ｉ／Ｏモジュール１０２を有している。ＣＰＵモジュール１００は、ＣＰＵ、メモリを含み、Ｉ／Ｏモジュール１０２は、各種のＩ／Ｏデバイスを含んでいる。
【００２６】
モジュール３は、ＣＰＵモジュール１１０、ＦＴコントローラ１１１、Ｉ／Ｏモジュール１１２を有している。ＣＰＵモジュール１１０は、ＣＰＵ、メモリを含み、Ｉ／Ｏモジュール１１２は、各種のＩ／Ｏデバイスを含んでいる。
【００２７】
ＣＰＵモジュール１００とＣＰＵモジュール１１０は、同一クロックで同期動作するようにＦＴコントローラ１０１およびＦＴコントローラ１１１によって制御されている。Ｉ／Ｏモジュールの各Ｉ／Ｏデバイスは、ＯＳからは両系のデバイスが認識されており、ＯＳのレイヤでソフトウェアによって二重化を行うデバイスと、そうでないデバイスとがある。
【００２８】
図３に示すように、ＬＡＮやハードディスクなどは、ＬＡＮのチーミング技術やハードディスクのミラーリング技術によりソフトウェアで二重化を行い、上位のアプリケーションには１つのデバイスとして見せている。障害発生時には、二重化ソフトウェアにより切り替え処理が行われ、これらの処理は、アプリケーションに認識させることなく実行される。
【００２９】
一方、バックアップ時に使用するテープデバイスのように、特別なソフトウェアで二重化をせず、アプリケーションから両系が見みえる状態のデバイスも存在する。このように両系を見せることで、例えば、テープデバイスＡではＤドライブのバックアップを行い、テープデバイスＢではＥドライブのバックアップを行うといったように、両系で異なるバックアップジョブを同時に実行し、効率よくバックアップを採取することが可能となる。
【００３０】
ＦＴサーバ１の同期を解除した場合、図４のようにモジュール２とモジュール３は、それぞれ独立して動作する２つのシステムに分割される。同期が解除された状態では、システム１０では、ＣＰＵモジュール１００が動作し、Ｉ／Ｏモジュール１０２の各Ｉ／Ｏデバイスに対してのみＩ／Ｏ処理が実施される。またシステム１１では、ＣＰＵモジュール１１０が動作し、Ｉ／Ｏモジュール１１２の各Ｉ／Ｏデバイスに対してのみＩ／Ｏ処理が実施される。
【００３１】
図５に、本実施形態でＦＴサーバ１に実装する各機能を示す。バックアップ終了時間監視機能２０では、バックアップジョブが所定の時間内に終了するか否かを監視する。ＣＰＵ負荷・Ｉ／Ｏ負荷監視機能２１では、ＣＰＵ負荷およびＩ／Ｏ負荷の少なくとも一方が所定の閾値を超えたか否かを監視する。同期・同期解除命令機能２２では、ＦＴサーバの同期および同期解除を実行する。バックアップジョブ終了通知機能２３では、バックアップジョブの終了を他系のシステムに通知する。
【００３２】
[動作]
図６から図９を参照し、テープデバイスに故障が発生し、所定の時間内にバックアップジョブが終了しなかった場合の動作を説明する。
【００３３】
図６では、ＦＴサーバ１が同期状態で動作しており、ＯＳ３０、ＡＰ４０が実行されている。テープデバイスＡ１０７ではバックアップジョブＡ１０８が、テープデバイスＢ１１７ではバックアップジョブＢ１１８が、それぞれ実行されている。図７に示すように、テープデバイスＡ１０７に故障が発生すると、バックアップジョブＡ１０８は中止され、バックアップジョブＡ１０８はテープデバイスＢ１１７で実施するように再スケジューリングされる。テープデバイスＢ１１７では、バックアップジョブＢ１１８に続きバックアップジョブＡ１０８も実行することになるため、所定の時間内に終了しない可能性がある。バックアップ終了時間監視機能２０で、所定の時間内に終了しないと判断した場合には、図８に示すように、同期・同期解除命令機能２２によりＦＴサーバ１の同期を解除して、それぞれ独立して動作するシステム１０とシステム１１に分割することで、システム１０ではＯＳ３１、ＡＰ４１が実行され、システム１１ではＯＳ３２、ＡＰ４２が実行される。こうして、システム１１ではバックアップジョブの実行を継続し、システム１０は業務開始時間になったら業務処理を開始する。その後、システム１１でバックアップジョブが終了すると、図９に示すように、同期・同期解除命令機能２２によりシステム１０側を基に同期を再開し二重化状態に復帰する。
【００３４】
上記の実施形態の詳細について、図１０〜図１１のフローチャートを参照して説明する。図１０は、テープデバイスに故障が発生した場合の動作を示したフローチャートである。テープデバイスＡ１０７に故障が発生すると（Ｓ１）、バックアップジョブＡ１０８を中止して（Ｓ２）、バックアップジョブＡ１０８をテープデバイスＢ１１７で実施するように再スケジューリングする（Ｓ３）。バックアップジョブ終了時間監視機能２０では、バックアップジョブが所定の時間内に終了するか否かを監視しており（Ｓ４）、所定の時間内に終了しないと判断した場合には、ＦＴサーバ１の同期を解除する（Ｓ５）。
【００３５】
図１１は、同期の解除を実行する際にＦＴサーバ１の両系がそれぞれ実施する動作を示したフローチャートである。まず、ＦＴサーバ１のシステム１０とシステム１１は同期状態で動作しており（Ｓ１０、Ｓ２０）、バックアップジョブ終了時間監視機能２０でバックアップジョブが所定の時間内に終了しないと判断した場合に、ＦＴコントローラ１０１からＦＴコントローラ１１１へ同期解除の命令を送信する（Ｓ１１）。この命令を受けてＦＴサーバ１は、それぞれ独立して動作するシステム１０とシステム１１に分割される（Ｓ２１）。この際、システム１１には一時的なＩＰアドレスを設定する。システム１１ではバックアップジョブの実行を継続し、システム１０は業務開始時間になったら業務処理を開始する（Ｓ１２）。システム１１のバックアップジョブが終了すると（Ｓ２２）、バックアップジョブ終了通知機能２３は、バックアップが終了した旨をネットワークを介してシステム１０へ通知する（Ｓ２３）。システム１０が通知を受け取ると（Ｓ１３）、システム１０のＦＴコントローラ１０１は、ＦＴコントローラ１１１へ同期命令を送信し（Ｓ１４）、同期を再開させる（Ｓ２４）。システム１０側を基に同期を再開することで、業務処理は継続され、データはＨＤＤ１０５の最新の情報を保つことができる。同期処理完了後、ＦＴサーバ１は二重化状態に復帰する（Ｓ１５、Ｓ２５）。
【００３６】
次に、図１２から図１５を参照し、バックアップジョブと業務処理が同時に動作することで負荷が高くなった場合の動作を説明する。図１２ではＦＴサーバ１が同期状態で動作しておりＯＳ３０、ＡＰ４０が実行されている。業務処理実行中の状態で、テープデバイスＡ１０７ではバックアップジョブＡ１０８が、テープデバイスＢ１１７ではバックアップジョブＢ１１８が、それぞれ実行されている。ＣＰＵ負荷・Ｉ／Ｏ負荷監視機能２１では、常にＣＰＵ負荷、Ｉ／Ｏ負荷を監視しており、どちらかでも所定の閾値を超えた場合、図１３にようにバックアップジョブＡ１０８を中止し、バックアップジョブＡ１０８はテープデバイスＢ１１７で実施するように再スケジューリングされる。
【００３７】
次に、図１４に示すように同期・同期解除命令機能２２によりＦＴサーバ１の同期を解除して、それぞれ独立して動作するシステム１０とシステム１１に分割することで、システム１０ではＯＳ３１、ＡＰ４１が実行され、システム１１ではＯＳ３２、ＡＰ４２が実行される。システム１０では業務処理を継続し、システム１１では業務処理を中止し、バックアップジョブの実行を継続する。システム１１でバックアップジョブが終了すると、図１５のように同期・同期解除命令機能２２によりシステム１０側を基に同期を再開し二重化状態に復帰する。
【００３８】
上記の実施形態の詳細について、図１６〜図１７のフローチャートを参照して説明する。図１６は、負荷が所定の閾値を超えた場合の動作を示したフローチャートである。ＣＰＵ負荷・Ｉ／Ｏ負荷監視機能２１では、業務処理とバックアップジョブが同時に動作する際、常にＣＰＵ負荷、Ｉ／Ｏ負荷を監視している（Ｓ３０）。どちらかでも所定の閾値を超えた場合、バックアップジョブＡ１０８を中止して（Ｓ３１）、バックアップジョブＡ１０８をテープデバイスＢ１１７で実施するように再スケジューリングする（Ｓ３２）。ジョブの再スケジュール完了後にＦＴサーバ１の同期を解除する（Ｓ３３）。
【００３９】
図１７は、同期の解除を実行する際にＦＴサーバ１の両系がそれぞれ実施する動作を示したフローチャートである。まず、ＦＴサーバ１のシステム１０とシステム１１は同期状態で動作しており（Ｓ４０、Ｓ５０）、ＣＰＵ負荷・Ｉ／Ｏ負荷監視機能２１で負荷が所定の閾値を超えたと判断した場合に、ＦＴコントーラ１０１からＦＴコントローラ１１１へ同期解除の命令を送信する（Ｓ４１）。この命令を受けてＦＴサーバ１は、それぞれ独立して動作するシステム１０とシステム１１に分割される（Ｓ５１）。この際、システム１１には一時的なＩＰアドレスを設定する。システム１０では業務処理を継続し（Ｓ４２）、システム１１は業務処理を中止する（Ｓ５２）。システム１１で実行しているバックアップジョブが終了すると（Ｓ５３）、バックアップジョブ終了通知機能２３はバックアップが終了した旨をネットワークを介してシステム１０へ通知する（Ｓ５４）。システム１０が通知を受け取ると（Ｓ４３）、システム１０のＦＴコントローラ１０１は、ＦＴコントローラ１１１へ同期命令を送信し（Ｓ４４）、同期を再開させる（Ｓ５５）。システム１０側を基に同期を再開することで、業務処理は継続され、データはＨＤＤ１０５の最新の情報を保つことができる。同期処理完了後、ＦＴサーバ１は二重化状態に復帰する（Ｓ４５、Ｓ５６）。
【００４０】
上記では、同期を解除する条件として、テープデバイスに故障が発生しバックアップジョブが所定の時間内に終了しなかった場合、および、バックアップジョブの負荷が業務処理に影響を与えた場合であったが、例えば、業務処理が予定より延びてしまい、バックアップジョブの開始時間までに業務が終了しなかった場合に対処するには、バックアップジョブ開始時間監視機能を設けるなどしてもよい。この機能でバックアップジョブ開始時間までに業務処理が終了するかを監視し、業務が終了しなかったと判断した場合には、バックアップジョブＡ１０８を再スケジューリングし同期を解除する。このように、同期を解除する条件は各ユーザで異なるため、適切な条件を監視する機能を使用し、同期の解除が必要と判断された場合に、ＦＴサーバ１の同期を解除する。
【００４１】
[効果]
以上のように、本実施形態は、ロックステップ方式でＣＰＵモジュールを二重化しているＦＴサーバにおいて、バックアップジョブが所定の時間内に終了しなかった場合、または、バックアップジョブの影響で業務に負荷がかかり性能低下が発生した場合などに、ＦＴサーバの同期を一時的に解除し、それぞれ独立して動作する２つのシステムに分割する。そして、片方のシステムでは業務処理を実行し、もう一方のシステムでバックアップジョブを実行する。同期の解除は、バックアップジョブ終了時間監視機能、ＣＰＵ負荷・Ｉ／Ｏ負荷監視機能などによって判断され、あらかじめ設定した時間にバックアップジョブが終了しなかった場合や、ＣＰＵ負荷・Ｉ／Ｏ負荷が閾値を超えた場合などに実行される。そして、バックアップジョブ完了後は、バックアップジョブ終了通知機能により他系のシステムに終了通知を送り同期を再開する。こうして本実施形態によれば、バックアップジョブ終了時間監視機能２０やＣＰＵ負荷・Ｉ／Ｏ負荷監視機能２１などで、同期を解除する条件を監視し、解除が必要と判断した場合に同期を解除しＦＴサーバ１を独立して動作する２つのシステムに分割することで、業務処理に影響を与えることなく、正常にバックアップを採取することが可能となる。
【００４２】
すなわち、業務処理中はオープン中のファイルが数多く存在するため、バックアップジョブを実行するとオープン中のファイルがスキップされてしまい、不完全なバックアップが採取されてしまう場合がある。そのため、業務時間帯以外の夜間など決められた時間内にバックアップアップを実施することが多い。しかし、何らかの理由で、バックアップジョブが所定の時間内に終了しなかった場合、業務処理と重なってしまい正常なバックアップが採取できていないことがあった。バックアップジョブ終了時間監視機能２０を備える本実施形態によれば、このような課題を解決することができる。
【００４３】
また、２４時間３６５日の連続稼働が必要な環境では、バックアップソフトウェア側の機能でオープン中のファイルでも正常にバックアップができるように対応しているが、バックアップジョブと業務処理の時間が重なることで、業務に余分な負荷がかかり、期待している性能がでないなどの問題が発生することがあった。ＣＰＵ負荷・Ｉ／Ｏ負荷監視機能２１を備える本実施形態によれば、このような課題を解決することができる。
【００４４】
[その他の実施形態]
上述した実施形態では、ロックステップ方式のＦＴサーバ（ハードウェアＦＴ）におけるバックアップ方法について説明してきたが、ソフトウェアでフォールトトレラントを実現しているソフトウェアＦＴにおいても同様の実装を行うことが可能である。また、上述した実施形態では二重化システムで説明をしてきたが、三重化以上のシステムでも同様の実装が可能である。三重化以上にすることで、同期を解除した場合にも冗長性を保つことができるため、二重化システムにおける欠点である同期解除時に冗長性を失ってしまうという問題を解決することが可能である。
【符号の説明】
【００４５】
１０００…ＦＴサーバ
１０１０…第１のシステム
１０１１…ＣＰＵモジュール
１０１２…ＦＴコントロール
１０１３…Ｉ／Ｏモジュール
１０２０…第１のシステム
１０２１…ＣＰＵモジュール
１０２２…ＦＴコントロール
１０２３…Ｉ／Ｏモジュール
Ｊ１…第１のバックアップジョブ
Ｊ２…第２のバックアップジョブ
【図１】
0005935439.tif 000002
【図２】
0005935439.tif 000003
【図３】
0005935439.tif 000004
【図４】
0005935439.tif 000005
【図５】
0005935439.tif 000006
【図６】
0005935439.tif 000007
【図７】
0005935439.tif 000008
【図８】
0005935439.tif 000009
【図９】
0005935439.tif 000010
【図１０】
0005935439.tif 000011
【図１１】
0005935439.tif 000012
【図１２】
0005935439.tif 000013
【図１３】
0005935439.tif 000014
【図１４】
0005935439.tif 000015
【図１５】
0005935439.tif 000016
【図１６】
0005935439.tif 000017
【図１７】
0005935439.tif 000018