(57)【要約】【課題】  タイプが異なるストレージシステムであっても、複数のストレージシステムのストレージプールを統合し、ストレージ要件に応じて好適なストレージプールにストレージボリュームを作成する。【解決手段】  複数のストレージシステム（ディスクアレイ３０、ＳＤＳシステム４、ＨＣＩシステム５）が存在する情報システム１において、ストレージ要件をパラメータとしてストレージボリュームの作成が要求されたとき、ストレージ管理サーバ１０は、ストレージ要件と第１の管理情報（ストレージプール管理テーブル１２２）に保持された特性情報との比較に基づいて、当該ストレージ要件を満たすストレージプールを選出し、選出したストレージプールにストレージボリュームを作成し、作成したストレージボリュームに関するエントリを第２の管理情報（ボリューム管理テーブル１２３）に追加する。【選択図】図１
2020173727.tif 000002
【特許請求の範囲】
【請求項１】
複数のストレージシステムが存在する情報システムを統合管理するストレージ管理装置であって、
各前記ストレージシステムが提供するストレージプールに関する第１の管理情報と、前記ストレージプールに作成されたストレージボリュームに関する第２の管理情報と、を保持し、
前記第１の管理情報には、前記ストレージプールの特性情報が含まれ、
前記第２の管理情報には、前記ストレージボリュームに要求されたストレージ要件を示す要求要件情報と当該ストレージボリュームに提供されている要件を示す提供要件情報とが含まれ、
前記ストレージ要件をパラメータとして前記ストレージボリュームの作成が要求されたとき、
前記ストレージ要件と前記第１の管理情報に保持された前記特性情報との比較に基づいて、当該ストレージ要件を満たす前記ストレージプールを選出する配置先選択処理を実行し、
前記配置先選択処理で選出された前記ストレージプールに前記ストレージボリュームを作成し、
前記作成した前記ストレージボリュームに関するエントリを前記第２の管理情報に追加する
ことを特徴とするストレージ管理装置。
【請求項２】
既存の前記ストレージボリュームに対する前記ストレージ要件の変更が要求されたとき、
前記要求された変更の内容に基づいて、前記第２の管理情報に保持された前記既存のストレージボリュームに関するエントリにおける前記要求要件情報を更新する
ことを特徴とする請求項１に記載のストレージ管理装置。
【請求項３】
前記ストレージプールの特性が変更された場合に、
前記変更の内容に基づいて、前記第１の管理情報に保持された前記特性情報を更新する
ことを特徴とする請求項１に記載のストレージ管理装置。
【請求項４】
前記第１の管理情報に保持された前記特性情報または前記第２の管理情報に保持された前記要求要件情報が変更されたとき、
前記配置先選択処理を再実行し、現在の配置先とは異なる前記ストレージプールが選出された場合には、新たに選出された前記ストレージプールに前記ストレージボリュームを移動し、当該移動後の情報で前記第２の管理情報を更新する
ことを特徴とする請求項１に記載のストレージ管理装置。
【請求項５】
前記配置先選択処理では、前記ストレージ要件に含まれる全ての構成要件を満たす前記特性情報を有する前記ストレージプールを、当該ストレージ要件を満たす前記ストレージプールとする
ことを特徴とする請求項１に記載のストレージ管理装置。
【請求項６】
前記配置先選択処理では、少なくとも前記ストレージ要件に含まれる特定の構成要素を満たす前記特性情報を有する前記ストレージプールを、当該ストレージ要件を満たす前記ストレージプールとする
ことを特徴とする請求項１に記載のストレージ管理装置。
【請求項７】
前記配置先選択処理において、前記ストレージ要件を満たす前記ストレージプールのうちから、前記特定の構成要素以外の構成要素と前記特性情報との比較に基づいて、前記選出する前記ストレージプールの優先度を決定する
ことを特徴とする請求項６に記載のストレージ管理装置。
【請求項８】
前記配置先選択処理において、複数の前記ストレージプールが前記ストレージ要件を満たす前記ストレージプールの候補となる場合、前記ストレージ要件に含まれる所定の構成要件の比較結果に基づいて、前記選出する前記ストレージプールの優先度を決定する
ことを特徴とする請求項１に記載のストレージ管理装置。
【請求項９】
前記ストレージプールの前記特性情報は、当該ストレージプールが提供可能な機能、データ保護レベル、または処理性能のうちの少なくとも何れかを含む
ことを特徴とする請求項１に記載のストレージ管理装置。
【請求項１０】
複数のストレージシステムと、
前記複数のストレージシステムとネットワークで接続され、前記複数のストレージシステムを統合管理するストレージ管理装置と、
を備え、
前記ストレージ管理装置は、各前記ストレージシステムが提供するストレージプールに関する第１の管理情報と、前記ストレージプールに作成されたストレージボリュームに関する第２の管理情報と、を保持し、
前記第１の管理情報には、前記ストレージプールの特性情報が含まれ、
前記第２の管理情報には、前記ストレージボリュームに要求されたストレージ要件を示す要求要件情報と当該ストレージボリュームに提供されている要件を示す提供要件情報とが含まれ、
前記ストレージ要件をパラメータとして前記ストレージボリュームの作成が要求されたとき、
前記ストレージ管理装置は、
前記ストレージ要件と前記第１の管理情報に保持された前記特性情報との比較に基づいて、当該ストレージ要件を満たす前記ストレージプールを選出する配置先選択処理を実行し、
前記配置先選択処理で選出された前記ストレージプールに前記ストレージボリュームを作成し、
前記作成した前記ストレージボリュームに関するエントリを前記第２の管理情報に追加する
ことを特徴とする情報システム。
【請求項１１】
前記ストレージ管理装置は、
前記第１の管理情報に保持された前記特性情報または前記第２の管理情報に保持された前記要求要件情報が変更されたとき、
前記配置先選択処理を再実行し、現在の配置先とは異なる前記ストレージプールが選出された場合には、新たに選出された前記ストレージプールに前記ストレージボリュームを移動し、当該移動後の情報で前記第２の管理情報を更新する
ことを特徴とする請求項１０に記載の情報システム。
【請求項１２】
前記複数のストレージシステムの少なくとも１つは、ストレージ機能を有するソフトウェアが物理的な計算機で実行されることによって当該計算機がストレージとなる種別のストレージシステムである
ことを特徴とする請求項１０に記載の情報システム。
【請求項１３】
複数のストレージシステムが存在する情報システムを統合管理するストレージ管理装置によるストレージ管理方法であって、
前記ストレージ管理装置が、各前記ストレージシステムが提供するストレージプールに関する第１の管理情報と、前記ストレージプールに作成されたストレージボリュームに関する第２の管理情報と、を保持し、
前記第１の管理情報には、前記ストレージプールの特性情報が含まれ、
前記第２の管理情報には、前記ストレージボリュームに要求されたストレージ要件を示す要求要件情報と当該ストレージボリュームに提供されている要件を示す提供要件情報とが含まれ、
前記ストレージ要件をパラメータとして前記ストレージボリュームの作成が要求されたとき、
前記ストレージ管理装置が、
前記ストレージ要件と前記第１の管理情報に保持された前記特性情報との比較に基づいて、当該ストレージ要件を満たす前記ストレージプールを選出する配置先選択処理を実行し、
前記配置先選択処理で選出された前記ストレージプールに前記ストレージボリュームを作成し、
前記作成した前記ストレージボリュームに関するエントリを前記第２の管理情報に追加する
ことを特徴とするストレージ管理方法。
【請求項１４】
前記第１の管理情報に保持された前記特性情報または前記第２の管理情報に保持された前記要求要件情報が変更されたとき、
前記ストレージ管理装置が、前記配置先選択処理を再実行し、現在の配置先とは異なる前記ストレージプールが選出された場合には、新たに選出された前記ストレージプールに前記ストレージボリュームを移動し、当該移動後の情報で前記第２の管理情報を更新する
ことを特徴とする請求項１３に記載のストレージ管理方法。
【発明の詳細な説明】
【技術分野】
【０００１】
本発明は、ストレージ管理装置、情報システム、及びストレージ管理方法に関し、ストレージシステムを管理するストレージ管理装置、ストレージシステムの少なくとも一部として動作する計算機を含む情報システム、及びストレージシステムを管理するストレージ管理方法に適用して好適なものである。
【背景技術】
【０００２】
情報システムには、１以上のストレージ装置から構成される様々なストレージシステムの形態が存在している。例えば、従来広く知られているディスクアレイは、ＳＡＮ（Storage Area Network）を介して計算機サーバに接続されて、計算機サーバにデータ格納領域を提供する外部記憶装置である。この他、近年注目されているストレージシステムの形態として、ＳＤＳ（Software Defined Storage）やＨＣＩ（Hyper-Converged Infrastructure）がある。
【０００３】
ＳＤＳは、ストレージ機能を有するＳＤＳ用ソフトウェア（本明細書ではこれを「ストレージ制御プログラム」と呼ぶ）が物理的な計算機（例えば汎用的な計算機）で実行されることにより、当該計算機がストレージ装置となる（すなわち、当該計算機がＳＤＳとなる）。ベンダがＳＤＳとしてのストレージ装置を提供する場合、ストレージ制御プログラムをユーザに提供する。ユーザは、自身で用意した計算機にこのストレージ制御プログラムをインストールする。結果として、当該計算機がＳＤＳとなる。ディスクアレイやＳＤＳは、計算機サーバとストレージ装置がネットワークで接続する分離型のシステムである。
【０００４】
また、ＨＣＩは、物理的な１つの計算機（例えば汎用的な計算機）に、計算機サーバとストレージ装置を集約した統合型のシステムである。一般的には、サーバ仮想化技術により１つの計算機に複数のサーバを集約する。また、ＨＣＩが提供するストレージは、ＳＤＳによって実現される。
【０００５】
例えば特許文献１には、ＨＣＩの形態においてストレージプールを提供する技術が開示されている。具体的には、特許文献１では、サーバ仮想化によって、記憶領域を管理する仮想サーバとアプリケーション仮想マシンとが物理的な計算機に存在する計算機システムが開示されており、この仮想サーバは、各仮想領域を仮想ストレージプールに提供し、共有ストレージがなくとも仮想ストレージプールを実現する。
【先行技術文献】
【特許文献】
【０００６】
【特許文献１】米国特許第８３７０８３３号明細書
【発明の概要】
【発明が解決しようとする課題】
【０００７】
ところで、大規模なデータセンタでは、複数のストレージシステムが混在し、それぞれのストレージシステムが独立して運用される。しかし特許文献１を含む従来技術では、ストレージシステムごとに特性が異なるために、データセンタ全体のストレージプール及びストレージボリュームを統合して管理することができないという課題があった。
【０００８】
詳しく説明すると、ストレージシステムは、ソフトウェア及びハードウェアの形態が異なると、その特性が異なる。また、ソフトウェア及びハードウェアの形態が同一であっても、特定の機能を有効にしていたり、設定したパラメータが異なったりすると、ストレージシステムの特性は異なるものとなってしまう。これらをまとめると、種別（タイプ）が異なるストレージシステムでは、特性が異なる、と言える。
【０００９】
そして、上述したようにストレージシステムの特性が異なるとき、従来技術によるストレージ管理方法では、データセンタ全体でストレージプールを統合して管理することができないため、ストレージボリュームを作成する際に指定される多様なストレージ要件に対して、ストレージ要件に応じて好適なストレージプールにストレージボリュームを作成できることができなかった。
【００１０】
本発明は以上の点を考慮してなされたもので、種別（タイプ）が異なるストレージシステムであっても、複数のストレージシステムのストレージプールを統合し、ストレージ要件に応じて好適なストレージプールにストレージボリュームを作成できるストレージ管理装置、情報システム、及びストレージ管理方法を提案しようとするものである。
【課題を解決するための手段】
【００１１】
かかる課題を解決するため本発明においては、複数のストレージシステムが存在する情報システムを統合管理するストレージ管理装置であって、各前記ストレージシステムが提供するストレージプールに関する第１の管理情報と、前記ストレージプールに作成されたストレージボリュームに関する第２の管理情報と、を保持し、前記第１の管理情報には、前記ストレージプールの特性情報が含まれ、前記第２の管理情報には、前記ストレージボリュームに要求されたストレージ要件を示す要求要件情報と当該ストレージボリュームに提供されている要件を示す提供要件情報とが含まれ、前記ストレージ要件をパラメータとして前記ストレージボリュームの作成が要求されたとき、前記ストレージ要件と前記第１の管理情報に保持された前記特性情報との比較に基づいて、当該ストレージ要件を満たす前記ストレージプールを選出する配置先選択処理を実行し、前記配置先選択処理で選出された前記ストレージプールに前記ストレージボリュームを作成し、前記作成した前記ストレージボリュームに関するエントリを前記第２の管理情報に追加するストレージ管理装置が提供される。
【００１２】
また、かかる課題を解決するため本発明においては、複数のストレージシステムと、前記複数のストレージシステムとネットワークで接続され、前記複数のストレージシステムを統合管理するストレージ管理装置と、を備える以下の情報システムが提供される。この情報システムにおいては、前記ストレージ管理装置は、各前記ストレージシステムが提供するストレージプールに関する第１の管理情報と、前記ストレージプールに作成されたストレージボリュームに関する第２の管理情報と、を保持し、前記第１の管理情報には、前記ストレージプールの特性情報が含まれ、前記第２の管理情報には、前記ストレージボリュームに要求されたストレージ要件を示す要求要件情報と当該ストレージボリュームに提供されている要件を示す提供要件情報とが含まれる。そして、前記ストレージ要件をパラメータとして前記ストレージボリュームの作成が要求されたとき、前記ストレージ管理装置は、前記ストレージ要件と前記第１の管理情報に保持された前記特性情報との比較に基づいて、当該ストレージ要件を満たす前記ストレージプールを選出する配置先選択処理を実行し、前記配置先選択処理で選出された前記ストレージプールに前記ストレージボリュームを作成し、前記作成した前記ストレージボリュームに関するエントリを前記第２の管理情報に追加する。
【００１３】
また、かかる課題を解決するため本発明においては、複数のストレージシステムが存在する情報システムを統合管理するストレージ管理装置による以下のストレージ管理方法が提供される。このストレージ管理方法においては、前記ストレージ管理装置が、各前記ストレージシステムが提供するストレージプールに関する第１の管理情報と、前記ストレージプールに作成されたストレージボリュームに関する第２の管理情報と、を保持し、前記第１の管理情報には、前記ストレージプールの特性情報が含まれ、前記第２の管理情報には、前記ストレージボリュームに要求されたストレージ要件を示す要求要件情報と当該ストレージボリュームに提供されている要件を示す提供要件情報とが含まれる。そして、前記ストレージ要件をパラメータとして前記ストレージボリュームの作成が要求されたとき、前記ストレージ管理装置が、前記ストレージ要件と前記第１の管理情報に保持された前記特性情報との比較に基づいて、当該ストレージ要件を満たす前記ストレージプールを選出する配置先選択処理を実行し、前記配置先選択処理で選出された前記ストレージプールに前記ストレージボリュームを作成し、前記作成した前記ストレージボリュームに関するエントリを前記第２の管理情報に追加する。
【発明の効果】
【００１４】
本発明によれば、タイプが異なるストレージシステムであっても、複数のストレージシステムのストレージプールを統合し、ストレージ要件に応じて好適なストレージプールにストレージボリュームを作成することができる。
【図面の簡単な説明】
【００１５】
【図１】本発明の一実施の形態に係る情報システムの構成例を示すブロック図である。
【図２】ストレージ管理サーバの構成例を示すブロック図である。
【図３】ストレージプール管理テーブルの具体例を示す図である。
【図４】ボリューム管理テーブルの具体例を示す図である。
【図５】ＳＤＳシステムの構成例を示すブロック図である。
【図６】ＨＣＩシステムの構成例を示すブロック図である。
【図７】ディスクアレイの構成例を示すブロック図である。
【図８】ストレージプール作成処理の処理手順例を示すフローチャートである。
【図９】ストレージボリューム作成処理の処理手順例を示すフローチャートである。
【図１０】ストレージボリューム作成処理のイメージを説明するための図である。
【図１１】ストレージボリューム配置先選択処理の処理手順例を示すフローチャートである。
【図１２】ストレージシステムアップデート処理の処理手順例を示すフローチャートである。
【図１３】ストレージ要件変更処理の処理手順例を示すフローチャートである。
【図１４】ストレージボリューム再配置処理の処理手順例を示すフローチャートである。
【発明を実施するための形態】
【００１６】
以下、図面を参照しながら、本発明の一実施の形態を詳述する。なお、本実施の形態は、特許請求の範囲に係る発明を限定するものではなく、また、本実施の形態のなかで説明されている諸要素及びその組み合わせの全てが、本発明の解決手段に必須とは限らない。
【００１７】
（１）用語説明
まず、本実施の形態で用いられる各種用語について説明する。
【００１８】
本実施の形態では、特段の断りがない限り、物理的なストレージ装置（すなわち、専用のハードウェアで構成されたストレージ装置）を「在来型ストレージ装置」と称する。また、ストレージ制御プログラムがインストールされた物理的な計算機（例えば汎用的な計算機）を「ＳＤＳ」と称する。そして「ストレージ装置」は、在来型ストレージ装置とＳＤＳの両方を意味する語として用いられる。例えば、在来型ストレージ装置とＳＤＳとが共通して備える機能や特徴を説明する場合、「ストレージ装置」の語が用いられる。
【００１９】
「ボリューム」とは、ストレージ装置や記憶デバイス等のターゲットデバイスが、ホスト計算機等のイニシエータに提供する記憶空間のことを意味する。イニシエータがボリューム上の領域に対するＩ／Ｏ（Input/Output）要求、例えばリード要求を発行すると、ボリュームを提供しているターゲットデバイスは、その領域に対応付けられているターゲットデバイス上の領域からデータを読み出して、イニシエータに返送する。
【００２０】
なお、ストレージ装置の中には、上記ボリュームとして、所謂シンプロビジョニング（Thin Provisioning）技術により形成される仮想的なボリュームをイニシエータに提供できるものがある。本実施の形態では、仮想的なボリュームをイニシエータに提供する機能を「Thin Provisioning機能」と称する。
【００２１】
仮想的なボリュームは、その初期状態（定義された直後）では、記憶空間上の領域に記憶デバイスが対応付けられていない。イニシエータが記憶空間上の領域にデータ書き込み要求を発行した時点で、ストレージ装置はその領域に対応付けられる記憶デバイスを動的に決定することができる。本実施の形態におけるＳＤＳは、仮想的なボリュームをイニシエータに提供することができる。
【００２２】
「ボリュームの仮想化機能」（または単に「仮想化機能」と呼ばれることもある）とは、他のストレージ装置が有するボリュームを、自己のボリュームとしてイニシエータデバイスに提供する機能である。ボリュームの仮想化機能は、例えば、専用の装置（例えば、仮想化アプライアンスと呼ばれる）に実装されて提供される。また例えば、ストレージ装置がボリュームの仮想化機能を備えていることもある。
【００２３】
（２）情報システムの全体構成
図１は、本発明の一実施の形態に係る情報システムの構成例を示すブロック図である。
【００２４】
図１に示したように、情報システム１は、１または複数のアプリケーションサーバ２０、ストレージ管理サーバ１０、１または複数のディスクアレイ３０、１または複数のＳＤＳシステム４、及び１または複数のＨＣＩシステム５を備えて構成され、各構成はネットワーク６０で相互接続される。ＳＤＳシステム４は、１または複数のＳＤＳノード４０を含んで構成されるストレージシステムであり、ＨＣＩシステム５は、１または複数のＨＣＩノード５０を含んで構成されるストレージシステムである。情報システム１は、例えば、種別（タイプ）が異なる複数のストレージシステムが混在するデータセンタと考えることができる。
【００２５】
アプリケーションサーバ２０は、ユーザが使用するアプリケーションプログラム２２１が実行される計算機であり、ホストシステムの一例である。アプリケーションサーバ２０は、汎用的な計算機でよいが、サーバ仮想化を用いた仮想マシンであってもよい。アプリケーションプログラム２２１は、例えば、データベース管理システム（ＤＢＭＳ：Database Management System）あるいは表計算ソフトウェアやワードプロセッサ等のプログラムである。
【００２６】
ストレージ管理サーバ１０は、情報システム１の使用者または管理者（以下では単に「ユーザ」と呼ぶ）が情報システム１の管理操作を行うために使用する計算機であり、本実施の形態に係るストレージ管理装置に相当する。ストレージ管理サーバ１０は、情報システム１のストレージシステム（ディスクアレイ３０、ＳＤＳシステム４、ＨＣＩシステム５）を管理するサーバであり、汎用的な計算機でもよいし、サーバ仮想化を用いた仮想マシンであってもよい。また、ストレージ管理サーバ１０は、ユーザが情報システム１の管理操作を行う時に使用する入力デバイス及び出力デバイスを有する。入力デバイスは、例えばキーボードやマウス等であり、出力デバイスは、例えばディスプレイ等である。なお、情報システム１におけるストレージ管理サーバ１０以外のサーバコンピュータも、同様に入力デバイス及び出力デバイスを備えてもよい。
【００２７】
ディスクアレイ３０は、アプリケーションサーバ２０が使用するデータを格納するためのストレージ装置として動作する計算機である。ディスクアレイ３０は、在来型ストレージ装置であり、専用のハードウェアで構成されたストレージ装置である。
【００２８】
ＳＤＳシステム４では、複数のＳＤＳノード４０がノード間のネットワークで接続されることで、ＳＤＳを形成する。
【００２９】
それぞれのＳＤＳノード４０は、ディスクアレイ３０と同様に、アプリケーションサーバ２０が使用するデータを格納するためのストレージ装置として動作する計算機である。ＳＤＳノード４０は汎用的な計算機（サーバコンピュータ）でよく、ＳＤＳシステム４に含まれるそれぞれのＳＤＳノード４０の基本的なハードウェア構成は、何れも同じでよい。但し、各サーバコンピュータのハードウェア構成は、必ずしも完全に同一でなくてもよく、具体的には例えば、サーバコンピュータが有するプロセッサ（例えばＣＰＵ（Central Processing Unit））の数やメモリの容量等が異なっていてもよい。ＳＤＳノード４０では、サーバコンピュータのプロセッサでストレージ制御プログラムが実行されることにより、サーバコンピュータがストレージ装置としての動作を行う。なお、ＳＤＳノード４０は、物理的な計算機でもよいが、サーバ仮想化を用いた仮想マシン（ストレージＶＭ）でもよい。
【００３０】
ＨＣＩシステム５では、複数のＨＣＩノード５０がノード間のネットワークで接続されることで、ＳＤＳを形成する。なお、ＨＣＩシステム５で形成されるＳＤＳは、ＳＤＳシステム４（ＳＤＳノード４０）が形成するＳＤＳと同一のＳＤＳであってもよいし、複数のＨＣＩノード５０のみで形成されるＳＤＳであってもよい。
【００３１】
それぞれのＨＣＩノード５０は、ディスクアレイ３０やＳＤＳノード４０と同様に、アプリケーションサーバ２０が使用するデータを格納するためのストレージ装置として動作する計算機である。ＨＣＩノード５０は汎用的な計算機（サーバコンピュータ）でよく、ＨＣＩシステム５に含まれるそれぞれのＨＣＩノード５０の基本的なハードウェア構成は、何れも同じでよい。但し、各サーバコンピュータのハードウェア構成は、必ずしも完全に同一でなくてもよく、具体的には例えば、サーバコンピュータが有するプロセッサの数やメモリの容量等が異なっていてもよい。  
【００３２】
ディスクアレイ３０、ＳＤＳシステム４、及びＨＣＩシステム５（ＨＣＩにおけるＳＤＳ機能部分）は、１以上のストレージプール（図１におけるストレージプール３８０，４８０，５８０）を作成し、ストレージプールから作成するボリュームを定義することができ、定義されたボリュームは、アプリケーションサーバ２０等のイニシエータに提供される。アプリケーションサーバ２０は、ボリュームを提供しているストレージ装置（ディスクアレイ３０，ＳＤＳノード４０，ＨＣＩノード５０）に対するライト要求を発行することで、アプリケーションプログラム２２１によって生成されたデータ（例えばデータベーステーブル等）をボリュームに格納する。また、アプリケーションサーバ２０は、ボリュームを提供しているストレージ装置（ディスクアレイ３０，ＳＤＳノード４０，ＨＣＩノード５０）に対するリード要求を発行することで、データをボリュームから読み出す。
【００３３】
なお、ＳＤＳノード４０、ＨＣＩノード５０、アプリケーションサーバ２０、及びストレージ管理サーバ１０の少なくとも１つは、クラウド基盤のような計算機リソースプール（例えば、インタフェースデバイス、メモリ及びプロセッサ）に基づき提供される仮想的な装置であってもよい。また、ＳＤＳノード４０、ＨＣＩノード５０、アプリケーションサーバ２０、及びストレージ管理サーバ１０はそれぞれ、情報システム１内に複数存在していてもよい。本実施の形態では、一例として、図１に示したように、情報システム１においてストレージ管理サーバ１０及びアプリケーションサーバ２０がそれぞれ１台存在し、ＳＤＳノード４０及びＨＣＩノード５０が複数台存在する構成で説明する。
【００３４】
ネットワーク６０には、例えば、イーサネット（登録商標）やファイバチャネル等の伝送媒体が用いられる。ネットワーク６０は、アプリケーションサーバ２０がディスクアレイ３０またはＳＤＳに対してデータを読み書きする際に用いられる他、ストレージ管理サーバ１０と、ディスクアレイ３０、ＳＤＳノード４０またはＨＣＩノード５０（またはアプリケーションサーバ２０）との間での管理操作コマンドや各種管理情報のやり取りにも用いられる。なお、別の形態として、アプリケーションサーバ２０と、ディスクアレイ３０、ＳＤＳノード４０またはＨＣＩノード５０との間で読み書きされるデータを送受信するためのネットワークと、ストレージ管理サーバ１０が管理操作コマンド等を送受信するためのネットワークとが、別々に設けられてもよい。すなわち、ネットワーク６０は、単一のネットワークでもよいし、複数のネットワークでもよい。
【００３５】
（３）詳細構成
（３−１）ストレージ管理サーバ
図２は、ストレージ管理サーバの構成例を示すブロック図である。
【００３６】
図２に示したように、ストレージ管理サーバ１０は、主記憶装置であるメモリ１２０、ディスク１３０、及び管理ネットワークＩ／Ｆ１４０と、これらに接続されたプロセッサであるＣＰＵ１１０とを含んで構成される。これらの各コンポーネント、すなわち、ＣＰＵ１１０、メモリ１２０、ディスク１３０、及び管理ネットワークＩ／Ｆ１４０の数は限定されず、１つでも複数でもよい。
【００３７】
ＣＰＵ１１０は、メモリ１２０にロードされた各プログラムを実行する。メモリ１２０は、ＤＲＡＭ（Dynamic Random Access Memory）等の揮発性メモリであって、ストレージ統合管理ソフトウェア１２１、ストレージプール管理テーブル１２２、ボリューム管理テーブル１２３、及びオペレーティングシステム１２４が格納される。ディスク１３０は、磁気ディスクまたはフラッシュメモリ等の不揮発性記憶媒体を有する記憶デバイスであって、各テーブル（ストレージプール管理テーブル１２２，ボリューム管理テーブル１２３）のデータを格納するために用いられる。
【００３８】
なお、図２でメモリ１２０内に示したソフトウェアやテーブル等は、ストレージ管理サーバ１０が稼動していないとき（電源ＯＦＦ状態のとき）には、ディスク１３０に格納されており、ストレージ管理サーバ１０が起動されたときに、ディスク１３０からメモリ１２０にロードされるとよい。このような挙動は、情報システム１における全てのサーバコンピュータ（すなわち、ストレージ管理サーバ１０、アプリケーションサーバ２０、ＳＤＳノード４０、ＨＣＩノード５０）に共通する。
【００３９】
管理ネットワークＩ／Ｆ１４０は、ストレージ管理サーバ１０をネットワーク６０に接続するためのインタフェースデバイスであって、ストレージ管理サーバ１０とネットワーク６０間に設けられる伝送線（ネットワークケーブル）を接続するためのポートも有する。そのため以下では、ネットワークＩ／Ｆを「ポート」とも称する。なお、ポート経由の通信は、伝送線経由の通信に代えて、無線通信であってもよい。これは情報システム１における全てのサーバコンピュータ（すなわち、ストレージ管理サーバ１０、アプリケーションサーバ２０、ＳＤＳノード４０、ＨＣＩノード５０）に共通する。
【００４０】
続いて、メモリ１２０上に格納されているプログラム等の役割を概説する。なお、以降の説明では、情報システム１における各サーバコンピュータ（ストレージ管理サーバ１０、アプリケーションサーバ２０、ＳＤＳノード４０、ＨＣＩノード５０）で実行される処理について、記載の簡略のために「プログラム」を主語として説明を行う場合があるが、実際には、サーバコンピュータのプロセッサがプログラムを実行することによって、プログラムに記述された処理が行われる。すなわち、プログラムを主語にして説明される処理の主体は、実際にはプログラムを実行しているプロセッサである。これは情報システム１における全てのサーバコンピュータ（すなわち、ストレージ管理サーバ１０、アプリケーションサーバ２０、ＳＤＳノード４０、ＨＣＩノード５０）に共通する。
【００４１】
ストレージ統合管理ソフトウェア１２１は、複数のストレージシステムを管理するためのプログラムである。ストレージ統合管理ソフトウェア１２１で行われる管理とは、具体的には例えば、ストレージボリュームの定義や削除等の操作、及びストレージシステムの状態の監視等がある。
【００４２】
ストレージプール管理テーブル１２２は、各ストレージシステムが提供するストレージプールの情報を保持するテーブルである。ストレージプール管理テーブル１２２の詳細は、図３を参照しながら後述する。なお、ストレージプール管理テーブル１２２の格納方法は、ＲＤＢＭＳ（Relational DataBase Management System）でもよいし、ファイルシステムに格納されたファイルでもよい。
【００４３】
ボリューム管理テーブル１２３は、各ストレージプールに作成したストレージボリュームに関する情報を保持するテーブルである。ボリューム管理テーブル１２３の詳細は、図４を参照しながら後述する。
【００４４】
オペレーティングシステム１２４は、入出力制御機能、ディスク１３０やメモリ１２０等への読み書き制御機能等を有し、他のプログラムにこれらの機能を提供するプログラムである。
【００４５】
ここで、ストレージ管理サーバ１０で保持されるテーブル（ストレージプール管理テーブル１２２，ボリューム管理テーブル１２３）について、具体例を挙げてより詳しく説明する。
【００４６】
図３は、ストレージプール管理テーブルの具体例を示す図である。前述したように、ストレージプール管理テーブル１２２は、各ストレージシステムが提供するストレージプールに関する所定の情報を保持するテーブルであり、ストレージプールの特性情報が含まれる。
【００４７】
図３の場合、ストレージプール管理テーブル１２２は、ストレージプールＩＤ１２２０、ストレージＩＤ１２２１、ストレージタイプ１２２２、提供プロトコル１２２３、提供機能１２２４、データ保護レベル１２２５、性能１２２６、総容量１２２７、使用容量１２２８、及び空き容量１２２９から構成されたデータテーブルであって、１つのストレージプールにつき１つのエントリを保持する。以下、図３においてストレージプール管理テーブル１２２の各項目に保持される情報について詳しく説明する。
【００４８】
ストレージプールＩＤ１２２０は、ストレージプールを識別するための識別子（ＩＤ）である。
【００４９】
ストレージＩＤ１２２１は、ストレージシステムを識別するための識別子である。ストレージＩＤ１２２１とする具体的な識別子は、例えばディスクアレイ３０の識別子やＳＤＳの識別子でもよいし、ＳＤＳを形成するＳＤＳノード４０やＨＣＩノード５０の識別子でもよい。
【００５０】
ストレージタイプ１２２２は、ストレージシステムの形態を示す情報である。本例では、ディスクアレイであることを意味する「Disk array」、ＳＤＳノードで形成されたＳＤＳであることを意味する「SDS」、ＨＣＩノードで形成されたＳＤＳであることを意味する「SDS(HCI)」の何れかが示される。
【００５１】
提供プロトコル１２２３は、ストレージシステムがサポートするプロトコルを示す。例えば、ブロックストレージのプロトコルとして「FC」や「iSCSI」が示される。なお、他のプロトコルとして例えば、ファイルストレージやオブジェクトストレージのプロトコルでもよい。
【００５２】
提供機能１２２４は、ストレージシステムがサポートするストレージ機能のうち、ストレージプールで有効化が可能な機能を示す。具体的な機能としては例えば、スナップショット（Snapshot）、クローン、圧縮（Compression）、重複排除（Deduplication）、リモートコピー（Remote Copy）、暗号化、データ階層化（Tiering）等が含まれる。
【００５３】
データ保護レベル１２２５は、ストレージシステムがサポートするデータの冗長度を示す。データの冗長度は、例えばデータとパリティの数で表すことができる。なお、データ冗長化の種類は、ノード間のデータ冗長化であってもよいし、ノード内の複数のディスク間のデータ冗長化であってもよい。さらに、ノード間のデータ冗長化として、レプリケーションやイレーシャーコーディング等のデータ冗長化方法を含んでもよい。また、ノード内の複数のディスク間のデータ冗長化は、ＲＡＩＤ（Redundant Arrays of Inexpensive Disks）等でもよい。
【００５４】
性能１２２６は、スループットの値を含む処理性能を示す。具体的には例えば、あるデータサイズの１秒間あたりのＩ／Ｏ数を示す「iops（あるいはkiops）」が示される。性能１２２６に示されるＩ／Ｏ数は、リードＩ／Ｏの性能値でも、ライトＩ／Ｏの性能値でも、両者を混ぜ合わせたＩ／Ｏの性能値でもよい。また、性能指標は、スループットに代えて（あるいは加えて）、レスポンス性能であってもよい。また、性能値は、平均値や最大値・最小値で示されてもよいし、基準性能からの相対値等で示されてもよい。
【００５５】
総容量１２２７は、ストレージプールのサイズ（容量）を示す。使用容量１２２８は、ストレージボリュームに割り当て済みの容量を示す。使用容量１２２８は、容量の絶対値で表してもよいし、総容量に対する使用割合で表してもよい。空き容量１２２９は、ストレージボリュームに割り当てていない容量を示す。空き容量１２２９は、容量の絶対値で表してもよいし、総容量に対する空きの割合で表してもよい。
【００５６】
以上のように、ストレージプール管理テーブル１２２は、ストレージプールに関する様々な属性の情報を保持するものであり、そのなかにはストレージプールの特性を示す特性情報が含まれる。但し、ストレージプール管理テーブル１２２がストレージプールの特性情報として保持し得る属性は、図３の例示に限定されるものではない。例えば、ストレージプールで提供されるサービス品質（ＱｏＳ：Quality of Service）等の属性を含めるようにしてもよい。
【００５７】
図４は、ボリューム管理テーブルの具体例を示す図である。前述したように、ボリューム管理テーブル１２３は、各ストレージプールに作成したストレージボリュームに関する情報を保持するテーブルであり、ストレージボリュームに要求されたストレージ要件を示す情報（要求要件情報）と当該ストレージボリュームに提供されている要件を示す情報（提供要件情報）とが含まれる。なお、ストレージボリュームは、ストレージプールから特定の領域を切り出して提供される。
【００５８】
図４の場合、ボリューム管理テーブル１２３は、ボリュームＩＤ１２３０、ストレージプールＩＤ１２３１、使用プロトコル１２３２、使用ボリュームサイズ１２３３、使用機能１２３４、要求プロトコル１２３５、要求ボリュームサイズ１２３６、要求機能１２３７、要求可用性１２３８、及び要求性能１２３９から構成されたデータテーブルであって、１つのストレージボリュームにつき１つのエントリを保持する。以下、図４においてボリューム管理テーブル１２３の各項目に保持される情報について詳しく説明する。
【００５９】
ボリュームＩＤ１２３０は、ストレージプールに作成したストレージボリュームを識別するための識別子（ＩＤ）である。
【００６０】
ストレージプールＩＤ１２３１は、ストレージボリュームの作成先のストレージプールを示す識別子であり、図３に示したストレージプール管理テーブル１２２のストレージプールＩＤ１２２０と対応する。
【００６１】
使用プロトコル１２３２は、当該ストレージボリュームのアクセスに用いているプロトコルを示す。使用プロトコル１２３２に記載可能なプロトコルは図３に示したストレージプール管理テーブル１２２の提供プロトコル１２２３と同様であり、説明を省略する。
【００６２】
使用ボリュームサイズ１２３３は、当該ストレージボリュームのサイズを示す。
【００６３】
使用機能１２３４は、当該ストレージボリュームの作成先のストレージプール（ストレージプールＩＤ１２３１で特定されるストレージプール）が提供する機能のうち、当該ストレージボリュームが使用している機能を示す。使用機能１２３４に記載可能な機能は図３に示したストレージプール管理テーブル１２２の提供機能１２２４と同様であり、説明を省略する。
【００６４】
図４のボリューム管理テーブル１２３において、上記の使用プロトコル１２３２〜使用機能１２３４の項目は、当該ストレージボリュームに現在提供されている要件を示す情報（提供要件情報）である。一方、以下の項目（要求プロトコル１２３５〜要求性能１２３９）は、ストレージボリュームの作成時等にユーザ（またはアプリケーションプログラム）によって指定・要求されたストレージ要件を示す情報（要求要件情報）である。
【００６５】
要求プロトコル１２３５は、ストレージ要件で指定されたプロトコルを示す。要求ボリュームサイズ１２３６は、ストレージ要件で要求されたストレージボリュームのサイズを示す。要求機能１２３７は、ストレージ要件で要求された、ストレージボリューム（ストレージプール）で使用可能な機能を示す。
【００６６】
要求可用性１２３８は、ストレージ要件で要求された、ストレージボリューム（ストレージプール）に対する信頼性を示す。信頼性の具体的な例としては、保証稼働率のパーセント表示でもよいし、平均故障間隔（ＭＴＢＦ：Mean Time Between Failure）や平均復旧時間（ＭＴＴＲ：Mean Time To Recovery）等の値でもよい。
【００６７】
要求性能１２３９は、ストレージ要件で要求された、ストレージボリューム（ストレージプール）の性能を示すものであり、当該ストレージボリュームを使用するアプリケーションプログラムが要求する性能を示す。要求性能１２３９に記載可能な性能は図３に示したストレージプール管理テーブル１２２の性能１２２６と同様であり、説明を省略する。
【００６８】
以上のように、ボリューム管理テーブル１２３は、既存の各ストレージボリュームに関する要求要件情報及び提供要件情報を保持する。但し、ボリューム管理テーブル１２３が保持し得る情報の属性は、図４の例示に限定されるものではなく、例えば、サービス品質（ＱｏＳ）等の要求値を含めるようにしてもよい。
【００６９】
（３−２）ＳＤＳシステム
図５は、ＳＤＳシステムの構成例を示すブロック図である。図５では、特に、ＳＤＳノード４０の構成例が詳しく示されている。
【００７０】
図５に例示したように、ＳＤＳノード４０は、主記憶装置であるメモリ４２０、ディスク４３０、及びネットワークＩ／Ｆ４４０と、これらに接続されたプロセッサ（ＣＰＵ４１０）と、ハイパーバイザ（Hypervisor）４５０及びストレージＶＭ４６０と、を含んで構成される。これらのコンポーネントのうち、ＣＰＵ４１０、メモリ４２０、ディスク４３０、及びネットワークＩ／Ｆ４４０の数は限定されず、１つでも複数でもよい。
【００７１】
ＣＰＵ４１０は、メモリ４２０にロードされた各プログラムを実行する。メモリ４２０は、ＤＲＡＭ等の揮発性メモリである。ディスク４３０は、磁気ディスクまたはフラッシュメモリ等の不揮発性記憶媒体を有する記憶デバイスであって、アプリケーションサーバ２０やＨＣＩノード５０内のコンピュートＶＭ５７０から書き込まれたデータを格納するために用いられる。
【００７２】
ハイパーバイザ４５０は、物理的なリソース、すなわちＣＰＵ４１０、メモリ４２０、ディスク４３０、及びネットワークＩ／Ｆ４４０を複数の仮想マシン（ＶＭ）で共有することを可能にするソフトウェアである。本実施の形態では、一例としてＳＤＳノード４０でサーバ仮想化が用いられており、ハイパーバイザ４５０によって仮想マシンであるストレージＶＭ４６０が稼働する。
【００７３】
ストレージＶＭ４６０は、ハイパーバイザ４５０によって仮想化された仮想ＣＰＵ（ｖＣＰＵ）４６１、仮想メモリ（ｖＲＡＭ）４６２、コンピュートネットワークＩ／Ｆ４６３、管理ネットワークＩ／Ｆ４６４、及びノード間ネットワークＩ／Ｆ４６５を有する。ｖＲＡＭ４６２は、ストレージ制御プログラム４６６及びオペレーティングシステム４６７を有する。
【００７４】
ストレージ制御プログラム４６６は、ＳＤＳノード４０（すなわちサーバコンピュータ）をストレージ装置として機能させるためのプログラムである。具体的には例えば、ＳＤＳノード４０は、ストレージ制御プログラム４６６の働きにより、アプリケーションサーバ２０等のイニシエータに１以上のボリュームを提供できるほか、イニシエータからＩ／Ｏ要求（リード要求やライト要求）を受け付けて、リード要求で指定されたアドレスのデータをイニシエータに返送したり、ライト要求で指定されたライトデータをボリュームに格納したりする等の処理を行うことができる。
【００７５】
なお、在来型ストレージ装置は、例えばボリュームのミラーコピーを作成する等、ボリュームを提供する以外の機能を有するが、ＳＤＳにおけるストレージ制御プログラム４６６も同様に、ボリュームを提供する以外の機能をＳＤＳノード４０に実現するプログラムであってもよい。
【００７６】
また、ストレージ制御プログラム４６６は、アプリケーションサーバ２０から頻繁にアクセスされるデータを保持しておくための領域をｖＲＡＭ４６２上に確保してもよい。
【００７７】
コンピュートネットワークＩ／Ｆ４６３は、アプリケーションサーバ２０と接続し、データの読み書きに用いるネットワークである。管理ネットワークＩ／Ｆ４６４は、ストレージ管理サーバ１０の要求を受け付けるためのネットワークである。ノード間ネットワークＩ／Ｆ４６５は、複数のＳＤＳノード４０を接続するネットワークである。ＳＤＳシステム４においてＳＤＳノード４０は、ノード間ネットワークＩ／Ｆ４６５によって互いに接続されてＳＤＳを形成する。なお、これらのネットワークＩ／Ｆは、物理的に異なるネットワークを用いてもよいし、ハイパーバイザ４５０の仮想ネットワーク機能によって仮想的なネットワークとしてもよい。
【００７８】
また、ＳＤＳノード４０は、メモリ４２０（あるいはｖＲＡＭ４６２）に保持されているデータが停電等の障害時に消失することを防止するデータ維持手段を有していてもよい。具体的には例えば、ＳＤＳノード４０はバッテリを有し、停電時にバッテリから供給される電力を用いて、メモリ４２０上のデータを維持することができる。
【００７９】
（３−３）ＨＣＩシステム
図６は、ＨＣＩシステムの構成例を示すブロック図である。図６では、特に、ＨＣＩノード５０の構成例が詳しく示されている。
【００８０】
図６に例示したように、ＨＣＩノード５０は、主記憶装置であるメモリ５２０、ディスク５３０、及びネットワークＩ／Ｆ５４０と、これらに接続されたプロセッサ（ＣＰＵ５１０）と、ハイパーバイザ（Hypervisor）５５０及びストレージＶＭ５６０と、を含んで構成される。これらのコンポーネントのうち、ＣＰＵ５１０、メモリ５２０、ディスク５３０、及びネットワークＩ／Ｆ５４０の数は限定されず、１つでも複数でもよい。
【００８１】
ＣＰＵ５１０は、メモリ５２０にロードされた各プログラムを実行する。メモリ５２０は、ＤＲＡＭ等の揮発性メモリである。ディスク５３０は、磁気ディスクまたはフラッシュメモリ等の不揮発性記憶媒体を有する記憶デバイスであって、コンピュートＶＭ５７０やアプリケーションサーバ２０から書き込まれたデータを格納するために用いられる。
【００８２】
ハイパーバイザ５５０は、物理的なリソース、すなわちＣＰＵ５１０、メモリ５２０、ディスク５３０、及びネットワークＩ／Ｆ５４０を複数の仮想マシン（ＶＭ）で共有することを可能にするソフトウェアである。本実施の形態では、一例としてＨＣＩノード５０でサーバ仮想化が用いられており、ハイパーバイザ５５０によって仮想マシンであるストレージＶＭ５６０とコンピュートＶＭ５７０とが稼働する。
【００８３】
ストレージＶＭ５６０の構成は、図５に示したストレージＶＭ４６０と同様でよいため、説明を省略する。
【００８４】
コンピュートＶＭ５７０は、ハイパーバイザ５５０によって仮想化された仮想ＣＰＵ（ｖＣＰＵ）５７１、仮想メモリ（ｖＲＡＭ）５７２、コンピュートネットワークＩ／Ｆ５７３、及び管理ネットワークＩ／Ｆ６７４を有する。ｖＲＡＭ５７２は、アプリケーションプログラム５７５及びオペレーティングシステム５７６を有する。
【００８５】
コンピュートネットワークＩ／Ｆ５７３は、ストレージシステムと接続し、データの読み書きに用いるネットワークである。管理ネットワークＩ／Ｆ５７４は、ストレージ管理サーバ１０の要求を受け付けるためのネットワークである。なお、これらのネットワークＩ／Ｆは、物理的に異なるネットワークを用いてもよいし、ハイパーバイザ５５０の仮想ネットワーク機能によって仮想的なネットワークとしてもよい。
【００８６】
（３−４）ディスクアレイ
図７は、ディスクアレイの構成例を示すブロック図である。
【００８７】
図７に例示したように、ディスクアレイ３０は、主記憶装置であるメモリ３２０、ディスク３３０、コンピュートネットワークＩ／Ｆ３４０、及び管理ネットワークＩ／Ｆ３５０と、これらに接続されたプロセッサ（ＣＰＵ５１０）と、を含んで構成される。これらの各コンポーネント、すなわち、ＣＰＵ３１０、メモリ３２０、ディスク３３０、コンピュートネットワークＩ／Ｆ３４０、及び管理ネットワークＩ／Ｆ３５０の数は限定されず、１つでも複数でもよい。
【００８８】
ＣＰＵ３１０は、メモリ３２０にロードされた各プログラムを実行する。メモリ３２０は、ＤＲＡＭ等の揮発性メモリであって、ストレージ制御プログラム３２１及びオペレーティングシステム３２２が格納される。ディスク３３０は、磁気ディスクまたはフラッシュメモリ等の不揮発性記憶媒体を有する記憶デバイスであって、コンピュートＶＭ５７０やアプリケーションサーバ２０から書き込まれたデータを格納するために用いられる。
【００８９】
（４）ストレージ管理処理
本実施の形態では、上述した情報システム１において、ストレージ管理サーバ１０が、タイプの異なる複数のストレージシステム（ディスクアレイ３０、ＳＤＳシステム４、ＨＣＩシステム５）を統合して管理することができ、例えば、ストレージ要件に応じて好適なストレージプールにストレージボリュームを作成することができる。以下では、このようなストレージ管理装置（ストレージ管理サーバ１０）によるストレージ管理処理について詳しく説明する。
【００９０】
（４−１）ストレージプール作成処理
図８は、ストレージプール作成処理の処理手順例を示すフローチャートである。ストレージプール作成処理は、ストレージシステムを新規に導入した後、ユーザ（例えばストレージ管理者）がストレージプールの作成をストレージ管理サーバ１０に要求する際に実行される処理であって、ストレージ管理サーバ１０のストレージ統合管理ソフトウェア１２１によって実行される。ストレージプール作成処理が開始される際、ユーザは、ストレージプール作成の要求対象とするストレージを指定し、ストレージ管理サーバ１０にストレージプール作成を要求する。
【００９１】
図８によればまず、ストレージ管理サーバ１０のストレージ統合管理ソフトウェア１２１が、ユーザから指定された要求対象のストレージに、ユーザから指定されたパラメータでストレージプールを作成する（ステップＳ１０１）。このとき指定されるパラメータには、データ保護レベルや、有効化する機能等が含まれる。
【００９２】
次に、ストレージ統合管理ソフトウェア１２１は、ステップＳ１０１で作成したストレージプールに関する所定の情報を収集する（ステップＳ１０２）。ステップＳ１０２で収集される所定の情報は、具体的には、図３に例示したストレージプール管理テーブル１２２で保持される各項目の情報に相当し、ストレージプールの特性情報が含まれる。
【００９３】
最後に、ストレージ統合管理ソフトウェア１２１は、ステップＳ１０２で収集した情報を用いて、ステップＳ１０１で作成したストレージプールのエントリをストレージプール管理テーブル１２２に追加し、ユーザにストレージプール作成処理の完了を返し（ステップＳ１０３）、処理を終了する。
【００９４】
以上、ストレージプール作成処理について説明したが、ストレージプール管理テーブル１２２によるストレージプールの特性情報の管理という観点で見ると、上記処理（特にステップＳ１０２〜Ｓ１０３）は、ストレージプール管理テーブル１２２に新たにエントリを追加する必要が生じた場合の処理の一例とも言える。
【００９５】
（４−２）ストレージボリューム作成処理
図９は、ストレージボリューム作成処理の処理手順例を示すフローチャートである。ストレージボリューム作成処理は、ストレージボリュームを新規に作成する場合に実行される処理であって、ユーザ（例えばストレージ管理者）が、ストレージ要件を指定して、ストレージ管理サーバ１０にストレージボリュームの作成を要求することによって開始される。また、図１０は、ストレージボリューム作成処理のイメージを説明するための図である。図１０では、ストレージボリューム作成処理における各処理の流れが、矢印付きの破線で示されている。なお、図１０に示されたステップ番号は、図９のステップ番号と対応している。
【００９６】
まず、ストレージボリューム作成処理の事前処理として、ユーザが、アプリケーションプログラム２２１（またはアプリケーションプログラム５７５）がデータを格納するストレージを決定するために必要なストレージ要件を定義する。そして、ユーザは、定義したストレージ要件をパラメータとして、ストレージボリューム作成要求をストレージ管理サーバ１０に要求する。
【００９７】
ここで、ストレージボリューム作成要求の要求に用いられるインタフェースは、ストレージ管理サーバ１０が提供するＧＵＩ（Graphical User Interface）でもよいし、ＣＬＩ（Command Line Interface）でもよいし、ＡＰＩ（Application Programming Interface）を使用するツール等でもよい。ストレージ要件は、複数の項目（属性）を含むことができる。例えば、プロトコル、機能、可用性、データ保護レベル、性能、及びボリュームサイズ等を含む。ストレージ要件の形式は任意であり、例えば、ＣＳＶ（Comma-Separated Values）、ＪＳＯＮ（JavaScript（登録商標） Object Notation）、またはＸＭＬ（eXtensible Markup Language）等の形式でよい。
【００９８】
図９に沿ってストレージボリューム作成処理の処理手順を説明する。
【００９９】
事前処理で説明したストレージボリューム作成要求を受けると、ストレージ管理サーバ１０のストレージ統合管理ソフトウェア１２１は、ユーザから指定されたストレージ要件をインプットとして、ストレージボリューム配置先選択処理を実行する（ステップＳ２０１）。
【０１００】
ステップＳ２０１のストレージボリューム配置先選択処理は、ストレージボリューム作成要求のパラメータとして入力されたストレージ要件と、ストレージプール管理テーブル１２２に保持している各ストレージプールの特性情報とを比較することによって、ストレージ要件を満たすストレージプールを選出（出力）する処理であって、その処理手順は図１１を参照しながら後述する。
【０１０１】
次に、ストレージ統合管理ソフトウェア１２１は、ステップＳ２０１のストレージボリューム配置先選択処理によって、条件（ストレージ要件）を満たすストレージプールが出力（選出）されたか否かを判定する（ステップＳ２０２）。
【０１０２】
ストレージ要件を満たすストレージプールがストレージボリューム配置先選択処理で選出された場合は（ステップＳ２０２のＹＥＳ）、ストレージ統合管理ソフトウェア１２１が、当該ストレージプールを提供するストレージシステムに対して、パラメータを指定してストレージボリュームの作成を指示し、指示を受けたストレージシステムが、上記パラメータで指示されたストレージプールにストレージボリュームを作成する（ステップＳ２０３）。ステップＳ２０３で指定されるパラメータには、ストレージプールの指定の他に、例えば、ストレージボリュームのサイズ、有効化する機能、プロトコル等が含まれる。図１０の場合、ＳＤＳノード４０のストレージＶＭ４６０で提供されるストレージプール４８０において、ストレージボリューム４９０が作成されるイメージが示されている。
【０１０３】
ステップＳ２０３の処理が行われた後、ストレージ統合管理ソフトウェア１２１は、ボリューム管理テーブル１２３に、ステップＳ２０３で作成したストレージボリュームのエントリを追加し、ユーザにストレージボリューム作成処理の完了を返し（ステップＳ２０４）、処理を終了する。図４に示したように、ステップＳ２０４でボリューム管理テーブル１２３に追加されるエントリには、作成したストレージボリュームのＩＤ（ボリュームＩＤ１２３０）、プロトコル（使用プロトコル１２３２）、ストレージボリュームのサイズ（使用ボリュームサイズ１２３３）、有効化した機能（使用機能１２３４）、要求可用性１２３８、及び要求性能１２３９等が含まれる。
【０１０４】
なお、ステップＳ２０２において複数のストレージプールが条件（ストレージ要件）を満たす場合には、ステップＳ２０３においてストレージボリュームを作成するストレージプールを、所定の決定方法に従って決定すればよい。所定の決定方法としては例えば、最も空き容量が大きいストレージプールにストレージボリュームを作成するようにしてもよい。また例えば、ストレージ要件の構成要件ごとに係数を掛け、その合計値が最も高いストレージプールにストレージボリュームを作成するようにしてもよい。また例えば、ラウンドロビンでストレージプールを選択して順にストレージボリュームを作成するようにしてもよいし、あるいは、上記複数のストレージプールをユーザに出力してユーザに選択させる等してもよい。
【０１０５】
一方、ステップＳ２０２の判定において、ストレージ要件を満たすストレージプールが出力されていなかった場合は（ステップＳ２０２のＮＯ）、ストレージ要件を満たす条件でストレージボリュームを作成することができないため、ストレージボリューム作成処理を終了する。このとき、ストレージ要件を満たすストレージプールが存在しない旨を通知するエラー等を、ユーザ側に返すようにしてもよい。
【０１０６】
図９に示したストレージボリューム作成処理の終了後、ストレージボリューム作成の完了を受理したユーザは、事後処理として、アプリケーションサーバ２０（またはコンピュートＶＭ５７０）とストレージボリュームを作成したストレージシステム（例えば図１０の場合、ＳＤＳノード４０）との間にパスを設定し、アプリケーションサーバ２０のアプリケーションプログラム２２１（またはコンピュートＶＭ５７０のアプリケーションプログラム５７５）は、ストレージボリュームに対してデータの読み書きを開始する。パスの設定とは具体的には例えば、「iSCSI」でイニシエータとターゲットを設定する処理である。
【０１０７】
なお、ＨＣＩノード５０の場合、コンピュートＶＭ５７０とストレージシステムとの間にパスを設定する方法は、次の２つの方法の何れかを採用すればよい。
【０１０８】
第１の方法は、情報システム１の何れかのストレージシステム（ディスクアレイ３０、ＳＤＳシステム４、ＨＣＩシステム５）のストレージプールにストレージボリュームが作成された場合のパスの設定方法の一例である。第１の方法では、コンピュートＶＭ５７０が、ストレージボリュームを作成したストレージシステム（ディスクアレイ３０、ＳＤＳノード４０、ＨＣＩノード５０）との間にパスを設定する。
【０１０９】
第２の方法は、ＳＤＳ内のストレージプールにストレージボリュームが作成された場合のパスの設定方法の一例であり、このときコンピュートＶＭ５７０は、同一ノード（ＨＣＩノード５０）のストレージＶＭ５６０にパスを設定し、ストレージＶＭ５６０が、ストレージボリュームが作成されたノードに転送する。
【０１１０】
第２の方法におけるストレージＶＭ５６０による転送について詳述する。まず、ストレージボリュームが作成されたノードがストレージＶＭ５６０自身のＨＣＩノード５０である場合は、ストレージＶＭ５６０が、コンピュートＶＭ５７０とデータの読み書きを直接やり取りする。一方、ストレージボリュームが作成されたノードがＨＣＩシステム５内の別のＨＣＩノード５０である場合は、ストレージＶＭ５６０はＨＣＩノード間でデータを転送してデータを読み書きする。さらに、ＨＣＩノード５０とＳＤＳノード４０のストレージ制御ソフトウェア（例えば図５に示したストレージ制御プログラム４６６）が互換性を有していれば、ＳＤＳノード４０に作成されたストレージボリュームに対しても、ストレージＶＭ５６０はデータを転送することができる。
【０１１１】
（４−２−１）ストレージボリューム配置先選択処理
図１１は、ストレージボリューム配置先選択処理の処理手順例を示すフローチャートである。ストレージボリューム配置先選択処理は、パラメータとして入力されたストレージボリュームのストレージ要件に基づいて、ストレージ要件を満たすストレージプールを選出する処理であって、ストレージ管理サーバ１０のストレージ統合管理ソフトウェア１２１によって実行される処理である。ストレージボリューム配置先選択処理は、図９に示したストレージボリューム作成処理（ステップＳ２０１）の他、後述する図１４に示すストレージボリューム再配置処理（ステップＳ６０３）でも呼び出される。
【０１１２】
図１１によればまず、ストレージ統合管理ソフトウェア１２１は、ストレージプール管理テーブル１２２を参照して、ストレージ要件で指定されたプロトコルをサポートしているストレージプールを検索する（ステップＳ３０１）。
【０１１３】
次に、ストレージ統合管理ソフトウェア１２１は、ステップＳ３０１の検索によって、プロトコルの指定条件を満たすストレージプールが存在するか否かを判定する（ステップＳ３０２）。ステップＳ３０２で肯定の判定結果が得られた場合は（ステップＳ３０２のＹＥＳ）、ステップＳ３０３に進む。一方、ステップＳ３０２で否定の判定結果が得られた場合は（ステップＳ３０２のＮＯ）、ストレージ要件を満たすストレージプールを選出することができないため、ストレージボリューム配置先選択失敗を返して処理を終了する。ストレージボリューム配置先選択失敗の通知は、ストレージ要件を満足するストレージプールを選出できなかったことを通知するものであり、ストレージ要件の何れの要件について失敗と判定したかを示す情報を添えてもよい。これは、他の選別処理（ステップＳ３０４，Ｓ３０６）で否定の判定結果が得られた場合も同様である。
【０１１４】
ステップＳ３０３では、ストレージ統合管理ソフトウェア１２１は、ストレージプール管理テーブル１２２を参照して、ステップＳ３０２でプロトコルの条件を満たしたストレージプールにおいて、ストレージ要件で指定された容量以上の空き容量が存在するか検索する。そしてステップＳ３０４では、上記検索の結果、ストレージ要件で指定された容量以上の空き容量を有するストレージプールが存在するか否かを判定する。ステップＳ３０４の判定で肯定の判定結果が得られた場合は（ステップＳ３０４のＹＥＳ）、ステップＳ３０５に進む。一方、ステップＳ３０４の判定で否定の判定結果が得られた場合は（ステップＳ３０４のＮＯ）、ストレージボリューム配置先選択失敗を返して処理を終了する。
【０１１５】
ステップＳ３０５では、ストレージ統合管理ソフトウェア１２１は、ストレージプール管理テーブル１２２を参照して、ステップＳ３０４で空き容量の条件を満たしたストレージプールにおいて、ストレージ要件で指定されたその他の要件が満たされるか検索する。そしてステップＳ３０６ではステップＳ３０５の検索の結果、上記ストレージプールがストレージ要件を満たすか否かを判定する。ステップＳ３０６の判定で肯定の判定結果が得られた場合は（ステップＳ３０６のＹＥＳ）、ステップＳ３０７に進む。一方、ステップＳ３０６の判定で否定の判定結果が得られた場合は（ステップＳ３０６のＮＯ）、ストレージボリューム配置先選択失敗を返して処理を終了する。
【０１１６】
ステップＳ３０７の処理が行われるケースでは、上述したステップＳ３０２，Ｓ３０４，Ｓ３０６の各判定を経て、指定されたストレージ要件を全て満たすストレージプールが選出されている。そこで、ステップＳ３０７では、ストレージ統合管理ソフトウェア１２１は、ストレージ要件を満足するストレージプールとして、上記選出されたストレージプールを出力し、処理を終了する。
【０１１７】
以上のようにストレージボリューム配置先選択処理が行われることにより、ストレージ統合管理ソフトウェア１２１は、ストレージプール管理テーブル１２２に保持している各ストレージプールの特性情報に基づいて、指定されたストレージ要件を満足するストレージプールを検索し、該当するストレージプールを選出（出力）することができる。
【０１１８】
なお、本実施の形態におけるストレージボリューム配置先選択処理は、図１１の処理手順に限定されるものではなく、以下のような処理を行うようにしてもよい。
【０１１９】
例えば、ステップＳ３０２でプロトコルの条件を満たしたストレージプールのうち、既に当該ストレージボリュームが作成されているストレージプールについては、ステップＳ３０３の処理をスキップしてもよい。これは、当該ストレージボリュームが配置済みであり、そのストレージボリュームのサイズに変更がない場合、ストレージプールに対して空き容量の判定は必要ないためである。
【０１２０】
また例えば、ステップＳ３０６において、複数のストレージプールについて肯定の判定結果が得られた場合、すなわち、ストレージ要件を満足する複数のストレージプールが見つかった場合には、ストレージボリューム配置先選択処理の処理結果として、これら複数のストレージプールを出力してもよいし、所定の決定方法を用いて、１つまたは所定上限数までのストレージプールを出力するようにしてもよい。具体的な決定方法としては例えば、空き容量が大きい順に出力するストレージプールを決定してもよいし、ラウンドロビンで順番に決定してもよい。あるいは、ストレージ要件を構成する要件ごとに重みを付けて算出した優先度に基づいて、出力するストレージプールを決定するようにしてもよい。このとき、所定の要件を優先度の判断に用い、その他の要件は優先度の判断から除外するとしてもよい。優先する所定の要件として例えば、容量、性能、または可用性を挙げることができる。さらに、優先する要件や重みを、ストレージ要件のなかでユーザまたはアプリケーションが指定できるようにしてもよい。
【０１２１】
また、図１１に例示したストレージボリューム配置先選択処理では、ステップＳ３０２ではプロトコル、ステップＳ３０４では空き容量、ステップＳ３０６ではその他の要件、というように、ストレージ要件に含まれる構成要件に対して段階的に選別処理を実施したが、これらの選別処理の実行順は、図１１の例に限定されるものではなく、任意の順番に変更してもよい。また、段階的に選別処理を行うのではなく、ストレージ要件に含まれる全ての構成要件に対して一括して選別処理を実施するようにしてもよい。
【０１２２】
また、上述したストレージボリューム配置先選択処理の場合、最終的に選出されるストレージプールは、ストレージ要件の構成要件を全て満足するものに限られたが、本実施の形態はこれに限定するものではない。例えば、ストレージ要件の構成要件を必須要件と希望要件とに分け、少なくとも必須要件を全て満足することを、選出されるストレージプールの必要条件としてもよい。さらに、全ての必須要件を満足する複数のストレージプールのうちから、希望要件をどの程度満足するかに基づいて、ストレージボリューム配置先選択処理で最終的に選出するストレージプールを決定するようにしてもよい。このようにする場合、ストレージボリュームの配置先の判断にストレージ要件を柔軟に反映することができ、多様なストレージ要件の要求に応えることができる。なお、ストレージ要件における必須要件と希望要件の区分は、当該ストレージ要件を指定するユーザまたはアプリケーションが指定できるとしてもよいし、特定の構成要件を必須要件とするようストレージ管理サーバ１０に予め設定できる等してもよい。
【０１２３】
（４−３）ストレージシステムアップデート処理
図１２は、ストレージシステムアップデート処理の処理手順例を示すフローチャートである。ストレージシステムアップデート処理は、ストレージシステムのハードウェアまたはソフトウェアのアップデート（アップグレード／ダウングレード）を実施する際に実行される処理であって、主にストレージ管理サーバ１０のストレージ統合管理ソフトウェア１２１によって実行される。
【０１２４】
ストレージシステムのアップデートが実施される具体的な状況としては、例えば、ディスクアレイ３０にディスク３３０が増設された場合や、既存のストレージプールにディスクが追加された場合等が挙げられる。また、ストレージプールにストレージボリュームが新規に作成された場合も、図９に示したストレージボリューム作成処理の終了後に、図１２のストレージシステムアップデート処理が行われる。なお、ストレージシステムのアップデートは、例えばユーザがストレージシステムに対してアップデート要求を行うことによって開始される。
【０１２５】
図１２によればまず、ユーザからのアップデート要求を受理したストレージシステムが、ストレージシステムをアップデートし、ユーザにアップデート完了を返す（ステップＳ４０１）。
【０１２６】
次に、ストレージ管理サーバ１０のストレージ統合管理ソフトウェア１２１が、ステップＳ４０１におけるストレージシステムのアップデート完了を検出し、当該ストレージシステムの情報を収集して、当該ストレージシステムの特性が変更されたか否かを判定する（ステップＳ４０２）。具体的な判定方法としては例えば、図３の提供プロトコル１２２３〜空き容量１２２９に対応する情報について、現在のストレージプール管理テーブル１２２における現在の保持情報（アップデート前の情報）とステップＳ４０２で収集した情報（アップデート完了後の情報）とを比較することによって、特性が変更されたか否かを判定することができる。
【０１２７】
ステップＳ４０２においてストレージシステムの特性が変更されたと判定した場合（ステップＳ４０２のＹＥＳ）、ストレージ統合管理ソフトウェア１２１は、ストレージプール管理テーブル１２２のエントリのうち、ストレージＩＤ１２２１がアップデートしたストレージシステムのＩＤと一致するエントリに対して、ステップＳ４０２で収集した情報を用いて、特性が変更した属性の全てを更新し（ステップＳ４０３）、ストレージシステムアップデート処理を終了する。
【０１２８】
一方、ステップＳ４０２においてストレージシステムの特性が変更されなかったと判定した場合は（ステップＳ４０２のＮＯ）、ストレージプール管理テーブル１２２を更新する必要がないため、そのままストレージシステムアップデート処理を終了する。
【０１２９】
なお、上述した処理手順では、ユーザがストレージシステムのアップデートを要求する際、アップデート要求をストレージシステムに対して行うとしたが、本実施の形態はこれに限らず、ストレージシステムのアップデート要求をストレージ管理サーバ１０に対して行うとしてもよい。また、ユーザにストレージシステムのアップデート完了を返すタイミングは、ステップＳ４０１の完了後に限定されなくてもよく、例えば、ステップＳ４０３の完了後にストレージ管理サーバ１０がユーザにアップデート完了を返すようにしてもよい。
【０１３０】
以上、ストレージシステムアップデート処理について説明したが、ストレージプール管理テーブル１２２によるストレージプールの特性情報の管理という観点で見ると、上記処理（特にステップＳ４０２〜Ｓ４０３）は、ストレージプール管理テーブル１２２で既に保持されているエントリを更新する必要が生じた場合の処理の一例とも言える。したがって、ストレージプールの特性が変更され得る他のストレージ操作（例えば、ストレージシステムの設定変更等）が行われる場合も、ストレージ統合管理ソフトウェア１２１がステップＳ４０２〜Ｓ４０３と同様の処理を行うことにより、所定のエントリにおいて特性が変更した属性の全てを更新することができ、ストレージプール管理テーブル１２２はストレージプールの最新の特性情報を管理することができる。
【０１３１】
（４−４）ストレージ要件変更処理
図１３は、ストレージ要件変更処理の処理手順例を示すフローチャートである。ストレージ要件変更処理は、アプリケーションプログラム２２１（またはアプリケーションプログラム５７５）が要求するストレージ要件を変更する際に、ユーザ（例えばストレージ管理者）がストレージ管理サーバ１０に対して要求して実行される処理である。
【０１３２】
図１３によるとまず、ストレージ管理サーバ１０のストレージ統合管理ソフトウェア１２１が、ユーザからのストレージ要件の変更要求を受理する（ステップＳ５０１）。ストレージ要件の変更要求には、要件を変更するストレージボリュームのＩＤや、要件変更後のストレージ要件が含まれる。
【０１３３】
次に、ストレージ統合管理ソフトウェア１２１は、ボリューム管理テーブル１２３のエントリのうち、ボリュームＩＤ１２３０がステップＳ５０１で受理した変更要求に含まれるストレージボリュームのＩＤと一致するエントリに対して、特性が変更した属性の全てを、要件変更後のストレージ要件に基づいて更新し、ユーザに応答を返す（ステップＳ５０２）。
【０１３４】
上記の処理が行われることによって、ストレージ要件が変更される場合に、当該変更に応じて、ボリューム管理テーブル１２３で保持するストレージ要件の情報を更新することができる。
【０１３５】
（４−５）ストレージボリューム再配置処理
図１４は、ストレージボリューム再配置処理の処理手順例を示すフローチャートである。ストレージボリューム再配置処理は、作成済みのストレージボリュームの格納先（配置先）のストレージプールを再検索し、ストレージボリュームを別のストレージプールに移動する処理である。ストレージボリューム再配置処理の実施契機については、図１４の説明を行った後に述べる。
【０１３６】
図１４によればまず、ストレージ管理サーバ１０のストレージ統合管理ソフトウェア１２１が、ボリューム管理テーブル１２３を参照し、１行ずつエントリを読み込む（ステップＳ６０１）。
【０１３７】
次に、ストレージ統合管理ソフトウェア１２１は、ボリューム管理テーブル１２３の全てのエントリに対応するストレージボリュームについて、ストレージボリュームの再配置を判断し実行する処理（ステップＳ６０３以降の処理）が完了しているか否かを判定する（ステップＳ６０２）。ステップＳ６０２において全てのエントリについて再配置処理が完了していると判定した場合（ステップＳ６０２のＮＯ）、ストレージ統合管理ソフトウェア１２１は処理を終了する。
【０１３８】
一方、ステップＳ６０２において再配置処理が完了していないエントリが存在すると判定した場合（ステップＳ６０２のＮＯ）、ストレージ統合管理ソフトウェア１２１は、ステップＳ６０１で読み込んだ未完了のエントリで情報を保持するストレージボリュームについて、ストレージボリューム配置先選択処理を実行する（ステップＳ６０３）。図１１を参照して前述したように、ストレージボリューム配置先選択処理の実行によって、ストレージボリュームのストレージ要件を満たすストレージプールが選出される。
【０１３９】
次に、ストレージ統合管理ソフトウェア１２１は、ステップＳ６０３のストレージボリューム配置先選択処理で選出されたストレージプールのなかに、現在の配置先のストレージプールが含まれているか否かを判定する（ステップＳ６０４）。現在の配置先のストレージプールが含まれていると判定した場合には（ステップＳ６０４のＹＥＳ）、ストレージボリュームを別のストレージプールに移動する特段の必要性はないため、当該エントリに対する再配置処理を終了し、ステップＳ６０１に戻って別のエントリに対する再配置処理が進められる。
【０１４０】
ステップＳ６０４において現在の配置先のストレージプールが含まれていないと判定した場合には（ステップＳ６０４のＮＯ）、現在の配置先のストレージプールが当該エントリのストレージボリュームのストレージ要件を満たしていない、あるいは、より好適にストレージ要件を満たすストレージプールが存在することを意味する。そこで、ストレージ統合管理ソフトウェア１２１は、当該エントリのストレージボリュームをステップＳ６０３のストレージボリューム配置先選択処理で選出されたストレージプールに移動する（ステップＳ６０５）。
【０１４１】
その後、ストレージ統合管理ソフトウェア１２１は、ボリューム管理テーブル１２３においてステップＳ６０５で移動したストレージボリュームのエントリを更新する（ステップＳ６０６）。ステップＳ６０６の処理まで行うと、当該エントリ（ストレージボリューム）に対する再配置処理が終了するので、ステップＳ６０１に戻って別のエントリに対する再配置処理を進める。
【０１４２】
以上のようにストレージボリューム再配置処理を行うことにより、ストレージ統合管理ソフトウェア１２１は、ストレージボリュームの格納先（配置先）のストレージプールがストレージ要件を満たさなくなっている場合に、好適な別のストレージプールにストレージボリュームを再配置することができる。
【０１４３】
上述したストレージボリューム再配置処理は、任意のタイミングで実施するようにしてよいが、少なくとも、ストレージプール（広義にはストレージシステム）の特性が変更されたとき（言い換えれば、ストレージプール管理テーブル１２２の特性情報が変更されたとき）、あるいは、ストレージボリュームに要求されるストレージ要件が変更されたとき（言い換えれば、ボリューム管理テーブル１２３の要件要求情報が変更されたとき）には、実施されることが好ましい。
【０１４４】
具体的な実施タイミングを例示する。例えば、ストレージ管理サーバ１０のオペレーティングシステム１２４によって定期的に起動してもよい。また例えば、ストレージプール作成処理（図８参照）、ストレージシステムアップデート処理（図１２参照）、またはストレージ要件変更処理（図１３参照）の実行時に、それぞれの処理に延長して実施するようにしてもよい。また例えば、オンラインアップデート等の保守のためにストレージボリュームを移動するような状況において実施するようにしてもよい。
【０１４５】
なお、本実施の形態では、図１２に例示したストレージボリューム再配置処理を開始する前に、ストレージプール管理テーブル１２２及びボリューム管理テーブル１２３における更新の有無を判定し、更新があった場合のみ、図１２の処理を実行するようにしてもよい。更新の判定方法としては、エントリごとの更新日時に基づいて判定してもよいし、前回のテーブルのスナップショットとの比較に基づいて判定してもよい。このようにすることで、ストレージプールやストレージボリュームの構成等が変更されていない（各テーブルで更新がない）状況では、不要なストレージボリューム再配置処理を実行せずに済むため、ストレージ管理サーバ１０における処理負荷の増加を抑制する効果が得られる。
【０１４６】
以上に説明してきたように、本実施の形態に係る情報システム１は、ディスクアレイ３０、ＳＤＳシステム４、及びＨＣＩシステム５といった種別（タイプ）が異なる複数のストレージシステムを備えて構成されている。本実施の形態において、ストレージシステムの「種別（タイプ）が異なる」とは、ディスクアレイ３０、ＳＤＳシステム４、ＨＣＩシステム５のようなストレージシステム自体のタイプの違いだけでなく、サポートしている機能やデータ保護レベル等、様々なストレージ特性の違いを含む。
【０１４７】
このような本実施の形態に係る情報システム１において、ストレージ管理装置であるストレージ管理サーバ１０は、ストレージシステムが提供するストレージプールに関する第１の管理情報（ストレージプール管理テーブル１２２）と、ストレージプールに作成されたストレージボリュームに関する第２の管理情報（ボリューム管理テーブル１２３）とを保持し、ストレージプール管理テーブル１２２には、ストレージプールの特性情報が含まれ、ボリューム管理テーブル１２３には、ストレージボリュームに対するストレージ要件を示す情報と当該ストレージボリュームに提供されている要件を示す情報とが含まれる。そして、ストレージ管理サーバ１０（ストレージ統合管理ソフトウェア１２１）は、複数のストレージシステムに亘るこれらの情報を統合的に管理することにより、特性の異なるストレージシステムを跨いで各種のストレージ操作を実現することができる。
【０１４８】
ストレージ管理サーバ１０によるストレージ操作の詳細は、図８〜図１４を参照しながら説明した通りであり、例えば、ストレージ要件をパラメータとしてストレージボリュームの作成が要求された場合には、ストレージ要件と各ストレージプールの特性情報（ストレージプール管理テーブル１２２）とを比較することによって、複数のストレージシステムに跨って、ストレージ要件を満たすストレージプールを選出することができ（ストレージボリューム配置先選択処理）、ストレージ要件に応じた好適なストレージプールにストレージボリュームを作成することができる。
【０１４９】
また、ストレージ管理サーバ１０は、上記したストレージプール管理テーブル１２２やボリューム管理テーブル１２３について、ストレージシステムの構成変更やアップデート、さらにはストレージ要件の変更等に応じて適宜エントリを更新することができるので、情報システム１における各ストレージシステムの状況の変化に対応して、ストレージシステムを統合的に管理することができる。
【０１５０】
また、ストレージ管理サーバ１０は、ストレージボリューム再配置処理において、作成済みのストレージボリュームの配置先のストレージプールが現時点でも好適な配置先であるかを判定し、判定結果に基づいて、より好適なストレージプールにストレージボリュームの配置先を変更することができるため、タイプが異なる複数のストレージシステムのなかで、ストレージ要件を継続的に満足させながらストレージボリュームを提供するという効果を奏する。
【０１５１】
以上、本発明の実施の形態を説明したが、これは本発明の説明のための例示であって、本発明の範囲を上述した実施の形態にのみ限定する趣旨ではない。すなわち、本発明は、他の種々の形態でも実施する事が可能である。
【０１５２】
また、上述した実施の形態では、用途ごとにサーバコンピュータが存在していたが（例えば、ストレージ管理サーバ１０、アプリケーションサーバ２０、ＳＤＳノード４０等）、１つのサーバコンピュータが複数の用途を兼ねるように構成されていてもよい。例えば、上述した実施の形態でストレージ管理サーバ１０が実行していたプログラムがＳＤＳノード４０で実行されるように構成されていてもよい。この場合ユーザは、ＳＤＳノード４０に備えられている入出力デバイス（キーボードやディスプレイ）を用いて、管理操作を行う。
【０１５３】
また、上述した実施の形態では、ストレージシステムが受け付けるＩ／Ｏ要求（コマンド）は、いわゆるＳＣＳＩコマンドである例が説明された。つまりＳＤＳが、いわゆるブロックレベルのアクセス要求を受け付けるストレージ装置である例を説明した。しかし本発明に係る情報システムにおいては、ストレージシステムがそれ以外のタイプのストレージ装置であってもよい。例えば、ファイルレベルやオブジェクトレベルのアクセス要求を受け付けるストレージ装置（所謂、ＮＡＳ（Network Attached Storage）やＯＳＤ（Object-based Storage Device））等でもよい。
【０１５４】
また、上述した実施の形態における各処理をＣＰＵに実行させる各プログラムは、計算機が読み取り可能な記憶メディアに格納された状態で提供され、プログラムを実行する各装置にインストールされてもよい。計算機が読み取り可能な記憶メディアとは、非一時的なコンピュータ可読媒体で、たとえばＩＣカード、ＳＤカード、ＤＶＤ等の不揮発性記憶媒体である。あるいは、上述した実施の形態における各処理をＣＰＵに実行させる各プログラムは、プログラム配布サーバからネットワーク経由で提供されてもよい。
【０１５５】
また、図面において、制御線や情報線は説明上必要と考えられるものを示しており、製品上必ずしも全ての制御線や情報線を示しているとは限らない。実施には殆ど全ての構成が相互に接続されていると考えてもよい。
【符号の説明】
【０１５６】
１      情報システム
４      ＳＤＳシステム
５      ＨＣＩシステム
１０    ストレージ管理サーバ
２０    アプリケーションサーバ
３０    ディスクアレイ
４０    ＳＤＳノード
５０    ＨＣＩノード
６０    ネットワーク
１１０  ＣＰＵ
１２０  メモリ
１２１  ストレージ統合管理ソフトウェア
１２２  ストレージプール管理テーブル
１２３  ボリューム管理テーブル
１２４  オペレーティングシステム
１３０  ディスク
１４０  管理ネットワークＩ／Ｆ
２２１  アプリケーションプログラム
３１０  ＣＰＵ
３２０  メモリ
３２１  ストレージ制御プログラム
３２２  オペレーティングシステム
３３０  ディスク
３４０  コンピュートネットワークＩ／Ｆ
３５０  管理ネットワークＩ／Ｆ
３８０  ストレージプール
４１０  ＣＰＵ
４２０  メモリ
４３０  ディスク
４４０  ネットワークＩ／Ｆ
４５０  ハイパーバイザ
４６０  ストレージＶＭ
４６１  仮想ＣＰＵ（ｖＣＰＵ）
４６２  仮想メモリ（ｖＲＡＭ）
４６３  コンピュートネットワークＩ／Ｆ
４６４  管理ネットワークＩ／Ｆ
４６５  ノード間ネットワークＩ／Ｆ
４６６  ストレージ制御プログラム
４６７  オペレーティングシステム
４８０  ストレージプール
４９０  ストレージボリューム
５１０  ＣＰＵ
５２０  メモリ
５３０  ディスク
５４０  ネットワークＩ／Ｆ
５５０  ハイパーバイザ
５６０  ストレージＶＭ
５７０  コンピュートＶＭ
５７１  仮想ＣＰＵ（ｖＣＰＵ）
５７２  仮想メモリ（ｖＲＡＭ）
５７３  コンピュートネットワークＩ／Ｆ
５７４  管理ネットワークＩ／Ｆ
５７５  アプリケーションプログラム
５７６  オペレーティングシステム
５８０  ストレージプール
【図１】
2020173727.tif 000003
【図２】
2020173727.tif 000004
【図３】
2020173727.tif 000005
【図４】
2020173727.tif 000006
【図５】
2020173727.tif 000007
【図６】
2020173727.tif 000008
【図７】
2020173727.tif 000009
【図８】
2020173727.tif 000010
【図９】
2020173727.tif 000011
【図１０】
2020173727.tif 000012
【図１１】
2020173727.tif 000013
【図１２】
2020173727.tif 000014
【図１３】
2020173727.tif 000015
【図１４】
2020173727.tif 000016