(57)【要約】【課題】ディザスタリカバリシステムでは、正・副双方のサイトで計算機及び記憶装置が必要であり安価に導入できないという課題がある。また、副サイト側の設定を手動で行わなければならず設定ミス等が発生するという課題がある。【解決手段】正サイトの構成情報を記憶装置サブシステムに書き出す構成定義作成ステップと、該記憶装置に書き出された該構成情報を該ネットワークを経由して副サイトの記憶装置サブシステムに複製するデータ転送ステップと、該転送された該構成情報を受信し副サイトの記憶装置サブシステムに記憶するデータ受信ステップと、該記憶した構成情報を読み出し副サイトのサーバの設定を行う構成定義ステップを設ける。【選択図】  図１
2004295465.tif 000002
【特許請求の範囲】
【請求項１】
第一の計算機、前記第一の計算機と接続される第一の記憶装置サブシステム及び前記第一の記憶装置サブシステムと接続される第二の記憶装置サブシステムを有し、
前記第一の計算機は、
該第一の計算機が有する構成情報を前記第一の記憶装置サブシステムに送信し、
前記第一の記憶装置サブシステムは、前記構成情報を該第一の記憶装置サブシステムの所定の場所に格納し、前記構成情報を含む該第一の記憶装置サブシステムに格納されたデータを前記第二の記憶装置サブシステムに転送し、
前記第二の記憶装置サブシステムは、前記第一の記憶装置サブシステムから送信されたデータを受信し、受信したデータに前記構成情報が含まれるか否かを確認し、前記構成情報を該第二の記憶装置サブシステム内の所定の場所に格納することを特徴とする計算機システム。
【請求項２】
前記第二の記憶装置サブシステムに接続される第二の計算機を有し、
前記第二の計算機は、
前記第二の記憶装置システムの前記所定の場所に前記構成情報が格納されているかどうかを確認し、
前記所定の場所から前記構成情報を読み出して前記構成情報に含まれる情報に従って該第二の計算機で使用される各種変数の設定を行うことを特徴とする請求項１記載の計算機システム。
【請求項３】
前記第一の記憶装置サブシステムは、
前記転送されたデータが前記第一の計算機によって更新された場合に、前記第二の記憶装置サブシステムに前記更新されたデータを送信し、
前記第二の記憶装置サブシステムは、受信した前記更新されたデータを該第二の記憶装置サブシステムの更新されたデータを格納すべき場所に格納することを特徴とする請求項２記載の計算機システム。
【請求項４】
前記第二の記憶装置サブシステムは、
前記構成情報に含まれる情報と該第二の記憶装置サブシステムの構成を示す情報とを比較し、その内容が一致しない場合には前記構成情報の前記所定の場所への格納を中止することを特徴とする請求項３記載の計算機システム。
【請求項５】
前記構成情報には、
前記第一の記憶装置サブシステムが前記第一の計算機に提供するボリュームを特定する識別子と前記ボリュームがマウントされるディレクトリの情報が含まれ、
前記第一の記憶装置サブシステムの所定の場所とは、前記ボリュームの先頭部分であることを特徴とする請求項４記載の計算機システム。
【請求項６】
前記構成情報には、
前記第一の計算機についての環境変数に関する情報が含まれることを特徴とする請求項５記載の計算機システム。
【請求項７】
前記構成情報には、
前記第一の計算機及び前記第一の記憶装置サブシステムで稼動するデータベース管理システムの定義情報が含まれることを特徴とする請求項６記載の計算機システム。
【請求項８】
前記構成情報には、
前記第一の計算機で稼動するアプリケーションの定義情報が含まれることを特徴とする請求項７記載の計算機システム。
【請求項９】
記憶装置サブシステムに接続される計算機であって、
処理部及び前記記憶装置サブシステムと接続されるインターフェースを有し、
前記処理部は、
前記記憶装置サブシステムの所定の場所に該計算機が使用する構成情報が格納されているか否かを確認し、
前記所定の場所に前記構成情報が格納されていない場合には、前記構成情報を作成し、前記インターフェースを介して前記記憶装置サブシステムに前記構成情報を送信することを特徴とする計算機。
【請求項１０】
前記制御部は、
前記所定の場所に前記構成情報が格納されいてる場合には、前記構成情報を前記インターフェースを介して読み出し、該構成情報の内容にしたがって該計算機の設定を行うことを特徴とする請求項９記載の計算機。
【請求項１１】
前記計算機の設定には、前記記憶装置サブシステムが有するボリュームを該計算機で実行されるファイルシステムにマウントする処理が含まれることを特徴とする請求項１０記載の計算機。
【請求項１２】
他の記憶装置サブシステムと接続されるポートと、
前記ポートと接続される制御部と、
前記制御部と接続されるディスク装置とを有し、
前記制御部は、前記ポートを介して前記他の記憶装置サブシステムからデータを受信し、受信された前記データに構成情報が含まれる場合に前記構成情報に含まれる情報と該記憶装置サブシステムの構成についての情報を比較し、比較された情報が一致する場合には、前記構成情報を前記ディスク装置の所定の場所に格納することを特徴とする記憶装置サブシステム。
【請求項１３】
前記制御部は、
前記比較された情報が一致しない場合には、前記構成情報を前記ディスク装置に格納しないことを特徴とする請求項１２記載の記憶装置サブシステム。
【請求項１４】
前記構成情報には、
前記他の記憶装置サブシステムが計算機に提供するボリュームを特定する識別子と前記ボリュームがマウントされるディレクトリの情報が含まれ、
前記所定の場所とは、前記ボリュームに対応する前記ディスク装置の先頭部分であることを特徴とする請求項１３記載の記憶装置サブシステム。
【発明の詳細な説明】
【０００１】
【発明の属する技術分野】
本発明は、記憶装置サブシステム間でデータを転送することにより、災害時におけるデータ保全を行うディザスタリカバリシステムに関する。
【０００２】
【従来の技術】
ネットワークに新たな計算機を追加する技術として、特許文献１が知られている。特許文献１には、第一の計算機、オペレーティングシステム（以下「ＯＳ」）を格納した第一の記憶装置サブシステム及び第一の記憶装置サブシステムに格納されたデータの複製を格納する第二の記憶装置サブシステムからなるネットワークシステムに第二の計算機が追加された場合に、第一の計算機が第二の記憶装置サブシステムの設定変更を行って第二の計算機に第二の記憶装置サブシステムを割当てることにより、第二の記憶装置サブシステムに格納されたＯＳを第二の計算機にインストールする技術が開示されている。
【０００３】
また、記憶装置サブシステムに設定される共有ディスクを用いた２重系システム（以下、ＨＡ（Ｈｉｇｈ  Ａｖａｉｒａｂｉｌｉｔｙ）構成と記す）の設定方法として、非特許文献１に開示された技術が知られている。本方法では、副系の計算機が記憶装置サブシステムに作成された共有ディスクを検出してその共有ディスクのボリューム情報を読み出すことにより、ＨＡ構成における副系の計算機の共用ボリュームの定義を行う。これにより、ＨＡ構成に含まれる副系の計算機に、自動的にボリュームを認識させることができる。
【０００４】
【特許文献１】
特開２００２−２７８７６９号公報
【非特許文献１】
ＶＥＲＩＴＡＳ  Ｃｌｕｓｔｅｒ  Ｖｏｌｕｍｅ  Ｍａｎａｇｅｒ  ＶＥＲＩＴＡＳ  Ｃｌｕｓｔｅｒ  Ｆｉｌｅ  Ｓｙｓｔｅｍ  クラスタ環境のための新しいＶＥＲＩＴＡＳのボリューム管理及びファイルシステムテクノロジ、ｈｔｔｐ：／／ｗｗｗ．ｖｅｒｉｔａｓ．ｃｏｍ／ｊｐ／ｐｒｏｄｕｃｔｓ／ｐｄｆｓ／ｃｖｍ＿ｃｆｓ＿ｗｐ．ｐｄｆ
【０００５】
【発明が解決しようとする課題】
特許文献１では、第二の計算機が追加された後、第一の計算機が第二の記憶装置サブシステムの設定変更を行っている。したがってこの場合、第一の計算機に障害が発生すると、第二の計算機は第二の記憶装置サブシステムを使用することが出来ない。また、ディザスタリカバリシステムとして使用する場合、第一・第二双方の計算機が必須となるので、安価なディザスタリカバリシステムを提供できない。
【０００６】
また、非特許文献１に開示された技術では、副系の計算機が自動的に共有ボリュームを認識することが出来るが、正系の計算機と副系の計算機は同一の記憶装置サブシステムを共有する必要があり、このままではディザスタリカバリシステムには使用できない。また、非特許文献１の技術をディザスタリカバリシステムへ転用することを考える。この場合、ディザスタリカバリシステムでは正サイト・副サイトでディスク装置の実体が異なることが多く、正副記憶装置サブシステム間でディスク装置の計算機に対するエミュレーションタイプや記憶容量等の整合性が保証されず、このままでは副サイトの計算機が自動的にボリュームを認識することが出来ないという課題がある。
【０００７】
また、正サイトで稼動していたデータベース等のアプリケーションを副サイトで継続して稼動させたい場合、従来では、人手によって副サイトの設定を行う必要があり、速やかな継続稼動が出来なかった。
【０００８】
本発明の目的は、ディザスタリカバリシステムの副サイトの構築を容易にし、かつ安価なディザスタリカバリシステムを提供することである。
【０００９】
【課題を解決するための手段】
上記の目的を解決するために、本発明は以下の構成とする。すなわち、第一の計算機、第一の計算機と接続される第一の記憶装置サブシステム、及び第一の記憶装置サブシステムと接続される第二の記憶装置サブシステムとを有する計算機システムにおいて、第一の計算機が有する、第一の記憶装置サブシステムを使用する際に必要となる情報や各種の環境変数等（以下「構成情報」）を第一の記憶装置サブシステムに送信し、第一の記憶装置サブシステムが、送信された構成情報を記憶装置サブシステムが有する記憶装置に格納する。その後、第一の記憶装置サブシステムは、第一の記憶装置サブシステムに格納された構成情報を第二の記憶装置サブシステムに転送して複製し、第二の記憶装置サブシステムが、転送された構成情報を受信して第二の記憶装置サブシステムが有する記憶装置に格納する。更に、計算機システムに第二の計算機が追加された際に、第二の計算機が第二の記憶装置サブシステムに格納された構成情報を読み出して第二の計算機自身の設定を行う。
【００１０】
ここで、計算機自身の設定とは、記憶装置サブシステムが有する記憶領域のマウント、各種アプリケーションで使用される定義情報の読み込み等がある。
【００１１】
尚、構成情報には、アプリケーションの実行の際に必要になる定義情報や、計算機に記憶領域をマウントする際に必要となる情報等が含まれる。
【００１２】
【発明の実施の形態】
以下、図１〜図１０を用いて本発明の実施形態について説明する。図１は、本発明が適用される計算機システムの一実施形態の構成を示す図である。本システムは、サーバ１ａ、サーバ１ｂ、記憶装置サブシステム２ａ及び記憶装置サブシステム２ｂを有する。これらの装置は、ネットワーク３で相互に接続されている。尚、サーバ１ｂは、後述する通り、後にネットワーク３に接続される計算機でも良い。
【００１３】
本システムでは、サーバ１ａ及び記憶装置サブシステム２ａをまとめて正サイトと称する。また、サーバ１ｂ及び記憶装置サブシステム２ｂをまとめて副サイトと称する。
【００１４】
サーバ１は計算機であり、ＣＰＵ１０１、主記憶１０２、ネットワークインタフェース１０３、ディスプレイ１０４、キーボード１０５、ＣＤ−ＲＯＭ１０６、コントローラ１０７、ディスク装置１０８、及びデータインタフェース１０９を有する。
【００１５】
記憶装置サブシステム２はデータを格納する記憶装置であり、ポート２１、ディスクコントローラ２２、制御メモリ２３、プロセッサ２４、キャッシュメモリ２５、及びディスク装置２６を有する。なお、ここでディスク装置１０８及び２６は論理的な記憶装置であり、実際には複数個の物理的記憶装置が一つの論理的な記憶装置を構成していてもよい。この場合、複数個の物理的記憶装置がディスクアレイを構成していても良い。ここで、物理的記憶装置とは、ハードディスクドライブやＤＶＤといった記憶媒体を有する物理的な記憶装置である。
【００１６】
サーバ１のディスク装置１０８には、データベース管理システムプログラム４、アプリケーションプログラム５、構成定義作成プログラム６及びボリュームマウントプログラム１８が格納される。これらのプログラムは、ＣＤ−ＲＯＭ１０６からディスク装置１０８にインストールされ、その後主記憶１０２に読み出され、ＣＰＵ１０１により実行される。尚、ＣＤ−ＲＯＭ１０６ではなく、サーバ１に接続されるネットワーク３等を介してディスク装置１０８にこれらのプログラムがインストールされても良い。
【００１７】
記憶装置サブシステム２ａの制御メモリ２３ａには、正サイトのディスク装置２６と副サイトのディスク装置２６の対応関係（以下「ペア関係」）を管理するペア定義テーブル７、一つ以上のディスク装置２６（２６ａ〜２６ｃの何れか一つ以上）を一つ又はそれ以上の記憶領域（以下「ボリューム」）として管理するためのボリューム定義テーブル８ａ、及びディスク装置２６に記憶されたデータを副サイトの記憶装置サブシステム２ｂに転送する際にプロセッサ２４ａが実行するデータ転送プログラム１６が格納されている。
【００１８】
あるボリュームの先頭部分（又はボリューム内の事前に決められた位置。以下の説明ではボリュームの先頭部分に格納されるとして説明をする。尚、その格納位置は正副サイトで共有される。副サイトは、あらかじめ正サイトあるいはユーザ等からその格納位置に関する情報を入手する）に対応するディスク装置２６には、そのボリュームがＯＳのファイルシステムのどの部分に割り当てられる（以下「マウントされる」）かを示す構成定義テーブル９が格納される。また、ボリュームを構成するディスク装置２６には、そのボリュームを使用するサーバ１上で稼動するデータベース管理システムプログラム４やアプリケーションプログラム５についての設定情報が登録される定義情報ファイルの名称が登録される環境変数定義ファイル１５が格納される。尚、環境変数定義ファイル１５には、その他にも、サーバ１で実行されるプログラムの設定情報等のサーバ１の環境変数の情報が登録されたファイルの格納位置についての情報が登録される。
【００１９】
本実施形態では、環境変数定義ファイル１５には、そのボリュームがマウントされるファイルシステムで所定の名称が与えられる。環境変数定義ファイル１５に登録される値はアプリケーションプログラム５等に固有の名称を示す値であり、ファイル名ではなく例えば作業ディレクトリ名であってもよい。
【００２０】
ディスク装置２６には、さらにデータベース管理システムプログラム４の定義情報ファイルであるＤＢＭＳ定義情報ファイル１０及びアプリケーションプログラム５の定義情報ファイルであるアプリケーション定義情報ファイル１３が格納される。これらは、環境変数定義ファイル１５に登録されたファイル名が付与されてディスク装置２６に格納される。
【００２１】
サーバ１は、構成定義作成プログラム６を実行することで、環境変数定義ファイル１５及び各プログラムの定義情報ファイルを作成する。
【００２２】
また、ディスク装置２６には、データベース管理システムプログラム４やアプリケーションプログラム５で使用されるデータ１４も記憶される。さらに、データベース管理システムプログラム４、アプリケーションプログラム５及び構成定義作成プログラム６が記憶装置サブシステム２ａのディスク装置２６に格納されていても良い。この場合、サーバ１は、これらのプログラムを使用する際には、ネットワーク３を介して記憶装置サブシステム２からこれらのプログラムを読み出して、ディスク装置１０８等に格納して使用する。
【００２３】
記憶装置サブシステム２ｂの制御メモリ２３ｂには、データ受信プログラム１７、ペア定義テーブル７、ボリューム定義テーブル８ｂ及び定義チェックプログラム１１が格納される。
【００２４】
データ受信プログラム１７は、記憶装置サブシステム２ｂが、記憶装置サブシステム２ａからネットワーク３及びポート２１ｄを経由して転送されたデータを受信し、ディスク装置２６ｄ〜２６ｆにデータを格納する際に、プロセッサ２４ｂで実行される。
【００２５】
定義チェックプログラム１１は、記憶装置サブシステム２ｂが、記憶装置サブシステム２ａから受信したデータが構成定義テーブル９に含まれるデータであるか否かを判断し、構成定義テーブル９である場合には構成定義内容のチェックを行う際に、プロセッサ２４ｂで実行される。
【００２６】
また、ディスク装置２６ｄ〜２６ｆには、記憶装置サブシステム２ａのディスク装置２６に記憶されている構成定義テーブル９、環境変数定義ファイル１５、ＤＢＭＳ定義情報１０、アプリケーション定義情報１３及びデータ１４の複製が記憶される。
【００２７】
図２は、ペア定義テーブル７の構成の例を示す図である。ペア定義テーブル７は、ペア関係の集合であるグループの名称が登録されるグループ名フィールド２０１、ペア関係の名称が登録されるペア名フィールド２０２、ペア関係を構成する正サイトの記憶装置サブシステム２ａのポートの情報が登録される正ポートフィールド２０３、ペア関係を構成する正サイトの記憶装置サブシステム２ａの論理ユニット名が登録される正論理ユニットフィールド２０４、ペア関係を構成する副サイトの記憶装置サブシステム２ｂのポートの情報が登録される副ポートフィールド２０５、ペアを構成する副サイトの記憶装置サブシステム２ｂの論理ユニット名が登録される副論理ユニットフィールド２０６及びペア関係の状態を示す情報が登録される状態フィールド２０７を有する。
【００２８】
論理ユニット（以下「ＬＵ」）は、ディスク装置２６で構成される記憶領域を管理する際の単位である。また、ボリュームは、ＬＵへのアクセスに使用されるポートの名称とボリュームを構成するＬＵの名称との組み合わせにより一意に識別される。以下、ボリュームを表記する際に、ポートの名称及びＬＵの名称を用いてボリューム（ポート名称、ＬＵ名称）と表記する。尚、本実施形態では、ＬＵ一つが一つのボリュームに対応するとして説明するが、複数のＬＵが一つのボリュームを構成しても良い。
【００２９】
図２の例では、２つのペア関係Ｐ１、Ｐ２を持つグループＧ１が定義されており、Ｐ１を構成する正サイトのボリュームがボリューム（ポート２１ｂ、ＬＵ０）、Ｐ１を構成する副サイトのボリュームがボリューム（ポート２１ｄ、ＬＵ０）、及び状態がＡＣＴＩＶＥであることがレコード２０８ａにより示されている。ここで、ＡＣＴＩＶＥとは、レコード２０８で示されたペア間でデータの複製処理、すなわち正副サイトのデータの内容を一致させる処理が行われている最中であることを示している。また、Ｐ２を構成する正サイトのボリュームがボリューム（ポート２１ｂ、ＬＵ１）、Ｐ２を構成する副サイトのボリュームがボリューム（ポート２１ｄ、ＬＵ１）、及びその状態がＡＣＴＩＶＥであることがレコード２０８ｂにより示されている。
【００３０】
図３は、ボリューム定義テーブル８の構成の例を示す図である。ボリューム定義テーブル８は、ユーザがボリューム定義プログラムを用いて予め設定する。ここで、ボリューム定義プログラムとは、ネットワーク３に接続される管理用の計算機（図示せず）で実行されるプログラムである。ユーザは、管理用の計算機を介して、記憶装置サブシステム２に設定すべきボリュームの情報を記憶装置サブシステム２に送付する。
【００３１】
記憶装置サブシステム２は、送付された情報をボリューム管理テーブル８に登録する。ボリューム定義テーブル８は、ボリュームを識別するポートの情報が登録されるポートフィールド３０５、ボリュームを構成するＬＵの情報が登録されるＬＵフィールド３０１、ボリュームを構成するディスク装置２６の情報が登録されるドライブフィールド３０２、及び計算機がボリュームを使用する方法（以下、「エミュレーションタイプ」）を示す情報が登録されるエミュレーションタイプフィールド３０３を有する。
【００３２】
本実施形態においては、例として、制御メモリ２３ａには、図３の上段に示すボリューム定義テーブル８ａが、制御メモリ２３ｂには、図３の下段に示すボリューム定義テーブル８ｂがそれぞれ格納される。図３に示したボリューム定義テーブル８ａには２つのボリュームが登録されており、ボリューム（ポート２１ｂ、ＬＵ０）はディスク装置２６ａから構成されエミュレーションタイプがなしであることがレコード３０３ａから、ボリューム（ポート２１ｂ、ＬＵ１）はディスク装置２６ｂ及び２６ｃから構成され、エミュレーションタイプがＲＡＩＤ１であることがレコード３０３ｂ及び３０３ｃからわかる。
【００３３】
一方、テーブル８ｂには２つのボリュームが登録されており、ボリューム（ポート２１ｄ、ＬＵ０）はディスク装置２６ｄから構成されエミュレーションタイプはなしであることがレコード３０３ｄから、ボリューム（ポート２６ｄ、ＬＵ１）はディスク装置２６ｅ及び２６ｆから構成されエミュレーションタイプがＲＡＩＤ１であることがレコード３０３ｅ及び３０３ｆからわかる。
【００３４】
図４は、構成定義テーブル９の構成の例を示す図である。構成定義テーブル９は、正サイトの記憶装置サブシステム２ａの場合は、サーバ１ａがボリュームマウントプログラム１８を実行することにより、副サイトの記憶装置サブシステム２ｂの場合は、正サイトの記憶装置サブシステム２ａから転送された構成定義テーブル９を、記憶装置サブシステム２ｂがボリュームに書き込むことによりそれぞれ作成される。
【００３５】
構成定義テーブル９は、ボリュームがマウントされるディレクトリを示す情報が登録されるマウント先フィールド４０１、ボリュームの記憶容量を示す情報が登録される容量フィールド４０２、エミュレーションタイプを示す情報が登録されるエミュレーションタイプフィールド４０３を有する。
【００３６】
図４上段に示すテーブル９ａは、記憶装置サブシステム２ａのボリューム（ポート２１ｄ、ＬＵ０）（ディスク装置２６ａから構成されている）に格納される構成定義テーブル９の例であり、ボリューム（ポート２１ｄ、ＬＵ０）のマウント先のディレクトリが／ＡＰ／ｖｏｌ１、容量が１００ＭＢ、エミュレーションタイプがなしであることを示す情報がレコード４０３ａに登録されている。尚、以下、ファイルシステムにおけるファイルあるいはディレクトリを示す表記として、ファイルシステム内のアクセスパスの表記「／ＡＰ／ｖｏｌ１」等を用いる。
【００３７】
図４下段に示すテーブル９ｂは、記憶装置サブシステム２ａのボリューム（ポート２６ｄ、ＬＵ１）（ディスク２６ａ及び２６ｂから構成されている）に格納される構成定義テーブル９の例であり、ボリューム（ポート２６ｄ、ＬＵ１）のマウント先のディレクトリが／ＤＢ／ｖｏｌ１、容量が２００ＭＢ、エミュレーションタイプがＲＡＩＤ１であることを示す情報がレコード４０３ｂに登録されている。
【００３８】
以下、図１を用いて本システムの動作の概要を示す。まず、ユーザは、予め管理用の計算機等を使用して、記憶装置サブシステム２ａのボリューム定義テーブル８ａに値を設定しておく。
【００３９】
次に、サーバ１ａの起動時、サーバ１ａは、記憶装置サブシステム２ａに存在するボリュームをファイルシステムにマウントする。その際、サーバ１ａは、ボリュームを構成するディスク装置２６に、そのボリュームとマウント先のファイルシステムについての関係を示す構成情報である構成定義テーブル９を作成・格納する。
【００４０】
次に、サーバ１ａは、データベース管理システムプログラム４ａの実行の際に使用される定義情報ファイルであるＤＢＭＳ定義情報１０及びアプリケーション５ａの実行の際に使用される定義情報ファイルであるアプリケーション定義情報１３を作成し、これら作成された情報をボリュームに格納する。また、サーバ１ａは、これら定義情報ファイル等の環境変数の記憶装置サブシステム２ａにおける格納場所を示す情報を登録するファイルとして環境変数定義ファイル１５を作成し、記憶装置サブシステム２ａのボリュームに格納する。
【００４１】
副サイトの構成時、ユーザは、予め、ネットワーク３に副サイトの記憶装置サブシステム２ｂを接続し、管理用の計算機等を介して、記憶装置サブシステム２ｂのボリューム定義テーブル８ｂを作成し値を登録する。次に、サーバ１ａは、記憶装置サブシステム２ａに対して、ディスク装置２６ａ〜ｃに格納されたデータを記憶装置サブシステム２ｂにそれぞれ転送するよう指示する。これにより、ディスク装置２６ａ〜ｃに格納された構成定義テーブル９、環境変数定義ファイル１５、アプリケーション定義情報１３、ＤＢＭＳ定義情報１０及びデータ１４が副サイトの記憶装置サブシステム２ｂに記憶される。
【００４２】
尚、上述のデータ転送の際、記憶装置サブシステム２ｂは、転送されるデータに構成定義テーブル９の情報が含まれるかどうか及び転送された構成定義テーブル９の情報と記憶装置サブシステム２ｂが有するボリュームとの間の整合性をチェックする。尚、整合性が取れない場合、記憶装置サブシステム２ｂは、構成定義テーブル９の情報をディスク装置２６に保存しない。
【００４３】
サーバ１ｂがネットワーク３に接続され起動されると、サーバ１ｂは、構成定義プログラム１２を実行し、記憶装置サブシステム２ｂのボリューム認識及びボリュームのマウントを行う。
【００４４】
この際、サーバ１ｂは、ディスク装置２６に格納されている構成定義テーブル９ａを読み出すことでそのディスク装置２６で構成されるボリュームのマウント先ディレクトリ名を取得し、取得したマウント先ディレクトリ名に基づいて、ボリュームのマウントを行う。尚、サーバ１ｂは、ペア定義テーブル７を参照して、ボリュームのペア状態が全てＳＵＳＰＥＮＤ状態であるグループをマウントの対象とする。
【００４５】
その後、サーバ１ｂは、マウントされたボリュームから環境変数定義ファイル１５を取得し、本ファイル１５から各種定義情報ファイルの格納場所を確認して、データベース管理システムプログラム４ｂやアプリケーションプログラム５ｂを起動する。これにより、サーバ１ｂは、ボリュームから構成定義テーブル９等の構成情報を読み出すだけで、そのボリュームのマウント先となるファイルシステム、そのボリュームを使用するアプリケーション等の設定情報を自動的に取得することが出来、サーバ１ａ無しにボリュームのマウント、アプリケーションの設定をすることができる。以下、上述した処理の詳細な手順について図を用いて説明する。
【００４６】
図８は、サーバ１が、ＣＰＵ１０１でボリュームマウントプログラム１８を実行することでボリュームのマウントを行う処理１０００の手順を示す図である。まず、サーバ１は、ユーザよりボリュームをマウントしたいディレクトリの名称（以下「マウント先ディレクトリ名」）とマウントするボリュームを示すデバイスファイル名を取得する。
【００４７】
尚、後述するが、ユーザが使用するアプリケーションプログラムやファイルシステム上では、ボリュームはデバイスファイル名で認識される。サーバ１は、後述するボリューム−デバイスファイルマップによって、デバイスファイル名から所定のボリュームを構成するポート及びＬＵの情報を取得し、これらの情報を用いて、記憶装置サブシステム２に対し、ボリュームの指定を行う（ステップ１００１）。
【００４８】
次に、サーバ１は、デバイスファイル名で指定されたボリュームの先頭に、構成定義テーブル９が格納されているか否かをチェックする。具体的には、サーバ１は、指定されたボリュームを示す情報（具体的にはポート名及びＬＵ名）及び構成定義テーブル９を要求するコマンドを記憶装置サブシステム２に送信し、その結果を記憶装置サブシステム２から受信する。尚、サーバ１は構成定義テーブル９が格納されている場所（本実施形態ではボリュームの先頭）についての情報を他のサーバ１又はユーザからの入力等で得ている。したがって、サーバ１は、構成定義テーブル９を要求するコマンドに、その格納されている場所を示す情報を含めて送付する。ただし、構成定義テーブル９が格納されている場所に関する情報を記憶装置サブシステム２が有する構成としても良い。この場合には、サーバ１は、単に構成定義テーブル９を要求するコマンドを記憶装置サブシステム２に送信するだけでよい（ステップ１００５）。
【００４９】
ユーザに指定されたボリュームに構成定義テーブル９が格納されてなければ、サーバ１は、まず、ボリューム定義テーブル８のサイズフィールド３０６とエミュレーションタイプフィールド３０３を参照し、指定されたボリュームの記憶容量とエミュレーションタイプを取得する。具体的には、サーバ１は、記憶装置サブシステム２に対して、ボリュームを指定し、記憶容量及びエミュレーションタイプの情報の送信を要求し、これらの情報を受信する（ステップ１００２）。
【００５０】
次にサーバ１は、そのボリュームのマウント先ディレクトリ名、記憶容量及びエミュレーションタイプに基づいて構成定義テーブル９を作成し、記憶装置サブシステム２に送信する。構成定義テーブル９の格納先は、指定されたボリュームの先頭部分である。具体的には、サーバ１は、マウント先ディレクトリ名、記憶容量及びエミュレーションタイプの情報を記憶装置サブシステム２に送信し、これらの情報を指定したボリュームの先頭に書き込むよう指示する。この際、サーバ１は、指定したボリュームに対応する環境変数定義ファイル１５を作成し、併せて指定したボリュームに格納するよう、記憶装置サブシステム２に指示する（ステップ１００３）。
【００５１】
最後にサーバ１は、指定されたボリュームを、ステップ１００１で取得したマウント先ディレクトリ名、又はサーバ１が指定したマウント先ディレクトリ名に対応する場所にマウントする（ステップ１００４）。ステップ１００５で構成定義ファイル９があると判断した場合は、サーバ１は、そのまま上述したステップ１００４の処理を実行する。
【００５２】
図５は、記憶装置サブシステム２ｂが、データ受信プログラム１７及び定義チェックプログラム１１を実行することによって行う処理手順の例を示す図である。記憶装置サブシステム２ｂは、これらの処理を行うことによって、記憶装置サブシステム２ａから送信された情報の内容を確認する。
【００５３】
尚、記憶装置サブシステム２間で転送されるデータには、データ転送の単位ごとに、正サイトのポート名、ＬＵ名及び位置を示す情報が付与されている。データを受信した記憶装置サブシステム２ｂは、記憶装置サブシステム２ｂにおけるペア定義テーブル７の正ポートフィールド２０３及び正ＬＵフィールド２０４の値が受信したデータに含まれるポート名及びボリューム名と一致するレコード２０８に対応する副ポートフィールド２０５及び副ＬＵフィールド２０６によって識別されるボリュームを、受信したデータが格納されるボリュームとして特定する。さらに、記憶装置サブシステム２ｂは、データのボリューム内の格納位置を、受信したデータに含まれる位置情報の値により決定する。尚、ボリュームがＲＡＩＤ構成のディスク装置２６で構成されている場合は、どのディスク装置２６のどの位置にデータが記録されるかは記憶装置サブシステム２により一意に決定される。
【００５４】
データを受信した記憶装置サブシステム２ｂは、まず、受信したデータの中に、構成定義テーブル９が含まれているか否かを判定する。具体的には、構成定義テーブル９がボリュームの先頭に格納されている場合、記憶装置サブシステム２ｂは、ボリュームの先頭データが記憶装置サブシステム２ａから送られたか否かで構成定義テーブル９が受信したデータに含まれているかどうか判定する。ボリュームの先頭データであるか否かは、転送されるデータに含まれる位置についての情報で判断される。
【００５５】
尚、記憶装置サブシステム２ｂは、構成定義テーブル９の格納位置（ここではボリュームの先頭）についての情報を、あらかじめ正サイトやユーザ等から入手する。入手の方法としては、正サイトのサーバ１ａが格納位置に関する情報を記憶装置サブシステム２ｂに転送する例や、ユーザが管理端末を解してボリューム定義テーブルを登録する際に格納位置に関する情報を併せて登録しても良い（ステップ６０１）。
【００５６】
受信したデータに構成定義テーブル９が含まれている場合、記憶装置サブシステム２ｂは、転送された構成定義テーブル９が格納されるボリュームの記憶容量が、転送された構成定義テーブル９のフィールド４０２に登録された記憶容量より大きいかチェックする。尚、転送された構成定義テーブル９が格納されるボリュームの記憶容量は、構成定義テーブル９の転送時に一緒に転送されるボリュームの情報（ポート名及びＬＵ）に基づいて記憶装置システム２ｂがペア定義テーブル７及びボリューム定義テーブル８ｂを検索し、該当するレコードのサイズフィールド３０６を参照することで得られる（ステップ６０２）。
【００５７】
フィールド４０２に登録された記憶容量より構成定義テーブル９が格納されるボリュームの記憶容量が大きい場合、記憶装置サブシステム２ｂは、ボリューム定義テーブル８ｂに登録された該当するボリュームのエミュレーションタイプと転送された構成定義テーブル９のエミュレーションタイプフィールド４０３に登録された値が等しいかをチェックする（ステップ６０３）。値が等しい場合、転送された構成定義テーブル９をボリュームに格納する。また、ステップ６０１で構成定義テーブル９が転送されていないと判断した場合も、記憶装置サブシステム２は、転送されたデータをボリュームに記憶する（ステップ６０４）。
【００５８】
尚、ステップ６０２で、ボリュームの記憶容量がフィールド４０２に登録された記憶容量よりも小さいと判断された場合又はステップ６０３でエミュレーションタイプが異なると判断された場合、記憶装置サブシステム２ｂは、転送されたデータをディスク装置２６に格納せずに処理を終了する。
【００５９】
図６は、サーバ１ｂが、構成定義プログラム１２を実行することによって実施する記憶装置サブシステム２ｂの構成定義処理の手順を示す図である。本処理によって、サーバ１ｂは、記憶装置サブシステム２ｂが有するボリュームを使用して、アプリケーションプログラム５等を実行することが出来るようになる。本処理は、例えば、サーバ１ｂがネットワーク３に接続され起動された際や、ユーザがサーバ１ｂにボリュームマウントコマンドを入力した際に実行される。
【００６０】
まず、サーバ１ｂは、サーバ１ｂからアクセス可能な記憶装置サブシステム２ｂの全ポート及び全ＬＵの情報を記憶装置サブシステム２ｂから取得し、これらの情報をサーバ１ｂのファイルシステムで管理されるデバイスファイルと対応付け、その対応関係を示したデータ、具体的には、図９に示したボリューム−デバイスファイルマップ１１０１を、主記憶１０２又はディスク装置１０８のいずれか一つに記憶する（ステップ７０４）。
【００６１】
次に、サーバ１ｂは、記憶装置サブシステム２ｂが有するペア定義テーブル７の状態フィールド２０７の値が全てＳＵＳＰＥＮＤ状態になっているグループの有無をチェックする。尚、ＳＵＳＰＥＮＤ状態とは、ペア関係を構成するボリューム間で、データの内容の一致を維持する処理が行われていない状態を示す（ステップ７０１）。全てＳＵＳＰＥＮＤ状態になっているグループがあった場合、サーバ１ｂは、そのグループに対応する副ポートフィールド２０５及び副ＬＵフィールド２０６に登録されている値を記憶装置サブスシステム２ｂのペア定義テーブル７から取得する（ステップ７０２）。
【００６２】
次に、サーバ１ｂは、ステップ７０２で取得したポート及びＬＵを有するボリュームに対応するデバイスファイルをステップ７０４で作成したマップを使用して取得する。一方、サーバ１ｂは、取得したデバイスファイルに対応するボリュームの先頭から構成定義テーブル９を読出し、構成定義テーブル９のフィールド４０１を参照して、そのボリュームのマウント先ディレクトリ名を示す情報を取得する（ステップ７０３）。
【００６３】
その後、サーバ１ｂは、取得したデバイスファイル名及びマウント先ディレクトリ名を引数として、ボリュームマウントプログラム１８を実行し、ボリュームをマウント先となるファイルシステムにマウントする（ステップ１０００）。ペア状態が全てＳＵＳＰＥＮＤであるグループに属する全てのボリュームのマウントが完了したら、サーバ１は、マウントされたボリュームから、環境変数定義ファイル１５を取得し、取得した環境変数定義ファイル１５に登録された値を確認する（ステップ７０５）。
【００６４】
その後、サーバ１ｂは、データベース管理システムプログラム４ｂやアプリケーションプログラム５ｂの実行を開始する。データベース管理システムプログラム４ｂやアプリケーションプログラム５ｂの実行を開始する際、サーバ１ｂは、先に取得された環境変数定義ファイル１５に登録された情報から定義情報ファイルの存在位置を特定し、それらのファイルを取得する（ステップ７０６）。
【００６５】
以下、図１に示したシステムにおいて、副サイトの記憶装置サブシステム２ｂに、正サイトの構成情報（本実施形態では、構成定義テーブル、環境定義情報ファイル、及び各種プログラムの定義情報ファイルが含まれる）及びデータが転送される例について説明する。ここで、記憶装置サブシステム２ａの制御メモリ２３ａには図２に示す状態のペア定義テーブル７及び図３に示すボリューム定義テーブル８ａが存在するとする。また、記憶装置サブシステム２ｂの制御メモリ２３ｂには、図２に示す状態のペア定義テーブル７及び図３に示すボリューム定義テーブル８ｂが存在するとする。
【００６６】
ネットワーク３に接続されたサーバ１ａが起動されると、サーバ１ａは、まずデータインタフェース１０９ａに接続された記憶装置サブシステム２ａが保持するボリュームについての情報を記憶装置サブシステム２ａから取得し、その情報をデバイスファイルと対応付け、ボリューム−デバイスファイルマップ１１０１ａとして記憶する。ボリューム−デバイスファイルマップ１１０１ａは、サーバ１ａの主記憶１０２ａに記憶される。図９は、ボリューム−デバイスファイルマップ１１０１の例を示す図である。この例では、デバイスファイル名が／ｄｅｖ／ｃ１ｔ１ｄ１であるデバイスファイルにボリューム（ポート２１ｂ、ＬＵ０）が関連付けられ、デバイスファイル名が／ｄｅｖ／ｃ１ｔ１ｄ２であるデバイスファイルにボリューム（ポート２１ｂ、ＬＵ１）が対応付けられている。
【００６７】
次に、サーバ１ａは、ユーザやアプリケーション等から、ボリュームをマウントするマウント先ディレクトリ名及びマウントされるボリュームに対応したデバイスファイル名を受信して、ボリュームマウントプログラム１８を実行する（ステップ１０００）。
【００６８】
図１０は、サーバ１ａがユーザ等から受信する情報の例をマウント先ディレクトリ−デバイスファイルマップ１２０１として示す図である。マウント先ディレクトリ−デバイスファイルマップ１２０１を受信したサーバ１ａは、マップ１２０１のレコード１２０２ａから、デバイスファイル／ｄｅｖ／ｃ１ｔ１ｄ１がディレクトリ／ＡＰ／ｖｏｌ１に、レコード１２０２ｂからデバイスファイル／ｄｅｖ／ｃ１ｔ１ｄ２がディレクトリ／ＤＢ／ｖｏｌ１にそれぞれマウントされると判断する（ステップ１００１）。
【００６９】
その後、サーバ１ａは、デバイスファイルで指定されたボリュームに構成定義テーブル９が格納されているか否かを判定する。サーバ１ａはまず、／ｄｅｖ／ｃ１ｔ１ｄ１として指定されたボリュームについて判定をする。サーバ１ａは、ボリューム−デバイスファイルマップ１１０１ａから、指定されたボリュームのポート等の情報、具体的には、ポート２１ｂ及びＬＵ０を取得する。ポート等の情報を取得したサーバ１ａは、これらの情報を用いて記憶装置サブシステム２ａへアクセスし、ボリュームの先頭に対応するディスク装置２６に構成定義テーブル９が格納されているかどうか判断する。本例においては、まだボリュームに構成定義テーブル９が記憶されていないため、サーバ１ａは、構成定義テーブル９はなしと判定する（ステップ１００５）。
【００７０】
次に、サーバ１ａは、ボリューム定義テーブル８ａを参照し、マウントされるボリュームのエミュレーションタイプ及びサイズを取得する。本例においては、サーバ１ａは、ポートフィールド３０５、ＬＵフィールド３０１の値がそれぞれポート２１ｂ、ＬＵ０であるレコード３０４ａのエミュレーションタイプフィールド３０３とサイズフィールド３０６を参照する。その結果、サーバ１ａは、マウントされるボリュームのエミュレーションタイプはなし、サイズは１００ＭＢであるという情報を取得する（ステップ１００２）。
【００７１】
次に、サーバ１ａは、取得したマウント先ディレクトリ名（／ＡＰ／ｖｏｌ１）、エミュレーションタイプ（なし）及びサイズ（１００ＭＢ）を用いて、構成定義テーブル９ａのマウント先フィールド４０１、エミュレーションタイプ４０３及び容量４０２フィールドを作成する。その後、サーバ１ａは、作成した構成定義テーブル９ａを記憶装置サブシステム２ａに送信し、マウントされるボリュームの先頭に記憶するよう、記憶装置サブシステム２ａに指示する。この例では、図３のボリューム定義テーブル８ａのレコード３０４ａのドライブフィールド３０２から、ボリュームを構成するディスク装置２６がディスク装置２６ａであることがわかる。従って、構成定義テーブル９ａは、ディスク装置２６ａの先頭に配置される（ステップ１００３）。
【００７２】
その後、サーバ１ａは、取得したマウント先ディレクトリ名で指定された位置に、／ｄｅｖ／ｃ１ｔ１ｄ１に関連付けられたボリューム（ポート２１ｂ、ＬＵ０）をマウントする（ステップ１００４）。
【００７３】
サーバ１ａは、レコード１２０２ｂに示されたデバイスファイルに関連付けられたボリュームに対しても同様の処理を行い、ボリューム（ポート２１ｂ、ＬＵ１）の先頭に図４に示す構成定義テーブル９ｂを格納するよう記憶装置サブシステム２ａに指示し、／ＤＢ／ｖｏｌ１で示された位置にボリューム（ポート２１ｂ、ＬＵ１）をマウントする。
【００７４】
この例では、図３のボリューム定義テーブル８ａのレコード３０４ｂ及び３０４ｃのドライブフィールド３０２から、ボリュームを構成するディスク装置２６がディスク装置２６ｂ及びディスク装置２６ｃであることがわかる。ボリュームを構成するディスク装置２６が複数ある場合、どのディスク装置２６がボリュームの先頭に対応するかは記憶装置サブシステム２ａが決定する。この例ではディスク装置２６ｂが先頭であるので、構成定義テーブル９ｂは、ディスク装置２６ｂの記憶領域の先頭に配置される。
【００７５】
次に、サーバ１ａは、サーバ１ａで定義された環境変数、具体的にはアプリケーションの定義情報ファイル等の格納場所を示す情報を記憶装置サブシステム２ａに送信する。また、この際サーバ１ａは、マウントしたボリューム内に予め決められたファイル名の環境変数定義ファイル１５を設定し、そのファイル１５に送信した情報を格納するよう、記憶装置サブシステム２ａに指示を出す。本実施形態では、環境変数定義ファイル１５のファイル名を／ＡＰ／ｖｏｌ１／ｅｎｖ．ｔｘｔとし、記憶位置はディスク装置２６ａとする。本実施形態では、環境変数定義ファイル１５には、ＤＢＭＳ構成定義情報ファイルが／ＤＢ／ｖｏｌ１／ｄｂ．ｃｏｎｆに、ＡＰ構成定義情報ファイルが／ＡＰ／ｖｏｌ１／ａｐ．ｃｏｎｆにそれぞれ格納されることを示す情報が登録される（ステップ５０１）。
【００７６】
その後、サーバ１ａは、環境変数定義ファイル１５に登録された位置に、データベース管理システム４ａ及びアプリケーション５ａの定義情報ファイルを出力する。本例では、データベース管理システム４ａの定義情報１０は／ＤＢ／ｖｏｌ１／ｄｂ．ｃｏｎｆ、アプリケーションプログラム５ａの定義情報１３は／ＡＰ／ｖｏｌ１／ａｐ．ｃｏｎｆで示されるファイルとして記憶される。／ＤＢ／ｖｏｌ１にマウントされたボリュームを構成するディスク装置２６はディスク装置２６ｂ及び２６ｃであるが、本例では、ＤＢＭＳ定義情報１０はディスク装置２６ｂに記憶される。また、／ＡＰ／ｖｏｌ１にマウントされたボリュームを構成するディスク装置２６は記憶装置２６ａであるので、アプリケーション定義情報１０はディスク装置２６ａに記憶される（ステップ５０２）。
【００７７】
次に、記憶装置サブシステム２ａのディスク装置２６ａ〜２６ｃに格納されたデータを、ネットワーク３を経由して記憶装置サブシステム２ｂのディスク装置２６ｄ〜２６ｆに転送する手順を説明する。このデータの転送は、ペア定義テーブル７が作成された後実施される。また、本処理は、ユーザが、サーバ１等を介して記憶装置サブシステム２にデータの転送を指示することを契機に開始される。
【００７８】
記憶装置サブシステム２ａは、ディスク装置２６ａ〜２６ｃに格納されたデータに、自分自身のポート、ＬＵ及びデータの格納位置の情報を付加して、記憶装置サブシステム２ｂに転送する。尚、データ転送が完了した後に、ディスク装置２６ａ〜２６ｃに格納されたデータが更新された場合は、システムにおいてデータの内容の一致を維持する状態である場合には、記憶装置サブシステム２ａは、更新が行われた部分のみのデータを記憶装置サブシステム２ｂに転送する。
【００７９】
記憶装置サブシステム２ａからデータを受信した記憶装置サブシステム２ｂは、図５で示した処理を行う。まず、記憶装置サブシステム２ｂは、記憶装置サブシステム２ａから構成定義テーブル９が転送されたか否かを判断する。具体的には、転送されたデータがボリュームの先頭に格納されたデータか否かにより判断される。ボリュームの先頭に格納されたデータかどうかは、転送されたデータに付随する位置情報の値が０か否かで判断される（ステップ６０１）。
【００８０】
図４に示す構成定義テーブル９ａが転送された場合、記憶装置サブシステム２ｂは、定義チェックプログラム１１を実行することで、転送されたデータに付随するポート及びＬＵの情報を参照して、記憶装置サブシステム２ａのポート及びＬＵの情報を取得する。本例においては、ポート２１ｂ及びＬＵ０という情報が取得される。次に、記憶装置サブシステム２ｂは、ペア定義テーブル７の正ポートフィールド２０３と正ＬＵフィールド２０４の値がそれぞれポート２１ｂ、ＬＵ０であるレコード２０８ａを制御メモリ２３ｂに記憶されたペア定義テーブル７から取得し、そのレコード２０８ａの副ポートフィールド２０５及び副ＬＵフィールド２０６の値（ここではポート２１ｄ、ＬＵ０）を得る。
【００８１】
次に、記憶装置サブシステム２ｂは、ボリューム定義テーブル８ｂのポートフィールド３０５及びＬＵフィールド３０１の値がポート２１ｄ、ＬＵ０であるレコード３０４ｄを取得し、このレコード３０４ｄのサイズフィールド３０６の値１００ＭＢと、構成定義テーブル９のレコード４０４ａの容量フィールド４０２の値１００ＭＢとを比較する（ステップ６０２）。双方の値は等しいため、記憶装置サブシステム２ｂはレコード３０４ｄのエミュレーションタイプ３０３とレコード４０４ａのエミュレーションタイプ４０３が等しいか否かチェックする（ステップ６０３）。
【００８２】
双方ともにエミュレーションタイプなしで等しいため、記憶装置サブシステム２ｂは、その後、転送されたデータをボリューム（ポート２１ｄ、ＬＵ０）に記憶する。記憶位置は、データに付随する位置情報で示された位置である。
【００８３】
上記処理を転送されるデータ全てで繰り返すことにより、正サイトの記憶装置サブシステム２ａのディスク装置２６ａ〜２６ｃに記憶された構成定義テーブル９、環境変数定義ファイル１５、アプリケーション定義情報１３、ＤＢＭＳ定義情報１０及びデータ１４が、副サイトの記憶装置サブシステム２ｂのディスク装置２６ｄ〜２６ｆに複製される。また、データの複製後、正サイトのディスク装置２６ａ〜２６ｃに更新が行われた場合も、その変更が副サイトのディスク装置２６ｄ〜２６ｆに反映される。
【００８４】
次に、ネットワーク３を介して副サイトの記憶装置サブシステム２ｂのポート２１ｄとサーバ１ｂのデータインタフェース１０９ｂを接続し、サーバ１ｂが起動されサーバ１ｂの環境が設定されるまでの処理手順の例を説明する。
【００８５】
サーバ１ｂを起動すると、構成定義プログラム１２が主記憶１０２ｂに読み込まれ、ＣＰＵ１０１ｂにより実行される。まずサーバ１ｂは、サーバ１ｂからアクセス可能な記憶装置サブシステム２ｂのポート及びＬＵをデバイスファイルに対応付ける。本例では、ポート２１ｄからアクセス可能なＬＵはＬＵ０、ＬＵ１の２つとし、それらにサーバ１ｂのファイルシステムにより決められたデバイスファイル名が対応付けられる。作成されたボリューム−デバイスファイルマップは図９の１１０１ｂに示す通りである。図９では、ボリューム（ポート２１ｄ、ＬＵ０）が／ｄｅｖ／ｃ１ｔ１ｄ１に、ボリューム（ポート２１ｄ、ＬＵ１）が／ｄｅｖ／ｃ１ｔ１ｄ２にそれぞれ対応付けられている。
【００８６】
次に、サーバ１ｂは、記憶装置サブシステム２ｂの制御メモリ２３ｂに存在するペア定義テーブル７の状態フィールド２０７を参照して、ボリュームのペア状態をチェックする。具体的には、フィールド２０７の値が全てＳＵＳＰＥＮＤであるグループがあるか否かを確認する。ペア定義テーブル７が図２に示す状態の場合、サーバ１ｂは「ＳＵＳＰＥＮＤ状態ではないレコードがある」と判断し、再度ステップ７０１の処理を繰り返す。
【００８７】
ここで、正サイトに障害が発生すると、全てのペア関係のペア状態がＳＵＳＰＥＮＤ状態になるが、この状態のペア定義テーブル７を図７に示す。この例では、グループＧ１の状態が全てＳＵＳＰＥＮＤ状態であることがレコード２０８ａ、２０８ｂの状態フィールド２０７からわかり、その結果、サーバ１ｂは、「全てＳＵＳＰＥＮＤ状態」と判断する。
【００８８】
次に、サーバ１ｂは、全てＳＵＳＰＥＮＤ状態になったグループのボリュームの情報をペア定義テーブル７から取得する。この例では、ボリューム（ポート２１ｄ、ＬＵ０）及びボリューム（ポート２１ｄ、ＬＵ１）の２つのボリュームが取得できる（ステップ７０２）。以下、取得したこれらのボリュームそれぞれについて、サーバ１ｂは、先述したステップ７０３、１０００で規定される処理を順次実施する。
【００８９】
まず、サーバ１ｂは、ボリューム（ポート２１ｄ、ＬＵ０）についてステップ７０３で説明した処理を実施する。具体的には、サーバ１ｂは、まずボリューム（ポート２１ｄ、ＬＵ０）に対応するデバイスファイル名をボリューム−デバイスファイルマップ１１０１ｂから取得する。一方、サーバ１ｂは、ボリューム（ポート２１ｄ、ＬＵ０）の先頭部分から構成定義テーブル９を読出す。本例では、ボリューム（ポート２１ｂ、ＬＵ０）に対応するディスク装置２６は図３のボリューム定義テーブル８ｂに示す通りディスク装置２６ｄであるので、サーバ１ｂは、ディスク装置２６ｄから、構成定義テーブル９ａを取得する。
【００９０】
その後、サーバ１ｂは、取得した構成定義テーブル９ａのレコード４０４ａのマウント先フィールド４０１を参照し、ファイルシステムにおけるボリューム（ポート２１ｄ、ＬＵ０）のマウント先ディレクトリ名／ＡＰ／ｖｏｌ１を取得する。次に、サーバ１ｂは、マウント先ディレクトリ名／ＡＰ／ｖｏｌ１及び取得したデバイスファイル名／ｄｅｖ／ｃ１ｔ１ｄ１を引数として、ボリュームマウントプログラム１８を実行し、／ＡＰ／ｖｏｌ１に／ｄｅｖ／ｃ１ｔ１ｄ１に関連付けられるボリュームをマウントする。同様に、ボリューム（ポート２１ｄ、ＬＵ１）も／ＤＢ／ｖｏｌ１にマウントされる。
【００９１】
次に、サーバ１ｂは、環境変数定義ファイル１５を取得する。本例においては、環境変数定義ファイル名はｅｎｖ．ｔｘｔであるので、サーバ１ｂは、マウントされた各ボリューム内にｅｎｖ．ｔｘｔがあるか否かをチェックする。尚、サーバ１ｂは、環境変数定義ファイル名を正サイト又はユーザ等より予め取得しておく。取得方法は、構成定義情報テーブルの格納位置の情報の取得方法と同一でよい。本例では／ＡＰ／ｖｏｌ１下にｅｎｖ．ｔｘｔが存在するので、サーバ１ｂは、ｅｎｖ．ｔｘｔを読み出して、サーバ１ｂに設定する（ステップ７０５）。環境変数定義ファイル１５には、先述したように、ＤＢＭＳ構成定義ファイル名の値として／ＤＢ／ｖｏｌ１／ｄｂ．ｃｏｎｆが、ＡＰ構成定義ファイル名の値として／ＡＰ／ｖｏｌ１／ａｐ．ｃｏｎｆがそれぞれ登録されている。
【００９２】
最後に、サーバ１ｂはデータベース管理システム４ｂを実行するが、サーバ１ｂは、先に取得した環境変数定義ファイル１５に登録されたＤＢＭＳ構成定義ファイル名の値からＤＢＭＳ定義情報１０を取得して、データベース管理システム４ｂを起動することが可能となる。同様に、アプリケーションプログラム５ｂについても環境変数定義ファイル１５に登録された情報に基づいてアプリケーション定義情報１３を取得することができ、アプリケーションプログラム５を起動することが可能となる。
【００９３】
以上示したように、本実施形態によれば、正サイトの障害後に、ネットワーク３を経由して副サイトの記憶装置サブシステム２ｂのポート２１ｄと、サーバ１ｂのデータインタフェース１０９ｂを接続し、サーバ１ｂを起動して環境を設定しデータベース管理システム、アプリケーションを起動することが可能となる。
【００９４】
【発明の効果】
本発明によれば、ディザスタリカバリシステムにおいて、ディザスタリカバリシステムの副サイトの構築を容易にすることが可能かつ安価なディザスタリカバリシステムを提供することが可能となる。
【図面の簡単な説明】
【図１】本発明が適用されるシステムの構成例を示す図である。
【図２】ペア定義テーブル７の例を示す図である。
【図３】ボリューム定義テーブル８の例を示す図である。
【図４】構成定義テーブル９の例を示す図である。
【図５】データ受信の処理手順の例を示す図である。
【図６】構成定義プログラム１２の手順例を示す図である。
【図７】サスペンド状態のペア定義テーブル７の例を示す図である。
【図８】ボリュームマウント処理の手順例を示す図である。
【図９】ボリューム−デバイスファイルマップの例を示す図である。
【図１０】マウント先ディレクトリ−デバイスファイルマップの例を示す図である。
【符号の説明】
１…サーバ、２…記憶装置サブシステム、３…ネットワーク、１０１…ＣＰＵ、１０２…主記憶、１０３…ネットワークインタフェース、１０４…ディスプレイ、１０５…キーボード、１０６…ＣＤ−ＲＯＭ、１０７…コントローラ、１０８…記憶装置、１０９…データインタフェース、２１…ポート、２２…ディスクコントローラ、２３…制御メモリ、２４…プロセッサ、２５…キャッシュメモリ、２６…ディスク装置。
【図１】
2004295465.tif 000003
【図２】
2004295465.tif 000004
【図３】
2004295465.tif 000005
【図４】
2004295465.tif 000006
【図５】
2004295465.tif 000007
【図６】
2004295465.tif 000008
【図７】
2004295465.tif 000009
【図８】
2004295465.tif 000010
【図９】
2004295465.tif 000011
【図１０】
2004295465.tif 000012