JP4685911B2 - Lu設定機能を備えたストレージシステム - Google Patents

Lu設定機能を備えたストレージシステム Download PDF

Info

Publication number
JP4685911B2
JP4685911B2 JP2008256313A JP2008256313A JP4685911B2 JP 4685911 B2 JP4685911 B2 JP 4685911B2 JP 2008256313 A JP2008256313 A JP 2008256313A JP 2008256313 A JP2008256313 A JP 2008256313A JP 4685911 B2 JP4685911 B2 JP 4685911B2
Authority
JP
Japan
Prior art keywords
capacity
type
information
lun
integrated
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
Application number
JP2008256313A
Other languages
English (en)
Other versions
JP2010086393A (ja
Inventor
孝輔 小見門
佑光 松井
Current Assignee (The listed assignees may be inaccurate. Google has not performed a legal analysis and makes no representation or warranty as to the accuracy of the list.)
Hitachi Ltd
Original Assignee
Hitachi Ltd
Priority date (The priority date 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 date listed.)
Filing date
Publication date
Application filed by Hitachi Ltd filed Critical Hitachi Ltd
Priority to JP2008256313A priority Critical patent/JP4685911B2/ja
Priority to US12/276,520 priority patent/US8713279B2/en
Publication of JP2010086393A publication Critical patent/JP2010086393A/ja
Application granted granted Critical
Publication of JP4685911B2 publication Critical patent/JP4685911B2/ja
Expired - Fee Related legal-status Critical Current
Anticipated expiration legal-status Critical

Links

Images

Classifications

    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F3/00Input arrangements for transferring data to be processed into a form capable of being handled by the computer; Output arrangements for transferring data from processing unit to output unit, e.g. interface arrangements
    • G06F3/06Digital input from, or digital output to, record carriers, e.g. RAID, emulated record carriers or networked record carriers
    • G06F3/0601Interfaces specially adapted for storage systems
    • G06F3/0628Interfaces specially adapted for storage systems making use of a particular technique
    • G06F3/0638Organizing or formatting or addressing of data
    • G06F3/0644Management of space entities, e.g. partitions, extents, pools
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F3/00Input arrangements for transferring data to be processed into a form capable of being handled by the computer; Output arrangements for transferring data from processing unit to output unit, e.g. interface arrangements
    • G06F3/06Digital input from, or digital output to, record carriers, e.g. RAID, emulated record carriers or networked record carriers
    • G06F3/0601Interfaces specially adapted for storage systems
    • G06F3/0602Interfaces specially adapted for storage systems specifically adapted to achieve a particular effect
    • G06F3/0604Improving or facilitating administration, e.g. storage management
    • G06F3/0605Improving or facilitating administration, e.g. storage management by facilitating the interaction with a user or administrator
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F3/00Input arrangements for transferring data to be processed into a form capable of being handled by the computer; Output arrangements for transferring data from processing unit to output unit, e.g. interface arrangements
    • G06F3/06Digital input from, or digital output to, record carriers, e.g. RAID, emulated record carriers or networked record carriers
    • G06F3/0601Interfaces specially adapted for storage systems
    • G06F3/0628Interfaces specially adapted for storage systems making use of a particular technique
    • G06F3/0629Configuration or reconfiguration of storage systems
    • G06F3/0632Configuration or reconfiguration of storage systems by initialisation or re-initialisation of storage systems
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F3/00Input arrangements for transferring data to be processed into a form capable of being handled by the computer; Output arrangements for transferring data from processing unit to output unit, e.g. interface arrangements
    • G06F3/06Digital input from, or digital output to, record carriers, e.g. RAID, emulated record carriers or networked record carriers
    • G06F3/0601Interfaces specially adapted for storage systems
    • G06F3/0668Interfaces specially adapted for storage systems adopting a particular infrastructure
    • G06F3/0671In-line storage system
    • G06F3/0683Plurality of storage devices
    • G06F3/0689Disk arrays, e.g. RAID, JBOD

Landscapes

  • Engineering & Computer Science (AREA)
  • Theoretical Computer Science (AREA)
  • Human Computer Interaction (AREA)
  • Physics & Mathematics (AREA)
  • General Engineering & Computer Science (AREA)
  • General Physics & Mathematics (AREA)
  • Information Retrieval, Db Structures And Fs Structures Therefor (AREA)

Description

本発明は、複数の物理記憶装置を備えたストレージシステムについてのLU(Logical Unit)の設定に関する。
LUの設定の一例として、LUの容量の拡張がある。LUの容量拡張の方法としては、複数のLUを統合する方法がある(例えば特許文献1)。
LUの統合のためには、一般に、管理者が、コンソールを操作して、事前に、統合するLUを作成するための処理を行っておき、その後で、拡張したいLUのLUN(Logical Unit Number)と、そのLUに統合するLU(作成済みのLU)のLUNとを入力する。Uの作成では、例えば、管理者が、コンソールを利用して、ストレージシステムにおける空きの記憶空間部分に関する情報を参照し、その空きの記憶空間部分における所望の空間部分を指定する。これにより、その指定された空間部分がLUとして定義される。
特開2002−236560号公報
しかし、上述した作業は、管理者にとって煩わしい作業である。特に、統合するLUの数が2以上である等の場合には、上述の作業は一層煩わしい。LU作成処理において2以上のLUに関する情報を入力する必要があるためである。
以上の問題点は、LUの容量拡張以外の他のLU設定についても有り得る問題である。
そこで、本発明の目的は、管理者の作業負担を軽減したLU設定技術を提供することにある。
ストレージシステムが、管理者に最低限の情報のみを入力してもらい、その情報を含んだLU設定コマンドを受け付けたら、そのLU設定コマンドに応答して、LUと物理記憶装置に関する構成管理情報を用いて内部的に処理を完了し、処理結果を返す。構成管理情報は、LUと物理記憶装置に関する情報であって、複数の物理記憶装置の記憶空間における空き範囲及び空き容量を表す情報と、その記憶空間に基づくLUに関する情報とを含んだ情報である。空き範囲とは、LUとして使用されていない空間である空き空間が占めるアドレス範囲である。空き容量とは、空き空間の容量である。
以下、図面を参照して、本発明の幾つかの一実施形態を説明する。なお、以下の説明では、説明が冗長になることを防ぐために、適宜、コンピュータプログラムを主語にして処理を説明するが、実際には、その処理は、コンピュータプログラムを実行するプロセッサによって行われる。
図1は、本発明の一実施形態に係る計算機システムの構成例を示す。
SAN(Storage Area Network)102に、ホスト計算機101及びストレージシステム105が接続されている。LAN(Local Area Network)104に、管理計算機103及びストレージシステム105が接続されている。SAN102及びLAN104のうちの少なくとも一方として、他種のネットワークが採用されても良い。
ホスト計算機101及び管理計算機103は、例えば、CPU(Central Processing Network)やメモリ等の情報処理資源を備えた計算機であり、例えば、パーソナルコンピュータ、ワークステーション、メインフレーム等である。本実施形態では、ホスト計算機101は、1つのみ記載したが、それより多くても差し支えない。
ホスト計算機101は、ポートIDやLUNを指定したI/O(Input/Output)コマンドをストレージシステム105に送信する。
管理計算機103は、コンソール106(入力装置及び表示装置)や、ストレージシステム105に対するLU設定などに利用される管理ソフトウェア107を有する。管理ソフトウェア107は、管理計算機103のCPUで実行されるコンピュータプログラムであり、管理者がコンソール106に入力した情報を受け付けたり、コンソール106に情報を表示したりする。管理ソフトウェア106は、管理計算機103に代えてホスト計算機101に備えられても良い。
ストレージシステム105は、コントローラ111とHDD群112とを備える。
HDD群112は、複数のRAID(Redundant Array of Independent (or Inexpensive) Disks)グループ151を有する。RAIDグループ(以下、RG)151は、複数のHDD161で構成されており、所定のRAIDレベルに応じてデータを記憶する。RAIDグループ151の記憶空間を基に、論理記憶装置としてのLU(Logical Unit)171が形成される。HDD161に代えて、フラッシュメモリなど他種の物理記憶装置が採用されても良い。
コントローラ111は、ホストI/F121と、メモリ125と、転送LSI(Large Scale Integration)122と、CPU124と、ディスクI/F123と、LAN I/F126とを有する。
ホストI/F125は、ホスト101との通信インタフェース装置であり、例えば複数のポートを有する。ホストI/F125は、ホスト計算機101からI/Oコマンドを受け付ける。I/Oコマンドがライトコマンドの場合、ライト対象のデータが、ホストI/F125を通じて、メモリ125のキャッシュ領域133に格納される。一方、I/Oコマンドがリードコマンドの場合、リード対象のデータが、キャッシュ領域133から読み出され、ホストI/F125を通じて、ホスト計算機101に送信される。
メモリ125は、ホスト計算機101とLU171との間でやり取りされるデータを一時的に記憶する前述のキャッシュ領域133を有する。また、メモリ125は、CPU124に実行されるコンピュータプログラムや、CPU124に参照されるテーブルを記憶する。テーブルとしては、例えば、RGテーブル131と、LUテーブル132とがある。また、コンピュータプログラムとしては、例えば、コマンド診断部141と、構成制御部142とがある。コマンド診断部141は、管理ソフトウェア107に対するインタフェースとしての機能を有し、管理ソフトウェア107からコマンドを受け付けたり、そのコマンドに応答して構成制御部142に指示を出したりする。構成制御部142は、コマンド診断部141からの指示に応答した処理を実行し、処理の結果をコマンド診断部141に返す。これらのコンピュータプログラム及びテーブルについては後に詳細に説明する。
転送LSI103は、コントローラ111内での各要素間のやり取りを制御する。
ディスクI/F123は、HDD161に対する通信インタフェース装置である。ホストI/F125で受けたI/Oコマンドがライトコマンドの場合、ライト対象のデータが、キャッシュ領域133から読み出され、ディスクI/F125を通じて、そのコマンドで指定されているLU(そのLUの基になっているHDD161)に書き込まれる。一方、ホストI/F125で受けたI/Oコマンドがリードコマンドの場合、リード対象のデータが、そのコマンドで指定されているLU(そのLUの基になっているHDD161)から読み出され、読み出されたデータがキャッシュ領域133に書き込まれる。
図2は、RGテーブル131の構成例を示す。
RGテーブル131には、各RG151に関する情報が記録される。具体的には、例えば、RGテーブル131には、RG151毎に、RG#、HDD#、アドレス範囲情報、空き範囲情報及び空き容量情報が記録される。以下、一つのRG(図2の説明で「対象RG」と言う)を例に採り、各種の情報を説明する。
RG#は、対象RGの識別番号である。
HDD#は、対象RGを構成するHDD161の識別番号である。
アドレス範囲情報は、対象RGの記憶空間のアドレス範囲(先頭LBA(Logical Block Address)から終端LBA)を表す情報である。
空き範囲情報は、対象RGのアドレス範囲における各空き空間部分のアドレス範囲を表す情報である。「空き空間部分」とは、対象RGの記憶空間における、LUとして使用されていない記憶空間部分である。
空き容量情報は、対象RGの空き容量を表す情報である。「空き容量」とは、対象RGにおける一以上の空き空間部分のトータル容量である。
図3は、LUテーブル132の構成例を示す。
LUテーブル132には、各LU171に関する情報が記録される。具体的には、例えば、LUテーブル132には、LU171毎に、ポートID、外部LUN、内部LUN、構成LU数、ステータス情報、容量情報、種別情報、親LUN、開始LBA、更新ブロック情報、RG#、RGアドレス情報が記録される。以下、一つのLU(図3の説明で「対象LU」と言う)を例に採り、各種の情報を説明する。
ポートIDは、対象LUが関連付けられているポート(ホストI/Fが備えるポート)の識別子である。
外部LUNは、対象LUに割り当てられているLUNであって、ホスト計算機101に提供されるLUNである。外部LUNとしては、例えば、統合LUNとホストLUNとの2種類がある。統合LUNは、統合LUに割り当てられた外部LUNである(統合LUとは、複数のLUの集合体である)。一方、ホストLUNは、LUに割り当てられた外部LUNである。複数のLUで統合LUが形成された場合、統合LUNが外部LUNとして採用され、一方、LUについては、ホストLUNが外部LUNとして採用される。ホスト計算機101からのI/Oコマンドで指定されているLUNは、外部LUNである。
内部LUNは、対象LUに割り当てられているLUNであって、ホスト計算機101に非提供のLUNである。
構成LU数は、対象LUが統合LUの構成要素の場合に設定される情報であって、その統合LUを構成するLUの数を表す情報である。
ステータス情報は、対象LUに関するステータスを表す情報である。ステータス情報としては、例えば、下記(1)乃至(5)のうちの少なくとも一つ、
(1)使用中:対象LUがホスト計算機101からアクセスされ得ることを意味するステータス、
(2)未使用:対象LUがホスト計算機101からアクセスされ得えないことを意味するステータス、
(3)作成中:対象LUの作成中を意味するステータス、
(4)拡張中:対象LUを有する統合LUの作成中であることを意味するステータス、及び、
(5)縮小中:対象LUを有する統合LUの縮小中であることを意味するステータス
がある。
容量情報は、対象LUの記憶容量を表す情報である。ちなみに、統合LUの記憶容量は、統合LUを構成する複数のLUの記憶容量の合計である。
種別情報は、対象LUの種別を表す情報である。種別情報としては、例えば、“通常”(対象LUが統合LUの非構成要素であることを意味する種別)、“親”(統合LUにおいて対象LUがメインの要素であることを意味する種別)、及び“子”(統合LUにおいて対象LUが非メインの要素であることを意味する種別)がある。以下、種別情報“親”のLUを「親LU」と言い、種別情報“子”のLUを「子LU」と言うことがある。
親LUNは、対象LUを含んだ統合LUにおける親LUのLUNである。もし、対象LUが親LUであれば、親LUNとして有意な値は設定されない。
開始LBAは、対象LUの先頭LBAであって、ホスト計算機101からのI/Oコマンドで指定され得るLBAである。
更新ブロック情報は、ステータス情報が“未使用”ではない対象LUにおける更新ブロック(ホスト計算機101からライトされたデータを記憶しているブロック)のアドレスを表す情報である。
RG#は、対象LUの基になっているRGの識別番号である。
RGアドレス情報は、対象LUの基になっているRGの記憶空間における、対象LUが占める空間部分のLBAを表す情報である。この情報は、前述した開始LBAと必ずしも一致しない。具体的には、例えば、対象LUが、ホスト計算機101から認識される統合LUの構成要素である場合、先頭LBAは、統合LUにおけるアドレスであるのに対し、RGアドレス情報は、RGの記憶空間でのアドレスを表す情報である。
本実施形態で行われるLU設定として、LU作成、LU拡張及びLU縮小の3種類がある。以下、各種のLU設定を説明する。
図4は、LU作成の処理フローを示す。
管理者が、コンソール106を操作して、新たに作成されるLUに割り当てたい外部LUNと、そのLUの容量(以下、図4の説明において「指定容量」と言う)を表す情報とを入力する。
管理ソフトウェア107が、その入力された外部LUNと指定容量を表す情報とを含んだLU作成コマンドを作成し、作成したLU作成コマンドをストレージシステム105に送信する(S401)。そのLU作成コマンドに応答して、ストレージシステム105において、下記S402〜S408の処理が行われる。
S402で、コマンド診断部141は、空き範囲の検索指示を構成制御部142に出す。その検索指示には、パラメータ値として、例えば、指定容量を表す値が含まれる。
S403で、構成制御部142は、検索指示に応答して、空き範囲の検索を行い、検索の結果をコマンド診断部403に回答する。空き範囲の検索では、その検索指示で指定されている指定容量分の空き範囲(一以上の空き空間部分)が、RGテーブル131から検索される。検索の結果としての情報には、検索された空き範囲のアドレス情報が含まれる。
S404で、コマンド診断部141は、検索結果情報を参照し、指定容量分の空き範囲があるか否かを判断する。S404の判断の結果が否定的の場合(S404:NO)、コマンド診断部141は、NGを管理ソフトウェア107に返す。管路ソフトウェア107は、NGを表す情報をコンソール106に表示する。
S404の判断の結果が肯定的の場合(S404:YES)、S405で、コマンド診断部141は、LU定義指示を構成制御部142に送信する。そのLU定義指示には、パラメータ値として、指定する空き範囲を表す情報(検索結果情報に含まれていた、空き範囲のアドレス情報)と、コンソール106から受けた外部LUNとが含まれる。
S406で、構成制御部142は、LU定義指示に応答して、LU定義処理を行う。LU定義処理では、構成制御部142は、指定空き範囲を新規にLUとして定義する。そのLUには、管理者から入力された外部LUNが割り当てられている。この処理については、後に図5乃至図11Bを参照して説明するLU拡張処理の説明で詳細に述べる。
S407で、構成制御部142は、LU定義処理の完了をコマンド診断部141に通知する。
S408で、コマンド診断部141は、LU作成コマンドに応答した処理の完了を管理ソフトウェア107に通知する。管理ソフトウェア107は、その処理の完了を表す情報をコンソール106に表示する。
以上のLU作成の処理フローによれば、管理者が外部LUN及び指定容量を入力しさえすれば、管理者が空き範囲を選択しなくても、指定容量を有しその外部LUNが割り当てられたLUが新たに作成される。
図5は、LU拡張の処理フローを示す。
管理者が、コンソール106を操作して、拡張対象LU(親LUとしたいLU)に割り当てられているLUNと、拡張後のLUに関する容量を表す情報とを入力する。以下、図5乃至図11Bの説明において、入力されたLUNを、「指定LUN」と言い、入力された情報が表す容量を「指定拡張容量」と言う。指定LUNは、外部LUNと内部LUNのどちらであっても良い。指定拡張容量は、拡張後の記憶容量(つまり、この処理フローの完了後における統合LUの記憶容量)であっても良いし、拡張対象LUの容量(つまり拡張前の容量)に追加される容量であっても良い。本実施形態では、指定拡張容量は、追加される容量とする。
管理ソフトウェア107が、指定LUNと指定拡張容量を表す情報とを含んだLU拡張コマンドを作成し、作成したLU拡張コマンドをストレージシステム105に送信する(S501)。そのLU拡張コマンドに応答して、ストレージシステム105において、下記S502〜S512の処理が行われる。
S502で、コマンド診断部141は、空き範囲の検索指示を構成制御部142に出す。その検索指示には、パラメータ値として、例えば、指定拡張容量を表す値が含まれる。
S503で、構成制御部142は、検索指示に応答して、空き範囲の検索を行い、検索の結果をコマンド診断部403に回答する。空き範囲の検索では、その検索指示で指定されている指定拡張容量分の空き範囲が、RGテーブル131から検索される。空き範囲は、一又は複数の空き空間部分(以下、図5乃至図11Bの説明において「対象空き部分」と言う)で構成されている。検索の結果としての情報には、検索された空き範囲のアドレス情報が含まれる。空き範囲が複数の対象空き部分で構成されている場合には、各対象空き部分に対応したアドレス情報が、検索結果情報に含まれている。
S504で、コマンド診断部141は、検索結果情報を参照し、指定拡張容量分の空き範囲があるか否かを判断する。S504の判断の結果が否定的の場合(S504:NO)、コマンド診断部141は、NGを管理ソフトウェア107に返す。管路ソフトウェア107は、NGを表す情報をコンソール106に表示する。
S504の判断の結果が肯定的の場合(S504:YES)、S505で、コマンド診断部141は、LU定義指示を構成制御部142に送信する。そのLU定義指示には、パラメータ値として、指定する空き空間部分を表す情報(検索結果情報に含まれていた、空き空間部分のアドレス情報)が含まれる。
S506で、構成制御部142は、LU定義指示に応答して、LU定義処理を行う。LU定義処理では、構成制御部142は、指定空き空間部分を新規に子LUとして定義する。この処理については、後に図6A乃至図11Bを参照して説明する。
S507で、構成制御部142は、LU定義処理の完了をコマンド診断部141に通知する。完了の通知の際、S506のLU定義処理で付与されたLUN(定義されたLUに割り当てられた内部LUN)が、コマンド診断部141に渡される。コマンド診断部141は、メモリ125に、渡されたLUNを蓄積する。
以上のS505乃至S507の処理は、全ての対象空き部分について行われるまで、繰り返される。全ての対象空き部分についてS505乃至S507が実行された後に(すなわち、全ての対象空き部分がそれぞれLUとして定義された後に)、S508が実行される。
S508で、コマンド診断部141は、LU拡張指示を構成制御部142に送信する。そのLU拡張指示には、パラメータ値として、指定LUNと、メモリ125に蓄積されている一以上の未処理のLUNのうちの一つのLUN(以下、図5乃至図11Bの説明において「追加LUN」と言う)とが含まれる。
S509で、構成制御部142は、LU拡張指示に応答して、LU拡張処理を行う。LU拡張処理では、構成制御部142は、指定LUNに対応した親LUに、追加LUNに対応したLUを統合する処理を行う。この処理については、後に6A乃至図11Bを参照して説明する。
S510で、構成制御部142は、LU拡張処理の完了をコマンド診断部141に通知する。
以上のS508乃至S510の処理は、親LUに統合される全ての対象LUについて行われるまで、繰り返される。
全ての対象LUについてS508乃至S510が実行された後に(すなわち、全ての対象LUが、指定LUNに対応した親LUに統合された後)、S511で、コマンド診断部141が、フォーマット処理を実行する。フォーマット処理では、全ての子LUにフォーマットが施される。
フォーマット処理の完了後、S512で、コマンド診断部141が、LU拡張コマンドに応答して実行された処理の完了を、管理ソフトウェア107に通知する。管理ソフトウェア107は、その処理の完了を表す情報をコンソール106に表示する。
以上のLU拡張の処理フローによれば、管理者が、指定LUNと指定拡張容量とを入力しさえすれば、管理者が、事前に子LUを作成する作業や、複数のLUの中から子LUとするLUを選択する作業等の特段の作業を行わなくても、指定拡張容量分の容量が拡張されたLU(統合LU)が新たに作成される。
以下、LU拡張の処理フローにおけるLU定義処理及びLU拡張処理を詳細に説明する。なお、以下の説明では、RG番号がnであるRAIDグループを「RG#n」と表す(nは、00、01、…のいずれか)。
LU定義処理の開始前では、例えば、図6Aに示すように、指定LUNに対応したLU(指定LU)が、RG#03に定義されている。RG#03には、30G(ギガバイト)の空き空間(空き範囲4000−6999)601ある。また、図6Bに示すように、RG#04に、50Gの空き空間(空き範囲2000−6999)603がある。このため、LG定義処理の開始前では、RGテーブル131は、図7Aに示す通りであり、LUテーブル132は、図7Bに示す通りである。
ここで、指定拡張容量(親LUの容量20Gに追加される容量)が、50Gであるとする。
LU定義処理が開始されると、図8Bに示すように、親LU(内部LUN:01)に対応したレコード(LUテーブル132におけるレコード)1321のステータス情報が、“拡張中”に更新される。
本実施形態では、LU定義処理では、アドレスの若い空き空間が優先的に探し出される。従って、この例では、まず、図7Aに示したRGテーブル131の空き範囲情報を基に、RG#03の連続した空き空間601(図6A参照)が探し出される。図8Bに示すように、その空き空間601をLUとした新規のレコード132が追加される。レコード132には、図8Bに太字且つアンダーラインで示す複数の情報要素が記載される。それら複数の情報要素のうち、ポートID及びステータス情報は、親LUに対応したポートID及びステータス情報と同じポートID(ポートID:00)及びステータス情報(“拡張中”)が設定される。ホストLUN及び内部LUNは、所定の規則で設定される(内部LUNは、いずれの既存のLUの内部LUNと非重複の値とされる)。容量情報としては、空き空間601の容量30Gを表す情報が設定される。RG範囲情報としては、空き空間601のRGアドレスの範囲4000−6999を表す情報が設定される。以上の処理に伴い、図8Aに太字且つアンダーラインで示すように、RGテーブル131内の、RG#03に対応したレコード1311において、空き範囲情報が無効値に更新され、空き容量情報が、30Gから0Gを表す情報に更新される。すなわち、複数のRGにおけるトータルの空き容量から、空き空間601の容量30Gが減らされたこととなる。
以上のLU定義処理によって、RG#03内の空き空間601が一つのLUとされる。この処理の結果として、そのLUの内部LUN:02が、構成制御部142からコマンド診断部141に返され、コマンド診断部141によって、その内部LUN:02がメモリ125に蓄積される。
この段階では、定義されたLUの容量は30Gであり、指定拡張容量50Gに足りない。そこで、不足分の容量20Gについて、再度、LU定義処理が実行される。
次のLU定義処理では、図7Aに示したRGテーブル131の空き範囲情報を基に、RG#04の連続した空き空間603(図6A参照)が探し出される。しかし、その空き空間(アドレス範囲2000−6999)603の容量は50Gであり、20Gを超えている。そこで、その空き空間603のうちの20G分の空き部分(空き範囲2000−3999)605が特定される。そして、図9Bに示すように、その空き部分605をLUとした新規のレコード133が追加される。レコード133には、図9Bに太字且つアンダーラインで示す複数の情報要素が記載される。それら複数の情報要素のうち、ポートID及びステータス情報は、親LUに対応したポートID及びステータス情報と同じポートID(ポートID:00)及びステータス情報(“拡張中”)が設定される。ホストLUN及び内部LUNは、所定の規則で設定される。容量情報としては、空き部分605の容量20Gを表す情報が設定される。RG範囲情報としては、空き部分605のRGアドレスの範囲2000−3999を表す情報が設定される。以上の処理に伴い、図9Aに太字且つアンダーラインで示すように、RGテーブル131内の、RG#04に対応したレコード1312において、空き範囲情報が、2000−6999から4000−6999を表す情報に更新され、空き容量情報が50Gから30Gを表す情報に更新される。すなわち、複数のRGにおけるトータルの空き容量から、さらに、空き部分605の容量20Gが減らされたこととなる。
この段階で、指定拡張容量50G分の空き範囲にLUが定義されたので、図5に示したS505乃至S507のループから処理が抜けて、S508乃至S510のループが開始される。すなわち、2度のLU定義処理で定義された2つのLU(LUテーブル132内のレコード1322及び1323に対応したLU)について、LU拡張処理が実行される。
まず、コマンド診断部141から、指定LUN:01及び追加LUN:02(空き空間601(図6A参照)に定義されたLUの内部LUN)が、構成制御部142に渡される。構成制御部142が、LUテーブル132における、指定LUNに対応したレコード1311や、追加LUN:02に対応したレコード1322を更新する。具体的には、図10Aに示すように、レコード1311において、統合LUNとして、指定LUNに対応したホストLUNが設定され、種別情報として、“親”が設定される。つまり、指定LUNに対応したLUが親LUとして定義される。また、レコード1322において、統合LUNとして、指定LUNに対応したホストLUNが設定され、種別情報として、“子”が設定され、親LUNとして、指定LUNに対応した内部LUN:01が設定され、開始LBAとして、指定LU(親LU)の終端LUアドレス1999に連続した次のアドレス2000が設定される。つまり、追加LUN:02に対応したLUが、親LUに統合される。なお、LUアドレスとは、ホスト計算機101から指定され得るアドレスであって、RGアドレスとは異なる。
次に、コマンド診断部141から、指定LUN:01及び追加LUN:03(空き部分605(図6B参照)に定義されたLUの内部LUN)が、構成制御部142に渡される。構成制御部142が、LUテーブル132における、追加LUN:03に対応したレコード1322を更新する。具体的には、図10Aに示すように、レコード1323において、統合LUNとして、指定LUNに対応したホストLUNが設定され、種別情報として、“子”が設定され、親LUNとして、指定LUNに対応した内部LUN:01が設定され、開始LBAとして、直前の子LU(内部LUN:02に対応したLU)の終端LUアドレス4999に連続した次のアドレス5000が設定される。つまり、追加LUN:03に対応したLUが、親LUに統合される。なお、そのLUは、親LUに統合された子LU(内部LUN:02に対応したLU)の次に統合される。
以上の一連の処理により、図10Bに示す指定LUに、2つのLUが連結されることで、図10Cに示す統合LUに拡張される。LUアドレスは、連続したアドレスとなり、ホスト計算機101からは、統合LUは一つのLUとして認識される。なお、RG#03及び#04での空き範囲は、以上の一連の処理の結果、それぞれ、図11A及び図11Bに示す通りとなる。
次に、図12を参照して、LU縮小の処理フローを説明する。
管理者が、コンソール106を操作して、縮小対象LU(典型的には統合LU)に割り当てられているLUNと、縮小後のLUに関する容量を表す情報とを入力する。以下、図12乃至図17Bの説明において、入力されたLUNを、「指定LUN」と言い、入力された情報が表す容量を「指定縮小容量」と言う。指定LUNは、統合LUNであっても良いし、統合LU内の親LUに対応した外部LUN又は内部LUNであっても良い。指定縮小容量は、縮小後の記憶容量(つまり、この処理フローの完了後における縮小対象LUの記憶容量)であっても良いし、縮小対象LUの容量(つまり縮小前の容量)から減らされる容量であっても良い。本実施形態では、指定縮小容量は、減らされる容量とする。
管理ソフトウェア107が、指定LUNと指定縮小容量を表す情報とを含んだLU縮小コマンドを作成し、作成したLU縮小コマンドをストレージシステム105に送信する(S901)。そのLU縮小コマンドに応答して、ストレージシステム105において、下記S902〜S908の処理が行われる。
S902で、コマンド診断部141は、縮小範囲の検索指示を構成制御部142に出す。その検索指示には、パラメータ値として、例えば、指定LUN及び指定縮小容量が含まれる。
S903で、構成制御部142は、検索指示に応答して、指定縮小容量分の縮小範囲に更新ブロックが存在するか否かの検索を行い、検索の結果をコマンド診断部403に回答する。
S904で、コマンド診断部141は、検索結果情報を参照し、縮小範囲に更新ブロックがあるか否かを判断する。S904の判断の結果が否定的の場合(S904:NO)、コマンド診断部141は、NGを管理ソフトウェア107に返す。管路ソフトウェア107は、NGを表す情報をコンソール106に表示する。
S904の判断の結果が肯定的の場合(S904:YES)、S905で、コマンド診断部141は、LU縮小指示を構成制御部142に送信する。そのLU縮小指示には、パラメータ値として、指定LUN及び指定縮小容量が含まれる。
S906で、構成制御部142は、LU縮小指示に応答して、LU縮小処理を行う。LU縮小処理では、構成制御部142は、指定LUNに対応した縮小対象LUから、指定縮小容量分の範囲を除去する処理を行う。この処理については、後に図13A乃至図17Bを参照して説明する。
S907で、構成制御部142は、LU縮小処理の完了をコマンド診断部141に通知する。
S908で、コマンド診断部141が、LU縮小コマンドに応答して実行された処理の完了を、管理ソフトウェア107に通知する。管理ソフトウェア107は、その処理の完了を表す情報をコンソール106に表示する。
以上のLU縮小の処理フローによれば、管理者が、指定LUNと指定縮小容量とを入力しさえすれば、管理者が、縮小対象LUから取り外すLUを選択する作業等の特段の作業を行わなくても、指定縮小容量分の容量が縮小されたLU(統合LU又は単一のLU)が新たに作成される。
以下、LU縮小の処理フローにおけるLU縮小処理を詳細に説明する。なお、以下の説明では、縮小対象LUは、親LUと2つの子LUとで構成されている統合LUであるとする。また、指定縮小容量が40Gであるとする。
LU縮小処理の開始前では、例えば、縮小対象の統合LU内の親LU及び一つの子LUがRG#03を基に形成されており(図13A参照)、残りの一つの子LUがRG#04を基に形成されている(図13B参照)。LG縮小処理の開始前では、RGテーブル131は、図14Aに示す通りであり、LUテーブル132は、図14Bに示す通りである。
縮小対象の統合LUは、例えば図16Bに示す通りであるため、指定縮小容量40G分の縮小が行われるためには、統合LUの末端アドレスを含んだ20Gの子LU(2番目の子LU)が統合LUから除去され、且つ、1番目の30Gの子LUから20Gの容量が減らされる必要がある(図13A及び図13B参照)。2番目の子LUには更新ブロックが存在しておらず、また、1番目の子LUの終端から20G分の範囲にも更新ブロックが存在していないとする。このため、図12のS904の判断結果が肯定的であるとする。
このため、LU縮小処理が開始されると、図15Bに示すように、親LU及び1番目の子LUについてのステータス情報が“縮小中”に更新される。また、1番目の子LU2番目の子LUに対応したレコードが、LUテーブル132から除去される。それに伴い、親LU及び1番目の子LUについての構成LU数が“3”から“2”に更新される。また、図15Aに示すように、RG#04に対応したレコードにおいて、空き容量情報が、30Gから、統合LUから除去された2番目の子LUの容量20Gを加算した50Gを表す情報に更新され、空き範囲を表す情報が、4000−6999から、2番目のLUが占めていたRGアドレス2000−3999が追加された2000−6999に更新される。
また、図15Bに示すように、1番目の子LUに対応したレコード1322において、容量情報が、30Gから10Gを表す情報に更新され、RG範囲情報が、4000−6999から、1番目の子LUの終端から20G分を縮小したアドレス範囲4000−4999を表す情報に更新される。それに伴い、図15Aに示すように、RG#03に対応したレコードにおいて、空き容量情報が、0Gから、1番目のLUから縮小された20Gを加算した20Gを表す情報に更新され、空き範囲を表す情報が、無効値から、1番目のLUが占めていたRGアドレス4000−6999のうちの縮小された範囲に対応したアドレス5000−6999に更新される。
以上のLU縮小処理が終わり、LU縮小の処理フローが完了すると、例えば、LUテーブル132において、図16Aに示すように、親LU及び1番目の子LUに対応したステータス情報が“使用中”に更新される(なお、図示していないが、LU拡張の処理フローが完了した場合には、統合LUを構成する3つのLUのステータス情報が、“拡張中”から“使用中”に更新される)。また、その処理フローが完了すると、縮小対象の統合LU(図16B参照)が、図16Cに示す統合LUに縮小される。つまり、指定縮小容量40G分の容量が縮小される。なお、RG#03及び#04の空き範囲は、以上の処理フローの結果、それぞれ、図17A及び図17Bに示す通りとなる。
以上が、第一の実施形態の説明である。
なお、LU作成、LU拡張及びLU縮小の少なくとも一つの処理フローにおいて、NGとなる場合には、指定された容量がどれだけ多いためにNGとなったかが提示されても良い。たとえば、コマンド診断部141が、構成制御部142からの回答を基に、オーバー分の容量を計算し、計算された容量を表す情報を管理ソフトウェア107に送信しても良い。
また、LU縮小は、LU単位であっても良い。例えば、上記の例で言えば、統合LUから2番目のLUが除去されるから、更に1番目のLUが除去されるかであっても良い。このため、例えば、指定縮小容量が、LU単位の容量(一以上の子LUの総量)に一致しない場合には、コマンド診断部141が、指定縮小容量になるべく近い容量且つ指定縮小容量未満の容量分の子LUを除去するか、或いは、指定縮小容量になるべく近い容量且つ指定縮小容量を超える容量分の子LUを除去するかを問い合わせるための情報を管理ソフトウェア107に送信しても良い。
以下、本発明の第二の実施形態を説明する。その際、第一の実施形態との相違点を主に説明し、第一の実施形態との共通点については説明を省略或いは簡略する(これは、後述の第三の実施形態以降の実施形態についても同様である)。
第二の実施形態では、管理者から指定拡張容量の入力を受け付ける前に、コントローラ111が、各RGの空き容量の合計であるトータル空き容量を算出し、算出されたトータル空き容量を計算し、管理者にそのトータル空き容量を提示し、管理者から、そのトータル空き容量以下の指定拡張容量の入力を受け付ける。これにより、管理者がLU拡張を指示した後に、空き容量不足でLU拡張がNGとなることを防ぐことができる。
具体的には、例えば、図18に示すように、S1801で、管理ソフトウェア207が、例えば管理者から所定の指示を受けたときに、ストレージシステム105に、トータル空き容量を問い合わせる。
S1802で、コマンド診断部241が、その問合せに応答して、トータル空き容量を構成制御部242に問い合わせる。
S1803で、構成制御部242が、その問合せに応答して、RGテーブル131を参照し、全ての空き容量を合計することで、トータル空き容量を算出する。
S1804で、構成制御部242が、算出されたトータル空き容量を表す情報をコマンド診断241に回答する。
S1805で、コマンド診断部241が、そのトータル空き容量を表す情報を管理ソフトウェア207に送信する。管理ソフトウェアは、その情報が表すトータル空き容量をコンソール106に表示し、そのトータル空き容量以下の指定拡張容量の入力を受け付ける。
本実施形態では、第一の実施形態のように、管理者がLU拡張を指示した後に、空き容量不足でLU拡張がNGとなっても良い。たとえば、管理者は、作業量が少ない方が良い場合には、トータル空き容量を確認することなく指定拡張容量を入力し、作業量が多くてもやり直しが生じることを防ぎたい場合には、トータル空き容量を確認した上で指定拡張容量を入力しても良い。
以下、本発明の第三の実施形態を説明する。
第三の実施形態では、図19Aに示すように、LU定義処理の開始前に、ストレージシステム内のコントローラが、拡張後のLU(つまり統合LU)(例えば図10C参照)をホスト計算機101に認識させる(S1901)。
このため、指定LU(親LU)を超えるアドレスを指定したライトコマンドをホスト計算機101から受け付けることがあり得る(S1902)。
その場合、コントローラは、そのライトコマンドに従うライト対象のデータを、キャッシュ領域133に格納し(S1903)、そのデータが格納されている位置と、そのライトコマンドで指定されているアドレスと、そのライトコマンドを受け付けた日時との対応関係を表す未格納管理情報1901を、メモリ125で管理する(S1904)。統合LUが完成した後、図19Bに示すように、コントローラは、未格納情報を基に、ライトコマンドを受け付けた日時順に、キャッシュ領域133に格納されているデータを、統合LU内の指定アドレスに対応したブロックに書き込む(S1905)。
以下、本発明の第四の実施形態を説明する。
第四の実施形態では、指定拡張容量分の空き空間は、定義されるLUがなるべく少なくなるよう、指定拡張容量以下且つなるべく大きい容量を有する空き空間が優先的に選択される。具体的には、第一実施形態では、アドレスが若い順に空き空間が選択されたため、指定拡張容量が50Gであっても、RG#03内の30Gの空き空間601が先に選択されたが、本実施形態では、指定RG#04内の空き空間605、すなわち、指定拡張容量50Gと同じ容量が空き容量である空き空間605が先に選択される。これにより、指定LUに連結されるLUの数を一つにすることができる。従って、LUテーブル132を構成するレコードの数を少なくすることができ、以って、LUテーブル132が大きくなることを防ぐことができる。
以下、第五の実施形態を説明する。
第五の実施形態では、LU拡張処理の後のフォーマット処理がスキップされる。
統合LU(統合LUN)がホスト計算機101から認識されて、コントローラが、ホスト計算機101から、統合LUNを指定したライトコマンドを受けた場合、図20に示すように、フォーマット管理情報を基に、そのライトコマンドで指定されているアドレスに対応したブロック(ライト先ブロック)がフォーマット済みか否かを判断する(S2001)。フォーマット管理情報は、フォーマット済みのブロックがどこであるかを表す情報である。
S2001の判断の結果が否定的の場合(S2001:NO)コントローラは、ライト先ブロックをフォーマットし、フォーマット管理情報を、ライト先ブロックがフォーマット済みとなったことを表す情報に更新する(S2002)。そして、コントローラは、ライト先ブロックに、ライト対象のデータを書き込む(S2003)。
以下、本発明の第六の実施形態を説明する。
第六の実施形態では、コントローラが、縮小可能な容量(縮小対象LUの末端アドレスから更新ブロックの存在しない最大の範囲)を事前に計算して管理者に提示し、その範囲内での縮小を受け付ける。
具体的には、例えば、図21に示すように、S2101で、管理ソフトウェア307が、例えば管理者から所定の指示を受けたときに、ストレージシステムに、縮小可能容量を問い合わせる。
S2102で、コマンド診断部341が、その問合せに応答して、縮小対象LUについての更新ブロックのアドレスを構成制御部342に問い合わせる。
S2103で、構成制御部342が、その問合せに応答して、LUテーブル132を参照し、縮小対象LUの容量と、縮小対象LUにおける更新ブロックのアドレスとを特定する。
S2104で、構成制御部342が、特定された容量及びアドレスをコマンド診断341に回答する。
S2105で、コマンド診断部341が、構成制御部342からの回答を基に、縮小可能な容量(縮小対象LUの末端アドレスから更新ブロックの存在しない最大の範囲)を計算する。
S2106で、コマンド診断部341が、計算結果(縮小可能な容量)を表す情報を管理ソフトウェア207に送信する。管理ソフトウェアは、その情報が表す縮小可能量をコンソール106に表示し、その容量以下の指定縮小容量の入力を受け付ける。
本実施形態では、第一の実施形態のように、管理者がLU縮小を指示した後に、LU縮小がNGとなっても良い。たとえば、管理者は、作業量が少ない方が良い場合には、縮小可能容量を確認することなく指定縮小容量を入力し、作業量が多くてもやり直しが生じることを防ぎたい場合には、縮小可能容量を確認した上で指定縮小容量を入力しても良い。
以上、本発明の好適な幾つかの実施形態を説明したが、本発明は、これらの実施形態に限定されるものでなく、その要旨を逸脱しない範囲で種々変更可能であることはいうまでもない。例えば、上述した複数の実施形態のうちの二以上の実施形態を組み合わせることが可能である。
本発明の一実施形態に係る計算機システムの構成例を示す。 RGテーブル131の構成例を示す。 LUテーブル132の構成例を示す。 LU作成の処理フローを示す。 LU拡張の処理フローを示す。 図6Aは、LU拡張前のRG#03を示す。図6Bは、LU拡張前のRG#04を示す。 図7Aは、LU拡張前のRGテーブル131を示す。図7Bは、LU拡張前のLUテーブル132の一例を示す。 図8Aは、一度目のLU定義処理後のRGテーブル131を示す。図8Bは、一度目のLU定義処理後のLUテーブル132を示す。 図9Aは、二度目のLU定義処理後のRGテーブル131を示す。図9Bは、二度目のLU定義処理後のLUテーブル132を示す。 図10Aは、LU拡張処理後のLUテーブル132を示す。図10Bは、LU拡張前の指定LUを示す。図10Cは、LU拡張後の統合LU(指定LUに他のLUが連結された結果)を示す。 図11Aは、LU拡張後のRG#03を示す。図11Bは、LU拡張後のRG#04を示す。 LU縮小の処理フローを示す。 図13Aは、LU縮小前のRG#03を示す。図13Bは、LU縮小前のRG#04を示す。 図14Aは、LU縮小前のRGテーブル131を示す。図14Bは、LU縮小前のLUテーブル132の一例を示す。 図15Aは、LU縮小処理後のRGテーブル131を示す。図15Bは、LU縮小処理後のLUテーブル132を示す。 図16Aは、LU縮小の処理フロー後のLUテーブル132を示す。図16Bは、LU縮小前の統合LUを示す。図16Cは、LU縮小後の統合LUを示す。 図17Aは、LU縮小後のRG#03を示す。図17Bは、LU縮小後のRG#04を示す。 本発明の第二の実施形態で行われる処理を示す。 図19Aは、本発明の第三の実施形態において、統合LUが完成する前に行われる処理を示す。図19Bは、本発明の第三の実施形態において、統合LUが完成した後に行われる処理を示す。 本発明の第五の実施形態で行われる処理を示す。 本発明の第六の実施形態で行われる処理を示す。
符号の説明
105…ストレージシステム

Claims (15)

  1. LU(Logical Unit)に対するI/O(Input/Output)のためのI/Oコマンドを計算機から受け付けるストレージシステムであって、
    LUの基になる複数の物理記憶装置と、
    コントローラと
    を備え、
    前記コントローラが、LUと物理記憶装置に関する構成管理情報を記憶する記憶資源を有し、
    前記複数の物理記憶装置によって複数のRAIDグループが構成されており、
    前記構成管理情報が、前記複数のRAIDグループの記憶空間における空き範囲及び空き容量を表す情報と、前記記憶空間に基づくLU(Logical Unit)に関する情報とを含み、
    前記空き範囲とは、LUとして使用されていない空間である空き空間が占めるアドレス範囲であり、
    前記空き容量とは、前記空き空間の容量であり、
    LUに関する情報は、LU毎に、どのRAIDグループのどこの空間部分を占めているのかを表す情報と、前記ホスト計算機に提供されるLUN(Logical Unit Number)である外部LUNと、前記ホスト計算機に非提供のLUNである内部LUNと、開始アドレスを表す情報とを含み、
    前記コントローラが、
    (2−1)管理者がコンソールを用いて入力した情報を受け付けたり前記コンソールに情報を表示したりする管理インタフェース部から、前記管理者から入力された容量情報を含んだLU設定コマンドとして、第一種のLUのLUNである第一種のLUNと、拡張後の容量に関する拡張容量情報とを含んだLU拡張コマンドを受け取り、
    (2−2)、前記LU拡張コマンドに応答して、前記構成管理情報を参照し、下記(2−2−1)乃至(2−2−3)の処理を、前記第一種のLUと前記第一種のLUに関連付けられたLUである第二種のLUとの集合体である統合LUの容量が、前記拡張容量情報から特定される拡張後の容量になるように実行し、
    (2−2−1)空き空間を有するいずれかのRAIDグループの記憶空間内の空き空間から、前記拡張容量情報から特定される容量以下の空き空間部分を特定する;
    (2−2−2)特定された空き空間部分を第二種のLUとするLU定義処理を実行し、そのLU定義処理では、その第二種のLUに関する情報として、内部LUNと、その第二種のLUが占める空き空間部分のアドレス範囲を表す情報とを前記構成管理情報に追加し、且つ、前記空き容量を表す情報を、その第二種のLUが占める空間部分の容量が前記空き容量から減じられた容量を表す情報に更新する;
    (2−2−3)その第二種のLUを第一種のLUに関連付けるLU統合処理を実行し、そのLU統合処理では、その第二種のLUの開始アドレスを、第一種のLU又は直前の第二種のLUの末端アドレスの次のアドレスとし、且つ、前記定義された第二種のLUの外部LUNとして、前記第一種のLUの外部LUNと同一の外部LUNを関連付ける、
    (2−3)前記LU拡張コマンドに応答して実行された処理の結果に関する結果情報を、前記管理インタフェース部に送信する、
    ストレージシステム。
  2. 前記コントローラが、
    (3−1)前記(−1)で、前記LU設定コマンドとして、LU縮小コマンドを受け付け、前記LU縮小コマンドは、第一種のLUNと、縮小後の容量に関する縮小容量情報とを含んでおり、
    (3−2)前記(−2)で、前記LU縮小コマンドに応答して、前記構成管理情報を参照し、下記(3−2−1)及び(3−2−2)の処理を、前記統合LUの容量が、前記縮小容量情報から特定される縮小後の容量になるように実行し、
    (3−2−1)前記第一種のLUNから特定される第一種のLUを含んだ統合LUである対象統合LUから、前記縮小容量情報から特定される容量以下の空間部分を特定する;
    (3−2−2)特定された空間部分を前記統合LUから取り除く解除処理を実行し、その解除処理では、取り除く空間部分のアドレス範囲を表す情報を、その取り除く空間部分を有するRGの空き範囲を表す情報として前記構成管理情報に追加し、且つ、前記空き容量を表す情報を、取り外す空間部分の容量が前記空き容量に加算された容量を表す情報に更新する、
    (3−3)前記(−3)で、前記LU縮小コマンドに応答して実行された処理の結果に関する結果情報を、前記管理インタフェース部に送信し、
    前記(3−3)後では、前記(3−1)の前と比べて、前記対象統合LUに関して、(A)及び/(B)の結果が生じており、
    (A)前記対象統合LUを構成する一つのLUの容量が少なくなっている、
    (B)前記対象統合LUを構成する第二種のLUの数が減っている、
    前記(B)としては、前記対象統合LUから全ての第二種のLUが取り外されており故に前記対象統合LUが解除されて第一種のLUのみになっていることがある、
    請求項記載のストレージシステム。
  3. 前記(3−2)では、前記対象統合LUの後端を含んだ部分が優先的に前記取り除く空間部分とされる、
    請求項記載のストレージシステム。
  4. 前記(2−2−1)では、容量の大きい空き空間部分が優先的に特定される、
    請求項記載のストレージシステム。
  5. 前記コントローラが、前記(2−1)の前に、全ての空き空間部分のトータル容量である空きトータル容量を表す情報を前記管理インタフェース部に送信し、
    前記拡張容量情報から特定される追加分の容量は、前記空きトータル容量以下の容量である、
    請求項記載のストレージシステム。
  6. 前記コントローラが、キャッシュメモリ領域を有しており、前記(2−2)の完了前から、前記第一種のLUの外部LUNを指定したライトコマンドを前記計算機から受け付け、前記ライトコマンドで指定されているアドレスが、第二種のLU内の記憶領域を表すアドレスであれば、ライト対象のデータを、前記キャッシュメモリ領域に一時保持しておき、前記(2−2)の完了後に、前記(2−2)で作成された統合LU内の第二種のLUに書き込む、
    請求項記載のストレージシステム。
  7. 前記第二種のLU内のライト先の記憶領域が、前記統合LUの完成後に初めてデータが書き込まれる記憶領域である場合、前記コントローラは、そのライト先の記憶領域をフォーマットした後に、ライト対象のデータをかきこむ、
    請求項記載のストレージシステム。
  8. LU(Logical Unit)に対するI/O(Input/Output)のためのI/Oコマンドを計算機から受け付けるストレージシステムであって、
    LUの基になる複数の物理記憶装置と、
    コントローラと
    を備え、
    前記コントローラが、LUと物理記憶装置に関する構成管理情報を記憶する記憶資源を有し、
    前記構成管理情報が、前記複数の物理記憶装置の記憶空間における空き範囲及び空き容量を表す情報と、前記記憶空間に基づくLU(Logical Unit)に関する情報とを含み、
    前記空き範囲とは、LUとして使用されていない空間である空き空間が占めるアドレス範囲であり、
    前記空き容量とは、前記空き空間の容量であり、
    前記コントローラが、
    (9−1)管理者がコンソールを用いて入力した情報を受け付けたり前記コンソールに情報を表示したりする管理インタフェース部から、前記管理者から入力された容量情報を含んだLU設定コマンドとして、第一種のLUのLUNである第一種のLUNと、拡張後の容量に関する拡張容量情報とを含んだLU拡張コマンドを受け取り、
    (9−2)前記LU拡張コマンドに応答して、前記構成管理情報を参照し、前記第一種のLUと前記第一種のLUに関連付けられた一以上のLUである一以上の第二種のLUとの集合体である統合LUを定義し、
    前記第二種のLUは、前記構成管理情報を基に特定された空き空間部分を基に定義されたLUであり、前記第一種のLUの内部LUNと非重複の内部LUNが割り当てられており、
    前記一以上の第二種のLUの総容量は、前記拡張容量情報から特定される容量であり、
    前記統合LUのLUNは、前記第一種のLUの外部LUNと同一であり、
    (9−3)前記LU拡張コマンドに応答して実行された処理の結果に関する結果情報を、前記管理インタフェース部に送信する、
    ストレージシステム。
  9. LU(Logical Unit)に対するI/O(Input/Output)のためのI/Oコマンドを計算機から受け付けるストレージシステムであって、
    LUの基になる複数の物理記憶装置と、
    コントローラと
    を備え、
    前記コントローラが、LUと物理記憶装置に関する構成管理情報を記憶する記憶資源を有し、
    前記構成管理情報が、前記複数の物理記憶装置の記憶空間における空き範囲及び空き容量を表す情報と、前記記憶空間に基づくLU(Logical Unit)に関する情報とを含み、
    前記空き範囲とは、LUとして使用されていない空間である空き空間が占めるアドレス範囲であり、
    前記空き容量とは、前記空き空間の容量であり、
    前記コントローラが、
    (10−1)管理者がコンソールを用いて入力した情報を受け付けたり前記コンソールに情報を表示したりする管理インタフェース部から、前記管理者から入力された容量情報を含んだLU設定コマンドとして、第一種のLUのLUNである第一種のLUNと、縮小後の容量に関する縮小容量情報とを含んだLU縮小コマンドを受け取り、
    (10−2)前記LU縮小コマンドに応答して、前記構成管理情報を参照し、前記第一種のLUと第二種のLUとの集合体である統合LUの容量を、前記縮小容量情報から特定される縮小後の容量に減らし、
    容量縮小後の統合LUは、容量縮小前の統合LUと比べて、(A)及び/(B)の結果が生じており、
    (A)統合LUを構成する一つのLUの容量が少なくなっている、
    (B)統合LUを構成する第二種のLUの数が減っている、
    前記(B)としては、前記統合LUから全ての第二種のLUが取り外されており故に前記統合LUが解除されて第一種のLUのみになっていることがある、
    (10−3)前記LU縮小コマンドに応答して実行された処理の結果に関する結果情報を、前記管理インタフェース部に送信する、
    ストレージシステム。
  10. 前記コントローラが、
    11−1)前記(9−1)で、前記LU設定コマンドとして、LU縮小コマンドを受け付け、前記LU縮小コマンドは、第一種のLUのLUNである第一種のLUNと、縮小後の容量に関する縮小容量情報とを含んでおり、
    11−2)前記(9−2)で、前記LU縮小コマンドに応答して、前記構成管理情報を参照し、前記第一種のLUと第二種のLUとの集合体である統合LUの容量を、前記縮小容量情報から特定される縮小後の容量に減らし、
    容量縮小後の統合LUは、容量縮小前の統合LUと比べて、(A)及び/(B)の結果が生じており、
    (A)統合LUを構成する一つのLUの容量が少なくなっている、
    (B)統合LUを構成する第二種のLUの数が減っている、
    前記(B)としては、前記統合LUから全ての第二種のLUが取り外されており故に前記統合LUが解除されて第一種のLUのみになっていることがある、
    請求項記載のストレージシステム。
  11. 前記(10−2)又は前記(11−2)では、前記統合LUの後端を含んだ部分が優先的に前記取り除く空間部分とされる、
    請求項9又は10記載のストレージシステム。
  12. 前記コントローラが、前記縮小容量情報から特定される容量を有する、前記統合LUの後端を含んだ部分に、前記計算機から書き込まれたデータがあるか否かを判断する、
    請求項11記載のストレージシステム。
  13. 前記コントローラが、前記統合LUについて縮小可能な容量を計算し、算出された容量を表す情報を前記管理インタフェース部に送信し、
    前記LU縮小コマンドに含まれる縮小容量情報から特定される容量は、前記算出された縮小可能な容量以下であり、
    前記縮小可能な容量とは、前記統合LUの後端を含んだ連続した部分であって、前記計算機から書き込まれたデータが存在しない部分に関する容量である、
    請求項11又は12記載のストレージシステム。
  14. LU(Logical Unit)に対するI/O(Input/Output)のためのI/Oコマンドを計算機から受け付けるストレージシステムであって、
    LUの基になる複数の物理記憶装置と、
    コントローラと
    を備え、
    前記複数の物理記憶装置によって複数のRAIDグループが構成されており、
    前記コントローラが、LUと物理記憶装置に関する構成管理情報を記憶する記憶資源を有し、
    前記構成管理情報が、前記複数のRAIDグループの記憶空間における空き範囲及び空き容量を表す情報と、LU毎に、どのRAIDグループのどこの空間部分を占めているのかを表す情報と、前記ホスト計算機に提供されるLUN(Logical Unit Number)である外部LUNと、前記ホスト計算機に非提供のLUNである内部LUNと、開始アドレスを表す情報とを含み、
    前記空き範囲とは、LUとして使用されていない空間である空き空間が占めるアドレス範囲であり、
    前記空き容量とは、前記空き空間の容量であり、
    前記コントローラが、
    (15−A)管理者がコンソールを用いて入力した情報を受け付けたり前記コンソールに情報を表示したりする管理インタフェース部から、LU拡張コマンドを受け付け、前記LU拡張コマンドは、第一種のLUのLUNである第一種のLUNと、拡張後の容量に関する拡張容量情報とを含んでおり、
    (15−B)前記LU拡張コマンドに応答して、前記構成管理情報を参照し、下記(15−B−1)乃至(15−B−3)の処理を、前記第一種のLUと前記第一種のLUに関連付けられたLUである第二種のLUとの集合体である統合LUの容量が、前記拡張容量情報から特定される拡張後の容量になるように実行し、
    (15−B−1)空き空間を有するいずれかのRAIDグループの記憶空間内の空き空間から、前記拡張容量情報から特定される容量以下の空き空間部分を特定する;
    (15−B−2)特定された空き空間部分を第二種のLUとするLU定義処理を実行し、そのLU定義処理では、その第二種のLUに関する情報として、内部LUNと、その第二種のLUが占める空き空間部分のアドレス範囲を表す情報とを前記構成管理情報に追加し、且つ、前記空き容量を表す情報を、その第二種のLUが占める空間部分の容量が前記空き容量から減じられた容量を表す情報に更新する;
    (15−B−3)その第二種のLUを第一種のLUに関連付けるLU統合処理を実行し、そのLU統合処理では、その第二種のLUの開始アドレスを、第一種のLU又は直前の第二種のLUの末端アドレスの次のアドレスとし、且つ、前記定義された第二種のLUの外部LUNとして、前記第一種のLUの外部LUNと同一の外部LUNを関連付ける、
    (15−C)前記LU拡張コマンドに応答して実行された処理の結果に関する結果情報を、前記管理インタフェース部に送信し、
    (15−a)前記管理インタフェース部からLU縮小コマンドを受け付け、前記LU拡張コマンドは、第一種のLUNと、縮小後の容量に関する縮小容量情報とを含んでおり、
    (15−b)前記LU縮小コマンドに応答して、前記構成管理情報を参照し、下記(15−b−1)及び(15−b−2)の処理を、前記統合LUの容量が、前記縮小容量情報から特定される縮小後の容量になるように実行し、
    (15−b−1)前記第一種のLUNから特定される第一種のLUを含んだ統合LUである対象統合LUから、前記縮小容量情報から特定される容量以下の空間部分を特定する;
    (15−b−2)特定された空間部分を前記統合LUから取り除く解除処理を実行し、その解除処理では、取り除く空間部分のアドレス範囲を表す情報を、その取り除く空間部分を有するRGの空き範囲を表す情報として前記構成管理情報に追加し、且つ、前記空き容量を表す情報を、取り外す空間部分の容量が前記空き容量に加算された容量を表す情報に更新する、
    (15−c)前記LU縮小コマンドに応答して実行された処理の結果に関する結果情報を、前記管理インタフェース部に送信し、
    前記(15−c)後では、前記(15−a)の前と比べて、前記対象統合LUに関して、(A)及び/(B)の結果が生じており、
    (A)前記対象統合LUを構成する一つのLUの容量が少なくなっている、
    (B)前記対象統合LUを構成する第二種のLUの数が減っている、
    前記(B)としては、前記対象統合LUから全ての第二種のLUが取り外されており故に前記対象統合LUが解除されて第一種のLUのみになっていることがある、
    ストレージシステム。
  15. 複数の物理記憶装置を備えたストレージシステムにLUに関する設定を行う方法であって、
    (16−A)管理者がコンソールを用いて入力した情報を受け付けたり前記コンソールに情報を表示したりする管理インタフェース部から、LU拡張コマンドを受け付け、前記LU拡張コマンドは、第一種のLUのLUNである第一種のLUNと、拡張後の容量に関する拡張容量情報とを含んでおり、
    (16−B)前記LU拡張コマンドに応答して、前記構成管理情報を参照し、下記(16−B−1)乃至(16−B−3)の処理を、前記第一種のLUと前記第一種のLUに関連付けられたLUである第二種のLUとの集合体である統合LUの容量が、前記拡張容量情報から特定される拡張後の容量になるように実行し、
    (16−B−1)空き空間を有するいずれかのRAIDグループの記憶空間内の空き空間から、前記拡張容量情報から特定される容量以下の空き空間部分を特定する;
    (16−B−2)特定された空き空間部分を第二種のLUとするLU定義処理を実行し、そのLU定義処理では、その第二種のLUに関する情報として、内部LUNと、その第二種のLUが占める空き空間部分のアドレス範囲を表す情報とを前記構成管理情報に追加し、且つ、前記空き容量を表す情報を、その第二種のLUが占める空間部分の容量が前記空き容量から減じられた容量を表す情報に更新する;
    (16−B−3)その第二種のLUを第一種のLUに関連付けるLU統合処理を実行し、そのLU統合処理では、その第二種のLUの開始アドレスを、第一種のLU又は直前の第二種のLUの末端アドレスの次のアドレスとし、且つ、前記定義された第二種のLUの外部LUNとして、前記第一種のLUの外部LUNと同一の外部LUNを関連付ける、
    (16−C)前記LU拡張コマンドに応答して実行された処理の結果に関する結果情報を、前記管理インタフェース部に送信し、
    (16−a)前記管理インタフェース部からLU縮小コマンドを受け付け、前記LU拡張コマンドは、第一種のLUNと、縮小後の容量に関する縮小容量情報とを含んでおり、
    (16−b)前記LU縮小コマンドに応答して、前記構成管理情報を参照し、下記(16−b−1)及び(16−b−2)の処理を、前記統合LUの容量が、前記縮小容量情報から特定される縮小後の容量になるように実行し、
    (16−b−1)前記第一種のLUNから特定される第一種のLUを含んだ統合LUである対象統合LUから、前記縮小容量情報から特定される容量以下の空間部分を特定する;
    (16−b−2)特定された空間部分を前記統合LUから取り除く解除処理を実行し、その解除処理では、取り除く空間部分のアドレス範囲を表す情報を、その取り除く空間部分を有するRGの空き範囲を表す情報として前記構成管理情報に追加し、且つ、前記空き容量を表す情報を、取り外す空間部分の容量が前記空き容量に加算された容量を表す情報に更新する、
    (16−c)前記LU縮小コマンドに応答して実行された処理の結果に関する結果情報を、前記管理インタフェース部に送信し、
    前記(16−c)後では、前記(16−a)の前と比べて、前記対象統合LUに関して、(A)及び/(B)の結果が生じており、
    (A)前記対象統合LUを構成する一つのLUの容量が少なくなっている、
    (B)前記対象統合LUを構成する第二種のLUの数が減っている、
    前記(B)としては、前記対象統合LUから全ての第二種のLUが取り外されており故に前記対象統合LUが解除されて第一種のLUのみになっていることがあり、
    前記複数の物理記憶装置によって複数のRAIDグループが構成されており、
    前記構成管理情報が、LUと物理記憶装置に関する情報であって、前記複数のRAIDグループの記憶空間における空き範囲及び空き容量を表す情報と、LU毎に、どのRAIDグループのどこの空間部分を占めているのかを表す情報と、前記ホスト計算機に提供されるLUN(Logical Unit Number)である外部LUNと、前記ホスト計算機に非提供のLUNである内部LUNと、開始アドレスを表す情報とを含み、
    前記空き範囲とは、LUとして使用されていない空間である空き空間が占めるアドレス範囲であり、
    前記空き容量とは、前記空き空間の容量である、
    LU設定方法。
JP2008256313A 2008-10-01 2008-10-01 Lu設定機能を備えたストレージシステム Expired - Fee Related JP4685911B2 (ja)

Priority Applications (2)

Application Number Priority Date Filing Date Title
JP2008256313A JP4685911B2 (ja) 2008-10-01 2008-10-01 Lu設定機能を備えたストレージシステム
US12/276,520 US8713279B2 (en) 2008-10-01 2008-11-24 Storage system with LU-setting function

Applications Claiming Priority (1)

Application Number Priority Date Filing Date Title
JP2008256313A JP4685911B2 (ja) 2008-10-01 2008-10-01 Lu設定機能を備えたストレージシステム

Publications (2)

Publication Number Publication Date
JP2010086393A JP2010086393A (ja) 2010-04-15
JP4685911B2 true JP4685911B2 (ja) 2011-05-18

Family

ID=42058822

Family Applications (1)

Application Number Title Priority Date Filing Date
JP2008256313A Expired - Fee Related JP4685911B2 (ja) 2008-10-01 2008-10-01 Lu設定機能を備えたストレージシステム

Country Status (2)

Country Link
US (1) US8713279B2 (ja)
JP (1) JP4685911B2 (ja)

Families Citing this family (5)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
JP5977011B2 (ja) 2011-09-29 2016-08-24 富士通株式会社 ストレージ装置、制御装置およびストレージ装置制御方法
US9460009B1 (en) * 2012-03-26 2016-10-04 Emc Corporation Logical unit creation in data storage system
US9086957B2 (en) * 2012-08-02 2015-07-21 International Business Machines Corporation Requesting a memory space by a memory controller
US10229043B2 (en) 2013-07-23 2019-03-12 Intel Business Machines Corporation Requesting memory spaces and resources using a memory controller
US9710381B2 (en) 2014-06-18 2017-07-18 International Business Machines Corporation Method and apparatus for cache memory data processing

Citations (6)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
JP2002222061A (ja) * 2001-01-25 2002-08-09 Hitachi Ltd 記憶領域を設定する方法、記憶装置およびプログラム記憶媒体
JP2002236560A (ja) * 2000-12-07 2002-08-23 Hitachi Ltd 計算機システム
JP2006134021A (ja) * 2004-11-05 2006-05-25 Hitachi Ltd ストレージシステム及びストレージシステムの構成管理方法
JP2006302258A (ja) * 2005-04-21 2006-11-02 Hitachi Ltd シン・プロビジョン型ストレージサブシステムのディスクスペースを管理するシステムと方法
JP2008009767A (ja) * 2006-06-29 2008-01-17 Hitachi Ltd データ処理システム及びその方法並びにストレージ装置
JP2008134830A (ja) * 2006-11-28 2008-06-12 Hitachi Ltd 節電機能と診断機能の両方を備えたストレージシステム

Family Cites Families (5)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US5129088A (en) * 1987-11-30 1992-07-07 International Business Machines Corporation Data processing method to create virtual disks from non-contiguous groups of logically contiguous addressable blocks of direct access storage device
US6779095B2 (en) * 2000-06-19 2004-08-17 Storage Technology Corporation Apparatus and method for instant copy of data using pointers to new and original data in a data location
US6880058B2 (en) 2000-12-07 2005-04-12 Hitachi, Ltd. Computer system with storage system having re-configurable logical volumes
US20050027938A1 (en) * 2003-07-29 2005-02-03 Xiotech Corporation Method, apparatus and program storage device for dynamically resizing mirrored virtual disks in a RAID storage system
JP4749140B2 (ja) * 2005-12-05 2011-08-17 株式会社日立製作所 データマイグレーション方法及びシステム

Patent Citations (6)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
JP2002236560A (ja) * 2000-12-07 2002-08-23 Hitachi Ltd 計算機システム
JP2002222061A (ja) * 2001-01-25 2002-08-09 Hitachi Ltd 記憶領域を設定する方法、記憶装置およびプログラム記憶媒体
JP2006134021A (ja) * 2004-11-05 2006-05-25 Hitachi Ltd ストレージシステム及びストレージシステムの構成管理方法
JP2006302258A (ja) * 2005-04-21 2006-11-02 Hitachi Ltd シン・プロビジョン型ストレージサブシステムのディスクスペースを管理するシステムと方法
JP2008009767A (ja) * 2006-06-29 2008-01-17 Hitachi Ltd データ処理システム及びその方法並びにストレージ装置
JP2008134830A (ja) * 2006-11-28 2008-06-12 Hitachi Ltd 節電機能と診断機能の両方を備えたストレージシステム

Also Published As

Publication number Publication date
JP2010086393A (ja) 2010-04-15
US20100082901A1 (en) 2010-04-01
US8713279B2 (en) 2014-04-29

Similar Documents

Publication Publication Date Title
JP4890033B2 (ja) 記憶装置システム及び記憶制御方法
JP5234342B2 (ja) 計算機システム及びその制御方法
JP4464378B2 (ja) 同一データを纏める事で格納領域を節約する計算機システム、ストレージシステム及びそれらの制御方法
JP4684864B2 (ja) 記憶装置システム及び記憶制御方法
JP5250869B2 (ja) ストレージシステム、論理記憶領域割り当て方法及び計算機システム
JP5028381B2 (ja) ストレージ装置およびキャッシュ制御方法
US7596658B2 (en) Method for expanding capacity of replication volume
JP4884041B2 (ja) 自動拡張可能なボリュームに対して最適なi/oコマンドを発行するストレージシステム及びその制御方法
JP2007041904A (ja) ストレージ装置、ディスクキャッシュ制御方法及びディスクキャッシュの容量割当方法
JP2009181148A (ja) ストレージサブシステム
JP4685911B2 (ja) Lu設定機能を備えたストレージシステム
US8549243B2 (en) Regeneration of deleted data
CN100530069C (zh) 一种非同质存储设备的虚拟化系统及方法
US7669031B2 (en) Computer system, storage area allocation method, and management computer
US9164885B2 (en) Storage control device, storage control method, and recording medium
US7676644B2 (en) Data processing system, storage apparatus and management console
US20160011792A1 (en) Media control device and control method
JP2007328711A (ja) 無共有型データベースシステムの構成変更方法、管理サーバ及び無共有型データベースシステム
JP4792335B2 (ja) Raid装置、raid制御プログラムおよびキャッシュ管理方法
JP4373450B2 (ja) Raid制御装置及びその制御方法
JP4245021B2 (ja) ストレージ装置、ストレージシステム、ストレージ装置の制御方法
JP2008009622A (ja) 管理サーバ、およびサーバシステム
JP4765967B2 (ja) 情報処理装置及び情報処理方法並びにプログラム
JP2008198221A (ja) 記憶装置の容量自動拡張方法
JP6464606B2 (ja) ストレージ装置、ストレージ装置制御プログラム及びストレージ装置制御方法

Legal Events

Date Code Title Description
A621 Written request for application examination

Free format text: JAPANESE INTERMEDIATE CODE: A621

Effective date: 20100823

A977 Report on retrieval

Free format text: JAPANESE INTERMEDIATE CODE: A971007

Effective date: 20101022

A131 Notification of reasons for refusal

Free format text: JAPANESE INTERMEDIATE CODE: A131

Effective date: 20101029

A521 Written amendment

Free format text: JAPANESE INTERMEDIATE CODE: A523

Effective date: 20101215

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: 20110112

A01 Written decision to grant a patent or to grant a registration (utility model)

Free format text: JAPANESE INTERMEDIATE CODE: A01

A61 First payment of annual fees (during grant procedure)

Free format text: JAPANESE INTERMEDIATE CODE: A61

Effective date: 20110210

FPAY Renewal fee payment (event date is renewal date of database)

Free format text: PAYMENT UNTIL: 20140218

Year of fee payment: 3

R150 Certificate of patent or registration of utility model

Ref document number: 4685911

Country of ref document: JP

Free format text: JAPANESE INTERMEDIATE CODE: R150

Free format text: JAPANESE INTERMEDIATE CODE: R150

LAPS Cancellation because of no payment of annual fees