JP4456121B2 - コンピュータ・クラスタ、コンピュータ・ユニット、および、コンピュータ・ユニット間における記憶アクセス制御方法 - Google Patents

コンピュータ・クラスタ、コンピュータ・ユニット、および、コンピュータ・ユニット間における記憶アクセス制御方法 Download PDF

Info

Publication number
JP4456121B2
JP4456121B2 JP2006537328A JP2006537328A JP4456121B2 JP 4456121 B2 JP4456121 B2 JP 4456121B2 JP 2006537328 A JP2006537328 A JP 2006537328A JP 2006537328 A JP2006537328 A JP 2006537328A JP 4456121 B2 JP4456121 B2 JP 4456121B2
Authority
JP
Japan
Prior art keywords
unit
computer
data storage
file access
access
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
JP2006537328A
Other languages
English (en)
Other versions
JP2007510208A (ja
Inventor
ヒューティアイネン,ハーリ
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.)
Nokia Oyj
Original Assignee
Nokia Oyj
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 Nokia Oyj filed Critical Nokia Oyj
Publication of JP2007510208A publication Critical patent/JP2007510208A/ja
Application granted granted Critical
Publication of JP4456121B2 publication Critical patent/JP4456121B2/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
    • 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/2046Error 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 where the redundant components share persistent storage
    • 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

Description

本発明は、重要な環境に設けられるコンピュータ・システムに関する。特に本発明は、冗長コンピュータ・クラスタと、たとえばサーバ・ノードなどの各コンピュータ・ユニット間において、記憶アクセス・シフトを用いてこのコンピュータ・クラスタにおけるスィッチオーバ(switchover)を円滑に行う方法とに関する。
通信ネットワークにおいて、または一般に他の任意の重要なシステム環境において、信頼性は大事な要因である。コンピュータのハードウェアおよびソフトウェアには障害が起こり得るが、エンドユーザが知覚するサービスは継続的に中断なく提供されるべきである。トランザクションにおける中断が最小限とされることが重要である。トランザクションの例としては、データ通信セッションおよびデータベース・トランザクションが挙げられる。更にコンピュータ・システムにおいて管理活動は、エンドユーザの感覚に影響を与えずに行わなければならない。たとえば、できるだけユーザに認識されずに且つ迅速に、サブシステム(subsystem)を起動、起動解除、付加、除去および交換し得ねばならない。
重要な環境においては、ハードウェアおよび/またはソフトウェアを備える複数のサブシステムが複製され、障害が生じたサブシステムに置き換わるバックアップ・サブシステムが準備される。このようなサブシステムは多くの場合、ホットスワップ可能(hot-swappable)である。各サブシステムは、アクティブな各サブシステムにひとつのバックアップ・サブシステムに対応する様に、または、一群のサブシステムにひとつのバックアップ・サブシステムが対応する様に複製されてよい。この場合にサブシステムとは、少なくともひとつのハードウェア・ユニットを備えるセット(set)、および/または、少なくともひとつのソフトウェア・コンポーネントを備えるセットを意味する。ハードウェア・ユニットは、たとえば、プロセッサ・ユニット、インタフェース・カードおよび通信回線であり得る。ソフトウェア・コンポーネントは、たとえば、プロセッサ・ユニットにおいて実行されている一群のプロセスまたは一群のスレッドであり得る。
サブシステムはまた、ソフトウェアおよびハードウェアの双方を備えることもある。たとえば通信回線サブシステムは、回線インタフェース・カードと、関連するプロセッサ・ユニットおいて実行されている一群のプロセスとを備え得る。典型的には多数の同様の回線インタフェース・カードがあり、その各々は、回線インタフェース・カードのハードウェアと、該回線インタフェース・カードが関連するプロセッサ・ユニットにおいて実行されているソフトウェアとを含むサブシステムを備える。典型的に、ソフトウェア・プロセスの場合におけるバックアップ・サブシステムすなわちレプリカは、このレプリカと対をなすアクティブなプロセスとは別のコンピュータ・ユニットにおいて実行される。
サービス・アベイラビリティ・フォーラム(SAフォーラム)と称されるコンソーシアムがあり、これは2つの階層の標準的なキャリアグレード・インタフェースを開発している。サービスの連続性および供与を喪失せずに中断なくサービスを提供する能力を有するならば、そのシステムはキャリアグレード(carrier grade)と称される。SAフォーラム仕様は、アプリケーション・インタフェースおよびプラットフォーム・インタフェースを有する。アプリケーション・インタフェースは、アプリケーション・ソフトウェアの処理を複数の演算要素に亙り分散させるために、このアプリケーション・ソフトウェアに対して使用される標準的な一群のツールに対するアクセスを提供する。各ツールは、一切のユーザに対するサービスの連続性および供与を喪失せずに、これらの要素の障害に対応する。各ツールは、アプリケーション・インタフェース仕様に適合する管理ミドルウェアを介して提供される。
プラットフォーム・インタフェースは、オペレーティング・システム・レベルに対してアクセスするために使用される。その目的は、異なるプラットフォーム間でオペレーティング・システム・レベルの差を隠すことである。SAフォーラムの仕様概念においては、少なくともひとつのサービスユニット(service unit)(SU)を備えるサービス・グループ(service group)(SG)がある。
一方、各SUは、少なくとも一個のコンポーネントを備える。コンポーネントは、ソフトウェア・プロセスまたはスレッドであり得る。コンポーネントは、自身に関係付けられたハードウェア・ユニットを有し得る。換言するとSUは、アクティブ・サブシステム(active subsystem)であり得るか、または、アクティブ・サブシステムに対する置換物として作用する冗長サブシステムであり得るサブシステムである。SGにおいてはアクティブ状態にある少なくともひとつのSUと待機状態にある少なくともひとつのSUとがあるという意味において、SUが複製される。
待機状態にあるSUは、アクティブ状態にあるSUのバックアップ・レプリカとして作用する。上記アクティブSUが不調となりまたは保守の為に停止されるべきであれば、レプリカSUがアクティブとなると共に不調の又は停止されたSUのタスクを引き継ぐ。
本明細書中において、SAフォーラム仕様による上記概念は例示目的で使用される。該仕様は、他の等しい概念により置き換えられ得る。故に、本発明およびその各実施例は、明示的にSAフォーラム仕様に準拠するシステムおよび実施方式に限られない。
次に、上述のSAフォーラム仕様概念を示す図1を参照する。図1においては、コンピュータ・ユニット110および112を有する冗長2ユニット・コンピュータ・クラスタがある。各コンピュータ・ユニットは、通信チャネル104を用いて接続される。通信チャネル104はたとえば、イーサネット(登録商標)・セグメントまたはPCIバスとされ得る。3つのSGすなわちSG140〜144がある。各SGには2つのSUがある。SG140にはSU120および130があり、SG142にはSU122およびSU132があり、且つ、SG144にはSU124および134がある。SU120、132および124はアクティブ状態にあり、且つ、SU130、122および134は待機状態にある。各アクティブSUに対し、待機状態にあるひとつのスペアSUがある。
たとえば、SU132における一定の障害または管理活動のためにSG142においてスィッチオーバが行われる場合には、SU122がアクティブとなりSU132のタスクを引き継ぐ。SU132の状態は“待機”もしくは“存在せず”、または、SU132における状況を反映する他の状態となる。コンピュータ・ユニット・レベルにおいて障害が起きてコンピュータ・ユニット110が不調となれば、コンピュータ・ユニット112内のSU130〜134は、不調なコンピュータ・ユニット110内のそれぞれ対応するSU120〜124の代わりとならねばならない。
たとえばアクティブ/待機冗長性による冗長コンピュータ・クラスタにおいて冗長アプリケーションは、ソフトウェア制限の故に、一度にひとつのユニットすなわちノードを介してのみ所定の共有データ記憶リソースにアクセスするのが通常である。これに関して、データ記憶リソース(data storage resource)とは、たとえばファイル・システム(FS)、ソフトウェア式RAID(独立ディスクの冗長アレイ)、または、論理ボリューム管理方式(Logical Volume Management)(LVM)の論理ボリュームを意味する。
これに関し、データ記憶アクセス確立とは、たとえばファイル・システム(FS)のマウンティング、ソフトウェア式RAID(独立ディスクの冗長アレイ)の始動、または、論理ボリューム管理方式(LVM)の論理ボリュームの配置を意味する。
たとえばひとつのユニットにおいてソフトウェア式RAIDが始動されたとき、それはオペレーティング・システム・レベルにおいては上記ソフトウェア式RAIDに対する読み取りまたは書き込みを行う準備が確立されたことのみを意味することを銘記されたい。ファイル・システムは通常は早期に生成されていることから、それはソフトウェア式RAID設定に関して問題ではない。データ記憶リソースに対する読取り/書込みアクセスは、たとえばファイル・システムのクラッシュまたはデータ記憶リソースの一切の矛盾的な状態を回避するために、一度にひとつのユニットからのみ確立され得る。
データ記憶リソースの読取り/書込みアクセスとは、このデータ記憶リソースに対するアクセスを確立したエンティティがこのデータ記憶リソースにおけるデータを改変することを許容するアクセスを意味する。もしひとつのユニットが所定のデータ記憶リソースに対して読取り/書込みアクセスを確立したなら、他のユニットは通常は、該データ記憶リソースに対する読取りアクセスでさえ確立できない。このことは特に、ファイル・システムの読取り/書込みマウンティングに当てはまる。
読取りアクセス確立の場合には、アクセス確立を実施したエンティティに対し、データ記憶リソースの読取りのみが許容される。
ソフトウェア式RAIDはユーザの観点からは、単一ディスク上のパーティションの如きブロック・デバイスの様に挙動する。換言すると、それは仮想デバイスである。ファイル・システムは他の任意のブロック・デバイスに対する様にソフトウェア式RAID上へ生成され得る。換言すると、それはフォーマットされ得る。ファイル・システムの例は、Linux(登録商標)オペレーティング・システムで知られたext2およびReiserfsである。
Linux(登録商標)において所定のファイル・システムのマウンティングは、該ファイル・システムに包含されたディレクトリ構造を、マウンティングを実施するコンピュータのディレクトリ構造にアタッチする段階を備える。前述のディレクトリ構造は、上記ディレクトリ構造内の一定のサブディレクトリである特定のマウント箇所にマウントされる。マウンティングの間、記憶ボリュームから読み出されたファイル・システムのディレクトリ構造はオペレーティング・システムにより少なくとも部分的に、コンピュータの揮発性メモリにキャッシュされ得る。マウンティングの間に記憶ボリュームからは、たとえばディスク空間割当て情報などの他の一定のファイル・システム情報も読み出されキャッシュされてもよい。ファイル・システムのマウンティングは本質的に、Microsoft Windows(登録商標)の如き任意の現存のオペレーティング・システムと同様である。それらの差は主として、マウントされたファイル・システム上のファイルが識別されるメカニズムに関連する。たとえばWindows(登録商標)では、各ファイル・システムを単一のディレクトリ・ツリーに対してアタッチする代わりに、マウントされたファイル・システムがA、D、E、Fなどの文字を用いて識別される。通常、文字Cはローカル・ハードディスク・ドライブを表す。
本明細書においてマウンティングとは、マウントされるべきファイル・システムが、マウンティングを実施したシステムにおけるオープン(open)、読取り、書込みおよびクローズ(close)などの、一般的なファイル・アクセス用オペレーティング・システム・サービスの準備ができることを意味する。ファイル・アクセス用オペレーティング・システム・サービスは、大容量二次的記憶装置の代わりに、個別に識別可能なファイルに関して作用する。
所定のひとつのファイル・システムに対し、このファイル・システムを読取りのためにのみマウントする様に複数のユニットがアクセスすることは可能である。実際には、ファイル・システムにアクセスしてその読取り/書込みマウントを所有するのは、アクティブ・ユニットまたはアクティブ・ソフトウェア・エンティティ、すなわちアクティブ・サブシステムである。同様に、ソフトウェア式RAIDの場合、このソフトウェア式RAIDに対する読取り/書込みアクセスを確立して所有するのは、アクティブ・ユニットまたはアクティブ・ソフトウェア・エンティティである。
SAフォーラムの用語においてこれは、アクティブSUがデータ記憶リソースに対する読取り/書込みアクセスを所有することを意味する。このことは、それが例えばファイル・システム・マウント、ソフトウェア式RAIDアクセスまたはLVMアクセスを所有することを意味する。アクティブ・エンティティすなわちアクティブSUが不調となれば、または、たとえばソフトウェアのアップグレードまたは他の任意の管理行為の故に操作者がアクティブ/待機役割を切換えるべきであれば、データ記憶リソース・アクセスは、従前のSUから新たなSUへと、すなわち通常は第1ユニットから第2ユニットへと安全にシフトされねばならない。
次に、上記で論じられた手法を例示する図2を参照する。図2には、コンピュータ・ユニット110および112を有する冗長2ユニット・コンピュータ・クラスタがある。上記各コンピュータ・ユニットは、ローカル・エリア・ネットワーク(イーサネット(登録商標))である通信チャネル104を用いて接続される。各コンピュータ・ユニットは、高帯域幅アクセスを提供するファイバ・チャネル202を用いてディスク記憶ユニット200に接続される。
ディスク記憶ユニットはボリューム250、252および254を有する。各ボリュームには夫々、ボリューム・ラベルV1、V2およびV3が割当てられている。この場合にボリュームは、実際には、一台のハードディスク・ドライブとされ、一群のハードディスク・ドライブとされ、または、一台のハードディスク・ドライブの特定個数のシリンダから成るハードディスク・ドライブ内のパーティションとされ得るアブストラクション(abstraction)である。
ボリュームはまた、RAID論理ボリュームともされ得る。ボリュームの概念は、論理的に連続的に見える記憶装置のブロックであって標準的なメカニズムを用いてアクセスされ得るブロックを表す。ひとつのファイル・システムは、複数のボリューム上へと生成され得る。ファイル・システムは、たとえばLinux(登録商標)のext2またはReiserfsとされ得る。ファイル・システムの他の例は、Microsoft Windows(登録商標)オペレーティング・システムのNTFSまたはFAT32である。ファイル・システムは、そのボリューム上におけるディレクトリ、ファイル、および、アクセスデータ構造、ならびにそれらの記憶フォーマットを備える。
ボリューム250、252および254上には、ファイル・システム260、262および264が夫々生成されている。ファイル・システムの生成段階の間においては、ボリュームに対してファイル・システム・データ構造が割当てられ且つ生成される。図2の場合、ファイル・システム260、262および264はLinux(登録商標)のext2ファイル・システムである。コンピュータ・ユニット110および112は、それぞれオペレーティング・システム220および222の下で作動する。
オペレーティング・システム220は、読取り/書込みマウントされたファイル・システム260と、読取りマウントされたファイル・システム264とを有する。このことは図2において、上記オペレーティング・システムと各ファイル・システムとの間の矢印の方向を用いて示される。一方、オペレーティング・システム222は読取り/書込みマウントされたファイル・システム262と、読取りマウントされたファイル・システム264とを有する。このことは、あるユニットが所定のファイル・システムを読取り/書込みマウントしたなら他のユニットは該ファイル・システムをマウントし得ないという原理を示す。もしマウントを行う各ユニットにより所定のボリュームが読取りマウントだけされるなら、数個のユニットがこのボリュームをマウントし得る。
コンピュータ・ユニット110において実行されているアクティブSUが待機状態へと移行すべきであり且つコンピュータ・ユニット112において実行されているパッシブSUがアクティブとなるべきときに、もしそのSUがファイル・システム260に対する読取り/書込みアクセスを必要とするならば問題が生ずる。コンピュータ・ユニット112において実行されているバックアップSUがアクティブ状態に入るとき、ファイル・システム260はコンピュータ・ユニット112にマウントされていないままであり且つSUはファイル・システム260から読取り又はファイル・システム260に対して書込みを行うことができない。
図2に示す問題は、ファイル・システムのマウンティングが、たとえばLinux(登録商標)レベルなどのネイティブ・オペレーティング・システムにおいて行われることである。待機SUがアクティブSUに置き換わるというSGレベルにてスィッチオーバが行われるとしても、そのオペレーティング・システムには影響が及ばず又は情報が伝えられ得ない。したがってこのようなSGレベルでのスィッチオーバは、オペレーティング・システム・レベルからは認識されない。
上述の問題を克服するために、先行技術からの幾つかの解決策が適用され得る。解決策のひとつは、ネットワーク・ファイル・システム(NFS)を用いてコンピュータ・ユニット110および112からファイル・システム260および262を使用することである。NFSにおいては、両方のコンピュータ・ユニットが両方のファイル・システムに対して読取り/書込みモードで同時にアクセスできる。但し、ファイル・システム内の別個のファイルのみが、同時にアクセス可能となる。ユーザが所定のファイルを書込みのためにオープンするときは常に、このファイルは他の併存するユーザに対しては読取りのみでアクセス可能となる。
次に、NFSなどのネットワーク・ファイル・システムの用法を示す図3を参照する。図3には、コンピュータ・ユニット110および112を有する冗長2ユニット・コンピュータ・クラスタがある。各コンピュータ・ユニットは、通信チャネル104を用いて接続される。通信チャネル104はたとえば、イーサネット(登録商標)・セグメントまたはPCIバスとされ得る。コンピュータ・ユニット110および112は、NFSを実行するファイル・サーバ300に対して接続される。ファイル・サーバ300は、ファイバ・チャネルを用いてディスク記憶ユニット200に対して接続される。
ディスク記憶ユニット200は、図2と同様にファイル・システム260および262を有する。ファイル・サーバ300は、実際には、コンピュータ・ユニット110および112などのリモート・クライアントに、ファイル・サーバ300上にのみマウントされたファイル・システムに対して読取り/書込みアクセスを確立することを可能とするNFSを有する。NFSのマウンティングは、リモート・クライアントにおけるローカル・マウンティングを擬態する。今、コンピュータ・ユニット110は両方のファイル・システム260および262に対して読取り/書込みNFSマウントを実行することが可能である。また、コンピュータ・ユニット110からファイル・システム260および262に対しては、読取り/書込みNFSマウント320および322がある。同様に、コンピュータ・ユニット112からファイル・システム260および262に対しては、読取り/書込みNFSマウント324および326がある。
図3に示される先行技術のNFSマウントに基づく解決策の欠点は、パフォーマンスが不十分なことである。コンピュータ・ユニット110および112がディスク記憶ユニット200に対して接続され、他のコンピュータ・ユニットおよびその介在ネットワーク・ファイル・システム・ソフトウェアなしに、該コンピュータ・ユニット110および112がディスク記憶ユニット200に対し/から大量のディスク・ブロックを移動し得る場合と比較すると、ファイル・サーバ300およびNFSの使用によればファイル・システム260および262に対するアクセスが相当に遅くなる。これに加え、各ユニットが読取り/書込みアクセス・モードにおいて、ファイル・システムなどの同一の論理記憶エンティティに対して同時にアクセスするときに重複時間が無い様に、ディスク・アクセスは従前のSUから新たなSUへと安全にシフトされねばならない。この様にして、ファイル・システムの一貫性が保持され得る。図3に示される先行技術のNFSマウントに基づく解決策の別の欠点は、ファイル・サーバ300がシステムにおける単一障害点(single point of failure)になることである。ファイル・サーバ300が複製されるとしても図2におけるのと同様の問題が生ずる、と言うのも、ファイル・サーバ300に対するレプリカはファイル・システム260および262の同時的な読取り/書込みマウントを必要とするからである。故に、状況は本質的に改善されていない。
本発明の目的は、上述の問題を解決することである。特に本発明の目的は、スィッチオーバの間において各サービスユニット間での読取り/書込みマウントの確実な移行を確保することである。
本発明は、少なくとも、第1コンピュータ・ユニットと、第2コンピュータ・ユニットと、共有記憶ユニットとを備える冗長コンピュータ・クラスタにおいてスィッチオーバを実行する方法に関する。第1および第2コンピュータ・ユニットは共有記憶ユニットに接続され、この共有記憶ユニットは、コンピュータ・クラスタにおいて実行される複製されたサービスユニットによりアクセスされる少なくとも一個のデータ記憶リソースを備える。
この方法においては、複製されたサービスユニットに関連するスィッチオーバ状態が検出され、少なくとも一個のデータ記憶リソースに対するアクセスが第1コンピュータ・ユニットにより解除され、上記少なくとも一個のデータ記憶リソースに対するアクセスが上記第2コンピュータ・ユニットにより確立され、且つ、第2コンピュータ・ユニットにおいてはサービスユニットのレプリカがアクティブとなることが許容される。
本発明はまた、少なくとも、第1コンピュータ・ユニットと、第2コンピュータ・ユニットと、共有記憶ユニットとを備える冗長コンピュータ・クラスタにも関する。上記第1および第2コンピュータ・ユニットは共有記憶ユニットに接続され、この共有記憶ユニットは、上記コンピュータ・クラスタにおいて実行される複製されたサービスユニットによりアクセスされる少なくとも一個のデータ記憶リソースを備える。コンピュータ・クラスタは、複製されたサービスユニットに関連するスィッチオーバ状態を検出する第1のスィッチオーバ制御手段と、第1および第2コンピュータ・ユニット内のアクセス解除手段であって少なくとも一個のデータ記憶リソースに対するアクセスを解除するアクセス解除手段と、第1および第2コンピュータ・ユニット内のアクセス確立手段であって少なくとも一個のデータ記憶リソースに対するアクセスを確立するアクセス確立手段と、少なくとも一個のデータ記憶リソースに対するアクセスが確立した後にサービスユニットのレプリカを起動する第2のスィッチオーバ制御手段と、を更に備える。
本発明はまた、少なくとも一台の共有記憶ユニットに接続されるコンピュータ・ユニットにも関する。コンピュータ・ユニットは、少なくとも一台の共有記憶ユニット上の少なくとも一個のデータ記憶リソースに対するアクセスを必要とする少なくともひとつの複製されたサービスユニットを実行する。コンピュータ・ユニットは、少なくともひとつの複製されたサービスユニットの内のいずれかのサービスユニットに関連するスィッチオーバ状態を検出する第1のスィッチオーバ制御手段と、少なくとも一個のデータ記憶リソースに対するアクセスを解除するアクセス解除手段と、少なくとも一個のデータ記憶リソースに対するアクセスを確立するアクセス確立手段と、少なくとも一個のデータ記憶リソースに対するアクセスが確立した後に少なくともひとつの複製されたサービスユニットを起動する第2のスィッチオーバ制御手段と、少なくとも一個のデータ記憶リソースに対するアクセスを解除した後にサービスユニットの状態を変更する第3のスィッチオーバ制御手段と、を更に備えて成る。
本発明の一実施例においてアクセス確立手段、アクセス解除手段およびスィッチオーバ制御手段は、たとえばプロセス、スレッドまたはサブルーチンなどのソフトウェア・コンポーネントである。本発明の一実施例においてアクセスの確立およびアクセスの解除は、データ記憶リソースに対する読取り/書込みアクセスを使用する各サービスユニットなどと関係付けられたアクセス・プロキシにより実行される。アクセス・プロキシは、サービスユニット内のコンポーネントとしてよい。このコンポーネントは、上記サービスユニットの一部分としてスィッチオーバ制御システムにより処理されるプロセスまたはスレッドとされ得る。スィッチオーバ制御システムは、いくつかのスィッチオーバ制御サービスすなわち手段を備えてよい。サービスユニットの状態が変更されつつあるとき、上記アクセス・プロキシもまたスィッチオーバ状態を通知される。このようにしてアクセス・プロキシは、アクセス確立またはアクセス解除が実施されるべきときを検出し得る。このアクセス・プロシキを設けることによってオペレーティング・システム・レベルでソフトウェアを変更する必要はない。
本発明の一実施例において、データ記憶リソースはファイル・システムであり、且つ、ファイル・システムに対するアクセスの確立はファイル・システムのマウンティングである。同様に、ファイル・システムに対するアクセスの解除は、ファイル・システムのアンマウンティングである。
本発明の一実施例において、共有記憶ユニットはいくつかの物理的記憶ユニットから成る論理ユニットである。この実施例においてデータ記憶ユニットは、たとえば、RAIDが使用されるならばRAID論理ユニットとされ得る。一実施例において、共有記憶ユニットは単一の物理的記憶ユニットである。
本発明の一実施例において、共有記憶ユニットはディスク記憶ユニットである。データ記憶リソースは、たとえば、ソフトウェア式の独立ディスク冗長アレイ(RAID)、または、ファイル・システムとされ得る。本発明の一実施例において第1および第2コンピュータ・ユニットは、たとえばファイバ・チャネル(FC)、スモール・コンピュータ・システム・インタフェース(SCSI)、インターネット・スモール・コンピュータ・システム・インタフェース(iSCSI)または統合システム・インタフェース(ISA)などのペリフェラル・インタフェースを用いて、共有記憶ユニットと接続される。
本発明の利点は、データ記憶リソースに対する冗長マルチユニット・コンピュータ・クラスタによるアクセスの優れたパフォーマンスおよび信頼性に関する。マウントを行うコンピュータ・ユニットと共有記憶ユニットとの間において、中間ユニットおよびネットワーク・ファイル・システム・ソフトウェアの使用が回避される。このため大きな遅延が回避される。コンピュータ・クラスタにおけるスィッチオーバの実行は、更に融通性が高くなる。これは、サービスユニットと、このサービスユニットから読取り/書込みアクセスが確立されているデータ記憶リソースとを関係付けることにより達成される。故にデータ記憶リソースのアクセスのシフトは、サービスユニットと、サービスユニットにおけるコンポーネント・サービス・インスタンスとの状態に結び付けられる。更に、別個のサービス・グループのサービスユニットが個別にスィッチオーバを実行し得ることが可能となる。
本発明の更なる理解のために提供されて本明細書の一部を構成する添付図面は、本発明の実施例を示すと共に、明細書の記載とともに本発明の原理の説明を助ける。
次に、添付図面に例を示す本発明の実施例を、以下詳細に説明する。
図4は、コンピュータ・ユニット110および112を有する冗長2ユニット・コンピュータ・クラスタを備える本発明の一実施例を示すブロック図である。本発明の他の実施例においては、他の任意の台数のコンピュータ・ユニットとしてもよい。
上記各コンピュータ・ユニットは、ローカル・エリア・ネットワーク(イーサネット(登録商標))である通信チャネル104を用いて接続される。本発明の他の実施例において、上記通信チャネルは他の任意の技術に基づくものであってもよい。上記各コンピュータ・ユニットは、高帯域幅アクセスを提供するチャネル202を用いて記憶ユニット200に接続される。
チャネル202は、たとえば、ファイバ・チャネル(FC)、スモール・コンピュータ・システム・インタフェース(SCSI)インタフェース、インターネットSCSI(iSCSI)または統合システム・アーキテクチャ(ISA)バスに基づくものであってよい。記憶ユニット200は、少なくとも一台のハードディスク・ドライブを備えるハードディスク・ユニットである。本発明の他の実施例において記憶ユニット200は、ハードディスク・ドライブ、光ディスク、テープ・ユニットまたはフラッシュ・メモリなどの任意の形式の不揮発メモリに基づくものであってよい。記憶ユニット200は、データ記憶リソース260および262を有する。上記データ記憶リソースは例えば、ファイル・システム、ソフトウェア式RAIDまたはLVM論理ボリュームとされ得る。
3つのSGすなわちSG400〜404がある。SG400はSU410および412を有し、SG402はSU412および422を有し、且つ、SG404はSU414および424を有する。SU420〜424はSU410〜414に対して複製されたレプリカである。もしSU410〜414の内のひとつがアクティブ状態から除かれるとき、SU420〜424のうち、除かれるSUに対応するレプリカがアクティブ状態へともたらされる。図4においてSU410〜414はアクティブ状態にあるが、SU422〜424は待機状態にある。SU410は、データ記憶リソース262に対する読取り/書込みアクセスを確立している。したがってSU410においては、データ記憶リソース262に対する読取り/書込みアクセス432が存在する。もしデータ記憶リソース262がファイル・システムであれば、SUはそれを読取り/書込みマウントしている。SU414は、データ記憶リソース260に対する読取り/書込みアクセスを確立している。故にSU414においては、データ記憶リソース260に対する読取り/書込みアクセス430が存在する。図4に示された状況は、SU414がアクティブ状態を離れ且つSU424がアクティブ状態に入るスィッチオーバが行われるまで、そのままである。
スィッチオーバが行われた場合、読取り/書込みアクセス430は、SU424へと移行すなわちシフトされねばならない。アクセス・プロキシ450、452、460および462がある。アクセス・プロキシは、データ記憶リソースに対する読取り/書込みアクセスがアクティブSUからパッシブSUに対して信頼性高く且つある統制の下で移行されることを確実とせねばならない。
アクティブSUおよびパッシブSUが読取り/書込みアクセス・モードにおいて同時に同一のデータ記憶リソースにアクセスするとき、重複時間が存在してはならない。この様にして、ファイル・システム(概略的にはデータ記憶)が矛盾しないように維持される。
本発明の一実施例において上記アクセス・プロキシは、コンピュータ・ユニットにおいて実行されているプロセスまたはスレッドなどのソフトウェア・コンポーネント・インスタンスである。アクセス・プロキシは、所定のSGに関連するスィッチオーバを実行するとの判断が為されたときに、アクティブ状態を離脱しようとするアクティブSUにおいて呼び出される。データ記憶リソースに対する少なくともひとつの読取り/書込みアクセスを所有するアクティブSUの各々に対し、ひとつのアクセス・プロキシがある。本発明の一実施例においては、各SUが幾つの読取り/書込みアクセスを所有するかに関わりなく、SU毎にひとつのアクセス・プロキシがある。
同様に、待機SU毎にもひとつのアクセス・プロキシがある。待機SUは、アクティブ状態に入ると直ちにデータ記憶リソースに対する少なくともひとつの読取り/書込みアクセスを所有する。たとえばSG404においてSU414はアクセス・プロキシ452を有する、と言うのも、このSUはデータ記憶リソース260に対する読取り/書込みアクセスを確立したために読取り/書込みアクセス430を有するからである。
図4においては、コンピュータ・ユニット110にスィッチオーバ制御サービス470〜474があり、および、コンピュータ・ユニット112にスィッチオーバ制御サービス480〜484がある。スィッチオーバ制御サービス470〜474は、コンピュータ・ユニット110における各サービスユニットに関連するタスクを管理する。同様に、スィッチオーバ制御サービス480〜484はコンピュータ・ユニット112における各サービスユニットに関連するタスクを管理する。
スィッチオーバ制御サービス470および480のタスクは、夫々、サービスユニット410〜414および420〜424のうちのいずれかに関連するスィッチオーバ状態を検出することである。スィッチオーバ制御サービス472および482のタスクは、夫々、サービスユニット410〜414および420〜424のうちのいずれかを起動することである。サービスユニットは、そのサービスユニットが必要とするデータ記憶リソースに対するアクセスの確立に成功した後に、アクティブ状態へともたらされ得る。
スィッチオーバ制御サービス474および484のタスクは、夫々、サービスユニット410〜414および420〜424から読取り/書込みアクセスが確立されていたデータ記憶リソースに対するアクセスの解除に成功した後に、このサービスユニットのアクティブ状態を変更することである。典型的に、アクティブ状態は待機状態または障害状態へと変更される。
本発明の一実施例においてスィッチオーバ制御サービス470〜474は、コンピュータ・ユニット110内の1つのサービスによって実行してよい。この場合にスィッチオーバ制御サービス470〜474は、1つのスィッチオーバ制御サービスに関連する、単なる異なるタスクもしくはプロシージャである。同様に、本発明の同一実施例において、スィッチオーバ制御サービス480〜484はコンピュータ・ユニット112内の1つのサービスにより実施される。各スィッチオーバ制御サービスは、ミドルウェアおよび/またはオペレーティング・システムの一部として実現され得る。
図5は、SU414を待機状態に入れ且つSU424をアクティブ状態に入れるスィッチオーバが起きたときの図4の状況を示すブロック図である。SU410においてはデータ記憶リソース262に対する読取り/書込みアクセス432が残存しているが、図4の読取り/書込みアクセス430は、今やデータ記憶リソース260に対するSU424の新たな読取り/書込みアクセス500で置き換えられている。
図6は、図4または図5のコンピュータ・クラスタにおける本発明に係るデータ記憶リソース・アクセス・シフト方法の一実施例を示すフローチャートである。図6は、第1SUから第2SUへの全体的アクセス・シフト手順と、アクセス・プロキシにより行われる動作を示している。
本発明の一実施例においてSU414に関連するスィッチオーバ状態は、SG404に対するスィッチオーバ制御を管理するスィッチオーバ制御サービス470によって、SU414の部分において検出される。
スィッチオーバ制御サービス470は、スィッチオーバ制御サービス472および474と協力して作用する。スィッチオーバ制御サービス474のタスクは、その管理において、SU414または他のいずれかのSUにおける全てのソフトウェア・コンポーネントを、異なる状態(この場合には待機状態)へと入る準備をさせることである。スィッチオーバ制御サービス470、472および474は、他のSGおよびSUに対するスィッチオーバ制御もまた管理し得る。
SU414が待機状態に入り且つSU424がアクティブ状態に入るとき、アクセス・プロキシ452はスィッチオーバ制御サービス470から信号を受信する。スィッチオーバ制御サービス470、472および474は夫々、オペレーティング・システム220および222の一部であり得るか、または、ミドルウェア・ソフトウェア・コンポーネントなどの別個のサービスであり得る。
ステップ600においてアクセス・プロキシ452は、スィッチオーバが起きるときにこのプロキシを呼び出すスィッチオーバ制御サービス470からの信号を待つ。またアクセス・プロキシ・プロセスが、このステップにおいて立ち上げられても良い。
ステップ602においてアクセス・プロキシ452は、SU414から読取り/書込みアクセスが確立されていたデータ記憶リソース(SR)に対するアクセスを解除する。データ記憶リソースがファイル・システムであれば、このことは、アクセス・プロキシ452がそのファイル・システムをアンマウントすることを意味する。これは、たとえばアンマウントと称されるLinux(登録商標)システム・サービスなどのファイル・システムのアンマウンティングを行うべきオペレーティング・システム・サービスの呼び出しを伴う。データ記憶リソースがソフトウェア式RAIDであれば、上記アクセス・プロキシはそれを解除し、換言すると、それに対するアクセスを解除する。ソフトウェア式RAIDを解除すると、それは別のSUからのアクセス確立に対して利用可能となる。
本明細書中では簡単のために、アクセスが確立された少なくとも一個のデータ記憶リソースがあることが仮定される。ステップ604においてアクセス・プロキシ452は、SU414から読取り/書込みアクセスが確立されている更なるデータ記憶リソースがあるか否かをチェックする。もしそうであれば、処理はステップ602へと継続する。
本発明の一実施例においては、SU414または代替的にSU424から読取り/書込みアクセスが確立されているデータ記憶リソースに関する情報を含むシステム・ファイルまたはテーブルがある。換言すると、SG404から読取り/書込みアクセスが確立されたデータ記憶リソースがリスト化される。
本発明の一実施例においてアクセス・プロキシ452は、全ての必要なデータ記憶リソースに対するアクセスが解除されたこと、すなわち、これらデータ記憶リソースが解除され他の箇所からのアクセス確立に対して利用可能とされたことを、スィッチオーバ制御サービス474に対して通知する。
ステップ606においては、SU414を待機状態とすることに関連する残存タスクが、たとえばスィッチオーバ制御サービス474により実行される。本発明の一実施例においてアクセス・プロキシ462に対するプロセスは、SU424がアクティブ状態に入ろうとしておりデータ記憶リソースに対するアクセスの確立をプロキシが開始すべきことを表す信号によって呼び出される。この信号はたとえば、スィッチオーバ制御サービス480から到来する。本発明の一実施例においてスィッチオーバ制御サービス470〜474および480〜484は、通信チャネル104上でメッセージを交換する。
ステップ608においてアクセス・プロキシは、SU424から読取り/書込みアクセスが確立されるべきデータ記憶リソースに対するアクセスを確立する。もしデータ記憶リソースがファイル・システムであれば、これは、マウントなどのファイル・システム・マウンティングを行うべきオペレーティング・システム・サービスの呼び出しを伴う。本明細書中では簡単のために、アクセスが確立されるべき少なくとも一個のデータ記憶リソースがあることが仮定される。ステップ610においてアクセス・プロキシ462は、SU424からの読取り/書込みアクセスが確立されるべき更なるデータ記憶リソースがあるか否かをチェックする。もしそうであれば、処理はステップ608へと継続する。ステップ612においては、SU424をアクティブ状態とすることに関連する残存タスクが、たとえばスィッチオーバ制御サービス482により実行される。たとえばスィッチオーバ制御サービス482はアクセス・プロキシ462により、必要とされたデータ記憶リソースの全てに対するアクセスの確立に成功したことを通知され得る。
当業者であれば、技術の進歩により本発明の基本的着想は種々の様式で実現され得ることは明らかであろう。故に本発明およびその実施例は、上述の例に限られず、代わりに、各請求項の有効範囲内で変更され得る。
先行技術の冗長2ユニット・コンピュータ・クラスタと、SAフォーラム・アーキテクチャのサービスユニット(SU)およびサービス・グループ(SG)の概念とを示すブロック図である。 共有ディスク記憶ユニットを用いる先行技術の冗長2ユニット・コンピュータ・クラスタを示すブロック図である。 共通ファイル・サーバ・ユニットを介してネットワーク・ファイル・システムを用いる冗長2ユニット・コンピュータ・クラスタを示すブロック図である。 スィッチオーバ前における、3つのサービス・グループと2つのデータ記憶リソースとを備えた、本発明に係る冗長2ユニット・コンピュータ・クラスタを示すブロック図である。 スィッチオーバの後における、3つのサービス・グループと2つのデータ記憶リソースとを備えた本発明に係る冗長2ユニット・コンピュータ・クラスタを示すブロック図である。 図4または図5のコンピュータ・クラスタにおける本発明に係るデータ記憶アクセス・シフト方法の一実施例を示すフローチャートである。

Claims (24)

  1. 少なくとも、第1コンピュータ・ユニットと、第2コンピュータ・ユニットと、共有記憶ユニットとを備えた冗長コンピュータ・クラスタにおいてスィッチオーバを実行することであって、前記第1コンピュータ・ユニットおよび前記第2コンピュータ・ユニットは前記共有記憶ユニットとインタフェースを有し、前記共有記憶ユニットは少なくとも2つのデータ記憶リソースを備えることと
    前記第1コンピュータ・ユニットにおいて第1サービスユニット及び第2サービスユニットを実行することであって、前記第1サービスユニット及び前記第2サービスユニットの両方は少なくとも1つのソフトウェアコンポーネントを備えることと、
    前記第1サービスユニットから前記少なくとも2つのデータ記憶リソースのうちの第1データ記憶リソースに対する第1ファイルアクセスを維持することであって、前記第1ファイルアクセスは前記第1データ記憶リソースのデータの読み取り及び書き込みを備えることと、
    前記第2サービスユニットから前記少なくとも2つのデータ記憶リソースのうちの第2データ記憶リソースに対する第2ファイルアクセスを維持することであって、前記第1ファイルアクセスは前記第2ファイルアクセスから独立していることと、
    前記第1コンピュータ・ユニットによる前記第1サービスユニットに関連するスィッチオーバ状態を検出することと、
    前記スィッチオーバ状態に応じて、前記第2ファイルアクセスを維持しながら、前記第1コンピュータ・ユニットによる前記第1データ記憶リソースに対する前記第1ファイルアクセスを解除することと、
    前記第1データ記憶リソースに対する前記第1ファイルアクセスの解除に成功した後、前記第1コンピュータ・ユニットにおける前記第1サービスユニットの状態を変更することと、
    前記第2コンピュータ・ユニットによる前記第1データ記憶リソースに対する前記第1ファイルアクセスに対応するファイルアクセスを確立することと、
    前記第1コンピュータ・ユニットの前記第1サービスユニットに対応するサービスユニットが前記第2コンピュータ・ユニットにおいてアクティブとなるようにすることを備える方法。
  2. 前記第1ファイルアクセスを確立することおよび前記第1ファイルアクセスを解除することは、前記第1コンピュータ・ユニットの前記第1サービスユニットに関係付けられたアクセス・プロキシにより実行される、請求項1記載の方法。
  3. ディスク記憶ユニットを備える前記共有記憶ユニットを供給することをさらに備える請求項1記載の方法。
  4. ファイル・システムを備える前記第1データ記憶リソースを供給することを備え、
    前記第1ファイルアクセスを確立することは前記ファイル・システムをマウントし、
    前記第1ファイルアクセスを解除することは前記ファイル・システムをアンマウントする請求項1記載の方法。
  5. フトウェア式の独立ディスク冗長アレイを備える前記第1データ記憶リソースを供給することをさらに備える請求項1記載の方法。
  6. リフェラル・インタフェースによって共有記憶ユニットとインタフェースを有する前記第1コンピュータ・ユニットおよび前記第2コンピュータ・ユニットを供給することをさらに備える請求項1記載の方法。
  7. ァイバ・チャネル、スモール・コンピュータ・システム・インタフェース、インターネット・スモール・コンピュータ・システム・インタフェース及び統合システム・インタフェースのいずれかを備える前記ペリフェラル・インタフェースを供給することをさらに備える請求項6記載の方法。
  8. 少なくとも、第1コンピュータ・ユニット及び第2コンピュータ・ユニットがインタフェースを有する共有記憶ユニットであって少なくとも2つのデータ記憶リソースを備える共有記憶ユニットと
    前記第1コンピュータ・ユニットにおいて第1サービスユニット及び第2サービスユニットを実行し、前記第1サービスユニット及び前記第2サービスユニットの両方は少なくとも1つのソフトウェアコンポーネントを備えるよう構成され、
    前記第1サービスユニットから前記少なくとも2つのデータ記憶リソースのうちの第1データ記憶リソースに対する第1ファイルアクセスを維持し、前記第1ファイルアクセスは前記第1データ記憶リソースのデータの読み取り及び書き込みを備えるよう構成され、
    前記第2サービスユニットから前記少なくとも2つのデータ記憶リソースのうちの第2データ記憶リソースに対する第2ファイルアクセスを維持し、前記第1ファイルアクセスは前記第2ファイルアクセスから独立するよう構成され、
    前記第1コンピュータ・ユニットにおける前記第1サービスユニットに関連するスィッチオーバ状態を検出するよう構成され
    前記スィッチオーバ状態に応じて前記第2ファイルアクセスを維持しながら、前記第1データ記憶リソースに対する前記第1ファイルアクセスを解除するよう構成され
    前記第1データ記憶リソースに対する前記第1ファイルアクセスの解除に成功した後、前記第1コンピュータ・ユニットにおける前記第1サービスユニットの状態を変更するよう構成される前記第1コンピュータ・ユニットと、
    前記第2コンピュータ・ユニットによる前記第1データ記憶リソースに対する前記第1ファイルアクセスに対応するファイルアクセスを確立するよう構成され
    前記第1コンピュータ・ユニットの前記第1サービスユニットに対応するサービスユニットが前記第2コンピュータ・ユニットにおいてアクティブとなるようにするよう構成される前記第2コンピュータ・ユニットと、
    を備える冗長コンピュータ・クラスタ。
  9. 前記第1コンピュータ・ユニットは、前記第1サービスユニットに関係付けられたアクセス・プロキシ備えるアクセス確立ユニット及びアクセス解除ユニットをさらに備える、請求項8記載のコンピュータ・クラスタ。
  10. 前記共有記憶ユニットはディスク記憶ユニットを備える請求項8記載のコンピュータ・クラスタ。
  11. 前記少なくとも2つのデータ記憶リソースはファイル・システムを備え、
    前記第1コンピュータ・ユニットにおけるアクセス確立ユニットは前記ファイル・システムをマウントし、
    前記第1コンピュータ・ユニットにおけるアクセス解除ユニットは前記ファイル・システムをアンマウントする、請求項8記載のコンピュータ・クラスタ。
  12. 前記少なくとも2つのデータ記憶リソースはソフトウェア式の独立ディスク冗長アレイを備える請求項8記載のコンピュータ・クラスタ。
  13. 前記第1コンピュータ・ユニットおよび前記第2コンピュータ・ユニットはペリフェラル・インタフェースによって前記共有記憶ユニットとインタフェースを有するよう構成される請求項8記載のコンピュータ・クラスタ。
  14. 前記ペリフェラル・インタフェースは、ファイバ・チャネル、インターネット・スモール・コンピュータ・システム・インタフェース、スモール・コンピュータ・システム・インタフェース及び統合システム・インタフェースのいずれかを備える請求項13記載のコンピュータ・クラスタ。
  15. 前記第1サービスユニット及び前記第2サービスユニットは、少なくとも1つのハードウェアユニットを備える請求項8記載のコンピュータ・クラスタ。
  16. 少なくとも2つのデータ記憶リソースを備える共有記憶ユニットにアクセスする手段と、
    コンピュータ・ユニットにおいて第1サービスユニット及び第2サービスユニットを実行する手段であって、前記第1サービスユニット及び前記第2サービスユニットの両方は少なくとも1つのソフトウェアコンポーネントを備える手段と、
    前記第1サービスユニットから前記少なくとも2つのデータ記憶リソースのうちの第1データ記憶リソースに対する第1ファイルアクセスを維持する手段であって、前記第1ファイルアクセスは前記第1データ記憶リソースのデータの読み取り及び書き込みを備える手段と、
    前記第2サービスユニットから前記少なくとも2つのデータ記憶リソースのうちの第2データ記憶リソースに対する第2ファイルアクセスを維持する手段であって、前記第1ファイルアクセスは前記第2ファイルアクセスから独立している手段と、
    前記コンピュータ・ユニットにおける前記第1サービスユニットに関連するスィッチオーバ状態を検出する手段と、
    前記スィッチオーバ状態に応じて、前記第2ファイルアクセスを維持しながら、前記コンピュータ・ユニットによる前記第1データ記憶リソースに対する前記第1ファイルアクセスを解除する手段と
    前記第1データ記憶リソースに対する前記第1ファイルアクセス解除に成功した後、前記コンピュータ・ユニットにおける前記第1サービスユニットの状態を変更する手段とを備えるコンピュータ・ユニット。
  17. 前記第1ファイルアクセス解除する前記段は、前記サービスユニットに関係付けられたアクセス・プロキシ備える請求項16記載のコンピュータ・ユニット。
  18. 前記共有記憶ユニットがディスク記憶ユニットを備える請求項16記載のコンピュータ・ユニット。
  19. 前記少なくとも2つのデータ記憶リソースはファイル・システムを備え
    前記第1ファイルアクセス解除する前記手段は前記ファイル・システムをアンマウントする請求項16記載のコンピュータ・ユニット。
  20. 前記少なくとも2つのデータ記憶リソースはソフトウェア式の独立ディスク冗長アレイを備える請求項16記載のコンピュータ・ユニット。
  21. 前記コンピュータ・ユニットがペリフェラル・インタフェースによって前記共有記憶ユニットとインタフェースを有する請求項16記載のコンピュータ・ユニット。
  22. 前記ペリフェラル・インタフェースは、ファイバ・チャネル、スモール・コンピュータ・システム・インタフェース、インターネット・スモール・コンピュータ・システム・インタフェース及び統合システム・インタフェースのいずれかを備える請求項21記載のコンピュータ・ユニット。
  23. 前記第1サービスユニット及び前記第2サービスユニットの両方は、少なくとも1つのハードウェアユニットを備える、請求項16記載のコンピュータ・ユニット。
  24. 少なくとも2つのデータ記憶リソースを備える共有記憶ユニットと通信するよう構成されるインタフェースと、
    コンピュータ・ユニットにおいて第1サービスユニット及び第2サービスユニットを実行し、前記第1サービスユニット及び前記第2サービスユニットの両方は少なくとも1つのソフトウェアコンポーネントを備えるよう構成され、
    前記第1サービスユニットから前記少なくとも2つのデータ記憶リソースのうちの第1データ記憶リソースに対する第1ファイルアクセスを維持し、前記第1ファイルアクセスは前記第1データ記憶リソースのデータの読み取り及び書き込みを備えるよう構成され、
    前記第2サービスユニットから前記少なくとも2つのデータ記憶リソースのうちの第2データ記憶リソースに対する第2ファイルアクセスを維持し、前記第1ファイルアクセスは前記第2ファイルアクセスから独立するよう構成されるオペレーションシステムと、
    前記コンピュータ・ユニットにおける前記第1サービスユニットに関連するスィッチオーバ状態を検出するよう構成されるスイッチオーバ制御ソフトウェアと、
    前記スィッチオーバ状態に応じて、前記第2ファイルアクセスを維持しながら、前記第1データ記憶リソースに対する前記第1ファイルアクセスを解除するよう構成されるアクセス解除ソフトウェアコンポーネントと、
    前記第1データ記憶リソースに対する前記第1ファイルアクセスの解除に成功した後、前記コンピュータ・ユニットにおける前記第1サービスユニットの状態を変更するよう構成される状態変更ソフトウェアコンポーネントと、を備えるコンピュータ・ユニット。
JP2006537328A 2003-11-10 2004-10-05 コンピュータ・クラスタ、コンピュータ・ユニット、および、コンピュータ・ユニット間における記憶アクセス制御方法 Expired - Fee Related JP4456121B2 (ja)

Applications Claiming Priority (2)

Application Number Priority Date Filing Date Title
FI20031628A FI20031628A0 (fi) 2003-11-10 2003-11-10 Tietokoneryväs, tietokoneyksikkö ja menetelmä muistisaannin ohjaukseen tietokoneyksiköiden välillä
PCT/FI2004/000587 WO2005045675A1 (en) 2003-11-10 2004-10-05 Computer cluster, computer unit and method to control storage access between computer units

Publications (2)

Publication Number Publication Date
JP2007510208A JP2007510208A (ja) 2007-04-19
JP4456121B2 true JP4456121B2 (ja) 2010-04-28

Family

ID=29558602

Family Applications (1)

Application Number Title Priority Date Filing Date
JP2006537328A Expired - Fee Related JP4456121B2 (ja) 2003-11-10 2004-10-05 コンピュータ・クラスタ、コンピュータ・ユニット、および、コンピュータ・ユニット間における記憶アクセス制御方法

Country Status (6)

Country Link
US (1) US7441144B2 (ja)
EP (1) EP1687721B1 (ja)
JP (1) JP4456121B2 (ja)
CN (1) CN100476748C (ja)
FI (1) FI20031628A0 (ja)
WO (1) WO2005045675A1 (ja)

Families Citing this family (13)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US7681105B1 (en) * 2004-08-09 2010-03-16 Bakbone Software, Inc. Method for lock-free clustered erasure coding and recovery of data across a plurality of data stores in a network
US7681104B1 (en) * 2004-08-09 2010-03-16 Bakbone Software, Inc. Method for erasure coding data across a plurality of data stores in a network
JP2006189963A (ja) * 2004-12-28 2006-07-20 Hitachi Ltd ストレージアクセス制御方法、クラスタシステム、パス接続スイッチおよびストレージアクセス制御プログラム
JP4576455B2 (ja) * 2006-03-31 2010-11-10 富士通株式会社 システム、切替方法および管理装置用プログラム
JP5532687B2 (ja) * 2009-06-03 2014-06-25 日本電気株式会社 情報処理システム、情報処理システムの障害対応機構、及び情報処理システムの障害対応方法
US9274917B2 (en) * 2012-07-30 2016-03-01 Hewlett Packard Enterprise Development Lp Provisioning resources in a federated cloud environment
DE102012108117A1 (de) 2012-08-03 2014-02-06 Fujitsu Technology Solutions Intellectual Property Gmbh Hochverfügbares Rechnersystem, Arbeitsverfahren und dessen Verwendung
WO2014026387A1 (zh) * 2012-08-17 2014-02-20 华为技术有限公司 一种云环境下虚拟应用双机的切换方法、装置及系统
CN103501242B (zh) * 2013-09-18 2017-06-20 华为技术有限公司 资源管理方法和多节点集群设备
US9514083B1 (en) * 2015-12-07 2016-12-06 International Business Machines Corporation Topology specific replicated bus unit addressing in a data processing system
CN109857345B (zh) * 2019-01-31 2023-01-24 电科云(北京)科技有限公司 实现基于并发的磁盘挂载接口调度管理的系统及其方法
US10999187B2 (en) 2019-06-13 2021-05-04 Juniper Networks, Inc. Wireless control and fabric links for high-availability cluster nodes
CN113946276A (zh) * 2020-07-16 2022-01-18 北京达佳互联信息技术有限公司 集群中的磁盘管理方法、装置及服务器

Family Cites Families (12)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
EP0721162A2 (en) * 1995-01-06 1996-07-10 Hewlett-Packard Company Mirrored memory dual controller disk storage system
US5675723A (en) 1995-05-19 1997-10-07 Compaq Computer Corporation Multi-server fault tolerance using in-band signalling
US5951695A (en) * 1997-07-25 1999-09-14 Hewlett-Packard Company Fast database failover
US6317844B1 (en) * 1998-03-10 2001-11-13 Network Appliance, Inc. File server storage arrangement
US6360331B2 (en) * 1998-04-17 2002-03-19 Microsoft Corporation Method and system for transparently failing over application configuration information in a server cluster
US6408399B1 (en) 1999-02-24 2002-06-18 Lucent Technologies Inc. High reliability multiple processing and control system utilizing shared components
US6453426B1 (en) * 1999-03-26 2002-09-17 Microsoft Corporation Separately storing core boot data and cluster configuration data in a server cluster
US6578055B1 (en) * 2000-06-05 2003-06-10 International Business Machines Corporation Methods, system and computer program products for mirrored file access through assuming a privileged user level
US6609213B1 (en) 2000-08-10 2003-08-19 Dell Products, L.P. Cluster-based system and method of recovery from server failures
JP2004227098A (ja) * 2003-01-20 2004-08-12 Hitachi Ltd 記憶デバイス制御装置の制御方法、及び記憶デバイス制御装置
JP4415610B2 (ja) * 2003-08-26 2010-02-17 株式会社日立製作所 系切替方法、レプリカ作成方法、及びディスク装置
JP4462969B2 (ja) * 2004-03-12 2010-05-12 株式会社日立製作所 フェイルオーバクラスタシステム及びフェイルオーバ方法

Also Published As

Publication number Publication date
CN100476748C (zh) 2009-04-08
WO2005045675A1 (en) 2005-05-19
CN1879088A (zh) 2006-12-13
US20050102559A1 (en) 2005-05-12
EP1687721B1 (en) 2016-01-06
US7441144B2 (en) 2008-10-21
JP2007510208A (ja) 2007-04-19
FI20031628A0 (fi) 2003-11-10
EP1687721A1 (en) 2006-08-09

Similar Documents

Publication Publication Date Title
US20210176513A1 (en) Storage virtual machine relocation
JP4400913B2 (ja) ディスクアレイ装置
US7353355B1 (en) System and method for rapid restoration of server from backup
US7475282B2 (en) System and method for rapid restoration of server from back up
US8225133B1 (en) System and method for on-the-fly migration of server from backup
US7574575B2 (en) Disk array device including a system LU for storing control information in the disk array and backup LU for backing up the control information and controlling method thereof
US6757778B1 (en) Storage management system
US9098466B2 (en) Switching between mirrored volumes
US6779130B2 (en) Method and system for root filesystem replication
US20030154314A1 (en) Redirecting local disk traffic to network attached storage
US20050188248A1 (en) Scalable storage architecture
US20030065780A1 (en) Data storage system having data restore by swapping logical units
US20090043999A1 (en) Method for changing booting configuration and computer system capable of booting OS
US7702757B2 (en) Method, apparatus and program storage device for providing control to a networked storage architecture
JP4456121B2 (ja) コンピュータ・クラスタ、コンピュータ・ユニット、および、コンピュータ・ユニット間における記憶アクセス制御方法
US10620843B2 (en) Methods for managing distributed snapshot for low latency storage and devices thereof
JP2002297456A (ja) バックアップ処理方法及びその実施システム並びにその処理プログラム
JP2012507788A (ja) ストレージ・エリア・ネットワークを使用してコンピュータシステムを復旧するための方法およびシステム
US8635391B2 (en) Systems and methods for eliminating single points of failure for storage subsystems
US11023415B2 (en) Reducing feature dependencies of block storage used to back NAS cluster
WO2005114372A2 (en) Methods, systems, and computer programs for storing device information

Legal Events

Date Code Title Description
A977 Report on retrieval

Free format text: JAPANESE INTERMEDIATE CODE: A971007

Effective date: 20080918

A131 Notification of reasons for refusal

Free format text: JAPANESE INTERMEDIATE CODE: A131

Effective date: 20081007

A521 Written amendment

Free format text: JAPANESE INTERMEDIATE CODE: A523

Effective date: 20090107

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: 20100105

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

Free format text: JAPANESE INTERMEDIATE CODE: A01

A61 First payment of annual fees (during grant procedure)

Free format text: JAPANESE INTERMEDIATE CODE: A61

Effective date: 20100204

FPAY Renewal fee payment (event date is renewal date of database)

Free format text: PAYMENT UNTIL: 20130212

Year of fee payment: 3

R150 Certificate of patent or registration of utility model

Ref document number: 4456121

Country of ref document: JP

Free format text: JAPANESE INTERMEDIATE CODE: R150

FPAY Renewal fee payment (event date is renewal date of database)

Free format text: PAYMENT UNTIL: 20130212

Year of fee payment: 3

FPAY Renewal fee payment (event date is renewal date of database)

Free format text: PAYMENT UNTIL: 20140212

Year of fee payment: 4

R250 Receipt of annual fees

Free format text: JAPANESE INTERMEDIATE CODE: R250

R250 Receipt of annual fees

Free format text: JAPANESE INTERMEDIATE CODE: R250

R250 Receipt of annual fees

Free format text: JAPANESE INTERMEDIATE CODE: R250

S531 Written request for registration of change of domicile

Free format text: JAPANESE INTERMEDIATE CODE: R313531

R350 Written notification of registration of transfer

Free format text: JAPANESE INTERMEDIATE CODE: R350

S111 Request for change of ownership or part of ownership

Free format text: JAPANESE INTERMEDIATE CODE: R313113

R350 Written notification of registration of transfer

Free format text: JAPANESE INTERMEDIATE CODE: R350

R250 Receipt of annual fees

Free format text: JAPANESE INTERMEDIATE CODE: R250

R250 Receipt of annual fees

Free format text: JAPANESE INTERMEDIATE CODE: R250

R250 Receipt of annual fees

Free format text: JAPANESE INTERMEDIATE CODE: R250

R250 Receipt of annual fees

Free format text: JAPANESE INTERMEDIATE CODE: R250

R250 Receipt of annual fees

Free format text: JAPANESE INTERMEDIATE CODE: R250

LAPS Cancellation because of no payment of annual fees