(57)【要約】【課題】  ストレージシステムの各ＳＬＰＲに設定されたストレージ資源のグルーピングと、ストレージ管理ソフトウェアに設定されたストレージグループのグルーピングとの間の不整合を解消する。【解決手段】  本発明のグルーピング方法は、ストレージシステムが提供する複数のストレージ資源によって構成されるストレージグループをグルーピングする方法であって、ストレージシステムの論理パーティション毎に設定されたストレージ資源の構成情報を取得するステップ（Ｓ１００３）と、ストレージシステムの論理パーティション毎に設定されたストレージ資源のグループ構成と、ストレージグループを構成するストレージ資源のグループ構成とが一致するように、ストレージグループを構成するストレージ資源をグルーピングするステップ（Ｓ１００８）を備える。【選択図】        図３２
2006260284.tif 000002
【特許請求の範囲】
【請求項１】
ストレージシステムが提供する複数のストレージ資源によって構成されるストレージグループをグルーピングするためのストレージ管理ソフトウェアであって、
前記ストレージシステムの論理パーティション毎に設定されたストレージ資源の構成情報を取得するステップと、
前記ストレージシステムの論理パーティション毎に設定されたストレージ資源のグループ構成と、前記ストレージグループを構成するストレージ資源のグループ構成とが一致するように、前記ストレージグループを構成するストレージ資源をグルーピングするステップと、
をコンピュータシステムに実行させる、ストレージ管理ソフトウェア。
【請求項２】
請求項１に記載のストレージ管理ソフトウェアであって、
前記ストレージシステムの論理パーティション毎に設定されたパーティション管理者の識別情報に基づいて、前記ストレージグループとこれを管理する管理者との対応関係を更新するステップを更に前記コンピュータシステムに実行させる、ストレージ管理ソフトウェア。
【請求項３】
請求項１に記載のストレージ管理ソフトウェアであって、
前記ストレージグループの管理者の同意を条件として、前記論理パーティション毎に設定されたストレージ資源のグループ構成と、前記ストレージグループを構成するストレージ資源のグループ構成とが一致するように、前記ストレージグループを構成するストレージ資源をグルーピングするステップを更に前記コンピュータシステムに実行させる、ストレージ管理ソフトウェア。
【請求項４】
ストレージシステムが提供する複数のストレージ資源によって構成されるストレージグループをグルーピングするためのストレージ管理ソフトウェアであって、
前記ストレージシステムの論理パーティション毎に設定されたストレージ資源の構成情報を取得するステップと、
前記ストレージグループの構成変更を行うログインユーザに対してユーザ認証を行い、前記ログインユーザが前記ストレージグループの構成変更を行う権限者であるか否かを判定するステップと、
前記ログインユーザが前記権限者であると判定した場合に、前記ストレージグループの構成変更を行うか否かの判断を前記権限者に要求するステップと、
前記権限者が前記ストレージグループの構成変更を行うと判断した場合に、前記論理パーティション毎に設定されたストレージ資源のグループ構成と、前記ストレージグループを構成するストレージ資源のグループ構成とが一致するように、前記ストレージグループを構成するストレージ資源をグルーピングするステップと、
をコンピュータシステムに実行させる、ストレージ管理ソフトウェア。
【請求項５】
請求項１に記載のストレージ管理ソフトウェアを記録したコンピュータ読み取り可能な記録媒体。
【請求項６】
ストレージシステムが提供する複数のストレージ資源によって構成されるストレージグループをグルーピングする方法であって、
前記ストレージシステムの論理パーティション毎に設定されたストレージ資源の構成情報を取得するステップと、
前記ストレージシステムの論理パーティション毎に設定されたストレージ資源のグループ構成と、前記ストレージグループを構成するストレージ資源のグループ構成とが一致するように、前記ストレージグループを構成するストレージ資源をグルーピングするステップと、
を備える、グルーピング方法。
【請求項７】
請求項６に記載のグルーピング方法であって、
前記ストレージシステムの論理パーティション毎に設定されたパーティション管理者の識別情報に基づいて、前記ストレージグループとこれを管理する管理者との対応関係を更新するステップを更に備える、グルーピング方法。
【請求項８】
請求項６に記載のグルーピング方法であって、
前記ストレージグループの管理者の同意を条件として、前記論理パーティション毎に設定されたストレージ資源のグループ構成と、前記ストレージグループを構成するストレージ資源のグループ構成とが一致するように、前記ストレージグループを構成するストレージ資源をグルーピングするステップを更に備える、グルーピング方法。
【請求項９】
ストレージシステムが提供する複数のストレージ資源によって構成されるストレージグループをグルーピングする方法であって、
前記ストレージシステムの論理パーティション毎に設定されたストレージ資源の構成情報を取得するステップと、
前記ストレージグループの構成変更を行うログインユーザに対してユーザ認証を行い、前記ログインユーザが前記ストレージグループの構成変更を行う権限者であるか否かを判定するステップと、
前記ログインユーザが前記権限者であると判定した場合に、前記ストレージグループの構成変更を行うか否かの判断を前記権限者に要求するステップと、
前記権限者が前記ストレージグループテーブルの構成変更を行うと判断した場合に、前記論理パーティション毎に設定されたストレージ資源のグループ構成と、前記ストレージグループを構成するストレージ資源のグループ構成とが一致するように、前記ストレージグループを構成するストレージ資源をグルーピングするステップと、
を備える、グルーピング方法。
【請求項１０】
ストレージシステムが提供する複数のストレージ資源によって構成されるストレージグループをグルーピングするストレージ管理ソフトウェアと、
前記ストレージ資源と前記ストレージグループとの対応関係を登録したストレージグループテーブルと、を備え、
前記ストレージ管理ソフトウェアは、前記ストレージシステムの論理パーティション毎に設定されたストレージ資源のグループ構成と、前記ストレージグループを構成するストレージ資源のグループ構成とが一致するように、前記ストレージグループテーブルの前記対応関係を更新する、ストレージシステム。
【請求項１１】
請求項１０に記載のストレージシステムであって、
前記ストレージグループとこれを管理する管理者との対応関係を登録する管理者テーブルを更に備え、
前記ストレージ管理ソフトウェアは、前記ストレージシステムの論理パーティション毎に設定されたパーティション管理者の識別情報に基づいて、前記管理者テーブルの前記対応関係を更新する、ストレージシステム。
【請求項１２】
請求項１０に記載のストレージシステムであって、
前記ストレージ管理ソフトウェアは、前記ストレージグループの管理者の同意を条件として、前記論理パーティション毎に設定されたストレージ資源のグループ構成と、前記ストレージグループを構成するストレージ資源のグループ構成とが一致するように前記ストレージグループテーブルの前記対応関係を更新する、ストレージシステム。
【請求項１３】
ストレージシステムが提供する複数のストレージ資源によって構成されるストレージグループをグルーピングするストレージ管理ソフトウェアと、
前記ストレージ資源と前記ストレージグループとの対応関係を登録したストレージグループテーブルと、を備え、
前記ストレージ管理ソフトウェアは、
前記ストレージグループテーブルの構成変更を行うログインユーザに対して、ユーザ認証を行い、前記ログインユーザが前記ストレージグループの構成変更を行う権限者であるか否かを判定し、
前記ログインユーザが前記権限者であると判定した場合に、前記ストレージグループテーブルの構成変更を行うか否かの判断を前記権限者に要求し、
前記権限者が前記ストレージグループテーブルの構成変更を行うと判断した場合に、前記論理パーティション毎に設定されたストレージ資源のグループ構成と、前記ストレージグループを構成するストレージ資源のグループ構成とが一致するように、前記ストレージグループテーブルの前記対応関係を更新する、ストレージシステム。
【発明の詳細な説明】
【技術分野】
【０００１】
本発明はストレージシステムが提供する複数のストレージ資源によって構成されるストレージグループのグルーピング技術に関する。
【背景技術】
【０００２】
近年、サーバ毎に分散配置されていたストレージを一箇所に集約し、ＳＡＮ（Storage Area Network）等のストレージ専用ネットワークを介してサーバ群に接続するストレージコンソリデーションが普及している。ストレージコンソリデーションの運用形態として、１台のストレージサブシステムを複数の顧客が共用する運用が行われている。例えば、特許文献１には、ストレージサブシステムを複数のユーザが共用する運用形態において、複数のディスク装置に対するユーザからのアクセスを管理するために、各ユーザから論理ボリュームに対するアクセスの要求を受けると、各ディスク装置が記憶する各論理ボリュームについて各ユーザに定義されたアクセス権の情報に基づき、アクセス許可又は不許可の判断を行う技術が提案されている。
【特許文献１】特開２００３−３３０６２２号公報
【発明の開示】
【発明が解決しようとする課題】
【０００３】
ストレージコンソリデーションの運用形態として、本発明者は、ストレージサブシステムのリソースを複数のパーティションに論理分割し、各パーティションを独立したストレージサブシステムとして、ユーザに提供するＳＬＰＲ（Storage Logical Partition）機能をストレージサブシステムに実装することを検討した。
【０００４】
しかし、ＳＬＰＲ機能を搭載したストレージサブシステムのリソース管理を、ストレージサブシステムの管理者と、ストレージサブシステムのユーザによって、それぞれ独立に行うと、次に述べる不都合が生じ得る。
【０００５】
例えば、人為的な設定ミス等により、管理者が設定した各ＳＬＰＲのリソースのグルーピング設定と、ユーザが設定したストレージ管理ソフトウェア上のストレージグループのグルーピング設定との間で不整合が生じる場合がある。このような不整合が生じると、例えば、ストレージサブシステムに設定されたＳＬＰＲのグルーピングにおいては、あるＬＤＥＶがＡ社のリソースとして設定されているにも拘らず、ストレージ管理ソフトウェアに設定されたストレージグループのグルーピングにおいては、当該ＬＤＥＶがＢ社のリソースとして設定されている場合、Ｂ社は当該ＬＤＥＶを参照できてしまうという不都合が生じる。一台のストレージサブシステムを複数のユーザが共用する運用形態においては、あるユーザが他のユーザに割り当てられたリソースを参照できてしまうのは、好ましくない。
【０００６】
また、サブシステム管理者が設定したＳＬＰＲのグルーピングと整合性がとれるようにスーパーユーザがストレージグループのグルーピングを行っていたのでは、二度手間にもなる。
【０００７】
このような不都合は、ユーザが設定するストレージ管理ソフトウェア上のストレージグループのグルーピングがストレージ管理ソフトウェアにおいてのみ有効であり、サブシステム管理者が設定したＳＬＰＲのグルーピングとは全く独立に存在する場合に生じ得る。
【０００８】
本発明は上記の問題点に鑑みてなされたもので、本発明の目的は、ストレージシステムの各論理パーティションに設定されたストレージ資源のグルーピングと、ストレージ管理ソフトウェアに設定されたストレージグループのグルーピングとの間の不整合を解消することにある。
【課題を解決するための手段】
【０００９】
上記の課題を解決するため、本発明のストレージ管理ソフトウェアは、ストレージシステムが提供する複数のストレージ資源によって構成されるストレージグループをグルーピングするためのストレージ管理ソフトウェアであって、ストレージシステムの論理パーティション毎に設定されたストレージ資源の構成情報を取得するステップと、ストレージシステムの論理パーティション毎に設定されたストレージ資源のグループ構成と、ストレージグループを構成するストレージ資源のグループ構成とが一致するように、ストレージグループを構成するストレージ資源をグルーピングするステップと、をコンピュータシステムに実行させる。これにより、ストレージサブシステムの各論理パーティションに設定されたストレージ資源のグルーピングと、ストレージ管理ソフトウェアに設定されたストレージグループのグルーピングとの間の不整合を解消できる。
【００１０】
ストレージ資源とは、例えば、ポート、キャッシュメモリ（ディスクキャッシュ）、論理デバイス（ＬＤＥＶ：Logical Device）等の各種の物理資源及び論理資源である。論理パーティション毎に設定されたストレージ資源の構成情報とは、例えば、各論理パーティションのストレージ資源のグルーピング情報である。
【００１１】
ＳＬＰＲ機能を搭載したストレージサブシステムを管理する管理者として、例えば、サブシステム全体のリソースの構成情報を管理する権限を有するサブシステム管理者と、各ＳＬＰＲのリソースの構成情報を管理する権限を有するパーティション管理者とが存在するのが望ましい。これらの管理者は、例えば、ポート、ＬＤＥＶ、キャッシュメモリ等のストレージ資源を対象としたリソース管理を行う。ユーザは自身に割り当てられた論理パーティション（論理分割単位）以外のリソースを参照し、或いは管理することはできない。
【００１２】
一方、この種のストレージサブシステムを利用するユーザとして、例えば、全てのストレージグループを管理する権限を有するスーパーユーザと、自身に割り当てられたストレージグループを管理する権限を有するユーザとが存在するのが望ましい。スーパーユーザ及びユーザは、ストレージ管理ソフトウェアを用いて、ストレージ資源を対象としたストレージグループのグルーピングを行う。
【００１３】
本発明のストレージ管理ソフトウェアがストレージグループを構成するストレージ資源のグルーピングを行う上で、ストレージシステムの論理パーティション毎に設定されたパーティション管理者の識別情報に基づいて、ストレージグループとこれを管理する管理者との対応関係を更新してもよい。論理パーティション毎に設定されたパーティション管理者と、この論理パーティションに対応するストレージグループを管理する管理者は、同一であるのが望ましい。パーティション管理者の識別情報とは、例えば、ユーザＩＤ及びパスワード等である。
【００１４】
また、本発明のストレージ管理ソフトウェアがストレージグループを構成するストレージ資源のグルーピングを行う際に、ストレージグループの管理者の同意を条件としてもよい。ストレージグループの管理者の同意とは、例えば、ストレージシステムの論理パーティション毎に設定されたストレージ資源のグループ構成と、ストレージグループを構成するストレージ資源のグループ構成とが一致するように、ストレージグループを構成するストレージ資源をグルーピングすることを許可するための同意である。
【００１５】
本発明の別の観点によるストレージ管理ソフトウェアは、ストレージシステムが提供する複数のストレージ資源によって構成されるストレージグループをグルーピングするためのストレージ管理ソフトウェアであって、ストレージシステムの論理パーティション毎に設定されたストレージ資源の構成情報を取得するステップと、ストレージグループの構成変更を行うログインユーザに対してユーザ認証を行い、ログインユーザがストレージグループの構成変更を行う権限者であるか否かを判定するステップと、ログインユーザが権限者であると判定した場合に、ストレージグループの構成変更を行うか否かの判断を権限者に要求するステップと、権限者がストレージグループの構成変更を行うと判断した場合に、論理パーティション毎に設定されたストレージ資源のグループ構成と、ストレージグループを構成するストレージ資源のグループ構成とが一致するように、ストレージグループを構成するストレージ資源をグルーピングするステップと、をコンピュータシステムに実行させる。ストレージグループの構成変更を行うか否かの判断を権限者に要求することにより、例えば、権限者（管理者）は、ストレージシステムの性能保証の観点、又は管理の観点に基づいて、ストレージシステムの論理パーティション単位毎に設定されたストレージ資源のグループ構成を、ストレージグループを構成するストレージ資源のグループ構成に反映させるべきか否かを選択できる。
【００１６】
本発明の記録媒体は、本発明のストレージ管理ソフトウェアを記録したコンピュータ読み取り可能な記録媒体である。記録媒体として、例えば、光記録媒体（ＣＤ−ＲＡＭ、ＣＤ−ＲＯＭ、ＤＶＤ−ＲＡＭ、ＤＶＤ−ＲＯＭ、ＤＶＤ−Ｒ、ＰＤディスク、ＭＤディスク、ＭＯディスク等の光学的にデータの読み取りが可能な記録媒体）や、磁気記録媒体（フレキシブルディスク、磁気カード、磁気テープ等の磁気的にデータの読み取りが可能な記録媒体）、或いはメモリ素子（ＤＲＡＭ等の半導体メモリ素子、ＦＲＡＭ等の強誘電体メモリ素子等）などが好適である。
【発明の効果】
【００１７】
本発明によれば、ストレージシステムの論理パーティション毎に設定されたストレージ資源のグループ構成と、ストレージグループを構成するストレージ資源のグループ構成とが一致するように、ストレージグループを構成するストレージ資源をストレージ管理ソフトウェがグルーピングするので、グループ構成の不一致を解消できる。
【発明を実施するための最良の形態】
【００１８】
以下、各図を参照して、本発明の実施形態について説明する。
図１は本実施形態に係るストレージサブシステム６００の全体的なシステム構成を示している。ストレージサブシステム６００は、主に、ディスク制御装置１００と、記憶装置３００とから構成される。ディスク制御装置１００は、例えば、情報処理装置２００から受信したコマンドに従って、記憶装置３００へのデータの入出力制御を行う。また、ディスク制御装置１００は、例えば、管理サーバ７００から受信したコマンドに従って、ストレージサブシステム６００の構成情報の設定又は変更等の各種の処理を行う。
【００１９】
情報処理装置２００は、例えば、パーソナルコンピュータ、ワークステーション、或いはメインフレームコンピュータ等の上位装置であり、銀行の自動預金預け払いシステムや、航空機の座席予約システム等に利用される。ストレージサブシステム６００は、ＳＬＰＲ（Storage Logical Partition）機能を搭載しており、一台のストレージサブシステム６００を複数のユーザが共用することができる。例えば、ユーザＡが情報処理装置１，２（２００）を所有し、ユーザＢが情報処理装置３，４，５（２００）を所有して、システムを運用することができる。
【００２０】
情報処理装置２００は、ＳＡＮ５００を介して、ディスク制御装置１００と通信可能に接続されている。ＳＡＮ５００は、記憶装置３００が提供する記憶資源におけるデータの管理単位であるブロックを単位として、情報処理装置２００との間でデータの授受を行うためのネットワークである。ＳＡＮ５００を介して情報処理装置２００とディスク制御装置１００との間で行われる通信プロトコルは、例えば、ファイバチャネルプロトコルである。
【００２１】
もとより、情報処理装置２００とディスク制御装置１００との間は、必ずしも、ＳＡＮ５００を介して接続されている必要はなく、例えば、ＬＡＮ（Local Area Network）を介して接続されていてもよく、或いは、ネットワークを介さずに直接に接続されていてもよい。ＬＡＮを介して接続される場合には、例えば、ＴＣＰ／ＩＰ（Transmission Control Protocol/Internet Protocol）に従って通信を行うこともできる。情報処理装置２００とディスク制御装置１００との間を、ネットワークを介さずに直接に接続する場合には、例えば、ＦＩＣＯＮ（Fibre Connection）（登録商標）、ＥＳＣＯＮ(Enterprise System Connection) （登録商標）、ＡＣＯＮＡＲＣ（Advanced Connection Architecture）（登録商標）、ＦＩＢＡＲＣ（Fibre Connection Architecture）（登録商標）等の通信プロトコルに従って、通信を行ってもよい。
【００２２】
管理サーバ７００は、外部ＬＡＮ４００を介して管理端末１６０と接続されている。外部ＬＡＮ４００は、例えば、インターネット或いは専用線等で構成される。外部ＬＡＮ４００を介して行われる、管理サーバ７００と管理端末１６０との間の通信は、例えば、ＴＣＰ／ＩＰ等の通信プロトコルによって行われる。
【００２３】
記憶装置３００は、複数の物理ディスクドライブ３３０を備えている。物理ディスクドライブ３３０は、例えば、ＡＴＡ（Advanced Technology Attachment）ディスクドライブ、ＳＣＳＩ（Small Computer System Interface）ディスクドライブ、ファイバチャネルディスクドライブ等のハードディスクドライブである。アレイ状に配列された複数のディスクドライブによって、ＲＡＩＤ（Redundant Arrays of Inexpensive Disks）を構成することも可能であり、一つのＲＡＩＤを構成する複数のハードディスクドライブをＥＣＣグループと称する。また、物理ディスクドライブ３３０により提供される物理的な記憶領域である物理ボリュームには、論理的な記憶領域であるＬＤＥＶを設定することができる。
【００２４】
ディスク制御装置１００と記憶装置３００との間は、ネットワークを介さずに直接に接続してもよく、或いはネットワークを介して接続してもよい。或いは、記憶装置３００とディスク制御装置１００を一体構成としてもよい。
【００２５】
ディスク制御装置１００は、チャネル制御部１１０、共有メモリ１２０、キャッシュメモリ１３０、ディスク制御部１４０、管理端末１６０、及び接続部１５０を備える。
【００２６】
ディスク制御装置１００は、チャネル制御部１１０により、ＳＡＮ５００を介して情報処理装置２００との間の通信を行う。チャネル制御部１１０は、情報処理装置２００との間で通信を行うための通信インターフェースを備え、情報処理装置２００との間でデータ入出力コマンド等を授受する機能を備える。各々のチャネル制御部１１０は、管理端末１６０と共に内部ＬＡＮ（共有バス）１５１を介して接続されている。これにより、チャネル制御部１１０に実行させるマイクロプログラム等を管理端末１６０からインストールすることが可能である。チャネル制御部１１０の詳細な構成については、後述する。
【００２７】
接続部１５０は、チャネル制御部１１０、共有メモリ１２０、キャッシュメモリ１３０、ディスク制御部１４０、及び管理端末１６０を相互に接続する。チャネル制御部１１０、共有メモリ１２０、キャッシュメモリ１３０、ディスク制御部１４０、及び管理端末１６０の間におけるデータやコマンドの授受は、接続部１５０を介して行われる。接続部１５０は、例えば、クロスバスイッチ等で構成される。
【００２８】
共有メモリ１２０とキャッシュメモリ１３０は、それぞれチャネル制御部１１０とディスク制御部１４０とによって共有されるメモリ装置である。共有メモリ１２０は、主として、リソースの構成情報や各種コマンド等を記憶するために利用される。キャッシュメモリ１３０は、主として、物理ディスク３３０に読み書きされるデータを一時的に記憶するために利用される。
【００２９】
尚、共有メモリ１２０には、ＳＬＰＲのリソース管理を行うためのストレージ管理者テーブル９０１、ＬＤＥＶパーティションテーブル９０２、ポートパーティションテーブル９０３、キャッシュパーティションアドレステーブル９０４、キャッシュパーティションテーブル９０５、ＬＤＥＶ割り当て状態テーブル９０６、ポート割り当て状態テーブル９０７、キャッシュ割り当て状態テーブル９０８、ＳＬＰＲ割り当て状態テーブル９０９が格納されている（図１４〜図２２参照）。これらのテーブル９０１〜９０８の詳細については、後述する。
【００３０】
例えば、あるチャネル制御部１１０が情報処理装置２００から受信したデータ入出力要求が書き込みコマンドであった場合には、当該チャネル制御部１１０は、書き込みコマンドを共有メモリ１２０に書き込むと共に、情報処理装置２００から受信した書き込みデータをキャッシュメモリ１３０に書き込む。
【００３１】
一方、ディスク制御部１４０は、共有メモリ１２０を常時監視しており、共有メモリ１２０に書き込みコマンドが書き込まれたことを検出すると、当該コマンドに従って、キャッシュメモリ１３０からダーティデータを読み出して、これを物理ディスクドライブ３００にデステージする。
【００３２】
また、あるチャネル制御部１１０が情報処理装置２００から受信したデータ入出力要求が読み出しコマンドであった場合には、読み出し対象となるデータがキャッシュメモリ１３０に存在するかどうかを調べる。ここで、読み出し対象となるデータがキャッシュメモリ１３０に存在すれば、チャネル制御部１１０は、そのデータをキャッシュメモリ１３０から読み取って、情報処理装置２００に送信する。
【００３３】
一方、読みだし対象となるデータがキャッシュメモリ１３０に存在しない場合には、当該チャネル制御部１１０は、読み出しコマンドを共有メモリ１２０に書き込む。ディスク制御部１４０は、共有メモリ１２０を常時監視しており、読み出しコマンドが共有メモリ１２０に書き込まれたことを検出すると、ディスク制御部１４０は、記憶装置３００から読みだし対象となるデータを読み出して、これをキャッシュメモリ１３０に書き込むと共に、その旨を共有メモリ１２０に書き込む。すると、チャネル制御部１１０は読みだし対象となるデータがキャッシュメモリ１３０に書き込まれたことを検出し、そのデータをキャッシュメモリ１３０から読み出して、情報処理装置２００に送信する。
【００３４】
このように、チャネル制御部１１０とディスク制御部１４０との間では、キャッシュメモリ１３０を介してデータの授受が行われる。キャッシュメモリ１３０には、物理ディスクドライブ３３０に記憶されるデータのうち、チャネル制御部１１０やディスク制御部１４０によって、読み書きされるデータが一時的に書き込まれる。
【００３５】
尚、チャネル制御部１１０からディスク制御部１４０に対するデータの書き込みや読み出しの指示を、共有メモリ１２０を介在させて間接的に行う構成の他、例えば、チャネル制御部１１０からディスク制御部１４０に対して、データの書き込みや読み出しの指示を、共有メモリ１２０を介さずに直接に行う構成とすることもできる。或いは、チャネル制御部１１０にディスク制御部１４０の機能を持たせて、データの入出力を制御することもできる。
【００３６】
ディスク制御部１４０は、データを記憶する複数の物理ディスクドライブ３３０と通信可能に接続され、記憶装置３００の制御を行う。例えば、上述のように、チャネル制御部１１０が情報処理装置２００から受信したデータ入出力要求に応じて、物理ディスクドライブ３３０に対してデータの読み書きを行う。
【００３７】
各ディスク制御部１４０は管理端末１６０と共に内部ＬＡＮ１５１で接続されており、相互に通信を行うことが可能である。これにより、ディスク制御部１４０に実行させるマイクロプログラム等を管理端末１６０から送信しインストールすることが可能となっている。ディスク制御部１４０の構成については後述する。
【００３８】
本実施形態においては、共有メモリ１２０及びキャッシュメモリ１３０がチャネル制御部１１０及びディスク制御部１４０に対して独立に設けられていることについて記載したが、本実施形態はこの場合に限られるものでなく、例えば、共有メモリ１２０又はキャッシュメモリ１３０がチャネル制御部１１０及びディスク制御部１４０の各々に分散して設けられていてもよい。この場合、接続部１５０は、分散された共有メモリ１２０又はキャッシュメモリ１３０を有するチャネル制御部１１０及びディスク制御部１４０を相互に接続させることになる。
【００３９】
また、チャネル制御部１１０、ディスク制御部１４０、接続部１５０、共有メモリ１２０、キャッシュメモリ１３０の少なくともいずれかが一体として構成されているようにすることもできる。
【００４０】
管理端末１６０は、ストレージサブシステム６００を管理するためのコンピュータである。サブシステム管理者又はパーティション管理者は、管理端末１６０を操作することにより、例えば、ＳＬＰＲのリソース管理、物理ディスクドライブ３３０の構成の設定、情報処理装置２００とチャネル制御部１１０との間のパスの設定、チャネル制御部１１０やディスク制御部１４０において実行されるマイクロプログラムのインストール等を行うことができる。ここで、ＳＬＰＲのリソース管理とは、例えば、各ＳＬＰＲへのリソース（ポート、ＬＤＥＶ、キャッシュメモリ等）の割り当て、追加、削除等の設定をいう。物理ディスクドライブ３３０の構成の設定とは、例えば、物理ディスクドライブ３３０の増設或いは減設、ＲＡＩＤ構成の変更（例えば、ＲＡＩＤ１からＲＡＩＤ５への変更）等をいう。更に、管理端末１６０からは、ストレージサブシステム６００の動作状態の確認や故障部位の特定、チャネル制御部１１０で実行されるオペレーティングシステムのインストール等の作業を行うこともできる。これら各種の設定や制御は、管理端末１６０が備えるユーザインターフェースを通じて行うことができる。
【００４１】
管理端末１６０は、ディスク制御装置１００に内蔵してもよく、或いは外付けの構成としてもよい。また、管理端末１６０は、ディスク制御装置１００及び記憶装置３００の管理専用に用意されたコンピュータでもよく、或いは汎用のコンピュータにストレージシステム６００の管理機能を実装させたものでもよい。
【００４２】
図２はチャネル制御部１１０のシステム構成を示している。チャネル制御部１１０は、ＣＰＵ１１１、メモリ１１２、メモリコントローラ１１３、ホストインターフェース１１４、及びＤＭＡ（Direct Memory Access）１１５を備えて構成されている。ＣＰＵ１１１は、メモリ１１２に実装されたチャネルアダプタ用のファームウェアに基づいて動作し、メモリコントローラ１１３を経由して、ＤＭＡ１１５又はホストインターフェース１１４との間でデータの送受信等を行う。ホストインターフェース１１４は、ファイバチャネルプロトコルやＳＣＳＩプロトコル等のプロトコルコントローラを備えており、情報処理装置２００との間で通信を行うための通信インターフェース機能を提供する。ホストインターフェース１１４には、二つのポートが実装されている。ＤＭＡ１１５は、ＣＰＵ１１１からの指示により、情報処理装置２００から送信されたデータをキャッシュメモリ１３０へＤＭＡ転送し、或いはキャッシュメモリ１３０に格納されたデータを情報処理装置２００へＤＭＡ転送する。
【００４３】
図３はディスク制御部１４０のシステム構成を示している。ディスク制御部１４０は、ＣＰＵ１４１、メモリ１４２、メモリコントローラ１４３、ディスクインターフェース１４４、及びＤＭＡ１４５を備えて構成されている。ＣＰＵ１４１は、メモリ１４２に実装されたディスクアダプタ用のファームウェアに基づいて動作し、メモリコントローラ１４３を経由して、ＤＭＡ１４５又はディスクインターフェース１４４との間でデータの送受信等を行う。ディスクインターフェース１４４は、ファイバチャネルプロトコルやＳＣＳＩプロトコル等のプロトコルコントローラを備えており、物理ディスク３３０との間で通信を行うための通信インターフェース機能を提供する。ＤＭＡ１４５は、ＣＰＵ１４１からの指示により、物理ディスク３３０から読み取ったデータをキャッシュメモリ１３０へＤＭＡ転送し、或いはキャッシュメモリ１３０に格納されたデータを物理ディスク３３０へＤＭＡ転送する。
【００４４】
図４は管理端末１６０のシステム構成を示している。管理端末１６０は、ＣＰＵ１６１、メモリ１６２、インターフェース部１６３、ローカルディスク１６４、入力デバイス１６５、及び出力デバイス１６６を備えて構成されている。ＣＰＵ１６１は、メモリ１６２に実装されたストレージ管理用のファームウェアに基づいて、各種の処理を行う。ＣＰＵ１６１は、インターフェース部１６３を介して、共有メモリ１２０上の各種テーブルにアクセスするが、これらのテーブルのコピーをメモリ１６２に保持しておいてもよい。テーブルのコピーをメモリ１６２に保持しておくことで、ＣＰＵ１６１は、共有メモリ１２０に毎回アクセスする必要がなくなる。インターフェース部１６３は、外部ＬＡＮ４００と内部ＬＡＮ１５１の通信インターフェースを備えており、外部ＬＡＮ４００を介して管理サーバ７００から発行された各種の管理コマンドを受信する機能や、内部ＬＡＮ１５１を介して共有メモリ１２０にアクセスする機能などを有する。ローカルディスク１６４には、ストレージサブシステム６００を管理する上で必要な各種の情報が格納されている。入力デバイス１６５は、例えば、キーボード、マウス等である。サブシステム管理者又はパーティション管理者は、入力デバイス１６５を入力操作して、ストレージサブシステム６００のＳＬＰＲのリソース管理等を行う。出力デバイス１６６は、例えば、ディスプレイ、プリンタ等である。
【００４５】
図５は管理サーバ７００のシステム構成を示している。管理サーバ７００は、ＣＰＵ７０１、メモリ７０２、インターフェース部７０３、ローカルディスク７０４、入力デバイス７０５、及び出力デバイス７０６を備えて構成されている。ＣＰＵ７０１は、メモリ７０２に実装されたストレージ管理ソフトウェア（ストレージ管理プログラム）８００に基づいて、各種の処理を行う。インターフェース部７０３は、外部ＬＡＮ４００の通信インターフェースを備えており、外部ＬＡＮ４００を介して管理端末１６０へ各種の管理コマンドを送信することができる。ローカルディスク７０４には、ストレージサブシステム６００を管理する上で必要な各種の情報が格納されている。入力デバイス７０５は、例えば、キーボード、マウス等である。スーパーユーザ又はユーザは、入力デバイス７０５を入力操作して、ストレージサブシステム６００の構成情報の設定又は変更等を行う。出力デバイス７０６は、例えば、ディスプレイ、プリンタ等である。
【００４６】
尚、メモリ７０２には、論理グループテーブル８０１、ストレージグループテーブル８０２、パーティション分割後ストレージグループテーブル８０３、管理サーバ管理者テーブル８０４、管理ソフトストレージ管理者テーブル８０５、ストレージグループ割り当て状態テーブル８０６が格納されている。これらのテーブル８０１〜８０６の詳細については、後述する。
【００４７】
図６はストレージサブシステム６００とストレージ管理ソフトウェア８００におけるグルーピングの対応関係を示している。ストレージサブシステム６００側のリソース設定では、ＳＬＰＲ１にポート１、キャッシュメモリ１、ＬＤＥＶ１〜４が割り当てられ、ＳＬＰＲ２にポート２、キャッシュメモリ２、ＬＤＥＶ５〜７が割り当てられ、ＳＬＰＲ３にポート３、キャッシュメモリ３、ＬＤＥＶ８〜１０が割り当てられるようにグルーピングされている。ポート１〜３は、チャネル制御部１１０が備える通信ポートが論理的に分割された分割単位である。キャッシュメモリ１〜３は、キャッシュメモリ１３０の記憶領域が論理的に分割された分割単位である。ＬＤＥＶ１〜１０は、複数の物理ディスク３３０が提供するＬＤＥＶである。
【００４８】
一方、ストレージ管理ソフトウェア８００側のリソース設定では、ストレージグループ１にＬＤＥＶ１〜４が割り当てられ、ストレージグループ２にＬＤＥＶ５〜７が割り当てられ、ストレージグループ３にＬＤＥＶ８〜１０が割り当てられるようにグルーピングされている。従来では、サブシステム管理者がストレージサブシステム６００のリソース設定を行い、スーパーユーザがストレージ管理ソフトウェア８００のリソース設定を行っていたが、本実施形態では、サブシステム管理者が行ったストレージサブシステム６００のリソース設定をストレージ管理ソフトウェア８００のリソース設定に自動的に反映させる構成を採用した。以下、この点について、各図を参照しながら詳細に説明する。
【００４９】
尚、ストレージ管理ソフトウェア８００は、ＬＤＥＶ、ポート、キャッシュメモリ等のストレージ資源をグルーピング対象とするが、本実施形態では、説明の便宜上、ＬＤＥＶのみをストレージ管理ソフトウェア８００によるグルーピング対象とする場合を例示して説明を行う。
【００５０】
図７はストレージ管理ソフトウェア８００における論理グループの階層構造を示している。論理グループには、階層グループとストレージグループの二種類が存在する。階層グループとは、単一又は複数のストレージグループが登録された論理グループをいい、例えば、図中のｒｏｏｔ，ｇｒｐＡ，ｇｒｐＤ，ｇｒｐＣがこれに該当する。但し、階層グループには、ＬＤＥＶを登録することはできない。ストレージグループとは、単一又は複数のＬＤＥＶが登録された論理グループをいい、例えば、図中のｇｒｐＢ，ｇｒｐＥ，ｇｒｐＦがこれに該当する。一つのストレージグループには、一つのストレージサブシステム６００内に存在するＬＤＥＶの集合を登録することができる。論理グループは階層化することができる。例えば、ＬＤＥＶ２は、ｒｏｏｔ￥ｇｒｐＡ￥ｇｒｐＢ￥ＬＤＥＶ２と表記することができる。
【００５１】
論理グループをユーザに割り当てることで、当該論理グループ以下の階層に登録されているＬＤＥＶをユーザの管理対象とする。同図に示す例では、ユーザＡは、ＬＤＥＶ１〜３を管理対象とし、ユーザＢは、ＬＤＥＶ１〜２を管理対象としている。ユーザＣには、ｇｒｐＣが割り当てられているが、ｇｒｐＣには、ストレージグループが登録されていないので、ユーザＣが管理するＬＤＥＶは存在しない。スーパーユーザは、ｒｏｏｔ以下に登録されている全てのＬＤＥＶを管理対象とし、論理グループを各ユーザに割り当てる権限を有する。
【００５２】
尚、ここで例示されている論理グループの階層構造や各ストレージグループへのＬＤＥＶの割り当て等は、これらの概念を説明するための便宜上のものであり、後述する各種のテーブル８０１〜８０６，９０１〜９０９の解釈に影響を与えるものではない。
【００５３】
図８は論理グループテーブル８０１を示している。同テーブル８０１は、ストレージグループ又はＬＤＥＶがどの論理グループに属しているかを示すテーブルであり、「論理グループ番号」と「ストレージグループ又はＬＤＥＶ」が対応付けられて登録されている。
【００５４】
図９はストレージグループテーブル８０２を示している。同テーブル８０２は、各ＬＤＥＶがどのストレージグループに属しているかを示すテーブルであり、「ＬＤＥＶ番号」と「ストレージグループ番号」が対応付けられて登録されている。尚、説明を簡略化するため、論理グループの階層は１階層のみとし、しかも、全てのストレージグループに必ず１以上のＬＤＥＶを含む場合を例示している。
【００５５】
図１０はパーティション分割後ストレージグループテーブル８０３を示している。同テーブル８０３は、ＳＬＰＲ分割後の各ＬＤＥＶがどのストレージグループに属しているかを示すテーブルであり、「ＬＤＥＶ番号」と「ストレージグループ番号」が対応付けられて登録されている。同図は、同テーブル８０３が初期化された状態を示しており、各ＬＤＥＶ番号に対応する「ストレージグループ番号」の項目は未だ登録されていない。同テーブル８０３は、ストレージサブシステム６００側のリソース設定が完了した段階で、各ＬＤＥＶ番号に対応する「ストレージグループ番号」の項目が登録されることとなる。
【００５６】
図１１は管理サーバ管理者テーブル８０４を示している。同テーブル８０４は、ストレージ管理ソフトウェア使用者の「ユーザＩＤ」及び「パスワード」と、当該使用者がアクセス権限を有する「管理対象」が関連付けられて登録されている。具体的には、「管理対象」の項目には、ユーザがアクセス権限を有するストレージグループ番号が登録される。
【００５７】
図１２は管理ソフトストレージ管理者テーブル８０５を示している。同テーブル８０５は、ストレージ管理ソフトウェア８００がストレージサブシステム６００のＬＤＥＶ設定情報を取得する上で、ストレージサブシステム６００にログインする際に必要な「ユーザＩＤ」、「パスワード」、及び「管理対象」を関連付けたテーブルである。具体的には、サブシステム管理者の「管理対象」の項目には、「サブシステム」が登録され、パーティション管理者の「管理対象」の項目には、アクセス権限を有するＳＬＰＲが登録される。アクセス権限を有するＳＬＰＲは複数でもよい。
【００５８】
図１３はストレージグループ割り当て状態テーブル８０６を示している。同テーブル８０６は、ユーザに対して、どのストレージグループが割り当てられているかを示すテーブルであり、「ストレージグループ番号」と「割り当て状態」が関連付けられて登録されている。具体的には、「割り当て状態」の項目には、ストレージグループが未割り当ての場合に「０」、ストレージグループが割り当て済みの場合に「１」が登録される。
【００５９】
図１４はストレージ管理者テーブル９０１を示している。同テーブル９０１は、サブシステム管理者又はパーティション管理者がストレージサブシステム６００のリソース設定を行う際に、管理端末１６０がサブシステム管理者又はパーティション管理者のアクセス権限を判断するためのテーブルであり、ユーザ認証のための「ユーザＩＤ」及び「パスワード」と、サブシステム管理者又はパーティション管理者がアクセス権限を有する「管理対象」が関連付けられて登録されている。具体的には、サブシステム管理者の「管理対象」の項目には、「サブシステム」が登録され、パーティション管理者の「管理対象」の項目には、アクセス権限を有するＳＬＰＲが登録される。アクセス権限を有するＳＬＰＲは複数でもよい。
【００６０】
図１５はＬＤＥＶパーティションテーブル９０２を示している。同テーブル９０２は、各ＬＤＥＶがどのＳＬＰＲに属しているかを示すテーブルであり、「ＳＬＰＲ番号」と「ＬＤＥＶ番号」が対応付けられて登録されている。尚、ＳＬＰＲ番号「０」は、何れのＳＬＰＲにも属しない全てのリソースに付与される。
【００６１】
図１６はポートパーティションテーブル９０３を示している。同テーブル９０３は、各ポートがどのＳＬＰＲに属しているかを示すテーブルであり、「ＳＬＰＲ番号」と「ポート番号」が対応付けられて登録されている。
【００６２】
図１７はキャッシュパーティションアドレステーブル９０４を示している。同テーブル９０４は、論理分割された分割単位としての個々のキャッシュメモリのアドレス領域を示すテーブルであり、「キャッシュ番号」と「アドレス領域」が対応付けられて登録されている。
【００６３】
図１８はキャッシュパーティションテーブル９０５を示している。同テーブル９０５は、論理分割された分割単位としての個々のキャッシュメモリがどのＳＬＰＲに属しているかを示すテーブルであり、「ＳＬＰＲ番号」と「キャッシュ番号」が対応付けられて登録されている。
【００６４】
図１９はＬＤＥＶ割り当て状態テーブル９０６を示している。同テーブル９０６は、各ＬＤＥＶがＳＬＰＲに割り当てられているか否かを示すテーブルであり、「ＬＤＥＶ番号」と「割り当て状態」が対応付けられて登録されている。具体的には、ＬＤＥＶがどのＳＬＰＲにも割り当てられていない場合には、「割り当て状態」の項目には「０」が登録され、ＬＤＥＶが何れかのＳＬＰＲに割り当てられている場合には、「割り当て状態」の項目には「ＳＬＰＲ番号」が登録される。
【００６５】
図２０はポート割り当て状態テーブル９０７を示している。同テーブル９０７は、各ポートがＳＬＰＲに割り当てられているか否かを示すテーブルであり、「ポート番号」と「割り当て状態」が対応付けられて登録されている。具体的には、ポートがどのＳＬＰＲにも割り当てられていない場合には、「割り当て状態」の項目には「０」が登録され、ポートが何れかのＳＬＰＲに割り当てられている場合には、「割り当て状態」の項目には「ＳＬＰＲ番号」が登録される。
【００６６】
図２１はキャッシュ割り当て状態テーブル９０８を示している。同テーブル９０８は、論理分割された分割単位としての個々のキャッシュメモリがＳＬＰＲに割り当てられているか否かを示すテーブルであり、「キャッシュ番号」と「割り当て状態」が対応付けられて登録されている。具体的には、キャッシュメモリがどのＳＬＰＲにも割り当てられていない場合には、「割り当て状態」の項目には「０」が登録され、キャッシュメモリが何れかのＳＬＰＲに割り当てられている場合には、「割り当て状態」の項目には「ＳＬＰＲ番号」が登録される。
【００６７】
図２２はＳＬＰＲ割り当て状態テーブル９０９を示している。同テーブル９０９は、各ＳＬＰＲにリソース（ポート、ＬＤＥＶ、キャッシュメモリ等）が一つでも割り当てられているか否かを示すテーブルであり、「ＳＬＰＲ番号」と「割り当て状態」が対応付けられて登録されている。具体的には、ＳＬＰＲにポート、ＬＤＥＶ、キャッシュメモリ等の何れのリソースも全く割り当てられていない場合には、「０」が登録され、ＳＬＰＲにポート、ＬＤＥＶ、キャッシュメモリ等の何れかのリソースが割り当てられている場合には、「１」が登録される。
【００６８】
図２３はストレージサブシステム６００のＳＬＰＲ構成変更を行う各処理手順を概略的に記述したシーケンス図である。ユーザがスーパーユーザに対して、論理グループの構成変更要求を行うと（Ｓ１０１）、これを受けて、スーパーユーザはサブシステム管理者に対して、ＳＬＰＲの構成変更要求を行う（Ｓ１０２）。すると、サブシステム管理者は、管理端末１６０が提供するユーザインターフェースを通じて、管理端末１６０に対して、ＳＬＰＲの構成変更要求を行う（Ｓ１０３）。これを受けて、管理端末は、ＳＬＰＲ構成変更処理を実行する（Ｓ１０４）。ＳＬＰＲ構成変更処理の詳細については後述する。
【００６９】
管理端末１６０は、ＳＬＰＲ構成変更処理を実行した後、サブシステム管理者に対して、ＳＬＰＲ構成変更確認通知をする（Ｓ１０５）。これを受けて、サブシステム管理者は、スーパーユーザに対して、ＳＬＰＲ構成変更が完了したことを通知する（Ｓ１０６）。すると、スーパーユーザは、ディスカバリ実行ワークフローを実施する（Ｓ１０７）。ディスカバリ実行ワークフローの詳細については後述する。スーパーユーザは、ディスカバリ実行ワークフローを実施した後に、ユーザに対して、論理グループの構成変更が完了したことを通知する（Ｓ１０８）。
【００７０】
図２４は上述したＳＬＰＲ構成変更処理ルーチン（Ｓ１０４）の各処理手順を概略的に記述したフローチャートである。同ルーチンが呼び出されると、管理端末１６０は、サブシステム管理者からのログイン要求に対して、ユーザＩＤ及びパスワード認証を行う（Ｓ２０１）。ユーザＩＤ及びパスワード認証の詳細については、後述する。ここで、ユーザＩＤ及びパスワード認証が失敗した場合には（Ｓ２０２；ＹＥＳ）、ログインユーザはアクセス権限者ではないので、管理端末１６０はＳＬＰＲ構成変更処理ルーチンを抜ける。
【００７１】
一方、ユーザＩＤ及びパスワード認証が成功した場合には（Ｓ２０２；ＮＯ）、管理端末１６０は、ログインユーザがサブシステム管理者であるか否かを判定する（Ｓ２０３）。ログインユーザがサブシステム管理者でない場合には（Ｓ２０３；ＮＯ）、ストレージサブシステム６００のＳＬＰＲ構成変更を行うことができないので、ＳＬＰＲ構成変更処理ルーチンを抜ける。
【００７２】
ログインユーザがサブシステム管理者である場合であって（Ｓ２０３；ＹＥＳ）、ＳＬＰＲの削除が要求されている場合には（Ｓ２０４；ＹＥＳ）、管理端末１６０は、ＳＬＰＲ削除処理を行う（Ｓ２０５）。ＳＬＰＲ削除処理の詳細については、後述する。ＳＬＰＲの削除が要求されていない場合であって（Ｓ２０４；ＮＯ）、ＳＬＰＲ作成処理が要求されている場合には、管理端末１６０は、ＳＬＰＲ作成処理を行う（Ｓ２０６）。ＳＬＰＲ作成処理の詳細については、後述する。尚、ＳＬＰＲにリソースを追加する場合には、一旦、当該ＳＬＰＲを削除してから、新規に作成し直す必要がある。
【００７３】
図２５は上述したユーザＩＤ及びパスワード認証処理ルーチン（Ｓ２０１）を記述したフローチャートである。この認証処理においては、管理端末１６０は、共有メモリ１２０に格納されているストレージ管理者テーブル９０１を参照することにより、ログインユーザがアクセス権限者であるか否かを判断する。管理端末１６０は、ユーザＩＤが正しく（Ｓ３０１；ＹＥＳ）、しかもパスワードが正しい場合に（Ｓ３０２；ＹＥＳ）、認証が成功したものと判断する。一方、ユーザＩＤが正しくないか（Ｓ３０１；ＮＯ）、或いはパスワードが正しくない場合には（Ｓ３０２；ＮＯ）、管理端末１６０は、認証が失敗したものと判断する（Ｓ３０３）。
【００７４】
図２６はＳＬＰＲ削除処理ルーチン（Ｓ２０５）を記述したフローチャートである。同ルーチンが呼び出されると、管理端末１６０は、共有メモリ１２０に格納されているＳＬＰＲ割り当て状態テーブル９０９を参照し、割り当て状態が「１」に設定されているＳＬＰＲを表示する（Ｓ４０１）。次いで、管理端末１６０は、リソース削除処理を行う（Ｓ４０２）。リソース削除処理の詳細については、後述する。そして、更にＳＬＰＲを削除する必要がある場合は（Ｓ４０３；ＹＥＳ）、管理端末１６０は、Ｓ４０１の処理に戻る。ＳＬＰＲを削除する必要がない場合は（Ｓ４０３；ＮＯ）、管理端末１６０は、ＳＬＰＲ削除処理ルーチンを抜ける。
【００７５】
図２７はリソース削除処理ルーチン（Ｓ４０２）を記述したフローチャートである。同ルーチンが呼び出されると、管理端末１６０は、ＬＤＥＶパーティションテーブル９０２を参照し、削除対象のＳＬＰＲに属するＬＤＥＶ番号を全て削除するとともに、この削除したＬＤＥＶ番号をＳＬＰＲ番号「０」のＬＤＥＶ番号に追加する（Ｓ５０１）。そして、管理端末１６０は、ＬＤＥＶ割り当て状態テーブル９０６を参照し、削除されたＬＤＥＶ番号の割り当て状態を「０」にする（Ｓ５０２）。
【００７６】
次いで、管理端末１６０は、ポートパーティションテーブル９０３を参照し、削除対象のＳＬＰＲに属するポート番号を全て削除するとともに、この削除したポート番号をＳＬＰＲ番号「０」のポート番号に追加する（Ｓ５０３）。そして、管理端末１６０は、ポート割り当て状態テーブル９０７を参照し、削除されたポート番号の割り当て状態を「０」にする（Ｓ５０４）。
【００７７】
次いで、管理端末１６０は、キャッシュパーティションテーブル９０５を参照し、削除対象のＳＬＰＲに属するキャッシュ番号を全て削除するとともに、この削除したキャッシュ番号をＳＬＰＲ番号「０」のキャッシュ番号に追加する（Ｓ５０５）。そして、管理端末１６０は、キャッシュ割り当て状態テーブル９０８を参照し、削除されたキャッシュ番号の割り当て状態を「０」にする（Ｓ５０６）。
【００７８】
次いで、管理端末１６０は、ＳＬＰＲ割り当て状態テーブル９０９を参照し、削除対象のＳＬＰＲ番号の割り当て状態を「０」にする（Ｓ５０７）。そして、管理端末１６０は、ストレージ管理者テーブル９０１の管理対象から削除対象のＳＬＰＲを削除する（Ｓ５０８）。
【００７９】
図２８はＳＬＰＲ作成処理ルーチン（Ｓ２０６）を記述したフローチャートである。同ルーチンが呼び出されると、管理端末１６０は、ＳＬＰＲ割り当て状態テーブル９０９を参照して、ポート、ＬＤＥＶ、キャッシュメモリ等の全てのリソースが未割り当てのＳＬＰＲ番号を表示する（Ｓ６０１）。次いで、管理端末１６０は、ＬＤＥＶ割り当て状態テーブル９０６を参照して、ＳＬＰＲに未割り当てなＬＤＥＶ番号を表示する（Ｓ６０２）。そして、選択されたＬＤＥＶ番号を、選択されたＳＬＰＲに追加する処理を行う（Ｓ６０３）。ＬＤＥＶ番号追加処理の詳細については、後述する。
【００８０】
次いで、管理端末１６０は、ポート割り当て状態テーブル９０６を参照して、ＳＬＰＲに未割り当てなポート番号を表示する（Ｓ６０４）。そして、選択されたポート番号を、選択されたＳＬＰＲに追加する処理を行う（Ｓ６０５）。ポート番号追加処理の詳細については、後述する。
【００８１】
次いで、管理端末１６０は、キャッシュ割り当て状態テーブル９０８を参照して、ＳＬＰＲに未割り当てなキャッシュ番号を表示する（Ｓ６０６）。そして、選択されたキャッシュ番号を、選択されたＳＬＰＲに追加する処理を行う（Ｓ６０７）。キャッシュ番号追加処理の詳細については、後述する
【００８２】
次いで、更にＳＬＰＲ作成を行う場合には（Ｓ６０８；ＹＥＳ）、管理端末１６０は、Ｓ６０１の処理に戻る。ＳＬＰＲ作成を行わない場合には（Ｓ６０８；ＮＯ）、管理端末１６０は、ＳＬＰＲ作成処理ルーチンを抜ける。
【００８３】
図２９はＬＤＥＶ番号追加処理ルーチン（Ｓ６０３）を記述したフローチャートである。同ルーチンが呼び出されると、管理端末１６０は、ＬＤＥＶパーティションテーブル９０２を参照して、選択されたＳＬＰＲ番号に、選択された全てのＬＤＥＶ番号を追加するとともに、その追加したＬＤＥＶ番号をＳＬＰＲ番号「０」から削除する（Ｓ７０１）。次いで、管理端末１６０は、ＬＤＥＶ割り当て状態テーブル９０６を参照して、選択された全てのＬＤＥＶ番号の割り当て状態を、選択されたＳＬＰＲ番号に変更する（Ｓ７０２）。
【００８４】
図３０はポート番号追加処理ルーチン（Ｓ６０５）を記述したフローチャートである。同ルーチンが呼び出されると、管理端末１６０は、ポートパーティションテーブル９０３を参照して、選択されたＳＬＰＲ番号に、選択された全てのポート番号を追加するとともに、その追加したポート番号をＳＬＰＲ番号「０」から削除する（Ｓ８０１）。次いで、管理端末１６０は、ポート割り当て状態テーブル９０７を参照して、選択された全てのポート番号の割り当て状態を、選択されたＳＬＰＲ番号に変更する（Ｓ８０２）。
【００８５】
図３１はキャッシュ番号追加処理ルーチン（Ｓ６０７）を記述したフローチャートである。同ルーチンが呼び出されると、管理端末１６０は、キャッシュパーティションテーブル９０５を参照して、選択されたＳＬＰＲ番号に、選択された全てのキャッシュ番号を追加するとともに、その追加したキャッシュ番号をＳＬＰＲ番号「０」から削除する（Ｓ９０１）。次いで、管理端末１６０は、キャッシュ割り当て状態テーブル９０８を参照して、選択された全てのキャッシュ番号の割り当て状態を、選択されたＳＬＰＲ番号に変更する（Ｓ９０２）。
【００８６】
図３２は上述したディスカバリ実行ワークフロー（Ｓ１０７）の各処理手順を概略的に記述したシーケンス図である。スーパーユーザが管理サーバ７００のユーザインターフェースを通じて、ストレージ管理ソフトウェア８００にディスカバリ要求を行うと（Ｓ１００１）、ストレージ管理ソフトウェア８００は管理端末１６０に対して、ＬＤＥＶ情報要求コマンドを発行する（Ｓ１００２）。ＬＤＥＶ情報要求コマンドは、ストレージサブシステム６００内に設定されたＬＤＥＶ情報の取得を要求するコマンドである。当該コマンドには、スーパーユーザのユーザＩＤ及びパスワードと、ＬＤＥＶ情報の取得を希望するＳＬＰＲ番号が含まれる。ＳＬＰＲ番号は、複数指定することが可能である。ストレージサブシステム６００内の全てのＳＬＰＲのＬＤＥＶ情報の取得を希望する場合は、ＳＬＰＲ番号に替えて、Ａｌｌを指定することもできる。
【００８７】
ＬＤＥＶ情報要求コマンドを受信した管理端末１６０は、ストレージサブシステム６００からＬＤＥＶ情報を取得すると（Ｓ１００３）、ＬＤＥＶ番号とＳＬＰＲ番号をストレージ管理ソフトウェア８００に送信するとともに、情報取得完了通知を発行する（Ｓ１００４）。これを受けて、ストレージ管理ソフトウェア８００は、スーパーユーザに対し、ストレージサブシステム６００に設定されたＬＤＥＶのグルーピングを、ストレージ管理ソフトウェア８００が管理するストレージグループのグルーピングに反映させるか否かを確認する（Ｓ１００５）。この確認においては、例えば、管理サーバ７００が提供するユーザインターフェースにウィンドウ表示等を行って、スーパーユーザの意思を確認するのが好ましい。グルーピングの反映確認を求める理由については、後述する。
【００８８】
ここで、スーパーユーザが全てのＳＬＰＲ情報を取得し（Ｓ１００６；ＹＥＳ）、しかもストレージサブシステム６００の各ＳＬＰＲのＬＤＥＶ構成を、ストレージ管理ソフトウェア８００の各論理グループのＬＤＥＶ構成に反映させることを希望している場合には（Ｓ１００７；ＹＥＳ）、ストレージ管理ソフトウェア８００は、両者のＬＤＥＶ構成が完全一致するように、ストレージ管理ソフトウェア８００が管理する各論理グループのＬＤＥＶ構成を変更する（Ｓ１００８）。ＬＤＥＶ構成情報変更処理の詳細については、後述する。
【００８９】
次いで、ストレージ管理ソフトウェア８００は、スーパーユーザに対して、ＬＤＥＶの構成変更が完了した旨の通知を行う（Ｓ１００９）。これを受けて、スーパーユーザがストレージ管理ソフトウェア８００に対して、論理グルーピングの割り当てを要求すると（Ｓ１０１０）、ストレージ管理ソフトウェア８００は、ユーザに論理グループを割り当てる処理を行う（Ｓ１０１１）。ユーザに論理グループ割り当てる処理の詳細については、後述する。次いで、ストレージ管理ソフトウェア８００は、論理グループの割り当て処理が完了した旨をスーパーユーザに通知する（Ｓ１０１２）。
【００９０】
図３３はＬＤＥＶ情報取得処理ルーチン（Ｓ１００３）を記述したフローチャートである。同ルーチンが呼び出されると、管理端末１６０は、ストレージ管理者テーブル９０１を参照して、ＬＤＥＶ情報取得コマンドに含まれるユーザＩＤ及びパスワードがサブシステム管理者又はパーティション管理者のユーザＩＤ及びパスワードに一致するか否かを判断する（Ｓ１１０１）。何れか一方が正しくない場合には（Ｓ１１０１；ＮＯ）、認証は失敗し（Ｓ１１０６）、管理端末１６０は、ＬＤＥＶ情報取得処理ルーチンを抜ける。
【００９１】
一方、ユーザＩＤ及びパスワード認証が成功すると（Ｓ１１０１；ＹＥＳ）、管理端末１６０は、ログインユーザがサブシステム管理者であるか否かを判断する（Ｓ１１０２）。ログインユーザがサブシステム管理者ではないが（Ｓ１１０２；ＮＯ）、ＬＤＥＶ情報取得コマンドに含まれるＳＬＰＲ番号がログインユーザのアクセス権限を有する管理対象である場合には（Ｓ１１０３；ＹＥＳ）、管理端末１６０は、当該コマンドで指定されたＳＬＰＲ番号とＬＤＥＶ番号の対応関係を示す情報をＬＤＥＶパーティションテーブル９０２から抽出し、この抽出したＳＬＰＲ番号とＬＤＥＶ番号の対応関係から成るテーブル（以下、ＬＤＥＶパーティションテーブルＡと称する。）を作成する（Ｓ１１０４）。ＬＤＥＶパーティションテーブルＡは、ＬＤＥＶパーティションテーブル９０２の複製である。
【００９２】
一方、ログインユーザがサブシステム管理者であって（Ｓ１１０２；ＹＥＳ）、しかもＬＤＥＶ情報取得コマンドに含まれるＳＬＰＲ番号がＡｌｌ指定である場合（Ｓ１１０５；ＹＥＳ）、或いは当該コマンドに含まれるＳＬＰＲ番号がＡｌｌ指定ではないが（Ｓ１１０５；ＮＯ）、当該コマンドに含まれるＳＬＰＲ番号がログインユーザのアクセス権限を有する管理対象である場合には（Ｓ１１０３；ＹＥＳ）、管理端末１６０は、当該コマンドで指定されたＳＬＰＲ番号とＬＤＥＶ番号の対応関係を示す情報をＬＤＥＶパーティションテーブル９０２から抽出し、この抽出したＳＬＰＲ番号とＬＤＥＶ番号の対応関係から成るＬＤＥＶパーティションテーブルＡを作成する（Ｓ１１０４）。
【００９３】
図３４はＬＤＥＶ構成情報変更処理ルーチン（Ｓ１００８）を記述したフローチャートである。同ルーチンが呼び出されると、ストレージ管理ソフトウェア８００は、図３６に示すように、ＬＤＥＶパーティションテーブルＡに登録されているＳＬＰＲを、そのＳＬＰＲ番号の小さい順に選択していく（Ｓ１２０１）。次いで、ストレージ管理ソフトウェア８００は、選択されたＳＬＰＲ内のＬＤＥＶを選択する（Ｓ１２０２）。そして、パーティション分割後ストレージグループテーブル８０３からストレージグループを選択し、図３６の矢印で示すように、ＬＤＥＶ番号を格納していく（Ｓ１２０３）。このとき、ストレージグループ番号「ｍ」と、ＳＬＰＲ番号「ｍ」には、同一ＬＤＥＶ番号が格納されなければならない。但し、ｍは０以上Ｍ以下の整数とする。ＭはＳＬＰＲ番号の最大値である。
【００９４】
ストレージ管理ソフトウェア８００は、上述の如く、ＬＤＥＶパーティションテーブルＡからパーティション分割後ストレージグループテーブル８０３にＬＤＥＶ番号を順次格納していき、ＬＤＥＶパーティションテーブルＡの選択されたＳＬＰＲ内に未選択のＬＤＥＶ番号が存在する場合には（Ｓ１２０４；ＮＯ）、Ｓ１２０２〜Ｓ１２０４の処理を再び繰り返す。ＬＤＥＶパーティションテーブルＡの選択されたＳＬＰＲ内のＬＤＥＶ番号を全て選択した場合は（Ｓ１２０４；ＹＥＳ）、ストレージ管理ソフトウェア８００は、ＬＤＥＶパーティションテーブルＡに未選択のＳＬＰＲが残存しているか否かを判断する（Ｓ１２０５）。未選択のＳＬＰＲが残存している場合には（Ｓ１２０５；ＮＯ）、ストレージ管理ソフトウェア８００は、ストレージグループ番号を「１」だけ増加し（Ｓ１２０９）、Ｓ１２０１〜Ｓ１２０５の処理を再び繰り返す。
【００９５】
ストレージ管理ソフトウェア８００は、ＬＤＥＶパーティションテーブルＡのＳＬＰＲを全て選択した場合には（Ｓ１２０５；ＹＥＳ）、管理サーバ管理者テーブル８０４の各ユーザＩＤに対応する管理対象を削除する（Ｓ１２０６）。そして、ストレージ管理ソフトウェア８００は、ストレージグループテーブル８０２に、パーティション分割後ストレージグループテーブル８０３の情報を上書きし（Ｓ１２０７）、ストレージグループ割り当て状態テーブル８０６を「０」に初期化する（Ｓ１２０８）。
【００９６】
図３５は論理グループの割り当て処理ルーチン（Ｓ１０１１）を記述したフローチャートである。同ルーチンが呼び出されると、ストレージ管理ソフトウェア８００は、管理サーバ管理者テーブル８０４を参照し、ストレージグループの割り当てが可能なユーザ一覧表を管理サーバ７００のユーザインターフェースに表示する（Ｓ１３０１）。次いで、ストレージ管理ソフトウェア８００は、ストレージグループ割り当て状態テーブル８０６を参照し、割り当て状態が「０」のストレージグループ番号を表示し（Ｓ１３０２）、ユーザへのストレージグループの割り当てを行う（Ｓ１３０３）。
【００９７】
ここで、上述のＳ１００５の処理において、グルーピングの反映確認を求める理由について説明する。ＳＬＰＲ機能を搭載したストレージサブシステム６００においては、リソースを複数のユーザに提供するために、パーティション分割するだけでなく、ストレージサブシステム６００自体の性能保証の観点から、パーティション分割する場合もある。例えば、ＬＤＥＶには、アクセス頻度が多いＬＤＥＶや、アクセス頻度は少ないが一定の性能を保証したいＬＤＥＶなど、様々なタイプのＬＤＥＶが存在する。このような場合、同じ種類のＬＤＥＶをまとめて、ＳＬＰＲとしてグルーピングすることにより、ストレージサブシステム６００の性能を保証する場合がある。例えば、図３７において、ＬＤＥＶ１，５，８はアクセス頻度が多いＬＤＥＶであり、ＬＤＥＶ４，７，８はアクセス頻度が少ないが一定の性能を保証したいＬＤＥＶであり、ＬＤＥＶ２，３，６，９はその他のＬＤＥＶであるとすると、アクセス頻度が高いＬＤＥＶ１，５，８をまとめて、ＳＬＰＲ１としてグルーピングすることで、ＳＬＰＲ１以外の他のＬＤＥＶのアクセス性能低下を防ぐことができる。また、一定の性能を保証したいＬＤＥＶ４，７，８に入出力されるデータを一時的に記憶するキャッシュメモリ２に多くの記憶領域を割り当てることで、ストレージサブシステム６００の性能を保証することができる。
【００９８】
一方、ストレージ管理ソフトウェア８００において管理されるストレージグループは、主として、ユーザの管理の面から設定されているため、一つのストレージグループには、各種の性能を有するＬＤＥＶが混在している場合がある。ストレージサブシステム６００に設定されたＬＤＥＶのグルーピングを、ストレージ管理ソフトウェア８００が管理するストレージグループのグルーピングに反映させてしまうと、ユーザが設定したストレージグループのＬＤＥＶ構成が崩れてしまう。このような理由から、性能保証の観点からストレージサブシステム６００のリソースがパーティション分割されている場合は、必ずしも、ストレージサブシステム６００に設定されたＬＤＥＶのグルーピングを、ストレージ管理ソフトウェア８００が管理するストレージグループのグルーピングに反映させる必要はない。このため、Ｓ１００５の処理では、グルーピングの反映確認を求めている。
【００９９】
本実施形態によれば、ストレージサブシステム６００のＳＬＰＲ毎に設定されたＬＤＥＶのグループ構成と、ストレージグループを構成するＬＤＥＶのグループ構成とが一致するように、ストレージグループを構成するＬＤＥＶをストレージ管理ソフトウェア８００がグルーピングするので、グループ構成の不一致を解消できる。
【０１００】
また、例えば、ストレージサブシステム６００の性能保証の観点、又は管理の観点に基づいて、ストレージサブシステム６００のＳＬＰＲ毎に設定されたＬＤＥＶのグループ構成を、ストレージグループを構成するＬＤＥＶのグループ構成に反映させるべきか否かを選択できる。
【図面の簡単な説明】
【０１０１】
【図１】本実施形態のストレージサブシステムの構成図である。
【図２】チャネル制御部のシステム構成図である。
【図３】ディスク制御部のシステム構成図である。
【図４】管理端末のシステム構成図である。
【図５】管理サーバのシステム構成図である。
【図６】グルーピングの対応関係を示す図である。
【図７】論理グループの階層構造を示す図である。
【図８】論理グループテーブルの説明図である。
【図９】ストレージグループテーブルの説明図である。
【図１０】パーティション分割後ストレージグループテーブルの説明図である。
【図１１】管理サーバ管理者テーブルの説明図である。
【図１２】管理ソフトストレージ管理者テーブルの説明図である。
【図１３】ストレージグループ割り当て状態テーブルの説明図である。
【図１４】ストレージ管理者テーブルの説明図である。
【図１５】ＬＤＥＶパーティションテーブルの説明図である。
【図１６】ポートパーティションテーブルの説明図である。
【図１７】キャッシュパーティションアドレステーブルの説明図である。
【図１８】キャッシュパーティションテーブルの説明図である。
【図１９】ＬＤＥＶ割り当て状態テーブルの説明図である。
【図２０】ポート割り当て状態テーブルの説明図である。
【図２１】キャッシュ割り当て状態テーブルの説明図である。
【図２２】ＳＬＰＲ割り当て状態テーブルの説明図である。
【図２３】リソースの構成変更手順を記述したシーケンス図である。
【図２４】ＳＬＰＲ構成変更処理ルーチンのフローチャートである。
【図２５】ユーザＩＤ及びパスワード認証処理ルーチンのフローチャートである。
【図２６】ＳＬＰＲ削除処理ルーチンのフローチャートである。
【図２７】リソース削除処理ルーチンのフローチャートである。
【図２８】ＳＬＰＲ作成処理ルーチンのフローチャートである。
【図２９】ＬＤＥＶ番号追加処理ルーチンのフローチャートである。
【図３０】ポート番号追加処理ルーチンのフローチャートである。
【図３１】キャッシュ番号追加処理ルーチンのフローチャートである。
【図３２】ディスカバリ実行ワークフローのシーケンス図である。
【図３３】ＬＤＥＶ情報取得処理ルーチンのフローチャートである。
【図３４】ＬＤＥＶ構成情報変更処理ルーチンのフローチャートである
【図３５】論理グループの割り当て処理ルーチンのフローチャートである。
【図３６】グルーピングを反映させる概念を示す図である。
【図３７】グルーピングの対応関係を示す図である。
【符号の説明】
【０１０２】
１６０…管理端末
６００…ストレージサブシステム
７００…管理サーバ
８００…ストレージ管理ソフトウェ
８０１…論理グループテーブル
８０２…ストレージグループテーブル
８０３…パーティション分割後ストレージグループテーブル
８０４…管理サーバ管理者テーブル
８０５…管理ソフトストレージ管理者テーブル
８０６…ストレージグループ割り当て状態テーブル
９０１…ストレージ管理者テーブル
９０２…ＬＤＥＶパーティションテーブル
９０３…ポートパーティションテーブル
９０４…キャッシュパーティションアドレステーブル
９０５…キャッシュパーティションテーブル
９０６…ＬＤＥＶ割り当て状態テーブル
９０７…ポート割り当て状態テーブル
９０８…キャッシュ割り当て状態テーブル
９０９…ＳＬＰＲ割り当て状態テーブル
【図１】
2006260284.tif 000003
【図２】
2006260284.tif 000004
【図３】
2006260284.tif 000005
【図４】
2006260284.tif 000006
【図５】
2006260284.tif 000007
【図６】
2006260284.tif 000008
【図７】
2006260284.tif 000009
【図８】
2006260284.tif 000010
【図９】
2006260284.tif 000011
【図１０】
2006260284.tif 000012
【図１１】
2006260284.tif 000013
【図１２】
2006260284.tif 000014
【図１３】
2006260284.tif 000015
【図１４】
2006260284.tif 000016
【図１５】
2006260284.tif 000017
【図１６】
2006260284.tif 000018
【図１７】
2006260284.tif 000019
【図１８】
2006260284.tif 000020
【図１９】
2006260284.tif 000021
【図２０】
2006260284.tif 000022
【図２１】
2006260284.tif 000023
【図２２】
2006260284.tif 000024
【図２３】
2006260284.tif 000025
【図２４】
2006260284.tif 000026
【図２５】
2006260284.tif 000027
【図２６】
2006260284.tif 000028
【図２７】
2006260284.tif 000029
【図２８】
2006260284.tif 000030
【図２９】
2006260284.tif 000031
【図３０】
2006260284.tif 000032
【図３１】
2006260284.tif 000033
【図３２】
2006260284.tif 000034
【図３３】
2006260284.tif 000035
【図３４】
2006260284.tif 000036
【図３５】
2006260284.tif 000037
【図３６】
2006260284.tif 000038
【図３７】
2006260284.tif 000039