説明

ディスクアレイ装置、ディスクアレイ装置の起動方法およびそのプログラム

【課題】大容量の構成情報を常に有効に保存すると共に、装置の円滑な起動およびデータの有効な保存を可能とするディスクアレイ装置などを提供する。
【解決手段】本発明に係るディスクアレイ装置10は、複数の物理ディスク21〜2nが、物理ディスクを制御するコントローラ30に接続されてなるディスクアレイ装置であって、複数の物理ディスクの全てに、装置本体を起動する際に必要な情報である構成情報41が書き込まれていると共に、物理ディスクに書き込まれた構成情報のアドレスに関する情報であるディスクアドレス情報を記憶している不揮発性記憶手段35を備え、コントローラが、不揮発性記憶手段から読み取ったディスクアドレス情報に基づいて物理ディスクにアクセスして構成情報を読み取る装置起動制御部32aと、この構成情報に基づいて装置本体を起動するディスク制御部32bを有する。

【発明の詳細な説明】
【技術分野】
【0001】
本発明はディスクアレイ装置に関し、特にディスクアレイ装置の構成情報の保存に関する。
【背景技術】
【0002】
近年、IT(Information Technology)への依存度が増すにつれて各種データの重要性はますます増大し、特に企業システムやウェブサイトなどでデータの大容量保存に対する需要が増大している。そこで、コンピュータシステムにおける大容量記憶装置の役割はますます大きくなり、大容量記憶装置に対しては高信頼性化、高性能化などの要求も高まる一方である。
【0003】
そこで、複数台の物理ディスクを仮想的に1台の物理ディスクとして使用するRAID(Redundant Arrays of Inexpensive Disks)などの技術を使用するディスクアレイ装置が、そのような要求を満たす大容量記憶装置として使用されることが多い。また、それらのディスクアレイ装置は、冗長化された構成によって、同一の記録内容を何重にも書き込む構造になっていることが多い。さらに、記録内容の破壊に備えて、パリティコードもしくはECC(Error Correcting Code)などの誤り訂正符号を専用のドライブ(物理ディスク)に記録するなどのような構造になっている場合も多い。これらの技術は、RAID1〜6として規格化され、広く普及している。
【0004】
これに関連する技術文献として、次の特許文献が開示されている。特許文献1には、構成の変更が容易であるというディスクアレイ装置について記載されている。特許文献2には、構成情報を不揮発性記憶装置に待避させて異常発生時にも復旧が容易であるというディスクアレイ装置について記載されている。特許文献3には、1つのポートに多数の論理記憶装置を対応づけることが可能であるという記憶装置システムについて記載されている。
【0005】
また特許文献4には、構成情報を不揮発性メモリと磁気ディスクの両方に保持することによって信頼性を高めたというディスクアレイ装置について記載されている。特許文献5には、不揮発性メモリに保持されたアドレス情報からルーティングを行う技術について記載されている。
【先行技術文献】
【特許文献】
【0006】
【特許文献1】特開2000−298557号公報
【特許文献2】特開2003−345528号公報
【特許文献3】特開2005−209149号公報
【特許文献4】特開2008−009810号公報
【特許文献5】特開平10−075242号公報
【発明の概要】
【発明が解決しようとする課題】
【0007】
当初は、ディスクアレイ装置の物理ディスク・ディスクエンクロージャー・電源等のリソース構成に係る構成情報は、該装置の電源が投入される時に、各々の物理ディスクを起動する前に、EEPROM(Electrically Erasable and Programmable Read Only Memory)から読み込まれていた。
【0008】
しかしながら、ディスクアレイ装置を構成する物理ディスク1台ごとの容量が大きくなっており、また構成の複雑化などに伴い、リソース構成の他にもRAID情報や各ソリューション機能情報なども構成情報として保存しなければならなくなり、その結果構成情報として保存される情報の種類および分量が急速に増大している。このため、構成情報がEEPROMに格納可能な上限値である100MBを超える容量となることも多くなっている。
【0009】
図4は、現在のディスクアレイ装置で一般的に行われている構成情報の保存方法について示す説明図である。ディスクアレイ装置210は、n台の物理ディスク221〜22n(nは2以上の自然数)と、これらの物理ディスク221〜22nを制御するマイクロコンピュータであるコントローラ230と、後述のROM(Read Only Memory)233とRAM(Random Access Memory)234からなり、一般的なコンピュータ装置である管理クライアントホスト250に接続されていて、この管理クライアントホスト250からのリード/ライト命令に基づいて物理ディスク221〜22nにデータを読み書きする。
【0010】
コントローラ230は、物理ディスク221〜22nを制御する主体となるCPU(Central Processing Unit)231からなり、CPU231を初期起動するファームウェア232を記憶しているROM233と、CPU231が読み込んだファームウェア232およびその他の動作プログラムを読み込むRAM234とが接続されている。
【0011】
ファームウェア232は、装置起動制御部232a、ディスク制御部232b、ホストI/O制御部232cといった各機能部を有する。装置起動制御部232aは物理ディスク221〜22nの初期化処理を行う。ディスク制御部232bは物理ディスク221〜22nの構成情報の作成もしくは復元を行う。ホストI/O制御部232cは、物理ディスク221〜22nへの実際のデータの読み書きを行う。
【0012】
物理ディスク221〜22nのうちのm台(mは2以上の自然数、m≦n)である物理ディスク221〜22mには物理ディスク221〜22nの構成情報241がミラーリングで書き込まれている。ディスクアレイ装置210に電源が投入されると、装置起動制御部232aは、自らにあらかじめプログラミングされたディスクアドレス情報を使用して物理ディスク221〜22mにアクセスして構成情報241を読み込み、ディスク制御部232bがこの構成情報241に基づいてディスクアレイ装置210を起動する。
【0013】
このように、構成情報が100MBを超える大容量であるので、物理ディスクの側に構成情報が書き込まれるという構成のディスクアレイ装置が最近は多くなっている。しかしながら、このようなディスクアレイ装置210で、構成情報を含む物理ディスク221〜22mが全て縮退するか、もしくはインターフェイス障害などによって装置起動制御部232aが物理ディスク221〜22mの全てを認識できなくなると、装置起動制御部232aは構成情報241を読み込むことができなくなる。その結果としてディスクアレイ装置210は起動できなくなり、そこに記録されていた全データは消失することとなる。
【0014】
ちなみに前述の特許文献1〜5は、構成情報が大容量であるのでEEPROMに格納できず、物理ディスクの側に構成情報を書き込むことを余儀なくされることによって生じる上記の問題を認識していないので、その問題を解決しうる技術は当然記載されていない。
【0015】
本発明の目的は、大容量の構成情報を常に有効に保存すると共に、装置の円滑な起動およびデータの有効な保存を可能とするディスクアレイ装置、ディスクアレイ装置の起動方法およびそのプログラムを提供することにある。
【課題を解決するための手段】
【0016】
上記目的を達成するため、本発明に係るディスクアレイ装置は、複数の物理ディスクと、物理ディスクを制御するコントローラとを備えた装置本体を有するディスクアレイ装置であって、複数の物理ディスクの全てに、装置本体を起動する際に必要な情報である構成情報が書き込まれていると共に、物理ディスクに書き込まれた構成情報のアドレスに関する情報であるディスクアドレス情報を記憶している不揮発性記憶手段を備え、コントローラが、不揮発性記憶手段から読み取ったディスクアドレス情報に基づいて物理ディスクにアクセスして構成情報を読み取る装置起動制御部と、この構成情報に基づいて装置本体を起動するディスク制御部を有することを特徴とする。
【0017】
上記目的を達成するため、本発明に係るディスクアレイ装置の起動方法は、複数の物理ディスクと、当該各物理ディスクを制御するコントローラとを備えた装置本体を有するディスクアレイ装置にあって、装置本体を起動する方法であって、装置本体を起動する際に必要な情報である構成情報が物理ディスクに書き込まれたアドレスに関する情報であるディスクアドレス情報を装置起動制御部が不揮発性記憶手段から読み出した後、ディスクアドレス情報に基づいて装置起動制御部が物理ディスクに順次アクセスして構成情報を読み取り、この読み取った構成情報に基づいてディスク制御部が装置本体を起動することを特徴とする。
【0018】
上記目的を達成するため、本発明に係るディスクアレイ装置の起動プログラムは、複数の物理ディスクと、当該各物理ディスクを制御するコントローラとを備えた装置本体を有するディスクアレイ装置が備えているコンピュータに、装置本体を起動する際に必要な情報である構成情報が物理ディスクに書き込まれたアドレスに関する情報であるディスクアドレス情報を不揮発性記憶手段から読み出す手順と、この読み出したディスクアドレス情報に基づいて物理ディスクに順次アクセスして構成情報を読み取る手順と、この読み取った構成情報に基づいてディスクアレイ装置を起動する手順とを実行させることを特徴とする。
【発明の効果】
【0019】
本発明は、上述したように、ディスクアレイ装置を構成する複数の物理ディスクの全てに構成情報を書き込むように構成したので、それらの物理ディスクのうち1つでも正常に起動するものがありさえすれば、構成情報を読み出して該ディスクアレイ装置を起動することが可能となる。これによって、大容量の構成情報を常に有効に保存すると共に、装置の円滑な起動およびデータの有効な保存が可能であるという、優れた特徴を持つディスクアレイ装置、ディスクアレイ装置の起動方法およびそのプログラムを提供することができる。
【図面の簡単な説明】
【0020】
【図1】本発明の実施形態に係るディスクアレイ装置の構成を示す説明図である。
【図2】図1で示したディスクアレイ装置を起動する際に、コントローラが行う処理を表すフローチャートである。
【図3】図1で示したディスクアレイ装置で、コントローラが行うディスクアドレス情報の書き換えの処理を表すフローチャートである。
【図4】現在のディスクアレイ装置で一般的に行われている構成情報の保存方法について示す説明図である。
【発明を実施するための形態】
【0021】
(第1の実施形態)
以下、本発明の第1の実施形態の構成について添付図1に基づいて説明する。
最初に、本実施形態の基本的な内容について説明し、その後でより具体的な内容について説明する。
本実施形態に係るディスクアレイ装置10は、複数の物理ディスク21〜2n(nは2以上の自然数)と、物理ディスクを制御するコントローラ30とを有する。複数の物理ディスク21〜2nの全てに、ディスクアレイ装置を起動する際に必要な情報である構成情報41が書き込まれており、そして物理ディスクに書き込まれた構成情報のアドレスに関する情報であるディスクアドレス情報を記憶している不揮発性記憶手段35を備える。そして、コントローラ30は、不揮発性記憶手段から読み取ったディスクアドレス情報に基づいて物理ディスクにアクセスして構成情報を読み取る装置起動制御部32aと、この構成情報に基づいてディスクアレイ装置を起動するディスク制御部32bを有する。
【0022】
ここでコントローラ30は、管理クライアントホスト50からの管理コマンドに反応して、構成情報を物理ディスクから取得して不揮発性記憶手段に書き込むホストI/O制御部32cをさらに有する。さらに、不揮発性記憶手段35はEEPROMである。
【0023】
以上の構成を備えることにより、大容量の構成情報を常に有効に保存し、かつ装置の円滑な起動およびデータの有効な保存が可能となる。
以下、これをより詳細に説明する。
【0024】
図1は、本発明の実施形態に係るディスクアレイ装置10の構成を示す説明図である。ディスクアレイ装置10は、n台の物理ディスク21〜2n(nは2以上の自然数)と、これらの物理ディスク21〜2nを制御するマイクロコンピュータであるコントローラ30と、このコントローラ30に接続された後述のROM33、RAM34、EEPROM35からなる。
【0025】
コントローラ30は、一般的なコンピュータ装置であるクライアントホスト60に接続されていて、このクライアントホスト60からのリード/ライト命令に基づいて物理ディスク21〜2nにデータの読み書きを行う。クライアントホスト60は1台以上何台でも存在しうる。管理クライアントホスト50は、クライアントホスト60の中でも特にディスクアレイ装置10に対する後述の管理コマンドを発する権限を有するクライアントである。管理クライアントホスト50もまた、1台以上何台であってもよい。
【0026】
コントローラ30は、物理ディスク21〜2nを制御する主体となるCPU31からなる。そしてコントローラ30には、CPU31を初期起動するファームウェア32を記憶しているROM33と、CPU31が読み込んだファームウェア32およびその他の動作プログラムを読み込むRAM34と、不揮発性記憶部であるEEPROM35とが接続されている。EEPROM35には、後述のディスクアドレス情報35aが記憶されている。
【0027】
ファームウェア32は、装置起動制御部32a、ディスク制御部32b、ホストI/O制御部32cといった各機能部を有する。装置起動制御部32aは物理ディスク21〜2nの初期化処理を行う。ディスク制御部32bは物理ディスク21〜2nの構成(たとえば物理ディスク・ディスクエンクロージャー・電源等の各種リソース構成、RAID構成、DDR、スナップショット等の各種ソリューション状態など)の作成もしくは復元を行う。ホストI/O制御部32cは、物理ディスク21〜2nへの実際のデータの読み書きを行う。
【0028】
装置起動制御部32aは、ディスクアレイ装置10に電源が投入されるとCPU31で最初に動作し、EEPROM35から物理ディスク21〜2nのディスクアドレス情報35aを読み込む。そして装置起動制御部32aは、このディスクアドレス情報35aに基づいて、ディスク制御部32bを介して物理ディスク21〜2nにアクセスする。
【0029】
ディスク制御部32bは、ディスクアドレス情報35aと合致した物理ディスク21〜2nの中から最初に認識した物理ディスクに記憶されている構成情報41を取得する。そしてディスク制御部32bは、この構成情報41に基づいて物理ディスク21〜2nの構成を作成もしくは復元し、ディスクアレイ装置10を起動させる。
【0030】
そしてホストI/O制御部32cは、管理クライアントホスト50からの管理コマンドに応じて、構成情報41を物理ディスク21〜2nの各一個一個に構成情報41の一部データとしてミラーリングして格納する。さらにこの構成情報41が書き込まれている物理ディスク21〜2nのアドレスを取得し、ディスクアドレス情報35aとしてEEPROM35に記憶させる機能も有する。このようにすれば、物理ディスク21〜2nのうち1個でも読み取り可能であれば、構成情報41を読み取って、これに基づいてディスクアレイ装置10を起動することができる。
【0031】
図2は、図1で示したディスクアレイ装置10を起動する際に、コントローラ30が行う処理を表すフローチャートである。ディスクアレイ装置10に電源が投入されると、装置起動制御部32aがまずCPU31で最初に動作を開始して(ステップS101)、まずEEPROM35から物理ディスク21〜2nのディスクアドレス情報35aを読み込む(ステップS102)。
【0032】
そして装置起動制御部32aは、ディスク制御部32bを介して、物理ディスク21〜2nのディスクアドレス情報35aに記録されたアドレスに順次アクセスして(ステップS103)、構成情報41の読み取りを試みる(ステップS104)。読み取りに成功すればステップS105に進み、ディスク制御部32bが読み取った構成情報41の内容によってディスクアレイ装置10を起動して(ステップS105)処理を終了する。
【0033】
ステップS104で構成情報41の読み取りに失敗すれば、装置起動制御部32aは、構成情報41の読み取りを試行していない物理ディスク21〜2nがまだ残っていればその物理ディスクについてステップS104の判断を繰り返す(ステップS106〜107)。
【0034】
ステップS106で、読み取りを試行していない物理ディスク21〜2nが残っていない場合に限って、起動不可能のエラーとしてエラー処理を行って(ステップS108)処理を終了する。しかしながら、物理ディスク21〜2nの中で構成情報41の読み取りが可能なものが1つでもあれば、その構成情報41の内容によってステップS105の起動処理が可能であるので、ディスクアレイ装置10が起動不可能となることは希である。
【0035】
図3は、図1で示したディスクアレイ装置10で、コントローラ30が行うディスクアドレス情報35aの書き換えの処理を表すフローチャートである。このディスクアドレス情報35aの書き換えは、管理クライアントホスト50からの管理コマンドによって、コントローラ30が任意のタイミングで行うことができる。
【0036】
たとえば、ディスクアレイ装置10もしくは管理クライアントホスト50の電源を切る際にディスクアドレス情報35aの書き換えを行うようにしてもよいし、またタイマーによって数日ごとに行うようにしてもよいし、ディスクアレイ装置10の構成情報41に対して何らかの変化があった時に行うようにしてもよい。ちなみにクライアントホスト60には、このような管理コマンドをディスクアレイ装置10に対して発する権限はない。
【0037】
管理クライアントホスト50からの管理コマンドを受けた(ステップS201)ホストI/O制御部32cは、物理ディスク21〜2nにアクセスして構成情報41の記録されているアドレスを取得し(ステップS202)、その内容をディスクアドレス情報35aとしてEEPROM35に上書きする(ステップS203)。
【0038】
これによって、管理クライアントホスト50を操作するディスクアレイ装置10の管理者は、構成情報41の堅牢性を高め、ディスクアドレス情報35aが不適切であるためにディスクアレイ装置10を起動できなくなってしまうという危険性を軽減することができる。
【0039】
(第1の実施形態の全体的な動作)
次に、上記の実施形態の全体的な動作について説明する。本発明に係るディスクアレイ装置の起動方法は、複数の物理ディスクと、当該各物理ディスクを制御するコントローラとを備えた装置本体を有するディスクアレイ装置にあって、装置本体を起動する方法であって、装置本体を起動する際に必要な情報である構成情報が物理ディスクに書き込まれたアドレスに関する情報であるディスクアドレス情報を装置起動制御部が不揮発性記憶手段から読み出した(図2・ステップS101〜102)後、ディスクアドレス情報に基づいて装置起動制御部が物理ディスクに順次アクセスして構成情報を読み取り(図2・ステップS103〜104)、この読み取った構成情報に基づいてディスク制御部が装置本体を起動する(図2・ステップS105)。
【0040】
さらに、管理クライアントホストからの管理コマンドに反応して(図3・ステップS201)、ホストI/O制御部がディスクアドレス情報を物理ディスクから取得して不揮発性記憶手段に書き込む(図3・ステップS202〜203)。
【0041】
ここで、上記各動作ステップについては、これをコンピュータで実行可能にプログラム化し、これらを前記各ステップを直接実行する主体であるCPU31に実行させるようにしてもよい。
この構成および動作により、本実施形態は以下のような効果を奏する。
【0042】
本実施形態によれば、ディスクアレイ装置を構成する複数の物理ディスクのうち、1つでも正常に起動するものがありさえすれば、構成情報を読み出して該ディスクアレイ装置を起動することが可能となる。従って、構成情報が100MB以上の大容量となってEEPROMに格納できなくなったディスクアレイ装置であっても、該ディスクアレイ装置の起動時の信頼性を向上させることが可能である。また、この構成情報の耐冗長破壊性および格納可用性を向上させることが可能である。
【0043】
これまで本発明について図面に示した特定の実施形態をもって説明してきたが、本発明は図面に示した実施形態に限定されるものではなく、本発明の効果を奏する限り、これまで知られたいかなる構成であっても採用することができる。
【産業上の利用可能性】
【0044】
複数の物理ディスクを備えるディスクアレイ装置に適用可能である。特に、構成情報が100MB以上の大容量である場合に好適である。
【符号の説明】
【0045】
10 ディスクアレイ装置
21、2n 物理ディスク
30 コントローラ
31 MPU
32 ファームウェア
32a 装置起動制御部
32b ディスク制御部
32c ホストI/O制御部
33 ROM
34 RAM
35 EEPROM
35a ディスクアドレス情報
41 構成情報
50 管理クライアントホスト
60 クライアントホスト

【特許請求の範囲】
【請求項1】
複数の物理ディスクと、前記物理ディスクを制御するコントローラとを備えた装置本体を有するディスクアレイ装置であって、
前記複数の物理ディスクの全てに、前記装置本体を起動する際に必要な情報である構成情報が書き込まれていると共に、
前記物理ディスクに書き込まれた構成情報のアドレスに関する情報であるディスクアドレス情報を記憶している不揮発性記憶手段を備え、
前記コントローラが、前記不揮発性記憶手段から読み取った前記ディスクアドレス情報に基づいて前記物理ディスクにアクセスして前記構成情報を読み取る装置起動制御部と、この構成情報に基づいて前記装置本体を起動するディスク制御部を有することを特徴とするディスクアレイ装置。
【請求項2】
前記コントローラが、管理クライアントホストからの管理コマンドに反応して、前記ディスクアドレス情報を前記物理ディスクから取得して前記不揮発性記憶手段に書き込むホストI/O制御部を有することを特徴とする、請求項1に記載のディスクアレイ装置。
【請求項3】
前記不揮発性記憶手段がEEPROMであることを特徴とする、請求項1に記載のディスクアレイ装置。
【請求項4】
複数の物理ディスクと、当該各物理ディスクを制御するコントローラとを備えた装置本体を有するディスクアレイ装置にあって、前記装置本体を起動する方法であって、
前記装置本体を起動する際に必要な情報である構成情報が前記物理ディスクに書き込まれたアドレスに関する情報であるディスクアドレス情報を装置起動制御部が不揮発性記憶手段から読み出した後、
前記ディスクアドレス情報に基づいて前記装置起動制御部が前記物理ディスクに順次アクセスして前記構成情報を読み取り、
この読み取った前記構成情報に基づいてディスク制御部が前記装置本体を起動することを特徴とするディスクアレイ装置の起動方法。
【請求項5】
前記装置本体の起動後、管理クライアントホストからの管理コマンドに反応して、ホストI/O制御部が前記ディスクアドレス情報を前記不揮発性記憶手段に書き込むことを特徴とする、請求項4に記載のディスクアレイ装置の起動方法。
【請求項6】
複数の物理ディスクと、当該各物理ディスクを制御するコントローラとを備えた装置本体を有するディスクアレイ装置が備えているコンピュータに、
前記装置本体を起動する際に必要な情報である構成情報が前記物理ディスクに書き込まれたアドレスに関する情報であるディスクアドレス情報を不揮発性記憶手段から読み出す手順と、
この読み出した前記ディスクアドレス情報に基づいて前記物理ディスクに順次アクセスして前記構成情報を読み取る手順と、
この読み取った前記構成情報に基づいて前記ディスクアレイ装置を起動する手順とを実行させることを特徴とするディスクアレイ装置の起動プログラム。

【図1】
image rotate

【図2】
image rotate

【図3】
image rotate

【図4】
image rotate


【公開番号】特開2010−218220(P2010−218220A)
【公開日】平成22年9月30日(2010.9.30)
【国際特許分類】
【出願番号】特願2009−64353(P2009−64353)
【出願日】平成21年3月17日(2009.3.17)
【出願人】(000004237)日本電気株式会社 (19,353)
【Fターム(参考)】