(57)【特許請求の範囲】
【請求項１】
ホスト・コンピュータと、第１の論理制御装置（ＬＣＵ）を含むストレージ・コントローラと、前記ホスト・コンピュータおよび前記第１のＬＣＵとの通信における論理的通信パスとを含むデータ処理システムにおいて、前記論理的通信パスを維持するための方法であって、
前記第１のＬＣＵを削除するステップと、
前記第１のＬＣＵに対するステータスをセットするステップと、
前記第１のＬＣＵのすべてまたは一部分を含み、前記第１のＬＣＵとは異なる第２のＬＣＵを構成するステップと、
前記第２のＬＣＵに対する第２のステータスを設定するステップと、
を含み、
前記論理的通信パスは、前記削除するステップ、前記セットするステップ、前記構成するステップ、および前記設定するステップの間維持され、
前記論理的通信パスは、前記第２のＬＣＵと通信を行い、
前記データ処理システムは前記ストレージ・コントローラとの通信におけるハードウェア管理コンソールを更に含み、
前記第１のＬＣＵを削除するためのコマンドを前記ハードウェア管理コンソールから受け取るステップを更に含み、
前記ストレージ・コントローラは複数個のＩ／Ｏコマンドを記憶するためのＩ／Ｏキューを更に含み、前記削除するステップの前に、いずれのエンキューされたＩ／Ｏコマンドも処理するステップを含み、
前記削除するステップの後、前記ホスト・コンピュータから新たなＩ／Ｏコマンドを受け取るステップと、
前記新たなＩ／Ｏコマンドをエンキューするステップと、
前記構成するステップの後、前記新たなＩ／Ｏコマンドを処理するステップと、
を更に含む、
方法。
【請求項２】
前記削除するステップの後、前記ホスト・コンピュータから新たなＩ／Ｏコマンドを受け取るステップと、
前記新たなＩ／Ｏコマンドを拒否するステップと、
前記ＬＣＵが一時的に利用不可能であることを前記ホスト・コンピュータに信号するステップと、
を更に含む、請求項１に記載の方法。
【請求項３】
前記構成するステップの後、前記論理的通信パスを有効化するステップを更に含む、請求項１に記載の方法。
【請求項４】
前記設定するステップは状態変更割込みを発生するステップを含む、請求項１に記載の方法。
【請求項５】
第１の論理的制御装置（ＬＣＵ）と、ホスト・コンピュータ及び前記第１のＬＣＵとの通信において論理的通信パスを維持するために配置されたコンピュータ可読プログラム・コードを含むコンピュータ可読媒体とを含み、前記コンピュータ可読プログラム・コードは生じるべき一連のコンピュータ可読プログラム・ステップを含み、前記ステップは請求項１乃至請求項４のいずれかに記載の方法におけるステップである、ストレージ・コントローラ。
【請求項６】
コンピュータ可読媒体におけるエンコードされたコンピュータ・プログラムであって、
前記コンピュータ・プログラムは、データ処理システムにおける論理的通信パスを維持するためにコンピュータ・プロセッサによって使用可能であり、前記データ処理システムは、ホスト・コンピュータと、第１の論理的制御装置(ＬＣＵ)を含むストレージ・コントローラと、前記ホスト・コンピュータ及び前記第１のＬＣＵとの通信における論理的通信パスとを含み、前記コンピュータ・プログラムは、コンピュータによって実行されるとき、請求項１乃至請求項４のいずれかに記載のステップを遂行するコンピュータ可読コードを含む、コンピュータ・プログラム。
【発明の詳細な説明】
【技術分野】
【０００１】
本発明は、データ処理システムにおいて１個または複数個の論理的通信パスを維持するための装置及び方法に関する。
【背景技術】
【０００２】
コンピューティング装置は情報を生成する。自動データ記憶システムに配置された複数個のデータ・ストレージを使用してそのような情報を格納することは、その分野では知られている。発信元のホスト・コンピュータは、ストレージ・コントローラとの通信において、そのストレージ・コントローラの論理的制御装置（ＬＣＵ）当たり複数個の論理的通信パスを使用することがある。種々の論理的パスから１個のボリュームをアクセスし得るように、ホスト・コンピュータは８個までの論理的パスを１個のパス・グループにグループ化する。パス・グループにおける１個の論理的通信パスが脱落するとき、ホスト・コンピュータは、ＬＣＵにおけるボリュームへのアクセスを継続するためにパス・グループの他のすべての論理的パスを保持する。しかし、すべての論理的パスが脱落するとき、ホスト・コンピュータは、ＬＣＵにおけるボリュームへのアクセスを喪失する。これが生じ得る１つの状況は、ＬＣＵが削除されるときである。
【発明の概要】
【発明が解決しようとする課題】
【０００３】
本発明の目的は、ホスト・コンピュータ、第１の論理的制御装置（ＬＣＵ）を含むストレージ・コントローラ、並びにそのホスト・コンピュータおよび第１のＬＣＵとの通信における論理的通信パスを含むデータ処理システムにおいてその論理的通信パスを維持する方法を提供することにある。
【課題を解決するための手段】
【０００４】
本方法は、第１のＬＣＵを削除し、第１のＬＣＵに対して第１のステータスをセットする。しかる後、本方法は、第１のＬＣＵのすべてまたは一部分を含み、第１のＬＣＵとは異なる第２のＬＣＵを構成し、第２のＬＣＵに対する第２のステータスを設定する。第２のＬＣＵおよびホスト・コンピュータを論理的通信パスが相互接続する。本方法は、第１のＬＣＵの削除中その論理的通信パスを維持し、第１のステータスをセットし、第２のＬＣＵを構成し、第２のステータスを設定する。
【図面の簡単な説明】
【０００５】
【図１】データ・ストレージ・コントローラとの通信時のホスト・コンピュータを示すブロック図である。
【図２】ファブリックを介して相互に通信するホスト・コンピュータおよびストレージ・コントローラを示すブロック図である。
【図３】ストレージ・ライブラリを示すブロック図である。
【図４】ホスト・コンピュータとストレージ・コントローラ／ストレージ・ライブラリに配置された第１の論理制御装置とを相互接続する複数個の論理的パスを示すブロック図である。
【図５】図４の第１のＬＣＵが削除された後に維持される図４の複数個の論理的パスを示すブロック図である。
【図６】第２のＬＣＵと図４のホスト・コンピュータとを相互接続した図４の複数個の論理的パスを示すブロック図である。
【図７】本方法の例示的な実施態様を示すフローチャートである。
【図８】図７のフローチャートの下部に続くフローチャートである。
【発明を実施するための形態】
【０００６】
以下の記述では、添付図面を参照して本発明の好適な実施例が説明される。その図面では、同じ参照番号が同じまたは同様の要素を表わす。本明細書を通して、「１つの実施例」、「或る実施例」、または同様の用語の引用は、実施例に関連して記述された特定の特徴、構造あるいは特性が本発明の少なくとも１つの実施例に含まれていることを意味する。従って、本明細書を通して「１つの実施例における」、「或る実施例における」、および同様の用語の出現は、必ずしもすべて同じ実施例を指すものではない。
【０００７】
本発明の記述された特徴、構造、または特性を、１個または複数個の実施例として任意の適切な方法で組み合わせることも可能である。以下の説明では、本発明の実施例の十分な理解を得るために多数の特定の詳細部が再引用されている。しかし、１個または複数個の特定の詳細部なしでも、或いは他の方法、コンポーネント、材料等を用いて本発明を実施し得るということは当業者には明らかであろう。他の例では、周知の構造、材料、またはオペレーションは、発明の実施態様を不明瞭にしないために、詳しく表示または記述されない。
【０００８】
本明細書に添付された概略的なフローチャートは、一般的に論理的なフローチャート（例えば、図７および図８）として示される。図示された順序およびラベル付けされたステップは、それ自体、本方法の１つの実施例を表わす。図示の方法の１個または複数個のステップまたはそれの一部分に、機能、ロジック、または効果が等価である他のステップまたは方法が想起され得る。更に、使用されるフォーマットおよび記号は本方法の論理的なステップを説明するために与えられ、本方法の技術的範囲を限定するように解されるべきではない。フローチャートには種々のタイプの矢印および線が使用され得るが、それらは対応する方法（例えば図７および図８）の技術的範囲を限定するものと解されるべきではない。確かに、或る矢印または他のコネクタは、本方法の論理的なフローだけを表わすために使用されることがある。例えば、矢印は、図示の方法の列挙されたステップ間における未指定の期間を表わす待機または監視期間を表わすこともある。更に、特定の方法が生じる順序は、図示の対応するステップの順序に厳密に固執することも、固執しないこともある。
【０００９】
図１を参照すると、データ記憶システム２００は、コンピューティング装置３９０によって複数個のデータ記憶ドライブ１８０および／または複数個のデータ記憶ドライブ１９０を相互接続するストレージ・コントローラ２４０を含む。図１および図２に示された実施例では、ストレージ・コントローラ２４０は、コンピュータ可読媒体２３０、コンピュータ可読媒体２３０に書き込まれたキュー２４４、およびコンピュータ可読媒体に書き込まれた命令２４６を含む。ストレージ・コントローラ２４０は、更に、コントローラ２５０を含む。コントローラ２５０は、後述される本方法を実施するために命令２４４を利用する。
【００１０】
或る実施例では、ストレージ・コントローラ２４０は、ＳＣＳＩ（小型コンピュータ・システム・インターフェース）、ｉＳＣＳＩ（インターネットＳＣＳＩ）、ＳＡＳ（シリアル・アタッチＳＣＳＩ）、ファイバ・チャネル、ＳＣＳＩオーバ・ファイバ・チャネル、イーサネット、ファイバ・チャンネル・オーバ・イーサネット、Infiniband、およびＳＡＴＡ（シリアルＡＴＡ）から成るグループから選ばれたＩ／Ｏプロトコルを使用して、装置アダプタ１６５および１７５を介して複数個のデータ・ストレージ１９０と、並びに装置アダプタ１６６および１７６を介して複数個のデータ・ストレージ１９０と通信する。
【００１１】
或る実施例では、コンピューティング装置３９０は、データを生成してそのデータをストレージ・コントローラ２４０に供給するホスト・コンピュータを含む。ストレージ・コントローラ２４０は、複数個のデータ・ストレージ１８０および／または１９０のうちの１個もしくは複数個にそのデータを書き込む。更に、図１に示された実施例では、ストレージ・コントローラ２４０は、１個のホスト・コンピュータ３９０と通信する。別の実施例では、ストレージ・コントローラ２４０は、複数個のホスト・コンピュータと通信している。一般的な事柄として、ホスト・コンピュータ３９０は、Windows、AIX、Unix、MVS、UNIX等のようなオペレーティング・システムを含むメインフレーム、パーソナル・コンピュータ、ワークステーション、およびそれの組み合わせのようなコンピューティング装置を含む（なお、Windowsはマイクロソフト社の商標であり、AIXおよびMVSはIBM社の商標であり、UNIXは The Open Groupを介して排他的にライセンスされた商標であり、LINUXは Linus Torvaldの商標である）。
【００１２】
図２に示された実施例では、ホスト・コンピュータ３９０およびストレージ・コントローラ２４０がファブリック３１０を介して相互に通信する。或る実施例では、ファブリック３１０は、例えば、１個または複数個のFiberChannel（ＦＣ）スイッチ３１５を含む。或る実施例では、それらの１個または複数個のスイッチ３１５は１個または複数個の通常のルータ・スイッチを含む。図２に示された実施例では、１個または複数個のスイッチ３１５は、ストレージ・コントローラ２４０を介して、ストレージ・コントローラ２４０へ、およびストレージ・コントローラ２４０から、更に、データ・ストレージ１８０および／または１９０へおよびそれらのデータ・ストレージから情報を転送するために、任意のタイプのＩ／Ｏインターフェース、例えば、Fiber Channel、Infiniband、Gigabit Ethernet、Ethernet、TCP/IP、iSCSI、SCSII/Oインターフェース）を使用して、通信パス３９５ａおよび３９５ｂを介してストレージ・コントローラ２４０にホスト・コンピュータ３９０を相互接続する。
【００１３】
次に図３を参照すると、或る実施例では、ストレージ・コントローラ２４０が、例えば、限定なしに、データ・ストレージ・ライブラリ１００のようなデータ・ストレージ・ライブラリを含む。或る実施態様では、データ・ストレージ・ライブラリ１００は、同じハウジング内に配置された第１のクラスタ１０１Ａおよび第２のクラスタ１０１Ｂを含む。図３に示された実施態様では、データ・ストレージ・ライブラリ１００は、４つのホスト・ベイ１０１、１０６、１１１、および１１６に配置された複数個のホスト・アダプタ１０２−１０５、１０７ ―１１０、１１２ ―１１５、および１１７ ―１２０を含む。他の実施態様では、データ記憶システムは、１６個よりも少ないホスト・アダプタを含む。システムの任意の実施態様において配置されたホスト・アダプタの数に関係なく、それらのホスト・アダプタの各々は、中央処理要素／キャッシュ要素１３０および１４０の両方に対する等しいアクセスを持った共用資源を含む。
【００１４】
各ホスト・アダプタは、１個または複数個のFiber Channelポート、１個または複数個のFICONポート、１個または複数個のESCONポート、または１個または複数個のSCSIポートを含み得る。各ホスト・アダプタは、クラスタ１０１Ａおよび１０１Ｂ各々が任意のホスト・アダプタからＩ／Ｏを扱い得るように、およびいずれのクラスタのストレージ・コントローラ部分も、データ・ストレージ・ライブラリ１００と相互接続された物理的および／または論理的なすべての通信パスに対する通信パス・エラー率を監視し得るように、相互接続バス１２１を介してそのクラスタ１０１Ａおよび１０１Ｂの両方に接続される。
【００１５】
ストレージ・コントローラ部分１３０はプロセッサ１３２およびキャッシュ１３４を含む。或る実施態様では、ストレージ・コントローラ部分１３０は更にコンピュータ可読媒体１３３を含む。或る実施態様では、コンピュータ可読媒体１３３はランダム・アクセス・メモリを含む。或る実施態様では、コンピュータ可読媒体１３３は不揮発性メモリを含む。
【００１６】
ストレージ・コントローラ部分１４０はプロセッサ１４２およびキャッシュ１４４を含む。或る実施態様では、ストレージ・コントローラ部分１４０は更にコンピュータ可読媒体１４３を含む。或る実施態様では、コンピュータ可読媒体１４３はランダム・アクセス・メモリを含む。或る実施態様では、コンピュータ可読媒体は不揮発性メモリを含む。
【００１７】
Ｉ／Ｏ部分１６０は、装置アダプタ１６５、１６６、１６７、および１６８のような複数個の装置アダプタを含む。Ｉ／Ｏ部分１７０は、更に、装置アダプタ１７５、１７６、１７７、および１７８のような複数個の装置アダプタを含む。
【００１８】
システムの或る実施例では、１個または複数個のホスト・アダプタ、ストレージ・コントローラ部分１３０、および１個または複数個の装置アダプタが、データ記憶システムに配置された単一のカード上に一緒にパッケージにされる。同様に、或る実施例では、１個または複数個のホスト・アダプタ、ストレージ・コントローラ部分１４０、および１個または複数個の装置アダプタが、データ記憶システムに配置された別のカード上に配置される。これらの実施例では、システム１００は、複数個のデータ・ストレージと相互接続された２個のカードを含む。
【００１９】
図３に示された実施例では、１６個のデータ・ストレージが２個のアレイ、即ち、アレイ１８０および１９０に編成される。図３に示された実施例は２個のストレージ・アレイを示す。他の実施例では、データ記憶システムは２個よりも多くのストレージ・アレイを含む。各ストレージ・アレイは、１個または複数個の論理的装置のようにホスト・コンピュータには見える。
【００２０】
或る実施例では、１個または複数個のデータ・ストレージが、複数個のディスク・ドライブ装置１８０および／または１９０のようなハード・ディスク・ドライブ装置を含む。或る実施例では、複数個のディスク・ドライブ装置１８０および／または１９０はＲＡＩＤ（新磁気ディスク制御機構）プロトコルを利用する。或る実施例では、複数個のディスク・ドライブ装置１８０および／または１９０は、アレイがＲＡＩＤに従って構成されないＪＢＯＤアレイ（即ち、Just a Bunch Of Disk）とも呼ばれるものを含む。
【００２１】
図３に示された実施例は、２個のストレージ・アレイを示す。他の実施例では、データ・ストレージ・ライブラリ１００が単一のストレージ・アレイを含む。更に別の実施例では、データ・ストレージ・ライブラリ１００は２個よりも多くのストレージ・アレイを含む。
【００２２】
図１および図２に示された実施例では、ホスト・コンピュータ３９０がチャンネル・パス識別子（ＣＨＰid）３９１を含み、物理的通信パス３９５を介して、ストレージ・コントローラ２４０に配置されたホスト・アダプタ１０２に相互接続される。図１および図２に示された実施例は、１個の物理的通信リンクを介してストレージ・コントローラ２４０と相互接続されたホスト・コンピュータ３９０を示す。他の実施例では、ホスト・コンピュータ３９０は、複数個の物理的通信リンクを備えたストレージ・コントローラと相互接続される。 
【００２３】
或る実施例では、物理的な通信リンク３９５が２５６個までの論理的通信パスを含むように構成され得る。或る実施例では、物理的通信リンク３９５の論理的構成はホスト・コンピュータ３９０によって設定される。或る実施例では、物理的通信リンク３９５の論理的構成はストレージ・コントローラ２４０によって設定される。或る実施例では、物理的通信リンク３９５の論理的構成は、ハードウェア管理コンソール（ＨＭＣ）２７０を使用して記憶システム管理者によって設定される。
【００２４】
図１および図２に示された実施例では、ストレージ・コントローラ２４０はＨＭＣ２７０と通信する。システム管理者はＨＭＣ２７０を利用することができ、とりわけ、ストレージ・コントローラ２４０、複数個のデータ・ストレージ１８０、および／または複数個のデータ・ストレージ１９０に対する論理的構成を設定する。そのような論理的構成では、ストレージ・コントローラ２４０、複数個のデータ・ストレージ１８０、および／または、複数個のデータ・ストレージ１９０は、複数個の論理的制御装置（ＬＣＵ）を含み得る。
【００２５】
或る実施例では、複数個の論理的パスが各ＬＣＵに対して設定され得る。或る実施例では、ＬＣＵは２５６個までのボリュームを含み得る。種々の論理的パスを使用して１個のボリュームをアクセスするために、８個までの論理的パスが１個のパス・グループに構成され得る。１個の論理的パスが失われる場合、ホストは、論理的パス・グループにおける１個または複数個の追加の論理的パスを使用して、ＬＣＵをアクセスし得る。しかし、すべての論理的パスが失われるとき、ホストはＬＣＵにおけるボリュームへのアクセスを喪失する。これが生じ得る１つの状態は、ＬＣＵが削除されたときである。
【００２６】
そのような状況では、指定された１個または複数個のボリュームが利用可能ではないというステータス表示によって新たなＩ／Ｏコマンドは拒絶されるが、ボリュームへのすべてのアクティブな入力／出力（Ｉ／Ｏ）は完了することを許容される。一旦ＬＣＵにおけるすべてのボリュームが利用不可能のステータスをマークされてしまうと、ホストからＬＣＵへのすべての論理的パスが削除される。
【００２７】
ホスト・コンピュータが論理的パスの喪失の通知を受け取るとき、ホストは、Establish Logical Path（ＥＬＰ）をストレージ・コントローラに送る。ＬＣＵが削除されたので、ＥＬＰコマンドは利用可能でない資源によって拒否される。最後にホスト・コンピュータは故障状態にあるものとして論理的パスをマークする。
【００２８】
特に関心があるのは、ＬＣＵに属するボリュームの構成を変更するために、そのＬＣＵが単に一時的に削除され得る場合である。ボリュームの構成が更新された後、第２のＬＣＵが再作成され、新たなボリュームが第２のＬＣＵに割り当てられるか、または或るボリュームが第２のＬＣＵを構成するために第１のＬＣＵから削除される。その時点で、ストレージ・コントローラは、新たに作成されたＬＣＵにおいてボリュームに対するＩ／Ｏの準備ができている。しかし、ホスト・コンピュータへのすべての論理的パスが削除されてしまったので、ＬＣＵおよびそれのボリュームが利用可能であるということをホスト・コンピュータに知らせる方法がない。
【００２９】
ＬＣＵの削除は制御された環境におけるものであったので、ユーザは、ＬＣＵおよびボリュームが利用可能にされた後、そのボリュームをオンに変更するように決定し得る。ボリュームがオンに変更されるとき、ホスト・コンピュータはそのボリューム発見プロセスを開始するであろう。しかし、利用可能な論理的パスがないので、その発見は失敗し、ボリュームはボックスに入れられる。
【００３０】
ボックスに入れられたボリュームの問題に対する１つの解決方法は、削除されることになるＬＣＵに関連したチャンネル・パス識別子（ＣＨＰids）をオフに構成することである。そこで、ＬＣＵが回復した後、ユーザはそのパスをオンに変更し得る。しかし、この解決方法は、パスがオフに変更されようとするので、記憶システム管理者は、すべてのホスト・コンピュータ・ユーザに自分のアプリケーションを停止または終了させるように通知することを必要とする。関連する多数のホスト・コンピュータが存在するかもしれないので、記憶システム管理者は、すべてのホストからのすべてのＣＨＰidsがオフ構成されたことを確かめなければならない。ＬＣＵおよびボリュームが再び作成された後、記憶システム管理者は、ハードウェア管理コンソールを利用してＣＨＰidsをオフに構成することができる。このシーケンスは論理的パスをオンラインにうまく復旧させるであろう。そこで、記憶システム管理者は、ＬＣＵの除去で影響を受けたすべてのホストからのすべてのボリュームをオンに変更しなければならない。
【００３１】
ＣＨＰidsをオフおよびオンに構成することはその状況に対する満足な解決方法ではない。ＣＨＰidsがオフであるとき、論理的パスおよびパス・グループは削除され、ＣＨＰidsがオンであるとき、そのパスは再設定される。更に、作成されるパス・グループはやがて変化する。これの最終結果は、パスとパス・グループが作成されている間にホスト・コンピュータのパフォーマンスが低下するということである。
【００３２】
従って、ＬＣＵが削除された後、論理的パスおよびパス・グループを維持するための方法が必要となる。図７および図８は、データ処理システムにおいて論理的通信パスを維持するための方法の例示的な実施態様のステップを要約する。
【００３３】
ステップ５０５において、本方法は、ホスト・コンピュータ、ストレージ・コントローラ、並びに、ホスト・コンピュータおよびストレージ・コントローラを相互接続する１個または複数個の物理的通信リンクを含むデータ記憶システムを提供する。或る実施例では、そのデータ処理システムは、チャンネル・パス識別子３９１（図１および図２）のようなチャンネル・パス識別子を含むホスト・コンピュータを含む。或る実施例では、ストレージ・コントローラは、データ・ストレージ・ライブラリ１００（図３）のようなデータ・ストレージ・ライブラリを含み、クラスタ１０１Ａ（図３）および１０１Ｂ（図３）のような２個のクラスタを含む。なお、各クラスタは、クラスタ１０１Ａに配置されたストレージ・コントローラ部分１３０およびクラスタ１０１Ｂに配置されたストレージ・コントローラ部分１４０のようなストレージ・コントローラ部分を含む。
【００３４】
ステップ５１０において、本方法は、データ記憶システムに対する論理的構成を設定する。その論理的構成は複数個の論理的制御装置（ＬＣＵ）を含む。或る実施例では、ステップ５１０は、ステップ５０５のストレージ・コントローラによって遂行される。或る実施例では、ステップ５１０は、ステップ５０５のストレージ・コントローラとの通信時に、ハードウェア管理コンソールＨＭＣ２７０のようなＨＭＣを使用してストレージ・システム管理者により遂行される。或る実施例では、ステップ５１０はステップ５０５のホスト・コンピュータによって遂行される。
【００３５】
ステップ５１５において、本方法は、ホスト・コンピュータおよび第１のＬＣＵを相互接続する１個または複数個の論理的パスを構成する。例えば、図４に示された実施例では、ホスト・コンピュータ３９０が３つの論理的パス、即ち、論理的パス４１０、４２０、および４３０を介して、ストレージ・コントローラ２４０に構成されたＬＣＵ４４０と相互接続される。
【００３６】
或る実施例では、ステップ５１５はステップ５０５のストレージ・コントローラによって遂行される。或る実施例では、ステップ５１５は、ステップ５０５のストレージ・コントローラとの通信時に記憶システム管理者がＨＭＣを使用することによって遂行される。或る実施例では、ステップ５１５はステップ５０５のホスト・コンピュータによって遂行される。
【００３７】
ステップ５２０において、本方法は、第１のＬＣＵを削除するためのコマンドを受け取る。或る実施例では、ステップ５２０のコマンドはストレージ・コントローラによって発生される。或る実施例では、ステップ５２０のコマンドは、ストレージ・コントローラとの通信時に記憶システム管理者がＨＭＣを使用することによって発生される。或る実施例では、ステップ５２０はステップ５０５のホスト・コンピュータによって遂行される。
【００３８】
ステップ５２５において、本方法は、第１のＬＣＵのためのすべてのアクティブＩ／Ｏを完成する。或る実施例では、ステップ５２５は、ステップ５０５のストレージ・コントローラによるステップ５２０のコマンドの前に受け取られた第１のＬＣＵを指定するすべてのＩ／Ｏコマンドを実行することを含む。或る実施例では、ステップ５２５はステップ５０５のストレージ・コントローラによって遂行される。
【００３９】
ステップ５３０において、本方法は、第１のＬＣＵが恒久的に削除されることをステップ５２０のコマンドが必要とするかどうかを判断する。或る実施例では、ステップ５３０はステップ５０５のストレージ・コントローラによって遂行される。或る実施例では、ステップ５３０は、ステップ５０５のストレージ・コントローラとの通信時に記憶システム管理者がＨＭＣを使用することによって遂行される。或る実施例では、ステップ５３０はステップ５０５のホスト・コンピュータによって遂行される。
【００４０】
第１のＬＣＵが恒久的に削除されるべきであるということを本方法がステップ５３０において決定する場合、本方法はステップ５３０からステップ５３５に移行する。その場合、本方法は、第１のＬＣＵにおいて構成された「ＣＣ３」状態を有するすべての論理的ボリュームをマークする。或る実施例では、ステップ５３５はステップ５０５のストレージ・コントローラによって遂行される。或る実施例では、ステップ５３５は、ステップ５０５のストレージ・コントローラとの通信時に記憶システム管理者がＨＭＣを使用することによって遂行される。或る実施例では、ステップ５３５はステップ５０５のホスト・コンピュータによって遂行される。
【００４１】
ステップ５４０において、本方法は、第１のＬＣＵおよびステップ５０５のホスト・コンピュータを相互接続するすべての論理的パスを除去する。或る実施例では、ステップ５１５はステップ５０５のストレージ・コントローラによって遂行される。或る実施例では、ステップ５１５は、ステップ５０５のストレージ・コントローラとの通信時に記憶システム管理者がＨＭＣを使用することによって遂行される。或る実施例では、ステップ５１５はステップ５０５のホスト・コンピュータによって遂行される。
【００４２】
第１のＬＣＵが恒久的に削除されるべきでないということを本方法がステップ５３０において判断する場合、本方法は、ステップ５３０からステップ５４５に移行し、ステップ５４５において第１のＬＣＵに対する第１のステータスを設定する。或る実施例では、ステップ５４５において、本方法は一時的に利用不可能であるとして第１のＬＣＵを指定する。或る実施例では、ステップ５４５はステップ５０５のストレージ・コントローラによって遂行される。或る実施例では、ステップ５４５は、ステップ５０５のストレージ・コントローラとの通信時にＨＭＣによって遂行される。或る実施例では、ステップ５４５は、ステップ５０５のストレージ・コントローラとの通信時に記憶システム管理者がＨＭＣを使用することによって遂行される。
【００４３】
ステップ５５０において、本方法は第１のＬＣＵを削除する。或る実施例では、ステップ５５０はステップ５０５のストレージ・コントローラによって遂行される。或る実施例では、ステップ５５０は、ステップ５０５のストレージ・コントローラとの通信時にＨＭＣによって遂行される。或る実施例では、ステップ５５０は、ステップ５０５のストレージ・コントローラとの通信時に記憶システム管理者がＨＭＣを使用することによって遂行される。
【００４４】
ステップ５５５において、本方法は、ステップ５０５の第１のＬＣＵおよびホスト・コンピュータを事前に相互接続した論理的パスを維持する。図７および図８に示された実施例では、ステップ５５５はステップ５５０の後におよびステップ５６０の前に示される。本方法は、包括的で、ステップ５０５の第１のＬＣＵおよびホスト・コンピュータを事前に相互接続した論理的パスを、ステップ５４５乃至ステップ５９０の全体を通して維持する。次に図４および図５を参照すると、図５の実施例において、ＬＣＵ ４４０（図４）は削除されたが、論理的パス４１０、４２０、および４３０は存続された。
【００４５】
ステップ５６０では、本方法は、ステップ５２５においてその時アクティブなＩ／Ｏコマンドをすべて完了した後、ステップ５０５のホスト・コンピュータから新たなＩ／Ｏコマンドが受け取られたかどうかを判断する。或る実施例では、ステップ５６０は、ステップ５０５のストレージ・コントローラによって遂行される。或る実施例では、ステップ５６０は、ステップ５０５のストレージ・コントローラとの通信時にＨＭＣによって遂行される。或る実施例では、ステップ５６０は、ステップ５０５のストレージ・コントローラとの通信時に記憶システム管理者がＨＭＣを使用することによって遂行される。
【００４６】
ステップ５２５において、その時アクティブなＩ／Ｏコマンドをすべて完了した後にステップ５０５のホスト・コンピュータから新たなＩ／Ｏコマンドを受け取ったということを判断した場合、本方法はステップ５６０からステップ５６５に移行する。ステップ５６５において、本方法は、その新たなＩ／Ｏコマンドを拒否し、第１のＬＣＵが一時的に利用不可能になっているという信号をステップ５０５の発信元ホスト・コンピュータに返信する。図７および図８に示された実施例では、ステップ５６０および５６５がステップ５５５に続いて示される。本方法は、ステップ５６０乃至ステップ５８０の間に新たなＩ／Ｏコマンドが受け取られるときにはいつもステップ５６５を遂行する。
【００４７】
或る実施例では、ステップ５６５はステップ５０５のストレージ・コントローラによって遂行される。或る実施例では、ステップ５６５は、ステップ５０５のストレージ・コントローラとの通信時にＨＭＣによって遂行される。或る実施例では、ステップ５６５は、ステップ５０５のストレージ・コントローラとの通信時に記憶システム管理者がＨＭＣを使用することによって遂行される。
【００４８】
ステップ５７０において、本方法は、ステップ５６５で拒否されたＩ／Ｏコマンドをエンキューする。或る実施例では、拒否されたＩ／Ｏコマンドが、ステップ５０５のストレージ・コントローラに配置されたキュー２４４（図１および図２）のようなキューにおいてエンキューされる。或る実施例では、拒否されたＩ／Ｏコマンドが、ステップ５０５のホスト・コンピュータにおいてエンキューされる。本方法は、ステップ５７０からステップ５９５に移行する。
【００４９】
或る実施例では、ステップ５７０はステップ５０５のストレージ・コントローラによって遂行される。或る実施例では、ステップ５７０は、ステップ５０５のストレージ・コントローラとの通信時にＨＭＣによって遂行される。或る実施例では、ステップ５７０は、ステップ５０５のストレージ・コントローラとの通信時に記憶システム管理者がＨＭＣを使用することによって遂行される。
【００５０】
ステップ５２５においてその時アクティブなＩ／Ｏコマンドすべてを完了した後、ステップ５０５のホスト・コンピュータから新たなＩ／Ｏコマンドが受け取られていないということを本方法が判断する場合、本方法はステップ５６０からステップ５７５に移行する。ステップ５７５では、第１のＬＣＵにおいて事前に構成された論理的ボリュームのボリューム特性が修正され、および／または、第１のＬＣＵにおいて事前に構成されなかった論理的ボリュームのボリューム特性が修正される。
【００５１】
或る実施例では、ステップ５７５はステップ５０５のストレージ・コントローラによって遂行される。或る実施例では、ステップ５７５は、ステップ５０５のストレージ・コントローラとの通信時にＨＭＣによって遂行される。或る実施例では、ステップ５７５は、ステップ５０５のストレージ・コントローラとの通信時に記憶システム管理者がＨＭＣを使用することによって遂行される。
【００５２】
ステップ５８０において、本方法は新たなＬＣＵ、即ち、第２のＬＣＵを構成する。第２のＬＣＵは第１のＬＣＵのすべてまたは一部分を含み、第２のＬＣＵは第１のＬＣＵとは異なる。或る実施例では、第２のＬＣＵは、第１のＬＣＵが含む論理的ボリュームよりもずっと多くの論理的なボリュームを含む。或る実施例では、第２のＬＣＵは、第１のＬＣＵが含む論理的なボリュームよりもずっと少ない論理的ボリュームを含む。
【００５３】
或る実施例では、ステップ５８０は、ステップ５０５のストレージ・コントローラによって遂行される。或る実施例では、ステップ５８０は、ステップ５０５のストレージ・コントローラとの通信時にＨＭＣによって遂行される。或る実施例では、ステップ５８０は、ステップ５０５のストレージ・コントローラとの通信時に記憶システム管理者がＨＭＣを使用することによって遂行される。
【００５４】
ステップ５８５において、本方法は、ステップ５８０の第２のＬＣＵに対する第２のステータスを設定する。或る実施例では、ステップ５８５はステップ５０５のホスト・コンピュータに状態変更割込みを発生する操作を含む。なお、状態変更割込みは、第２のＬＣＵがステップ５１５の１個または複数個の論理的制御パスを介して得られるということをホスト・コンピュータにアラートする。或る実施例では、ステップ５８５はステップ５０５のストレージ・コントローラによって遂行される。或る実施例では、ステップ５８５は、ステップ５０５のストレージ・コントローラとの通信時にＨＭＣによって遂行される。或る実施例では、ステップ５８５は、ステップ５０５のストレージ・コントローラとの通信時に記憶システム管理者がＨＭＣを使用することによって遂行される。
【００５５】
ステップ５９０において、ステップ５０５のホスト・コンピュータが、ステップ５１５の１個または複数個の論理的パスを有効にする。ステップ５９５において、本方法は、ステップ５７０で事前にエンキューされたすべてのＩ／Ｏコマンドを処理する。ステップ６００において、ステップ５０５のデータ・ストレージ・コントローラは、ステップ５１５の１個または複数個の論理的制御パスを使用して、ステップ５０５のホスト・コンピュータからステップ５８０の新たなＬＣＵを指定する新たなＩ／Ｏコマンドを受領する。
【００５６】
或る実施例では、図７および図８に示された個々のステップは、結合、削除、または再順序付けされることも可能である。
【００５７】
或る実施例では、命令２４６（図２および図３）のような命令がコンピュータ可読媒体２３０（図２および図３）に常駐し、および／または、命令３３２のような命令がコンピュータ可読媒体３３０に常駐する。それらの命令は、プロセッサ２５０（図１および図２）および／またはプロセッサ３２０（図１および図２）によって実行され、図７および図８に示されたステップ５１０、５１５、５２０、５２５、５３０、５３５、５４０、５４５、５５０、５５５、５６０、５６５、５７０、５７５、５８０、５８５、５９０、５９５，および／または、６００のうちの１個または複数個を遂行する。
【００５８】
別の実施例では、本発明は任意の他のコンピュータ・プログラム製品に存在する命令を含む。それらの命令は、コンピュータによって実行される場合、外部のコンピュータ、内部のコンピュータ、データ記憶システム２００（図２）、またはデータ・ストレージ・ライブラリ３００(図３)によって実行され、図７および図８に示されたステップ５１０、５１５、５２０、５２５、５３０、５３５、５４０、５４５、５５０、５５５、５６０、５６５、５７０、５７５、５８０、５８５、５９０、５９５、および／または、６００のうちの１個または複数個を遂行する。いずれの場合も、命令は、例えば、磁気的情報記憶媒体、光学的情報記憶媒体、電子的情報記憶媒体等を含むコンピュータ可読媒体においてコード化され得る。例えば、本明細書における「電子的記憶媒体」は、PROM、EPROM、EEPROM、フラッシュPROM、CompactFlash、スマートメディア等のような且つそれらに限定することのない１個または複数個のデバイスを意味する。
【００５９】
本発明の好適な実施例を詳細に説明したが、「特許請求の範囲」に示された本発明の技術的範囲から逸脱することなく、それらの実施例に対する修正およびアダプテーションを当業者が想起し得るということは明らかである。
【図１】
0005328919.tif 000002
【図２】
0005328919.tif 000003
【図３】
0005328919.tif 000004
【図４】
0005328919.tif 000005
【図５】
0005328919.tif 000006
【図６】
0005328919.tif 000007
【図７】
0005328919.tif 000008
【図８】
0005328919.tif 000009