JP2002163156A - 非並行クラスタリング環境においてscsi−3持続予約を使用しマルチパスi/oを提供する方法及び装置 - Google Patents

非並行クラスタリング環境においてscsi−3持続予約を使用しマルチパスi/oを提供する方法及び装置

Info

Publication number
JP2002163156A
JP2002163156A JP2001300535A JP2001300535A JP2002163156A JP 2002163156 A JP2002163156 A JP 2002163156A JP 2001300535 A JP2001300535 A JP 2001300535A JP 2001300535 A JP2001300535 A JP 2001300535A JP 2002163156 A JP2002163156 A JP 2002163156A
Authority
JP
Japan
Prior art keywords
reservation
key
command
persistent
option
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.)
Granted
Application number
JP2001300535A
Other languages
English (en)
Other versions
JP3659342B2 (ja
Inventor
T Furain John Jr
ジョン・ティ・フライン・ジュニア
H Johnson Richard
リチャード・エイチ・ジョンソン
M Shaw Rimie
リミー・エム・ショウ
Current Assignee (The listed assignees may be inaccurate. Google has not performed a legal analysis and makes no representation or warranty as to the accuracy of the list.)
International Business Machines Corp
Original Assignee
International Business Machines Corp
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 International Business Machines Corp filed Critical International Business Machines Corp
Publication of JP2002163156A publication Critical patent/JP2002163156A/ja
Application granted granted Critical
Publication of JP3659342B2 publication Critical patent/JP3659342B2/ja
Anticipated expiration legal-status Critical
Expired - Fee Related legal-status Critical Current

Links

Classifications

    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F13/00Interconnection of, or transfer of information or other signals between, memories, input/output devices or central processing units
    • G06F13/14Handling requests for interconnection or transfer
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F11/00Error detection; Error correction; Monitoring
    • G06F11/07Responding to the occurrence of a fault, e.g. fault tolerance
    • G06F11/16Error detection or correction of the data by redundancy in hardware
    • G06F11/20Error detection or correction of the data by redundancy in hardware using active fault-masking, e.g. by switching out faulty elements or by switching in spare elements
    • G06F11/2002Error detection or correction of the data by redundancy in hardware using active fault-masking, e.g. by switching out faulty elements or by switching in spare elements where interconnections or communication control functionality are redundant
    • G06F11/2007Error detection or correction of the data by redundancy in hardware using active fault-masking, e.g. by switching out faulty elements or by switching in spare elements where interconnections or communication control functionality are redundant using redundant communication media
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F11/00Error detection; Error correction; Monitoring
    • G06F11/07Responding to the occurrence of a fault, e.g. fault tolerance
    • G06F11/16Error detection or correction of the data by redundancy in hardware
    • G06F11/20Error detection or correction of the data by redundancy in hardware using active fault-masking, e.g. by switching out faulty elements or by switching in spare elements
    • G06F11/2002Error detection or correction of the data by redundancy in hardware using active fault-masking, e.g. by switching out faulty elements or by switching in spare elements where interconnections or communication control functionality are redundant
    • G06F11/2005Error detection or correction of the data by redundancy in hardware using active fault-masking, e.g. by switching out faulty elements or by switching in spare elements where interconnections or communication control functionality are redundant using redundant communication controllers
    • 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
    • G06F3/0617Improving the reliability of storage systems in relation to availability
    • 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/0629Configuration or reconfiguration of storage systems
    • G06F3/0635Configuration or reconfiguration of storage systems by changing the path, e.g. traffic rerouting, path reconfiguration
    • 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/0671In-line storage system
    • G06F3/0683Plurality of storage devices
    • G06F3/0689Disk arrays, e.g. RAID, JBOD
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F11/00Error detection; Error correction; Monitoring
    • G06F11/07Responding to the occurrence of a fault, e.g. fault tolerance
    • G06F11/16Error detection or correction of the data by redundancy in hardware
    • G06F11/20Error detection or correction of the data by redundancy in hardware using active fault-masking, e.g. by switching out faulty elements or by switching in spare elements
    • G06F11/202Error detection or correction of the data by redundancy in hardware using active fault-masking, e.g. by switching out faulty elements or by switching in spare elements where processing functionality is redundant
    • G06F11/2023Failover techniques
    • G06F11/2033Failover techniques switching over of hardware resources
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F11/00Error detection; Error correction; Monitoring
    • G06F11/07Responding to the occurrence of a fault, e.g. fault tolerance
    • G06F11/16Error detection or correction of the data by redundancy in hardware
    • G06F11/20Error detection or correction of the data by redundancy in hardware using active fault-masking, e.g. by switching out faulty elements or by switching in spare elements
    • G06F11/202Error detection or correction of the data by redundancy in hardware using active fault-masking, e.g. by switching out faulty elements or by switching in spare elements where processing functionality is redundant
    • G06F11/2038Error detection or correction of the data by redundancy in hardware using active fault-masking, e.g. by switching out faulty elements or by switching in spare elements where processing functionality is redundant with a single idle spare processing component

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)
  • Quality & Reliability (AREA)
  • Computer Networks & Wireless Communication (AREA)
  • Information Retrieval, Db Structures And Fs Structures Therefor (AREA)
  • Computer And Data Communications (AREA)
  • Management, Administration, Business Operations System, And Electronic Commerce (AREA)
  • Debugging And Monitoring (AREA)
  • Communication Control (AREA)
  • Two-Way Televisions, Distribution Of Moving Picture Or The Like (AREA)

Abstract

(57)【要約】 【課題】 非並行クラスタリング環境において、マルチ
パスI/Oを提供する方法及び装置を提供すること。 【解決手段】 SCSI−3持続予約コマンドを使用す
ることにより、複数パスを通じて論理ボリュームへの共
用非並行アクセスが提供される。オペレーティング・シ
ステムのオープン・オプションがSCSI持続予約コマ
ンドにマップされ、複数パスの全てを共用記憶システム
の論理装置番号に登録することを可能にし、第2の複数
パスが共用記憶システムへの持続予約を獲得後、共用記
憶システムの論理装置番号をアクセスすることを可能に
する。

Description

【発明の詳細な説明】
【0001】
【発明の属する技術分野】本発明は一般に、SCSIま
たはFCP(ファイバ・チャネル・プロトコル)ホスト
装置により、記憶アレイをアクセスすることに関し、特
に、非並行クラスタリング環境において、SCSI−3
持続予約を用いてマルチパスI/Oを提供する方法及び
装置に関する。
【0002】
【従来の技術】ディスク・ドライブ・システムはここ数
年の間に、サイズ及び精巧さの両方の面で、著しく成長
した。これらのシステムは一般に、複雑なマルチタスク
・ディスク・ドライブ制御装置により制御される多くの
大容量ディスク・ドライブ・ユニットを含む。大規模デ
ィスク・ドライブ・システムは一般に、多数のホスト・
コンピュータからコマンドを受信し、非常に多数のディ
スク・ドライブ大容量記憶要素を制御する。各大容量記
憶ユニットは数ギガビットを越えるデータを記憶するこ
とができる。
【0003】SCSI(small computer system interf
ace)は、コンピュータ及び他の入出力装置を相互接続
するために次第に普及した通信プロトコル規格である。
SCSIの最初のバージョン(SCSI−1)は、AN
SI X3.131−1986で述べられている。SC
SI規格はドライブ・スピード及び容量が増加するにつ
れ、改訂されてきたが、特定の制限が依然存在する。
【0004】SCSIプロトコルによれば、ホスト装置
(例えばワークステーション)及びターゲット装置(例
えばハード・ディスク・ドライブ)が、デイジ・チェー
ンにより単一バスに接続される。バス上の各装置は、ホ
ストまたはターゲットを問わず、固有のID番号を割当
てられる。バスに接続される装置の数は使用可能な固有
ID番号の数により制限される。例えば、SCSI−1
プロトコルの下では、8個の装置だけがSCSIバスに
接続可能である。SCSIプロトコルの後のバージョン
は16個の装置を規定し、将来のバージョンは間違えな
く、より多くの装置を1つのSCSIバスに接続可能に
するであろう。
【0005】1つのSCSIバスに接続可能な装置の数
を制限することに加え、SCSIプロトコルは特定のタ
ーゲット番号を通じてアクセス可能な論理装置(例えば
個々のドライブ)の数を制限する。例えばSCSI−1
規格によれば、ターゲット装置当たりの論理装置の数は
8個に制限される。従って、特定のターゲット(例えば
ディスク・アレイ)は8個の論理装置(ディスク・ドラ
イブ)へのアクセスを提供でき、ターゲット番号及び論
理装置番号が、SCSIシステム上の特定の記憶装置を
一意に識別する。SCSI−3仕様は更に機能を改善
し、高速シリアル伝送インタフェースに対応するために
設計された。そのために、SCSIは論理的に効果的
に"階層化"された。この階層化は、ソフトウェア・イン
タフェースを比較的未変更のまま、ファイバ・チャネル
やSSA(Serial Storage Architecture)などのシリ
アル相互接続にもとづく、新たな物理相互接続方式に対
応する。
【0006】特定のターゲット記憶装置をアクセスでき
るホストの数を増加するために、複数のSCSIバスが
マルチレベル・ツリー構造において一緒に接続され、ル
ーティング装置がデータ及びコマンドをレベル間で受け
渡しした。こうしたマルチレベル・ネットワークでは、
ホストが2レベル以上離れた装置をアクセスするとき、
性能遅延が生じる。更に前述の制限により、現SCSI
システムは、非常に多数の記憶装置への並列アクセスを
提供する現記憶アレイにより提供される利点を利用する
ことができない。例えば、記憶装置の数は、SCSIシ
ステム上で使用可能なターゲット番号及び論理装置番号
の有効数を越えるかもしれない。更に、各SCSIバス
が1つのホストだけにより同時に使用され、同一のSC
SIバス上の任意の2つのホストによる記憶アレイへの
並列アクセスを阻止するかもしれない。マルチレベル・
システムの異なるレベル上のホストは、記憶アレイ上の
異なる装置を並列にアクセスできる。しかしながら、こ
うした並列アクセスはレベルを相互接続するルータの複
雑度及びコストを増加させる。
【0007】コンピュータ利用の普及は、コンピュータ
・システムのデータを記憶する柔軟で、高い可用性を有
するシステムに対する需要を増加させた。多くの企業は
複数のホスト・コンピュータ・システムを有し、これら
には独立に機能するか、ネットワークを通じて接続され
るパーソナル・コンピュータ及びワークステーションが
含まれる。複数のホスト・システムが複数の記憶システ
ムの共通のプールをアクセスでき、データが全てのホス
ト・システムによりアクセスされることが望ましい。こ
うした構成は、任意の1つのホスト・システムにより使
用可能なデータの総量を増加させる。また、作業負荷が
ホスト間で共用され、システム全体が任意のあるホスト
の故障から保護される。
【0008】システムの複雑度が増すと、ディスク・ド
ライブまたは制御装置レベルにおける中断故障の発生が
益々問題となる。結果的に、システムの信頼性がより高
くなり、故障間の平均時間が増加し続けることになる。
それにも関わらず、たとえ問題が数時間の内に比較的迅
速に解決されたとしても、ディスク・ドライブ・システ
ムが"ダウン"する、すなわちオフラインとなることが、
ユーザにとって非常に不都合となり得る。結果の損失時
間はシステム・スループット性能だけではなく、ユーザ
・アプリケーション性能にも悪影響を及ぼす。更に、ユ
ーザは故障したのが物理ディスク・ドライブか、それと
もその制御装置かに関与しないので、概してユーザ問題
を生じるのは、システムの不都合及び故障である。
【0009】従って、ハードウェア故障を保護するため
の冗長パスを設け、データ・アクセスに関する性能及び
高可用性を保証することが望ましい。複数のホストが複
数のコンピュータ・システムをアクセスすることを可能
にする従来の解決策は、ホスト・アダプタ・カードと、
外部ディスク制御装置と、標準ネットワーク通信システ
ムとの組み合わせを使用する。
【0010】多くのディスク・ドライブ・システムは前
述のSCSIバスなどの標準化バスに頼ることにより、
ホスト・コンピュータを制御装置に接続したり、制御装
置とディスク・ドライブ要素とを接続したりする。従っ
て、バスに接続されるディスク・ドライブ制御装置が故
障すると、ホスト・コンピュータから見て、システム全
体が故障し、前述のように、ユーザにとって受け入れる
ことのできない結果を招く。
【0011】この問題を解決するために、冗長操作を有
するディスク・ドライブ制御装置が、SCSIバスに接
続される少なくとも2つのSCSIアダプタの間に設け
られる。また、少なくとも1つのホスト・コンピュータ
がSCSIバスに接続されてもよい。SCSIバス・ア
ダプタの1つが故障すると、故障の検出に際してバスに
接続される他のSCSIアダプタが、故障したSCSI
アダプタによりサービスされる装置のために引き継ぐ。
【0012】こうしたネットワークでは、サーバが高可
用性のクラスタ・マルチプロセッシングを提供するため
にリンクされる。サーバのクラスタ化はデータへの並列
アクセスを可能にし、このことがビジネスに不可欠なア
プリケーションにとって要求される冗長性及び故障回復
力を提供する支援をする。高可用性クラスタ・マルチプ
ロセッシングは、非並行モードで動作する間、SCSI
の予約/解除を用いて、ディスク記憶装置へのアクセス
を制御する。非並行モードでは、1つのクラスタ・ノー
ドだけが論理ボリューム内のデータをアクセスし得る。
高可用性クラスタ・マルチプロセッシングは、ハードウ
ェアまたはソフトウェア故障により、このデータへのア
クセスを別のクラスタ・ノードへフェールオーバする方
法を提供する。しかしながら、可能であれば、記憶シス
テムへのアクセスを提供する一方で、ノード・フェール
オーバを防止することが望ましい。
【0013】
【発明が解決しようとする課題】以上から、非並行クラ
スタリング環境において、マルチパスI/Oを提供する
方法及び装置が待望される。
【0014】
【課題を解決するための手段】前述の従来技術の制限を
克服するために、また本明細書の読後に明らかとなる他
の制限を克服するために、本発明は非並行クラスタリン
グ環境において、マルチパスI/Oを提供する方法及び
装置を開示する。
【0015】本発明はSCSI−3持続予約コマンドを
用いて、複数パスを通じて論理ボリュームへの共用非並
行アクセスを提供することにより、前述の問題を解決す
る。
【0016】本発明の原理に従う方法は、オペレーティ
ング・システムのオープン・オプションをSCSI持続
予約コマンドにマップすることにより、複数パスの全て
を共用記憶システムの論理装置番号に登録することを可
能にし、第2の複数パスが共用記憶システムへの持続予
約を獲得後、共用記憶システムの論理装置番号をアクセ
スすることを可能にする。
【0017】本発明の原理に従う方法の他の実施例に
は、代替のまたは任意的な追加の態様が含まれる。本発
明のこうした1態様は、オペレーティング・システムの
オープン・オプションをSCSI持続予約コマンドにマ
ップすることにより、複数パスの全てが共用記憶システ
ムの論理装置番号に登録することを可能にするステップ
が、更に1つの予約キーを用いて、第1のホストからの
全てのパスを、共用記憶システムの論理装置番号に登録
するステップを含む。
【0018】本発明の別の態様は、オペレーティング・
システムのオープン・オプションをSCSI持続予約コ
マンドにマップするステップが、更に持続予約及び予約
キーに関する情報を獲得するステップを含む。
【0019】本発明の別の態様では、持続予約及び予約
キーに関する情報を獲得するステップが、更に予約コマ
ンドを使用するステップを含む。
【0020】本発明の別の態様では、予約コマンドがキ
ー読出しサービス・アクション及び予約読出しサービス
・アクションを含む。
【0021】本発明の別の態様では、オペレーティング
・システムのオープン・オプションをSCSI持続予約
コマンドにマップするステップが、更に、共用記憶シス
テムの論理装置番号にアクションを開始する持続予約出
力コマンドを発行するステップを含む。
【0022】本発明の別の態様では、共用記憶システム
の論理装置番号とアクションを開始する持続予約出力コ
マンドが、更に、登録、予約、解除、クリア、プリエン
プト、登録及び既存機の無視、及び打ち切り付きプリエ
ンプトを含むグループから選択されるサービス・アクシ
ョンを含む。
【0023】本発明の別の態様では、登録サービス・ア
クションが追加及び削除オプションを含む。
【0024】本発明の別の態様では、本発明の別の態様
では、追加オプションが更に、構成時に各パスを登録す
るステップと、最初の登録試行が成功であったか否かを
判断するステップと、最初の登録試行が成功でなかった
場合、第2の登録試行を試行するステップと、第2の登
録試行が不成功の場合、パスの状態をデッド(dead)と
セットするステップと、パスがデッドにセットされた状
態を有するとき、当該パスを無視するステップと、第1
または第2の登録試行が成功の場合、パスの状態を真に
セットするステップとを含む。
【0025】本発明の別の態様では、削除オプションが
更に、パスが持続予約を有するか否かを判断するステッ
プと、パスが持続予約を有すると判断される場合、解除
サービス・オプションをセットされた状態で持続予約を
発行するステップと、パスが持続予約を有さないと判断
される場合、予約を解除するステップとを含む。
【0026】本発明の別の態様では、予約サービス・ア
クションが、コマンド・パラメータがセットされている
か否かを調査することにより、装置が共用記憶システム
の論理装置番号に予約を行う必要があるか否かを決定す
るステップと、コマンド・パラメータがセットされてい
ない場合、予約要求をデフォルト指定し、いずれのイニ
シエータも共用記憶装置の論理装置番号を予約していな
い場合、共用記憶装置の論理装置番号に持続予約を実行
するステップと、コマンド・パラメータがセットされて
いる場合、当該コマンド・パラメータを実行するステッ
プとを含む。
【0027】本発明の別の態様では、コマンド・パラメ
ータが強制オープン・オプションである。ここで強制オ
ープン・オプションは、現予約キーが装置の予約キーに
合致しない場合、装置に現予約キーを読出し、待機タス
クをプリエンプトし、打ち切るように指示する。
【0028】本発明の別の態様では、本方法は更に、コ
マンド・パラメータを未予約にセットすることにより、
SCSI−2予約を阻止するステップと、強制オープン
・コマンドが成功裡に完了するか否かを判断するステッ
プと、強制オープン・コマンドが成功裡に完了する場
合、装置の予約フラグを持続予約を行ったパス指標にセ
ットし、SCSI−2未予約オプションがセットされた
全てのパスをオープンするステップと、強制オープン・
コマンドが成功裡に完了しない場合、エラー・コードを
発行するステップとを含む。
【0029】本発明の別の態様では、コマンド・パラメ
ータが保存予約オプションであり、保存予約は装置に対
して、現予約キーを読出し、キーが返却されるか否かを
判断し、キーが返却されない場合、論理装置番号がイニ
シエータにより予約されないように設定し、持続予約を
行うように指示する。
【0030】本発明の別の態様では、保存予約オプショ
ンが装置に対して、返却キーが装置の予約キーに合致す
るか否かを判断し、返却キーが装置の予約キーに合致し
ない場合、エラー・コードを発行するように指示し、返
却キーが装置の予約キーに合致する場合には、SCSI
−2未予約オプションがセットされた全てのパスをオー
プンし、予約フラグを持続予約を行ったパス指標にセッ
トし、保存予約を真にセットし、クローズ時に保存予約
フィールドをチェックすることにより、持続予約が解除
されるべきか否かを判断するように指示する。
【0031】本発明の別の態様では、コマンド・パラメ
ータが未予約オプションであり、未予約オプションは装
置に対して、現予約キーを読出し、キーが返却されるか
否かを判断し、論理装置番号がイニシエータにより予約
されないように設定し、ホストからのオリジナル・コマ
ンド・パラメータにより、全てのパスをオープンするよ
うに指示する。
【0032】本発明の別の態様では、未予約オプション
が装置に対して、返却キーが装置の予約キーに合致する
か否かを判断し、返却キーが装置の予約キーに合致しな
い場合、エラー・コードを発行するように指示し、返却
キーが装置の予約キーに合致する場合には、解除のため
の持続予約出力を発行するように指示する。
【0033】本発明の別の態様では、コマンド・パラメ
ータがデフォルト予約オプションであり、デフォルト予
約オプションは装置に対して、全てのパスをチェック
し、任意のパスが未登録か否かを判断し、全ての未登録
パスを登録し、成功裡に登録されないパスを無視し、予
約キーを返却及び読出し、返却される予約キーが装置の
予約キーに合致しない場合、エラー・コードを発行し、
SCSI−2未予約にセットされた全ての登録済みパス
をオープンするように指示する。
【0034】本発明の別の態様では、デフォルト予約オ
プションが装置に対して、キーが返却されない場合、登
録済みパスを選択し、選択された登録済みパスに対して
持続予約を発行し、持続予約が成功しない場合、そのパ
スを無視し、持続予約が成功の場合、予約フィールドに
予約を行ったパス指標をマークし、コマンド・パラメー
タがSCSI−2未予約にセットされた全ての登録済み
パスをオープンするように指示する。
【0035】本発明の別の態様では、コマンド・パラメ
ータが単一のオプションであり、単一のオプションが装
置に対して、全てのパスをチェックし、任意のパスが未
登録か否かを判断し、全ての未登録のパスを登録し、成
功裡に登録されないパスを無視し、予約キーを返却及び
読出し、返却される予約キーが装置の予約キーに合致し
ない場合、エラー・コードを発行し、未予約をセットさ
れた全ての登録済みパスをオープンするように指示す
る。
【0036】本発明の別の態様では、キーが返却されな
い場合、単一のオプションが装置に対して、登録済みパ
スを選択し、選択された登録済みパスの持続予約を発行
し、持続予約が成功しない場合、そのパスを無視し、持
続予約が成功の場合、予約フィールドに予約を行ったパ
ス指標をマークし、コマンド・パラメータが未予約にセ
ットされた全ての登録済みパスをオープンするように指
示する。
【0037】本発明の別の態様では、解除サービス・ア
クションが、保存予約オプションがセットされた未予約
の全てのパスをクローズするステップと、保存予約フラ
グがセットされたパスをオープンするステップと、解除
サービス・アクションがセットされた持続予約出力コマ
ンドを発行し、パスの持続予約を解除するステップとを
含む。
【0038】本発明の別の実施例では、共用記憶システ
ムにより、SCSI持続予約コマンドをサポートする方
法が提供される。この方法は予約キーを処理して、登録
済みホストを識別するステップと、持続予約コマンドを
処理して、ホストによるアクセスを制御するステップと
を含む。
【0039】本発明の別の態様では、持続予約コマンド
の処理が、複数パスの全てを共用記憶システムの論理装
置番号に登録することを可能にする。
【0040】本発明の別の態様では、この方法は更に、
1つの予約キーを用いて、第1のホストからの全てのパ
スを、共用記憶システムの論理装置番号に登録するステ
ップを含む。
【0041】本発明の別の態様では、予約キーの処理
が、持続予約及び予約キーに関する情報を獲得するステ
ップを含む。
【0042】本発明の別の態様では、持続予約及び予約
キーに関する情報を獲得するステップが、更に予約コマ
ンドを使用するステップを含む。
【0043】本発明の別の態様では、予約コマンドがキ
ー読出しサービス・アクション及び予約読出しサービス
・アクションを含む。
【0044】本発明の別の態様では、持続予約コマンド
の処理が、共用記憶システムの論理装置番号にアクショ
ンを開始する持続予約出力コマンドを発行するステップ
を含む。
【0045】本発明の別の態様では、共用記憶システム
の論理装置番号にアクションを開始する持続予約出力コ
マンドが、登録、予約、解除、クリア、プリエンプト、
登録及び既存キーの無視、及び打ち切り付きプリエンプ
トを含むグループから選択されるサービス・アクション
を含む。
【0046】本発明の別の実施例では、オペレーティン
グ・システムのオープン・オプションをSCSI持続予
約コマンドにマップするドライバが提供される。このド
ライバは、予約キーを処理して登録済みホストを識別
し、また持続予約コマンドを処理して、ホストによるア
クセスを制御するように構成される。
【0047】本発明の別の態様では、ドライバが複数パ
スの全てを共用記憶システムの論理装置番号に登録する
ことを可能にすることにより、持続予約コマンドを処理
する。
【0048】本発明の別の態様では、ドライバが1つの
予約キーを用いて、第1のホストからの全てのパスを、
共用記憶システムの論理装置番号に登録する。
【0049】本発明の別の態様では、ドライバが持続予
約及び予約キーに関する情報を獲得することにより、予
約キーを処理する。
【0050】本発明の別の態様では、ドライバが予約コ
マンドを使用することにより、持続予約及び予約キーに
関する情報を獲得する。
【0051】本発明の別の態様では、予約コマンドがキ
ー読出しサービス・アクション及び予約読出しサービス
・アクションを含む。
【0052】本発明の別の態様では、ドライバが、共用
記憶システムの論理装置番号にアクションを開始する持
続予約出力コマンドを発行することにより、持続予約コ
マンドを処理する。
【0053】本発明の別の態様では、共用記憶システム
の論理装置番号とアクションを開始する持続予約出力コ
マンドが、登録、予約、解除、クリア、プリエンプト、
及び打ち切り付きプリエンプトを含むグループから選択
されるサービス・アクションを含む。
【0054】
【発明の実施の形態】典型的な実施例の以下の説明で
は、その一部を形成する添付の図面が参照され、そこで
は本発明が実施される特定の実施例が例証として示され
る。しかしながら、本発明の範囲から逸れることなく、
構造的変化が加えられ得ることから、他の実施例につい
ても利用可能であることが理解されよう。
【0055】本発明は非並行クラスタリング環境におい
て、マルチパスI/Oを提供する方法及び装置を提供す
る。マルチパスを介する論理ボリュームへの共用非並行
アクセスが、SCSI−3持続予約コマンドを用いるこ
とにより提供される。
【0056】図1は、本発明の環境を示すブロック図1
00である。図1において、LUN(論理装置番号)に
より示される記憶システムは、複数の論理ホストにより
アクセスされる。図1では、2つのホスト110、11
2が示されるが、当業者であれば分かるように、本発明
は2つのホストだけが記憶システムをアクセスする環境
に制限されるものではない。
【0057】所有者ホスト110及びフェールオーバ・
ホスト112は、LUN0 130をアクセスする少な
くとも2つのパス120を含む。所有者ホスト110及
びフェールオーバ・ホスト112は、LUN0 130
に登録される。しかしながら、LUN0が所有者ホスト
110のキーであるキーAを有するように示されるよう
に、所有者ホスト110はLUN0への排他的アクセス
を有する。
【0058】SCSI予約/解除は、非並行モードで動
作するとき、ディスク記憶装置へのアクセスを制御す
る。非並行モードでは、所有者ホスト110だけがLU
N0130内のデータへのアクセスを有する。ハードウ
ェアまたはソフトウェア障害が発生する場合、フェール
オーバ・ホスト112がLUN0 130上のデータを
アクセスできるように、フェールオーバ・アクセスが発
生し得る。しかしながら、できればノード・フェールオ
ーバを防止することが望ましい。各ノード110、11
2は共用記憶装置への複数のI/Oパス120を有する
ので、個々のI/Oパス内のハードウェアが故障すると
き、I/Oトラフィックは代替パスにスイッチされ得
る。このことはより破壊的なノード・フェールオーバを
実行する必要性を除去する。
【0059】図2は、オープン・オプションを適切なS
CSI−3持続予約コマンドにマップし、共用記憶装置
へのアクセスを制御するオペレーティング・システム内
の擬似デバイス・ドライバ200を示す。本発明によれ
ば、新たなデバイス・ドライバがオペレーティング・シ
ステム内に導入され、これは単一の共用装置240への
複数パスの全てに対する、単一の擬似デバイス210を
提供する。図2では、オープン・オプションを適切なS
CSI−3持続予約コマンドにマップすることにより、
パス選択及びパス再試行を提供する擬似デバイス・ドラ
イバ210が提供される。擬似デバイス・ドライバ21
0は論理ボリュームへの共用非並行アクセスを提供し、
装置への複数パス・アクセスを提供する。このことは装
置パスへのI/O負荷平衡の追加の利点を提供し、I/
Oエラーが単一の装置パス上で発生するとき、ノードが
ノード・フェールオーバを実行するのを防止するため
に、パス・フェールオーバが使用されるようにする。擬
似デバイス・ドライバ210はオペレーティング・シス
テム要求212を、SCSIディスク・ドライバ214
が処理できる要求に変換する。SCSIディスク・ドラ
イバ214は入出力(I/O)要求をコマンド・ディス
クリプタ・ブロック(CDB)に変換する。SCSIデ
ィスク・ドライバ214はアダプタ・ドライバ220を
呼び出し、CDBがアダプタ・ドライバ220に提供さ
れて、I/O要求がLUN240に渡される。ホストは
オペレーティング・システム構成を通じて擬似ディスク
・ドライバ210をバイパスしてもよい。このように、
ディスクI/O要求250が、SCSI予約/解除を提
供することなく処理され、LUN240への複数パスの
1つが故障しても、フェールオーバ無しに、ディスク記
憶装置へのアクセスが提供される。
【0060】共用LUN問題を示すブロック図300で
ある。ホストは、複数のLUN320をアクセスする複
数のアダプタ310を認識する。しかしながら、アダプ
タ330は実際には、単一のLUN340にマップされ
る。
【0061】従って、本発明によれば、擬似デバイス・
ドライバ内のSCSI−3持続予約コマンドが、LUN
への単一パス構成と、LUNへの複数のパス構成の両方
のサポートを考慮する。単一パス構成では、LUNに対
する予約/解除機能がSCSI−2正規予約/解除コマ
ンドにより、システム・ディスク・ドライバ・レベルで
実装される。
【0062】このコマンドをマルチパス構成環境におい
て実装するためには、あるホスト上のLUNへの全ての
パスが同一の予約キーの下で、LUNに登録されなけれ
ばならず、1つのパスだけがオープン時に"排他アクセ
ス、登録者専用"の予約タイプにより、LUNに持続予
約を行う必要がある。他のホストからのLUNへの全て
のパスはいつでもLUNに登録できるが、このLUNを
アクセスする前に、LUNに対して持続予約を取ること
を要求される。この予約タイプでは、LUNに登録され
るあるホスト上の全てのパスが、このLUNを共用及び
アクセスできる。この擬似デバイス・ドライバが、SC
SI−3持続予約コマンドをサポートしない記憶サブシ
ステムに適用される場合、擬似デバイス・ドライバは記
憶サブシステムの複数パス構成により、単一パス機能に
自動的に切り替わる。
【0063】SCSI−3持続予約は2つのコマンドを
サポートする。1つは持続予約入力であり、このコマン
ドは、LUN上で活動状態の持続予約及び予約キーに関
する情報を獲得するために使用される。持続予約入力コ
マンドによりサポートされる2つのサービス・アクショ
ンは、"キー読出し"及び"予約読出し"である。別のコマ
ンドは持続予約出力であり、このコマンドは、LUNへ
の登録、LUNへの予約、LUNへの予約解除、他のイ
ニシエータのLUNの予約のプリエンプト、及びLUN
からの全ての予約キー及び持続予約のクリアのために使
用される。持続予約出力コマンドによりサポートされる
7つのサービス・アクションは、"登録"、"予約"、"解
除"、"クリア"、"プリエンプト"、"登録及び既存キーの
無視"、及び"打ち切り付きプリエンプト"である。
【0064】図4は、本発明のフローチャート400で
ある。最初に、オペレーティング・システムのオープン
・オプションが、SCSI持続予約コマンドにマップさ
れ、複数パスの全てが共用記憶システムに登録されるよ
うにする(ステップ410)。次に、第2の複数パスが
共用システムへの持続予約を獲得後、共用記憶システム
をアクセスすることを許可される(ステップ420)。
第1のホストからの全てのパスは、単一の予約キーを用
いて共用記憶システムに登録される(図1参照)。持続
予約及び予約キーに関する情報がホストにより獲得され
てもよい。予約コマンドが、持続予約及び予約キーに関
する情報を獲得するために使用される。予約コマンド
は、キー読出しサービス・アクション及び予約読出しサ
ービス・アクションを含む。持続予約出力コマンドは、
共用記憶システムとのアクションを開始するために発行
される。持続予約出力コマンドは、登録、予約、解除、
クリア、プリエンプト、及び打ち切り付きプリエンプト
を含むグループから選択されるサービス・アクションを
含む。予約サービス・アクションは、追加及び削除オプ
ションを含む。
【0065】図5は、LUNに登録する追加オプション
のフローチャートである。構成時、各アンダパス(unde
rpath)がLUNに登録される(ステップ510)。登
録が成功か否かが判断される(ステップ512)。パス
が成功裡に登録されると(分岐540)、その"登録済
み"フィールドが真にセットされる(ステップ55
0)。成功裡に登録されない場合(分岐514)、そ
の"登録済み"フィールドが偽にセットされる(ステップ
516)。オープン時、全てのパスが再度、"登録及び
既存キーの無視"により登録される(ステップ52
0)。失敗が発生後、引き継ぎホストが"強制オープン"
を発行し、これがSDDに"打ち切り付きプリエンプト
・"サービス・オプションのための持続予約出力コマン
ドを発行するように指示する(ステップ522)。この
コマンドは次に、プリエンプト済み予約キーに合致する
全ての登録キーをクリアする。
【0066】図6は、パスをLUNから登録解除する削
除オプションのフローチャート600である。パスが除
去されるとき、そのパスの全ての登録済みアンダパス
が、LUNからの登録解除のためのアクションを要求す
る。パスが削除される前に、持続予約がLUNから解除
されることが要求される(ステップ610)。パス予約
済みがチェックされる(ステップ620)。フラグが−
1の代わりにアンダパス指標にセットされる場合(分岐
622)、デバイス・クローズ呼び出し時に、そのLU
Nへの予約が解除されていない(ステップ624)。こ
の状況は、パスが保存予約フラグがセットされた状態で
オープンされた場合だけ発生し、デバイス・クローズ呼
び出し時に予約が解除されない(ステップ626)。こ
の場合、以前に予約を行ったアンダパスが、解除サービ
ス・アクションのための持続予約出力を発行し、LUN
から予約を解除する(ステップ628)。一方、判断ス
テップ620で、フラグがアンダパス指標にセットされ
ていない場合(分岐640)、デバイス・クローズ呼び
出し時に、そのLUNへの予約が解除済みである(ステ
ップ650)。
【0067】図7は、LUNへの予約のフローチャート
である。パスがそれが接続されるLUNに予約を行う必
要があるか否かが、オペレーティング・システムの論理
ボリューム・マネージャ・ドライバ710などの、上位
レベル呼び出し元により決定される(ステップ71
0)。デバイス・オープン・オプションの"ext"パラメ
ータが調査される(ステップ720)。"ext"パラメー
タがセットされている場合(分岐740)、それらは予
約の要求を示す(ステップ750)。この"ext"パラメ
ータの有効オプション値を次に示す。 SC-FORCED-OPEN:装置予約競合ステータスを遵守しな
い。 SC-RETAIN-RESERVATION:クローズ時に装置を解除しな
い。 SC-NO-RESERVE:その装置へのオープン・サブルーチン
呼び出しの間に、装置の予約を阻止し、複数ホストによ
る装置の共用を可能にする。 SC-SINGLE:選択装置を排他アクセス・モードに設定す
る。
【0068】前記オプションのいずれもセットされてい
ない場合(分岐722)、デバイス・オープン・サブル
ーチンが予約要求にデフォルト指定する(ステップ72
4)。このLUNを予約したイニシエータがまだ存在し
ない場合、装置は持続予約をLUNに実行する(ステッ
プ726)。次のフローチャートは、これらのオプショ
ンの各々がSCSI−3持続予約コマンドにより実行さ
れる様子を示す。
【0069】図8は、強制オープン・オプションのフロ
ーチャート800である。強制オープン・オプションが
セットされた状態で、デバイス・オープン・サブルーチ
ンが呼び出されると(ステップ810)、装置は現持続
予約キーを読出そうとする(ステップ820)。キーが
返却される場合、装置は最初に、予約キーがそのキーに
合致するか否かをチェックする(ステップ830)。合
致する場合(分岐830)、装置は何も実行しない。な
ぜなら、LUNが装置により予約されているからであ
る。キーが返却され、それがこの装置の予約キーに合致
しない場合(分岐832)、この予約キーがプリエンプ
トされ、その待機タスクが打ち切られる(ステップ84
0)。このLUNの予約はこの装置によりスチールさ
れ、未予約パラメータをセットすることにより予約が阻
止される(ステップ850)。このコマンドが成功裡に
完了したか否かが判断される(ステップ852)。この
コマンドが成功裡に完了しない場合(分岐854)、エ
ラー・コードが発行される(ステップ856)。このコ
マンドが成功裡に完了する場合(ステップ858)、装
置の予約フラグが、この予約を行ったアンダパス指標に
セットされる(ステップ860)。全ての登録済みアン
ダパスは、オペレーティング・システムのディスク・ド
ライバ・オープン・ルーチンにおいて、"ext"パラメー
タのSC-NO-RESERVEオプションがセットされた状態でオ
ープンされる(ステップ870)。LUNは、LUNに
登録された装置の全てのアンダパスによりアクセスさ
れ、共用され得る。
【0070】図9は、保存予約オープン・オプションの
フローチャート900である。デバイス・オープン・サ
ブルーチンがこのオプションをセットされた状態で呼び
出されるとき(ステップ910)、装置は現持続予約キ
ーを読出す(ステップ920)。キーが返却されるか否
かが判断される(ステップ930)。返却される予約キ
ーが存在しない場合(分岐980)、これはLUNがい
ずれのイニシエータによっても予約されないことを意味
し(ステップ982)、装置がLUNに持続予約を行う
(ステップ984)。次に、予約が成功か否かが判断さ
れる(ステップ986)。この予約コマンドが失敗の場
合(分岐990)、システム・ドライバはオープン呼び
出しを失敗し、呼び出し側にXXXエラー・コードを返
却する(ステップ992)。この予約コマンドが成功裡
に完了する場合(分岐988)、全ての登録済みアンダ
パスがSC-NO-RESERVEオプションをセットされた状態で
オープンされる(ステップ942)。
【0071】返却される予約キーが存在する場合(分岐
932)、キーが装置の予約キーに合致するか否かが判
断される(ステップ934)。合致しない場合(分岐9
36)、ドライバはオープン呼び出しの失敗をXXXエ
ラー・コードを呼び出し側に返却する(ステップ93
8)。返却キーがこの装置の予約キーに合致する場合
(ステップ940)、全てのアンダパスがSC-NO-RESERV
Eオプションをセットされた状態でオープンされる(ス
テップ942)。
【0072】全てのアンダパスがSCSI−2予約オプ
ションをセットされた状態でオープンされる場合(ステ
ップ942)、LUNがLUNに登録されたこの装置の
全てのアンダパスによりアクセスされ、共用される。装
置の予約フラグが、この予約を行ったアンダパス指標に
セットされる(ステップ950)。保存予約フィールド
が真にセットされる(ステップ960)。このフィール
ドがデバイス・クローズ呼び出し時にチェックされ、持
続予約が解除されるべきか否かが判断される(ステップ
970)。
【0073】図10は、未予約オプションのフローチャ
ート1000である。デバイス・オープン・サブルーチ
ンがこのオプションをセットされた状態で呼び出される
とき(ステップ1010)、装置は現持続予約キーを読
出す(ステップ1020)。このプロシージャを実行す
るために、全てのアンダパスが"登録及び既存キーを無
視"により登録され、全てのアンダパスがLUNに登録
されていることを確認する。LUNに登録されなかった
アンダパスが存在する場合、そのアンダパスが登録サー
ビス・アクションのための持続予約出力コマンドを発行
する。再度この再試行に失敗すると、このアンダパスは
無視され、残りのオペレーションをスキップされる。次
に、登録済みのアンダパスが選択されて、予約読出しサ
ービス・アクションのための持続予約入力コマンドを発
行し、現持続予約キーを獲得する。
【0074】キーが返却されるか否かが判断される(ス
テップ1030)。返却される予約キーが存在しない場
合(分岐1080)、LUNはいずれのイニシエータに
よっても予約されない(ステップ1082)。呼び出し
側からオペレーティング・システム・ディスク・ドライ
バ・オープン・ルーチンに渡されるオリジナル"ext"パ
ラメータにより、装置がその全てのアンダパスをオープ
ンする(ステップ1084)。
【0075】現持続予約キーが返却される場合(分岐1
032)、それが装置の予約キーに合致するか否かが判
断される(ステップ1034)。合致する場合(分岐1
040)、解除サービス・アクションのための持続予約
コマンドが発行され、LUNへの持続予約を解除する
(ステップ1042)。合致しない場合(分岐103
6)、システム・ドライバはオープン呼び出しを失敗
し、呼び出し側にXXXエラー・コードを返却する(ス
テップ1038)。
【0076】図11は、デフォルト予約オープン・オプ
ションのフローチャート1100である。デバイス・オ
ープン・サブルーチンが、前記列挙されたいずれのオプ
ションもセットされずに呼び出される場合、オープンは
予約要求をデフォルト指定される。全てのアンダパス
が、それらが既に構成フェーズにおいて登録済みか否か
に関わらずLUNに登録される(ステップ1110)。
アンダパスが"登録及び既存キーの無視"サービス・アク
ションのための持続予約出力コマンドを発行する。装置
は予約読出しのための持続予約入力コマンドを発行し、
現持続予約キーを獲得する(ステップ1130)。キー
が返却されるか否かが判断される(ステップ113
2)。キーが返却される場合(分岐1133)、キーが
装置の予約キーに合致するか否かが判断される(ステッ
プ1134)。それ自身の予約キーに合致しない場合
(分岐1136)、ドライバはオープン呼び出しを失敗
し、呼び出し側にEIOエラー・コードを返却する(ス
テップ1138)。返却される持続予約キーが装置の予
約キーに合致する場合(分岐1140)、全ての登録済
みアンダパスが、"ext"パラメータのSC-NO-RESERVEオプ
ションをセットされた状態でオープンされる(ステップ
1142)。持続予約キーが返却されない場合(分岐1
144)、登録済みアンダパスが選択される(ステップ
1150)。予約サービス・アクションのための持続予
約出力コマンドが発行され、LUNに持続予約を行う
(ステップ1152)。コマンドが成功裡に完了したか
否かが判断される(ステップ1154)。成功の場合
(分岐1160)、装置は予約フィールドにLUNに予
約を行ったアンダパス指標をマークする(ステップ11
70)。全ての登録済みアンダパスが、"ext"パラメー
タがSC-NO-RESERVEオプションにセットされた状態でオ
ープンされる(ステップ1180)。予約コマンドが失
敗の場合(分岐1156)、ドライバはオープン呼び出
しを失敗し、呼び出し側にEIOエラー・コードを返却
する(ステップ1158)。
【0077】図12は、LUNからの解除のフローチャ
ート1200である。デバイス・クローズ・ルーチンが
呼び出されるとき、保存予約フラグが真にセットされて
いるとき以外は、接続されるLUNへのその持続予約が
解除されるべきである。具体的には、解除サービス・ア
クションのための持続予約出力コマンドが、予約を行
い、依然その予約を保持するアンダパスにより発行され
なければならない。この条件が合致しない場合、要求が
無視され、良好ステータスが返却される。
【0078】このプロシージャを実行するため、ドライ
バは最初に装置の全てのアンダパスをクローズし(ステ
ップ1210)、次に予約を保持するアンダパスをオー
プンする(ステップ1220)。解除サービス・アクシ
ョンのための持続予約出力コマンドが発行され、LUN
への持続予約を解除する(ステップ1230)。
【0079】本発明の典型的な実施例の前述の説明は例
証として提供されたものであり、本発明をここで開示さ
れた正確な形態に制限するものではない。前述の教示を
鑑み、多くの変更及び変形が可能であろう。
【0080】まとめとして、本発明の構成に関して以下
の事項を開示する。
【0081】(1)第1の複数入出力パス内でハードウ
ェア故障が発生するとき、第2の複数入出力パスを用い
て、共用記憶システムの論理装置番号へのアクセスを提
供する方法であって、オペレーティング・システムのオ
ープン・オプションをSCSI持続予約コマンドにマッ
プし、前記複数パスの全てが前記共用記憶システムの前
記論理装置番号に登録することを可能にし、前記第2の
複数パスが前記共用記憶システムへの持続予約を獲得
後、前記共用記憶システムの前記論理装置番号をアクセ
スすることを可能にする方法。 (2)前記オペレーティング・システムのオープン・オ
プションをSCSI持続予約コマンドにマップし、前記
複数パスの全てが前記共用記憶システムの前記論理装置
番号に登録することを可能にするステップが、1つの予
約キーを用いて、第1のホストからの全てのパスを、前
記共用記憶システムの前記論理装置番号に登録するステ
ップを含む、前記(2)記載の方法。 (3)前記オペレーティング・システムのオープン・オ
プションをSCSI持続予約コマンドにマップするステ
ップが、持続予約及び予約キーに関する情報を獲得する
ステップを含む、前記(1)記載の方法。 (4)前記持続予約及び予約キーに関する情報を獲得す
るステップが、予約コマンドを使用するステップを含
む、前記(3)記載の方法。 (5)前記予約コマンドがキー読出しサービス・アクシ
ョン及び予約読出しサービス・アクションを含む、前記
(4)記載の方法。 (6)前記オペレーティング・システムのオープン・オ
プションをSCSI持続予約コマンドにマップするステ
ップが、前記共用記憶システムの前記論理装置番号にア
クションを開始する持続予約出力コマンドを発行するス
テップを含む、前記(1)記載の方法。 (7)前記共用記憶システムの前記論理装置番号にアク
ションを開始する持続予約出力コマンドが、登録、予
約、解除、クリア、プリエンプト、登録及び既存キーの
無視、及び打ち切り付きプリエンプトを含むグループか
ら選択されるサービス・アクションを含む、前記(6)
記載の方法。 (8)前記登録サービス・アクションが追加及び削除オ
プションを含む、前記(7)記載の方法。 (9)前記追加オプションが、構成時に各パスを登録す
るステップと、最初の登録試行が成功であったか否かを
判断するステップと、オープン時に、全てのパスの登録
を再度登録により行い、既存のキーを無視するステップ
と、失敗の発生後、引き継ぎホストにより強制オープン
を発行し、打ち切り付きプリエンプト・サービス・オプ
ションのための持続予約出力コマンドにより、プリエン
プト予約キーに合致する全ての登録キーをクリアするス
テップと、前記第1または第2の登録試行が成功の場
合、前記パスの状態を真にセットするステップとを含
む、前記(7)記載の方法。 (10)前記削除オプションが、前記パスが持続予約を
有するか否かを判断するステップと、前記パスが持続予
約を有すると判断される場合、解除サービス・オプショ
ンをセットされた状態で持続予約を発行するステップ
と、前記パスが持続予約を有さないと判断される場合、
予約を解除するステップとを含む、前記(7)記載の方
法。 (11)前記予約サービス・アクションが、コマンド・
パラメータがセットされているか否かを調査することに
より、装置が前記共用記憶システムの前記論理装置番号
に予約を行う必要があるか否かを決定するステップと、
前記コマンド・パラメータがセットされていない場合、
予約要求をデフォルト指定し、いずれのイニシエータも
前記共用記憶装置の前記論理装置番号を予約していない
場合、前記共用記憶装置の前記論理装置番号に持続予約
を実行するステップと、前記コマンド・パラメータがセ
ットされている場合、当該コマンド・パラメータを実行
するステップとを含む、前記(7)記載の方法。 (12)前記コマンド・パラメータが強制オープン・オ
プションであり、前記強制オープン・オプションが、現
予約キーが前記装置の予約キーに合致しない場合、前記
装置に現予約キーを読出し、待機タスクをプリエンプト
し、打ち切るように指示する、前記(11)記載の方
法。 (13)前記コマンド・パラメータを未予約にセットす
ることにより、SCSI−2予約を阻止するステップ
と、前記強制オープン・コマンドが成功裡に完了するか
否かを判断するステップと、前記強制オープン・コマン
ドが成功裡に完了する場合、前記装置の予約フラグを持
続予約を行ったパス指標にセットし、SCSI−2未予
約オプションがセットされた全てのパスをオープンする
ステップと、前記強制オープン・コマンドが成功裡に完
了しない場合、エラー・コードを発行するステップとを
含む、前記(12)記載の方法。 (14)前記コマンド・パラメータが保存予約オプショ
ンであり、前記保存予約が前記装置に対して、現予約キ
ーを読出し、キーが返却されるか否かを判断し、前記キ
ーが返却されない場合、前記論理装置番号がイニシエー
タにより予約されないように設定し、持続予約を行うよ
うに指示する、前記(11)記載の方法。 (15)前記保存予約オプションが前記装置に対して、
返却キーが前記装置の予約キーに合致するか否かを判断
し、前記返却キーが前記装置の予約キーに合致しない場
合、エラー・コードを発行するように指示し、前記返却
キーが前記装置の予約キーに合致する場合、SCSI−
2未予約オプションがセットされた全てのパスをオープ
ンし、予約フラグを持続予約を行ったパス指標にセット
し、保存予約を真にセットし、クローズ時に保存予約フ
ィールドをチェックすることにより、持続予約が解除さ
れるべきか否かを判断するように指示する、前記(1
4)記載の方法。 (16)前記コマンド・パラメータが未予約オプション
であり、前記未予約オプションが前記装置に対して、現
予約キーを読出し、キーが返却されるか否かを判断し、
前記論理装置番号がイニシエータにより予約されないよ
うに設定し、ホストからのオリジナル・コマンド・パラ
メータにより、全てのパスをオープンするように指示す
る、前記(11)記載の方法。 (17)前記未予約オプションが前記装置に対して、返
却キーが前記装置の予約キーに合致するか否かを判断
し、前記返却キーが前記装置の前記予約キーに合致しな
い場合、エラー・コードを発行するように指示し、前記
返却キーが前記装置の前記予約キーに合致する場合、解
除のための持続予約出力を発行するように指示する、前
記(16)記載の方法。 (18)前記コマンド・パラメータがデフォルト予約オ
プションであり、前記デフォルト予約オプションが前記
装置に対して、全てのパスをチェックし、任意のパスが
未登録か否かを判断し、全ての未登録パスを登録し、成
功裡に登録されないパスを無視し、予約キーを返却及び
読出し、返却される予約キーが前記装置の予約キーに合
致しない場合、エラー・コードを発行し、SCSI−2
未予約にセットされた全ての登録済みパスをオープンす
るように指示する、前記(11)記載の方法。 (19)前記デフォルト予約オプションが前記装置に対
して、キーが返却されない場合、登録済みパスを選択
し、選択された前記登録済みパスに対して持続予約を発
行し、持続予約が成功しない場合、前記パスを無視し、
持続予約が成功の場合、予約フィールドに予約を行った
パス指標をマークし、前記コマンド・パラメータがSC
SI−2未予約にセットされた全ての登録済みパスをオ
ープンするように指示する、前記(18)記載の方法。 (20)前記コマンド・パラメータが単一のオプション
であり、前記単一のオプションが前記装置に対して、全
てのパスをチェックし、任意のパスが未登録か否かを判
断し、全ての未登録のパスを登録し、成功裡に登録され
ないパスを無視し、予約キーを返却及び読出し、返却さ
れる予約キーが前記装置の予約キーに合致しない場合、
エラー・コードを発行し、未予約をセットされた全ての
登録済みパスをオープンするように指示する、前記(1
1)記載の方法。 (21)キーが返却されない場合、単一のオプションが
前記装置に対して、登録済みパスを選択し、選択された
前記登録済みパスの持続予約を発行し、持続予約が成功
しない場合、前記パスを無視し、持続予約が成功の場
合、予約フィールドに予約を行ったパス指標をマーク
し、前記コマンド・パラメータが未予約にセットされた
全ての登録済みパスをオープンするように指示する、前
記(20)記載の方法。 (22)前記解除サービス・アクションが、保存予約フ
ラグがセットされた未予約の全てのパスをクローズする
ステップと、保存予約フラグがセットされたパスをオー
プンするステップと、前記解除サービス・アクションが
セットされた持続予約出力コマンドを発行し、パスの持
続予約を解除するステップとを含む、前記(7)記載の
方法。 (23)共用記憶システムにより、SCSI持続予約コ
マンドをサポートする方法であって、予約キーを処理し
て、登録済みホストを識別するステップと、持続予約コ
マンドを処理して、ホストによるアクセスを制御するス
テップとを含む、方法。 (24)前記持続予約コマンドの処理が、複数パスの全
てを前記共用記憶システムの論理装置番号に登録するこ
とを可能にする、前記(23)記載の方法。 (25)1つの予約キーを用いて、第1のホストからの
全てのパスを、前記共用記憶システムの論理装置番号に
登録するステップを含む、前記(24)記載の方法。 (26)前記予約キーの処理が、持続予約及び予約キー
に関する情報を獲得するステップを含む、前記(23)
記載の方法。 (27)前記持続予約及び予約キーに関する情報を獲得
するステップが、予約コマンドを使用するステップを含
む、前記(26)記載の方法。 (28)前記予約コマンドがキー読出しサービス・アク
ション及び予約読出しサービス・アクションを含む、前
記(27)記載の方法。 (29)前記持続予約コマンドの処理が、前記共用記憶
システムの前記論理装置番号にアクションを開始する持
続予約出力コマンドを発行するステップを含む、前記
(23)記載の方法。 (30)前記共用記憶システムの前記論理装置番号にア
クションを開始する持続予約出力コマンドが、登録、予
約、解除、クリア、プリエンプト、登録及び既存キーの
無視、及び打ち切り付きプリエンプトを含むグループか
ら選択されるサービス・アクションを含む、前記(2
9)記載の方法。 (31)オペレーティング・システムのオープン・オプ
ションをSCSI持続予約コマンドにマップするドライ
バであって、予約キーを処理して登録済みホストを識別
し、また持続予約コマンドを処理して、ホストによるア
クセスを制御するように構成されるドライバ。 (32)複数パスの全てを共用記憶システムの論理装置
番号に登録可能にすることにより、持続予約コマンドを
処理する、前記(31)記載のドライバ。 (33)1つの予約キーを用いて、第1のホストからの
全てのパスを、前記共用記憶システムの前記論理装置番
号に登録する、前記(32)記載のドライバ。 (34)持続予約及び予約キーに関する情報を獲得する
ことにより、前記予約キーを処理する、前記(31)記
載のドライバ。 (35)予約コマンドを使用することにより、前記持続
予約及び予約キーに関する情報を獲得する、前記(3
4)記載のドライバ。 (36)前記予約コマンドがキー読出しサービス・アク
ション及び予約読出しサービス・アクションを含む、前
記(35)記載のドライバ。 (37)前記共用記憶システムの前記論理装置番号にア
クションを開始する持続予約出力コマンドを発行するこ
とにより、前記持続予約コマンドを処理する、前記(3
1)記載のドライバ。 (38)前記共用記憶システムの前記論理装置番号にア
クションを開始する前記持続予約出力コマンドが、登
録、予約、解除、クリア、プリエンプト、登録及び既存
キーの無視、及び打ち切り付きプリエンプトを含むグル
ープから選択されるサービス・アクションを含む、前記
(37)記載のドライバ。
【図面の簡単な説明】
【図1】本発明の環境を示すブロック図である。
【図2】オープン・オプションを適切なSCSI−3持
続予約コマンドにマップし、共用記憶装置へのアクセス
を制御するオペレーティング・システム内の擬似ドライ
バを示す図である。
【図3】共用LUN問題を示すブロック図である。
【図4】本発明のフローチャートである。
【図5】LUNに登録する追加オプションのフローチャ
ートである。
【図6】パスをLUNから登録解除する削除オプション
のフローチャートである。
【図7】LUNへの予約のフローチャートである。
【図8】強制オープン・オプションのフローチャートで
ある。
【図9】保存予約オープン・オプションのフローチャー
トである。
【図10】未予約オプションのフローチャートである。
【図11】デフォルト予約オープン・オプションのフロ
ーチャートである。
【図12】LUNからの解除のフローチャートである。
【符号の説明】
110 所有者ホスト 112 フェールオーバ・ホスト 120 パス 130 LUN0 200 擬似デバイス・ドライバ 210 擬似デバイス 212 オペレーティング・システム要求 214 SCSIディスク・ドライバ 220 アダプタ・ドライバ 240 共用装置 310、330 アダプタ 320、340 LUN 710 論理ボリューム・マネージャ・ドライバ
───────────────────────────────────────────────────── フロントページの続き (72)発明者 ジョン・ティ・フライン・ジュニア アメリカ合衆国95037、カリフォルニア州 モーガン・ヒル、ファウンテン・オーク ス・ドライブ 2270 (72)発明者 リチャード・エイチ・ジョンソン アメリカ合衆国95014、カリフォルニア州 クパチーノ、ラッキー・オーク・コート 10970 (72)発明者 リミー・エム・ショウ アメリカ合衆国95118、カリフォルニア州 サン・ノゼ、サンフラワー・レーン 5661 Fターム(参考) 5B083 BB03 DD09 EE11

Claims (38)

    【特許請求の範囲】
  1. 【請求項1】第1の複数入出力パス内でハードウェア故
    障が発生するとき、第2の複数入出力パスを用いて、共
    用記憶システムの論理装置番号へのアクセスを提供する
    方法であって、 オペレーティング・システムのオープン・オプションを
    SCSI持続予約コマンドにマップし、前記複数パスの
    全てが前記共用記憶システムの前記論理装置番号に登録
    することを可能にし、前記第2の複数パスが前記共用記
    憶システムへの持続予約を獲得後、前記共用記憶システ
    ムの前記論理装置番号をアクセスすることを可能にする
    方法。
  2. 【請求項2】前記オペレーティング・システムのオープ
    ン・オプションをSCSI持続予約コマンドにマップ
    し、前記複数パスの全てが前記共用記憶システムの前記
    論理装置番号に登録することを可能にするステップが、
    1つの予約キーを用いて、第1のホストからの全てのパ
    スを、前記共用記憶システムの前記論理装置番号に登録
    するステップを含む、請求項2記載の方法。
  3. 【請求項3】前記オペレーティング・システムのオープ
    ン・オプションをSCSI持続予約コマンドにマップす
    るステップが、持続予約及び予約キーに関する情報を獲
    得するステップを含む、請求項1記載の方法。
  4. 【請求項4】前記持続予約及び予約キーに関する情報を
    獲得するステップが、予約コマンドを使用するステップ
    を含む、請求項3記載の方法。
  5. 【請求項5】前記予約コマンドがキー読出しサービス・
    アクション及び予約読出しサービス・アクションを含
    む、請求項4記載の方法。
  6. 【請求項6】前記オペレーティング・システムのオープ
    ン・オプションをSCSI持続予約コマンドにマップす
    るステップが、前記共用記憶システムの前記論理装置番
    号にアクションを開始する持続予約出力コマンドを発行
    するステップを含む、請求項1記載の方法。
  7. 【請求項7】前記共用記憶システムの前記論理装置番号
    にアクションを開始する持続予約出力コマンドが、登
    録、予約、解除、クリア、プリエンプト、登録及び既存
    キーの無視、及び打ち切り付きプリエンプトを含むグル
    ープから選択されるサービス・アクションを含む、請求
    項6記載の方法。
  8. 【請求項8】前記登録サービス・アクションが追加及び
    削除オプションを含む、請求項7記載の方法。
  9. 【請求項9】前記追加オプションが、 構成時に各パスを登録するステップと、 最初の登録試行が成功であったか否かを判断するステッ
    プと、 オープン時に、全てのパスの登録を再度登録により行
    い、既存のキーを無視するステップと、 失敗の発生後、引き継ぎホストにより強制オープンを発
    行し、打ち切り付きプリエンプト・サービス・オプショ
    ンのための持続予約出力コマンドにより、プリエンプト
    予約キーに合致する全ての登録キーをクリアするステッ
    プと、 前記第1または第2の登録試行が成功の場合、前記パス
    の状態を真にセットするステップとを含む、請求項7記
    載の方法。
  10. 【請求項10】前記削除オプションが、 前記パスが持続予約を有するか否かを判断するステップ
    と、 前記パスが持続予約を有すると判断される場合、解除サ
    ービス・オプションをセットされた状態で持続予約を発
    行するステップと、 前記パスが持続予約を有さないと判断される場合、予約
    を解除するステップとを含む、請求項7記載の方法。
  11. 【請求項11】前記予約サービス・アクションが、 コマンド・パラメータがセットされているか否かを調査
    することにより、装置が前記共用記憶システムの前記論
    理装置番号に予約を行う必要があるか否かを決定するス
    テップと、 前記コマンド・パラメータがセットされていない場合、
    予約要求をデフォルト指定し、いずれのイニシエータも
    前記共用記憶装置の前記論理装置番号を予約していない
    場合、前記共用記憶装置の前記論理装置番号に持続予約
    を実行するステップと、 前記コマンド・パラメータがセットされている場合、当
    該コマンド・パラメータを実行するステップとを含む、
    請求項7記載の方法。
  12. 【請求項12】前記コマンド・パラメータが強制オープ
    ン・オプションであり、前記強制オープン・オプション
    が、現予約キーが前記装置の予約キーに合致しない場
    合、前記装置に現予約キーを読出し、待機タスクをプリ
    エンプトし、打ち切るように指示する、請求項11記載
    の方法。
  13. 【請求項13】前記コマンド・パラメータを未予約にセ
    ットすることにより、SCSI−2予約を阻止するステ
    ップと、 前記強制オープン・コマンドが成功裡に完了するか否か
    を判断するステップと、 前記強制オープン・コマンドが成功裡に完了する場合、
    前記装置の予約フラグを持続予約を行ったパス指標にセ
    ットし、SCSI−2未予約オプションがセットされた
    全てのパスをオープンするステップと、 前記強制オープン・コマンドが成功裡に完了しない場
    合、エラー・コードを発行するステップとを含む、請求
    項12記載の方法。
  14. 【請求項14】前記コマンド・パラメータが保存予約オ
    プションであり、前記保存予約が前記装置に対して、現
    予約キーを読出し、キーが返却されるか否かを判断し、
    前記キーが返却されない場合、前記論理装置番号がイニ
    シエータにより予約されないように設定し、持続予約を
    行うように指示する、請求項11記載の方法。
  15. 【請求項15】前記保存予約オプションが前記装置に対
    して、返却キーが前記装置の予約キーに合致するか否か
    を判断し、前記返却キーが前記装置の予約キーに合致し
    ない場合、エラー・コードを発行するように指示し、前
    記返却キーが前記装置の予約キーに合致する場合、SC
    SI−2未予約オプションがセットされた全てのパスを
    オープンし、予約フラグを持続予約を行ったパス指標に
    セットし、保存予約を真にセットし、クローズ時に保存
    予約フィールドをチェックすることにより、持続予約が
    解除されるべきか否かを判断するように指示する、請求
    項14記載の方法。
  16. 【請求項16】前記コマンド・パラメータが未予約オプ
    ションであり、前記未予約オプションが前記装置に対し
    て、現予約キーを読出し、キーが返却されるか否かを判
    断し、前記論理装置番号がイニシエータにより予約され
    ないように設定し、ホストからのオリジナル・コマンド
    ・パラメータにより、全てのパスをオープンするように
    指示する、請求項11記載の方法。
  17. 【請求項17】前記未予約オプションが前記装置に対し
    て、返却キーが前記装置の予約キーに合致するか否かを
    判断し、前記返却キーが前記装置の前記予約キーに合致
    しない場合、エラー・コードを発行するように指示し、
    前記返却キーが前記装置の前記予約キーに合致する場
    合、解除のための持続予約出力を発行するように指示す
    る、請求項16記載の方法。
  18. 【請求項18】前記コマンド・パラメータがデフォルト
    予約オプションであり、前記デフォルト予約オプション
    が前記装置に対して、全てのパスをチェックし、任意の
    パスが未登録か否かを判断し、全ての未登録パスを登録
    し、成功裡に登録されないパスを無視し、予約キーを返
    却及び読出し、返却される予約キーが前記装置の予約キ
    ーに合致しない場合、エラー・コードを発行し、SCS
    I−2未予約にセットされた全ての登録済みパスをオー
    プンするように指示する、請求項11記載の方法。
  19. 【請求項19】前記デフォルト予約オプションが前記装
    置に対して、キーが返却されない場合、登録済みパスを
    選択し、選択された前記登録済みパスに対して持続予約
    を発行し、持続予約が成功しない場合、前記パスを無視
    し、持続予約が成功の場合、予約フィールドに予約を行
    ったパス指標をマークし、前記コマンド・パラメータが
    SCSI−2未予約にセットされた全ての登録済みパス
    をオープンするように指示する、請求項18記載の方
    法。
  20. 【請求項20】前記コマンド・パラメータが単一のオプ
    ションであり、前記単一のオプションが前記装置に対し
    て、全てのパスをチェックし、任意のパスが未登録か否
    かを判断し、全ての未登録のパスを登録し、成功裡に登
    録されないパスを無視し、予約キーを返却及び読出し、
    返却される予約キーが前記装置の予約キーに合致しない
    場合、エラー・コードを発行し、未予約をセットされた
    全ての登録済みパスをオープンするように指示する、請
    求項11記載の方法。
  21. 【請求項21】キーが返却されない場合、単一のオプシ
    ョンが前記装置に対して、登録済みパスを選択し、選択
    された前記登録済みパスの持続予約を発行し、持続予約
    が成功しない場合、前記パスを無視し、持続予約が成功
    の場合、予約フィールドに予約を行ったパス指標をマー
    クし、前記コマンド・パラメータが未予約にセットされ
    た全ての登録済みパスをオープンするように指示する、
    請求項20記載の方法。
  22. 【請求項22】前記解除サービス・アクションが、 保存予約フラグがセットされた未予約の全てのパスをク
    ローズするステップと、 保存予約フラグがセットされたパスをオープンするステ
    ップと、 前記解除サービス・アクションがセットされた持続予約
    出力コマンドを発行し、パスの持続予約を解除するステ
    ップとを含む、請求項7記載の方法。
  23. 【請求項23】共用記憶システムにより、SCSI持続
    予約コマンドをサポートする方法であって、 予約キーを処理して、登録済みホストを識別するステッ
    プと、 持続予約コマンドを処理して、ホストによるアクセスを
    制御するステップとを含む、方法。
  24. 【請求項24】前記持続予約コマンドの処理が、複数パ
    スの全てを前記共用記憶システムの論理装置番号に登録
    することを可能にする、請求項23記載の方法。
  25. 【請求項25】1つの予約キーを用いて、第1のホスト
    からの全てのパスを、前記共用記憶システムの論理装置
    番号に登録するステップを含む、請求項24記載の方
    法。
  26. 【請求項26】前記予約キーの処理が、持続予約及び予
    約キーに関する情報を獲得するステップを含む、請求項
    23記載の方法。
  27. 【請求項27】前記持続予約及び予約キーに関する情報
    を獲得するステップが、予約コマンドを使用するステッ
    プを含む、請求項26記載の方法。
  28. 【請求項28】前記予約コマンドがキー読出しサービス
    ・アクション及び予約読出しサービス・アクションを含
    む、請求項27記載の方法。
  29. 【請求項29】前記持続予約コマンドの処理が、前記共
    用記憶システムの前記論理装置番号にアクションを開始
    する持続予約出力コマンドを発行するステップを含む、
    請求項23記載の方法。
  30. 【請求項30】前記共用記憶システムの前記論理装置番
    号にアクションを開始する持続予約出力コマンドが、登
    録、予約、解除、クリア、プリエンプト、登録及び既存
    キーの無視、及び打ち切り付きプリエンプトを含むグル
    ープから選択されるサービス・アクションを含む、請求
    項29記載の方法。
  31. 【請求項31】オペレーティング・システムのオープン
    ・オプションをSCSI持続予約コマンドにマップする
    ドライバであって、予約キーを処理して登録済みホスト
    を識別し、また持続予約コマンドを処理して、ホストに
    よるアクセスを制御するように構成されるドライバ。
  32. 【請求項32】複数パスの全てを共用記憶システムの論
    理装置番号に登録可能にすることにより、持続予約コマ
    ンドを処理する、請求項31記載のドライバ。
  33. 【請求項33】1つの予約キーを用いて、第1のホスト
    からの全てのパスを、前記共用記憶システムの前記論理
    装置番号に登録する、請求項32記載のドライバ。
  34. 【請求項34】持続予約及び予約キーに関する情報を獲
    得することにより、前記予約キーを処理する、請求項3
    1記載のドライバ。
  35. 【請求項35】予約コマンドを使用することにより、前
    記持続予約及び予約キーに関する情報を獲得する、請求
    項34記載のドライバ。
  36. 【請求項36】前記予約コマンドがキー読出しサービス
    ・アクション及び予約読出しサービス・アクションを含
    む、請求項35記載のドライバ。
  37. 【請求項37】前記共用記憶システムの前記論理装置番
    号にアクションを開始する持続予約出力コマンドを発行
    することにより、前記持続予約コマンドを処理する、請
    求項31記載のドライバ。
  38. 【請求項38】前記共用記憶システムの前記論理装置番
    号にアクションを開始する前記持続予約出力コマンド
    が、登録、予約、解除、クリア、プリエンプト、登録及
    び既存キーの無視、及び打ち切り付きプリエンプトを含
    むグループから選択されるサービス・アクションを含
    む、請求項37記載のドライバ。
JP2001300535A 2000-10-13 2001-09-28 非並行クラスタリング環境においてscsi−3持続予約を使用しマルチパスi/oを提供する方法及び装置 Expired - Fee Related JP3659342B2 (ja)

Applications Claiming Priority (2)

Application Number Priority Date Filing Date Title
US09/687,335 US6954881B1 (en) 2000-10-13 2000-10-13 Method and apparatus for providing multi-path I/O in non-concurrent clustering environment using SCSI-3 persistent reserve
US09/687335 2000-10-13

Publications (2)

Publication Number Publication Date
JP2002163156A true JP2002163156A (ja) 2002-06-07
JP3659342B2 JP3659342B2 (ja) 2005-06-15

Family

ID=24760045

Family Applications (1)

Application Number Title Priority Date Filing Date
JP2001300535A Expired - Fee Related JP3659342B2 (ja) 2000-10-13 2001-09-28 非並行クラスタリング環境においてscsi−3持続予約を使用しマルチパスi/oを提供する方法及び装置

Country Status (9)

Country Link
US (1) US6954881B1 (ja)
EP (1) EP1246060B1 (ja)
JP (1) JP3659342B2 (ja)
KR (1) KR100424242B1 (ja)
CN (1) CN1186726C (ja)
AT (1) ATE313114T1 (ja)
DE (1) DE60115839T2 (ja)
SG (1) SG100764A1 (ja)
TW (1) TW525056B (ja)

Cited By (5)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
JP2006504186A (ja) * 2002-10-21 2006-02-02 エミュレックス・デザイン・アンド・マニュファクチュアリング・コーポレーション 複数の伝送路フェイルオーバー、フェイルバックおよび負荷分散を備えるシステム
JP2007034438A (ja) * 2005-07-22 2007-02-08 Nec Corp 冗長パス制御装置、方法及びプログラム並びにディスクアレイシステム
JP2015508213A (ja) * 2012-02-28 2015-03-16 マイクロソフト コーポレーション ストレージプール内のディスク所有権の調停
US10404520B2 (en) 2013-05-29 2019-09-03 Microsoft Technology Licensing, Llc Efficient programmatic memory access over network file access protocols
US10503419B2 (en) 2013-05-29 2019-12-10 Microsoft Technology Licensing, Llc Controlling storage access by clustered nodes

Families Citing this family (62)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US7277952B2 (en) * 2001-09-28 2007-10-02 Microsoft Corporation Distributed system resource protection via arbitration and ownership
US7406039B2 (en) * 2002-02-26 2008-07-29 Dell Products L.P. System and method for a failover protocol in storage area network controllers
JP3882783B2 (ja) * 2002-05-31 2007-02-21 オムロン株式会社 プログラマブルコントローラ及びcpuユニット並びに通信ユニット及び通信ユニットの制御方法
US7711539B1 (en) * 2002-08-12 2010-05-04 Netapp, Inc. System and method for emulating SCSI reservations using network file access protocols
US20040139196A1 (en) * 2003-01-09 2004-07-15 Dell Products L.P. System and method for releasing device reservations
US7272674B1 (en) * 2003-06-30 2007-09-18 Veritas Operating Corporation System and method for storage device active path coordination among hosts
US7085867B2 (en) * 2003-08-06 2006-08-01 Lsi Logic Corporation Methods and structure for SCSI2 to SCSI3 reservation protocol mapping
US8239552B2 (en) * 2003-08-21 2012-08-07 Microsoft Corporation Providing client access to devices over a network
US7127545B1 (en) 2003-11-19 2006-10-24 Veritas Operating Corporation System and method for dynamically loadable storage device I/O policy modules
US7418545B2 (en) 2004-10-28 2008-08-26 Intel Corporation Integrated circuit capable of persistent reservations
US7370128B2 (en) 2004-10-29 2008-05-06 Intel Corporation Expander device capable of communication protocol translation
US7487403B2 (en) * 2004-11-12 2009-02-03 International Business Machines Corporation Method for handling a device failure
US7496745B1 (en) * 2005-02-04 2009-02-24 Qlogic, Corporation Method and system for managing storage area networks
US7577802B1 (en) * 2005-04-18 2009-08-18 Netapp, Inc. Accessing a reservable device by transiently clearing a persistent reservation on the device in multi-host system
US7937617B1 (en) 2005-10-28 2011-05-03 Symantec Operating Corporation Automatic clusterwide fail-back
US20070168507A1 (en) * 2005-11-15 2007-07-19 Microsoft Corporation Resource arbitration via persistent reservation
US8972613B2 (en) 2006-10-31 2015-03-03 Hewlett-Packard Development Company, L.P. System and method for increasing input/output throughput in a data storage system
US8060775B1 (en) 2007-06-14 2011-11-15 Symantec Corporation Method and apparatus for providing dynamic multi-pathing (DMP) for an asymmetric logical unit access (ALUA) based storage system
US7890555B2 (en) * 2007-07-10 2011-02-15 International Business Machines Corporation File system mounting in a clustered file system
US8156164B2 (en) 2007-07-11 2012-04-10 International Business Machines Corporation Concurrent directory update in a cluster file system
CN101471830B (zh) * 2007-12-25 2011-02-02 英业达股份有限公司 Linux***下的多路径访问远程逻辑设备的方法
US7844757B2 (en) 2008-06-12 2010-11-30 International Machines Business Corporation Method and system for providing multiple paths to user data stored on a SCSI disk
US7840730B2 (en) 2008-06-27 2010-11-23 Microsoft Corporation Cluster shared volumes
US8719473B2 (en) * 2008-09-19 2014-05-06 Microsoft Corporation Resource arbitration for shared-write access via persistent reservation
US8380938B2 (en) 2010-02-24 2013-02-19 International Business Machines Corporation Providing shared access to data storage resources across cluster computing environment boundaries
US20120102561A1 (en) * 2010-10-26 2012-04-26 International Business Machines Corporation Token-based reservations for scsi architectures
US8463762B2 (en) 2010-12-17 2013-06-11 Microsoft Corporation Volumes and file system in cluster shared volumes
US9652469B2 (en) 2011-06-04 2017-05-16 Microsoft Technology Licensing, Llc Clustered file service
US8627431B2 (en) 2011-06-04 2014-01-07 Microsoft Corporation Distributed network name
US8639856B2 (en) * 2011-08-04 2014-01-28 International Business Machines Corporation SCSI reservation status information on a SAN disk
US8984220B1 (en) * 2011-09-30 2015-03-17 Emc Corporation Storage path management host view
EP2735973A4 (en) * 2012-02-06 2015-03-11 Hitachi Ltd COMPUTER SYSTEM AND DATA INPUT / OUTPUT METHOD
CN104423889B (zh) * 2013-08-26 2017-06-16 国际商业机器公司 一种多路径管理方法和***
US9378154B2 (en) 2014-05-02 2016-06-28 International Business Machines Corporation Secure reservation mode for logical unit numbers and persistent reservations
TWI511037B (zh) * 2014-05-09 2015-12-01 Wistron Corp 儲存叢集化系統與提供對叢集式儲存的存取的方法
US9645872B1 (en) * 2015-03-27 2017-05-09 EMC IP Holding Company LLC Method to use multipath to reduce IO error handle duration
US9547441B1 (en) 2015-06-23 2017-01-17 Pure Storage, Inc. Exposing a geometry of a storage device
US10310740B2 (en) 2015-06-23 2019-06-04 Pure Storage, Inc. Aligning memory access operations to a geometry of a storage device
US11269884B2 (en) 2015-09-04 2022-03-08 Pure Storage, Inc. Dynamically resizable structures for approximate membership queries
KR20170028825A (ko) 2015-09-04 2017-03-14 퓨어 스토리지, 아이앤씨. 압축된 인덱스들을 사용한 해시 테이블들에서의 메모리 효율적인 스토리지 및 탐색
US11341136B2 (en) 2015-09-04 2022-05-24 Pure Storage, Inc. Dynamically resizable structures for approximate membership queries
CN106557276B (zh) * 2015-09-30 2021-02-23 中兴通讯股份有限公司 存储接管、切换处理方法及装置
US10133503B1 (en) 2016-05-02 2018-11-20 Pure Storage, Inc. Selecting a deduplication process based on a difference between performance metrics
US10452297B1 (en) 2016-05-02 2019-10-22 Pure Storage, Inc. Generating and optimizing summary index levels in a deduplication storage system
US9940060B1 (en) 2016-05-02 2018-04-10 Pure Storage, Inc. Memory use and eviction in a deduplication storage system
US10628182B2 (en) 2016-07-11 2020-04-21 Pure Storage, Inc. Generation of an instruction guide based on a current hardware configuration of a system
US10540095B1 (en) 2016-08-12 2020-01-21 Pure Storage, Inc. Efficient garbage collection for stable data
CN106484327B (zh) * 2016-09-20 2019-07-23 华为技术有限公司 一种数据处理方法及相关存储设备
US9747039B1 (en) 2016-10-04 2017-08-29 Pure Storage, Inc. Reservations over multiple paths on NVMe over fabrics
US10162523B2 (en) 2016-10-04 2018-12-25 Pure Storage, Inc. Migrating data between volumes using virtual copy operation
US10191662B2 (en) 2016-10-04 2019-01-29 Pure Storage, Inc. Dynamic allocation of segments in a flash storage system
US20180095788A1 (en) 2016-10-04 2018-04-05 Pure Storage, Inc. Scheduling operations for a storage device
US10678432B1 (en) 2016-10-04 2020-06-09 Pure Storage, Inc. User space and kernel space access to memory devices through private queues
US10481798B2 (en) 2016-10-28 2019-11-19 Pure Storage, Inc. Efficient flash management for multiple controllers
US10185505B1 (en) 2016-10-28 2019-01-22 Pure Storage, Inc. Reading a portion of data to replicate a volume based on sequence numbers
US10359942B2 (en) 2016-10-31 2019-07-23 Pure Storage, Inc. Deduplication aware scalable content placement
US11307998B2 (en) 2017-01-09 2022-04-19 Pure Storage, Inc. Storage efficiency of encrypted host system data
US10387661B2 (en) 2017-01-09 2019-08-20 Pure Storage, Inc. Data reduction with end-to-end security
US10719273B2 (en) * 2017-01-24 2020-07-21 Wyse Technology L.L.C. Enabling SCSI commands that are not supported by a client terminal
US10528280B1 (en) 2017-01-31 2020-01-07 Pure Storage, Inc. Tombstones for no longer relevant deduplication entries
JP6933107B2 (ja) * 2017-11-22 2021-09-08 富士通株式会社 ストレージシステム,ストレージ制御装置およびストレージ制御プログラム
US11397545B1 (en) 2021-01-20 2022-07-26 Pure Storage, Inc. Emulating persistent reservations in a cloud-based storage system

Family Cites Families (36)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US4207609A (en) 1978-05-08 1980-06-10 International Business Machines Corporation Method and means for path independent device reservation and reconnection in a multi-CPU and shared device access system
US4445605A (en) 1980-08-25 1984-05-01 Horton Industries, Inc. Spring engaged fluid released fan clutch for a live shaft
US5239632A (en) 1992-04-16 1993-08-24 Hewlett-Packard Company Device to translate logical unit number communications on one SCSI bus to ID communications on a subordinate SCSI bus
JPH08328991A (ja) 1995-03-30 1996-12-13 Canon Inc インタフェース装置
US5909595A (en) 1995-05-15 1999-06-01 Nvidia Corporation Method of controlling I/O routing by setting connecting context for utilizing I/O processing elements within a computer system to produce multimedia effects
JPH08314843A (ja) 1995-05-22 1996-11-29 Hitachi Ltd 計算機システム
US6532547B1 (en) * 1995-06-16 2003-03-11 Emc Corporation Redundant peripheral device subsystem
JP3190546B2 (ja) 1995-08-29 2001-07-23 株式会社日立製作所 ブロックアドレスの変換方法および回転型記憶サブシステムの制御方法ならびにディスクサブシステム
US5768623A (en) 1995-09-19 1998-06-16 International Business Machines Corporation System and method for sharing multiple storage arrays by dedicating adapters as primary controller and secondary controller for arrays reside in different host computers
US5790775A (en) * 1995-10-23 1998-08-04 Digital Equipment Corporation Host transparent storage controller failover/failback of SCSI targets and associated units
JP3628777B2 (ja) * 1995-10-30 2005-03-16 株式会社日立製作所 外部記憶装置
US5867736A (en) 1996-03-29 1999-02-02 Lsi Logic Corporation Methods for simplified integration of host based storage array control functions using read and write operations on a storage array control port
US5925120A (en) 1996-06-18 1999-07-20 Hewlett-Packard Company Self-contained high speed repeater/lun converter which controls all SCSI operations between the host SCSI bus and local SCSI bus
US5828876A (en) 1996-07-31 1998-10-27 Ncr Corporation File system for a clustered processing system
US5892955A (en) 1996-09-20 1999-04-06 Emc Corporation Control of a multi-user disk storage system
US6073218A (en) 1996-12-23 2000-06-06 Lsi Logic Corp. Methods and apparatus for coordinating shared multiple raid controller access to common storage devices
US6151684A (en) * 1997-03-28 2000-11-21 Tandem Computers Incorporated High availability access to input/output devices in a distributed system
US6009535A (en) * 1997-06-30 1999-12-28 Emc Corporation SCSI adaptor failover for a disk drive system
US6073188A (en) 1997-07-25 2000-06-06 Compaq Computer Corporation Electronic switchbox for selection and sharing of internal peripheral devices among different computers, the internal peripheral devices located in slots of a chassis
US5937428A (en) 1997-08-06 1999-08-10 Lsi Logic Corporation Method for host-based I/O workload balancing on redundant array controllers
US6145028A (en) * 1997-12-11 2000-11-07 Ncr Corporation Enhanced multi-pathing to an array of storage devices
US6021454A (en) 1998-03-27 2000-02-01 Adaptec, Inc. Data transfer between small computer system interface systems
JP3331960B2 (ja) 1998-04-22 2002-10-07 日本電気株式会社 ホストコンピュータシステム
JPH11345175A (ja) 1998-06-02 1999-12-14 Nec Kofu Ltd 代替パス制御システム及び方法
US6286056B1 (en) 1998-06-26 2001-09-04 Seagate Technology Llc Data storage device with small computer system interface providing persistent reservations
JP2000047950A (ja) 1998-07-24 2000-02-18 Hitachi Ltd 外部記憶装置
US6115772A (en) 1998-09-18 2000-09-05 International Business Machines, Inc. System and method for host expansion and connection adaptability for a SCSI storage array
US6182167B1 (en) 1998-10-22 2001-01-30 International Business Machines Corporation Automatic sharing of SCSI multiport device with standard command protocol in conjunction with offline signaling
KR20000045794A (ko) * 1998-12-30 2000-07-25 서평원 스카시 버스 장애시의 재접속 방법
US6484229B1 (en) 1999-03-05 2002-11-19 Hitachi, Ltd. Magnetic disk apparatus
US6256695B1 (en) * 1999-03-15 2001-07-03 Western Digital Corporation Disk drive method of determining SCSI bus state information after a SCSI bus reset condition
US6408343B1 (en) * 1999-03-29 2002-06-18 Hewlett-Packard Company Apparatus and method for failover detection
TW457475B (en) * 1999-12-08 2001-10-01 Inventec Corp Status detecting method for hard disk drivers
US6658587B1 (en) 2000-01-10 2003-12-02 Sun Microsystems, Inc. Emulation of persistent group reservations
US6728905B1 (en) * 2000-03-03 2004-04-27 International Business Machines Corporation Apparatus and method for rebuilding a logical device in a cluster computer system
US6772231B2 (en) * 2000-06-02 2004-08-03 Hewlett-Packard Development Company, L.P. Structure and process for distributing SCSI LUN semantics across parallel distributed components

Cited By (6)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
JP2006504186A (ja) * 2002-10-21 2006-02-02 エミュレックス・デザイン・アンド・マニュファクチュアリング・コーポレーション 複数の伝送路フェイルオーバー、フェイルバックおよび負荷分散を備えるシステム
JP2007034438A (ja) * 2005-07-22 2007-02-08 Nec Corp 冗長パス制御装置、方法及びプログラム並びにディスクアレイシステム
JP4506594B2 (ja) * 2005-07-22 2010-07-21 日本電気株式会社 冗長パス制御方法
JP2015508213A (ja) * 2012-02-28 2015-03-16 マイクロソフト コーポレーション ストレージプール内のディスク所有権の調停
US10404520B2 (en) 2013-05-29 2019-09-03 Microsoft Technology Licensing, Llc Efficient programmatic memory access over network file access protocols
US10503419B2 (en) 2013-05-29 2019-12-10 Microsoft Technology Licensing, Llc Controlling storage access by clustered nodes

Also Published As

Publication number Publication date
TW525056B (en) 2003-03-21
CN1348134A (zh) 2002-05-08
CN1186726C (zh) 2005-01-26
EP1246060A1 (en) 2002-10-02
US6954881B1 (en) 2005-10-11
ATE313114T1 (de) 2005-12-15
JP3659342B2 (ja) 2005-06-15
SG100764A1 (en) 2003-12-26
EP1246060B1 (en) 2005-12-14
DE60115839D1 (de) 2006-01-19
KR20020029605A (ko) 2002-04-19
DE60115839T2 (de) 2006-07-20
KR100424242B1 (ko) 2004-03-24

Similar Documents

Publication Publication Date Title
JP3659342B2 (ja) 非並行クラスタリング環境においてscsi−3持続予約を使用しマルチパスi/oを提供する方法及び装置
US6675268B1 (en) Method and apparatus for handling transfers of data volumes between controllers in a storage environment having multiple paths to the data volumes
US10678465B2 (en) Seamless migration of storage volumes between storage arrays
US6898670B2 (en) Storage virtualization in a storage area network
US7596637B2 (en) Storage apparatus and control method for the same, and computer program product
US6874060B2 (en) Distributed computer system including a virtual disk subsystem and method for providing a virtual local drive
JP3843713B2 (ja) 計算機システム及びそのデバイスの割り当て方法
US20040139240A1 (en) Storage system with LUN virtualization
US7437423B1 (en) System and method for monitoring cluster partner boot status over a cluster interconnect
US20040230787A1 (en) Method and apparatus for dynamically modifying a computer system configuration
JP2007133854A (ja) リソース割り当てのためのコンピュータ化されたシステムと方法
US20030236884A1 (en) Computer system and a method for storage area allocation
JP2002222110A (ja) ストレージシステム及び仮想プライベートボリューム制御方法
JP2003208267A (ja) クラスタ型ディスク制御装置および負荷分散方法
US20050246516A1 (en) Method and apparatus for implementing distributed SCSI devices using enhanced adapter reservations
US8578073B2 (en) Storage system and control method of storage system
US8775587B2 (en) Physical network interface selection to minimize contention with operating system critical storage operations
US8255676B2 (en) Non-disruptive methods for updating a controller of a storage system
EP1318447A2 (en) Raid apparatus and access control method therefor
US7441009B2 (en) Computer system and storage virtualizer
JPS6364133A (ja) 情報処理システム
KR100938470B1 (ko) 스트리밍 데이터 공유를 위한 fc 기반의 네트워크스토리지 스트리밍 가속 장치 및 방법
US9098422B2 (en) System and method for management of cache configuration
US20210263874A1 (en) Storage device protocol dual personality
US20090063716A1 (en) Prioritising Data Processing Operations

Legal Events

Date Code Title Description
A977 Report on retrieval

Free format text: JAPANESE INTERMEDIATE CODE: A971007

Effective date: 20040701

A131 Notification of reasons for refusal

Free format text: JAPANESE INTERMEDIATE CODE: A131

Effective date: 20040706

A601 Written request for extension of time

Free format text: JAPANESE INTERMEDIATE CODE: A601

Effective date: 20041004

A602 Written permission of extension of time

Free format text: JAPANESE INTERMEDIATE CODE: A602

Effective date: 20041007

A521 Request for written amendment filed

Free format text: JAPANESE INTERMEDIATE CODE: A523

Effective date: 20050105

Free format text: JAPANESE INTERMEDIATE CODE: A821

Effective date: 20050105

RD12 Notification of acceptance of power of sub attorney

Free format text: JAPANESE INTERMEDIATE CODE: A7432

Effective date: 20050105

A521 Request for written amendment filed

Free format text: JAPANESE INTERMEDIATE CODE: A821

Effective date: 20050106

TRDD Decision of grant or rejection written
A01 Written decision to grant a patent or to grant a registration (utility model)

Free format text: JAPANESE INTERMEDIATE CODE: A01

Effective date: 20050303

A521 Request for written amendment filed

Free format text: JAPANESE INTERMEDIATE CODE: A821

Effective date: 20050303

RD14 Notification of resignation of power of sub attorney

Free format text: JAPANESE INTERMEDIATE CODE: A7434

Effective date: 20050303

A61 First payment of annual fees (during grant procedure)

Free format text: JAPANESE INTERMEDIATE CODE: A61

Effective date: 20050308

R150 Certificate of patent or registration of utility model

Free format text: JAPANESE INTERMEDIATE CODE: R150

LAPS Cancellation because of no payment of annual fees