JP2020021235A - ストレージ管理装置、ストレージシステムおよびプログラム - Google Patents
ストレージ管理装置、ストレージシステムおよびプログラム Download PDFInfo
- Publication number
- JP2020021235A JP2020021235A JP2018143800A JP2018143800A JP2020021235A JP 2020021235 A JP2020021235 A JP 2020021235A JP 2018143800 A JP2018143800 A JP 2018143800A JP 2018143800 A JP2018143800 A JP 2018143800A JP 2020021235 A JP2020021235 A JP 2020021235A
- Authority
- JP
- Japan
- Prior art keywords
- nodes
- node
- meta
- sharing
- storage
- Prior art date
- Legal status (The legal status is an assumption and is not a legal conclusion. Google has not performed a legal analysis and makes no representation as to the accuracy of the status listed.)
- Granted
Links
Images
Abstract
Description
しかし、ノードは、通常、自身が処理を担当するLBA(Logical Block Addressing:論理ブロックアドレス)に関係したメタ情報しか持たない。このため、特定ノードが処理するはずであったI/Oを他ノードが受け取った場合、他ノードが特定ノードのメタ情報を持っていなければ、アドレス変換等の処理ができず、記憶装置へのデータ転送を実行することができない。
1つの側面では、本発明は、メタ情報の共有化を効率よく行って負荷集中の抑制を図ったストレージ管理装置、ストレージシステムおよびプログラムを提供することを目的とする。
さらに、上記課題を解決するために、コンピュータに上記ストレージ管理装置と同様の制御を実行させるプログラムが提供される。
[第1の実施の形態]
第1の実施の形態について図1を用いて説明する。図1はストレージ管理装置の構成の一例を示す図である。ストレージ管理装置1は、制御部1aと記憶部1bを含む。制御部1aは、ストレージに対するデータのI/O処理を行う複数のノードに接続して、複数のノードn1、・・・、n4の負荷状況の監視を行う。
次に第2の実施の形態について説明する。まず、システム構成について説明する。図2はストレージシステムの構成の一例を示す図である。ストレージシステム1−2は、サーバSv1、Sv2、DE(Disc Enclosure)20−1、20−2、スイッチ30、ホスト40および管理端末50を備える。
以降、第2の実施の形態について詳しく説明する。図4はノードのハードウェア構成の一例を示す図である。ノード10は、図2に示したノードN1、・・・、N4のいずれかに該当し、プロセッサ(コンピュータ)100によって装置全体が制御されている。すなわち、プロセッサ100は、ノード10の制御部として機能する。
さらにまた、入出力インタフェース102は、周辺機器を接続するための通信インタフェースとしても機能する。例えば、入出力インタフェース102は、レーザ光等を利用して、光ディスクに記録されたデータの読み取りを行う光学ドライブ装置を接続することができる。光ディスクには、Blu−rayDisc(登録商標)、CD−ROM(Compact Disc Read Only Memory)、CD−R(Recordable)/RW(Rewritable)等がある。
図5はノードの機能ブロックの一例を示す図である。ノード10は、制御部11、記憶部12、ディスクアクセス部13およびインタフェース部14を備える。制御部11は、I/O受付部11a、論理担当ノード判断部11b、キャッシュ制御部11c、アドレス変換部11dおよびシステム管理部11eを含む。
図6はボリュームを分割したブロック構造の一例を示す図である。制御部11は、プールから切り出したボリュームV0、・・・、V3に対して、ボリューム毎に所定サイズのブロックに分割し、該ブロックを各ノード(例えば、ノードN0、・・・、N3)に割り当ててI/Oを分散して処理する。
担当ノード番号=((LBA)÷(分割ブロックサイズ)+(ボリューム番号))/(構成ノード数)・・・(1)
図7はノード故障時に再計算されたブロック構造の一例を示す図である。図7の例ではノードN2が故障したときのブロック構造を示しており、ノードN2以外のノードN0、N1、N3でボリュームが分割されている。
図8はキャッシュメモリの保持データの2重化の一例を示す図である。制御部11は、I/Oを一時的にキャッシュメモリに保持する。また、キャッシュメモリに保持されるデータ(以下、キャッシュデータ)の内容は、同じサーバ内のノードと2重化され、さらにサーバを跨って他サーバ内のノードと2重化される。
図9はメタテーブルの構成の一例を示す図である。制御部11は、キャッシュメモリ上のメタテーブルM0から、どのサーバのディスクにアクセスするかを判断し、判断したディスクにアクセス可能なノードにI/Oを受け渡す。
ストレージシステム1−2では、スケールアウト時、例えば、最大で128ノードまで増設が行われる。このようなノード増設が行われた場合、すべてのノードでメタテーブルを共有しているとキャッシュ容量の増大を招くため、メタテーブルの共有には制限を設けることにする。
(故障後のCPU使用率)=((故障前のCPU使用率)×(故障前のノード台数))/(故障後のノード台数)・・・(2)
そして、制御部11は、1台故障後のCPU使用率が100%を超えないような共有数を、以下の式(3)で算出する。
具体例としては、平均負荷を表す平均CPU使用率が50%未満のとき、メタテーブルはノード2台で共有され、平均CPU使用率が75%未満のとき、メタテーブルはノード4台で共有される。
さらに平均CPU使用率が88%未満のとき、メタテーブルはノード8台で共有され、平均CPU使用率が90%未満のとき、メタテーブルはノード10台で共有される。
〔状態St1〕ストレージシステム1−2−1は、ノードN1、・・・、N8を備える。ストレージシステム1−2−1の全ノードの平均CPU使用率が40%のとき、メタテーブルがノード2台で共有される。
次にシステムの正常時の動作(ノード故障がないときの動作)について、図12から図15を用いて説明する。図12は管理ノードを含むストレージシステムの構成の一例を示す図である。ストレージシステム1−2aは、サーバSv1、Sv2、ホスト40および管理端末50を備え(ストレージの図示は省略)、サーバSv1はノードN1、N2を含み、サーバSv2はノードN3、4を含む。
次にノード故障が発生した場合の動作について、図16、図17を用いて説明する。ノード故障が発生すると、故障ノードの代わりにI/O処理を行うための論理担当ノードの再構成が行われる。
制御部11は、論理担当ノードの移し替え時、最初に式(1)による計算で担当ノードを割り出し、担当ノードが故障したノードでなければ、該ノードにデータ転送を行う。また、制御部11は、割り出した該ノードが故障したノードであることを認識した場合は、メタテーブルを共有しているノードへの割り振りを再計算する。
図17はキャッシュデータの2重化の一例を示す図である。通常動作時では上述したようにキャッシュデータは2重化される。サーバ内の2重化を示すと、ノードN1のキャッシュデータd1は、ノードN2のキャッシュメモリにミラーリングされ、ノードN2のキャッシュデータd2はノードN1のキャッシュメモリにミラーリングされる。これにより、サーバSv1内のノードN1、N2間でキャッシュデータが2重化される。
次にノード故障が復旧した場合の動作について、図18から図20を用いて説明する。図18から図20は復旧時の動作の流れの一例を示す図である。
〔状態St12〕制御部11は、ノードN2に対してメタテーブルおよびメタ共有テーブルをコピーする。
通常運用時、またはノード故障からの復旧時において、システム全体でCPU使用率が所定値より低下して負荷の低下が認識された場合、メタテーブルの共有解除が行われる。
〔状態St21〕ノードN1、・・・、N4は、メタテーブルM1、・・・、M4を共有している。この状態で、ノードN1の制御部11が、システム全体の平均CPU使用率が所定値より低下したことを検出した場合、ノードN2、N3、N4に対して、メタテーブルの共有解除の指示を送信する。
メタ共有テーブルMc0−1の登録状態から、サーバSv1、Sv2間に渡って共有されていたメタテーブルは削除されていることがわかる。例えば、ノードN1はメタテーブルの共有時にはメタテーブルM1、・・・、M4を共有していたが、メタ共有テーブルMc0−1の登録状態から、メタテーブルM3、M4は現在削除されていることがわかる。
図24は管理ノードの全体動作を示すフローチャートである。以下の処理は、管理ノードの処理であり、システムの初期終了後、常時動作するものである。
〔ステップS15〕制御部11は、故障から復旧した復旧ノードが含まれるサーバ内でペアになっているペアノードに対し、復旧ノードへメタテーブルのコピーをするように指示する。
〔ステップS17〕制御部11は、メタテーブルのコピーが完了したか否かを判定する。コピーが未完了の場合は、ステップS16へ処理が戻り、コピーが完了した場合は、ステップS18へ処理が進む。
〔ステップS19〕制御部11は、全ノードから性能情報(例えば、CPU使用率)を取得する。
〔ステップS33〕制御部11は、メタテーブルを共有するノード数の増減を判定する。メタテーブルを共有するノード数が減少している場合はステップS34の処理へ進み、メタテーブルを共有するノード数が増加している場合はステップS35の処理へ進む。
〔ステップS35〕制御部11は、増加したノードのノード番号をメタ共有テーブルに追加する。この場合、増加したノード数分のI/Oデータをキャッシュメモリにライトバックし、ライトバックによって空いたメモリ領域をクリアして、該領域にメタ共有テーブルの追加分を確保する。
〔ステップS41〕制御部11は、ホストI/Oの発生を認識する。
〔ステップS42〕制御部11は、ホストI/Oを処理する論理担当ノードを求める。
〔ステップS45〕制御部11は、論理担当ノードへホストI/Oデータを転送する。
図27はキャッシュ制御の動作を示すフローチャートである。
〔ステップS52〕制御部11は、ペアノードは故障中か否かを判定する。故障中の場合はステップS53へ処理が進み、故障していない場合はステップS54へ処理が進む。
〔ステップS54〕制御部11は、ペアノードとホストI/Oデータを共有する。
〔ステップS61〕制御部11は、ホストI/O処理の指示を受信する。
〔ステップS62〕制御部11は、メタテーブルを参照して論理アドレス/物理アドレス変換を行う。
〔ステップS64〕制御部11は、メタテーブルの更新がある場合、自身のメタテーブルを更新する。
以上説明したように、本発明によれば、スケールアウト型のストレージシステムで高負荷状態が発生した場合、同一サーバ上の他ノードにホストI/Oを移すのではなく、複数のノードに跨ってメタテーブルを共有化して、論理担当ノードの処理を分散させる。これにより負荷集中を防ぐことができる。
グループ化されている前記複数のノードの負荷状況の監視を行い、前記データの入出力処理を行ったノードがそれぞれ保持する前記データのメタ情報を同一グループ内のノード間で共有させる第1の共有状態と、前記データの前記メタ情報を異なるグループに跨ったノード間で共有させる第2の共有状態とを、前記負荷状況にもとづいて遷移させる制御部
を有するストレージ管理装置。
(付記5) 前記制御部は、前記ノードそれぞれの性能情報を取得し、前記性能情報から検出した前記負荷が前記閾値より低下したことを検出した場合、前記メタ情報の共有の復帰を行う付記2記載のストレージ管理装置。
前記ストレージに対するデータの入出力処理を行う複数のノードと、
グループ化されている前記複数のノードの負荷状況の監視を行い、前記データの入出力処理を行ったノードがそれぞれ保持する前記データのメタ情報を同一グループ内のノード間で共有させる第1の共有状態と、前記データの前記メタ情報を異なるグループに跨ったノード間で共有させる第2の共有状態とを、前記負荷状況にもとづいて遷移させる管理ノードと、
を有するストレージシステム。
前記データの入出力処理を行ったノードがそれぞれ保持する前記データのメタ情報を同一グループ内のノード間で共有させる第1の共有状態と、前記データの前記メタ情報を異なるグループに跨ったノード間で共有させる第2の共有状態とを、前記負荷状況にもとづいて遷移させる、
処理をコンピュータに実行させるプログラム。
前記ストレージへのデータの第1のメタ情報にもとづいて前記ストレージに対する前記データの入出力処理を行う第1のノードと、前記データの第2のメタ情報にもとづいて前記ストレージに対する前記データの入出力処理を行う第2のノードとを有する第1のサーバと、
前記データの第3のメタ情報にもとづいて前記ストレージに対する前記データの入出力処理を行う第3のノードと、前記データの第4のメタ情報にもとづいて前記ストレージに対する前記データの入出力処理を行う第4のノードとを有する第2のサーバと、
を備え、
前記第1のノードは、
前記第1、第2、第3、第4のノードの負荷状況の監視を行い、
前記第1、第2、第3、第4のノードの負荷が閾値より低いことを検出した場合、前記第1のサーバ内でペアとなる前記第1のノードと前記第2のノード間で前記第1のメタ情報と前記第2のメタ情報を共有させ、前記第2のサーバ内でペアとなる前記第3のノードと前記第4のノード間で前記第3のメタ情報と前記第4のメタ情報を共有させる共有化を行い、
前記第1、第2、第3、第4のノードのうち少なくとも1台のノードの負荷が閾値より高いことを検出した場合、同一の前記第1、第2のサーバ内での前記共有化の状態からさらに、前記第1のサーバと前記第2のサーバとに跨って、前記第1のノードに前記第1、第2、第3、第4のメタ情報を共有させ、前記第2のノードに前記第1、第2、第3、第4のメタ情報を共有させ、前記第3のノードに前記第1、第2、第3、第4のメタ情報を共有させ、前記第4のノードに前記第1、第2、第3、第4のメタ情報を共有させる
ストレージシステム。
1a 制御部
1b 記憶部
1−1 ストレージシステム
sv1、sv2 サーバ
n1、n2、n3、n4 ノード
20a、20b ストレージ
m1、m2、m3、m4 メタ情報
Claims (8)
- ストレージに対するデータの入出力処理を行う複数のノードを管理するストレージ管理装置であって、
グループ化されている前記複数のノードの負荷状況の監視を行い、前記データの入出力処理を行ったノードがそれぞれ保持する前記データのメタ情報を同一グループ内のノード間で共有させる第1の共有状態と、前記データの前記メタ情報を異なるグループに跨ったノード間で共有させる第2の共有状態とを、前記負荷状況にもとづいて遷移させる制御部
を有するストレージ管理装置。 - 前記制御部は、前記複数のノードすべての負荷が閾値より低いことを検出した場合、前記第1の共有状態に遷移させ、前記複数のノードのうち少なくとも一の前記ノードの前記負荷が前記閾値より高いことを検出した場合、前記第2の共有状態に遷移させる請求項1記載のストレージ管理装置。
- 前記制御部は、前記ノードそれぞれの性能情報を取得し、前記性能情報から検出した前記負荷を平均化して平均負荷を算出し、前記平均負荷にもとづいて、前記メタ情報を共有する前記ノードの共有範囲を決定する請求項1記載のストレージ管理装置。
- 前記制御部は、前記メタ情報を共有している前記ノードの組合せに関するメタ共有情報を生成して保持する請求項1記載のストレージ管理装置。
- 前記制御部は、前記ノードそれぞれの性能情報を取得し、前記性能情報から検出した前記負荷が前記閾値より低下したことを検出した場合、前記メタ情報の共有の復帰を行う請求項2記載のストレージ管理装置。
- 前記制御部は、同一の筐体に実装されている前記ノードの組を同一のグループとし、前記負荷が前記閾値より低いことを検出した場合、前記メタ情報を同一の前記筐体内でペアになって実装されているノード間で共有させる共有化を行い、前記負荷が前記閾値より高いことを検出した場合、同一の前記筐体内での前記共有化の状態からさらに、前記メタ情報を異なる前記筐体に跨ったノード間で共有させる請求項2記載のストレージ管理装置。
- ストレージと、
前記ストレージに対するデータの入出力処理を行う複数のノードと、
グループ化されている前記複数のノードの負荷状況の監視を行い、前記データの入出力処理を行ったノードがそれぞれ保持する前記データのメタ情報を同一グループ内のノード間で共有させる第1の共有状態と、前記データの前記メタ情報を異なるグループに跨ったノード間で共有させる第2の共有状態とを、前記負荷状況にもとづいて遷移させる管理ノードと、
を有するストレージシステム。 - ストレージに対するデータの入出力処理を行う複数のノードに対し、グループ化されている前記複数のノードの負荷状況の監視を行い、
前記データの入出力処理を行ったノードがそれぞれ保持する前記データのメタ情報を同一グループ内のノード間で共有させる第1の共有状態と、前記データの前記メタ情報を異なるグループに跨ったノード間で共有させる第2の共有状態とを、前記負荷状況にもとづいて遷移させる、
処理をコンピュータに実行させるプログラム。
Priority Applications (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
JP2018143800A JP7111964B2 (ja) | 2018-07-31 | 2018-07-31 | ストレージ管理装置、ストレージシステムおよびプログラム |
Applications Claiming Priority (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
JP2018143800A JP7111964B2 (ja) | 2018-07-31 | 2018-07-31 | ストレージ管理装置、ストレージシステムおよびプログラム |
Publications (2)
Publication Number | Publication Date |
---|---|
JP2020021235A true JP2020021235A (ja) | 2020-02-06 |
JP7111964B2 JP7111964B2 (ja) | 2022-08-03 |
Family
ID=69588568
Family Applications (1)
Application Number | Title | Priority Date | Filing Date |
---|---|---|---|
JP2018143800A Active JP7111964B2 (ja) | 2018-07-31 | 2018-07-31 | ストレージ管理装置、ストレージシステムおよびプログラム |
Country Status (1)
Country | Link |
---|---|
JP (1) | JP7111964B2 (ja) |
Citations (5)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
JP2001051890A (ja) * | 1999-08-10 | 2001-02-23 | Toshiba Corp | 仮想分散ファイルサーバシステム |
JP2007279898A (ja) * | 2006-04-04 | 2007-10-25 | Toshiba Corp | ストレージシステム及び同システムに適用されるアクセス処理方法 |
JP2013008387A (ja) * | 2012-09-07 | 2013-01-10 | Fujitsu Ltd | データ管理プログラム、およびマルチノードストレージシステム |
US20160088082A1 (en) * | 2014-09-19 | 2016-03-24 | Netapp, Inc. | Techniques for coordinating parallel performance and cancellation of commands in a storage cluster system |
JP2017515215A (ja) * | 2014-03-31 | 2017-06-08 | アマゾン・テクノロジーズ・インコーポレーテッド | 分散格納システムにおける名前空間管理 |
-
2018
- 2018-07-31 JP JP2018143800A patent/JP7111964B2/ja active Active
Patent Citations (5)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
JP2001051890A (ja) * | 1999-08-10 | 2001-02-23 | Toshiba Corp | 仮想分散ファイルサーバシステム |
JP2007279898A (ja) * | 2006-04-04 | 2007-10-25 | Toshiba Corp | ストレージシステム及び同システムに適用されるアクセス処理方法 |
JP2013008387A (ja) * | 2012-09-07 | 2013-01-10 | Fujitsu Ltd | データ管理プログラム、およびマルチノードストレージシステム |
JP2017515215A (ja) * | 2014-03-31 | 2017-06-08 | アマゾン・テクノロジーズ・インコーポレーテッド | 分散格納システムにおける名前空間管理 |
US20160088082A1 (en) * | 2014-09-19 | 2016-03-24 | Netapp, Inc. | Techniques for coordinating parallel performance and cancellation of commands in a storage cluster system |
Also Published As
Publication number | Publication date |
---|---|
JP7111964B2 (ja) | 2022-08-03 |
Similar Documents
Publication | Publication Date | Title |
---|---|---|
US9361038B1 (en) | Scalable data storage architecture and methods of eliminating I/O traffic bottlenecks | |
US10019364B2 (en) | Access-based eviction of blocks from solid state drive cache memory | |
US7536508B2 (en) | System and method for sharing SATA drives in active-active RAID controller system | |
US9626329B2 (en) | Apparatus for enhancing performance of a parallel processing environment, and associated methods | |
US6957303B2 (en) | System and managing method for cluster-type storage | |
EP1595363B1 (en) | Scsi-to-ip cache storage device and method | |
JP6898393B2 (ja) | ストレージシステム及びデータ転送方法 | |
JP2015532985A (ja) | 大規模なデータ記憶および受け渡しシステム | |
US20140122816A1 (en) | Switching between mirrored volumes | |
JP2007086972A (ja) | ストレージシステム、二重化制御方法、及びプログラム | |
JP2008040645A (ja) | Nasマイグレーションによる負荷分散方法、並びに、その方法を用いた計算機システム及びnasサーバ | |
JP2013156977A (ja) | 冗長キャッシュデータのエラスティックキャッシュ | |
US20170220249A1 (en) | Systems and Methods to Maintain Consistent High Availability and Performance in Storage Area Networks | |
JP5147586B2 (ja) | ストレージ装置及びその制御方法 | |
JP5453872B2 (ja) | ディスクアレイ装置、ディスク制御装置、ディスクアレイ装置における負荷分散方法 | |
US11941253B2 (en) | Storage system and method using persistent memory | |
WO2021012169A1 (zh) | 一种提高存储系统可靠性的方法和相关装置 | |
JP7111964B2 (ja) | ストレージ管理装置、ストレージシステムおよびプログラム | |
US11636012B2 (en) | Method and apparatus for performing node information exchange management of all flash array server | |
US20180307427A1 (en) | Storage control apparatus and storage control method | |
CN113342258B (zh) | 用以进行全快闪存储器阵列伺服器的数据存取管理的方法与设备 | |
WO2019043815A1 (ja) | ストレージシステム | |
US11366618B2 (en) | All flash array server and control method thereof | |
KR20190048456A (ko) | 컴퓨팅 디바이스 및 그것의 동작방법 | |
US11809293B2 (en) | Storage node failure detection based on register values for an all flash array server |
Legal Events
Date | Code | Title | Description |
---|---|---|---|
A621 | Written request for application examination |
Free format text: JAPANESE INTERMEDIATE CODE: A621 Effective date: 20210408 |
|
RD02 | Notification of acceptance of power of attorney |
Free format text: JAPANESE INTERMEDIATE CODE: A7422 Effective date: 20210413 |
|
RD04 | Notification of resignation of power of attorney |
Free format text: JAPANESE INTERMEDIATE CODE: A7424 Effective date: 20210413 |
|
A977 | Report on retrieval |
Free format text: JAPANESE INTERMEDIATE CODE: A971007 Effective date: 20211117 |
|
A131 | Notification of reasons for refusal |
Free format text: JAPANESE INTERMEDIATE CODE: A131 Effective date: 20211130 |
|
A521 | Request for written amendment filed |
Free format text: JAPANESE INTERMEDIATE CODE: A523 Effective date: 20220125 |
|
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: 20220621 |
|
A61 | First payment of annual fees (during grant procedure) |
Free format text: JAPANESE INTERMEDIATE CODE: A61 Effective date: 20220704 |
|
R150 | Certificate of patent or registration of utility model |
Ref document number: 7111964 Country of ref document: JP Free format text: JAPANESE INTERMEDIATE CODE: R150 |