JP5874933B2 - Path control device, path control method, and path control program - Google Patents

Path control device, path control method, and path control program Download PDF

Info

Publication number
JP5874933B2
JP5874933B2 JP2013014510A JP2013014510A JP5874933B2 JP 5874933 B2 JP5874933 B2 JP 5874933B2 JP 2013014510 A JP2013014510 A JP 2013014510A JP 2013014510 A JP2013014510 A JP 2013014510A JP 5874933 B2 JP5874933 B2 JP 5874933B2
Authority
JP
Japan
Prior art keywords
controller
storage unit
host device
controllers
unit
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
JP2013014510A
Other languages
Japanese (ja)
Other versions
JP2014146180A (en
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.)
NEC Corp
Original Assignee
NEC 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 NEC Corp filed Critical NEC Corp
Priority to JP2013014510A priority Critical patent/JP5874933B2/en
Publication of JP2014146180A publication Critical patent/JP2014146180A/en
Application granted granted Critical
Publication of JP5874933B2 publication Critical patent/JP5874933B2/en
Expired - Fee Related legal-status Critical Current
Anticipated expiration legal-status Critical

Links

Images

Landscapes

  • Debugging And Monitoring (AREA)

Description

本発明はパス制御装置、パス制御方法、およびパス制御プログラムに関し、特に、マルチパス構成のストレージ装置におけるパス制御装置、パス制御方法、およびパス制御プログラムに関する。   The present invention relates to a path control device, a path control method, and a path control program, and more particularly to a path control device, a path control method, and a path control program in a multipath storage device.

ホスト装置に接続される複数のコントローラを備えることで冗長性を確保するストレージ装置において、コントローラに障害が発生した場合に、コントローラの切り替えを行うストレージ装置の例が、例えば特許文献1や特許文献2に記載されている。   Examples of storage devices that switch controllers when a failure occurs in a controller in a storage device that secures redundancy by providing a plurality of controllers connected to the host device are, for example, Patent Document 1 and Patent Document 2 It is described in.

特許文献1の記憶装置システムは、記憶装置のグループに対して、フェールオーバー可能なインタフェース装置群を含む。あるインタフェース装置に障害が発生した場合、そのインタフェース装置と同一のインタフェース装置群に含まれるインタフェース装置が処理を引き継ぐ。インタフェース装置群に含まれる全てのインタフェース装置に対して、そのインタフェース装置群に含まれる他の1台のインタフェース装置が、処理を引き継ぐインタフェース装置として設定されている。処理を引き継ぐインタフェース装置は、障害が発生したインタフェース装置の処理を引き継ぐインタフェース装置として設定されているインタフェース装置である。あるいは、処理を引き継ぐインタフェース装置は、障害が発生したインタフェース装置が含まれるインタフェース装置群の中で最も稼働率が低い正常なインタフェース装置である。   The storage device system of Patent Document 1 includes an interface device group that can be failed over to a group of storage devices. When a failure occurs in a certain interface device, the interface device included in the same interface device group as that interface device takes over the processing. For all interface devices included in the interface device group, another one interface device included in the interface device group is set as an interface device that takes over processing. The interface device that takes over the processing is an interface device that is set as an interface device that takes over the processing of the interface device in which the failure has occurred. Alternatively, the interface device that takes over the processing is a normal interface device having the lowest operating rate in the interface device group including the interface device in which the failure has occurred.

特許文献2には、2つのパスでホストに接続されたストレージ装置が記載されている。ストレージ装置のコントローラは、タイムアウト、アボート、リセットなどの軽度障害の発生回数をカウントする。そしえt、ストレージ装置のコントローラは、通信に使用中のパスで所定の閾値以上の回数の軽度障害が発生した場合、ホストからのアクセスに対する応答としてハードウェアエラーを返す。ハードウェアエラーを受信したホストは、通信パスを他方のパスに切り替える。   Patent Document 2 describes a storage device connected to a host by two paths. The controller of the storage apparatus counts the number of occurrences of minor faults such as timeout, abort, and reset. Then, the controller of the storage apparatus returns a hardware error as a response to the access from the host when a minor failure of the number of times greater than or equal to a predetermined threshold occurs in the path being used for communication. The host that has received the hardware error switches the communication path to the other path.

特開2003−208362号公報JP 2003-208362 A 特開2006−107151号公報JP 2006-107151 A

ホスト装置から記憶ユニットへのアクセスを中継する複数のコントローラと、複数の記憶ユニットを含むストレージ装置には、記憶ユニットへのアクセス性能がコントローラによって異なるストレージ装置がある。   Among a plurality of controllers that relay access from a host device to a storage unit and a storage device that includes a plurality of storage units, there are storage devices that have different access performance to the storage unit depending on the controller.

しかし、特許文献1および特許文献2の装置は、各コントローラの記憶ユニットへのアクセス性能の違いには関係なく、コントローラの切り替えを行う。従って、特許文献1及び特許文献2の装置は、記憶ユニットに対する複数のコントローラのアクセス性能が異なるストレージ装置に対する、アクセス時に経由するコントローラを障害により変更する場合の、アクセス性能の低下を軽減することができない。   However, the devices of Patent Literature 1 and Patent Literature 2 switch controllers regardless of the difference in access performance to the storage unit of each controller. Therefore, the devices of Patent Literature 1 and Patent Literature 2 can reduce a decrease in access performance when a controller that is accessed at the time of access to a storage device having different access performances of a plurality of controllers for a storage unit is changed due to a failure. Can not.

本発明の目的は、記憶ユニットに対する複数のコントローラのアクセス性能が異なるストレージ装置に対する、アクセス時に経由するコントローラを障害により変更する場合の、アクセス性能の低下を軽減するパス制御装置を提供することにある。   It is an object of the present invention to provide a path control device that reduces a decrease in access performance when a storage device having different access performance of a plurality of controllers with respect to a storage unit is changed due to a failure. .

本発明のパス制御装置は、記憶ユニットとホスト装置とに接続され、前記記憶ユニットと前記ホスト装置との間のデータ転送を行う複数のコントローラのそれぞれと、前記ホスト装置との間の通信の障害の有無を検出する監視手段と、前記コントローラの各々の優先順位を記憶する優先順位記憶手段と、通信の障害が検出されない前記コントローラで、前記優先順位が最も高い前記コントローラを選択する選択手段と、前記記憶ユニットに対するアクセスを、識別子を通知された前記コントローラを経由して行う前記ホスト装置に、選択された前記コントローラの識別子を通知する通知手段とを含む。   The path control device of the present invention is connected to a storage unit and a host device, and each of a plurality of controllers that perform data transfer between the storage unit and the host device and a failure in communication between the host device Monitoring means for detecting the presence or absence, priority storage means for storing the priority of each of the controllers, selection means for selecting the controller having the highest priority among the controllers in which no communication failure is detected, Notification means for notifying an identifier of the selected controller to the host device that performs access to the storage unit via the controller notified of the identifier.

本発明のパス制御方法は、記憶ユニットとホスト装置とに接続され、前記記憶ユニットと前記ホスト装置との間のデータ転送を行う複数のコントローラのそれぞれと、前記ホスト装置との間の通信の障害の有無を検出し、前記コントローラの各々の優先順位を優先順位記憶手段に記憶し、通信の障害が検出されない前記コントローラで、前記優先順位が最も高い前記コントローラを選択し、前記記憶ユニットに対するアクセスを、識別子を通知された前記コントローラを経由して行う前記ホスト装置に、選択された前記コントローラの識別子を通知する。   According to the path control method of the present invention, a failure in communication between each of a plurality of controllers connected to a storage unit and a host device and performing data transfer between the storage unit and the host device, and the host device The priority of each of the controllers is stored in the priority storage means, and the controller having the highest priority is selected from the controllers in which no communication failure is detected, and the storage unit is accessed. Then, the identifier of the selected controller is notified to the host device that is transmitted via the controller that has been notified of the identifier.

本発明のパス制御プログラムは、コンピュータを、記憶ユニットとホスト装置とに接続され、前記記憶ユニットと前記ホスト装置との間のデータ転送を行う複数のコントローラのそれぞれと、前記ホスト装置との間の通信の障害の有無を検出する監視手段と、前記コントローラの各々の優先順位を記憶する優先順位記憶手段と、通信の障害が検出されない前記コントローラで、前記優先順位が最も高い前記コントローラを選択する選択手段と、前記記憶ユニットに対するアクセスを、識別子を通知された前記コントローラを経由して行う前記ホスト装置に、選択された前記コントローラの識別子を通知する通知手段として動作させる。   The path control program according to the present invention includes a computer connected between a storage unit and a host device, and each of a plurality of controllers that perform data transfer between the storage unit and the host device, and the host device. A selection unit that selects the controller having the highest priority among the monitoring unit that detects the presence or absence of a communication failure, the priority storage unit that stores the priority of each of the controllers, and the controller that does not detect a communication failure. And the host device that performs access to the storage unit via the controller that has been notified of the identifier is operated as a notification unit that notifies the identifier of the selected controller.

本発明には、記憶ユニットに対する複数のコントローラのアクセス性能が異なるストレージ装置に対する、アクセス時に経由するコントローラを障害により変更する場合の、アクセス性能の低下を軽減することができるという効果がある。   The present invention has an effect that it is possible to reduce a decrease in access performance when a controller that is accessed at the time of access to a storage apparatus with different access performance of a plurality of controllers with respect to a storage unit is changed due to a failure.

図1は、第1の実施形態の情報処理システム100の構成を表す図である。FIG. 1 is a diagram illustrating a configuration of an information processing system 100 according to the first embodiment. 図2は、コントローラ20の構成の例を表す図である。FIG. 2 is a diagram illustrating an example of the configuration of the controller 20. 図3は、第1の実施形態の本実施形態のパス制御装置1の、優先順位決定時の動作の例を表すフローチャートである。FIG. 3 is a flowchart showing an example of the operation at the time of priority determination of the path control device 1 of the present embodiment of the first embodiment. 図4は、優先順位記憶部11が記憶する各コントローラ20の優先順位の例を表す図である。FIG. 4 is a diagram illustrating an example of the priority order of each controller 20 stored in the priority order storage unit 11. 図5は、第1の実施形態のパス制御装置1の、障害検出時の動作の例を表すフローチャートである。FIG. 5 is a flowchart illustrating an example of an operation when a failure is detected in the path control device 1 according to the first embodiment. 図6は、コントローラ20が記憶する、管理テーブルの例を表す図である。FIG. 6 is a diagram illustrating an example of a management table stored in the controller 20. 図7は、コントローラ20が記憶する、管理テーブルの例を表す図である。FIG. 7 is a diagram illustrating an example of a management table stored in the controller 20. 図8は、コントローラ20が記憶する、管理テーブルの例を表す図である。FIG. 8 is a diagram illustrating an example of a management table stored in the controller 20. 図9は、コントローラ20が記憶する、管理テーブルの例を表す図である。FIG. 9 is a diagram illustrating an example of a management table stored in the controller 20. 図10は、コントローラ20が記憶する、管理テーブルの例を表す図である。FIG. 10 is a diagram illustrating an example of a management table stored in the controller 20. 図11は、第2の実施形態のパス制御装置1Aの構成を表す図である。FIG. 11 is a diagram illustrating the configuration of the path control device 1A according to the second embodiment.

次に、本発明の第1の実施の形態について図面を参照して詳細に説明する。   Next, a first embodiment of the present invention will be described in detail with reference to the drawings.

図1は、本実施形態の情報処理システム100の構成を表す図である。   FIG. 1 is a diagram illustrating a configuration of an information processing system 100 according to the present embodiment.

図1を参照すると、情報処理システム100は、パス制御装置1と、ストレージシステム2と、ホスト装置3を含む。情報処理システム100は、ストレージシステム2に接続された保守端末5を含んでいてもよい。   Referring to FIG. 1, the information processing system 100 includes a path control device 1, a storage system 2, and a host device 3. The information processing system 100 may include a maintenance terminal 5 connected to the storage system 2.

パス制御装置1は、監視部10と、優先順位記憶部11と、選択部12と、通知部13と、優先順位決定部14を含む。   The path control device 1 includes a monitoring unit 10, a priority order storage unit 11, a selection unit 12, a notification unit 13, and a priority order determination unit 14.

ストレージシステム2は、複数のコントローラ20と、記憶装置22を含む。記憶装置22は、1個以上の、ハードディスクドライブやその他の物理的な記憶装置で構成される。記憶装置22は、記憶ユニット21を含む。記憶装置22は、複数の記憶ユニット21を含んでいてもよい。記憶ユニット21は、前述の物理的な記憶装置であっても、1個以上の物理的な記憶装置上に構成された論理的なボリュームであってもよい。   The storage system 2 includes a plurality of controllers 20 and a storage device 22. The storage device 22 is composed of one or more hard disk drives and other physical storage devices. The storage device 22 includes a storage unit 21. The storage device 22 may include a plurality of storage units 21. The storage unit 21 may be the above-described physical storage device or a logical volume configured on one or more physical storage devices.

それぞれのコントローラ20とそれぞれのホスト装置3は、互いにアクセスすることができるよう接続されている。コントローラ20とホスト装置3は、直接接続されていてもよい。コントローラ20とホスト装置3は、例えばスイッチ装置4を介して接続されていてもよい。複数のスイッチ装置4が、コントローラ20とホスト装置3の間に接続されていてもよい。コントローラ20とホスト装置3は、ネットワークを介して接続されていてもよい。   Each controller 20 and each host device 3 are connected so that they can access each other. The controller 20 and the host device 3 may be directly connected. The controller 20 and the host device 3 may be connected via, for example, the switch device 4. A plurality of switch devices 4 may be connected between the controller 20 and the host device 3. The controller 20 and the host device 3 may be connected via a network.

それぞれのコントローラ20とそれぞれの記憶ユニット21は、コントローラ20が各記憶ユニット21にアクセスできるよう接続されている。   Each controller 20 and each storage unit 21 are connected so that the controller 20 can access each storage unit 21.

コントローラ20は、各ホスト装置3と、各記憶ユニット21との間の、データの転送を中継する。   The controller 20 relays data transfer between each host device 3 and each storage unit 21.

本実施形態では、記憶ユニット21に対するアクセス性能は、記憶ユニット21とその記憶ユニット21へのアクセス時に経由するコントローラ20の組み合わせによって異なる。ストレージシステム2は、記憶ユニット21への最適な経路として、通常、その記憶ユニット21へのアクセス性能が最も高いコントローラ20の識別子を、記憶ユニット21毎に保持している。後述のように、パス制御装置1が最適な経路の設定を行う。各ホスト装置3は、ストレージシステム2に対して、記憶ユニット21へのアクセスの最適な経路の問い合わせを行う。ストレージシステム2は、問い合わせを行ったホスト装置3に対して、その記憶ユニット21への最適な経路として設定されているコントローラ20の識別子を送信する。ホスト装置3は、上述の問い合わせを、例えば、ストレージシステム2の全てのコントローラ20に対して送信する。そして、例えば、最適な経路として設定されているコントローラ20が、識別子の返送を行う。ホスト装置3は、識別子を受信したコントローラ20を経由して、記憶ユニット21へのアクセスを行う。   In the present embodiment, the access performance for the storage unit 21 differs depending on the combination of the storage unit 21 and the controller 20 that is passed through when accessing the storage unit 21. The storage system 2 normally holds, for each storage unit 21, the identifier of the controller 20 having the highest access performance to the storage unit 21 as the optimum path to the storage unit 21. As will be described later, the path control device 1 sets an optimum route. Each host device 3 inquires of the storage system 2 about an optimum route for access to the storage unit 21. The storage system 2 transmits the identifier of the controller 20 set as the optimum path to the storage unit 21 to the inquiring host device 3. The host device 3 transmits the above inquiry to, for example, all the controllers 20 of the storage system 2. For example, the controller 20 set as the optimum route returns the identifier. The host device 3 accesses the storage unit 21 via the controller 20 that has received the identifier.

パス制御装置1は、ストレージシステム2に含まれていてもよい。パス制御装置1は、いずれか又は全てのコントローラ20に含まれていてもよい。パス制御装置1が複数のコントローラ20に含まれている場合、所定のコントローラ20に含まれるパス制御装置1が、後述の動作を行えばよい。この場合、例えば、動作中のパス制御装置1を含むコントローラ20の障害の有無を他のコントローラ20が監視し、障害が検出されると、障害を検出したコントローラ20が含むパス制御装置1が動作を引き継げばよい。動作を引き継ぐパス制御装置1を含むコントローラ20の選択の方法は、任意でよい。例えば、各コントローラ20に、パス制御装置1の動作を引き継ぐ順番を設定しておけばよい。   The path control device 1 may be included in the storage system 2. The path control device 1 may be included in any or all of the controllers 20. When the path control device 1 is included in the plurality of controllers 20, the path control device 1 included in the predetermined controller 20 may perform the operation described later. In this case, for example, the other controller 20 monitors the presence or absence of a failure of the controller 20 including the operating path control device 1, and when a failure is detected, the path control device 1 included in the controller 20 that has detected the failure operates. Can be taken over. A method of selecting the controller 20 including the path control device 1 that takes over the operation may be arbitrary. For example, the order of taking over the operation of the path control device 1 may be set in each controller 20.

パス制御装置1は、監視部10と、優先順位記憶部11と、選択部12と、通知部13と、優先順位決定部14を含む。   The path control device 1 includes a monitoring unit 10, a priority order storage unit 11, a selection unit 12, a notification unit 13, and a priority order determination unit 14.

監視部10は、記憶ユニット21とホスト装置3との間のデータ転送を行う複数のコントローラ20のそれぞれと、ホスト装置3との間の通信の障害の有無を、コントローラ20毎に検出する。   The monitoring unit 10 detects, for each controller 20, the presence or absence of a communication failure between each of the plurality of controllers 20 that perform data transfer between the storage unit 21 and the host device 3 and the host device 3.

優先順位記憶部11は、コントローラ20の各々の優先順位を、記憶ユニット21毎に記憶する。   The priority storage unit 11 stores the priority of each controller 20 for each storage unit 21.

選択部12は、ホスト装置3の各々に対して通信の障害が検出されないコントローラ20で、優先順位が最も高いコントローラ20を、記憶ユニット21毎に選択する。   The selection unit 12 selects, for each storage unit 21, the controller 20 having the highest priority among the controllers 20 in which no communication failure is detected for each of the host devices 3.

通知部13は、ホスト装置3に、記憶ユニット21に対するアクセスを、選択されたコントローラ20を経由して行うよう通知する。   The notification unit 13 notifies the host device 3 to access the storage unit 21 via the selected controller 20.

いずれかのホスト装置3とコントローラ20との間に通信の障害が発生している場合、そのコントローラ20を経由する、他のホスト装置3と記憶ユニット21との間のデータ転送に支障をきたすおそれがある。従って、選択部12は、いずれかのホスト装置3に対する通信に障害が検出されたコントローラ20を、記憶ユニット21に対するアクセスの際経由するコントローラ20として選択しない。   When a communication failure occurs between any of the host devices 3 and the controller 20, there is a risk of hindering data transfer between the other host devices 3 and the storage unit 21 via the controller 20. There is. Therefore, the selection unit 12 does not select the controller 20 in which a failure has been detected in communication with any of the host devices 3 as the controller 20 through which the storage unit 21 is accessed.

優先順位決定部14は、記憶ユニット21の各々に対するアクセス性能を計測するコントローラ20の各々から、計測されたアクセス性能を取得する。そして、優先順位決定部14は、取得されたアクセス性能が高いほど優先順位が高くなるよう、記憶ユニット21毎に、コントローラ20の各々の優先順位を決定する。優先順位決定部14は、記憶ユニット21の識別子とコントローラ20毎の決定された優先順位を対応付けて、優先順位記憶部11に格納する。優先順位決定部14は、さらに、記憶ユニット21毎の各コントローラ20の優先順位を、各コントローラ20に送信してもよい。   The priority order determination unit 14 acquires the measured access performance from each of the controllers 20 that measure the access performance for each of the storage units 21. The priority order determination unit 14 determines the priority order of each controller 20 for each storage unit 21 so that the higher the acquired access performance, the higher the priority order. The priority order determination unit 14 associates the identifier of the storage unit 21 with the priority order determined for each controller 20 and stores them in the priority order storage unit 11. The priority order determination unit 14 may further transmit the priority order of each controller 20 for each storage unit 21 to each controller 20.

図2は、コントローラ20の構成の例を表す図である。   FIG. 2 is a diagram illustrating an example of the configuration of the controller 20.

図2を参照すると、コントローラ20は、第1のインタフェース部201と、転送部202と、第2のインタフェース部203と、管理テーブル記憶部204と、アクセス性能測定部205を含む。   Referring to FIG. 2, the controller 20 includes a first interface unit 201, a transfer unit 202, a second interface unit 203, a management table storage unit 204, and an access performance measurement unit 205.

第1のインタフェース部201は、転送部202と各ホスト装置3との間で、データの転送を行う。   The first interface unit 201 transfers data between the transfer unit 202 and each host device 3.

転送部202は、第1のインタフェース部201と第2のインタフェース部203との間のデータの転送を中継する。また、転送部202は、コントローラ20と各ホスト装置3の間の通信の障害の有無を検出する。転送部202は、各ホスト装置3からコントローラ20に送信されるコマンドの有無にを検出することにより、通信の障害の有無を検出すればよい。転送部202は、例えば、過去の所定時間内にホスト装置3からのコマンドが検出された場合、そのホスト装置3とコントローラ20の間に通信の障害がないと判定する。また、転送部202は、例えば、過去の所定時間内にホスト装置3からのコマンドが検出されない場合、そのホスト装置3とコントローラ20の間に通信の障害があると判定する。そして、転送部202は、ホスト装置3毎の、検出された通信の障害の有無を、管理テーブル記憶部204に格納する。転送部202が検出するコマンドは、最適な経路の問い合わせ、データの書き込み、データの読み出しなどのコマンドを含んでいればよい。   The transfer unit 202 relays data transfer between the first interface unit 201 and the second interface unit 203. Further, the transfer unit 202 detects whether there is a communication failure between the controller 20 and each host device 3. The transfer unit 202 may detect the presence or absence of a communication failure by detecting the presence or absence of a command transmitted from each host device 3 to the controller 20. For example, when a command from the host device 3 is detected within a predetermined time in the past, the transfer unit 202 determines that there is no communication failure between the host device 3 and the controller 20. For example, when a command from the host device 3 is not detected within a predetermined time in the past, the transfer unit 202 determines that there is a communication failure between the host device 3 and the controller 20. Then, the transfer unit 202 stores in the management table storage unit 204 the presence or absence of the detected communication failure for each host device 3. The command detected by the transfer unit 202 only needs to include commands such as an inquiry about an optimum path, data writing, and data reading.

第2のインタフェース部203は、転送部202と各記憶ユニット21との間で、データの転送を行う。   The second interface unit 203 transfers data between the transfer unit 202 and each storage unit 21.

管理テーブル記憶部204は、ホスト装置3毎に、ホスト装置3とコントローラ20との間の障害の有無を記憶する。また、管理テーブル記憶部204は、ホスト装置3毎に、ホスト装置3によるストレージシステム2の使用の有無を記憶する。さらに、管理テーブル記憶部204は、記憶ユニット21毎に、コントローラ20を経由する経路が、記憶ユニット21に対する最適なアクセス経路であるか、非最適なアクセス経路であるかを記憶する。コントローラ20は、ホスト装置3から、記憶ユニット21に対する最適な経路の問い合わせを受信すると、例えば自身が最適である場合に、問い合わせを行ったホスト装置3に、返答を行う。管理テーブル記憶部204は、記憶ユニット21毎に、コントローラ20の優先順位を記憶してもよい。   The management table storage unit 204 stores the presence / absence of a failure between the host device 3 and the controller 20 for each host device 3. Further, the management table storage unit 204 stores, for each host device 3, whether or not the storage system 2 is used by the host device 3. Further, the management table storage unit 204 stores, for each storage unit 21, whether the route passing through the controller 20 is an optimal access route or a non-optimal access route for the storage unit 21. When the controller 20 receives an inquiry about the optimum path from the host device 3 to the storage unit 21, for example, when the controller 20 itself is optimum, the controller 20 sends a response to the inquiring host device 3. The management table storage unit 204 may store the priority order of the controller 20 for each storage unit 21.

管理テーブル記憶部204が記憶する優先順位は、例えば、管理者により管理端末5から入力される。あるいは、管理テーブル記憶部204が記憶する優先順位は、例えば、パス制御装置1の通知部13により入力される。   The priority order stored in the management table storage unit 204 is input from the management terminal 5 by an administrator, for example. Alternatively, the priority order stored in the management table storage unit 204 is input by the notification unit 13 of the path control device 1, for example.

前述の監視部10は、例えば、管理テーブル記憶部204から各ホスト装置3に対応する障害の有無を読み出すことにより、コントローラ20と各ホスト装置3の間の通信の障害を検出する。   The monitoring unit 10 described above detects a communication failure between the controller 20 and each host device 3 by, for example, reading the presence / absence of a failure corresponding to each host device 3 from the management table storage unit 204.

アクセス性能測定部205は、記憶ユニット21毎に、コントローラ20と記憶ユニット21の間のアクセス性能を測定する。そして、アクセス性能測定部205は、測定された記憶ユニット21毎のアクセス性能を、優先順位決定部14に送信する。アクセス性能は、アクセス性能の高さを表す指標であれば、任意の指標であってよい。アクセス性能は、例えば、スループットである。アクセス性能は、例えば、単位時間当たりの入出力命令の処理回数であってもよい。アクセス性能測定部205は、記憶ユニット21毎の、測定したアクセス性能を、管理テーブル記憶部204に格納してもよい。   The access performance measuring unit 205 measures the access performance between the controller 20 and the storage unit 21 for each storage unit 21. Then, the access performance measurement unit 205 transmits the measured access performance for each storage unit 21 to the priority order determination unit 14. The access performance may be an arbitrary index as long as it is an index representing the high access performance. The access performance is, for example, throughput. The access performance may be, for example, the number of input / output instruction processes per unit time. The access performance measurement unit 205 may store the measured access performance for each storage unit 21 in the management table storage unit 204.

パス制御装置1が、ストレージシステム2やコントローラ20に含まれている場合、管理テーブル記憶部204が優先順位記憶部11を兼ねていてもよい。   When the path control device 1 is included in the storage system 2 or the controller 20, the management table storage unit 204 may also serve as the priority order storage unit 11.

次に、優先順位決定時のパス制御装置1の動作について、図面を参照して詳細に説明する。   Next, the operation of the path control device 1 at the time of priority determination will be described in detail with reference to the drawings.

図3は、優先順位決定時のパス制御装置1の動作の例を表すフローチャートである。   FIG. 3 is a flowchart showing an example of the operation of the path control device 1 at the time of priority determination.

図3を参照すると、まず、優先順位決定部14が、各コントローラ20に対して、各記憶ユニット21に対するアクセス性能の送信を要求する(ステップS101)。   Referring to FIG. 3, first, the priority order determination unit 14 requests each controller 20 to transmit access performance to each storage unit 21 (step S101).

各コントローラ20は、各記憶ユニット21に対するアクセス性能を測定する。各コントローラ20は、予め測定し管理テーブル記憶部204に格納しておいた各記憶ユニット21に対するアクセス性能を、管理テーブル記憶部204から読み出してもよい。各コントローラ20は、各記憶ユニット21に対するアクセス性能を、優先順位決定部14に送信する。   Each controller 20 measures the access performance for each storage unit 21. Each controller 20 may read from the management table storage unit 204 the access performance for each storage unit 21 that has been measured in advance and stored in the management table storage unit 204. Each controller 20 transmits the access performance for each storage unit 21 to the priority order determination unit 14.

優先順位決定部14は、各コントローラ20から、各記憶ユニット21に対するアクセス性能を取得する(ステップS102)。   The priority order determination unit 14 acquires the access performance for each storage unit 21 from each controller 20 (step S102).

優先順位決定部14は、記憶ユニット21毎に、各コントローラ20の優先順位を決定する(ステップS103)。優先順位決定部14は、記憶ユニット21に対するアクセス性能が高いコントローラ20ほど、優先順位が高くなるように、優先順位を決定する。   The priority order determination unit 14 determines the priority order of each controller 20 for each storage unit 21 (step S103). The priority order determination unit 14 determines the priority order so that the controller 20 having higher access performance to the storage unit 21 has a higher priority order.

優先順位決定部14は、記憶ユニット21毎の、各コントローラ20の優先順位を、優先順位記憶部11に格納する(ステップS104)。   The priority order determination unit 14 stores the priority order of each controller 20 for each storage unit 21 in the priority order storage unit 11 (step S104).

図4は、優先順位記憶部11が記憶する各コントローラ20の優先順位の例を表す図である。   FIG. 4 is a diagram illustrating an example of the priority order of each controller 20 stored in the priority order storage unit 11.

次に、パス制御装置1の障害検出時の動作について、図面を参照して詳細に説明する。   Next, the operation of the path control device 1 when a failure is detected will be described in detail with reference to the drawings.

図5は、本実施形態のパス制御装置1の、障害検出時の動作の例を表すフローチャートである。   FIG. 5 is a flowchart illustrating an example of an operation when a failure is detected in the path control device 1 of the present embodiment.

ストレージシステム2が動作を開始すると、監視部10は、各コントローラ20と各ホスト装置3の間の通信の障害を検出する(ステップS201)。   When the storage system 2 starts operation, the monitoring unit 10 detects a communication failure between each controller 20 and each host device 3 (step S201).

前述のように、各コントローラ20は、例えばコントローラ20が所定時間内に各ホスト装置3から受信したコマンドの有無を、障害の有無として管理テーブル記憶部204に格納すればよい。監視部10は、各コントローラ20から、コントローラ20と各ホスト装置3の間の通信の障害の有無を取得することで、検出を行えばよい。監視部10は、管理テーブル204から、障害の有無を読み出してもよい。   As described above, each controller 20 may store the presence / absence of a command received from each host device 3 by the controller 20 within a predetermined time, for example, in the management table storage unit 204 as the presence / absence of a failure. The monitoring unit 10 may perform detection by obtaining from each controller 20 the presence or absence of a communication failure between the controller 20 and each host device 3. The monitoring unit 10 may read the presence / absence of a failure from the management table 204.

図6は、コントローラ20の管理テーブル記憶部204が記憶する、管理テーブルの例を表す図である。図6は、例えば、識別子がコントローラAであるコントローラ20の管理テーブル204が記憶する管理テーブルである。   FIG. 6 is a diagram illustrating an example of a management table stored in the management table storage unit 204 of the controller 20. FIG. 6 is a management table stored in the management table 204 of the controller 20 whose identifier is controller A, for example.

図6の管理テーブルは、各ホスト装置3との間の通信の障害の有無を含む。また、図6の管理テーブルは、各ホスト装置3による、ストレージシステム2の使用の有無を含む。図6の例では、ホスト装置3を識別するための識別子であるホスト識別子がホストmであるホスト装置3とコントローラ20の間の通信で、障害が「有」である。しかし、パス制御装置1やコントローラ20は、ストレージシステム2を不使用のホスト装置3に対して検出された障害は、通信の障害として扱わない。図6の例では、ホストmは、ストレージシステム2を使用していない。従って、図6の例では、コントローラ20との間の通信に障害があるホスト装置3は存在しない。   The management table in FIG. 6 includes the presence / absence of a failure in communication with each host device 3. Further, the management table of FIG. 6 includes whether or not the storage system 2 is used by each host apparatus 3. In the example of FIG. 6, the failure is “present” in the communication between the controller 20 and the host apparatus 3 whose host identifier is the host m, which is an identifier for identifying the host apparatus 3. However, the path control device 1 and the controller 20 do not treat a failure detected for the host device 3 not using the storage system 2 as a communication failure. In the example of FIG. 6, the host m does not use the storage system 2. Therefore, in the example of FIG. 6, there is no host apparatus 3 that has a failure in communication with the controller 20.

また、図6の例では、記憶ユニットaに対するコントローラAの優先順位は1である。また、コントローラAは、ホスト装置3による記憶ユニットaに対するアクセス時の最適な経路として設定されている。ホスト装置3による記憶ユニットaに対するアクセスの最適な経路の問い合わせに対して、ストレージシステム2は、コントローラAの識別子を返信する。返信を受信したホスト装置3は、記憶ユニットaに対して、コントローラAを経由してアクセスを行う。   In the example of FIG. 6, the priority order of the controller A with respect to the storage unit a is 1. The controller A is set as an optimum path when the host device 3 accesses the storage unit a. The storage system 2 returns the identifier of the controller A in response to the inquiry about the optimum path for access to the storage unit a by the host device 3. The host device 3 that has received the reply accesses the storage unit a via the controller A.

障害が検出されたコントローラ20に変化が無い場合(ステップS202、N)、処理はステップS201に戻る。   If there is no change in the controller 20 in which the failure has been detected (step S202, N), the process returns to step S201.

図7から図10は、コントローラ20の管理テーブル記憶部204が記憶する、管理テーブルの例を表す図である。図7は、例えば、識別子がコントローラAであるコントローラ20の管理テーブル204が記憶する管理テーブルである。コントローラAの記憶ユニットaに対する優先順位は1である。図7の例は、図6とは異なり、ホスト識別子がホスト2であるホスト装置3とコントローラAとの間の通信に、障害が存在する。コントローラAは記憶ユニットaに対する最適な経路として選択されている。   7 to 10 are diagrams illustrating examples of management tables stored in the management table storage unit 204 of the controller 20. FIG. 7 is a management table stored in the management table 204 of the controller 20 whose identifier is controller A, for example. The priority of the controller A with respect to the storage unit a is 1. In the example of FIG. 7, unlike FIG. 6, there is a failure in communication between the host device 3 whose host identifier is the host 2 and the controller A. Controller A is selected as the optimum path for storage unit a.

図8は、例えば、識別子がコントローラBであるコントローラ20の管理テーブル204が記憶する管理テーブルである。コントローラBの記憶ユニットaに対する優先順位は2である。コントローラBは記憶ユニットaに対する最適な経路として選択されていない。また、コントローラBの記憶ユニットaに対する優先順位は1である。また、コントローラBは記憶ユニットaに対する最適な経路として選択されている。   FIG. 8 is a management table stored in the management table 204 of the controller 20 whose identifier is controller B, for example. The priority order of the storage unit a of the controller B is 2. Controller B is not selected as the optimal path for storage unit a. The priority of the controller B with respect to the storage unit a is 1. Further, the controller B is selected as the optimum path for the storage unit a.

本実施形態では、他のコントローラ20の記憶ユニットaに対する優先順位は、コントローラA及びコントローラBの記憶ユニットaに対する優先順位より低い。コントローラA及びコントローラBのコントローラ20の管理テーブルは省略されている。   In the present embodiment, the priority order of the storage units a of the other controllers 20 is lower than the priority order of the storage units a of the controllers A and B. The management table of the controller 20 of the controller A and the controller B is omitted.

コントローラAとコントローラBが記憶する管理テーブルが、それぞれ図7及び図8の例である場合、コントローラAとホスト識別子がホスト2であるホスト装置3との間に障害があるので、監視部10は、障害を検出する。   When the management tables stored in the controller A and the controller B are the examples of FIGS. 7 and 8, respectively, since there is a failure between the controller A and the host device 3 whose host identifier is the host 2, the monitoring unit 10 , Detect failure.

例えば、コントローラAの管理テーブルが、図6から図7に変化した場合、コントローラAに新たに障害が検出される。すなわち、ホスト装置3とコントローラ20の間の通信の障害の検出結果が変化する(ステップS202、Y)。   For example, when the management table of the controller A changes from FIG. 6 to FIG. 7, a new failure is detected in the controller A. That is, the detection result of the communication failure between the host device 3 and the controller 20 changes (Y in step S202).

この場合、選択部12は、いずれのホスト装置3との間にも障害が検出されないコントローラ20で、最も優先順位が高いコントローラ20を、記憶ユニット21毎に選択する(ステップS203)。選択部12は、ホスト装置3からストレージシステム2に、記憶ユニット21へのアクセスの経路の変更命令が送信した場合に、ステップS203移行の動作を行ってもよい。このような変更命令は、例えば、SCSIコマンドのSet Target Port Groupsである。また、この場合、変更命令を受信したストレージシステム2のいずれかのコントローラ20が、パス制御装置1に、変更命令の受信を通知すればよい。   In this case, the selection unit 12 selects, for each storage unit 21, the controller 20 having the highest priority among the controllers 20 in which no failure is detected with any host device 3 (step S203). The selection unit 12 may perform the operation of Step S203 when an instruction to change the access path to the storage unit 21 is transmitted from the host device 3 to the storage system 2. Such a change command is, for example, a SCSI command Set Target Port Groups. In this case, any controller 20 in the storage system 2 that has received the change command may notify the path control device 1 of the reception of the change command.

図7及び図8の例では、記憶ユニットaに対して最も優先順位が高い、いずれのホスト装置3との間にも障害が検出されないコントローラ20は、コントローラBである。従って、選択部12は、記憶ユニットaに対して、コントローラBを選択する。同様に、記憶ユニットbに対して最も優先順位が高い、いずれのホスト装置3との間にも障害が検出されないコントローラ20は、コントローラBである。従って、選択部12は、記憶ユニットbに対して、コントローラBを選択する。   In the example of FIGS. 7 and 8, the controller 20 that has the highest priority with respect to the storage unit a and has no failure detected with any host device 3 is the controller B. Accordingly, the selection unit 12 selects the controller B for the storage unit a. Similarly, the controller 20 having the highest priority with respect to the storage unit b and in which no failure is detected with any host apparatus 3 is the controller B. Accordingly, the selection unit 12 selects the controller B for the storage unit b.

次に、通知部13が、各ホスト装置3に、記憶ユニット21毎に選択されたコントローラ20を経由する経路で、記憶ユニット21にアクセスする指示を送信する(ステップS204)。   Next, the notification unit 13 transmits to each host device 3 an instruction to access the storage unit 21 through a path that passes through the controller 20 selected for each storage unit 21 (step S204).

通知部13は、例えば、各コントローラ20の管理テーブルを変更することで、各ホスト装置3に記憶ユニット21毎の経路の指示を行えばよい。すなわち、通知部13は、記憶ユニット21毎に、選択されたコントローラ20の管理テーブルに「最適」を設定し、選択されないコントローラ20の管理テーブルに「非最適」を設定すればよい。各ホスト装置3は、例えば定期的に、記憶ユニット21に対する最適な経路を、各コントローラ20に問い合わせる。「最適」が設定されているコントローラ20は、記憶ユニット21に対する最適な経路の問い合わせを受信すると、問い合わせの送信元のホスト装置3に、例えば自装置の識別子を特定可能な返答を行う。ホスト装置20は、例えば、受信した返答の送信元のアドレスにより、「最適」が設定されているコントローラ20を特定することができる。例えば送信される返答が、「最適」が設定されているコントローラ20の識別子を含んでいてもよい。ホスト装置20は、問い合わせに対する返答で特定されるコントローラ20を経由して、記憶ユニット21にアクセスを行う。   For example, the notification unit 13 may instruct each host device 3 of a route for each storage unit 21 by changing the management table of each controller 20. That is, for each storage unit 21, the notification unit 13 may set “optimal” in the management table of the selected controller 20 and set “non-optimal” in the management table of the controller 20 that is not selected. Each host device 3 inquires each controller 20 about an optimum route to the storage unit 21 periodically, for example. When the controller 20 for which “optimum” is set receives an inquiry about the optimum route to the storage unit 21, the controller 20 sends a reply that can specify the identifier of the own device, for example, to the host device 3 that sent the inquiry. For example, the host device 20 can identify the controller 20 for which “optimum” is set based on the address of the transmission source of the received response. For example, the response to be transmitted may include the identifier of the controller 20 for which “optimum” is set. The host device 20 accesses the storage unit 21 via the controller 20 specified by the response to the inquiry.

通知部13は、例えば、記憶ユニット21の識別子と、その記憶ユニット21に対して選択されたコントローラ20の識別子との組を、上述の指示としてホスト装置3に直接送信してもよい。記憶ユニット21の識別子とコントローラ20の識別子との組を受信したホスト装置3は、受信した組に識別子が含まれる記憶ユニット21にアクセスする際、同じ組に識別子が含まれるコントローラ20を経由してアクセスを行えばよい。   For example, the notification unit 13 may directly transmit a set of the identifier of the storage unit 21 and the identifier of the controller 20 selected for the storage unit 21 to the host device 3 as the above-described instruction. When the host device 3 that has received the set of the identifier of the storage unit 21 and the identifier of the controller 20 accesses the storage unit 21 that includes the identifier in the received set, the host device 3 passes through the controller 20 that includes the identifier in the same set. Access should be done.

図7及び図8の例では、記憶ユニットaに対する最適な経路として選択されている、記憶ユニットaに対する優先順位が最も高いコントローラAに、障害が発生している。コントローラAは、記憶ユニットaに対するアクセス性能が最も高いコントローラ20である。一方、記憶ユニットaに対する優先順位が2であるコントローラBには、障害がない。コントローラBは、記憶ユニットaに対するアクセス性能が、コントローラAの次に高いコントローラ20である。   In the example of FIGS. 7 and 8, a failure has occurred in the controller A that is selected as the optimum path for the storage unit a and has the highest priority for the storage unit a. The controller A is the controller 20 having the highest access performance to the storage unit a. On the other hand, the controller B having the priority order 2 for the storage unit a has no failure. The controller B is the controller 20 having the next highest access performance to the storage unit a after the controller A.

ストレージシステム2は、コントローラAとコントローラBの管理テーブルを、ステップS203及びステップS204の動作によって、それぞれ、図9及び図10の例のように変更する。   The storage system 2 changes the management tables of the controller A and the controller B as shown in the examples of FIGS. 9 and 10 by the operations of step S203 and step S204, respectively.

図9は、通知部13による書き換えが行われた後の、識別子がコントローラAであるコントローラ20の管理テーブル204が記憶する管理テーブルである。図9では、記憶ユニットaに対して、「非最適」が設定されている。   FIG. 9 is a management table stored in the management table 204 of the controller 20 whose identifier is controller A after rewriting by the notification unit 13. In FIG. 9, “non-optimal” is set for the storage unit a.

図10は、通知部13による書き換えが行われた後の、識別子がコントローラBであるコントローラ20の管理テーブル204が記憶する管理テーブルである。図9では、記憶ユニットaに対して、「最適」が設定されている。   FIG. 10 is a management table stored in the management table 204 of the controller 20 whose identifier is the controller B after rewriting by the notification unit 13. In FIG. 9, “optimum” is set for the storage unit a.

図9及び図10の例では、記憶ユニットaに対する最適な経路として、全てのホスト装置3に対して障害が無いコントローラ20の中で、記憶ユニットaに対する優先順位が最も高いコントローラBが通知される。コントローラBは、全てのホスト装置3に対して障害が無いコントローラ20の中で、記憶ユニットaに対するアクセス性能が最も高いコントローラ20である。すなわち、記憶ユニットaに対する最適な経路が、ホスト2に対して障害があるコントローラAから、全てのホスト装置3に対して障害が無いコントローラ20の中で、記憶ユニットaに対する優先順位が最も高いコントローラBに変更されている。   In the examples of FIGS. 9 and 10, the controller B having the highest priority for the storage unit a among the controllers 20 having no failure for all the host devices 3 is notified as the optimum path for the storage unit a. . The controller B is the controller 20 having the highest access performance with respect to the storage unit a among the controllers 20 that do not have any trouble with respect to all the host devices 3. In other words, the controller with the highest priority for the storage unit a is the controller 20 having the optimal path to the storage unit a from the controller A having the failure to the host 2 to the controller 20 having no failure for all the host devices 3. B has been changed.

ストレージシステム2は、ホスト装置3からの、記憶ユニットaに対する最適な経路の問い合わせに対して、コントローラBの識別子を返送する。問い合わせを行ったホスト装置3は、コントローラAではなくコントローラBを経由して、記憶ユニットaにアクセスを行う。   The storage system 2 returns the identifier of the controller B in response to an inquiry from the host device 3 about the optimum path to the storage unit a. The host device 3 that has made the inquiry accesses the storage unit a via the controller B instead of the controller A.

記憶ユニットbに対する最適な経路は、記憶ユニットbに対する優先順位が最も高く、記憶ユニットbに対するアクセス性能が最も高いコントローラBのままである。   The optimum path for the storage unit b remains the controller B having the highest priority for the storage unit b and the highest access performance for the storage unit b.

一方、コントローラAとホスト2の間の通信に生じていた障害が解消した場合、監視部10による検出結果に、コントローラAとホスト2との間の通信に障害が検出されなくなるという変化が生じる(ステップS202、Y)。   On the other hand, when the failure that has occurred in the communication between the controller A and the host 2 is resolved, the detection result by the monitoring unit 10 changes such that the failure is not detected in the communication between the controller A and the host 2 ( Step S202, Y).

この場合、選択部12は、ステップS203で、記憶ユニットaに対する最適な経路として、コントローラAを選択する。そして、ステップS204で、通知部13は、記憶ユニットaに対する最適な経路として、コントローラAを、各ホスト装置3に通知する。すなわち、通知部13は、コントローラAの管理テーブルに、記憶ユニットaに対して「最適」を設定する。設定後、ストレージシステム2が、いずれかのホスト装置3から、記憶ユニットaへのアクセス時に経由するコントローラ20の問い合わせを受信した場合、例えばコントローラAが、問い合わせを行ったホスト装置3に対して、自身を経由するよう通知を行う。コントローラAは、この通知を、例えば、コントローラAの識別子を送信することで行う。通知を受信したホスト装置3は、コントローラAを経由して記憶ユニットaにアクセスする。通知の受信前はコントローラBを経由して記憶ユニットaにアクセスを行っていたホスト装置3は、通知の受信後、記憶ユニットaへのアクセスで経由するコントローラ20を、コントローラAに変更する。   In this case, the selection unit 12 selects the controller A as the optimum path for the storage unit a in step S203. In step S204, the notification unit 13 notifies each host device 3 of the controller A as an optimum route to the storage unit a. That is, the notification unit 13 sets “optimum” for the storage unit a in the management table of the controller A. After the setting, when the storage system 2 receives an inquiry from the controller 20 via any of the host devices 3 when accessing the storage unit a, the controller A, for example, Notify to go through itself. The controller A performs this notification by transmitting the identifier of the controller A, for example. The host device 3 that has received the notification accesses the storage unit a via the controller A. The host device 3 that has accessed the storage unit a via the controller B before receiving the notification changes the controller 20 that is accessed via the access to the storage unit a to the controller A after receiving the notification.

以上で説明した本実施形態には、複数のコントローラ20の記憶ユニット21に対するアクセス性能が異なるストレージシステム2に対する、アクセス時に経由するコントローラ20を障害により変更する場合の、アクセス性能の低下を軽減することができるという効果がある。   In the present embodiment described above, it is possible to reduce a decrease in access performance when the controller 20 through which access is made to a storage system 2 having different access performance to the storage units 21 of the plurality of controllers 20 is changed due to a failure. There is an effect that can be.

その理由は、選択部12が、各記憶ユニット21に対して、全てのホスト装置3との間の通信に障害がないコントローラ20の中で、記憶ユニット21に対する優先順位が最も高いコントローラ20を選択するからである。各記憶ユニット21に対して選択されたコントローラ20は、その記憶ユニット21に対するアクセス性能が最も高いコントローラ20である。そして、通知部13が、各記憶ユニット21に対して選択されたコントローラ20を、その記憶ユニット21に対する最適な経路として、各ホスト装置3に通知する。   The reason is that the selection unit 12 selects the controller 20 having the highest priority for the storage unit 21 among the controllers 20 that do not have any trouble in communication with all the host devices 3 for each storage unit 21. Because it does. The controller 20 selected for each storage unit 21 is the controller 20 having the highest access performance to the storage unit 21. Then, the notification unit 13 notifies each host device 3 of the controller 20 selected for each storage unit 21 as an optimum path for the storage unit 21.

(構成例)
次に、第1の実施形態の構成例について、図面を参照して詳細に説明する。
(Configuration example)
Next, a configuration example of the first embodiment will be described in detail with reference to the drawings.

本構成例では、各ホスト装置3は、SCSI(Small Computer System Interface)コマンドを、いずれかのコントローラ20を介して、記憶ユニット21(LUN、Logical Unit Number)に送信することで、記憶ユニット21にアクセスする。本構成例の情報処理システム100では、第1の実施形態と同様に、各記憶ユニット21へのアクセスの性能は、アクセス時に経由するパスによって、すなわち、アクセス時に経由するコントローラ20によって、記憶ユニット21毎に異なる。このような構成は、ALUA(Asymmetric Logical Unit Access)構成と呼ばれる。ALUAに対応したシステムでは、ALUAを制御するSCSIコマンドにより、ホストとストレージ間のパスの切り替え制御が行われる。ホスト装置3がLUNにアクセスする際のパスは、そのパスが経由するコントローラ20によって特定される。すなわち、LUNへのアクセスの際経由するコントローラ20の識別子が、パスを表す。   In this configuration example, each host device 3 transmits a SCSI (Small Computer System Interface) command to the storage unit 21 (LUN, Logical Unit Number) via one of the controllers 20 to the storage unit 21. to access. In the information processing system 100 of this configuration example, as in the first embodiment, the performance of access to each storage unit 21 is determined according to the path that passes through the access, that is, the controller 20 that passes through at the time of access. Different for each. Such a configuration is referred to as an ALUA (Asymmetric Logical Unit Access) configuration. In a system that supports ALUA, path switching control between the host and the storage is performed by a SCSI command that controls ALUA. The path when the host device 3 accesses the LUN is specified by the controller 20 through which the path passes. In other words, the identifier of the controller 20 through which the LUN is accessed represents a path.

コントローラ20が2個の場合、LUNに対するアクセス性能が優れている方のコントローラ20を経由するパスがPreferredパスと呼ばれる。この場合、優先順位記憶部11は、いずれのコントローラ20を経由するパスがPreferredパスであるかを記憶する。この場合、経由するパスPreferredパスであることを表す値と、経由するパスPreferredパスでないことを表す値が優先順位に相当する。ただし、経由するパスがPreferredパスであるコントローラ20の優先順位が、経由するパスがPreferredパスでないコントローラ20より優先順位より高い。コントローラ20が3個以上存在する場合、優先順位記憶部11は、LUN毎に、各コントローラ20の優先順位を記憶する。コントローラ20が2個の場合も、優先順位記憶部11は、LUN毎に、各コントローラ20の優先順位を記憶していてよい。本構成例では、優先順位記憶部11が記憶する優先順位は、保守端末5を使用する管理者により設定される。   When there are two controllers 20, a path that passes through the controller 20 having better access performance to the LUN is called a preferred path. In this case, the priority storage unit 11 stores which controller 20 passes the preferred path. In this case, a value indicating that the path is a preferred path and a value indicating that the path is not a preferred path correspond to the priority order. However, the priority order of the controller 20 whose path is the preferred path is higher than the priority order of the controller 20 whose path is not the preferred path. When there are three or more controllers 20, the priority storage unit 11 stores the priority of each controller 20 for each LUN. Even when there are two controllers 20, the priority order storage unit 11 may store the priority order of each controller 20 for each LUN. In this configuration example, the priority order stored in the priority order storage unit 11 is set by an administrator who uses the maintenance terminal 5.

各ホスト装置3がLUNへのアクセスの際経由するパスが、Active/Optimizedパスである。Active/Optimizedパスが、上述の最適が設定されているコントローラ20を経由するパスである。Active/Optimizedパス以外のパスが、Active/Non-Optimizedパスである。Active/Non-Optimizedパスが、上述の非最適が設定されているコントローラ20を経由するパスである。ホスト装置3から、ALUA制御用のSCSIコマンドであるReport Target Port Groupsを受信すると、コントローラ20は、Active/Optimizedパスの情報を、ホスト装置3に送信する。Active/Optimizedパスの情報は、例えば、Active/Optimizedパスにおいて経由するコントローラ20の識別子である。Report Target Port Groupsのコマンドに対する応答は、例えば、Active/Optimizedパスにおいて経由するコントローラ20が行えばよい。   The path through which each host device 3 accesses the LUN is an Active / Optimized path. The Active / Optimized path is a path that passes through the controller 20 in which the above-described optimization is set. A path other than the Active / Optimized path is an Active / Non-Optimized path. The Active / Non-Optimized path is a path that passes through the controller 20 in which the above-mentioned non-optimal is set. When receiving Report Target Port Groups, which is an SCSI command for ALUA control, from the host device 3, the controller 20 transmits information on the Active / Optimized path to the host device 3. The information on the Active / Optimized path is, for example, an identifier of the controller 20 that passes through the Active / Optimized path. The response to the Report Target Port Groups command may be performed by the controller 20 via the Active / Optimized path, for example.

また、ホスト装置3は、LUNへのアクセスに使用していたパスに障害が発生し、接続が切断された場合、ALUA制御用のSCSIコマンドであるSet Target Port Groupsを各コントローラ20に送信する。Set Target Port Groupsを受信したコントローラ20は、パス制御装置1に、Set Target Port Groupsを受信したことを通知する。この通知を受信したパス制御装置1は、上述の第1の実施形態のように、コントローラ20を選択する。パス制御装置1は、選択したコントローラ20を経由するパスをActive/Optimizedパスに設定する。パス制御装置1は、選択されなかったコントローラ20を経由するパスを、Active/Non-Optimizedパスに設定する。   Further, when a failure occurs in the path used for accessing the LUN and the connection is disconnected, the host device 3 transmits Set Target Port Groups, which are SCSI commands for ALUA control, to each controller 20. The controller 20 that has received Set Target Port Groups notifies the path control device 1 that it has received Set Target Port Groups. The path control apparatus 1 that has received this notification selects the controller 20 as in the first embodiment described above. The path control device 1 sets a path passing through the selected controller 20 as an Active / Optimized path. The path control device 1 sets a path passing through the controller 20 that has not been selected as an Active / Non-Optimized path.

本構成例の転送部202は、例えば後述するように管理テーブル記憶部204に検出結果を格納する前の所定時間内の、ホスト装置3からのSCSIコマンドの受信の有無を検出する。転送部202は、例えば所定時間毎に、各ホスト装置3からの所定時間内のSCSIコマンドの受信の有無を、管理テーブル記憶部204に格納する。本構成例の管理テーブル記憶部204は、管理テーブル内に、所定時間内のSCSIコマンドの受信の有無を、ホスト装置3とコントローラ20の間の通信の障害の有無として記憶する。転送部202は、所定時間内にSCSIコマンドを受信した場合、ホスト装置3とコントローラ20との間の通信に障害が無いと判定する。転送部202は、所定時間内にSCSIコマンドを受信しない場合、ホスト装置3とコントローラ20との間の通信に障害があると判定する。また、管理テーブル記憶部204が管理テーブル内に記憶するホスト識別子は、ホスト装置3のWWn(World Wide name)であればよい。例えば情報処理装置100の管理者が、管理端末5を使用して、ホスト装置3毎に、ストレージシステム2の使用の有無を設定する。ストレージシステム2は、設定された使用の有無を、管理テーブル記憶部204の管理テーブルに記憶する。第1の実施形態と同様に、パス制御装置1は、コントローラ20の管理テーブルの「使用の有無」に「不使用」が設定されているホスト装置3がある場合、そのコントローラ20とホスト装置3の間の通信を障害の監視の対象から除外する。   The transfer unit 202 of this configuration example detects whether or not a SCSI command has been received from the host device 3 within a predetermined time before storing the detection result in the management table storage unit 204, as will be described later. The transfer unit 202 stores, in the management table storage unit 204, whether or not a SCSI command is received from each host device 3 within a predetermined time, for example, every predetermined time. The management table storage unit 204 of this configuration example stores, in the management table, whether or not a SCSI command has been received within a predetermined time as the presence or absence of a communication failure between the host device 3 and the controller 20. When the transfer unit 202 receives the SCSI command within a predetermined time, the transfer unit 202 determines that there is no failure in communication between the host device 3 and the controller 20. If the transfer unit 202 does not receive the SCSI command within a predetermined time, the transfer unit 202 determines that there is a failure in communication between the host device 3 and the controller 20. Further, the host identifier stored in the management table by the management table storage unit 204 may be the WWn (World Wide name) of the host device 3. For example, the administrator of the information processing apparatus 100 uses the management terminal 5 to set whether to use the storage system 2 for each host device 3. The storage system 2 stores the set usage information in the management table of the management table storage unit 204. As in the first embodiment, when there is a host device 3 in which “not used” is set in “use / non-use” of the management table of the controller 20, the path control device 1 and the controller 20 and the host device 3 Communication is excluded from fault monitoring.

次に、本構成例の動作について説明する。   Next, the operation of this configuration example will be described.

情報処理システム100のユーザや管理者が、いずれかのホスト装置3または保守端末5を使用して、それぞれのホスト装置3によるストレージシステム2の使用の有無を入力する。ストレージシステム2は、例えば各コントローラ20の管理テーブル記憶部204の管理テーブルに、ホスト装置3の識別子であるWWnと入力された使用状況である使用または未使用を、対応付けて記憶する。   A user or administrator of the information processing system 100 uses one of the host devices 3 or the maintenance terminal 5 to input whether or not the storage system 2 is used by each host device 3. For example, the storage system 2 stores, in association with the management table of the management table storage unit 204 of each controller 20, used or unused, which is the usage status input as WWn that is the identifier of the host device 3.

各コントローラ20は、定期的に、各ホスト装置3によるSCSIコマンドの発行の有無を検出し、検出結果をホスト装置3のWWnに対応付けて、管理テーブル記憶部204の管理テーブルに記憶させる。   Each controller 20 periodically detects whether or not each host device 3 has issued a SCSI command, and stores the detection result in the management table of the management table storage unit 204 in association with the WWn of the host device 3.

パス制御装置1の監視部10は、各コントローラ20の管理テーブル記憶部204の管理テーブルを監視し、所定時間内にSCSIコマンドを発行していないホスト装置3を検出することで、コントローラ20とホスト装置3の間の通信の障害を検出する。ただし、監視部10は、管理テーブルに不使用が設定されているホスト装置3を、監視対象から排除する。コントローラ20が、監視対象であるホスト装置3から所定時間内にSCSIコマンドを受信している場合、監視部10は、そのコントローラ20とホスト装置3の間のパスは有効であり、障害がないと判定する。   The monitoring unit 10 of the path control device 1 monitors the management table of the management table storage unit 204 of each controller 20 and detects the host device 3 that has not issued the SCSI command within a predetermined time, thereby detecting the controller 20 and the host. A communication failure between the devices 3 is detected. However, the monitoring unit 10 excludes the host device 3 for which nonuse is set in the management table from the monitoring target. When the controller 20 receives a SCSI command from the monitored host device 3 within a predetermined time, the monitoring unit 10 indicates that the path between the controller 20 and the host device 3 is valid and there is no failure. judge.

各ホスト装置3は、記憶ユニット21毎にReport Target Port Groupsコマンドを発行することで、記憶ユニット21にアクセスする最適な経路の問い合わせを行う。各ホスト装置3とストレージシステム2の間の通信が正常である場合、Report Target Port Groupsコマンドに対して、ストレージシステム2は、Active/Optimizedパスとして、優先順位が最も高いコントローラ20の識別子を返却する。すなわち、ストレージシステム2は、記憶ユニット21にアクセスするのに最適な経路として、優先順位が最も高いコントローラ20の識別子を返却する。ストレージシステム2が含むコントローラ20が2個である場合、ストレージシステム2は、Preferredパスに設定されているコントローラ20の識別子を返却する。ホスト装置3は、識別子が返却されたコントローラ20を経由して、記憶ユニット21にアクセスする。   Each host device 3 issues a Report Target Port Groups command for each storage unit 21 to inquire about an optimal path for accessing the storage unit 21. When communication between each host device 3 and the storage system 2 is normal, the storage system 2 returns the identifier of the controller 20 with the highest priority as an Active / Optimized path in response to the Report Target Port Groups command. . That is, the storage system 2 returns the identifier of the controller 20 with the highest priority as the optimum path for accessing the storage unit 21. When the storage system 2 includes two controllers 20, the storage system 2 returns the identifier of the controller 20 set in the Preferred path. The host device 3 accesses the storage unit 21 via the controller 20 to which the identifier is returned.

以下の説明では、コントローラAが、記憶ユニット21の一つであるLUN0のPreferredパスである。あるいは、コントローラAが、LUN0へのアクセスにおける優先順位が最も高いコントローラ20である。コントローラAに障害が発生すると、コントローラAと各ホスト装置3の間のパスが消失する。この場合、コントローラAを経由してストレージシステム2にアクセスするホスト装置3のいずれかが、コントローラAを経由するパスの消失を検出する。パスの消失を検出したホスト装置3は、Set Target Port Groupsコマンドを発行して、LUN0へのアクセスのActive/Optimizedパスを変更する。ストレージシステム2がSet Target Port Groupsコマンドを受信した場合、パス制御装置1は、上述のように、LUN0へのアクセスのActive/Optimizedパスを、障害がないコントローラ20の中で、最も優先順位が高いコントローラ20に変更する。LUN0へのアクセスのActive/Optimizedパスが、例えばコントローラBに変更されると、ホスト装置3は、コントローラBを経由して、LUN0へのアクセスを継続する。その後、コントローラAの障害が回復すると、各ホスト装置3は、コントローラA、コントローラBのどちらを経由しても、LUN0にアクセスすることができるようになる。   In the following description, the controller A is a preferred path of LUN 0 that is one of the storage units 21. Alternatively, the controller A is the controller 20 with the highest priority in access to LUN0. When a failure occurs in the controller A, the path between the controller A and each host device 3 is lost. In this case, any of the host apparatuses 3 that access the storage system 2 via the controller A detects the loss of the path that passes through the controller A. The host device 3 that has detected the loss of the path issues a Set Target Port Groups command to change the Active / Optimized path for access to LUN0. When the storage system 2 receives the Set Target Port Groups command, the path control device 1 has the highest priority for the active / optimized path for access to the LUN 0 among the controllers 20 having no failure as described above. Change to controller 20. When the Active / Optimized path for access to the LUN 0 is changed to the controller B, for example, the host device 3 continues to access the LUN 0 via the controller B. Thereafter, when the failure of the controller A recovers, each host device 3 can access the LUN 0 via either the controller A or the controller B.

監視部10がコントローラAと各ホスト装置3との間の通信の障害が解消したことを検出すると、選択部12は、LUN毎に、障害がないコントローラ20の中で最も優先順位が高いコントローラ20を選択する。コントローラAのLUN0へのアクセスにおける優先順位が最も高いので、選択部12は、LUN0に対してコントローラAを選択する。   When the monitoring unit 10 detects that the communication failure between the controller A and each host device 3 has been resolved, the selection unit 12 determines, for each LUN, the controller 20 having the highest priority among the controllers 20 that have no failure. Select. Since the priority in the access to the LUN 0 of the controller A is the highest, the selection unit 12 selects the controller A for the LUN 0.

各コントローラ20がパス制御装置1を含む場合、例えば、各コントローラ20のパス制御装置1の選択部12が、前述のコントローラ20の選択を行えばよい。そして、自身を選択したコントローラ20のパス制御装置1が、以下の動作を行えばよい。   When each controller 20 includes the path control device 1, for example, the selection unit 12 of the path control device 1 of each controller 20 may select the controller 20 described above. Then, the path control device 1 of the controller 20 that has selected itself may perform the following operation.

通知部13は、あるLUNに対して選択部12が選択したコントローラ20が記憶する管理テーブルを書き換えて、選択されたコントローラ20をそのLUNに対するActive/Optimizedパスに設定する。また、通知部13は、選択されなかったコントローラ20が記憶する管理テーブルを書き換えて、選択されなかったコントローラ20をそのLUNに対するActive/Non-Optimizedパスに設定する。   The notification unit 13 rewrites the management table stored in the controller 20 selected by the selection unit 12 for a certain LUN, and sets the selected controller 20 to the Active / Optimized path for the LUN. Further, the notification unit 13 rewrites the management table stored in the controller 20 that has not been selected, and sets the controller 20 that has not been selected as an Active / Non-Optimized path for the LUN.

上述のようにコントローラAの障害が回復し、コントローラA及びコントローラBのどちらを経由しても、LUN0にアクセスすることができる場合、通知部13は、コントローラAをLUN0のActive/Optimizedパスに設定する。そして、通知部13は、コントローラBをLUN0のActive/Non-Optimizedパスに設定する。   As described above, when the failure of the controller A is recovered and the LUN 0 can be accessed through either the controller A or the controller B, the notification unit 13 sets the controller A to the active / optimized path of the LUN 0. To do. Then, the notification unit 13 sets the controller B to the Active / Non-Optimized path of LUN0.

これらの設定後にReport Target Port Groupsコマンドを発行したホスト装置3は、LUN0に対するActive/Optimizedパスとして、コントローラAの識別子を受信する。コントローラAの識別子を受信したホスト装置3は、コントローラAを経由してLUN0にアクセスする。   The host apparatus 3 that has issued the Report Target Port Groups command after these settings receives the identifier of the controller A as an Active / Optimized path for LUN0. The host device 3 that has received the identifier of the controller A accesses the LUN 0 via the controller A.

次に、本発明の第2の実施形態について、図面を参照して詳細に説明する。   Next, a second embodiment of the present invention will be described in detail with reference to the drawings.

図11は、本実施形態のパス制御装置1Aの構成を表すブロック図である。   FIG. 11 is a block diagram showing the configuration of the path control apparatus 1A of this embodiment.

図11を参照すると、本実施形態のパス制御装置1Aは、記憶ユニット21とホスト装置3とに接続され、前記記憶ユニット21と前記ホスト装置3との間のデータ転送を行う複数のコントローラ20のそれぞれと、前記ホスト装置3との間の通信の障害の有無を検出する監視部10と、前記コントローラ20の各々の優先順位を記憶する優先順位記憶部11と、通信の障害が検出されない前記コントローラ20で、前記優先順位が最も高い前記コントローラ20を選択する選択部12と、前記記憶ユニット21に対するアクセスを、識別子を通知された前記コントローラ20を経由して行う前記ホスト装置3に、選択された前記コントローラ20の識別子を通知する通知部13とを含む。   Referring to FIG. 11, the path control device 1 </ b> A of the present embodiment is connected to a storage unit 21 and a host device 3, and includes a plurality of controllers 20 that perform data transfer between the storage unit 21 and the host device 3. A monitoring unit 10 that detects whether there is a communication failure between the host device 3 and the host device 3, a priority storage unit 11 that stores the priority of each of the controllers 20, and the controller in which a communication failure is not detected 20, the selection unit 12 that selects the controller 20 having the highest priority and the host device 3 that performs access to the storage unit 21 via the controller 20 that is notified of the identifier are selected. And a notification unit 13 for notifying the identifier of the controller 20.

以上で説明した本実施形態には、第1の実施形態と同じ効果がある。   The present embodiment described above has the same effect as the first embodiment.

パス制御装置1、パス制御装置1A、ストレージシステム2は、それぞれ、コンピュータ及びコンピュータを制御するプログラム、専用のハードウェア、又は、コンピュータ及びコンピュータを制御するプログラムと専用のハードウェアの組合せにより実現することができる。   The path control device 1, the path control device 1A, and the storage system 2 are each realized by a computer and a program for controlling the computer, dedicated hardware, or a combination of a program for controlling the computer and the computer and dedicated hardware. Can do.

監視部10、選択部12、通知部13、優先順位決定部14、第1のインタフェース部201、転送部202、第2のインタフェース部203、アクセス性能測定部205は、例えば、プログラムを記憶する記録媒体からメモリに読み込まれた、各部の機能を実現するための専用のプログラムと、そのプログラムを実行するプロセッサにより実現することができる。また、優先順位記憶部11、管理テーブル記憶部204は、コンピュータが含むメモリやハードディスク装置により実現することができる。あるいは、監視部10、優先順位記憶部11、選択部12、通知部13、優先順位決定部14、第1のインタフェース部201、転送部202、第2のインタフェース部203、管理テーブル記憶部204、アクセス性能測定部205の一部又は全部を、各部の機能を実現する専用の回路によって実現することもできる。   The monitoring unit 10, the selection unit 12, the notification unit 13, the priority order determination unit 14, the first interface unit 201, the transfer unit 202, the second interface unit 203, and the access performance measurement unit 205, for example, a record that stores a program It can be realized by a dedicated program for realizing the function of each unit read from the medium into the memory and a processor that executes the program. The priority order storage unit 11 and the management table storage unit 204 can be realized by a memory or a hard disk device included in a computer. Alternatively, the monitoring unit 10, the priority order storage unit 11, the selection unit 12, the notification unit 13, the priority order determination unit 14, the first interface unit 201, the transfer unit 202, the second interface unit 203, the management table storage unit 204, Part or all of the access performance measurement unit 205 can be realized by a dedicated circuit that implements the function of each unit.

以上、実施形態を参照して本発明を説明したが、本発明は上記実施形態に限定されるものではない。本発明の構成や詳細には、本発明のスコープ内で当業者が理解し得る様々な変更をすることができる。   The present invention has been described above with reference to the embodiments, but the present invention is not limited to the above embodiments. Various changes that can be understood by those skilled in the art can be made to the configuration and details of the present invention within the scope of the present invention.

1、1A パス制御装置
2 ストレージシステム
3 ホスト装置
4 スイッチ装置
5 保守端末
10 監視部
11 優先順位記憶部
12 選択部
13 通知部
14 優先順位決定部
20 コントローラ
21 記憶ユニット
22 記憶装置
100 情報処理システム
201 第1のインタフェース部
202 転送部
203 第2のインタフェース部
204 管理テーブル記憶部
205 アクセス性能測定部
DESCRIPTION OF SYMBOLS 1, 1A path control apparatus 2 Storage system 3 Host apparatus 4 Switch apparatus 5 Maintenance terminal 10 Monitoring part 11 Priority order memory | storage part 12 Selection part 13 Notification part 14 Priority order determination part 20 Controller 21 Storage unit 22 Storage apparatus 100 Information processing system 201 First interface unit 202 Transfer unit 203 Second interface unit 204 Management table storage unit 205 Access performance measurement unit

Claims (10)

記憶ユニットとホスト装置とに接続され、前記記憶ユニットと前記ホスト装置との間のデータ転送を行う複数のコントローラのそれぞれと、前記ホスト装置との間の通信の障害の有無を検出する監視手段と、
前記コントローラの各々の前記記憶ユニットに対するアクセス性能が高いほど高くなるよう設定された優先順位を記憶する優先順位記憶手段と、
前記通信の障害が検出された場合、当該通信の障害が検出されない複数の前記コントローラの中で、前記優先順位が最も高い前記コントローラを選択する選択手段と、
前記記憶ユニットに対するアクセスを、識別子を通知された前記コントローラを経由して行う前記ホスト装置に、選択された前記コントローラの識別子を通知する通知手段と
を含むパス制御装置。
A plurality of controllers connected to the storage unit and the host device for transferring data between the storage unit and the host device, and monitoring means for detecting the presence or absence of a communication failure between the host device and ,
Priority storage means for storing the priority set so as to be higher as the access performance of each of the controllers to the storage unit is higher ;
When the communication failure is detected, a selection unit that selects the controller having the highest priority among the plurality of controllers in which the communication failure is not detected;
A path control device comprising: a notification unit configured to notify the host device that performs access to the storage unit via the controller that has been notified of an identifier, the identifier of the selected controller.
複数の前記コントローラは、それぞれ、複数の前記ホスト装置に接続され、前記記憶ユニットと複数の前記ホスト装置との間でデータを転送し、
前記監視手段は、前記コントローラと複数の前記ホスト装置の間の通信の障害の有無を検出し、
前記選択手段は、前記複数のホスト装置のいずれに対しても通信の障害が検出されない前記コントローラで、前記優先順位が最も高い前記コントローラを選択する
請求項1に記載のパス制御装置。
The plurality of controllers are connected to the plurality of host devices, respectively, and transfer data between the storage unit and the plurality of host devices,
The monitoring means detects the presence or absence of a communication failure between the controller and the plurality of host devices,
The path control device according to claim 1, wherein the selection unit selects the controller having the highest priority among the controllers in which no communication failure is detected for any of the plurality of host devices.
前記記憶ユニットに対するアクセス性能を計測する前記コントローラの各々から、計測された前記アクセス性能を取得し、取得された前記アクセス性能が高いほど前記優先順位が高くなるよう、前記コントローラの各々の前記優先順位を決定し、前記コントローラ毎の決定された前記優先順位を前記優先順位記憶手段に格納する優先順位決定手段
を含む請求項1又は2に記載のパス制御装置。
Obtaining the measured access performance from each of the controllers that measure the access performance to the storage unit, and the higher the access performance obtained, the higher the priority. The path control device according to claim 1, further comprising: a priority order determining unit that stores the priority order determined for each controller in the priority order storage unit.
前記記憶ユニットと、前記ホスト装置と、請求項1乃至3にいずれかに記載のパス制御装置とを含む情報処理システム。   An information processing system including the storage unit, the host device, and the path control device according to claim 1. 記憶ユニットとホスト装置とに接続され、前記記憶ユニットと前記ホスト装置との間のデータ転送を行う複数のコントローラのそれぞれと、前記ホスト装置との間の通信の障害の有無を検出し、
前記コントローラの各々の前記記憶ユニットに対するアクセス性能が高いほど高くなるよう設定された優先順位を優先順位記憶手段に記憶し、
前記通信の障害が検出された場合、当該通信の障害が検出されない複数の前記コントローラの中で、前記優先順位が最も高い前記コントローラを選択し、
前記記憶ユニットに対するアクセスを、識別子を通知された前記コントローラを経由して行う前記ホスト装置に、選択された前記コントローラの識別子を通知する
パス制御方法。
Each of a plurality of controllers connected to the storage unit and the host device for transferring data between the storage unit and the host device, and detecting the presence or absence of a communication failure between the host device,
Storing the priority order set so as to be higher as the access performance of each of the storage units of the controller is higher ;
If a failure of the communication is detected, among the plurality of the controllers failure of the communication is not detected, it selects the highest priority and the controller,
A path control method of notifying an identifier of the selected controller to the host device that performs access to the storage unit via the controller that is notified of the identifier.
それぞれ、複数の前記ホスト装置に接続された複数の前記コントローラで、前記記憶ユニットと複数の前記ホスト装置との間でデータを転送し、
前記コントローラと複数の前記ホスト装置の間の通信の障害の有無を検出し、
前記複数のホスト装置のいずれに対しても通信の障害が検出されない前記コントローラで、前記優先順位が最も高い前記コントローラを選択する
請求項5に記載のパス制御方法。
Each of the plurality of controllers connected to the plurality of host devices transfers data between the storage unit and the plurality of host devices,
Detecting the presence or absence of a communication failure between the controller and the plurality of host devices;
The path control method according to claim 5, wherein the controller having the highest priority is selected from the controllers in which no communication failure is detected for any of the plurality of host devices.
前記記憶ユニットに対するアクセス性能を計測する前記コントローラの各々から、計測された前記アクセス性能を取得し、取得された前記アクセス性能が高いほど前記優先順位が高くなるよう、前記コントローラの各々の前記優先順位を決定し、前記コントローラ毎の決定された前記優先順位を前記優先順位記憶手段に格納する
請求項5又は6に記載のパス制御方法。
Obtaining the measured access performance from each of the controllers that measure the access performance to the storage unit, and the higher the access performance obtained, the higher the priority. The path control method according to claim 5 or 6, wherein the priority order determined for each controller is stored in the priority order storage means.
コンピュータを、
記憶ユニットとホスト装置とに接続され、前記記憶ユニットと前記ホスト装置との間のデータ転送を行う複数のコントローラのそれぞれと、前記ホスト装置との間の通信の障害の有無を検出する監視手段と、
前記コントローラの各々の前記記憶ユニットに対するアクセス性能が高いほど高くなるよう設定された優先順位を記憶する優先順位記憶手段と、
前記通信の障害が検出された場合、当該通信の障害が検出されない複数の前記コントローラの中で、前記優先順位が最も高い前記コントローラを選択する選択手段と、
前記記憶ユニットに対するアクセスを、識別子を通知された前記コントローラを経由して行う前記ホスト装置に、選択された前記コントローラの識別子を通知する通知手段と
して動作させるパス制御プログラム。
Computer
A plurality of controllers connected to the storage unit and the host device for transferring data between the storage unit and the host device, and monitoring means for detecting the presence or absence of a communication failure between the host device and ,
Priority storage means for storing the priority set so as to be higher as the access performance of each of the controllers to the storage unit is higher ;
When the communication failure is detected, a selection unit that selects the controller having the highest priority among the plurality of controllers in which the communication failure is not detected;
A path control program that causes the host device that performs access to the storage unit via the controller notified of the identifier to operate as a notification unit that notifies the identifier of the selected controller.
コンピュータを、
それぞれ、複数の前記ホスト装置に接続され、前記記憶ユニットと複数の前記ホスト装置との間でデータを転送する、複数の前記コントローラの各々と、複数の前記ホスト装置の間の通信の障害の有無を検出する前記監視手段と、
前記複数のホスト装置のいずれに対しても通信の障害が検出されない前記コントローラで、前記優先順位が最も高い前記コントローラを選択する前記選択手段と
して動作させる請求項8に記載のパス制御プログラム。
Computer
Communication failure between each of the plurality of controllers and the plurality of host devices, each connected to the plurality of host devices and transferring data between the storage unit and the plurality of host devices. The monitoring means for detecting
The path control program according to claim 8, wherein the controller that detects no communication failure with any of the plurality of host devices is operated as the selection unit that selects the controller having the highest priority.
コンピュータを、
前記記憶ユニットに対するアクセス性能を計測する前記コントローラの各々から、計測された前記アクセス性能を取得し、取得された前記アクセス性能が高いほど前記優先順位が高くなるよう、前記コントローラの各々の前記優先順位を決定し、前記コントローラ毎の決定された前記優先順位を前記優先順位記憶手段に格納する優先順位決定手段
して動作させる請求項8又は9に記載のパス制御プログラム。
Computer
Obtaining the measured access performance from each of the controllers that measure the access performance to the storage unit, and the higher the access performance obtained, the higher the priority. The path control program according to claim 8 or 9, wherein the path control program is operated as priority order determining means for storing the priority order determined for each controller in the priority order storage means.
JP2013014510A 2013-01-29 2013-01-29 Path control device, path control method, and path control program Expired - Fee Related JP5874933B2 (en)

Priority Applications (1)

Application Number Priority Date Filing Date Title
JP2013014510A JP5874933B2 (en) 2013-01-29 2013-01-29 Path control device, path control method, and path control program

Applications Claiming Priority (1)

Application Number Priority Date Filing Date Title
JP2013014510A JP5874933B2 (en) 2013-01-29 2013-01-29 Path control device, path control method, and path control program

Publications (2)

Publication Number Publication Date
JP2014146180A JP2014146180A (en) 2014-08-14
JP5874933B2 true JP5874933B2 (en) 2016-03-02

Family

ID=51426394

Family Applications (1)

Application Number Title Priority Date Filing Date
JP2013014510A Expired - Fee Related JP5874933B2 (en) 2013-01-29 2013-01-29 Path control device, path control method, and path control program

Country Status (1)

Country Link
JP (1) JP5874933B2 (en)

Families Citing this family (1)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
JP7017546B2 (en) * 2019-09-27 2022-02-08 株式会社日立製作所 Storage system, path management method, and path management program

Family Cites Families (5)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
JP3964212B2 (en) * 2002-01-16 2007-08-22 株式会社日立製作所 Storage system
JP2006107151A (en) * 2004-10-06 2006-04-20 Hitachi Ltd Storage system and communication path control method for storage system
JP4790372B2 (en) * 2005-10-20 2011-10-12 株式会社日立製作所 Computer system for distributing storage access load and control method thereof
US8930620B2 (en) * 2010-11-12 2015-01-06 Symantec Corporation Host discovery and handling of ALUA preferences and state transitions
JP2012208896A (en) * 2011-03-30 2012-10-25 Nec Corp Disk array device, connection path control method, and connection path control program

Also Published As

Publication number Publication date
JP2014146180A (en) 2014-08-14

Similar Documents

Publication Publication Date Title
US8204980B1 (en) Storage array network path impact analysis server for path selection in a host-based I/O multi-path system
US9137148B2 (en) Information processing system and information processing apparatus
US8560878B2 (en) System and method for failure detection by a storage expander preceding an expander experiencing a failure
JP2007072571A (en) Computer system, management computer and access path management method
US9229660B2 (en) Storage system and method for controlling storage system
US9208124B2 (en) Reset of processing core in multi-core processing system
JP2016053855A (en) Storage device, firmware update method, and firmware update program
JP2006154880A (en) Information processing system and access method
JP2019095971A (en) Storage system, storage controller, and program
JP2012043304A (en) Disk array apparatus and control method of disk array apparatus
JP4551947B2 (en) Device that manages the electronic devices that make up the storage system
US20090228610A1 (en) Storage system, storage apparatus, and control method for storage system
JP6179119B2 (en) Management device, management method, and management program
WO2010140189A1 (en) Storage system and control methods for the same
US10642705B2 (en) Storage system and storage method
US8019217B2 (en) Storage system and optical module switching method for storage system
JP5874933B2 (en) Path control device, path control method, and path control program
WO2017081748A1 (en) Storage system and storage management method
US20180364936A1 (en) Storage control device, method and non-transitory computer-readable storage medium
US20120180066A1 (en) Virtual tape library cluster
US9246848B2 (en) Relay apparatus, storage system, and method of controlling relay apparatus
KR101694978B1 (en) Network option apparatus and the operating method
JP2010050706A (en) Information processor, control method of information processor, and control program of information processor
JP6194593B2 (en) Redundant system, redundant method, storage device, and program
JP2015053555A (en) Data transfer device and data transfer method

Legal Events

Date Code Title Description
A621 Written request for application examination

Free format text: JAPANESE INTERMEDIATE CODE: A621

Effective date: 20140519

A977 Report on retrieval

Free format text: JAPANESE INTERMEDIATE CODE: A971007

Effective date: 20150330

A131 Notification of reasons for refusal

Free format text: JAPANESE INTERMEDIATE CODE: A131

Effective date: 20150407

A521 Request for written amendment filed

Free format text: JAPANESE INTERMEDIATE CODE: A523

Effective date: 20150605

A02 Decision of refusal

Free format text: JAPANESE INTERMEDIATE CODE: A02

Effective date: 20150818

A521 Request for written amendment filed

Free format text: JAPANESE INTERMEDIATE CODE: A523

Effective date: 20151117

A911 Transfer to examiner for re-examination before appeal (zenchi)

Free format text: JAPANESE INTERMEDIATE CODE: A911

Effective date: 20151125

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

A61 First payment of annual fees (during grant procedure)

Free format text: JAPANESE INTERMEDIATE CODE: A61

Effective date: 20160106

R150 Certificate of patent or registration of utility model

Ref document number: 5874933

Country of ref document: JP

Free format text: JAPANESE INTERMEDIATE CODE: R150

LAPS Cancellation because of no payment of annual fees