以下、本発明の実施形態を説明する。
<第1実施形態>
先ず、本発明の第1実施形態について説明する。
図1は、本発明の第1実施形態のコンピュータシステムの構成図である。
図示するように、コンピュータシステムは、ストレージシステム1、少なくとも1台のサーバ計算機(以下において単に「サーバ」という)3、およびストレージ管理端末4を有する。ストレージシステム1とサーバ3とは、例えばFibre Channelと呼ばれるインタフェースで接続され、FCP(Fibre Channel Protocol)と呼ばれるプロトコルを用いて、コマンドやデータの送受信を行う。また、ストレージシステム1とストレージ管理端末4は、LAN(Local Area Network)を介して接続されている。
なお、本実施形態は、ストレージシステム1とサーバ3との間で用いるインタフェースおよびプロトコルの種類を特に限定しない。例えば、インタフェースおよびプロトコルの組合せとして、Ethernet(登録商標)とiSCSIなど他の組み合わせを用いても良い。また、上記では、ストレージシステム1とストレージ管理端末4との間をLANを介して接続することとしたがこれは例示に過ぎない。
サーバ3は、ストレージシステム1に対してデータの入出力を行うコンピュータである。ストレージシステム1は、サーバ3に記憶領域(以下「ボリューム」とも言う)を提供するシステムである。サーバ3がストレージシステム1へコマンドを送信すると、ストレージシステム1は、当該コマンドにしたがい、サーバ3との間でデータ転送を行う。ストレージシステム1は、後述する外部IF100毎に少なくとも1つのボリュームを提供する。
そして、サーバ3は、ボリュームを指定してストレージシステム1にデータ転送を指示することが出来る。例えば、FCPを用いる場合、サーバ3は、LUN(Logical Unit Number)という番号をコマンドに付加してストレージシステム1へ発行することで、ボリュームを指定することが出来る。コマンドには、リードやライトといったコマンド種別を示すコマンドコード、ボリューム内での転送開始位置を示すアドレスや転送長といった情報が含まれる。
ストレージシステム1は、インタフェース部10、共有メモリ部21、プロセッサ部81、システム管理部60、それらを接続するスイッチ部51、およびハードディスク群2を有する。
ハードディスク群2は、ボリュームに格納されるデータ(以下「ボリュームデータ」ともいう)を保持する。具体的には、ボリュームは、ハードディスク群2が有する物理的な記憶領域に基づいて構成され、ボリュームデータは、ボリュームに対応するハードディスク群2の記憶領域に格納される。インタフェース部10は、ストレージシステム1とサーバ3との間を接続し、コマンドやデータの送受信を行う。また、インタフェース部10は、ハードディスク群2と接続されていて、コマンドやデータの送受信を行う。
共有メモリ部21は、ボリュームデータの一部やストレージシステム1の制御情報を保持する。プロセッサ部81は、サーバ3からのコマンドを解釈しデータ転送を制御する。スイッチ部51は、インタフェース部10、共有メモリ部21、プロセッサ部81、およびシステム管理部60にそれぞれ接続し、それらの間でデータの転送を行う。システム管理部60は、ストレージ管理端末4と接続し、ストレージシステム1の構成情報や構成変更指示の送受信を行う。また、スイッチ部51は、インタフェース部10、共有メモリ部21、プロセッサ部81、システム管理部60の間で制御情報やデータを転送するための相互結合網である。本実施形態では、相互結合網としてスイッチ部51を用いたが、同等の機能を有する他の手段を用いることも可能である。例えば、相互結合網をバスで構成してもよい。
ストレージ管理端末4は、ストレージシステム1に対する各種設定を行うためのコンピュータである。本実施形態では、ストレージ管理端末4は、管理者が入力するサーバ3の要求性能から適切なストレージシステム1の設定を決定し、ストレージ管理者に提示(提案)する処理を行う。このように、本実施形態を利用することで、ストレージシステム1の管理を容易に行うことができる。
続いて、ストレージシステム1が有するインタフェース部10の具体的な構成を、図2を用いて説明する。
図2は、本発明の第1実施形態のインタフェース部10の構成を説明するための図である。
図示するように、インタフェース部10は、4個の外部IF100、転送制御部105、およびメモリモジュール123を有する。なお、上記個数は例示に過ぎず、本実施形態では、インタフェース部10が有する構成(外部IF100、転送制御部105、およびメモリモジュール123)の個数を上記に限定するものではない。また以下の、全ての説明において、コンピュータシステムが有する各構成の個数は例示であり、本発明を限定するものではない。
メモリモジュール123には、外部IF100がデータ転送に利用するポート構成情報が格納されている(ポート構成情報については後述する)。転送制御部105は、外部IF100、メモリモジュール123、およびスイッチ部51との間で行われるデータの転送を制御する。
外部IF100は、サーバ3やハードディスク群2との間でコマンドの送受信やデータ転送を行う。外部IF100は、メモリモジュール123に格納されるポート構成情報612に基づき、サーバ3から受信したコマンドをプロセッサ部81へ転送する。また、外部IF100は、プロセッサ部81のマイクロプロセッサ101(図3参照)から指示を受け、サーバ3やハードディスク群2と共有メモリ部21との間のデータ転送を行う。
次に、ストレージシステム1のプロセッサ部81の具体的な構成を、図3を用いて説明する。
図3は、本発明の第1実施形態のプロセッサ部81の構成を説明するための図である。図示するように、プロセッサ部81は、メモリモジュール123、転送制御部105、少なくとも1つのマイクロプロセッサ101を有する。なお、メモリモジュール123および転送制御部105の構成は、上記図2で示したものと同じである。マイクロプロセッサ101は、インタフェース部10がサーバ3から受け付けたコマンドに対応する処理を行う。
次に、ストレージシステム1の共有メモリ部21の具体的な構成を、図4を用いて説明する。
図4は、本発明の第1実施形態の共有メモリ部21の構成を説明するための図である。図示するように、共有メモリ部21は、ボリュームのデータを一時的に格納するためのキャッシュメモリモジュール126と、ストレージシステム1の制御情報を保持する制御メモリモジュール127と、それらを制御すると共に、スイッチ部51とキャッシュメモリモジュール126、制御メモリモジュール127との間でデータの転送を行うメモリコントローラ125とを有する。
続いて、ストレージシステム1のシステム管理部60の具体的な構成を、図5を用いて説明する。
図5は、本発明の第1実施形態のシステム管理部60の構成を説明するための図である。システム管理部60は、ストレージシステム1とストレージ管理端末4を接続するLANコントローラ133、転送制御部105、メモリモジュール123、マイクロプロセッサ101、後述する各種構成情報やプログラムを保持するための不揮発メモリモジュール132、およびメモリモジュール123を制御するメモリコントローラ131を有する。メモリコントローラ131は、メモリモジュール123、不揮発メモリモジュール132、LANコントローラ133、転送制御部105、およびマイクロプロセッサ101に接続されている。
続いて、本実施形態のストレージシステム1のプログラムおよび各データのデータ構造を、図6を用いて説明する。
図6は、本発明の第1実施形態のストレージシステム1が実行するプログラムおよびストレージシステム1が有する各種データのデータ構造を説明するための図である。
最初にインタフェース部10のメモリモジュール123が保持するデータについて説明する。メモリモジュール123には、ポート構成情報612が格納される。ポート構成情報612は、各外部IF100と、その外部IF100で受信するコマンドを処理するマイクロプロセッサ101との対応を示すものである。
続いて、共有メモリ部21に保持されるデータを説明する。共有メモリ部21のキャッシュメモリモジュール126は、キャッシュデータ部211を有する。また、制御メモリモジュール127は、キャッシュテーブル212を保持する。
キャッシュデータ部211は、ストレージシステム1の性能を向上させる目的で、ハードディスク群2に格納されたデータや、ハードディスク群2に格納されるべきデータ等を一時的に保持するための記憶領域である。また、キャッシュテーブル212は、キャッシュデータ部211に格納されているデータと、ハードディスク群2に格納されるデータとの対応を保持するテーブルである。
続いて、プロセッサ部81に保持されるデータおよびプロセッサ部81で実行される各プログラムを説明する。プロセッサ部81のメモリモジュール123は、上述のポート構成情報612に加えて、ボリューム構成情報613およびコマンド受信キュー814を保持する。ボリューム構成情報613とは、ストレージシステム1がサーバ3に提供するボリュームとハードディスク群2との対応を表す情報である。またコマンド受信キュー814は、マイクロプロセッサ101が外部IF100から受信したコマンドを、外部IF100毎に整列して一時的に格納するためのキューである。
また、マイクロプロセッサ101は、コマンド受信プログラム811、コマンド処理プログラム812、およびディスク制御プログラム813を、それぞれ、実行して各種の処理を行う。コマンド受信プログラム811は、インタフェース部10の外部IF100からコマンドを受信した事を通知されることで起動し、受信したコマンドをコマンド受信キュー814に登録するためのプログラムである。コマンド処理プログラム812は、サーバ3からの各種コマンド(例えばデータリードコマンド)を実行するためのプログラムである。ディスク制御プログラム813は、コマンド処理プログラム812から呼び出され、ハードディスク群2とキャッシュメモリモジュール126との間のデータ転送を実行するためのプログラムである。なお、これらのプログラムについては、後段で詳細に説明する。
次に、システム管理部60に保持されるデータおよびシステム管理部60で実行される各プログラムを説明する。システム管理部60のメモリモジュール123は、ポート構成情報612、ボリューム構成情報613、およびプロセッサ構成情報614が保持されている。プロセッサ構成情報614とは、各プロセッサ部81のマイクロプロセッサ101の使用状況を表すデータである。また、システム管理部60のマイクロプロセッサ101は、構成変更プログラム611を実行する。構成変更プログラム611は、LANコントローラ133を介してストレージ管理端末4と通信し、ポート構成情報612、ボリューム構成情報613、プロセッサ構成情報614をストレージ管理端末4に転送し、或いは、設定するためのプログラムである。
なお、図中には示していないが、ストレージシステム1の電源投入など初期化の際に、システム管理部60のマイクロプロセッサ101は初期化プログラムを不揮発メモリモジュール132からロードし実行する。初期化プログラムにおいてマイクロプロセッサ101は、不揮発メモリモジュール132から上記の各プログラム(コマンド受信プログラム811、コマンド処理プログラム812、およびディスク制御プログラム813)とデータとをロードし、インタフェース部10やプロセッサ部81のメモリモジュール123へコピーする。また、マイクロプロセッサ101は、初期化プログラムにより、プロセッサ部81のマイクロプロセッサ101にコマンド処理プログラム812を開始させ、共有メモリ部21のキャッシュデータ部211およびキャッシュテーブル212を初期化する。
続いて、本実施形態のストレージシステムが有する、ポート構成情報612、ボリューム構成情報613、プロセッサ構成情報614のデータ構造を、図7を用いて説明する。
図7は、本実施形態のストレージシステムが有する、ポート構成情報612、ボリューム構成情報613、プロセッサ構成情報614のデータ構造を模擬的に示した図である。図7では、(a)図にポート構成情報612を示し、(b)図にボリューム構成情報613を示し、(c)図にプロセッサ構成情報614を示している。
最初に(a)図に示すポート構成情報612から説明する。ポート構成情報612は、外部IF100のデータを保持するためのものであり、複数のエントリ612a〜612dを有する。エントリ612aには、ストレージシステム1内で外部IF1100を指定する番号(識別する番号)である「外部IF番号6121」が格納される。エントリ612bには、エントリ612aに格納された「外部IF番号6121」の外部IF100がサーバ3に接続され使用中であるか否かを示す「使用フラグ6122」が格納される。
エントリ612cには、エントリ612aに格納された「外部IF番号6121」を有する外部IF100に接続するサーバ3の要求性能を表すデータである「要求性能6123」が格納される。なお、本実施形態では、「要求性能6123」を、単位時間当たりに実行可能なコマンド数の形式で表したデータとするが、特にこれに限定するものではない。
エントリ612dには、エントリ612aに格納された「外部IF番号6121」の外部IF100が受信したコマンドの処理を担当するマイクロプロセ101を示す「マイクロプロセッサ番号」が格納される。なお、「マイクロプロセッサ番号」とは、ストレージシステム1内でのマイクロプロセッサ101を指定するための番号(識別するための番号)のことをいう。
次に、(b)図に示すボリューム構成情報613を説明する。ボリューム構成情報613は、各ハードディスク群2の設定を保持するためのものであり、複数のエントリ613a〜613fを有する。エントリ613aには、ストレージシステム1での各ハードディスク群2を指定(識別)するための「ハードディスク群番号6131」が格納される。エントリ613bには、エントリ613aに格納された「ハードディスク群番号6131」のハードディスク群2が使用中であるか否かを示す「使用フラグ61312」が格納される。
エントリ613cには、エントリ613aに格納された「ハードディスク群番号6131」のハードディスク群2に接続されている外部IF100にアクセスするマイクロプロセッサ101を指定する番号である「マイクロプロセッサ番号6133」が格納される。エントリ613dには、エントリ613aに格納された「ハードディスク群番号6131」のハードディスク群2に接続されているインタフェース部10を示す「インタフェース番号6134」が格納される。
エントリ613eおよびエントリ613fには、「外部IF番号6135」および「LUN(Logical Unit Number)6136」がそれぞれ格納される。「外部IF番号6135」および「LUN(Logical Unit Number)6136」は、サーバ3から、アクセスしたいボリュームを指定するデータである。具体的には、サーバ3は、自身が接続されている外部IF100を指定する「外部IF番号6135」に「LUN(Logical Unit Number)6136」を付加してコマンドを発行することで、当該ハードディスク群2に格納されるデータにアクセスすることができる。
なお、本実施形態ではハードディスク群2とボリュームを1対1の関係で扱うが、ハードディスク群2の容量を考慮し、1つのハードディスク群2に対して複数のボリュームを定義することも可能である。
次に、(c)図に示すプロセッサ構成情報614を説明する。プロセッサ構成情報614は、複数のエントリ614a〜614bを有する。エントリ614aには、ストレージシステム1でのマイクロプロセッサ101を指定(識別)するための「マイクロプロセッサ番号6141」が格納される。エントリ614bには、エントリ614aに格納された「マイクロプロセッサ番号6141」のマイクロプロセッサ101が担当するサーバ3に接続される外部インタフェース部100の数を示す「担当外部IF数6142」が格納される。
続いて、本実施形態のストレージシステム1の各プログラムの動作を図8〜9を用いて説明する。
最初にプロセッサ部81が実行する各プログラムについて説明する。
図8は、本実施形態のストレージシステム1のプロセッサ部81が実行する各プログラムの動作を説明するための図である。
さて、ストレージシステム1のインタフェース部10は、ネットワークを介して接続されているサーバ3からのコマンドを受信する。具体的には、インターフェース部10の外部IF100は、自身に接続されているサーバ3が送信するコマンドを受信する。そして、外部IF100は、ポート構成情報612を参照して、自身に割り当てたれた「外部IF番号6121」に対応づけられている「マイクロプロセッサ番号6124」を特定する。外部IF100は、特定した「マイクロプロセッサ番号6124」のマイクロプロセッサ101を有するプロセッサ部81に受信したコマンドを転送する(A101)。
具体的には、外部IF100は、転送制御部105を経由し、プロセッサ部81に割込みをかける。マイクロプロセッサ101は、割込みを受けるとコマンド受信プログラム811を起動する。コマンド受信プログラム811においてマイクロプロセッサ101は、外部IF100からコマンドをリードし、そのコマンドをコマンド受信キュー814に登録する(A102)。
なお、コマンド受信キュー814は、当該マイクロプロセッサ101の担当外部インタフェース数6142と同数のキューを保持しており、マイクロプロセッサ101は、コマンドを受信した外部IF100に対応するキューにコマンドを登録するものとする。
プロセッサ部81のマイクロプロセッサ101は、常にコマンド受信キュー814の各キューを順番にチェックしている。マイクロプロセッサ101は、キューにコマンドが存在する場合、コマンドを一つキューから取り出し、コマンドを処理する(A103)。具体的には、マイクロプロセッサ101は、最初にコマンドで指定されるデータがキャッシュデータ部211に存在するかどうか判断する。マイクロプロセッサ101は、コマンドを受信した外部IF100と、コマンドに含まれるLUN、アドレス、転送長情報を用い、キャッシュテーブル212を検索する。
マイクロプロセッサ101は、キャッシュテーブル212を検索した結果、キャッシュデータ部211にコマンドで指定されるデータが存在しないと判断した場合、ボリューム構成情報613に基づき、ハードディスク群2からキャッシュデータ部211へのデータ転送を実行する。その際、マイクロプロセッサ101は、ボリューム構成情報613から当該ハードディスク群2に接続する外部インタフェース10を担当するマイクロプロセッサ101を検索し、そのマイクロプロセッサ101のディスク制御プログラム813を呼び出す。
ディスク制御プログラム813において、マイクロプロセッサ101はコマンド処理プログラム812からの指示に従い、外部IF100にハードディスク群2とキャッシュデータ部211の間のデータ転送(A104)を指示する。
キャッシュデータ部211にコマンドが指定するデータが存在する場合や、ディスク制御プログラム813がデータ転送を完了した後、マイクロプロセッサ101は、外部IF100にキャッシュデータ部211とサーバ3との間のデータ転送(A105)を指示する。データ転送が完了すると、マイクロプロセッサ101は、コマンド処理を完了し、再びコマンド受信キュー814のチェックを続ける。
なお、本実施形態のストレージシステム1において、プロセッサ部81のマイクロプロセッサ101が単位時間に処理できるコマンドの最大数は、基本的にマイクロプロセッサ101の性能に依存する。また、ディスク制御プログラム813の処理負荷は、コマンド処理プログラム812とくらべて十分軽い。よって、サーバ3に接続する各外部IF100で単位時間に処理可能なコマンド数は、その外部IF100を担当するマイクロプロセッサ101の担当外部インタフェース数6142と反比例すると考えて差し支えないものとする。
次に、システム管理部60が実行する各プログラムについて図9を用いて説明する。
図9は、本実施形態のストレージシステム1のシステム管理部60が実行する構成変更プログラムの動作を説明するための図である。
システム管理部60のマイクロプロセッサ101は、LANコントローラ133がストレージ管理端末4からのアクセスを受けつけた場合、構成変更プログラム611を起動させる。マイクロプロセッサ101は、構成変更プログラム611により、LANコントローラ133を通してストレージ管理端末4から受信する要求に応じて、システム管理部60のメモリモジュール123に格納されているポート構成情報612、ボリューム構成情報613、およびプロセッサ構成情報614をストレージ管理端末4に送信する(A201)。
また、マイクロプロセッサ101は、構成変更プログラム611により、ストレージ管理端末4からの要求に従い、これらの情報(ポート構成情報612、ボリューム構成情報613、およびプロセッサ構成情報614)を変更する。マイクロプロセッサ101は、ポート構成情報612やボリューム構成情報613を変更する場合、不揮発メモリモジュール132及び、ストレージシステム1内の全インタフェース部10とプロセッサ部81のメモリモジュール123とに格納されているポート構成情報612やボリューム構成情報613に対しても同じ内容の変更を行う(A202)。
続いて、本実施形態のストレージ管理端末4の構成およびストレージ管理端末4が有するデータ構成について図10を用いて説明する。
図10は、本実施形態のストレージ管理端末4の構成を説明するための図である。
図示するように、ストレージ管理端末4は、管理者が入力を行うための入力デバイス43、管理者のために情報を表示するディスプレイ44、CPU41、RAM42、およびLANコントローラ133を有する。
CPU41は、ストレージ管理プログラム411を実行して、ストレージシステム1に対する各種要求を行う。RAM42は、CPU41がストレージ管理プログラム411を実行して、ストレージシステム1から取得した、ポート構成情報612、ボリューム構成情報613、およびプロセッサ構成情報614を保持する。また、RAM42は、CPU41がストレージ管理プログラム411を実行するためのワークエリアとして機能する。
入力デバイス43は、ストレージシステム1の各種機能選択、各種設定のためのデータの入力を管理者から受け付けるデバイスで、例えば、キーボード、マウス、ハードスイッチなどを用いることができる。ディスプレイ44は、管理者に対してストレージシステム1が提供する各種の機能や各種設定画面を表示するためのデバイスで、例えば、液晶ディスプレイ装置、CRT装置を用いる事ができる。
ストレージ管理プログラム411は、外部インタフェース設定処理412、ボリューム追加処理413、およびストレージ資源追加処理414をストレージ管理端末4に実行させるためのプログラムである。
外部インタフェース設定処理412は、ストレージシステム1に新たにサーバ3を接続する際に、サーバ3に接続する外部IF100と、その外部IF100に対するデータ入出力処理を担当するマイクロプロセッサ101とを対応付けるための処理である。ボリューム追加処理413は、外部IF100およびLUNとハードディスク群2の対応を設定し、新たなボリュームをサーバ3から使用できるようにするための処理である。ストレージ資源追加処理414は、ストレージシステム1に外部インタフェース部10、ハードディスク群2、プロセッサ部81を追加した後に、管理者によって起動される処理である。なお、上記の外部インタフェース設定処理412、ボリューム追加処理413、およびストレージ資源追加処理414の詳細については後段で詳細に説明する。
続いて、本実施形態の外部インタフェース設定処理412の処理のフローを、図11を用いて詳細を説明する。
図11は、本実施形態のストレージ管理端末4が行う外部インタフェース設定処理のフローを説明するための図である。
さて、CPU41は、管理者からの操作を受け付け、ストレージ管理プログラム411による処理を起動する。CPU41は、ストレージ管理プログラム411により、まずLANコントローラ133を介して、ストレージシステム1のシステム管理部60と通信し、ポート構成情報612、ボリューム構成情報613、およびプロセッサ構成情報614を取得する。CPU41は、取得したポート構成情報612、ボリューム構成情報613、およびプロセッサ構成情報614をRAM42に格納し(S4121)、S4122の処理に進む。なお、以下において、ポート構成情報612、ボリューム構成情報613、およびプロセッサ構成情報614を、単に「ストレージシステム構成情報」ということがある。
具体的には、CPU41は、ストレージ管理プログラム411により、LANコントローラ133を介して、ストレージシステム1のシステム管理部60に対して「ストレージシステム構成情報」の送信を要求する。システム管理部60のマイクロプロセッサ101は、構成変更プログラム611により、上記の要求を受け付けて、メモリモジュール123に格納している、「ストレージシステム構成情報」を読み出し、LANコントローラ133を介してCPU41に送信する。そして、CPU41は、ストレージ管理プログラム411により、システム管理部60が送信した「ストレージシステム構成情報」を、LANコントローラ133を介して受信し、RAM42に格納する。
S4122では、CPU41は、ストレージ管理プログラム411により、管理者からの、新規に接続するサーバ3の要求性能の入力を受け付ける。具体的には、CPU41は、ストレージ管理プログラム411により、新規に接続するサーバ3の要求性能の入力を要求する要求メッセージをディスプレイ44に表示して、管理者からの入力を待つ。そして、CPU41は、ストレージ管理プログラム411により、管理者が入力デバイス43を介して入力する要求性能を受け付ける。なお、本実施形態の説明では、管理者から受け付ける要求性能は、1秒間あたりに処理可能なコマンド数の形式で表されるデータとする。
CPU41は、ストレージ管理プログラム411により、上記要求性能を受け付けた後、RAM42に格納されたポート構成情報612を検索して未使用の外部IF100を選択する(S4123)。
次に、CPU41は、ストレージ管理プログラム411により、ストレージシステム1のマイクロプロセッサ101を一つ選び、そのマイクロプロセッサ101に新たに外部IF100を担当させた場合のマイクロプロセッサ101の予測性能を算出する。本実施形態では、予測性能は、RAM42に格納されているプロセッサ構成情報614を用いて求める。具体的には、CPU41は、予め測定した「マイクロプロセッサ101の性能」に対してプロセッサ構成情報614の「担当外部インタフェース数6142に1を加算した値」を除算した値を算出し、その算出した値を「予測性能」とする。なお、本実施形態において、「マイクロプロセッサの性能」は、従来技術を用いた測定などの方法で求めることとする。
そして、CPU41は、算出した「予測性能」が、ステップ4122において管理者から受け付けた「要求性能」を超えるか否かを判定する。CPU41は、算出した予測性能が受け付けた「要求性能」を超える場合、さらに、当該マイクロプロセッサ101が既に処理している外部IF100をポート構成情報612から全て抽出する。CPU41は、算出した「予測性能」が各外部IF100の要求性能6123を超えるか判定する。両方の条件を満たすマイクロプロセッサ101が見つかるまで、CPU41は、各マイクロプロセッサ101に対する同様の検索処理を行う(S4124)。
このように、本実施形態では、選択したマイクロプロセッサ101に対する「予測性能」を求め、その求めた「予測性能」と管理者から受け付けた「要求性能」とを比較している。また、本実施形態では、「予測性能」と管理者から受け付けた「要求性能」との比較に加えて、さらに、「予測性能」と、マイクロプロセッサが既に担当している外部IF100の要求性能6123との比較を行うようにしている。このため、本実施形態では、新たに外部IF100に担当するマイクロプロセッサ101を割り当てる際に、既に設定されている外部IF100の要求性能も考慮した設定を行うことができる。
そして、判定処理の結果、条件を満たすマイクロプロセッサ101が見つかった場合、CPU41は選び出した外部IF100およびマイクロプロセッサ101の組合せをディスプレイ44に表示する(S4125、4126)。
その後、CPU41は、表示した組合せをストレージシステム1に設定する許可を管理者に求めるメッセージをディスプレイ44に表示し、管理者からの設定許可の入力を待つ(S4127)。
CPU41は、管理者からの上記表示した組合せに対する許可を示すデータを受け付けた場合、LANコントローラ133を介してストレージシステム1と通信し、ストレージシステム1が有するポート構成情報612およびプロセッサ構成情報614を更新する。
具体的には、CPU41は、ストレージ管理プログラム411により、LANコントローラ133を介して、ストレージシステム1のシステム管理部60に対してポート構成情報612およびプロセッサ構成情報614の更新を要求するデータを送信する。システム管理部60は、構成変更プログラム611により、上記更新を要求するデータを受け付けて、ストレージシステム1の各メモリモジュール123に格納されているポート構成情報612およびプロセッサ構成情報614を更新する(S4128)。
なお、ポート構成情報612およびプロセッサ構成情報614は以下のように更新される。S4123で選択された外部IF100に対応するエントリ612bに「使用フラグ6122」として「使用中」を示すフラグを格納する。また、上記エントリ612bに対応するエントリ612cにS4122で受け付けた「要求性能」を格納する。また、上記エントリ612bに対応するエントリ612dにS4124で選択されたマイクロプロセッサ110の「マイクロプロセッサ番号6124」を格納する。
また、プロセッサ構成情報614の更新については、S4124で選択されたマイクロプロセッサ101に対応するエントリ614bに「担当外部インタフェース数6142に1を加算した値」を格納する。CPU41は、構成情報の更新が完了すると、外部インタフェース設定処理412を終了する。
また、ステップ4125で条件を満たすマイクロプロセッサ101が見つからない場合、或いは、管理者がS4127で表示された組合せを拒否した場合、CPU41は、手動による設定を管理者に要求するメッセージをディスプレイ44に表示する。CPU41は、管理者からの手動による、ポート構成情報612、プロセッサ構成情報614の更新データを受け付けた場合、ストレージシステム1のシステム管理部60に対してポート構成情報612およびプロセッサ構成情報614の更新を要求する。システム管理部60は、構成変更プログラム611により、上記更新要求を受け付けて、ストレージシステム1の各メモリモジュール123に格納されているポート構成情報612およびプロセッサ構成情報614を更新する(S4129)。上記ポート構成情報612およびプロセッサ構成情報614の更新が完了すると、外部インタフェース設定処理412を終了する。
なお、S4125で条件を満たすマイクロプロセッサ101が見つからない場合、CPU41は、プロセッサ部81の増設を提案するメッセージをディスプレイ44に表示するようにしても良い。
続いて、本実施形態のボリューム追加処理のフローを、図12を用いて説明する。
図12は、本実施形態のストレージ管理端末が行うボリューム追加処理のフローを説明するための図である。
さて、CPU41は、管理者からの操作を受け付け、ストレージ管理プログラム411による処理を起動する。そして、上記図11で説明したS4121と同様の処理を行い、ストレージシステム1から「ストレージシステム構成情報」を取得して、RAM42に格納する(S4131)。
次に、CPU41は、ストレージ管理プログラム411により、管理者からの、新しいボリュームの作成を要求するサーバ3に接続する外部IF100の番号およびLUNの入力を受け付ける(S4132)。具体的には、CPU41は、ストレージ管理プログラム411により、新しくボリュームの作成を要求するサーバ3に接続する外部IF100番号およびLUNの入力を管理者に要求するメッセージをディスプレイ44へ出力し、管理者の入力を待つ。そして、CPU41は、ストレージ管理プログラム411により、管理者が入力デバイス43を介して入力する外部IF100番号およびLUNの入力を受け付ける。
管理者からの入力が完了すると、CPU41は、RAM42に格納されたボリューム構成情報613の中から未使用のハードディスク群2を検索する。そし、未使用のハードディスク群2が見つかった場合、S4135の処理に進み、未使用のハードディスク群2がない場合、S4138の処理に進む(S4133、4134)。
S4135では、CPU41は、見つかったハードディスク群番号6131
と、上記受け付けた外部IF100番号およびLUNとの組み合わせをディスプレイ44に表示し、S4136に進む。
一方、未使用のハードディスク群2が見つからない場合に進むS4138では、CPU41は、ディスプレイ44にエラー表示を行い、処理を終了する。
S4136では、CPU41は、表示したハードディスク群番号6131と外部IF100番号およびLUNとの組み合わせをストレージシステム1に設定する許可を求めるメッセージをディスプレイ44に表示し、管理者からのデータの入力を待つ。CPU41は、管理者からの表示された組み合わせでの設定の許可を示すデータの入力を受け付けた場合にS4137に進み、上記設定を行わない旨を示すデータの入力を受け付けた場合にS4139に進む。
S4137では、CPU41は、LANコントローラ133を介してストレージシステム1のシステム管理部60と通信し、ストレージシステム1のメモリモジュール123に格納されているボリューム構成情報613を更新させる。具体的には、CPU41は、LANコントローラ133を介してストレージシステム1のシステム管理部60に対して、ボリューム構成情報613の更新を要求する。システム管理部60のマイクロプロセッサ101は、構成変更プログラム611により、上記更新要求を受け付けて、ストレージシステム1の各メモリモジュール123に格納されているボリューム構成情報613を更新する。ボリューム構成情報613の更新が完了すると、ボリューム追加処理413を終了する。
なお、ボリューム構成情報613は、以下のように更新される。S4133で選び出したハードディスク群2に対応するボリューム構成情報613のエントリ613bに格納する「使用フラグ6132」が「未使用」から「使用中」に更新される。また、S4133で選び出したハードディスク群2に対応するボリューム構成情報613のエントリ613dの「外部インタフェース番号6135」およびエントリ613fの「LUN6136」にS4132で管理者が入力した「外部IF100番号」および「LUN」が格納される。
続いて、S4136において、CPU41がディスプレイ44に表示した組み合わせでの設定を行わない旨を示すデータを受け付けた場合に進むS4139の処理を説明する。
S4139では、CPU41は、図11で説明したS4129と同様に手動による設定を受け付けて、受け付けた内容にストレージシステム1が有するボリューム構成情報の更新を行う。そして、ボリューム構成情報613の更新が完了すると、ボリューム追加処理413を終了する。
なお、S4134において、未使用のハードディスク群2が見つからなかった場合、CPU41は、ハードディスク群2の増設を提案するメッセージをディスプレイ44に表示するようにしても良い。
続いて、本実施形態のストレージ資源追加処理のフローを、図13を用いて説明する。
図13は、本実施形態のストレージ管理端末が行うストレージ資源追加処理のフローを説明するための図である。
さて、CPU41は、管理者からの操作を受け付け、ストレージ管理プログラム411による処理を起動して、管理者からの追加されるリソース種類の入力を受け付ける(ステップ4141)。具体的には、CPU41は、ディスプレイ44にストレージ資源の追加を受け付けつる設定画面を表示して、管理者からの追加されるリソース種類の入力を受け付ける。
続いて、CPU41は、S4141で受け付けたリソース種類が「プロセッサ部81」の追加か否か判定する。そして、CPU41は、S4141で受け付けたリソース種類が「プロセッサ部81」の追加と判定した場合にS4143に進む。一方、CPU41は、上記の「プロセッサ部81」の追加と判定しなかった場合S4145に進む(ステップ4142)。
S4143では、CPU41は、管理者からの追加するマイクロプロセッサ101のマイクロプロセッサ番号6141の入力を受け付ける(S4143)。具体的には、CPU41は、追加するマイクロプロセッサ101のマイクロプロセッサ番号6141の入力を要求するメッセージをディスプレイ44に表示する。そして、CPU41は、入力デバイス43を介して管理者が入力するマイクロプロセッサ番号6141の入力を受け付ける。
管理者の入力が完了すると、CPU41は、LANコントローラ133を通してストレージシステム1のシステム管理部60と通信し、プロセッサ構成情報614の更新を実行する(S4144)。
具体的には、CPU41は、LANコントローラ133を介してストレージシステム1のシステム管理部60に対して、プロセッサ構成情報614の更新を要求する。システム管理部60のマイクロプロセッサ101は、構成変更プログラム611により、上記更新要求を受け付けて、システム管理部60のメモリモジュール123に格納されているプロセッサ管理情報614を更新する。なお、ここでのプロセッサ構成情報614の更新処理により、プロセッサ構成情報614には新たなエントリが追加される。新たに追加されたエントリ614aには、管理者が入力したマイクロプロセッサ番号6141が格納される。また、新たに追加された対応するエントリ614bの「担当外部インタフェース数61420」には「0」が格納される。プロセッサ構成情報614の設定が完了すると、ストレージ資源追加処理414を完了する。
一方、S4124において、受け付けた入力が「プロセッサ部81の追加」ではない場合、CPU41は、受け付けた入力が「ハードディスク群2の追加」であるか否かを判定する。そして、CPU41は、受け付けた入力が「ハードディスク群2の追加」である場合にS4146に進み、「ハードディスク群2の追加」ではない場合にS4148に進む(S4145)。
S4146では、CPU41は、管理者からの追加するハードディスク群2に関するデータの入力を受け付ける(S4146)。具体的には、CPU41は、管理者が追加するハードディスク群2の「ハードディスク群番号6131」、追加するハードディスク群2を接続するインタフェース部10の「インタフェース部番号6134」、追加するハードディスク群へのアクセスを実行するマイクロプロセッサ101の「マイクロプロセッサ番号6133」の入力を要求するメッセージをディスプレイ44に表示する。そして、CPU41は、入力デバイス43を介して管理者が入力する上記の「ハードディスク群番号6131」、「インタフェース部番号6134」および「マイクロプロセッサ番号6133」の入力を受け付ける。
管理者の入力が完了すると、CPU41は、LANコントローラ133を通してストレージシステム1のシステム管理部60と通信し、ボリューム構成情報613の更新を実行する(S4147)。具体的には、CPU41は、上記S4144と同様の手順により、ストレージシステムのシステム管理部60に対して、ボリューム構成情報613の更新を実行させる。
なお、ここでのボリューム構成情報の更新により、ボリューム構成情報613にエントリが新たに追加される。新たに追加されたエントリ613a、613c、および613dに、それぞれ、S4146で入力された「ハードディスク群番号6131」、「マイクロプロセッサ番号6133」、および「インタフェース部番号6134」が格納される。また、新たなエントリ613bの「使用フラグ6132」に「未使用」を示すフラグが格納される。ボリューム構成情報613の設定が完了すると、ストレージ資源追加処理414を完了する。
続いて、S4145において、受け付けた入力が「ハードディスク群2の追加」では無い場合に進むS4148の処理を説明する。
S4148では、CPU41は、S4141で受け付けた入力が「インタフェース部10の追加」と判定する。そして、CPU41は、管理者からの追加するインタフェース部10に関するデータの入力を受け付ける(S4148)。具体的には、CPU41は、管理者に追加するインタフェース部10の「外部IF100の数」と、各外部IF100の「外部インタフェース番号6121」の入力を要求するメッセージをディスプレイ44に表示する。そして、CPU41は、入力デバイス43を介して管理者が入力する上記の「外部IF100の数」および「外部インタフェース番号6121」の入力を受け付ける。
管理者の入力が完了すると、CPU41は、LANコントローラ133を通してストレージシステム1のシステム管理部60と通信し、ポート構成情報612の更新を実行する。すなわち、CPU41は、上記のS4144と同様の手順により、ストレージシステムのシステム管理部60に対して、ポート構成情報612の更新を実行させる(S4149)。
なお、ここでのポート構成情報612の更新により、ポート構成情報612にステップ4148で管理者が入力した個数のエントリが追加される。追加されたエントリ612aに受け付けた「外部インタフェース番号6121」が格納されて、エントリ612bの「使用フラグ6122」に「未使用」を示すフラグが格納される。ポート構成情報612の設定が完了すると、ストレージ資源追加処理414を完了する。
このように、本実施形態では、上述した図11で説明した処理を行うことで、ストレージシステム1にサーバ3を新しく接続し、ストレージシステム1のストレージシステム構成情報を設定することができる。また、図12で説明した処理を行うことで、新たに接続したサーバ3に提供するボリュームを設定することができる。
本実施形態のストレージシステム1にサーバ3を新しく接続する際、管理者はストレージ管理端末4のストレージ管理プログラム411を起動させる。ストレージ管理端末4のCPU41は、上述したS4121の手順にしたがい、ストレージシステム1からストレージシステム構成情報を取得する。ストレージ管理端末4のCPU41は、ストレージ管理プログラム411により、外部インタフェース設定処理412を実行して、管理者からの要求性能の入力を受け付ける。
ストレージ管理端末4のCPU41は、要求を満たす外部IF100、マイクロプロセッサ101の組み合わせを算出し、管理者に提案する。ストレージ管理端末4は、管理者からの表示された組み合わせの承認を受け付けると、ストレージシステム1の構成情報を設定する。
次に管理者は、新規のサーバ3にボリュームを提供するため、ストレージ管理端末4のストレージ管理プログラム411を起動し、上述したボリューム追加処理413を実行して、上記の外部インタフェース設定処理412により設定した外部IF100と適当なLUNに対するボリュームを追加する。
最後に管理者は、新規のサーバ3を外部インタフェース設定処理412で設定された外部IF100に接続し、ボリューム追加処理413で入力したLUNを使用する設定をサーバ3に対して行うことで、サーバ3の追加が完了する。
このように、本実施形態では、サーバ3に接続するインタフェース部10、ハードディスク群2に接続するインタフェース部10、およびインタフェース部10のデータ入出力処理を担当するマイクロプロセッサ101を、それぞれ、スイッチ部51を介して接続するようにしている。すなわち、本実施形態では、サーバ3に接続するインタフェース部10に固定的にデータ入出力処理を行うマイクロプロセッサ101を割り当てるのではなく、インタフェース部10とそのインタフェース部10に対する処理を行うマイクロプロセッサ101を自由な組み合わせで設定できるように構成されている。そのため、本実施形態によれば、ストレージシステム1が有するリソース資源を効率よく利用することができる。
また、本実施形態では、ストレージ管理端末4がストレージシステム1の外部IF100、マイクロプロセッサ101、ハードディスク群2の最適な組み合わせを算出して、その組み合わせを管理者に提示するようにしている。そのため、ストレージシステム1へサーバ3を追加する場合等において、サーバ3に接続する外部IF100、マイクロプロセッサ101、およびハードディスク群2の組み合わせを意識することなく設定することが可能になる。すなわち、本実施形態によれば、ストレージシステム1が有するリソース資源を効率よく利用するための設定を簡単に行うことができる。また、本実施形態によれば、ストレージシステム1の規模の拡張する場合にも、リソース資源を効率よく利用するための設定を簡単に行うことができる。
<第2実施形態>
続いて、本発明の第2実施形態について説明する。
図14は、本発明の第2実施形態のコンピュータシステムの構成図である。第2実施形態のコンピュータシステムは、ストレージシステムの構成が第1実施形態のものと異なっている。なお、第2実施形態の説明において、第1実施形態と同じ構成には同じ符号を用いることとする。
図示するように、第2実施形態のストレージシステム1bは、第1実施形態のストレージシステム1からシステム管理部60を除いた構成を有する2個のクラスタ70a、bと、各クラスタ70a、bが有するスイッチ部51に接続されているシステム管理部60とを有する。そして、クラスタ70aが有するスイッチ部51、およびクラスタ70bが有するスイッチ部51との間は、クラスタパスで接続されている。
第2実施形態のコンピュータシステムが有する各構成の機能は、図2〜6で示した第1実施形態のものと同じである。ストレージシステム1bおよび管理端末4が有する各データのデータ構成は第1実施形態のストレージシステム1および管理端末4と同様である。ストレージシステム1bのプログラムについても第1実施形態と同じである。また、第2実施形態のストレージ管理端末4が有するストレージ管理プログラム41は、外部インタフェース設定処理412およびボリューム追加処理413の処理の一部が第1実施形態と異なっている以外は同様である。そこで、以下において異なる部分を中心に説明する。
さて、図示するサーバ3からハードディスク群2へのアクセスは、同じクラスタ70内のスイッチ部51だけを使用するハードディスク群2へのアクセスに比べて、クラスタ間パスを使用したアクセスの方がレスポンスが遅くなるという問題を有している。これは、同じクラスタ70内のスイッチ部51だけを使用するハードディスク群2へのアクセスに比べて、クラスタ間パスを使用したアクセスの帯域が狭いためである。
そのため、サーバ3へ接続する外部IF100と、異なるクラスタ70にあるマイクロプロセッサ101、ハードディスク群2の組合せで設定されるボリュームが多数存在すると、クラスタ間パスの帯域やレスポンスがボトルネックとなりストレージシステム1bの性能が低下する場合がある。
第2実施形態では、ストレージ管理端末4が、上記のような組み合わせを回避させるようにボリュームの設定処理をストレージシステム1bに行うことで、ストレージシステム1bの性能が低下することを防ぐようにする。以下、第2実施形態のストレージ管理端末4が行う外部インタフェース設定処理412とボリューム追加処理413の処理フローを、図15、16を用いて説明する。
なお、第2実施形態では、マイクロプロセッサ番号6124、6133、外部インタフェース番号6121、ハードディスク群番号6131から当該マイクロプロセッサ101、外部IF100、ハードディスク群2が属するクラスタ70a、bを判断できるものとする。具体的には、上記の各番号が1〜100の場合に各部(マイクロプロセッサ101、外部IF100、ハードディスク群2)はクラスタ70aに属し、101〜200の場合に各部(マイクロプロセッサ101、外部IF100、ハードディスク群2)はクラスタ70bに属するもの定めておくこととする。
図15は、本発明の第2実施形態における外部インタフェース設定処理のフローを説明するための図である。
さて、最初にストレージ管理端末4のCPU41は、図11で示したS4121、4122と同じ処理を行い、ストレージシステム1bからストレージシステム構成情報を取得し、かつ、管理者からのサーバ要求性能の入力を受け付ける(S4121、4122)。
続いて、ストレージ管理端末4のCPU41は、ストレージ管理プログラム411により、上記要求性能を受け付けた後、RAM42に格納されたポート構成情報612を検索して未使用の外部IF100を両方のクラスタ70から選び出す。なお、CPU41は、未使用の外部IF100が複数ある場合には全て選び出す(S4143)。
次に、CPU41は、ストレージ管理プログラム411により、要求性能を満たすマイクロプロセッサ101を両方のクラスタ70から全て選び出す(S4144)。なお、要求性能を満たすマイクロプロセッサ101を選び出す方法は、図11のS4124と同じである。
続いて、CPU41は、上記S4143、4144で選び出した外部IF100とマイクロプロセッサ101との組み合わせで、両者が同一クラスタに属する組み合わせが存在するか判断する。(S4145)。その後、CPU41は、図11に示すS4126〜S4129と同様の処理を行う。
次に、ボリューム追加処理を説明する。
図16は、本発明の第2実施形態におけるボリューム追加処理のフローを説明するための図である。
最初に、ストレージ管理端末4のCPU41は、図12で示したS4131、4132と同じ処理を行い、ストレージシステム1からストレージシステム構成情報を取得し、かつ管理者からの「外部IF100番号」および「LUN」の入力を受け付ける。
ストレージ管理端末4のCPU41は、ストレージ管理プログラム411により、上記「外部IF100番号」および「LUN」の入力を受け付けた後、RAM42に格納されたボリューム構成情報613を検索して、未使用のハードディスク群2を両方のクラスタ70から選び出す。なお、CPU41は、未使用のハードディスク群2が複数ある場合には全て選び出す(S4153)。
次に、CPU41は、S4153で選び出したハードディスク群2の中に、S4132で管理者が指定した外部IF100と同じクラスタに属するものを検索し、それが存在するか判定し、存在する場合にS4135に進む。一方、CPU41は、上記選び出したハードディスク群2の中に、S4132で管理者が指定した外部IF100と同じクラスタに属するものが存在しない場にS4155の処理に進む(S4154)。
S4135では、上記第1実施形態と同様に、CPU41はハードディスク群番号をディスプレイ44へ表示する(ステップ4135)。S4135以降、CPU41は、第1実施形態と同じ処理、すなわち、図12に示したS4136〜4139の処理を行う。
一方、S4154において、条件を満たすハードディスク群2が見つからなかった場合に進むS4155の処理について説明する。S4155では、CPU41は、ストレージ管理プログラム411により、クラスタ70間パスが使用可能か否かを判断する。具体的には、CPU41は、ストレージ管理プログラム411により、RAM42に格納されているポート構成情報612から使用中の各エントリの外部IF100をチェックする。CPU41は、外部IF100とハードディスク群2とが異なるクラスタ70に含まれるエントリの数をカウントする。そして、CPU41は、ストレージ管理プログラム411により、カウントした数が設計限界値以下であるかの確認を行う。CPU41は、設計限界値以下の場合にクラスタ間パスを使用可能と判断してS4156に進む。一方、CPU41は、設計限界値を超えている場合にクラスタ間パスは使用不能と判断してS4138に進む。
なお、上記の設計限界値とは、クラスタ間パスの帯域で決まる値であって、従来技術により測定することができる値である。本実施形態では、設計限界値は、ストレージ管理端末4にあらかじめ設定されている定数とする。この設計限界値は、ストレージ管理端末4にデフォルトとして設定されていてもよいし、管理者が入力デバイス43を介して、ストレージ管理端末4に設定するようにしてもよい。また、S4155におけるクラスタ間パスを使用可能か判断する方法として、CPU41がディスプレイ44にクラスタ間パスを使用する許可を求めるメッセージを表示し、管理者の許可により決めるようにしてもよい。
S4156では、CPU41は、ストレージ管理プログラム411により、S4153で選び出したハードディスク群2の中から、S4132で管理者が指定した外部IF100が属するクラスタ70と異なるクラスタ70に属するハードディスク群2を検索し、それが存在するか否かを判定する。CPU41は、上記存在すると判定した場合にS4135に進み、存在しないと判定した場合にS4135に進む。
S4138では、CPU41は、ストレージ管理プログラム411により、ディスプレイ44にエラーメッセージを表示して処理を終了する
このように、第2実施形態のストレージシステム1bは、クラスタ70同士が接続可能に構成されている。そのため、第2実施形態によれば、利用者の要求する規模に対応したストレージシステムの構築を容易に行うことができる。すなわち、第2実施形態によれば、利用者のデータ扱い量や業務量等に応じて、ストレージシステムの規模を容易に増減することができるようになる。
また、第2実施形態によれば、ストレージ管理端末4が、異なるクラスタ70にあるマイクロプロセッサ101とハードディスク群2との組合せが設定されることを防止するようにしている。そのため、第2実施形態によれば、クラスタ間パスによる性能低下を防ぐことができる。すならち、第2実施形態によれば、管理者はクラスタ間パスの影響を考慮しないでストレージシステム1bを設定することが出来る。
なお、第2実施形態では2個のクラスタ70を有するストレージシステム1bについて説明したが、特にこれに限定するものではない。例えば、ストレージシステム1bは、3個以上のクラスタ70を有することとしてもよい。そして、この場合も、上記と同様の手段でストレージシステム1bを管理することが可能である。
<第3実施形態>
続いて、本発明の第3実施形態について説明する。
図17は、本発明の第3実施形態のコンピュータシステムの構成図である。なお、第3実施形態の説明において、第1実施形態と同じ構成には同じ符号を用いることとする。
図示するように、コンピュータシステムは、ストレージシステム1c、少なくとも1台のサーバ3、およびストレージ管理端末4を有する。また、第3実施形態のコンピュータシステムでは、第1、第2実施形態と同様に、ストレージシステム1cに、サーバ3、およびストレージ管理端末4が接続されている。なお、第3実施形態のコンピュータシステムは、ストレージシステム1の構成とストレー管理端末4が行う処理とが第1実施形態と異なる以外は、第1実施形態のものと同じである。以下において、異なる部分を中心に説明する。
さて、第3実施形態のストレージシステム1cは、ポートアダプタ部31、スイッチ部51、システム管理部60、ストレージアダプタ部71、およびハードディスク群2を有する。ポートアダプタ部31、システム管理部60、およびストレージアダプタ部71は、スイッチ部51により相互接続されている。なお、スイッチ部51、システム管理部60、ハードディスク群2は第1実施形態と同様である。ポートアダプタ部31は、ストレージシステム1cとサーバ3との間を接続して、コマンドやデータの送受信を行うものである。ストレージアダプタ部71は、ハードディスク群2と接続して、コマンドやデータの送受信を行うものである。
続いて、第3実施形態のポートアダプタ部31構成を詳細に説明する。
図18は、第3実施形態のポートアダプタ部の構成を説明するための図である。図示するように、ポートアダプタ部31は、第1実施形態のインタフェース部10に、さらに、マイクロプロセッサ101cを追加したものである。マイクロプロセッサ101cは、転送制御部105に接続される。なお、マイクロプロセッサ101cは、コマンドの転送処理を行うプロセッサである。マイクロプロセッサ101cは、ストレージシステム1cとサーバ3との間で行うデータ入出力処理は行わない。そのため、マイクロプロセッサ101cは、第1実施形態のマイクロプロセッサ101に比べて処理能力の低い仕様のものを用いるものとする。このように、第3実施形態では、マイクロプロセッサ101cを用いて、コマンド転送処理を行うようにしている。そのため、第3実施形態では、コマンドの処理を担当するストレージアダプタ部71に、ボリューム単位でコマンドを転送することが可能となる。
続いて、第3実施形態のストレージアダプタ部71の構成を詳細に説明する。
図19は、本発明の第3実施形態のストレージアダプタ部71の構成を説明するための図である。図示するように、第3実施形態のストレージアダプタ部71は、第1実施形態のプロセッサ部81に、さらに、共有メモリ部21、および、ハードディスク群2に接続するための外部IF100を追加したものである。共有メモリ部21は、上記第1実施形態のものと同様に、メモリコントローラ125、キャッシュメモリモジュール126、および制御メモリモジュール127を有する。
そして、メモリコントローラ125および外部IF100は、各々、転送制御部105に接続されている。なお、ストレージアダプタ部71が有する各部(転送制御部105、マイクロプロセッサ101、メモリモジュール123、共有メモリ部21、および外部IF100)の機能は、第1実施形態と同じである。
続いて、第3実施形態のストレージシステム1cのプログラムおよびデータの構成を説明する。
図20は、本発明の第3実施形態のストレージシステム1cが有する各種データのデータ構造およびストレージシステム1cが実行するプログラムを説明するための図である。
最初にポートアダプタ部31が保持するデータについて説明する。ポートアダプタ部31のメモリモジュール123には、ポートアダプタ構成情報(PA構成情報)615が格納されている。ポートアダプタ構成情報615は、各外部IF100と、その外部IF100で受信するコマンドを処理するストレージアダプタ部71との対応を示す情報である。
次に、ストレージアダプタ部71が保持するデータについて説明する。ストレージアダプタ部71のキャッシュメモリモジュール126は、キャッシュデータ部211を有する。制御メモリモジュール127には、キャッシュテーブル212が格納される。図示するキャッシュデータ部211およびキャッシュテーブル212は、上記第1実施形態で説明したキャッシュデータ部211およびキャッシュテーブル212と同じである。
ストレージアダプタ部71のメモリモジュール123には、コマンド実行キュー712、PA構成情報615、ボリューム構成情報616が格納されている。ボリューム構成情報616は、ストレージアダプタ部71が提供するボリュームと、当該ストレージアダプタ部71に接続されたハードディスク群2との対応を示す情報である。また、コマンド実行キュー712とは、ポートアダプタ部31から転送されたコマンドを、ボリューム毎に整列して一時的に格納するためのキューである。
次に、システム管理部60が保持するデータについて説明する。システム管理部60のメモリモジュール123は、PA構成情報615、ボリューム構成情報616、およびストレージアダプタ構成情報(SA構成情報)617が格納されている。SA構成情報617は、各ストレージアダプタ部71が処理するボリューム数を管理するための情報である。なお、PA構成情報615、ボリューム構成情報616、およびSA構成情報617については、後段で詳細に説明する。
続いて、第3実施形態のストレージシステム1cが実行するプログラムについて説明する。
ポートアダプタ部31のマイクロプロセッサ101cは、コマンド転送プログラム311を実行して、後述するコマンド転送処理を行う。また、ストレージアダプタ部71のマイクロプロセッサ101は、コマンド処理プログラム711を実行して、受け付けたコマンドに対応する処理を行う。また、システム管理部60のマイクロプロセッサ101は、構成変更プログラム618を実行して後述する構成変更処理を実行する。
なお、ストレージシステム1の電源投入の際、システム管理部60のマイクロプロセッサ101は、初期化プログラムを不揮発メモリモジュール132(図20には図示せず)からロードし実行する。初期化プログラムにおいてマイクロプロセッサ101は、不揮発メモリモジュール132から上記の各プログラム(コマンド転送プログラム311、構成変更プログラム618、およびコマンド処理プログラム711)、およびデータ(PA構成情報615、ボリューム構成情報616、SA構成情報617)をロードする。そして、マイクロプロセッサ101は、ロードした上記の各プログラムおよびデータを、ポートアダプタ部31やストレージアダプタ部71のメモリモジュール123へコピーする。システム管理部60のマイクロプロセッサ101は、ポートアダプタ部31のマイクロプロセッサ101cにコマンド転送プログラム311を開始させ、ストレージアダプタ部71のマイクロプロセッサ101にコマンド処理プログラム711を開始させ、かつキャッシュデータ部211およびキャッシュテーブル212を初期化する。
続いて、第3実施形態のストレージシステム1cが有する、PA構成情報615、ボリューム構成情報616、およびSA構成情報617について説明する。
図21は、第3実施形態のストレージシステム1cが有する、PA構成情報615、ボリューム構成情報616、およびSA構成情報617のデータ構造を模擬的に示した図である。なお、図21では、(a)図にPA構成情報615を示し、(b)図にボリューム構成情報616を示し、(c)図にSA構成情報617を示している。
最初に(a)図に示すPA構成情報615から説明する。PA構成情報615は、ポートアダプタ部31が提供するボリュームと、そのボリュームを処理するストレージアダプタ部71との対応関係を示すデータを保持するためのものであり、複数のエントリ615a〜615gを有する。
エントリ615a〜615gには、各々、「PA番号6151」、「外部IF番号6152」、「LUN6153」、「使用フラグ6154」、「要求性能6155」、「担当SA番号6156」、および「コマンド実行キュー番号6157」が格納される。
「PA番号6151」とは、ストレージシステム1c内でのポートアダプタ部31を指定する番号(識別する番号)である。「外部IF番号6152」および「LUN6153」は、上記第1実施形態で説明した「外部IF番号6135」および「LUN6136」と同じである。そして、「PA番号6151」、「外部IF番号6152」、および「LUN6153」により、サーバ3は、アクセスするボリュームを指定する。
使用フラグ6154は、「PA番号6151」、「外部IF番号6152」、および「LUN6153」の組合せに、既にボリュームが割当てられているかどうかを示すものである。「要求性能6155」とは、当該ボリュームに対するサーバ3が要求する性能のことを云い、単位時間あたりの処理可能コマンド数の形式で表される。
「担当SA番号6156」は、「PA番号6151」、「外部IF番号6152」、および「LUN6153」により指定されるボリューム宛てのコマンドを処理するストレージアダプタ部71を指定(識別)する番号である。「コマンド実行キュー番号6157」は、ストレージアダプタ部71のメモリモジュール123が保持するコマンド実行キュー712の中で、上記ボリュームへのコマンドを登録するキューを指定(識別)する番号である。
次に、(b)図に示すボリューム構成情報616について説明する。ボリューム構成情報616は、ストレージアダプタ部71が提供するボリュームとハードディスク群2の対応関係を保持するためのものであり、複数のエントリ616a〜616dを有する。
エントリ615a〜615dには、各々、「SA番号6161」、「ハードディスク群番号6162」、「使用フラグ6163」、および「コマンド実行キュー番号6164」が格納される。
「SA番号6161」は、ストレージシステム1c内でのストレージアダプタ部71を指定する番号(識別する番号)である。そして、「SA番号6161」および「ハードディスク群番号6162」により、ボリュームを提供するストレージアダプタ部71、および、そのボリュームのデータを格納するハードディスク群2が指定される。
「使用フラグ6163」は、「SA番号6161」および「ハードディスク群番号6162」により指定されるハードディスク群2に、既にボリュームが割当てられているかどうかを示すためのフラグである。「コマンド実行キュー番号6164」は、「SA番号6161」へのコマンドを登録するコマンド実行キュー712の中で、上記のボリュームに対するコマンドを登録するキューを指定する番号である。
次に(c)図に示すSA構成情報617について説明する。SA構成情報617は、ストレージアダプタ部71が処理しているボリュームの数を保持するための複数のエントリ617a〜617bを有する。エントリ617a、617bには、各々、「SA番号6171」、「担当ボリューム数6172」が格納される。「担当ボリューム数6172」は、エントリ617aに格納された「SA番号6171」のストレージアダプタ部71が提供しているボリュームの数を表すデータである。
続いて、第3実施形態のストレージシステム1cの各プログラムの動作を、図22および図23を用いて説明する。
最初にストレージシステム1cのポートアダプタ部31およびストレージアダプタ部71において実行される各プログラムについて説明する。
図22は、本発明の第3実施形態のポートアダプタ部31およびストレージアダプタ部71の各プログラムの動作を説明するための図である。
ストレージシステム1cのポートアダプタ部31は、ネットワークを介して接続されているサーバ3からのコマンドを受信する。具体的には、ポートアダプタ部31が有する外部IF100に接続されたサーバ3が送信するコマンドを、外部IF100が受信する。そして、ポートアダプタ部31の外部IF100は、自身が有するメモリモジュール123に受信したコマンドをライトする。
また、ポートアダプタ部31のマイクロプロセッサ101cは、コマンド転送プログラム311により、コマンド転送処理312を行う。具体的には、マイクロプロセッサ101cは、コマンド転送プログラム311のコマンド転送処理312において、メモリモジュール123をポーリングしている。マイクロプロセッサ101cは、コマンドを受信したことを検出すると当該コマンドが指定するボリューム(「PA番号6151」、「外部IF番号6152」、および「LUN6153」により指定されるボリューム)に対応するエントリをPA構成情報615から検索する。そして、マイクロプロセッサ101cは、検索したエントリの「担当SA番号6156」および「ストレージアダプタ部71のコマンド実行キュー番号6157」により指定されるストレージアダプタ部71のコマンド実行キュー712に受け付けたコマンドを登録する(A301)。
次に、ストレージアダプタ部71が行うコマンド処理プログラムの動作を説明する。
ストレージアダプタ部71のマイクロプロセッサ101は、コマンド処理プログラム411により、常にコマンド実行キュー712の各キューを順番にチェックしている。マイクロプロセッサ101は、キューにコマンドが存在する場合、コマンドを一つキューから取り出し(A302)、コマンドに対応する処理を行う。
具体的な処理は、第1の実施形態のコマンド処理プログラム812と同様の処理を行う。すなわち、マイクロプロセッサ101は、コマンドとキャッシュテーブル212を用いてキャッシュのヒットミス判定を行う(A303)。マイクロプロセッサ101は、上記判定の結果、キャッシュミスならば、外部IF100へアクセスしハードディスク群2からキャッシュデータ部211へデータ転送を行う。その後、マイクロプロセッサ101は、ポートアダプタ部31に対してデータ転送処理313を要求する。
ポートアダプタ部31のマイクロプロセッサ101cは、ポートアダプタ部31の外部IF100へアクセスし、キャッシュデータ部211とサーバ3の間でデータ転送を行う(A304)。データ転送が完了するとストレージアダプタ部71のマイクロプロセッサ101は、コマンド処理を完了し、再びコマンド実行キュー712のチェックを続ける。
なお、第3実施形態のストレージシステム1cにおいて、ストレージアダプタ部71のマイクロプロセッサ101が単位時間に処理できるコマンドの最大数は、基本的にマイクロプロセッサ101の性能に依存する。そのため、サーバ3からあるボリュームへアクセスした場合の単位時間に処理可能なコマンド数は、そのボリュームを担当するマイクロプロセッサ101の担当ボリューム数6172と反比例すると考えて差し支えないものとする。
次に、ストレージシステム1cのシステム管理部60が実行する構成変更プログラム618について説明する。
図23は、本発明の第3実施形態のシステム管理部60の構成変更プログラム618の動作を説明するための図である。
システム管理部60のマイクロプロセッサ101は、LANコントローラ133がストレージ管理端末4からのアクセスを受けつけた場合、構成変更プログラム618を起動させる。マイクロプロセッサ101は、構成変更プログラム618により、LANコントローラ133を通してストレージ管理端末4から受信する要求に応じて、システム管理部60のメモリモジュール123に格納されている、PA構成情報615、ボリューム構成情報616、およびSA構成情報617をストレージ管理端末4に送信する(A401)。
また、プロセッサ101は、構成変更プログラム618により、ストレージ管理端末4からの要求に従い、これらの情報(PA構成情報615、ボリューム構成情報616、およびSA構成情報617)を変更する。マイクロプロセッサ101は、PA構成情報615、ボリューム構成情報616、およびSA構成情報617を変更する場合、不揮発メモリモジュール132及び、ストレージシステム1c内の全ポートアダプタ部31およびストレージアダプタ部71のメモリモジュール123とに格納されているPA構成情報615やボリューム構成情報616にも同じ変更を行う(A402)。
続いて、第3実施形態のストレージ管理端末4の構成およびストレージ管理端末4が有するデータ構成について図24を用いて説明する。
図24は、本発明の第3実施形態のストレージ管理端末4の構成を説明するための図である。
第3実施形態のストレージ管理端末4の構成は、上記第1実施形態のストレージ管理端末4と同様であるが、プログラムおよびデータの構成が異なる。
CPU41は、ストレージ管理プログラム421により、ストレージシステム1cに対する各種要求を行う。また、CPU41は、ストレージ管理プログラム421により、ストレージシステム1cからPA構成情報615、ボリューム構成情報616、およびSA構成情報617を取得して、RAM42に格納する。
ストレージ管理プログラム421は、後述するボリューム追加処理422およびストレージ資源追加処理423をストレージ管理端末4に実行させるためのプログラムである。
ボリューム追加処理422とは、ポートアダプタ部31の外部IF100及びLUNの対応と、ストレージアダプタ部71及びハードディスク群2の対応とを設定し、新たなボリュームがサーバ3から使用できるように設定する処理である。また、ストレージ資源追加処理423とは、ストレージシステム1cにポートアダプタ部31、ストレージアダプタ部71、ハードディスク群2を追加した後、管理者によって起動される処理である。
続いて、第3実施形態のストレージ管理端末4が行うボリューム追加処理422のフローを詳細に説明する。
図25は、本発明の第3実施形態のストレージ管理端末4が行うボリューム追加処理422のフローを説明するための図である。
さて、CPU41は、管理者からの操作を受け付け、ストレージ管理プログラム421によるボリューム追加処理422を起動する。CPU41は、ストレージ管理プログラム421により、まずLANコントローラ133を介して、ストレージシステム1のシステム管理部60と通信し、PA構成情報615、ボリューム構成情報616、およびSA構成情報617を取得し、それらをRAM42に格納する(S4221)。
次に、CPU41は、ストレージ管理プログラム421により、新規にサーバ3をストレージシステム1に接続するか否を確認するためのメッセージをディスプレイ44に表示し、管理者の入力を待つ。そして、CPU41は、入力デバイス43を介して管理者からの「新規にサーバ3をストレージシステム1cに接続する」旨を示すデータを受け付けた場合にS4223に進む。一方、CPU41は、入力デバイス43を介して管理者から「新規にサーバ3をストレージシステム1cに接続しない」旨を示すデータを受け付けた場合にS4225に進む(S4222)。
S4233では、CPU41は、未使用の外部IF100をストレージシステム1cから選び出す。具体的には、CPU41は、RAM42に格納されているPA構成情報615から、1つもボリュームが割当てられていない外部IF100を検索する(S4223)。
次に、CPU41は、追加するボリュームのLUNの入力を求めるメッセージをディスプレイ44に表示し、管理者からのLUNの入力を受け付けて(S4224)、S4226の処理へ進む。
ここで、上記のS4222において管理者がサーバ3を新規に接続しない旨を示すデータをストレージ管理端末4に入力した場合に進むS4225の処理を説明する。
S4225では、ボリュームは、既にストレージシステム1cに接続されているサーバ3に追加される。CPU41は、追加するボリュームを指定する「外部IF100」および「LUN」の組合せを示すデータの入力を管理者に要求するメッセージをディスプレイ44に表示する。CPU41は、管理者からの「外部IF100」および「LUN」の組合せを示すデータの入力を受け付けて、S4226の処理に進む。
S4226では、CPU41は、追加するボリュームの要求性能の入力を要求するメッセージをディスプレイ44に表示し、管理者の入力を待つ。なお、ここでは、要求性能とは、単位時間当たりの処理可能なコマンド数とする。
管理者からの要求性能の入力を受け付けると、CPU41は、要求性能を満たす全てのストレージアダプタ部71をストレージシステム1cから検索する。具体的には、CPU41は、各ストレージアダプタ部71に対応するSA構成情報617のエントリ617bの担当ボリューム数6172を用いて、ストレージアダプタに新たにそのボリュームの処理を担当させた場合における予測性能の算出を行う。第3実施形態では、予測性能は、「ストレージアダプタ部71のマイクロプロセッサ101の性能」を「RAM42に格納されているSA構成情報617のエントリ617bの担当ボリューム数6172に1を加算した数」で除算することで算出する。なお、本実施形態において、「マイクロプロセッサの性能」は、従来技術を用いた測定などの方法で求めることとする。
そして、CPU41は、算出した予測性能がS4226で入力された要求性能を満たし、さらに既に当該ストレージアダプタ部71が処理を担当している各ボリュームの要求性能を満たすかどうか、予測性能とPA構成情報615を比較し判断する(S4227)。
S4227において要求性能を満たすストレージアダプタ部71が見つかった場合、CPU41は、選び出された各ストレージアダプタ部71に属している、未使用のハードディスク群2をボリューム構成情報616から検索する(S4228)。
S4228において未使用のハードディスク群2が見つかった場合、CPU41は、見つかったハードディスク群2と当該ハードディスク群2が属するストレージアダプタ部71の組合せを表示する。また、CPU41は、上記表示した組合せでの設定を許可するか否かを確認するメッセージをディスプレイ44に表示し、管理者からの入力を待つ(S4229、4230)。
S4230において、管理者からの、表示された組合せでの設定を許可する旨のデータの入力を受け付けた場合、CPU41はLANコントローラ133を介してストレージシステム1が有するPA構成情報615、ボリューム構成情報616、およびSA構成情報617を更新する(S4231)。
具体的には、CPU41は、ストレージ管理プログラム421により、LANコントローラ133を介して、ストレージシステム1のシステム管理部60に対して、PA構成情報615、ボリューム構成情報616、およびSA構成情報617の更新を要求する。システム管理部60は、構成変更プログラム618により、上記更新要求を受け付けて、ストレージシステム1cの各メモリモジュール123に格納されているPA構成情報615、ボリューム構成情報616、およびSA構成情報617を更新する。
なお、PA構成情報615、ボリューム構成情報616、およびSA構成情報617は、以下の内容に更新される。すなわち、S4223およびS4224、または、S4225で受け付けた「外部IF100」および「LUN」に対応するPA構成情報615のエントリ615dに、「使用フラグ6154」として「使用中」を示すデータが格納される。また、上記に対応するエントリ615eにS4266で受け付けた「要求性能6155」が格納される。上記に対応するエントリ616fに「担当SA番号6156」として、S4229の処理でディスプレイ44に表示されたストレージアダプタ部71の番号(識別番号)が格納される。上記に対応するエントリ615gには、上記受け付けた「外部IF100」および「LUN」により指定されるボリュームに対するコマンドを登録するキュー712を指定するための「コマンド実行キュー番号6157」が格納される。
また、S4228で選び出したハードディスク群2に対応する、ボリューム構成情報616のエントリ616cには、「使用フラグ6163」として「使用中」を示すデータが格納される。また、S4229においてディスプレイ44に表示したストレージアダプタ部71に対応するSA構成情報617のエントリ617bには、当該ストレージアダプタ部71の担当ボリューム数6172に「1」を加算した値を格納する。
続いて、ステップ4227で要求性能を満たすストレージアダプタ部71が見つからなかった場合、あるいは、ステップ4228でハードディスク群2が見つからなかった場合、あるいはステップ4230で管理者が表示された組合せの設定を拒否した場合に進むS4232の処理を説明する。
S4232では、CPU41は、手動による設定を管理者に要求するメッセージをディスプレイ44に出力する。そして、CPU41は、管理者からの手動による、PA構成情報615、ボリューム構成情報616、およびSA構成情報617の更新データを受け付けた場合、ストレージシステム1cのシステム管理部60に対してPA構成情報615、ボリューム構成情報616、およびSA構成情報617の更新を要求する。システム管理部60は、構成変更プログラム618により、上記更新要求を受け付けて、ストレージシステム1の各メモリモジュール123に格納されているPA構成情報615、ボリューム構成情報616、およびSA構成情報617を更新する。
続いて、第3実施形態のストレージ管理端末4が行うストレージ資源追加処理423のフローを詳細に説明する。
図26は、本発明の第3実施形態のストレージ管理端末4が行うストレージ資源追加処理423のフローを説明するための図である。
さて、CPU41は、管理者からの操作を受け付け、ストレージ管理プログラム421によるストレージ資源追加処理423を起動する。CPU41は、追加するリソース資源を受け付ける設定画面をディスプレイ44に表示して、追加するリソース種類の入力を要求する。そして、CPU41は、管理者からの追加されるリソース種類の入力を受け付けた場合にS4242に進む(S4241)。
S4242では、CPU41は、S4241で受け付けた入力データが「ポートアダプタ部31の追加」であるか否かの判定を行う。CPU41は、上記入力データが「ポートアダプタ部31の追加」であると判定した場合にS4243の処理に進む。CPU41は、上記入力データが「ポートアダプタ部31の追加」ではないと判定した場合にS4245に進む。
S4243では、CPU41は、管理者に追加するポートアダプタ部31のPA番号6151の入力を要求するメッセージをディスプレイ44に表示し、管理者からの入力を待つ。
そして、管理者からの入力を受け付けた場合、CPU41は、LANコントローラ133を通してストレージシステム1cのシステム管理部60と通信し、ストレージシステム1が有するPA構成情報615の更新を実行する(S4244)。
具体的には、PA構成情報615にエントリ(「追加されるポートアダプタ部31が持つ外部IF100の数」に「設定できるLUNの最大値」と乗算した数のエントリ)が追加される。そして、追加された各エントリのエントリ615aに管理者が入力した「PA番号6151」が設定され、エントリ615bには管理者が入力した「外部IF番号6152」が設定され、エントリ615cには、所定の通し番号(例えば、「0、1,2,3・n」)が設定される。また、追加したエントリのエントリ615dには、使用フラグ6154として「未使用」を示すデータを設定される。CPU41は、ストレージシステム1cが有するPA構成情報615の設定が完了すると、ストレージ資源追加処理423を完了する。
続いて、S4242において、受け付けた入力データが「ポートアダプタ部31の追加」ではないと判定した場合に進むS4245の処理を説明する。
S4245では、CPU41は、S4241で受け付けた入力データが「ストレージアダプタ部71の追加」かであるか否かを判定する。CPU41は、上記「ストレージアダプタ部71の追加」であると判定した場合にS4246に進む。一方、CPU41は、上記「ストレージアダプタ部71の追加」ではないと判定した場合にS4248に進む。
S4246では、CPU41は、管理者に追加するストレージアダプタ部71の「SA番号6171」の入力を要求するメッセージをディスプレイ44に表示し、管理者からの入力を待つ。
CPU41は、管理者からの上記「SA番号6171」の入力を受け付けた場合、LANコントローラ133を通してストレージシステム1cのシステム管理部60と通信し、ストレージシステム1が有するPA構成情報615の更新を実行する(S4247)。具体的にはSA構成情報617にエントリが1個追加され、追加されたエントリ617aに管理者が入力した「SA番号6171が設定され、追加されたエントリ617bに「担当ボリューム数6172」として「0」が設定される。CPU41は、SA構成情報617の設定が完了すると、ストレージ資源追加処理423を完了する。
続いて、S4245において、S4241で受け付けた入力データが「ストレージアダプタ部71の追加」ではないと判定した場合に進むS4248の処理を説明する。
S4248では、CPU41は、S4241で受け付けた入力データが「ハードディスク群2の追加」であると判定する。CPU41は、管理者に追加するハードディスク群2を接続するストレージアダプタ部71の「SA番号6161」および「ハードディスク群番号6162」の入力を要求するメッセージをディスプレイ44に表示し、管理者の入力を待つ。
CPU41は、管理者からの「SA番号6161」および「ハードディスク群番号6162」の入力を受け付けると、LANコントローラ133を通してストレージシステム1cのシステム管理部60と通信し、ボリューム構成情報616の更新を実行する(S4249)。具体的にはボリューム構成情報616にエントリを1個追加され、エントリ616a、616bに、それぞれ、管理者が入力した「SA番号6161」、「ハードディスク群番号6162」が設定される。また、対応するエントリ616cに「使用フラグ6163」として「未使用」を示すデータが設定される。CPU41は、ボリューム構成情報616の設定が完了すると、ストレージ資源追加処理423を完了する。
このように、第3実施形態のコンピュータシステムによれば、サーバ3に提供するボリューム毎にコマンドを処理するストレージアダプタ部71を設定することができる。そのため、サーバ3に複数のボリュームを提供する場合に、各々のボリュームに別々の要求性能を設定することが出来る。したがって、第3実施形態によれば、マイクロプロセッサ101の性能を効率的に利用できるストレージシステムを提供することができる。
なお、本発明は以上で説明した実施形態に限定されるものではなく、本発明の要旨の範囲内において種々の変形が可能である。例えば、第1実施形態のストレージシステム1において、インタフェース部10を第3実施形態のポートアダプタ部31の構成に変更するようにしてもよい。
また、本実施形態のストレージ管理端末4の機能をストレージシステム1で行うようにしてもよい。例えば、ストレージ管理プログラムをシステム管理部60に保持させて、マイクロプロセッサ101にストレージ管理プログラムを実行させて、外部IF設定処理、ボリューム追加処理、ストレージ資源追加処理を行わせるようにしてもよい。
1…ストレージシステム、2…ハードディスク群、3…サーバ、4…ストレージ管理端末、10…インタフェース部、21…共有メモリ、31…ポートアダプタ部、41…CPU、42…RAM、43…入力デバイス、44…ディスプレイ、51…スイッチ部、60…システム管理部、70…クラスタ、71…ストレージアダプタ部、81…プロセッサ部、100…外部IF、101…マイクロプロセッサ、105…転送制御部、123…メモリモジュール、125…メモリコントローラ、126…キャッシュメモリモジュール、127…制御メモリモジュール、131…メモリコントローラ、132…不揮発メモリモジュール、133…LANコントローラ、