JP3614328B2 - ミラーディスク制御装置 - Google Patents
ミラーディスク制御装置 Download PDFInfo
- Publication number
- JP3614328B2 JP3614328B2 JP27506799A JP27506799A JP3614328B2 JP 3614328 B2 JP3614328 B2 JP 3614328B2 JP 27506799 A JP27506799 A JP 27506799A JP 27506799 A JP27506799 A JP 27506799A JP 3614328 B2 JP3614328 B2 JP 3614328B2
- Authority
- JP
- Japan
- Prior art keywords
- disk
- extent
- relocation
- data
- mirror
- 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
Description
【0001】
【発明の属する技術分野】
本発明はミラーディスク制御装置、特に論理ボリューム単位にミラー管理を行う場合に適したミラーディスク制御に関する。
【0002】
【従来の技術】
データの信頼性向上あるいはディスクアクセス処理の高速化を図るために同一内容のディスクを多重化させて管理するミラーディスク管理方式がある。従来のミラーディスク管理方式では、物理ディスクをミラー管理単位とし、ディスクアクセス時にエラーが発生したときにはエラーが発生した物理ディスク全体を切り離して縮退運転に移行させていた。このような方法だと、ほんの一部分の格納領域で障害が発生しただけでも1台の物理ディスクを切り離すことになり非効率である。そこで、近年では、障害箇所を論理エクステント単位に切り離す論理ボリュームミラー管理方式が採用されている。
【0003】
この論理ボリュームミラー管理方式は、物理ディスクを論理ボリュームという任意のエリアに分割して形成した仮想的なディスク単位、すなわち論理ボリューム単位にミラー管理を行う。論理ボリュームを物理ディスク上に確保するとき実際に使用される物理ディスクエリアが任意の割付単位(例えば4MB)の整数倍で割り付けられる。以降、この割付単位を論理ボリュームにおいては論理エクステント、それに対応する物理ディスクにおいては物理エクステントと記述する。
【0004】
ここで、論理ボリュームミラー管理方式におけるミラー管理単位を論理ボリュームではなくディスクアクセス単位である論理エクステントとする。エクステントをミラー管理単位とした場合は、エクステント単位で障害状況を管理することになる。ミラー書込みの際、片方のディスクに書込み障害が発生したとすると、ミラーディスク制御では、障害が発生した論理エクステントに対応した物理エクステントを障害中とする。これにより、障害が発生した物理エクステントは、ミラー管理上、障害とみなされ切り離される。つまり、以降のアクセスから除外される。この結果、当該論理エクステントに対する読込み及び書込み処理は、正常な一方のディスクのみに行われる。
【0005】
論理ボリュームミラー管理方式では、以上のようにディスクアクセス処理において障害が発生した場合でもその障害発生部分(物理エクステント)だけを切り離せばよいので、ディスク全体を切り離すことなくミラーディスクの構成のまま運転を継続することができる。
【0006】
【発明が解決しようとする課題】
しかしながら、この方式だと、障害中の物理エクステントが各物理ディスクに分散する場合が発生しうるので、システム運用に際して、下記のような弊害が発生する。まず、ミラーディスクを構成するディスクそれぞれに障害中の物理エクステントが存在しているときに一方のディスクを交換しようとした場合、交換対象のディスクには正常な物理エクステントとして格納されているが、当該物理エクステントに対応した他方のディスクの物理エクステントが障害中である場合、交換対象のディスクを交換してしまうと当該物理エクステントに格納されている正常なデータは消失してしまう。従って、システム運転中にはディスク交換を単純にすることができない。
【0007】
また、ディスク交換をしないまでも一方のディスクを切り離してバックアップを取ろうとするとき、バックアップ対象のディスクには障害中の物理エクステントとして格納されているが、当該物理エクステントに対応した他方のディスクの物理エクステントが正常である場合、当該物理エクステントに格納されるべき正常なデータはバックアップされないので、バックアップ自体に意味がない。
【0008】
以上のように、従来においては、論理ボリュームあるいは論理エクステントをミラー管理単位とする場合において障害中の物理エクステントが複数のディスクに分散している場合、システム運転中には物理ディスクを切り離すことはできない。
【0009】
本発明は以上のような問題を解決するためになされたものであり、その目的は、論理ボリューム単位でミラーディスク管理がなされる場合にシステム運転中での物理ディスクの切り離しを可能にするミラーディスク制御装置を提供することにある。
【0011】
【課題を解決するための手段】
以上のような目的を達成するために、本発明に係るミラーディスク制御装置は、ミラーディスクを構成する各ディスクに対して、生成した1乃至複数の論理ボリュームの割付単位でありかつミラー管理単位である論理エクステント単位にデータアクセスをするミラーディスク制御装置において、論理ボリューム毎に当該各ディスク内に予め設けられた再配置エクステントエリアと、前記各ディスクに設けられ、論理エクステントと前記各ディスク上の物理エクステントとの対応づけを論理ボリューム毎に保持するエクステント対応管理情報記憶手段と、前記各ディスクに設けられ、前記再配置エクステントエリアに含まれる各再配置物理エクステントの使用状態を保持する再配置エクステント管理情報記憶手段と、前記ミラーディスクへのアクセス制御を行うディスクアクセス制御手段と、ディスクへのデータ書込みの際に障害が発生したときに、当該障害が発生したディスクに設けられた前記エクステント対応管理情報記憶手段又は前記再配置エクステント管理情報記憶手段を参照し、当該障害が発生したディスクへのデータ書込み箇所を、その障害発生箇所に代えて当該障害が発生したディスクにおける前記再配置エクステントエリア内にミラー管理単位で再配置する再配置処理を実行することで、データを書き込む物理エクステントの再配置を行う再配置処理手段とを有するものである。
【0012】
また、前記再配置処理手段は、復旧すべきデータをデータ書込みが正常にできたディスクから読み出して障害が発生したディスク側の該当する再配置エクステントに書き込むものである。
【0013】
また、前記再配置処理手段による再配置処理の実行タイミングを制御する再配置処理制御管理手段を有し、再配置処理を障害発生時又はオペレータからの指示によって選択的に行うものである。
【0014】
また、前記再配置処理手段は、前記障害が発生したディスクの交換後に当該交換したディスクに対して再配置処理を実行した後、オペレータからの指示に応じて再配置エクステントに割り当てられていたデータを、当該データが格納されている論理ボリューム内であって当該データの書込みが正常にできた他方のディスクにおける当該データの物理エクステントと同一位置に再配置するものである。
【0015】
また、他の発明に係るミラーディスク制御装置は、ミラーディスクを構成する各ディスクに対して、生成した1乃至複数の論理ボリュームの割付単位でありかつミラー管理単位である論理エクステント単位にデータアクセスをするミラーディスク制御装置において、論理ボリューム毎に当該各ディスク内に予め設けられた再配置エクステントエリアと、論理エクステントと前記各ディスク上の物理エクステントとの対応づけを論理ボリューム毎に保持するエクステント対応管理情報記憶手段と、前記再配置エクステントエリアに含まれる各再配置物理エクステントの使用状態を保持する再配置エクステント管理情報記憶手段と、前記ミラーディスクへのアクセス制御を行うディスクアクセス制御手段と、データ書込みの際に障害が発生したディスクへのデータ書込み箇所を、その障害発生箇所に代えて前記障害が発生したディスクにおける前記再配置エクステントエリア内にミラー管理単位で再配置する再配置処理を実行することで、データを書き込む物理エクステントの再配置を行う再配置処理手段とを有し、前記再配置処理手段は、オペレータからの指示に応じて再配置エクステントに割り当てられていたデータを、当該データが格納されている論理ボリューム内のオペレータにより指定された物理エクステント位置に再配置するものである。
【0016】
また、前記再配置エクステントエリアは、対応する論理ボリューム内に設けられるものである。
【0017】
【発明の実施の形態】
以下、図面に基づいて、本発明の好適な実施の形態について説明する。
【0018】
図1は、本発明に係るミラーディスク装置の一実施の形態を搭載したシステム全体の構成図である。本実施の形態におけるシステムは、複数のサーバ1,2それぞれに同等のミラーディスク制御装置3を搭載し、稼働系のサーバ1がダウンしたときでも待機系のサーバ2がミラーディスク制御を継続して行えるようにホットスタンバイ型の多重系として構成されている。
【0019】
図2は、本実施の形態におけるミラーディスク制御装置の構成図である。本実施の形態におけるミラーディスク制御装置3には、ミラーディスクを構成する2台のディスク4,5が接続されている。本実施の形態では、ディスク4をプライマリ側、ディスク5をミラー側とする。各ディスク4,5には、本実施の形態においてミラーディスク管理単位とする複数の論理ボリューム(LV)6と、各論理ボリューム6を構成する論理エクステント(LE)に対応づけられた各ディスク4,5の物理エクステント(PE)の状態、使用状況等を管理する論理ボリューム管理テーブル7が形成される。ミラーディスクを構成する各論理ボリュームの正常、異常の状態は、任意の単位(例えば256バイト)で管理され、この管理単位すなわちミラー単位で保持される。ミラー管理単位は、通常エクステントより小さい単位で管理されるが、本実施の形態では、便宜上、エクステントをミラー管理単位とする。各エクステントの状態は、論理ボリューム管理テーブル7で保持管理される。各論理ボリュームには、実際にデータを格納するデータ物理エクステント(以下、単に「データエクステント」ともいう)を含むデータエクステントエリア8及び本実施の形態において特徴的な再配置用の物理エクステント(以下、「再配置エクステント」という)を含む再配置エクステントエリア9が確保されている。図2の“P−PE1”、“M−PE1”、“P−RPE1”、“M−RPE1”等は、それぞれ物理エクステント番号を示している。本実施の形態では、例えば“P−PE1”のハイフン前の“P”はプライマリ側ディスクを意味し、ハイフン後の“PE”はデータ物理エクステントを意味し、“1”は昇順に並べたときの通しエクステント番号(1〜n)である。
【0020】
論理ボリューム管理テーブル7は、全ディスク4,5に保持され全て同一内容であり、常に同時に更新される。論理ボリューム管理テーブル7には、論理・物理エクステント対応管理テーブル(以下、単に「エクステント対応テーブル」という)10と、再配置エクステントテーブル11との組が論理ボリューム毎に設けられている。エクステント対応テーブル10は、エクステント対応管理情報記憶手段として設けられており、論理エクステントと各ディスク4,5の物理エクステントとの対応付け及び各物理エクステントの障害状況を管理するためのテーブルである。図2に示したエクステント対応テーブル10の例によると、番号“LE1”で表される論理エクステントには、物理エクステント“P−PE1”,“M−PE1”が対応づけられていることがわかる。各物理エクステントの状態(ステータス)としては、アクセス可能な物理エクステントが割り付けられていることを示す「正常」、対応物理エクステントが障害中であることを示す「障害中」及び対応する物理エクステントは割り付けられていないことを示す「未割付」がある。再配置エクステントテーブル11は、再配置エクステント管理情報記憶手段として設けられており、各再配置エクステントの使用状況を管理するためのテーブルである。各再配置エクステントのフラグ値としては、割付可能状態である「未使用」、対応論理エクステントに割り付けている「使用中」及び再配置エクステント自体が使用不可状態である「障害中」がある。再配置エクステントが使用されている場合には当該再配置エクステントを使用している対応した論理エクステント番号が対応論理エクステントに設定される。
【0021】
ミラーディスク制御装置3は、ディスクアクセス制御部12、再配置処理部13及び再配置処理制御管理部14を有している。ディスクアクセス制御部12は、アプリケーション等からの要求に応じてディスクアクセスを行うが、この際、ミラーディスク制御、すなわち、一データ書込み要求に対して複数のミラーディスク4,5にデータ書込みを行う。再配置処理部13は、ディスクアクセス制御部12又はオペレータ(操作員)からのコマンドによる指示に応じてデータ復旧、移動等のために物理エクステントの再配置を行う。再配置処理制御管理部14は、再配置処理部13による再配置処理の実行タイミングを制御する。すなわち、ディスクアクセス制御部12が障害発生時に発した再配置要求メッセージをそのまま再配置処理部13へ渡したり、再配置要求メッセージを一時保持し、操作員からの指示に応じて再配置要求メッセージを再配置処理部13へ渡すことを、環境設定された条件に従い選択的に行う。
【0022】
本実施の形態において特徴的なことは、ミラーディスク管理単位である論理ボリューム毎に再配置エクステントエリア9を設けたことである。これにより、障害発生箇所(データ物理エクステント)の代わりに再配置エクステントを利用することで各論理ボリュームには正常なデータが必ず書き込まれていることになるので、論理ボリューム単位にミラーディスク管理を行う場合でもシステム運転中にディスクを切り離すことができる。
【0023】
次に、本実施の形態の動作について説明するが、最初に、本実施の形態におけるミラーディスク制御を行う際の環境設定について説明する。
【0024】
まず、操作員は、プライマリディスクアドレス、ミラーディスクアドレス、各論理ボリュームサイズ及び再配置エクステントエリア9を構成する物理エクステントの割付個数を予め指定する。これにより、各ディスク4,5の論理ボリューム及び論理ボリューム管理テーブル7を生成することができる。なお、エクステント対応テーブル10のステータスには「正常」が、再配置エクステントテーブル11のフラグには「未使用」が通常は初期値として設定される。また、詳細は後述するが、本実施の形態では、再配置処理を障害発生時点あるいは操作員からコマンド指示によって選択的に行えるようにしているので、いずれのタイミングで行うかの設定も予め指定しておく。
【0025】
次に、本実施の形態におけるミラーディスク制御について図3に示したフローチャートを用いて説明する。
【0026】
障害が発生しない通常時のミラーディスクアクセスは、基本的には従来と同じである。すなわち、論理ボリュームに対するアクセスが行われると、利用者からのアクセス要求箇所を最終的に論理エクステントに変換し、更に論理ボリューム管理テーブル7を検索し、対応する各ディスク4,5の物理エクステントを取得し、物理エクステントをディスク4,5の物理アドレスに変換し、直接の入出力要求をOS(オペレーティングシステム)に対し行う。通常、データ読込みはプライマリ側のディスク4へ、データ書込みは双方のディスク4,5へ行う。このときの内部処理として、ディスクアクセス制御部12は、アクセス対象の論理ボリュームに対し、再配置処理部13との排他を行い(ステップ101)、論理エクステントに対応する両ディスク4,5の物理エクステントに入出力要求を行う(ステップ102)。この際、物理エクステントのステータスが“障害中”でないことを確認する。障害が発生せずに正常終了したときには(ステップ103,104)、その後論理ボリュームの排他を解除する(ステップ109)。排他を解除することによって再配置処理部13は論理ボリュームへのアクセスが可能となる。そして、データアクセス要求元へ正常終了した旨をOSを介して返す(ステップ110,111)。
【0027】
次に、本実施の形態において特徴とする障害発生時における処理について同じく図3を用いて説明する。
【0028】
両ディスク4,5へのデータ書込み時にエラーが発生した場合(ステップ101〜104)、エクステント対応テーブル10の障害が発生したディスクの当該物理エクステントの状態を“正常”から“障害中”に変更して(ステップ105)、全ディスク4,5に格納されている全論理ボリューム管理テーブル7を更新する(ステップ106)。つまり、ディスクアクセス制御部12は、図示しない内部メモリに読み込んだ論理ボリューム管理テーブルのエクステント対応テーブルを上記のように変更した後、全ディスク4,5へ書き込む。正常に書込みができたとき、ディスクアクセス制御部12は、挙動指示を“再配置”、パラメータに障害が発生した論理ボリューム、ディスク及び論理エクステントを指定して再配置処理部13へ再配置要求メッセージを送付する(ステップ107,108)。再配置要求メッセージに関する詳細は追って説明する。その後、論理ボリュームの排他を解除し(ステップ109)、データアクセス要求元へ正常終了した旨を返す(ステップ110,111)。
【0029】
また、いずれかのディスク4,5に論理ボリューム管理テーブル7が書き込めないときには今後ミラーディスク構成が維持できないものとして論理ボリュームの排他を解除し(ステップ107,109)、データアクセス要求元へ異常終了した旨をOSを介して返す(ステップ110,112)。
【0030】
次に、本実施の形態における再配置処理部13が行う再配置処理について図4,5に示したフローチャートを用いて説明する。
【0031】
再配置処理部13は、予め起動され、常時処理要求メッセージの待ち状態となる。そして、処理要求メッセージが送られてくると後述する一連の処理を実行した後、処理要求メッセージの待ち状態に戻る。処理要求メッセージは、ディスクアクセス制御部12の上記ステップ108における再配置要求メッセージの送付処理及び後述する操作員からのコマンド指示によって再配置処理制御管理部14を介して送られてくる。
【0032】
ところで、処理要求メッセージには、挙動指示及びパラメータが指定されている。挙動指示には、再配置処理部13が行うべき指示内容が指定されており、その種別として“再配置”、“一致”及び“エクステント指示”がある。操作員からのコマンド指示には、全ての挙動指示が指定されてくるが、ディスクアクセス制御部12からの処理要求メッセージには、“再配置”のみが指定されてくる。パラメータには、再配置対象となる論理ボリューム、ディスク及び論理エクステントが固定的に指定される。また、挙動指示として“エクステント指示”が指定された場合には更に割付物理エクステント番号が指定される。通知には、OSが持つメッセージ通信機能を利用する。
【0033】
処理要求メッセージ受信待ち状態にある再配置処理部13は、要求メッセージが送られてくると(ステップ201)、メッセージに含まれているパラメータを解析し(ステップ202)、特定された処理対象となるディスクから論理ボリューム管理テーブル7を読み込む(ステップ203)。もし、読み込めない場合は、ディスク全域がアクセス不能(例えば、電源断)とみなし、変更した内容があれば元の状態に戻して全処理をスキップする(ステップ204,230)。物理エクステントのみの障害かアクセス不能か否かのチェックができる点で障害が発生したディスクから論理ボリューム管理テーブル7を読み込むことに意義がある。
【0034】
挙動指示として“再配置”が指定されていた場合(ステップ205)、再配置処理部13は、パラメータに指定されたディスクの再配置エクステントテーブル11を検索し(ステップ206)、フラグが“未使用”の再配置エクステントを得る(ステップ208)。もし、“未使用”の再配置エクステントがなければ、利用可能な物理エクステントが再配置エクステントエリア9内に存在しないため処理の継続が不可能と判断し、変更した内容があれば元の状態に戻して全処理をスキップする(ステップ207,230)。
【0035】
このように、挙動指示として“再配置”が指定されている場合、障害が発生したデータエクステントエリア8内の物理エクステントに代わって再配置エクステントエリア9内に予め確保しておいた再配置エクステントを割り当てることになる。つまり、当該論理エクステントに対応づけした物理エクステントを再配置することになる。
【0036】
その後、再配置処理部13は、アクセス対象の論理ボリュームに対し、ディスクアクセス制御部12との排他を行う(ステップ218)。そして、再配置処理部13は、正常にデータを書き込むことのできたディスクの物理エクステントからデータを読み込み(ステップ219)、ステップ208において獲得した再配置エクステントに当該データを書き込む(ステップ221)。これにより、障害が発生したディスク側にもデータが格納されたことになる。特に、本実施の形態では、再配置エクステントに、データ書込み要求に含まれているデータではなく正常にディスクに書き込めたデータを読み出して書き込む処理とした。これにより、後述する操作員からのコマンド指示のタイミングで再配置処理を非同期に行うことができる。以上の処理中にエラーが生じた場合は、変更した内容を元の状態に戻す(ステップ220,222,230)。
【0037】
続いて、再配置処理部13は、ステップ203において図示しない内部メモリに読み込んだ論理ボリューム管理テーブルのエクステント対応テーブルの“障害中”であった当該ディスク毎対応物理エクステントに割り当てた再配置エクステントをセットし、更にステータスを“障害中”を“正常”に変更する(ステップ223)。そして、論理ボリューム管理テーブルのエクステント対応テーブルの当該再配置エクステントに対応した対応論理エクステントに更新したエクステント対応テーブルの論理エクステントをセットし、更にフラグを“未使用”から“使用中”に変更する(ステップ225)。その後、内部メモリにおいて更新した論理ボリューム管理テーブルを全ディスク4,5に書き込むことで全ディスク4,5の論理ボリューム管理テーブル7の内容を同一にする。その後、論理ボリュームの排他を解除した後(ステップ228)、再度、処理要求メッセージ待ちへ戻る(ステップ201)。
【0038】
以上説明した本実施の形態の動作により更新される論理ボリューム管理テーブル7について具体例(図6)をあげて説明する。
【0039】
データ書込みの際、論理エクステントLE3に対応したディスク5の物理エクステントM−PE3に障害が発生したため、エクステント対応テーブル10−1に示したように物理エクステントM−PE3のステータスを“正常”から“障害中”に変更する(ステップ105)。なお、このとき、論理エクステントLE3に対応したディスク4の物理エクステントP−PE3にはデータが正常に書き込まれている。再配置処理部13は、ディスクアクセス制御部12からの処理要求に応じて再配置エクステントテーブル11−1を検索し、“未使用”の再配置エクステントM−RPE1を取得する(ステップ206,208)。そして、ディスク4の物理エクステントP−PE3に正常に書き込めたデータを読み込んで再配置エクステントM−RPE1にコピーする(ステップ221)。そして、エクステント対応テーブル10−2に示したように“障害中”であったディスク毎対応物理エクステント“M−PE3”を再配置先の物理エクステント“M−RPE1”で更新するとともに当該ステータスを“障害中”から“正常”に変更する(ステップ223)。更に、再配置エクステントテーブル11−2に示したように再配置エクステントM−RPE1のフラグを“使用中”に変更し、また、対応する論理エクステント“LE3”を対応論理エクステントに設定する(ステップ225)。
【0040】
この結果、以降の処理において論理エクステントLE3へのアクセスに対してエクステント対応テーブル10−2を参照することによってディスク5に対しては、再配置エクステントM−RPE1がアクセスされることになる。
【0041】
本実施の形態によれば、データ書込みの際に障害が発生した場合でもデータ書込み先の論理エクステントに対応した障害発生ディスクのデータエクステントを再配置エクステントに再配置してデータを書き込むようにしたので、障害が発生したディスク側にも当該データを持たせることができる。つまり、書込み処理時に障害が発生したデータが障害発生ディスクにも格納されることになるので、システム運転中にディスクを切り離すことができる。これにより、ディスク交換やディスクバックアップをシステム停止することなく行うことができる。この結果、障害箇所を持った状態での運転を一時的なものとでき、ミラーディスク自体の信頼性を向上させることができる。
【0042】
また、本実施の形態では、再配置エクステントエリア9を物理ディスク毎ではなく論理ボリューム毎にかつデータエクステントエリア8に隣接配置したので、物理エクステントの再配置に伴うアクセス時のシークタイムの膨大を極力軽減することができる。
【0043】
ところで、上記説明したように、挙動指示“再配置”は、ディスクアクセス制御部12からの要求メッセージのみならず操作員からのコマンド指示にも指定できるようにした。これは、次の理由による。
【0044】
基本的には、前述したようにディスクアクセス制御部12からの要求メッセージに対応して障害発生時に障害発生ディスク側に正常なデータを即座にコピーすることが望ましい。いつでもディスク交換ができ、また、バックアップできるからである。しかし、上記再配置処理を実行すると、論理ボリューム管理テーブルの全ディスク書込み処理が余計に発生するため、障害発生に連動して再配置処理を常に実行することにすると再配置データアクセス要求を発したアプリケーションの処理速度に影響を及ぼしてしまう。そこで、本実施の形態では、ディスクアクセス制御部12からの要求に応じてリアルタイムに再配置処理を行うこと以外に、ディスクアクセス制御部12からの要求には即座に応答せずに操作員からの指示を待って再配置処理を行うこともできるようにした。このため、本実施の形態では、再配置処理制御管理部14を設けて再配置処理の実行タイミングを制御できるようにした。なお、前述したように、環境設定の際に操作員からコマンド指示によって再配置処理を行うことを選択しておく必要がある。
【0045】
この場合、ディスクアクセス制御部12からの要求メッセージは、再配置処理部13にそのまま渡されるのではなく、再配置処理制御管理部14によってメッセージキュー(図示せず)に蓄積されていく。そして、挙動指示として“再配置”が設定された操作員からのコマンド指示があると、再配置処理制御管理部14は、メッセージキューに一時保持しておいた再配置要求メッセージを順次取り出し、処理要求メッセージ待ちの再配置処理部13に送ることになる。このようにして、操作員が所望するタイミングで再配置処理を実行することができる。なお、操作員からのコマンド指示待ちが設定されているときに障害が発生すると、ミラー単位である論理エクステント単位に切り離しが行われ、従来と同様に縮退運転がされることになる。
【0046】
次に、挙動指示として“一致”又は“エクステント指示”が指定されている場合について説明する。
【0047】
いずれかの挙動指示が要求メッセージに指定されているということは、操作員からのコマンド指示に基づくものであることは前述したとおりである。このうち、“一致”は、ミラーディスクを構成する各ディスク4,5において同一データを格納するデータ物理エクステントの位置(物理エクステント番号)を一致させたいときに使用する。具体的に言うと、例えば、ディスク4の物理エクステントP−PE3に正常に書込みができたデータであってディスク5への書込み処理で障害を起こして再配置エクステントM−RPE1へ書き込まれたデータを、ディスク4の物理エクステントP−PE3と同一のディスク5における物理エクステント(この場合は、M−PE3)に再配置する。上記再配置処理においては、同一データ物理エクステントにデータ書込みをしようとして障害が発生したため再配置エクステントを利用するようにした。その後、ディスク交換をすることによって当該データ物理エクステントが使用可能となった場合、管理上、また再配置エクステントを解放する意味でも各ディスク4,5に格納される同一データを同一物理エクステントに配置することが望ましい。そこで、本実施の形態では、このような復旧を可能とするために再配置処理後にデータを各ディスク4,5において同一物理エクステント番号に格納できるような機能を提供した。
【0048】
一方、“エクステント指示”は、データ格納箇所を他の物理エクステントに移動させるという点で“一致”と一致するが、“一致”はデータを正常に書込みができた一方のディスクと同一データ物理エクステントへ書き戻すのに対して“エクステント指示”は操作員に指定された物理エクステントへ移動させる点で異なる。そのため、挙動指示として“エクステント指示”が指定されるときには併せて移動先として割付物理エクステントをパラメータに明示する必要がある。“エクステント指示”は、ディスク交換の有無に関係なく再配置エクステントを意識的に解放したいときなどに用いるのが効果的である。
【0049】
再配置処理部13は、挙動指示として“一致”が指定されたメッセージを受け取ると(ステップ202)、特定された処理対象となるディスクから論理ボリューム管理テーブル7を読み込む(ステップ203)。処理対象となるディスク、論理ボリューム及び論理エクステントは、パラメータ指定されているので、再配置先となるデータ物理エクステントを容易に特定できる(ステップ210)。すなわち、図6に示した例を利用すると、パラメータにディスクがディスク5、論理ボリュームがLV1、論理エクステントがLE3と指定されていた場合、エクステント対応テーブル10−2によると再配置エクステントM−RPE1に格納されたデータは、本来、対応するディスク4において正常に格納されている物理エクステントP−PE3に対応した位置、すなわちM−PE3に格納されるデータであることがわかる。
【0050】
取得できた物理エクステントが再配置エクステントでないことを確認した後(ステップ211,212)、再配置処理部13は、アクセス対象の論理ボリュームに対し、ディスクアクセス制御部12との排他を行う(ステップ218)。そして、再配置処理部13は、再配置エクステントM−RPE1からデータを読み込み(ステップ219)、データ物理エクステントM−PE3にデータを書き込む(ステップ221)。これにより、ミラーディスクを構成する各ディスク4,5において同一物理エクステントに同一データを格納することができる。その後、再配置処理部13は、内部メモリにある論理ボリューム管理テーブルのエクステント対応テーブルのディスク毎対応物理エクステントに“M−PE3”を設定する(ステップ223)。なお、ステータスは“正常”のままである。更に、再配置エクステントテーブルにおいて更新前のディスク毎対応物理エクステント“M−RPE1”における対応論理エクステント“LE3”を初期化し、対応するフラグを“使用中”から“未使用”に変更する(ステップ225)。そして、内部メモリにおいて更新した論理ボリューム管理テーブルを全ディスク4,5に書き込むことで全ディスク4,5の論理ボリューム管理テーブル7の内容を同一にする。その後、論理ボリュームの排他を解除した後(ステップ228)、再度、処理要求待ちへ戻る(ステップ201)。
【0051】
また、再配置処理部13は、挙動指示として“エクステント指示”が指定されたメッセージを受け取ると(ステップ202)、特定された処理対象となるディスクから論理ボリューム管理テーブル7を読み込む(ステップ203)。そして、パラメータ指定された割付物理エクステントを再配置先物理エクステントとする(ステップ213)。その後の処理は、“一致”の場合と基本的に同じであるため詳細な説明を省略するが、再配置先となる物理エクステントが人為的に指定されているので、当該再配置先となる物理エクステントが妥当であるかの確認をする。すなわち、当該物理エクステントのステータスが“未割付”であることをエクステント対応テーブル10によって使用可能であることを確認し(ステップ214)、更に再配置エクステントテーブル11を検索することによって当該再配置先となる物理エクステントが再配置エクステントであったときにはフラグを参照して使用中でないことを確認する必要がある(ステップ216)。
【0052】
なお、本実施の形態では、ミラーディスクを2台で構成した場合で説明したが、ミラー側ディスクを複数台と考えることで3台以上の場合でも容易に適用できることはいうまもでない。
【0053】
【発明の効果】
本発明によれば、書込み処理時に障害が発生したデータを障害発生ディスク側の再配置エリア内に格納するようにしたので、システム運転中に片方のディスクを切り離すことができる。これにより、ディスク交換やディスクバックアップをシステム停止することなく行うことができる。
【0054】
また、障害発生ディスク側に書き込むデータを正常に書込みができたディスク側から読み出すようにしたので、再配置処理を障害発生時以降でも非同期に行うことができる。
【0055】
また、再配置処理の実行タイミングを制御できるようにしたので、再配置処理を障害発生時以外にもオペレータの指示によって実行させることができる。
【0056】
また、再配置エクステントに書き込まれたデータを、オペレータの指示に従い正常に書き込みできたディスク側と同一物理エクステントに書き戻すことができる機能を設けたので、再配置エクステントを解放することができるとともに障害ディスク復旧後に本来のミラー関係に復旧することができる。
【0057】
また、再配置エクステントに書き込まれたデータをオペレータに指定された物理エクステントに移動できる機能を設けたので、再配置エクステントを解放することができる。
【0058】
また、再配置エクステントエリアを論理ボリューム内にデータを格納する物理エクステントエリアに隣接配置することができるので、物理エクステントの再配置に伴うアクセス時のシークタイムの膨大を極力軽減することができる。
【図面の簡単な説明】
【図1】本発明に係るミラーディスク装置の一実施の形態を搭載したシステム全体の構成図である。
【図2】本実施の形態におけるミラーディスク制御装置の構成図である。
【図3】本実施の形態におけるディスクアクセス制御部が行うミラーディスク制御処理を示したフローチャートである。
【図4】本実施の形態における再配置処理部が行う再配置処理を示したフローチャートである。
【図5】図4の続きのフローチャートである。
【図6】本実施の形態において障害が発生したことにより更新される各テーブルの内容の例を示した図である。
【符号の説明】
1,2 サーバ、3 ミラーディスク制御装置、4,5 ディスク、6 論理ボリューム(LV)、7 論理ボリューム管理テーブル、8 データエクステントエリア、9 再配置エクステントエリア、10 論理・物理エクステント対応管理テーブル、11 再配置エクステントテーブル、12 ディスクアクセス制御部、13 再配置処理部、14 再配置処理制御管理部。
【発明の属する技術分野】
本発明はミラーディスク制御装置、特に論理ボリューム単位にミラー管理を行う場合に適したミラーディスク制御に関する。
【0002】
【従来の技術】
データの信頼性向上あるいはディスクアクセス処理の高速化を図るために同一内容のディスクを多重化させて管理するミラーディスク管理方式がある。従来のミラーディスク管理方式では、物理ディスクをミラー管理単位とし、ディスクアクセス時にエラーが発生したときにはエラーが発生した物理ディスク全体を切り離して縮退運転に移行させていた。このような方法だと、ほんの一部分の格納領域で障害が発生しただけでも1台の物理ディスクを切り離すことになり非効率である。そこで、近年では、障害箇所を論理エクステント単位に切り離す論理ボリュームミラー管理方式が採用されている。
【0003】
この論理ボリュームミラー管理方式は、物理ディスクを論理ボリュームという任意のエリアに分割して形成した仮想的なディスク単位、すなわち論理ボリューム単位にミラー管理を行う。論理ボリュームを物理ディスク上に確保するとき実際に使用される物理ディスクエリアが任意の割付単位(例えば4MB)の整数倍で割り付けられる。以降、この割付単位を論理ボリュームにおいては論理エクステント、それに対応する物理ディスクにおいては物理エクステントと記述する。
【0004】
ここで、論理ボリュームミラー管理方式におけるミラー管理単位を論理ボリュームではなくディスクアクセス単位である論理エクステントとする。エクステントをミラー管理単位とした場合は、エクステント単位で障害状況を管理することになる。ミラー書込みの際、片方のディスクに書込み障害が発生したとすると、ミラーディスク制御では、障害が発生した論理エクステントに対応した物理エクステントを障害中とする。これにより、障害が発生した物理エクステントは、ミラー管理上、障害とみなされ切り離される。つまり、以降のアクセスから除外される。この結果、当該論理エクステントに対する読込み及び書込み処理は、正常な一方のディスクのみに行われる。
【0005】
論理ボリュームミラー管理方式では、以上のようにディスクアクセス処理において障害が発生した場合でもその障害発生部分(物理エクステント)だけを切り離せばよいので、ディスク全体を切り離すことなくミラーディスクの構成のまま運転を継続することができる。
【0006】
【発明が解決しようとする課題】
しかしながら、この方式だと、障害中の物理エクステントが各物理ディスクに分散する場合が発生しうるので、システム運用に際して、下記のような弊害が発生する。まず、ミラーディスクを構成するディスクそれぞれに障害中の物理エクステントが存在しているときに一方のディスクを交換しようとした場合、交換対象のディスクには正常な物理エクステントとして格納されているが、当該物理エクステントに対応した他方のディスクの物理エクステントが障害中である場合、交換対象のディスクを交換してしまうと当該物理エクステントに格納されている正常なデータは消失してしまう。従って、システム運転中にはディスク交換を単純にすることができない。
【0007】
また、ディスク交換をしないまでも一方のディスクを切り離してバックアップを取ろうとするとき、バックアップ対象のディスクには障害中の物理エクステントとして格納されているが、当該物理エクステントに対応した他方のディスクの物理エクステントが正常である場合、当該物理エクステントに格納されるべき正常なデータはバックアップされないので、バックアップ自体に意味がない。
【0008】
以上のように、従来においては、論理ボリュームあるいは論理エクステントをミラー管理単位とする場合において障害中の物理エクステントが複数のディスクに分散している場合、システム運転中には物理ディスクを切り離すことはできない。
【0009】
本発明は以上のような問題を解決するためになされたものであり、その目的は、論理ボリューム単位でミラーディスク管理がなされる場合にシステム運転中での物理ディスクの切り離しを可能にするミラーディスク制御装置を提供することにある。
【0011】
【課題を解決するための手段】
以上のような目的を達成するために、本発明に係るミラーディスク制御装置は、ミラーディスクを構成する各ディスクに対して、生成した1乃至複数の論理ボリュームの割付単位でありかつミラー管理単位である論理エクステント単位にデータアクセスをするミラーディスク制御装置において、論理ボリューム毎に当該各ディスク内に予め設けられた再配置エクステントエリアと、前記各ディスクに設けられ、論理エクステントと前記各ディスク上の物理エクステントとの対応づけを論理ボリューム毎に保持するエクステント対応管理情報記憶手段と、前記各ディスクに設けられ、前記再配置エクステントエリアに含まれる各再配置物理エクステントの使用状態を保持する再配置エクステント管理情報記憶手段と、前記ミラーディスクへのアクセス制御を行うディスクアクセス制御手段と、ディスクへのデータ書込みの際に障害が発生したときに、当該障害が発生したディスクに設けられた前記エクステント対応管理情報記憶手段又は前記再配置エクステント管理情報記憶手段を参照し、当該障害が発生したディスクへのデータ書込み箇所を、その障害発生箇所に代えて当該障害が発生したディスクにおける前記再配置エクステントエリア内にミラー管理単位で再配置する再配置処理を実行することで、データを書き込む物理エクステントの再配置を行う再配置処理手段とを有するものである。
【0012】
また、前記再配置処理手段は、復旧すべきデータをデータ書込みが正常にできたディスクから読み出して障害が発生したディスク側の該当する再配置エクステントに書き込むものである。
【0013】
また、前記再配置処理手段による再配置処理の実行タイミングを制御する再配置処理制御管理手段を有し、再配置処理を障害発生時又はオペレータからの指示によって選択的に行うものである。
【0014】
また、前記再配置処理手段は、前記障害が発生したディスクの交換後に当該交換したディスクに対して再配置処理を実行した後、オペレータからの指示に応じて再配置エクステントに割り当てられていたデータを、当該データが格納されている論理ボリューム内であって当該データの書込みが正常にできた他方のディスクにおける当該データの物理エクステントと同一位置に再配置するものである。
【0015】
また、他の発明に係るミラーディスク制御装置は、ミラーディスクを構成する各ディスクに対して、生成した1乃至複数の論理ボリュームの割付単位でありかつミラー管理単位である論理エクステント単位にデータアクセスをするミラーディスク制御装置において、論理ボリューム毎に当該各ディスク内に予め設けられた再配置エクステントエリアと、論理エクステントと前記各ディスク上の物理エクステントとの対応づけを論理ボリューム毎に保持するエクステント対応管理情報記憶手段と、前記再配置エクステントエリアに含まれる各再配置物理エクステントの使用状態を保持する再配置エクステント管理情報記憶手段と、前記ミラーディスクへのアクセス制御を行うディスクアクセス制御手段と、データ書込みの際に障害が発生したディスクへのデータ書込み箇所を、その障害発生箇所に代えて前記障害が発生したディスクにおける前記再配置エクステントエリア内にミラー管理単位で再配置する再配置処理を実行することで、データを書き込む物理エクステントの再配置を行う再配置処理手段とを有し、前記再配置処理手段は、オペレータからの指示に応じて再配置エクステントに割り当てられていたデータを、当該データが格納されている論理ボリューム内のオペレータにより指定された物理エクステント位置に再配置するものである。
【0016】
また、前記再配置エクステントエリアは、対応する論理ボリューム内に設けられるものである。
【0017】
【発明の実施の形態】
以下、図面に基づいて、本発明の好適な実施の形態について説明する。
【0018】
図1は、本発明に係るミラーディスク装置の一実施の形態を搭載したシステム全体の構成図である。本実施の形態におけるシステムは、複数のサーバ1,2それぞれに同等のミラーディスク制御装置3を搭載し、稼働系のサーバ1がダウンしたときでも待機系のサーバ2がミラーディスク制御を継続して行えるようにホットスタンバイ型の多重系として構成されている。
【0019】
図2は、本実施の形態におけるミラーディスク制御装置の構成図である。本実施の形態におけるミラーディスク制御装置3には、ミラーディスクを構成する2台のディスク4,5が接続されている。本実施の形態では、ディスク4をプライマリ側、ディスク5をミラー側とする。各ディスク4,5には、本実施の形態においてミラーディスク管理単位とする複数の論理ボリューム(LV)6と、各論理ボリューム6を構成する論理エクステント(LE)に対応づけられた各ディスク4,5の物理エクステント(PE)の状態、使用状況等を管理する論理ボリューム管理テーブル7が形成される。ミラーディスクを構成する各論理ボリュームの正常、異常の状態は、任意の単位(例えば256バイト)で管理され、この管理単位すなわちミラー単位で保持される。ミラー管理単位は、通常エクステントより小さい単位で管理されるが、本実施の形態では、便宜上、エクステントをミラー管理単位とする。各エクステントの状態は、論理ボリューム管理テーブル7で保持管理される。各論理ボリュームには、実際にデータを格納するデータ物理エクステント(以下、単に「データエクステント」ともいう)を含むデータエクステントエリア8及び本実施の形態において特徴的な再配置用の物理エクステント(以下、「再配置エクステント」という)を含む再配置エクステントエリア9が確保されている。図2の“P−PE1”、“M−PE1”、“P−RPE1”、“M−RPE1”等は、それぞれ物理エクステント番号を示している。本実施の形態では、例えば“P−PE1”のハイフン前の“P”はプライマリ側ディスクを意味し、ハイフン後の“PE”はデータ物理エクステントを意味し、“1”は昇順に並べたときの通しエクステント番号(1〜n)である。
【0020】
論理ボリューム管理テーブル7は、全ディスク4,5に保持され全て同一内容であり、常に同時に更新される。論理ボリューム管理テーブル7には、論理・物理エクステント対応管理テーブル(以下、単に「エクステント対応テーブル」という)10と、再配置エクステントテーブル11との組が論理ボリューム毎に設けられている。エクステント対応テーブル10は、エクステント対応管理情報記憶手段として設けられており、論理エクステントと各ディスク4,5の物理エクステントとの対応付け及び各物理エクステントの障害状況を管理するためのテーブルである。図2に示したエクステント対応テーブル10の例によると、番号“LE1”で表される論理エクステントには、物理エクステント“P−PE1”,“M−PE1”が対応づけられていることがわかる。各物理エクステントの状態(ステータス)としては、アクセス可能な物理エクステントが割り付けられていることを示す「正常」、対応物理エクステントが障害中であることを示す「障害中」及び対応する物理エクステントは割り付けられていないことを示す「未割付」がある。再配置エクステントテーブル11は、再配置エクステント管理情報記憶手段として設けられており、各再配置エクステントの使用状況を管理するためのテーブルである。各再配置エクステントのフラグ値としては、割付可能状態である「未使用」、対応論理エクステントに割り付けている「使用中」及び再配置エクステント自体が使用不可状態である「障害中」がある。再配置エクステントが使用されている場合には当該再配置エクステントを使用している対応した論理エクステント番号が対応論理エクステントに設定される。
【0021】
ミラーディスク制御装置3は、ディスクアクセス制御部12、再配置処理部13及び再配置処理制御管理部14を有している。ディスクアクセス制御部12は、アプリケーション等からの要求に応じてディスクアクセスを行うが、この際、ミラーディスク制御、すなわち、一データ書込み要求に対して複数のミラーディスク4,5にデータ書込みを行う。再配置処理部13は、ディスクアクセス制御部12又はオペレータ(操作員)からのコマンドによる指示に応じてデータ復旧、移動等のために物理エクステントの再配置を行う。再配置処理制御管理部14は、再配置処理部13による再配置処理の実行タイミングを制御する。すなわち、ディスクアクセス制御部12が障害発生時に発した再配置要求メッセージをそのまま再配置処理部13へ渡したり、再配置要求メッセージを一時保持し、操作員からの指示に応じて再配置要求メッセージを再配置処理部13へ渡すことを、環境設定された条件に従い選択的に行う。
【0022】
本実施の形態において特徴的なことは、ミラーディスク管理単位である論理ボリューム毎に再配置エクステントエリア9を設けたことである。これにより、障害発生箇所(データ物理エクステント)の代わりに再配置エクステントを利用することで各論理ボリュームには正常なデータが必ず書き込まれていることになるので、論理ボリューム単位にミラーディスク管理を行う場合でもシステム運転中にディスクを切り離すことができる。
【0023】
次に、本実施の形態の動作について説明するが、最初に、本実施の形態におけるミラーディスク制御を行う際の環境設定について説明する。
【0024】
まず、操作員は、プライマリディスクアドレス、ミラーディスクアドレス、各論理ボリュームサイズ及び再配置エクステントエリア9を構成する物理エクステントの割付個数を予め指定する。これにより、各ディスク4,5の論理ボリューム及び論理ボリューム管理テーブル7を生成することができる。なお、エクステント対応テーブル10のステータスには「正常」が、再配置エクステントテーブル11のフラグには「未使用」が通常は初期値として設定される。また、詳細は後述するが、本実施の形態では、再配置処理を障害発生時点あるいは操作員からコマンド指示によって選択的に行えるようにしているので、いずれのタイミングで行うかの設定も予め指定しておく。
【0025】
次に、本実施の形態におけるミラーディスク制御について図3に示したフローチャートを用いて説明する。
【0026】
障害が発生しない通常時のミラーディスクアクセスは、基本的には従来と同じである。すなわち、論理ボリュームに対するアクセスが行われると、利用者からのアクセス要求箇所を最終的に論理エクステントに変換し、更に論理ボリューム管理テーブル7を検索し、対応する各ディスク4,5の物理エクステントを取得し、物理エクステントをディスク4,5の物理アドレスに変換し、直接の入出力要求をOS(オペレーティングシステム)に対し行う。通常、データ読込みはプライマリ側のディスク4へ、データ書込みは双方のディスク4,5へ行う。このときの内部処理として、ディスクアクセス制御部12は、アクセス対象の論理ボリュームに対し、再配置処理部13との排他を行い(ステップ101)、論理エクステントに対応する両ディスク4,5の物理エクステントに入出力要求を行う(ステップ102)。この際、物理エクステントのステータスが“障害中”でないことを確認する。障害が発生せずに正常終了したときには(ステップ103,104)、その後論理ボリュームの排他を解除する(ステップ109)。排他を解除することによって再配置処理部13は論理ボリュームへのアクセスが可能となる。そして、データアクセス要求元へ正常終了した旨をOSを介して返す(ステップ110,111)。
【0027】
次に、本実施の形態において特徴とする障害発生時における処理について同じく図3を用いて説明する。
【0028】
両ディスク4,5へのデータ書込み時にエラーが発生した場合(ステップ101〜104)、エクステント対応テーブル10の障害が発生したディスクの当該物理エクステントの状態を“正常”から“障害中”に変更して(ステップ105)、全ディスク4,5に格納されている全論理ボリューム管理テーブル7を更新する(ステップ106)。つまり、ディスクアクセス制御部12は、図示しない内部メモリに読み込んだ論理ボリューム管理テーブルのエクステント対応テーブルを上記のように変更した後、全ディスク4,5へ書き込む。正常に書込みができたとき、ディスクアクセス制御部12は、挙動指示を“再配置”、パラメータに障害が発生した論理ボリューム、ディスク及び論理エクステントを指定して再配置処理部13へ再配置要求メッセージを送付する(ステップ107,108)。再配置要求メッセージに関する詳細は追って説明する。その後、論理ボリュームの排他を解除し(ステップ109)、データアクセス要求元へ正常終了した旨を返す(ステップ110,111)。
【0029】
また、いずれかのディスク4,5に論理ボリューム管理テーブル7が書き込めないときには今後ミラーディスク構成が維持できないものとして論理ボリュームの排他を解除し(ステップ107,109)、データアクセス要求元へ異常終了した旨をOSを介して返す(ステップ110,112)。
【0030】
次に、本実施の形態における再配置処理部13が行う再配置処理について図4,5に示したフローチャートを用いて説明する。
【0031】
再配置処理部13は、予め起動され、常時処理要求メッセージの待ち状態となる。そして、処理要求メッセージが送られてくると後述する一連の処理を実行した後、処理要求メッセージの待ち状態に戻る。処理要求メッセージは、ディスクアクセス制御部12の上記ステップ108における再配置要求メッセージの送付処理及び後述する操作員からのコマンド指示によって再配置処理制御管理部14を介して送られてくる。
【0032】
ところで、処理要求メッセージには、挙動指示及びパラメータが指定されている。挙動指示には、再配置処理部13が行うべき指示内容が指定されており、その種別として“再配置”、“一致”及び“エクステント指示”がある。操作員からのコマンド指示には、全ての挙動指示が指定されてくるが、ディスクアクセス制御部12からの処理要求メッセージには、“再配置”のみが指定されてくる。パラメータには、再配置対象となる論理ボリューム、ディスク及び論理エクステントが固定的に指定される。また、挙動指示として“エクステント指示”が指定された場合には更に割付物理エクステント番号が指定される。通知には、OSが持つメッセージ通信機能を利用する。
【0033】
処理要求メッセージ受信待ち状態にある再配置処理部13は、要求メッセージが送られてくると(ステップ201)、メッセージに含まれているパラメータを解析し(ステップ202)、特定された処理対象となるディスクから論理ボリューム管理テーブル7を読み込む(ステップ203)。もし、読み込めない場合は、ディスク全域がアクセス不能(例えば、電源断)とみなし、変更した内容があれば元の状態に戻して全処理をスキップする(ステップ204,230)。物理エクステントのみの障害かアクセス不能か否かのチェックができる点で障害が発生したディスクから論理ボリューム管理テーブル7を読み込むことに意義がある。
【0034】
挙動指示として“再配置”が指定されていた場合(ステップ205)、再配置処理部13は、パラメータに指定されたディスクの再配置エクステントテーブル11を検索し(ステップ206)、フラグが“未使用”の再配置エクステントを得る(ステップ208)。もし、“未使用”の再配置エクステントがなければ、利用可能な物理エクステントが再配置エクステントエリア9内に存在しないため処理の継続が不可能と判断し、変更した内容があれば元の状態に戻して全処理をスキップする(ステップ207,230)。
【0035】
このように、挙動指示として“再配置”が指定されている場合、障害が発生したデータエクステントエリア8内の物理エクステントに代わって再配置エクステントエリア9内に予め確保しておいた再配置エクステントを割り当てることになる。つまり、当該論理エクステントに対応づけした物理エクステントを再配置することになる。
【0036】
その後、再配置処理部13は、アクセス対象の論理ボリュームに対し、ディスクアクセス制御部12との排他を行う(ステップ218)。そして、再配置処理部13は、正常にデータを書き込むことのできたディスクの物理エクステントからデータを読み込み(ステップ219)、ステップ208において獲得した再配置エクステントに当該データを書き込む(ステップ221)。これにより、障害が発生したディスク側にもデータが格納されたことになる。特に、本実施の形態では、再配置エクステントに、データ書込み要求に含まれているデータではなく正常にディスクに書き込めたデータを読み出して書き込む処理とした。これにより、後述する操作員からのコマンド指示のタイミングで再配置処理を非同期に行うことができる。以上の処理中にエラーが生じた場合は、変更した内容を元の状態に戻す(ステップ220,222,230)。
【0037】
続いて、再配置処理部13は、ステップ203において図示しない内部メモリに読み込んだ論理ボリューム管理テーブルのエクステント対応テーブルの“障害中”であった当該ディスク毎対応物理エクステントに割り当てた再配置エクステントをセットし、更にステータスを“障害中”を“正常”に変更する(ステップ223)。そして、論理ボリューム管理テーブルのエクステント対応テーブルの当該再配置エクステントに対応した対応論理エクステントに更新したエクステント対応テーブルの論理エクステントをセットし、更にフラグを“未使用”から“使用中”に変更する(ステップ225)。その後、内部メモリにおいて更新した論理ボリューム管理テーブルを全ディスク4,5に書き込むことで全ディスク4,5の論理ボリューム管理テーブル7の内容を同一にする。その後、論理ボリュームの排他を解除した後(ステップ228)、再度、処理要求メッセージ待ちへ戻る(ステップ201)。
【0038】
以上説明した本実施の形態の動作により更新される論理ボリューム管理テーブル7について具体例(図6)をあげて説明する。
【0039】
データ書込みの際、論理エクステントLE3に対応したディスク5の物理エクステントM−PE3に障害が発生したため、エクステント対応テーブル10−1に示したように物理エクステントM−PE3のステータスを“正常”から“障害中”に変更する(ステップ105)。なお、このとき、論理エクステントLE3に対応したディスク4の物理エクステントP−PE3にはデータが正常に書き込まれている。再配置処理部13は、ディスクアクセス制御部12からの処理要求に応じて再配置エクステントテーブル11−1を検索し、“未使用”の再配置エクステントM−RPE1を取得する(ステップ206,208)。そして、ディスク4の物理エクステントP−PE3に正常に書き込めたデータを読み込んで再配置エクステントM−RPE1にコピーする(ステップ221)。そして、エクステント対応テーブル10−2に示したように“障害中”であったディスク毎対応物理エクステント“M−PE3”を再配置先の物理エクステント“M−RPE1”で更新するとともに当該ステータスを“障害中”から“正常”に変更する(ステップ223)。更に、再配置エクステントテーブル11−2に示したように再配置エクステントM−RPE1のフラグを“使用中”に変更し、また、対応する論理エクステント“LE3”を対応論理エクステントに設定する(ステップ225)。
【0040】
この結果、以降の処理において論理エクステントLE3へのアクセスに対してエクステント対応テーブル10−2を参照することによってディスク5に対しては、再配置エクステントM−RPE1がアクセスされることになる。
【0041】
本実施の形態によれば、データ書込みの際に障害が発生した場合でもデータ書込み先の論理エクステントに対応した障害発生ディスクのデータエクステントを再配置エクステントに再配置してデータを書き込むようにしたので、障害が発生したディスク側にも当該データを持たせることができる。つまり、書込み処理時に障害が発生したデータが障害発生ディスクにも格納されることになるので、システム運転中にディスクを切り離すことができる。これにより、ディスク交換やディスクバックアップをシステム停止することなく行うことができる。この結果、障害箇所を持った状態での運転を一時的なものとでき、ミラーディスク自体の信頼性を向上させることができる。
【0042】
また、本実施の形態では、再配置エクステントエリア9を物理ディスク毎ではなく論理ボリューム毎にかつデータエクステントエリア8に隣接配置したので、物理エクステントの再配置に伴うアクセス時のシークタイムの膨大を極力軽減することができる。
【0043】
ところで、上記説明したように、挙動指示“再配置”は、ディスクアクセス制御部12からの要求メッセージのみならず操作員からのコマンド指示にも指定できるようにした。これは、次の理由による。
【0044】
基本的には、前述したようにディスクアクセス制御部12からの要求メッセージに対応して障害発生時に障害発生ディスク側に正常なデータを即座にコピーすることが望ましい。いつでもディスク交換ができ、また、バックアップできるからである。しかし、上記再配置処理を実行すると、論理ボリューム管理テーブルの全ディスク書込み処理が余計に発生するため、障害発生に連動して再配置処理を常に実行することにすると再配置データアクセス要求を発したアプリケーションの処理速度に影響を及ぼしてしまう。そこで、本実施の形態では、ディスクアクセス制御部12からの要求に応じてリアルタイムに再配置処理を行うこと以外に、ディスクアクセス制御部12からの要求には即座に応答せずに操作員からの指示を待って再配置処理を行うこともできるようにした。このため、本実施の形態では、再配置処理制御管理部14を設けて再配置処理の実行タイミングを制御できるようにした。なお、前述したように、環境設定の際に操作員からコマンド指示によって再配置処理を行うことを選択しておく必要がある。
【0045】
この場合、ディスクアクセス制御部12からの要求メッセージは、再配置処理部13にそのまま渡されるのではなく、再配置処理制御管理部14によってメッセージキュー(図示せず)に蓄積されていく。そして、挙動指示として“再配置”が設定された操作員からのコマンド指示があると、再配置処理制御管理部14は、メッセージキューに一時保持しておいた再配置要求メッセージを順次取り出し、処理要求メッセージ待ちの再配置処理部13に送ることになる。このようにして、操作員が所望するタイミングで再配置処理を実行することができる。なお、操作員からのコマンド指示待ちが設定されているときに障害が発生すると、ミラー単位である論理エクステント単位に切り離しが行われ、従来と同様に縮退運転がされることになる。
【0046】
次に、挙動指示として“一致”又は“エクステント指示”が指定されている場合について説明する。
【0047】
いずれかの挙動指示が要求メッセージに指定されているということは、操作員からのコマンド指示に基づくものであることは前述したとおりである。このうち、“一致”は、ミラーディスクを構成する各ディスク4,5において同一データを格納するデータ物理エクステントの位置(物理エクステント番号)を一致させたいときに使用する。具体的に言うと、例えば、ディスク4の物理エクステントP−PE3に正常に書込みができたデータであってディスク5への書込み処理で障害を起こして再配置エクステントM−RPE1へ書き込まれたデータを、ディスク4の物理エクステントP−PE3と同一のディスク5における物理エクステント(この場合は、M−PE3)に再配置する。上記再配置処理においては、同一データ物理エクステントにデータ書込みをしようとして障害が発生したため再配置エクステントを利用するようにした。その後、ディスク交換をすることによって当該データ物理エクステントが使用可能となった場合、管理上、また再配置エクステントを解放する意味でも各ディスク4,5に格納される同一データを同一物理エクステントに配置することが望ましい。そこで、本実施の形態では、このような復旧を可能とするために再配置処理後にデータを各ディスク4,5において同一物理エクステント番号に格納できるような機能を提供した。
【0048】
一方、“エクステント指示”は、データ格納箇所を他の物理エクステントに移動させるという点で“一致”と一致するが、“一致”はデータを正常に書込みができた一方のディスクと同一データ物理エクステントへ書き戻すのに対して“エクステント指示”は操作員に指定された物理エクステントへ移動させる点で異なる。そのため、挙動指示として“エクステント指示”が指定されるときには併せて移動先として割付物理エクステントをパラメータに明示する必要がある。“エクステント指示”は、ディスク交換の有無に関係なく再配置エクステントを意識的に解放したいときなどに用いるのが効果的である。
【0049】
再配置処理部13は、挙動指示として“一致”が指定されたメッセージを受け取ると(ステップ202)、特定された処理対象となるディスクから論理ボリューム管理テーブル7を読み込む(ステップ203)。処理対象となるディスク、論理ボリューム及び論理エクステントは、パラメータ指定されているので、再配置先となるデータ物理エクステントを容易に特定できる(ステップ210)。すなわち、図6に示した例を利用すると、パラメータにディスクがディスク5、論理ボリュームがLV1、論理エクステントがLE3と指定されていた場合、エクステント対応テーブル10−2によると再配置エクステントM−RPE1に格納されたデータは、本来、対応するディスク4において正常に格納されている物理エクステントP−PE3に対応した位置、すなわちM−PE3に格納されるデータであることがわかる。
【0050】
取得できた物理エクステントが再配置エクステントでないことを確認した後(ステップ211,212)、再配置処理部13は、アクセス対象の論理ボリュームに対し、ディスクアクセス制御部12との排他を行う(ステップ218)。そして、再配置処理部13は、再配置エクステントM−RPE1からデータを読み込み(ステップ219)、データ物理エクステントM−PE3にデータを書き込む(ステップ221)。これにより、ミラーディスクを構成する各ディスク4,5において同一物理エクステントに同一データを格納することができる。その後、再配置処理部13は、内部メモリにある論理ボリューム管理テーブルのエクステント対応テーブルのディスク毎対応物理エクステントに“M−PE3”を設定する(ステップ223)。なお、ステータスは“正常”のままである。更に、再配置エクステントテーブルにおいて更新前のディスク毎対応物理エクステント“M−RPE1”における対応論理エクステント“LE3”を初期化し、対応するフラグを“使用中”から“未使用”に変更する(ステップ225)。そして、内部メモリにおいて更新した論理ボリューム管理テーブルを全ディスク4,5に書き込むことで全ディスク4,5の論理ボリューム管理テーブル7の内容を同一にする。その後、論理ボリュームの排他を解除した後(ステップ228)、再度、処理要求待ちへ戻る(ステップ201)。
【0051】
また、再配置処理部13は、挙動指示として“エクステント指示”が指定されたメッセージを受け取ると(ステップ202)、特定された処理対象となるディスクから論理ボリューム管理テーブル7を読み込む(ステップ203)。そして、パラメータ指定された割付物理エクステントを再配置先物理エクステントとする(ステップ213)。その後の処理は、“一致”の場合と基本的に同じであるため詳細な説明を省略するが、再配置先となる物理エクステントが人為的に指定されているので、当該再配置先となる物理エクステントが妥当であるかの確認をする。すなわち、当該物理エクステントのステータスが“未割付”であることをエクステント対応テーブル10によって使用可能であることを確認し(ステップ214)、更に再配置エクステントテーブル11を検索することによって当該再配置先となる物理エクステントが再配置エクステントであったときにはフラグを参照して使用中でないことを確認する必要がある(ステップ216)。
【0052】
なお、本実施の形態では、ミラーディスクを2台で構成した場合で説明したが、ミラー側ディスクを複数台と考えることで3台以上の場合でも容易に適用できることはいうまもでない。
【0053】
【発明の効果】
本発明によれば、書込み処理時に障害が発生したデータを障害発生ディスク側の再配置エリア内に格納するようにしたので、システム運転中に片方のディスクを切り離すことができる。これにより、ディスク交換やディスクバックアップをシステム停止することなく行うことができる。
【0054】
また、障害発生ディスク側に書き込むデータを正常に書込みができたディスク側から読み出すようにしたので、再配置処理を障害発生時以降でも非同期に行うことができる。
【0055】
また、再配置処理の実行タイミングを制御できるようにしたので、再配置処理を障害発生時以外にもオペレータの指示によって実行させることができる。
【0056】
また、再配置エクステントに書き込まれたデータを、オペレータの指示に従い正常に書き込みできたディスク側と同一物理エクステントに書き戻すことができる機能を設けたので、再配置エクステントを解放することができるとともに障害ディスク復旧後に本来のミラー関係に復旧することができる。
【0057】
また、再配置エクステントに書き込まれたデータをオペレータに指定された物理エクステントに移動できる機能を設けたので、再配置エクステントを解放することができる。
【0058】
また、再配置エクステントエリアを論理ボリューム内にデータを格納する物理エクステントエリアに隣接配置することができるので、物理エクステントの再配置に伴うアクセス時のシークタイムの膨大を極力軽減することができる。
【図面の簡単な説明】
【図1】本発明に係るミラーディスク装置の一実施の形態を搭載したシステム全体の構成図である。
【図2】本実施の形態におけるミラーディスク制御装置の構成図である。
【図3】本実施の形態におけるディスクアクセス制御部が行うミラーディスク制御処理を示したフローチャートである。
【図4】本実施の形態における再配置処理部が行う再配置処理を示したフローチャートである。
【図5】図4の続きのフローチャートである。
【図6】本実施の形態において障害が発生したことにより更新される各テーブルの内容の例を示した図である。
【符号の説明】
1,2 サーバ、3 ミラーディスク制御装置、4,5 ディスク、6 論理ボリューム(LV)、7 論理ボリューム管理テーブル、8 データエクステントエリア、9 再配置エクステントエリア、10 論理・物理エクステント対応管理テーブル、11 再配置エクステントテーブル、12 ディスクアクセス制御部、13 再配置処理部、14 再配置処理制御管理部。
Claims (6)
- ミラーディスクを構成する各ディスクに対して、生成した1乃至複数の論理ボリュームの割付単位でありかつミラー管理単位である論理エクステント単位にデータアクセスをするミラーディスク制御装置において、
論理ボリューム毎に当該各ディスク内に予め設けられた再配置エクステントエリアと、
前記各ディスクに設けられ、論理エクステントと前記各ディスク上の物理エクステントとの対応づけを論理ボリューム毎に保持するエクステント対応管理情報記憶手段と、
前記各ディスクに設けられ、前記再配置エクステントエリアに含まれる各再配置物理エクステントの使用状態を保持する再配置エクステント管理情報記憶手段と、
前記ミラーディスクへのアクセス制御を行うディスクアクセス制御手段と、
ディスクへのデータ書込みの際に障害が発生したときに、当該障害が発生したディスクに設けられた前記エクステント対応管理情報記憶手段又は前記再配置エクステント管理情報記憶手段を参照し、当該障害が発生したディスクへのデータ書込み箇所を、その障害発生箇所に代えて当該障害が発生したディスクにおける前記再配置エクステントエリア内にミラー管理単位で再配置する再配置処理を実行することで、データを書き込む物理エクステントの再配置を行う再配置処理手段と、
を有することを特徴とするミラーディスク制御装置。 - 前記再配置処理手段は、復旧すべきデータをデータ書込みが正常にできたディスクから読み出して障害が発生したディスク側の該当する再配置エクステントに書き込むことを特徴とする請求項1記載のミラーディスク制御装置。
- 前記再配置処理手段による再配置処理の実行タイミングを制御する再配置処理制御管理手段を有し、再配置処理を障害発生時又はオペレータからの指示によって選択的に行うことを特徴とする請求項1記載のミラーディスク制御装置。
- 前記再配置処理手段は、前記障害が発生したディスクの交換後に当該交換したディスクに対して再配置処理を実行した後、オペレータからの指示に応じて再配置エクステントに割り当てられていたデータを、当該データが格納されている論理ボリューム内であって当該データの書込みが正常にできた他方のディスクにおける当該データの物理エクステントと同一位置に再配置することを特徴とする請求項1記載のミラーディスク制御装置。
- ミラーディスクを構成する各ディスクに対して、生成した1乃至複数の論理ボリュームの割付単位でありかつミラー管理単位である論理エクステント単位にデータアクセスをするミラーディスク制御装置において、
論理ボリューム毎に当該各ディスク内に予め設けられた再配置エクステントエリアと、
論理エクステントと前記各ディスク上の物理エクステントとの対応づけを論理ボリューム毎に保持するエクステント対応管理情報記憶手段と、
前記再配置エクステントエリアに含まれる各再配置物理エクステントの使用状態を保持する再配置エクステント管理情報記憶手段と、
前記ミラーディスクへのアクセス制御を行うディスクアクセス制御手段と、
データ書込みの際に障害が発生したディスクへのデータ書込み箇所を、その障害発生箇所に代えて前記障害が発生したディスクにおける前記再配置エクステントエリア内にミラー管理単位で再配置する再配置処理を実行することで、データを書き込む物理エクステントの再配置を行う再配置処理手段と、
を有し、
前記再配置処理手段は、オペレータからの指示に応じて再配置エクステントに割り当てられていたデータを、当該データが格納されている論理ボリューム内のオペレータにより指定された物理エクステント位置に再配置することを特徴とするミラーディスク制御装置。 - 前記再配置エクステントエリアは、対応する論理ボリューム内に設けられることを特徴とする請求項1又は5に記載のミラーディスク制御装置。
Priority Applications (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
JP27506799A JP3614328B2 (ja) | 1999-09-28 | 1999-09-28 | ミラーディスク制御装置 |
Applications Claiming Priority (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
JP27506799A JP3614328B2 (ja) | 1999-09-28 | 1999-09-28 | ミラーディスク制御装置 |
Publications (2)
Publication Number | Publication Date |
---|---|
JP2001100930A JP2001100930A (ja) | 2001-04-13 |
JP3614328B2 true JP3614328B2 (ja) | 2005-01-26 |
Family
ID=17550389
Family Applications (1)
Application Number | Title | Priority Date | Filing Date |
---|---|---|---|
JP27506799A Expired - Fee Related JP3614328B2 (ja) | 1999-09-28 | 1999-09-28 | ミラーディスク制御装置 |
Country Status (1)
Country | Link |
---|---|
JP (1) | JP3614328B2 (ja) |
Families Citing this family (5)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
JP4704660B2 (ja) | 2002-12-18 | 2011-06-15 | 株式会社日立製作所 | 記憶デバイス制御装置の制御方法、記憶デバイス制御装置、及びプログラム |
JP4890048B2 (ja) * | 2006-02-24 | 2012-03-07 | 株式会社日立製作所 | 記憶制御装置及び記憶制御装置を用いたデータマイグレーション方法 |
JP4620134B2 (ja) * | 2008-01-30 | 2011-01-26 | 株式会社日立製作所 | 記憶デバイス制御装置の制御方法及び記憶デバイス制御装置 |
JP2009217700A (ja) * | 2008-03-12 | 2009-09-24 | Toshiba Corp | ディスクアレイ装置及び物理配置最適化方法 |
JP2009251972A (ja) * | 2008-04-07 | 2009-10-29 | Nec Corp | ストレージシステム |
Family Cites Families (8)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
JPH02163816A (ja) * | 1988-12-16 | 1990-06-25 | Matsushita Electric Ind Co Ltd | 情報記録方法と情報記録媒体 |
DE69028517D1 (de) * | 1990-05-11 | 1996-10-17 | Ibm | Verfahren und Gerät zur Ableitung des Zustandes einer gespiegelten Einheit bei Reinitialisierung eines Systems |
JPH05189168A (ja) * | 1992-01-14 | 1993-07-30 | Nec Corp | 障害トラック自動復旧方式 |
JPH0695942A (ja) * | 1992-09-11 | 1994-04-08 | Sharp Corp | 二重ファイル化機能を有するコンピュータ装置 |
JPH10133926A (ja) * | 1996-10-31 | 1998-05-22 | Oki Electric Ind Co Ltd | ミラー化ディスク復旧方法と復旧システム |
JPH10301721A (ja) * | 1997-04-28 | 1998-11-13 | Internatl Business Mach Corp <Ibm> | 情報記憶媒体の欠陥セクタ処理方法及び情報記憶再生装置 |
JPH10312327A (ja) * | 1997-05-13 | 1998-11-24 | Oki Electric Ind Co Ltd | ミラーリング監視方式 |
JPH1124848A (ja) * | 1997-07-03 | 1999-01-29 | Hitachi Ltd | ディスクアレイの障害領域交代処理方法およびディスクアレイ装置 |
-
1999
- 1999-09-28 JP JP27506799A patent/JP3614328B2/ja not_active Expired - Fee Related
Also Published As
Publication number | Publication date |
---|---|
JP2001100930A (ja) | 2001-04-13 |
Similar Documents
Publication | Publication Date | Title |
---|---|---|
US7971011B2 (en) | Remote copy method and storage system | |
US5210866A (en) | Incremental disk backup system for a dynamically mapped data storage subsystem | |
JP6009095B2 (ja) | ストレージシステム及び記憶制御方法 | |
US6968425B2 (en) | Computer systems, disk systems, and method for controlling disk cache | |
US7669022B2 (en) | Computer system and data management method using a storage extent for backup processing | |
JP3992427B2 (ja) | ファイルシステム | |
US8117409B2 (en) | Method and apparatus for backup and restore in a dynamic chunk allocation storage system | |
US7353355B1 (en) | System and method for rapid restoration of server from backup | |
US7120768B2 (en) | Snapshot acquisition method, storage system and disk apparatus | |
JP3575964B2 (ja) | ディスクアレイ装置 | |
WO2017022002A1 (ja) | ストレージ装置、ストレージシステム、ストレージシステムの制御方法 | |
JP4863765B2 (ja) | バックアップ及び/又はリストアを行う記憶制御方法及びシステム | |
US8412892B2 (en) | Storage system and ownership control method for storage system | |
JP4606711B2 (ja) | 仮想化制御装置およびデータ移行制御方法 | |
US7984260B2 (en) | Storage system provided with a plurality of controller modules | |
JP2006227964A (ja) | ストレージシステム、処理方法及びプログラム | |
US5859960A (en) | Semiconductor disk apparatus having a semiconductor memory for a recording medium | |
JP2004021989A (ja) | データをバックアップする方法 | |
JP2007265403A (ja) | 階層型ストレージシステム間でのリモートミラー方式 | |
JP2003280950A (ja) | ファイル管理システム | |
JP3614328B2 (ja) | ミラーディスク制御装置 | |
US20080005745A1 (en) | Management server and server system | |
US11474730B1 (en) | Storage system and migration method of storage system | |
JP4398596B2 (ja) | ディスクアレイ装置 | |
JPH0863394A (ja) | 記憶装置システムおよび記憶装置の制御方法 |
Legal Events
Date | Code | Title | Description |
---|---|---|---|
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: 20041026 |
|
A61 | First payment of annual fees (during grant procedure) |
Free format text: JAPANESE INTERMEDIATE CODE: A61 Effective date: 20041026 |
|
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 |