(57)【特許請求の範囲】
【請求項１】
直接接続ストレージ（ＤＡＳ）システムであって、
第１のストレージ・コントローラを含む第１のＤＡＳサーバと、
第２のストレージ・コントローラを含む第２のＤＡＳサーバであって、ローカル・インターフェースを介して前記第１のＤＡＳサーバと通信している第２のＤＡＳサーバを含み、
前記第１のＤＡＳサーバは、さらに前記第１のＤＡＳサーバおよび第２のＤＡＳサーバのうちの少なくとも１つに関連するゾーン・エキスパンダ・デバイスを含み、前記ゾーン・エキスパンダ・デバイスは前記第１および第２のＤＡＳサーバを第１のストレージ・デバイスおよび第２のストレージ・デバイスに接続するように適応されており、前記ゾーン・エキスパンダ・デバイスは前記第１のＤＡＳサーバと前記第１のストレージ・デバイスとを含む第１のストレージ・ゾーン、および前記第２のＤＡＳサーバと前記第２のストレージ・デバイスとを含む第２のストレージ・ゾーンを構成するように適応されたゾーン構成モジュールを含み、
前記第１のＤＡＳサーバがアクティブ−アクティブ・フェイルオーバー・モジュールをさらに含むことを特徴とし、前記アクティブ−アクティブ・フェイルオーバー・モジュールは、
前記第２のＤＡＳサーバの障害を検出し、
前記第２のストレージ・ゾーンを無効化し、
前記第２のストレージ・デバイスを前記第１のストレージ・ゾーンに追加するように適応されている、ＤＡＳシステム。
【請求項２】
前記第１および第２のストレージ・デバイスが、冗長アレイ独立ディスク（ＲＡＩＤ）コントローラを含む、請求項１に記載のＤＡＳシステム。
【請求項３】
前記ゾーン・エキスパンダ・デバイスが、スモール・コンピュータ・システム・インターフェース（ＳＣＳＩ）規格をサポートする、請求項１に記載のＤＡＳシステム。
【請求項４】
前記ゾーン・エキスパンダが、シリアル接続ＳＣＳＩ（ＳＡＳ）エキスパンダを含む、請求項３に記載のＤＡＳシステム。
【請求項５】
前記ゾーン・エキスパンダ・デバイスが、外部スイッチ・ユニットを含む、請求項１に記載のＤＡＳシステム。
【請求項６】
前記ゾーン・エキスパンダ・デバイスが、前記第１および第２のストレージ・コントローラのうちの少なくとも１つに統合される、請求項１に記載のＤＡＳシステム。
【請求項７】
前記ゾーン・エキスパンダ・デバイスが、前記第１および第２のストレージ・デバイスのうちの少なくとも１つに統合される、請求項１に記載のＤＡＳシステム。
【請求項８】
前記ゾーン・エキスパンダ・デバイスが、前記第１および第２のストレージ・デバイスのうちの少なくとも１つに結合される外部デバイスである、請求項１に記載のＤＡＳシステム。
【請求項９】
前記アクティブ−アクティブ・フェイルオーバー・モジュールが、
前記第２のＤＡＳサーバが復帰することを検出し、
前記第１のストレージ・ゾーンから前記第２のストレージ・デバイスを取り除き、
前記第２のストレージ・ゾーンを有効化するようにさらに適応される、請求項１に記載のＤＡＳシステム。
【請求項１０】
非フェイルオーバー対応の直接接続ストレージ（ＤＡＳ）サーバにアクティブ−アクティブ・フェイルオーバー能力を提供するための方法であって、
第１および第２の非フェイルオーバー対応ＤＡＳサーバを接続するステップと、
ストレージ・ゾーニングをサポートするエキスパンダを介して前記第１および第２のＤＡＳサーバを共有のストレージ・プールに直接接続するステップと、前記エキスパンダは前記第１および第２のＤＡＳサーバの少なくとも１つに統合され、
前記第１のＤＡＳサーバと、前記共有ストレージ・プールの第１の部分とを含む第１のストレージ・ゾーンを構成するステップと、
前記第２のＤＡＳサーバと、前記共有ストレージ・プールの第２の部分とを含む第２のストレージ・ゾーンを構成するステップと、
前記第２のＤＡＳサーバに障害が生じたことを検出するステップと、
前記共有ストレージ・プールの前記第２の部分をゾーン・アウトするステップと、
前記共有ストレージ・プールの前記第２の部分を前記第１のストレージ・ゾーンにマップするステップと、
を含む方法。
【請求項１１】
前記第１および第２のＤＡＳサーバが、スモール・コンピュータ・システム・インターフェース（ＳＣＳＩ）規格を実装する、請求項１０に記載の方法。
【請求項１２】
前記エキスパンダが、シリアル接続ＳＣＳＩ（ＳＡＳ）エキスパンダを含む、請求項１１に記載の方法。
【請求項１３】
前記第２のＤＡＳサーバが復帰することを検出するステップと、
前記共有ストレージ・プールの前記第２の部分をゾーン・アウトするステップと、
前記共有ストレージ・プールの前記第２の部分を前記第２のストレージ・ゾーンにマップするステップと
をさらに含む、請求項１０に記載の方法。
【発明の詳細な説明】
【技術分野】
【０００１】
本発明は、一般には、ストレージ・システムに関し、より詳細には、直接接続ストレージ・システムに関する。
【背景技術】
【０００２】
ビジネス環境で使用されるコンピュータ・ネットワークは、より多くのストレージを必要とし続けている。典型的には、こうした企業は、集中型のデータ・ストレージ・システムを使用し、コンピュータ・ネットワークは、ネットワークを介してデータ・ストレージ・システムと通信する様々なパーソナル・コンピュータ、ラップトップなどを含む。データ・ストレージ・システムは典型的に、１つまたは複数のサーバを含み、これらのサーバは、ハード・ディスク・ドライブ、磁気または光ディスクなど専用データ記憶リソースへの情報の格納、およびそこからの情報の取出しを制御する。ストレージの需要が増加し続けるにつれて、集中型ストレージ・システムの記憶容量はますます大きくなっており、システムは、操作するのがますます複雑で、コストがかかるようになっている。複雑さとコストは、冗長な記憶能力への追加の要件によって増加する。
【０００３】
一部の企業は、記憶リソースをストレージ・エリア・ネットワーク（ＳＡＮ：ｓｔｏｒａｇｅ  ａｒｅａ  ｎｅｔｗｏｒｋ）に移行している。ＳＡＮは、ローカル・ストレージをほとんどまたは全くもたないコンピュータ・システムまたはサーバ（一般に「ホスト」と呼ばれる）を、大容量のストレージおよび共有ストレージを提供するバックエンド・ストレージ・デバイスに接続するために典型的には使用される専門の高速コンピュータ・ネットワークである。ＳＡＮの主目的は、ホストとストレージ・デバイスの間でデータを転送することである。ＳＡＮは典型的には、物理接続を提供する通信基盤と、データ転送が安全かつ堅牢となるように接続、記憶素子およびコンピュータ・システムを編成する管理層とを含む。典型的にはＳＡＮは、必ずではないが、ブロック入出力（Ｉ／Ｏ：ｉｎｐｕｔ／ｏｕｔｐｕｔ）サービスで識別される。ＳＡＮは、サーバとローカル記憶素子との間の従来の専用接続の代替物、ならびにサーバがアクセスできるデータ量へのいずれかの制約を提供する。その代わりに、ＳＡＮは、１つのサーバまたは多くの異種サーバが共通のストレージ・ユニットを共有することを可能にするネットワーキングの柔軟性を提供し、この共通のストレージ・ユニットは、ストレージ・コントローラと、たとえばディスク、テープ、光または他のストレージ・デバイスまたはシステムなど、多くのストレージ・デバイスとを含んでよい。ＳＡＮベースの解決策は、その利点に拘らず、多く中小企業にとって、または小規模な交換機配置においては法外に高価なままである。
【０００４】
別のストレージ解決策は、直接接続ストレージ（ＤＡＳ：Ｄｉｒｅｃｔ  Ａｔｔａｃｈｅｄ  Ｓｔｏｒａｇｅ）を要し、このＤＡＳでは、すべてのストレージは、各サーバからはローカルに見え、サーバに統合されたストレージ・コントローラの直接制御下にある。ストレージは物理的に、サーバの内部にあってもよいし、サーバの外部にあってもよいし、その２つの任意の組合せであってもよいが、ＤＡＳシステムの極めて重要な特徴は、こうしたストレージのコントローラが各サーバにはローカルに見え、他のサーバと共有されないということである。この手法の主な利点は、少なくとも小規模な構成では、そのコストがＳＡＮより著しく低いということである。しかし、ＤＡＳ手法には、欠点もある。たとえば、主な制約は、ストレージがローカルなものにすぎず、サーバ間で共有できないということであり、したがって、フォールト・トレランスの点で大きい制約がもたらされる。サーバが動かなくなる場合、サーバと共にそのすべてのストレージが動かなくなり、もはやデータにアクセスすることはできない。それと対照的に、ＳＡＮ手法は、同じデータに、便利なフェイルオーバー機構を（高いコストで）提供できる他のサーバからアクセスすることを可能にする。
【発明の概要】
【発明が解決しようとする課題】
【０００５】
冗長ストレージ・システムおよびＳＡＮベース・ストレージ解決策の多くの利点、および商業的な成功に拘らず、よりコスト効率のよい冗長ストレージ・システムが、当技術分野において依然として求められている。
【課題を解決するための手段】
【０００６】
非フェイルオーバー対応の直接接続ストレージ（ＤＡＳ）サーバにアクティブ−アクティブ・フェイルオーバー能力を提供するためのシステム、方法、コンピュータ・システムおよびコンピュータ・プログラムの様々な実施形態が開示される。一実施形態は、第１のストレージ・コントローラを含む第１のＤＡＳサーバと、第２のストレージ・コントローラを含む第２のＤＡＳサーバであって、ローカル・インターフェースを介して第１のＤＡＳサーバと通信している第２のＤＡＳサーバと、第１のＤＡＳサーバおよび第２のＤＡＳサーバのうちの少なくとも１つに関連するゾーン・エキスパンダ・デバイスであって、第１および第２のＤＡＳサーバを第１のストレージ・デバイスおよび第２のストレージ・デバイスに接続するように適応されており、第１のＤＡＳサーバと第１のストレージ・デバイスとを含む第１のストレージ・ゾーン、および第２のＤＡＳサーバと第２のストレージ・デバイスとを含む第２のストレージ・ゾーンを構成するように適応されたゾーン構成モジュールを含むゾーン・エキスパンダ・デバイスとを含む直接接続ストレージ（ＤＡＳ）システムであり、第１のＤＡＳサーバが、第２のＤＡＳサーバの障害を検出し、第２のストレージ・ゾーンを無効化し、第２のストレージ・デバイスを第１のストレージ・ゾーンに追加するように適応されたアクティブ−アクティブ・フェイルオーバー・モジュールをさらに含む。
【０００７】
別の実施形態は、非フェイルオーバー対応の直接接続ストレージ（ＤＡＳ）サーバにアクティブ−アクティブ・フェイルオーバー能力を提供するための方法である。こうした１つの方法は、第１および第２の非フェイルオーバー対応直接接続ストレージ（ＤＡＳ）サーバを接続すること、ストレージ・ゾーニングをサポートするエキスパンダを介して第１および第２のＤＡＳサーバを共有のストレージ・プールに直接接続すること、第１のＤＡＳサーバと、共有ストレージ・プールの第１の部分とを含む第１のストレージ・ゾーンを構成すること、第２のＤＡＳサーバと、共有ストレージ・プールの第２の部分とを含む第２のストレージ・ゾーンを構成すること、第２のＤＡＳサーバに障害が生じたことを検出すること、共有ストレージ・プールの第２の部分をゾーン・アウトすること、および共有ストレージ・プールの第２の部分を第１のストレージ・ゾーンにマップすることを含む。
【０００８】
さらに別の実施形態は、ゾーン・エキスパンダを介して複数のストレージ・デバイスに直接接続された非フェイルオーバー対応の直接接続ストレージ（ＤＡＳ）サーバにアクティブ−アクティブ・フェイルオーバー能力を提供するためのコンピュータ・プログラムを含む。コンピュータ読取り可能媒体で具現化され、プロセッサによって実行可能な１つのこうしたコンピュータ・プログラムが、第１のＤＡＳサーバと、ストレージ・デバイスの第１の部分とを含む第１のストレージ・ゾーンを構成し、第２のＤＡＳサーバと、ストレージ・デバイスの第２の部分とを含む第２のストレージ・ゾーンを構成し、第２のＤＡＳサーバの障害を検出し、第２のストレージ・ゾーンをゾーン・アウトし、ストレージ・デバイスの第２の部分を第１のストレージ・ゾーンにマップするように構成された論理を含む。
【図面の簡単な説明】
【０００９】
【図１】アクティブ−アクティブ・フェイルオーバー能力を備えた直接接続ストレージ（ＤＡＳ）システムの一実施形態を示すブロック図である。
【図２】図１のＤＡＳシステムの動作に関連するアクティブ−アクティブ・フェイルオーバー方法の一実施形態の特定の態様を示すフローチャートである。
【図３】図１のＤＡＳシステムのための例示的なゾーニング構成を示す図である。
【図４】図１のＤＡＳシステムの動作に関連するアクティブ−アクティブ・フェイルオーバー方法の別の実施形態の追加の態様を示すフローチャートである。
【図５】フェイルオーバー・モード時の図４のＤＡＳシステムを示す図である。
【図６】図１のゾーン管理および／またはアクティブ−アクティブ・フェイルオーバー・モジュールの一実施形態のアーキテクチャ、動作および／または機能性を示すフローチャートである。
【発明を実施するための形態】
【００１０】
図１は、アクティブ−アクティブ・フェイルオーバー機能性の様々な実施形態を実施するための直接接続ストレージ（ＤＡＳ）システム１００の一実施形態を示している。ＤＡＳシステム１００は一般に、ポート・エキスパンダ１１０を介して共有ストレージ・プール１０４に直接接続された１つまたは複数のＤＡＳサーバ１０２を含む。一般に、アクティブ−アクティブ・フェイルオーバー機能性は、１つのＤＡＳサーバ１０２が、サーバ障害の場合には別のＤＡＳサーバ１０２のストレージ・サービスを引き継ぎ、障害が生じたサーバが復帰するとき、ストレージ・サービスを以前に障害が生じたＤＡＳサーバ１０２に戻すことを可能にする。下記により詳細に述べるように、アクティブ−アクティブ・フェイルオーバー機能性は、システム障害の場合にはＤＡＳサーバ１０２のうちの１つが別のＤＡＳサーバ１０２のストレージ・タスクを引き継ぐことを可能にするための冗長ストレージ機構を提供する。一実施形態では、アクティブ−アクティブ・フェイルオーバー機能性は、ポート・エキスパンダ１１０および／またはストレージ・コントローラ１０６によって提供されたストレージ・ゾーニングの特徴を操作することによって少なくとも部分的に実装される。ストレージ・コントローラ１０６および／またはポート・エキスパンダ１１０は、ＤＡＳサーバ１０２に統合されてもよいし、ＤＡＳサーバ１０２に接続された外部デバイスとして提供されてもよい。一部の実施形態では、ストレージ・コントローラ１０６および／またはポート・エキスパンダ１１０の特定の態様が、ストレージ・デバイス１０４に統合されてよいことを理解されたい。
【００１１】
一般に、ストレージ・コントローラ１０６は、関連するストレージ・デバイス１０４内の物理的ストレージを管理し、ストレージを論理ユニットとして提示するための処理デバイスを含む。ストレージ・デバイス１０４は、たとえばディスク・システム（たとえば単純ディスク束（ＪＢＯＤ：Ｊｕｓｔ  ａ  Ｂｕｎｃｈ  ｏｆ  Ｄｉｓｋｓ）、冗長アレイ独立ディスク（ＲＡＩＤ：Ｒｅｄｕｎｄａｎｔ  Ａｒｒａｙ  ｏｆ  Ｉｎｄｅｐｅｎｄｅｎｔ  Ｄｉｓｋｓ）など）、光システムまたはテープ・システム（たとえばテープ・ドライブ、テープ自動ローダ、テープ・ライブラリ）など、任意の適切な記憶手段を含んでよい。ストレージ・コントローラ１０６は、ポート・エキスパンダ１１０に関連して、ストレージ・プール１０４の対応する部分にＤＡＳサーバ１０２を直接接続するよう動作する。ＤＡＳサーバ１０２とストレージ・プール１０４の間の接続は、接続１１８によって表される。接続１１８は、ストレージ・プール１０４または他のデジタル・ストレージ・システムを、その間のストレージ・ネットワークなしにＤＡＳサーバ１０２に接続するためのいずれかの非ネットワーク化接続を含む。接続１１８は、いずれかの所望の物理的接続または構成を含んでよく、任意の適切なデータ転送技術、物理インターフェースまたは通信プロトコルをサポートしてよい。
【００１２】
一実施形態では、接続１１８、ならびにＤＡＳシステム１００内のコンポーネントおよび／またはインターフェースは、スモール・コンピュータ・システム・インターフェース（ＳＣＳＩ：Ｓｍａｌｌ  Ｃｏｍｐｕｔｅｒ  Ｓｙｓｔｅｍ  Ｉｎｔｅｒｆａｃｅ）規格のうちの１つまたは複数の規格をサポートするように構成されてよい。ＤＡＳシステム１００は、他の任意の適切なデータ転送技術を実装してよいことが当業者には理解されよう。たとえば、例示的な動作環境は、シリアル接続ＳＣＳＩ（ＳＡＳ：Ｓｅｒｉａｌ  Ａｔｔａｃｈｅｄ）データ転送技術をサポートする。こうした実施形態では、ポート・エキスパンダ１１０は、ＳＡＳエキスパンダを含んでよい。一般に、ポート・エキスパンダ１１０は、多数のストレージ・デバイス１０４とＤＡＳサーバ１０２の間の通信を円滑に進めるために使用されるコンポーネントを含む。ＳＡＳエキスパンダは、それに接続されたいずれかの接続（すなわちポート）間の通信路を作成できるデバイスである。「エキスパンダ」という名前は、一実施形態では少数のサーバ（すなわち「ホスト」）ポートとデバイス（すなわち「ディスク」）ポートとの間の通信路を作成することが一般的な使用法であり、したがってデバイスへのホスト接続を実際には「拡張する」という事実によるものである。一部のタイプのエキスパンダは、どのポートが他のどのポートに接続するかユーザが構成することを可能にする「ゾーニング」と呼ばれる特徴を含む。これは、下記に述べるデータ経路セキュリティおよび「ゾーン」を保護するための重要な特徴である。しかし、一実施形態では、ゾーニングの特徴は、すべての可能なポートのアクティブ化マトリックスで実装されることがあり、ユーザは、各ポートについてそれが他のいずれかのポートと接続できるかどうか（たとえばブート・コードによってまたはオンラインで）プログラムできることを理解されたい。接続された（すなわちゾーン・インされた）ポートは、その間にエキスパンダがあるという知識を必要としない。それは、接続されない（すなわちゾーン・アウトされた）ポートが、他のポートがあることさえ知ることができないという意味で、ポートを接続する「ワイヤ」のようなものである。
【００１３】
図１を参照すると、ＤＡＳサーバ１０２は、アクティブ−アクティブ・フェイルオーバー・モジュール１１６を含んでよく、このアクティブ−アクティブ・フェイルオーバー・モジュール１１６は、ストレージ・コントローラ１０６に統合されてもよいし、別のやり方でＤＡＳサーバ１０２に統合されてもよい。より詳細に下記に述べるように、アクティブ−アクティブ・フェイルオーバー・モジュール１１６は、ＤＡＳサーバ１０２のうちの１つの障害を検出し、次いで（たとえばストレージ・コントローラ１０６を介して）ポート・エキスパンダに、フェイルオーバーおよびフェイルバック・プロセスの間にゾーン・テーブル１１４内に定義されたストレージ・ゾーンを再プログラムするよう命じるように構成されてよい。この点で、アクティブ−アクティブ・フェイルオーバー・モジュール１１６は、ポート・エキスパンダと通信するように構成される。ポート・エキスパンダ１１０は、ゾーン能力を操作することによってアクティブ−アクティブ・フェイルオーバー機能性を実装するためのアクティブ−アクティブ・フェイルオーバー・モジュール１１６と結合するいくつかのコンポーネントと、ゾーン管理モジュール１１２と、およびゾーニング情報を格納する１つまたは複数のデータ構造体（たとえばゾーン・テーブル１１４）とを含む。ＤＡＳサーバ１０２内のゾーン管理モジュール１１２およびアクティブ−アクティブ・フェイルオーバー・モジュール１１６は、アクティブ−アクティブ・フェイルオーバーおよびフェイルバック・プロセスに関連する特定の機能を提供するための論理を含むことを理解されたい。図１には別個のモジュールとして示されているが、モジュールは、複数のモジュールを含んでよく、特定の実施形態では、関連する論理は、１つまたは複数の関連するモジュールへと組み合わされてよい。これらのコンポーネントは、ソフトウェア、ハードウェア、ファームウェア、またはその任意の組合せで実装できることが当業者には理解されよう。特定の実施形態では、モジュールは、ソフトウェアまたはファームウェアで実装されてよく、このソフトウェアまたはファームウェアは、メモリ内に格納されており、ストレージ・コントローラ１０６または他のいずれかのプロセッサ、あるいは適切な命令実行システムによって実行される。
【００１４】
モジュール１１２、１１４および１１６（またはＤＡＳシステム１００に関連する他のいずれかのモジュール）の操作に関連するいずれかのプロセスまたは方法についての説明は、モジュール、セグメント、論理、またはプロセス内の論理機能またはステップを実施するための１つまたは複数の実行可能命令を含むコードの一部を表し得ることが当業者には理解されよう。当業者には理解されるように、どんな論理機能もが、関与する機能性に応じて、実質的に同時または逆の順序を含めて、述べられたのとは異なる順序で実行されてよいことをさらに理解されたい。さらに、モジュールは、コンピュータ・ベースのシステム、プロセッサを含むシステム、あるいは命令実行システム、装置またはデバイスから命令を取り出し、命令を実行できる他のシステムなど、命令実行システム、装置またはデバイスによって、またはそれに関連して使用される任意のコンピュータ読取り可能媒体で具現化することができる。
【００１５】
一般に、ゾーン管理モジュール１１２は、ストレージ・ゾーンを構成するための論理を含む。上記に言及されたように、ストレージ・ゾーンは、いずれかの特定のＤＡＳサーバ１０２によってストレージ・プール１０４のどの部分がサービスされるか定義するために使用される。たとえば、図３を参照すると、ストレージ・ゾーンＡは、ＤＡＳサーバ１０２ａと、ＤＡＳサーバ１０２ａによってサービスされているストレージ・デバイス１０４ａとを含む第１のストレージ・システムＡを定義してよく、第２のストレージ・ゾーンＢは、ＤＡＳサーバ１０２ｂと、ＤＡＳサーバ１０２ｂによってサービスされているストレージ・デバイス１０４ｂとを含む第２のストレージ・システムＢを定義してよい。様々なストレージ・システムは、任意の望ましいゾーニング構成を使用して定義することができる。アクティブ−アクティブ・フェイルオーバー機能性の動作を示すために、残りの説明では、ゾーンＡおよびＢを含めて簡略化された２つのゾーン構成を使用して、アクティブ−アクティブ・フェイルオーバー機能性の動作について説明するが、任意の数（Ｍ）のゾーンおよび任意の数（Ｎ）のＤＡＳサーバが、Ｍ個のゾーン上にＮウェイ・フェイルオーバー機構を提供できることを理解されたい。下記に述べるように、ＤＡＳサーバ１０２内のアクティブ−アクティブ・フェイルオーバー・モジュール１１６が一般に、フェイルオーバーおよびフェイルバック・プロセスを実装するための論理を含むことをさらに理解されたい。
【００１６】
ポート・エキスパンダ１１０によって提供されるゾーニングの特徴を使用してアクティブ−アクティブ・フェイルオーバー機能性を実装するための方法の様々な実施形態の動作について、図２〜図５に関して下記に述べる。図２、図３および図５は一般に、ゾーン構成およびフェイルオーバー・プロセスを示す。図４は一般に、フェイルバック・プロセスを示している。
【００１７】
図２の方法２００を参照すると、ブロック２０２で、ＤＡＳサーバ１０２ａおよび１０２ｂは、ゾーニング能力をサポートするポート・エキスパンダ１１０を介してストレージ・プール１０４に直接接続される（すなわち接続１１８）。ブロック２０４および２０６で、ＤＡＳシステム１００は、従来または他のいずれかのやり方で２つ以上のストレージ・ゾーンを構成する。図３に示すように、第１のストレージ・ゾーンＡは、ＤＡＳサーバ１０２ａ、およびＤＡＳサーバ１０２ａによってサービスされる関連するストレージ・デバイス１０４ａを定義するように構成されてよい。第２のストレージ・ゾーンＢは、ＤＡＳサーバ１０２ｂ、およびＤＡＳサーバ１０２ｂによってサービスされる関連するストレージ・デバイス１０４ｂを定義するように構成されてよい。ストレージ・コントローラ１０６がＲＡＩＤコントローラとして実装される一実施形態では、ＤＡＳサーバ１０２ａおよび１０２ｂは、ストレージ・プール１０４を共有するように構成されてよいが、ストレージ・ゾーンには、たとえばＤＡＳサーバ１０２ａおよび１０２ｂがそれぞれ、静的に割り当てられた仮想ディスクを有しており、ＤＡＳシステム１００内の各仮想ディスクが、いかなるときでも複数のＤＡＳサーバ１０２によって共有不可能またはアクセス不可能となるように制約を受け得る。他の非ＲＡＩＤ実施形態では、この制約は、減少され、変更されまたは取り除かれてよい。
【００１８】
ＤＡＳシステム１００は、ゾーンに従って構成され、動作した後、ブロック２０８で、アクティブなＤＡＳサーバ１０２のうちの１つに障害が生じたと判断する。障害検出は、任意の適切なやり方で実施することができる。一実施形態では、ＤＡＳサーバ１０２は、ローカル・インターフェースを介して接続してよく（図１）、この場合、ハートビートまたはＰＩＮＧ機構を使用して、サーバ障害を検出することができる。一実施形態では、ローカル・エリア・ネットワーク（ＬＡＮ：ｌｏｃａｌ  ａｒｅａ  ｎｅｔｗｏｒｋ）を介したハートビートを使用することができる。他の実施形態は、たとえば、ＳＡＳを介したバックエンド・ハートビートを使用することができ、またはシステムを制御する共有管理ツールは恐らく、サービス・コンソールなど、様々な機構によって通知を受けるようになる。この実施例では、ＤＡＳサーバ１０２ｂは、障害が生じたサーバを表す。ブロック２１０で、ＤＡＳサーバ１０２ｂによってサービスされているストレージ・デバイス１０４ｂが、ゾーン・アウトされる。ゾーン・アウトは、（たとえばストレージ・コントローラ１０６または側波帯を通過して）ポート・エキスパンダ１１０と通信しているアクティブ−アクティブ・フェイルオーバー・モジュール１１６によって制御できる。ブロック２１２で、ストレージ・デバイス１０４ｂは、この実施例ではアクティブ・ゾーン、すなわちゾーンＡにマップされる。ポート・エキスパンダ１１０は、内部構成テーブル（たとえばテーブル１１４）に基づいてゾーンを制御することを理解されたい。初期マッピングは、適切なゾーンを伴う基本的な構成をもたらすブート・コードまたはシステム・コンソールによって行ってよい。フェイルオーバーの場合、残存しているＤＡＳコントローラは、ゾーンを上書きして、働いていないコントローラ・ポートを排除し、それ自体のゾーン・マップにデバイス・ポートを追加してよい。フェイルバックの場合には、残存しているコントローラは、他のＤＡＳサーバ内の復活したＤＡＳサーバおよびゾーンに戻すべきディスク・ポートをゾーン・アウトしてよい。ゾーン・マッピングを実装する様々なやり方がある。ＲＡＩＤベースの実施形態では、たとえば、ＲＡＩＤコントローラは、１組の外部ディスクがディスク・ポートに現われるのを見る。アクティブ−アクティブ・フェイルオーバー・モジュール１１６は、外部ディスクをインポートするためにコントローラに通信し、次いで、ＤＡＳサーバに構成を公開してよい。このようなやり方で、ブロック２１４で表され、図５に示されたように、フェイルオーバー・プロセスが完了した後、ＤＡＳサーバ１０２ａは、ストレージ・デバイス１０４ａと１０４ｂの両方にサービスする。
【００１９】
図４の方法４００を参照すると、ブロック４０２および４０４で、以前に障害が生じたサーバ（すなわちＤＡＳサーバ１０２ｂ）が復帰したことを検出すると、フェイルバック・プロセスが開始されてよい。この場合もやはり、これは、ハートビートまたはＰＩＮＧ、あるいは他の機構によって完遂できる。ブロック４０６で、ＤＡＳサーバ１０２ａは、ストレージ・デバイス１０４ｂに関連するサービスを終了してよく、したがって、ストレージ・デバイス１０４ｂを、フェイルバックに備えて準備することができる。ブロック４０８で、ＤＡＳシステム１００は、ゾーンＡからのストレージ・デバイス１０４ｂをゾーン・アウトする。ブロック４１０で、ＤＡＳシステム１００は、ゾーンＢに関連するストレージ・デバイス１０４ｂをゾーン・インする。上述のように、ゾーニング情報は、ゾーン・テーブル１１４によって管理してよい。ブロック４１２で、再アクティブ化されたＤＡＳサーバ１０２ｂは、ストレージ・デバイス１０４ｂを検出し、動作を再開してよい。
【００２０】
図６は、ゾーン管理モジュール１１２およびアクティブ−アクティブ・フェイルオーバー・モジュール１１６の一実施形態のアーキテクチャ、動作および／または機能性を示すフローチャートである。ブロック６０２および６０４で、ゾーン管理モジュール１１２は、要望に応じてストレージ・ゾーンを構成する。ゾーン管理モジュール１１２は、ＤＡＳサーバ１０２（または他のコンピュータ・システム）のユーザがストレージ・ゾーンを手動で構成することを可能にするように構成されてよい。判断ブロック６０６で、アクティブ−アクティブ・フェイルオーバー・モジュール１１６は、ＤＡＳサーバ１０２ｂの障害を検出する。ブロック６０８および６１０で、アクティブ−アクティブ・フェイルオーバー・モジュール１１６は、ゾーンＢからストレージ・デバイス１０４ｂをゾーン・アウトし、ストレージ・デバイス１０４ｂをゾーンＡにマップする。アクティブ−アクティブ・フェイルオーバー・モジュール１１６は、障害が生じたＤＡＳサーバ１０２ｂがいつオンライン状態に戻るか判断するためにＤＡＳシステム１００を監視する（判断ブロック６１２）。障害が生じたＤＡＳサーバ１０２ｂが復帰するとき、ブロック６１４および６１６で、アクティブ−アクティブ・フェイルオーバー・モジュール１１６は、ゾーンＡからストレージ・デバイス１０４ｂをゾーン・アウトし、ストレージ・デバイス１０４ｂをゾーンＢにゾーン・インする。
【００２１】
本開示は、本発明の原理および概念を示す目的で、より例示的なまたは述べられた１つまたは複数の実施形態を参照して提示されていることに留意されたい。本発明は、これらの実施形態に制限されない。当業者によって理解されるように、本明細書に示された説明を考慮して、本明細書に述べられた諸実施形態に多くの変形を行うことができ、こうしたすべての変形形態は、本発明の範囲内であることが理解されよう。
【図１】
0005523468.tif 000002
【図２】
0005523468.tif 000003
【図３】
0005523468.tif 000004
【図４】
0005523468.tif 000005
【図５】
0005523468.tif 000006
【図６】
0005523468.tif 000007