(57)【要約】【課題】論理ドライブ以外に単体ディスクを構成可能なＲＡＩＤコントローラとその上位ソフトウェアとを用いる場合において、論理ドライブ及び単体ディスクにおけるエラーを報知することができるサーバシステムを提供する。【解決手段】サーバシステムは、ＲＡＩＤ及び単体ディスクに接続され前記ＲＡＩＤを制御するＲＡＩＤコントローラを備えるサーバシステムであって、前記ＲＡＩＤコントローラは、前記単体ディスクに冗長性を持たせる上位ソフトウェアと前記単体ディスクとの間で通信されるデータのエラーを検出する単体ディスク制御手段と、前記エラーのエラー内容を示すエラー情報を格納するエラー管理テーブルと、前記エラー管理テーブルの前記エラー情報に基づいて前記エラーを報知するＲＡＩＤ制御手段とを備える。【選択図】図１
2022000824.tif 000002
【特許請求の範囲】
【請求項１】
ＲＡＩＤ及び単体ディスクに接続され前記ＲＡＩＤを制御するＲＡＩＤコントローラを備えるサーバシステムであって、
前記ＲＡＩＤコントローラは、
前記単体ディスクに冗長性を持たせる上位ソフトウェアと前記単体ディスクとの間で通信されるデータのエラーを検出する単体ディスク制御手段と、
前記エラーのエラー内容を示すエラー情報を格納するエラー管理テーブルと、
前記エラー管理テーブルの前記エラー情報に基づいて前記エラーを報知するＲＡＩＤ制御手段とを備える、
サーバシステム。
【請求項２】
前記ＲＡＩＤ制御手段は、
前記ＲＡＩＤのエラーハンドリングに従って、前記ＲＡＩＤ及び前記ＲＡＩＤコントローラを管理するソフトウェアであるＲＡＩＤ管理ユーティリティを用いて前記エラーを通知することまたは前記エラーの対象の前記単体ディスクのＬＥＤを点灯させることの少なくとも一方により前記エラーを報知する、
請求項１に記載のサーバシステム。
【請求項３】
ＲＡＩＤ及び単体ディスクに接続され前記ＲＡＩＤを制御するＲＡＩＤコントローラを備えるサーバシステムによる前記単体ディスクのエラーの検出方法であって、
前記単体ディスクに冗長性を持たせる上位ソフトウェアと前記単体ディスクとの間で通信されるデータのエラーを検出することと、
前記エラーのエラー内容を示すエラー情報を格納することと、
前記エラー情報に基づいて前記エラーを報知することと、
を含む検出方法。
【請求項４】
ＲＡＩＤ及び単体ディスクに接続され前記ＲＡＩＤを制御するＲＡＩＤコントローラを備えるサーバシステムが有するコンピュータに、
前記単体ディスクに冗長性を持たせる上位ソフトウェアと前記単体ディスクとの間で通信されるデータのエラーを検出することと、
前記エラーのエラー内容を示すエラー情報を格納することと、
前記エラー情報に基づいて前記エラーを報知することと、
を実行させるプログラム。
【発明の詳細な説明】
【技術分野】
【０００１】
本発明は、サーバシステム、検出方法及びプログラムに関する。
【背景技術】
【０００２】
サーバなどにおいてシステムに冗長性を持たせる技術として、ＲＡＩＤ（Ｒｅｄｕｎｄａｎｔ  Ａｒｒａｙｓ  ｏｆ  Ｉｎｅｘｐｅｎｓｉｖｅ  Ｄｉｓｋｓ）と呼ばれる技術がある。
特許文献１には、関連する技術として、余剰領域を含めたＲＡＩＤ構成された論理ドライブを制御するＲＡＩＤコントローラに関する技術が開示されている。
特許文献２には、関連する技術として、ＲＡＩＤを構成する単体ディスク毎、及び複数
ディスクに亘ってエラー状況を把握する技術が開示されている。
【先行技術文献】
【特許文献】
【０００３】
【特許文献１】特開２００８−０７１１８９号公報
【特許文献２】特開２００４−２２７４４９号公報
【発明の概要】
【発明が解決しようとする課題】
【０００４】
ところで、ＲＡＩＤは、複数台のハードディスクを組み合わせて仮想的に１台のハードディスクとして動作させる技術である。そのため、ＲＡＩＤを構成するハードディスクを制御するＲＡＩＤコントローラは、論理ドライブを構成すること、すなわち、複数台のハードディスクを組み合わせて仮想的に１台のハードディスクとして動作させることを前提とした処理を行うものがほとんどである。
一方、上位ソフトウェアによってサーバなどにおいてシステムに冗長性を持たせる技術が存在する。この上位ソフトウェアは、ＲＡＩＤコントローラが処理する論理ドライブをサポートしていない場合が多い。そのため、ＲＡＩＤコントローラとして、上位ソフトウェアに対応するために、論理ドライブ以外に上位ソフトウェアが処理可能な単体ディスクを構成することも可能なものも登場している。
上位ソフトウェアに対応する（すなわち、論理ドライブ以外に単体ディスクを構成可能な）ＲＡＩＤコントローラとその上位ソフトウェアとを用いる場合には、例えば、ＲＡＩＤコントローラによる制御の下、ＯＳ部分は論理ドライブにおいて冗長性を持たせ、データ部分は上位ソフトウェアによって単体ディスクにおいて冗長性を持たせる構成が可能となる。
しかしながら、単に上位ソフトウェアに対応する（すなわち、論理ドライブ以外に単体ディスクを構成可能な）ＲＡＩＤコントローラとその上位ソフトウェアとを用いる場合、単体ディスクに関してはＲＡＩＤコントローラによる処理が行われない。そのため、この場合、単体ディスクにおけるエラーに関する処理が行われず、単体ディスクにおけるエラーの通知が行われない。
そこで、上位ソフトウェアに対応する（すなわち、論理ドライブ以外に単体ディスクを構成可能な）ＲＡＩＤコントローラとその上位ソフトウェアとを用いる場合においても、論理ドライブ及び単体ディスクにおけるエラーを報知することのできる技術が求められている。
【０００５】
本発明の各態様は、上記の課題を解決することのできるサーバシステム、検出方法及びプログラムを提供することを目的としている。
【課題を解決するための手段】
【０００６】
上記目的を達成するために、本発明の一態様によれば、サーバシステムは、ＲＡＩＤ及び単体ディスクに接続され前記ＲＡＩＤを制御するＲＡＩＤコントローラを備えるサーバシステムであって、前記ＲＡＩＤコントローラは、前記単体ディスクに冗長性を持たせる上位ソフトウェアと前記単体ディスクとの間で通信されるデータのエラーを検出する単体ディスク制御手段と、前記エラーのエラー内容を示すエラー情報を格納するエラー管理テーブルと、前記エラー管理テーブルの前記エラー情報に基づいて前記エラーを報知するＲＡＩＤ制御手段とを備える。
【０００７】
上記目的を達成するために、本発明の別の態様によれば、検出方法は、ＲＡＩＤ及び単体ディスクに接続され前記ＲＡＩＤを制御するＲＡＩＤコントローラを備えるサーバシステムによる前記単体ディスクのエラーの検出方法であって、前記単体ディスクに冗長性を持たせる上位ソフトウェアと前記単体ディスクとの間で通信されるデータのエラーを検出することと、前記エラーのエラー内容を示すエラー情報を格納することと、前記エラー情報に基づいて前記エラーを報知することと、を含む。
【０００８】
上記目的を達成するために、本発明の一態様によれば、プログラムは、ＲＡＩＤ及び単体ディスクに接続され前記ＲＡＩＤを制御するＲＡＩＤコントローラを備えるサーバシステムが有するコンピュータに、前記単体ディスクに冗長性を持たせる上位ソフトウェアと前記単体ディスクとの間で通信されるデータのエラーを検出することと、前記エラーのエラー内容を示すエラー情報を格納することと、前記エラー情報に基づいて前記エラーを報知することと、を実行させる。
【発明の効果】
【０００９】
本発明の各態様によれば、論理ドライブ以外に単体ディスクを構成可能なＲＡＩＤコントローラとその上位ソフトウェアとを用いる場合において、論理ドライブ及び単体ディスクにおけるエラーを報知することができる。
【図面の簡単な説明】
【００１０】
【図１】本発明の一実施形態によるサーバシステムの構成の一例を示す図である。
【図２】本発明の一実施形態によるサーバシステムの処理フローの一例を示す図である。
【図３】本発明の実施形態による最小構成のサーバシステムを示す図である。
【図４】少なくとも１つの実施形態に係るコンピュータの構成を示す概略ブロック図である。
【発明を実施するための形態】
【００１１】
以下、図面を参照しながら実施形態について詳しく説明する。
＜実施形態＞
本発明の一実施形態によるサーバシステム１は、ＲＡＩＤ（Ｒｅｄｕｎｄａｎｔ  Ａｒｒａｙｓ  ｏｆ  Ｉｎｅｘｐｅｎｓｉｖｅ  Ｄｉｓｋｓ）構成された論理ドライブとＲＡＩＤ構成されていない単体ディスクとを有し、サーバシステム１における上位ソフトウェアについては単体ディスクへのアクセスと同様に論理ドライブへアクセスさせ、論理ドライブにおけるエラーの検出と同様に単体ディスクにおいてエラーを検出するシステムである。
【００１２】
サーバシステム１は、図１に示すように、ディスク１０ａ１、１０ａ２、１０ａ３、・・・１０ａｎ、上位制御装置２０、ＲＡＩＤコントローラ３０を備える。
【００１３】
ディスク１０ａ１及びディスク１０ａ２は、ＲＡＩＤ構成された論理ドライブを構成する。また、ディスク１０ａ３〜１０ａｎは、ＲＡＩＤ構成されていない単体ディスクである。
【００１４】
上位制御装置２０は、ＯＳ（Ｏｐｅｒａｔｉｎｇ  Ｓｙｓｔｅｍ）、上位ソフトウェア２０１、ＲＡＩＤ管理ユーティリティなどを記憶する。
上位制御装置２０は、ＯＳ上で、上位ソフトウェア２０１、ＲＡＩＤ管理ユーティリティなどのアプリケーションプログラムを実行する。
【００１５】
上位ソフトウェア２０１は、ＯＳ上で動作するプログラムであり、ディスク１０ａ３〜１０ａｎ、すなわち、単体ディスクに冗長性を持たせるソフトウェアである。上位ソフトウェア２０１は、単体ディスクとのデータの読み書きを後述する単体ディスク制御部３０３を介して行う。例えば、上位ソフトウェア２０１は、単体ディスク専用のボードと同様のファームウェアをＲＡＩＤファームウェアの下位部分に持ち、下位部分の単体ディスクファームウェア（すなわち、単体ディスク制御部３０３）を経由してデータの読み書きの処理を行う。
【００１６】
ＲＡＩＤ管理ユーティリティは、ＯＳ上で動作するプログラムであり、ＲＡＩＤ構成された論理ドライブ及びＲＡＩＤコントローラ３０を管理するソフトウェアである。
【００１７】
ＲＡＩＤコントローラ３０は、エラー管理テーブル３０１（記憶手段の一例）、ＲＡＩＤ制御部３０２（検出手段の一例、報知手段の一例）及び単体ディスク制御部３０３を備える。
エラー管理テーブル３０１は、エラー内容を示す後述するエラー情報を含むデータテーブルである。エラー管理テーブル３０１は、ＲＡＩＤファームウェア上に存在する。
【００１８】
ＲＡＩＤ制御部３０２は、ディスクのＲＡＩＤ構成を制御する。ここで示す例では、ＲＡＩＤ制御部３０２は、ディスク１０ａ１及びディスク１０ａ２を論理ドライブとし、ディスク１０ａ３〜１０ａｎを単体ディスクとする。ＲＡＩＤ制御部３０２は、既存技術を用いてＲＡＩＤファームウェアによって実現される。その既存技術は、例えば、単体ディスク専用のボードと同様のファームウェアをＲＡＩＤファームウェアの下位部分に持たせ、単体ディスク構成ではＲＡＩＤファームウェアが何もせずに下位部分の単体ディスクファームウェア（すなわち、単体ディスク制御部３０３）で処理する技術である。
【００１９】
また、ＲＡＩＤ制御部３０２は、エラー管理テーブル３０１に格納される、ディスク１０ａ３〜１０ａｎと上位ソフトウェア２０１との間で送受信されるデータのエラー内容を示す情報（以下、エラー情報）に基づいて、エラーを報知する。
例えば、ＲＡＩＤ制御部３０２は、ＲＡＩＤのエラーハンドリングに従って、ＲＡＩＤ管理ユーティリティを用いてエラーの通知やエラー対象ディスクのＬＥＤを点灯させる。
【００２０】
単体ディスク制御部３０３は、ディスク１０ａ３〜１０ａｎと上位ソフトウェア２０１との間でデータを直接送受信する。そして、単体ディスク制御部３０３は、データのエラーを検出する。単体ディスク制御部３０３は、データのエラーを検出した場合、再度そのデータの送信を試みる。単体ディスク制御部３０３は、ＲＡＩＤファームウェアによって実現される。
【００２１】
次に、サーバシステム１が行う処理について説明する。
ここでは、単体ディスク１０ａ３〜１０ａｎにおいてエラーが発生した場合にそのエラーを通知する図２に示すサーバシステム１の処理フローについて説明する。
【００２２】
ＲＡＩＤ制御部３０２は、ディスクのＲＡＩＤ構成を制御する（ステップＳ１）。
例えば、ＲＡＩＤ制御部３０２は、ディスク１０ａ１及びディスク１０ａ２で論理ドライブを構成し、ディスク１０ａ３〜１０ａｎを単体ディスクとする。
【００２３】
単体ディスク制御部３０３は、既存技術を用いてディスク１０ａ３〜１０ａｎと上位ソフトウェア２０１との間で送受信されるデータのエラーを検出する（ステップＳ２）。単体ディスク制御部３０３がデータのエラーを検出した場合、ＲＡＩＤ制御部３０２は、そのエラーに関するエラー情報をエラー管理テーブル３０１に格納する（ステップＳ３）。
【００２４】
そして、ＲＡＩＤ制御部３０２は、そのエラーを報知する（ステップＳ４）。
例えば、ＲＡＩＤ制御部３０２は、ＲＡＩＤのエラーハンドリングに従って、ＲＡＩＤ管理ユーティリティを用いてエラーの通知やエラー対象ディスクのＬＥＤを点灯させる。
【００２５】
以上、本発明の一実施形態によるサーバシステム１について説明した。
サーバシステム１は、ディスク１０ａ３〜１０ａｎ（単体ディスクの一例）に冗長性を持たせる上位ソフトウェア２０１と、ディスク１０ａ３〜１０ａｎとの間で通信されるデータについて、エラーを検出する単体ディスク制御部（エラー検出部の一例）を備える。
こうすることによって、サーバシステム１は、ディスク１０ａ３〜１０ａｎ（単体ディスクの一例）に冗長性を持たせる上位ソフトウェア２０１と、ディスク１０ａ３〜１０ａｎとの間で通信されるデータについて、エラーを検出することができる。
その結果、データについてエラーを検出した場合に、単体ディスクにおけるデータのエラーの発生を早急に報知することができる。
【００２６】
本発明の実施形態による最小構成のサーバシステム１について説明する。
本発明の実施形態による最小構成のサーバシステム１は、図３に示すように、検出手段１００を備える。
検出手段１００は、単体ディスクに冗長性を持たせる上位ソフトウェアと、前記単体ディスクとの間で通信されるデータについて、エラーを検出する。
こうすることで、サーバシステム１によって、論理ドライブ以外に単体ディスクを構成可能なＲＡＩＤコントローラとその上位ソフトウェアとを用いる場合において、論理ドライブ及び単体ディスクにおけるエラーを報知することができる。
【００２７】
なお、本発明の実施形態における処理は、適切な処理が行われる範囲において、処理の順番が入れ替わってもよい。
【００２８】
本発明の実施形態におけるディスク１０ａ１〜１０ａｎ、その他の記憶装置のそれぞれは、適切な情報の送受信が行われる範囲においてどこに備えられていてもよい。また、ディスク１０ａ１〜１０ａｎ、その他の記憶装置のそれぞれは、適切な情報の送受信が行われる範囲において複数存在しデータを分散して記憶していてもよい。
【００２９】
本発明の実施形態について説明したが、上述のサーバシステム１、上位制御装置２０、ＲＡＩＤコントローラ３０、その他の制御装置は内部に、コンピュータシステムを有していてもよい。そして、上述した処理の過程は、プログラムの形式でコンピュータ読み取り可能な記録媒体に記憶されており、このプログラムをコンピュータが読み出して実行することによって、上記処理が行われる。コンピュータの具体例を以下に示す。
図４は、少なくとも１つの実施形態に係るコンピュータの構成を示す概略ブロック図である。
コンピュータ５は、図４に示すように、ＣＰＵ６、メインメモリ７、ストレージ８、インターフェース９を備える。
例えば、上述のサーバシステム１、上位制御装置２０、ＲＡＩＤコントローラ３０、その他の制御装置のそれぞれは、コンピュータ５に実装される。そして、上述した各処理部の動作は、プログラムの形式でストレージ８に記憶されている。ＣＰＵ６は、プログラムをストレージ８から読み出してメインメモリ７に展開し、当該プログラムに従って上記処理を実行する。また、ＣＰＵ６は、プログラムに従って、上述した各記憶部に対応する記憶領域をメインメモリ７に確保する。
【００３０】
ストレージ８の例としては、ＨＤＤ（Ｈａｒｄ  Ｄｉｓｋ  Ｄｒｉｖｅ）、ＳＳＤ（Ｓｏｌｉｄ  Ｓｔａｔｅ  Ｄｒｉｖｅ）、磁気ディスク、光磁気ディスク、ＣＤ−ＲＯＭ（Ｃｏｍｐａｃｔ  Ｄｉｓｃ  Ｒｅａｄ  Ｏｎｌｙ  Ｍｅｍｏｒｙ）、ＤＶＤ−ＲＯＭ（Ｄｉｇｉｔａｌ  Ｖｅｒｓａｔｉｌｅ  Ｄｉｓｃ  Ｒｅａｄ  Ｏｎｌｙ  Ｍｅｍｏｒｙ）、半導体メモリ等が挙げられる。ストレージ８は、コンピュータ５のバスに直接接続された内部メディアであってもよいし、インターフェース９または通信回線を介してコンピュータ５に接続される外部メディアであってもよい。また、このプログラムが通信回線によってコンピュータ５に配信される場合、配信を受けたコンピュータ５が当該プログラムをメインメモリ７に展開し、上記処理を実行してもよい。少なくとも１つの実施形態において、ストレージ８は、一時的でない有形の記憶媒体である。
【００３１】
また、上記プログラムは、前述した機能の一部を実現してもよい。さらに、上記プログラムは、前述した機能をコンピュータシステムにすでに記録されているプログラムとの組み合わせで実現できるファイル、いわゆる差分ファイル（差分プログラム）であってもよい。
【００３２】
本発明のいくつかの実施形態を説明したが、これらの実施形態は、例であり、発明の範囲を限定しない。これらの実施形態は、発明の要旨を逸脱しない範囲で、種々の追加、省略、置き換え、変更を行ってよい。
【符号の説明】
【００３３】
１・・・サーバシステム
５・・・コンピュータ
６、１１・・・ＣＰＵ
７・・・メインメモリ
８・・・ストレージ
９・・・インターフェース
１０ａ１、１０ａ２、１０ａ３、・・・、１０ａｎ・・・ディスク
２０・・・上位制御装置
３０・・・ＲＡＩＤコントローラ
２０１・・・上位ソフトウェア
２０２・・・ＲＡＩＤ管理ユーティリティ
３０１・・・エラー管理テーブル
３０２・・・ＲＡＩＤ制御部
３０３・・・単体ディスク制御部
【図１】
2022000824.tif 000003
【図２】
2022000824.tif 000004
【図３】
2022000824.tif 000005
【図４】
2022000824.tif 000006