(19)【発行国】日本国特許庁(JP)
(12)【公報種別】特許公報(B2)
(11)【特許番号】
(24)【登録日】2023-11-07
(45)【発行日】2023-11-15
(54)【発明の名称】ディスクアレイシステム、ディスクアレイシステムのための方法、および、ディスクアレイシステムのためのコンピュータプログラム
(51)【国際特許分類】
G06F 3/06 20060101AFI20231108BHJP
G06F 11/20 20060101ALI20231108BHJP
【FI】
G06F3/06 306H
G06F3/06 540
G06F11/20 635
(21)【出願番号】P 2022034310
(22)【出願日】2022-03-07
【審査請求日】2022-03-07
(73)【特許権者】
【識別番号】000227205
【氏名又は名称】NECプラットフォームズ株式会社
(74)【代理人】
【識別番号】100106909
【氏名又は名称】棚井 澄雄
(74)【代理人】
【識別番号】100134544
【氏名又は名称】森 隆一郎
(74)【代理人】
【識別番号】100149548
【氏名又は名称】松沼 泰史
(74)【代理人】
【識別番号】100162868
【氏名又は名称】伊藤 英輔
(72)【発明者】
【氏名】田子 顕
(72)【発明者】
【氏名】小平 実
(72)【発明者】
【氏名】田中 弘幸
(72)【発明者】
【氏名】佐藤 晋
(72)【発明者】
【氏名】八巻 貴志
(72)【発明者】
【氏名】中島 真
(72)【発明者】
【氏名】松井 康尚
(72)【発明者】
【氏名】根岸 邦尚
(72)【発明者】
【氏名】早川 裕貴
【審査官】打出 義尚
(56)【参考文献】
【文献】特開2006-201915(JP,A)
【文献】特開2004-038400(JP,A)
【文献】米国特許出願公開第2021/0034255(US,A1)
【文献】米国特許第07617259(US,B1)
【文献】米国特許出願公開第2010/0281213(US,A1)
(58)【調査した分野】(Int.Cl.,DB名)
G06F 3/06
(57)【特許請求の範囲】
【請求項1】
ディスクアレイにおいてRAID(Redundancy Array of Independent Disk)を構成するシステムであって、
複数の論理ディスクが複数の物理ディスクの全容量を利用して構成され、各ファイルシステムがそれぞれの論理ディスクの全容量を用いて構成され、
前記複数の物理ディスクのいずれかの物理ディスクが故障した際、
故障した前記物理ディスクを含まない論理ディスクに構築されたファイルシステムにおける空き容量を利用して、
故障した前記物理ディスクを含む論理ディスクに構築されたファイルシステム
のために故障した前記物理ディスクの代替領域を確保する制御手段
を備えたディスクアレイシステム。
【請求項2】
前記制御手段は、故障した前記物理ディスクを含まない1つの論理ディスク上のファイルシステムで故障した前記物理ディスクの代替領域を
確保できない場合、故障した前記物理ディスクを含まない複数の論理ディスク上のファイルシステムの空き容量を利用して、前記代替領域を確保する
請求項1に記載のディスクアレイシステム。
【請求項3】
前記制御手段は、前記ファイルシステムにおける空き容量を、該ファイルシステムの全容量から使用容量と、該ファイルシステムにおいて今後の使用のために確保するマージン容量を引いた容量として求める、請求項1または2に記載のディスクアレイシステム。
【請求項4】
物理ディスクの故障を検出すると、該物理ディスクを含む論理ディスクを一意に特定する情報を含む代替領域確保要求情報を作成し、該代替領域確保要求情報を含めて故障した前記物理ディスクの代替領域の確保の依頼を前記制御手段に対して行う第2の制御手段、をさらに備え、
前記制御手段は、前記第2の制御手段からの前記代替領域確保要求情報に含まれる故障した前記物理ディスクを含む論理ディスクを一意に特定する情報を用いて、故障した物理ディスク含まない論理ディスクを特定する、
請求項1から3のいずれか1項に記載のディスクアレイシステム。
【請求項5】
前記第2の制御手段は、前記代替領域確保要求情報に故障した前記物理ディスクの容量に関する情報をさらに含め、前記代替領域確保要求情報を含めて故障した前記物理ディスクの代替領域の確保の依頼を前記制御手段に対して行い、
前記制御手段は、前記第2の制御手段からの前記代替領域確保要求情報に含まれる前記物理ディスクの容量に関する情報を用いて、前記代替領域のために必要な容量を特定する、
請求項4に記載のディスクアレイシステム。
【請求項6】
前記制御手段は、前記代替領域確保要求情報に含まれる前記物理ディスクの容量が、前記物理ディスクを含まない論理ディスクに構築されたファイルシステムの空き容量を用いて確保できない場合、前記代替領域
が確保できないと判断する、請求項5に記載のディスクアレイシステム。
【請求項7】
前記第2の制御手段は、前記制御手段により前記代替領域の確保が行われると、故障した前記物理ディスク
を含む論理ディスクを構成する故障していない物理ディスの内容を、前記代替領域
にコピーする、
請求項4から6のいずれか1項に記載のディスクアレイシステム。
【請求項8】
前記制御手段は、前記代替領域を確保すると、該代替領域を管理するための代替領域管理テーブルを生成し、
前記第2の制御手段は、RAID構成を
保つために故障した前記物理ディスクへの書き込み処理が必要な際、前記制御手段に対して前記代替領域への書き込み要求を行い、
前記制御手段は、前記第2の制御手段より前記代替領域への書き込み要求を受けると、前記代替領域管理テーブルを利用して、前記代替領域への書き込み処理を行う、
請求項4から7のいずれか1項に記載のディスクアレイシステム。
【請求項9】
ディスクアレイにおいてRAIDを構成するシステム
であって、複数の論理ディスクが複数の物理ディスクの全容量を利用して構成され、各ファイルシステムがそれぞれの論理ディスクの全容量を用いて構成されたシステムに対し、コンピュータにより、
前記複数の物理ディスクのいずれかの物理ディスクが故障した際、
故障した前記物理ディスクを含まない論理ディスクに構築されたファイルシステムにおける空き容量を求め、
前記空き容量を利用して、故障した前記物理ディスクを含む論理ディスクに構築されたファイルシステム
のために故障した前記物理ディスクの代替領域を確保する
ディスクアレイシステムのための方法。
【請求項10】
ディスクアレイにおいてRAIDを構成するシステム
であって、複数の論理ディスクが複数の物理ディスクの全容量を利用して構成され、各ファイルシステムがそれぞれの論理ディスクの全容量を用いて構成されたシステムに対し、
前記複数の物理ディスクのいずれかの物理ディスクが故障した際、
故障した前記物理ディスクを含まない論理ディスクに構築されたファイルシステムにおける空き容量を求め、
前記空き容量を利用して、故障した前記物理ディスクを含む論理ディスクに構築されたファイルシステム
のために故障した前記物理ディスクの代替領域を確保する
ことをコンピュータに実行させるディスクアレイシステムのためのコンピュータプログラム。
【発明の詳細な説明】
【技術分野】
【0001】
本発明は、ディスクアレイシステム、ディスクアレイシステムのための方法、および、ディスクアレイシステムのためのプログラムに関する。
【背景技術】
【0002】
コンピュータシステムを構成するサーバにおいて、ディスク故障に対する信頼性を確保するために複数の物理ディスクを用いたRAID(Redundancy Array of Independent Disk)構成とするディスクアレイシステムが広く用いられている。また、物理ディスクの故障に備えて物理ディスクのスペアディスクを実装しておくことで、物理ディスク故障時に自動的にスペアディスクに切り替わり冗長性を維持できるディスクアレイシステムが提供されている。しかし、故障に備えたスペアであるという性質上、通常時は利用していないにも関わらずディスクアレイ装置のディスクスロットを占有してしまうため、ディスクアレイ装置が提供可能な最大ディスク容量が低下することになる。また、通常時に利用できないにも関わらず、故障に備えたスペアの物理ディスクを準備するということは、コスト的にも高くなることにもなる。
【0003】
特許文献1は、RAID構成のための予備の物理ディスクの運用を効率的に行うために、予備ディスク用システムユニットを備え、いずれかのサーバから予備ディスクの割当て要請があると、予備ディスク用システムユニットにおいてディスクにパーティションを作成し、予備ディスクを割り当てるシステムを開示する。
【先行技術文献】
【特許文献】
【0004】
【発明の概要】
【発明が解決しようとする課題】
【0005】
特許文献1に開示のシステムはスペアのディスクを効率的に利用できるようになるにしても、やはり、スペアのディスクを準備する必要があることには変わりない。そのため、ディスクを納めるための追加のディスクスロットが必要となると共に、ディスクアレイシステムが提供可能な最大ディスク容量が低下してしまう、という課題がある。
【0006】
上記課題を解決するために、本発明は、ディスクアレイシステム、ディスクアレイシステムのための方法、および、ディスクアレイシステムのためのプログラムを提供することを目的としている。
【課題を解決するための手段】
【0007】
本発明の第1の態様によれば、ディスクアレイシステムは、ディスクアレイにおいてRAID(Redundancy Array of Independent Disk)を構成するシステムであって、複数の論理ディスクが複数の物理ディスクの全容量を利用して構成され、各ファイルシステムがそれぞれの論理ディスクの全容量を用いて構成され、前記複数の物理ディスクのいずれかの物理ディスクが故障した際、故障した前記物理ディスクを含まない論理ディスクに構築されたファイルシステムにおける空き容量を利用して、故障した前記物理ディスクを含む論理ディスクに構築されたファイルシステムのために故障した前記物理ディスクの代替領域を確保する制御手段を備える。
【0008】
また、本発明の第2の態様によれば、ディスクアレイシステムのための方法は、ディスクアレイにおいてRAIDを構成するシステムであって、複数の論理ディスクが複数の物理ディスクの全容量を利用して構成され、各ファイルシステムがそれぞれの論理ディスクの全容量を用いて構成されたシステムに対し、コンピュータにより、前記複数の物理ディスクのいずれかの物理ディスクが故障した際、故障した前記物理ディスクを含まない論理ディスクに構築されたファイルシステムにおける空き容量を求め、前記空き容量を利用して、故障した前記物理ディスクを含む論理ディスクに構築されたファイルシステムのために故障した前記物理ディスクの代替領域を確保する。
【0009】
また、本発明の第3の態様によれば、 ディスクアレイシステムのためのコンピュータプログラムは、ディスクアレイにおいてRAIDを構成するシステムであって、複数の論理ディスクが複数の物理ディスクの全容量を利用して構成され、各ファイルシステムがそれぞれの論理ディスクの全容量を用いて構成されたシステムに対し、前記複数の物理ディスクのいずれかの物理ディスクが故障した際、故障した前記物理ディスクを含まない論理ディスクに構築されたファイルシステムにおける空き容量を求め、前記空き容量を利用して、故障した前記物理ディスクを含む論理ディスクに構築されたファイルシステムのために故障した前記物理ディスクの代替領域を確保することをコンピュータに実行させる。
【発明の効果】
【0010】
本発明によれば、ディスクアレイシステムが提供可能な最大ディスク容量を低下させることのないディスクアレイシステムを提供できる、という効果が得られる。
【図面の簡単な説明】
【0011】
【
図1】本発明の一実施形態におけるディスクアレイシステムの構成を示すブロック図である。
【
図2】本発明の一実施形態における各物理ディスク、論理ディスク、ファイルシステムを管理するためのテーブルの一例を示す図である。
【
図3】本発明の一実施形態におけるディスクアレイシステムにおけるサーバやディスクアレイ制御装置を、プロセッサを含むコンピュータ装置で実現するハードウェア構成の一例を示す図である。
【
図4】本発明の一実施形態におけるディスクアレイ制御装置の入出力制御部が、物理ディスクの故障を検出した際の動作を示すフローチャートである。
【
図5】本発明の一実施形態における代替領域確保要求情報の一例を示す図である。
【
図6】本発明の一実施形態における代替領域確保要求を受信した入出力エージェントの動作を示すフローチャートである。
【
図7】本発明の一実施形態における故障した物理ディスクの代替領域に関する代替領域管理テーブルの一例を示す図である。
【
図8】本発明の一実施形態における代替領域確保要求に対する結果を受信した入出力制御部の動作を示すフローチャートである。
【
図9】本発明の一実施形態における保守員が物理ディスクを動作可能な物理ディスクに交換した後における、入出力制御部の動作を示すフローチャートである。
【
図10】本発明の一実施形態における代替領域削除要求を入出力制御部より受信した入出力エージェントの動作を示すフローチャートである。
【
図11】本発明の一実施形態によるディスクアレイシステムの最小構成図を示す図である。
【発明を実施するための形態】
【0012】
本実施の形態におけるディスクアレイシステムにおいて、ディスク容量を最大限活用するために、複数の物理ディスクで構成される論理ディスクは、RAIDの種類に限らず、物理ディスクの全容量を利用する構成を取る。また、ディスクアレイシステムは、物理ディスクを用いて構成される論理ディスクの全容量を用いて、論理ディスク上にファイルシステムを構成する。即ち、本実施の形態におけるディスクアレイシステムは、物理ディスクの全容量が常に利用されている状態となる。ところで、ファイルシステムの観点で考えた場合、ファイルシステムの使用量はその利用者次第であり、ファイルシステムに実際は十分な空きがある可能性がある。
【0013】
そこで、本実施の形態におけるディスクアレイシステムは、故障した物理ディスクの代替領域にスペアディスクを利用するのではなく、故障物理ディスクを構成に含まない他の論理ディスクに構築されたファイルシステム上に、故障した物理ディスクのための代替領域用のファイルを確保し、この確保した領域を利用する。このようにして、スペアディスクを不要する結果、スペアディスクにディスクスロットを占有させることもなくなり、ディスクアレイシステムを利用するユーザはディスクアレイシステムに搭載される全ての物理ディスクの容量を最大限利用することができるようになる。
【0014】
SAN(Storage Array Network)ストレージ等のディスクアレイ装置がサーバと接続された環境では、サーバがディスクアレイ装置におけるファイルシステムを構築・管理しており、ディスクアレイ装置単体でファイルシステムを解釈できない。そこで、SAN(ストレージ等のディスクアレイ装置がサーバと接続された環境においては、ディスクアレイ装置とサーバのそれぞれに実装され、連携して動作するようにする。なお、以下では、SANストレージ等のディスクアレイ装置とサーバとをまとめて、「ディスクアレイシステム」と呼ぶこともある。
【0015】
故障した物理ディスクの代替領域として確保するファイルは、故障した物理ディスクのサイズと同じサイズになるため非常に大きくなるが、必ずしも1つのファイルで代替領域とする必要は無い。本実施の形態におけるディスクアレイシステムは、故障物理ディスクを構成に含まない論理ディスクに構築されたファイルシステム上に代替領域を配置するという条件を満たせば、複数の論理ディスク上のファイルシステムに分散して代替領域を配置することで、故障した物理ディスクの代替領域とする。
【0016】
なお、本実施の形態におけるディスクアレイシステムは、保守員が故障したディスクを新しいディスクに交換して故障を復旧するまでの一時的な期間中において論理ディスクの冗長性を維持することを目的としており、故障ディスクの容量に相当するファイルをファイルシステム上に確保できない場合は動作しない。
【0017】
以下、本発明の一実施形態によるディスクアレイシステムについて、図面を参照してより詳細に説明する。
図1は同実施形態によるディスクアレイシステムの構成を示すブロック図である。ディスクアレイシステム1は、サーバ101とディスクアレイ装置104とにより構成される。本実施形態では、SANストレージを前提とし、サーバ101とディスクアレイ装置104とがネットワークにより接続される例として説明するが、これに限定されるものではない。サーバ101は、ディスクアレイ装置104の論理ディスクを利用して、論理ディスク上にファイルシステムを構築、管理、利用する。ディスクアレイ装置104は、複数の物理ディスクを用いたRAID構成を備えた装置である。
【0018】
サーバ101にはオペレーティングシステム(OS)102がインストールされる。また、オペレーティングシステム102には、ディスクアレイ装置104にて、故障した物理ディスクのための代替領域の確保や管理を行うための入出力エージェント103が実装される。
【0019】
ディスクアレイ装置104は、ディスクアレイ制御装置105および複数の物理ディスクで構成される。
図1の例は、6つの物理ディスク108~113で構成される例を示している。ディスクアレイ制御装置105には制御ファームウェア(制御FW)106がインストールされる。また、制御ファームウェア106内部には、論理ディスクが故障した際に対応するための入出力制御部107が実装される。
【0020】
ディスクアレイ装置104は、それぞれ2つの物理ディスを利用した3つの論理ディスクを構成する。論理ディスク114は、物理ディスク108と物理ディスク109とを利用したRAID1で構成されている。論理ディスク114は、物理ディスク108と物理ディスク109の全ての容量を使って構成されており、物理ディスクの容量を最大限利用している。同様に、論理ディスク115は物理ディスク110と物理ディスク111とで構成されており、論理ディスク116は物理ディスク112と物理ディスク113とで構成されている。本実施の形態では説明を簡単にするため物理ディスクが6台、論理ディスクが3台の構成としているが、これに限定されるものではなく、さらに多くても構わない。また、RAIDタイプについても物理ディスクを2台で構成するRAID1構成としているが、物理ディスクを3台以上使用するRAID5やRAID6など他のRAIDタイプによる構成としても構わない。
【0021】
各ファイルシステムはオペレーティングシステム102によってそれぞれの論理ディスク上に構築される。なお、ファイルシステムの種類は特に限定しない。
図1の例では、ファイルシステム117は論理ディスク114の全ての容量を使って構築されており、論理ディスク114の容量を最大限利用している。同様に、ファイルシステム118は論理ディスク115上に、ファイルシステム119は論理ディスク116上にそれぞれ構築される。
【0022】
次に、各物理ディスク、論理ディスク、ファイルシステムを管理するためのテーブルの一例を、
図2を用いて説明する。
図2のテーブル301は物理ディスクを管理するためのテーブルの一例である。物理ディスク108~113は、テーブル301に示すように、各容量がいずれも300Gバイトとする。テーブル302は、論理ディスクを管理するためのテーブルの一例である。論理ディスク114~116についてはテーブル302に示すように、全てRAID1であり、各容量はいずれも300Gバイトとする。実際には、管理のためのデータ領域等が必要でわずかに容量が少なくなる場合があるが、本例では理解しやすいようにその点を無視して説明する。なお、テーブル301、302は、ディスクアレイ制御装置105にて管理される。
【0023】
テーブル303はファイルシステムを管理するためのテーブルの一例である。ファイルシステム117~119については、テーブル303に示すように、各容量は300Gバイトとする。ファイルシステムについても実際はわずかに容量が少なくなるが本例では無視して説明する。なお、各ファイルシステム117、118、119は、それぞれ150Gバイト、50Gバイト、110Gバイトがディスクアレイ装置104を利用するユーザによって使用中であるとする。また、各ファイルシステム117、118、119には代替領域作成時マージン容量という設定を設ける。これはファイルシステムに代替領域を作成し、システムの保守者により故障した物理ディスクの交換が行われるまでの間、ファイルシステムにおける残りの容量を使い切ってしまわないようにするために、残しておく空き容量であり、入出力エージェント103で管理される。ここではそれぞれ50Gバイトとする。なお、代替領域作成時マージン容量は、各ファイルシステムにおける使用容量の増加率や、物理ディスクの故障から交換までの想定期間などを加味して、ファイルシステム毎に異なる値としてもよい。なお、
図2に示す各テーブル301~303は、変更があれば、その都度、更新される。
【0024】
図3は、本開示のディスクアレイシステム1におけるサーバ101やディスクアレイ制御装置105を、プロセッサを含むコンピュータ装置2で実現するハードウェア構成の一例を示す図である。
図3に示されるように、コンピュータ装置2は、CPU(Central Processing Unit)201、ROM(Read Only Memory)202、RAM(Random Access Memory)203等のメモリ、プログラム204を格納するハードディスク等の記憶装置205を含む。さらに、コンピュータ装置2は、通信ネットワーク213への接続用の通信I/F(Interface)208、周辺機器214に対してデータの入出力を行う入出力インタフェース211を含む。また、コンピュータ装置2は、バス212を介して、コンピュータ装置2を構成する各デバイスと、コンピュータ装置2内部または外部に設けられる入力装置209および出力装置210とを接続する。
【0025】
CPU201は、オペレーティングシステムを動作させてサーバ101やディスクアレイ制御装置105を実現するコンピュータ装置2の全体を制御する。また、CPU201は、例えばドライブ装置207などに装着された記録媒体206からメモリにプログラムやデータを読み出す。
【0026】
記録媒体206は、例えば光ディスク、フレキシブルディスク、磁気光ディスク、外付けハードディスク、または半導体メモリ等である。一部の記録媒体は、不揮発性記憶装置であり、そこにプログラムを記録する。また、プログラムは、通信網に接続されている図示しない外部コンピュータからダウンロードされてもよい。
【0027】
入力装置209は、例えば、マウスやキーボード、内蔵のキーボタンなどで実現され、入力操作に用いられる。入力装置209は、マウスやキーボード、内蔵のキーボタンに限らず、例えばタッチパネルでもよい。出力装置210は、例えばディスプレイで実現され、出力を確認するために用いられる。
【0028】
なお、本開示のサーバ101やディスクアレイ制御装置105は、
図3に示す全ての構成を備える必要はない。例えば、サーバ101やディスクアレイ制御装置105において、ドライブ装置207がその機能として必要でなければ、省略され得る。また、
図3において、入出力エージェント103や入出力制御部107は、プロセッサ(CPU)201により実行可能なコードにより実現され、実行時にRAMにロードされる。さらに、実行可能なコードを変更することで入出力エージェント103や入出力制御部107の機能変更が可能である。
【0029】
以下、ディスクアレイシステム1の動作について
図4から
図9を用いて説明する。また、以下の説では、
図1の物理ディスク108が故障した場合を例として、その動作を説明する。
図4は、ディスクアレイ制御装置105の入出力制御部107が、物理ディスクの故障を検出した際の動作を示すフローチャートである。
図4に示す動作は、入出力制御部107が物理ディスク108の故障を検出することで開始する。まず、入出力制御部107は、故障した物理ディスク108を論理的に切り離すための処理を行う(S11)。続いて、入出力制御部107は、故障した物理ディスク108を構成要素とする論理ディスク114の状況を確認する(S12)。具体的には入出力制御部107は、
図2のテーブル302より、故障した物理ディスク108を構成要素とする論理ディスク114のRAIDタイプがRAID1の構成であることを確認する。入出力制御部107は、RAID1の論理ディスク114を構成する別の物理ディスクである物理ディスク109が正常であるかを確認する。物理ディスク109が正常である場合(S12:Yes)、入出力制御部107は、論理ディスク114は継続動作が可能と判断し、ステップS14に進む。一方、物理ディスク109が正常でない場合(S12:No)、入出力制御部107は、論理ディスク114は継続動作が不可能と判断し、論理ディスク114の論理的な切り離しのための処理を行い(S13)、論理ディスク114は使用不可能として処理を終了する。
【0030】
論理ディスク114の継続動作が可能であれば、入出力制御部107は、代替領域確保要求情報の作成を実施する(S14)。代替領域確保要求情報の一例を
図5に示す。代替領域確保要求情報501において、物理ディスク名は、故障した物理ディスクの名称である。ここでは物理ディスク108とする。なお、物理ディスク名は、ディスクアレイシステム1において、物理ディスクを一意に特定する名称ないしは値とする。物理ディスク容量は故障した物理ディスクの容量である。入出力制御部107は、ディスクアレイ装置104が管理する
図2のテーブル301より、故障した物理ディスク108の容量を「300Gバイト」と特定し、代替領域確保要求情報501に記録する。論理ディスク名は故障した物理ディスクを含めて構成された論理ディスクの名称である。これは、サーバ101の入出力エージェントにおいて、故障した物理ディスクの代替領域となる代替えディスクの確保先から除外するために必要となる情報である。ここでは、論理ディスク114となる。代替領域確保要求情報501の作成が完了した後、入出力制御部107は、入出力エージェント103に対して、作成した情報を用いて代替領域確保要求を発行する(S14)。
【0031】
続いて、代替領域確保要求を受信した入出力エージェント103の動作につい
図6を用いて説明する。
図6に示す動作は、入出力エージェント103が代替領域確保要求を受け取ることにより開始される。まず、入出力エージェント103は、受け取った代替領域確保要求より対象となる論理ディスクを特定すると共に、確保すべき容量(例では300Gバイト)の確認を行う(S21)。続いて、入出力エージェント103は、サーバ101がマウント済みである全てのファイルシステム117~119に関する状況を、
図2のテーブル303等を用いて確認する(S22)。
【0032】
ステップS21、22の確認の結果に応じて、入出力エージェント103は、故障した物理ディスクを含んでいた論理ディスク以外の論理ディスクであって、それら論理ディスクに構築されたファイルステムを用いて、故障した物理ディスクの代替領域の確保が可能か否かを判断する(S23)。確保する容量は、代替領域確保要求情報501の物理ディスク容量となるため300Gバイトである。確保先のファイルシステムは代替領域確保要求情報501で示される論理ディスクを除いた論理ディスク上のファイルシステムが候補となる。従って、今回の例では、論理ディスク114上に構築されたファイルシステム117以外のファイルシステム118、119となる。ステップS23での故障した物理ディスクの代替領域の確保が可能か否かを判断するために、まず、入出力エージェント103は、オペレーティングシステム102に問い合わせを行い、論理ディスク114以外の論理ディスク115~116上に構築されたファイルシステムがファイルシステム118~119であり、利用可能であるとの結果を受ける。続いて、入出力エージェント103は、管理するテーブル303を確認する。すなわち、入出力エージェント103は、ファイルシステム118については空き容量は250Gバイトであり、代替領域作成時マージン容量は50Gバイトであることを確認する。そして、入出力エージェント103は、ファイルシステム118からは50Gバイトを残した200Gバイトを、代替領域として確保する。この時点で代替領域としてさらに100Gバイト(=300G-200G)が必要であるため、続いて、入出力エージェント103は、他のファイルシステムであるファイルシステム119について確認する。ファイルシステム119は空き容量は200Gバイトであり、代替領域作成時マージン容量は50Gバイトであることから、残りの100Gバイトを確保できる。この時点で、入出力エージェント103は、必要とされる300Gバイトの確保は可能であると判断する。
【0033】
ステップS23での判断において、代替領域の確保ができない、すなわち、容量不足と判断した場合(S23:No)、入出力エージェント103は、確保失敗となった旨を入出力制御部107に通知し、処理を終了する。
【0034】
一方、確保に成功すると判断した場合(S23:Yes)、入出力エージェント103は、
図7に示すような、故障した物理ディスク108の代替領域に関する代替領域管理テーブル701を作成する(S24)。入出力エージェント103は、代替領域管理テーブル701において、ファイルシステム118に代替領域として200Gバイト確保し、ファイルシステム119に代替領域として100G確保したことを記録するとともに、それぞれのファイルシステム上において、その容量の空ファイルを作成する処理を行う。故障した物理ディスク108の代替領域のイメージは
図7の702のようになる。この出の例では、先頭から200Gバイトまでをファイルシステム118上に作成したファイルが受け持ち、201Gバイトから300Gバイトまでをファイルシステム119上に作成したファイルが受け持つことになる。最後に、入出力エージェント103は、代替領域の確保に成功した旨を入出力制御部107に通知し、処理を終了する。
【0035】
続いて、代替領域確保要求に対する結果を受信した入出力制御部107の動作について、
図8を用いて説明する。
図8に示す動作は、入出力制御部107が代替領域確保要求に対する結果を受信することにより開始される。入出力制御部107は、受信した結果が成功か失敗かを判定する(S31)。失敗である場合(S31:No)、入出力制御部107は更なる処理をせず、処理を終了する。成功である場合(S31:Yes)、入出力制御部107は、代替領域使用中リストの作成・更新を行う(S32)。ここで、入出力制御部107は、代替領域使用中リストに物理ディスク108を追加する処理を行う。なお、代替領域使用中リストとは代替領域が有効となっている故障物理ディスクの一覧を示すリストである。その後、入出力制御部107は、故障した物理ディスクの代わりに、確保された代替領域を利用した論理ディスク114のリビルドを実行する(S33)。ここで、リビルドは、論理ディスク114を構成する故障していない物理ディスク109の内容を代替領域へコピーする処理となる。なお、代替領域は、ファイルシステム上に確保され、ファイルシステムはサーバ101により管理されることから、入出力制御部107は、リビルドのための代替領域へのコピーの依頼をサーバ101内の入出力エージェント103に対して行うことになる。リビルドが完了することにより、論理ディスク114は冗長状態に復旧する。これ以降、入出力制御部107は、代替領域使用中リストを参照することで、RAID構成を保つための物理ディスク108に対する入出力要求を物理ディスク108ではなく、入出力エージェント103に発行するようになる。入出力エージェント103、入出力制御部107からの読み書き要求を受けると、代替領域管理テーブル701を参照して該当するファイルに対しての読み書きを行う。
【0036】
物理ディスク108が故障した状態において、保守員が故障した物理ディスクを正常な物理ディスクに交換した後における、入出力制御部107の動作について、
図9を用いて説明する。
図9に示すフローチャートの動作は、物理ディスク108を正常な物理ディスクへの交換が完了することにより開始される。入出力制御部107は、論理ディスク114を構成する故障のない物理ディスク109の内容を、交換が行われた物理ディスク108へコピーすることにより、リビルドを実行する(S41)。リビルドが完了の後、入出力制御部107は、代替領域使用中リストから物理ディスク108を削除するとともに、入出力エージェント103に代替領域削除要求を通知し(S42)、処理を終了する。
【0037】
代替領域削除要求を入出力制御部107より受信した入出力エージェント103の動作について
図10を用いて説明する。
図10に示すフローチャートは、入出力エージェント103が代替領域削除要求を受信することにより開始される。入出力エージェント103は、代替領域削除要求に基づき、代替領域管理テーブル701を参照して、代替領域として確保したファイルシステム118,119上のファイルを削除する。さらに、入出力エージェント103は、代替領域管理テーブルから物理ディスク108に関するテーブルを削除して(S51)、処理を終了する。
【0038】
なお、物理ディスク108を代替領域で代替している時に、さらに物理ディスク109が故障した場合、上記で説明した動作と同様の動作で物理ディスク109の代替領域を確保することになる。ただし、入出力エージェント103は物理ディスク108の代替領域として使用しているファイルシステムと重複しないファイルシステムを選択し、選択したファイルシステム上に物理ディスク109の代替領域を確保する。本例ではファイルシステム118~119は既に使用しているため、物理ディスク109の代替領域の確保できないが、他にファイルシステムがある場合はそちらから物理ディスク109のための代替領域の確保を試みる。このように、論理ディスクを構成する複数の物理ディスクが代替領域に切り替わる場合も、ディスクアレイシステム1は、代替領域の確保ができる限り、問題なく動作する。なお、故障した物理ディスクを新たな物理ディスクに交換した際のリビルドのコピー元は、同一論理ディスク内の正常な物理ディスクではなく代替領域からとなる場合もある。
【0039】
以上の通り、ディスクアレイシステム1は、スペアのディスクを用意しなくても、ディスク故障が発生した際、保守員が故障ディスクを交換するまでの期間、ストレージ装置をほかに用意する必要も無く、冗長を維持し得る。
【0040】
また、スペアのディスクのために、ディスクアレイ装置104内のディスクスロットが占有されることが無いため、ディスクスロットを通常用ディスクに割り当てることが可能となり、ディスクアレイ装置104で提供可能な最大ディスク容量を増やすことができる。
【0041】
加えて、代替領域としてキャッシュメモリを利用するようなシステムと比べた場合、代替領域としてキャッシュメモリは利用しないため、故障したディスクと関係無い論理ディスクへの性能低下も発生しない。
【0042】
なお、サーバ101が認識可能なストレージであれば、それがディスクアレイ装置104以外の別ストレージであっても代替領域として利用することが可能である。
【0043】
図11は、本発明の一実施形態によるディスクアレイシステム1の最小構成図を示す図である。ディスクアレイシステム1は、制御部11を備える。ディスクアレイシステム1は、RAIDを構成するシステムであって、制御部11は、物理ディスクが故障した際、前記物理ディスクを含まない論理ディスクに構築されたファイルシステムにおける空き容量を利用して、前記ファイルシステムにおいて故障した前記物理ディスクの代替領域を確保する処理を行う。
【0044】
なお、
図1における処理部の機能を実現するためのプログラムをコンピュータ読み取り可能な記録媒体に記録して、この記録媒体に記録されたプログラムをコンピュータシステムに読み込ませ、実行することにより、ディスクアレイシステム1において故障したディスクのための代替領域の確保を行ってもよい。なお、ここでいう「コンピュータシステム」とは、OSや周辺機器等のハードウェアを含むものとする。また、「コンピュータシステム」は、ホームページ提供環境(あるいは表示環境)を備えたWWWシステムも含むものとする。また、「コンピュータ読み取り可能な記録媒体」とは、フレキシブルディスク、光磁気ディスク、ROM、CD-ROM等の可搬媒体、コンピュータシステムに内蔵されるハードディスク等の記憶装置のことをいう。さらに「コンピュータ読み取り可能な記録媒体」とは、インターネット等のネットワークや電話回線等の通信回線を介してプログラムが送信された場合のサーバやクライアントとなるコンピュータシステム内部の揮発性メモリ(RAM)のように、一定時間プログラムを保持しているものも含むものとする。
【0045】
また、上記プログラムは、このプログラムを記憶装置等に格納したコンピュータシステムから、伝送媒体を介して、あるいは、伝送媒体中の伝送波により他のコンピュータシステムに伝送されてもよい。ここで、プログラムを伝送する「伝送媒体」は、インターネット等のネットワーク(通信網)や電話回線等の通信回線(通信線)のように情報を伝送する機能を有する媒体のことをいう。また、上記プログラムは、前述した機能の一部を実現するためのものであっても良い。さらに、前述した機能をコンピュータシステムにすでに記録されているプログラムとの組み合わせで実現できるもの、いわゆる差分ファイル(差分プログラム)であっても良い。
【符号の説明】
【0046】
1 ディスクアレイシステム
101 サーバ
102 オペレーティングシステム
103 入出力エージェント
104 ディスクアレイ装置
105 ディスクアレイ制御装置
106 制御ファームウェア
107 入出力制御部
108~113 物理ディスク
114~116 論理ディスク
117~119 ファイルシステム