(57)【特許請求の範囲】
【請求項１】
一台以上のクライアント計算機とネットワークを介して接続されるストレージ装置であって、
前記ストレージ装置は、当該ストレージ装置内の論理ディスクユニットに対する前記クライアント計算機からのアクセス制御情報を含む構成情報と、当該アクセス制御情報を変更する時刻と当該変更の内容からなるアクセス制御情報構成変更スケジュールを含む構成変更スケジュール情報を有しており、
前記ストレージ装置は、前記クライアント計算機から前記構成変更スケジュールの変更要求を受信すると、当該変更要求に基づいて変更されたスケジュールに従って当該ストレージ装置の構成が変更された場合に、変更後のストレージ装置の構成によって前記時刻に正常に処理可能か否かを判定し、
前記ストレージ装置は、変更後の当該ストレージ装置の構成では正常に処理可能でないと判定した場合、前記時刻に正常に処理可能なよう前記構成変更スケジュール情報を修正し、当該修正した構成変更スケジュール情報に従って、前記構成情報の変更を行うことを特徴とするストレージ装置。
【請求項２】
前記ストレージ装置は、前記スケジュールの変更要求を受信すると、当該変更要求に基づいて変更されたスケジュールに従って当該ストレージ装置の構成を変更した場合、前記時刻に正常に処理可能か否かを決定した後、変更後の当該ストレージ装置の構成によって要求性能を満たす性能が達成可能か否かを判定することを特徴とする請求項１記載のストレージ装置。
【請求項３】
前記ストレージ装置は、アクセスが予測される対象時間帯と当該対象時間帯におけるアクセスが予測される対象論理ディスクと当該論理ディスクへの予測アクセス数との対応関係を示した予測アクセス表、及び単位時間当たりの要求数の範囲と当該要求数の範囲内で最大数の要求を受けた際の平均アクセスタイムを示す予測性能を示した予測性能表とを有しており、
前記ストレージ装置は、前記予測アクセス表及び前記予測性能表に基づいて、変更後の当該ストレージ装置の構成によって要求性能を満たす性能が達成可能か否かを判定することを特徴とする請求項１記載のストレージ装置。
【請求項４】
前記ストレージ装置は、前記スケジュールの変更要求を受信すると、変更対象がLUN Securityの構成変更、PPCの構成変更、パスの構成変更、キャッシュ常駐の構成変更、スナップショットの構成変更の内いずれであるかを特定し、当該特定した変更が前記指定時刻に正常に処理可能であるか否かを判定した後、可能である場合に当該変更要求に基づいて前記構成変更スケジュール情報を変更することを特徴とする請求項１記載のストレージ装置。
【請求項５】
前記ストレージ装置は、変更後の当該ストレージ装置の構成によって前記要求性能を満たす性能を達成できると判定した場合、前記変更要求に従って前記構成変更スケジュール情報を変更し、変更された当該構成変更スケジュール情報に従って当該ストレージ装置の構成変更を行うことを特徴とする請求項１記載のストレージ装置。
【発明の詳細な説明】
【０００１】
【発明の属する技術分野】
本発明は、ストレージ装置の構成情報の変更に関し、特に時間と共に業務形態が変化する環境にあるストレージ装置の構成情報の変更に関する。
【０００２】
【従来の技術】
従来のストレージ装置では、利用者の要求に従い、様々な内部構成をとることができる。例えば、ストレージ装置内の物理ディスクをそのまま使用するのではなく、２台以上の物理ディスクを組み合わせ、信頼性や性能を向上させた論理ディスクを構成して使用することがある。この技術はＲＡＩＤ（Ｒｅｄｕｎｄａｎｔ  Ａｒｒａｙ  ｏｆ  Ｉｎｅｘｐｅｎｓｉｖｅ  Ｄｉｓｋｓ）と呼ばれ、前記論理ディスクはパリティグループもしくはＲＡＩＤグループと呼ばれる。ＲＡＩＤ技術では、物理ディスクの組み合わせパターンが複数通り存在し、これらのパターンはＲＡＩＤレベルと呼ばれる。ＲＡＩＤレベルには、一定サイズ毎にデータを分割し、複数の物理ディスクにそれぞれ順にデータを読み書きするＲＡＩＤレベル０（ストライプもしくはストライピングとも呼ばれる）や、２台の物理ディスクの両方に同じデータの読み書きを行なうＲＡＩＤレベル１（ミラーとも呼ばれる）、複数の物理ディスクの１台を除く物理ディスクにデータを分散して記憶させ前記データを記憶させなかった物理ディスクには、他の物理ディスクが故障して使用不可能になっても前記データを復元できるような冗長データを記述するＲＡＩＤレベル４やＲＡＩＤレベル５（これらは冗長データの持ち方が異なる）等がある。
【０００３】
ＲＡＩＤ技術を採用しているストレージ装置では、前記ストレージ装置内のディスクをクライアント計算機から利用する場合、ＲＡＩＤ技術を使用してパリティグループを構成し、前記パリティグループの全体もしくは一部を論理ディスクとして定義する。そして前記論理ディスクを、指定したポートから番号で指定したクライアント計算機に対して公開する。これらの、論理ディスク、識別子、及び公開する番号の組み合わせをパスと呼び、パスを定義された前記論理ディスクをＬＵ（Ｌｏｇｉｃａｌ  Ｕｎｉｔ、論理ディスクユニット）と呼ぶ。また、ＬＵに付与された識別子は、ＬＵＮ（Ｌｏｇｉｃａｌ  Ｕｎｉｔ  Ｎｕｍｂｅｒ）もしくはＨＬＵＮ（Ｈｏｓｔ  Ｌｏｇｉｃａｌ  Ｕｎｉｔ  Ｎｕｍｂｅｒ）と呼ばれる。各クライアント計算機からの各ＬＵに対するアクセスを制限する機能は、ＬＵＮ  ＳｅｃｕｒｉｔｙもしくはＬＵＮ  ｍａｓｋｉｎｇと呼ばれる。ＬＵＮ  Ｓｅｃｕｒｉｔｙでは、クライアント計算機の特定に、クライアント計算機のネットワークアダプタに付与された唯一の（ユニークな）番号を使用する。
【０００４】
一方、ストレージ装置には、前記クライアント計算機からの前記ストレージ装置もしくは前記ストレージ装置内の物理ディスクや論理ディスク等の資源に対するアクセス性能に関する機能を持つものがある。ＰＰＣ（Ｐｏｒｔ  Ｐｒｉｏｒｉｔｙ  Ｃｏｎｔｒｏｌ）と呼ばれる技術では、ストレージ装置のポート毎に要求処理の優先度を付け、優先度の高いポートで受け付けた処理要求を優先して処理する。またキャッシュ常駐と呼ばれる技術では、ＬＵに含まれるデータの全てもしくは一部をストレージ内のキャッシュメモリに常駐させる。
【０００５】
ストレージ内の論理ディスクのデータを他の論理ディスクにコピーする、スナップショットと呼ばれる技術がある。さらにいくつかのストレージ装置では、指定した時点で論理ディスクをコピーするだけでなく、コピー元の論理ディスクとコピー先の論理ディスクを関係づけ、コピー元の論理ディスクにデータが書かれると、自動的にコピー先にコピーする機能をもつ。
【０００６】
ＲＡＩＤやＬＵＮ  ｍａｓｋｉｎｇ、スナップショットに関する文献として、Ｍａｒｋ  Ｆａｒｌｅｙ，“Ｂｕｉｌｄｉｎｇ  Ｓｔｏｒａｇｅ  Ｎｅｔｗｏｒｋｓ”，ｎｅｔｗｏｒｋ  Ｐｒｏｆｅｓｓｉｏｎａｌ’ｓ  Ｌｉｂｒａｒｙ，Ｏｓｂｏｒｎｅ がある。
【０００７】
一方、近年、複数台のストレージ装置とそれらのストレージ装置を使用する複数のクライアント計算機をファイバチャネル等の高速なネットワークで接続したＳＡＮ（Ｓｔｏｒａｇｅ  Ａｒｅａ  Ｎｅｔｗｏｒｋ）が注目を集めている。ＳＡＮ環境では、1台のクライアント計算機が２台以上のストレージ装置を同時に使用可能であるとともに、１台のストレージ装置を２台以上のクライアント計算機から使用可能である。ＳＡＮの構成例を、図１に示す。図１では、ストレージ装置１００５、ストレージ装置１００６、ストレージ装置１００７と、前記ストレージ装置を利用するクライアント計算機１００２、クライアント計算機１００３と、前記ストレージを管理する管理計算機１００４が、全てネットワーク１００１により接続されている。ここで管理計算機１００４は、ネットワーク１００１に接続されているストレージ装置内の構成定義やアクセス許可制御等を行なうための管理用計算機である。図１におけるＳＡＮ環境では、ストレージ装置１００５、ストレージ装置１００６、及びストレージ装置１００７の構成変更を行なう際は、管理者が管理計算機１００４上で作業を行なう。図１に示したＳＡＮ環境において、管理計算機１００４からアクセス許可さえ与えれば、クライアント計算機１００２は、ストレージ装置１００５、ストレージ装置１００６、及びストレージ装置１００７の全てを使用可能である。同様に、クライアント計算機１００３とクライアント計算機１００４がストレージ装置１００５を共有することも可能である。
【０００８】
以上で述べたＳＡＮに関する文献として、「データストレージ・レポート２０００」、日経コンピュートピア別冊、２０００年、がある。
【０００９】
パリティグループやＬＵ、ＰＰＣ、キャッシュ常駐やＬＵＮ  Ｓｅｃｕｒｉｔｙ等のストレージ装置の構成変更には、ストレージ管理プログラムを使用する。このストレージ管理プログラムは、ＳＡＮに接続された管理計算機やストレージ装置備え付けの端末等で動作し、管理者は、このストレージ管理プログラムを使用して、ストレージ装置の構成変更を行なう。
【００１０】
前記管理計算機で動作するストレージ管理ソフトには、予め指定した時刻に自動的にデータのバックアップを行なうものがあった。さらにこれらのソフトには、バックアップを行なうために前記スナップショット機能を使用するものがあった。このスナップショット機能を利用した、予め指定した時刻にバックアップを行なうことができるストレージ管理ソフトに関する文献として、「ＶＥＲＩＴＡＳ  ＮｅｔＢａｃｋｕｐ  ＤａｔａＣｅｎｔｅｒ  データシート」（ＶＥＲＩＴＡＳ社）がある。
【００１１】
【発明が解決しようとする課題】
ＳＡＮ環境を使用している実際の業務では、各ストレージ装置に求められる内部構成は、刻々と変化する。このとき管理者が一度行なったストレージ装置の構成を変更せずにそのまま使用すると、最適な性能が出せなかったり、ストレージ装置内の資源利用効率が悪くなったりする。しかしながら、ストレージ装置の構成変更が必要な時刻に管理者が手動で作業を行なうと、管理者の手間がかかる。
【００１２】
一方、管理計算機から、予め指定された時刻にバックアップを行なうストレージ管理ソフトでは、ストレージ装置と管理計算機との間のネットワークが切断されたり、ストレージ装置を制御する管理計算機に異常が発生したりすると、予定通りにバックアップが行なえない。またストレージ装置を別のＳＡＮ環境に移動する場合、管理計算機側のストレージ管理ソフトや当該ソフトのスケジュールデータも同時に移動する必要があり、手間がかかる。
【００１３】
本発明の目的は、管理者の負担を軽減しながら、ストレージ装置を時間と共に変わるストレージ装置に求められる内部構成に変更することである。
【００１４】
【課題を解決するための手段】
ストレージ装置の構成情報と、ストレージ装置の構成を変更するスケジュールを記述した構成変更スケジュールを記憶し、ストレージ装置構成情報の変更要求もしくは前記ストレージ装置構成変更スケジュールの変更要求を受け付けると、構成変更スケジュールの変更要求を受け取った場合、その要求が正常に処理可能かを検証し、前記要求が正常に処理可能であると判断すれば前記構成変更スケジュールを変更し、ストレージ装置構成情報の変更要求を受け取った場合、ストレージ装置構成情報を変更する。
【００１５】
【発明の実施の形態】
第１の実施例として、ストレージ装置内で、予め定めたスケジュールに従い、ＬＵＮ  Ｓｅｃｕｒｉｔｙ、ＰＰＣ、パス、キャッシュ常駐、及びスナップショットに関するストレージ構成定義を自動的に操作する例を示す。構成変更スケジュールとは管理者によって作成され、後述する図１０の例のように上記のような構成の定義を何時行なうかを表したものである。
【００１６】
図２は、図１のストレージ装置１００５内で本実施例を実現するためのブロック図である。構成変更要求受け付け部２００１は、管理者が管理計算機を扱って作成した、ストレージ装置内の現在の構成変更要求もしくは将来に亘る構成変更スケジュールの変更要求を受け取る。構成変更スケジュールは管理者が把握している業務の形態や統計的に判断されたストレージ装置に求められる構成などにより作成されるものである。そして前記受け取った要求が現在の構成変更要求ならば、構成情報管理部２００５に前記受け取った要求を転送し、前記受け取った要求が構成変更スケジュールを変更する要求ならば、構成変更スケジュール管理部２００３に転送する。構成情報管理部２００５は、構成要求受け付け部２００１から転送された要求に従い、ストレージ装置１００５内の構成情報２０１１を変更する。
【００１７】
一方、構成変更スケジュール管理部２００３が、構成変更要求受け付け部２００１から転送された構成変更スケジュール変更要求を受け取ると、構成変更スケジュール検証部２００２を使用して、前記要求を指定された時刻に正常に処理できるか、また前記要求を構成変更スケジュール２０１０に反映することで不都合が生じないかを検証し、正常に処理できるかつ不都合が生じないと判断すれば、構成変更スケジュール２０１０に反映する。さらに構成変更スケジュール管理部２００３は、時刻管理部２００４と連携して、構成変更スケジュール２０１０に記述されたスケジュールに従い、構成情報管理部２００５に構成変更要求を送信する。構成情報管理部２００５は、構成変更スケジュール管理部２００３からの構成変更要求を受け取ると、ストレージ装置１００５内の構成情報２０１１を変更する。
【００１８】
図３は、図２における構成変更要求受け付け部２００１が、クライアント計算機からの構成変更要求もしくは構成変更スケジュールの変更要求を受け取った際の処理の流れを示している。処理を開始すると（ステップ３００１）、構成変更要求受け付け部２００１で、処理要求を受け付ける（ステップ３００２）。そしてステップ３００３で、受け取った要求が構成変更スケジュール変更要求かどうかを判断し、構成情報変更要求であれば、ステップ３００４で、構成情報管理部２００５にその要求を転送する。逆にステップ３００３の判断結果が構成変更スケジュール変更要求であれば、ステップ３００５で構成変更スケジュール管理部２００３に、前記要求を転送して、終了する（ステップ３００６）。
【００１９】
前記ステップ３００２で要求を受け取る際、処理要求に応じたパラメータも同時に受け取る。例えばＰＰＣに関する構成変更要求では、優先度を変更するポートと変更後の優先度、キャッシュ常駐に関する構成変更要求では、キャッシュに常駐するＬＵの指定と、必要に応じて割り当てキャッシュ容量や使用するキャッシュの位置を受け取る。パスに関する構成変更要求では、パスを定義する論理ディスク、ポート、ＬＵＮを受け取る。ＬＵＮ  Ｓｅｃｕｒｉｔｙに関する構成変更要求では、ＬＵと公開先のクライアント計算機の識別子、および必要に応じて許可するアクセス権を受け取る。スナップショットに関する構成変更要求では、コピー元及びコピー先の論理ディスクと、必要に応じてコピー時の処理方針に関する付加情報を受け取る。
【００２０】
図４は、図２におけるストレージ装置１００５において、図２における構成変更スケジュール２０１０に従い、ストレージの構成情報を変更する構成変更スケジュール管理部の処理の流れを示している。処理を開始（ステップ４００１）すると、ステップ４００２で定義済みの構成変更スケジュール２０１０を全て読み込み、ステップ４００３で現在時刻を時刻管理部２００４から取得する。そしてステップ４００４で、ステップ４００２で読み込んだスケジュールのうち最初に処理を行なうべき時刻を取得して、当該時刻までの時間を計算する。そしてステップ４００５で、前記ステップ４００４で計算した時間をタイムアウト時間として、構成変更スケジュール変更要求もしくは図４に示した処理の終了要求を待つ。ステップ４００５が終了すると、終了した原因が終了要求を受け取ったためかどうかをステップ４００６で判断し、終了要求を受け取ったのであれば終了する（ステップ４００７）。ステップ４００６で、ステップ４００５が終了した原因が終了要求でないと判断すれば、ステップ４００８で、ステップ４００５が終了した原因がタイムアウトによるものかどうかを判断し、タイムアウトであれば、ステップ４００９で、当該時刻に行なう必要のある構成変更を行い、ステップ４００２に戻る。一方ステップ４００８で、ステップ４００５が終了した原因がタイムアウトでないと判断すれば、ステップ４０１０で構成変更スケジュール変更要求が前記要求で指定された時刻に正常に処理が可能かを検証する。そしてステップ４０１１で、ステップ４０１０で検証した結果、構成スケジュール変更要求は指定時刻に正常に処理可能であると判断されていれば、ステップ４０１２で要求に従い構成変更スケジュールを変更する。前記検証した結果、構成変更スケジュール変更要求が前記要求で指定された時刻に処理が正常に処理できないと判断されていれば、ステップ４０１３で前記構成変更スケジュール変更要求に対してエラーを返し、ステップ４００２に戻る。
【００２１】
図５は、図４における、構成変更スケジュール変更要求が前記要求で指定された時刻に正常に処理可能であるかを検証するステップ４０１０の処理の流れを示している。処理を開始すると（ステップ５００１）、ステップ５００２で、処理対象の要求がＬＵＮ  Ｓｅｃｕｒｉｔｙに関する構成変更要求かどうかを判断する。ここで、図５における構成変更要求とは、全て、構成変更スケジュールのエントリの追加要求、削除要求、もしくは変更要求を意味する。ステップ５００２において、もし要求がＬＵＮ  Ｓｅｃｕｒｉｔｙに関する構成変更要求であれば、ステップ５００３で、指定した時刻にＬＵＮ  Ｓｅｃｕｒｉｔｙの要求処理が可能かを判断し、前記判断結果を図５における処理の判断結果として、終了する（ステップ５０１５）。ステップ５００２で、ＬＵＮ  Ｓｅｃｕｒｉｔｙに関する構成変更要求でないと判断されれば、ステップ５００４で、ＰＰＣ（ポート優先度）の設定かどうかを判断し、ＰＰＣの設定であれば、ステップ５００５で、指定時刻にポート優先度が変更可能かどうか、例えば当該時刻に優先度変更が禁止されていないか、を判断する。そしてステップ５００５の結果、優先度変更が可能であればステップ５００６で当該処理は処理可能であるとし、優先度変更が可能でなければ、ステップ５００７で当該処理は処理可能でないとして、終了する（ステップ５０１５）。
【００２２】
ステップ５００４でＰＰＣの構成変更要求でないと判断した場合は、ステップ５００８でパスの構成変更要求かどうかを判断する。前記判断の結果がパスの構成変更要求であれば、ステップ５００９で、前記要求で指定された時刻に前記要求が処理可能かを判断し、前記判断結果を図５における処理の判断結果として、終了する（ステップ５０１５）。
【００２３】
ステップ５００８でパスの構成変更要求でないと判断した場合は、ステップ５０１０でキャッシュ常駐に関する構成変更要求かどうかを判断する。前記判断の結果がキャッシュ常駐に関する構成変更要求であれば、ステップ５０１１で、前記要求で指定された時刻に前記要求が処理可能かを判断し、前記判断結果を図５における処理の判断結果として、終了する（ステップ５０１５）。
【００２４】
ステップ５０１０でキャッシュ常駐に関する構成変更要求でないと判断した場合は、ステップ５０１２でスナップショットに関する構成変更要求かどうかを判断する。前記判断の結果がスナップショットに関する構成変更要求であれば、ステップ５０１３で、前記要求で指定した時刻に前記要求が処理可能かを判断し、前記判断結果を図５における処理の判断結果として、終了する（ステップ５０１５）。ステップ５０１２でスナップショットに関する構成変更要求でないと判断した場合は、ステップ５０１４で前記処理は指定された時刻には処理可能でないと判断し、終了する（ステップ５０１５）。
【００２５】
図６は、図５におけるステップ５００３の処理の流れを示している。処理を開始（ステップ６００１）すると、ステップ６００２で当該処理要求がＬＵＮ  Ｓｅｃｕｒｉｔｙの新規定義要求かを判断し、新規定義要求でなければ、ステップ６００６で、当該処理が削除要求もしくは変更要求かを判断し、削除要求もしくは変更要求でなければ、ステップ６００７で処理可能でないとして、終了する（ステップ６０１１）。前記ステップ６００６で、削除要求もしくは変更要求であると判断すれば、ステップ６００８で指定した時刻に指定したＬＵが存在するかを判断し、存在すればステップ６０１０で処理可能として終了（ステップ６０１１）し、前記ステップ６００８で指定したＬＵが存在しなければステップ６００９で処理可能でないと判断して終了する（ステップ６０１１）。一方、ステップ６００２で、新規定義要求であると判断すれば、ステップ６００３で、前記要求で指定された時刻に指定されたＬＵが存在するかを調べ、存在しなければ、ステップ６００９で処理可能でないと判断して、終了する（ステップ６０１１）。ステップ６００３で、指定したＬＵが存在する場合、ステップ６００４で、指定された時刻のＬＵＮ  Ｓｅｃｕｉｒｉｔｙの設定数が、設定可能なＬＵＮ  Ｓｅｃｕｒｉｔｙの最大定義数未満かどうかを調べ、最大定義数未満ならステップ６００５で処理可能として、また最大定義数未満でなければ、ステップ６００９で処理可能でないと判断して、終了する（ステップ６０１１）。
【００２６】
図７は、図５におけるステップ５００９の処理の流れを示している。処理を開始（ステップ７００１）すると、ステップ７００２で当該処理要求がパスの新規定義要求かを判断し、新規定義要求でないと判断すれば、ステップ７００７で、削除要求もしくは変更要求かどうかを判断する。前記判断結果が削除要求もしくは変更要求でないと判断すれば、ステップ７００８で当該処理は処理可能でないと判断して、終了する（ステップ７０１２）。ステップ７００７で削除要求もしくは変更要求であると判断すれば、ステップ７００９において前記要求で指定したパスが存在するかどうかを判断し、存在すればステップ７０１１で処理可能として終了する（ステップ７０１２）。しかしステップ７００９において前記要求で指定したパスが存在しないと判断すれば、ステップ７０１０で処理可能でないと判断して終了する（ステップ７０１２）。一方ステップ７００２で、処理対象の要求が新規定義要求であると判断すれば、ステップ７００３で、前記要求で指定された時刻に前記要求で指定されたパスが存在するかを調べ、存在すれば、ステップ７０１０で処理可能でないと判断して、終了する（ステップ７０１１）。ステップ７００３で、指定した時刻に指定したパスがないと判断されれば、ステップ７００４で、指定した時刻に指定したＬＵが存在するかを調べ、存在しなければ、ステップ７０１０で処理可能でないと判断して、終了する（ステップ７０１２）。前記ステップ７００４で、前記要求で指定した時刻に前記要求で指定したＬＵが存在すると判断されれば、ステップ７００５で、指定した時刻のパス定義数がパスの最大定義数未満かどうかを判断し、最大定義数未満でなければステップ７０１０で処理可能でないとして終了し（ステップ７０１２）、最大定義数未満であればステップ７００６で処理可能として終了する（ステップ７０１２）。
【００２７】
図８は、図５におけるステップ５０１１の処理の流れを示している。処理を開始すると（ステップ８００１）、ステップ８００２で、キャッシュ常駐に関する情報の新規定義要求かどうかを判断し、新規定義要求でないと判断すれば、ステップ８００６で、キャッシュ常駐の設定の削除要求かを判断する。ステップ８００６で削除要求でないと判断すれば、ステップ８００７で当該処理は処理可能でないと判断し、終了する（ステップ８０１１）。ステップ８００６で、削除要求であると判断すれば、ステップ８００８で指定した定義が前記要求で指定した時刻に存在するかどうかを調べ、存在すればステップ８０１０で処理可能として終了し（ステップ８０１１）、存在しなければステップ８００９で処理可能でないと判断して終了する（ステップ８０１１）。一方、ステップ８００２で当該要求が新規定義要求であると判断された場合、ステップ８００３で指定した時刻にキャッシュに指定された要求を処理するために必要な空き容量があるかを判断し、前記判断の結果、空き容量がないと判断すれば、ステップ８００９で処理可能でないとして終了する（ステップ８０１１）。ステップ８００３で、指定した時刻に必要な容量のキャッシュ空き容量があると判断すれば、ステップ８００４で、指定した時刻に指定したＬＵが存在するかを判断し、存在しないと判断すればステップ８００９で処理可能でないと判断して終了し（ステップ８０１１）、存在すると判断すればステップ８００５で処理可能として終了する（ステップ８０１１）。
【００２８】
図９は、図５におけるステップ５０１３の処理の流れを示している。処理を開始すると（ステップ９００１）、当該要求がスナップショットの新規定義要求かを判断し、新規定義要求でなければ、ステップ９００６で、スナップショットの削除要求もしくは設定変更要求かを判断する。前記判断の結果、削除要求もしくは設定変更要求でなければステップ９００７で処理可能でないと判断して終了し（ステップ９０１１）、削除要求もしくは設定変更要求であれば、ステップ９００８で、指定した定義が指定した時刻に存在するかどうかを判断し、存在すればステップ９０１０で処理可能として終了し（ステップ９０１１）、存在しなければステップ９００９で処理可能でないと判断して終了する（ステップ９０１１）。一方、ステップ９００２で処理対象の要求が新規定義要求であると判断すれば、ステップ９００３で指定した時刻に当該スナップショット新規定義要求を処理するのに必要な全てのＬＵが存在するかを判断し、１つでも存在しなければステップ９００９で処理可能でないとして、終了する（ステップ９０１１）。ステップ９００３で指定したＬＵが全て存在すると判断すれば、ステップ９００４で、スナップショットの指定した時刻の定義数が最大定義数未満かどうかを調べ、最大定義数未満であればステップ９００５で処理可能として終了し（ステップ９０１１）、最大定義数未満でなければステップ９００９で処理可能でないとして終了する（ステップ９０１１）。
【００２９】
前記図６、図７、図８、及び図９を用いた処理の流れの説明において、判断基準は上記に述べた項目以外でもよい。例えば、パスの削除時に当該ＬＵに対してＬＵＮ  Ｓｅｃｕｒｉｔｙが定義されていないかとか、スナップショットの新規定義時にコピー元とコピー先のＬＵのＲＡＩＤレベルおよびサイズが一致するかなどである。
【００３０】
図１０は、図２における構成変更スケジュール２０１０の例である。１行で１エントリを示しており、行１０００１、行１０００２、行１０００３、行１０００４、行１０００５、行１０００６は、それぞれ１つのエントリを示す。列１０００７は、各エントリで指定される構成変更処理を行なう時刻を示す。列１０００８は、各エントリで処理する項目を示す。列１０００９は、列１０００８で指定した設定項目の具体的な設定対象を示す。これは管理者が予測出来る範囲で予め構成の変更のスケジュールを設定することで作成される。
【００３１】
本実施例では、図２に示す制御部が図１におけるストレージ装置１００５に実装される例を示したが、図２に示した任意のブロックを図１における管理計算機１００４、クライアント計算機１００３、ストレージ装置１００６、ストレージ装置１００７のどこに設けても良い。
【００３２】
次に第２の実施例について説明する。第１の実施例では構成の変更が可能かどうかを判断していたのに対し、第２の実施例では、更に次のことが考慮されている。一般に論理ボリュームを増やすと性能は落ちる。一方、朝、又は夜などの時間帯によって要求性能は変わっている。従って、時間帯ごとに変わる要求性能を論理ディスクが満たしているかどうかを判断し、満たしていない場合は出来る限り満たすよう制御する。具体的には、論理ディスクの作成時に、前記論理ディスクを作成するパリティディスク上に定義されている他の論理ディスクの予測性能が、前記論理ディスクの要求性能以下にならないかを調べ、前記予測性能が前記要求性能以下になる可能性があれば警告する機能を持ち、かつ前記要求性能と前記予測性能を時間帯毎に指定することが可能なシステムにおいて、前記予測性能が前記要求性能を下回る時間帯の、前記要求性能と前記予測性能の差分を、前記時間帯で二段階の優先度が定義可能なＰＰＣ、及びキャッシュ常駐を使用することで削減するか、もしくは前記予測性能が前記要求性能を上回るようにする方式の例を示す。
【００３３】
図１１は、図１のストレージ装置１００５内で本実施例を実現するためのブロック図である。図２と比較して、性能予測部１１００３、性能予測表１１００９、予測アクセス表１１００８、および要求性能表１１００４が追加されている。構成変更要求受け付け部１１００１は、クライアント計算機からの、ストレージ装置内の構成変更要求もしくは構成変更スケジュール変更要求を受け取る。そして、前記受け取った要求が構成変更要求ならば、構成情報管理部１１００７に要求を転送し、前記受け取った要求が構成変更スケジュール変更要求ならば、構成変更スケジュール管理部１１００５に転送する。
【００３４】
構成情報管理部１１００７は、構成要求受け付け部１１００１から転送された要求に従い、ストレージ装置１００５内の構成情報１１０１１を変更する。
【００３５】
一方、構成変更スケジュール管理部１１００５が、構成変更要求受け付け部１１００１から転送された、構成変更スケジュール変更要求を受け取ると、構成変更スケジュール検証部１１００２を使用して、前記要求が前記要求で指定された時刻に正常に処理できるかを検証するとともに、前記検証結果が正常に処理できると判断されれば、構成変更スケジュール１００１０を変更する。また構成変更スケジュール管理部１１００５は、時刻管理部１１００６と連携して、構成変更スケジュール１１０１０に記述された構成変更スケジュールに従い、構成情報管理部１１００７に構成変更要求を送信する。さらに、構成変更スケジュール管理部１１００５は、要求性能表１１００４、予想アクセス表１１００８、構成情報１１０１１の論理ディスクの構成、構成情報１１０１１のＬＵ、構成変更スケジュール１１０１０のいずれかが修正されると、構成情報管理部１１００７から構成情報１１０１１を取得する。そして、各論理ディスクについて、性能予測部１１００３を使用して、構成変更スケジュール１１０１０内の、何らかのストレージ構成を変更する全てもしくは一部の時刻のそれぞれについて、予測アクセス表１１００８及び性能予測表を用いて予測性能を計算し、要求性能表１１００４内の要求性能を満たさない各論理ディスクについて、要求性能を満たすようになるように構成変更スケジュール１１０１０を修正する。
【００３６】
一方構成情報管理部１１００７は、構成変更スケジュール管理部１１００５からの構成変更要求を受け取ると、ストレージ装置１００５内の構成情報１１０１１を変更する。性能予測部１１００３は、構成変更スケジュール管理部１１００５から受け取った要求に基づき、性能予測表１１００９を使用して、前記要求で指定された論理ディスクの予測性能を求める。
【００３７】
構成変更スケジュール検証部１１００２の処理の流れは実施例１に示した図２の構成変更スケジュール検証部２００２における処理の流れと同様である。また、構成変更スケジュール管理部１１００５内における構成変更スケジュールの受け付け及び処理の流れは、図４に示した処理と同様である。また構成変更スケジュール１１０１０は、図１０に示した例と同様である。
【００３８】
図１２に、図１１における要求性能表１１００４の例を示す。行１２００１、行１２００２、行１２００３、行１２００４、行１２００５は、それぞれ1行で１つのエントリを示しており、列１２００６は各エントリの要求性能を指定する時間帯、列１２００７は各エントリで要求性能を記述する対象論理ディスク、列１２００８は、各エントリの列１２００６で指定した時間帯に列１２００７で指定した論理ディスクに要求される平均性能を示す。なおここでは平均性能として平均アクセスタイムを使用しているが、これは、最大アクセス時間や最大転送速度等でもよい。また、列１２００７は論理ディスクで指定しているが、ＬＵを指定してもよいし、ＬＵや論理ディスクのグループを指定してもよい。
【００３９】
図１３に、図１１における予測アクセス表１１００８の例を示す。行１３００１、行１３００２、行１３００３、行１３００４、及び行１３００５は、それぞれ１行で１つのエントリを示す。列１３００６は、各エントリの予測アクセスの対象時間帯を示し、列１３００７は、各エントリの予測アクセスの対象論理ディスクを示す。列１３００８は、前記列１３００６で指定した時間帯における、前記１３００７で指定した論理ディスクの、予測アクセス数を示す。なおここでは予測アクセス数として、単位時間当たりの要求数を示したが、これは読み出しと書き込みを別々に指定してもよいし、総転送サイズを含めてもよい。また、列１３００７で論理ディスクを指定しているが、ＬＵを指定してもよいし、ＬＵや論理ディスクのグループを指定してもよい。
【００４０】
図１４に、図１１における性能予測表１１００９の例を示す。行１４００１、行１４００２、行１４００３、行１４００４、及び行１４００５は、それぞれ１行で１つのエントリを示す。列１４００６は、各エントリの単位時間あたりの要求数の範囲を示し、列１４００７は、各エントリの、前記列１４００６で指定した要求数だけの要求がくる時の、予測性能を示す。なおここでは予測性能として平均読み出し時間を使用しているが、これは、読み出しと書き込みを別々に指定してもよいし、転送サイズを考慮して、単位時間あたりの単位サイズの平均予測性能としてもよい。
【００４１】
図１５に、図１１における要求性能表１１００４、構成情報１１０１１の論理ディスク構成、前記論理ディスクのパス構成、構成変更スケジュール１１０１０のいずれかが変更された際に、構成情報１１０１１内の各論理ディスクが要求性能を満たさないものが出てくるので、これを満たすように構成変更スケジュール１１０１０を修正する処理の流れを示す。論理ディスクの性能を向上する方策としてポートの優先順位を上げることと、ＬＵをキャッシュに常駐させることの２つがあるものとして以下を説明する。
【００４２】
処理を開始（ステップ１５００１）すると、ステップ１５００２で、構成情報１１０１１の論理ディスク構成もしくは前記論理ディスクのパス構成もしくは構成変更スケジュール１１０１０が変更される、もしくはプログラム終了まで待つ。その後、ステップ１５００３でステップ１５００２が完了した原因がプログラム終了かどうかを判断し、前記原因がプログラム終了であれば、図１５に示した処理を終了する（ステップ１５００４）。ステップ１５００３の判断の結果、前記ステップ１５００２が完了した原因がプログラム終了でない場合、ステップ１５００５で、要求性能を満たさなくなる論理ディスクと前記論理ディスクが要求性能を満たさなくなる時間帯と、前記論理ディスクを定義に含むＬＵの組の一覧を生成する。ここで本実施例では、ステップ１５００５で生成する一覧には、パスが定義されていない論理ディスクは含まないこととする。ステップ１５００６では、ステップ１５００５で取得した論理ディスクの性能を満たさなくなる時間帯の、前記論理ディスクを定義に含むＬＵを公開しているポートの一覧を生成する。そしてステップ１５００７で、前記１５００６で生成した一覧のポートのうち、ステップ１５００８の処理を行なっていないポートを一つ選択する。そしてステップ１５００８で、前記選択したポートの優先度を上げると、ステップ１５００５で生成した、要求を満たさない論理ディスクと時間帯とＬＵの組の数が減るかどうか調べ、減るのであれば、ステップ１５０１１でポート優先度変更処理を構成変更スケジュールに組み込み、ステップ１５００５に戻る。ステップ１５００８で論理ディスク数が減らないと判断されれば、ステップ１５００９でまだ調べていないポートが存在するかを調べ、前記ポートが存在すればステップ１５００７に戻り、前記ポートが存在しなければステップ１５０１０に進む。ステップ１５０１０では、ステップ１５００５で生成した一覧の論理ディスクのうち、ステップ１５０１３の処理を行なっていない論理ディスクを１つ選択し、ステップ１５０１３で前記選択した論理ディスクを定義に含むＬＵをキャッシュに常駐することにより、前記ステップ１５００５で生成した一覧の要求性能を満たさない論理ディスクと時間帯とＬＵの組の数が減るかどうかを判断し、減ると判断すればステップ１５０１６でキャッシュ常駐変更処理を構成変更スケジュールに組み込み、減らないと判断すればステップ１５０１４に進む。ステップ１５０１４では、前記ステップ１５０１３の処理を行なっていない論理ディスクがまだ存在するかどうかを調べ、存在すればステップ１５０１０に戻り、存在しなければステップ１５０１５で当該論理ディスクの性能向上はできないと判断してステップ１５００２に戻る。なお、性能向上できないと判断された論理ディスクの扱いとして、管理者に警告したり、ログに出力したりする方法がある。
【００４３】
図１１の性能予測部１１００３における論理ディスクの性能予測処理の流れを図１６に示す。本処理は、指定された時間帯の、指定された論理ディスクの性能予測を行なう。処理を開始（ステップ１６００１）すると、性能予測処理を行なう論理ディスクを定義に含むＬＵが、キャッシュ常駐を利用してキャッシュ上に常駐しているかを判断し、常駐していれば、ステップ１６００３に進む。ステップ１６００３では、前記性能予測を行なう論理ディスクを定義に含むＬＵを定義しているポートが、ＰＰＣを使用して処理優先度を上げられているかを調べる。前記ポートの処理優先度が上げられていれば、ステップ１６００６で、優先度を上げない場合の、キャッシュ常駐されたＬＵの固定性能値を返す。優先度を上げていれば、ステップ１６００５で、キャッシュに常駐されたＬＵの優先度変更時の固定値を返す。
【００４４】
ステップ１６００２で、前記論理ディスクを定義に含むＬＵがキャッシュに常駐されていないと判断されれば、ステップ１６００４で、前記性能予測を行なう論理ディスクと同じパリティグループ上に定義されている論理ディスクを全て取得する。そして、ステップ１６００８で、前記ステップ１６００４で取得した論理ディスクのうちステップ１６０１１の処理を行なっていない論理ディスクがあるかどうかを調べ、前記処理を行なっていない論理ディスクがあると判断されれば、ステップ１６０１１で、前記ステップ１６００８の処理を行なっていない論理ディスクを１つ選択する。そしてステップ１６０１２で、前記選択した論理ディスクを定義に含むＬＵを公開しているポートが、ＰＰＣを使用して優先度変更をおこなっているかどうか調べ、前記優先度変更をおこなっていなければステップ１６０１４へ進み、前記優先度変更を行なっていれば、ステップ１６０１３へ進む。ステップ１６０１３では、前記ステップ１３０１２で優先度を上げていると判断すれば、ＰＰＣを使ったときの性能を予測するため仮の予測値を入れるため前記論理ディスクの平均予測要求数を１０％増加させる。ここでいう予測要求数とは、図１３に示した表の、前記論理ディスクの前記時間帯における予測アクセス数を示す。
【００４５】
ステップ１６０１４では、前記ステップ１６０１１で選択した論理ディスクを定義に含むＬＵがキャッシュに常駐しているかどうかを判断し、常駐していないと判断すればステップ１６０１６に進み、常駐していると判断すれば、ステップ１６０１５で、予測要求数を２０分の１にする。ステップ１６０１６では、前記ステップ１６０１１で選択した論理ディスクの予測要求数のステップ１６０１３及びステップ１６０１５で計算した結果を、全てのステップ１６００４の論理ディスクに関して総計する。ここで上記の１０％や２０分の１という値には特段の意味はない。単なる例としての値である。少しずつ値を変えて性能の向上の度合いを見るという意味合いである。
【００４６】
一方ステップ１６００８で、ステップ１６００８の処理を行なっていない論理ディスクがあれば、ステップ１６００９で、ステップ１６０１６で計算した、ステップ１６００４の全論理ディスクの総予測要求数を使用して、図１１における性能予測表１１００３を引く。なお、前記ステップ１６０１３で使用した１０％という割合及び、前記ステップ１６０１５で使用した２０分の１という値は、前述の値以外を使用してもよい。
【００４７】
本実施例では、論理ディスクの作成時で行なう処理を対象として述べたが、これは論理ディスクの移動時でもよい。
【００４８】
また、本実施例では、論理ディスクを作成した後に、予測性能が要求性能を下回る論理ディスクについてＰＰＣやキャッシュ常駐を行っているが、論理ディスク作成時に、予測性能を計算し、予測性能が要求性能を下回る論理ディスクについて、ＰＰＣやキャッシュ常駐を行なうことで、予測性能が要求性能を下回らないようにすることができるか可能かを調べ、可能でない場合に、管理者に警告するようにしてもよい。
【００４９】
また本実施例では、ＰＰＣの優先度の段階は２段階としたが、３段階以上の段階をもつＰＰＣでも同様の方法で適用可能である。
【００５０】
本実施例では、ＰＰＣとキャッシュ常駐の例を示したが、予測性能が要求性能を下回る論理ディスクの、パス構成を変更してもよい。このとき、場合によりホスト側からの参照先ＬＵも変更する必要がある。また、予測性能が要求性能を下回る論理ディスクを、スナップショット機能等を利用して他のパリティグループに移動し、移動先の論理ディスクを使用するようにしてもよい。この場合は、前記予測性能が要求性能を下回るようになる時間帯の開始時刻以前にスナップショットの起動を行い、前記開始時刻に設定変更が間に合うようにしなければならない。
【００５１】
本実施例では、予測性能が要求性能を下回る現象が発生する論理ディスクについて、前記現象が発生開始する時刻のスケジュールを登録するようにしているが、これは、構成変更にかかる時間を見越して、あらかじめ固定時間前に構成変更処理を開始してもよい。この場合、前記固定時間として、行なう構成変更内容毎に処理所要時間をあらかじめ定義する等の方法がある。
【００５２】
次に、図１７を用いて、図１０の構成変更スケジュールを画面で見る、あるいは設定するためのＧＵＩについて説明する。領域１７００１は、指定された時刻のシステム構成図を示している。領域１７００２は、領域１７００１内の枠線で示されたストレージ装置の構成変更スケジュールを示している。時刻線１７００５の各時刻での設定内容を、構成変更内容線１７００６で表示している。これはアクセス制御の時間帯や、スナップショットを行なう時間帯を示している。図では３つのアクセス制御の設定が異なる時間帯が設けられている。時刻指示線１７００４はカーソル１７００７で移動可能であり、管理者が指定した時刻を示している。領域１７００１は前記指定した時刻のシステム構成を示している。時刻指示線１７００４が指す時刻に有効な構成変更内容線１７００６の設定内容は、領域１７００３に示される。これによって、時刻指示線１７００４が横切る構成内容線１７００６の詳細が分かる。構成変更スケジュールを設定するときは、例えば、領域１７００３をカーソルでダブルクリックすると入力モードになり、キーボードからあるいは設定時に表示される設定用メニューを選択することにより領域１７００３の内容を書き換える。
【００５３】
上記の例では、指定した時刻の構成に関する構成変更スケジュールを表示しているが、指定した資源の構成変更スケジュールを表示してもよい。これは例えば、論理ディスクを指定して、当該論理ディスクを定義に含むＬＵや前記ＬＵのキャッシュ常駐、前記ＬＵを公開しているポートのＰＰＣ等の情報を表示する等である。
【００５４】
また本例では、領域１７００１に表示されているストレージ装置のうちの１つの構成変更スケジュールを領域１７００２に表示している例を示したが、領域１７００１に表示されている全てもしくは一部のストレージ装置の構成変更スケジュールを、領域１７００２に表示してもよい。
【００５５】
本実施例では、構成変更を行なう時刻を管理者が指定する例を示したが、ストレージ内のＬＵやポート等の資源毎の性能を測定したログから、アクセスが集中する対象が変化する時刻を抽出し、当該時刻に自動的にキャッシュ常駐やＰＰＣ等の設定を行なうようにしてもよいし、管理者に前記時刻の構成変更スケジュール追加を促してもよい。
【００５６】
第１の実施例における構成変更スケジュール２００２及び、第２の実施例における構成変更スケジュール検証部１１００２は、必ずしも設ける必要はない。また、第１の実施例及び第２の実施例では、ＰＰＣ、キャッシュ常駐、ＬＵＮ  Ｓｅｃｕｒｉｔｙ、スナップショット、パス構成の構成変更について述べたが、パリティグループのＲＡＩＤレベルや、論理ディスクの物理的位置の移動、ＬＵやＬＵグループ毎のキャッシュ割り当てサイズ等について、スケジュールに従って構成変更を行なうようにしてもよい。
【００５７】
本実施例のストレージ構成自動変更装置をストレージ装置内に設けることにより、ストレージ装置を別のＳＡＮ環境に移動する場合、管理ソフトやデータを移し変える手間を省くことが出来る。
【００５８】
第１の実施例及び第２の実施例において、スケジュールに従ってストレージ装置の構成情報を変更する際に、当該時刻におけるストレージの構成情報や統計情報を参照し、特定の条件を満たす場合のみ構成情報を変更したり、特定の条件を満たす構成情報を変更したりするようにしてもよい。この場合、スケジュールを指定する際に前記条件を指定するとともに、スケジュールに従い構成情報を変更する際(図４のステップ４００９の直前)に、前記条件を満たすかどうかを判断したり、前記条件を満たす構成情報を選択したりする。
【００５９】
前記特定の条件に従い処理を行なう例として、指定した時刻にポート優先度を変更するスケジュールにおいて、当該ポートへの単位時間当たりの平均要求数の閾値が予め指定した値以上もしくは以下であればポート優先度を変更する方法がある。前記条件の他の例として、キャッシュ残り容量が予め指定した値以下である、パス最大割り当て数と現在のパス割り当て総数の差が予め指定した値以上である、等がある。前記条件を満たす構成情報を選択して処理する例として、特定の時刻にキャッシュを割り当てるスケジュールにおいて、当該時刻における単位時間当たりのアクセス要求数が最も多いＬＵにキャッシュを割り当てる方法がある。
【００６０】
【発明の効果】
本発明により、時間の経過に従って変化する業務形態に応じて、ストレージ装置の構成内容を変更することが出来る。
【図面の簡単な説明】
【図１】本発明の実施例が適用されるＳＡＮの構成例を示す。
【図２】本発明の第１の実施例のブロック構成を示す。
【図３】本発明の第１の実施例における要求受け取り時の処理の流れを示す。
【図４】本発明の第１の実施例における構成変更スケジュール変更要求処理の流れを示す。
【図５】本発明の第１の実施例における構成変更スケジュール変更要求が指定された時刻に正常に行なえるかどうかを検証する処理の流れを示す。
【図６】本発明の第１の実施例におけるＬＵＮ  Ｓｅｃｕｒｉｔｙの構成変更スケジュール変更要求が処理可能かどうかを判断する処理の流れを示す。
【図７】本発明の第１の実施例におけるパスの構成変更スケジュール変更要求が処理可能かどうかを判断する処理の流れを示す。
【図８】本発明の第１の実施例におけるキャッシュ常駐の構成変更スケジュール変更要求が処理可能かどうかを判断する処理の流れを示す。
【図９】本発明の第１の実施例におけるスナップショットの構成変更スケジュール変更要求が処理可能かどうかを判断する処理の流れを示す。
【図１０】本発明の第１の実施例における構成変更スケジュールの例を示す。
【図１１】本発明の第２の実施例のブロック構成を示す。
【図１２】本発明の第２の実施例における論理ディスク毎の要求性能表を示す。
【図１３】本発明の第２の実施例における論理ディスク毎の予測アクセス表を示す。
【図１４】本発明の第２の実施例における性能予測表を示す。
【図１５】本発明の第２の実施例において、任意の論理ディスクに対する構成情報もしくは前記論理ディスクのパス定義情報もしくは前記論理ディスクの要求性能表もしくは構成変更スケジュールが変更された際の処理の流れを示す。
【図１６】本発明の第２の実施例における性能予測処理の流れを示す。
【図１７】本発明の実施例における設定画面の例を示す。
【符号の説明】
2001 構成変更要求受け付け部
2002 構成変更スケジュール検証部
2003 構成変更スケジュール管理部
2004 時刻管理部
2005 情報構成管理部
2010 構成変更スケジュール
2011 構成情報
4004 次回構成変更時刻計算ステップ
4009 構成変更ステップ
4012 構成変更スケジュール変更ステップ
【図１】
0004220724.tif 000002
【図２】
0004220724.tif 000003
【図３】
0004220724.tif 000004
【図４】
0004220724.tif 000005
【図５】
0004220724.tif 000006
【図６】
0004220724.tif 000007
【図７】
0004220724.tif 000008
【図８】
0004220724.tif 000009
【図９】
0004220724.tif 000010
【図１０】
0004220724.tif 000011
【図１１】
0004220724.tif 000012
【図１２】
0004220724.tif 000013
【図１３】
0004220724.tif 000014
【図１４】
0004220724.tif 000015
【図１５】
0004220724.tif 000016
【図１６】
0004220724.tif 000017
【図１７】
0004220724.tif 000018