JP4490745B2 - ホットスタンバイシステム - Google Patents
ホットスタンバイシステム Download PDFInfo
- Publication number
- JP4490745B2 JP4490745B2 JP2004190818A JP2004190818A JP4490745B2 JP 4490745 B2 JP4490745 B2 JP 4490745B2 JP 2004190818 A JP2004190818 A JP 2004190818A JP 2004190818 A JP2004190818 A JP 2004190818A JP 4490745 B2 JP4490745 B2 JP 4490745B2
- Authority
- JP
- Japan
- Prior art keywords
- program
- logical volume
- write
- processing
- request
- Prior art date
- Legal status (The legal status is an assumption and is not a legal conclusion. Google has not performed a legal analysis and makes no representation as to the accuracy of the status listed.)
- Expired - Fee Related
Links
Images
Classifications
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR COUNTING
- G06F—ELECTRIC DIGITAL DATA PROCESSING
- G06F11/00—Error detection; Error correction; Monitoring
- G06F11/07—Responding to the occurrence of a fault, e.g. fault tolerance
- G06F11/16—Error detection or correction of the data by redundancy in hardware
- G06F11/20—Error detection or correction of the data by redundancy in hardware using active fault-masking, e.g. by switching out faulty elements or by switching in spare elements
- G06F11/202—Error detection or correction of the data by redundancy in hardware using active fault-masking, e.g. by switching out faulty elements or by switching in spare elements where processing functionality is redundant
- G06F11/2046—Error detection or correction of the data by redundancy in hardware using active fault-masking, e.g. by switching out faulty elements or by switching in spare elements where processing functionality is redundant where the redundant components share persistent storage
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR COUNTING
- G06F—ELECTRIC DIGITAL DATA PROCESSING
- G06F11/00—Error detection; Error correction; Monitoring
- G06F11/07—Responding to the occurrence of a fault, e.g. fault tolerance
- G06F11/16—Error detection or correction of the data by redundancy in hardware
- G06F11/20—Error detection or correction of the data by redundancy in hardware using active fault-masking, e.g. by switching out faulty elements or by switching in spare elements
- G06F11/202—Error detection or correction of the data by redundancy in hardware using active fault-masking, e.g. by switching out faulty elements or by switching in spare elements where processing functionality is redundant
- G06F11/2023—Failover techniques
- G06F11/2033—Failover techniques switching over of hardware resources
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR COUNTING
- G06F—ELECTRIC DIGITAL DATA PROCESSING
- G06F11/00—Error detection; Error correction; Monitoring
- G06F11/07—Responding to the occurrence of a fault, e.g. fault tolerance
- G06F11/16—Error detection or correction of the data by redundancy in hardware
- G06F11/20—Error detection or correction of the data by redundancy in hardware using active fault-masking, e.g. by switching out faulty elements or by switching in spare elements
- G06F11/202—Error detection or correction of the data by redundancy in hardware using active fault-masking, e.g. by switching out faulty elements or by switching in spare elements where processing functionality is redundant
- G06F11/2038—Error detection or correction of the data by redundancy in hardware using active fault-masking, e.g. by switching out faulty elements or by switching in spare elements where processing functionality is redundant with a single idle spare processing component
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR COUNTING
- G06F—ELECTRIC DIGITAL DATA PROCESSING
- G06F11/00—Error detection; Error correction; Monitoring
- G06F11/07—Responding to the occurrence of a fault, e.g. fault tolerance
- G06F11/16—Error detection or correction of the data by redundancy in hardware
- G06F11/20—Error detection or correction of the data by redundancy in hardware using active fault-masking, e.g. by switching out faulty elements or by switching in spare elements
- G06F11/202—Error detection or correction of the data by redundancy in hardware using active fault-masking, e.g. by switching out faulty elements or by switching in spare elements where processing functionality is redundant
- G06F11/2023—Failover techniques
- G06F11/203—Failover techniques using migration
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR COUNTING
- G06F—ELECTRIC DIGITAL DATA PROCESSING
- G06F2201/00—Indexing scheme relating to error detection, to error correction, and to monitoring
- G06F2201/82—Solving problems relating to consistency
Landscapes
- Engineering & Computer Science (AREA)
- Theoretical Computer Science (AREA)
- Quality & Reliability (AREA)
- Physics & Mathematics (AREA)
- General Engineering & Computer Science (AREA)
- General Physics & Mathematics (AREA)
- Hardware Redundancy (AREA)
- Information Retrieval, Db Structures And Fs Structures Therefor (AREA)
Description
この種のホットスタンバイシステムに関して、例えば、特許文献1(特開平10−289122号公報)には、現用系と待機系にそれぞれ1台のディスクを接続し、通常運用時は現用系でデータ更新が発生した場合、ネットワークを通じて待機系に更新データを送信し、待機系側のディスクに対しても同様のデータ更新を行う旨が開示されている。そして、現用系で障害が発生した際は、待機系が新しく現用系として業務を引き継ぎ、従前の現用系が以後待機系として機能し、障害から復旧した後、引継ぎ後の更新データを新らたな現用系から新たな待機系へ送り、共有ディスクの同期を行っている。この従来技術によれば、待機系に切替えた時点で、両ディスク内のデータの同期を改めて取らずに業務の引継ぎ処理を行えるため、業務再開までの時間を短縮できる。
一例では、前記I/O記録は、I/O要求毎にエントリを有するテーブル形式で格納され、現用系計算機から待機系計算機へはネットワークを介してテーブルの情報が送信される。
まず、図1乃至図14を参照して第一の実施例について説明する。
このシステムが適用される計算機システムは、現用系計算機(以下、単に現用系という)1000、待機系計算機(以下、単に待機系という)2000、両系によって共通的にアクセスされる共有ディスク3000、およびこれらを接続するネットワーク4000から構成される。
現用系1000と待機系2000は、同様の構成を成し、夫々、メモリ1400、2400、プロセッサ1450、2450、入出力プロセッサ(以下、IOP:Input Output Processor)1500、2500、通信アダプタ1550、2550、およびディスク制御装置1600、2600を備えて構成される。
ネットワーク4000は、現用系1000および待機系2000を所定のプロトコルに基づき接続する。なお、図1の計算機システムには、通常、現用系1000や待機系2000以外の第三の計算機や電子機器が接続されることがあるが、図示では省略されている。
アプリケーションプログラム1050、2050は、1つまたは複数存在し、トランザクション処理などの業務を行い、共有ディスク3000に対してI/Oを発行する。系切替え制御プログラム1100、2100は、自系の障害を検出し、ホットスタンバイ切替えを実行するプログラムである。現用系、待機系それぞれで動作している系切替え制御プログラム1100、2100は、現用系で障害が発生した場合これを検出し、両系で連携してホットスタンバイ切替えを実行する。
共有ディスク3000は,1つまたは複数の論理ボリューム3100〜3300から構成される。ここで,論理ボリュームとは,物理ボリューム装置の一部または全部の領域から構成された論理的なディスク装置である。物理ボリュームとは,物理的なディスク装置またはOSから物理的なディスク装置として認識可能な記憶装置である。第一の実施形態における論理ディスクは,二つの物理ボリューム3400,3500を二重化して,それぞれ同一のデータを書き込むミラーリング処理を施している。
OS1200は、デバイススイッチテーブル1210、I/O要求処理プログラム1220、障害検出プログラム1230、デバイススイッチテーブル書き換えプログラム1240から構成される。デバイスドライバ1350は、書き込み処理プログラム1360、ダンプ出力プログラム1370から構成される。なお、上記以外にもOSやデバイスドライバとして必要なプログラム部分は存在するが、本実施の形態の説明に直接関係が無いため、説明を省略する。
アクセス要求監視プログラム1250は、アクセス監視対象論理ボリュームの登録プログラム1255、アクセス監視対象論理ボリュームの除外プログラム1260、アクセス監視状態の取得プログラム1265、アクセス要求記録プログラム1270、アクセス記録の送信プログラム1275、初期化処理プログラム1280から構成される。なお、アクセス監視対象論理ボリュームの除外プログラム1260およびアクセス監視状態の取得プログラム1265は、無くても良い。
アクセス要求管理テーブルエントリ1310は、アクセス対象の論理ボリュームを識別する論理ボリュームID1320、共有ディスクへの書き込み要求の中で処理中のものをカウントする書き込み要求カウンタ1330から構成される。アクセス要求管理テーブルエントリ1310は、アクセス要求記録プログラム1270により更新される。なお、図5において、斜線部分は他のフィールドを格納してもよい。
図6は、第一の実施形態におけるアクセス監視対象論理ボリュームの登録プログラム1255の処理の流れを示す図である。
アクセス監視対象論理ボリュームの登録プログラム1255は、現用系1000および待機系2000のシステム立ち上げ時にシステムコールまたはコマンドにより、登録対象の論理ボリュームIDをパラメータとして呼び出す。次に、デバイススイッチテーブル書き換えプログラム1240を呼び出し、登録対象の論理ボリュームへの書き込み処理に対応するデバイススイッチテーブルエントリ1211にアクセス要求記録プログラム1270を登録する。これにより、登録対象の論理ボリュームへの書き込みI/O要求が発生すると、アクセス要求記録プログラム1270が呼び出される(S5000)。
最後に、処理が成功したことを表す戻り値を呼び出し元のプログラムに返し、このプログラムを終了する(S5040)。
アクセス監視対象論理ボリュームの除外プログラム1260は、システムコールまたはコマンドにより、登録対象の論理ボリュームIDをパラメータとして呼び出される。
まず、パラメータとして渡された論理ボリュームIDに基づき、アクセス要求管理テーブル1300から論理ボリュームIDに対応するアクセス要求管理テーブルエントリ1310を検索する(S5100)。
最後に、このプログラムが成功した旨を表す戻り値を呼び出し元プログラムに返し、このプログラムの処理を終了する(S5190)。
アクセス監視状態の取得プログラム1265は、取得対象の論理ボリュームIDをパラメータとして、システムコールまたはコマンドにより呼び出されるか、アクセス監視プログラム1250内の他のプログラムから内部的に呼び出される。なお、論理ボリュームIDの他にも、監視状態を示す情報を格納するバッファのアドレス等の追加パラメータを伴ってもよい。
次に、この検索の結果、該当するエントリが見つかったかどうか判定する(S5210)。該当するエントリが見つかった場合はステップS5230に進み、見つからなかった場合はステップS5120に進む。該当するエントリが見つからなかった場合、該当エントリ無しを表す戻り値を呼び出し元プログラムに返し、このプログラムの処理を終了する(S5220)。一方、該当するエントリが見つかった場合には、該当エントリの情報を呼び出し元に返す(S5230)。このとき、追加パラメータでバッファのアドレスを渡されていれば、そのバッファに格納してもよい。
次に、このプログラムの処理が成功した旨を表す戻り値を呼び出し元プログラムに返し、このプログラムの処理を終了する(S5240)。
アクセス要求の記録プログラム1270は、アクセス監視対象の論理ボリューム対しI/O要求が発生した場合に、I/O要求処理プログラム1220から論理ボリュームIDやI/Oに用いるデータなどをパラメータとして呼び出される。
ステップS5340で、該当するエントリがある場合は、そのエントリの書き込み要求カウンタ1330の値を「1」減じる。この結果、書き込み要求カウンタ1330の値が「0」になれば、論理ボリュームへのI/O処理はすべて終了したことを意味する(S5350)。
最後に、デバイスドライバから返された戻り値を呼び出し元プログラムに返し、このプログラムの処理を終了する(S5360)。
この判定で、内部カウンタの値が規定の値に達した場合には、ダンプ出力処理プログラム1370を呼び出す。ダンプ出力処理プログラム1370は、ダンプ出力処理を実施し、処理の結果を戻り値として返す(S5440)。ダンプ出力処理プログラム1370の戻り値を、このプログラムの呼び出し元プログラムに返し、このプログラムの処理を終了する(S5450)。
即ち、ステップS5510で書き換えに失敗した場合は、デバイススイッチテーブル書き換えに失敗した旨を表す戻り値を呼び出し、元プログラムに返して、このプログラムの処理を終了する(S5520)。一方、書き換えに成功したと判定された場合には、このプログラムの処理が成功した旨を表す戻り値を呼び出して元プログラムに返し、このプログラムの処理を終了する(S5530)。
最後に、業務引継ぎ処理を行い、待機系2000は新現用系として業務を引き継ぐ(S5640)。
ステップS5700で、取得可能なアクセス要求管理テーブルエントリ1310が存在する場合は、エントリを1つ取得する(S5710)。そして、その取得したアクセス要求管理テーブルエントリ1310の書き込み要求カウンタ1330の値が「0」かどうか判定する(S5720)。
まず、現用系1000のシステム立ち上げ時の処理が実行される。
現用系1000は、システム立ち上げ時に初期化処理プログラム1280を呼び出し、実行する(S5800)。これにより、デバイススイッチテーブルエントリ1212を書き換え、ダンプ出力時にアクセス要求記録の送信プログラム1275が呼び出されるように設定する。
アプリケーションプログラム1050が論理ボリュームに対し書き込みのI/O要求を発行すると、OS1200のI/O要求処理プログラム1220が呼び出され、実行される(S5810)。I/O要求処理プログラム1220は、I/O対象となる論理ボリュームと、操作の内容に基づき、デバイススイッチテーブルエントリ1211の内容を参照する。
I/O対象の論理ボリュームに対応するアクセス要求管理テーブルエントリ1310の書き込み要求カウンタ1330に「1」を加える。
(2)デバイスドライバ1350の書き込み処理プログラム1360を呼び出して実際のI/O処理を行う。このとき,対象となる論理ボリュームに対応する物理ボリュームそれぞれに同一の書き込みを実施する。
(3)上記(1)で操作した書き込み要求カウンタ1330の値を「1」減じた後、呼び出し元のアプリケーションプログラム1050にI/O完了を報告する。
このステップS5810とS5815は、現用系1000で障害が発生するまで繰り返えし、実行される。
即ち、現用系1000で障害が発生すると、この障害を障害検出プログラム1230が検出する。障害検出プログラム1230は予め登録された論理ボリュームへのダンプ出力処理に対応するデバイススイッチテーブルエントリ1212を参照し、そのエントリに登録されたプログラムのアドレスを取得する(S5820)。
待機系2000では、システム立ち上げ時に初期化プログラム2280を呼び出して実行する(S5850)。これにより、OS2200のデバイススイッチテーブルエントリ2212を書き換え、ダンプ出力時にアクセス要求記録の送信プログラム2275が呼び出されるよう設定する。
以上の処理を終えると、待機系2000の系切替え制御プログラム2100は現用系1000のアクセス記録の送信プログラム1275からアクセス要求管理テーブル1300の内容が送信されるのを待つ。
待機系2000の系切替え制御プログラム2100は、現用系1000から送信されたアクセス要求管理テーブル1300の内容を受信する(S5860)。そして、受信したアクセス要求管理テーブル1300の内容をパラメータとして整合性検査プログラム2150を呼び出し、実行する(S5865)。即ち、整合性検査プログラム2150は、パラメータとして渡されたアクセス要求管理テーブル1300の内容に基づき、論理ボリュームの整合性をチェックする。このとき、途中で中断された書き込みI/Oが存在する場合は、その論理ボリュームに対して復旧プログラムを実行する。復旧プログラムでは,中断されたI/Oの対象となった領域を他の物理ボリュームとの間でコピーし,不整合な状態を修復する。なお,論理ボリュームに対応する領域全てをコピーしても良い。
以上の処理が終了すると、系切替え制御プログラム2100は、業務引継ぎ処理を行い、新らたな現用系として業務を再開する(S5870)。
次に、図15〜図22を参照して第二の実施形態について説明する。
上述した第一の実施形態との相違点は、現用系のアプリケーションが共有ディスクへの書き込みI/O要求を発行する度に、I/O実施前と完了時に現用系のアクセス要求監視プログラムが待機系のアクセス要求監視プログラムに通知し、待機系側のアクセス要求監視プログラムがアクセス要求管理テーブルに記録する点である。
系切替え制御プログラム6000、6200、整合性検査プログラム6050、6250、アクセス要求監視プログラム6100、6300を除き、その構成は第一の実施の形態と同じであるため、同じ部分について説明は以降省略する。また、以下の説明では、待機系2000を構成する6200〜6300の構成は、現用系1000の6000〜6100と同様であるため、現用系1000の説明をもって代用する。
アクセス要求監視プログラム6100は、アクセス監視対象論理ボリュームの登録プログラム1255、アクセス監視対象論理ボリュームの除外プログラム1260、アクセス監視状態の取得プログラム1265、アクセス要求記録プログラム6110、アクセス要求記録の受信プログラム6120から構成される。なお、アクセス監視対象論理ボリュームの除外プログラム1255およびアクセス監視状態の取得プログラム1265は、無くても良い。また、プログラム1255〜1265の構成および動作は第一の実施形態と同じであるため、説明は省略する。
アクセス要求通知パケット6400は、通知の内容を示す通知の種類6410とアクセス対象の論理ボリュームID6420を含んで構成される。ここで、通知の種類6410は、待機系への通知の種類を示す値を格納し、「書き込みI/O開始」を示す値または「書き込みI/O完了」を示す値のどちらかを示す。また、論理ボリュームID6420は、書き込みI/Oの対象となった論理ボリュームを識別するための論理ボリュームIDを格納する。
そして、上記のように作成されたアクセス要求通知パケット6400を、ネットワーク4000を経由して待機系のアクセス記録の受信プログラム6320に送信する(S7040)。ここで、IOP1500を経由して通信アダプタ1550を用いて通信を行うが、この処理は外部プログラムが行っても良い。
アクセス要求の受信プログラム6120は、通常運用時の待機系2000上で常にアクセス要求通知パケット6400を待ち受けており、アクセス要求通知パケット6400の到着を契機として処理を行う。以降は、待機系2000のアクセス記録の受信プログラム6320について説明する。
ステップS7120の判定で該当エントリが見つかった場合、ステップS7100で受信したアクセス要求通知パケット6400の通知の種類6410の内容を判定する(S7130)。この内容が「書き込みI/O開始」を示している場合は、ステップS7110で検索したアクセス要求管理テーブルエントリ2310の書き込み要求カウンタ2330の値に「1」を加え、ステップS7100に進む(S7140)。
待機系2000の系切替え制御プログラム6000は、通常運用中は常に現用系1000の障害を監視しており、障害発生を検出すると系切替えの処理を実施する。以降は、待機系2000の系切替え制御プログラム6200について説明する。
取得可能な論理ボリュームIDが存在する場合は、1つのエントリを取得し、そのIDに対応するアクセス要求管理テーブルエントリ2310を検索する(S7310)。このとき、取得した論理ボリュームIDはパラメータとして受け取ったIDの列から削除する。
現用系1000は、システム立ち上げ時にアクセス管理対象論理ボリュームの登録プログラム1255を呼び出し、実行する。これにより、OS1200のデバイススイッチテーブルエントリ1211を書き換え、論理ボリュームへの書き込みI/O要求発生時にアクセス要求記録プログラム6110を呼び出すよう設定する。なお、アクセス監視対象とするべき論理ボリュームが複数ある場合は、夫々の論理ボリュームに対してこの処理を行う(S7400)。
アプリケーションプログラム1050が論理ボリュームに対して書き込みのI/O要求を発行すると、OS1200のI/O要求処理プログラム1220が呼び出され、実行される。I/O要求処理プログラム1220は、I/O対象となる論理ボリュームと、操作の内容に基づき、デバイススイッチテーブルエントリ1211の内容を参照する(S7405)。
待機系2000のアクセス要求通知受信プログラム6120に「書き込みI/O開始」を示すアクセス要求通知パケット6400を送信し、
デバイスドライバ1350の書き込み処理プログラム1360を呼び出して実際のI/O処理を行い、
待機系2000のアクセス要求通知受信プログラム6120に「書き込みI/O完了」を示すアクセス要求通知パケット6400を送信した後、呼び出し元のアプリケーションプログラム1050にI/O完了を報告する。
このステップS7405とS7410は、現用系1000で障害が発生するまで繰り返し、実行される(S7410)。
即ち、現用系1000で障害が発生し、障害検出プログラム1230がこれを検出すると、障害検出プログラム1230は予め登録された論理ボリュームへのダンプ出力処理に対応するデバイススイッチテーブルエントリ1212を参照し、当該エントリに登録されたプログラムのアドレスを取得する(S7415)。
待機系2000は、システム立ち上げ時にアクセス管理対象論理ボリュームの登録プログラム2255を呼び出し、実行する。これにより、OS2200のデバイススイッチテーブルエントリ2211を書き換え、論理ボリュームへの書き込みI/O要求発生時にアクセス要求記録プログラム6310を呼び出すように設定する。なお、アクセス監視対象とすべき論理ボリュームが複数ある場合は、夫々の論理ボリュームに対してこのステップの処理を行う(S7450)。
待機系2000の系切替え制御プログラム6200は、現用系1000の障害発生を検出すると、整合性検査プログラム6250を呼び出し、論理ボリュームの整合性を検査する(S7460)。
以上の処理が終了すると、系切替え制御プログラム6200は、業務引継ぎ処理を行い、新らたな現用系として業務を再開する(S7470)。
次に、図23〜図29を参照して第三の実施形態について説明する。
第一および第二の実施形態との相違点は、現用系から共有ディスクへの書き込みI/Oを実施する際に、I/O処理中であるボリューム上のアドレスをその論理ボリューム上に記録し、I/O完了時にこの記録を削除する点である。これにより、障害発生により書き込みI/O中が強制中断された場合は、ボリューム上に処理中のアドレスの記録が残るため、不整合な状態を検出可能となる。
整合性チェックプログラム8000、8200、デバイスドライバ8100、8300、共有ディスク8400以外の構成については、第二の実施形態と同じであるため、以降での説明は省略する。また、以下の説明では、待機系2000を構成する8200、8300の構成は現用系1000の8000、8100と同様であるため、現用系1000の説明をもって代用する。
共有ディスク8400は複数の論理ボリューム8410,8420,8430から構成されている。各論理ボリュームの領域は,それぞれ物理ボリューム8450,8460に対応付けられている。このとき,論理ボリュームは,物理ボリュームに一対一で割り当てても良いし,物理ボリュームの領域を分割して一部のみを論理ボリュームに対応付け,複数の論理ボリュームで一つの物理ボリュームを共有しても良い。さらに,分割した領域とは別に領域が設けられ,書き込みI/O要求を記録するアクセス要求管理テーブル8455,8465が格納される。デバイスドライバ8100,8300は,書き込みI/O実施の際にアクセス要求管理テーブル8455,8460を更新する。なお,アクセス要求管理テーブルは,論理ボリュームに対応付けた領域それぞれの中に存在してもよい。各論理ボリュームには,固有の論理ボリュームIDが付与され,それらのIDにより論理ボリュームが認識される。なお,通常,論理ボリュームを複数個有するのが望ましいが1つでもよい。
なお,エントリを削除せず,このI/Oが完了したことを示す値を格納してもよい。また,書き込み処理は,対象論理ボリュームに対象となった物理ボリューム全てに対して実施する。このため,アクセス要求管理テーブル8465に対しても同様の処理を行う。
最後に、ステップS9000で追加したアクセス要求管理テーブルエントリ8440を削除する。このとき、このエントリ8440の書き込み対象アドレス8445が格納されていた領域には、空白を示す値を格納する(S9020)。なお,エントリを削除せず,このI/Oが完了したことを示す値を格納してもよい。
まず、現用系1000のシステム立ち上げ処理を行う(S9200)。この起動は通常のやり方と同じである。
続いて、現用系1000の通常運用時の処理が実行される。
即ち、アプリケーションプログラム1050が論理ボリュームに対し書き込みのI/O要求を発行すると、OS1200のI/O要求処理プログラム1220が呼び出され、実行される。I/O要求処理プログラム1220は、I/O対象となる論理ボリュームと、操作の内容に基づき、デバイススイッチテーブルエントリ1211の内容を参照する(S9205)。
即ち、現用系1000で障害が発生し、障害検出プログラム1230がこれを検出すると、障害検出プログラム1230は予め登録された論理ボリュームへのダンプ出力処理に対応するデバイススイッチテーブルエントリ1212を参照し、そのエントリに登録されたプログラムのアドレスを取得する(S5720)。
ダンプ出力が終了すると、現用系1000は障害を復旧し、新たな待機系として立ち上がる。このとき、後述するステップS9250以降の処理を行う(S9220)。
この処理では、まず、待機系2000のシステム立ち上げ処理が行われる(S9250)。システム立ち上げが終了すると、系切替え制御プログラム6200は現用系1000の障害を監視するステップS9255。
待機系2000の系切替え制御プログラム6200は、現用系1000の障害発生を検出すると、整合性検査プログラム8200を呼び出し、論理ボリュームの整合性を検査する(S9255)。
以上の処理が終了すると、系切替え制御プログラム8200は、業務引継ぎ処理を行い、新らたな現用系として業務を再開する(S9265)。
1050、2050:アプリケーションプログラム、
1100、2100:系切替え制御プログラム、
1150、2150:OS、 1200、2200:アクセス要求制御プログラム、1300、2300:デバイスドライバ、 1350、2350:プロセッサ、
1400、2400:メモリ、 1450、2450:プロセッサ、
1500、2500:入出力プロセッサ(IOP)、
1550、2550:ディスク制御装置、 1600、2600:通信アダプタ、
3000:共有ディスク、 4000:ネットワーク
Claims (6)
- 現用系計算機と待機系計算機でストレージを共有するホットスタンバイシステムにおける系の切替え制御方法において、
該現用系計算機から該ストレージのある論理ボリュームに対する書き込みI/O要求が発生した場合に、ストレージを構成する各論理ボリューム毎に前記論理ボリュームに対する操作の種類毎に起動するプログラムを登録したデバイススイッチテーブルを参照し、前記論理ボリュームにおける前記書込みI/O要求に対応する書込み処理プログラムを起動するステップと、
前記書込み処理プログラムが処理中の該I/O要求に関する情報をメモリにI/O記録として記録し、論理ボリュームに対する書込みI/Oを処理するステップと、
該現用系計算機で障害が発生した場合に、前記デバイススイッチテーブルを参照し、前記論理ボリュームのおけるダンプ出力処理に登録されているダンプ出力プログラムを起動するステップと、
前記ダンプ出力プログラムが、該メモリに保持された該I/O記録を該待機系計算機へ送信し、該現用系計算機内のメモリダンプを前記論理ボリュームに出力するステップと、
該待機系計算機で、該現用系計算機から送信された該I/O 記録を受信するステップと、
該待機系計算機において、該受信されたI/O 記録を検証するステップと、
該検証の結果、処理中の該I/O要求が存在した場合、該ストレージに対する復旧処理を実施するステップと、
を含むことを特徴とする系の切替え制御方法。 - 前記書込みI/O要求をメモリに前期I/O記録として記録する対象として前記論理ボリュームを指定するステップと、
前記対象として指定された論理ボリュームに対応する前記デバイススイッチテーブルを、前記書込みI/O要求をメモリに前記I/O記録として記録することの可能な前記書込みプログラムを登録するステップと、
前記書込みI/O要求をメモリに前記I/O記録として記録しない除外対象として前記論理ボリュームを指定するステップと、
前記除外対象として指定された論理ボリュームに対応する前記デバイススイッチテーブルを、前記前記書込みI/O要求をメモリに前記I/O記録として記録しない前記書込みプログラムを登録するステップと、
を含むことを特徴とする請求項1記載の系の切替え制御方法。 - 前記I/O記録として、アクセス対象となる該論理ボリュームの識別情報と、該論理ボリュームに対するI/O要求のうち処理中のI/O要求をカウントする情報を、該メモリに格納することを特徴とする請求項1 又は2 の系の切替え制御方法。
- 前記I/O 記録は、該I/O要求毎にエントリを有するテーブル形式で該メモリに格納され、該現用系計算機から該待機系計算機へはネットワークを介して該テーブルの情報が送信され、
該待機系計算機は、受信された該テーブルから取得可能なエントリを取得して、該エント
リの該カウント情報が所定の値かを判定し、所定の値である場合には、復旧プログラムを
実行せず、所定の値で無い場合には、該エントリに対応する前記論理ボリュームには中断
された書き込みI/O が存在し、該論理ボリュームの内容が不整合であると見なして、該論理ボリュームに対して復旧プログラムを実行することを特徴とする請求項3の系の切替え制御方法。 - 現用系計算機と待機系計算機でストレージを共有するホットスタンバイシステムにおける
系の切替え制御方法において、
該現用系計算機から該ストレージのある論理ボリュームに対する書き込みI/O要求が発生した場合に、ストレージを構成する各論理ボリューム毎に前記論理ボリュームに対する操作の種類毎に起動するプログラムを登録したデバイススイッチテーブルを参照し、
前記書込み処理プログラムが該I/O要求の前処理として、該待機系計算機にI/O開始の通知を送信し、論理ボリュームに対する書込みI/Oを処理するステップと、
該待機系計算機で、該I/O開始の通知を受信し、I/O処理中を示す情報をメモリに記録するステップと、
該現用系計算機で、前記書込み処理プログラムは、該I/O要求が完了した時、I/O 後処理として該待機系計算機にI/O 完了の通知を送信するステップと、
該現用系計算機で障害が発生した場合に、該メモリに記録された該I/O 処理中を示す情報を検証するステップと、
該検証の結果、処理中の書き込みI/O要求が存在する場合、該ストレージに対する復旧処理を実施するステップと、
を含むことを特徴とする系の切替え制御方法。 - 現用系計算機と待機系計算機でストレージを共有するホットスタンバイシステムにおける
系の切替え制御方法において、
該現用系計算機から該ストレージのある論理ボリュームに対する書き込みI/O要求が発生した時、ストレージを構成する各論理ボリューム毎に前記論理ボリュームに対する操作の種類毎に起動するプログラムを登録したデバイススイッチテーブルを参照し、前記論理ボリュームにおける前記書込みI/O要求に対応する書込み処理プログラムを起動するステップと、
前記書込み処理プログラムが該I/O要求の書き込み処理中であることを示す情報を該ストレージに記録するステップと、
該現用系計算機で障害が発生した場合に、該待機系計算機で該ストレージに記録された情
報を参照して検証するステップと、
該情報の検証の結果、書き込み処理中である場合、該ストレージに対する復旧処理を実施
するステップと、
を含むことを特徴とする系の切替え制御方法。
Priority Applications (2)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
JP2004190818A JP4490745B2 (ja) | 2004-06-29 | 2004-06-29 | ホットスタンバイシステム |
US10/958,735 US7418624B2 (en) | 2004-06-29 | 2004-10-04 | Hot standby system |
Applications Claiming Priority (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
JP2004190818A JP4490745B2 (ja) | 2004-06-29 | 2004-06-29 | ホットスタンバイシステム |
Publications (2)
Publication Number | Publication Date |
---|---|
JP2006012004A JP2006012004A (ja) | 2006-01-12 |
JP4490745B2 true JP4490745B2 (ja) | 2010-06-30 |
Family
ID=35507500
Family Applications (1)
Application Number | Title | Priority Date | Filing Date |
---|---|---|---|
JP2004190818A Expired - Fee Related JP4490745B2 (ja) | 2004-06-29 | 2004-06-29 | ホットスタンバイシステム |
Country Status (2)
Country | Link |
---|---|
US (1) | US7418624B2 (ja) |
JP (1) | JP4490745B2 (ja) |
Families Citing this family (19)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
TWI302712B (en) * | 2004-12-16 | 2008-11-01 | Japan Science & Tech Agency | Nd-fe-b base magnet including modified grain boundaries and method for manufacturing the same |
JP4182948B2 (ja) * | 2004-12-21 | 2008-11-19 | 日本電気株式会社 | フォールト・トレラント・コンピュータシステムと、そのための割り込み制御方法 |
JP2006189963A (ja) * | 2004-12-28 | 2006-07-20 | Hitachi Ltd | ストレージアクセス制御方法、クラスタシステム、パス接続スイッチおよびストレージアクセス制御プログラム |
JP4839841B2 (ja) * | 2006-01-04 | 2011-12-21 | 株式会社日立製作所 | スナップショット再起動方法 |
US9648147B2 (en) * | 2006-12-29 | 2017-05-09 | Futurewei Technologies, Inc. | System and method for TCP high availability |
US8051326B2 (en) * | 2006-12-29 | 2011-11-01 | Futurewei Technologies, Inc. | System and method for completeness of TCP data in TCP HA |
JP4838226B2 (ja) * | 2007-11-20 | 2011-12-14 | 富士通株式会社 | ネットワークロギング処理プログラム,情報処理システムおよびネットワークロギング情報自動退避方法 |
JP5229232B2 (ja) * | 2007-12-04 | 2013-07-03 | 富士通株式会社 | リソース貸出制御装置、リソース貸出方法およびリソース貸出プログラム |
US7539839B1 (en) | 2008-06-30 | 2009-05-26 | International Business Machines Corporation | Method to test error recovery with selective memory allocation error injection |
JP4924574B2 (ja) * | 2008-08-29 | 2012-04-25 | 富士通株式会社 | ストレージ装置の制御部及び制御方法 |
US20100229029A1 (en) * | 2009-03-06 | 2010-09-09 | Frazier Ii Robert Claude | Independent and dynamic checkpointing system and method |
US8417989B2 (en) * | 2010-10-15 | 2013-04-09 | Lsi Corporation | Method and system for extra redundancy in a raid system |
JP2012190175A (ja) * | 2011-03-09 | 2012-10-04 | Nec Corp | フォールトトレラントシステム、サーバ、フォールトトレラント化方法およびプログラム |
US9037907B2 (en) * | 2011-06-10 | 2015-05-19 | International Business Machines Corporation | Operator message commands for testing a coupling facility |
US8898519B1 (en) * | 2012-03-30 | 2014-11-25 | Emc Corporation | Method and apparatus for an asynchronous splitter |
EP2864885B1 (en) | 2012-06-25 | 2017-05-17 | Storone Ltd. | System and method for datacenters disaster recovery |
US10884843B2 (en) | 2018-01-12 | 2021-01-05 | International Business Machines Corporation | Traffic and geography based cognitive disaster recovery |
CN111427728B (zh) | 2019-12-31 | 2022-07-01 | 杭州海康威视数字技术股份有限公司 | 状态管理方法、主备切换方法及电子设备 |
US11556441B2 (en) * | 2021-04-16 | 2023-01-17 | EMC IP Holding Company LLC | Data storage cluster with quorum service protection |
Family Cites Families (10)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
JPH0277943A (ja) * | 1988-09-14 | 1990-03-19 | Hitachi Ltd | システムリカバリ方法 |
US6237108B1 (en) * | 1992-10-09 | 2001-05-22 | Fujitsu Limited | Multiprocessor system having redundant shared memory configuration |
JP3025732B2 (ja) * | 1993-07-16 | 2000-03-27 | 株式会社ピーエフユー | 多重化コンピュータシステムの制御方式 |
JPH08212095A (ja) * | 1994-10-31 | 1996-08-20 | Hitachi Ltd | クライアントサーバ制御システム |
JP3628777B2 (ja) * | 1995-10-30 | 2005-03-16 | 株式会社日立製作所 | 外部記憶装置 |
JPH10289122A (ja) | 1997-04-11 | 1998-10-27 | Nec Corp | ホットスタンバイシステムにおける系間共用ディスクの高速切り替え方式 |
US6636984B1 (en) | 2000-06-15 | 2003-10-21 | International Business Machines Corporation | System and method for recovering data from mirror drives following system crash |
JP3877519B2 (ja) * | 2000-12-15 | 2007-02-07 | 株式会社日立製作所 | システム回復方法およびその実施計算機システム並びにその処理プログラムを記録した記録媒体 |
US6957361B2 (en) * | 2001-11-29 | 2005-10-18 | International Business Machines Corporation | Method, system, and program for error handling in a dual adaptor system |
US6983397B2 (en) * | 2001-11-29 | 2006-01-03 | International Business Machines Corporation | Method, system, and program for error handling in a dual adaptor system where one adaptor is a master |
-
2004
- 2004-06-29 JP JP2004190818A patent/JP4490745B2/ja not_active Expired - Fee Related
- 2004-10-04 US US10/958,735 patent/US7418624B2/en not_active Expired - Fee Related
Also Published As
Publication number | Publication date |
---|---|
US7418624B2 (en) | 2008-08-26 |
JP2006012004A (ja) | 2006-01-12 |
US20050289391A1 (en) | 2005-12-29 |
Similar Documents
Publication | Publication Date | Title |
---|---|---|
JP4490745B2 (ja) | ホットスタンバイシステム | |
US7370248B2 (en) | In-service raid mirror reconfiguring | |
JP3992427B2 (ja) | ファイルシステム | |
US6968425B2 (en) | Computer systems, disk systems, and method for controlling disk cache | |
EP1764693B1 (en) | Data restoring apparatus using journal data and identification information | |
JP4321705B2 (ja) | スナップショットの取得を制御するための装置及び記憶システム | |
US7028216B2 (en) | Disk array system and a method of avoiding failure of the disk array system | |
US7062676B2 (en) | Method and system for installing program in multiple system | |
US7853767B2 (en) | Dual writing device and its control method | |
US7587562B2 (en) | Data duplication system, data duplication method and program | |
EP2864888B1 (en) | Non-disruptive controller replacement in network storage systems | |
JP3481737B2 (ja) | ダンプ採取装置およびダンプ採取方法 | |
US8555012B2 (en) | Data storage apparatus | |
JP4783076B2 (ja) | ディスクアレイ装置及びその制御方法 | |
US11182252B2 (en) | High availability state machine and recovery | |
US20090249010A1 (en) | Apparatus and method for controlling copying | |
US7529776B2 (en) | Multiple copy track stage recovery in a data storage system | |
US7966516B2 (en) | Automatic JTA migration | |
US7107485B2 (en) | Method, apparatus, and computer readable medium for managing multiple system | |
US20070234114A1 (en) | Method, apparatus, and computer program product for implementing enhanced performance of a computer system with partially degraded hardware | |
JP2000293391A (ja) | 大規模メモリシステム管理方法および装置 | |
JP3102119B2 (ja) | ホストコンピュータ装置 | |
JP3555847B2 (ja) | キャッシュメモリの障害処理装置、キャッシュメモリの障害処理方法、マルチプロセッサシステム | |
JP3214551B2 (ja) | 競合検出故障診断方式、競合検出故障診断方法、バスコンバータ、および記録媒体 | |
JPH11212917A (ja) | トランザクションリカバリ方式およびそのプログラム記録媒体 |
Legal Events
Date | Code | Title | Description |
---|---|---|---|
A621 | Written request for application examination |
Free format text: JAPANESE INTERMEDIATE CODE: A621 Effective date: 20061129 |
|
RD02 | Notification of acceptance of power of attorney |
Free format text: JAPANESE INTERMEDIATE CODE: A7422 Effective date: 20061129 |
|
A977 | Report on retrieval |
Free format text: JAPANESE INTERMEDIATE CODE: A971007 Effective date: 20090218 |
|
A131 | Notification of reasons for refusal |
Free format text: JAPANESE INTERMEDIATE CODE: A131 Effective date: 20090303 |
|
A521 | Written amendment |
Free format text: JAPANESE INTERMEDIATE CODE: A523 Effective date: 20090427 |
|
TRDD | Decision of grant or rejection written | ||
A01 | Written decision to grant a patent or to grant a registration (utility model) |
Free format text: JAPANESE INTERMEDIATE CODE: A01 Effective date: 20100316 |
|
A01 | Written decision to grant a patent or to grant a registration (utility model) |
Free format text: JAPANESE INTERMEDIATE CODE: A01 |
|
A61 | First payment of annual fees (during grant procedure) |
Free format text: JAPANESE INTERMEDIATE CODE: A61 Effective date: 20100402 |
|
FPAY | Renewal fee payment (event date is renewal date of database) |
Free format text: PAYMENT UNTIL: 20130409 Year of fee payment: 3 |
|
R150 | Certificate of patent or registration of utility model |
Free format text: JAPANESE INTERMEDIATE CODE: R150 |
|
LAPS | Cancellation because of no payment of annual fees |