(57)【要約】【課題】コンピュータシステムへの影響がないようハードディスク装置の障害予兆診断を実施することを目的とする。【解決手段】ソフトウェアミラーリングで三重化したハードディスク装置に対してソフトウェアミラーリングの解除を行うプログラムにより１台のハードディスク装置をソフトウェアミラーリングから解除して障害予兆診断を実施する。障害予兆診断実施時にオンライン業務を行っているハードディスク装置に障害が発生した場合も２台のハードディスク装置がソフトウェアミラーリングによるデータの冗長性を保持した状態であるため、コンピュータシステムへの影響を与えずにハードディスク装置の障害の早期検出が行え、コンピュータシステムの可用性を高めることができる。また障害予兆診断の実施頻度はハードディスク装置の内部統計情報の稼働時間の長さに応じて障害予兆診断の実施頻度を決定する。【選択図】  図１
2011215664.tif 000002
【特許請求の範囲】
【請求項１】
オペレーティングシステム上に、ソフトウェアミラーリングの構築／解除を実行するプログラムと、ソフトウェアミラーリングを解除したことで未使用状態となったハードディスク装置の全データ領域への読み取り／書き込みによる障害予兆診断を実行するプログラムと、これらのプログラムを制御するプログラムを有し、オンライン業務中のソフトウェアミラーリングにより構成されたハードディスク装置１台に対する障害予兆診断を、２台のハードディスク装置からなるソフトウェアミラーリングにより常にデータの冗長性を保持した状態で実施することを特徴とするハードディスク装置の障害予兆診断方式。
【請求項２】
上記請求項１のハードディスク装置の障害予兆診断方式を、ソフトウェアミラーリングで構成している全てのハードディスク装置、および、追加用の全ハードディスク装置に対して逐次的に実行するプログラムによりハードディスク装置の健全性を保ちコンピュータシステムの可用性を高めることを特徴とするハードディスク装置の障害予兆診断方式。
【請求項３】
通常時に二重化のソフトウェアミラーリングで構成しているｎ組のソフトウェアミラーリング構成に対し、上記請求項１のハードディスク装置の障害予兆診断方式を実施するための三重化のソフトウェアミラーリングを構築する際に、追加するハードディスク装置を個別にもうけることなく、複数のハードディスク装置の内、１台を選択して順次三重化のソフトウェアミラーリングを構築することでより少ないハードディスク装置での障害予兆診断を実施することを特徴とするハードディスク装置の障害予兆診断方式。
【請求項４】
上記請求項１のハードディスク装置の障害予兆診断方式を、ソフトウェアミラーリングを構成していないハードディスク装置に対して、複数のハードディスク装置を追加することにより可能とし、逐次的に実行するプログラムによりハードディスク装置の健全性を保ちコンピュータシステムの可用性を高めることを特徴とするハードディスク装置の障害予兆診断方式。
【請求項５】
上記請求項１のハードディスク装置の障害予兆診断方式のソフトウェアミラーリングで構成しているハードディスク装置に対する障害予兆診断の実施頻度を、当該ハードディスク装置の内部統計情報の稼働時間の長さに応じて決定して実施することを特徴とするハードディスク装置の障害予兆診断方式。
【発明の詳細な説明】
【技術分野】
【０００１】
ソフトウェアミラーリングで多重化したハードディスク装置に対する障害診断方式に関する。
【背景技術】
【０００２】
長期間連続稼働するコンピュータシステムにおいてハードディスク装置の障害が原因でオンライン業務の停止につながる事態を回避するためにディスクミラーリングによりデータの冗長性を保持する技術が用いられている。ディスクミラーリングには専用ハードウェアによるハードウェアミラーリングとオペレーティングシステム上で専用のソフトウェアを用いたソフトウェアミラーリングがある。ソフトウェアミラーリングの利点は、特別なハードウェアを使用せず、専用のソフトウェアにより２台のハードディスク装置をミラーリングする方法により、ハードウェアミラーリングに比べ低コストで実現できることである。
【０００３】
ハードディスク装置においてはユーザーのオンライン業務に影響を与えることなく障害の予兆を早期に検出し、障害の予兆を持つハードディスク装置を、業務稼働中に交換を行うなどの方法により、コンピュータシステムを長期間連続稼働することが求められている。
【０００４】
ソフトウェアミラーリングで構成されたハードディスクディスク装置の障害の監視・復旧を行う例として特願２００４−７６５６１号公報に開示されている。この公報に開示されたものは、２台のハードディスク装置を用いたソフトウェアミラーリングの同期状態の監視を行い、同期不正の原因となった障害ディスクに対してディスクフォーマットを実施し、ソフトウェアミラーリングに再同期させるという障害監視・復旧システムを提供している。
【０００５】
また、オンライン業務中のハードディスク装置の診断を行う例としては特開２０００−０２９６３８号公報に開示されている。この公報に開示されたものは、２台のハードディスク装置をミラーリングし、オンライン業務中に片方のハードディスク装置の全データ領域の読み取りによるアクセス障害の診断を行うミラーディスクの診断方式を提供している。
【先行技術文献】
【特許文献】
【０００６】
【特許文献１】特願２００４−７６５６１号公報
【特許文献２】特開２０００−０２９６３８号公報
【発明の概要】
【発明が解決しようとする課題】
【０００７】
従来の技術では２台のハードディスク装置によるミラーリング構成において、片方のハードディスク装置に対して、読み取り不可となる障害の有無を診断するプログラムを実行する方式や、２台のハードディスク装置からなるソフトウェアミラーリングにおいて同期不正が発生したハードディスク装置に対しメディアフォーマットを実行し、再度ソフトウェアミラーリングの再構築を行う方式などにより、ハードディスク装置の障害の早期検出、対策を行い障害率の低下を図っている。
【０００８】
一方、近年のハードディスク装置は製造技術が高まり品質が均質化されているため同時期に製造されたハードディスク装置は同時期に障害が発生する可能性が高い傾向にある。従来の技術では片方のハードディスク装置に対して障害検出、対策を実施している間に、他方のハードディスク装置に対して障害が発生した場合にデータの冗長性を保持できなくなる。この場合、データの損失やシステムダウンにつながる。
【０００９】
本発明では、ソフトウェアミラーリングで多重化したハードディスク装置においてハードディスク装置の障害予兆診断実行時、および、対策時にオンライン業務を行っているハードディスク装置に障害が発生した場合に、コンピュータシステムへの影響がないようにデータの冗長性を保持した状態でハードディスク装置の健全性を診断し、障害の早期検出ができる方式を提供する。
【課題を解決するための手段】
【００１０】
ソフトウェアミラーリングの構築／解除を実行するプログラムにより２台のハードディスク装置からなる二重化したソフトウェアミラーリング構成に１台のハードディスク装置を追加し、３台のハードディスク装置からなる三重化のソフトウェアミラーリングを構築する。ハードディスク装置の障害予兆診断を実施する時にはオペレーティングシステム上のソフトウェアミラーリングを解除するプログラムにより３台のハードディスク装置のうち任意の１台のハードディスク装置をソフトウェアミラーリングから切り離し、２台のハードディスク装置から構成されるソフトウェアミラーリングを構築する。この時ユーザーのオンライン業務はソフトウェアミラーリングされたハードディスク装置２台で行われる。ソフトウェアミラーリングを解除したハードディスク装置は未使用状態となる。この時、オペレーティングシステム上のハードディスク装置診断プログラムにより、ハードディスク装置のデータの未使用領域を含む全データ領域をブロック単位毎に読み取り／書き込みを行うことにより、データのブロック単位毎のアクセス障害の有無を検出することで、障害予兆診断の実施が可能となる。
【００１１】
ハードディスク装置診断プログラム実行時にハードディスク装置の交換が必要となる障害が検知された場合は、障害情報がオペレーティングシステム上に表示されハードディスク装置は交換用のハードディスク装置と交換する。交換後に再度制御プログラムＣを実行して障害予兆診断を実施する。ハードディスク装置診断プログラム実行時にデータのブロック単位毎のアクセス障害が検知されず正常にハードディスク装置診断プログラムが終了した場合は、ハードディスク装置はオペレーティングシステム上のソフトウェアミラーリングを構築／解除するプログラムにより２台のハードディスク装置からなる二重化のソフトウェアミラーリングを再構築し、障害予兆診断のために追加した１台のハードディスク装置を解除する。
【００１２】
ハードディスク装置診断プログラムの実行は、ソフトウェアミラーリングを構成している全ハードディスク装置、および、診断用に準備する全ハードディスク装置に対して逐次的に実施する。また障害予兆診断の実施頻度は、各ハードディスク装置の稼働時間の長さや、アクセス障害の発生回数などにより決定する。
【発明の効果】
【００１３】
ソフトウェアミラーリングで多重化したハードディスク装置を有するコンピュータシステムにおいて、当該ハードディスク装置の全データ領域をブロック単位毎の読み取り／書き込みによる障害予兆診断をソフトウェアミラーリングによるデータの冗長性を保持した状態で行うことができるため、障害予兆診断中にオンライン業務を行っているハードディスク装置に障害が発生した場合でも、オンライン業務に影響を与えずに当該ハードディスク装置の障害予兆診断を行うことができる。
【００１４】
また、ソフトウェアミラーリングを構成しているハードディスク装置全てに対し稼働時間の長さに応じた障害予兆診断を逐次的に行うことでハードディスク装置の健全性の向上を図り、コンピュータシステムの可用性を高める効果が得られる。
【図面の簡単な説明】
【００１５】
【図１】本発明のハードディスク装置の障害予兆診断方式の実施形態を示す図である。
【図２】ハードディスク装置診断プログラムを説明する図である。
【図３】ハードディスク装置診断プログラムのフローチャートを示す図である。
【図４】実施例における障害予兆診断方式を示す図である。
【図５】三重化したミラーリングシステムにおけるハードディスク装置の構成を説明する図である。
【図６】ハードディスク装置１，２，３の障害予兆診断の実施頻度を示す図である。
【図７】ハードディスク装置１を交換後の障害予兆診断の実施頻度を示す図である。
【発明を実施するための形態】
【００１６】
図１を参照して本発明の実施形態について説明する。
【００１７】
ソフトウェアミラーリングの構築／解除を実行するプログラムＡにより、ハードディスク装置１、２により構成された二重化したソフトウェアミラーリング４にハードディスク装置３を追加し、三重化したソフトウェアミラーリング６を構築する。オペレーティングシステム５上には、対象となるハードディスク装置にソフトウェアミラーリングの構築／解除を実行するプログラムＡ、ハードディスク装置の全データの領域を読み取り／書き込みによる障害予兆診断を実行するハードディスク装置診断プログラムＢ、これらＡ，Ｂのプログラムをソフトウェアミラーリングで構成しているハードディスク装置１台ごとに対して実行し、ハードディスク装置の稼働時間により障害予兆診断の実施頻度を変更する制御プログラムＣをおく。これらのプログラムは全てオペレーティングシステム上からコマンドを発行して行う。
【００１８】
オペレーティングシステム５上からコマンドを発行し制御プログラムＣを実行すると、まずミラー構築／解除プログラムＡのミラー解除プログラムが実行される。三重化したソフトウェアミラーリングのハードディスク装置１をソフトウェアミラーリングから解除しハードディスク装置２、３から構成される二重化のソフトウェアミラーリング７と未使用状態のハードディスク装置１が構成される。その後ソフトウェアミラーリングを解除したハードディスク装置１に対しオペレーティングシステム５上のハードディスク装置診断プログラムＢが実行される。ハードディスク装置１はソフトウェアミラーリングを解除したことで未使用状態となっており、オンライン業務に影響を与えることなくハードディスク装置の使用領域と未使用領域の全データ領域に対しブロック単位毎の読み取り／書き込みによる障害予兆診断が実施可能となる。
【００１９】
ハードディスク装置診断プログラムＢの終了時点でハードディスク装置１の障害情報が検知されなかった場合は、ハードディスク装置２，３から構成される二重化のソフトウェアミラーリング７に対してミラー構築／解除プログラムＡのプログラムが実行され、ハードディスク装置１を追加した三重化したソフトウェアミラーリング６を構築する。ハードディスク装置１，２，３の三重化したソフトウェアミラーリングの構築後にミラー構築／解除プログラムＡのプログラムが実行され解除してハードディスク装置１、２からなる二重化のソフトウェアミラーリング４が再構築される。
【００２０】
制御プログラムＣは、上述のミラー構築／解除プログラムＡとハードディスク装置診断プログラムＢを用いて、コンピュータシステムにおけるｎ組の二重化したソフトウェアミラーリングを構成しているハードディスク装置に対して逐次的に障害予兆診断を実施する。制御プログラムＣは、コマンドを順次実行することにより代用することができる。
【００２１】
図２を参照してハードディスク装置診断プログラムについて説明する。
オペレーティングシステム５上からハードディスク装置診断プログラムＢを実行するコマンドが発行されるとソフトウェアミラーリングから解除されたハードディスク装置１のデータ領域の先頭から最後までの全データ領域に対して特定のブロック単位（６４ＫＢ）ごとにデータのよみこみ読み取り／書き込みによる障害予兆診断が実施される。障害予兆診断を実施すると、実行中にブロック単位ごとの読み取り／書き込みによる「実行時間」、「実行結果（障害発生の有無）」を確認しオペレーティングシステム５上に表示される。障害予兆診断の途中で障害が発生しても全データ領域のブロック単位毎に読み取り／書き込みが終了するまで障害予兆診断は実施される。障害が発生した場合は全データ領域の障害予兆診断の終了後にハードディスク装置１におけるブロック単位での「障害の詳細情報」がオペレーティングシステム５上に表示される。
【００２２】
また、上述の障害情報だけではなくハードディスク装置１の内部リトライ処理で復旧した障害に対してはハードディスク装置の内部統計情報にある障害情報をハードディスク装置診断プログラムＢにより検出し「障害の詳細情報」がオペレーティングシステム５上に表示される。ハードディスク装置内部のリトライ処理で復旧し、ハードディスク装置１の内部統計情報にも残されない障害に対しても「実行時間」の異常値（遅延）をハードディスク装置診断プログラムＢにより検出し、「実行時間」が許容範囲内であるかの判定を行い障害と判断した場合は「障害の詳細情報」としてオペレーティングシステム５上に表示される。
【００２３】
図３を参照してハードディスク装置診断プログラムのフローについて説明する。
ハードディスク診断プラグラムの実行により、ブロック単位（６４ＫＢ）でのデータの読み取り／書き込みによりハードディスク装置に障害情報が検知された場合は（１０１）、まずディスク内部のリトライ処理で復旧がした障害であるかを判断する（１０２）。検知された障害がリトライ処理により復旧しなかった障害の場合は障害情報を収集し、検知した「障害の詳細情報」がオペレーティングシステム上に表示される(１１０)。リトライ処理により復旧した障害の場合はディスク内部の統計情報内に障害情報があるかを判断する。（１０３）ディスク内部の統計情報に障害情報があった場合は障害情報を収集して（１０８）「障害の詳細情報」がオペレーティングシステム上に表示される(１１０)。ディスク内部の統計情報に障害情報がない場合はブロック単位での読み取り／書き込みの実行時間に異常値（遅延）がないかを判断する（１０４）。異常値の検出回数が許容範囲を超えた場合（１０５）は「障害の詳細情報」がオペレーティングシステム上に表示される(１１０)。
【００２４】
上述の障害予兆診断作業をハードディスク装置の全データ領域に対してブロック単位ごとに実行することでハードディスク装置の健全性を診断することができる。
【００２５】
図４を参照して実施例における障害予兆診断方式について説明する。
オペレーティングシステム５上から制御プログラムＣを実行するコマンドが発行されると、ミラー構築／解除プログラムＡのミラー構築プログラムが実行されコンピュータシステムにおいてハードディスク装置１、２により構成された二重化したソフトウェアミラーリング４にハードディスク装置３が追加されて３台のハードディスク装置からなる三重化したソフトウェアミラーリング６が構築される。
ミラー構築プログラムの正常終了を制御プログラムＣが確認すると三重化のソフトウェアミラーリングに対しミラー構築／解除プログラムＡのミラー解除プログラムが実行され、三重化したソフトウェアミラーリング６のハードディスク装置１に対してミラー構築／解除プログラムＡのミラー解除プログラムが実行される。ハードディスク装置１がソフトウェアミラーリングから解除され三重化のソフトウェアミラーリング６に構築されていたハードディスク装置１，２，３は、ハードディスク装置２，３からなる二重化のソフトウェアミラーリング７と解除されたハードディスク装置１との構成になる。
【００２６】
ミラー解除プログラムの正常終了を制御プログラムＣが確認するとハードディスク装置診断プログラムＢがソフトウェアミラーリングを解除され未使用となったハードディスク装置１に対し実行される。この時、二重化のソフトウェアミラーリング構成４がハードディスク装置２，３により保持されている為、ハードディスク装置１にハードディスク装置診断プログラムＢを実行している間にハードディスク装置２，３のどちらかに障害が発生した場合にもオンライン業務に影響を与えることはない。ハードディスク装置診断プログラムＢの正常終了を制御プログラムＣが確認すると、ミラー構築／解除プログラムＡが実行されハードディスク装置１，２からなる二重化のソフトウェアミラーリング４を再構築し、ハードディスク装置３をソフトウェアミラーリングから解除する。
【００２７】
ミラー構築／解除プログラムＡの実行時に障害が発生した場合や、ハードディスク装置診断プログラムＢ実行時にオペレーティングシステム上に障害情報が表示された場合は障害となったハードディスク装置を交換し、再度制御プログラムＣを実行し、ミラー構築／解除プログラムＡにより三重化のソフトウェアミラーリング６を構成して障害予兆診断を開始する。ハードディスク装置１の障害予兆診断が正常に終了した場合はハードディスク装置２の障害予兆診断が開始される。ハードディスク装置１に対してハードディスク装置診断プログラムＢによる障害予兆診断を実施しているときにはハードディスク装置２，３がソフトウェアミラーリング７を構成し、ハードディスク装置２に対してハードディスク装置診断プログラムＢによる障害予兆診断を実施しているときにはハードディスク装置１，３がソフトウェアミラーリング８を構成する。
【００２８】
上述のように、ソフトウェアミラーリングを構成しているハードディスク装置に対する障害予兆診断の実施時は常に二重化のソフトウェアミラーリングによりデータの冗長性が保持されている状態で逐次的に実施する。
【００２９】
また障害予兆診断の実施頻度はハードディスク装置ごとの稼働時間の長さにより障害発生率が高くなる時期に応じて決定する。
【００３０】
図５を参照して三重化したソフトウェアミラーリングの構築におけるハードディスク装置の構成を説明する。二重化のソフトウェアミラーリングから三重化したソフトウェアミラーリングを構築する際に、追加するハードディスク装置を個別にもうけることなくコンピュータシステムにおけるｎ組の二重化したソフトウェアミラーリング構成（２０１〜２０３）を１台のハードディスク装置（２０５）を用いて順次三重化のソフトウェアミラーリングに構築することでより少ないハードディスク装置での障害予兆診断を実施する。
【００３１】
ソフトウェアミラーリングを構成していない単体のハードディスク装置（２０４）に対しても複数のハードディスク装置（２０５）を追加して三重化のソフトウェアミラーリングを構築しハードディスク装置の障害予兆診断方式を実施する。
追加するハードディスク装置に障害が発生した場合にそなえ、三重化のソフトウェアミラーリングを構成する為の追加するハードディスク装置は複数台（ｍ台）
を用いて、三重化のソフトウェアミラーリングを構成する際に選択して使用する。
【００３２】
図６、図７を参照してハードディスク装置の障害予兆診断の実施頻度について説明する。
【００３３】
ハードディスク装置の障害発生率の傾向としては、稼働時間の経過により障害率は高くなる。また近年のハードディスク装置は製造技術が高まり品質が均質化されてきているため同時期に製造されたハードディスク装置は同時期に障害が発生する可能性が高くなる傾向にある。
【００３４】
例えば図６では同時期にハードディスク装置１，２，３の稼働を開始したためハードディスク装置の稼働時間に対する障害率曲線障害率曲線（３０１）は重なっている。稼働を開始して（３０２）までの期間は稼働時間が短く障害率が低いためハードディスク装置１，２，３の障害予兆診断の実施頻度を少ない頻度で実施する。（３０２）以降の期間はハードディスク装置１，２，３の稼働時間が長くなり障害率が高くなるため障害率曲線（３０１）の上昇に伴ってハードディスク装置１，２，３の障害予兆診断の実施頻度を多くする。
【００３５】
図７では図６に示したハードディスク装置１の障害を検知して交換した後のハードディスク装置１の障害率曲線（３０４）とハードディスク装置１と同時期に稼働を開始し障害が検知されずに稼働を続けているハードディスク装置２，３の障害率曲線を示す（３０３）。時点で障害が検知されて交換したハードディスク装置１は（３０２）から稼働を開始したため（３０５）までの期間は稼働時間が短く障害率が低いためハードディスク装置１の障害予兆診断の実施頻度を少ない頻度で実施する。障害が検知されずに稼働を続けているハードディスク装置２，３は稼働時間が長く障害率が高いままであるため障害予兆診断の実施頻度を多い頻度で実施する。
【００３６】
制御プログラムＣは上述の傾向を考慮して三重化したソフトウェアミラーリングを構成するハードディスク装置１，２，３に対する障害予兆診断の実施頻度をハードディスク装置の稼働時間の長さに応じて決定する。ハードディスク装置の稼働時間は各ハードディスク装置の内部統計情報の稼働時間を検出して用いる。また、障害予兆診断の実施頻度については、ハードディスク装置のアクセス障害の発生頻度などにより、決定する方法もある。
【符号の説明】
【００３７】
１〜３  ハードディスク装置
４  三重化で構成されたソフトウェアミラーリング
５  オペレーティングシステム
６〜８  二重化で構成されたソフトウェアミラーリング
Ａ  ソフトウェアミラーリングの構築／解除プログラム
Ｂ  ハードディスク装置診断プログラム
Ｃ  制御プログラム
１０１〜１１０  ハードディスク装置診断プログラムのフローチャートのステップを示す
２０１〜２０３  ２台ハードディスク装置からなる二重化したソフトウェアミラーリング構成を示す。
３０１〜３０３  ハードディスク装置の稼働時間に対する障害率曲線を示す。
３０４〜３０５  ハードディスク装置の稼働時間の期間を示す。
【図１】
2011215664.tif 000003
【図２】
2011215664.tif 000004
【図３】
2011215664.tif 000005
【図４】
2011215664.tif 000006
【図５】
2011215664.tif 000007
【図６】
2011215664.tif 000008
【図７】
2011215664.tif 000009