(57)【特許請求の範囲】
【請求項１】
多層構成アプリケーションの災害復旧のためのコンピュータ実装方法であって、該方法の少なくとも一部分が少なくとも１つのプロセッサを備えるコンピューティングデバイスによって実施され、前記方法が、
生産サイトで複数の生産クラスタによってプロビジョニングされている多層構成アプリケーションを、災害復旧サイトで生産サイトからの通信を受信することと、前記災害復旧サイトで前記生産サイトからの通信障害を特定することの少なくとも１つにより特定することと、
複数の復旧クラスタを含む災害復旧サイトを特定することと、
前記災害復旧サイトにおける前記複数の復旧クラスタ内の一のクラスタにおいて実行するエージェントにより、前記生産サイトにおける前記多層構成アプリケーションであって前記災害復旧サイトで前記生産サイトからの通信を受信することと、前記災害復旧サイトで前記生産サイトからの通信障害を特定することの少なくとも１つにより特定された多層構成アプリケーションの障害を特定することと、
前記災害復旧サイトから、前記生産サイトから前記災害復旧サイトへの前記多層構成アプリケーションの移行を開始することと、を含み、
前記災害復旧サイトへの移行は、前記一のクラスタへの移行を含む、方法。
【請求項２】
前記多層構成アプリケーションが、前記生産サイトにおける前記複数の生産クラスタ内のデータベースクラスタから前記災害復旧サイトにおける前記複数の復旧クラスタ内の対応するデータベースクラスタへの複製のために構成されるデータベース層を含み、
前記多層構成アプリケーションの前記障害を特定することが、前記多層構成アプリケーションの前記データベース層の前記複製内の不具合を特定することを含む、請求項１に記載のコンピュータ実装方法。
【請求項３】
前記災害復旧サイトで前記障害を特定することが、前記複数の復旧クラスタ内の１つのクラスタ内で実行するエージェントから前記障害を特定することを含む、請求項１に記載のコンピュータ実装方法。
【請求項４】
前記生産サイトから前記災害復旧サイトへの前記多層構成アプリケーションの前記移行を開始することが、
前記生産サイトにおける前記多層構成アプリケーションの各層の状態を特定することと、
前記状態に基づいて、オンライン状態である前記多層構成アプリケーション内の少なくとも１つの層を特定することと、
前記層を前記生産サイトでオフラインにすることと、を含む、請求項１に記載のコンピュータ実装方法。
【請求項５】
前記生産サイトにおける前記多層構成アプリケーションの各層の状態を特定することと、
前記状態に基づいて、前記多層構成アプリケーションの前記移行中に少なくとも１つの並行処理違反を特定することと、を更に含む、請求項１に記載のコンピュータ実装方法。
【請求項６】
前記複数の復旧クラスタのうちの少なくとも１つで実行している二次アプリケーションを特定することと、
前記二次アプリケーションが前記多層構成アプリケーションより低い優先度を有することを判定することと、
前記優先度に応答して前記移行を開始する前に前記二次アプリケーションをオフラインにすることと、を更に含む、請求項１に記載のコンピュータ実装方法。
【請求項７】
前記生産サイトにおける前記多層構成アプリケーションの各層の状態を特定することと、
前記多層構成アプリケーションの前記移行を開始するために、インターフェースに前記多層構成アプリケーションの各層の前記状態を表示することと、を更に含む、請求項１に記載のコンピュータ実装方法。
【請求項８】
前記移行が、
前記多層構成アプリケーションの依存性マップを特定することと、
前記多層構成アプリケーションの各層を、前記依存性マップに従って、前記層に依存する追加の層が移行されていないときに移行させることと、を含む、請求項１に記載のコンピュータ実装方法。
【請求項９】
多層構成アプリケーションの災害復旧のためのシステムであって、該システムが、
生産サイトで複数の生産クラスタによってプロビジョニングされている多層構成アプリケーションを、災害復旧サイトで生産サイトからの通信を受信することと、前記災害復旧サイトで前記生産サイトからの通信障害を特定することの少なくとも１つにより特定するようにプログラムされる検出モジュールと、
複数の復旧クラスタを含む災害復旧サイトを特定するようにプログラムされる特定モジュールと、
前記災害復旧サイトにおける前記複数の復旧クラスタ内の一のクラスタにおいて実行するエージェントにより、前記生産サイトにおける前記多層構成アプリケーションであって前記災害復旧サイトで前記生産サイトからの通信を受信することと、前記災害復旧サイトで前記生産サイトからの通信障害を特定することの少なくとも１つにより特定された多層構成アプリケーションの障害を特定するようにプログラムされる障害モジュールと、
前記災害復旧サイトから、前記生産サイトから前記災害復旧サイトへの前記多層構成アプリケーションの移行を開始するようにプログラムされる移行モジュールであって、前記災害復旧サイトへの移行は前記一のクラスタへの移行を含む移行モジュールと、
前記検出モジュール、前記特定モジュール、前記障害モジュール、及び前記移行モジュールを実行するように構成される少なくとも１つのプロセッサと、を備える、システム。
【請求項１０】
前記多層構成アプリケーションが、前記生産サイトにおける前記複数の生産クラスタ内のデータベースクラスタから前記災害復旧サイトにおける前記複数の復旧クラスタ内の対応するデータベースクラスタへの複製のために構成されるデータベース層を含み、
前記障害モジュールが、前記多層構成アプリケーションの前記データベース層の前記複製内の不具合を特定することによって前記多層構成アプリケーションの前記障害を特定するようにプログラムされる、請求項９に記載のシステム。
【請求項１１】
前記障害モジュールが、前記複数の復旧クラスタ内の１つのクラスタ内で実行するエージェントから前記障害を特定することによって前記災害復旧サイトにおける前記障害を特定するようにプログラムされる、請求項９に記載のシステム。
【請求項１２】
前記移行モジュールが、
前記生産サイトにおける前記多層構成アプリケーションの各層の状態を特定し、
前記状態に基づいて、オンライン状態である前記多層構成アプリケーション内の少なくとも１つの層を特定し、
前記層を前記生産サイトでオフラインにすることによって、前記生産サイトから前記災害復旧サイトへの前記多層構成アプリケーションの前記移行を開始するようにプログラムされる、請求項９に記載のシステム。
【請求項１３】
前記移行モジュールが、
前記生産サイトにおける前記多層構成アプリケーションの各層の状態を特定し、
前記多層構成アプリケーションの前記移行中に少なくとも１つの並行処理違反を特定するように更にプログラムされる、請求項９に記載のシステム。
【請求項１４】
前記移行モジュールが、
前記複数の復旧クラスタのうちの少なくとも１つで実行している二次アプリケーションを特定し、
前記二次アプリケーションが前記多層構成アプリケーションより低い優先度を有することを判定し、
前記優先度に応答して前記移行を開始する前に前記二次アプリケーションをオフラインにするように更にプログラムされる、請求項９に記載のシステム。
【請求項１５】
前記移行モジュールが、
前記生産サイトにおける前記多層構成アプリケーションの各層の状態を特定し、
前記多層構成アプリケーションの前記移行を開始するために、インターフェースに前記多層構成アプリケーションの各層の前記状態を表示するように更にプログラムされる、請求項９に記載のシステム。
【発明の詳細な説明】
【背景技術】
【０００１】
多層構成アプリケーションは、組み合わせてサービスを提供し得る、独立して実行可能な構成要素を含む。組織は、組織が各構成要素の実行環境を別個に設定することができるため、柔軟性、拡張性、安全性、及び／又は可用性の増加のために、多層構成アプリケーションを使用し得る。例えば、組織は、別個のクラスタ上で多層構成アプリケーションの各構成要素を実行し、多層構成アプリケーションの対応する構成要素の要件に従って、各クラスタをプロビジョニングすることができる。一部の場合において、組織は、災害の場合に、多層構成アプリケーションに連続性を提供することを望む場合がある。
【０００２】
災害復旧は、重大な業務アプリケーションの観点から、業務運営を妨げる災害の発生後、正常な（又はほぼ正常な）業務運営を回復する能力を指す。アプリケーションの動作の一次サイトに影響を与える災害からの復旧を容易にするために、組織は、リモートサイトで復旧システムを用意して、災害の場合にアプリケーション動作を再開する場合がある。
【０００３】
従来の災害復旧システムは、管理サーバを使用して、多層構成アプリケーションの復旧を組織化する（例えば、復旧中に多層構成アプリケーションの構成要素間の依存性を処理する）場合がある。残念ながら、これらの従来のシステムは、災害復旧のための単一障害点を作り出す場合がある。例えば、管理サーバが利用不可能である場合、これらのシステムは、多層構成アプリケーションを復旧することができない場合がある。したがって、本開示は、多層構成アプリケーションの災害復旧のための追加の、かつ改善されたシステム及び方法の必要性を特定し、それに対処する。
【発明の概要】
【課題を解決するための手段】
【０００４】
以下でより詳細に説明されるように、本開示は、概して、災害復旧サイトにおける標的クラスタのうちの１つ以上から復旧管理操作を実施することによる、多層構成アプリケーションの災害復旧のためのシステム及び方法に関する。一実施例において、多層構成アプリケーションの災害復旧のためのコンピュータ実装方法は、１）生産サイトで複数の生産クラスタがプロビジョニングされている多層構成アプリケーションを特定することと、２）複数の復旧クラスタを含む災害復旧サイトを特定することと、３）災害復旧サイトで、生産サイトにおける多層構成アプリケーションの障害を特定することと、４）災害復旧サイトから、生産サイトから災害復旧サイトへの多層構成アプリケーションの移行を開始することとを含むことができる。
【０００５】
一部の実施例において、多層構成アプリケーションは、生産サイトにおける複数の生産クラスタ内のデータベースクラスタから災害復旧サイトにおける複数の復旧クラスタ内の対応するデータベースクラスタへの複製のために構成されるデータベース層を含むことができる。これらの実施例において、多層構成アプリケーションの障害を特定することは、多層構成アプリケーションのデータベース層の複製内の不具合を特定することを含むことができる。
【０００６】
一部の実施形態において、多層構成アプリケーションの障害を特定することは、複数の復旧クラスタ内の１つのクラスタ内で実行するエージェントから障害を特定することを含むことができる。一実施例において、多層構成アプリケーションの障害を特定することは、多層構成アプリケーションのユーザによって開始されたフェイルオーバーを特定することを含むことができる。この実施例において、ユーザによって開始されたフェイルオーバーを特定することは、１）生産サイトにおける多層構成アプリケーションの各層の状態を特定することと、２）該状態に基づいて、オンライン状態である多層構成アプリケーション内の少なくとも１つの層を特定することと、３）該層を生産サイトでオフラインにすることとを含むことができる。
【０００７】
一実施例において、この移行は、１）多層構成アプリケーションの依存性マップを特定することと、２）依存性マップに従って、該層に依存する追加の層が移行されていないときに、多層構成アプリケーションの各層を移行させることとを含むことができる。
【０００８】
一部の実施例において、コンピュータ実装方法はまた、１）生産サイトにおける多層構成アプリケーションの各層の状態を特定することと、２）該状態に基づいて、多層構成アプリケーションの移行中に少なくとも１つの並行処理違反を特定することとを含むことができる。一部の実施形態において、コンピュータ実装方法はまた、１）複数の復旧クラスタのうちの少なくとも１つで実行している二次アプリケーションを特定することと、２）二次アプリケーションが多層構成アプリケーションより低い優先度を有することを判定することと、３）優先度に応答して移行を開始する前に二次アプリケーションをオフラインにすることとを含むことができる。一実施例において、コンピュータ実装方法はまた、１）生産サイトにおける多層構成アプリケーションの各層の状態を特定することと、２）多層構成アプリケーションの移行を開始するために、インターフェースに多層構成アプリケーションの各層の状態を表示することとを含むことができる。
【０００９】
一実施形態において、上で説明される方法を実装するためのシステムは、１）生産サイトで複数の生産クラスタがプロビジョニングされている多層構成アプリケーションを特定するようにプログラムされる検出モジュールと、２）複数の復旧クラスタを含む災害復旧サイトを特定するようにプログラムされる特定モジュールと、３）災害復旧サイトで、生産サイトにおける多層構成アプリケーションの障害を特定するようにプログラムされる障害モジュールと、４）災害復旧サイトから、生産サイトから災害復旧サイトへの多層構成アプリケーションの移行を開始するようにプログラムされる移行モジュールとを含むことができる。システムはまた、検出モジュール、特定モジュール、障害モジュール、及び移行モジュールを実行するように構成される、少なくとも１つのプロセッサを含んでもよい。
【００１０】
一部の実施例において、上で説明される方法は、コンピュータで読み取り可能な記憶媒体上でコンピュータで読み取り可能な命令としてコード化され得る。例えば、コンピュータで読み取り可能な記憶媒体は、コンピューティングデバイスの少なくとも１つのプロセッサによって実行されるとき、コンピューティングデバイスに、１）生産サイトで複数の生産クラスタがプロビジョニングされている多層構成アプリケーションを特定し、２）複数の復旧クラスタを含む災害復旧サイトを特定し、３）災害復旧サイトで、生産サイトにおける多層構成アプリケーションの障害を特定し、４）災害復旧サイトから、生産サイトから災害復旧サイトへの多層構成アプリケーションの移行を開始させ得る１つ以上のコンピュータで実行可能な命令を含むことができる。
【００１１】
以下でより詳細に説明されるように、災害復旧サイトにおける標的クラスタのうちの１つ以上から復旧管理操作を実施することよって、本明細書に記載されるシステム及び方法は、新しい単一障害点を作り出すことなく１つのサイトから別のサイトへの多層構成アプリケーションの災害復旧（例えば、いずれかのサイトの外部の管理サーバ）を容易にすることができる。更に、一部の実施例において、これらのシステム及び方法は、災害を自動的に検出し、復旧サイトにフェイルオーバーすることができる。
【００１２】
上で言及される実施形態のうちのいずれかからの特性は、本明細書に記載される一般原理に従って、互いに組み合わせて使用されてもよい。これら及び他の実施形態、特性、及び利点は、添付の図面及び特許請求の範囲と共に以下の詳細な説明を一読することでより完全に理解されるであろう。
【図面の簡単な説明】
【００１３】
添付の図面は、多数の例示的な実施形態を例解し、かつ本明細書の一部である。以下の説明と共に、これらの図面は、本開示の多様な原理を例証及び説明する。
【図１】多層構成アプリケーションの災害復旧のための例示的なシステムのブロック図である。
【図２】多層構成アプリケーションの災害復旧のための例示的なシステムのブロック図である。
【図３】多層構成アプリケーションの災害復旧のための例示的な方法の流れ図である。
【図４】多層構成アプリケーションの災害復旧のための例示的なシステムのブロック図である。
【図５】本明細書に記載及び／又は例解される実施形態のうちの１つ以上を実装することが可能な例示的なコンピューティングシステムのブロック図である。
【図６】本明細書に記載及び／又は例解される実施形態のうちの１つ以上を実装することが可能な例示的なコンピューティングネットワークのブロック図である。
【００１４】
図面を通して、同一の参照文字及び説明は、類似しているが必ずしも同一ではない要素を示す。本明細書に記載される例示的な実施形態は多様な修正及び代替形態が可能であるが、具体的な実施形態が、図面において例として示されており、本明細書に詳細に説明されるであろう。しかしながら、本明細書に記載される例示的な実施形態は、開示される特定の形態に限定されることを意図するものではない。むしろ、本開示は、添付の特許請求の範囲内にある全ての修正、同等物、及び代替物を網羅する。
【発明を実施するための形態】
【００１５】
以下では、図１、２、及び４を参照して、多層構成アプリケーションの災害復旧のための例示的なシステムの詳細な説明を提供する。対応するコンピュータ実装方法の詳細な説明もまた、図３と併せて提供される。更に、本明細書に記載される実施形態のうちの１つ以上を実装することが可能な例示的なコンピューティングシステム及びネットワークアーキテクチャの詳細な説明は、それぞれ、図５及び６と併せて提供される。
【００１６】
図１は、多層構成アプリケーションの災害復旧のための例示的なシステム１００のブロック図である。この図に例解されるように、例示的なシステム１００は、１つ以上のタスクを実施するための１つ以上のモジュール１０２を含んでもよい。例えば、以下でより詳細に説明されるように、例示的なシステム１００は、生産サイトで複数の生産クラスタがプロビジョニングされている多層構成アプリケーションを特定するようにプログラムされる検出モジュール１０４を含むことができる。例示的なシステム１００はまた、複数の復旧クラスタを含む災害復旧サイトを特定するようにプログラムされる特定モジュール１０６を含むことができる。
【００１７】
加えて、かつ以下でより詳細に説明されるように、例示的なシステム１００は、災害復旧サイトで、生産サイトにおける多層構成アプリケーションの障害を特定するようにプログラムされる障害モジュール１０８を含むことができる。例示的なシステム１００はまた、災害復旧サイトから、生産サイトから災害復旧サイトへの多層構成アプリケーションの移行を開始するようにプログラムされる移行モジュール１１０を含むことができる。別個の要素として例解されるが、図１のモジュール１０２のうちの１つ以上は、単一のモジュール又はアプリケーションの部分を表し得る。
【００１８】
ある実施形態において、図１のモジュール１０２のうちの１つ以上は、コンピューティングデバイスにより実行されるとき、コンピューティングデバイスに１つ以上のタスクを実施させ得る、１つ以上のソフトウェアアプリケーション又はプログラムを表し得る。例えば、かつより詳細に以下で説明されるように、モジュール１０２のうちの１つ以上は、図２に例解されるデバイス（例えば、クラスタ２１２（１）〜（ｎ）及び／又はクラスタ２２２（１）〜（ｎ））、図５のコンピューティングシステム５１０、及び／又は図６の例示的なネットワークアーキテクチャ６００の部分等の１つ以上のコンピューティングデバイスで作動するように記憶及び構成されるソフトウェアモジュールを表し得る。図１にあるモジュール１０２のうちの１つ以上はまた、１つ以上のタスクを実施するように構成される、１つ以上の特殊目的のコンピュータの全て又は部分を表し得る。
【００１９】
図１にある例示的なシステム１００は、多様な方法で実装されてもよい。例えば、例示的なシステム１００の全て又は一部分は、図２における例示的なシステム２００の部分を表し得る。図２に示されるように、システム２００は、ネットワーク２０４を介して災害復旧サイト（例えば、クラスタ２２２（１）〜（ｎ）を有する）と通信する生産サイト２１０（例えば、クラスタ２１２（１）〜（ｎ）を有する）を含むことができる。例えば、災害復旧サイト２２０におけるクラスタ２２２（１）〜（ｎ）は、生産サイト２１０における障害の場合に多層構成アプリケーション２１４の１つ以上の部分の動作を再開するように構成されてもよい。
【００２０】
一実施形態において、図１のモジュール１０２のうちの１つ以上は、クラスタ２２２（１）の少なくとも１つのプロセッサによって実行されるとき、多層構成アプリケーションの災害復旧においてクラスタ２２２（１）を容易にすることができる。例えば、かつ以下でより詳細に説明されるように、モジュール１０２のうちの１つ以上は、クラスタ２２２（１）に、１）生産サイト２１０でクラスタ２１２（１）〜（ｎ）がプロビジョニングされた多層構成アプリケーション２１４を特定し、２）クラスタ２２２（１）〜（ｎ）を含む災害復旧サイト２２０を特定し、３）災害復旧サイト２２０で、生産サイト２１０における多層構成アプリケーション２１４の障害を特定し、かつ４）災害復旧サイト２２０から、生産サイト２１０から災害復旧サイト２２０への多層構成アプリケーション２１４の移行を開始させ得る。
【００２１】
クラスタ２１２（１）〜（ｎ）及び２２２（１）〜（ｎ）は、概して、コンピュータで実行可能な命令を読み取ることができる任意のタイプ又は形態のコンピューティングデバイスを表す。クラスタ２１２（１）〜（ｎ）並びに２２２（１）〜（ｎ）内のコンピューティングデバイスの例としては、これらに限定されないが、サーバ、デスクトップ、ラップトップ、タブレット、携帯電話、携帯情報端末（ＰＤＡ）、マルチメディアプレーヤ、埋め込みシステム、図５の同じ例示的なコンピューティングシステム５１０のうちの１つ以上の組み合わせ、又は任意の他の好適なコンピューティングデバイスが挙げられる。
【００２２】
ネットワーク２０４は、概して、通信又はデータ転送を容易にすることが可能な任意の媒体又はアーキテクチャを表す。ネットワーク２０４の例としては、これらに限定されないが、イントラネット、広域ネットワーク（ＷＡＮ）、ローカルエリアネットワーク（ＬＡＮ）、パーソナルエリアネットワーク（ＰＡＮ）、インターネット、電力線通信（ＰＬＣ）、セルラーネットワーク（例えば、ＧＳＭネットワーク（「ＧＳＭ」は登録商標））、図６の例示的なネットワークアーキテクチャ６００、等が挙げられる。ネットワーク２０４は、無線又は有線接続を使用して、通信又はデータ転送を容易にし得る。一実施形態において、ネットワーク２０４は、生産サイト２１０と災害復旧サイト２２０との間の通信を容易にし得る。
【００２３】
図３は、多層構成アプリケーションの災害復旧のための例示的なコンピュータ実装方法３００の流れ図である。図３に示される工程は、任意の好適なコンピュータで実行可能なコード及び／又はコンピューティングシステムにより実施されてもよい。一部の実施形態において、図３に示される工程は、図１のシステム１００の構成要素のうちの１つ以上、図２のシステム２００、図５のコンピューティングシステム５１０、及び／又は図６の例示的なネットワークアーキテクチャ６００の部分により実施されてもよい。
【００２４】
図３に例解されるように、工程３０２では、本明細書に記載されるシステムのうちの１つ以上は、生産サイトで複数の生産クラスタがプロビジョニングされている多層構成アプリケーションを特定することができる。例えば、工程３０２では、検出モジュール１０４は、図２のクラスタ２２２（１）の一部として、生産サイト２１０でクラスタ２１２（１）〜（ｎ）がプロビジョニングされた多層構成アプリケーション２１４を特定することができる。
【００２５】
本明細書で使用されるとき、「クラスタ」という用語は、概して、１つ以上のサービスを提供し、及び／又は計算作業負荷を共有するために調整するように構成される相互接続されたコンピューティングシステムの任意の群を指す。本明細書で使用されるとき、「サイト」という用語は、地理的位置、ネットワークの位置、及び／又はコンピューティングデバイスの一群を指し得る。「生産サイト」という句は、アプリケーションが移行前に動作するサイトを指し得る。同様に、「復旧サイト」という句は、アプリケーション（又はアプリケーションの一部）が移行前に移行及び／又は動作し得るサイトを指し得る。
【００２６】
本明細書で使用されるとき、「多層構成アプリケーション」という句は、概して、組み合わせてサービスを提供し得る独立して実行可能な、位置付け可能な、及び／又は設定可能な構成要素を有する任意のアプリケーションを指す。一部の実施例において、多層構成アプリケーションの各構成要素は、別個のアプリケーションを含むことができる。例えば、多層構成アプリケーションとしては、１つ以上のデータベース構成要素、１つ以上のビジネスロジック構成要素、及び／又は１つ以上の提示構成要素が挙げられ得る。この実施例において、提示構成要素は、多層構成アプリケーションのためのユーザインターフェースを提示することができる。提示構成要素は、サービス要求を処理するようにビジネスロジック構成要素と通信することができ、ビジネスロジック構成要素は、データを記憶し、及び／又は取り出すようにデータベース構成要素と通信することができる。一部の実施例において、多層構成アプリケーションは、バーチャルビジネスサービスとして管理及び／又は提示されてもよい。
【００２７】
以下でより詳細に説明されるように、一部の実施例において、多層構成アプリケーションは、生産サイトにおける複数の生産クラスタ内のデータベースクラスタから災害復旧サイトにおける複数の復旧クラスタ内の対応するデータベースクラスタへの複製のために構成されるデータベース層を含むことができる。本明細書で使用されるとき、「複製」という用語は、別の位置で１つ以上のデータオブジェクトの最新のコピーを維持するための任意の方式を指し得る。
【００２８】
検出モジュール１０４は、様々な手法のいずれかで生産サイトにおける多層構成アプリケーションを特定することができる。例えば、検出モジュール１０４は、多層構成アプリケーションをホストするとき、生産サイトを指定する構成を特定することができる。加えて、又は代替的に、検出モジュール１０４は、（例えば、復旧サイトで復旧クラスタのうちの１つ以上で実行するエージェントの一部として）生産サイトからの通信を受信し、生産サイトからの通信障害を特定することができる。少なくとも１つの実施例において、検出モジュール１０４は、管理者入力に基づいて生産サイトにおける多層構成アプリケーションを特定することができる。
【００２９】
図４は、多層構成アプリケーションの災害復旧のための例示的なシステム４００を例解する。図４に示されるように、例示的なシステム４００は、いくつかのクラスタ（例えば、ウェブクラスタ４１２、ウェブクラスタ４１４、アプリケーションクラスタ４１６、及びデータベースクラスタ４１８）を有する生産サイト４１０を含むことができる。一実施例において、生産サイト４１０のクラスタは、多層構成アプリケーションをホストするように共に動作することができる。例示的なシステム４００はまた、災害復旧サイト４２０（例えば、生産サイト４１０に災害復旧サービスを提供するように構成される）を含むことができる。図４に示されるように、災害復旧サイト４２０は、ウェブクラスタ４２２（例えば、ウェブクラスタ４１２に対応する）、ウェブクラスタ４２４（例えば、ウェブクラスタ４１４に対応する）、アプリケーションクラスタ４２６（例えば、アプリケーションクラスタ４１６に対応する）、及びデータベースクラスタ４２８（例えば、データベースクラスタ４１８に対応する）を含むことができる。例として図４を使用すると、検出モジュール１０４は、災害復旧サイト４２０におけるクラスタのうちの１つ以上の一部として、生産サイト４１０で多層構成アプリケーションを特定することができる。
【００３０】
一部の実施例において、データベースクラスタ４１８及びデータベースクラスタ４２８は、層４３０上で通信するように構成されてもよい。例えば、データベースクラスタ４１８及び／又は１つ以上の関連した機器は、データベースクラスタ４１８のデータベースをデータベースクラスタ４２８のための災害復旧サイト４２０に複製するように複製４３２で構成されてもよい。一実施例において、検出モジュール１０４は、層４３０及び／又は複製４３２を特定することによって生産サイト４１０で多層構成アプリケーションを特定することができる。
【００３１】
図３に戻ると、工程３０４では、本明細書に記載されるシステムのうちの１つ以上は、複数の復旧クラスタを含む災害復旧サイトを特定することができる。例えば、工程３０４では、特定モジュール１０６は、図２のクラスタ２２２（１）の一部として、クラスタ２２２（１）〜（ｎ）を含む災害復旧サイト２２０を特定することができる。
【００３２】
本明細書で使用されるとき、「災害復旧」という句は、サービスの連続性を提供するために、アプリケーションの少なくとも一部分を代替サイトに移行させる任意のプロセスを指し得る。一部の実施例において、「災害復旧」という句は、計画されていない事象（例えば、１つ以上のコンピューティングデバイスの障害、コンピューティング設備における電源損失等の災害）後のアプリケーションの復旧を指し得る。加えて、又は代替的に、「災害復旧」という句は、管理者によって開始された事象を指し得る。
【００３３】
特定モジュール１０６は、任意の好適な様式で災害復旧サイトを特定することができる。例えば、特定モジュール１０６は、災害復旧サイトにおける復旧クラスタのうちの１つ以上でエージェントとして実行することによって災害復旧サイトを特定することができる。
【００３４】
例として図４を使用すると、工程３０４では、特定モジュール１０６は、ウェブクラスタ４２２、ウェブクラスタ４２４、アプリケーションクラスタ４２６、及び／又はデータベースクラスタ４２８の一部として、災害復旧サイト４２０を特定することができる。
【００３５】
図３に戻ると、工程３０６では、本明細書に記載されるシステムのうちの１つ以上は、災害復旧サイトで、生産サイトにおける多層構成アプリケーションの障害を特定することができる。例えば、工程３０６では、障害モジュール１０８は、図２のクラスタ２２２（１）の一部として、災害復旧サイト２２０で、生産サイト２１０における多層構成アプリケーション２１４の障害を特定することができる。
【００３６】
障害モジュール１０８は、様々な手法のいずれかで多層構成アプリケーションの障害を特定することができる。例えば、先で言及されるように、一部の実施例において、多層構成アプリケーションは、生産サイトから災害復旧サイトへの複製のために構成されるデータベース層を含むことができる。この実施例において、障害モジュール１０８は、多層構成アプリケーションのデータベース層の複製内の不具合を特定することによって障害を特定することができる。例えば、障害モジュール１０８は、それぞれのサイトのデータベース層を接続する大域的クラスタリンク層上での定期的な予期された通信が機能しなかったことを判定することができる。
【００３７】
一部の実施例において、障害モジュール１０８は、複数の復旧クラスタ内の１つのクラスタ内で実行するエージェントから障害を特定することができる。例えば、エージェントは、多層構成アプリケーションに関して生産サイトから状態の更新を監視及び／又は受信するように構成されてもよい。
【００３８】
一実施例において、障害モジュール１０８は、多層構成アプリケーションのユーザによって開始されたフェイルオーバーを特定することによって障害を特定することができる。例えば、障害モジュール１０８は、災害復旧サイトで多層構成アプリケーションを呼び出すための管理者による試みを特定することができる。この実施例において、障害モジュール１０８は、１）生産サイトにおける多層構成アプリケーションの各層の状態を特定し、２）この状態に基づいて、オンライン状態である多層構成アプリケーション内の少なくとも１つの層を特定し、３）この層を生産サイトでオフラインにすることができる。例えば、障害モジュール１０８は、多層構成アプリケーションの各層のための各復旧クラスタでエージェントの一部として動作し、各対応する生産クラスタと通信して、対応する状態を取得することができる。
【００３９】
一部の実施例において、障害モジュール１０８は、多層構成アプリケーションの全ての層の全障害を特定することができる。加えて、又は代替的に、障害モジュール１０８は、多層構成アプリケーションの１つ以上の層の分離した障害を特定することができる。
【００４０】
例として図４を使用すると、工程３０６では、障害モジュール１０８は、災害復旧サイト４２０のクラスタのうちの１つ以上の一部として、生産サイト４１０における多層構成アプリケーションの障害を特定することができる。例えば、障害モジュール１０８は、データベースクラスタ４２８の一部として、層４３０上の通信が機能しなかったことを判定することができる。
【００４１】
図３に戻ると、工程３０８では、本明細書に記載されるシステムのうちの１つ以上は、災害復旧サイトから、生産サイトから災害復旧サイトへの多層構成アプリケーションの移行を開始することができる。例えば、工程３０８では、移行モジュール１１０は、図２のクラスタ２２２（１）の一部として、災害復旧サイト２２０から、生産サイト２１０から災害復旧サイト２２０への多層構成アプリケーション２１４の移行を開始することができる。
【００４２】
この移行は、任意の好適な工程を含むことができる。例えば、この移行は、多層構成アプリケーションの依存性マップを特定することと、多層構成アプリケーションの各層を、依存性マップに従って、この層に依存する追加の層が移行されていないときに移行させることとを含むことができる。例えば、移行モジュール１１０は、災害復旧サイトにおける復旧クラスタのうちの１つ以上の一部として、依存性マップを特定し、各層を、この層の依存性が解決されるときに移行させることができる。
【００４３】
一部の実施例において、移行モジュール１１０は、１）生産サイトにおける多層構成アプリケーションの各層の状態を特定し、２）この状態に基づいて、多層構成アプリケーションの移行中に少なくとも１つの並行処理違反を特定することができる。例えば、移行モジュール１１０が多層構成アプリケーションの１つの層を復旧サイトでオンラインにすると、移行モジュール１１０は、この層が生産サイトでオフライン状態であることを確実にすることができる。
【００４４】
一部の実施例において、移行モジュール１１０はまた、１）複数の復旧クラスタのうちの少なくとも１つで実行している二次アプリケーションを特定し、２）二次アプリケーションが多層構成アプリケーションより低い優先度を有することを判定し、３）優先度に応答して移行を開始する前に二次アプリケーションをオフラインにすることができる。例えば、災害復旧サイトにおける復旧クラスタのうちの１つ以上は、災害復旧サイトが災害復旧のために必要とされない間、優先度の低いアプリケーションをホストするように構成されてもよい。したがって、移行モジュール１１０は、災害復旧サイトが生産サイトの代わりに多層構成アプリケーションをホストするために必要とされるとき、優先度の低いアプリケーションを直ちにオフラインにすることができる。
【００４５】
一部の実施例において、移行モジュール１１０はまた、１）生産サイトにおける多層構成アプリケーションの各層の状態を特定し、２）多層構成アプリケーションの移行を開始するために、インターフェースに多層構成アプリケーションの各層の状態を表示することができる。例えば、移行モジュール１１０は、多層構成アプリケーションの各局所層及び／又は多層構成アプリケーションの大域層の状態を表示することができる。この実施例において、管理者は、状態情報を使用して、災害の範囲を判定し、移行を実施することを判定することができる。
【００４６】
上で説明されるように、災害復旧サイトにおける標的クラスタのうちの１つ以上から復旧管理操作を実施することよって、本明細書に記載されるシステム及び方法は、新しい単一障害点を作り出すことなく１つのサイトから別のサイトへの多層構成アプリケーションの災害復旧（例えば、いずれかのサイトの外部の管理サーバ）を容易にすることができる。更に、一部の実施例において、これらのシステム及び方法は、災害を自動的に検出し、復旧サイトにフェイルオーバーすることができる。
【００４７】
図５は、本明細書に記載及び／又は例解される実施形態のうちの１つ以上を実装することが可能な例示的なコンピューティングシステム５１０のブロック図である。例えば、コンピューティングシステム５１０の全て又は一部分は、単独で、又は他の要素と組み合わせて、本明細書に記載される特定、始動、開始、移行、判定、及び表示の工程のうちの１つ以上を実施し得る、並びに／又は実施するための手段であり得る。コンピューティングシステム５１０の全て又は一部分はまた、本明細書に記載及び／若しくは例解される任意の他の工程、方法、若しくはプロセスを実施し得る、並びに／又は実施するための手段であり得る。
【００４８】
コンピューティングシステム５１０は、コンピュータで読み取り可能な命令を実行することが可能な任意の単一又はマルチプロセッサコンピューティングデバイス又はシステムを広範に表す。コンピューティングシステム５１０の例としては、これらに限定されないが、ワークステーション、ラップトップ、クライアント側端末、サーバ、分散型コンピューティングシステム、ノートデバイス、又は任意の他のコンピューティングシステム又はデバイスが挙げられる。コンピューティングシステム５１０の最も基本的な構成において、コンピューティングシステム５１０は、少なくとも１つのプロセッサ５１４及びシステムメモリ５１６を含み得る。
【００４９】
プロセッサ５１４は、概して、データ処理又は命令の解釈及び実行が可能な任意のタイプ又は形態を表す。ある実施形態において、プロセッサ５１４は、ソフトウェアアプリケーション又はモジュールから命令を受信し得る。これらの命令は、プロセッサ５１４に、本明細書に記載及び／又は例解される例示的な実施形態のうちの１つ以上の機能を実施させ得る。
【００５０】
システムメモリ５１６は、概して、データ及び／又は他のコンピュータで読み取り可能な命令を記憶することが可能な揮発性又は非揮発性の記憶デバイス又は媒体の任意のタイプ又は形態を表す。システムメモリ５１６の例としては、これらに限定されないが、ランダムアクセスメモリ（ＲＡＭ）、読み取り専用メモリ（ＲＯＭ）、フラッシュメモリ、又は任意の他の好適なメモリデバイスが挙げられる。必ずしも必要ではないが、ある実施形態において、コンピューティングシステム５１０は、揮発性メモリユニット（例えば、システムメモリ５１６等）、及び非揮発性記憶デバイス（例えば、以下で詳細に説明されるように、一次記憶デバイス５３２等）を含み得る。一実施例において、図１からのモジュール１０２のうちの１つ以上は、システムメモリ５１６にロードされ得る。
【００５１】
ある実施形態において、例示的なコンピューティングシステム５１０はまた、プロセッサ５１４及びシステムメモリ５１６に加えて、１つ以上の構成要素又は要素を含んでもよい。例えば、図５に例解されるように、コンピューティングシステム５１０は、通信基盤５１２を介して各々が相互接続され得る、メモリコントローラ５１８、入力／出力（Ｉ／Ｏ）コントローラ５２０、及び通信インターフェース５２２を含んでもよい。通信基盤５１２は、概して、コンピューティングデバイスの１つ以上の構成要素の間の通信を容易にすることが可能な任意のタイプ又は形態の基盤を表す。通信基盤５１２の例としては、これらに限定されないが、通信バス（ＩＳＡ、ＰＣＩ、ＰＣＩｅ、類似のバス等）、及びネットワークが挙げられる。
【００５２】
メモリコントローラ５１８は、概して、コンピューティングシステム５１０の１つ以上の構成要素間でメモリ若しくはデータを扱う、又は通信を制御することが可能な任意のタイプ又は形態のデバイスを表す。例えば、ある実施形態において、メモリコントローラ５１８は、通信基盤５１２を介して、プロセッサ５１４、システムメモリ５１６、及びＩ／Ｏコントローラ５２０との間で通信を制御し得る。
【００５３】
Ｉ／Ｏコントローラ５２０は、概して、コンピューティングデバイスの入力及び出力機能を調整及び／又は制御することが可能な任意のタイプ又は形態のモジュールを表す。例えば、ある実施形態において、Ｉ／Ｏコントローラ５２０は、プロセッサ５１４、システムメモリ５１６、通信インターフェース５２２、ディスプレイアダプタ５２６、入力インターフェース５３０、及び記憶インターフェース５３４のような、コンピューティングシステム５１０の１つ以上の要素間のデータの転送を制御し得る、又は容易にし得る。
【００５４】
通信インターフェース５２２は、広範に、例示的なコンピューティングシステム５１０と１つ以上の追加のデバイスとの間の通信を容易にすることが可能な任意のタイプ又は形態の通信デバイス又はアダプタを表す。例えば、ある実施形態において、通信インターフェース５２２は、コンピューティングシステム５１０と、追加のコンピューティングシステムを含む私的又は公的なネットワークとの間の通信を容易にし得る。通信インターフェース５２２の例としては、これらに限定されないが、有線ネットワークインターフェース（ネットワークインターフェースカード等）、無線ネットワークインターフェース（無線ネットワークインターフェースカード等）、モデム、及び任意の他の好適なインターフェースが挙げられる。少なくとも１つの実施形態において、通信インターフェース５２２は、インターネット等の、ネットワークへの直接的なリンクを介して、リモートサーバへ直接的な接続を提供し得る。通信インターフェース５２２はまた、例えば、ローカルエリアネットワーク（イーサネットネットワーク（「イーサネット」は登録商標、以下同じ）等）、パーソナルエリアネットワーク、電話若しくはケーブルネットワーク、携帯電話接続、衛星データ接続、又は任意の他の好適な接続を通じて、間接的にかかる接続を提供し得る。
【００５５】
ある実施形態において、通信インターフェース５２２はまた、外部バス又は通信チャンネルを介して、コンピューティングシステム５１０と、１つ以上の追加のネットワーク又は記憶デバイスとの間の通信を容易にするように構成されるホストアダプタを表し得る。ホストアダプタの例としては、これらに限定されないが、ＳＣＳＩホストアダプタ、ＵＳＢホストアダプタ、ＩＥＥＥ  １３９４ホストアダプタ、ＳＡＴＡ及びｅＳＡＴＡホストアダプタ、ＡＴＡ及びＰＡＴＡホストアダプタ、ファイバーチャンネルインターフェースアダプタ、イーサネットアダプタ等が挙げられる。通信インターフェース５２２はまた、コンピューティングシステム５１０が、分散型又はリモートコンピューティングに関与することを可能にし得る。例えば、通信インターフェース５２２は、実行のためにリモートデバイスから命令を受信するか、又はリモートデバイスへ命令を送信することができる。
【００５６】
図５に例解されるように、コンピューティングシステム５１０はまた、ディスプレイアダプタ５２６を介して通信基盤５１２に連結される少なくとも１つのディスプレイデバイス５２４を含んでもよい。ディスプレイデバイス５２４は、概して、ディスプレイアダプタ５２６によって転送される情報を視覚的に表示することが可能な任意のタイプ又は形態のデバイスを表す。同様に、ディスプレイアダプタ５２６は、概して、ディスプレイデバイス５２４上で表示のために、通信基盤５１２から（又は、当該分野で周知の、フレームバッファから）グラフィック、テキスト、及び他のデータを転送するように構成される任意のタイプ又は形態のデバイスを表す。
【００５７】
図５に例解されるように、例示的なコンピューティングシステム５１０はまた、入力インターフェース５３０を介して通信基盤５１２に連結される少なくとも１つの入力デバイス５２８を含んでもよい。入力デバイス５２８は、概して、例示的なコンピューティングシステム５１０に、コンピュータ又は人間のいずれかが生成した入力を提供することが可能な任意のタイプ又は形態の入力デバイスを表す。入力デバイス５２８の例としては、これらに限定されないが、キーボード、ポインティングデバイス、音声認識デバイス、又は任意の他の入力デバイスが挙げられる。
【００５８】
図５に例解されるように、例示的なコンピューティングシステム５１０はまた、記憶インターフェース５３４を介して通信基盤５１２に連結される一次記憶デバイス５３２及びバックアップ記憶デバイス５３３を含んでもよい。記憶デバイス５３２及び５３３は、概して、データ及び／又は他のコンピュータで読み取り可能な命令を記憶することが可能な任意のタイプ又は形態の記憶デバイス又は媒体を表す。例えば、記憶デバイス５３２及び５３３は、磁気ディスクドライブ（例えば、いわゆるハードドライブ）、ソリッドステートドライブ、フロッピーディスクドライブ（「フロッピー」は登録商標、以下同じ）、磁気タイプドライブ、光ディスクドライブ、フラッシュドライブ等であり得る。記憶インターフェース５３４は、概して、記憶デバイス５３２及び５３３とコンピューティングシステム５１０の他の構成要素との間でデータを転送するための任意のタイプ又は形態のインターフェース又はデバイスを表す。
【００５９】
ある実施形態において、記憶デバイス５３２及び５３３は、コンピュータソフトウェア、データ、又は他のコンピュータで読み取り可能な情報を記憶するように構成される取り外し可能な記憶ユニットから読み取る、及び／又は取り外し可能な記憶ユニットに書き込むように構成されてもよい。好適な取り外し可能な記憶ユニットの例としては、これらに限定されないが、フロッピーディスク、磁気テープ、光ディスク、フラッシュメモリデバイス等が挙げられる。記憶デバイス５３２及び５３３はまた、コンピュータソフトウェア、データ、又は他のコンピュータで読み取り可能な命令がコンピューティングシステム５１０にロードされることを可能にするための他の類似の構造又はデバイスを含んでもよい。例えば、記憶デバイス５３２及び５３３は、ソフトウェア、データ、又は他のコンピュータで読み取り可能な情報を読み取る及び書き込むように構成され得る。記憶デバイス５３２及び５３３はまた、コンピューティングシステム５１０の一部であってもよく、又は他のインターフェースシステムを通じてアクセスされる別個のデバイスであってもよい。
【００６０】
多くの他のデバイス又はサブシステムが、コンピューティングシステム５１０に接続され得る。反対に、本明細書に記載及び／又は例解される実施形態を実践するために、図５に例解される構成要素及びデバイスの全てが存在する必要はない。上で言及されるデバイス及びサブシステムはまた、図５に示されるものとは異なる方法で相互接続されてもよい。コンピューティングシステム５１０はまた、任意の数のソフトウェア、ファームウェア、及び／又はハードウェア構成を用いてもよい。例えば、本明細書に開示される例示的な実施形態のうちの１つ以上は、コンピュータで読み取り可能な記憶媒体上で、コンピュータプログラム（コンピュータソフトウェア、ソフトウェアアプリケーション、コンピュータで読み取り可能な命令、又はコンピュータ制御論理とも称される）としてコード化され得る。「コンピュータで読み取り可能な記憶媒体」という句は、概して、コンピュータで読み取り可能な命令を記憶又は担持することが可能な任意の形態のデバイス、キャリア、又は媒体を指す。コンピュータで読み取り可能な記憶媒体の例としては、これらに限定されないが、搬送波等の伝送型媒体、並びに磁気記憶媒体（例えば、ハードディスクドライブ及びフロッピーディスク）、光記憶媒体（例えば、ＣＤ−又はＤＶＤ−ＲＯＭ）、電子記憶媒体（ソリッドステートドライブ及びフラッシュ媒体）、及び他の分散システム等の非一時的型媒体が挙げられる。
【００６１】
コンピュータプログラムを含むコンピュータで読み取り可能な記憶媒体は、コンピューティングシステム５１０にロードされ得る。次いで、コンピュータで読み取り可能な記憶媒体上に記憶されるコンピュータプログラムの全ての又は一部分は、システムメモリ５１６、並びに／又は記憶デバイス５３２及び５３３の多様な部分に記憶され得る。プロセッサ５１４により実行されるとき、コンピューティングシステム５１０にロードされるコンピュータプログラムは、プロセッサ５１４に、本明細書に記載及び／若しくは例解される例示的な実施形態のうちの１つ以上の機能を実施させ得る、並びに／又は実施するための手段であり得る。加えて、又は代替的に、本明細書に記載及び／又は例解される例示的な実施形態のうちの１つ以上は、ファームウェア及び／又はハードウェアに実装され得る。例えば、コンピューティングシステム５１０は、本明細書に開示される例示的な実施形態のうちの１つ以上を実装するように適合される、特定用途向け集積回路（ＡＳＩＣ）として構成されてもよい。
【００６２】
図６は、クライアントシステム６１０、６２０、及び６３０、並びにサーバ６４０及び６４５がネットワーク６５０に連結され得る、例示的なネットワークアーキテクチャ６００のブロック図である。上に詳述されるように、ネットワークアーキテクチャ６００の全て又は一部分は、単独で、又は他の要素と組み合わせて、本明細書に開示される特定、始動、開始、移行、判定、及び表示の工程を実施し得る、並びに／又は実施するための手段であり得る。ネットワークアーキテクチャ６００の全て又は一部分はまた、本開示に記載される他の工程及び特性を実施するために使用され得る、並びに／又は実施するための手段であり得る。
【００６３】
クライアントシステム６１０、６２０、及び６３０は、概して、図５の例示的なコンピューティングシステム５１０等の、コンピューティングデバイス又はシステムの任意のタイプ又は形態を表す。同様に、サーバ６４０及び６４５は、概して、多様なデータベースサービスを提供する及び／又はあるソフトウェアアプリケーションを作動させるように構成される、アプリケーションサーバ又はデータベースサーバ等のコンピューティングデバイス又はシステムを表す。ネットワーク６５０は、概して、例えば、イントラネット、広域ネットワーク（ＷＡＮ）、ローカルエリアネットワーク（ＬＡＮ）、パーソナルエリアネットワーク（ＰＡＮ）、又はインターネットを含む、任意の電気通信又はコンピュータネットワークを表す。一実施例において、クライアントシステム６１０、６２０、及び／若しくは６３０、並びに／又はサーバ６４０及び／若しくは６４５は、図１からのシステム１００の全ての又は一部分を含んでもよい。
【００６４】
図６に例解されるように、１つ以上の記憶デバイス６６０（１）〜（Ｎ）は、サーバ６４０に直接的に取設され得る。同様に、１つ以上の記憶デバイス６７０（１）〜（Ｎ）は、サーバ６４５に直接的に取設され得る。記憶デバイス６６０（１）〜（Ｎ）及び記憶デバイス６７０（１）〜（Ｎ）は、概して、データ及び／又は他のコンピュータで読み取り可能な命令を記憶することが可能な任意のタイプ又は形態の記憶デバイス又は媒体を表す。ある実施形態において、記憶デバイス６６０（１）〜（Ｎ）及び記憶デバイス６７０（１）〜（Ｎ）は、ＮＦＳ、ＳＭＢ、又はＣＩＦＳ等の、多様なプロトコルを使用してサーバ６４０及び６４５と通信するように構成されるネットワーク取設記憶（ＮＡＳ）デバイスを表し得る。
【００６５】
サーバ６４０及び６４５はまた、記憶エリアネットワーク（ＳＡＮ）ファブリック６８０に接続され得る。ＳＡＮファブリック６８０は、概して、複数の記憶デバイス間の通信を容易にすることが可能な任意のタイプ又は形態のコンピュータネットワーク又はアーキテクチャを表す。ＳＡＮファブリック６８０は、サーバ６４０及び６４５と複数の記憶デバイス６９０（１）〜（Ｎ）及び／又は知的記憶アレイ６９５との間の通信を容易にし得る。ＳＡＮファブリック６８０はまた、デバイス６９０（１）〜（Ｎ）及びアレイ６９５が、クライアントシステム６１０、６２０、及び６３０にローカルで取設されたデバイスとして現れるような様式で、ネットワーク６５０並びにサーバ６４０及び６４５を介して、クライアントシステム６１０、６２０、及び６３０と記憶デバイス６９０（１）〜（Ｎ）及び／又は知的記憶アレイ６９５との間の通信を容易にし得る。記憶デバイス６６０（１）〜（Ｎ）及び記憶デバイス６７０（１）〜（Ｎ）と同様に、記憶デバイス６９０（１）〜（Ｎ）及び知的記憶アレイ６９５は、概して、データ及び／又は他のコンピュータで読み取り可能な命令を記憶することが可能な任意のタイプ又は形態の記憶デバイス又は媒体を表す。
【００６６】
ある実施形態において、及び図５の例示的なコンピューティングシステム５１０を参照して、図５の通信インターフェース５２２等の通信インターフェースは、各クライアントシステム６１０、６２０、及び６３０とネットワーク６５０との間の接続性を提供するために使用されてもよい。クライアントシステム６１０、６２０、及び６３０は、例えば、ウェブブラウザ又はその他のクライアントソフトウェアを使用して、サーバ６４０又は６４５上の情報にアクセスすることが可能であり得る。そのようなソフトウェアは、クライアントシステム６１０、６２０、及び６３０が、サーバ６４０、サーバ６４５、記憶デバイス６６０（１）〜（Ｎ）、記憶デバイス６７０（１）〜（Ｎ）、記憶デバイス６９０（１）〜（Ｎ）、又は知的記憶アレイ６９５によりホストされるデータにアクセスすることを可能にし得る。図６は、データを交換するためのネットワーク（インターネット等）の使用を描写するが、本明細書に記載及び／又は例解される実施形態は、インターネット又はいかなる特定のネットワークに基づく環境にも限定されない。
【００６７】
少なくとも１つの実施形態において、本明細書に開示される例示的な実施形態のうちの１つ以上の全て又は一部分は、コンピュータプログラムとしてコード化され、サーバ６４０、サーバ６４５、記憶デバイス６６０（１）〜（Ｎ）、記憶デバイス６７０（１）〜（Ｎ）、記憶デバイス６９０（１）〜（Ｎ）、知的記憶アレイ６９５、又はそれらの任意の組み合わせ上にロードされ、それによって実行され得る。本明細書に開示される少なくとも１つの例示的な実施形態の全て又は一部分は、コンピュータプログラムとしてとしてコード化され、サーバ６４０に記憶され、サーバ６４５により作動され、ネットワーク６５０を通じてクライアントシステム６１０、６２０、及び６３０に分散され得る。
【００６８】
上に詳述されるように、コンピューティングシステム５１０及び／又はネットワークアーキテクチャ６００の１つ以上の構成要素は、単独で、又は他の要素と組み合わせて、多層構成アプリケーションの災害復旧のための例示的な方法の１つ以上の工程を実施し得る、及び／又は実施するための手段であり得る。
【００６９】
先述の開示は、特定のブロック図、流れ図、及び実施例を使用して多様な実施形態を説明するが、本明細書に記載及び／又は例解される各ブロック図の構成要素、流れ図の工程、動作、及び／又は構成要素は、個別に及び／又は集合的に、広範なハードウェア、ソフトウェア、又はファームウェア（又はそれらの任意の組み合わせ）構成を使用して、実装されてもよい。更に、他の構成要素内に含まれる構成要素のいずれの開示も、多くの他のアーキテクチャが同じ機能性を達成するために実装することができるため、事実上例示的なものと見なされるべきである。
【００７０】
一部の実施例において、図１の例示的なシステム１００の全ての又は一部分は、クラウド−コンピューティング又はネットワークに基づく環境の部分を表し得る。クラウド−コンピューティング環境は、インターネットを介して多様なサービス及びアプリケーションを提供することができる。これらのクラウドに基づくサービス（例えば、サービスとしてのソフトウェア、サービスとしてのプラットフォーム、サービスとしての基盤等）は、ウェブブラウザ又は他のリモートインターフェースを通じてアクセス可能であり得る。本明細書に記載される多様な機能は、リモートデスクトップ環境又は任意の他のクラウドに基づくコンピューティング環境を通じて提供され得る。
【００７１】
本明細書に記載及び／又は例解されるプロセスパラメータ及び工程の順序は、ほんの一例として提供され、所望に応じて変更することができる。例えば、本明細書に例解及び／又は記載される工程が特定の順序で示される又は論議されるが、これらの工程は、必ずしも例解又は論議される順序で実施される必要はない。本明細書に記載及び／又は例解される多様な例示的な方法はまた、本明細書に記載及び／又は例解される工程のうちの１つ以上を省略してもよく、又は開示されるものに加えて追加の工程を含んでもよい。
【００７２】
種々の実施形態が、完全に機能的なコンピューティングシステムの文脈において、本明細書に記載及び／又は例解されているが、これらの例示的な実施形態のうちの１つ以上は、実際に分散を行うために使用されるコンピュータで読み取り可能な記憶媒体の特定のタイプにかかわらず、多様な形態のプログラム製品として分散され得る。本明細書に開示される実施形態はまた、あるタスクを実施するソフトウェアモジュールを使用して実装されてもよい。これらのソフトウェアモジュールは、スクリプト、バッチ、又はコンピュータで読み取り可能な記憶媒体上又はコンピューティングシステムに記憶され得る、他の実行可能なファイルを含んでもよい。一部の実施例において、これらのソフトウェアモジュールは、本明細書に開示される例示的な実施形態のうちの１つ以上を実施するように、コンピューティングシステムを構成し得る。
【００７３】
更に、本明細書に記載されるモジュールのうちの１つ以上は、データ、物理的デバイス、及び／又は物理的デバイスの表現を１つの形態から別の形態へ変換し得る。例えば、本明細書に列挙されるモジュールのうちの１つ以上は、コンピューティングデバイスを多層構成アプリケーションの災害復旧のためのデバイスに変換することができる。
【００７４】
先行の説明は、他の当業者が、本明細書に開示される例示的な実施形態の多様な態様を最大限に利用することを可能にするように提供されている。この例示的な説明は、包括的であること、又は開示されるいずれの正確な形態に限定されることも意図するものではない。多くの修正及び変形が、本開示の趣旨及び範囲から逸脱することなく可能である。本明細書に開示される実施形態は、あらゆる点で具体例であり、制限するものではないと見なされるべきである。本開示の範囲を決定する際、添付の特許請求の範囲及びその均等物への参照がなされるべきである。
【００７５】
特に記されない限り、本明細書及び特許請求の範囲に使用される、「ａ」又は「ａｎ」という用語は、「少なくとも１つの」を意味すると解釈される。更に、使用の容易さのために、本明細書及び特許請求の範囲に使用される際、単語「含む」及び「有する」は、単語「備える」と同義であり、かつ同じ意味を有する。
【図１】
0006289452.tif 000002
【図２】
0006289452.tif 000003
【図３】
0006289452.tif 000004
【図４】
0006289452.tif 000005
【図５】
0006289452.tif 000006
【図６】
0006289452.tif 000007