JP2023121040A - ストレージシステム及びストレージシステムにおけるデータ移行方法 - Google Patents

ストレージシステム及びストレージシステムにおけるデータ移行方法 Download PDF

Info

Publication number
JP2023121040A
JP2023121040A JP2022024249A JP2022024249A JP2023121040A JP 2023121040 A JP2023121040 A JP 2023121040A JP 2022024249 A JP2022024249 A JP 2022024249A JP 2022024249 A JP2022024249 A JP 2022024249A JP 2023121040 A JP2023121040 A JP 2023121040A
Authority
JP
Japan
Prior art keywords
migration
pool
volumes
volume
storage device
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
JP2022024249A
Other languages
English (en)
Inventor
貴敦 鈴木
Takanobu Suzuki
司 柴山
Tsukasa Shibayama
彰 出口
Akira Deguchi
Current Assignee (The listed assignees may be inaccurate. Google has not performed a legal analysis and makes no representation or warranty as to the accuracy of the list.)
Hitachi Ltd
Original Assignee
Hitachi Ltd
Priority date (The priority date is an assumption and is not a legal conclusion. Google has not performed a legal analysis and makes no representation as to the accuracy of the date listed.)
Filing date
Publication date
Application filed by Hitachi Ltd filed Critical Hitachi Ltd
Priority to JP2022024249A priority Critical patent/JP2023121040A/ja
Priority to US17/943,517 priority patent/US20230266907A1/en
Publication of JP2023121040A publication Critical patent/JP2023121040A/ja
Pending legal-status Critical Current

Links

Images

Classifications

    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F3/00Input arrangements for transferring data to be processed into a form capable of being handled by the computer; Output arrangements for transferring data from processing unit to output unit, e.g. interface arrangements
    • G06F3/06Digital input from, or digital output to, record carriers, e.g. RAID, emulated record carriers or networked record carriers
    • G06F3/0601Interfaces specially adapted for storage systems
    • G06F3/0628Interfaces specially adapted for storage systems making use of a particular technique
    • G06F3/0646Horizontal data movement in storage systems, i.e. moving data in between storage devices or systems
    • G06F3/0647Migration mechanisms
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F3/00Input arrangements for transferring data to be processed into a form capable of being handled by the computer; Output arrangements for transferring data from processing unit to output unit, e.g. interface arrangements
    • G06F3/06Digital input from, or digital output to, record carriers, e.g. RAID, emulated record carriers or networked record carriers
    • G06F3/0601Interfaces specially adapted for storage systems
    • G06F3/0602Interfaces specially adapted for storage systems specifically adapted to achieve a particular effect
    • G06F3/061Improving I/O performance
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F3/00Input arrangements for transferring data to be processed into a form capable of being handled by the computer; Output arrangements for transferring data from processing unit to output unit, e.g. interface arrangements
    • G06F3/06Digital input from, or digital output to, record carriers, e.g. RAID, emulated record carriers or networked record carriers
    • G06F3/0601Interfaces specially adapted for storage systems
    • G06F3/0602Interfaces specially adapted for storage systems specifically adapted to achieve a particular effect
    • G06F3/0604Improving or facilitating administration, e.g. storage management
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F3/00Input arrangements for transferring data to be processed into a form capable of being handled by the computer; Output arrangements for transferring data from processing unit to output unit, e.g. interface arrangements
    • G06F3/06Digital input from, or digital output to, record carriers, e.g. RAID, emulated record carriers or networked record carriers
    • G06F3/0601Interfaces specially adapted for storage systems
    • G06F3/0628Interfaces specially adapted for storage systems making use of a particular technique
    • G06F3/0629Configuration or reconfiguration of storage systems
    • G06F3/0631Configuration or reconfiguration of storage systems by allocating resources to storage systems
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F3/00Input arrangements for transferring data to be processed into a form capable of being handled by the computer; Output arrangements for transferring data from processing unit to output unit, e.g. interface arrangements
    • G06F3/06Digital input from, or digital output to, record carriers, e.g. RAID, emulated record carriers or networked record carriers
    • G06F3/0601Interfaces specially adapted for storage systems
    • G06F3/0668Interfaces specially adapted for storage systems adopting a particular infrastructure
    • G06F3/067Distributed or networked storage systems, e.g. storage area networks [SAN], network attached storage [NAS]
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F3/00Input arrangements for transferring data to be processed into a form capable of being handled by the computer; Output arrangements for transferring data from processing unit to output unit, e.g. interface arrangements
    • G06F3/06Digital input from, or digital output to, record carriers, e.g. RAID, emulated record carriers or networked record carriers
    • G06F3/0601Interfaces specially adapted for storage systems
    • G06F3/0668Interfaces specially adapted for storage systems adopting a particular infrastructure
    • G06F3/0671In-line storage system
    • G06F3/0673Single storage device
    • G06F3/0679Non-volatile semiconductor memory device, e.g. flash memory, one time programmable memory [OTP]
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F3/00Input arrangements for transferring data to be processed into a form capable of being handled by the computer; Output arrangements for transferring data from processing unit to output unit, e.g. interface arrangements
    • G06F3/06Digital input from, or digital output to, record carriers, e.g. RAID, emulated record carriers or networked record carriers
    • G06F3/0601Interfaces specially adapted for storage systems
    • G06F3/0668Interfaces specially adapted for storage systems adopting a particular infrastructure
    • G06F3/0671In-line storage system
    • G06F3/0683Plurality of storage devices
    • G06F3/0689Disk arrays, e.g. RAID, JBOD

Landscapes

  • Engineering & Computer Science (AREA)
  • Theoretical Computer Science (AREA)
  • Human Computer Interaction (AREA)
  • Physics & Mathematics (AREA)
  • General Engineering & Computer Science (AREA)
  • General Physics & Mathematics (AREA)
  • Information Retrieval, Db Structures And Fs Structures Therefor (AREA)

Abstract

【課題】移行先ストレージ装置の適切な構成定義を行い、移行先ボリュームを適切に選択し、リバランス処理等によるストレージ装置のI/O性能の低下を抑制する。【解決手段】ストレージシステムの各ノードのプロセッサは、プール内のプールボリューム間で、データの入出力処理または/及びデータ容量を平準化するようにボリュームをノードのプールボリューム間で移動させるリバランスを行う。ストレージ管理装置は、外部からストレージシステム内のノードに複数のボリュームを移行させる場合に、移行完了後及び移行中において、プール内の各プールボリューム間でデータの入出力処理または/及びデータ容量を平準化するように、複数のボリュームの移行先ノード及び移行の順番を決定して実行する。【選択図】図2

Description

本発明は、ストレージシステム及びストレージシステムにおけるデータ移行方法に関する。
本技術分野の背景技術を開示する文献として、特開2010-49573号公報(特許文献1)がある。この文献には、ストレージ装置の管理者が、同一ストレージ装置内のあるボリュームから別のボリュームへデータ移行を行う際に、ストレージ装置のI/O処理負荷に応じてデータ移行するボリュームを選択する技術が記載されている。本技術により、I/O処理への影響を小さく保ってデータ移行を行うことができる。
特開2010-49573号公報
近年では、移行元ストレージ装置と移行先ストレージ装置が異なり、コスト削減のためにデータ移行先としてクラウド上の複数の仮想マシンをクラスタ化することで構成されるスケールアウト型のストレージ装置が選択されるケースがある。スケールアウト型ストレージの場合、クラスタへ計算機を追加する場合や、ある計算機に容量又は性能が偏っている場合に、容量や性能をクラスタ内の計算機間で均等化するリバランス処理が動作する。リバランス処理は計算機間でのデータの移動を伴うため、リバランス処理中はストレージ装置のI/O性能が低下することがある。
移行先ストレージ装置がスケールアウト型の場合でも、リバランス処理を起こさずにデータ移行を行うためには、移行先ストレージ装置の適切な構成定義及び変更ならびに移行先のボリュームの適切な選択が必要となる。
しかしながら、この点に関し、特許文献1では、移行元及び移行先のストレージ装置が異なることが想定されておらず、移行先ストレージ装置の適切な構成定義及び移行先のボリュームの適切な選択に関する技術には言及されていない。
本発明は、上記に鑑みてなされたものであり、移行先ストレージ装置の適切な構成定義を行い、移行先ボリュームを適切に選択し、リバランス処理等によるストレージ装置のI/O性能の低下を抑制可能な技術を提供することを1つの目的とする。
上述した課題を解決するため、本発明の一態様では、プロセッサを有する複数のノードと、記憶装置と、ストレージ管理装置と、を備えるストレージシステムにおいて、前記ノードのプロセッサは、前記記憶装置の記憶領域を用いて、それぞれのノードのプールボリュームを形成し、複数のノードにかかる複数のプールボリュームを用いて、プールを構成し、前記プール及び前記プールボリュームに、ホストに提供するボリュームを割り当て、前記プールボリュームに割り当てれられたボリュームを介して前記記憶装置に入出力されるデータの入出力処理を行い、前記プール内の前記プールボリューム間で、前記データの入出力処理または/及びデータ容量を平準化するように前記ボリュームを前記ノードのプールボリューム間で移動させるリバランスを行い、外部から前記ストレージシステム内のノードに複数のボリュームを移行させる場合に、前記ストレージ管理装置は、前記移行完了後及び移行中において、前記プール内の各プールボリューム間で前記データの入出力処理または/及びデータ容量を平準化するように、前記複数のボリュームの移行先ノード及び移行の順番を決定して実行することを特徴とする。
本発明の一態様によれば、例えば、移行先ストレージ装置の適切な構成定義を行い、移行先ボリュームを適切に選択し、リバランス処理等によるストレージ装置のI/O性能の低下を抑制することで、コストを抑えて安定運用を保つことが可能になる。
実施形態1に係るストレージ管理装置が実行するデータ移行先ストレージ装置の構成定義・データ移行処理の模式図である。 実施形態1に係るストレージシステムの構成例を示す図である。 ストレージ管理装置のメモリの構成例を示す図である。 移行元ストレージ装置のメモリの構成例を示す図である。 移行先ストレージ装置のメモリの構成例を示す図である。 ストレージ管理装置の移行元ストレージ装置構成・稼働情報表の構成例を示す図である。 ストレージ管理装置の移行先ストレージ装置構成・稼働情報表の構成例を示す図である。 ストレージ管理装置のアプリケーション情報表の構成例を示す図である。 ストレージ管理装置の移行グループ表の構成例を示す図である。 ストレージ管理装置の移行先ストレージ装置ノード表の構成例を示す図である。 移行元ストレージ装置及び移行先ストレージ装置のストレージ装置構成・稼働情報表の構成例を示す図である。 ストレージ管理装置のインスタンス・ボリュームタイプ格納表の構成例を示す図である。 実施形態1に係るストレージ管理装置が実行する移行先ストレージ装置の構成決定・作成処理のフローチャートである。 実施形態1に係るストレージ管理装置が実行する移行グループ作成処理のフローチャートである。 実施形態1に係るストレージ管理装置が実行するボリューム移行先ノード決定処理のフローチャートである。 実施形態1に係るストレージ管理装置が実行する移行元サーバ・移行先ストレージ装置に対するデータ移行指示処理のフローチャートである。 実施形態1に係るストレージ管理装置の表示画面の構成例を示す図である。 実施形態1に係るストレージ管理装置のユーザ引ファーフェースの構成例を示す図である。 実施形態2に係るストレージ管理装置が実行するデータ移行先のストレージ装置の構成定義・データ移行・データ移行中のクラスタ拡張処理の模式図である。 実施形態2に係るストレージ管理装置が実行するボリューム移行先ノード決定処理のフローチャートである。 実施形態2に係るストレージ管理装置が実行する移行元サーバ・移行先ストレージ装置に対するデータ移行指示・移行先ストレージ装置拡張指示処理のフローチャートである。
以下、本発明の実施形態について、図面を参照して説明する。なお、以下に説明する実施形態は、図面を含めて例示に過ぎず、特許請求の範囲に係る発明を限定するものではない。また、実施形態の中で説明されている諸要素及びその組合せの全てが、発明の解決手段に必須であるとは限らない。また、発明の構成に必須だが周知である構成については、図示及び説明を省略する場合がある。
また、以下の説明において、同種の要素を区別しないで説明する場合には、参照符号(又は、参照符号のうちの共通符号)を使用し、同種の要素を区別して説明する場合は、要素の識別番号(又は参照符号)を使用することがある。また、各図に示す各要素の数は一例であって、図示に限られるものではない。
以下の説明において、例えば、「xxx表」の表現にて各種情報を説明することがあるが、各種情報は表やテーブル以外のデータ構造で表現されていてもよい。各種情報がデータ構造に依存しないことを示すために、「xxx表」や「xxxテーブル」を「xxx情報」と呼ぶことがある。
また、以下の説明において、「ストレージシステム」は、例えば1以上の計算機を含む計算機システムである。「ストレージシステム」は、計算機の他に計算機以外のデバイスを含んでいてもよい。計算機とは、物理計算機又は仮想計算機である。
また、以下の説明において、「ストレージ管理装置」は、1以上の計算機を含んで構成される。例えば、ストレージ管理装置は、表示デバイスに情報を表示する管理計算機である。また、例えば、ストレージ管理装置は、管理計算機(例えばサーバ)及び管理計算機から受信した情報を表示する表示用計算機(例えばクライアント)のうちの少なくとも管理計算機を含んだシステムである。
また、以下の説明において、「ドライブ」は、物理的な1又は複数の記憶デバイスを意味し、典型的には、不揮発性の記憶デバイス(例えば補助記憶デバイス)でよい。ドライブは、例えば、HDD(Hard Disk Drive)又はSSD(Solid State Drive)でよい。ストレージシステムに異なる種類のドライブが混在していてもよい。
また、以下の説明において、CPU(Central Processing Unit)は1又は複数のプロセッサの一例である。プロセッサは、例えば、CPUのようなマイクロプロセッサであるが、GPU(Graphics Processing Unit)のような他種のプロセッサでもよい。また、プロセッサは、シングルコアでもよいしマルチコアでもよい。また、プロセッサは、処理の一部又は全部を行うハードウェア回路(例えばFPGA(Field-Programmable Gate Array)又はASIC(Application Specific Integrated Circuit))といった広義のプロセッサでもよい。
また、以下の説明において、「プログラム」あるいはそのプロセスを主語として処理を説明する場合がある。プログラムは、プロセッサによって実行されることで、定められた処理を、記憶資源(例えばメモリ)及び/又は通信インタフェース装置(例えば通信ポート)を適宜用いながら行うため、処理の主体をプロセッサとすることができる。プロセッサは、プログラムに従って動作することで、所定の機能を実現する機能部を実現する。よって、「xxxプログラム」は「xxx部」と言換えることができる。プロセッサを含む装置及びシステムは、これらの機能部を含む装置及びシステムである。
また、以下の説明において、プログラムは、計算機のような装置にインストールされてもよいし、プログラム配布サーバ又は計算機が読取り可能な(例えば非一時的な)記録媒体に記録されていてもよい。また、以下の説明において、2以上のプログラムが1つのプログラムとして実現されてもよいし、1つのプログラムが2以上のプログラムとして実現されてもよい。
[実施形態1]
(実施形態1に係るデータ移行先ストレージ装置の構成定義・データ移行処理)
図1は、実施形態1に係るストレージ管理装置230が実行するデータ移行先ストレージ装置の構成定義・データ移行処理の模式図である。ストレージシステム200は、移行元サーバ210(移行元ホスト)、移行先サーバ220(移行先ホスト)、ストレージ管理装置230、移行元ストレージ装置250、及び移行先ストレージ装置260を有する。移行元ストレージ装置250は、ボリュームの移行元のシステムの一例である。移行元のシステムは、1又は複数である。図1中の矢印は、処理に必要な情報の流れ又は移行対象のデータの流れを表している。また、図1中の矢印に付されている数字は、処理に必要な情報の流れ又は移行対象のデータの流れの実行順序を示し、丸囲みの数字は処理に必要な情報の流れを示し、四角囲みの数字は移行対象のデータの流れを示す。
ストレージ管理装置230は、移行元ストレージ装置250から、移行対象のボリュームの性能情報及び容量情報を取得する(図1中の“1”)。ストレージ管理装置230は、移行元ストレージ装置250から取得した移行対象ボリュームの性能情報及び容量情報を基に、移行先ストレージ装置260の構成を定義し、起動する(図1中の“2”)。
ストレージ管理装置230は、移行元サーバ210に対して、移行元ストレージ装置250から移行先サーバ220へのデータ移行を指示する(図1中の“3”)。移行元サーバ210は、ストレージ管理装置230の指示に従い、移行元ストレージ装置250からデータを読み出し、移行先サーバ220へ転送する(図1中の“4”)。ストレージ管理装置230は、移行先サーバ220からデータ移行状況を取得する(図1中の“5”)。
ストレージ管理装置230は、移行元ストレージ装置250から移行先サーバ220へのデータ移行の進捗が一定以上になったら、移行先ストレージ装置260に対し、移行先サーバ220からのデータ移行を指示する(図1中の“6”)。移行先ストレージ装置260は、ストレージ管理装置230からの指示に従い、移行先サーバ220からデータ移行を行う(図1中の“7”)。
このように、移行先ストレージ装置260の適切な構成定義を行った上で移行先ボリュームを選択することで、リバランス処理を起こさずにデータ移行を行ことができる。
(実施形態1に係るストレージシステム200の構成)
図2は、実施形態1に係るストレージシステム200の構成例を示す図である。
ストレージシステム200は、移行元サーバ210、移行先サーバ220、ストレージ管理装置230、移行元ストレージ装置250、移行先ストレージ装置260、及び管理サーバ295を有する。
移行元ストレージ装置250は、複数のドライブ254を有する。また、移行元ストレージ装置250は、移行元サーバ210に接続されるH-I/F(ホストインターフェースデバイス)251、ストレージ管理装置230に接続されるM-I/F(管理インターフェースデバイス)252、メモリ255、及び、それらの要素251、252、254及び255に接続されるCPU253を有する。
H-I/F251は、例えばHBA(Host Bus Adapter)でよい。M-I/F252は、例えばNIC(Network Interface Card)でよい。移行元サーバ210及び移行元ストレージ装置250のH-I/F251は、ネットワーク280を介して接続される。ストレージ管理装置230と、M-I/F252は、ネットワーク280を介して接続される。移行元サーバ210と移行元ストレージ装置250を接続するネットワークと、移行元ストレージ装置250とストレージ管理装置230を接続するネットワークは別のものでもよい。
ネットワーク280は、例えば、IP SAN(Internet Protocol Storage Area Network)、LAN(Local Area Network)、及びWAN(Wide Area Network)のいずれでもよい。
このように、移行元ストレージ装置250は、ドライブ254、H-I/F251、M-I/F252、メモリ255及びCPU253を含んだ物理的な計算機リソースを有する。移行元ストレージ装置250は、移行元サーバ210に論理ボリュームを提供する。移行元ストレージ装置250は、移行元サーバ210から、論理ボリュームを指定したI/Oコマンド(例えば、ライトコマンド又はリードコマンド)を受信し、そのI/Oコマンドを処理する。
移行先ストレージ装置260は、複数のドライブ264を有する。また、移行先ストレージ装置260は、移行先サーバ220に接続されるH-I/F(ホストインターフェースデバイス)261、ストレージ管理装置230に接続されるM-I/F(管理インターフェースデバイス)262、メモリ265、及び、それらの要素261、262、264及び265に接続されるCPU263を有する。
H-I/F261は、例えばHBA(Host Bus Adapter)でよい。M-I/F262は、例えばNIC(Network Interface Card)でよい。移行先サーバ220及び移行先ストレージ装置260のH-I/F261は、ネットワーク290を介して接続される。ストレージ管理装置230と、M-I/F262は、ネットワーク280を介して接続される。移行先サーバ220と移行先ストレージ装置260を接続するネットワークと、移行先ストレージ装置260とストレージ管理装置230を接続するネットワークは別のものでもよい。
ネットワーク290は、例えば、IP SAN(Internet Protocol Storage Area Network)、LAN(Local Area Network)、及びWAN(Wide Area Network)のいずれでもよい。
このように、移行先ストレージ装置260は、ドライブ264、H-I/F261、M-I/F262、メモリ265及びCPU263を含んだ物理的な計算機リソースを有する。移行先ストレージ装置260は、移行先サーバ220に論理ボリュームを提供する。移行先ストレージ装置260は、移行先サーバ220から、論理ボリュームを指定したI/Oコマンド(例えば、ライトコマンド又はリードコマンド)を受信し、そのI/Oコマンドを処理する。
ストレージ管理装置230は、NIC231、ドライブ234、メモリ235、及び、それらの要素231、234及び235に接続されるプロセッサ233を有する。ストレージ管理装置230は、移行元ストレージ装置250とは、ネットワーク280を介して接続される。ネットワーク280は、例えば、IP SAN(Internet Protocol Storage Area Network)、LAN(Local Area Network)、及びWAN(Wide Area Network)のいずれでもよい。
ストレージ管理装置230は、移行先ストレージ装置260とは、ネットワーク290を介して接続される。ネットワーク290は、例えば、IP SAN(Internet Protocol Storage Area Network)、LAN(Local Area Network)、及びWAN(Wide Area Network)のいずれでもよい。
移行元サーバ210は、ドライブ214を有する。また、移行元サーバ210は、移行元ストレージ装置250に接続されるH-I/F(ホストインターフェースデバイス)211、移行先サーバ220及びストレージ管理装置230に接続されるM-I/F(管理インターフェースデバイス)212、メモリ215、及び、それらの要素211、212、214及び215に接続されるCPU213を有する。H-I/F211は、例えばHBA(Host Bus Adapter)でよい。M-I/F212は、例えばNIC(Network Interface Card)でよい。移行元サーバ210及び移行元ストレージ装置250のH-I/F251は、ネットワーク280を介して接続される。移行元サーバ210及び移行先サーバ220は、ネットワーク270を介して接続される。移行元サーバ210及びストレージ管理装置230は、ネットワーク280を介して接続される。
移行先サーバ220は、ドライブ224を有する。また、移行先サーバ220は、移行先ストレージ装置260に接続されるH-I/F(ホストインターフェースデバイス)221、移行元サーバ210及びストレージ管理装置230に接続されるM-I/F(管理インターフェースデバイス)222、メモリ225、及び、それらの要素221、222、224及び225に接続されるCPU223を有する。H-I/F221は、例えばHBA(Host Bus Adapter)でよい。M-I/F222は、例えばNIC(Network Interface Card)でよい。移行先サーバ220及び移行先ストレージ装置260のH-I/F261は、ネットワーク290を介して接続される。移行元サーバ210及び移行先サーバ220は、ネットワーク270を介して接続される。移行先サーバ220及びストレージ管理装置230は、ネットワーク290を介して接続される。
(ストレージ管理装置230のメモリ235の構成)
図3は、ストレージ管理装置230のメモリ235の構成例を示す図である。メモリ235内のプログラムは、CPU233により実行される。
構成・稼働情報取得プログラム235aは、定期的に起動し、移行元ストレージ装置250から構成情報(ボリュームの定義情報)及び稼働情報(ボリュームのスループット等のストレージ装置が稼働した際の情報等)を取得し、それぞれ移行元ストレージ装置構成・稼働情報表235hに格納する。
アプリケーション情報取得プログラム235bは、ユーザからの入力を受け取り、アプリケーション情報表235fに格納する。移行グループ作成プログラム235cは、ユーザからの移行指示契機で起動され、移行元ストレージ装置構成・稼働情報表235h、移行先ストレージ装置構成・稼働情報表235i、及びアプリケーション情報表235fを参照し、移行グループ表235gを更新する。
移行指示プログラム235dは、移行元サーバ210及び移行先ストレージ装置260と通信し、データ移行処理開始の指示を行う。構成作成指示プログラム235eは、管理サーバ295に対し、移行先ストレージ装置構成・稼働情報表235i及びインスタンス・ボリュームタイプ格納表235kを参照し、移行先ストレージ装置260を構成する仮想マシンを作成する指示を送信し、移行先ストレージ装置260を起動させる。
(移行元ストレージ装置250のメモリ255の構成)
図4は、移行元ストレージ装置250のメモリ255の構成例を示す図である。メモリ255内のプログラムは、CPU253により実行される。情報送信処理プログラム265aは、ストレージ管理装置230からの情報取得リクエストに応じて、ストレージ装置構成・稼働情報表265eを参照し、ストレージ管理装置230へ情報を送信する。I/O処理プログラム265bは、移行元サーバ210からのコマンドを受け取り、I/O処理を行い、ストレージ装置構成・稼働情報表265eを更新する。
(移行先ストレージ装置260のメモリ265構成)
図5は、移行先ストレージ装置260のメモリ265の構成例を示す図である。メモリ265内のプログラムは、CPU263により実行される。情報送信処理プログラム265aは、ストレージ管理装置230からの情報取得リクエストに応じて、ストレージ装置構成・稼働情報表265eを参照し、ストレージ管理装置230へ情報を送信する。I/O処理プログラム265bは、移行先サーバ220からのコマンドを受け取り、I/O処理を行う。
移行処理プログラム265cは、ストレージ管理装置230からの移行指示契機で起動され、ストレージ装置構成・稼働情報表265eを更新する。構成変更処理プログラム265dは、ストレージ管理装置230からの構成変更指示契機で起動され、ストレージ装置構成・稼働情報表265eを更新する。
また、メモリ265内には、移行先ストレージ装置260を構成するノードにおいて容量又はI/O処理性能が偏っている場合に、容量やI/O処理性能をクラスタ内のノード間で均等化する処理を実現するリバランス処理プログラムが格納されている。
(移行元ストレージ装置構成・稼働情報表235hの構成)
図6は、ストレージ管理装置230の移行元ストレージ装置構成・稼働情報表235hの構成例を示す図である。移行元ストレージ装置構成・稼働情報表235hは、移行元ストレージ装置250で定義されている論理ボリュームのID(VOL ID)と、当該論理ボリュームの最大容量と、当該倫理ボリュームの使用済容量と、当該論理ボリュームに対して処理される平均I/Oコマンド数(平均スループット)と、当該論理ボリュームにアクセスするアクセス元サーバのIDと、当該論理ボリュームにアクセスするアクセス元アプリケーションのIDと、移行対象該否とを保持する。
これらの情報のうち、アクセス元アプリケーションのID以外は、ストレージ管理装置230が構成・稼働情報取得プログラム235aを用いて移行元ストレージ装置250より取得し、格納される。アクセス元アプリケーションのIDは、アプリケーション情報取得プログラム235bを用いて、ユーザが入力した情報を取得し、格納される。
(移行先ストレージ装置構成・稼働情報表235iの構成)
図7は、ストレージ管理装置230の移行先ストレージ装置構成・稼働情報表235iの構成例を示す図である。移行先ストレージ装置構成・稼働情報表235iは、移行元ストレージ装置250で定義されている論理ボリュームのID(移行元VOL ID)と、移行先ストレージ装置260で定義されている論理ボリュームのID(移行先VOL ID)と、当該論理ボリュームの最大容量と、当該論理ボリュームの使用済容量と、当該論理ボリュームに対して処理される平均I/Oコマンド数(平均スループット)と、当該論理ボリュームにアクセスするサーバのID(アクセス元サーバID)と、当該論理ボリュームにアクセスするアプリケーションのID(アクセス元アプリケーションID)と、移行先ストレージ装置260を構成するノードのID(移行先ノードID)とを保持する。
(アプリケーション情報表235fの構成)
図8は、ストレージ管理装置230のアプリケーション情報表235fの構成例を示す図である。アプリケーション情報表235fは、移行元ストレージ装置250で定義されている論理ボリュームへアクセスしているアプリケーションが動作しているサーバのID(動作サーバID)と、当該アプリケーションのID(アプリケーションID)と、当該アプリケーションの移行優先度(小さいものほど優先度が高い)とを保持する。
(移行グループ表235gの構成)
図9は、ストレージ管理装置230の移行グループ表235gの構成例を示す図である。移行グループ表235gは、移行元ストレージ装置250から移行先ストレージ装置260へ移行する論理ボリュームをまとめたグループのID(グループID)と、当該グループに含まれる移行元論理ボリュームのID(移行元論理ボリュームID)と、当該論理ボリュームにアクセスするサーバのID(アクセス元サーバID)と、当該論理ボリュームにアクセスするアプリケーションのID(アクセス元アプリケーションID)と、論理ボリュームの移行状況とを保持する。
(移行先ストレージ装置ノード表235jの構成)
図10は、ストレージ管理装置230の移行先ストレージ装置ノード表235jの構成例を示す図である。移行先ストレージ装置ノード表235jは、移行先ストレージ装置260を構成するノードのID(ノードID)と、当該ノードの全容量と、当該ノードの使用済容量と、当該ノードが処理できるスループットの最大値(全性能)と、当該ノードを使用している論理ボリュームが使用済みのスループット(使用済性能)と、当該ノードが使用しているインスタンスのID(使用インスタンスID)と、当該ノードに接続している論理ボリュームのID(使用ボリュームID)と、当該論理ボリュームの使用数(使用論理ボリューム数)と、ノードグループIDとを保持する。
(ストレージ装置構成・稼働情報表255c,265eの構成)
図11は、移行元ストレージ装置250及び移行先ストレージ装置260のストレージ装置構成・稼働情報表255c,265eの構成例を示す図である。ストレージ装置構成・稼働情報表255c,265eは、同一構成であり、定義されている論理ボリュームのID(VOL ID)と、当該論理ボリュームの最大容量と、当該論理ボリュームの使用済容量と、当該論理ボリュームが受け付けた平均スループットと、アクセス元サーバのID(アクセス元サーバID)とを保持する。
(インスタンス・ボリュームタイプ格納表235kの構成)
図12は、ストレージ管理装置230のインスタンス・ボリュームタイプ格納表235kの構成例を示す図である。インスタンス・ボリュームタイプ格納表235kは、ノードもしくはボリュームのIDと、ノード及びボリュームの何れかを示す種別と、当該ノードもしくは当該ボリュームが提供できる性能と、当該ノードもしくは当該ボリュームを使用するために必要な料金とを保持する。
(ストレージ管理装置230が実行する各種処理)
次に、図13~図16を参照して、ストレージ管理装置230が実行する各種処理を説明する。図13~図16に示す各種処理は、図13の移行先ストレージ装置260の構成決定・作成処理、図14の移行グループ作成処理、図15のボリューム移行先ノード決定処理、図16の移行元サーバ・移行先ストレージ装置に対するデータ移行指示処理の順序で実行される。
(実施形態1に係る移行先ストレージ装置260の構成決定・作成処理)
図13は、実施形態1に係るストレージ管理装置230が実行する移行先ストレージ装置260の構成決定・作成処理のフローチャートである。本処理は、ストレージ管理装置230の構成作成指示プログラム235eによって、移行先ストレージ装置260の構成を定義し、移行先ストレージ装置260を起動する処理である。本処理は、ユーザがストレージ管理装置230に論理ボリューム移行を指示した際に実行される。
構成作成指示プログラム235e(図3)は、移行元ストレージ装置構成・稼働情報表235h(図3)を参照し、移行対象ボリュームの平均スループットを合計し、移行対象ボリュームの合計性能を算出する(S1301)。その後、構成作成指示プログラム235eは、インスタンス・ボリュームタイプ格納表235kを参照し、移行対象ボリュームの合計性能を満たすノード又はボリュームの組み合わせパターンを作成し(S1302)、価格が最小となる組み合わせパターン及びそのノード数を決定する(S1303)。
続いて、構成作成指示プログラム235eは、移行元ストレージ装置構成・稼働情報表235hを参照し、移行対象ボリュームの最大容量を合計し、合計容量を算出する(S1304)。構成作成指示プログラム235eは、S1301で求めたボリュームの合計性能と、S1304で求めた合計ボリューム容量を、それぞれS1303で求めたノード数で割った商を求めることで、1ノード当たりに必要な性能及びボリューム容量を算出する(S1305)。
その後、構成作成指示プログラム235eは、インスタンス・ボリュームタイプ格納表235kを参照して、1ノード当たりに必要な性能、容量を満たすボリュームタイプ、及びノード数を算出し、移行先ストレージ装置ノード表235jを更新する(S1306)。
以上のステップにより、移行先ストレージ装置260を構成するノードの仕様が定まったため、ストレージ管理装置230は、管理サーバ295にインスタンス作成を指示し、インスタンス作成後に移行先ストレージ装置の起動を行う(S1307)。
(実施形態1に係る移行グループ作成処理)
図14は、実施形態1に係るストレージ管理装置230が実行する移行グループ作成処理のフローチャートである。本処理は、ストレージ管理装置230の移行グループ作成プログラム235cによって、移行対象の論理ボリュームをグループ化する処理である。本処理は、ユーザからストレージ管理装置230に論理ボリューム移行を指示した際に実行される。
移行グループ作成プログラム235cは、アプリケーション情報表235fを参照し、移行対象の論理ボリューム上で動作するアプリケーションのID(アプリケーションID)が格納されているかどうかを確認する(S1401)。移行グループ作成プログラム235cは、アプリケーションIDが格納されている場合(S1401YES)、アプリケーションID毎に移行グループを作成し(S1402)、格納されていない場合(S14010NO)、サーバID毎に移行グループを作成し、移行グループ表235gを更新する(S1403)。
移行グループ作成プログラム235cは、S1402又はS1403の移行グループ作成後、全論理ボリュームに関して、所属するグループを決定するループ処理を行う(S1404~S1410)。このループ処理では、先ず移行グループ作成プログラム235cは、移行グループ表235gを参照し、現在のループ処理対象の論理ボリュームについてアプリケーション毎の移行グループが作成済かを確認する(S1405)。移行グループ作成プログラム235cは、現在のループ処理対象の論理ボリュームについてアプリケーション毎のグループが作成済みでない場合(S1405NO)、移行元ストレージ装置構成・稼働情報表235hを参照し、現在のループ処理対象の論理ボリュームがアクセスしているサーバIDに対応する移行グループにこの論理ボリュームを追加する(S1406)。
一方、移行グループ作成プログラム235cは、現在のループ処理対象の論理ボリュームについてアプリケーション毎の移行グループが作成済みの場合(S1405YES)、移行元ストレージ装置構成・稼働情報表235hのアクセス元アプリケーションIDを参照し、現在のループ処理対象の論理ボリュームに対応するアプリケーションIDが存在するかどうかを確認する(S1407)。移行グループ作成プログラム235cは、アプリケーションIDが存在する場合(S1407YES)、当該アプリケーションIDに対応する移行グループにこの論理ボリュームを追加する(S1408)。
一方、移行グループ作成プログラム235cは、アプリケーションIDが存在しない場合(S1407NO)、対象の論理ボリュームに対応するサーバIDに対応するアプリケーションIDが存在するか、アプリケーション情報表235fを参照して確認する(S1409)。移行グループ作成プログラム235cは、対応するアプリケーションIDが存在する場合(S1409YES)、S1408へ処理を移し、対応するアプリケーションIDが存在しない場合(S1409NO)、S1406へ処理を移す。
(実施形態1に係るボリューム移行先ノード決定処理)
図15は、実施形態1に係るストレージ管理装置230が実行するボリューム移行先ノード決定処理のフローチャートである。本処理は、ストレージ管理装置230の、移行指示プログラム235dによって、移行グループ毎に、移行先ストレージ装置260を構成するノード群から移行先ノードを選択する処理である。本処理は、図14の移行グループ作成処理後に実行される。
移行指示プログラム235dは、全論理ボリュームに関して、移行先ノードを決定するループ処理を行う(S1501~S1510)。また、移行指示プログラム235dは、同一のグループ内の論理ボリュームに関して、性能・容量の空きが最も多いノードを選ぶループ処理を行う(S1507~S1509)。
移行指示プログラム235dは、移行先ストレージ装置構成・稼働情報表235iを参照し、現在の処理対象の移行グループに所属する論理ボリュームの合計性能、合計最大容量を算出する(S1502)。続いて、移行指示プログラム235dは、移行先ストレージ装置構成・稼働情報表235iを参照し、現在の処理対象の移行グループ内全ての論理ボリュームを収容するのに必要なノード数を算出する(S1503)。
その後、移行指示プログラム235dは、現在の処理対象の移行グループ内の全ての論理ボリュームを収容可能な数の未使用ノードがあるかを判定する(S1504)。具体的には、移行指示プログラム235dは、移行先ストレージ装置ノード表235jを参照し、現在の処理対象の移行グループ内の全ての論理ボリュームを収容するのに必要なノード数と、論理ボリュームが定義されていない未使用ノード数を比較し、未使用ノード数が大きいかどうかを判定する。移行指示プログラム235dは、必要なノード数がある場合(S1504YES)、現在の処理対象の移行グループ内の全ての論理ボリュームを収容するのに必要なノード数分の未使用ノードを移行先ノード群として選択する(S1505)。一方、移行指示プログラム235dは、必要なノード数がない場合(S1504NO)、使用済ノード含めた全ノードを移行先ノード群として選択する(S1506)。移行グループは、移行先ストレージ装置260の各移行先ノード群のノード同士で作成されたプールへ移行される。
続くS1507からS1509は、各移行グループ内の各論理ボリューム毎に行われるループ処理である。移行指示プログラム235dは、現在の処理対象の移行グループの論理ボリュームを収容可能、かつ、性能及び/又は容量の空きが最も多いノードをこの論理ボリュームの格納先として選択し、移行先ストレージ装置ノード表235jを更新する(S1508)。
(実施形態1に係るデータ移行指示処理)
図16は、実施形態1に係るストレージ管理装置230が実行する移行元サーバ・移行先ストレージ装置に対するデータ移行指示処理のフローチャートである。本処理は、ストレージ管理装置230の移行指示プログラム235dによって、ボリューム移行が指示され、その指示に応じてボリューム移行が実行される処理である。図15のボリューム移行先ノード決定処理後、ユーザ指示契機で起動される。本処理により、移行元ストレージ装置250から、移行元サーバ210を経由し、移行先サーバ220へデータが格納された後、移行先ストレージ装置260へ格納される。S1601からS1608は、全ての移行グループ毎に行われるループ処理である。
移行指示プログラム235dは、移行グループ表235gを参照し、移行グループ毎に優先度が格納されているかどうかを確認する(S1602)。優先度が格納されている移行グループの場合(S1602YES)、移行指示プログラム235dは、未移行の移行グループの中で、優先度が最も高い移行グループを移行対象として選択する(S1603)。優先度が格納されていない移行グループの場合(S1602NO)、移行指示プログラム235dは、未移行の移行グループの中で、IDが最も小さい移行グループを移行対象として選択する(S1604)。
続いて、移行指示プログラム235dは、移行元サーバ210に対し、S1603又はS1604で選択された移行グループの移行を指示する(S1605)。その後、移行指示プログラム235dは、移行グループ内の全論理ボリュームの移行が完了し、移行元サーバ210から移行完了通知を受信後(S1606)、移行先サーバ220から移行先ストレージ装置260へのデータ移行を、移行先ストレージ装置260へ指示する(S1607)。
(実施形態1の表示画面)
図17Aは、実施形態1に係るストレージ管理装置230における表示画面170の構成例を示す図である。表示画面170は、例えば、表示171をインディケータ177が指し示す場合には、図13に示す移行先ストレージ装置の構成決定・作成処理の実行中である。表示172をインディケータ177が指し示す場合には、図14に示す移行グループ作成処理の実行中である。表示173をインディケータ177が指し示す場合には、図15に示すボリューム移行先ノード決定処理の実行中である。表示174をインディケータ177が指し示す場合には、図16に示すデータ移行指示処理の移行元ストレージ装置から移行先サーバへの移行(S1605)の実行中である。表示175をインディケータ177が指し示す場合には、図16に示すデータ移行指示処理の移行先サーバから移行先ストレージ装置へ移行(S1607)の実行中である。また、表示領域178には、移行グループ表235gが表示される。
表示画面170において移行開始ボタン179aが押下されると、移行先ストレージ装置の構成決定・作成処理(図13)が実行開始される。その後、移行グループ作成処理(図14)、ボリューム移行先ノード決定処理(図15)、データ移行指示処理(図16)が続いて実行され、移動先サーバへのデータコピー、移動先ストレージへのデータコピーが終了すると、図13~図16の一連のデータ移行処理が完了する。キャンセルボタン179bが押下されると、図13~図16の一連のデータ移行処理が途中で中止される。
あるいは、図17Bに構成例を示すように、ストレージ管理装置230のアプリケーション情報取得プログラム235bは、ユーザインタフェース画面180を介して、ユーザによる、各論理ボリュームに対する当該論理ボリュームを使用しているアプリケーションIDの設定や、アプリケーションの移行優先度の入力を受付ける。図17A及び図17Bに示すGUI(Graphical User Interface)に限らずCUI(Character-based User Interface)でもよいし、入力値を保持したデータの直接送信でもよい。
[実施形態2]
実施形態2では、実施形態1との相違点を主に説明し、実施形態1との共通点については説明を省略又は簡略する。実施形態1では、移行先ストレージ装置260の構成を予め決定し、論理ボリュームごとに移行先ノードを決めることで、データ移行によるI/O処理への影響を小さくした。ただし、移行対象の論理ボリュームが追加されるケースもあり得るため、移行状況に合わせて、移行先ストレージ装置の装置構成を拡張することができてもよい。実施形態2では、移行状況に応じて移行先ストレージ装置の装置構成を拡張した上で、移行先となるノードを選択する場合について説明する。
(実施形態2の移行先ストレージ装置260の構成定義・データ移行・データ移行中のクラスタ拡張処理)
図18は、実施形態2に係るストレージ管理装置230Bが実行する移行先ストレージ装置260の構成定義・データ移行・データ移行中のクラスタ拡張処理の模式図である。
ストレージシステム200Bは、ストレージ管理装置230Bと、移行元サーバ210、移行先サーバ220、ストレージ管理装置230B、移行元ストレージ装置250、移行先ストレージ装置260とを有する。
図8中の矢印は、処理に必要な情報の流れ又は移行対象のデータの流れを表している。また、図8中の矢印に付されている数字は、処理に必要な情報の流れ又は移行対象のデータの流れの実行順序を示し、丸囲みの数字は処理に必要な情報の流れを示し、四角囲みの数字は移行対象のデータの流れを示す。図18中の矢印に付与された“1”~“7”は図1と同様である。
追加でデータ移行を行う場合、移行元サーバ210が、移行元ストレージ装置250から、移行先サーバ220へデータを移行し(図18中の“8”)、ストレージ管理装置230Bが移行先サーバ220へ移行完了を受け取った(図18中の“9”)後、ストレージ管理装置230Bが移行先ストレージ装置260へノード追加を行う(図18中の“10”)。ノード追加後、移行先ストレージ装置260は、追加したノードに移行先サーバ220からデータを移行する(図18中の“11”)。
(実施形態2に係るボリューム移行先ノード決定処理)
図19は、実施形態2に係るストレージ管理装置230Bが実行するボリューム移行先ノード決定処理のフローチャートである。実施形態2において、図19に示す本処理は、図15に示す実施形態1のボリューム移行先ノード決定処理に代えて実行される。本処理は、ストレージ管理装置230の移行指示プログラム235dによる、移行グループ毎に移行先ストレージ装置260を構成するノード群から移行先ノードを選択する処理のフローチャートである。本処理は、ユーザからデータ移行指示を受領した際に起動される。
S1901~S1913は、全ての移行グループについて実行されるループ処理である。
移行指示プログラム235dは、移行元ストレージ装置構成・稼働情報表235hを参照し、現在の処理対象である移行グループに所属する論理ボリュームの合計性能、合計最大容量を算出する(S1902)。続いて、移行指示プログラム235dは、移行先ストレージ装置ノード表235jを参照し、現在の処理対象である移行グループ内の全ての論理ボリュームを収容するのに必要なノード数を算出する(S1903)。
その後、移行指示プログラム235dは、現在の処理対象の移行グループ内の全ての論理ボリュームを収容可能な数の未使用ノードがあるかを判定する(S1904)。具体的には、移行指示プログラム235dは、移行先ストレージ装置ノード表235jを参照し、現在の処理対象の移行グループ内の全ての論理ボリュームを収容するのに必要なノード数と、論理ボリュームが定義されていない未使用ノード数を比較し、未使用ノード数が大きいかどうかを判定する。移行指示プログラム235dは、必要なノード数がある場合(S1904YES)、現在の処理対象の移行グループ内の全ての論理ボリュームを収容するのに必要なノード数分の未使用ノードを移行先ノード群として選択し(S1905)、S1911へ処理を移す。一方、移行指示プログラム235dは、必要なノード数がない場合(S1904NO)、S1906へ処理を移す。
S1906では、移行指示プログラム235dは、現在の処理対象である移行グループ内の全ての論理ボリュームを収容するのに必要なノード数を確保するためにノードを追加可能であるかを判定する。ノードを追加可能とは、例えば、移行先ストレージ装置260が起動している場合であり、ノードを追加不可能とは、例えば、移行先ストレージ装置260が起動していない場合である。移行指示プログラム235dは、ノードを追加可能の場合(S1906YES)にS1907へ処理を移し、ノードを追加可能でない場合(S1906NO)にS1908へ処理を移す。S1908では、移行指示プログラム235dは、全ノードを移行先ノード群とし、S1911へ処理を移す。
S1907では、移行指示プログラム235dは、現在の処理対象である移行グループ内の全ての論理ボリュームを収容するのに必要なノード数と、追加可能な最小単位のノード数を比較する。移行指示プログラム235dは、必要なノード数が最小ノード数よりも大の場合(S1907YES)にS1910へ処理を移し、必要なノード数が最小ノード数以下の場合(S1907NO)にS1909へ処理を移す。S1909では、移行指示プログラム235dは、必要ノード数を最小ノード数に切り上げ、S1910へ処理を移す。
S1910では、移行指示プログラム235dは、現在の処理対象の移行グループの移行先を、新規追加するノード群とし、S1911へ処理を移す。
S1911~S1913は、各移行グループ内の各論理ボリューム毎に行われるループ処理である。S1912では、移行指示プログラム235dは、現在の処理対象である論理ボリュームを収容可能、かつ、性能・容量の空きが最も多いノードを論理ボリュームの格納先として選択し、移行先ストレージ装置ノード表235jを更新する。
(実施形態2に係るデータ移行指示・移行先ストレージ装置拡張指示処理)
図20は、実施形態2に係るストレージ管理装置が実行する移行元サーバ・移行先ストレージ装置に対するデータ移行指示・移行先ストレージ装置拡張指示処理のフローチャートである。実施形態2において、図20に示す本処理は、図16に示す実施形態1のデータ移行指示に代えて実行される。本処理は、移行グループ毎に移行先ノードを選択する処理の後、ユーザ指示契機で起動される。本処理により、移行元ストレージ装置250から、移行元サーバ210を経由し、移行先サーバ220へデータが格納された後、移行先ストレージ装置260へデータが格納される。
S2001~S2112は、全ての移行グループについて実行されるループ処理である。
移行指示プログラム235dは、移行グループ表235gを参照し、移行グループ毎に優先度が格納されているかどうかを確認する(S2002)。移行グループ表235gにおいて優先度が格納されている場合(S2002YES)、移行指示プログラム235dは、未移行の移行グループの中で、優先度が最も高い移行グループを移行対象として選択する(S2003)。一方、移行グループ表235gにおいて優先度が格納されていない場合(S2002NO)、移行指示プログラム235dは、未移行の移行グループの中で、IDが最も小さい移行グループを移行対象として選択する(S2004)。
続いて、移行指示プログラム235dは、管理サーバ295に対し、移行先ストレージ装置260を作成・起動するよう指示する(S2005)。その後、移行指示プログラム235dは、移行元サーバ210に対し、未移行の各移行グループの移行を指示する(S2006)。その後、移行指示プログラム235dは、各移行グループの移行完了通知を移行元サーバ210より受信し、移行先ストレージ装置260の起動完了通知を管理サーバ295より受信するのを待つ(S2007)。移行指示プログラム235dは、各移行グループの移行完了通知を移行元サーバ210より受信し、移行先ストレージ装置260の起動完了通知を管理サーバ295より受信すると、移行先サーバ220から移行先ストレージ装置260へのデータ移行を、移行先ストレージ装置260へ指示する(S2008)。
移行指示プログラム235dは、移行先ストレージ装置ノード表235jを参照し、次の移行グループの移行に備えて移行先ストレージ装置260の拡張処理が必要かどうかを判定する(S2009)。移行先ストレージ装置260の拡張処理とは、ノード追加である。移行指示プログラム235dは、拡張処理が必要な場合(S2009YES)、移行先ストレージ装置260のノード追加を管理サーバ295に指示する(S2010)。そして、移行指示プログラム235dは、追加したノード同士で新規プールを作成するよう、移行先ストレージ装置260に指示する(S2011)。プールとは、ノード間でデータを共有する論理的な記憶領域であり、プールを分割することで、既存のプールとのリバランスが発生しなくなるため、ストレージ装置のマイグレーションによるI/O処理への影響を抑えることができる。プールの分割とは、複数のプールを作成することであり、すなわち全ノードで作成する一つのプールを分割することである。複数のプールは、それぞれ異なる組み合わせのノードが形成しており、一つのノードが一つのプールにのみ割り当てるようにしても、複数のプールに割り当て可能にしてもよい。
本発明は上述の実施形態に限定されるものではなく、様々な変形例を含む。例えば、上記した実施形態は本発明を分かりやすく説明するために詳細に説明したものであり、必ずしも説明した全ての構成を備えるものに限定されるものではない。また、矛盾しない限りにおいて、ある実施形態の構成の一部を他の実施形態の構成で置き換え、ある実施形態の構成に他の実施形態の構成を加えることも可能である。また、各実施形態の構成の一部について、構成の追加、削除、置換、統合、又は分散をすることが可能である。また、実施形態で示した構成及び処理は、処理効率又は実装効率に基づいて適宜分散、統合、又は入れ替えることが可能である。
200,200B:ストレージシステム、210:移行元サーバ、220:移行先サーバ、230,230B:ストレージ管理装置、235a:構成・稼働情報取得プログラム、235b:アプリケーション情報取得プログラム、235c:移行グループ作成プログラム、235d:移行指示プログラム、235e:構成作成指示プログラム、235f:アプリケーション情報表、235g:移行グループ表、235h:移行元ストレージ装置構成・稼働情報表、235i:移行先ストレージ装置構成・稼働情報表、235j:移行先ストレージ装置ノード表、235k:インスタンス・ボリュームタイプ格納表、250:移行元ストレージ装置、255c,265e:ストレージ装置構成・稼働情報表、260:移行先ストレージ装置、265a:情報送信処理プログラム、265b:I/O処理プログラム、265c:移行処理プログラム、265d:構成変更処理プログラム、265e:ストレージ装置構成・稼働情報表、270,280,290:ネットワーク、295:管理サーバ。

Claims (7)

  1. プロセッサを有する複数のノードと、
    記憶装置と、
    ストレージ管理装置と、
    を備えるストレージシステムにおいて、
    前記ノードのプロセッサは、
    前記記憶装置の記憶領域を用いて、それぞれのノードのプールボリュームを形成し、
    複数のノードにかかる複数のプールボリュームを用いて、プールを構成し、
    前記プール及び前記プールボリュームに、ホストに提供するボリュームを割り当て、
    前記プールボリュームに割り当てれられたボリュームを介して前記記憶装置に入出力されるデータの入出力処理を行い、
    前記プール内の前記プールボリューム間で、前記データの入出力処理または/及びデータ容量を平準化するように前記ボリュームを前記ノードのプールボリューム間で移動させるリバランスを行い、
    外部から前記ストレージシステム内のノードに複数のボリュームを移行させる場合に、前記ストレージ管理装置は、前記移行完了後及び移行中において、前記プール内の各プールボリューム間で前記データの入出力処理または/及びデータ容量を平準化するように、前記複数のボリュームの移行先ノード及び移行の順番を決定して実行する
    ことを特徴とするストレージシステム。
  2. 請求項1に記載のストレージシステムであって、
    前記ボリュームの移行中に、前記ノードは前記リバランスを行っており、
    前記ストレージ装置は、前記ボリューム移行中に前記リバランスが起こらないように前記プール内の各プールボリューム間で前記データの入出力処理または/及びデータ容量を平準化するように、前記複数のボリュームの移行先ノード及び移行の順番を決定することを特徴とするストレージシステム。
  3. 請求項1に記載のストレージシステムであって、
    前記ストレージ装置は、
    前記複数のボリュームを順序付けした複数のグループに分け、前記順序付けの順でボリュームの移行を行い、
    前記各グループの移行完了の各時点で、前記プール内の各プールボリューム間で前記データの入出力処理または/及びデータ容量を平準化するように移行先ノード及び移行の順番を決定することを特徴とするストレージシステム。
  4. 請求項3に記載のストレージシステムであって、
    前記ボリュームを使用するホスト又はアプリケーションに基づいて、前記グループ分けを行い、
    各グループ内で前記データ入出力処理または/及びデータ容量を平準化するように移行先ノードを決定する
    ことを特徴とするストレージシステム。
  5. 請求項4に記載のストレージシステムであって、
    そのグループより移行順序が先のボリュームが完了した場合の前記ノードのリソースの空きに基づいて、前記ボリュームのグループの移行先ノードを決定することを、各グループについて順次行う
    ことを特徴とするストレージシステム。
  6. 請求項1に記載のストレージシステムであって、
    異なる組み合わせの前記ノードによって形成される複数のプールを有し、
    外部から前記ストレージシステム内のノードに複数のボリュームを移行させる場合に、前記ストレージ管理装置は、前記移動先のプールに基づく順番にて前記複数のボリュームの移行の順番を決定して実行する
    ことを特徴とするストレージシステム。
  7. プロセッサを有する複数のノードと、
    記憶装置と、
    ストレージ管理装置と、
    を備えるストレージシステムにおけるデータ移行方法であって、
    前記ノードのプロセッサが、
    前記記憶装置の記憶領域を用いて、それぞれのノードのプールボリュームを形成し、
    複数のノードにかかる複数のプールボリュームを用いて、プールを構成し、
    前記プール及び前記プールボリュームに、ホストに提供するボリュームを割り当て、
    前記プールボリュームに割り当てれられたボリュームを介して前記記憶装置に入出力されるデータの入出力処理を行い、
    前記プール内の前記プールボリューム間で、前記データの入出力処理または/及びデータ容量を平準化するように前記ボリュームを前記ノードのプールボリューム間で移動させるリバランスを行い、
    外部から前記ストレージシステム内のノードに複数のボリュームを移行させる場合に、前記ストレージ管理装置が、前記移行完了後及び移行中において、前記プール内の各プールボリューム間で前記データの入出力処理または/及びデータ容量を平準化するように、前記複数のボリュームの移行先ノード及び移行の順番を決定して実行する
    ことを特徴とするデータ移行方法。
JP2022024249A 2022-02-18 2022-02-18 ストレージシステム及びストレージシステムにおけるデータ移行方法 Pending JP2023121040A (ja)

Priority Applications (2)

Application Number Priority Date Filing Date Title
JP2022024249A JP2023121040A (ja) 2022-02-18 2022-02-18 ストレージシステム及びストレージシステムにおけるデータ移行方法
US17/943,517 US20230266907A1 (en) 2022-02-18 2022-09-13 Storage system and data transfer method for storage system

Applications Claiming Priority (1)

Application Number Priority Date Filing Date Title
JP2022024249A JP2023121040A (ja) 2022-02-18 2022-02-18 ストレージシステム及びストレージシステムにおけるデータ移行方法

Publications (1)

Publication Number Publication Date
JP2023121040A true JP2023121040A (ja) 2023-08-30

Family

ID=87574047

Family Applications (1)

Application Number Title Priority Date Filing Date
JP2022024249A Pending JP2023121040A (ja) 2022-02-18 2022-02-18 ストレージシステム及びストレージシステムにおけるデータ移行方法

Country Status (2)

Country Link
US (1) US20230266907A1 (ja)
JP (1) JP2023121040A (ja)

Family Cites Families (4)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US8694727B2 (en) * 2011-08-01 2014-04-08 Hitachi, Ltd. First storage control apparatus and storage system management method
US10324662B2 (en) * 2017-08-28 2019-06-18 International Business Machines Corporation Rebalancing of the first extents of logical volumes among a plurality of ranks
US11726684B1 (en) * 2021-02-26 2023-08-15 Pure Storage, Inc. Cluster rebalance using user defined rules
US20230168934A1 (en) * 2021-12-01 2023-06-01 Fungible, Inc. Predictable and adaptive quality of service for storage

Also Published As

Publication number Publication date
US20230266907A1 (en) 2023-08-24

Similar Documents

Publication Publication Date Title
US10838620B2 (en) Efficient scaling of distributed storage systems
US9582221B2 (en) Virtualization-aware data locality in distributed data processing
US9952786B1 (en) I/O scheduling and load balancing across the multiple nodes of a clustered environment
US9733989B1 (en) Non-disruptive load-balancing of virtual machines between data centers
US9329889B2 (en) Rapid creation and reconfiguration of virtual machines on hosts
CN110955487A (zh) Hci环境下的vm/容器和卷配置决定方法及存储系统
JP5830599B2 (ja) 計算機システム及びその管理システム
US11669360B2 (en) Seamless virtual standard switch to virtual distributed switch migration for hyper-converged infrastructure
US20120272241A1 (en) Computer system and virtual machine control method
JP2021022241A (ja) ストレージシステム及びノード管理方法
US20150236974A1 (en) Computer system and load balancing method
JP2014507691A (ja) 情報記憶システム及びストレージシステム管理方法
CN111149081A (zh) 负载平衡分配式存储系统中的元数据控制
US11068315B2 (en) Hypervisor attached volume group load balancing
US10069906B2 (en) Method and apparatus to deploy applications in cloud environments
JP2021026659A (ja) ストレージシステム及びリソース割当て制御方法
KR101714412B1 (ko) 클라우드 환경에서 데이터베이스 시스템을 구성하는 방법 및 장치
JP5547814B2 (ja) 計算機システム、仮想サーバへのボリューム割り当て方法及び計算機読み取り可能な記憶媒体
US11416396B2 (en) Volume tiering in storage systems
US7707199B2 (en) Method and system for integrated management computer setting access rights, calculates requested storage capacity of multiple logical storage apparatus for migration
US10250455B1 (en) Deployment and management of tenant services
US8838768B2 (en) Computer system and disk sharing method used thereby
JP2023121040A (ja) ストレージシステム及びストレージシステムにおけるデータ移行方法
JP6019169B2 (ja) 情報記憶システム
US10097431B1 (en) Routing to tenant services utilizing a service directory