(57)【要約】【課題】  現用系コンピュータてデータの破壊を伴うような障害が発生した場合に、その障害からデータを保護し、データが破壊される前の正常なデータを回復し、さらにそのデータを用いて系切替を実現することのできる高可用性データベースシステムを提供する。【解決手段】  障害が発生したことを待機系が検知した時刻T1においてデータ領域のペア分割を行うことで、障害が発生する直前のデータ正常時T0のデータ領域を保護し、ログ領域が破壊される時刻T6あるいはログが破壊されないで系切替が生じた時刻T3においてログ領域のペア分割を行うことで、時刻T0〜T3における任意時刻T2のログ領域を保護する。これらのデータ領域とログ領域を用いることにより、任意時刻T2における正常なデータ領域とログ領域を待機系が引き継ぎ、系切替を実現する。【選択図】  図５
2005071119.tif 000002
【特許請求の範囲】
【請求項１】
現用系のコンピュータと、該現用系のコンピュータの処理を引き継ぐべき待機系のコンピュータと、これらコンピュータに接続されたたディスク装置を含むコンピュータシステムにおける系切替方法であって、
該ディスク装置上に前記現用系のコンピュータが利用する正ボリュームに対してその複製である副ボリュームを生成してペア構成状態を維持するステップ
前記現用系のコンピュータの障害発生を検出したことを契機に、前記正ボリュームと副ボリュームとのペア分割処理を行うステップ、
前記現用系のコンピュータが実行していた処理を、前記待機系のコンピュータが、分割された前記副ボリュームを利用して引き継ぐステップ、
を含む系切替方法。
【請求項２】
前記ペア分割処理は、ペア構成状態では前記正ボリュームと共通であった前記副ボリュームのボリューム識別番号を、前記副ボリュームに独自のボリューム識別番号に付け変える処理と、付け替えた前記副ボリュームに独自のボリューム識別番号を前記待機系のコンピュータに通知する処理を含む請求項１記載の系切替方法。
【請求項３】
上記正副ボリュームをそれぞれデータ領域とログ領域に分割し、上記現用系のコンピュータの障害を検知したことを契機として、前記データ領域の一対のボリュームをペア分割するステップと、
上記検知以降、上記現用系のコンピュータの障害を所定回数検知したことを契機として、上記ログ領域の一対のボリュームをペア分割するステップとをもつことを特徴とする請求項１記載の系切替方法。
【請求項４】
現用系のコンピュータと、上記現用系のコンピュータの処理を引き継ぐべき待機系のコンピュータと、これらコンピュータに接続されたディスク装置を含むコンピュータシステムを用い、
上記ディスク装置上に上記現用系のコンピュータが利用する正ボリュームに対してその複製である副ボリュームを生成してペア構成状態を維持するレプリカ形成方法であって、
上記正ボリュームから副ボリュームに複写されるべき更新内容を、直接副ボリュームに書き込まず、一時記憶領域に保存する第１のステップと、
上記一時記憶領域に格納されたデータを上記副ボリュームに格納されたデータに上書きする第２のステップと、
上記一時記憶領域からデータを削除する第３のステップを有するレプリカ形成方法。
【請求項５】
ΔＴの時間間隔で上記正ボリュームのデータ内容の保証が為されるコンピュータシステムを用い、
上記ΔＴの期間内は上記第１のステップにより更新内容を一時記憶領域に保存し、
上記データ内容の保証を契機に、上記第２のステップが実行される請求項４記載のレプリカ形成方法。
【請求項６】
前記現用系のコンピュータの障害発生を検出したことを契機に、前記正ボリュームと副ボリュームとのペア分割処理を行うステップ、
前記待機系のコンピュータが、分割された前記副ボリュームを利用して、前記現用系のコンピュータが実行していた処理を引き継ぐステップを有する請求項５記載のレプリカ形成方法。
【請求項７】
前期待機系のコンピュータは、前記副ボリュームと前記一時記憶領域に格納されたデータをそれぞれ読み出し、前記副ボリュームに格納されたデータに前記一時記憶領域に格納されたデータを上書きしたデータを用いて、処理を引き継ぐ請求項６記載のレプリカ形成方法。
【請求項８】
第１のコンピュータと、第２のコンピュータに接続されるディスク装置であって、該ディスク装置はボリューム管理部を備え、
該ボリューム管理部は、
ディスク装置上に上記第１のコンピュータがアクセスする第１のボリュームに対してその複製である第２のボリュームを生成して、上記第１のボリュームと第２のボリュームの内容の同一性を維持する第１の機能、
上記第１のコンピュータの異常を検出したことを契機に、上記第１のボリュームと第２のボリュームの同一性の維持を中止する第２の機能、
同一性の維持を中止後に、上記第２のボリュームを、上記第１のコンピュータに替えて上第２のコンピュータにアクセスさせる第３の機能、
を有するディスク装置。
【請求項９】
第１のコンピュータと、第２ののコンピュータに接続されるディスク装置であって、該ディスク装置はボリューム管理部を備え、
該ボリューム管理部は、
ディスク装置上に上記第１のコンピュータがアクセスする第１のボリュームに対してその複製である第２のボリュームを生成して、上記第１のボリュームと第２のボリュームの内容の同一性を維持するため、上記第１のボリュームから第２のボリュームに複写されるべき更新内容を、一時記憶する一時記憶領域と、
上記第１のボリュームの内容が正しいことを保証する確認信号を上位装置から受け取るインターフェースと、
上記確認信号の受信を契機に、上記一時記憶領域の内容を上記第２のボリュームに書き込む制御手段を有するディスク装置。
【請求項１０】
コンピュータに接続されるディスク装置において、 
コンピュータが前記ボリュームに対して許可するアクセス許可パターンを前記ディスク装置に登録するインターフェスと、前記ディスク装置が前記ボリュームに対する前記コンピュータからのアクセスが前記登録アクセスパターンに違反した場合にアクセスを許可しない機能と、
前記アクセス許可パターンに違反したアクセスが生じたことを外部のコンピュータに通知するインターフェスとを、兼ね備えたディスク装置。
【発明の詳細な説明】
【技術分野】
【０００１】
本発明はデータベースシステムを構築する障害許容性のあるコンピュータシステムに関し、特に一対のボリュームに対しボリュームレプリカを実行するコンピュータのプログラムもしくはオペレーティングシステムに障害があった時に、ボリュームレプリカの実行対象であるボリュームのうち、レプリカされたボリュームの内容が破壊されることを防止することのできるプログラムを持つコンピュータシステムに関する。
【背景技術】
【０００２】
現代社会において、コンピュータシステムは我々の生活を支える生活基盤として無くてはならない存在となっている。こうしたコンピュータシステムは24時間停止することなく、サービスを継続することが要求される。例えば、銀行などのオンラインシステムの中核処理としてデータベース業務がある。こうしたデータベース業務は絶えず更新されうるため、完全停止することが許されない。
完全停止することが許されないような高信頼性を必要とするコンピュータシステムでは、処理を実行する現用系コンピュータシステムと、現用系に障害が発生した際に処理を引き継ぐ待機系コンピュータとを含む構成をとる。現用系で発生した障害の検出から待機系に処理を引き継ぐ手続きはクラスタプログラムによって提供される。処理を引き継ぐためには、アプリケーションやOSが使用しているデータを引き継ぐことが必要となる。例えば、上述のデータベースシステムにおいては、扱うデータが格納されているボリュームに関する情報を引き継ぐ必要が生じる。
【０００３】
しかし、クラスタプログラムの障害の検出は、一時的な障害や誤検出された障害によって処理の引継ぎが発生するのを防ぐために、障害の検出が繰り返し行われたときに初めて、待機系への処理の引継ぎを開始する仕組みをもつ。従って、第一回目の障害検出から実際に処理の引継ぎが行われるまでには時間差が存在することになる。現用系コンピュータシステムで発生した障害がアプリケーションのバグや暴走などデータの破壊を伴うものであった場合には、データの破壊がその時間差の間に進行してしまい、破壊されたデータの復旧が不可能となる可能性がある。すなわち、待機系コンピュータがそのデータに対する処理を引き継ぐことができなくなるという問題がある。
【０００４】
データベースでは扱うデータをディスク上のボリューム（VOL）上に格納し、処理を行っている。そこで、ディスク装置がVOLの複製を実現し、データの保護を行う技術が使われている。例えば、特許文献1(特開2001-134456号)には、２台の計算機にそれぞれディスク装置が接続され、それらディスク同士を接続したシステム構成で、一方のディスク同士でVOLの複製を実現することが記載される。しかし、この技術において、データ複製元である正VOLは現用系コンピュータに、データ複製先である副VOLは待機系コンピュータに個別に接続されるものであるため、ディスク間の通信が必要となる。そのため、前記のアプリケーションのバグや暴走による影響以外にディスク間の通信異常による障害が発生した場合には正常に複製が行われないという新たな問題が生じる。
【０００５】
特許文献２(特開2002-41368号)には、ディスク装置内でデータ複製（レプリカ）を実行する技術が示される。これをVOLに適用した場合には、ディスク内でVOLの複製を生成するため、前記のようなディスク間の通信障害が発生しない。このVOLレプリカには、データ複製元である正VOLとデータ複製先である副VOLとからなる一対のVOLを対象としたペア構成とペア分割という二つの手段からなる。ペア構成は、正／副VOLの物理VOL識別子（PVID）とVOL情報とを含む全てのデータとを一致（同期）させることにより、正VOLの複製である副VOLを高速に生成する手段である。従って、ペア構成の状態では、正／副VOLのPVIDが一致した状態にあり、一つのVOLとして上位のコンピュータシステムに見える。一方、ペア分割は、ペア構成となっている一対のVOLのうち、副VOLのPVIDを正VOLとは違うPVIDに書き換える手段である。よって、ペア構成時に上位のコンピュータシステムに対して一つに見えた一対のVOLが、ペア分割の状態では別々のVOLとして見える。これらの二つの手段により、正VOLの複製を高速に生成し、複製した副VOLをコンピュータシステムから操作することができる機能が提供される。
【０００６】
このボリュームレプリカ機能を用いることで引き継ぐべきデータを正VOLから副VOLへと複製してくことで保護し、データが破壊されていない状態からの回復を図る方法が考えられるが、以下のような問題がある。まず、データを複製状態にしておくことにより、破壊されたデータそのものが複製されてしまい、保護されるべき副VOLのデータが破壊されてしまうという問題がある。次に、データベースシステムのようにデータが大容量になる場合は、バックアップは数時間の時間が必要となるため、バックアップを頻繁に実施することが難しい問題点がある、さらに、バックアップされたデータから障害発生時のデータ状態を回復するのには膨大な時間と手間が必要になるという問題がある。
【０００７】
【特許文献１】特開２００１−１３４４５６号公報
【０００８】
【特許文献２】特開２００２−４１３６８号公報
【発明の開示】
【発明が解決しようとする課題】
【０００９】
かかる従来の方法においては、次のような問題がある。すなわち、VOLレプリカ（ペア構成・ペア分割）の対象となる正／副VOLを共有する現用系／待機系コンピュータシステムで障害が発生し、待機系が現用系の処理を引き継ぐ処理を行う場合、現用系で発生した障害がデータ破壊を伴うものであった場合は、引き継ぐべきデータが破損するため、系切替に失敗する。なぜなら、系切替機構において、待機系コンピュータシステムは現用系コンピュータシステムで障害が発生したことを検知することで系切替に必要となるデータ保護や処理の引継ぎを行うため、データ破壊を伴う障害が発生した場合には、データが破損した後にしか系切替が発生しないためである。また、データが破損した場合には、バックアップしたデータから正常なデータを回復する必要があるが、データの大容量化に伴い、バックアップ間隔が長くなるため、障害発生直前の正常なデータを復旧するのに要する時間が膨大なものになってしまう。
このように従来の手法は、高信頼性のためのクラスタプログラムを用いた場合には、データ破壊を生じる障害に対しては、正常なデータ状態およびシステムを回復するのに膨大な時間が必要となる問題があった。
【００１０】
本発明の目的は、クラスタプログラムにより待機系コンピュータが現用系コンピュータの障害を検知する場合に、VOLレプリカ手段により生成された副VOLのデータを用い、待機系が処理を引き継ぐシステムを提供することにある。
より具体的には、データ破壊を生じる障害であっても、正常なデータ状態への回復が保証でき、かつ待機系への引き継ぎが支障なく実行できるシステムを提供する。
【００１１】
本発明の第二の目的は、クラスタプログラムにより待機系コンピュータシステムが現用系コンピュータシステムの障害を検知する場合に、1回目の検知時点でデータベースシステムのデータを保護し、系切替を実施するN回目の検知時点ではデータベースシステムのログ領域をそれぞれ保護し、それぞれで保護されたデータ領域とログ領域を待機系コンピュータが利用して処理を引き継ぐ方法及びシステムを提供することにある。
【００１２】
本発明の第三の目的は、ディスク上のVOL領域に対する書込みに対し、その書込みをVOL領域に反映させずに一時的に保存する記憶領域と、前記の記憶領域の内容をVOL領域に反映する手段と、VOL領域に前記の記憶領域の内容を反映させた内容を読み出す手段と、VOL領域の内容を読み出す手段とを有するディスク装置を提供することにある。
【００１３】
本発明の第四の目的は、クラスタプログラムにより現用系コンピュータが正常に動作していることを前記第三の目的のディスク装置に対して通知し、現用系コンピュータが正常に動作することができるデータをディスク上のVOL領域に書き込まれていることを保証する方法及びシステムを提供することにある。
【００１４】
本発明の第五の目的は、ディスク上のVOL領域に対して、上位サーバから行われるアクセスのパターンを登録することでVOL領域のアクセスを制御でき、アクセス違反が生じたことを上位サーバに通知するディスク装置を提供することにある。
【００１５】
本発明の第六の目的は、データベースシステムにおいて、前記第五の目的を実現するディスク装置を利用し、データベースのログ領域の内容を保護する方法及びシステムを提供することにある。
【００１６】
本発明の第七の目的は、前記第二、第四、第六の方法及び手段を用い、現用系コンピュータで障害が発生する直前のデータをVOLレプリカ手段を用いて生成される副VOLに保護し、待機系コンピュータがこの保護されたデータを利用し、障害が発生する直前の正常状態によって処理を引き継ぐことのできる方法及びデータベースシステムを提供することにある。
【課題を解決するための手段】
【００１７】
本発明は、現用／待機系コンピュータを含むされる高可用性コンピュータシステムであって、現用／待機系がVOLレプリカの実行対象となる少なくとも一対のVOLを共有しているコンピュータシステムにおいて、現用系コンピュータでデータ破壊を伴うような障害が発生した場合に前記障害からデータの破壊を防止し、その防止されたデータを待機系コンピュータが引継ぎ、系切替を実現する機能を提供する。
【００１８】
まず本発明の代表的観点では、現用系コンピュータで障害が発生した場合に、共有されたVOLをもつディスク装置にこの一対のVOLに対してペア分割を行うように通知し、副VOLを正VOLから分割する。障害の発生は、待機系が現用系を監視し、異常があった場合に待機系コンピュータからディスク装置に指令を出す方式でもよいし、現用系が自立的に、エラー率、メモリ余裕度などから異常を検知し、自らディスク装置に知らせる方式でもよい。また専用の監視コンピュータで集中管理してもよい。
待機系コンピュータはこの副VOLを用い、現用系コンピュータシステムで行われていた処理を引き継ぐ。例えば、現用／待機系コンピュータで、高可用性データベースシステムを構築している場合に、データベースが利用するデータ領域とログ領域に対してVOLレプリカを適用しておく。
【００１９】
一例をあげれば、現用／待機系コンピュータ間では例えばクラスタプログラムによってハートビート監視が行われており、待機系コンピュータ（あるいは監視用コンピュータ）は現用系コンピュータの障害を検知すると、ディスク装置にデータ領域とログ領域のVOLレプリカによるペア構成を解消し、それぞれの副VOLを正VOLから分割する。待機系コンピュータは分割した副VOLのデータ領域とログ領域とを用い、障害が発生した現用系コンピュータシステムの処理を引き継ぐことで系切替を完了する。これにより、系切替が発生した時点以降の現用系コンピュータのデータ破壊からデータを保護した系切替が実現される。
【００２０】
ペア分割処理の具体例としては、ペア構成状態では正ボリュームと共通であった副ボリュームのボリューム識別番号を、副ボリュームに独自のボリューム識別番号に付け変える処理と、付け替えた副ボリュームに独自のボリューム識別番号を待機系のコンピュータに通知する処理を行うことが考えられる。本発明のより具体例では、現用系コンピュータで障害が発生したことを最初に検知した場合、すなわち一回目の障害検知において、データ領域に対するペア構成を解消し、データ領域の副VOLを正VOLから分離する。続いて障害が系切替を行う契機となる回数（N回）連続して検知された場合に、ログ領域に対するペア構成を解消し、ログ領域の副VOLを正VOLから分離する。待機系コンピュータは第一回目の障害発生時のデータ領域と第N回目の障害連続発生時のログ領域を引き継ぐ。さらに待機系コンピュータはログ領域を用いて、データ領域を更新することで、第N回目の障害発生時点のデータ領域を回復することが可能であり、系切替を実現する。これにより、データ領域とログ領域とが破壊されていない場合に、系切替が生じる第N回目の障害発生時点の処理から引き継ぐことのできる系切替を実現する。すなわち、第1回目以降のデータ破壊を防ぐことのできる系切替を実現することができる。
【００２１】
さらに別の観点では、共有ディスク装置は、VOLレプリカによって正VOLから副VOLへのデータの複製を行う際に、副VOLに直接データを反映させるのではなく、共有ディスク装置内または外の記憶領域にデータを一時的に蓄積しておく。好ましい例では、上位のサーバから正VOLのデータが正常であることを保証する通知がされると、記憶領域に蓄積されていた内容を副VOLに反映させ、記憶領域をクリアする。これにより、副VOLの内容は、上記の通知が行われた時点での正常な正VOLの内容と一致する。例えば、待機系コンピュータは、クラスタプログラムのハートビート監視によって現用系コンピュータの動作を監視し、現用系コンピュータが正常動作をしている場合には、共有ディスク装置に対してデータが正常であることを通知する。上記の通知が行われると、ディスク装置はVOLレプリカ時に蓄積された記憶領域の内容を副VOLに反映する。これにより、クラスタプログラムのハートビート間隔ΔＴに同期して、正／副VOLの内容が一致したペア構成を実現することができる。すなわち、ハートビート監視によって異常が検知された場合には、正VOLの内容は副VOLには反映されず、異常が検知される直前のハートビート監視によって現用系コンピュータが正常であることが確認された時点の正VOLの内容が副VOLに保存されていることになる。
【００２２】
本発明のさらに別の観点では、共有ディスク装置は、ディスク上のVOL領域に対するアクセスパターンが与えられた場合に、VOL領域に対するアクセスを監視する。そして、アクセスパターンに違反するアクセスが行われた場合には、そのアクセスを含めた以降のアクセスを許可せず遮断する。同時に、ディスク装置は上位サーバに対して、エラーを通知することでアクセス違反が生じたことを通知する。例えば、現用／待機系コンピュータと共有されるディスク装置上にデータ領域とログ領域とを持つデータベースシステムでは、現用系コンピュータからログ領域に対する書込みがシーケンシャルにのみ行われるアクセスパターンを持つことを共有するディスク装置に通知しておく。ディスク装置は、前記ログ領域に対して、上位のコンピュータが障害によりログ領域の破壊をもたらすようなランダムな書込みを実行した場合に、その書込みを検知し、その書込み以降のアクセスを遮断する。同時に上記アクセス違反が生じたことを現用／待機系コンピュータに対して通知する。このエラー通知を受けた待機系コンピュータは現用系コンピュータでデータ破壊をもたらすような障害が発生したことを検知することができる。これにより、待機系コンピュータは上記アクセス違反が発生したログ領域のペア構成を解消し、データ破壊を生じる直前のログ領域の副VOLを保護することができる。またさらに、既知のスナップショット技術により生成されたデータ領域に対してこの保護されたログ領域の内容を反映させることにより、データ破壊を生じる直前のデータ領域を回復し、データ破壊直前の処理を待機系が引継ぎ機能が実現される。
【００２３】
以上のシステムを実現するために、コンピュータに接続されるディスク装置に、コンピュータがボリュームに対して許可するアクセス許可パターンをディスク装置に登録するインターフェスと、ディスク装置がボリュームに対するコンピュータからのアクセスが登録アクセスパターンに違反した場合にアクセスを許可しない機能と、アクセス許可パターンに違反したアクセスが生じたことを外部のコンピュータに通知するインターフェスとを備えることが考えられる。許可パターンとしては、例えばシーケンシャルライトを設定することが考えられ、ランダムなライト動作によるデータ破壊を防止することができる。本発明の他の特徴的観点は発明の実施の態様の説明にて明らかにされる。
【発明の効果】
【００２４】
現用系コンピュータてデータの破壊を伴うような障害が発生した場合に、その障害からデータを保護し、データが破壊される前の正常なデータを回復し、さらにそのデータを用いて系切替を実現することのできる高可用性データベースシステムを提供することができる。
【実施例】
【００２５】
本発明に関する図と説明は、本発明を鮮明に理解するのに適当な要素を示すために簡単化されており、発明を実施するのに支障ない範囲で既知の要素等は省略していることを理解されたい。本技術中で従来技術の中には、本発明を実装するために他の要素が望ましく、かつ／または、必要とされると思われるものが幾つかある。しかし、技術中のこれらの要素は既知であり、本発明の理解を容易にするものではないので、ここでは説明しない。以下では、添付の図に関して詳細に説明していく。
【００２６】
図1は、従来の現用／待機コンピュータシステムモデルの高位のシステムにおいて、本発明によって解決しようとする問題点を示すブロック図である。
図１及び以下の説明では、説明を容易にするためにアプリケーションをデータベースとしているが、アプリケーションの種類や動作を制限するものではない。
図1で、高可用性コンピュータシステムは現用系サーバ10、待機系サーバ20、これらのサーバに共有されるディスク30によって構成される。現用／待機系サーバには、OS（Operating System）11。21と、前記ディスク装置30を管理するディスク管理プログラム12、22と、アプリケーション（Application）14、 24と、お互いのサーバの障害をハートビート(HB)監視01によって監視するクラスタプログラム13、23とを含んでいる。また、ディスク装置は現用／待機系サーバと02、03によって接続され、アプリケーションが使用するボリューム（VOL）である38、39と、ディスク上のVOLを管理するボリューム管理部31とを含んでいる。以下で、データベースを例に説明を行うため、前記VOLはデータ領域38とログ領域39とから構成される。
前記クラスタプログラム13、23は、現用系サーバ10において障害が発生した場合(図中(1))、前記HB監視 01によって、待機系サーバが障害を検知し(図中(3))、現用系サーバの処理の引継ぎ（系切替）を行う（図中(2)）。また、クラスタプログラムによる系切替は一時的な障害や誤検出された障害によって処理の引継ぎ（系切替）が発生するのを防ぐために、障害の検出が繰り返し行われたときに初めて、待機系への系切替を行う。従って、第一回目の障害検出から実際に処理の引継ぎが行われるまでには時間差が存在することになる。ここで、現用系コンピュータシステムで発生した障害(1)がアプリケーションのバグや暴走等により、待機系が引き継ぐべきデータの破壊(2)を伴うものであった場合には、その破損したデータが引き継がれることになる。そのため、待機系コンピュータがそのデータに対する処理を引き継ぐことができなくなるという問題がある。
【００２７】
図2は、図１における従来の問題点を時間フローで説明した図である。図2を含め、図5、図7、図11、図12において同様の記号を用いているものがあるが、それらについては特に説明がない場合、その説明以前に述べられている説明と同様であるものとする。
図2において、横方向に時間軸をとり、縦方向には、現用系―待機系サーバの状態と、これらのサーバから共有されるストレージ上のデータ状態を表している。ストレージ上のデータはデータベースのデータ領域とログ領域を含む。時刻T0、T1、T3はディスクの上位サーバでデータ保証がなされた時刻、すなわちHBが行われる時間を意味し、時間間隔ΔT(=T1-T0)はそのHB間隔を意味している。また、時刻T0〜T1で、現用系サーバに障害が発生し、時刻T1にその障害を待機系サーバで第一回目に検知した時点を表す。また、時刻T3は時刻T1以降、連続してｎ回継続して障害が検知された時点を示し、ここではクラスタプログラムが系切替が必要な障害だと判断するまでの障害連続発生回数をn回としているため、。時刻T3は時刻T1＋nΔTで表される。クラスタプログラムはこの時刻T3に系切替を発生するものとする。また、前記時刻T0〜T1に発生した障害に伴い、データを破壊が時刻T0〜T3までの任意の時点に発生するものとし、時刻T2は、時刻T1〜T3以前のデータが正常である任意の時刻を表すものとする。すなわち、データ破壊は時刻T2〜T3の間に発生することになる。また、時刻T4は系切替が行われ、待機系サーバが現用系の処理を引き継いだ時刻を表す。この時、現用系でディスク内容の破壊を伴う障害が発生している可能性があるとクラスタプログラムが判断する時刻（グレーゾーン）は時刻T0〜T3までの間になる。 
図2では、時刻T2〜時刻T3までの間にデータやログを破壊するような深刻な障害が発生していた場合を示し、この時、時刻T3におけるデータあるいはログは破壊された状態になっている。従って、破損した内容をもつデータ及びログが待機系に引き継がれるため、時刻T4以後、系切替後の動作は保証されず、システムダウンを引き起こす可能性がある。
【００２８】
図3は、本発明の第一の実施例であるる現用／待機コンピュータシステムの高位のシステムブロック図である。ディスク30は、VOLレプリカ機能を有しており、その対象となる一対のVOLとして正VOL 32、副VOL 35とを含む。また、正／副VOLは、それぞれPVID 33、36と、VOL情報34、37とを含む。まず、現用系サーバ10のアプリケーション14が利用するデータをもつVOLはVOLレプリカ(図中(1))を適用し、正／副VOLから構成される一対のVOLがペアを構成するようにする。ここで、現用系サーバ10に障害が発生する(図中(2))と、HB監視01によって待機系サーバ20上のクラスタプログラム23がこの障害発生を検知する(図中(3))。クラスタプログラム23は、障害を検知すると、ディスク上のボリューム管理部31に対してペア分割するように通知し(図中(4))、障害発生直前まで正VOL32とペア状態にあった副VOL35を分離する。このペア分割処理には、副VOL33のPVID36の変更と、PVID36及び副VOLのVOL情報37の情報反映処理とを含む。このペア分割により、障害発生後に、現用系サーバが障害によって正VOL 32に含まれるデータを破壊し続けても、副VOL35のデータは変更されず、系切替時点のデータを保持した状態となる。ペア分割が成功すると、前記クラスタプログラム23は系切替を行い(図中(5))、ペア分割を行った前記副VOL33にアクセスし(図中(6))、系切替を完了する。 これにより、系切替以後の正VOL32に対するデータ破壊に対して、副VOL35を保護し。系切替を実現することができる。
図３の例では、現用系、待機系のサーバ10,20のクラスタプログラム13,23が他のサーバの状態を監視して異常を検出する構成とした。この他に、各サーバが自立分散的に自分の異常を検出する構成とすることも可能である。また、監視専用のサーバを設け、各サーバの状態を集中管理する構成としてもよい。
【００２９】
図4は、図3に示した第一の発明によるコンピュータシステムの低位のブロック図である。
図4では、説明を分かりやすくするために、各プログラムのラベルとして3桁の数字を用いている。また、数字は現用系コンピュータと待機系コンピュータは同一のプログラムに対して同じ下二桁の数字を用い、百の位は現用系コンピュータで1を、待機系コンピュータでは2で表している。以下では、先に各プログラムについて説明する。この説明では、各コンピュータのプログラムは現用系コンピュータ上のプログラム番号で説明しているが、待機系コンピュータ上の対応したプログラムの説明をも兼ねる。さらに、以降の図において同様の記号を用いているものがあるが、それらについては特に説明がない場合、図4の説明と同様である。
ディスク300は、ボリューム管理部310と、VOLレプリカの対象となる正VOL320と副VOL330とを含む。正／副VOL（320、330）は、そのVOLの認識に用いるPVID（321、331）と、VOLのアクセスに必要なVOL情報（332、333）とを含む。ボリューム管理部310は、VOLレプリカを実行し、正VOL320と副VOL330のPVID（321、331）とVOL情報（332、333）とを変更する機能を有する。現用系コンピュータ100は、OS130とクラスタプログラム120、ディスク管理プログラム150、アプリケーション110を含む。
OS130は、ディスク管理情報バッファ131を含む。また、ディスク管理プログラム150からディスク300へのアクセスを仲介する。このアクセスでは、アクセスの結果をディスク管理情報バッファ131に保存したり、ディスク300へのアクセスをせずにバッファ131に保存された情報を利用したりすることもある。
ディスク管理プログラム150は、現用系コンピュータ100上で実行されるディスク300をアクセスするプログラムを含み、例えば、VOLのロック制御プログラムと、VOLのPVIDやVOL情報を取得するプログラムと、VOLレプリカ実行プログラムとを含む。これらのプログラムの実行時には、ボリューム管理部310に指示を行ったり、ディスク管理情報バッファ131を読み込んだりすることもある。また、VOLレプリカ実行プログラムでは、VOLレプリカ定義ファイル160を利用することもある。
クラスタプログラム120は、他系との通信を行う通信部123と、他系及び自系の状態を監視する機能を提供する監視部124と、系切替に関する処理を行う系切替部125とを持つ。
監視部124は、アプリケーション110を監視することで自系の障害を検知する機能と、通信部125を介し待機系のクラスタプログラム220の通信部223と通信することで自系状態を通知する機能と他系状態の障害を検知する機能とを有する。
系切替部125は、前記監視部124からの自系／他系の障害検知によって実行系・待機系の切替を行う系切替機能を有する。また、同切替部125は、同監視部124からの自系／他系のVOLレプリカ実行状態の検知によってディスク管理プログラム150を介して、VOLレプリカの実行を制御する機能と、その状態を前記VOLレプリカ状態フラグ122と前記VOLレプリカ状態ファイル140に保持する機能と、VOLレプリカを利用するアプリケーション110に副VOLの利用停止・再開の通知を行う機能とを有する。
現用系サーバ100で障害が発生すると、クラスタプログラム120、220の監視部124、224がその障害の発生を検知する。障害を検知した監視部224は、系切替部225に通知する。系切替部225は、ディスク管理プログラム250を介して、ボリューム管理部310にペア分割を行うように通知を行う。ボリューム管理部310は通知を受け、副VOL330のPVID331を正VOL320のPVID321と違う値を割り当てることで、副VOL330を正VOL320から分離する。また、ディスク管理プログラム250は、処理0427で変更した副VOLのPVID331をディスク管理情報バッファ231に格納する。これにより、待機系200はペア分割された副VOL330にアクセスすることができるようになる。このペア分割処理により、副VOL330のデータ領域333は、系切替発生時点の正VOL320のデータ領域323の内容を保持していることになる。ペア分割処理後、待機系200の系切替部225は、副VOL330を用いて、障害が発生した現用系100が行っていた処理を引き継ぐようにアプリケーション210に通知する。これにより、系切替発生時点のデータ内容を保護し、系切替を完了し、処理を継続することが可能である。
以上の手段をもつ現用／待機コンピュータシステムでは、図2における時刻T3以降のデータ領域とログ領域の破壊に対して、データを保護し、系切替を実現することが可能となる。
【００３０】
図5は、本発明の第二の実施例における障害発生の検出とVOLレプリカのペア分割によるデータ保護のタイミングを説明した図である。第二の実施例では、図2における時刻T1〜T3におけるデータ領域の破壊を防ぐ手段を提供する。
まず、１回目の障害検知時刻T1において、データ領域に対してペア分割を行い、データ領域の保護を行う。これにより、現用系で障害が発生しており、時刻T1以降にデータ領域が破壊されるような場合に対して、データ領域を保護することができる。一方、こうしたデータ領域の破壊がいつ発生するか分からないため、データ領域に対する正しい書込みからも副VOLを隔離してしまうことになり、系切替によってこの副VOLを利用して処理を引き継いだ場合には、データの欠落が生じ、システム障害を引き起こす。そこで、データ領域の更新履歴を記録するログ領域は、時刻T1においてペア分割せずにペア状態を保つ。ログ領域は系切替が発生する時刻T3において、ペア分割を行う。これにより、時刻T3以降にログ領域が破壊されるような場合に対して、時刻T3のログを保護することができる。このログ領域を用いることで、前記の保護された時刻T1時点のデータ領域を更新し、データ領域とログ領域のデータが正常である時刻T1〜T3までの任意の時刻T2のデータ領域を回復することができる。また、ログ領域は時刻T3までのデータを含んでいるため、時刻T2におけるログ領域の状態を回復可能である。以上により、時刻T2におけるデータ領域とログ領域とが待機系サーバに引き継がれることになり、系切替が完了した時刻T4からは、時刻T2の状態を引き継ぐことが可能となる。
以上の手段をもつ第二の実施例により、図2における時刻T1以降のデータ領域の破壊と時刻T3以降のログ領域の破壊に対して、データを保護し、系切替を実現することが可能となる。
【００３１】
図6は、本発明の第三の実施例におけるVOLレプリカのペア分割時のデータ保護を実現するディスクの処理を説明した図である。経過時間を図中左側に縦軸方向にとり、図中右には、ディスク内部でのVOLレプリカによるデータ保護の処理フローを示している。時刻T0、及び時刻T1はディスクの上位サーバからのデータ保証がなされた時刻を意味し、時間間隔ΔT(=T1-T0)はそのデータ保証がされる時間間隔を意味している。また、時刻T5は時刻T0〜時刻T1の間の任意の時刻を意味する。
まず、全体の処理フローを説明する。時刻T0では、VOLレプリカを指示するサーバからデータが保証されており、正VOLと副VOLは共に時点T0の正常なデータを保持している。時点T5では、次にサーバからデータの保証がなされる時刻T1より前であるため、時刻T0〜時刻T5の間に更新されたデータの正当性が保証されていない状態にある。従って、時刻T5までに更新された正VOLのデータは、VOLレプリカによって副VOLに直接上書きをせず、時刻T0〜T5で変更がされた差分をバッファに蓄積していき、副VOLにはそのまま時刻T0のデータを保持しておく。そして、時刻T1では、バッファには時刻T0〜時刻T1の更新データが、副VOLには時刻T0のデータが保持された状態であるが、サーバからデータの正当性を保証する通知がディスクに対して行われると、バッファに保持していた時刻T0-時刻T1までの更新データを副VOLに保持された時刻T0のデータに上書きする。結果、再びバッファをクリアし、副VOLには時刻T1のデータが保持される。また、時刻T5においては、副VOLのデータを読み出す手段として、時刻T0の内容をもつ副VOLのデータを読み出す機能と、副VOLのデータに記憶領域に含まれるT5-T0の更新内容を反映することで、正VOLと同じ時刻T5のデータを読み出す機能とを有する。
以上の手段をもつ第三の実施例では、サーバがデータの保証をする時刻 (T0、T1)においてペア構成が実現される。データの保証がされるT0とT1の間の時刻（T5）におけるデータは直接反映せず、その時刻（T5）におけるデータ内容と、その直前のデータが保証された時刻（T0）におけるデータ内容とを読み出すようにすることもできる。
【００３２】
図7は本発明の第四の実施例のコンピュータシステムの低位のブロック図である。図6に示した第三の実施例のディスクを用いている。図には、第四の実施例を適用する第七の実施例を理解しやすくするために、図2の低位ブロック図と同様の図を用い、説明を付加してあるが、第四の実施例を制限するものではない。また、図ではデータ領域に対してのみ第三の実施例を適用しているが、ログ領域に適用してある場合についても同様である。
図7において、図6におけるデータ保証時刻は、ハートビートによって現用系サーバが正常であることが検知される時刻に対応する。すなわち、待機系コンピュータがハートビートにより現用系サーバが正常であることが検知すると、ディスクに対して通知を行い、データ領域のデータが正常であることを通知する。これにより、時刻T0時点において、データ保証がなされ、時刻T0時点の正VOLと副VOLのデータは一致した状態となる。一方、次にハートビートが行われる時刻T1においては、副VOLはその直前にハートビートによって現用系サーバが正常に動作していた時刻T0のデータ領域の内容をもつ副VOLと、時刻T0〜T1に更新された正VOLのデータに対応するデータを持つ記憶領域とから構成されている。ここで、図に示すように待機系サーバは現用系サーバに障害があることを検知するため、データを保証する通知が行われないため、ディスク上のデータ領域の副VOLは、時刻T0におけるデータが格納された副VOL本体と、時刻T0〜T1の正VOLの更新データが含まれた記憶領域とが保持された状態が確保された状態になる。
以上の手段をもつ第四の実施例により、図6におけるデータ保証時刻を現用／待機系コンピュータシステムにおけるハートビート間隔に対応させて、現用系サーバが正常動作しているハートビート正常時のデータのみVOLレプリカによるペア構成を実現することがが可能となる。
【００３３】
以降の説明は、前記のように第七の実施例を説明するための説明である。図では、図5に示したように第二の実施例を適用する。これにより、時刻T1においてデータ領域がペア分割されるため、時刻T0におけるデータ領域の内容が保護される。一方、ログ領域は、系切替を行う時刻T3時点にペア分割が行われ、時刻T3のログ領域の内容が保護される。これらを利用することで、時刻T0〜T3 の任意の時刻T2におけるデータ領域とログ領域を回復することができ、系切替を実現することができる。すなわち、時刻T0以降のデータ領域の破壊と時刻T3以降のログ領域の破壊に対して、データを保護し、系切替を実現することが可能となる。
【００３４】
図8は図6、図7に示した本発明の第四の実施例のコンピュータシステムの低位のブロック図である。説明は、上位サーバとの関係を理解しやすくするために図7に示した第四の発明を適用した場合について示すが、図6に示した第三の実施例においてもディスク内部の処理については同様に実現される。
ディスク300は、データ保証が行われるまでの間の正VOLの更新されたデータを一時的に保存する記憶領域340を持つ。前記記憶領域340は、どの副VOLに対応する記憶領域であるかを示すPVID341と前記更新データを格納するData領域343とを有する。また、ボリューム管理部310は、上位サーバである現用／待機系サーバ上のディスク管理プログラム150、250からの要求に応じて、従来通り副VOLのPVID331、VOL情報332、Data領域333を読み出す機能の他に、前記記憶領域340に格納されたData領域343を前記副VOLのデータ領域333に反映させたデータ内容を、副VOLのデータ領域333が上書きせずに前記プログラム150、250に渡す機能を有する。さらに、ボリューム管理部310は、現用／待機系サーバ上の監視部124、224から前記プログラム150、250を介して、データが正常である保証を通知されると、前記記憶領域340条のデータ領域343の内容をデータ領域333に反映し、データ領域333を上書きする機能と、上書きが完了した後にデータ領域343の内容を消去する機能とをもつ。
待機系サーバ200上のクラスタプログラム220の監視部224は、現用系サーバが正常であることを検知すると、前記ディスク管理プログラム250を解して、ボリューム管理部310にデータが正常であることを通知する。前記ボリューム管理部310は、前記記憶領域340条のデータ領域343の内容をデータ領域333に反映し、データ領域333を上書きする機能と、上書きが完了した後にデータ領域343の内容を消去する。これにより、前記クラスタプログラム220の監視部224によって現用系が正常であることが検知された場合において、副VOLのデータ領域333が正VOL320のデータ領域323の内容と一致することが保証される。以上により、第四の発明が実現される。
以上により、第四の実施例によって、図2における時刻T0〜T3におけるデータ領域の破壊を防ぐことができる。
【００３５】
図9は、第五の実施例の現用／待機コンピュータシステムモデルの高位のシステムブロック図である。図9で、コンピュータシステムはサーバ50とディスク30によって構成される。現用／待機系サーバには、OS 51。と、前記ディスク装置30を管理するディスク管理プログラム52と、ディスク障害の検知を行うクラスタプログラム53、アプリケーション54とを含んでいる。また、ディスク装置は現用／待機系サーバと02、03によって接続され、アプリケーションが使用するVOL 40と、ディスク上のVOLを管理するボリューム管理部31と、前記VOL40のアクセスを制御するためのアクセス制御表42を含んでいる。さらに、前記VOL40はPVID 41を含み、前記制御表42は、制御対象となるVOLのPVID43と制御するアクセスのパターン44とを含む。
前記クラスタプログラム53は、アプリケーション54が利用するVOL 40に対して行われる正常なアクセスパターンをディスク管理プログラム52を介して、ディスク上のボリューム管理部に通知する。ボリューム管理部31は通知されたアクセスパターンを対象となるVOL 40のPVID 41と一緒に、制御表42内のPVID 43とパターン44に格納する。
アプリケーション54は、VOL40に対するアクセスをボリューム管理部31を介して行う。前記管理部31は、前記アプリケーション54からのアクセスパターンを前記制御表に格納されたパターン44と比較し、許可されたパターンのアクセスである場合には、VOL40に対するアクセスを許可する。一方、許可されていないアクセスパターンであった場合には、VOL40に対するアクセスを許可せず、前記プログラム52を介して、アクセスを行ったアプリケーション54に対してエラーを返す。さらに、前記管理部31はクラスタプログラム52に対してもアクセスエラーが発生したことを通知する。これ  により、クラスタプログラム52はVOL40を破壊するようなアクセスが生じたことを検知することができる。
以上の手段をもつ第五の発明により、VOL上のデータ領域のアクセスを制御するための手段と、その制御するパターンを上位のサーバが通知する手段と、アクセスパターンに違反した上位サーバからのアクセスがあった場合に、上位サーバに通知する手段とを持つ機能をもつディスクが提供される。
【００３６】
図10は、図9に示した第五の実施例におけるアクセスパターンによりディスク上のVOLへのアクセスの可否を制御するディスクを利用した、第六の実施例のコンピュータシステムの低位のブロック図である。
現用系100のアプリケーション110は、アプリケーションが使用する正VOL320に対するアクセスパターンをディスク管理プログラム150を介して、ディスク300上のボリューム管理部310に通知する。アクセスパターンは、アクセスを許可、あるいは拒否するものである。この通知には、アプリケーション110が使用する正VOL320のPVID 321も含まれる。前記通知を受け取った前記ボリューム管理部310は、アクセス制御部311によって、アクセス制御表313に前記PVID321と前記アクセスパターンとを登録し、保持する。この後、アプリケーション100の前記正VOL320に対するアクセスは、前記ボリューム管理部310の前記アクセス制御部311を介して行われる。前記アクセス制御部311は前記アクセスのアクセスパターンを、前記アクセス制御表313内の対象PVIDのアクセスパターン315と比較し、一致した場合は前記正VOL320へのアクセスを許可する。もし、一致しなかった場合は、上記アプリケーション100にアクセスエラーを通知し、障害通知部312が呼び出され、現用系及び待機系の監視部124、224に不正なアクセスが起こったことを通知する。また、前記311は、前記不正アクセス発生以降、前記不正アクセスが行われた正VOL320に対するアクセスを拒絶する。
前記224は通信部225、通信部123を経由して、前記監視部124に系切替要求を通知する。前記監視部224は、前記不正なアクセスの通知と前記系切替要求から、不正アクセスによる系切替を判断し、前記アプリケーション110の停止を行う。一方、前記監視部224は前記系切替要求を通知するのと平行して、系切替部225に対しても系切替要求をする。前記系切替部225は、まず、ディスク管理プログラム250を介して、ディスク300条のボリューム管理部310にVOLレプリカを停止するように要求する。前記ボリューム管理部310は要求に従って副VOL330を正VOL330から分離する。
この時、副VOL330は、前記正VOL320が不正アクセスを発生した状態を保持している。従って、前記系切替部225が系切替要求に従って、前期副VOLを用いてアプリケーション210によって前記アプリケーション110の処理を引き継ぐことで、正常なデータ状態での系切替が完了する。
【００３７】
図11は、図10に示した本発明の第六の実施例における障害発生の検出とVOLレプリカのペア分割によるデータ保護のタイミングを説明した図である。第六の発明では、図2における時刻T0〜T3におけるログ領域の破壊を防ぐ手段を提供する。
まず、時刻T6は現用系サーバが障害によってログ領域の破壊を生じるようなアクセスがログ領域に対して行った時刻を示す。この時刻T6以降、前記のようにログ領域に対する以降のアクセスはエラーとなり、ログ領域の更新が停止される。同時にアクセス違反が生じたことが待機系に通知される。待機系サーバは前記通知を受けると、ディスク上のログ領域に対してペア分割を行う。これにより、副VOLのログ領域にはアクセス違反が生じた時刻T6のログが護される。一方、データ領域は前記のように公知技術によりスナップショットがとられており、このデータ領域に対して、前記の時刻T6における内容を保持したログ領域を用いることで、ログ領域のデータが正常である時刻T6におけるデータ領域を回復することができる。この回復されたデータ領域は、ログ領域が正常である場合、正常な内容を含む。
以上により、時刻T6におけるデータ領域とログ領域とが待機系サーバに引き継がれることになり、系切替が完了した時刻T4からは、時刻T6の状態を引き継ぐことが可能となる。 
ここでは、時刻T6の回復について述べているが、時刻T6までの任意の時刻のデータ領域とログ領域を回復可能であり、T0〜T6におけるデータが正常な時刻、すなわち時刻T0〜T3におけるデータが正常な時刻T2の状態を引き継ぐことも可能である。
以上の手段をもつ第六の実施例により、時刻T0〜T3においてログ領域の破壊を生じる障害が発生した時刻(T6)におけるログ領域の破壊に対して、データを保護し、系切替を実現することが可能となる。
【００３８】
図12は、前記第二の実施例と第四の実施例と第六の実施例とを用いた第七の実施例における障害発生の検出とVOLレプリカのペア分割によるデータ保護のタイミングを説明した図である。第七の実施例では、図2における時刻T0〜T3におけるデータ領域及びログ領域の破壊を防ぐ手段を提供する。
まず、データ領域は、第二の実施例と同様に、現用系サーバによって第一回目に障害が検知された時刻T1においてペア分割が行われる。さらに、データ領域は第四の実施例ちお同様に、ある時刻においてその直前のデータ保証がなされた時刻のデータが副VOLに保持される。すなわち、時刻T1において、その直前にハートビートが正常であった時刻T0における内容がデータ領域の副VOLに格納されている。従って、これらの技術により時刻T1以降においてデータ領域の副VOLには時刻T0の内容が格納される。これにより、図11におけるデータ領域のスナップショットに比べ、より障害発生時点に近い状態にあるデータ領域のスナップショットを提供することができる。
次に、ログ領域は、第六の実施例と同様に、時刻T3において時刻T0〜T3の任意の時刻T6においてログ領域の破壊を伴うような障害が発生した場合には、ペア分割が行われ、時刻T6のログ領域が保護される。また、時刻T0〜T3においてログ領域の破壊が生じなかった場合には、第二の発明により時刻T3においてペア分割が行われ、時刻T3のログ領域が保護される。すなわち、時刻T0〜T3の任意時刻T2における正常なログ領域の内容がログ領域の副VOLに格納される。
前記の時刻T0のデータ領域に対して、前記の時刻T2のログ領域を用いることで、任意の時刻T2におけるデータ領域を回復することができる。この回復された時刻T2のデータ領域は正常な内容をもつ。従って、待機系はこれらの時刻T2におけるデータ領域とログ領域とを引き継ぐことにより、T0〜T3の任意正常時T2から処理を引き継ぐことが可能となる。
以上の第七の実施例では、時刻T0〜T3においてデータ領域／ログ領域の破壊から保護し、正常に系切替を実現する機能が実現される。すなわち、高可用性システムにおいて、任意時刻に発生したデータ破壊を伴う障害に対して、データが正常な時刻のデータを回復し、正常に系切替を行うことのできる機能を有するシステムが実現される。
【００３９】
以上に述べたように、本発明の実施例によれば、以下のような効果がある。
、まず系切替時においてVOLレプリカによるペア構成を解消し、副VOLを引き継いで系切替を行うことにより、系切替以降に現用系コンピュータが暴走して正VOLのデータを破壊するような場合でもデータを保護して、正常に系切替を実現することができる。
【００４０】
さらに、待機系が現用系の障害を第一回目に検知することを契機としてデータ領域のペア分割を、系切替を行う第n回目の連続障害検知を契機としてログ領域のペア分割を行うことにより、第一回目から第n回目の障害検知までの間にデータ領域が破壊されるような場合でも、データ領域を保護し、正常に系切替時を実現することができる。
【００４１】
さらに、VOLレプリカにおけるペア構成状態において、正VOLから副VOLへのデータ書込みを一時的に格納する記憶領域を設け、副VOLの内容を変更せずにその記憶領域を反映した内容を読み出す手段と、記憶領域の内容を副VOLの内容に反映させる手段とを実現する。これにより、データの保証が行われた時にのみ正VOLとデータの内容が一致し、データの保証がされていない時点では、直前のデータの保証が行われた時点でのデータの内容を保持することのできる副VOLをもつVOLレプリカ機能と、それを有するディスクを実現することができる。
【００４２】
さらにデータ保証を現用系／待機系のハートビート時点が成功している時にのみ行うことで、ハートビートによって現用系コンピュータが正常動作していることが保証される時のデータのみ反映したペア構成状態を実現することができる。すなわち、データ破壊が生じた状態のデータが反映されることから副VOLを保護することが実現できる。
【００４３】
さらに、ディスク上のVOL領域に対するアクセスパターンをディスクに教えることにより、アクセスパターンに違反するアクセスを遮断すると同時に、アクセス違反が生じたことを上位サーバｊに通知することができる。これにより、障害によるデータ破壊が生じることを防止できる。
【００４４】
さらに、高可用性データベースシステムにおけるログ領域にアクセスパターンによりディスク上のVOLへのアクセス制御を適用し、ログ領域が正常なシーケンシャルライト以外の書込みを行うような場合、すなわちログの破壊を生じるような障害が発生した場合に、ログ領域を保護する機能を実現することができる。 
さらに、データの破壊を伴うような現用系コンピュータシステムの障害に対して、障害が発生する直前の任意の時点のデータを保護することが可能になるので、前記のようなデータ破壊を伴う障害が発生した場合でも、データが正常な状態を回復し、系切替によって待機系コンピュータが処理を引き継ぐことができる。
【図面の簡単な説明】
【００４５】
【図１】従来の方法による現用／待機コンピュータシステムモデル問題点を示すための高位のシステムブロック図である。
【図２】従来の方法による現用／待機コンピュータシステムモデルの問題点を示す処理フロー図である。
【図３】本発明の第一の実施例におけるコンピュータシステムモデルの高位のシステムブロック図である。
【図４】本発明の第一の実施例におけるコンピュータシステムの低位のシステムブロック図である。
【図５】本発明の第二の実施例におけるディスク装置の行為の処理フロー図である。
【図６】本発明の第三の実施例におけるによるコンピュータシステムの低位のブロック図である。
【図７】本発明の第四の実施例におけるデータ破壊からデータを守る処理を説明した処理フロー図である。
【図８】本発明の第四の実施例におけるコンピュータシステムの低位のシステムブロック図である。
【図９】本発明の第五の実施例におけるコンピュータシステムモデルの高位のシステムブロック図である。
【図１０】本発明の第六の実施例におけるコンピュータシステムモデルの低位のシステムブロック図である。
【図１１】本発明の第六の実施例におけるデータ破壊からデータを守る処理を説明した処理フロー図である。
【図１２】本発明の第七の実施例におけるデータ破壊からデータを守る処理を説明した処理フロー図である。
【符号の説明】
【００４６】
100 現用系コンピュータ
200 待機系コンピュータ
110、210 アプリケーション
120、220 クラスタプログラム
123、223 通信部
124、224  監視部
125、225 系切替部
130、230 オペレーティングシステム
131、231 ディスク管理情報バッファ
150、250 ディスク管理プログラム
300 ディスク
310 ボリューム管理部
311 アクセス制御部
312 障害通知部
313 アクセス制御表
320 正ボリューム
330 副ボリューム
340 一時記憶領域
321、331、341 物理ボリューム識別子(PVID)
322、332 ボリューム情報
323、333、343 データ領域。
【図１】
2005071119.tif 000003
【図２】
2005071119.tif 000004
【図３】
2005071119.tif 000005
【図４】
2005071119.tif 000006
【図５】
2005071119.tif 000007
【図６】
2005071119.tif 000008
【図７】
2005071119.tif 000009
【図８】
2005071119.tif 000010
【図９】
2005071119.tif 000011
【図１０】
2005071119.tif 000012
【図１１】
2005071119.tif 000013
【図１２】
2005071119.tif 000014