(19)【発行国】日本国特許庁(JP)
(12)【公報種別】公開特許公報(A)
(11)【公開番号】P2024172229
(43)【公開日】2024-12-12
(54)【発明の名称】ストレージシステム及びストレージシステムの管理方法
(51)【国際特許分類】
G06F 3/06 20060101AFI20241205BHJP
G06F 13/10 20060101ALI20241205BHJP
G06F 16/11 20190101ALI20241205BHJP
H04L 67/1097 20220101ALI20241205BHJP
G06F 11/14 20060101ALN20241205BHJP
【FI】
G06F3/06 301Z
G06F3/06 304F
G06F13/10 340A
G06F16/11
H04L67/1097
G06F11/14 656
【審査請求】未請求
【請求項の数】10
【出願形態】OL
(21)【出願番号】P 2023089804
(22)【出願日】2023-05-31
(71)【出願人】
【識別番号】524132520
【氏名又は名称】日立ヴァンタラ株式会社
(74)【代理人】
【識別番号】110002365
【氏名又は名称】弁理士法人サンネクスト国際特許事務所
(72)【発明者】
【氏名】東郷 一輝
(72)【発明者】
【氏名】出口 彰
(72)【発明者】
【氏名】小関 英通
(72)【発明者】
【氏名】藤井 裕大
(72)【発明者】
【氏名】原 彬大
(57)【要約】
【課題】ボリュームの二次利用の利便性を向上する。
【解決手段】それぞれプロセッサを有する複数のノードを備えたストレージシステムにおいて、前記ストレージシステムに接続された複製元ストレージシステムが有する複製元ボリュームを、前記ストレージシステムの複数のノードに複製する場合に、いずれかの前記プロセッサは、前記複製元ストレージシステムの複製元ボリュームを、前記複数のノードの内の第1のノードに複製した第1の複製ボリュームを作成し、前記複数のノードの内の第2のノードに、前記第1の複製ボリュームにマッピングした第2の複製ボリュームを作成する。
【選択図】
図4
【特許請求の範囲】
【請求項1】
それぞれプロセッサを有する複数のノードを備えたストレージシステムにおいて、
前記ストレージシステムに接続された複製元ストレージシステムが有する複製元ボリュームを、前記ストレージシステムの複数のノードに複製する場合に、
いずれかの前記プロセッサは、
前記複製元ストレージシステムの複製元ボリュームを、前記複数のノードの内の第1のノードに複製した第1の複製ボリュームを作成し、
前記複数のノードの内の第2のノードに、前記第1の複製ボリュームにマッピングした第2の複製ボリュームを作成する
ことを特徴とするストレージシステム。
【請求項2】
前記第2のノードは、前記第2の複製ボリュームのスナップショットを生成して、ホストに提供し、
前記ホストから前記第2の複製ボリュームのスナップショットへのリード要求を受信した場合に、前記第2のノードのプロセッサは、前記第2の複製ボリュームを介して、マッピング先の前記第1のノードの第1の複製ボリュームへアクセスしてデータを読み出し、
前記ホストから前記第2の複製ボリュームのスナップショットへのライト要求を受信した場合に、前記第1の複製ボリュームへアクセスすることなく、前記第2のノード内に格納する
ことを特徴とする請求項1に記載のストレージシステム。
【請求項3】
さらに、複数のノードに属する第3のノードを備え、
前記複製元ストレージシステムが有する複製元ボリュームを、前記第3のノードに複製する場合に、
前記複数のノードの内の第3のノードに、前記第1の複製ボリュームにマッピングした第3の複製ボリュームを作成する
ことを特徴とする請求項2に記載のストレージシステム。
【請求項4】
前記第1の複製ボリュームを作成する場合に、
前記複製元ストレージシステムは、前記複製元ボリュームのスナップショットを作成し、
前記第1のノードは、前記第1のノードに、前記複製元ボリュームのスナップショットにマッピングした前記第1の複製ボリュームを作成する
ことを特徴とする請求項1に記載のストレージシステム。
【請求項5】
前記第1のノードは、前記第2の複製ボリュームのスナップショットを生成して、ホストに提供し、
前記ホストから前記第1の複製ボリュームのスナップショットへのリード要求を受信した場合、及び、前記第2のノードから前記第2の複製ボリュームのスナップショットへのリード要求の転送を受けた場合に、前記第1のノードのプロセッサは、前記第1の複製ボリュームを介して、マッピング先の前記複製元ボリュームのスナップショットへアクセスしてデータを読み出し、
前記ホストから前記第1の複製ボリュームのスナップショットへのライト要求を受信した場合に、前記複製元ストレージシステムへアクセスすることなく、前記第1のノード内に格納する
ことを特徴とする請求項4に記載のストレージシステム。
【請求項6】
前記複製元ボリュームは、業務としてデータの入出力が行われ、
前記第1のノード及び第2のノードは、前記複製元ボリュームのデータの二次利用としてデータ入出力が行われ、
前記第1及び第2の複製ボリュームは、作成後は、前記複製元ボリュームのスナップショットによって、前記複製元ボリュームへのデータの入出力の影響を受けない
ことを特徴とする請求項1に記載のストレージシステム。
【請求項7】
前記第1及び第2のノードは、クラウドストレージである
ことを特徴とする請求項1に記載のストレージシステム。
【請求項8】
前記第1のノード及び第2のノードは同じ拠点に配置され、
前記複製元ストレージシステムは、オンプレまたはクラウドストレージであり、前記第1のノード及び第2のノードとは異なる拠点に配置されている
ことを特徴とする請求項7に記載のストレージシステム。
【請求項9】
前記第1のノードと前記第2のノードとのネットワークにおける距離は、前記複製元ストレージシステムと前記第2のノードとのネットワークにおける距離よりも小さい
ことを特徴とする請求項7に記載のストレージシステム。
【請求項10】
それぞれプロセッサを有する複数のノードを備えたストレージシステムの管理方法において、
前記ストレージシステムに接続された複製元ストレージシステムが有する複製元ボリュームを、前記ストレージシステムの複数のノードに複製する場合に、
いずれかの前記プロセッサが、
前記複製元ストレージシステムの複製元ボリュームを、前記複数のノードの内の第1のノードに複製した第1の複製ボリュームを作成し、
前記複数のノードの内の第2のノードに、前記第1の複製ボリュームにマッピングした第2の複製ボリュームを作成する
ことを特徴とするストレージシステムの管理方法。
【発明の詳細な説明】
【技術分野】
【0001】
本発明は、ストレージシステム及びストレージシステムの管理方法に関する。
【背景技術】
【0002】
本番業務のデータを複製し、様々なアプリでバッチ、分析などの二次利用するユーザが増加している。これらの二次利用は、単一拠点内のシステムで実現されるだけでなく、パブリッククラウドの柔軟かつ迅速に拡張できるリソースを活かすために、オンプレミス上の本番業務データをクラウド上へ複製し、二次利用するというハイブリッドクラウドでのユースケースも存在する。データ二次利用は、ユーザのビジネスを改善、拡張するために重要であり、ストレージシステムでは、二次利用データの格納先のボリュームを迅速に本番業務データから複製し、スケールアウトさせることが求められる。
疎結合スケールアウトストレージアーキテクチャ上で、ボリュームをスケールアウトさせる技術として、例えば、特許文献1には、ストレージシステムにストレージノードを追加することにより、各ストレージノードの負荷を軽減して、ストレージシステムの性能を向上する技術(スケールアウト技術)が開示されている。
【先行技術文献】
【特許文献】
【0003】
【発明の概要】
【発明が解決しようとする課題】
【0004】
従来技術であるスケールアウト技術の場合、ストレージノードを追加した後に、過負荷のノードからボリュームを、追加したストレージノードへ移動するという処理が必要となる。その際、ボリュームのデータは全て移動する必要がある。スケールアウト技術を二次利用目的で行う場合、二次利用の開始は、本番業務のデータを他のストレージノード上へフルコピーした後になり、迅速な二次利用ができない。
そこで、本発明では、ボリュームのスケールアウトまでの時間を短縮して、迅速な二次利用の開始を可能とすることで、ボリュームの二次利用の利便性を向上することを目的とする。
【課題を解決するための手段】
【0005】
上記目的を達成するために、代表的な本発明のストレージシステムの一つは、それぞれプロセッサを有する複数のノードを備えたストレージシステムにおいて、前記ストレージシステムに接続された複製元ストレージシステムが有する複製元ボリュームを、前記ストレージシステムの複数のノードに複製する場合に、いずれかの前記プロセッサは、前記複製元ストレージシステムの複製元ボリュームを、前記複数のノードの内の第1のノードに複製した第1の複製ボリュームを作成し、前記複数のノードの内の第2のノードに、前記第1の複製ボリュームにマッピングした第2の複製ボリュームを作成することを特徴とする。
また、代表的な本発明のストレージシステムの管理方法の一つは、それぞれプロセッサを有する複数のノードを備えたストレージシステムの管理方法において、前記ストレージシステムに接続された複製元ストレージシステムが有する複製元ボリュームを、前記ストレージシステムの複数のノードに複製する場合に、いずれかの前記プロセッサが、前記複製元ストレージシステムの複製元ボリュームを、前記複数のノードの内の第1のノードに複製した第1の複製ボリュームを作成し、前記複数のノードの内の第2のノードに、前記第1の複製ボリュームにマッピングした第2の複製ボリュームを作成することを特徴とする。
【発明の効果】
【0006】
本発明によれば、ボリュームの二次利用の利便性を向上できる。上記した以外の課題、構成及び効果は以下の実施の形態の説明により明らかにされる。
【図面の簡単な説明】
【0007】
【
図1】第1の実施形態に係る情報処理システムの全体構成図である。
【
図2】一実施形態に係るストレージノードの構成図である。
【
図4】第1の実施形態に係る情報処理システムのスケールアウト処理の概要を説明する図である。
【
図5】一実施形態に係る管理装置のメモリの構成図である。
【
図6】一実施形態に係るストレージノードのメモリの構成図である。
【
図7】一実施形態に係るスケールアウト管理テーブルの構成図である。
【
図8】一実施形態に係るストレージノード管理テーブルの構成図である。
【
図9】一実施形態に係るスケールアウト対象VOL管理テーブルの構成図である。
【
図10】一実施形態に係るE-VOL管理テーブルの構成図である。
【
図11】一実施形態に係るSS-VOL管理テーブルの構成図である。
【
図12】一実施形態に係るスケールアウト処理全体のフローチャートである。
【
図13】一実施形態に係るスケールアウトに必要な情報確認処理のフローチャートである。
【
図14】一実施形態に係る展開用VOL作成処理のフローチャートである。
【
図15】一実施形態に係るE-VOL作成処理のフローチャートである。
【
図16】一実施形態に係るSS-VOL作成処理のフローチャートである。
【
図17】一実施形態に係るパス変更処理のフローチャートである。
【
図18】第2と第3の実施形態に係る情報処理システムの全体構成図である。
【
図19】第2の実施形態に係る情報処理システムのスケールアウト処理の概要を説明する図である。
【
図20】第3の実施形態に係る情報処理システムのスケールアウト処理の概要を説明する図である。
【発明を実施するための形態】
【0008】
実施形態について、図面を参照して説明する。なお、以下に説明する実施形態は特許請求の範囲に係る発明を限定するものではなく、また実施形態の中で説明されている諸要素及びその組み合わせの全てが発明の解決手段に必須であるとは限らない。
【0009】
以下の説明では、「AAAテーブル」の表現にて情報を説明することがあるが、情報は、どのようなデータ構造で表現されていてもよい。すなわち、情報がデータ構造に依存しないことを示すために、「AAAテーブル」を「AAA情報」と呼ぶことができる。
【0010】
また、以下の説明では、プログラムを動作の主体として処理を説明する場合があるが、プログラムは、プロセッサ(例えばCPU)によって実行されることで、定められた処理を、適宜に記憶資源(例えばメモリ)及び/又は通信インターフェースデバイス(例えばNIC(Network Interface Card))を用いながら行うため、処理の主体がプロセッサとされてもよい。プログラムを動作の主体として説明された処理は、プロセッサ或いはそのプロセッサを有する計算機(システム)が行う処理としてもよい。
【0011】
また、以下の説明において、2以上のプログラムが1つのプログラムとして実現されてもよいし、1つのプログラムが2以上のプログラムとして実現されてもよい。
また、以下の説明において、「VOL」は、論理ボリュームの略であり、論理的な記憶デバイスでよい。VOLは、実体的なボリューム(物理的な記憶デバイスに基づくボリューム)でもよいし、仮想的なボリュームであってもよい。
【実施例0012】
図1は、第1の実施形態に係る情報処理システムの全体構成図である。
情報処理システム1は、ストレージクラスタ1000と、管理装置200と、1以上のホスト計算機300とを備える。ストレージクラスタ1000は、1以上のストレージノード100を備える。ストレージクラスタ1000は、ストレージシステムや分散ストレージシステムと呼ばれてもよい。本実施形態では、ストレージクラスタ1000は、拠点10に設けられる。拠点10は、例えば、オンプレミスやクラウドであってよい。
【0013】
ストレージノード100と、管理装置200と、ホスト計算機300とは、ネットワーク400を介して接続されている。ネットワーク400は、例えば、LAN(Local Area Network)やWAN(Wide Area Network)等であってよい。
【0014】
ストレージノード100は、ホスト計算機300に対してデータを読み書きするための記憶領域を提供する装置である。ストレージノード100は、物理計算機であってもよいし、仮想計算機であってもよい。
【0015】
管理装置200は、システム管理者が本情報処理システム1全体を管理するために利用するコンピュータである。管理装置200は、物理計算機であってもよいし、仮想計算機であってもよい。管理装置200は、プログラムによってストレージクラスタ1000全体や、ストレージノード100や、ホスト計算機300から情報を取得し、ユーザインターフェース(GUI(Graphical User Inteface)、CLI(Command Line Interface))を介して情報を表示する。管理装置200は、ユーザインターフェースを介して、システム管理者によって入力された指示をストレージクラスタ1000全体や、ストレージノード100や、ホスト計算機300に送信する機能を有する。管理装置200は、ストレージクラスタ1000や、ストレージノード100や、ホスト計算機300から取得した情報に基づき、システム管理者による指示を介さずに、自動的に最適な指示をストレージクラスタ1000や、ストレージノード100や、ホスト計算機300に送信する機能を有してもよい。管理装置200は、オンプレミス上の装置であってもよいし、クラウド上の装置であってもよい。なお、管理装置200の機能は、ストレージノード100のいずれかにて実現されてもよい。
【0016】
ホスト計算機300は、ユーザ操作やアプリケーションプログラム(例えば、ファイルサーバプログラム、データベースサーバプログラム)からの要求に応じてストレージクラスタ1000に対してリード/ライト要求(以下、適宜、これらをI/O(Input/Output)要求と呼ぶ)を送信するコンピュータである。ホスト計算機300は、物理計算機であってもよいし、仮想計算機であってもよい。ホスト計算機300は、例えば、複数のストレージノード100がクラスタを構成している場合には、クラスタを構成しているストレージノードとの間でマルチパスが設定される。なお、マルチパスの設定は、例えば、Linux(登録商標)を用いている場合にはmultipath-toolsを用いることができ、ホスト計算機300がWindows(登録商標) serverである場合には、MPIOサービスを用いることができる。ホスト計算機300は、オンプレミス上の装置であってもよいし、クラウド上の装置であってもよい。
【0017】
次に、ストレージノード100について詳細に説明する。
図2は、一実施形態に係るストレージノードの構成図である。
ストレージノード100は、内部ネットワーク150を介して相互に接続されたCPU(Central Processing Unit)110と、メモリ120と、複数のストレージデバイス130と、通信I/F140とを含む。各ストレージノード100が備えるCPU110と、メモリ120と、ストレージデバイス130と、通信I/F140は、それぞれ1以上であってよい。
【0018】
CPU110は、ストレージノード100全体の動作制御を司るプロセッサである。CPU110は、メモリ120に格納されたプログラムや管理情報に基づいて、各種処理を実行する。CPU110は、物理計算機の物理的なCPUであってもよいし、クラウドの仮想化機能を用いて物理計算機の物理的なCPUを仮想的に割り当てた仮想的なCPUであってもよい。
【0019】
メモリ120は、SRAM(Static RAM(Random Access Memory))やDRAM(Dynamic RAM)などの揮発性の半導体メモリから構成され、CPU110により実行される各種プログラムと、CPU110により参照または更新される管理情報とを格納する。メモリ120は、物理的なメモリであってもよいし、クラウドの仮想化機能を用いて物理的なメモリを仮想的に割り当てた仮想的なメモリであってもよい。
【0020】
ストレージデバイス130は、ホスト計算機300が利用するユーザデータを格納する記憶デバイスである。典型的には、不揮発性の記憶デバイスでよい。ストレージデバイス130は、例えば、HDD(Hard Disk Drive)またはSSD(Solid State Drive)でよい。ストレージデバイス130は、物理的なストレージデバイスであってもよいし、クラウドの仮想化機能を用いて物理的なストレージデバイスを仮想的に割り当てた仮想的なストレージデバイスであってもよい。
【0021】
通信I/F140は、ストレージノード100がネットワーク400を介してホスト計算機300や、他のストレージノード100や、管理装置200と通信を行うためのインターフェースであり、例えば、NIC(Network Interface Card)やFC(Fibre Channel)カードなどから構成される。通信I/F140は、物理的な通信I/Fであってもよいし、クラウドの仮想化機能を用いて物理的な通信I/Fを仮想的な割り当てた仮想的な通信I/Fであってもよい。
【0022】
次に、管理装置200について詳細に説明する。
図3は、一実施形態に係る管理装置の構成図である。
管理装置200は、CPU210と、メモリ220と、通信I/F230とを含む。CPU210は、メモリ220に格納されたプログラムや管理情報に基づいて、ホスト計算機300や、ストレージノード100や、ストレージクラスタ1000全体を制御する処理を行う。メモリ220は、CPU210により実行されるプログラムと、CPU210により参照または更新される管理情報とを格納する。通信I/F230は、ネットワーク400を介して、ストレージノード100、ホスト計算機300と通信するためのインターフェースである。
【0023】
次に、情報処理システム1のスケールアウトの概要について説明する。
図4は、第1の実施形態に係る情報処理システムのスケールアウト処理の概要を説明する図である。
【0024】
ストレージクラスタ1000は、ストレージノード100aとストレージノード100bとストレージノード100cとを含む。
スケールアウト前は、ストレージノード100aには、ボリューム(VOL)500aが定義されている。また、ストレージノード100aには、ホスト計算機300aとVOL500aの間の通信経路としてパス530aが定義されており、ホスト計算機300aからVOL500aに対してリード/ライトが可能となっている。ホスト計算機300aでは、アプリケーションプログラム(App)310aが動作している。App310aは、VOL500aのデータを参照/更新することでApp310aの機能(例えば、業務アプリ、データベース、ファイルサーバなど)を実現している。
【0025】
スケールアウト後は、ストレージノード100aには、VOL500aと、VOL500aのスナップショットとして提供されるスナップショットボリューム(SS-VOL)510aが定義されている。また、ストレージノード100aには、ホスト計算機300aとVOL500aの間のパス530aが定義されており、ホスト計算機300aで動作しているApp310aがVOL500aのデータを参照/更新することができる。
【0026】
ストレージノード100bには、SS-VOL510aを外部接続することで提供される外部接続ボリューム520a(E-VOL)と、E-VOL520aのスナップショットとして提供されるSS-VOL510bが定義されている。また、ストレージノード100bには、ホスト計算機300bとSS-VOL510bの間のパス530bが定義されており、ホスト計算機300bで動作しているApp310bがSS-VOL510bのデータを参照/更新することができる。
【0027】
ストレージノード100cには、SS-VOL510aを外部接続することで提供されるE-VOL520bと、E-VOL520bのスナップショットとして提供されるSS-VOL510cが定義されている。また、ストレージノード100cには、ホスト計算機300cとSS-VOL510cの間のパス530cが定義されており、ホスト計算機300cで動作しているApp310cがSS-VOL510cのデータを参照/更新することができる。
【0028】
外部接続とは、第1のストレージノード(
図4に示す例によれば、ストレージノード100a)に接続された第2のストレージノード(
図4に示す例によれば、ストレージノード100bおよびストレージノード100c)が、第1のストレージノードが提供するボリューム(
図4に示す例によれば、SS-VOL510a)を、第2のストレージノードが提供する仮想的なボリューム(
図4に示す例によれば、E-VOL520aおよびE-VOL520b)として対応付ける(マッピングする)機能である。マッピングとは、E-VOLに、第2のストレージノードから操作するために必要な管理番号を割り当てることである。E-VOLをマッピングすることで、第2のストレージノードは、E-VOLに対して、第2のストレージノード自身が作成したボリュームと同等の管理操作(例えば、GUI、CLIからの管理や、スナップショット、リモートレプリケーションなどの機能適用)を行うことができるようになる。第2のストレージノードは、第2のストレージノードが提供するE-VOLに対して、ホスト計算機や当該E-VOLに基づくボリュームからリード/ライト要求があった場合、当該E-VOLに対応する第1のストレージノード上のVOLへリード/ライト要求を転送することができる。
【0029】
これにより、第2のストレージノードが、第1のストレージノード上のVOLと同じデータを持つボリュームを提供したい場合であっても、第2のストレージノードは、第1のストレージノード上のVOLと同じ種別のVOLの定義および、その定義に必要な記憶デバイスや容量仮想化技術(例えば、Thin Provisioning)の容量の提供が不要になる。また、第2のストレージノードで提供するE-VOLに対してリード/ライト要求があった場合、E-VOLに対してリード/ライト要求があったデータブロックのみを、リード/ライト要求の度に、第1のストレージノードと第2のストレージノードの間で転送すればよい。そのため、第2のストレージノード上で第1のストレージ上のVOLと同じデータを持つボリュームを提供するにあたり、外部接続機能を用いれば、その提供開始時点で、第1のストレージノード上のVOLの中にある全てのデータを、第2のストレージノードへ転送する必要はなく、外部接続の設定が完了した時点で、第2のストレージノードは、ホスト計算機や当該E-VOLに基づくボリュームから、E-VOLに対するリード/ライト要求を受けつけることができる。
【0030】
第2のストレージノードがE-VOLを提供する場合、E-VOLを提供する第2のストレージノード上に、キャッシュを用意し、そのキャッシュ上に、第1のストレージノードから転送されてきた、E-VOLに対応するVOLのデータブロックを格納し、そのキャッシュされたデータブロックをリード/ライト要求をするホスト計算機や当該E-VOLに基づくボリュームのリード/ライト要求による参照/更新先としてもよい。キャッシュは、典型的にはメモリ120で実現されてよい。
【0031】
SS-VOLは、スナップショット対象のボリュームの複製として提供されるボリュームでよく、SS-VOLおよびスナップショット対象ボリュームに対するライトにより更新されたことによる差分データ(スナップショットデータ)のみを、記憶デバイスや複数の記憶デバイスで構成された記憶領域(典型的には、プールなど)に保存すればよい。
【0032】
次に、管理装置200のメモリ220の構成について説明する。
図5は、一実施形態に係る管理装置のメモリの構成図である。
管理装置200のメモリ220は、プログラム2200と、管理テーブル2300とを格納する。
【0033】
プログラム2200は、管理I/Fプログラム2210と、スケールアウトプログラム2220とを含む。管理I/Fプログラム2210は、情報処理システム1の管理者が操作する管理クライアントから送信されてきた指示内容を、その指示内容に対する処理をするプログラムへ受け渡しを行うとともに、指示内容に対する処理をするプログラムの実行結果を、情報処理システム1の管理クライアントへ送信するためのプログラムである。スケールアウトプログラム2220は、管理クライアントからのスケールアウト指示内容に基づき、スケールアウト処理を行うためのプログラムである。
【0034】
管理テーブル2300は、スケールアウト管理テーブル2310と、ストレージノード管理テーブル2320と、スケールアウト対象VOL管理テーブル2330と、E-VOL管理テーブル2340と、SS-VOL管理テーブル2350とを含む。スケールアウト管理テーブル2310は、管理クライアントからのスケールアウト指示内容と、スケールアウト処理の現在の状態を管理するための情報である。ストレージノード管理テーブル2320は、ストレージクラスタ1000が有するストレージノード100の現在の状態を管理するための情報である。スケールアウト対象VOL管理テーブル2330は、スケールアウト処理で、スケールアウト対象となるVOL500を管理するための情報である。E-VOL管理テーブル2340は、スケールアウト処理で、作成されるE-VOL520を管理するための情報である。SS-VOL管理テーブル2350は、スケールアウト処理で、作成されるSS-VOL510を管理するための情報である。
【0035】
次に、ストレージノード100のメモリ120の構成について説明する。
図6は、一実施形態に係るストレージノードのメモリの構成図である。
ストレージノード100のメモリ120は、プログラム1200を格納する。
プログラム1200は、I/Oプログラム1210と、パス管理プログラム1220と、ボリューム管理プログラム1230と、スナップショットプログラム1240と、外部接続プログラム1250とを含む。I/Oプログラム1210は、ホスト計算機300からのI/O要求を処理するためのプログラムである。パス管理プログラム1220は、パスの作成、削除やパス情報の管理、パス定義に基づいたホスト計算機300とボリュームとの経路制御を行うためのプログラムである。ボリューム管理プログラム1230は、ボリュームの作成、削除やボリューム情報の管理を行うためのプログラムである。スナップショットプログラム1240は、SS-VOLの作成、削除やSS-VOL情報の管理、SS-VOLに対するリード/ライト時のデータ処理を行うためのプログラムである。外部接続プログラム1250は、E-VOLの作成、削除やE-VOL情報の管理、E-VOLに対するリード/ライト時のデータ処理を行うためのプログラムである。
【0036】
次に、スケールアウト管理テーブル2310について説明する。
図7は、一実施形態に係るスケールアウト管理テーブルの構成図である。
スケールアウト管理テーブル2310は、スケールアウト指示内容と、スケールアウト処理の現在の状態の情報を管理するテーブルである。スケールアウト管理テーブル2310は、スケールアウト処理毎のエントリーを格納する。スケールアウト管理テーブル2310のエントリーは、スケールアウトID2311と、スケールアウト対象VOL ID2312と、スケールアウトVOL数2313と、スケールアウト結果VOL ID2314と、接続先ホストID2315と、スケールアウト処理状態2316とのフィールドを含む。
【0037】
スケールアウトID2311には、エントリーに対応するスケールアウト処理の識別番号が格納される。スケールアウト対象VOL ID2312には、エントリーに対応するスケールアウト処理でのスケールアウト対象のVOL500の識別番号(VOL ID)が格納される。スケールアウトVOL数2313には、エントリーに対応するスケールアウト処理で指示されたスケールアウト対象VOL500の必要な複製数が格納される。スケールアウト結果VOL ID2314には、エントリーに対応するスケールアウト処理によって作成されたSS-VOL510の識別番号(SS-VOL ID)が格納される。接続先ホストID2315には、エントリーに対応するスケールアウト処理で指示されたスケールアウト結果VOLとのパス定義を行うホスト識別番号が格納される。接続先ホストIDは、典型的には、WWNやISCSIイニシエータ名であってよい。スケールアウト処理状態2316には、エントリーに対応するスケールアウト処理の現在の状態が格納される。スケールアウト処理状態は、例えば、「完了」と「E-VOL作成済」、「未実行」などスケールアウト処理の進捗状態を格納すればよく、後述のフローチャートでの各処理の実行後に、スケールアウト処理状態2316を更新してよい。
【0038】
次に、ストレージノード管理テーブル2320について説明する。
図8は、一実施形態に係るストレージノード管理テーブルの構成図である。
ストレージノード管理テーブル2320は、ストレージクラスタ1000が有するストレージノード100の現在の状態の情報を管理するためのテーブルである。ストレージノード管理テーブル2320は、ストレージノード100毎のエントリーを格納する。ストレージノード管理テーブル2320のエントリーは、ノードID2321と、ノード状態2322と、空き容量2323と、CPU使用率2324と、メモリ使用率2325と、通信帯域使用率2326とのフィールドを含む。
【0039】
ノードID2321には、エントリーに対応するストレージノード100の識別番号(ノードID)が格納される。ノード状態2322には、エントリーに対応するストレージノード100の状態が格納される。ノード状態2322は、例えば、「正常」、「異常」といった情報でよい。空き容量2323には、エントリーに対応するストレージノード100のストレージデバイス130の空き容量の合計が格納される。CPU使用率2324には、エントリーに対応するストレージノード100のCPU110の使用率が格納される。メモリ使用率2325には、エントリーに対応するストレージノード100のメモリ120の使用率が格納される。通信帯域使用率2326には、エントリーに対応するストレージノード100の通信I/F140での通信帯域の使用率が格納される。
【0040】
次に、スケールアウト対象VOL管理テーブル2330について説明する。
図9は、一実施形態に係るスケールアウト対象VOL管理テーブルの構成図である。
スケールアウト対象VOL管理テーブル2330は、スケールアウト処理で、スケールアウト対象となるVOLの情報を管理するためのテーブルである。スケールアウト対象VOL管理テーブル2330は、スケールアウト処理毎のエントリーを格納する。スケールアウト対象VOL管理テーブル2330のエントリーは、スケールアウトID2331と、スケールアウト対象VOL ID2332と、展開用ボリュームID2333と、配置先ノードID2334とのフィールドを含む。
【0041】
スケールアウトID2331には、エントリーに対応するスケールアウト処理の識別番号が格納される。スケールアウト対象VOL ID2332には、エントリーに対応するスケールアウト処理でのスケールアウト対象のVOL500の識別番号(VOL ID)が格納される。展開用ボリュームID2333には、エントリーに対応するスケールアウト処理での、展開用のボリュームとして使用するボリュームの識別番号が格納され、例えば、E-VOL520の外部接続先として使用するボリュームID(SS-VOL ID)が格納される。配置先ノードID2334は、エントリーに対応するスケールアウト処理での、スケールアウト対象VOLが配置されているノードの識別番号(ノードID)が格納される。
【0042】
次に、E-VOL管理テーブル2340について説明する。
図10は、一実施形態に係るE-VOL管理テーブルの構成図である。
E-VOL管理テーブル2340は、スケールアウト処理で、作成されるE-VOL520の情報を管理するためのテーブルである。E-VOL管理テーブル2340は、E-VOL520毎のエントリーを格納する。E-VOL管理テーブル2340のエントリーは、E-VOL ID2341と、E-VOL提供元VOL ID2342と、配置先ノードID2343と、スケールアウトID2344とのフィールドを含む。
E-VOL ID2341には、エントリーに対応するE-VOL520の識別番号(E-VOL ID)が格納される。E-VOL提供元VOL ID2342には、エントリーに対応するE-VOL520が外部接続するボリュームの識別番号(SS-VOL ID)が格納される。配置先ノードID2343には、エントリーに対応するE-VOL520の配置先であるストレージノード100の識別番号(ノードID)が格納される。スケールアウトID2344には、エントリーに対応するE-VOL520を作成したスケールアウト処理の識別番号(スケールアウトID)が格納される。
【0043】
次に、SS-VOL管理テーブル2350について説明する。
図11は、一実施形態に係るSS-VOL管理テーブルの構成図である。
SS-VOL管理テーブル2350は、スケールアウト処理で、作成されるSS-VOL510の情報を管理するためのテーブルである。SS-VOL管理テーブル2350は、SS-VOL510毎のエントリーを格納する。SS-VOL管理テーブル2350のエントリーは、SS-VOL ID2351と、SS-VOL提供元VOL ID2352と、配置先ノードID2353と、スケールアウトID2354と、展開用VOL属性2355とのフィールドを含む。
【0044】
SS-VOL ID2351には、エントリーに対応するSS-VOL510の識別番号(SS-VOL ID)が格納される。SS-VOL提供元VOL ID2352には、エントリーに対応するSS-VOL510のスナップショット元となるボリュームの識別番号が格納される。SS-VOL提供元VOL ID2352は、例えば、VOL500の識別番号(VOL ID)や、E-VOL520の識別番号(E-VOL ID)でよい。配置先ノードID2353には、エントリーに対応するSS-VOL510の配置先であるストレージノード100の識別番号(ノードID)が格納される。スケールアウトID2354には、エントリーに対応するSS-VOL510を作成したスケールアウト処理の識別番号(スケールアウトID)が格納される。展開用VOL属性2355には、エントリーに対応するSS-VOL510が、他ノードへの外部接続用に作成されたSS-VOL510であるかどうかを識別する属性の情報が格納される。本実施形態では、エントリーに対応するSS-VOL510が他ノードへの外部接続用に作成されたSS-VOL510である場合、Trueが格納され、ホストからの接続用として作成されたSS-VOL510である場合、Falseが格納される。
【0045】
次に、管理装置200によるスケールアウト処理全体のフローについて説明する。
図12は、一実施形態に係るスケールアウト処理全体のフローチャートである。
本実施形態では、情報処理システム1の管理クライアントからの要求を契機に、スケールアウト処理を実行しているが、その他の契機でスケールアウト処理が実行されてもよい。例えば、管理装置200が、ストレージノード100の稼働情報を定期的に収集・分析を行い、ストレージノード100上のボリューム500のI/O性能が、予め設定された顧客要求の性能に達しないとき、管理装置200がスケールアウトの必要性を自ら判断し、自動的に管理装置200がスケールアウト処理の契機を発行してもよい。
【0046】
情報処理システム1の管理クライアントは、管理装置200の管理I/Fプログラム2210に対して、スケールアウト要求を送信する(ステップS3000)。ここで、管理クライアントは、スケールアウト対象VOL ID、スケールアウトVOL数、接続先ホストIDなどを入力パラメータとして送信する。接続先ホストIDは、スケールアウト処理でのパス設定に使用されるパラメータであるが、必ずしも送信する必要はなく、スケールアウト処理後に、管理クライアントが自らの操作で接続先ホストIDに対するパスを設定してもよい。また、入力パラメータは、上記のパラメータに限らなくてもよく、それ以外の入力パラメータを採用してもよい。例えば、入力パラメータとして、スケールアウト処理実行時刻を送信してもよく、そのスケールアウト処理実行時刻のパラメータに基づいて、スケールアウトプログラムは、スケールアウト実行タイミングを制御してもよい。なお、スケールアウト要求は、1回の入力や1回の通信で送信してもよいし、複数回の入力や複数回の通信で送信してもよい。
【0047】
次いで、管理I/Fプログラム2210は、管理クライアントから送信されるスケールアウト要求を受信し、その内容をスケールアウトプログラム2220に対して送信する(ステップS3100)。なお、スケールアウト要求内容は、1回の通信で送信してもよいし、複数回の通信で送信してもよい。
【0048】
次いで、スケールアウトプログラム2220は、管理I/Fプログラム2210から送信されてきたスケールアウト要求内容を受信し、そのスケールアウト要求内容(スケールアウト対象VOL ID、スケールアウトVOL数、接続先ホストID)を、スケールアウト管理テーブル2310に格納する(ステップS3200)。この際、スケールアウトプログラム2220は、スケールアウトIDを、スケールアウト管理テーブル2310内に既に格納されているエントリーのスケールアウトIDと被らないように採番してから、スケールアウト要求内容をスケールアウト管理テーブル2310に格納する。
【0049】
スケールアウトプログラム2220は、スケールアウト管理テーブル2310に格納されたスケールアウト要求内容に基づき、スケールアウト処理に必要な情報を収集、確認する(ステップS3300)。ここで、スケールアウト処理の判断に必要な、スケールアウト対象VOLの情報や、ストレージノード100の情報の取得、管理テーブルへの格納を行う。
【0050】
次いで、スケールアウトプログラム2220は、展開用VOL作成処理を実行する(ステップS3400)。ここで、スケールアウト対象VOLの配置先ノード以外のノードがE-VOL520を作成するときの外部接続先となる展開用VOLの作成を行う。次いで、スケールアウトプログラム2220は、E-VOL作成処理を実行する(ステップS3500)。ここで、展開用VOL作成処理によって作成された展開用VOLに外部接続するE-VOL520を作成する。
【0051】
次いで、スケールアウトプログラム2220は、SS-VOL作成処理を実行する(ステップS3600)。ここで、展開用VOL作成処理(ステップS3400)によって作成された展開用VOLもしくはE-VOL作成処理(ステップS3500)によって作成されたE-VOL520をスナップショット元にしたSS-VOL510を作成する。
【0052】
次いで、スケールアウトプログラム2220は、パス変更処理S3700を実行する。ここで、SS-VOL作成処理(ステップS3600)で作成されたSS-VOL510と、スケールアウト要求内容格納処理(ステップS3200)でスケールアウト管理テーブル2310に格納された接続先ホストIDが示すホストとのパスを作成する。スケールアウトプログラム2220は、ステップS3200~ステップS3700の処理が完了した後、管理I/Fプログラムに対して、スケールアウト処理の完了およびその結果を通知する。
【0053】
次いで、管理I/Fプログラム2210は、スケールアウトプログラム2220から通知された実行結果を管理クライアントへ送信する(ステップS3800)。この実行結果の送信方法は、制限されるものではなく、GUIで画面表示することで送信してもよいし、CLIやAPIによるコマンドレスポンスとして送信でもよい。
【0054】
最後に、管理クライアントは、管理I/Fプログラム2210によって送信されたスケールアウト実行結果を確認する(ステップS3900)。ここで、管理クライアントは、スケールアウトの成否、スケールアウト結果によって複製されたボリュームID、数、配置先ノードIDなどの情報を確認できる。
【0055】
次に、スケールアウトに必要な情報確認処理(ステップS3300)について詳細に説明する。
図13は、一実施形態に係るスケールアウトに必要な情報確認処理のフローチャートである。
【0056】
管理装置200のスケールアウトプログラム2220は、各ストレージノード100からノード情報を取得する(ステップS3301)。ここで取得するノード情報は、ストレージノード管理テーブル2320のフィールド情報である。そして、スケールアウトプログラム2220は、取得したノード情報をストレージノード管理テーブル2320に格納する(ステップS3302)。なお、ステップS3301~S3302の処理は、スケールアウト処理以外の契機で定期実行により処理実行されてよく、もし、定期実行により、ストレージノード管理テーブル2320にストレージノード情報の最新情報が格納されている場合は、必ずしも、スケールアウト処理のフローの中で、ステップS3301~S3302を実行しなくてもよい。
【0057】
次いで、スケールアウトプログラム2220は、スケールアウト対象VOLの配置先ノードからスケールアウト対象VOL情報を取得する(ステップS3303)。管理装置200がスケールアウト対象VOLの配置先ノードを知る方法としては、スケールアウト処理以前の運用管理において対象VOLを作成したタイミングで、予め管理装置200上の管理テーブル上にボリューム情報と配置先ノード情報を対応づける情報を格納しておいてもよいし、管理装置200が各ストレージノード100に対して、対象VOLがノード上に配置されているか問い合わせてもよい。スケールアウトプログラム2220は、取得したスケールアウト対象VOL情報をスケールアウト対象VOL管理テーブル2330に格納する(ステップS3304)。その際、スケールアウトIDは、ステップS3200で採番したものを格納する。この時点では、展開用ボリュームID2333のフィールドには情報を格納しなくてよい。
【0058】
次に、展開用VOL作成処理(ステップS3400)について詳細に説明する。
図14は、一実施形態に係る展開用VOL作成処理のフローチャートである。
管理装置200のスケールアウトプログラム2220は、ステップS3303で確認したスケールアウト対象VOL配置先ノード上に、スケールアウト対象VOL500のSS-VOL510を作成する(ステップS3401)。具体的には、管理装置200は、スケールアウト対象VOL配置先ノードに対して、スケールアウト対象VOL500をスナップショット元としてSS-VOL作成依頼を送信し、SS-VOL作成依頼を受け取ったストレージノード100のスナップショットプログラム1240が、スケールアウト対象VOL500をスナップショット元としてSS-VOL510を作成し、その結果(SS-VOL作成成否、SS-VOL IDなど)を管理装置200に送信する。
【0059】
次いで、スケールアウトプログラム2220は、ステップS3401で作成したSS-VOL510を展開用VOLとしてスケールアウト対象VOL管理テーブル2330を更新する。具体的には、ステップS3304で格納したエントリーの展開用ボリュームIDフィールド2333に、SS-VOL510のIDを格納する。また、SS-VOL管理テーブル2350を更新する。具体的には、ステップS3401で作成したSS-VOL510のIDをSS-VOL ID2351に格納し、スケールアウト対象VOL500のIDをSS-VOL提供元VOL ID2352に格納し、SS-VOL510作成先ノードを配置先ノードID2353に格納し、ステップS3200で採番したスケールアウトIDをスケールアウトID2354に格納し、展開用VOL属性にはTrueを格納する(ステップS3402)。
【0060】
次に、E-VOL作成処理(ステップS3500)について詳細に説明する。
図15は、一実施形態に係るE-VOL作成処理のフローチャートである。
管理装置200のスケールアウトプログラム2220は、「スケールアウト対象VOLの配置先ノードでない」かつ「ノード状態が正常」であるストレージノード100を(スケールアウトVOL数-1)個以下かつ(全ノード数-1)だけ選択する(ステップS3501)。スケールアウト対象VOLの配置先ノードでないかどうかは、スケールアウト対象VOL管理テーブル2330の配置先ノードID2334と、ストレージノード100のノードIDを比較すればよい。ノード状態が正常であるかどうかは、ストレージノード管理テーブル2320のノード状態2322を参照すればよい。スケールアウトVOL数は、スケールアウト管理テーブル2310のスケールアウトVOL数2313を参照すればよい。全ノード数は、例えば、ストレージノード管理テーブル2320の有効なエントリー数を数えて確認してもよく、その他の管理テーブルを用意し、その上で管理してもよい。
【0061】
次いで、スケールアウトプログラム2220は、ステップS3501で選択したストレージノード100上に、展開用VOL(SS-VOL510)を外部接続するE-VOL520を作成する(ステップS3502)。具体的には、管理装置200は、ステップS3501で選択したストレージノード100に対して、S3401で作成した展開用VOL(SS-VOL510)を外部接続するE-VOL作成依頼を送信し、E-VOL作成依頼を受け取ったストレージノード100の外部接続プログラム1250が、展開用VOL(SS-VOL510)を外部接続するE-VOL520を作成し、その結果(E-VOL作成成否、E-VOL IDなど)を管理装置200に送信する。
ステップS3502でのE-VOL作成結果をもとに、E-VOL管理テーブル2340を更新する(ステップS3503)。具体的には、ステップS3502で作成したE-VOL520のIDをE-VOL ID2341に格納し、ステップS3502で作成したE-VOL520のスナップショット元であるボリュームのIDをE-VOL提供元VOL ID2342に格納し、ステップS3502で作成したE-VOL520の作成先のストレージノード100のノードIDを配置先ノードID2343に格納し、ステップS3200で採番したスケールアウトIDをスケールアウトID2344に格納する。
【0062】
次に、SS-VOL作成処理(ステップS3600)について詳細に説明する。
図16は、一実施形態に係るSS-VOL作成処理のフローチャートである。
管理装置200のスケールアウトプログラム2220は、(スケールアウトVOL数-展開用VOLとして作成されたSS-VOL以外の作成済みSS-VOLの数)>0かどうか判断し、条件を満たす場合、ステップS3602に進み、条件を満たさない場合、ステップS3606に進む(ステップS3601)。ステップS3601は、具体的には、スケールアウトプログラム2220が、展開用VOLとして作成されたSS-VOL以外の作成済みSS-VOL510の数が、スケールアウトVOL数に達したかどうか判断している。スケールアウトVOL数は、スケールアウト管理テーブル2310のスケールアウトVOL数2313を参照すればよい。展開用VOLとして作成されたSS-VOL以外の作成済みSS-VOLの数は、SS-VOL管理テーブル2350のスケールアウトID2354が、ステップS3200で採番したスケールアウトIDかつ、展開用VOL属性2355がFalseであるエントリーの数を数えればよい。
【0063】
(スケールアウトVOL数-展開用VOLとして作成されたSS-VOL以外の作成済みSS-VOLの数)>0である場合(ステップS3601;Yes)、スケールアウトプログラム2220は、「展開用VOLもしくは作成済E-VOLをもつ」かつ「ノード上の作成済SS-VOL数が他ノード以下」であるストレージノード100を選択する(ステップS3602)。ステップS3602は、スケールアウト処理において、ホスト計算機300に提供するSS-VOL520を各ストレージノード100に可能な限り均等に配置するために実行する。展開用VOLをもつストレージノード100であるかは、スケールアウト対象VOL管理テーブル2330を参照し、判断すればよい。作成済E-VOLを持つストレージノード100であるかは、E-VOL管理テーブル2340を参照し、判断すればよい。ノード上の作成済SS-VOL数が他ノード以下であるかどうかは、SS-VOL管理テーブル2350を参照し、判断すればよい。
【0064】
スケールアウトプログラム2220は、ステップS3602で選択したストレージノード100の数が複数存在するか判断する(ステップS3603)。条件を満たした場合は、ステップS3604に進み、条件を満たさない場合は、ステップS3605へ進む。もし、ステップS3602で、複数のストレージノードが選択された場合、スケールアウトプログラム2220は、ストレージノード100の情報をもとに、ストレージノード100を一つ選択する(ステップS3604)。具体的には、ストレージノード管理テーブル2320のCPU使用率2324、メモリ使用率2325、通信帯域使用率2326を参照し、他ストレージノード100より、これらの使用率が低いストレージノード100を優先して、一つ選択する。ここで、どのストレージノード100のリソースの使用率に重みを置いて判断するかは、ストレージシステムの特性や、現時点のストレージシステムの使用状況に応じて、適宜重みづけしてよい。
【0065】
スケールアウトプログラム2220は、ステップS3604もしくは、ステップS3602で選択したストレージノード100上に、展開用VOLもしくは作成済E-VOLをもとにした、SS-VOL510を1個作成する(ステップS3605)。具体的には、スケールアウトプログラム2220は、スケールアウト対象VOL管理テーブル2330を参照し、選択したストレージノード100上に、展開用VOLが配置されていることを確認した場合は、展開用VOLをもとにSS-VOL510を作成する。また、スケールアウトプログラム2220は、E-VOL管理テーブル2340を参照し、選択したストレージノード100上に、E-VOL520が配置されていることを確認した場合は、E-VOL520をもとにSS-VOL510を作成する。SS-VOL作成処理は、管理装置200が、選択したストレージノード100に対して、スナップショット作成元VOL IDと、作成個数1個をパラメータとしてSS-VOL作成依頼を送信し、SS-VOL作成依頼を受信したストレージノード100のスナップショットプログラム1240が、スナップショット作成元VOL IDで指定されたVOLをもとに、SS-VOL510を1個作成し、その結果(SS-VOL作成成否、SS-VOL ID等)を管理装置200に送信する。
【0066】
次いで、スケールアウトプログラム2220は、ステップS3601に戻り、スケールアウトに必要な個数までSS-VOL520が作成されたかどうか再度判断する。
ステップS3601~S3605を繰り返すことで、スケールアウト要求で指定されたスケールアウトVOL数の数までSS-VOL520を作成する。スケールアウト要求で指定されたスケールアウトVOL数の数までSS-VOL520が作成された後は(ステップS3601;No)、ステップS3606に進み、ステップS3605で作成したSS-VOL520の作成結果をもとに、SS-VOL管理テーブル2350を更新する(ステップS3606)。具体的には、ステップS3605で作成したSS-VOL520のIDをSS-VOL ID2351に格納し、ステップS3605で作成したSS-VOL520のスナップショット元となったボリュームのIDをSS-VOL提供元VOL ID2352に格納し、ステップS3605で作成したSS-VOL520の作成先ストレージノード100のノードIDを配置先ノードID2353に格納し、ステップS3200で採番したスケールアウトIDをスケールアウトID2354に格納し、展開用VOL属性2355にはFalseを格納すればよい。ステップS3606は、本実施形態のように、ステップS3601~S3605のループから抜けた後にまとめて処理実行を行ってもよいし、別の方法として、例えば、ステップS3605実行後の度に、処理実行してもよい。
【0067】
図16では、負荷が少ないノードに対して優先的にSS-VOL510を生成することで、負荷の均一化を図っている。この他、ノードの性能や用途に応じて、SS-VOL510を生成するノードを選択してもよい。例えば、ノードの性能が高く、処理に余裕のあるノードを選択してもよいし、高い性能を要求されない用途に用いるノードを選択してもよい。
【0068】
次に、パス変更処理(ステップS3700)について詳細に説明する。
図17は、一実施形態に係るパス変更処理のフローチャートである。
管理装置200のスケールアウトプログラム2220は、ステップS3600で作成されたSS-VOL520の数が1個以上か判断する(ステップS3701)。具体的には、SS-VOL管理テーブル2350のスケールアウトID2354がステップS3200で採番したスケールアウトIDかつ、展開用VOL属性2355がFalseであるエントリー数を数えればよい。ステップS3701の条件を満たした場合、ステップS3702に進み、条件を満たさない場合、パス変更処理S3700は終了する。
【0069】
ステップS3702に進んだ場合、スケールアウトプログラム2220は、スケールアウト管理テーブル2310の接続先ホストID2315を参照し、スケールアウト要求内容に接続先ホストIDが含まれるか判断する。ステップS3702の条件を満たした場合、ステップS3703に進み、条件を満たさない場合、パス変更処理S3700は終了する。
【0070】
ステップS3703に進んだ場合、ステップS3600で作成された各SS-VOL520とステップS3200でスケールアウト管理テーブル2310に格納された接続先ホストID2315が示す各ホスト計算機300とが1対1となるようにパス530を作成する。具体的には、管理装置200が、ステップS3600で作成されたSS-VOL520のIDと、スケールアウト管理テーブル2310に格納された接続先ホストID2315をパラメータとして、ストレージノード100に対して、パス作成依頼を送信し、パス作成依頼を受け取ったストレージノード100上のパス管理プログラム1220は、パラメータとして指定されたSS-VOL520とホスト計算機300とのパスを作成し、その結果(パス作成処理成否、パスID、ホスト計算機300がパス530でボリュームをアクセスしたときのボリューム識別番号(典型的には、LUN ID))を管理装置200に送信する。
【0071】
以上説明したように本実施例では、ストレージノード100上でVOL500をもとにしたSS-VOL510aを作成し、VOL500が配置されているストレージノード100以外のストレージノード100が、SS-VOL510aに対して外部接続するE-VOL520を作成し、SS-VOL510aもしくは、E-VOL520をもとにしたSS-VOL510bを作成し、作成したSS-VOL510bと、ホスト計算機300とのパスを作成することで、VOL500の複製を、複数ストレージノード100上から、複数ホスト計算機300に提供する。これにより、ストレージノード100上のVOL500を他ストレージノード100にスケールアウトさせる場合、VOL500内のデータを他ストレージノード100にフルコピーする時間が不要となり、迅速にスケールアウトさせることが可能となる。
実施例1では、ある一拠点10上のストレージクラスタ1000のVOL500をストレージクラスタ1000内でスケールアウトさせていたが、本実施例では、ハイブリッドクラウド環境でのスケールアウトを行う。具体的には、オンプレミス上のストレージシステムのVOL500を、クラウド上のストレージクラスタ1000でスケールアウトさせる。