[go: up one dir, main page]

JP2015090631A - Storage control device, storage system, storage control method and program - Google Patents

Storage control device, storage system, storage control method and program Download PDF

Info

Publication number
JP2015090631A
JP2015090631A JP2013230859A JP2013230859A JP2015090631A JP 2015090631 A JP2015090631 A JP 2015090631A JP 2013230859 A JP2013230859 A JP 2013230859A JP 2013230859 A JP2013230859 A JP 2013230859A JP 2015090631 A JP2015090631 A JP 2015090631A
Authority
JP
Japan
Prior art keywords
pool
storage
controller
group
controllers
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.)
Pending
Application number
JP2013230859A
Other languages
Japanese (ja)
Inventor
智一 稲垣
Tomokazu Inagaki
智一 稲垣
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 JP2013230859A priority Critical patent/JP2015090631A/en
Publication of JP2015090631A publication Critical patent/JP2015090631A/en
Pending legal-status Critical Current

Links

Images

Landscapes

  • Information Retrieval, Db Structures And Fs Structures Therefor (AREA)

Abstract

PROBLEM TO BE SOLVED: To distribute a load between controllers, and equalize an access performance between storage devices.SOLUTION: A storage control device including a plurality of controllers receiving a request of a host computer and implementing an input/output of an allocated storage device comprises: grouping means; and path control means. The grouping means is configured to divide the storage devices in a pool to groups of the number of controllers. The path control means is configured to; allocate one group to a master controller of the pool; allocate other groups to other controller in which access to storage devices in the pool is slower than the master controller of the pool; and cyclically change the group to be allocated to the master controller of the pool for each prescribed time.

Description

本願発明は、ストレージ制御装置、ストレージシステム、ストレージ制御方法、および、プログラム、特に、複数のアクセスコントローラ間の負荷分散に関する。   The present invention relates to a storage control device, a storage system, a storage control method, and a program, and more particularly to load distribution among a plurality of access controllers.

特許文献1は、情報処理装置から複数の論理パスで接続される記憶装置を開示する。このシステムは、応答時間を参照して論理パスの負荷を判定し、データ入出力要求を割り当てる論理パスを負荷に応じて決定する。   Patent Document 1 discloses a storage device connected from an information processing apparatus through a plurality of logical paths. This system refers to the response time to determine the load on the logical path, and determines the logical path to which the data input / output request is assigned according to the load.

特許文献2は、複数のホストコンピュータと複数の論理ボリュームをネットワークで接続したシステムを開示する。複数の論理ボリュームは、複数のアレイグループに分けて管理されている。このシステムは、アレイグループ間でアクセス頻度の差があると、頻度の高いグループの論理ボリュームのデータを、頻度の低いグループの論理ボリュームにマイグレーションする。   Patent Document 2 discloses a system in which a plurality of host computers and a plurality of logical volumes are connected via a network. The plurality of logical volumes are managed by being divided into a plurality of array groups. When there is a difference in access frequency between array groups, this system migrates data of a logical volume of a frequent group to a logical volume of a less frequent group.

特許文献3は、複数のサーバコンピュータと複数の論理ディスクLUを複数のパスで接続したシステムを開示する。このシステムは、同一のチャネルアダプタを経由するパスをグループ化して管理し、あるパスで遅延が発生すると、グループ単位でパスの閉塞を行う。   Patent Document 3 discloses a system in which a plurality of server computers and a plurality of logical disks LU are connected by a plurality of paths. In this system, paths that pass through the same channel adapter are managed in groups, and when a delay occurs in a certain path, the path is blocked in units of groups.

特開2005-10956号公報JP 2005-10956 A 特開2012-108931号公報JP 2012-108931 JP 特開2011-238290号公報JP 2011-238290 A

特許文献1の技術は、ALUA (Asymmetric Logical Unit Access)構成のシステムには適用できない。ALUA構成においては、記憶装置に対してアクセスする際に、経由するパスによって性能が異なる。したがって、ALUA構成において、特許文献3の御術を適用すると、性能が良いパスだけにアクセスが集中する。特許文献2と3は上記課題を解決するものではない。   The technique of Patent Document 1 cannot be applied to a system having an ALUA (Asymmetric Logical Unit Access) configuration. In the ALUA configuration, when accessing a storage device, the performance varies depending on the path through which it passes. Therefore, in the ALUA configuration, when the technique of Patent Document 3 is applied, access concentrates only on paths with good performance. Patent documents 2 and 3 do not solve the above problems.

本発明は、上記課題を解決することを目的とする。   The present invention aims to solve the above problems.

本発明の一実施の形態のストレージ制御装置は、複数の記憶装置を含むプールとホストコンピュータに接続され、前記ホストコンピュータの要求を受信して、割り当てられた前記記憶装置の入出力を実行するコントローラを複数備えたストレージ制御装置であって、前記プール内の記憶装置を前記コントローラの数のグループに分けるグルーピング手段と、一つのグループを当該プールのマスタコントローラに割り当て、他のグループを当該プール内の前記記憶装置へのアクセスが当該プールのマスタコントローラより遅い他のコントローラに割り当て、所定時間ごとに、当該プールのマスタコントローラに割り当てるグループを循環的に変更するパス制御手段と、を備える。   A storage control device according to an embodiment of the present invention is connected to a pool including a plurality of storage devices and a host computer, receives a request from the host computer, and executes input / output of the allocated storage device A plurality of storage control devices, grouping means for dividing the storage devices in the pool into groups of the number of controllers, assigning one group to the master controller of the pool, and assigning other groups to the pool in the pool Path control means for assigning to another controller that is slower than the master controller of the pool and accessing the storage device and cyclically changing a group to be assigned to the master controller of the pool every predetermined time.

本発明の一実施の形態のストレージ制御方法は、複数の記憶装置のプールに接続され、複数台のコントローラを備えたストレージ装置における方法であって、前記プール内の記憶装置を前記コントローラの数のグループに分け、一つのグループを当該プールのマスタコントローラに割り当て(メモ:Optimizedパスの設定)、他のグループを当該プール内記憶装置へのアクセスが当該プールのマスタコントローラより遅くなる他のコントローラに割り当て、所定時間ごとに、当該プールのマスタコントローラに割り当てるグループを循環的に変更し、ホストコンピュータから前記記憶装置の何れかを指定した入出力要求を受けて、指定された前記記憶装置に割り当てられたコントローラ経由でアクセスする。   A storage control method according to an embodiment of the present invention is a method in a storage device that is connected to a pool of a plurality of storage devices and includes a plurality of controllers, and the storage devices in the pool are assigned the number of controllers. Divide into groups, assign one group to the master controller of the pool (note: Optimized path setting), and assign other groups to other controllers whose access to the storage device in the pool is slower than the master controller of the pool The group assigned to the master controller of the pool is cyclically changed every predetermined time, and an input / output request designating one of the storage devices is received from the host computer, and assigned to the designated storage device Access via controller.

本発明の一実施の形態のプログラムは、複数の記憶装置を含むプールとホストコンピュータに接続され、前記ホストコンピュータの要求を受信して、割り当てられた前記記憶装置の入出力を実行するコントローラを複数備えたコンピュータに、前記プール内の記憶装置を前記コントローラの数のグループに分けるグルーピング処理と、一つのグループを当該プールのマスタコントローラに割り当て、他のグループを当該プール内の前記記憶装置へのアクセスが当該プールのマスタコントローラより遅い他のコントローラに割り当て、所定時間ごとに、当該プールのマスタコントローラに割り当てるグループを循環的に変更するパス制御処理と、を実行させる。   A program according to an embodiment of the present invention includes a plurality of controllers that are connected to a pool including a plurality of storage devices and a host computer, receive a request from the host computer, and execute input / output of the allocated storage device A grouping process that divides the storage devices in the pool into groups of the number of controllers, assigns one group to the master controller of the pool, and accesses other storage groups to the storage devices in the pool. Is assigned to another controller that is later than the master controller of the pool, and a path control process is executed for cyclically changing the group to be assigned to the master controller of the pool every predetermined time.

ホストコンピュータと記憶装置の間に接続されて、記憶装置対応にアクセス性能の異なる複数のコントローラを備える制御装置において、コントローラ間の負荷を分散するとともに、記憶装置間のアクセス性能の均等化を行うことができる。   In a control device that is connected between a host computer and a storage device and includes a plurality of controllers with different access performance corresponding to the storage device, the load between the controllers is distributed and the access performance between the storage devices is equalized. Can do.

図1は、第1の実施の形態の一例であるストレージ制御装置100の構成図である。FIG. 1 is a configuration diagram of a storage control apparatus 100 as an example of the first embodiment. 図2は、管理テーブル111の一部であるLU管理テーブルの構成図である。FIG. 2 is a configuration diagram of an LU management table that is a part of the management table 111. 図3は、管理テーブル111の一部であるLUコントローラテーブルの構成図である。FIG. 3 is a configuration diagram of an LU controller table that is a part of the management table 111. 図4は、LUコントローラテーブルが図3の状態である場合におこなわれる、アクセスの様子を示す。FIG. 4 shows an access state performed when the LU controller table is in the state shown in FIG. 図5は、入れ替え後のLUコントローラテーブルの構成図である。FIG. 5 is a configuration diagram of the LU controller table after replacement. 図6は、LUコントローラテーブルが図5の状態である場合におこなわれる、アクセスの様子を示す。FIG. 6 shows an access state performed when the LU controller table is in the state shown in FIG. 図7は、グルーピング部110の動作フローチャートである。FIG. 7 is an operation flowchart of the grouping unit 110. 図8は、パス制御部112のLUに対するコントローラの割り当てと変更の動作フローチャートである。FIG. 8 is an operation flowchart of controller assignment and change for the LU of the path control unit 112. 図9は、第2の実施の形態のLU管理テーブルの構成を示す。FIG. 9 shows the configuration of the LU management table of the second embodiment. 図10は、第2の実施の形態におけるコントローラの割り当てを示す。FIG. 10 shows controller assignments in the second embodiment. 図11は、第2の実施の形態におけるコントローラの割り当ての一定時間後の変化を示す。FIG. 11 shows a change after a predetermined time of controller assignment in the second embodiment. 図12は、第3の実施の形態の一例であるストレージ制御装置100の構成図である。FIG. 12 is a configuration diagram of the storage control apparatus 100 as an example of the third embodiment.

近年ではホストやストレージの仮想化が進んでおり、多数の仮想ホストをストレージに接続、ストレージには多数の仮想的なディスクを構築して必要なときに必要な分だけ使用して柔軟に運用するシステムが一般的になっている。通常ホストからストレージ装置への論理的なディスクへのアクセスは冗長化のために複数のコントローラに接続されていて、正常時はいずれかのコントローラを通して論理的なディスクにアクセスしている。このとき接続されるコントローラによって論理的なディスクごとにアクセス性能が異なるような構成のストレージ装置の場合、性能が出るコントローラへの負荷の集中たり、ホストごとにアクセス性能に偏りが出ることがある問題があった。このような課題を解決する為のストレージ制御装置100について説明する。   In recent years, virtualization of hosts and storage has progressed, and a large number of virtual hosts are connected to the storage, and a large number of virtual disks are built in the storage and used flexibly by using as many as necessary. The system has become commonplace. Normally, the logical disk access from the host to the storage apparatus is connected to a plurality of controllers for redundancy, and the logical disk is accessed through one of the controllers in the normal state. In the case of a storage device configured to have different access performance for each logical disk depending on the controller connected at this time, there may be a concentration of load on the controller where the performance occurs or access performance may be biased for each host was there. A storage control apparatus 100 for solving such problems will be described.

(第1の実施の形態の構成)
図1は、本実施の形態の一例であるストレージ制御装置100の構成図である。本例のストレージ制御装置100のコントローラ101-1(コントローラ0)とコントローラ101-2(コントローラ1)は、それぞれ、ホストコンピュータ201(ホスト1)、ホストコンピュータ202(ホスト2)、ホストコンピュータ203(ホストm)、ホストコンピュータ204(ホストn)に接続されている。さらに、コントローラ0とコントローラ1は、それぞれ、物理ディスク群105に接続されている。
(Configuration of the first embodiment)
FIG. 1 is a configuration diagram of a storage control apparatus 100 as an example of the present embodiment. The controller 101-1 (controller 0) and the controller 101-2 (controller 1) of the storage control apparatus 100 of this example are respectively a host computer 201 (host 1), a host computer 202 (host 2), and a host computer 203 (host). m) connected to the host computer 204 (host n). Furthermore, the controller 0 and the controller 1 are each connected to the physical disk group 105.

なお、ストレージ制御装置100に接続されたホスト201等と物理ディスク群105は、全体としてストレージシステム300を構成する。   Note that the host 201 and the like and the physical disk group 105 connected to the storage control device 100 constitute a storage system 300 as a whole.

物理ディスク群105は、論理的なディスク装置であるLU(Logical Unit)を複数包含する。LUは、そのアクセス時に、例えば、コントローラによって、物理ディスクにマッピングされる。各々のホストは、冗長化された複数のコントローラのうちの、いずれかのコントローラを経由していずれかのLUにアクセスを行う。このとき、例えば、ホスト1はコントローラ0、コントローラ1のどちらを経由してもLUにアクセスすることができるが、LUごとに経由するパスによってアクセス性能が異なる。このような構成をALUA構成という。   The physical disk group 105 includes a plurality of LUs (Logical Units) that are logical disk devices. The LU is mapped to a physical disk by the controller, for example, when accessed. Each host accesses one LU via one of a plurality of redundant controllers. At this time, for example, the host 1 can access the LU through either the controller 0 or the controller 1, but the access performance differs depending on the path through each LU. Such a configuration is called an ALUA configuration.

ALUA構成のストレージ制御装置100は、ALUAを制御するSCSI(Small Computer System Interface)コマンドにより、ホストとLU間のパスの切り替え制御を行うことができる。LUごとにアクセスに最適な、即ち、アクセス性能が優れているパスをActive/Optimizedパス、それ以外のパスをActive/Non-Optimizedパスという。コントローラは、どのコントローラを経由するパスがActive/Optimizedパスであるかを、ALUA制御用SCSIコマンドのReport Target Port Groupsの仕様に従い、ホストに通知している。   The storage control apparatus 100 having the ALUA configuration can perform path switching control between the host and the LU by a SCSI (Small Computer System Interface) command for controlling the ALUA. A path that is optimal for access for each LU, that is, a path with excellent access performance is called an Active / Optimized path, and other paths are called Active / Non-Optimized paths. The controller notifies the host of which controller passes through the Active / Optimized path according to the specification of Report Target Port Groups of the SCSI command for ALUA control.

ストレージ制御装置100は物理ディスク群を例えば、RAID(Redundant Arrays of Independent Disks)構成単位でまとめたものをプールとして管理する。プールを制御するコントローラは、ストレージ制御装置100内のいずれかのコントローラであり、このコントローラを、プールマスタコントローラという。図1において、ストレージ制御装置100には、プール0とプール1の二つのプールが接続されている。プール0のマスタコントローラはコントローラ0であり、プール1のマスタコントローラはコントローラ1である。   The storage control device 100 manages, as a pool, a collection of physical disks, for example, in units of RAID (Redundant Arrays of Independent Disks). The controller that controls the pool is any controller in the storage control apparatus 100, and this controller is referred to as a pool master controller. In FIG. 1, two pools, pool 0 and pool 1, are connected to the storage control device 100. The master controller of pool 0 is controller 0, and the master controller of pool 1 is controller 1.

プールに対するアクセスは必ず当該プールのマスタコントローラから行われる。あるLUに対するアクセス要求が、当該LUのマスタコントローラに出されれば、当該マスタコントローラが直接当該LUをアクセスする。あるLUに対するアクセス要求が、当該LUのマスタコントローラ以外のコントローラ(非マスタコントローラ)に出されれば、当該非マスタコントローラは、例えば、マスタコントローラにアクセス要求を転送して、間接的に当該LUをアクセスする。   Access to a pool is always made from the master controller of the pool. When an access request for an LU is issued to the master controller of the LU, the master controller directly accesses the LU. If an access request for an LU is issued to a controller (non-master controller) other than the master controller of the LU, the non-master controller, for example, transfers the access request to the master controller and indirectly assigns the LU. to access.

各コントローラには、グルーピング部110、LU管理テーブル、パス制御部112、I/O制御部113が搭載されている。グルーピング部110、パス制御部112、および、I/O制御部113は、コントローラに内蔵されている電子論理回路である。グルーピング部110、パス制御部112、およびI/O制御部113は、コントローラ内の制御メモリ(図示せず)に格納されたプログラムを、コントローラのプロセッサ(図示せず)が実行することで実現されても良い。この場合、コントローラは、一種のコンピュータである。LU管理テーブルは、コントローラ内の制御メモリに格納されている。   Each controller includes a grouping unit 110, an LU management table, a path control unit 112, and an I / O control unit 113. The grouping unit 110, the path control unit 112, and the I / O control unit 113 are electronic logic circuits built in the controller. The grouping unit 110, the path control unit 112, and the I / O control unit 113 are realized by a controller processor (not shown) executing a program stored in a control memory (not shown) in the controller. May be. In this case, the controller is a kind of computer. The LU management table is stored in the control memory in the controller.

なお、グルーピング部110、LU管理テーブル、パス制御部112は、コントローラとは別に、ストレージ制御装置100内の、電子論理回路、制御メモリで実現されていても良い。さらに、グルーピング部110、パス制御部112は、ストレージ制御装置100内の制御メモリ(図示せず)に格納されたプログラムを、ストレージ制御装置100のプロセッサ(図示せず)が実行することで実現されても良い。この場合、ストレージ制御装置100は、一種のコンピュータである。   The grouping unit 110, the LU management table, and the path control unit 112 may be realized by an electronic logic circuit and a control memory in the storage control device 100, separately from the controller. Further, the grouping unit 110 and the path control unit 112 are realized by executing a program stored in a control memory (not shown) in the storage control device 100 by a processor (not shown) of the storage control device 100. May be. In this case, the storage control device 100 is a kind of computer.

図2は、管理テーブル111の一部であるLU管理テーブルの構成図である。LU管理テーブルは、LUごとにアセス数、および、グループ番号を記憶するエリアをもつ。この図は、ストレージ制御装置100には、各々4つのLUを包含する2つのプールが接続されていることを示す。この図において、例えば、プール0は、LUN(Logical Unit Number)が0から3のLUを包含し、おのおののアクセス数が20,30,30,20であって、LUNが0と1のLUのグループ0と、LUNが2と3のLUのグループ1の二つのグループに分けられていることを示している。なお、このLU管理テーブルは、プールごとに別のコントローラに分散して記憶されていても良い。   FIG. 2 is a configuration diagram of an LU management table that is a part of the management table 111. The LU management table has an area for storing the number of accesses and the group number for each LU. This figure shows that the storage control apparatus 100 is connected with two pools each including four LUs. In this figure, for example, pool 0 includes LUs with LUNs (Logical Unit Numbers) of 0 to 3, each of which has an access number of 20, 30, 30, 20, and LUNs with LUNs of 0 and 1. This shows that group 0 and LUN are divided into two groups, group 1 of LUs 2 and 3. This LU management table may be distributed and stored in different controllers for each pool.

図3は、管理テーブル111の一部であるLUコントローラテーブルの構成図である。LUコントローラテーブルは、LUごとにActive/Optimizedパスで使用されるコントローラの識別情報を記憶するエリアを持つ。この図は、図2のLU管理テーブルのデータ例において、例えば、グループ0に属するLU(LUNが0、1)に対しては、コントローラ0がActive/Optimizedパスで使用され、グループ1に属するLU(LUNが2、3)に対しては、コントローラ1がActive/Optimizedパスで使用されることを示す。なおこのLUコントローラテーブルは、全コントローラに同じものが記憶されていても良い。   FIG. 3 is a configuration diagram of an LU controller table that is a part of the management table 111. The LU controller table has an area for storing controller identification information used in the Active / Optimized path for each LU. In this example of the LU management table of FIG. 2, for example, for an LU belonging to group 0 (LUN is 0, 1), controller 0 is used in the Active / Optimized path and LU belonging to group 1 is shown. (LUN is 2 or 3) indicates that the controller 1 is used in the Active / Optimized path. The same LU controller table may be stored in all controllers.

I/O制御部113は、ホストが送信した入出力要求を受信して、当該要求で指定されたLUに対応する物理ディスクにアクセスする。また、I/O制御部113は、管理テーブル102のアクセス数を記憶するエリアに、アクセスがあったLUへのアクセス数をカウントする。   The I / O control unit 113 receives the input / output request transmitted by the host, and accesses the physical disk corresponding to the LU specified by the request. In addition, the I / O control unit 113 counts the number of accesses to the LU that has been accessed in the area for storing the number of accesses in the management table 102.

グルーピング部110は、一定時間ごとにLU管理テーブルのアクセス数を参照し、プール単位で各LUのアクセス数の合計がなるべく均等となるようにグルーピングしてLU管理テーブルのグループ番号エリアに番号を記録する。なお、ここで均等というのは厳密な意味ではなく、グループ間のアクセス数の差異が所定条件以下になることを意味する。図7は、グルーピング部110の動作フローチャートである。この例においては、グループ間のアクセス数の差異が、最大アクセス数のLU分以下となる。また、グループ化の指標は、アクセス数に限られず、転送データ量、あるいは、I/Oビジー時間比率としても良い。   The grouping unit 110 refers to the number of accesses to the LU management table at regular intervals, groups the pool so that the total number of accesses to each LU is as uniform as possible, and records the number in the group number area of the LU management table. To do. Here, equality is not a strict meaning, but means that the difference in the number of accesses between groups is below a predetermined condition. FIG. 7 is an operation flowchart of the grouping unit 110. In this example, the difference in the number of accesses between groups is equal to or less than the maximum access number LU. The index for grouping is not limited to the number of accesses, and may be the amount of transfer data or the I / O busy time ratio.

パス制御部112は、LUのグループごとにActive/Optimizedパスとして使用するコントローラを決定する。これを、グループをコントローラに割り当てる、または、コントローラをグループに割り当てるという。パス制御部112は、LUごとに、割り当てたコントローラの識別子をLUコントローラテーブルのActive/Optimizedパスで使用されるコントローラの識別情報エリアに記録する。   The path control unit 112 determines a controller to be used as an Active / Optimized path for each LU group. This is called assigning a group to a controller or assigning a controller to a group. For each LU, the path control unit 112 records the assigned controller identifier in the identification information area of the controller used in the Active / Optimized path of the LU controller table.

パス制御部112は、ホストが発行するReport Target Port Groupsコマンドを受信すると、当該コマンドで指定されたLUに対応するコントローラの識別情報をLUコントローラテーブルから取得してホストに出力し、ホストは指定されたコントローラ経由で、当該LUにアクセスする。   Upon receiving the Report Target Port Groups command issued by the host, the path control unit 112 obtains the controller identification information corresponding to the LU specified by the command from the LU controller table and outputs it to the host. The LU is accessed via the controller.

図4は、LUコントローラテーブルが図3の状態である場合におこなわれる、アクセスの様子を示す。LUN0はコントローラ0を経由してアクセスされ、LUN2はコントローラ1を経由してアクセスされる。   FIG. 4 shows an access state performed when the LU controller table is in the state shown in FIG. LUN0 is accessed via controller 0, and LUN2 is accessed via controller 1.

なお、パス制御部112は、一定時間ごとにグループ間のActive/Optimizedパスのコントローラの入れ替えを行う。   Note that the path control unit 112 replaces the controllers of Active / Optimized paths between groups at regular time intervals.

図5は、入れ替え後のLUコントローラテーブルの構成図である。この図は、図2のLU管理テーブルのデータ例において、グループ0に属するLU(LUNが0、1)に対しては、Active/Optimizedパスで使用されるコントローラが0から1に変更され、グループ1に属するLU(LUNが2、3)に対しては、Active/Optimizedパスで使用されるコントローラが1から0に変更されている。   FIG. 5 is a configuration diagram of the LU controller table after replacement. In this example of the LU management table in FIG. 2, the controller used in the Active / Optimized path is changed from 0 to 1 for the LU belonging to group 0 (LUN is 0, 1). For LUs belonging to 1 (LUNs 2 and 3), the controller used in the Active / Optimized path is changed from 1 to 0.

図6は、LUコントローラテーブルが図5の状態である場合におこなわれる、アクセスの様子を示す。LUN0はコントローラ1を経由してアクセスされ、LUN2はコントローラ0を経由してアクセスされる。   FIG. 6 shows an access state performed when the LU controller table is in the state shown in FIG. LUN 0 is accessed via the controller 1 and LUN 2 is accessed via the controller 0.

図8は、パス制御部112のLUに対するコントローラの割り当てと変更の動作フローチャートである。   FIG. 8 is an operation flowchart of controller assignment and change for the LU of the path control unit 112.

なお、グルーピング部110、管理テーブル111、パス制御部112が、コントローラの内部に設けられている場合、各部は、当該コントローラがマスタコントローラになっているプールに関して、上記の動作を行う。この場合、パス制御部112は、LUコントローラテーブルの情報を設定あるいは変更したときは、設定・変更情報を他のコントローラに送信しても良い。   When the grouping unit 110, the management table 111, and the path control unit 112 are provided inside the controller, each unit performs the above-described operation with respect to the pool in which the controller is the master controller. In this case, when the information in the LU controller table is set or changed, the path control unit 112 may transmit the setting / change information to another controller.

本実施の形態のストレージ制御装置100は、ALUA構成において、コントローラ間の負荷を分散するとともに、記憶装置間のアクセス性能の均等化を行うことができる。その理由は、バス制御部112が、プールを分割したグループに対するコントローラの割り当てを変更するからである。プール内のLUへのアクセスにおいて、常にプールマスタ側のコントローラに接続されないようになっているからである。また、グルーピング部110が、プールを、アクセス量が均等なグループに分割するからである。   The storage control device 100 according to the present embodiment can distribute the load between controllers and equalize access performance between storage devices in an ALUA configuration. The reason is that the bus control unit 112 changes the assignment of the controller to the group into which the pool is divided. This is because the access to the LU in the pool is not always connected to the controller on the pool master side. Further, the grouping unit 110 divides the pool into groups with equal access amounts.

なお、本実施の形態において、ストレージ制御装置100が備えるコントローラが2台、接続されるLUのプールが二つに限られない。コントローラおよびプールの数が3以上のNである場合、グルーピング部110は、各プールをN分割し、そのN個のグループをラウンドロビンで、マスタコントローラに割り当てる。   In this embodiment, the storage controller 100 includes two controllers and the number of LU pools to be connected is not limited to two. When the number of controllers and pools is N equal to or greater than 3, the grouping unit 110 divides each pool into N and assigns the N groups to the master controller in round robin.

(第2の実施形態)
第1の実施形態のようにグルーピング部110によってアクセス数でパスの割り振りを均等に行った場合、アクセス性能が常に必要な基幹業務用のLUも例外なくプールマスタではないコントローラにActive/Optimizedパスが割り振られてしまう期間が生じてしまう。この場合、ストレージ内での負荷は均等になっていたとしてもシステム全体としては遅い状態になってしまう問題が生じる。
(Second Embodiment)
When the path is evenly allocated by the number of accesses by the grouping unit 110 as in the first embodiment, an active / optimized path is also provided to a controller that is not a pool master without exception for a core business LU that always requires access performance. There will be a period of allocation. In this case, there arises a problem that even if the load in the storage is uniform, the entire system becomes slow.

その対策として、本実施形態のストレージ制御装置100においては、管理テーブルに優先フラグをセットできるエリアを設けて、ユーザが保守端末や管理ソフトから常にアクセス性能が必要なLUに優先フラグをセットする。   As a countermeasure, in the storage control device 100 of the present embodiment, an area in which a priority flag can be set is provided in the management table, and the user sets a priority flag to an LU that always requires access performance from the maintenance terminal or management software.

図9は、本実施の形態のLU管理テーブルの構成を示す。本図においては、プール0のLUNが0と2のLUに優先フラグが設定されている。グルーピング部110は、優先フラグがセットされているLUは優先グループ100を設定し、そのほかのLUでアクセス数が均等になるようにグループを分ける。図9の例は、プール0は、LUNが1のLUのグループ0と、LUNが3のLUのグループ1の二つのグループに分けられていることを示している。このように優先フラグの設定されていないプール1については、第1の実施形態と同じ論理でグループ分けが実行される。   FIG. 9 shows the configuration of the LU management table of the present embodiment. In this figure, priority flags are set for LUs with LUNs 0 and 2 in pool 0. The grouping unit 110 sets the priority group 100 for the LU for which the priority flag is set, and divides the group so that the number of accesses is equal for the other LUs. The example of FIG. 9 shows that the pool 0 is divided into two groups: an LU group 0 with an LUN of 1 and an LU group 1 with an LUN of 3. As described above, for the pool 1 in which the priority flag is not set, grouping is executed with the same logic as in the first embodiment.

パス制御部112は、優先グループ100のActive/Optimizedパスが必ずプールマスタになるように設定し、その他のグループのActive/Optimizedを各コントローラに振り分ける。図10は、本実施の形態におけるコントローラの割り当てを示す。図11は、本実施の形態におけるコントローラの割り当ての一定時間後の変化を示す。   The path control unit 112 sets the Active / Optimized path of the priority group 100 to be a pool master without fail, and distributes the Active / Optimized of other groups to each controller. FIG. 10 shows controller assignment in the present embodiment. FIG. 11 shows a change after a predetermined time of controller assignment in the present embodiment.

図10において、優先グループ100は、プール0のプールマスタであるコントローラ0に割り当てられている。プール0においては、当初は、グループ0のLU(LUN=1)がコントローラ1に、グループ1のLU(LUN=3)がコントローラ0に割り当てられている。   In FIG. 10, the priority group 100 is assigned to the controller 0 that is the pool master of the pool 0. In the pool 0, the LU of the group 0 (LUN = 1) is initially assigned to the controller 1 and the LU of the group 1 (LUN = 3) is assigned to the controller 0.

一定時間後には、プール0においては、グループ0のLU(LUN=1)と、グループ1のLU(LUN=3)の割り当てコントローラが変更されて逆転しているが、グループ100のLUは固定的にコントローラ0に割り当てられている。   After a certain time, in the pool 0, the allocation controller of the LU of the group 0 (LUN = 1) and the LU of the group 1 (LUN = 3) is changed and reversed, but the LU of the group 100 is fixed. Assigned to the controller 0.

なお、図9乃至11から明らかなように、本実施の形態において、優先フラグの設定のないプール(例えば、図中のプール1)に対しては、第1の実施の形態と同じ扱いがなされる。   As is clear from FIGS. 9 to 11, in the present embodiment, a pool without a priority flag (for example, pool 1 in the figure) is handled in the same manner as in the first embodiment. The

本実施の形態のストレージ制御装置100は、システム全体のアクセス性能の安定性を保証する。その理由は、パス制御部112が、性能が必要なLUを固定的にプールマスタであコントローラに割り当てるからである。   The storage control device 100 of this embodiment guarantees the stability of the access performance of the entire system. This is because the path control unit 112 assigns an LU that requires performance to a controller that is a pool master in a fixed manner.

(第3の実施の形態)
図12は、本実施の形態の一例であるストレージ制御装置100の構成図である。ストレージ制御装置100は、コントローラ101を複数と、グルーピング110と、パス制御部112を備える。
(Third embodiment)
FIG. 12 is a configuration diagram of the storage control apparatus 100 as an example of the present embodiment. The storage control device 100 includes a plurality of controllers 101, a grouping 110, and a path control unit 112.

コントローラ101は、複数の記憶装置を含むプールとホストコンピュータに接続され、ホストコンピュータの要求を受信して、割り当てられた前記記憶装置の入出力を実行する。   The controller 101 is connected to a pool including a plurality of storage devices and a host computer, receives a request from the host computer, and executes input / output of the allocated storage device.

グルーピング部110は、プール内の記憶装置をコントローラの数のグループに分ける。パス制御部112は、一つのグループを当該プールのマスタコントローラに割り当て、他のグループを当該プール内の記憶装置へのアクセスが当該プールのマスタコントローラより遅い他のコントローラに割り当て、所定時間ごとに、当該プールのマスタコントローラに割り当てるグループを循環的に変更する。   The grouping unit 110 divides the storage devices in the pool into groups corresponding to the number of controllers. The path control unit 112 assigns one group to the master controller of the pool, assigns another group to another controller whose access to the storage device in the pool is slower than the master controller of the pool, and every predetermined time, The group assigned to the master controller of the pool is changed cyclically.

本実施の形態のストレージ制御装置100は、ALUA構成において、コントローラ間の負荷を分散するとともに、記憶装置間のアクセス性能の均等化を行うことができる。その理由は、バス制御部112が、プールを分割したグループに対するコントローラの割り当てを変更するからである。プール内のLUへのアクセスにおいて、常にプールマスタ側のコントローラに接続されないようになっているからである。   The storage control device 100 according to the present embodiment can distribute the load between controllers and equalize access performance between storage devices in an ALUA configuration. The reason is that the bus control unit 112 changes the assignment of the controller to the group into which the pool is divided. This is because the access to the LU in the pool is not always connected to the controller on the pool master side.

以上、実施形態を参照して本願発明を説明したが、本願発明は上記実施形態に限定されるものではない。本願発明の構成や詳細には、本願発明のスコープ内で当業者が理解しうる様々な変更をすることができる。   While the present invention has been described with reference to the embodiments, 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.

100 ストレージ制御装置
101 コントローラ
105 物理ディスク群
110 グルーピング部
111 管理テーブル
112 パス制御部
113 I/O制御部
201、202、203、204 ホストコンピュータ
100 storage controller
101 controller
105 physical disks
110 Grouping part
111 Management table
112 Path control unit
113 I / O controller
201, 202, 203, 204 Host computer

Claims (9)

複数の記憶装置を含むプールとホストコンピュータに接続され、前記ホストコンピュータの要求を受信して、割り当てられた前記記憶装置の入出力を実行するコントローラを複数備えたストレージ制御装置であって、
前記プール内の記憶装置を前記コントローラの数のグループに分けるグルーピング手段と、
一つのグループを当該プールのマスタコントローラに割り当て、他のグループを当該プール内の前記記憶装置へのアクセスが当該プールのマスタコントローラより遅い他のコントローラに割り当て、所定時間ごとに、当該プールのマスタコントローラに割り当てるグループを循環的に変更するパス制御手段と、を備えるストレージ制御装置。
A storage control device comprising a plurality of controllers connected to a pool including a plurality of storage devices and a host computer, receiving a request from the host computer, and executing input / output of the allocated storage device,
Grouping means for dividing the storage devices in the pool into groups of the number of controllers;
One group is assigned to the master controller of the pool, and another group is assigned to another controller whose access to the storage device in the pool is slower than the master controller of the pool. And a path control means for cyclically changing a group to be allocated to the storage control apparatus.
前記グルーピング手段は、前記記憶装置ごとの入出力量を参照して、前記グループ間の前記入出力量のグループ間の差異が所定条件以下となるようにグループに分ける、請求項1のストレージ制御装置。   The storage control device according to claim 1, wherein the grouping unit refers to an input / output amount for each storage device and divides the input / output amount between the groups into groups so that a difference between the groups is equal to or less than a predetermined condition. 前記グルーピング手段は、優先属性が付与された当該プール内の前記記憶装置を、前記プールのマスタコントローラに割り当てる、請求項1または2のストレージ制御手段。   The storage control unit according to claim 1 or 2, wherein the grouping unit allocates the storage device in the pool to which a priority attribute is assigned to a master controller of the pool. 前記複数のコントローラと同数のプールに接続され、前記複数のコントローラ各々は、前記複数のプールの何れかのマスタコントローラである、請求項1乃至3の何れかのストレージ制御装置。   4. The storage control device according to claim 1, wherein the storage control device is connected to the same number of pools as the plurality of controllers, and each of the plurality of controllers is any one of the plurality of pools. 請求項1乃至4の何れかのストレージ制御装置と、
前記複数の記憶装置のプールと、
前記ホストコンピュータと、を包含するストレージシステム。
The storage control device according to any one of claims 1 to 4,
A pool of the plurality of storage devices;
A storage system including the host computer.
複数の記憶装置のプールに接続され、複数台のコントローラを備えたストレージ装置における方法であって、
前記プール内の記憶装置を前記コントローラの数のグループに分け、
一つのグループを当該プールのマスタコントローラに割り当て(メモ:Optimizedパスの設定)、他のグループを当該プール内記憶装置へのアクセスが当該プールのマスタコントローラより遅くなる他のコントローラに割り当て、
所定時間ごとに、当該プールのマスタコントローラに割り当てるグループを循環的に変更し、
ホストコンピュータから前記記憶装置の何れかを指定した入出力要求を受けて、指定された前記記憶装置に割り当てられたコントローラ経由でアクセスする、ストレージ制御方法。
A method for a storage device connected to a pool of a plurality of storage devices and comprising a plurality of controllers,
Dividing the storage devices in the pool into groups of the number of controllers;
Assign one group to the master controller of the pool (note: Optimized path setting), assign the other group to another controller whose access to the storage device in the pool is slower than the master controller of the pool,
The group assigned to the master controller of the pool is changed cyclically at a predetermined time,
A storage control method for receiving an input / output request designating one of the storage devices from a host computer and accessing the designated storage device via a controller assigned thereto.
前記記憶装置ごとの入出力量を測定して、前記グループ間の前記入出力量のグループ間の差異が所定条件以下となるようにグループに分ける、請求項6のストレージ制御方法。   The storage control method according to claim 6, wherein the input / output amount for each storage device is measured and divided into groups such that the difference between the groups in the input / output amount is equal to or less than a predetermined condition. 優先属性が付与された当該プール内の前記記憶装置を、前記プールのマスタコントローラに割り当てる、請求項6または7のストレージ制御手段。   The storage control means according to claim 6 or 7, wherein the storage device in the pool to which the priority attribute is assigned is assigned to a master controller of the pool. 複数の記憶装置を含むプールとホストコンピュータに接続され、前記ホストコンピュータの要求を受信して、割り当てられた前記記憶装置の入出力を実行するコントローラを複数備えたコンピュータに、
前記プール内の記憶装置を前記コントローラの数のグループに分けるグルーピング処理と、
一つのグループを当該プールのマスタコントローラに割り当て、他のグループを当該プール内の前記記憶装置へのアクセスが当該プールのマスタコントローラより遅い他のコントローラに割り当て、所定時間ごとに、当該プールのマスタコントローラに割り当てるグループを循環的に変更するパス制御処理と、を実行させるプログラム。
A computer including a plurality of controllers connected to a pool including a plurality of storage devices and a host computer, receiving a request from the host computer, and executing input / output of the allocated storage device,
A grouping process for dividing the storage devices in the pool into groups of the number of controllers;
One group is assigned to the master controller of the pool, and another group is assigned to another controller whose access to the storage device in the pool is slower than the master controller of the pool. And a path control process for cyclically changing a group to be assigned to the program.
JP2013230859A 2013-11-07 2013-11-07 Storage control device, storage system, storage control method and program Pending JP2015090631A (en)

Priority Applications (1)

Application Number Priority Date Filing Date Title
JP2013230859A JP2015090631A (en) 2013-11-07 2013-11-07 Storage control device, storage system, storage control method and program

Applications Claiming Priority (1)

Application Number Priority Date Filing Date Title
JP2013230859A JP2015090631A (en) 2013-11-07 2013-11-07 Storage control device, storage system, storage control method and program

Publications (1)

Publication Number Publication Date
JP2015090631A true JP2015090631A (en) 2015-05-11

Family

ID=53194113

Family Applications (1)

Application Number Title Priority Date Filing Date
JP2013230859A Pending JP2015090631A (en) 2013-11-07 2013-11-07 Storage control device, storage system, storage control method and program

Country Status (1)

Country Link
JP (1) JP2015090631A (en)

Similar Documents

Publication Publication Date Title
US8463995B2 (en) Storage control apparatus and storage system comprising multiple storage control apparatuses
US8612704B2 (en) Storage system with virtual areas and method for managing storage system
US9344492B1 (en) I/O scheduling and load balancing across the multiple nodes of a clustered environment using a single global queue
US9104545B2 (en) Thick and thin data volume management
US8489845B2 (en) Storage system comprising multiple storage control apparatus
WO2013160958A1 (en) Information storage system and method of controlling information storage system
JP6260407B2 (en) Storage management device, performance adjustment method, and performance adjustment program
US9961015B2 (en) Computer system, and resource management method
US20080162735A1 (en) Methods and systems for prioritizing input/outputs to storage devices
US20140297909A1 (en) Storage apparatus and hierarchy control method
JPWO2016121066A1 (en) Storage system
US9354815B2 (en) Computer realizing high-speed access and data protection of storage device, computer system, and I/O request processing method
US9600187B2 (en) Virtual grouping of memory
JP6578694B2 (en) Information processing apparatus, method, and program
US9015410B2 (en) Storage control apparatus unit and storage system comprising multiple storage control apparatus units
US12436905B2 (en) Composable core matrix for service level compliance
JP2015090631A (en) Storage control device, storage system, storage control method and program
US12366994B2 (en) Multipath initiator for data storage device arrays
US9128819B2 (en) Storage system and management method therefor
CN117055824B (en) Controller, configuration method and system of controller, storage medium and electronic device
JP2014209364A (en) Storage control device or storage system comprising multiple storage control devices