JP4643198B2 - 負荷分散コンピュータシステム、経路設定プログラム及びその方法 - Google Patents

負荷分散コンピュータシステム、経路設定プログラム及びその方法 Download PDF

Info

Publication number
JP4643198B2
JP4643198B2 JP2004220241A JP2004220241A JP4643198B2 JP 4643198 B2 JP4643198 B2 JP 4643198B2 JP 2004220241 A JP2004220241 A JP 2004220241A JP 2004220241 A JP2004220241 A JP 2004220241A JP 4643198 B2 JP4643198 B2 JP 4643198B2
Authority
JP
Japan
Prior art keywords
path
active
host bus
adapter
active path
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
JP2004220241A
Other languages
English (en)
Other versions
JP2006040026A (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.)
Hitachi Ltd
Hitachi Solutions Ltd
Original Assignee
Hitachi Ltd
Hitachi Solutions Ltd
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 Hitachi Ltd, Hitachi Solutions Ltd filed Critical Hitachi Ltd
Priority to JP2004220241A priority Critical patent/JP4643198B2/ja
Priority to US10/975,447 priority patent/US7120912B2/en
Priority to EP05007659A priority patent/EP1621992A3/en
Publication of JP2006040026A publication Critical patent/JP2006040026A/ja
Application granted granted Critical
Publication of JP4643198B2 publication Critical patent/JP4643198B2/ja
Expired - Fee Related legal-status Critical Current
Anticipated expiration legal-status Critical

Links

Images

Classifications

    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F3/00Input arrangements for transferring data to be processed into a form capable of being handled by the computer; Output arrangements for transferring data from processing unit to output unit, e.g. interface arrangements
    • G06F3/06Digital input from, or digital output to, record carriers, e.g. RAID, emulated record carriers or networked record carriers
    • G06F3/0601Interfaces specially adapted for storage systems
    • G06F3/0628Interfaces specially adapted for storage systems making use of a particular technique
    • G06F3/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/0602Interfaces specially adapted for storage systems specifically adapted to achieve a particular effect
    • G06F3/061Improving I/O performance
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F3/00Input arrangements for transferring data to be processed into a form capable of being handled by the computer; Output arrangements for transferring data from processing unit to output unit, e.g. interface arrangements
    • G06F3/06Digital input from, or digital output to, record carriers, e.g. RAID, emulated record carriers or networked record carriers
    • G06F3/0601Interfaces specially adapted for storage systems
    • G06F3/0668Interfaces specially adapted for storage systems adopting a particular infrastructure
    • G06F3/067Distributed or networked storage systems, e.g. storage area networks [SAN], network attached storage [NAS]
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F2206/00Indexing scheme related to dedicated interfaces for computers
    • G06F2206/10Indexing scheme related to storage interfaces for computers, indexing schema related to group G06F3/06
    • G06F2206/1012Load balancing

Description

本発明は、コンピュータシステムのアクセス負荷分散に関する。
ストレージ装置とコンピュータとの間に、複数のアクセス可能なパスを設け、これらのパスにコンピュータ装置からのアクセスを分散させることによって、システムの性能向上を図る技術が知られている(例えば、特許文献1参照)。このような負荷分散技術によれば、複数のパスにアクセス(I/O)の負荷が分散されるため、特定のパスにアクセスが集中することによる性能低下を防止することができる。さらに、一つのパスに障害が発生したときに、他の正常なパスにアクセスが割り当てられるため、アクセスを継続することができる。
一方、ストレージ装置に搭載したキャッシュメモリを利用して、システムの性能向上を図る技術が知られている。例えば、読み出し要求に関するブロックのデータと共に、その次のブロックのデータも読み出してキャッシュメモリに格納しておくことによってアクセス性能の向上を図る、キャッシュ先読み技術が知られている(例えば、特許文献2参照)。
特開2000−330924号公報 特開2002−182978号公報
従来の負荷分散技術は、データ先読み機能のような、ストレージ装置のキャッシュメモリを利用した機能を利用することを考慮していない。このため、同一の論理ユニット(LU)に対するアクセスが、同一のキャッシュメモリを利用できない複数のパスに分散され、キャッシュヒット率が低下する。その結果、データ先読み機能等が十分に活用されず、性能の向上が抑制される問題があった。
本発明は、コンピュータと、前記コンピュータと通信可能に接続されたストレージ装置と、を備えるコンピュータシステムにおいて、前記ストレージ装置は、前記コンピュータと通信する一つ以上のチャネルアダプタと、データを格納する複数の論理ユニットと、を備え、前記コンピュータは、前記ストレージ装置と通信する一つ以上のホストバスアダプタと、前記コンピュータが前記論理ユニットにアクセスする経路を管理する経路管理部と、を備え、前記チャネルアダプタ及び前記ホストバスアダプタの少なくとも一方は、キャッシュメモリを備え、前記経路管理部は、前記論理ユニットごとのアクセス負荷を測定する負荷測定部と、前記測定されたアクセス負荷に基づいて、前記コンピュータからのアクセスが経由する一つの前記チャネルアダプタ及び一つ以上の前記ホストバスアダプタ、又は、一つ以上の前記チャネルアダプタ及び一つの前記ホストバスアダプタを、前記論理ユニットごとに選択し、当該チャネルアダプタ及び当該ホストバスアダプタを経由するアクティブ経路を設定するアクティブ経路設定部と、を備え、前記アクティブ経路設定部は、前記チャネルアダプタ及び/又は前記ホストバスアダプタごとに、前記測定されたアクセス負荷を合計し、前記アクセス負荷の合計値が最も小さい前記チャネルアダプタ及び/又は前記ホストバスアダプタが各々一つ存在する場合は、前記アクセス負荷の合計値が最も小さい前記チャネルアダプタ及び/又は前記ホストバスアダプタを経由するアクティブ経路を設定し、前記アクセス負荷の合計値が最も小さい前記チャネルアダプタ及び/又は前記ホストバスアダプタが複数存在する場合は、当該チャネルアダプタ及び/又は当該ホストバスアダプタごとに、設定されたアクティブ経路の数を算出し、前記アクセス負荷の合計値が最も小さく、かつ、前記算出されたアクティブ経路の数が最も小さい前記チャネルアダプタ及び/又は前記ホストバスアダプタを経由するアクティブ経路を設定し、複数の前記論理ユニットについて、アクティブ経路が決定していない場合、前記論理ユニットごとに測定されたアクセス負荷を比較し、前記測定されたアクセス負荷が大きい論理ユニットの前記アクティブ経路を、前記測定されたアクセス負荷が小さい論理ユニットの前記アクティブ経路より先に設定することを特徴とする。
本発明によれば、アクセス負荷が分散するために、負荷の集中によるシステムの性能低下を防ぐことができる。さらに、同一の論理ユニットLUに対するアクセスの際に、同一のキャッシュメモリを利用することができるため、データ先読み等によって、システムの性能が向上する。
以下、本発明の実施の形態を図面に基づいて説明する。
図1は、本発明の実施の形態のコンピュータシステムの構成を示すブロック図である。
本発明の実施の形態のコンピュータシステムは、ホスト101、ストレージ装置108及びこれらを相互に通信可能に接続するStorage Area Network(SAN)106によって構成される。
ホスト101は、コンピュータであり、ストレージ装置108にデータを書き込み、又は、ストレージ装置108からデータを読み出す。ホスト101は、少なくとも、CPU102、メモリ103、入出力装置104及びホストバスアダプタ(HBA)105からなる。
CPU102は、メモリ103に格納されたプログラムを実行するプロセッサである。
メモリ103は、例えば、半導体メモリであり、CPU102が実行するプログラムが格納される(図2参照)。さらに、メモリ103には、図4から図7に示すテーブルが格納される。
入出力装置104は、例えば、表示画面及びキーボードであり(図示省略)、マウスやプリンタ等の他の入出力手段を含んでもよい。
HBA105は、ホスト101に一つ又は複数個設けられ、SAN106を介してストレージ装置108と通信する。図1の例では、ホスト101に二つのHBA105が設けられる。ここで、HBA1及びHBA2は、それぞれ、HBA識別子(HBA−ID)が「1」及び「2」のHBA105である。ホスト101は、いずれのHBA105を使用してもストレージ装置108と通信することができる。
ストレージ装置108は、例えば、複数のディスクドライブ及びそれらを制御するコントローラ(図示省略)によって構成されるディスクアレイ装置である。ストレージ装置108には、一つ以上の論理ユニット(LU)109が設定される。
LU109は、ホスト101が一つのディスクドライブとして認識する単位である。LU109は、論理的には一つのディスクドライブであるが、物理的には、一つのディスクドライブの一部の領域又は複数のディスクドライブの一部若しくは全部の領域であってよい。図1の例では、ストレージ装置108に4つのLU109が設定される。ここで、LU1からLU4は、それぞれ、LU識別子(LU−ID)が「1」から「4」のLU109である。
ストレージ装置108は、さらに、一つ以上のチャネルアダプタ(CHA)107を備える。CHA107は、SAN106を介してホスト101と通信する。図1の例では、ストレージ装置108に三つのCHA107が設けられる。ここで、CHA1からCHA3は、それぞれ、CHA識別子(CHA−ID)が「1」から「3」のCHA107である。ストレージ装置108は、いずれのCHA107を使用してもホスト101と通信することができる。
CHA107は、通常、キャッシュメモリ(図示省略)を備える。CHA107は、ホスト101からデータの読み出し要求を受けたとき、その読み出し要求の対象のデータがキャッシュメモリ内に存在すれば、LU109へアクセスせず、キャッシュメモリ内のデータをホスト101に返送する。その結果、LU109へのアクセス(すなわち、LU109を構成するディスクドライブへのアクセス)が省略され、アクセス速度が向上する。
なお、同様のキャッシュメモリがHBA105に設けられてもよい。
SAN106は、ホスト101のHBA105とストレージ装置108のCHA107とを通信可能に接続する。各HBA105は、いずれのCHA107とも通信することができる。同様に、各CHA107は、いずれのHBAとも通信することができる。典型的なSAN106は、ファイバーチャネルスイッチ及びケーブルによって構成される。
ここで、パスとは、ホスト101からLU109までのデータアクセス経路である。図1の例では、二つのHBA105と三つのCHA107があるため、ホスト101から一つのLUに至るパスは、6通り存在する。パスは、パスIDによって識別される。パスIDは、経由するHBA、CHA及びLUの識別子(HBA−ID、CHA−ID、LU−ID)によって定められる。例えば、HBA1及びCHA3を経由してLU2に至るパスのパスIDは、「132」である。
図2は、本発明の実施の形態のメモリ103に格納されるプログラムの説明図である。
メモリ103には、アプリケーションプログラム201、交代パス管理設定プログラム202及び交代パス管理プログラム203が格納される。いずれのプログラムも、CPU102によって実行される。
交代パス管理設定プログラム202は、交代パス管理プログラム203のパラメータ等を設定するプログラムである。
交代パス管理プログラム203は、本発明の負荷分散を実現するプログラムである。交代パス管理プログラム203は、後述するアルゴリズムによって各LU109に対するアクセスパスを設定する。アプリケーションプログラム201から要求されたデータアクセス(I/O)は、交代パス管理プログラム203によって設定されたパスを経由して実行される。
交代パス管理プログラム203には、負荷測定サブプログラム204、アクティブパス設定サブプログラム205及びレポートサブプログラム209が含まれる。
レポートサブプログラム209は、アクティブパスの設定に関する情報及び各パスの負荷の状態に関する情報等を、入出力装置104に出力する。レポートサブプログラム209は、少なくとも、アクティブパスが再設定されたときには、これらの情報を出力する。
なお、アクティブパスについては、図3において説明する。
アクティブパス設定サブプログラム205には、さらに、初期アクティブパス設定サブプログラム206、アクティブパス再設定サブプログラムA207及びアクティブパス再設定サブプログラムB208が含まれる。
これらのサブプログラムについては、後で詳細に説明する。
図3は、本発明の実施の形態のパステーブルの説明図である。
パステーブル300は、メモリ103に格納されるテーブルであり、図1のコンピュータシステム(すなわち、ホスト101と、これに接続されたストレージ装置108)に存在する全てのパスの状態を示す情報を含む。パステーブル300は、初期アクティブパス設定サブプログラム206によって作成され、負荷測定サブプログラム204、アクティブパス再設定サブプログラムA207及びアクティブパス再設定サブプログラムB208によって更新される。
パステーブル300において、パス番号301は、全てのパスに一意に付与されたパスの番号である。
障害状態302は、パスに障害が発生しているか否かを示す。パスを構成するHBA105、CHA107及びLU109のいずれにも障害が発生していない場合、障害状態302の値は「No」となる。一方、これらのうちいずれかに障害が発生している場合、障害状態302の値は「Yes」となる。
アクティブ情報303は、パスがアクティブパスとして設定されているか否かを示す。パスがアクティブパスとして設定されている場合、アクティブ情報303の値は「Yes」となり、アクティブパスとして設定されていない場合、アクティブ情報303の値は「No」となる。
ここで、アクティブパスとは、ホスト101からLU109へのアクセス(I/O)が経由するパスである。アクティブパスでないパスは、データアクセスに寄与しないスタンバイパスである。例えば、図3において、ホスト101とLU1との間には、パス番号301が「1」のパスから「6」のパスまで、6本のアクセス可能なパスがある。しかし実際には、ホスト101は、アクティブパス(図3の例では、パス番号301が「1」のパス)のみを経由してLU1にアクセスする。
アクティブパスは、初期アクティブパス設定サブプログラム206によって最初に作成される。その後、必要に応じて(例えば、アクティブパスに障害が発生した場合又は特定の部位に負荷が集中した場合)、アクティブパス再設定サブプログラムA207又はアクティブパス再設定サブプログラムB208によって、スタンバイパスの一つが新たなアクティブパスとして設定(再設定)され、元のアクティブパスがスタンバイパスとして設定される。アクティブパスの設定及び再設定については、後で詳細に説明する。
HBA−ID304は、パスが経由するHBA105の識別子(HBA−ID)である。
CHA−ID305は、パスが経由するCHA107の識別子(CHA−ID)である。
LU−ID306は、パスが到達するLU109の識別子(LU−ID)である。
測定負荷307は、各パスについて実際に測定された負荷の量を示す。この負荷の量は、負荷測定サブプログラム204によって測定される所定時間当たりのアクセス(I/O)回数又はアクセスデータ量である(図10参照)。
アクティブパス設定LU数308は、各パスをアクティブパスとして設定しているLUの数を示す。アクティブ情報303が「Yes」であるパスのアクティブパス設定LU数308は、「1」であり、アクティブ情報303が「No」であるパスのアクティブパス設定LU数308は、「0」である。
パステーブル300の設定については、後で詳細に説明する。
図4は、本発明の実施の形態のLUテーブルの説明図である。
LUテーブル400は、メモリ103に格納されるテーブルであり、図1のホスト101に接続されたストレージ装置108に存在する全てのLU109の状態を示す情報を含む。LUテーブル400は、初期アクティブパス設定サブプログラム206によって作成され、負荷測定サブプログラム204、アクティブパス再設定サブプログラムA207及びアクティブパス再設定サブプログラムB208によって更新される。
LUテーブル400において、LU−ID401は、各LUを識別するLU−IDである。図4の例では、LU−ID401の値は、「1」から「4」までとなる。
測定負荷402は、各LUについて実際に測定された負荷の量を示す。各LUの測定負荷402の値は、パステーブル300の測定負荷307の値を、該当するLU−ID306について合計した値である。例えば、LU−ID401が「1」であるLU109(すなわち、LU1)の測定負荷402は、パステーブル300のLU−ID306が「1」であるパスの測定負荷307の合計値(図3及び図4の例では、「50」)である。
現アクティブパスのパスID403は、各LUについて現在アクティブパスとして設定されているパスのパスIDを示す。すなわち、パステーブル300において、アクティブパス設定LU数308が「1」であるパスのパスIDである。
新アクティブパスのパスID404は、各LUについて次にアクティブパスとして設定されるパスのパスIDを示す。次にアクティブパスとして設定されるパスが未定である場合、新アクティブパスのパスID404の値は、「−1」となる。
LUテーブル400の設定については、後で詳細に説明する。
図5は、本発明の実施の形態のHBAテーブルの説明図である。
HBAテーブル500は、メモリ103に格納されるテーブルであり、図1のホスト101に存在する全てのHBA105の状態を示す情報を含む。HBAテーブル500は、初期アクティブパス設定サブプログラム206によって作成され、負荷測定サブプログラム204、アクティブパス再設定サブプログラムA207及びアクティブパス再設定サブプログラムB208によって更新される。
HBAテーブル500において、HBA−ID501は、各HBAを識別するHBA−IDである。図5の例では、HBA−ID501の値は、「1」から「2」までとなる。
測定負荷502は、各HBAについて実際に測定された負荷の量を示す。各HBAの測定負荷502の値は、パステーブル300の測定負荷307の値を、該当するHBA−ID304について合計した値である。例えば、HBA−ID501が「1」であるHBA105(すなわち、HBA1)の測定負荷502は、パステーブル300のHBA−ID304が「1」であるパスの測定負荷307の合計値(図3及び図5の例では、「60」)である。
割当済み負荷503には、アクティブパスを再設定する際に、各HBA105に既に割り当てられたアクティブパスの負荷の値が格納される。
アクティブパス設定LU数504は、各HBA105をアクティブパスとして設定しているLU109の数を示す。各HBA105のアクティブパス設定LU数504の値は、パステーブル300のアクティブパス設定LU数308の値を、該当するHBA−ID304について合計した値である。例えば、HBA−ID501が「1」であるHBA105(すなわち、HBA1)のアクティブパス設定LU数504は、パステーブル300のHBA−ID304が「1」であるパスのアクティブパス設定LU数308の合計値(図3及び図5の例では、「2」)である。
HBAテーブル500の設定については、後で詳細に説明する。
図6は、本発明の実施の形態のCHAテーブルの説明図である。
CHAテーブル600は、メモリ103に格納されるテーブルであり、図1のホスト101に接続されたストレージ装置108に存在する全てのCHA107の状態を示す情報を含む。CHAテーブル600は、初期アクティブパス設定サブプログラム206によって作成され、負荷測定サブプログラム204、アクティブパス再設定サブプログラムA207及びアクティブパス再設定サブプログラムB208によって更新される。
CHAテーブル600において、CHA−ID601は、各CHAを識別するCHA−IDである。図6の例では、CHA−ID601の値は、「1」から「3」までとなる。
測定負荷602は、各CHAについて実際に測定された負荷の量を示す。各CHAの測定負荷602の値は、パステーブル300の測定負荷307の値を、該当するCHA−ID305について合計した値である。例えば、CHA−ID601が「1」であるCHA107(すなわち、CHA1)の測定負荷602は、パステーブル300のCHA−ID305が「1」であるパスの測定負荷307の合計値(図3及び図6の例では、「110」)である。
割当済み負荷603には、アクティブパスを再設定する際に、各CHA107に既に割り当てられたアクティブパスの負荷の値が格納される。
アクティブパス設定LU数604は、各CHA107をアクティブパスとして設定しているLU109の数を示す。各CHA107のアクティブパス設定LU数604の値は、パステーブル300のアクティブパス設定LU数308の値を、該当するCHA−ID305について合計した値である。例えば、CHA−ID601が「1」であるCHA107(すなわち、CHA1)のアクティブパス設定LU数604は、パステーブル300のCHA−ID305が「1」であるパスのアクティブパス設定LU数308の合計値(図3及び図6の例では、「2」)である。
CHAテーブル600の設定については、後で詳細に説明する。
なお、LUテーブル400、HBAテーブル500及びCHAテーブル600は、次のような方法で作成することができる。
例えば、ホスト101のHBA105がLU109を検出し、その検出されたLU109に関する情報をホスト101のオペレーティングシステム(OS)がHBA105から取得してもよい。ホスト101は、検出されたLU109に対してSCSIのコマンドを使用することによって、パスに関する情報(例えば、どのHBA105及びCHA107を経由するかを示す情報等)を取得することができる。ホスト101は、この情報に基づいて、使用可能なLU109、HBA105及びCHA107を把握し、LUテーブル400、HBAテーブル500及びCHAテーブル600を作成することができる。以上のように、ホスト101は、使用可能なLU109及びCHA107を検出することができる。
複数のホスト101が同一のLU109及びCHA107を検出することができる場合、これらの複数のホスト101は、検出された同一のLU109及びCHA107を共有する。
一方、SAN106のファイバーチャネルスイッチ(図示省略)のゾーニング又はストレージ装置108のLUNマスキング等の機能によって、ホスト101のOSが検出することができないLU109を設定することもできる。したがって、これらの機能によって、複数のホスト101がそれぞれ別のLU109を使用するように設定することもできる。
図7は、本発明の実施の形態の交代パス管理プログラム203のフローチャートである。
ホスト101が起動することによって交代パス管理プログラム203の実行が開始すると(701)、最初に、初期アクティブパスを設定する(702)。具体的には、交代パス管理プログラム203によって呼び出された初期アクティブパス設定サブプログラム206が、初期アクティブパスを設定する(図8〜図9参照)。
次に、測定負荷種別及び測定期間が設定される(703)。測定負荷種別とは、負荷測定サブプログラム204が測定する対象であり、ホスト101のユーザによって、「I/O数」又は「I/Oデータ量」のいずれかが設定される。測定期間とは、負荷測定サブプログラム204が、設定された測定対象を測定する期間であり、ホスト101のユーザによって、任意の期間が設定される。この設定は、交代パス管理設定プログラム202によって実行される。
次に、ステップ703の設定に従って負荷を測定する(704)。具体的には、交代パス管理プログラム203によって呼び出された負荷測定サブプログラム204が、ステップ703の設定に従って負荷を測定する(図10参照)。なお、I/O(すなわち、データアクセス)が発生するたびに、負荷測定サブプログラム204が負荷を測定する。
次に、ホスト101がシャットダウンされるか否かを判定する(705)。具体的には、ホスト101のユーザがホスト101をシャットダウンするコマンドを発行したか否かを判定する。ホスト101がシャットダウンされる場合は、交代パス管理プログラム203を終了する(706)。
一方、ホスト101がシャットダウンされない場合は、次に、パス数に変動があったか否かを判定する(707)。ここで、パス数に変動があった場合とは、HBA105、CHA107若しくはLU109に障害が発生して一つ以上のパスが使用できなくなった場合、HBA105、CHA107若しくはLU109に発生していた障害が復旧した場合、又は、HBA105、CHA107若しくはLU109が新たに追加された場合等である。パス数に変動があった場合は、アクティブパスを再設定する(708)。具体的には、交代パス管理プログラム203によって呼び出されたアクティブパス再設定サブプログラムA207が、アクティブパスを再設定する(図11〜図12参照)。
一方、パス数に変動がない場合は、アクティブパスを再設定するタイミングであるか否かを判定する(709)。ホスト101のユーザは、予め、アクティブパスを再設定する間隔(例えば、1時間、1日、1週間、1ヶ月又は1年)を設定することができる。ユーザが「1時間」と設定した場合、ステップ709において、前回アクティブパスが再設定(又は初期設定)されてから1時間経過したか否かを判定する。1時間経過している場合は、アクティブパスを再設定するタイミングであるため、アクティブパスを再設定する(710)。具体的には、交代パス管理プログラム203によって呼び出されたアクティブパス再設定サブプログラムB208が、アクティブパスを再設定する(図13〜図16参照)。
なお、アクティブパスの再設定は、上記のように所定の間隔で実行するだけでなく、ホスト101のユーザからの要求を受けて実行してもよい。この場合、ステップ709において、ユーザがアクティブパス再設定要求を発行したか否かを判定し、再設定要求が発行されている場合は、アクティブパスを再設定するタイミングであるため、ステップ710に進む。
一方、上記の所定の間隔が経過しておらず、かつ、ユーザからの再設定要求も発行されていない場合は、アクティブパスを再設定するタイミングでないため、ステップ704に戻る。
一方、アクティブパス再設定サブプログラムA207又はアクティブパス再設定サブプログラムB208が実行された場合は、その後、レポートを出力する(711)。具体的には、レポートサブプログラム209が、再設定されたアクティブパスに関する情報をホスト101の入出力装置104に表示する。レポートを出力した後、ステップ704に戻る。
図8は、本発明の実施の形態の初期アクティブパス設定サブプログラム206のフローチャートである。
図7のステップ702において呼び出されることによって、初期アクティブパス設定サブプログラム206の実行が開始する(801)。このとき、交代パス管理プログラム203は、ホスト101からアクセス可能な全てのLU109(すなわち、LU1〜LU4)を認識している。
最初に、初期アクティブパス設定サブプログラム206は、パステーブル300を作成する(802)。この時点では、パステーブル300の値は全て初期値である。すなわち、障害状態302及びアクティブ情報303の値は全て「No」であり、測定負荷307及びアクティブパス設定LU数308の値は全て「0」である。
次に、初期アクティブパス設定サブプログラム206は、LUテーブル400、HBAテーブル500及びCHAテーブル600を作成する(803)。この時点では、各テーブルの値は全て初期値である。すなわち、測定負荷402、502、602、割当済み負荷503、603、アクティブパス設定LU数504及び604の値は、全て「0」である。また、現アクティブパスのパスID403及び新アクティブパスのパスID404の値は、未定である。
次に、全LU109のアクティブパスが決定したか否かを判定する(804)。
全LU109のアクティブパスが決定していない場合は、未処理かつLU−IDが最も小さい値のLU109(LUm、「m」はLU−ID)を選択する(805)。
次に、LUmへのパスのうち、未処理のパスがあるか否かを判定する(806)。未処理のパスがない場合は、その時点のLUmのアクティブパス候補がアクティブパスに決定したので、そのLUmを処理済みとして(815)、次のLU109のアクティブパスを決定するために、ステップ804に戻る。
一方、未処理のパスがある場合は、LUmのアクティブパスが決定していないため、これを決定するために、LUmへのパスのうち、未処理かつ最もパスIDが小さいパスAを選択する(807)。
次に、パスAがそのLUmについて最初に選択されたパスであるか否かを判定する(808)。最初に選択されたパスである場合は、そのパスAをLUmのアクティブパス候補として設定するために、ステップ812に進む。
一方、パスAがそのLUmについて最初に選択されたパスでない場合は、パスAをアクティブパス候補として設定するか否かを判定するために、値αが値Bより大きいか否かを判定する(809)。ここで、値αは、その時点のアクティブパス候補のHBA105のアクティブパス設定LU数504と、その時点のアクティブパス候補のCHA107のアクティブパス設定LU数604との合計値である。値Bは、パスAのHBA105のアクティブパス設定LU数504と、パスAのCHA107のアクティブパス設定LU数604との合計値である。
その結果、値αが値Bより大きくない場合は、パスAはLUmのアクティブパス候補とはならないため、パスAをスタンバイパスに設定し(810)、ステップ806に戻る。具体的には、ステップ810において、パステーブル300のパスAに対応するアクティブ情報303を「No」とする。
一方、値αが値Bより大きい場合は、パスAをLUmのアクティブパス候補とするため、まず、現時点でのLUmのアクティブパス候補をスタンバイパスにする(811)。具体的には、パステーブル300において、そのパスに対応するアクティブ情報303を「No」とする。さらに、パステーブル300において、そのパスに対応するアクティブパス設定LU数308を1減少させる。さらに、そのパスに対応するHBA105について、HBAテーブル500のアクティブパス設定LU数504を1減少させる。さらに、そのパスに対応するCHA107について、CHAテーブル600のアクティブパス設定LU数604を1減少させる。
次に、パスAをLUmのアクティブパス候補として設定する(812)。具体的には、パステーブル300において、パスAに対応するアクティブ情報303を「Yes」とする。さらに、パステーブル300において、パスAに対応するアクティブパス設定LU数308を1増加させる。さらに、パスAに対応するHBA105について、HBAテーブル500のアクティブパス設定LU数504を1増加させる。さらに、パスAに対応するCHA107について、CHAテーブル600のアクティブパス設定LU数604を1増加させる。さらに、LUテーブル400において、LUmに対応する新アクティブパスのパスID404の値を、パスAのパスIDの値に設定する。
その後、次のパスについて処理するため、ステップ806に戻る。
一方、ステップ804において、全LU109のアクティブパスが決定した場合は、決定したアクティブパスを実際に運用するため、LUテーブル400の新アクティブパスのパスID404の値を、現アクティブパスのパスID403に複写する(813)。その結果、交代パス管理プログラム203は、新しいアクティブパスの運用を開始する。すなわち、交代パス管理プログラム203は、アプリケーションプログラム201から要求されたデータアクセス(I/O)を、新しいアクティブパスに割り当てる。
以上で、初期アクティブパス設定サブプログラムの実行が終了する。
図9は、本発明の実施の形態の設定されたアクティブパスを示すブロック図である。
図9は、例として、図1において初期アクティブパス設定サブプログラム206(図8)を実行した結果を示す。
図9において、設定されたアクティブパスのパスIDは、それぞれ、「111」、「222」、「133」及び「214」である。すなわち、LU1へのアクティブパス902aは、HBA1及びCHA1を経由する。LU2へのアクティブパス902bは、HBA2及びCHA2を経由する。LU3へのアクティブパス902cは、HBA1及びCHA3を経由する。LU4へのアクティブパス902dは、HBA2及びCHA1を経由する。
なお、図9において、測定負荷901は、負荷測定サブプログラム204によって測定された負荷の例である。これについては、図10以降で詳細に説明する。
図10は、本発明の実施の形態の負荷測定サブプログラム204のフローチャートである。
図7のステップ704において呼び出されることによって、負荷測定サブプログラム204の実行が開始する(1001)。
最初に、負荷測定サブプログラム204は、ホスト101からいずれかのLU109へのデータアクセス(I/O)を、そのLU109について設定されたアクティブパスAに割り当てる(1002)。
次に、測定負荷種別を判定する(1003)。この測定負荷種別は、図7のステップ703において設定されたものである。
測定負荷種別として「I/O数」が設定されていると判定した場合は、アクティブパスAについて発行されたデータI/Oの回数を測定する(1004)。
一方、測定負荷種別として「I/Oデータ量」が設定されていると判定した場合は、アクティブパスAについて発行されたデータI/Oのデータ量を測定する(1005)。
次に、各テーブルの値を更新する(1006)。すなわち、パステーブル300のアクティブパスAに該当する測定負荷307の値に、ステップ1004又は1005において測定された値を加算する。さらに、LUテーブル400、HBAテーブル500及びCHAテーブル600において、アクティブパスAに含まれるLU、HBA及びCHAの測定負荷402、502及び602の値に、ステップ1004又は1005において測定された値を加算する。
以上で、負荷測定サブプログラム204の実行が終了する(1007)。負荷測定サブプログラム204によって測定された値の例を、図9の測定負荷901に示す。
なお、図3から図6に示す各テーブルの値は、図9の測定負荷901が測定された時点の値である。
図11は、本発明の実施の形態のアクティブパス再設定サブプログラムA207のフローチャートである。
図1のコンピュータシステムにおいて、パスの数が変動したときに、図7のステップ708において呼び出されることによって、アクティブパス再設定サブプログラムA207の実行が開始する(1101)。ここで、パスの数が変動したときとは、アクティブパスに含まれるHBA105又はCHA107に障害が発生したとき、新たなLU109が追加されたとき、又は、障害が発生していたHBA105又はCHA107が復帰したとき等である。
最初に、本発明の実施の形態のアクティブパス再設定サブプログラムA207は、該当するLUmに至る全てのパスの測定負荷を算出する(1102)。ただし、ステップ1102において、該当するLUmとは、アクティブパスに障害が発生した場合は、そのアクティブパスに関するLU109である。また、新たなLU109が追加された場合は、その追加されたLU109である。また、HBA105又はCHA107が障害から復帰した場合は、そのHBA105又はCHA107を経由してアクセス可能なLU109である。また、ステップ1102において、該当するLUmに至る全てのパスの測定負荷とは、各パスに含まれるHBA105及びCHA107の測定負荷502及び602の値をパスごとに合計した値である。ただし、障害が発生したアクティブパスについて測定された値は含まない。
次に、ステップ1102で算出された測定負荷の値を比較し、測定負荷の値が最小になるパスが複数存在するか否かを判定する(1103)。測定負荷の値が最小になるパスが複数存在しない場合は、測定負荷の値が最小になるパスをアクティブパスとして設定する(1107)。
一方、ステップ1102で算出された測定負荷の値が最小になるパスが複数存在する場合は、それらのパスについて、値αを算出する(1104)。ここで、値αは、各パスに関するHBAテーブル500及びCHAテーブル600のアクティブパス設定LU数504及び604を合計した値である。
次に、各パスについて算出された値αを比較して、値αが最小になるパスが複数存在するか否かを判定する(1105)。値αが最小になるパスが複数存在しない場合は、値αが最小になるパスをアクティブパスとして設定する(1107)。
一方、値αが最小になるパスが複数存在する場合は、それらのパスのうち、パスIDの値が最小になるパスをアクティブパスとして設定する(1106)。
次に、各テーブルの値を更新する(1108)。すなわち、パステーブル300において、アクティブパスに設定されたパスのアクティブ情報303を「Yes」に変更する。さらに、LUテーブル400において、該当するLUmの新アクティブパスのパスID404の値を、アクティブパスに設定されたパスのパスIDの値に変更する。
このようにして、該当するLUmのアクティブパスが再設定される。
次に、全ての該当するLUmについて、アクティブパスが再設定されたか否かを判定する(1109)。その結果、全ての該当するLUmについてアクティブパスが再設定されていない(すなわち、アクティブパスが再設定されていないLUmが存在する)と判定された場合は、次のLUmについてアクティブパスを再設定するために、ステップ1102に戻る。
一方、全ての該当するLUmについてアクティブパスが再設定されたと判定された場合は、再設定されたアクティブパスの運用を開始するため、LUテーブル400の新アクティブパスのパスID404の値を、現アクティブパスのパスID403に複写する(1110)。
以上で、アクティブパス再設定サブプログラムA207の実行が終了する(1111)。
図12は、本発明の実施の形態の再設定されたアクティブパスの例を示すブロック図である。
図12は、例として、図9においてCHA3に障害が発生した場合に、アクティブパス再設定サブプログラムA207(図11)によって再設定されたアクティブパスを示す。この例において、障害が発生したアクティブパスは、HBA1及びCHA3を経由してLU3に至るパスであり、そのパスの測定負荷の値は「10」である。
図9においてCHA3に障害が発生した場合、ステップ1102の「該当するLUm」は、CHA3を含むアクティブパスに関するLUm、すなわち、LU3である。
このため、LU3に至る全てのパスについて、現時点の測定負荷を比較する(1102)。LU3に至るパスは、パステーブル300に示すパス番号が「13」から「18」までの6本である。これらのうち、障害が発生したCHA3に関するパス(パス番号が「15」及び「18」のパス)は使用できないため、残りの4本のパスについて、測定負荷を比較する。
パス番号が「13」のパスは、HBA1及びCHA1を経由してLU3に至るパスである。HBAテーブル500において、HBA1の測定負荷の値は「60」である。ここで、障害が発生したアクティブパスはHBA1を経由する。このため、HBA1の測定負荷の値から、障害が発生したアクティブパスの測定負荷の値を除いた値「50」を算出する。一方、CHAテーブルにおいて、CHA1の測定負荷の値は「110」である。以上から、パス番号が「13」のパスの現時点の測定負荷は、「50」と「110」の合計値「160」である。
同様に、パス番号が「14」、「16」及び「17」のパスの現時点の測定負荷は、それぞれ、「70」、「190」及び「100」である。これらの値を比較すると(1102)、測定負荷の値が最小値「70」であるパスは、パス番号が「14」のパスのみである。すなわち、測定負荷の値が最小になるパスが複数存在しないため(1103)、パス番号が「14」のパスをアクティブパスとして設定する(1107)。
その結果、図12に示すように、HBA1及びCHA2を経由するパス1202cがLU3に至るアクティブパスとして再設定される。
図13は、本発明の実施の形態のアクティブパス再設定サブプログラムB208のフローチャートである。
図1のコンピュータシステムにおいて、アクティブパスを再設定するタイミングが到来したときに、図7のステップ710において呼び出されることによって、アクティブパス再設定サブプログラムB208の実行が開始する(1301)。ここで、アクティブパスを再設定するタイミングが到来したときとは、予め設定されたアクティブパス再設定間隔(例えば、1時間)が経過したとき、又は、ホスト101のユーザがアクティブパス再設定要求を発行したとき等である。
最初に、アクティブパス再設定サブプログラムB208は、アクティブパスの負荷が適度に分散しているか否かを判定する。具体的には、全てのHBA105及びCHA107の測定負荷の最小値と最大値を比較し、最小値が最大値の90%以上であるか否かを判定する(1302)。その結果、最小値が最大値の90%以上である場合は、アクティブパスの負荷が適度に分散しているため、アクティブパスを再設定せずに、ステップ1316に進む。
一方、最小値が最大値の90%以上でない場合は、負荷に偏りがあるため、アクティブパスを再設定して負荷を分散させるために、ステップ1303に進む。
なお、図13の例では、負荷が適度に分散されているか否かを判定する閾値として、「測定負荷の最大値の90%」を設定したが、ユーザは、他の閾値(例えば、最大値の50%)を設定してもよい。
次に、全てのLU109について、アクティブパスを変更するか否かの決定が終了したか否かを判定する(1303)。終了したと判定された場合は、アクティブパスを変更するLU109について、アクティブパスを決定するために、ステップ1309に進む。
一方、全てのLU109について、アクティブパスを変更するか否かの決定が終了していない場合は、これを終了させるために、ステップ1304に進む。すなわち、アクティブパスを変更するか否かが決定していないLU109の測定負荷の値を比較し、その値が最も大きいLU109(LUm、「m」はLU−ID)を選択する(1304)。
次に、LUmに至る現アクティブパスに障害が発生しているか否かを判定する(1305)。
ステップ1305において、LUmに至る現アクティブパスに障害が発生していないと判定された場合は、次に、LUmの現アクティブパスが他のLU109の新アクティブパスとして使用されているか否かを判定する(1306)。具体的には、LUmの現アクティブパスに関するHBA105又はCHA107のいずれかが他のLU109の新アクティブパスに含まれるか否かを判定する。
ステップ1306において、LUmの現アクティブパスに関するHBA105及びCHA107のいずれも他のLU109の新アクティブパスに含まれないと判定された場合は、LUmのアクティブパスを変更しないことを決定する(1308)。すなわち、LUテーブル400のLUmに対応する新アクティブパスのパスID404の値を、現アクティブパスのパスID403と同一にする。さらに、HBAテーブル500及びCHAテーブル600において、LUmに対応する割当済み負荷503及び603の値に、LUmの測定負荷の値(すなわち、パステーブル300のLUmに関するアクティブパスの測定負荷307の値)を加算する。さらに、HBAテーブル500及びCHAテーブル600において、LUmに対応するアクティブパス設定LU数504及び604の値に「1」を加算する。その後、ステップ1303に戻る。
一方、ステップ1305において、LUmに至る現アクティブパスに障害が発生していると判定された場合、及び、ステップ1306において、LUmの現アクティブパスに関するHBA105又はCHA107のいずれかが他のLU109の新アクティブパスに含まれると判定された場合は、LUmのアクティブパスを変更することを決定して(1307)、ステップ1303に戻る。
ステップ1303において、全てのLU109について、アクティブパスを変更するか否かの決定が終了したと判定された場合は、全てのLU109について、新アクティブパスが決定したか否かを判定する(1309)。全てのLU109について新アクティブパスが決定したと判定された場合は、ステップ1315に進む。
一方、全てのLU109について新アクティブパスが決定していないと判定された場合は、新アクティブパスが決定していないLU109の測定負荷の値を比較し、その値が最も大きいLU109(LUm)を選択する(1310)。
次に、LUmに関して使用可能な(すなわち、障害が発生していない)パスが複数存在するか否かを判定する(1311)。
使用可能なパスが一つしか存在しない場合は、そのパスを新アクティブパスに決定する(1312)。
一方、使用可能なパスが複数存在する場合は、HBAテーブル500及びCHAテーブル600において、LUmに対応する割当済み負荷503及び603の値を参照し、これらの値の合計値が最小となるパスを新アクティブパスに決定する(1313)。
次に、ステップ1312又は1313で決定された新アクティブパスに関するHBA105及びCHA107について、HBAテーブル500及びCHAテーブル600の割当済み負荷503及び603の値に、LUmの測定負荷の値を加算する。さらに、アクティブパス設定LU数504及び604の値に「1」を加算する。さらに、LUテーブル400のLUmに対応する新アクティブパスのパスID404の値を、ステップ1312又は1313で決定された新アクティブパスのパスIDの値に変更する(1314)。その後、ステップ1309に戻る。
ステップ1309において、全てのLU109について新アクティブパスが決定したと判定された場合は、LUテーブル400の新アクティブパスのパスID404の値を、現アクティブパスのパスID403に複写する(1315)。その結果、新アクティブパスの運用が開始される。
次に、パステーブル300、LUテーブル400、HBAテーブル500及びCHAテーブル600の測定負荷307、402、502及び602の値をクリアする(1316)。すなわち、これらの値を「0」にする。
以上で、アクティブパス再設定サブプログラムB208の実行が終了する(1317)。
図14は、本発明の実施の形態の再設定されたアクティブパスの例を示すブロック図である。
図14は、例として、図9においてアクティブパス再設定サブプログラムB208(図13)を実行することによって再設定されたアクティブパスを示す。この再設定の手順を、図4から図6、図9、図13及び図14を参照して説明する。なお、以下の説明において、ループによって同様の動作を繰り返す場合は、特に必要な場合を除いて、説明を省略する。
図9において、アクティブパス再設定サブプログラムB208の実行が開始すると(1301)、最初に、アクティブパスの負荷が適度に分散しているか否かを判定する(1302)。例えば、図6において、CHA107の測定負荷602の最大値「110」の90%の値「99」は、最小値「10」よりずっと大きい。このことは、負荷が大きく偏って配分されていることを意味する。従って、アクティブパスを再設定して負荷を分散するために、ステップ1303に進む。
この時点では、全てのLU109について、アクティブパスを変更するか否かの決定が終了していないため(1303)、ステップ1304に進む。
ステップ1304において、アクティブパスを変更するか否かが決定していないLU109のうち、測定負荷の値が最も大きいLU4を選択する。LU4に至る現アクティブパス902dに障害が発生していないため(1305)、ステップ1306に進む。
LU4の前に新アクティブパスが決定しているLU109はないため、LU4の現アクティブパス902dに含まれるHBA105及びCHA107のいずれも、他のLU109の新アクティブパスに決定していない(1306)。したがって、ステップ1308に進む。
ステップ1308において、LU4の現アクティブパス902d(HBA2及びCHA1を経由してLU4に至るパス)を新アクティブパスに決定する。このとき、LUテーブル400のLU4の新アクティブパスのパスIDの値を、「214」とする。さらに、HBAテーブル500のHBA2の割当済み負荷503の値「0」(初期値)に「60」(LU4の測定負荷)を加算して、「60」とする。さらに、CHAテーブル600のCHA1の割当済み負荷603の値「0」(初期値)に「60」(LU4の測定負荷)を加算して、「60」とする。
次に、測定負荷が2番目に大きいLU1を選択する(1304)。LU1の現アクティブパス902a(HBA1及びCHA1を経由してLU1に至るパス)のうち、CHA1は、LU4の新アクティブパスとして決定している(1306)。このため、LU1のアクティブパスを変更することを決定する(1307)。
LU2についても、同様にして、アクティブパスを変更することを決定する(1307)。
LU3の現アクティブパス902c(HBA1及びCHA3を経由してLU3に至るパス)は、既に決定しているLU4の新アクティブパス902d(HBA2及びCHA1を経由してLU4に至るパス)に含まれないため、変更しないことを決定する(1306、1308)。このとき、LUテーブル400のLU3の新アクティブパスのパスIDの値を、「133」とする。さらに、HBAテーブル500のHBA1の割当済み負荷503の値「0」(初期値)に「10」(LU3の測定負荷)を加算して、「10」とする。さらに、CHAテーブル600のCHA3の割当済み負荷603の値「0」(初期値)に「10」(LU3の測定負荷)を加算して、「10」とする。
次に、ステップ1309に進む。
この時点では、LU1及びLU2の新アクティブパスが決定していないため、これらのうち測定負荷の値が大きいLU1を選択する(1310)。
LU1に関して使用可能なパスが複数あるため(1311)、ステップ1313に進む。
ステップ1313において、最初に、HBAテーブル500を参照する。この時点で、HBA1の割当済み負荷503の値は「10」であり、HBA2の割当済み負荷503の値は「60」である。このため、割当済み負荷503の値が小さいHBA1をLU1の新アクティブパスに決定する。
次に、CHAテーブル600を参照する。この時点で、CHA1の割当済み負荷603の値は「60」であり、CHA2の割当済み負荷603の値は「0」であり、CHA3の割当済み負荷603の値は「10」(初期値)である。このため、割当済み負荷603の値が最も小さいCHA2をLU1の新アクティブパスに決定する。
次に、ステップ1314において、HBAテーブル500のHBA1の割当済み負荷503の値「10」に「50」(LU1の測定負荷)を加算して、「60」とする。さらに、CHAテーブル600のCHA2の割当済み負荷603の値「0」に「50」(LU1の測定負荷)を加算して、「50」とする。
次に、LU2を選択する(1310)。
ステップ1313において、最初に、HBAテーブル500を参照する。この時点で、HBA1の割当済み負荷503の値は「60」であり、HBA2の割当済み負荷503の値は「60」である。このように割当済み負荷503の値が同じである場合は、どちらを新アクティブパスに決定してもよい。本実施の形態では、HBA−IDの値が小さいHBA1をLU2の新アクティブパスに決定する。
次に、CHAテーブル600を参照する。この時点で、CHA1の割当済み負荷603の値は「60」であり、CHA2の割当済み負荷603の値は「50」であり、CHA3の割当済み負荷603の値は「10」である。このため、割当済み負荷603の値が最も小さいCHA3をLUの新アクティブパスに決定する。
次に、ステップ1314において、HBAテーブル500のHBA1の割当済み負荷503の値「60」に「20」(LU2の測定負荷)を加算して、「80」とする。さらに、CHAテーブル600のCHA3の割当済み負荷603の値「10」に「20」(LU2の測定負荷)を加算して、「30」とする。
以上のようにして、各LU109の新アクティブパスが決定する。結局、図14に示すように、LU1に至る新アクティブパス1402aは、HBA1及びCHA2を経由する。LU2に至る新アクティブパス1402bは、HBA1及びCHA3を経由する。LU3に至る新アクティブパス902cは、HBA1及びCHA3を経由する。LU4に至る新アクティブパス902dは、HBA2及びCHA1を経由する。
このとき、各CHAの割当済み負荷603の最大値は「60」であり、最小値は「30」である。一方、現アクティブパスに関するCHAの測定負荷602の最大値は「110」であり、最小値は「10」である。したがって、負荷の偏りが改善されていることがわかる。
なお、以上の本発明の実施の形態において、アクティブパスは、HBA105及びCHA107の負荷を分散するように、HBA105及びCHA107を特定して設定される。しかし、アクティブパスは、HBA105又はCHA107のいずれか一方のみの負荷を分散するように、HBA105又はCHA107のいずれか一方のみを特定して設定されてもよい。例えば、重み付けをすることによって、ユーザがHBA105又はCHA107のいずれの負荷を優先して分散するか選択できるようにしてもよい。
例えば、CHA107のみを指定してアクティブパスを設定する場合、図8のステップ809において、CHAテーブル600のアクティブパス設定LU数604の値のみを比較して、初期アクティブパスを設定する。さらに、図11のステップ1102及び1103において、CHAテーブル600の測定負荷602のみを比較して、アクティブパスを再設定する。さらに、図13のステップ1313において、CHAテーブル600の割当済み負荷603のみを比較して、アクティブパスを再設定する。
このようにして設定(又は再設定)されたアクティブパスは、CHA107のみを特定し、HBA105を特定しない。その結果、例えば、LU1に至るアクティブパスがCHA1に設定された場合、ホスト101は、任意のHBA105とCHA1とを経由してLU1にアクセス(I/O)する。言い換えると、CHA1を経由する複数のパスがLU1に対するアクティブパスとして設定される。すなわち、ホスト101は、LU1にアクセスするときに、必ずCHA1を使用する。一方、ホスト101は、アクセス(I/O)ごとに異なるHBA105を使用することができる。例えば、ホスト101は、HBA105については従来の負荷分散を適用してもよい。
このようにアクティブパスを設定した場合にも、CHA107がキャッシュメモリを備えていれば、キャッシュメモリが有効に利用され、データの先読み機能等によって性能が向上する。
同様にして、HBA105がキャッシュメモリを備えている場合には、HBA105のみを特定してアクティブパスを設定してもよい。その結果、HBA105のキャッシュメモリが有効に利用され、性能が向上する。
以上の本発明によれば、各LU109についてアクティブパスが設定され、ホスト101は、アクティブパスを経由してLU109にアクセスする。アクティブパスは、ホスト101からのアクセスの負荷が分散するように設定される。その結果、アクセスの集中による性能低下が改善される。
さらに、アクティブパスが設定(又は再設定)された後、次に再設定されるまでの間、ホスト101は、一つのLU109に、同一のパスを経由してアクセスする。すなわち、一回のアクセスごとにアクティブパスが変更されないため、アクティブパスに含まれるCHA107等のキャッシュメモリが有効に利用される。特に、シーケンシャルアクセスの際に、キャッシュメモリに格納された先読みデータが有効に利用される。その結果、性能が向上する。
さらに、アクセス負荷に偏りが生じたときには、偏りを解消するために、アクティブパスが再設定されるため、常に良好な性能が維持される。
さらに、アクティブパスを再設定する際には、負荷が大きいLU109から順に再設定されるため、負荷が適切に分散される。
本発明の実施の形態のコンピュータシステムの構成を示すブロック図である。 本発明の実施の形態のメモリに格納されるプログラムの説明図である。 本発明の実施の形態のパステーブルの説明図である。 本発明の実施の形態のLUテーブルの説明図である。 本発明の実施の形態のHBAテーブルの説明図である。 本発明の実施の形態のCHAテーブルの説明図である。 本発明の実施の形態の交代パス管理プログラムのフローチャートである。 本発明の実施の形態の初期アクティブパス設定サブプログラムのフローチャートである。 本発明の実施の形態の設定されたアクティブパスを示すブロック図である。 本発明の実施の形態の負荷測定サブプログラムのフローチャートである。 本発明の実施の形態のアクティブパス再設定サブプログラムAのフローチャートである。 本発明の実施の形態の再設定されたアクティブパスの例を示すブロック図である。 本発明の実施の形態のアクティブパス再設定サブプログラムBのフローチャートである。 本発明の実施の形態の再設定されたアクティブパスの例を示すブロック図である。
符号の説明
101 ホスト
102 CPU
103 メモリ
104 入出力装置
105 ホストバスアダプタ(HBA)
106 Storage Area Network(SAN)
107 チャネルアダプタ(CHA)
108 ストレージ装置
109 論理ユニット(LU)
201 アプリケーションプログラム
202 交代パス管理設定プログラム
203 交代パス管理プログラム
204 負荷測定サブプログラム
205 アクティブパス設定サブプログラム
206 初期アクティブパス設定サブプログラム
207 アクティブパス再設定サブプログラムA
208 アクティブパス再設定サブプログラムB
209 レポートサブプログラム
300 パステーブル
400 LUテーブル
500 HBAテーブル
600 CHAテーブル

Claims (3)

  1. コンピュータと、
    前記コンピュータと通信可能に接続されたストレージ装置と、を備えるコンピュータシステムにおいて、
    前記ストレージ装置は、
    前記コンピュータと通信する一つ以上のチャネルアダプタと、
    データを格納する複数の論理ユニットと、を備え、
    前記コンピュータは、
    前記ストレージ装置と通信する一つ以上のホストバスアダプタと、
    前記コンピュータが前記論理ユニットにアクセスする経路を管理する経路管理部と、を備え、
    前記チャネルアダプタ及び前記ホストバスアダプタの少なくとも一方は、キャッシュメモリを備え、
    前記経路管理部は、
    前記論理ユニットごとのアクセス負荷を測定する負荷測定部と、
    前記測定されたアクセス負荷に基づいて、前記コンピュータからのアクセスが経由する一つの前記チャネルアダプタ及び一つ以上の前記ホストバスアダプタ、又は、一つ以上の前記チャネルアダプタ及び一つの前記ホストバスアダプタを、前記論理ユニットごとに選択し、当該チャネルアダプタ及び当該ホストバスアダプタを経由するアクティブ経路を設定するアクティブ経路設定部と、を備え、
    前記アクティブ経路設定部は、
    前記チャネルアダプタ及び/又は前記ホストバスアダプタごとに、前記測定されたアクセス負荷を合計し、
    前記アクセス負荷の合計値が最も小さい前記チャネルアダプタ及び/又は前記ホストバスアダプタが各々一つ存在する場合は、前記アクセス負荷の合計値が最も小さい前記チャネルアダプタ及び/又は前記ホストバスアダプタを経由するアクティブ経路を設定し、
    前記アクセス負荷の合計値が最も小さい前記チャネルアダプタ及び/又は前記ホストバスアダプタが複数存在する場合は、
    当該チャネルアダプタ及び/又は当該ホストバスアダプタごとに、設定されたアクティブ経路の数を算出し、
    前記アクセス負荷の合計値が最も小さく、かつ、前記算出されたアクティブ経路の数が最も小さい前記チャネルアダプタ及び/又は前記ホストバスアダプタを経由するアクティブ経路を設定し、
    複数の前記論理ユニットについて、アクティブ経路が決定していない場合、前記論理ユニットごとに測定されたアクセス負荷を比較し、
    前記測定されたアクセス負荷が大きい論理ユニットの前記アクティブ経路を、前記測定されたアクセス負荷が小さい論理ユニットの前記アクティブ経路より先に設定することを特徴とするコンピュータシステム。
  2. ストレージ装置と通信可能に接続されたコンピュータにおいて実行されるプログラムであって、
    前記ストレージ装置は、前記コンピュータと通信する一つ以上のチャネルアダプタと、データを格納する複数の論理ユニットと、を備え、
    前記コンピュータは、前記ストレージ装置と通信する一つ以上のホストバスアダプタを備え、
    前記チャネルアダプタ及び前記ホストバスアダプタの少なくとも一方は、キャッシュメモリを備え、
    前記プログラムは、
    前記論理ユニットごとのアクセス負荷を測定する第1の手順と、
    前記測定されたアクセス負荷に基づいて、前記コンピュータからのアクセスが経由する一つの前記チャネルアダプタ及び一つ以上の前記ホストバスアダプタを、前記論理ユニットごとに選択し、当該チャネルアダプタ及び当該ホストバスアダプタを経由するアクティブ経路を設定する第2の手順と、を含み、
    前記第2の手順は、
    前記チャネルアダプタ及び/又は前記ホストバスアダプタごとに、前記測定されたアクセス負荷を合計する手順と、
    前記アクセス負荷の合計値が最も小さい前記チャネルアダプタ及び/又は前記ホストバスアダプタが各々一つ存在する場合は、前記合計されたアクセス負荷が最も小さい前記チャネルアダプタ及び/又は前記ホストバスアダプタを経由するアクティブ経路を設定する手順と、
    前記アクセス負荷の合計値が最も小さい前記チャネルアダプタ及び/又は前記ホストバスアダプタが複数存在する場合は、当該チャネルアダプタ及び/又は当該ホストバスアダプタごとに設定されたアクティブ経路の数を算出し、前記アクセス負荷の合計値が最も小さく、かつ、前記算出されたアクティブ経路の数が最も小さい前記チャネルアダプタ及び/又は前記ホストバスアダプタを経由するアクティブ経路を設定する手順と、を含み、
    複数の前記論理ユニットについて、アクティブ経路が決定していない場合、前記プログラムは、さらに、
    前記論理ユニットごとに測定されたアクセス負荷を比較する手順と、
    前記測定されたアクセス負荷が大きい論理ユニットの前記アクティブ経路を、前記測定されたアクセス負荷が小さい論理ユニットに関する前記アクティブ経路より先に設定する手順と、を含むことを特徴とするプログラム。
  3. コンピュータと、
    前記コンピュータと通信可能に接続されたストレージ装置と、を備え、
    前記ストレージ装置は、前記コンピュータと通信する一つ以上のチャネルアダプタと、データを格納する複数の論理ユニットと、を備え、
    前記コンピュータは、前記ストレージ装置と通信する一つ以上のホストバスアダプタを備え
    前記チャネルアダプタ及び前記ホストバスアダプタの少なくとも一方がキャッシュメモリを備えるコンピュータシステムにおいて、前記コンピュータが前記論理ユニットにアクセスするアクティブ経路を設定する方法であって、
    前記論理ユニットごとのアクセス負荷を測定する第1の手順と、
    前記測定されたアクセス負荷に基づいて、前記コンピュータからのアクセスが経由する一つの前記チャネルアダプタ及び一つ以上の前記ホストバスアダプタを、前記論理ユニットごとに選択し、当該チャネルアダプタ及び当該ホストバスアダプタを経由するアクティブ経路を設定する第2の手順と、を含み、
    前記第2の手順は、
    前記チャネルアダプタ及び/又は前記ホストバスアダプタごとに、前記測定されたアクセス負荷を合計する手順と、
    前記アクセス負荷の合計値が最も小さい前記チャネルアダプタ及び/又は前記ホストバスアダプタが各々一つ存在する場合は、前記合計されたアクセス負荷が最も小さい前記チャネルアダプタ及び/又は前記ホストバスアダプタを経由するアクティブ経路を設定する手順と、
    前記アクセス負荷の合計値が最も小さい前記チャネルアダプタ及び/又は前記ホストバスアダプタが複数存在する場合は、当該チャネルアダプタ及び/又は当該ホストバスアダプタごとに設定されたアクティブ経路の数を算出し、前記アクセス負荷の合計値が最も小さく、かつ、前記算出されたアクティブ経路の数が最も小さい前記チャネルアダプタ及び/又は前記ホストバスアダプタを経由するアクティブ経路を設定する手順と、を含み、
    複数の前記論理ユニットについて、アクティブ経路が決定していない場合、前記方法は、さらに、
    前記論理ユニットごとに測定されたアクセス負荷を比較する手順と、
    前記測定されたアクセス負荷が大きい論理ユニットの前記アクティブ経路を、前記測定されたアクセス負荷が小さい論理ユニットに関する前記アクティブ経路より先に設定する手順と、を含むことを特徴とする方法。
JP2004220241A 2004-07-28 2004-07-28 負荷分散コンピュータシステム、経路設定プログラム及びその方法 Expired - Fee Related JP4643198B2 (ja)

Priority Applications (3)

Application Number Priority Date Filing Date Title
JP2004220241A JP4643198B2 (ja) 2004-07-28 2004-07-28 負荷分散コンピュータシステム、経路設定プログラム及びその方法
US10/975,447 US7120912B2 (en) 2004-07-28 2004-10-29 Computer system for load balance, program and method for setting paths
EP05007659A EP1621992A3 (en) 2004-07-28 2005-04-07 Computer system for load balance, program and method for setting paths

Applications Claiming Priority (1)

Application Number Priority Date Filing Date Title
JP2004220241A JP4643198B2 (ja) 2004-07-28 2004-07-28 負荷分散コンピュータシステム、経路設定プログラム及びその方法

Publications (2)

Publication Number Publication Date
JP2006040026A JP2006040026A (ja) 2006-02-09
JP4643198B2 true JP4643198B2 (ja) 2011-03-02

Family

ID=35159839

Family Applications (1)

Application Number Title Priority Date Filing Date
JP2004220241A Expired - Fee Related JP4643198B2 (ja) 2004-07-28 2004-07-28 負荷分散コンピュータシステム、経路設定プログラム及びその方法

Country Status (3)

Country Link
US (1) US7120912B2 (ja)
EP (1) EP1621992A3 (ja)
JP (1) JP4643198B2 (ja)

Families Citing this family (107)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US20070156879A1 (en) * 2006-01-03 2007-07-05 Klein Steven E Considering remote end point performance to select a remote end point to use to transmit a task
US8443372B2 (en) * 2006-03-23 2013-05-14 International Business Machines Corporation Methods and systems for partitioning data in parallel processing systems
JP5068023B2 (ja) 2006-03-29 2012-11-07 株式会社日立製作所 計算機システム及び論理パス切替方法
JP5121161B2 (ja) 2006-04-20 2013-01-16 株式会社日立製作所 記憶システム、パス管理方法及びパス管理装置
JP2007310656A (ja) * 2006-05-18 2007-11-29 Hitachi Ltd 計算機システム及び論理パス差分検出方法
JP2007328611A (ja) 2006-06-08 2007-12-20 Hitachi Ltd ストレージ仮想化システム及び方法
US8416954B1 (en) 2008-09-30 2013-04-09 Emc Corporation Systems and methods for accessing storage or network based replicas of encrypted volumes with no additional key management
JP4969972B2 (ja) * 2006-09-27 2012-07-04 株式会社日立製作所 論理的なパスの数を制御する装置及び方法
JP2008083939A (ja) 2006-09-27 2008-04-10 Hitachi Ltd 計算機システム及び動的ポート割当方法
US7821973B2 (en) * 2006-10-24 2010-10-26 Hewlett-Packard Development Company, L.P. Sharing of host bus adapter context
US8819326B1 (en) * 2006-12-12 2014-08-26 Spansion Llc Host/client system having a scalable serial bus interface
JP5058582B2 (ja) * 2006-12-21 2012-10-24 日本電気株式会社 ストレージデバイスのマルチパスシステム、その障害箇所特定方法及びプログラム
JP4331746B2 (ja) 2006-12-28 2009-09-16 株式会社日立製作所 ストレージ装置構成管理方法、管理計算機及び計算機システム
US20080170576A1 (en) * 2007-01-17 2008-07-17 International Business Machines Corporation Method, computer program product, and apparatus for optimally deploying iscsi sessions automatically
US7957398B1 (en) * 2007-03-05 2011-06-07 Emc Corporation Methods and systems for dynamic division of path capacity
JP2009009335A (ja) * 2007-06-27 2009-01-15 Hitachi Ltd ストレージシステム及びパス管理方法
US8204980B1 (en) * 2007-06-28 2012-06-19 Emc Corporation Storage array network path impact analysis server for path selection in a host-based I/O multi-path system
US9110597B2 (en) * 2007-12-10 2015-08-18 Hewlett-Packard Development Company, L.P. Data processing method and system
JP2009245379A (ja) * 2008-03-31 2009-10-22 Hitachi Ltd ストレージシステム及びストレージシステムの制御方法
US20100036981A1 (en) * 2008-08-08 2010-02-11 Raghavendra Ganesh Finding Hot Call Paths
US8166314B1 (en) 2008-12-30 2012-04-24 Emc Corporation Selective I/O to logical unit when encrypted, but key is not available or when encryption status is unknown
JP4845982B2 (ja) 2009-03-05 2011-12-28 株式会社日立製作所 情報処理装置、及びストレージシステムから取得した構成情報の管理方法
JP5182162B2 (ja) * 2009-03-10 2013-04-10 日本電気株式会社 計算機システム及びi/o制御方法
WO2010137065A1 (en) * 2009-05-26 2010-12-02 Hitachi, Ltd. Storage apparatus and method for controlling storage apparatus having a plurality of processor boards for better access performance
US8627015B2 (en) * 2009-07-31 2014-01-07 Emc Corporation Data processing system using cache-aware multipath distribution of storage commands among caching storage controllers
US8543758B2 (en) 2011-05-31 2013-09-24 Micron Technology, Inc. Apparatus including memory channel control circuit and related methods for relaying commands to logical units
JP5920114B2 (ja) * 2012-08-29 2016-05-18 富士通株式会社 ストレージ装置、ストレージ装置の制御方法及び制御プログラム
US9258242B1 (en) 2013-12-19 2016-02-09 Emc Corporation Path selection using a service level objective
RU2013156784A (ru) 2013-12-20 2015-06-27 ИЭмСи КОРПОРЕЙШН Способ и устройство выбора маршрута чтения и записи данных
WO2016121004A1 (ja) * 2015-01-27 2016-08-04 株式会社日立製作所 ストレージ装置
US10652206B1 (en) 2017-10-27 2020-05-12 EMC IP Holding Company LLC Storage system with network-wide configurable device names
US10757189B2 (en) 2018-04-30 2020-08-25 EMC IP Holding Company LLC Service level objection based input-output selection utilizing multi-path layer of host device
US10606496B1 (en) * 2018-09-26 2020-03-31 EMC IP Holding Company LLC Host device with multi-path layer implementing automatic standby setting for active-active configuration
US11050660B2 (en) 2018-09-28 2021-06-29 EMC IP Holding Company LLC Host device with multi-path layer implementing path selection based at least in part on fabric identifiers
US10754572B2 (en) 2018-10-09 2020-08-25 EMC IP Holding Company LLC Migrating control of a multi-path logical device from a current MPIO driver to a target MPIO driver
US11044313B2 (en) 2018-10-09 2021-06-22 EMC IP Holding Company LLC Categorizing host IO load pattern and communicating categorization to storage system
US10880217B2 (en) 2018-12-24 2020-12-29 EMC IP Holding Company LLC Host device with multi-path layer configured for detection and resolution of oversubscription conditions
US10754559B1 (en) 2019-03-08 2020-08-25 EMC IP Holding Company LLC Active-active storage clustering with clock synchronization
JP7348056B2 (ja) 2019-12-20 2023-09-20 株式会社日立製作所 ストレージシステム
US11099755B2 (en) 2020-01-06 2021-08-24 EMC IP Holding Company LLC Multipath device pseudo name to logical volume mapping for host devices
US11231861B2 (en) 2020-01-15 2022-01-25 EMC IP Holding Company LLC Host device with active-active storage aware path selection
US11461026B2 (en) 2020-01-21 2022-10-04 EMC IP Holding Company LLC Non-disruptive update of host multipath device dependency
US11520671B2 (en) 2020-01-29 2022-12-06 EMC IP Holding Company LLC Fast multipath failover
US11050825B1 (en) 2020-01-30 2021-06-29 EMC IP Holding Company LLC Storage system port usage information sharing between host devices
US11175840B2 (en) 2020-01-30 2021-11-16 EMC IP Holding Company LLC Host-based transfer of input-output operations from kernel space block device to user space block device
US11093144B1 (en) 2020-02-18 2021-08-17 EMC IP Holding Company LLC Non-disruptive transformation of a logical storage device from a first access protocol to a second access protocol
US11449257B2 (en) 2020-02-21 2022-09-20 EMC IP Holding Company LLC Host device with efficient automated seamless migration of logical storage devices across multiple access protocols
US11204699B2 (en) 2020-03-05 2021-12-21 EMC IP Holding Company LLC Storage system port maintenance information sharing with host device
US11397589B2 (en) 2020-03-06 2022-07-26 EMC IP Holding Company LLC Snapshot transmission from storage array to cloud using multi-path input-output
US11042327B1 (en) 2020-03-10 2021-06-22 EMC IP Holding Company LLC IO operation cloning using change information sharing with a storage system
US11265261B2 (en) 2020-03-18 2022-03-01 EMC IP Holding Company LLC Access path management based on path condition
US11368399B2 (en) 2020-03-27 2022-06-21 EMC IP Holding Company LLC Congestion aware multipathing based on network congestion notifications
US11080215B1 (en) 2020-03-31 2021-08-03 EMC IP Holding Company LLC Host device providing automated prediction of change intervals to reduce adverse impacts on applications
US11169941B2 (en) 2020-04-09 2021-11-09 EMC IP Holding Company LLC Host device with automated connectivity provisioning
US11366756B2 (en) 2020-04-13 2022-06-21 EMC IP Holding Company LLC Local cached data coherency in host devices using remote direct memory access
US11561699B2 (en) 2020-04-24 2023-01-24 EMC IP Holding Company LLC Input-output path selection using switch topology information
US11216200B2 (en) 2020-05-06 2022-01-04 EMC IP Holding Company LLC Partition utilization awareness of logical units on storage arrays used for booting
US11099754B1 (en) * 2020-05-14 2021-08-24 EMC IP Holding Company LLC Storage array with dynamic cache memory configuration provisioning based on prediction of input-output operations
US11175828B1 (en) 2020-05-14 2021-11-16 EMC IP Holding Company LLC Mitigating IO processing performance impacts in automated seamless migration
US11012512B1 (en) 2020-05-20 2021-05-18 EMC IP Holding Company LLC Host device with automated write throttling responsive to storage system write pressure condition
US11023134B1 (en) 2020-05-22 2021-06-01 EMC IP Holding Company LLC Addition of data services to an operating system running a native multi-path input-output architecture
US11151071B1 (en) 2020-05-27 2021-10-19 EMC IP Holding Company LLC Host device with multi-path layer distribution of input-output operations across storage caches
US11226851B1 (en) 2020-07-10 2022-01-18 EMC IP Holding Company LLC Execution of multipath operation triggered by container application
US11256446B1 (en) 2020-08-03 2022-02-22 EMC IP Holding Company LLC Host bus adaptor (HBA) virtualization aware multi-pathing failover policy
US11157432B1 (en) 2020-08-28 2021-10-26 EMC IP Holding Company LLC Configuration of block devices based on provisioning of logical volumes in a storage system
US11916938B2 (en) 2020-08-28 2024-02-27 EMC IP Holding Company LLC Anomaly detection and remediation utilizing analysis of storage area network access patterns
US11392459B2 (en) 2020-09-14 2022-07-19 EMC IP Holding Company LLC Virtualization server aware multi-pathing failover policy
US11320994B2 (en) 2020-09-18 2022-05-03 EMC IP Holding Company LLC Dynamic configuration change control in a storage system using multi-path layer notifications
US11397540B2 (en) 2020-10-12 2022-07-26 EMC IP Holding Company LLC Write pressure reduction for remote replication
US11032373B1 (en) 2020-10-12 2021-06-08 EMC IP Holding Company LLC Host-based bandwidth control for virtual initiators
US11630581B2 (en) 2020-11-04 2023-04-18 EMC IP Holding Company LLC Host bus adaptor (HBA) virtualization awareness for effective input-output load balancing
US11543971B2 (en) 2020-11-30 2023-01-03 EMC IP Holding Company LLC Array driven fabric performance notifications for multi-pathing devices
US11385824B2 (en) 2020-11-30 2022-07-12 EMC IP Holding Company LLC Automated seamless migration across access protocols for a logical storage device
US11204777B1 (en) 2020-11-30 2021-12-21 EMC IP Holding Company LLC Boot from SAN operation support on multi-pathing devices
US11397539B2 (en) 2020-11-30 2022-07-26 EMC IP Holding Company LLC Distributed backup using local access
US11620240B2 (en) 2020-12-07 2023-04-04 EMC IP Holding Company LLC Performance-driven access protocol switching for a logical storage device
US11409460B2 (en) 2020-12-08 2022-08-09 EMC IP Holding Company LLC Performance-driven movement of applications between containers utilizing multiple data transmission paths with associated different access protocols
US11455116B2 (en) 2020-12-16 2022-09-27 EMC IP Holding Company LLC Reservation handling in conjunction with switching between storage access protocols
US11651066B2 (en) 2021-01-07 2023-05-16 EMC IP Holding Company LLC Secure token-based communications between a host device and a storage system
US11308004B1 (en) 2021-01-18 2022-04-19 EMC IP Holding Company LLC Multi-path layer configured for detection and mitigation of slow drain issues in a storage area network
US11494091B2 (en) 2021-01-19 2022-11-08 EMC IP Holding Company LLC Using checksums for mining storage device access data
US11449440B2 (en) 2021-01-19 2022-09-20 EMC IP Holding Company LLC Data copy offload command support across multiple storage access protocols
US11467765B2 (en) 2021-01-20 2022-10-11 EMC IP Holding Company LLC Detection and mitigation of slow drain issues using response times and storage-side latency view
US11386023B1 (en) 2021-01-21 2022-07-12 EMC IP Holding Company LLC Retrieval of portions of storage device access data indicating access state changes
US11640245B2 (en) 2021-02-17 2023-05-02 EMC IP Holding Company LLC Logical storage device access in an encrypted storage environment
US11797312B2 (en) 2021-02-26 2023-10-24 EMC IP Holding Company LLC Synchronization of multi-pathing settings across clustered nodes
US11755222B2 (en) 2021-02-26 2023-09-12 EMC IP Holding Company LLC File based encryption for multi-pathing devices
US11928365B2 (en) 2021-03-09 2024-03-12 EMC IP Holding Company LLC Logical storage device access using datastore-level keys in an encrypted storage environment
US11294782B1 (en) 2021-03-22 2022-04-05 EMC IP Holding Company LLC Failover affinity rule modification based on node health information
US11782611B2 (en) 2021-04-13 2023-10-10 EMC IP Holding Company LLC Logical storage device access using device-specific keys in an encrypted storage environment
US11422718B1 (en) 2021-05-03 2022-08-23 EMC IP Holding Company LLC Multi-path layer configured to provide access authorization for software code of multi-path input-output drivers
US11550511B2 (en) 2021-05-21 2023-01-10 EMC IP Holding Company LLC Write pressure throttling based on service level objectives
US11822706B2 (en) 2021-05-26 2023-11-21 EMC IP Holding Company LLC Logical storage device access using device-specific keys in an encrypted storage environment
US11625232B2 (en) 2021-06-07 2023-04-11 EMC IP Holding Company LLC Software upgrade management for host devices in a data center
US11526283B1 (en) 2021-06-08 2022-12-13 EMC IP Holding Company LLC Logical storage device access using per-VM keys in an encrypted storage environment
US11762588B2 (en) 2021-06-11 2023-09-19 EMC IP Holding Company LLC Multi-path layer configured to access storage-side performance metrics for load balancing policy control
US11954344B2 (en) 2021-06-16 2024-04-09 EMC IP Holding Company LLC Host device comprising layered software architecture with automated tiering of logical storage devices
US11750457B2 (en) 2021-07-28 2023-09-05 Dell Products L.P. Automated zoning set selection triggered by switch fabric notifications
US11625308B2 (en) 2021-09-14 2023-04-11 Dell Products L.P. Management of active-active configuration using multi-pathing software
US11586356B1 (en) 2021-09-27 2023-02-21 Dell Products L.P. Multi-path layer configured for detection and mitigation of link performance issues in a storage area network
US11656987B2 (en) 2021-10-18 2023-05-23 Dell Products L.P. Dynamic chunk size adjustment for cache-aware load balancing
US11418594B1 (en) 2021-10-20 2022-08-16 Dell Products L.P. Multi-path layer configured to provide link availability information to storage system for load rebalancing
US11567669B1 (en) 2021-12-09 2023-01-31 Dell Products L.P. Dynamic latency management of active-active configurations using multi-pathing software
US11620054B1 (en) 2022-04-21 2023-04-04 Dell Products L.P. Proactive monitoring and management of storage system input-output operation limits
US11789624B1 (en) 2022-05-31 2023-10-17 Dell Products L.P. Host device with differentiated alerting for single points of failure in distributed storage systems
US11886711B2 (en) 2022-06-16 2024-01-30 Dell Products L.P. Host-assisted IO service levels utilizing false-positive signaling
US11934659B1 (en) 2022-09-28 2024-03-19 Dell Products L.P. Host background copy process with rate adjustment utilizing input-output processing pressure feedback from storage system

Citations (13)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
JP2000194650A (ja) * 1998-12-28 2000-07-14 Nec Corp デ―タ処理負荷分散システム
JP2000330924A (ja) * 1999-05-19 2000-11-30 Nec Corp ストレージデバイスのマルチパスシステム
JP2002007304A (ja) * 2000-06-23 2002-01-11 Hitachi Ltd ストレージエリアネットワークを用いた計算機システム及びそのデータ取り扱い方法
US20020019909A1 (en) * 1998-06-30 2002-02-14 D'errico Matthew J. Method and apparatus for managing virtual storage devices in a storage system
JP2002278905A (ja) * 2001-03-19 2002-09-27 Toshiba Corp ストレージ装置及び計算機ネットワークシステム
JP2002278909A (ja) * 2001-03-19 2002-09-27 Toshiba Corp 管理パス切り替え方法及び管理パス切り替えが可能な高可用性ストレージシステム
JP2002533831A (ja) * 1998-12-31 2002-10-08 イーエムシー コーポレーション マルチパス・コンピュータ・システムにおけるパス間でワークロードのバランスを取る方法および装置
JP2002312126A (ja) * 2001-04-18 2002-10-25 Hitachi Ltd 磁気ディスク装置間結合装置
JP2003131814A (ja) * 2001-10-25 2003-05-09 Hitachi Ltd ディスクアレイシステム
JP2004145855A (ja) * 2002-08-29 2004-05-20 Hitachi Ltd 記憶装置システム及びデータ複製方法
JP2004171172A (ja) * 2002-11-19 2004-06-17 Hitachi Ltd プロセッサ負荷制御機能をもつ記憶制御装置
WO2004057798A1 (en) * 2002-12-20 2004-07-08 International Business Machines Corporation Secure system and method for san management in a non-trusted server environment
US6766359B1 (en) * 1999-12-29 2004-07-20 Emc Corporation Method and apparatus for utilizing multiple paths in a file transfer utility employing an intermediate data storage system

Family Cites Families (13)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US4633387A (en) * 1983-02-25 1986-12-30 International Business Machines Corporation Load balancing in a multiunit system
US5239649A (en) * 1989-10-30 1993-08-24 International Business Machines Corporation Channel path load balancing, through selection of storage volumes to be processed, for long running applications
JP3726484B2 (ja) * 1998-04-10 2005-12-14 株式会社日立製作所 記憶サブシステム
US6601128B1 (en) * 2000-05-02 2003-07-29 International Business Machines Corporation Method, system, program, and data structure for selecting a preferred path to a storage device
JP4104283B2 (ja) 2000-12-19 2008-06-18 株式会社日立製作所 記憶サブシステム及び情報処理システム
US6802021B1 (en) * 2001-01-23 2004-10-05 Adaptec, Inc. Intelligent load balancing for a multi-path storage system
JP2003099384A (ja) 2001-09-20 2003-04-04 Nec Corp 負荷分散システム、負荷分散システムのホストコンピュータ、及び負荷分散プログラム
US7307948B2 (en) * 2002-10-21 2007-12-11 Emulex Design & Manufacturing Corporation System with multiple path fail over, fail back and load balancing
JP3961410B2 (ja) 2002-11-29 2007-08-22 株式会社日立製作所 情報処理装置、プログラム、情報処理システム、及び情報処理装置の制御方法
JP2004185327A (ja) 2002-12-03 2004-07-02 Hitachi Ltd 情報処理装置、プログラム、情報処理システム、及び情報処理装置の制御方法
JP2005010956A (ja) 2003-06-17 2005-01-13 Hitachi Ltd 情報処理装置の制御方法、情報処理装置、情報処理システム、及びプログラム
JP4452064B2 (ja) * 2003-11-18 2010-04-21 株式会社日立製作所 情報処理システム、情報処理装置、情報処理装置の制御方法及びプログラム
US7467224B2 (en) * 2004-02-17 2008-12-16 At&T Intellectual Property Ii, L.P. Load balancing techniques for inter-domain traffic engineering

Patent Citations (13)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US20020019909A1 (en) * 1998-06-30 2002-02-14 D'errico Matthew J. Method and apparatus for managing virtual storage devices in a storage system
JP2000194650A (ja) * 1998-12-28 2000-07-14 Nec Corp デ―タ処理負荷分散システム
JP2002533831A (ja) * 1998-12-31 2002-10-08 イーエムシー コーポレーション マルチパス・コンピュータ・システムにおけるパス間でワークロードのバランスを取る方法および装置
JP2000330924A (ja) * 1999-05-19 2000-11-30 Nec Corp ストレージデバイスのマルチパスシステム
US6766359B1 (en) * 1999-12-29 2004-07-20 Emc Corporation Method and apparatus for utilizing multiple paths in a file transfer utility employing an intermediate data storage system
JP2002007304A (ja) * 2000-06-23 2002-01-11 Hitachi Ltd ストレージエリアネットワークを用いた計算機システム及びそのデータ取り扱い方法
JP2002278905A (ja) * 2001-03-19 2002-09-27 Toshiba Corp ストレージ装置及び計算機ネットワークシステム
JP2002278909A (ja) * 2001-03-19 2002-09-27 Toshiba Corp 管理パス切り替え方法及び管理パス切り替えが可能な高可用性ストレージシステム
JP2002312126A (ja) * 2001-04-18 2002-10-25 Hitachi Ltd 磁気ディスク装置間結合装置
JP2003131814A (ja) * 2001-10-25 2003-05-09 Hitachi Ltd ディスクアレイシステム
JP2004145855A (ja) * 2002-08-29 2004-05-20 Hitachi Ltd 記憶装置システム及びデータ複製方法
JP2004171172A (ja) * 2002-11-19 2004-06-17 Hitachi Ltd プロセッサ負荷制御機能をもつ記憶制御装置
WO2004057798A1 (en) * 2002-12-20 2004-07-08 International Business Machines Corporation Secure system and method for san management in a non-trusted server environment

Also Published As

Publication number Publication date
US7120912B2 (en) 2006-10-10
EP1621992A2 (en) 2006-02-01
EP1621992A3 (en) 2008-12-03
US20060026346A1 (en) 2006-02-02
JP2006040026A (ja) 2006-02-09

Similar Documents

Publication Publication Date Title
JP4643198B2 (ja) 負荷分散コンピュータシステム、経路設定プログラム及びその方法
JP4609848B2 (ja) 負荷分散コンピュータシステム、経路設定プログラム及びその方法
US9104316B2 (en) Runtime dynamic performance skew elimination
US8850152B2 (en) Method of data migration and information storage system
EP2399190B1 (en) Storage system and method for operating storage system
US10108460B2 (en) Method and system for integrated deployment planning for virtual appliances
US8713577B2 (en) Storage apparatus and storage apparatus management method performing data I/O processing using a plurality of microprocessors
US20190129971A1 (en) Storage system and method of controlling storage system
US20110208937A1 (en) Storage system, control methods for the same and programs
US10664182B2 (en) Storage system
WO2014178104A1 (ja) 計算機システム及び非同期リモートレプリケーションの分析を支援する方法
US20120297156A1 (en) Storage system and controlling method of the same
US9632945B2 (en) Destage grouping for sequential fast write tracks
US20130024734A1 (en) Storage control apparatus and control method of storage control apparatus
US10824566B2 (en) Storage device, controlling method of storage device, and storage device controller having predetermined management information including face attribute information, a controller number, and transition method information
US8041917B2 (en) Managing server, pool adding method and computer system
US11755438B2 (en) Automatic failover of a software-defined storage controller to handle input-output operations to and from an assigned namespace on a non-volatile memory device
US11768744B2 (en) Alerting and managing data storage system port overload due to host path failures
US8990523B1 (en) Storage apparatus and its data processing method
US11550489B2 (en) Storage system and processing migration method
US11586516B2 (en) Storage system, storage device, and storage device management method

Legal Events

Date Code Title Description
A621 Written request for application examination

Free format text: JAPANESE INTERMEDIATE CODE: A621

Effective date: 20070515

A977 Report on retrieval

Free format text: JAPANESE INTERMEDIATE CODE: A971007

Effective date: 20100219

A131 Notification of reasons for refusal

Free format text: JAPANESE INTERMEDIATE CODE: A131

Effective date: 20100302

A521 Written amendment

Free format text: JAPANESE INTERMEDIATE CODE: A523

Effective date: 20100420

A131 Notification of reasons for refusal

Free format text: JAPANESE INTERMEDIATE CODE: A131

Effective date: 20100914

A521 Written amendment

Free format text: JAPANESE INTERMEDIATE CODE: A523

Effective date: 20101004

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

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

R150 Certificate of patent or registration of utility model

Free format text: JAPANESE INTERMEDIATE CODE: R150

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

Free format text: PAYMENT UNTIL: 20131210

Year of fee payment: 3

S111 Request for change of ownership or part of ownership

Free format text: JAPANESE INTERMEDIATE CODE: R313117

R350 Written notification of registration of transfer

Free format text: JAPANESE INTERMEDIATE CODE: R350

LAPS Cancellation because of no payment of annual fees