JP5404914B2 - ストレージ・エリア・ネットワーク(「san」)内の仮想ストレージ管理のアクティブ−アクティブ・サポート - Google Patents

ストレージ・エリア・ネットワーク(「san」)内の仮想ストレージ管理のアクティブ−アクティブ・サポート Download PDF

Info

Publication number
JP5404914B2
JP5404914B2 JP2012507189A JP2012507189A JP5404914B2 JP 5404914 B2 JP5404914 B2 JP 5404914B2 JP 2012507189 A JP2012507189 A JP 2012507189A JP 2012507189 A JP2012507189 A JP 2012507189A JP 5404914 B2 JP5404914 B2 JP 5404914B2
Authority
JP
Japan
Prior art keywords
storage
mapping
storage manager
data
manager
Prior art date
Legal status (The legal status is an assumption and is not a legal conclusion. Google has not performed a legal analysis and makes no representation as to the accuracy of the status listed.)
Expired - Fee Related
Application number
JP2012507189A
Other languages
English (en)
Other versions
JP2012524934A (ja
Inventor
ポポヴスキー,ヴラッドミール
ナドラー,イシャイ
ナフム,ネルソン
Original Assignee
ネットアップ,インコーポレーテッド
Priority date (The priority date is an assumption and is not a legal conclusion. Google has not performed a legal analysis and makes no representation as to the accuracy of the date listed.)
Filing date
Publication date
Application filed by ネットアップ,インコーポレーテッド filed Critical ネットアップ,インコーポレーテッド
Publication of JP2012524934A publication Critical patent/JP2012524934A/ja
Application granted granted Critical
Publication of JP5404914B2 publication Critical patent/JP5404914B2/ja
Expired - Fee Related legal-status Critical Current
Anticipated expiration legal-status Critical

Links

Images

Classifications

    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F3/00Input arrangements for transferring data to be processed into a form capable of being handled by the computer; Output arrangements for transferring data from processing unit to output unit, e.g. interface arrangements
    • G06F3/06Digital input from, or digital output to, record carriers, e.g. RAID, emulated record carriers or networked record carriers
    • G06F3/0601Interfaces specially adapted for storage systems
    • G06F3/0628Interfaces specially adapted for storage systems making use of a particular technique
    • G06F3/0662Virtualisation aspects
    • G06F3/0665Virtualisation aspects at area level, e.g. provisioning of virtual or logical volumes
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F12/00Accessing, addressing or allocating within memory systems or architectures
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F15/00Digital computers in general; Data processing equipment in general
    • G06F15/16Combinations of two or more digital computers each having at least an arithmetic unit, a program unit and a register, e.g. for a simultaneous processing of several programs
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F3/00Input arrangements for transferring data to be processed into a form capable of being handled by the computer; Output arrangements for transferring data from processing unit to output unit, e.g. interface arrangements
    • G06F3/06Digital input from, or digital output to, record carriers, e.g. RAID, emulated record carriers or networked record carriers
    • G06F3/0601Interfaces specially adapted for storage systems
    • G06F3/0602Interfaces specially adapted for storage systems specifically adapted to achieve a particular effect
    • G06F3/0604Improving or facilitating administration, e.g. storage management
    • G06F3/0605Improving or facilitating administration, e.g. storage management by facilitating the interaction with a user or administrator
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F3/00Input arrangements for transferring data to be processed into a form capable of being handled by the computer; Output arrangements for transferring data from processing unit to output unit, e.g. interface arrangements
    • G06F3/06Digital input from, or digital output to, record carriers, e.g. RAID, emulated record carriers or networked record carriers
    • G06F3/0601Interfaces specially adapted for storage systems
    • G06F3/0602Interfaces specially adapted for storage systems specifically adapted to achieve a particular effect
    • G06F3/0614Improving the reliability of storage systems
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F3/00Input arrangements for transferring data to be processed into a form capable of being handled by the computer; Output arrangements for transferring data from processing unit to output unit, e.g. interface arrangements
    • G06F3/06Digital input from, or digital output to, record carriers, e.g. RAID, emulated record carriers or networked record carriers
    • G06F3/0601Interfaces specially adapted for storage systems
    • G06F3/0628Interfaces specially adapted for storage systems making use of a particular technique
    • G06F3/0638Organizing or formatting or addressing of data
    • G06F3/064Management of blocks
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F3/00Input arrangements for transferring data to be processed into a form capable of being handled by the computer; Output arrangements for transferring data from processing unit to output unit, e.g. interface arrangements
    • G06F3/06Digital input from, or digital output to, record carriers, e.g. RAID, emulated record carriers or networked record carriers
    • G06F3/0601Interfaces specially adapted for storage systems
    • G06F3/0668Interfaces specially adapted for storage systems adopting a particular infrastructure
    • G06F3/067Distributed or networked storage systems, e.g. storage area networks [SAN], network attached storage [NAS]
    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04LTRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
    • H04L67/00Network arrangements or protocols for supporting network services or applications
    • H04L67/01Protocols
    • H04L67/10Protocols in which an application is distributed across nodes in the network
    • H04L67/1097Protocols in which an application is distributed across nodes in the network for distributed storage of data in networks, e.g. transport arrangements for network file system [NFS], storage area networks [SAN] or network attached storage [NAS]
    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04LTRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
    • H04L43/00Arrangements for monitoring or testing data switching networks
    • H04L43/08Monitoring or testing based on specific metrics, e.g. QoS, energy consumption or environmental parameters
    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04LTRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
    • H04L43/00Arrangements for monitoring or testing data switching networks
    • H04L43/20Arrangements for monitoring or testing data switching networks the monitoring system or the monitored elements being virtualised, abstracted or software-defined entities, e.g. SDN or NFV

Landscapes

  • Engineering & Computer Science (AREA)
  • Theoretical Computer Science (AREA)
  • Physics & Mathematics (AREA)
  • General Engineering & Computer Science (AREA)
  • General Physics & Mathematics (AREA)
  • Human Computer Interaction (AREA)
  • Computer Hardware Design (AREA)
  • Computer Networks & Wireless Communication (AREA)
  • Signal Processing (AREA)
  • Software Systems (AREA)
  • Information Retrieval, Db Structures And Fs Structures Therefor (AREA)

Description

本発明は、一般にはストレージ・エリア・ネットワーク(「SAN」)に関し、より詳細には、ストレージ・エリア・ネットワーク内の仮想ストレージ管理のアクティブ−アクティブ・サポートに関する。
コンピュータ・システムは通常、コンピュータ・システムによって使用されるデータを格納するストレージ・システムを備え、またはそれに接続する。大規模な企業では特に、コンピュータ・サーバのストレージのニーズが指数関数的に増大している。そのようなストレージのニーズを満たすために、コンピュータ・サーバがいくつかのディスク・ドライブを備える1つまたは複数のストレージ・システムにリモートに接続することを可能にするストレージ・エリア・ネットワーク(「SAN」)を業界は提供している。通常、コンピュータ・サーバは、SANによって提供される1つのデータを、高ファイル・レベルではなく、低データ・ブロック・レベルでアドレス指定することができる。
ある例では、コンピュータ・サーバがストレージ・システムのデータ・ブロックにアクセスするために使用するアドレスは、物理ストレージ・システムの実際のアドレスである。一方、別の例では、コンピュータ・サーバが仮想ストレージ・ボリュームにアクセスするために使用するアドレスは、物理ストレージ・システム内には存在しない。むしろ、仮想ストレージ・ボリュームは、ストレージ・マネージャがコンピュータ・サーバに提示する1つまたは複数の物理ストレージ・システムの抽象化を表す。ストレージ・マネージャは、コンピュータから仮想ストレージ・ボリューム内のアドレスを受信し、マッピングを使用して、アドレスを物理ストレージ・システム内に存在する実際のアドレスにマッピングする。
一般に「メタデータ」と呼ばれるものは、マッピングおよび他の関連情報を含むことに留意されたい。ストレージ・マネージャは、とりわけFibre Channelアプライアンス、Redundant Array of Independent Disks(「RAID」)コントローラ、またはエンハンスドFibre Channelスイッチを含むコンピューティング・デバイスを備えることができる。仮想ストレージ・ボリュームのアドレスは物理ストレージ・システム内に直接存在しないので、仮想ストレージ・ボリュームは「仮想的」である。むしろ、仮想ストレージ・ボリュームの各部分は、1つまたは複数のストレージ・マネージャにより、マッピングに基づいて1つまたは複数のストレージ・システムのエリアにマッピングされる。マッピングを更新する必要がある場合、例えば仮想ストレージ・ボリュームの一部をストレージ・システムの別のエリアまたは別のストレージ・システムに書き込む必要がある場合、ストレージ・マネージャで「マップ障害」が生じる。コンピュータ・サーバは、1つまたは複数のストレージ・マネージャと通信することにより、コンピュータ・サーバが実際のストレージ・ボリュームにアクセスしているかのように仮想ストレージ・ボリュームにアクセスすることができる。
信頼性を改善するために、ストレージ・マネージャは、アクティブ−パッシブ対で動作することができ、したがってアクティブ・ストレージ・マネージャが何らかの理由で故障した場合、アクティブ・ストレージ・マネージャによって管理される仮想ストレージ・ボリューム(複数可)に関する一定の構成データが、パッシブ・ストレージ・マネージャに複製されていることになり、パッシブ・ストレージ・マネージャがアクティブとなり、コンピュータ・サーバにサービスを引き続き提供することが可能となる。しかし、コンピュータ・サーバは通常、代替ストレージ・マネージャと通信するために、特別なマルチパシング・ソフトウェア(multi−pathing software)をインストールし、適切に構成することを必要とする。さらに、パッシブ・ストレージ・マネージャがアクティブとなる前に、パッシブ・ストレージ・マネージャは、コンピュータ・サーバにサービスを提供することができず、アクティブ・ストレージ・マネージャの作業負荷を共有することができない。
ストレージ・マネージャがアクティブ−アクティブ・モードで振る舞うことを可能にするために、従来の技法および構造では、I/Oシッピング技法が提供されている。この技法は、どちらかのストレージ・マネージャがコンピュータ・サーバにサービスを提供することができることを実現する。しかし、特定の仮想ストレージ・ボリューム(または仮想ストレージ・ボリュームのエリア)では、単一の好ましいストレージ・マネージャだけが、コンピュータ・サーバから受信したデータを対応するストレージ・システムに書き込むことを許可される。同様に、単一の好ましいストレージ・マネージャだけが、対応するストレージ・システムへの仮想ストレージ・ボリュームのマッピングを更新することを許可される。
書き込むべきデータが、好ましいストレージ・マネージャではなく、好ましくないストレージ・マネージャによって受信される場合、好ましくないストレージ・マネージャは、まずデータ全体を好ましいストレージ・マネージャに「シッピング」する必要がある。その後で、好ましいストレージ・マネージャは次いで、対応するストレージ・システムにデータを実際に書き込み、マッピングを更新することもできる。コンピュータ・サーバで見たとき、好ましくないストレージ・マネージャは好ましいストレージ・マネージャと異なるようには見えないことがあるが、ストレージ・マネージャの間でバックグラウンドで入出力データをシッピングする結果、著しいオーバヘッドおよび性能劣化が生じる。
あるいは、従来の技法および構造では、共用メモリによってサポートされるアクティブ−アクティブ・モデルが提供されている。このモデル下では、単一の好ましいストレージ・マネージャだけが対応するストレージ・システムへの仮想ストレージ・ボリュームのマッピングを更新することを可能にするのではなく、複数のストレージ・マネージャが、共有メモリを通じてマッピングを更新することを許可される。しかし、特別かつ/または複雑な(したがって費用のかかる)ハードウェアを使用して共用メモリを実装する必要がある。さらに、例えば共用メモリを通じたアクセス速度を維持するために、一般に、ストレージ・マネージャを互いに近接して配置する必要がある。したがって、SANに追加のストレージ・マネージャを容易かつ/または安価に追加することができない。
したがって、アクティブ−アクティブ・ストレージ・マネージャでSANの高性能および信頼性を維持することが引き続き課題となっている。
本発明は、(仮想ストレージ・ボリュームを管理する)アクティブ−アクティブ・ストレージ・マネージャでSANの高性能および信頼性を維持する方法および装置を提供することにより、上記および他の問題を解決し、それによって有用な現況技術を前進させる。ある例では、ストレージ・マネージャが仮想ストレージ・ボリュームに書き込むべきデータをコンピュータ・サーバから受信したとき、ストレージ・マネージャは、書込み要求の結果、ストレージ・システムへの仮想ストレージ・ボリュームのマッピングが更新されることがあるかどうかを判定する。ほとんどの場合そうであるが、書込み要求がマッピングの更新に関係しないとき、ストレージ・マネージャは単に、既存のマッピングに基づいてストレージ・システムにデータを書き込む。別の例では、ストレージ・マネージャは、マッピングを更新するために別のストレージ・マネージャに更新要求を送信する。その後で、ストレージ・マネージャは、別のストレージ・マネージャによって更新されたマッピングに基づいて、対応するストレージ・システムにデータを書き込む。有利なことに、マッピングに関するストレージ・マネージャ間で交換される情報量は、書き込むべきデータ全体よりも著しく少ないので、バックグラウンドで調整される情報量が劇的に低下する。
本明細書の一態様では、ストレージ・エリア・ネットワーク(「SAN」)をサポートする方法が提供される。方法は、仮想ストレージ・ボリュームに書き込むべきデータを含む書込み要求をSANのストレージ・マネージャで受信することを含む。方法はまた、書込み要求の結果、ストレージ・システムへの仮想ストレージ・ボリュームのマッピングが更新されることがあるかどうかを判定することをも含む。さらに、方法は、書込み要求がマッピングの更新に関係しないとき、既存のマッピングに基づいて、ストレージ・マネージャからストレージ・システムにデータを書き込むことを含む。
本発明の別の態様は、第1ストレージ・マネージャに含まれる、ストレージ・エリア・ネットワーク(「SAN」)をサポートする装置を提供する。装置は、仮想ストレージ・ボリュームに書き込むべきデータを含む書込み要求を受信するように適合された第1受信要素を備える。装置はまた、書込み要求に応答して、ストレージ・システムへの仮想ストレージ・ボリュームのマッピングを更新することを求める更新要求を、第1ストレージ・マネージャからSANの第2ストレージ・マネージャに送信する送信要素をも備える。さらに、装置は、更新されたマッピングを受信する第2受信要素を備える。装置は、更新されたマッピングに基づいてデータを第1ストレージ・マネージャからストレージ・システムに書き込む書込み要素をさらに備える。
本発明のさらに別の態様は、ストレージ・エリア・ネットワーク(「SAN」)をサポートするシステムを提供する。システムは、SANの第1ストレージ・マネージャおよびSANの第2ストレージ・マネージャを備える。第1ストレージ・マネージャは、SANの第1ストレージ・マネージャで、仮想ストレージ・ボリュームに書き込むべきデータを含む書込み要求を受信する受信要素を備える。第1ストレージ・マネージャはまた、書込み要求に応答して、ストレージ・システムへの仮想ストレージ・ボリュームのマッピングを更新することを求める更新要求を、第1ストレージ・マネージャから第2ストレージ・マネージャに送信する送信要素をも備える。第1ストレージ・マネージャは、マッピングが更新されたことを第1ストレージ・マネージャで受信する受信要素をさらに備える。さらに、第1ストレージ・マネージャは、更新されたマッピングに基づいてデータを第1ストレージ・マネージャからストレージ・システムに書き込む書込み要素を備える。
本発明の特徴および態様によるアクティブ−アクティブ・ストレージ・マネージャでサポートされる例示的ストレージ・エリア・ネットワークの概念図である。 本発明の特徴および態様による(仮想ストレージ・ボリュームを管理する)アクティブ−アクティブ・ストレージ・マネージャでサポートされる例示的ストレージ・エリア・ネットワークのブロック図である。 (仮想ストレージ・ボリュームを管理する)アクティブ−アクティブ・ストレージ・マネージャでストレージ・エリア・ネットワークをサポートするための本発明の特徴および態様による例示的方法を記述する流れ図である。 (仮想ストレージ・ボリュームを管理する)アクティブ−アクティブ・ストレージ・マネージャでストレージ・エリア・ネットワークをサポートするための本発明の特徴および態様による代替の例示的方法を記述する流れ図である。 書込み要求を受信するための例示的な追加の詳細を記述する流れ図である。 マッピングを受信するための例示的な追加の詳細を記述する流れ図である。 第2書込み要求を受信するための例示的な追加の詳細を記述する流れ図である。 仮想ストレージ・ボリュームが異なるストレージ・マネージャによって維持される複数の部分を含むときの本発明の特徴および態様による代替の例示的方法を記述する流れ図である。 本発明の特徴および態様によるストレージ・エリア・ネットワーク内の(仮想ストレージ・ボリュームを管理する)例示的ストレージ・マネージャのブロック図である。
図1は、本発明の特徴および態様による(仮想ストレージ・ボリュームを管理する)アクティブ−アクティブ・ストレージ・マネージャでサポートされる例示的ストレージ・エリア・ネットワークの概念図である。第1ストレージ・マネージャ133は、第1ストレージ・システム143(のエリア)への第1仮想ストレージ・ボリューム123の第1部分の第1マッピング162と、第2ストレージ・システム146(のエリア)への第1仮想ストレージ・ボリューム123の第2部分の第2マッピング165とを維持する。第2ストレージ・マネージャ136は、第2ストレージ・システム146(の別のエリア)への第2仮想ストレージ・ボリューム126(の部分)の第3マッピング168を維持する。より具体的には、ストレージ・マネージャは、マッピングを更新することを担当することによってマッピングを「維持」し、マッピングを更新することを許可されるストレージ・マネージャの中で唯一のストレージ・マネージャでよい。
ストレージ・マネージャは、コンピュータ・サーバ(例えば、113および116)に仮想ストレージ・ボリュームを提示し、コンピュータ・サーバが実際のストレージ・ボリュームにアクセスしているかのようにストレージ・マネージャと通信することによってコンピュータ・サーバが仮想ストレージ・ボリュームにアクセスすることを可能にする。コンピュータ・サーバ(113および116)が見るビューを示すために図で点線を使用し、ストレージ・マネージャとコンピュータ・サーバとの間の通信に関する実際のアクセス・リンクを示すために図で実線を使用する。より具体的には、第1コンピュータ・システム113は、点線で表すように第1仮想ストレージ・ボリューム123および第2仮想ストレージ・ボリューム126を認識している。同様に、第2コンピュータ・システム116も2つの仮想ストレージ・ボリューム(123および126)を認識している。
第1コンピュータ・システム113は、第1アクセス・リンク153を通じて第1ストレージ・マネージャ133と通信することによって第1仮想ストレージ・ボリューム123にアクセスすることができる。(あるいは、第1コンピュータ・システム113は、第2アクセス・リンク154を通じて第2ストレージ・マネージャ136と通信することによって第1仮想ストレージ・ボリューム123にアクセスすることもできる。)その後で、第1ストレージ・マネージャ133は、第1マッピング162に基づいて、第1コンピュータ・システム113によってアクセスされている第1仮想ストレージ・ボリューム123の一部が、第1ストレージ・システム143のエリアにマッピングされると判定することができる。次いで、第1コンピュータ・システム113がバックグラウンド・マッピングの知識を有することなく、第1ストレージ・マネージャ133は第1ストレージ・システム143のエリアにアクセスする。同様に、第2コンピュータ・システム116は、第2アクセス・リンク156を通じて第2ストレージ・マネージャ136と通信することによって第2仮想ストレージ・ボリューム126にアクセスすることができる(あるいは、第2コンピュータ・システム116は、第4アクセス・リンク158を通じて第1ストレージ・マネージャ133と通信することによって第2仮想ストレージ・ボリューム126にアクセスすることもできる)。その後で、第2ストレージ・マネージャ136は、第3マッピング168に基づいて、第2仮想ストレージ・ボリューム126のすべてが第2ストレージ・システム14のエリアにマッピングされると判定することができる。
実際、バックグラウンドでのストレージ・システム(例えば143および146)はコンピュータ・システム(例えば113および116)に対して仮想化/抽象化され、したがってコンピュータ・システムはストレージ・システムを認識しない。むしろ、上述のように、マッピングにより、コンピュータ・システムが実際のストレージ・ボリュームにアクセスしているかのように、コンピュータ・システムが仮想ストレージ・ボリュームにアクセスするためにストレージ・マネージャと通信することが可能となる。有益には、コンピュータ・システムにどんな影響または変更も及ぼすことなく(仮想ストレージ・ボリュームをサイズ変更するために)仮想ストレージ・ボリュームの部分(例えば、123および126)を異なるストレージ・システム(例えば、143および146)にマッピングすることができる。
上述のように、第1コンピュータ・システム113は、どちらかのストレージ・マネージャ(例えば、133および136)を通じて仮想ストレージ・ボリューム(例えば123および126)にアクセスすることができる。同様に、第2コンピュータ・システム116も、どちらかのストレージ・マネージャ(例えば、133および136)を通じて仮想ストレージ・ボリューム(例えば、123および126)にアクセスすることができる。やはり上述のように、第2ストレージ・システム146への第2仮想ストレージ・ボリューム126の第3マッピング168が、第1ストレージ・マネージャ133ではなく第2ストレージ・マネージャ136によって維持される。
一例では、第1コンピュータ・システム113は、第1ストレージ・マネージャ133と通信して、データを第2仮想ストレージ・ボリューム126に書き込むことを要求することがある。第1ストレージ・マネージャ133は、第2ストレージ・マネージャ136にデータを「シッピング」しない。むしろ、第3マッピング168を更新する必要がある場合、第1ストレージ・マネージャ133は、第3マッピング168を更新するために改良型アクティブ−アクティブ・リンク175を通じて第2ストレージ・マネージャ136に更新要求を送信する。その後で、第1ストレージ・マネージャ133は、第2ストレージ・マネージャ136によって更新された第3マッピング168に基づいて、第2ストレージ・システム146にデータを書き込む。ある例では、第3マッピング168は、アクティブ−アクティブ・リンク175を介して受信されている可能性がある。別の例では、第1コンピュータ・システム113は、第2ストレージ・マネージャ136と通信して、やはりデータを第2仮想ストレージ・ボリューム126に書き込むことを要求することがある。第2ストレージ・マネージャ136はマッピングを維持するので、第2ストレージ・マネージャ136は、他のストレージ・マネージャとの対話なしに(第2ストレージ・マネージャ136自体で更新されていることがある)第3マッピング168に基づいて第2ストレージ・システム146にデータを書き込むことができる。
有益には、改良型アクティブ−アクティブ・リンク175が第1ストレージ・マネージャ133と第2ストレージ・マネージャ136との間に設けられ、その結果バックグラウンドで調整される情報量が劇的に低下することに留意されたい。実際には、改良型アクティブ−アクティブ・リンク175を使用することにより、ストレージ・マネージャによって維持されるマッピングを別のストレージ・マネージャと共有することができる。
第1ストレージ・マネージャ133および第2ストレージ・マネージャ136のそれぞれは、とりわけFibre Channelアプライアンス、Redundant Array of Independent Disks(「RAID」)コントローラ、またはエンハンスドFibre Channelスイッチを含むコンピューティング・デバイスを備えることができる。例えば、Fibre Channelプロトコル(「FCP」)内にカプセル化されたコマンドに基づいて行動を起こすようにFibre Channelスイッチを機能強化することができる。第1マッピング162、第2マッピング165、および第3マッピング168のそれぞれは、多種多様な構成で配列された1つまたは複数のテーブルおよび/またはデータベースのエントリに対応することができる。第1仮想ストレージ・ボリューム123および第2仮想ストレージ・ボリューム126はそれぞれ、(ストレージ・マネージャによって)コンピュータ・システムに論理ユニットとして提示することができ、論理ユニット番号(「LUN」)と関連付けることができる。第1ストレージ・システム143および第2ストレージ・システム146のそれぞれは、ディスク・ドライブ、複数のディスク・ドライブ、ディスク・アレイ、1つまたは複数のテープ・ドライブまたは光磁気ドライブ、ならびに/あるいはデータ・ストレージ用の任意の他のデバイス(複数可)またはシステム(複数可)を含むことができる。
第1アクセス・リンク153、第2アクセス・リンク154、第3アクセス・リンク157、および第4アクセス・リンク158のそれぞれは、Fibre ChannelネットワークのFibre Channelリンクを備えることができる。とりわけInfiniBand、Serial Attached SCSI(「SAS」)、Serial Advanced Technology Attachment(「SATA」)、インターネットSCSI(「iSCSI」)、および/またはFibre Channel over Ethernet(登録商標)(「FCoE」)を含む他の適切な通信媒体/プロトコルを使用することもできる。改良型アクティブ−アクティブ・リンク175は、Fibre Channelリンクまたはイーサネット・リンクを備えることができ、第1ストレージ・マネージャ133および第2ストレージ・マネージャ136が、とりわけFibre Channelネットワーク・プロトコルおよびインターネット・プロトコル(「IP」)から選択されたプロトコルを使用して通信することを可能にする。とりわけInfiniBandおよび/またはSerial Attached SCSI(「SAS」)を含む任意の他の適切な通信媒体/プロトコルを使用して、改良型アクティブ−アクティブ・リンク175を設けることもできる。
図2は、本発明の特徴および態様による(仮想ストレージ・ボリュームを管理する)アクティブ−アクティブ・ストレージ・マネージャでサポートされる例示的ストレージ・エリア・ネットワークのブロック図である。第1コンピュータ・システム113は、第1ストレージ・マネージャ133および/または第2ストレージ・マネージャ136と通信することができる。同様に、第2コンピュータ・システム116は、第1ストレージ・マネージャ133および/または第2ストレージ・マネージャ136と通信することができる。
第1ストレージ・マネージャ133も、第1ストレージ・システム143と第2ストレージ・システム146のどちらとも通信する。同様に、第2ストレージ・マネージャ136も、第1ストレージ・システム143と第2ストレージ・システム146のどちらとも通信する。こうした通信は、とりわけFibre Channelネットワークで実施することができる。さらに、第1ストレージ・マネージャ133は第2ストレージ・マネージャ136と通信する。上述のように、とりわけFibre Channelネットワーク・プロトコルおよびインターネット・プロトコル(「IP」)から選択されたプロトコルを使用して、通信を実施することができる。
管理ステーション210はストレージ仮想化マネージャ(「SVM」)230と通信する。SVM230は、第1ストレージ・マネージャ133および第2ストレージ・マネージャ136とも通信する。管理ステーション210により、ユーザが、コンピュータ・システムにとって利用可能な仮想ストレージ・ボリュームを構成し、かつ/またはストレージ・システムへの仮想ストレージ・ボリュームのマッピングを構成することが可能となる。したがって、SVM230は、第1ストレージ・システム143、第2ストレージ・システム146、および/または記憶デバイス260とも通信することができる。本質的には、SVM230は、例えばどのようにストレージを用意/提示すべきかを管理することにより、ストレージ仮想化/分散ストレージのための集中管理を実現する。SVM230は、ストレージ・マネージャの内部または外部でよく、特別なアプライアンスまたはソフトウェアでよい。
管理ステーション210はユーザ・インターフェースを提示することができ、ユーザが仮想ストレージ・ボリュームを作成し、仮想ストレージ・ボリュームの一部をストレージ・システムのエリアにマッピングすべきであることを指定し、どのストレージ・マネージャがマッピングを維持すべきかを指定する(したがって、仮想ストレージ・ボリュームの一部に関する「好ましい」ストレージ・マネージャを定義する)ことを可能にする。ユーザ・インターフェースからの構成入力がSVM230に転送され、SVM230は、構成情報をストレージ・マネージャに配布する。こうした通信は、Fibre Channelネットワーク・プロトコルおよびインターネット・プロトコル(「IP」)ら選択されたプロトコルを使用して、またはとりわけInfiniBandおよび/またはSerial Attached SCSI(「SAS」)を含む任意の他の適切な通信媒体/プロトコルを使用して実施することができる。
SVM230以外に、他のストレージ・マネージャまたはサード・パーティ構成要素も構成情報を配布することができる。ユーザによる手動構成以外に、ある例では、少なくともストレージ・マネージャとの接続のステータスに基づいて、構成情報を自動的に生成することもできる。例えば、ストレージ・マネージャに対する接続が(例えば、恐らくは改良型アクティブ−アクティブ・リンクを介して送信されるヘルシー・ハート・ビート・メッセージ(healthy heart beat message)によって証明されるように)引き続き健全である場合、ストレージ・マネージャは、マッピングを引き続き維持すべきである。ストレージ・マネージャに対する接続がもはや健全ではない場合(またはそのストレージ・マネージャに対する接続が健全ではないことを示すストレージ・マネージャが、接続が健全であることを示すストレージ・マネージャよりも多い場合)、別のストレージ・マネージャがマッピングを維持すべきである。
別の例では、負荷平衡メトリックに基づいて構成情報を自動的に生成することができる。例えば、ストレージ・マネージャによって維持されるマッピングが非常に使用/更新される場合、別のストレージ・マネージャがマッピングの一部を維持して、ストレージ・マネージャ間の負荷の平衡を取ることが有益である。さらに別の例では、マッピングを更新する必要がある可能性があると各ストレージ・マネージャが判定した回数が追跡される。好ましくは、最も頻繁にマッピングを更新する必要があるストレージ・マネージャは、他のどんなストレージ・マネージャよりもむしろ、マッピングを維持するストレージ・マネージャでよい。
ストレージ・システムのエリアへの仮想ストレージ・ボリュームまたは仮想ストレージ・ボリュームの一部のそれぞれのマッピング(例えば、図1の第1マッピング162、第2マッピング165、および第3マッピング168)は、各ストレージ・マネージャで内部的または外部的に維持することができる。例えば、ある例では、各ストレージ・マネージャは、内部メモリおよび/または外部記憶デバイス内にマッピング・データを格納することができる。ある例では、マッピング・データは、ストレージ・マネージャ間で共有される記憶デバイス260上に格納することができる。
記憶デバイス260は、第1ストレージ・マネージャ133と第2ストレージ・マネージャ136のどちらも記憶デバイス260と通信することができるように、ディスク・ドライブ、ソリッド・ステート・ドライブ、ストレージ・システムまたはストレージ・アレイのエリアを備えることができる。記憶デバイス260は、第1マッピング162に対応する第1マッピング・データ262と、第2マッピング165に対応する第2マッピング・データ265と、第3マッピング168に対応する第3マッピング・データ268とを含む。上述のように、マッピングは、多種多様な構成で配列された1つまたは複数のテーブルおよび/またはデータベースのエントリに対応することができる。例えば、マッピング・データ(すなわち、ストレージ・システムのエリアへの1つまたは複数の仮想ストレージ・ボリュームのマッピング部分に関するデータ)はそれぞれ、単一のテーブル、仮想ストレージ・ボリュームにそれぞれ対応する別々のテーブル、データベース、または任意の他の適切な構造で配列することができる。
完全に機能するストレージ・エリア・ネットワーク内の多数の追加のかつ等価な構成要素およびモジュールを当業者は直ちに理解されよう。この議論を簡単かつ簡潔にするため、そのような追加のかつ等価な構成要素は本明細書では省略する。したがって、図1および2の構造は、本発明の特徴および態様の例示的実施形態を表すものに過ぎない。
図3は、(仮想ストレージ・ボリュームを管理する)アクティブ−アクティブ・ストレージ・マネージャでストレージ・エリア・ネットワークをサポートするための本発明の特徴および態様による例示的方法を記述する流れ図である。ステップ310で、第1ストレージ・マネージャが、仮想ストレージ・ボリュームに書き込むべきデータを含む書込み要求を受信する。第1ストレージ・マネージャは読取り要求も受信できることに留意されたい。いずれの場合も、次いで第1ストレージ・マネージャは、第1ストレージ・マネージャがストレージ・システムへの仮想ストレージ・ボリュームのマッピングを有するかどうかを判定する。ストレージ・マネージャでマッピングを受信した後に受信マッピングをキャッシュすることができるが、ストレージ・マネージャは、キャッシュしたマッピングを無効にするための無効化要求を受信することができることに留意されたい。第1ストレージ・マネージャがマッピングを有さない場合、一例では、第1ストレージ・マネージャは、マッピングを維持するストレージ・マネージャにマッピングを要求することができる。一例では、第1ストレージ・マネージャは、マッピングを維持するストレージ・マネージャと共有される記憶デバイスからマッピングにアクセスすることができる。読取り要求では、第1ストレージ・マネージャがマッピングを有すると、第1ストレージ・マネージャは、マッピングに基づいてストレージ・システムに読取り要求を送信する。
書込み要求では、ステップ320で、第1ストレージ・マネージャはまた、書込み要求の結果、ストレージ・システムへの仮想ストレージ・ボリュームのマッピングが更新されることがあるかどうかを判定する。例えば、第1ストレージ・マネージャは、書込み要求のタイプをチェックすることができる。代替実施形態の中でもとりわけ、既存のマッピングが書込み要求をサービスするのに十分なストレージを提供しないので、第1ストレージ・マネージャでマップ障害が生成されていることがある。上述の2つの判定ステップを組み合わせて、a)マッピングが存在しないこと、またはb)書込み要求では、マッピングを更新する必要があることを判定することができることに留意されたい。したがって、以下で論じるステップ340の更新要求は、マッピングを更新することを求める要求と、マッピングを要求することを求める要求のいずれかとなることができる。しかし、明快のため、判定ステップを別々に論じる。
ほとんどの場合そうであるが、書込み要求がマッピングの更新に関係しないとき、ステップ330で、ストレージ・マネージャは単に、既存のマッピングに基づいてストレージ・システム(すなわち、コンピュータ・システムによってアクセスされている仮想ストレージ・ボリュームの部分に対応するストレージ・システム)にデータを書き込む。第1ストレージ・マネージャは、他のストレージ・マネージャと対話することなくそのように行なうことができる。
そうでない場合、ステップ340で、第1ストレージ・マネージャは、書込み要求に応答して第2ストレージ・マネージャに更新要求を送信する。更新要求は、ストレージ・システム(または別のストレージ・システム)への仮想ストレージ・ボリュームのマッピングを更新するために送信される。ステップ350で、第1ストレージ・マネージャは、更新されたマッピングを受信する。ステップ360で、第1ストレージ・マネージャは、更新されたマッピングに基づいて、ストレージ・システムにデータを書き込む。実際には、判定ステップ320は、マッピングの更新に関係しない書込み要求を、マッピングが更新されることがある書込み要求と分離する。
図4は、(仮想ストレージ・ボリュームを管理する)アクティブ−アクティブ・ストレージ・マネージャでストレージ・エリア・ネットワークをサポートするための本発明の特徴および態様による代替の例示的方法を記述する流れ図である。ステップ410で、第2ストレージ・マネージャが仮想ストレージ・ボリュームのマッピングを更新することを担当するという情報をストレージ・システムに配布する。上述のように、ストレージ仮想化マネージャ(「SVM」)を設けて、管理ステーションから受信した構成情報をストレージ・マネージャに配布することができる。しかし、他のストレージ・マネージャまたはサード・パーティ構成要素も構成情報を配布することができる。ステップ420で、第1ストレージ・マネージャは、コンピュータ・システムから第1書込み要求を受信する。要求は、仮想ストレージ・ボリュームに書き込むべき第1データを含む。ステップ430で、第1ストレージ・マネージャは、第1書込み要求に応答して、マッピングを更新することを求める更新要求を第2ストレージ・マネージャに送信する。ステップ440で、第2ストレージ・マネージャはマッピングを更新する。
ステップ450で、第2ストレージ・マネージャは、第3ストレージ・マネージャでキャッシュされるマッピングを無効にするための第1無効化要求を第3ストレージ・マネージャに送信することができる。ステップ460で、第3ストレージ・マネージャは、第3ストレージ・マネージャでキャッシュされるマッピングを無効にするための第1無効化要求を受信することができる。第1ストレージ・マネージャは、ステップ430で更新要求を送信した後に第1ストレージ・マネージャにキャッシュされるマッピングを無効にできることに留意されたい。別の例では、ストレージ・マネージャはどんなマッピングもキャッシュしないことがあり、したがって無効化要求を送信する必要はない。理解できるように、方法は、3つ以上のストレージ・マネージャをサポートするように直ちに容易に拡張することができる(すなわちN方向アクティブ−アクティブ実装)。
ステップ470で、第1ストレージ・マネージャは、更新されたマッピングを受信する。例えば、第1ストレージ・マネージャは、マッピングが更新されたという表示を第2ストレージ・マネージャから受信することができる。マッピングを受信することをより詳細に説明する。ステップ480で、第1ストレージ・マネージャは、更新されたマッピングに基づいて第1データをストレージ・システムに書き込む。有益には、第1ストレージ・マネージャは、データが第2ストレージ・マネージャで受信されることなく第1データを書き込み、したがってバックグラウンドで調整される情報量が劇的に低下する。ステップ490で、第2ストレージ・マネージャは第2書込み要求を受信し、第2データが第1ストレージ・マネージャで受信されることなく第2データを書き込む。ステップ490の詳細をより詳しく説明する。
図5は、書込み要求を受信するための例示的な追加の詳細を記述する流れ図である。ステップ320で、第1ストレージ・マネージャは、書込み要求の受信に応答してマッピングを更新する必要があるかどうかを判定する。ほとんどの場合そうであるが、書込み要求がマッピングを更新することに関係しないとき、ステップ330で、第1ストレージ・マネージャは単に、既存のマッピングに基づいてストレージ・システムにデータを書き込む。第1ストレージ・マネージャは、他のストレージ・マネージャと対話することなくそのように行なうことができる。そうでない場合、ステップ510で、第1ストレージ・マネージャは、第2ストレージ・マネージャがマッピングを更新することを担当すると判定する。例えば、この情報は、SVMによって第1ストレージ・マネージャに配布されていることがある。
図6は、マッピングを受信するための例示的な追加の詳細を記述する流れ図である。ある例では、ステップ610で、第1ストレージ・マネージャは、更新されたマッピングを第2ストレージ・マネージャから受信する。ある代替実施形態では、第2ストレージ・マネージャが第1ストレージ・マネージャからの更新要求に応答するときの同じ応答メッセージで、更新されたマッピングを第1ストレージ・マネージャによって受信することができる。別の代替実施形態では、更新されたマッピングを別々のメッセージで送信することができる。さらに別の代替実施形態では、マッピングのために第1ストレージ・マネージャが(更新要求以外の)第2要求を送信した後に、更新されたマッピングを第1ストレージ・マネージャによって受信することができる。別の例では、ステップ620で、第1ストレージ・マネージャは、第2ストレージ・マネージャと共有される記憶デバイスから更新されたマッピングを読み取ることにより、更新されたマッピングを受信する。
図7は、第2ストレージ・マネージャで第2書込み要求を受信するための例示的な追加の詳細を記述する流れ図である。ステップ710で、第2ストレージが、別のコンピュータ・システムから第2書込み要求を受信する。第2書込み要求は、仮想ストレージ・ボリュームに書き込むべき第2データを含む。ステップ720で、第2ストレージ・マネージャは、第2書込み要求に応答して、第1書込み要求に応答して既に更新されているマッピングを更新する。ステップ420に関して上記で述べた詳細と同様に、第2ストレージ・マネージャは、マッピングを更新する必要があること、および第2ストレージ・マネージャ自体がマッピングを更新することを担当することを判定することもできる。
ステップ730で、第2ストレージ・マネージャは、第1書込み要求に応答して既に更新されており、第1ストレージ・マネージャでキャッシュされるマッピングを無効にするための無効化要求を第1ストレージ・マネージャに送信することができる。しかし、別の例では、ストレージ・マネージャは、上述のようにどんなマッピングもキャッシュしないことがあり、したがって無効化要求を送信する必要はない。ステップ740で、第2ストレージ・マネージャは、第2書込み要求に応答して再び更新されたマッピングに基づいて第2データをストレージ・システムに書き込む。第2ストレージ・マネージャは、第2データが第1ストレージ・マネージャで受信されることなく第2データを書き込むことに留意されたい。
図8は、仮想ストレージ・ボリュームが異なるストレージ・マネージャによって維持される複数の部分を含むときの本発明の特徴および態様による代替の例示的方法を記述する流れ図である。ステップ810で、第1ストレージ・マネージャは、仮想ストレージ・ボリュームの第1部分に書き込むべき第1データを含む第1書込み要求を受信する。ステップ420に関して上記で説明した詳細と同様に、第1ストレージ・マネージャは、第1マッピングを更新する必要があること、および第2ストレージ・マネージャが第1マッピングを更新することを担当することを判定することもできる。ステップ820で、第1ストレージ・マネージャは、第1書込み要求に応答して、ストレージ・システムへの仮想ストレージ・ボリュームの第1部分の第1マッピングを更新することを求める更新要求を第2ストレージ・マネージャに送信する。ステップ830で、第1ストレージ・マネージャは、更新された第1マッピングを受信する。ステップ840で、第1ストレージ・マネージャは、更新された第1マッピングに基づいて第1データをストレージ・システムに書き込む。第1ストレージ・マネージャは、第1データが第2ストレージ・マネージャで受信されることなく第1データを書き込むことに留意されたい。
ステップ850で、第1ストレージ・マネージャは、仮想ストレージ・ボリュームの第2部分に書き込むべき第2データを含む第2書込み要求を受信する。ステップ420に関して上記で述べた詳細と同様に、第1ストレージ・マネージャは、第2マッピングを更新する必要があること、および第1ストレージ・マネージャ自体が第2マッピングを更新することを担当することを判定することもできる。ステップ860で、第1ストレージ・マネージャは、ストレージ・システムへの仮想ストレージ・ボリュームの第2部分の第2マッピングを更新する。ステップ870で、第1ストレージ・マネージャは、第2書込み要求に応答して更新された第2マッピングに基づいて第2データをストレージ・システムに書き込む。第1ストレージ・マネージャは、第2データが第2ストレージ・マネージャで受信されることなく第2データを書き込むことに留意されたい。
図3から8の方法で実施および/または省略することのできる多数の追加のかつ等価なステップを当業者は直ちに理解されよう。この議論を簡単かつ簡潔にするため、そのような追加のかつ等価なステップは本明細書では省略する。
図9は、本発明の特徴および態様によるストレージ・エリア・ネットワーク内の(仮想ストレージ・ボリュームを管理する)例示的ストレージ・マネージャのブロック図である。第1ストレージ・マネージャ133は、第1受信要素910、書込み要素930、およびアクティブ−アクティブ・リンク要素920を備える。第1受信要素は、第1コンピュータ・システム113から仮想ストレージ・ボリュームに書き込むべきデータを含む書込み要求を受信するように適合される。アクティブ−アクティブ・リンク要素920は、送信要素923および第2受信要素926を備える。アクティブ−アクティブ・リンク要素920はSVM230と第2ストレージ・マネージャ136のどちらとも通信する。より具体的には、送信要素923は、第1ストレージ・システム143への仮想ストレージ・ボリュームのマッピングを更新することを求める更新要求を第2ストレージ・マネージャ136に送信するように適合される。第2受信要素926は、更新されたマッピングを受信するように適合される。書込み要素930は、更新されたマッピングに基づいてデータを書き込む第1ストレージ・システム143と通信する。こうした要素のそれぞれは、カスタム化集積回路、プログラマブルロジックを使用して実装することができ、かつ/またはソフトウェア/ファームウェアで実装することができる。
完全に機能するストレージ・マネージャ内の多数の追加のかつ等価な構成要素およびモジュールを当業者は直ちに理解されよう。この議論を簡単かつ簡潔にするため、そのような追加のかつ等価な構成要素は本明細書では省略する。したがって、図9の構造は、本発明の特徴および態様の例示的実施形態を表すものに過ぎない。
図面および上記の説明で本発明を図示し、説明したが、そのような図示および説明は、限定的な性質のものではなく、例示的な性質のものであるとみなされるべきである。本発明の一実施形態およびその小さな変形形態を図示し、説明した。本発明の精神の中に包含されるすべての変更および修正について保護が望まれる。本発明の範囲内に包含される上述の実施形態の変形形態を当業者は理解されよう。その結果、本発明は、上記で論じた特定の例および図示に限定されず、以下の特許請求の範囲およびその均等物のみによって限定される。

Claims (14)

  1. ストレージ・エリア・ネットワーク(「SAN」)をサポートする方法であって、
    コンピュータ・システムから、仮想ストレージ・ボリュームに書き込むべきデータを含む書込み要求を前記SANの第1ストレージ・マネージャで受信すること、
    前記書込み要求の結果、ストレージ・システムへの前記仮想ストレージ・ボリュームのマッピングが更新されることがあるかどうかを判定すること、
    前記書込み要求が第2ストレージ・マネージャによる前記マッピングの更新に関係しないとき、既存の前記マッピングに基づいて、前記第1ストレージ・マネージャから前記ストレージ・システムに前記データを書き込むこと、
    前記コンピュータ・システムから、やはり前記仮想ストレージ・ボリュームに書き込むべき別のデータを含む別の書込み要求を前記第2ストレージ・マネージャで受信すること
    記別の書込み要求の前記別のデータを前記第2ストレージ・マネージャから前記ストレージ・システムに書き込むこと
    前記書込み要求に応答して、ストレージ・システムへの仮想ストレージ・ボリュームのマッピングを更新することを求める更新要求を、前記第1ストレージ・マネージャから前記第2ストレージ・マネージャに送信すること、
    更新された前記マッピングを更新後マッピングとして前記第1ストレージ・マネージャで受信すること、および
    前記更新後マッピングに基づいて前記データを前記第1ストレージ・マネージャから前記ストレージ・システムに書き込むことを含むことを特徴とする方法。
  2. 前記更新要求が、Fibre Channelネットワーク・プロトコルおよびインターネット・プロトコル(「IP」)から選択されたプロトコルを使用して送信され、
    前記ストレージ・システムが複数のディスク・ドライブを備え、
    前記第1ストレージ・マネージャが、前記データが前記第2ストレージ・マネージャで受信されることなく前記ストレージ・システムに前記データを書き込む請求項に記載の方法。
  3. マッピングを無効にするための無効化要求を第3ストレージ・マネージャで受信することであって、前記マッピングが前記第3ストレージ・マネージャでキャッシュされること
    をさらに含む請求項に記載の方法。
  4. 前記第1ストレージ・マネージャが、前記第2ストレージ・マネージャと共有される記憶デバイスから前記更新後マッピングを読み取ることによって前記更新後マッピングを受信する請求項に記載の方法。
  5. 前記書込み要求が第1書込み要求であり、前記データが第1データである、請求項に記載の方法であって、
    前記仮想ストレージ・ボリュームに書き込むべき第2データを含む第2書込み要求を前記第2ストレージ・マネージャで受信すること、
    前記第2書込み要求に応答して、前記第1書込み要求に応答して既に更新されている前記マッピングを前記第2ストレージ・マネージャで更新すること、および
    前記第2書込み要求に応答して再び更新された前記マッピングに基づいて前記第2データを前記第2ストレージ・マネージャから前記ストレージ・システムに書き込むこと
    をさらに含む方法。
  6. 前記第1書込み要求に応答して既に更新されており、前記第1ストレージ・マネージャでキャッシュされる前記マッピングを無効にするための無効化要求を前記第2ストレージ・マネージャから前記第1ストレージ・マネージャに送信すること
    をさらに含み、
    前記第2ストレージ・マネージャが、前記第2データが前記第1ストレージ・マネージャで受信されることなく前記ストレージ・システムに前記第2データを書き込む請求項に記載の方法。
  7. 前記第2ストレージ・マネージャが前記マッピングを更新することを担当するという情報を配布すること
    をさらに含み、
    前記情報が、ユーザによってユーザ・インターフェースを通じて管理される請求項に記載の方法。
  8. 前記第2ストレージ・マネージャが前記マッピングを更新することを担当するという情報を配布すること
    をさらに含み、
    前記情報が、少なくとも前記第2ストレージ・マネージャとの接続のステータスに基づいて自動的に生成される請求項に記載の方法。
  9. 前記第2ストレージ・マネージャが前記マッピングを更新することを担当するという情報を配布すること
    をさらに含み、
    前記情報が、負荷平衡メトリックに基づいて自動的に生成される請求項に記載の方法。
  10. 前記マッピングを更新する必要があると前記第1ストレージ・マネージャで判定すること
    をさらに含み、
    前記負荷平衡メトリックが、前記マッピングを更新する必要があると各ストレージ・マネージャが判定した回数を含む請求項に記載の方法。
  11. 前記仮想ストレージ・ボリュームが複数の部分を含み、
    前記書込み要求が第1書込み要求であり、
    前記データが第1データであり、
    前記第1データを前記仮想ストレージ・ボリュームの第1部分に書き込むべきであり、
    前記マッピングが、前記ストレージ・システムへの前記仮想ストレージ・ボリュームの前記第1部分の第1マッピングである、請求項に記載の方法であって、
    前記仮想ストレージ・ボリュームの第2部分に書き込むべき第2データを含む第2書込み要求を前記第1ストレージ・マネージャで受信すること、
    前記第2書込み要求に応答して、前記ストレージ・システムへの前記仮想ストレージ・ボリュームの前記第2部分の第2マッピングを前記第1ストレージ・マネージャで更新すること、および
    前記第2書込み要求に応答して更新された前記第2マッピングに基づいて前記第2データを前記第1ストレージ・マネージャから前記ストレージ・システムに書き込むこと
    をさらに含み、
    前記第1ストレージ・マネージャが、前記第2データが前記第2ストレージ・マネージャで受信されることなく前記ストレージ・システムに前記第2データを書き込む方法。
  12. 第1ストレージ・マネージャ(133)に含まれる、ストレージ・エリア・ネットワーク(「SAN」)をサポートする装置であって、
    仮想ストレージ・ボリューム(123)に書き込むべきデータを含む書込み要求をコンピュータ・システム(113)から受信するように適合された第1受信要素(910)と、
    前記書込み要求に応答して、ストレージ・システム(143)への前記仮想ストレージ・ボリュームのマッピングを更新することを求める更新要求を、前記第1ストレージ・マネージャから前記SANの前記第2ストレージ・マネージャ(136)に送信する送信要素(923)と、
    更新された前記マッピングを受信する第2受信要素(926)と、
    前記更新されたマッピングに基づいて前記データを前記第1ストレージ・マネージャから前記ストレージ・システムに書き込む書込み要素(930)と
    を備え、
    前記第2ストレージ・マネージャ(136)が、やはり前記仮想ストレージ・ボリューム(123)に書き込むべき別のデータを含む別の書込み要求を前記コンピュータ・システム(113)から受信し、前記ストレージ・システム(143)に前記別の書込み要求の前記別のデータを書き込むことを特徴とする装置。
  13. 前記送信要素が、Fibre Channelネットワーク・プロトコルおよびインターネット・プロトコル(「IP」)から選択されたプロトコルを使用して前記更新要求を送信し、
    前記ストレージ・システムが複数のディスク・ドライブを備え、
    前記書込み要素が、前記データが前記第2ストレージ・マネージャで受信されることなく前記ストレージ・システムに前記データを書き込む請求項1に記載の装置。
  14. 前記仮想ストレージ・ボリュームが複数のエリアを含み、
    前記書込み要求が第1書込み要求であり、
    前記データが第1データであり、
    前記第1データを前記仮想ストレージ・ボリュームの第1エリアに書き込むべきであり、
    前記マッピングが、前記ストレージ・システムへの前記仮想ストレージ・ボリュームの前記第1エリアの第1マッピングであり、
    前記第1受信要素がさらに、前記仮想ストレージ・ボリュームの第2エリアに書き込むべき第2データを含む第2書込み要求を受信するように適合される、請求項1に記載の装置であって、
    前記第2書込み要求に応答して、前記ストレージ・システムへの前記仮想ストレージ・ボリュームの前記第2エリアの第2マッピングを更新する更新要素をさらに備え、
    前記書込み要素がさらに、前記第2書込み要求に応答して更新された前記第2マッピングに基づいて前記第2データを、前記第2データが前記第2ストレージ・マネージャで受信されることなく前記第1ストレージ・マネージャから前記ストレージ・システムに書き込むように適合される装置。
JP2012507189A 2009-04-23 2009-05-12 ストレージ・エリア・ネットワーク(「san」)内の仮想ストレージ管理のアクティブ−アクティブ・サポート Expired - Fee Related JP5404914B2 (ja)

Applications Claiming Priority (3)

Application Number Priority Date Filing Date Title
US12/428,703 US8239653B2 (en) 2009-04-23 2009-04-23 Active-active support of virtual storage management in a storage area network (“SAN”)
US12/428,703 2009-04-23
PCT/US2009/043561 WO2010123510A1 (en) 2009-04-23 2009-05-12 Active-active support of virtual storage management in a storage area network ("san")

Publications (2)

Publication Number Publication Date
JP2012524934A JP2012524934A (ja) 2012-10-18
JP5404914B2 true JP5404914B2 (ja) 2014-02-05

Family

ID=42993130

Family Applications (1)

Application Number Title Priority Date Filing Date
JP2012507189A Expired - Fee Related JP5404914B2 (ja) 2009-04-23 2009-05-12 ストレージ・エリア・ネットワーク(「san」)内の仮想ストレージ管理のアクティブ−アクティブ・サポート

Country Status (7)

Country Link
US (1) US8239653B2 (ja)
EP (1) EP2422272B1 (ja)
JP (1) JP5404914B2 (ja)
KR (1) KR101392606B1 (ja)
CN (1) CN102576329B (ja)
TW (1) TWI439094B (ja)
WO (1) WO2010123510A1 (ja)

Families Citing this family (9)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US20110191626A1 (en) * 2010-02-01 2011-08-04 Sqalli Mohammed H Fault-tolerant network management system
GB2487457B (en) * 2011-01-13 2014-09-17 Avaya Inc Method for providing scalable storage virtualization
CN103516755B (zh) * 2012-06-27 2017-07-14 华为技术有限公司 虚拟存储方法及设备
US9582559B1 (en) * 2012-06-29 2017-02-28 EMC IP Holding Company LLC Multi-site storage system with replicated file system synchronization utilizing virtual block storage appliances
KR101544900B1 (ko) 2012-10-26 2015-08-17 주식회사 케이티 네트워크 스토리지 시스템 및 그 서비스 방법
CN106557280B (zh) * 2016-10-31 2019-10-15 北京华为数字技术有限公司 数据存储方法、存储阵列及主机服务器
US10789375B2 (en) * 2018-03-19 2020-09-29 Oxygen Cloud, Inc. Unified storage management
CN110998510B (zh) 2018-06-27 2021-02-23 华为技术有限公司 一种存储系统及存储系统的工作模式的切换方法
KR102241188B1 (ko) * 2019-11-21 2021-04-19 주식회사 가야데이터 이기종 스토리지 고가용성 서비스 제공 방법 및 스토리지 다중화 장치

Family Cites Families (14)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US6173374B1 (en) 1998-02-11 2001-01-09 Lsi Logic Corporation System and method for peer-to-peer accelerated I/O shipping between host bus adapters in clustered computer network
US6898670B2 (en) 2000-04-18 2005-05-24 Storeage Networking Technologies Storage virtualization in a storage area network
US7349961B2 (en) * 2001-12-07 2008-03-25 Hitachi, Ltd. Detecting configuration inconsistency in storage networks
US7181578B1 (en) * 2002-09-12 2007-02-20 Copan Systems, Inc. Method and apparatus for efficient scalable storage management
US7191225B1 (en) 2002-11-27 2007-03-13 Veritas Operating Corporation Mechanism to provide direct multi-node file system access to files on a single-node storage stack
US7328307B2 (en) * 2004-01-22 2008-02-05 Tquist, Llc Method and apparatus for improving update performance of non-uniform access time persistent storage media
US7747836B2 (en) 2005-03-08 2010-06-29 Netapp, Inc. Integrated storage virtualization and switch system
US7921301B2 (en) 2005-05-17 2011-04-05 Dot Hill Systems Corporation Method and apparatus for obscuring data on removable storage devices
JP4474356B2 (ja) * 2005-12-27 2010-06-02 富士通株式会社 コンピュータシステムおよびストレージ仮想化装置
US9032164B2 (en) * 2006-02-17 2015-05-12 Emulex Corporation Apparatus for performing storage virtualization
JP4963892B2 (ja) 2006-08-02 2012-06-27 株式会社日立製作所 仮想ストレージシステムの構成要素となることが可能なストレージシステムの制御装置
JP4932390B2 (ja) * 2006-08-31 2012-05-16 株式会社日立製作所 仮想化システム及び領域割当て制御方法
US7827192B2 (en) * 2006-12-29 2010-11-02 Network Appliance, Inc. Method and system for caching metadata of a storage system
JP5072692B2 (ja) * 2008-04-07 2012-11-14 株式会社日立製作所 複数のストレージシステムモジュールを備えたストレージシステム

Also Published As

Publication number Publication date
EP2422272A1 (en) 2012-02-29
EP2422272B1 (en) 2016-11-16
US8239653B2 (en) 2012-08-07
TW201039592A (en) 2010-11-01
WO2010123510A1 (en) 2010-10-28
EP2422272A4 (en) 2013-08-28
CN102576329A (zh) 2012-07-11
TWI439094B (zh) 2014-05-21
KR20140019885A (ko) 2014-02-18
CN102576329B (zh) 2015-12-16
US20100274969A1 (en) 2010-10-28
KR101392606B1 (ko) 2014-05-08
JP2012524934A (ja) 2012-10-18

Similar Documents

Publication Publication Date Title
JP5404914B2 (ja) ストレージ・エリア・ネットワーク(「san」)内の仮想ストレージ管理のアクティブ−アクティブ・サポート
US10963289B2 (en) Storage virtual machine relocation
US9141492B2 (en) Transparently migrating a storage object between nodes in a clustered storage system
US20070239944A1 (en) Apparatus for performing storage virtualization
CN105472047B (zh) 存储系统
US8140754B2 (en) Methods and apparatus for managing HDD's spin-down and spin-up in tiered storage systems
US20080114961A1 (en) Transparent device switchover in a storage area network
US9262087B2 (en) Non-disruptive configuration of a virtualization controller in a data storage system
US7529972B2 (en) Methods and apparatus for reconfiguring a storage system
JP2007207007A (ja) ストレージシステム、ストレージコントローラ及び計算機システム
US20070157002A1 (en) Methods and apparatus for configuring a storage system
US7328287B1 (en) System and method for managing I/O access policies in a storage environment employing asymmetric distributed block virtualization
US7539838B1 (en) Methods and apparatus for increasing the storage capacity of a storage system
US20130024486A1 (en) Method and system for implementing high availability storage on thinly provisioned arrays
Dufrasne et al. IBM DS8870 Architecture and Implementation (release 7.5)
US20110060883A1 (en) Method and apparatus for external logical storage volume management
JP2005301638A (ja) ディスクアレイ装置及びディスクアレイ装置のリザーブ解除制御方法
US12038817B2 (en) Methods for cache rewarming in a failover domain and devices thereof
US11971835B2 (en) Techniques for creating connections in a network fabric
US20110276765A1 (en) System and Method for Management of Cache Configuration
WO2022164469A1 (en) Tiered persistent memory allocation
Vengurlekar et al. Oracle automatic storage management: Under-the-hood & practical deployment guide
US9146734B1 (en) Handling managed object data
Walters et al. Storage Management Strategies

Legal Events

Date Code Title Description
RD04 Notification of resignation of power of attorney

Free format text: JAPANESE INTERMEDIATE CODE: A7424

Effective date: 20120713

A977 Report on retrieval

Free format text: JAPANESE INTERMEDIATE CODE: A971007

Effective date: 20130228

A131 Notification of reasons for refusal

Free format text: JAPANESE INTERMEDIATE CODE: A131

Effective date: 20130305

A601 Written request for extension of time

Free format text: JAPANESE INTERMEDIATE CODE: A601

Effective date: 20130605

A602 Written permission of extension of time

Free format text: JAPANESE INTERMEDIATE CODE: A602

Effective date: 20130612

A601 Written request for extension of time

Free format text: JAPANESE INTERMEDIATE CODE: A601

Effective date: 20130705

A602 Written permission of extension of time

Free format text: JAPANESE INTERMEDIATE CODE: A602

Effective date: 20130712

A521 Request for written amendment filed

Free format text: JAPANESE INTERMEDIATE CODE: A523

Effective date: 20130904

A01 Written decision to grant a patent or to grant a registration (utility model)

Free format text: JAPANESE INTERMEDIATE CODE: A01

Effective date: 20131001

A61 First payment of annual fees (during grant procedure)

Free format text: JAPANESE INTERMEDIATE CODE: A61

Effective date: 20131029

RD03 Notification of appointment of power of attorney

Free format text: JAPANESE INTERMEDIATE CODE: R3D03

R250 Receipt of annual fees

Free format text: JAPANESE INTERMEDIATE CODE: R250

LAPS Cancellation because of no payment of annual fees