(57)【要約】【課題】ネットワーク上に分散した複数のストレージ装置300を仮想化して管理するストレージ管理システム及びストレージ管理方法において、ストレージデータ転送性能が劣化しないようにストレージ仮想化及びストレージデータ用経路を設定する。【解決手段】ストレージ管理サーバ100において、ストレージ状態管理部12が、各ストレージ装置300のストレージ使用状態を管理し、ネットワーク状態管理部14が各ネットワーク装置400のトラフィック状態を管理し、経路検索・設定部13がストレージ使用状態及び該トラフィック状態に基づいて、ストレージデータ用経路700を決定して、ネットワーク装置に設定する。ホスト200において、仮想化マッピング部31がストレージ管理サーバ100から応答されたストレージ領域を仮想ストレージに対応付け、経路情報設定部33が、応答されたストレージデータ用経路700でストレージデータを送受信する。【選択図】      図１
2005266933.tif 000002
【特許請求の範囲】
【請求項１】
１つ以上のネットワーク装置と、該ネットワーク装置で構成されたネットワーク上のストレージデータ用経路で接続される１つ以上のホスト及び１つ以上のストレージ装置と、に接続されたストレージ管理サーバと、で構成されるストレージ管理システムであって、
該ストレージ管理サーバが、
各ストレージ装置のストレージ使用状態を管理するストレージ状態管理部と、
各ネットワーク装置を監視することで該ネットワークのトラフィック状態を管理するネットワーク状態管理部と、
該ストレージ使用状態及び該トラフィック状態に基づいて、該ストレージデータ用経路を決定して、該ネットワーク装置に設定する経路検索・設定部と、
を備えたことを特徴とするストレージ管理システム。
【請求項２】
請求項１において、
該ストレージ管理サーバが、該ストレージ使用状態に基づき、該ホスト又はシステム管理者から要求されたストレージ容量を満たすストレージ領域を選択する仮想ストレージ管理・制御部をさらに備え、
該経路検索・設定部が、該選択されたストレージ領域と該トラフィック状態とに基づいて該ストレージデータ用経路を決定することを特徴としたストレージ管理システム。
【請求項３】
請求項１において、
該経路検索・設定部は、それぞれ、該ストレージ装置及び該ネットワーク装置に障害が発生、又は障害になると予測されたとき、該ストレージ使用状態及び該トラフィック状態に基づいて、該障害発生又は障害になると予測されたストレージ装置のストレージ領域の代替ストレージの検索、及び該障害が発生、又は障害になると予測されたネットワーク装置に関連するストレージデータ用経路の代替経路を検索して決定することを特徴としたストレージ管理システム。
【請求項４】
請求項１において、
該ホストが、
該ストレージ管理サーバにストレージ領域確保要求を与え、このストレージ領域確保要求に対して応答されたストレージ領域を仮想ストレージに対応付ける仮想化マッピング部と、
該ストレージ領域確保要求に対して応答されたストレージデータ用経路経由で、ストレージデータが伝送されるように、該ストレージデータ用経路の経路情報を該ストレージデータに設定する経路情報設定部と、
を備えたことを特徴とするストレージ管理システム。
【請求項５】
１つ以上のネットワーク装置と、該ネットワーク装置で構成されたネットワーク上のストレージデータ用経路(セッション/コネクション)で接続される１つ以上のホスト及び１つ以上のストレージ装置と、に接続されたストレージ管理サーバと、で構成されるストレージ管理システムのストレージ管理方法において、
該ストレージ管理サーバが、
各ストレージ装置のストレージ使用状態を管理する第１のステップと、
各ネットワーク装置を監視することで該ネットワークのトラフィック状態を管理する第２のステップと、
該ストレージ使用状態及び該トラフィック状態に基づいて、該ストレージデータ用経路を決定して、該ネットワーク装置に設定する第３のステップと、
を実行することを特徴としたストレージ管理方法。
【発明の詳細な説明】
【技術分野】
【０００１】
ストレージ管理システム及びストレージ管理方法に関し、特に、ネットワーク上に分散した複数のストレージ装置を仮想化して管理するストレージ管理システム及びストレージ管理方法。
【０００２】
近年、通信技術の高度な発達に伴い、ストレージデータ等の膨大な情報が、ホスト(アプリケーションサーバ、ユーザ)と１つ以上のストレージ装置との間で伝送されている。この伝送には、ネットワーク上に分散して配置されている１つ以上のストレージ装置を、仮想化した１つのストレージ装置として管理するストレージ仮想化技術がますます重要になって来ている。
【背景技術】
【０００３】
ストレージエリアネットワーク(StorageArea Network：SAN)の発展
従来、アプリケーションサーバ(ホスト)は、サーバ自身にストレージ装置(ディスク装置及びテープドライブ装置等)を直接接続するDAS(DirectAttached Storage)の形態が主流であった。
【０００４】
しかし、近年では、複数のストレージ装置をネットワークを介してアプリケーションサーバに接続して、このサーバに大容量のストレージ装置を提供するSANの技術が発展して来ている。このSAN技術では、アプリケーションサーバとストレージ装置間の通信プロトコルとして、ファイバー・チャネル(FC:Fibre Channel)プロトコルが一般的である。
【０００５】
SAN専用のネットワーク装置、例えば、FCプロトコルで転送されたデータをスイッチングするFCスイッチ等も、一般的に使用されている。しかし、FCベースのネットワーク装置はLAN用の装置と比較して高価であり、これが、SANがそれほど普及しない一因となっている。
【０００６】
IP-SANの登場
近年、SANにおけるアプリケーションサーバとストレージ装置300_間の通信プロトコルとして、FCプロトコルの代わりに、よりIPに親和性のあるプロトコルが幾つか登場して来ている。特に、注目されているプロトコルの１つが、iSCSI(SCSIprotocol over the Internet)プロトコルである。
【０００７】
このiSCSIプロトコルは、ストレージの世界で標準となっているSCSI(Small ComputerSystems Interface)のコマンドやデータをTCP/IPパケットでカプセル化することで、SCSIコマンド体系を外から見えなくし、ストレージデータをIPネットワーク上で転送可能にするためのプロトコルである。このプロトコルによって、ストレージ装置をIPネットワークに直接接続できることになる。
【０００８】
この結果、LAN/WANを構築する従来のハブ、ルータ、及びスイッチ等がストレージデータの転送に利用できることになり、SANとLANの統合による設備コスト及び管理コストの削減が期待されている。
【０００９】
さらに、iSCSIプロトコルには、以下の利点(1)〜(3)がある。
【００１０】
(1)アプリケーションサーバは、iSCSIプロトコルを意識することなく、ローカル・ストレージ装置にアクセスする従来の手順と同じ手順でデータを読み書きすることが可能である。
【００１１】
(2)ディスクへの読み書きは従来のSANと同じブロックデータによる読み書きであり、NAS(NetworkAttached Storage)のようなファイル・システムはストレージ側に必要としない。
【００１２】
(3)現在、ギガビットイーサネットの転送速度(1Gbps)とファイバー・チャネルベースのSANの伝送速度(1Gbps)はあまり変わりはないが、今後、10Gbpsのイーサネットが登場することや、さらに高速なイーサネット規格の登場も考えられることから、転送性能のさらなる向上が期待できる。
【００１３】
ストレージ仮想化
また、近年、「ストレージ仮想化技術」が登場して来ている。
【００１４】
図17は、このストレージ仮想化技術を示している。ストレージ管理装置500、アプリケーションサーバ600_1〜600_3(以下、符号600で総称することがある。)、及び複数のストレージ装置(ディスクアレイ300_1，300_2、及びテープ装置300_3(以下、符号300で総称することがある。)等)が、SAN640を介して相互に接続されている。
【００１５】
そして、複数のストレージ装置は、ストレージ仮想化技術によって、あたかも1つの仮想化ストレージ(ストレージプール)350として利用できる。
【００１６】
システム管理者は、ストレージ管理装置500から手動設定で(T10参照。)、仮想化ストレージ350を、例えば仮想化ストレージ領域351〜354の領域に分割し、この中の領域351〜353を、それぞれ、サーバ(ホスト)600_1〜600_3にプール割当し、領域354を未割当にすることができる。
【００１７】
すなわち、例えば、複数のベンダのストレージ装置300_1〜300_3をネットワーク接続して仮想的なストレージプール350を作成し、サーバ(或いは、このシステム管理者)600からストレージ装置300の物理構成を隠蔽することができる。また、ストレージ装置300の物理的な構成に依存することなく、柔軟にストレージ空間の割り当てや再配置等が可能になる。
【００１８】
ストレージ仮想化技術には、仮想化されたストレージ領域と実ストレージ領域との間の変換/対応付けを何処で行うかで、幾つかの方式がある。
【００１９】
一般的な方式としては、アプリケーションサーバ600内の仮想化ソフトウェアで実行する方式がある。この方式は、アプリケーションサーバ600にインストールされたボリューム管理ソフトウェアが、仮想化ストレージプール350の管理・割り当てを実行する方式である。また、ストレージ仮想化の設定及び管理は、図17に示したように、システム管理者がソフトウェア上で仮想ボリュームとして必要なディスク容量などを入力・設定する方式が一般的に行われている。
【００２０】
また、SAN環境における複数のストレージ装置において、SAN管理者が、ストレージ領域の再配置による配置最適化を簡便に行うことを目的としたストレージ管理システムがある(例えば、特許文献１)。
【特許文献１】特開２００３−１４０８３６号公報
【発明の開示】
【発明が解決しようとする課題】
【００２１】
課題(1)：ネットワーク転送性能の劣化
図18は、ネットワーク転送性能の劣化例(1)を示している。同図には、図17と同様にストレージ仮想化されたネットワークが示されている。図18のクライアント610_1〜610_4及びサーバ(ホスト)600_1，600_2(以下、符号600で総称することがある。)は、図17のサーバ600に対応し、図18のディスクアレイ300及び他のストレージ装置(図示せず。)は、図17のストレージ装置300(ディスクアレイ300_1，300_2、及びテープ装置300_3)に対応し、図18のルータ/スイッチ400_1〜400_4で構成されたIP-SANネットワーク640は、図17のSANネットワーク640に対応している。
【００２２】
このネットワークでは、クライアント610_1，610_2、及びサーバ600_1が、部署(業務)620_1に属し、クライアント610_3，610_4、及びサーバ600_2が、部署620_2に属している。
【００２３】
そして、ディスクアレイ300等で構成した仮想化ストレージ350_1及び350_2は、それぞれが、部署620_1及び620_2に割当られている。
【００２４】
このようにIP-SANネットワーク640上にストレージ仮想化技術を導入した場合、ホスト-ストレージ装置間のストレージデータは、IP-SANネットワーク640上で混在して転送されることになる。
【００２５】
すなわち、IP-SANネットワーク640上の同一リンク上を異なるホスト-ストレージ装置間のストレージデータが流れることになる。これによりストレージデータ転送に必要な帯域不足や転送遅延が発生し(障害T20参照。)、ネットワーク転送性能が劣化する。
【００２６】
図19は、ネットワーク転送性能の劣化例(2)を示している。同図では、IP-SANネットワーク640がWAN650に接続されている。この場合、IP-SANネットワーク640には、ホスト-ストレージ装置間のストレージデータ(トラフィック)の他に、ホスト−WAN650間で転送される通常の音声及びWeb等の通常データ(トラフィック)も流れる。
【００２７】
すなわち、リンク上に、通常データとストレージデータが混在して転送される。この結果、IP-SANネットワーク640上に輻輳、これに伴う伝送遅延又は帯域不足が発生し、転送性能が劣化する(障害T30，T31参照。)。
【００２８】
このような状態で、例えば、仮想化技術を用いたネットワーク上に分散された複数のストレージ装置を用いてRAID(RedundantArrays of Independent Disks)5等のストレージ冗長化手法を適用した場合、ネットワークの転送性能の劣化によって、データの読み書きする速度の低下などが発生する。
【００２９】
課題(2)：仮想ストレージ管理の煩雑化
ストレージ仮想化技術を用いてホスト(サーバ)に対して仮想ボリュームを作成する際は、ホストが必要とするディスク容量に対して、ネットワーク上に分散しているストレージ装置から、適切に使用ディスク領域を決定する必要がある。すなわち、ストレージ装置300内のディスクの使用率や空き容量に基づいてディスク領域を決定する必要がある。現在実施されている仮想化手法では、ディスクの空き状況を管理者が判断し、仮想ボリュームのために使用するディスク容量、およびストレージ装置300を決定しており、迅速な仮想化設定が出来ない。
【００３０】
さらに、IP-SANネットワーク640上で仮想化を実施するためには、すでに述べたように、選択されたディスク(ストレージ装置)の位置と、IP-SANネットワーク640の使用状態に基づいて、ストレージデータの適切な転送経路の決定する必要がある。また、この決定した経路をホストやネットワーク装置に設定する必要があり、これらを管理者が手動で実施するのは、非常に煩雑であり、迅速な経路決定及びその設定は困難である。この経路決定及び設定については、上述した特許文献１に示されたストレージ管理システムでは、言及されていない。
【００３１】
したがって本発明は、ネットワーク上に分散した複数のストレージ装置を仮想化して管理するストレージ方法及びストレージ管理システムにおいて、ストレージデータ転送性能が劣化しないようにストレージ仮想化及びストレージデータ用経路を設定することを課題とする。
【課題を解決するための手段】
【００３２】
上記の課題を解決するため、本発明のストレージ管理システムは、１つ以上のネットワーク装置と、該ネットワーク装置で構成されたネットワーク上のストレージデータ用(セッション/コネクション)で接続される１つ以上のホスト及び１つ以上のストレージ装置と、に接続されたストレージ管理サーバと、で構成されるストレージ管理システムであって、該ストレージ管理サーバが、各ストレージ装置のストレージ使用状態を管理するストレージ状態管理部と、各ネットワーク装置を監視することで該ネットワークのトラフィック状態を管理するネットワーク状態管理部と、該ストレージ使用状態及び該トラフィック状態に基づいて、該ストレージデータ用経路を決定して、該ネットワーク装置に設定する経路検索・設定部とを備えたことを特徴としている。
【００３３】
図１は、本発明に係るストレージ管理システムの動作原理を示している。同図には、１つ以上のネットワーク装置400_1〜400_4(以下、符号400で総称することがある。)で構成されたIP-SANネットワーク640と、このネットワーク640上に接続されたホスト200及びストレージ装置300_1，300_2(以下、符号300で総称することがある。)と、ネットワーク装置400、ホスト200、及びストレージ装置300に接続されたストレージ管理サーバ100が示されている。ホスト200とストレージ装置300は、ネットワーク640上のストレージデータ用経路(同図では、iSCSIセッション)700_1，700_2で接続されている。ストレージ管理サーバ100は、ストレージ状態管理部12、ネットワーク状態管理部14、及び経路検索・設定部13を備えている。
【００３４】
ストレージ状態管理部12は、各ストレージ装置300に接続され、各ストレージ装置300の使用状態(例えば、ストレージ装置の個別のディスク容量、及び使用率）を管理する。
【００３５】
ネットワーク状態管理部14は、各ネットワーク装置400に接続され、各ネットワーク装置400を監視することでストレージデータ用経路700_1，700_2等のトラフィック状態(例えば、伝送リンクの空き帯域やトラフィック使用量)を管理する。経路検索・設定部13は、該使用状態及び該トラフィック状態に基づいて、ストレージデータ転送性能が劣化しないように、経路を決定し、決定した経路を各ネットワーク装置400に設定する。
【００３６】
これにより、ストレージ装置の使用状態及びネットワークのトラフィック状態に対応したストレージデータ用経路の決定し、この経路をネットワーク装置(例えば、スイッチ)に設定することが可能になる。すなわち、対象とするホスト200に関するストレージデータ転送性能が劣化しないようにストレージデータ転送経路の設定することが可能になる。
【００３７】
また、本発明は、上記の本発明において、該ストレージ管理サーバが、該ストレージ使用状態に基づき、該ホスト又はシステム管理者から要求されたストレージ容量を満たすストレージ領域を選択する仮想ストレージ管理・制御部をさらに備え、該経路検索・設定部が、該選択されたストレージ領域と該トラフィック状態とに基づいて該ストレージデータ用経路を決定することができる。
【００３８】
すなわち、図１において、ストレージ管理サーバ100は、さらに仮想ストレージ管理・制御部11を備えている。この仮想ストレージ管理・制御部は、各ストレージ装置のストレージ使用状態、例えばストレージ装置内のディスク装置使用状態に基づき、ホスト又はシステム管理者から要求されたストレージ容量を満たすストレージ領域、例えばストレージ装置及びディスク装置を選択する。そして、仮想ストレージ管理・制御部は、この選択したストレージ領域を経路検索・設定部に与える。なお、選択されたストレージ領域は、複数のストレージ領域(ストレージ装置)に分散される場合もある。
【００３９】
該経路検索・設定部は、該ストレージ使用状態の代わりの該ストレージ領域、それと
上記のトラフィック状態に基づいて該ストレージデータ用経路を決定する。
【００４０】
このように、仮想ストレージ管理・制御部で、使用するストレージ領域を選択して、該経路検索・設定部に与えてもよい。
【００４１】
また、本発明は、上記の本発明において、該ストレージ使用状態を、リンクの使用帯域又は通信チャネル数とすることができる。
【００４２】
すなわち、経路検索・設定部13は、ネットワークの状態を考慮し、ストレージトラフィックが特定経路上に集中しないようなロジックを導入し、例えば、リンク上の使用帯域を監視・管理して、空き帯域が多いリンクを選択して経路を決定することもできる。
【００４３】
また、経路検索・設定部13は、経路(リンク)上のストレージトラフィック状態として、例えばIPネットワーク上のストレージ転送プロトコルであるiSCSIの通信チャネル(セッション)数をカウントし、セッション数(通信チャネル数)が少ないリンクを選択してストレージデータ用経路を決定することができる。
【００４４】
これにより、ストレージデータ転送性能を劣化させないための経路決定することが可能になる。
【００４５】
また、本発明は、上記の本発明において、該経路検索・設定部が、一のホストのストレージデータ用経路を決定するとき、他のホストの経路使用状態を該トラフィック状態として監視し、このトラフィック状態に基づき、該一のホストのストレージデータ用経路を決定することが可能である。
【００４６】
すなわち、経路検索・設定部は、一のホスト(例えば、ネットワークがVLANである場合、VLANユーザ)のストレージデータ用経路を決定するとき、ネットワークのトラフィック状態として、他のホストの経路(リンク)の使用状態を監視する。そして、経路検索・設定部は、なるべく他のホストが使用していない経路を選択して、一のホストのストレージデータ用経路として決定する。これにより、ストレージデータ転送性能を劣化させない、一のホストのストレージデータ用経路を決定することが可能になる。
【００４７】
また、本発明は、上記の本発明において、該仮想ストレージ管理・制御部が、該選択したストレージ領域及び該決定したストレージデータ用経路を該ホストに通知することが可能である。これにより、ストレージ装置の使用状態に対応したストレージ領域とネットワークのトラフィック状態に対応したストレージデータ用経路をホストに割り当てることが可能になる。
【００４８】
また、本発明は、上記の本発明において、該経路検索・設定部が、予め、該ホストと該ストレージ装置の間に複数のスパニング・ツリーを構築しておき、該ホストからストレージ容量要求があったとき、該スパニング・ツリーのiSCSIセッション数又はホップ数に基づき、該複数のスパニング・ツリーの中から該ストレージデータ用経路を選択することができる。
【００４９】
すなわち、経路検索・設定部が、予め、ホストとストレージ装置の間に複数のスパニング・ツリーを構築しておく。そして、経路検索・設定部は、該ホストからストレージ容量要求があったとき、ホストとストレージ装置の間の該スパニング・ツリーのiSCSIセッション数又はホップ数に基づき、複数のスパニング・ツリーの中から、ストレージデータ転送性能を劣化させないようにストレージデータ用経路を選択する。
【００５０】
また、本発明は、上記の本発明において、該経路検索・設定部は、該決定したストレージデータ用経路を該ホストに通知することができる。これにより、各ネットワーク装置400に設定された経路を経由して、ホスト200は、ストレージ領域との間でストレージデータを送受信することが可能になる。
【００５１】
また、本発明は、上記の本発明において、該経路検索・設定部は、該選択されたストレージ領域が複数であるとき、該ホストと該選択されたストレージ領域との間を接続するストレージデータ用経路同士の遅延時間の偏差が小さくなるようなストレージデータ用経路を選択することができる。これにより、各ストレージ領域(ストレージ装置)とホストとの間の接続するストレージデータ用経路のデータ伝送遅延時間を同じにすることが可能になる。
【００５２】
また、本発明は、上記の本発明において、該ストレージデータ用経路を、VLAN又はMPLS方式で決定することができる。これにより、ストレージデータ用経路を仮想的な経路とすることができる。
【００５３】
また、本発明は、上記の本発明において、該ネットワーク装置を、IPネットワーク装置とすることが可能である。これにより、IPストレージネットワークを構築することが可能になる。
【００５４】
また、本発明は、上記の本発明において、該経路検索・設定部は、それぞれ、該ストレージ装置及び該ネットワーク装置に障害が発生、又は障害になると予測されたとき、該ストレージ使用状態及び該トラフィック状態に基づいて、該障害発生又は障害になると予測されたストレージ装置のストレージ領域の代替ストレージの検索、及び該障害が発生、又は障害になると予測されたネットワーク装置に関連するストレージデータ用経路の代替経路を検索して決定することができる。
【００５５】
すなわち、経路検索・設定部はストレージ装置に障害が発生又は障害になると予測されたとき、ストレージ使用状態及びトラフィック状態に基づいて、該障害発生又は障害になると予測されたストレージ装置のストレージ領域の代替ストレージを検索する。また、経路検索・設定部は、該ネットワーク装置に障害が発生、又は障害になると予測されたとき、ストレージ使用状態及びトラフィック状態に基づいて、該障害発生又は障害になると予測されネットワーク装置に関連するストレージデータ用経路の代替経路を検索して決定することができる。
【００５６】
これにより、ストレージ装置、及びネットワーク装置に障害が発生又は障害が発生する可能性があるとき、高速で、ストレージ領域及びストレージデータ用経路を、代替えのストレージ領域及びストレージデータ用経路に切り替えることが可能になる。
【００５７】
なお、本発明では、ストレージ装置及びネットワーク装置の障害発生又は障害が発生することを予測する手段として種々の従来技術を用いることができる。
【００５８】
また、本発明は、上記の本発明において、該ホストが、該ストレージ管理サーバにストレージ領域確保要求を与え、このストレージ領域確保要求に対して応答されたストレージ領域を仮想ストレージに対応付ける仮想化マッピング部と、該ストレージ領域確保要求に対して応答されたストレージデータ用経路経由で、ストレージデータが伝送されるように、該ストレージデータ用経路の経路情報を該ストレージデータに設定する経路情報設定部とを備えることが可能である。
【００５９】
図１において、ホスト200は、仮想化マッピング部31及び経路情報設定部(同図では、VLAN情報設定部33)を備えている。仮想化マッピング部31は、ストレージ管理サーバ100にストレージを要求するストレージ領域確保要求を送信する。このストレージ領域確保要求には、例えば、ホストが必要とする初期設定時のディスク容量割当要求、運用時の追加容量割当要求、及び障害発生時の容量割当要求等がある。さらに、ストレージ領域確保要求には、経路設定要求やその優先度を含ませることができる。
【００６０】
このストレージ領域確保要求に対してストレージ管理サーバ100からは、ストレージ領域(例えば、論理ボリュームのアドレス情報や、使用する領域の情報)及びストレージデータ用経路(例えば、VLAN識別子等の経路情報で指定された経路)が応答されて来る。仮想化マッピング部31は、ストレージ領域(論理ボリューム)と仮想領域(仮想ボリューム)を対応付ける。経路情報設定部33は、ストレージデータ用経路経由で、ストレージデータを伝送するように、該ストレージデータ用経路の経路情報(例えば、VLANタグ)をストレージデータに設定する。
【００６１】
上記の対応付け機能は、ストレージ管理サーバの、ホストに関する仮想化ストレージエリアネットワークを構築する仮想化設定機能とみなすことができる。すなわち、ストレージ管理サーバが、ホストからの要求に応じて、仮想ボリュームのために使用することを決定した論理ボリューム(又は実ボリューム)の仮想化情報をホストに設定(通知)し、この仮想化情報に基づきホストは、仮想ボリューム(ネットワーク上に分散して配置されたストレージ装置)にアクセスできるようになる。
【００６２】
なお、上記の経路情報をタグとすることができる。すなわち、ストレージデータに、例えば、VLANタグを付与することにより、ストレージデータは、タグで指定されたストレージデータ用経路を経由して転送されることになる。
【００６３】
また、本発明は、上記の本発明において、該ストレージデータをSCSIデータに変換するSCSI制御部をさらに備える。このSCSI制御部はSCSIデータをiSCSIパケットに変換し、このiSCSIをIPネットワーク上で転送するためのiSCSIセッションを設定する。これにより、該仮想化マッピング部は、iSCSIセッションと仮想ストレージとを対応付けることが可能である。
【００６４】
図１において、ホスト200は、SCSI制御部32をさらに備え、このSCSI制御部32は、ストレージデータ用経路(例えば、VLANネットワーク660)上にiSCSIセッション700_1及び700_2を設定する。仮想化マッピング部31は、ストレージ領域(論理ボリューム)とiSCSIセッションとを、例えば、論理ボリューム情報テーブルで対応付ける。これにより、ストレージデータをiSCSIセッション経由で送信することが可能になる。以上によりIPネットワーク上に仮想化ストレージネットワークを構築し、ストレージデータをiSCSIセッションを用いて送信することが可能になる。
【００６５】
また、本発明は、上記の本発明において、複数の該論理ストレージ領域間で、RAID機能を実現するRAID制御部を、さらに備えたことが可能である。
【００６６】
すなわち、図１において、ホスト200は、さらにRAID制御部34を備えている。このRAID制御部34は、該仮想ストレージ(仮想ボリューム)に使用する複数の論理ストレージ領域(例えば、ディスク)間で、冗長ディスク構成を制御するRAID機能を可能にする。
【００６７】
すなわち、仮想ボリュームに、冗長ディスクとしてネットワーク上に分散して存在する複数のストレージ装置中のディスクを割り当てることが可能になる。
【００６８】
さらに、本発明は、上記の本発明において、該RAID制御部は、該ストレージ装置に障害が発生した時、該ストレージ管理サーバに障害通知を行うことが可能である。この障害通知によって、ストレージ管理サーバに、障害が発生したストレージ領域の代替ストレージ領域を割り当てるように機能させることが可能になる。
【００６９】
さらに、本発明は、１つ以上のネットワーク装置と、該ネットワーク装置で構成されたネットワーク上のストレージデータ用経路(セッション/コネクション)で接続される１つ以上のホスト及び１つ以上のストレージ装置と、に接続されたストレージ管理サーバと、で構成されるストレージ管理システムのストレージ管理方法において、該ストレージ管理サーバが、各ストレージ装置のストレージ使用状態を管理する第１のステップと、各ネットワーク装置を監視することで該ネットワークのトラフィック状態を管理する第２のステップと、該ストレージ使用状態及び該トラフィック状態に基づいて、該ストレージデータ用経路を決定して、該ネットワーク装置に設定する第３のステップとを実行することを特徴としている。
【発明の効果】
【００７０】
以上説明したように、本発明に係るストレージ管理システムによれば、ストレージ管理サーバが、ストレージ(ディスク)状態及びネットワーク状態を管理し、ホストからのストレージ(ディスク)割当要求に応じて、仮想ボリュームのために使用するディスク或いはストレージ装置を決定した後、例えば、使用ディスクの位置情報に基づいて直ちに、ホストとストレージ装置との間のストレージデータ用経路を決定することが可能となる。
【００７１】
すなわち、仮想化処理及びネットワーク設定処理の自動化及び高速化が達成できる。これにより、従来の管理者による手動設定と比較して迅速な設定ができることになり、管理コストは低減する。
【００７２】
また、本発明に係るストレージ管理システムによれば、例えば、IPネットワーク上でストレージ仮想化技術を導入したことに起因するネットワーク転送性能の劣化を回避できる。これにより、安価なIPネットワークを用いたIP-SANによるストレージ仮想化が、ネットワーク転送性能の劣化を伴わずに、従来のFCベースのSANの設備コストと比較して低い設備コストで実現できる。
【発明を実施するための最良の形態】
【００７３】
構成実施例：ストレージ管理サーバ100
図２は、本発明に係るストレージ管理システムにおけるサーバストレージ管理サーバ100の構成実施例を示している。このストレージ管理サーバ100が備えている機能部は、仮想ストレージ管理・制御部11、ストレージ状態管理部12、経路検索・設定部13、ネットワーク状態管理部14、及び通信インタフェース15である。
【００７４】
仮想ストレージ管理・制御部11は仮想ボリューム/論理ボリューム対応管理テーブル16及びディスク検索部17を備え、ストレージ状態管理部12はストレージ状態管理テーブル18を備え、経路検索・設定部13は経路選択処理部19を備え、ネットワーク状態管理部14はネットワーク状態管理テーブル20を備えている。
【００７５】
ストレージ管理サーバ100の各機能部の動作例
以下に、上記の機能部の基本的な動作例を説明する。
【００７６】
(1)ストレージ状態管理部12
ストレージ状態管理部12は、IPネットワーク640に接続されているストレージ装置300及びこのストレージ装置300内の論理ボリューム(LocalUnit Number、以下、LUNと略称することがある。)の状態を、ストレージ状態管理テーブル18で管理する。
【００７７】
図３は、ストレージ状態管理部12が備えているストレージ状態管理テーブル18の一実施例を示している。このテーブル18は、ストレージ装置名18a、ストレージ装置IPアドレス18b、LUN識別子18c、LUN容量18d、及びLUN空き容量18eで構成されている。
【００７８】
例えば、テーブル18には、ストレージ装置300_1のエントリとして、ストレージ装置名18a＝“ストレージ300_1”、ストレージ装置IPアドレス18b＝“20.0.10.1”、LUN識別子18c＝“LUN1”及び“LUN2”、これらのLUN容量18d＝“50M”及び“200M”、並びに各LUN空き容量18e＝“20M”及び“200M”が登録されている。なお、このLUN空き容量18eの代わりに使用率等としてもよい。
【００７９】
ストレージ装置300の状態を収集する手段として、例えば下記の手段(1)〜(3)を用いてもよい。
【００８０】
手段(1)：ストレージ状態管理部12が、定期的に、SNMP(SimpleNetwork Management Protocol)を用いて、ストレージ装置300が管理するMIB(Management InformationBase)情報を取得する。MIB情報には、SNIA-J(Storage Networking Industry Association JapanForum)が規定する、ストレージ管理情報があり、そこではストレージ装置300内の状態情報として、IPアドレスや空き容量等が格納されている。
【００８１】
手段(2)：ストレージ状態管理部12は、ホストからの、例えば、仮想ボリューム割当要求又は障害通知を受付ける毎に、個々の論理ボリュームの容量を更新して管理する。
【００８２】
手段(3)：また、ストレージ状態管理部12は、新たにネットワークに、例えば、ストレージ装置300_2が追加又は除去された場合、それぞれ、ストレージ状態管理テーブル18に、ストレージ装置300_2のエントリ18_2(図３参照。)が追加/削除登録する。
【００８３】
(2)仮想ストレージ管理・制御部11
図４は、図２に示した仮想ストレージ管理・制御部11をより詳細に示しており、この仮想ストレージ管理・制御部11は、仮想ボリューム/論理ボリューム対応管理テーブル16及びディスク検索部17で構成されている。
【００８４】
図５は、図４に示した仮想ボリューム/論理ボリューム対応管理テーブル16の一実施例を示しており、このテーブル16は、ホスト情報16a、仮想ボリューム情報16b、RAID情報16c、及び論理ボリューム情報16dで構成されている。情報16a〜16dには、それぞれ、ホスト名16a1及びホストIPアドレス16a2、仮想ボリューム名16b1及び仮想ボリューム容量16b2、RAIDレベル16c1、並びにストレージ装置IPアドレス16d1及びLUN識別子(以下、識別子をIDと略称することがある。)16d2を含んでいる。
【００８５】
動作において、仮想ストレージ管理・制御部11は、ネットワーク中に接続されたホスト200(図１参照。)に関して、仮想ボリュームと、この仮想ボリュームを構成する論理ボリューム(＝論理ユニット)の対応関係をテーブル16で管理する。
【００８６】
例えば、仮想ストレージ管理・制御部11において、ディスク検索部17は、通信インタフェース15を介してホスト200から、仮想ボリューム割当要求810を受付けた場合、ストレージ状態管理部12が備えているストレージ状態管理テーブル18を参照して、各ストレージ装置の論理ボリュームのLUN空き容量18eや使用率などの情報に基き、ホストから要求された仮想ボリューム(ディスク)の容量を満たす論理ボリュームを検索して選択し、テーブル16に登録する。
【００８７】
同様に、ディスク検索部17は、すでに運用中のディスク(ストレージ装置)に障害が発生した場合に、ホスト200から受信した障害通知910に示された障害発生仮想ボリュームの代わりに利用可能な論理ボリュームを検索選択し、テーブル16に登録する。
【００８８】
ディスク選択のロジックに関しては、一例として空き容量の多い論理ボリュームから、要求容量を満たすように順に選択する方法を取ることが可能である。
【００８９】
テーブル16(図５参照。)には、ディスク検索部17が選択した、例えば、ホスト200のエントリとして、ホスト名＝“ホスト200”、ホストIPアドレス＝“10.0.0.101”、仮想ボリューム名＝“ボリューム1”、仮想ボリューム(LUN)容量＝“1Gバイト”、RAIDレベル＝“RAID1”、ストレージ装置IPアドレス＝“20.0.10.1”，“20.0.10.1”，及び“30.0.10.1”、これらのストレージ装置IPアドレス16d1にそれぞれ対応するLUN識別子＝“LUN1”，“LUN2”，及び“LUN3が登録されている。
【００９０】
また、仮想ストレージ管理・制御部11は、使用する論理ボリュームが決定されると、この論理ボリュームが含まれるストレージ装置300の位置情報(例えばIPアドレス)を経路検索・設定部13に渡す。
【００９１】
(3)経路検索・設定部13
経路検索・設定部13は、ストレージ状態管理部12からのストレージ装置300の位置情報(例えば、IPアドレス)に基づき、ホスト200−ストレージ装置300間の経路を検索する。経路検索・設定部13における経路検索方式は後述する。
【００９２】
(4)ネットワーク状態管理部14
ネットワーク状態管理部14は、ネットワーク状態管理テーブル20を備え、定期的にネットワーク内のネットワーク装置(ノード)にアクセスし、ネットワーク装置毎、リンク単位にトラフィック状態を収集保持し管理している。
【００９３】
図６は、ネットワーク状態管理テーブル20の実施例を示している。このテーブル20は、ネットワーク装置(ノード)識別子20a、ノードIPアドレス20b、リンク識別子20c、iSCSIセッション数20d、及びリンク使用帯域20e等のネットワーク状態で構成されている。
【００９４】
テーブル20には、例えば、ネットワーク装置400_1のエントリとして、その識別子20a＝“SW400_1”、そのIPアドレス20b＝“10.0.100.101”、リンク識別子20c＝“link01”、iSCSIセッション数20d＝“1”、及びリンク使用帯域20e＝“20M”が保持されている。
【００９５】
ネットワーク状態の収集方式
ネットワーク状態の収集方式として、例えば、下記の方式(1)〜方式(3)等が考えられる。
【００９６】
方式(1)：リンクの使用帯域に関しては、SNMPを用いてネットワーク装置(ノード)が保持しているMIB情報を取得する方式。
【００９７】
方式(2)：ユーザ(ホスト)からの仮想ボリューム割当要求を受付け、経路を決定する毎に、使用リンクの空き帯域を減算して、現時点でのリンク空き帯域を管理する方式。
【００９８】
方式(3)：iSCSIセッション数に関しては、VLANの経路が決定した時点で、ホスト−ストレージ間のiSCSIセッションが通過するリンクが決定するので、その時点で、リンクのiSCSIセッション数を更新することでトラフィック状態を管理する。
【００９９】
(5)通信インタフェース15
上記の仮想ストレージ管理・制御部11、ストレージ状態管理部12、経路検索・設定部13、及びネットワーク状態管理部14と、ホスト200、ストレージ装置300、及びネットワーク装置400との間で送受信される信号をインタフェースする。
【０１００】
構成実施例：ホスト200
図７は、本発明に係るストレージ管理システムにおけるホスト200の構成実施例を示しており、ホスト200が備えた機能部は、アプリケーション・OS部30、仮想化マッピング部31、SCSI・iSCSI制御部32、VLAN情報設定部33、RAID制御部34、及び通信インタフェース35である。
【０１０１】
この中の仮想化マッピング部31は、仮想ボリューム/論理ボリューム対応テーブル36及び論理ボリューム情報テーブル37を備えている。また、VLAN情報設定部33には、VLANタグ情報付与部33aが付加されている。
【０１０２】
ホスト200の各機能部の動作
以下に、上記の中の主な機能部の動作を説明する。
【０１０３】
(1)仮想化マッピング部31
仮想化マッピング部31は、ストレージ管理サーバ100が通知して来た仮想化情報、例えば仮想化ストレージマッピング情報830又は930に基づき、仮想ボリュームと論理ボリュームの対応付け、及び論理ボリュームとiSCSIセッションの対応付けを行う。仮想ボリュームと論理ボリュームとの対応付けは、仮想ボリューム/論理ボリューム対応テーブル36に示される。
【０１０４】
図８は、仮想ボリューム/論理ボリューム対応テーブル36の実施例を示しており、このテーブル36は、仮想ボリューム名36a、仮想ボリュームセクタ情報36b、論理ボリューム名36c、及び論理ボリュームセクタ情報36dで構成されている。
【０１０５】
テーブル36では、仮想ボリューム名36a＝“Volume#1”と論理ボリューム名36c＝論理ボリューム#1〜#3が対応付けられている。
【０１０６】
論理ボリュームとiSCSIセッションの対応付けは、本発明に係る論理ボリューム情報テーブル37が必要である。
【０１０７】
図９は、論理ボリューム情報テーブル37を示しており、このテーブル37は、論理ボリューム名37a、SCSIポート識別子37b、及びiSCSIセッション識別子37cで構成されている。
【０１０８】
すなわち、テーブル37には、論理ボリューム名37a＝“LUN#1”に対して、この論理ボリュームが使用するSCSIポート識別子37b＝“Port#1”及びこれに対応するiSCSIセッション識別子37c＝“#1”が対応付けられている。
【０１０９】
これらの要素は、ストレージ管理サーバ100から仮想ボリュームとして使用する論理ボリュームのアドレスに基づいて、iSCSIセッションを確立する過程で決定される。
【０１１０】
(2)SCSI・iSCSI制御部32
SCSI・iSCSI制御部32は、実際のデータをストレージデータ(SCSIデータ)に変換すると共に、このSCSIデータをネットワーク上で転送するためのiSCSIセッションの構築及び管理を行う。
【０１１１】
(3)VLAN情報設定部33
VLAN情報設定部33は、ストレージ管理サーバ100から通知されたVLAN識別子や優先度情報などのVLAN識別情報を、実際のストレージデータ転送の際に、VLANタグ情報付与部33aを介してイーサネットフレームに付与する機能である。
【０１１２】
(4)RAID制御部34
RAID制御部34は、仮想ボリュームに使用する複数の論理ボリューム間で、RAID機能を実現する機能である。すなわち、RAID制御部34は、自分自身内のRAIDアルゴリズムに従って、仮想化マッピング部31から受信したデータを各論理ボリュームへ振り分け、各論理ボリュームに対応するSCSIポートへ転送する。逆に、RAID制御部34は、RAIDアルゴリズムに従って、各SCSIポートから受信したデータを結合し、仮想化マッピング部31へ転送する。
【０１１３】
また、RAID制御部34は、ディスク障害発生時には、ストレージ管理サーバ100へ障害通知910を行う。この障害通知910は、故障した論理ボリュームの識別情報を含み、通常のTCP/IP通信で、ストレージ管理サーバ100に通知される。
【０１１４】
動作実施例：仮想化設定(仮想化ボリューム作成)
ホスト−ストレージ装置間における仮想化設定(仮想化ストレージ(ボリューム)作成)の場合には、(1)ホスト接続時、及び(2)ストレージ(ボリューム)障害発生時がある。以下に、それぞれ、(1)ホスト接続時、及び(2)ストレージ障害発生時に対応する仮想化設定動作実施例(1)及び実施例(2)を説明する。
【０１１５】
動作実施例(1)：ホスト接続時の仮想化設定動作手順
図10には、本発明に係るストレージ管理システムの動作実施例(1)が示されている、この実施例(1)では、ホスト200の初期設定時、すなわち、ホスト200をIP-SANネットワーク640(図１参照。)に接続するときにおける仮想化設定の動作手順例が示される。動作実施例(1)を以下に説明する。
【０１１６】
ステップS100：ネットワーク640にホスト200が接続され、ホスト200は接続処理を実行する。
【０１１７】
ステップS110：ホスト200は、例えば、自分自身の設定ファイルやWEB入力メニュー等から、仮想ディスク容量、RAIDレベル、転送優先度、自分自身のIPアドレスなど設定し、これらの情報を含んだ仮想ボリューム割当要求(仮想化設定処理要求)810をストレージ管理サーバ100に送信する。
【０１１８】
ステップS120(仮想化処理)：ストレージ管理サーバ100において、仮想ストレージ管理・制御部11は、仮想ボリューム割当要求810を受信し、使用する論理ボリュームの選択やVLANの経路選択する仮想化処理を実行する。
【０１１９】
図11は、ステップS120の仮想化処理をより詳細に示している。この処理を以下に説明する。
【０１２０】
ステップS121(使用ディスクの選択処理)：仮想ストレージ管理・制御部11において、ディスク検索部17(図３参照。)は、ストレージ状態管理テーブル18を参照して、ストレージ装置300の中から、仮想ボリューム割当要求810で要求された容量の空き容量を有するディスクを検索し、この検索したディスクの内から、例えば空き容量の多いディスク(論理ボリューム)のを選択する。
【０１２１】
ステップS122(VLAN経路検索処理)：経路検索・設定部13(図２参照。)は、選択されたディスク(ストレージ装置)とホスト200との間を接続するVLAN経路を、ネットワーク状態管理部14のネットワーク状態管理テーブル20(図６参照。)を参照して検索する。このVLAN経路検索処理の詳細は後述する。
【０１２２】
ステップS130(ネットワーク設定処理)：図10において、ストレージ管理サーバ100の経路検索・設定部13は、上記のVLAN経路検索処理で決定したVLAN経路に関連した各ネットワーク装置400に、VLAN情報を含むVLAN設定要求820を送信する。これにより、選択されたディスク(ストレージ装置)とホスト200との間にVLAN経路が設定される。
【０１２３】
ステップS140(ホスト設定処理)：さらに、経路検索・設定部13は、論理ボリューム情報及びVLAN識別子等を含むVLANタグ・仮想ストレージマッピング情報830をホスト200に通信インタフェース15(図２参照。)を経由して送信する。
【０１２４】
ステップS150：ホスト200において、仮想化マッピング部31は、マッピング情報830を受信し、この情報830に含まれる論理ボリュームに対してiSCSIのセッション700を確立するため、仮想ボリュームと論理ボリューム間の対応付け、及び論理ボリュームとiSCSIセッションの対応付けを行う。そして、SCSI・iSCSI制御部32は、ストレージ装置300に対してiSCSIセッション確立要求840を与え、iSCSIのセッション700(図１参照。)を確立する。
【０１２５】
ステップS160：これによって仮想化設定シーケンスが完了し、ホスト200のアプリケーション・OS部30は仮想ボリュームに対して読み書きが可能になる。
【０１２６】
動作実施例(2)：ストレージ障害発生時の仮想化設定動作手順
図12は、本発明に係るストレージ管理サーバの動作実施例(2)を示しており、この実施例(2)では、ホスト200が仮想ボリュームを使用している最中に、仮想ボリュームを構成する論理ボリューム(ストレージ装置)に障害が発生した場合や、故障が予測された場合に、代替ボリュームを検索し仮想化設定する動作手順が示されている。この動作手順例を以下に説明する。
【０１２７】
なお、この実施例(2)では、RAIDによる運用を想定している。RAID、例えば、“RAID1”，“RAID0+1”，“RAID5”等では、それ自身がディスク障害に対してそれぞれリカバリ動作を行う。このため、代替ボリュームは必要ないとも考えられるが、RAIDによるリカバリ動作自身の負荷により、ディスクの読み書き速度等が低下する。
【０１２８】
したがって、RAID運用時においても、故障ディスクの迅速な交換と復旧が必要不可欠である。そして、この代替ボリュームによる仮想化を行うことにより、システムを停止させることなく、故障ディスクの交換を行うことが可能となる。
【０１２９】
例えば、“RAID1”，“RAID0+1”等のようにミラーリング(複数ボリューム間でのコピー機能)を行っている場合は、故障を検知した時点で代替用の新論理ボリュームによる仮想化設定を実施し後、新論理ボリュームに旧データをコピーし、さらにホスト200において新論理ボリュームへのアクセス切替えを行うことで仮想化設定処理が完了する。
【０１３０】
また、“RAID5”のようなパリティデータ付加によるデータの分散化手法に関しては、故障してからバックを取ることはできないため、予め論理ボリュームの障害を予測し、故障の予兆が検出された場合、代替ボリュームによる仮想化設定を実施した後、“RAID1”，“RAID0+1”の場合と同じ処理を行う。
【０１３１】
予測による仮想化設定シーケンスは、“RAID1”，“RAID0+1”の場合にも適用可能である。また、ディスクの障害予測に関しては、従来の技術である予兆監視機能等が利用可能である。
【０１３２】
ステップS200：ストレージ装置300内でディスク障害が発生し、障害信号900がホスト200に通知される。
【０１３３】
ステップS210：ホスト200は、障害信号900を検知する。例えば、ホスト200のRAID制御部34が、RAID機能自身が本来ディスク故障時のリカバリ動作を行うことから、リカバリ動作の開始により、障害の発生を検知することができる。
【０１３４】
ステップS220：ホスト200は、障害が発生した論理ボリューム情報を含んだ障害通知910を、ストレージ管理サーバ100に与える。なお、この通知手段として、SNMP(SimpleNetwork Management Protocol:簡易ネットワーク管理プロトコル)、COPS(common Open Policy Service)、又はTCP/IP通信等のメッセージを利用してもよい。
【０１３５】
ステップS230(仮想化処理)：ストレージ管理サーバ100において、仮想ストレージ管理・制御部11は、障害通知910を受信し、障害が発生した論理ボリュームの代替論理ボリュームを検索して選択し、VLANの経路選択する仮想化処理を実行する。
【０１３６】
図13は、ステップS230の仮想化処理をより詳細に示している。この処理を以下に説明する。
【０１３７】
ステップS231(使用ディスク選択処理)：仮想ストレージ管理・制御部11は、故障したディスク(論理ボリューム)の容量を満たすディスクを検索し選択する。
【０１３８】
ステップS232(VLAN経路検索処理)：仮想ストレージ管理・制御部11は、障害が発生したディスク以外のディスク及び選択したディスクとホスト200間を接続するVLAN経路を検索する。このVLAN経路検索処理は、実施例(1)のステップS122と同様であり、詳細は後述する。
【０１３９】
ステップS240：図12において、ストレージ管理サーバ100の経路検索・設定部13は、検索されたVLAN経路の中から適当なVLAN経路を選択する。そして、経路検索・設定部13は、選択したVLAN経路設定を要求する新VLAN設定要求920を、この新VLAN経路に関連するネットワーク装置400に与えて、選択したディスク(論理ボリューム)及び障害が発生していないディスクとホスト200との間を接続するVLAN経路を設定する。
【０１４０】
ステップS250(ホスト設定処理)：ストレージ管理サーバ100は、設定したVLAN経路情報(例えば、タグ)及び選択された論理ボリュームを含むVLANタグ・仮想ストレージマッピング情報930をホスト200に与える。
【０１４１】
ステップS260(ストレージ通信設定処理)：ホスト200において、仮想化マッピング部31は、マッピング情報930を受信し、この情報930に基き、論理ボリューム/仮想化ボリュームの対応付け(図８参照。)、および論理ボリューム/iSCSIセッションの対応付け(図９参照。)を行う。そして、SCSI・iSCSI制御部32は、対応付けされたiSCSIセッションの確立を要求するiSCSIセッション確立要求940を、ストレージ装置300に与えてiSCSIセッションを確立する。
【０１４２】
ステップS270〜S290：VLAN情報設定部33は、選択された論理ボリューム(代替ボリューム)へのアクセス切替を行った後、切替完了通知950をストレージ管理サーバ100へ送出する。ストレージ管理サーバ100は、障害発生前に使用していたVLANの解除をネットワーク装置400に対して実施する。
【０１４３】
これにより、障害が発生した論理ボリュームを、代替の論理ボリュームに切り替えた仮想化ストレージが構成されたことになる。
【０１４４】
VLAN経路検索処理
ここで、実施例(1)のステップS122(図11参照。)及び実施例(2)のステップS232(図13参照。)で述べたVLAN経路検索処理の詳細を以下に説明する。
【０１４５】
ホスト−ストレージ装置間に経路を設定する方式、すなわち、仮想ネットワークを構築する方式として、次の方式(1)及び(2)等がある。
【０１４６】
経路設定方式(1)
VLAN(仮想LAN)技術を用いたホスト−ストレージ装置間を接続する経路検索である。VLANは、ネットワークレイヤ２における転送技術であり、イーサネットワーク上で、ユーザ毎に経路を設定し同一ネットワーク上で論理的な仮想ネットワークを構築する手段であり、現在一般的に利用されている。ホスト−ストレージ装置の組をユーザSANと呼び、ユーザSAN単位でVLAN経路を決定する。
【０１４７】
経路設定方式(2)
VLAN技術以外のホスト−ストレージ装置間を接続する経路検索である。レイヤ３の技術であるMPLS(Multi-protocolLabel Switching)のラベルパス技術や、ATM(Asynchronous Transfer Mode)の仮想コネクション(VC)や仮想パス(VP)などを用いて、ユーザSAN毎に仮想的にネットワークを構築することも可能である。
【０１４８】
方式(1)及び(2)いずれにおいても、ストレージ転送に適した経路を決定することが重要である。ここでは、上記の経路設定方式(1)、VLAN経路検索処理に基き、ストレージ転送に適したVLAN経路選択する方式(1)〜(3)を、以下に説明する。
【０１４９】
経路選択方式(1)
ネットワークの伝送リンク中の予約空き帯域に基づいて経路を決定する方式である。すなわち、ストレージ管理サーバ100が、ホスト200に仮想ボリュームとVLANを設定する毎に、リンク帯域を確保して残帯域を管理しておき、VLAN経路検索処理において、空き帯域が多いリンクを除外して、VLAN経路の検索を実行することで、ネットワークの帯域の有効利用を図る方式である。
【０１５０】
経路選択方式(2)
ネットワークの伝送リンク中のストレージトラフィック量に基づいて経路を決定する方式である。すなわち、リンク中のストレージトラフィック量に基づいて、ストレージトラフィック量が多いリンクを除外して、VLAN経路を検索し、ストレージデータの転送性能の劣化を防ぐ。リンク中のストレージトラフィック量を見積もるために、リンク中のiSCSIコネクションの数を考慮する。すなわち、リンク中を通過するiSCSIセッション数が多いリンクほどストレージトラフィックの転送量が多いリンクであると見なす。
【０１５１】
経路選択方式(3)
ホスト−ストレージ装置間の距離に基づき経路を決定する方式である。実施例(2)で示したように、ネットワークに渡ってRAID機能を実施する場合、ホスト−論理ボリューム(ストレージ装置)間の距離が論理ボリューム毎に異なると、例えば、データの読み込み処理時に遅延のばらつきによる性能の劣化が発生する可能性がある。
【０１５２】
したがって、ホスト−論理ボリューム間の遅延時間はなるべく短いか、或いは等しいことが望ましい。そこで、ホスト−ストレージ装置間のホップ数に注目し、各ホスト−ストレージ装置間のホップ数が、なるべくその平均値に近くなるような経路を、すなわち、偏差が小さくなるような経路を選択する。
【０１５３】
複数スパニング・ツリーを用いた経路設定選択の実施例
ここで、具体的な経路設定選択の実施例として、予め複数のスパニング・ツリー(Spanning Tree：以下、STと略称することがある。)を構築しておき、上記の経路選択方式(2)と同様にiSCSIセッション数を基準として、複数のツリーの内の１つを経路として選択する経路設定選択実施例(1)とする。そして、上記の経路選択方式(3)と同様にホップ数を基準として経路を選択する経路設定選択実施例(2)とする。以下に、経路設定選択実施例(1)及び(2)を説明する。
【０１５４】
経路設定選択実施例(1)：選択基準＝“iSCSIセッション数”
この実施例(1)では、“iSCSIセッション数”を選択基準としてスパニング・ツリーを選択する。
【０１５５】
図14は、経路検索・設定部13(図２参照。)が備えた経路選択処理部19の構成実施例を示している。この経路選択処理部19は、ST事前構築処理部19a、収容ST決定処理部19b、及びST設定処理部19cを備えている。経路選択処理部19の動作を以下に説明する。
【０１５６】
ステップS11：ST事前構築処理部19aは、予め、ループが発生しないスパニング・ツリーを複数決定し、ST設定処理部19cは、決定したスパニング・ツリー(経路)に関係するネットワーク装置400に対してスパニング・ツリー設定要求を送出して、スパニング・ツリーを設定する。
【０１５７】
ステップS12：収容ST決定処理部19bは、仮想ストレージ管理・制御部11から指定されたホスト200及びストレージ装置300間を接続するスパニング・ツリーを、予め設定した複数のスパニング・ツリーの中から選択する。そして、収容ST決定処理部19bは、選択したスパニング・ツリーのVLAN情報(VLAN識別子)をホスト200に通知する。
【０１５８】
図15は、上記のステップS12の経路選択動作をより詳細に示した経路選択動作実施例(1)である。この実施例(1)においては、収容ST決定処理部19bが、“iSCSIセッション数”に基きスパニング・ツリーを選択する。以下に、経路選択動作実施例(1)を説明する。
【０１５９】
ステップS300：収容ST決定処理部19bは、事前に構築されたスパニング・ツリーの中から利用可能なスパニング・ツリーを、使用ストレージ装置300に基づき選択する。
【０１６０】
ステップS310：収容ST決定処理部19bは、リンク中のiSCSIセッション数が、予め設定されている所定の閾値以上のリンクを含むスパニング・ツリーを除外する。
【０１６１】
ステップS320，S330：収容ST決定処理部19bは、さらに、スパニング・ツリー毎に、iSCSIセッション数の総和を計算し、総計iSCSIセッション数が最小のスパニング・ツリーを選択する。
【０１６２】
ステップS340：収容ST決定処理部19bは、選択したスパニング・ツリーに関するVLAN識別子をホスト200に通知する。
【０１６３】
これにより、ホスト200は、総計iSCSIセッション数が最小のスパニング・ツリーを経由して、仮想化ストレージと情報の交換が可能になり、帯域不足等によるネットワーク転送性能の劣化を少なくすることが可能性がある。
【０１６４】
経路設定選択動作実施例(2)：選択基準＝“ホップ数”
この実施例(2)では、実施例(1)におけるiSCSIセッション数の代わりにホップ数を選択基準としてスパニング・ツリーを選択する。
【０１６５】
経路選択処理部19の構成は、図14に示した経路選択処理部19と同様であり、ST事前構築処理部19a及び収容ST決定処理部19bの動作も、経路選択方式(1)と同様であるが、ST設定処理部19cの動作が異なっている。経路選択処理部19の動作を以下に説明する。
【０１６６】
ステップS21：ST事前構築処理部19aは、予め、ループが発生しないスパニング・ツリーを複数決定し、これらのスパニング・ツリーをST設定処理部19cは、ネットワークに設定する。
【０１６７】
ステップS22：収容ST決定処理部19bが、ホスト200が使用するスパニング・ツリーをホップ数に基き選択し、選択したスパニング・ツリーのVLAN情報をホスト200に通知する。
【０１６８】
図16は、上記のステップS22の経路選択動作をより詳細に示した経路選択動作実施例(2)である。この実施例(2)においては、収容ST決定処理部19bが、“ホップ数”に基いてスパニング・ツリーを選択する。以下に、経路選択動作実施例(2)を説明する。
【０１６９】
ステップS400：収容ST決定処理部19bは、使用するストレージ装置に基づき、事前に構築されたスパニング・ツリーの中から利用可能なスパニング・ツリーを選択する。
【０１７０】
ステップS410：収容ST決定処理部19bは、全ての利用可能なスパニング・ツリーについて、ホスト200−ストレージ装置間のホップ数、平均ホップ数、及び偏差を計算する。
【０１７１】
ステップS420，S430：収容ST決定処理部19bは、偏差が最小のスパニング・ツリーを選択し、選択したスパニング・ツリーに関するVLAN識別子をホスト200に通知する。
【０１７２】
これにより、ホスト200は、ホップ数の偏差が最小なスパニング・ツリーを経由して、仮想化ストレージと情報の交換が可能になり、仮想ストレージにおけるデータの読み込み処理時の遅延のばらつきによるネットワーク転送性能の劣化を少なくすることが可能性がある。
【０１７３】
（付記１）
１つ以上のネットワーク装置と、該ネットワーク装置で構成されたネットワーク上のストレージデータ用経路(セッション/コネクション)で接続される１つ以上のホスト及び１つ以上のストレージ装置と、に接続されたストレージ管理サーバと、で構成されるストレージ管理システムであって、
該ストレージ管理サーバが、
各ストレージ装置のストレージ使用状態を管理するストレージ状態管理部と、
各ネットワーク装置を監視することで該ネットワークのトラフィック状態を管理するネットワーク状態管理部と、
該ストレージ使用状態及び該トラフィック状態に基づいて、該ストレージデータ用経路を決定して、該ネットワーク装置に設定する経路検索・設定部と、
を備えたことを特徴とするストレージ管理システム。
（付記２）上記の付記１において、
該ストレージ管理サーバが、該ストレージ使用状態に基づき、該ホスト又はシステム管理者から要求されたストレージ容量を満たすストレージ領域を選択する仮想ストレージ管理・制御部をさらに備え、
該経路検索・設定部が、該選択されたストレージ領域と該トラフィック状態とに基づいて該ストレージデータ用経路を決定することを特徴としたストレージ管理システム。
（付記３）上記の付記１において、
該ストレージ使用状態が、リンクの使用帯域又は通信チャネル数であることを特徴としたストレージ管理システム。
（付記４）上記の付記１において、
該経路検索・設定部が、一のホストのストレージデータ用経路を決定するとき、他のホストの経路使用状態を該トラフィック状態として監視し、このトラフィック状態に基づき、該一のホストのストレージデータ用経路を決定することを特徴としたストレージ管理システム。
（付記５）上記の付記２において、
該仮想ストレージ管理・制御部が、該選択したストレージ領域及び該決定したストレージデータ用経路を該ホストに通知することを特徴としたストレージ管理システム。
（付記６）上記の付記２において、
該経路検索・設定部が、予め、該ホストと該ストレージ装置の間に複数のスパニング・ツリーを構築しておき、該ホストからストレージ容量要求があったとき、該スパニング・ツリーのiSCSIセッション数又はホップ数に基づき、該複数のスパニング・ツリーの中から該ストレージデータ用経路を選択することを特徴としたストレージ管理システム。
（付記７）上記の付記１において、
該経路検索・設定部は、該決定したストレージデータ用経路を該ホストに通知することを特徴としたストレージ管理システム。
（付記８）上記の付記２において、
該経路検索・設定部は、該選択されたストレージ領域が複数であるとき、該ホストと該選択されたストレージ領域との間を接続するストレージデータ用経路同士の遅延時間の偏差が小さくなるようなストレージデータ用経路を選択することを特徴としたストレージ管理システム。
（付記９）上記の付記１において、
該ストレージデータ用経路が、VLAN又はMPLS方式で決定されることを特徴としたストレージ管理システム。
（付記１０）上記の付記１において、
該ネットワーク装置が、IPネットワーク装置であることを特徴としたストレージ管理システム。
（付記１１）上記の付記１において、
該経路検索・設定部は、それぞれ、該ストレージ装置及び該ネットワーク装置に障害が発生、又は障害になると予測されたとき、該ストレージ使用状態及び該トラフィック状態に基づいて、該障害発生又は障害になると予測されたストレージ装置のストレージ領域の代替ストレージの検索、及び該障害が発生、又は障害になると予測されたネットワーク装置に関連するストレージデータ用経路の代替経路を検索して決定することを特徴としたストレージ管理システム。
（付記１２）上記の付記１において、
該ホストが、
該ストレージ管理サーバにストレージ領域確保要求を与え、このストレージ領域確保要求に対して応答されたストレージ領域を仮想ストレージに対応付ける仮想化マッピング部と、
該ストレージ領域確保要求に対して応答されたストレージデータ用経路経由で、ストレージデータが伝送されるように、該ストレージデータ用経路の経路情報を該ストレージデータに設定する経路情報設定部と、
を備えたことを特徴とするストレージ管理システム。
（付記１３）上記の付記１２において、
該経路情報がタグであることを特徴とするストレージ管理システム。
（付記１４）上記の付記１２において、
該ストレージデータをSCSIデータに変換し、このSCSIデータをネットワーク上で転送するためのSCSIセッションを設定するSCSI制御部をさらに備え、
該仮想化マッピング部は、SCSIセッションと仮想ストレージとを対応付けることを特徴としたストレージ管理システム。
（付記１５）上記の付記１４において、
該SCSI制御部が、該ストレージデータをiSCSIデータに変換し、このiSCSIデータをIPネットワーク上で転送するためのiSCSIセッションを設定すると共に、
該仮想化マッピング部は、該仮想ストレージとiSCSIセッションとを対応付けることを特徴としたストレージ管理システム。
（付記１６）上記の付記１２において、
複数の該論理ストレージ領域間で、RAID機能を実現するRAID制御部を、さらに備えたことを特徴とするストレージ管理システム。
（付記１７）上記の付記１６において、
該RAID制御部は、該ストレージ装置に障害が発生した時、該ストレージ管理サーバに障害通知を行うことを特徴としたストレージ管理システム。
（付記１８）
１つ以上のネットワーク装置と、該ネットワーク装置で構成されたネットワーク上のストレージデータ用経路(セッション/コネクション)で接続される１つ以上のホスト及び１つ以上のストレージ装置と、に接続されたストレージ管理サーバと、で構成されるストレージ管理システムのストレージ管理方法において、
該ストレージ管理サーバが、
各ストレージ装置のストレージ使用状態を管理する第１のステップと、
各ネットワーク装置を監視することで該ネットワークのトラフィック状態を管理する第２のステップと、
該ストレージ使用状態及び該トラフィック状態に基づいて、該ストレージデータ用経路を決定して、該ネットワーク装置に設定する第３のステップと、
を実行することを特徴としたストレージ管理方法。
【図面の簡単な説明】
【０１７４】
【図１】本発明に係るストレージ管理システム及びストレージ管理方法の動作原理を示したブロック図である。
【図２】本発明に係るストレージ管理システムにおけるストレージ管理サーバの構成実施例を示したブロック図である。
【図３】本発明に係るストレージ管理システムのストレージ管理サーバにおけるストレージ状態管理部が備えたストレージ状態管理テーブル例を示した図である。
【図４】本発明に係るストレージ管理システムのストレージ管理サーバにおける仮想ストレージ管理・制御部の構成実施例を示したブロック図である。
【図５】本発明に係るストレージ管理システムのストレージ管理サーバにおける仮想ストレージ管理・制御部が備えた仮想ボリューム/論理ボリューム対応管理テーブル例を示した図である。
【図６】本発明に係るストレージ管理システムのストレージ管理サーバにおけるネットワーク状態管理部が備えたネットワーク状態管理テーブル例を示した図である。
【図７】本発明に係るストレージ管理システムにおけるホストの構成実施例を示したブロック図である。
【図８】本発明に係るストレージ管理システムにおけるホストの仮想化マッピング部が備えた仮想ボリューム/論理ボリューム対応テーブル例を示した図である。
【図９】本発明に係るストレージ管理システムにおけるホストの仮想化マッピング部が備えた論理ボリューム情報テーブル例を示した図である。
【図１０】本発明に係るストレージ管理システムの動作実施例(1)：新規ホスト接続時の仮想化設定動作手順を示したシーケンス図である。
【図１１】本発明に係るストレージ管理システムにおけるストレージ管理サーバが備えた仮想ストレージ管理・制御部の仮想化処理手順例(1)：新規のホスト接続時を示したフローチャート図である。
【図１２】本発明に係るストレージ管理システムの動作実施例(2)：ストレージ障害発生時の仮想化設定動作手順を示したシーケンス図である。
【図１３】本発明に係るストレージ管理システムにおけるストレージ管理サーバが備えた仮想ストレージ管理・制御部の仮想化処理手順例(2)：ストレージ障害発生時を示したフローチャート図である。
【図１４】本発明に係るストレージ管理システムのストレージ管理サーバにおける経路検索・設定部が備えた経路選択処理部の構成実施例を示したブロック図である。
【図１５】本発明に係るストレージ管理システムのストレージ管理サーバにおける経路選択処理部が備えた経路選択処理部のST選択処理動作実施例(1)を示したフローチャート図である。
【図１６】本発明に係るストレージ管理システムのストレージ管理サーバにおける経路選択処理部が備えた経路選択処理部のST選択処理動作実施例(2)を示したフローチャート図である。
【図１７】従来のストレージエリアネットワークにおける仮想化ストレージ方式を示したブロック図である。
【図１８】従来の仮想化ストレージ方式におけるネットワーク転送性能の劣化例(1)を示したブロック図である。
【図１９】従来の仮想化ストレージ方式におけるネットワーク転送性能の劣化例(2)を示したブロック図である。
【符号の説明】
【０１７５】
100  ストレージ管理サーバ        11  仮想ストレージ管理・制御部
12  ストレージ状態管理部         13  経路検索・設定部
14  ネットワーク状態管理部       15  通信インタフェース
16  仮想ボリューム/論理ボリューム対応管理テーブル
16a  ホスト情報                  16a1  ホスト名
16a2  ホストIPアドレス           16b  仮想ボリューム情報
16b1  仮想ボリューム名           16b2  仮想ボリューム容量
16c  RAID情報                    16c1  RAIDレベル
16d  論理ボリューム情報          16d1  ストレージ装置IPアドレス
16d2  LUN識別子                  17  ディスク検索部
18  ストレージ状態管理テーブル   18a  ストレージ装置名
18b  ストレージ装置IPアドレス    18c  LUN識別子
18d  LUN容量                     18e  LUN空き容量
18_1，18_2  エントリ
19  経路選択処理部               19a  ST事前構築処理部
19b  収容ST決定処理部            19c  ST設定処理部
20  ネットワーク状態管理テーブル 20a  ノード識別子、ネットワーク装置識別子
20b  ノードIPアドレス            20c  リンク識別子
20d  iSCSIセッション数           20e  リンク使用帯域
200  ホスト                      30  アプリケーション・OS部
31  仮想化マッピング部           32  SCSI・iSCSI制御部
33  経路情報設定部、VLAN情報設定部
33a  VLANタグ情報付与部
34  RAID制御部                   35  通信インタフェース
36  仮想ボリューム/論理ボリューム対応テーブル
36a  仮想ボリューム名            36b  仮想ボリュームセクタ情報
36c  論理ボリューム名            36d  論理ボリュームセクタ情報
37  論理ボリューム情報テーブル   37a  論理ボリューム名
37b  SCSIポート識別子            37c  iSCSIセッション識別子
300，300_1〜300_3〜300_i  ストレージ装置、ディスクアレイ、テープ装置
350，350_1，350_2  仮想化ストレージ、ストレージプール
351〜354  仮想化ストレージ領域
400，400_1〜400_4〜400_j  ネットワーク装置(ノード)、スイッチ、ルータ
500  ストレージ管理装置          600，600_1〜600_3  サーバ
610_1〜610_4  クライアント       620_1，620_2  部署(業務)
640  IP-SANネットワーク、SANネットワーク
650  WAN                         660  VLAN
700，700_1，700_2  セッション
710_1，710_2  VLAN設定           720  マッピング情報設定
810  仮想ボリューム割当要求      820  VLAN設定要求
830  VLANタグ・仮想ストレージマッピング情報
840  iSCSIセッション確立要求
900  障害信号                    910  障害通知
920  新VLAN設定要求              930  VLANタグ・仮想ストレージマッピング情報
940  iSCSIセッション確立要求     950  切替完了通知
960  旧VLAN解除要求
図中、同一符号は同一又は相当部分を示す。
【図１】
2005266933.tif 000003
【図２】
2005266933.tif 000004
【図３】
2005266933.tif 000005
【図４】
2005266933.tif 000006
【図５】
2005266933.tif 000007
【図６】
2005266933.tif 000008
【図７】
2005266933.tif 000009
【図８】
2005266933.tif 000010
【図９】
2005266933.tif 000011
【図１０】
2005266933.tif 000012
【図１１】
2005266933.tif 000013
【図１２】
2005266933.tif 000014
【図１３】
2005266933.tif 000015
【図１４】
2005266933.tif 000016
【図１５】
2005266933.tif 000017
【図１６】
2005266933.tif 000018
【図１７】
2005266933.tif 000019
【図１８】
2005266933.tif 000020
【図１９】
2005266933.tif 000021