(57)【特許請求の範囲】
【請求項１】
論理ボリューム(2301)を提供する1台以上の移行元筐体を含む第1のストレージ装置(102)と、
仮想論理ボリューム(2307)を提供する1台以上の移行先筐体を含む第2のストレージ装置(103)と、
前記第1のストレージ装置(102)の前記論理ボリュームを移行元ボリュームとし、前記第2のストレージ装置(103)の前記仮想ボリュームを移行先ボリュームとし、前記移行元ボリュームを前記移行先ボリュームに移行する処理を制御する管理計算機(101)と、を備え、
前記第1のストレージ装置(102)は、前記論理ボリュームの容量、アクセス量、移行先筐体に含まれるディスク装置のタイプ、及びRAIDレベルの情報を含む移行元構成情報(904)を有し、
前記第2のストレージ装置(103)は、前記仮想論理ボリュームの容量、アクセス量、アクセス先媒体種別、及びRAIDレベルの情報を含む移行先構成情報(1005)を有し、
前記管理計算機(101)は、
前記第1及び第2のストレージ装置(102,103)から取得した前記移行元及び移行先構成情報(904,1005)を用いて、前記移行元ボリュームを前記移行先ボリュームに移行した場合のアクセス量の増分及び容量の増分を計算し、
前記移行先ボリュームのアクセス量と、RAIDレベルの情報と、前記アクセス量の増分と、前記移行先筐体に含まれるディスク装置のタイプと、を含む情報から決まる所定の消費電力演算式(1701)に基づいて前記移行先筐体の消費電力値を計算し、
計算によって得られた前記アクセス量の増分、前記容量の増分、及び前記移行先筐体の消費電力値に基づいて、前記移行元ボリュームを前記移行先ボリュームに移行可能か否か判断し、
移行可能であると判断した場合に、当該仮想論理ボリュームを移行案として提示する、ストレージシステム。
【請求項２】
請求項1において、
前記第1のストレージ装置(102)は、複数の論理ボリュームを含み、
前記第2のストレージ装置(103)は、複数の仮想論理ボリュームを含み、
前記管理計算機(101)は、
消費電力軽減を優先することが指示された場合(2402)には、前記移行元ボリュームとして容量が最大の論理ボリュームを、前記移行先ボリュームとして容量が最大の仮想論理ボリュームを選択し、
性能劣化回避を優先することが指示された場合(2403)には、前記移行元ボリュームとしてアクセス量が最大の論理ボリュームを、前記移行先ボリュームとしてアクセス量の余裕度が最大の仮想論理ボリュームを選択し、
前記移行元及び移行先構成情報(904,1005)を参照し、前記移行元ボリュームのアクセス量を前記移行先ボリュームに含まれる論理ボリューム数で除算することにより前記アクセス量の増分を計算し、
前記移行元及び移行先構成情報(904,1005)を参照し、前記移行元ボリュームの容量を前記移行先ボリュームに含まれる論理ボリューム数で除算することにより前記容量の増分を計算し、
前記移行先ボリュームのアクセス量と、RAIDレベルの情報と、前記アクセス量の増分と、前記移行先筐体に含まれるディスク装置のタイプと、を含む情報から決まる所定の消費電力演算式(1701)に基づいて前記移行先筐体の消費電力値を計算し、
前記移行先ボリュームにおいて、前記アクセス量と前記アクセス量の増分との加算値が許容アクセス量以下であり、前記容量の増分が空き容量以下であり、前記移行先筐体の消費電力が所定の許容消費電力値以下である場合に、前記移行元ボリュームを前記移行先ボリュームに移行可能であると判断し、
移行可能であると判断した場合に、当該仮想論理ボリュームを移行案として提示し、
前記移行案に従って移行元ボリュームを移行先ボリュームに移行させることが指示された場合、前記移行元ボリュームの前記移行先ボリュームへの移行処理を実行し、前記第1のストレージ装置(102)を停止させるように制御する、ストレージシステム(100)。
【請求項３】
請求項1において、
前記第1のストレージ装置(102)は、複数の論理ボリュームを含み、
前記第2のストレージ装置(103)は、複数の仮想論理ボリュームを含み、
前記管理計算機(101)は、
消費電力軽減を優先することが指示された場合(2402)には、前記移行元ボリュームとして容量が最大の論理ボリュームを、前記移行先ボリュームとして容量が最大の仮想論理ボリュームを選択し、
性能劣化回避を優先することが指示された場合(2403)には、前記移行元ボリュームとしてアクセス量が最大の論理ボリュームを、前記移行先ボリュームとしてアクセス量の余裕度が最大の仮想論理ボリュームを選択する、ストレージシステム(100)。
【請求項４】
請求項1において、
前記管理計算機(101)は、前記計算によって得られた前記移行先筐体の消費電力が、当該移行先筐体の第1の許容消費電力値以下である場合に、移行可能であると判断する、ストレージシステム(100)。
【請求項５】
請求項4において、
前記管理計算機(101)は、前記移行案に従って移行元ボリュームを移行先ボリュームに移行させることが指示された場合、前記移行元ボリュームの前記移行先ボリュームへの移行処理を実行し、前記第1のストレージ装置(102)を停止させるように制御する、ストレージシステム(100)。
【請求項６】
請求項5において、
前記第2のストレージ装置(103)は、複数の仮想論理ボリュームと、前記複数の仮想論理ボリュームそれぞれの容量及びアクセス量の情報を含む構成情報(1005)と、を有し、
前記管理計算機(101)は、
前記移行処理の実行後に、前記移行先ボリュームが含まれる前記移行先筐体の現在の消費電力値を前記消費電力演算式(1701)に基づいて計算し、
前記現在の消費電力値が、前記第1の許容消費電力値より大きい第2の許容消費電力値を超過しているか否か判断し、
前記現在の消費電力値が前記第2の許容消費電力値を超過している場合に、前記移行先ボリュームを新たな移行元ボリュームとし、前記第2のストレージ装置内の仮想論理ボリュームであって、前記新たな移行元ボリュームとは別の仮想論理ボリュームを新たな移行先ボリュームとする論理ボリューム移行案を作成する、ストレージシステム(100)。
【請求項７】
請求項6において、
前記管理計算機(101)は、
前記第2のストレージ装置(103)から取得した前記新たな移行先ボリュームの構成情報(1005)を用いて、前記新たな移行元ボリュームを前記新たな移行先ボリュームに移行した場合のアクセス量の増分及び容量の増分を計算し、
前記新たな移行先ボリュームのアクセス量と、RAIDレベルの情報と、前記アクセス量の増分と、前記移行先筐体に含まれるディスク装置のタイプと、を含む情報から決まる所定の消費電力演算式に基づいて前記移行先筐体の消費電力値を計算し、
計算によって得られた前記アクセス量の増分、前記容量の増分、及び前記移行先筐体の消費電力によって、前記新たな移行元ボリュームを前記新たな移行先ボリュームに移行可能か否か判断し、
移行可能であると判断した場合に、当該新たな移行先ボリュームを移行案として提示する、ストレージシステム(100)。
【請求項８】
請求項7において、
前記第2の許容消費電力値を超えた仮想論理ボリュームが複数ある場合に、
前記管理計算機(101)は、
消費電力軽減を優先することが指示されたとき(2402)には、前記第2の許容消費電力値を超えた複数の仮想論理ボリュームのうち容量が最大の論理ボリュームを前記新たな移行元ボリュームとして、前記第2の許容消費電力値以下の複数の仮想論理ボリュームのうち容量が最大の仮想論理ボリュームを前記新たな移行先ボリュームとして選択し、
性能劣化回避を優先することが指示されたとき(2403)には、前記第2の許容消費電力値を超えた複数の仮想論理ボリュームのうちアクセス量が最大の論理ボリュームを前記新たな移行元ボリュームとして、前記第2の許容消費電力値以下の複数の仮想論理ボリュームのうちアクセス量の余裕度が最大の仮想論理ボリュームを前記新たな移行先ボリュームとして選択する、ストレージシステム(100)。
【請求項９】
請求項5において、
前記移行処理の実行後、複数の仮想論理ボリュームを含む前記第2のストレージ装置(103)において、消費電力軽減を優先する第1の設定と性能劣化回避を優先する第2の設定との間で設定変更が指示された場合、
前記管理計算機(101)は、
前記設定変更に応答して、変更対象の論理ボリュームと、当該変更対象の論理ボリュームの移行先である変更先論理ボリュームと、を選択し、
前記変更先論理ボリュームに変更した場合のアクセス量の増分、容量の増分、及び前記所定の消費電力計算式(1701)に基づいて、設定変更後の消費電力値を計算し、
前記設定変更後の消費電力値と前記第1の許容消費電力値とを比較して、変更可能か判断し、
設定変更可能な場合に、前記変更先論理ボリュームを変更案として提示する、ストレージシステム(100)。
【請求項１０】
請求項9において、
前記第1の設定から前記第2の設定に変更指示があった場合、
前記管理計算機(101)は、前記変更対象の論理ボリュームとして、仮想論理ボリュームの複数のプールのうち最大容量を有するプールの中の最大容量を有する論理ボリュームを選択し、前記変更先論理ボリュームとして容量が最小のプールの論理ボリュームを選択する、ストレージシステム(100)。
【請求項１１】
請求項9において、
前記第2の設定から前記第1の設定に変更指示があった場合、
前記管理計算機(101)は、前記変更対象の論理ボリュームとして、仮想論理ボリュームの複数のプールのうち空きアクセス量が最小のプールの中の最大アクセス量を有する論理ボリュームを選択し、前記変更先論理ボリュームとして空きアクセス量が最大のプールの論理ボリュームを選択する、ストレージシステム(100)。
【請求項１２】
ストレージシステム(100)の制御方法であって、
前記ストレージシステム(100)は、論理ボリューム(2301)を提供する1台以上の移行元筐体を含む第1のストレージ装置(102)と、仮想論理ボリューム(2307)を提供する1台以上の移行先筐体を含む第2のストレージ装置(103)と、前記第1のストレージ装置の前記論理ボリュームを移行元ボリュームとし、前記第2のストレージ装置の前記仮想ボリュームを移行先ボリュームとし、前記移行元ボリュームを前記移行先ボリュームに移行する処理を制御する管理計算機(101)と、を備え、
前記第1のストレージ装置(102)は、前記論理ボリュームの容量、アクセス量、移行先筐体に含まれるディスク装置のタイプ、及びRAIDレベルの情報を含む移行元構成情報(904)を有し、
前記第2のストレージ装置(103)は、前記仮想論理ボリュームの容量、アクセス量、移行先筐体に含まれるディスク装置のタイプ、及びRAIDレベルの情報を含む移行先構成情報(1005)を有し、
前記制御方法は、
前記管理計算機(101)が、
前記第1及び第2のストレージ装置(102,103)から取得した前記移行元及び移行先構成情報(904,1005)を用いて、前記移行元ボリュームを前記移行先ボリュームに移行した場合のアクセス量の増分及び容量の増分を計算し、
前記移行先ボリュームのアクセス量と、RAIDレベルの情報と、前記アクセス量の増分と、前記移行先筐体に含まれるディスク装置のタイプと、を含む情報から決まる所定の消費電力演算式(1701)に基づいて前記移行先筐体の消費電力値を計算し、
計算によって得られた前記アクセス量の増分、前記容量の増分、及び前記移行先筐体の消費電力値に基づいて、前記移行元ボリュームを前記移行先ボリュームに移行可能か否か判断し、
移行可能であると判断した場合に、当該仮想論理ボリュームを移行案として提示する、制御方法。
【請求項１３】
請求項12において、
前記第1のストレージ装置(102)は、複数の論理ボリュームを含み、
前記第2のストレージ装置(103)は、複数の仮想論理ボリュームを含み、
前記管理計算機(101)は、
消費電力軽減を優先することが指示された場合(2402)には、前記移行元ボリュームとして容量が最大の論理ボリュームを、前記移行先ボリュームとして容量が最大の仮想論理ボリュームを選択し、
性能劣化回避を優先することが指示された場合(2403)には、前記移行元ボリュームとしてアクセス量が最大の論理ボリュームを、前記移行先ボリュームとしてアクセス量の余裕度が最大の仮想論理ボリュームを選択し、
前記移行元及び移行先構成情報(904,1005)を参照し、前記移行元ボリュームのアクセス量を前記移行先ボリュームに含まれる論理ボリューム数で除算することにより前記アクセス量の増分を計算し、
前記移行元及び移行先構成情報(904,1005)を参照し、前記移行元ボリュームの容量を前記移行先ボリュームに含まれる論理ボリューム数で除算することにより前記容量の増分を計算し、
前記移行先ボリュームのアクセス量と、RAIDレベルの情報と、前記アクセス量の増分と、前記移行先筐体に含まれるディスク装置のタイプと、を含む情報から決まる所定の消費電力演算式(1701)に基づいて前記移行先筐体の消費電力値を計算し、
前記移行先ボリュームにおいて、前記アクセス量と前記アクセス量の増分との加算値が許容アクセス量以下であり、前記容量の増分が空き容量以下であり、前記移行先筐体の消費電力が所定の許容消費電力値以下である場合に、前記移行元ボリュームを前記移行先ボリュームに移行可能であると判断し、
移行可能であると判断した場合に、当該仮想論理ボリュームを移行案として提示し、
前記移行案に従って移行元ボリュームを移行先ボリュームに移行させることが指示された場合、前記移行元ボリュームの前記移行先ボリュームへの移行処理を実行し、前記第1のストレージ装置(102)を停止させるように制御する、制御方法。
【請求項１４】
2つのストレージ装置(102,103)とコンピュータ(101)を請求項1に記載のストレージシステム(100)として機能させるためのプログラム。
【発明の詳細な説明】
【技術分野】
【０００１】
本発明は、ストレージシステム、及びその制御方法、並びにプログラムに関し、例えば、あるストレージ装置から別のストレージ装置に論理ボリュームを移行するための技術に関するものである。
【背景技術】
【０００２】
計算機が計算に必要な情報を効率的に記録する装置として、ストレージ装置が知られている。1台以上の計算機と1台以上のストレージ装置をSAN(ストレージエリアネットワーク)に接続することにより、計算機が情報をストレージ装置に記録することができる。
【０００３】
ストレージ装置とは、HDD(Hard Disk Drive)やSSD(Solid State Drive)などの情報を永続的に記憶できる補助記憶装置を1台以上搭載し、計算機からの情報の読み書き要求に従い、補助記憶装置に対して情報の読み書きを行い、その結果を計算機に返す装置である。さらに、ストレージ装置は、補助記憶装置に対して読み書きを行うときにRAID(Redundant Arrays of Independent(またはInexpensive) Disks)処理を行う。RAIDとは、記憶装置の信頼性を向上するために複数台の記憶装置を1台の記憶装置として使用する技術であり、RAIDを構成する記憶装置の一部が故障した場合においても情報が失われないように情報を復旧するための情報(パリティ)を複数台の記憶装置に記録する技術である。RAIDを構成する記憶装置の集合をRG(RAID Group)と呼ぶ。RGの記憶領域を1つ以上に分割した領域を論理ボリュームと呼ぶ。計算機は論理ボリュームに対して情報の読み書きを要求する。
【０００４】
ストレージ装置の消費電力は、RGへのアクセス量、または、HDDの稼働率から推定できることが知られている。RGへのアクセス量とは、単位時間当たりのRGへの情報の読み書き要求(I/O要求)の回数である。HDDの稼働率とは、HDDに読み書き要求が来てから応答を返すまでの時間が単位時間当たりに占める割合である。
【０００５】
一方、特許文献1によると、ストレージ装置は計算機に対して、シン・プロビジョニングと呼ばれる技術により実現される仮想論理ボリュームを提供できる。仮想論理ボリュームは、情報を記憶する領域であることは論理ボリュームと同じである。ただし、通常の論理ボリュームと異なる点は、仮想論理ボリュームに対して情報を書き込む要求が来たときに、プールと呼ばれる論理ボリュームの集合の中から必要となる領域を、情報を書き込む要求が来た仮想論理ボリュームに割り当てることである。仮想論理ボリュームが既に割り当てられている領域に対して情報を書き込む要求が来たときには、既に割り当てられている領域に対して情報を書き込む。仮想論理ボリュームが既に割り当てられた領域に対して情報を読み込む要求が来たときには、既に割り当てられた領域の情報を返す。仮想論理ボリュームが割り当てられていない領域に対して情報を読み込む要求が来たときには、空の情報を返す。仮想論理ボリュームを利用することにより、必要なときに必要なだけの領域を割り当てるため、補助記憶装置の利用効率が向上する。さらに、プールに属する論理ボリュームの容量の合計を、同一のプールに属する仮想論理ボリュームの容量の合計よりも小さくすることができる。
【先行技術文献】
【特許文献】
【０００６】
【特許文献１】特開２００７−２９３４４２号公報
【発明の概要】
【発明が解決しようとする課題】
【０００７】
しかしながら、仮想論理ボリュームを使用すると、仮想論理ボリュームへのアクセス量から、仮想論理ボリュームが属するプールを構成する論理ボリュームが属するRGのアクセス量を計算できないため、通常の論理ボリュームと同じようにストレージ装置の消費電力を計算できない。
【０００８】
ストレージ装置の消費電力を計算できないと、ストレージ装置を設置するデータセンタの給電設備の容量設計ができない。
【０００９】
また、消費電力のほとんどが熱になるため、ストレージ装置の消費電力を計算できないと、空調装置の容量設計もできない。ストレージ装置の定格電力から給電設備と空調装置の容量を設計すると、ストレージ装置を最大出力で使用しない場合は、過剰な給電設備と空調装置の容量設計となってしまう。
【００１０】
ストレージ装置を設置するデータセンタの給電設備の制限から、分電盤、または、コンセント毎に消費電力の上限値を定められていることがある。また、ストレージ装置を設置するデータセンタの空調装置の制限から、発熱するストレージ装置の筐体、または、ストレージ装置を搭載するラック毎に消費電力の上限値を定められていることもある。このようなときには、仮想論理ボリュームを使用すると消費電力を計算できないため、データセンタでは仮想論理ボリュームを使用できない状況になっている。なお、分電盤、コンセント、筐体、ラック毎に消費電力の上限を超えないように消費電力を制限することをパワーキャッピングと呼ぶ。このようなパワーキャッピングを実現するためには、筐体、または、ラックが異なる複数のRGから構成されているプールに属する仮想論理ボリュームを使用した場合においても、分電盤、コンセント、筐体、ラック毎に消費電力を計算できなければならない。
【００１１】
さらに、近年、製品の性能の進歩が著しいため、ストレージ装置運用中に補助記憶装置を増設すると、既に搭載されている補助記憶装置から構成される論理ボリュームと、それよりも性能がよく、容量が大きく、信頼性が高い補助記憶装置から構成される論理ボリュームが、同一プールに混在することがある。新しくストレージ装置を導入したときに、古いストレージ装置と併用することもある。信頼性が低い補助記憶装置を利用するときには、RGの信頼性が高くなるようにRAIDレベルを設定する。RAIDレベルとは、RAIDを構成する記憶装置の一部が故障した場合においても情報が失われないように情報を復旧するための情報を保存する方法を示す。これらのことから、同一プールに種別の異なる補助記憶装置から構成される論理ボリュームが混在する場合や、RAIDレベルが異なるRGに属する論理ボリュームが混在する場合においても、消費電力を計算できなければならない。
【００１２】
本発明はこのような状況に鑑みてなされたものであり、仮想化論理ボリュームを使用した場合にも適切に消費電力を計算する(見積もる)ことができ、移行可能とするストレージ技術を提供するものである。
【課題を解決するための手段】
【００１３】
i)上記課題を解決するために、本発明では、移行元及び移行先のストレージ装置の構成情報から容量及びアクセス量を取得し、移行した場合のアクセス量や容量の増分、消費電力を計算し、移行しても破綻を来たさないか判断することにより、移行案を作成し、提示している。
【００１４】
即ち、本発明によるストレージシステムは、論理ボリュームを提供する1台以上の移行元筐体を含む第1のストレージ装置と、仮想論理ボリュームを提供する1台以上の移行先筐体を含む第2のストレージ装置と、第1のストレージ装置の論理ボリュームを移行元ボリュームとし、第2のストレージ装置の仮想論理ボリュームを移行先ボリュームとし、移行元ボリュームを移行先ボリュームに移行する処理を制御する管理計算機と、を備えている。そして、第1のストレージ装置は、論理ボリュームの容量及びアクセス量の情報を含む移行元構成情報を有し、第2のストレージ装置は、仮想論理ボリュームの容量及びアクセス量の情報を含む移行先構成情報を有する。このようなシステムにおいて、管理計算機は、まず、移行元及び移行先構成情報を用いて、移行元ボリュームを移行先ボリュームに移行した場合のアクセス量の増分及び容量の増分を計算する。次に、管理計算機は、移行先ボリュームのアクセス量とアクセス量の増分と移行先筐体に含まれるディスク装置のタイプとを含む情報から決まる所定の消費電力演算式に基づいて移行先筐体の消費電力値を計算する。さらに、管理計算機は、計算によって得られたアクセス量の増分、容量の増分、及び移行先筐体の消費電力値に基づいて、移行元ボリュームを移行先ボリュームに移行可能か否か判断し、移行可能であると判断した場合に、当該仮想論理ボリュームを移行案として提示するようにしている。なお、具体的には、管理計算機は、移行先筐体の消費電力値が、当該移行先筐体の第1の許容消費電力値以下である場合に、移行可能であると判断する。
【００１５】
第1のストレージ装置が複数の論理ボリュームを含み、第2のストレージ装置は、複数の仮想論理ボリュームを含むとき、管理計算機は、消費電力軽減を優先することが指示された場合には、移行元ボリュームとして容量が最大の論理ボリュームを選択し、移行先ボリュームとして容量が最大の仮想論理ボリュームを選択する。一方、性能劣化回避を優先することが指示された場合には、管理計算機は、移行元ボリュームとしてアクセス量が最大の論理ボリュームを選択し、移行先ボリュームとしてアクセス量の余裕度が最大の仮想論理ボリュームを選択する。
【００１６】
また、管理計算機は、移行案に従って移行元ボリュームを移行先ボリュームに移行させることが指示された場合、移行元ボリュームの移行先ボリュームへの移行処理を実行し、さらに、移行元ボリュームを含む第1のストレージ装置を停止させる。第1のストレージ装置における全ての論理ボリュームを移行した場合には第1のストレージ装置を停止するが、一部の論理ボリュームのみを移行した場合には、当該一部の論理ボリュームを格納していた筐体に対する電源供給を停止するようにしてもよい。
【００１７】
ii)本発明では、移行処理後に論理ボリュームを再構成することが可能である。つまり、管理計算機は、移行処理の実行後に、移行先ボリュームが含まれる移行先筐体の現在の消費電力値を消費電力演算式に基づいて計算する。そして、管理計算機は、現在の消費電力値が、第1の許容消費電力値より大きい第2の許容消費電力値を超過しているか否か判断する。現在の消費電力値が第2の許容消費電力値を超過している場合に、管理計算機は、移行処理によって得られた移行先ボリュームを新たな移行元ボリュームとし、第2のストレージ装置内の仮想論理ボリュームであって、新たな移行元ボリュームとは別の仮想論理ボリュームを新たな移行先ボリュームとする論理ボリューム移行案を作成する。さらに、具体的には、管理計算機は、第2のストレージ装置から取得した新たな移行先ボリュームの構成情報を用いて、新たな移行元ボリュームを新たな移行先ボリュームに移行した場合のアクセス量の増分及び容量の増分を計算する。次に、管理計算機は、新たな移行先ボリュームのアクセス量とアクセス量の増分と移行先筐体に含まれるディスク装置のタイプとを含む情報から決まる所定の消費電力演算式に基づいて移行先筐体の消費電力値を計算する。さらに、管理計算機は、計算によって得られたアクセス量の増分、容量の増分、及び移行先筐体の消費電力によって、新たな移行元ボリュームを新たな移行先ボリュームに移行可能か否か判断する。移行可能であると判断した場合に、当該新たな移行先ボリュームが移行案として提示される。
【００１８】
なお、第2の許容消費電力値を超えた仮想論理ボリュームが複数ある場合には次のように処理される。つまり、管理計算機は、消費電力軽減を優先することが指示されたときには、第2の許容消費電力値を超えた複数の仮想論理ボリュームのうち容量が最大の論理ボリュームを新たな移行元ボリュームとして選択し、第2の許容消費電力値以下の複数の仮想論理ボリュームのうち容量が最大の仮想論理ボリュームを新たな移行先ボリュームとして選択する。一方、性能劣化回避を優先することが指示されたときには、管理計算機は、第2の許容消費電力値を超えた複数の仮想論理ボリュームのうちアクセス量が最大の論理ボリュームを新たな移行元ボリュームとして選択し、第2の許容消費電力値以下の複数の仮想論理ボリュームのうちアクセス量の余裕度が最大の仮想論理ボリュームを新たな移行先ボリュームとして選択する。
【００１９】
iii)さらに、移行処理の実行後、複数の仮想論理ボリュームを含む前記第2のストレージ装置において、消費電力軽減を優先する第1の設定と性能劣化回避を優先する第2の設定との間で設定変更が指示された場合の処理は以下のとおりである。即ち、管理計算機は、設定変更に応答して、変更対象の論理ボリュームと、当該変更対象の論理ボリュームの移行先である変更先論理ボリュームと、を選択する。そして、管理計算機は、変更先論理ボリュームに変更した場合のアクセス量の増分、容量の増分、及び前記所定の消費電力計算式に基づいて、設定変更後の消費電力値を計算する。さらに、管理計算機は、設定変更後の消費電力値と第1の許容消費電力値とを比較して、変更可能か判断する。
【００２０】
より具体的には、第1の設定から前記第2の設定に変更指示があった場合、管理計算機は、変更対象の論理ボリュームとして、仮想論理ボリュームの複数のプールのうち最大容量を有するプールの中の最大容量を有する論理ボリュームを選択し、変更先論理ボリュームとして容量が最小のプールの論理ボリュームを選択する。
【００２１】
一方、第2の設定から第1の設定に変更指示があった場合、管理計算機は、変更対象の論理ボリュームとして、仮想論理ボリュームの複数のプールのうち空きアクセス量が最小のプールの中の最大アクセス量を有する論理ボリュームを選択し、変更先論理ボリュームとして空きアクセス量が最大のプールの論理ボリュームを選択する。
【００２２】
さらなる本発明の特徴は、以下本発明を実施するための最良の形態及び添付図面によって明らかになるものである。
【発明の効果】
【００２３】
本発明により、ストレージ装置に給電する装置毎に、ストレージ装置の消費電力を計算でき、ストレージ装置の消費電力の上限を超えないようにストレージ装置を使用することができる。
【図面の簡単な説明】
【００２４】
【図１】本実施形態によるストレージシステムの概略構成を示す図である。
【図２】本実施形態による移行元ストレージシステム 102の概略構成を示す図である。
【図３】本実施形態による移行先ストレージシステム 103の概略構成を示す図である。
【図４】本実施形態によるコントロール筐体 203の概略構成を示す図である。
【図５】本実施形態による仮想コントロール筐体 301の概略構成を示す図である。
【図６】本実施形態によるディスク筐体 202の概略構成を示す図である。
【図７】本実施形態による管理計算機 101の概略構成を示す図である。
【図８】本実施形態によるホスト計算機 104の概略構成を示す図である。
【図９】本実施形態によるメインメモリ 402の構成を示す図である。
【図１０】本実施形態によるメインメモリ 501の構成を示す図である。
【図１１】本実施形態によるメインメモリ 702の構成を示す図である。
【図１２】本実施形態によるストレージ装置の筐体情報の内容を示す図である。
【図１３】本実施形態によるHDD情報の内容を示す図(1)である。
【図１４】本実施形態によるHDD情報の内容を示す図(2)である。
【図１５】本実施形態によるRG情報の内容を示す図である。
【図１６】本実施形態による論理ボリューム情報の内容を示す図である。
【図１７】本実施形態によるパワー消費情報 1105の内容を示す図である。
【図１８】本実施形態によるプール情報の内容を示す図である。
【図１９】本実施形態による仮想論理ボリューム作成案情報の内容を示す図である。
【図２０】本実施形態による仮想論理ボリューム割り当て情報の内容を示す図である。
【図２１】本実施形態によるプールの閾値を示す図である。
【図２２】本実施形態による外部論理ボリューム情報の内容を示すである。
【図２３】本実施形態による、仮想論理ボリュームとプールと論理ボリュームの関係、および、外部論理ボリュームと論理ボリュームの関係を示す図である。
【図２４】本実施形態による設定画面を示す図である。
【図２５】本実施形態による移行案表示画面を示す図である。
【図２６】本実施形態による消費電力表示画面を示す図である。
【図２７】本実施形態による論理ボリュームを移行する処理を説明するためのフローチャートである。
【図２８】本実施形態による、論理ボリューム移行案作成処理を説明するためのフローチャートである。
【図２９】本実施形態による論理ボリューム移行後に消費電力を上限値以下にする処理を説明するためのフローチャートである。
【図３０】本実施形態による、図29における論理ボリューム移行案作成処理(S2904)を詳細に説明するためのフローチャートである。
【図３１】本実施形態による、論理ボリューム移行後の設定変更時において論理ボリュームを移行する処理を説明するためのフローチャートである。
【図３２】本実施形態による、図31における論理ボリューム配置案作成処理の詳細を説明するためのフローチャートである。
【発明を実施するための形態】
【００２５】
本発明は、あるストレージ装置の論理ボリュームをそれとは別のストレージ装置にある仮想論理ボリュームに移行するための技術に関する。移行の際には、移行先のストレージ装置の消費電力を見積もり、その消費電力が予め定めた値を超えないように論理ボリュームを移行する。
【００２６】
以下、添付図面を参照して本発明の実施形態について説明する。ただし、本実施形態は本発明を実現するための一例に過ぎず、本発明の技術的範囲を限定するものではないことに注意すべきである。また、各図において共通の構成については同一の参照番号が付されている。
【００２７】
＜システム構成＞
図1は、本発明の実施形態によるストレージシステムの概略構成を示す図である。
【００２８】
本ストレージシステム100は、管理計算機 101と、移行元ストレージシステム 102と、移行先ストレージシステム103と、ホスト計算機 104と、管理ネットワーク 105と、ストレージエリアネットワーク 106と、を備えている。管理計算機101、移行元ストレージシステム 102、及び移行先ストレージシステム 103は、管理ネットワーク 105を介して相互に接続されている。また、移行元ストレージシステム 102、移行先ストレージシステム103、及びホスト計算機 104は、ストレージエリアネットワーク 106を介して相互に接続されている。
【００２９】
管理計算機 101は、移行元ストレージシステム 102、および、移行先ストレージシステム 103から構成情報を取得し、構成情報に基づいて論理ボリューム移行案を作成し、移行元ストレージシステム 102、および、移行先ストレージシステム 103に対して論理ボリューム移行命令を送信し、移行元ストレージシステム 102に対して電源を切る命令を送信する管理計算機である。
【００３０】
移行元ストレージシステム 102は、ホスト計算機 104が読み書きする情報を記憶する1つ以上の論理ボリュームを保持するストレージ装置である。
【００３１】
移行先ストレージシステム 103は、ホスト計算機 104が読み書きする情報を記憶する1つ以上の論理ボリュームを保持するストレージ装置である。
【００３２】
ホスト計算機 104は、移行元ストレージシステム 102、および、移行先ストレージシステム 103に対して情報の読み書きを行い、業務アプリケーションを実行するホスト計算機である。
【００３３】
管理ネットワーク 105は、構成情報の取得、論理ボリューム移行命令の送信などの管理計算機とストレージ装置が通信するための管理ネットワークであり、例えば、イーサネット(登録商標)などが該当する。
【００３４】
ストレージエリアネットワーク 106は、業務アプリケーションの情報などについてホスト計算機とストレージ装置が通信をするためのネットワークであり、例えば、ファイバチャネルなどが該当する。
【００３５】
本実施形態では、移行元ストレージシステム102を移行元ストレージ装置とし、移行先ストレージシステム 103を移行先ストレージ装置とし、移行元ストレージ装置に格納された全ての論理ボリュームを移行先ストレージ装置に移行する例を示して本発明を説明する。ただし、本発明は、移行元ストレージ装置の全ての論理ボリュームを移行先ストレージ装置に移行する場合だけでなく、移行元ストレージ装置に含まれる一部の論理ボリュームを移行先ストレージ装置に移行する場合にも適用できるものである。
【００３６】
＜移行元ストレージ装置の構成＞
図2は、本実施形態による移行元ストレージシステム 102の概略構成を示す図である。移行元ストレージシステム 102は、その内部に、例えば、ラック #1_201aと、ラック #2_201bと、を備えている。
【００３７】
ラック #1_201aは、ディスク筐体 #1_202aなどの筐体を搭載するためのラックである。そして、ラック #1_201aには、ディスク筐体 #1_202a、および、コントロール筐体 203が搭載されている。
【００３８】
ラック #2_201bは、ディスク筐体 #2_202bなどの筐体を搭載するためのラックである。ラック #2_201bには、ディスク筐体 #2_202bが搭載されている。
【００３９】
ディスク筐体 #1_202aは、ホスト計算機 104が読み書きする情報を記憶する装置を搭載する筐体である。ディスク筐体#1_202aは、配電ボード #1_204aと接続する。
【００４０】
ディスク筐体 #2_202bは、ホスト計算機 104が読み書きする情報を記憶する装置を搭載する筐体である。ディスク筐体#2_202bは、配電ボード #3_204cと接続されている。
【００４１】
コントロール筐体 203は、ホスト計算機 104が読み書きする情報を記憶する装置、および、ホスト計算機 104が送信する読み込み命令、および、書き込み命令を受信し、結果を送信する装置を搭載する筐体である。コントロール筐体 203は、配電ボード #2_204bと接続する。
配電ボード #1_204aは、ディスク筐体 #1_202aに電力を供給する分電盤である。
配電ボード #2_204bは、コントロール筐体 203に電力を供給する分電盤である。
配電ボード #3_204cは、ディスク筐体 #2_202bに電力を供給する分電盤である。
【００４２】
＜移行先ストレージ装置の構成＞
図3は、本実施形態による移行先ストレージシステム 103の構成を示す図である。移行先ストレージシステム 103は、その内部に、例えば、ラック #3_201cと、ラック #4_201dと、を備えている。
【００４３】
ラック #3_201cは、ディスク筐体 #3_202cなどの筐体を搭載するためのラックである。ラック #3_201cには、ディスク筐体 #3_202c、および、仮想コントロール筐体 301が搭載されている。
【００４４】
ラック #4_201dは、ディスク筐体 #4_202dなどの筐体を搭載するためのラックである。ラック #4_201dには、ディスク筐体 #4_202dが搭載されている。
【００４５】
ディスク筐体 #3_202cは、ホスト計算機 104が読み書きする情報を記憶する装置を搭載する筐体である。ディスク筐体#3 202cは、配電ボード #4 204dと接続されている。
【００４６】
ディスク筐体 #4_202dは、ホスト計算機 104が読み書きする情報を記憶する装置を搭載する筐体である。ディスク筐体#4_202dは、配電ボード #6_204fと接続されている。
【００４７】
仮想コントロール筐体 301は、ホスト計算機 104が読み書きする情報を記憶する装置、および、ホスト計算機 104が送信する読み込み命令、および書き込み命令を受信し、結果を送信する装置を搭載する筐体である。仮想コントロール筐体301は、配電ボード #5_204eと接続されている。
【００４８】
配電ボード #4_204dは、ディスク筐体 #3_202cに電力を供給する分電盤である。
配電ボード #5_204eは、仮想コントロール筐体 301に電力を供給する分電盤である。
配電ボード #6_204fは、ディスク筐体 #4_202dに電力を供給する分電盤である。
【００４９】
＜コントロール筐体の構成＞
図4は、本実施形態によるコントロール筐体 203の概略構成を示す図である。コントロール筐体203は、その内部に、CPU (Central Processing Unit) 401と、メインメモリ 402と、バス 403と、インタフェース #1_404と、インタフェース #2_405、インタフェース #3_406と、ハードディスクドライブ(HDD)407と、電源 408と、を備えている。CPU 401、メインメモリ 402、インタフェース #1_404、インタフェース #2_405、及びインタフェース #3_406は、バス 403を介して相互に接続されている。
【００５０】
CPU 401は、メインメモリ 402に記憶されているプログラムを実行する中央処理装置である。
【００５１】
メインメモリ 402は、CPU 401が実行するプログラムを記憶する主記憶装置である。
【００５２】
インタフェース #1_404は、バス 403とHDD 407、および、ディスク筐体 202が搭載するHDD 407を接続するためのインタフェースである。
【００５３】
インタフェース #2_405は、バス 403とストレージエリアネットワーク 106を接続するためのインタフェースである。
【００５４】
インタフェース #3_406は、バス 403と管理ネットワーク 105を接続するためのインタフェースである。
【００５５】
HDD 407は、情報を記憶するハードディスクドライブである。HDD 407は、情報を永続的に記憶できる補助記憶装置であればよく、SSD(Solid State Drive)でもよい。
【００５６】
電源 408は、配電ボード 204と接続し、コントロール筐体 203を構成する機器に電力を供給する電源である。
【００５７】
＜仮想コントロール筐体の構成＞
図5は、本実施形態による仮想コントロール筐体 301の概略構成を示す図である。
仮想コントロール筐体 301は、CPU 401と、メインメモリ 501と、バス 403と、インタフェース #1_404と、インタフェース #2_405と、インタフェース #3_406と、HDD 407と、電源 408と、を備えている。仮想コントロール筐体 301では、メインメモリ 501に記憶されている情報を除いてコントロール筐体 203と同一の構成となっている。
メインメモリ 501は、CPU 401が実行するプログラムを記憶する主記憶装置である。
【００５８】
＜ディスク筐体の構成＞
図6は、本実施形態によるディスク筐体 202の概略構成を示す図である。
ディスク筐体 202は、HDD 407と、電源 408と、を備えている。HDD 407は、コントロール筐体 203、または、仮想コントロール筐体 301に搭載されているインタフェース#1_404と接続されている。
【００５９】
＜管理計算機の構成＞
図7は、本実施形態による管理計算機 101の概略構成を示す図である。
管理計算機 101は、CPU 701と、メインメモリ 702と、バス 703と、インタフェース 704と、HDD 705と、キーボード 706と、マウス 707と、ディスプレイ 708と、を備えている。CPU 701、メインメモリ 702、インタフェース 704、HDD 705、キーボード 706、マウス 707、及びディスプレイ 708は、バス 703を介して相互に接続されている。
【００６０】
CPU 701は、メインメモリ 702に記憶されているプログラムを実行する中央処理装置である。
【００６１】
メインメモリ 702は、CPU 701が実行するプログラムを記憶する主記憶装置である。
インタフェース 704は、バス 703と管理ネットワーク 105を接続するためのインタフェースである。
【００６２】
HDD 705は、情報を記憶するハードディスクドライブである。HDD 705は、情報を永続的に記憶できる補助記憶装置であればよく、SSDでもよい。
【００６３】
キーボード 706は、運用管理者が管理画面に文字を入力するためのキーボードである。
マウス 707は、運用管理者が管理画面上のカーソルを操作するためのマウスである。マウス 707は、管理画面上のカーソルを操作できるポインティングデバイスであればよく、タッチパッドやトラックボールなどでもよい。運用管理者がキーボード 706を用いて管理画面上のカーソルを操作できる場合は、マウス 707はなくてもよい。
ディスプレイ 708は、運用管理者が管理画面を見るためのディスプレイである。
【００６４】
＜ホスト計算機の構成＞
図8は、本実施形態によるホスト計算機 104の概略構成を示す図である。
ホスト計算機 104は、CPU 801と、バス 802と、インタフェース 803と、HDD 804と、メインメモリ 805と、業務アプリケーションプログラム 806と、接続情報 807と、を備えている。CPU 801、インタフェース 803、HDD 804、及びメインメモリ 805は、バス 802を介して相互に接続されている。
【００６５】
CPU 801は、メインメモリ 805に記憶されているプログラムを実行する中央処理装置である。
【００６６】
インタフェース 803は、バス 802とストレージエリアネットワーク 106を接続するためのインタフェースである。
【００６７】
HDD 804は、情報を記憶するハードディスクドライブである。HDD 804は、情報を永続的に記憶できる補助記憶装置であればよく、SSDでもよい。
【００６８】
メインメモリ 805は、CPU 801が実行するプログラムを記憶する主記憶装置である。メインメモリ 805には、業務アプリケーションプログラム 806、および、接続情報 807が記憶されている。
【００６９】
業務アプリケーションプログラム 806、および、接続情報 807は、HDD 804に記憶されており、ホスト計算機104が起動するときに、CPU 801が業務アプリケーションプログラム 806、および、接続情報 807をメインメモリ 805に複写する。
【００７０】
業務アプリケーションプログラム 806は、例えば、従業員の給与計算などの業務において使用される業務アプリケーションプログラムである。業務アプリケーションプログラム 806は、接続情報 807の接続情報に従い、ストレージエリアネットワーク 106を介して移行元ストレージシステム 102、および、移行先ストレージシステム 103に対して情報の読み書きを行う。
【００７１】
接続情報 807は、業務アプリケーションプログラム 806が情報の読み書きを行うストレージ装置の情報である。接続情報 807は、具体的には、ストレージ装置を一意に識別する値(WWN(World Wide Name))、および、論理ボリュームを一意に識別する値(論理ボリューム番号)である。
【００７２】
＜メインメモリ 402の内容＞
図9は、本実施形態によるコントロール筐体 203内のメインメモリ 402の構成を示す図である。
メインメモリ 402は、ディスク制御プログラム 901、ボリューム移行プログラム 902、ストレージシャットダウンプログラム 903、及び構成情報 904を格納している。
【００７３】
ディスク制御プログラム 901は、ホスト計算機 104が送信する論理ボリュームへの読み込み要求、および、書き込み要求に応じてコントロール筐体 203内のHDD 407、または、コントロール筐体 203に直接接続されたディスク筐体 202内のHDD 407に対して情報を読み書きし、ホスト計算機 104に対して応答するディスク制御プログラムである。
【００７４】
ディスク制御プログラム 901は、HDD 407に対して情報を読み書きするときにRAID処理を行う。RAIDとは、記憶装置の信頼性を向上するために複数台の記憶装置を1台の記憶装置として使用する技術であり、RAIDを構成する記憶装置の一部が故障した場合においても情報が失われないように情報を復旧するための情報を複数台の記憶装置に記録する技術である。RAIDを構成する記憶装置の集合をRG(RAID Group)と呼ぶ。RGの記憶領域を1つ以上に分割した領域を論理ボリュームと呼ぶ。
【００７５】
ボリューム移行プログラム 902は、論理ボリュームを同一ストレージ装置内の論理ボリューム、または、他のストレージ装置内の論理ボリュームに移行するボリューム移行プログラムである。
【００７６】
ストレージシャットダウンプログラム 903は、HDD 407、および、ディスク筐体 202など移行元ストレージシステム102内の装置の電源を切るプログラムである。
構成情報 904は、移行元ストレージシステム 102の構成情報である。
【００７７】
＜メインメモリ 501の内容＞
図10は、本実施形態による仮想コントロール筐体 301内のメインメモリ 501の構成を示す図である。
メインメモリ 501は、ディスク制御プログラム 1001、仮想論理ボリューム制御プログラム 1002、外部仮想論理ボリューム制御プログラム 1003、ボリューム移行プログラム 1004、及び構成情報 1005を格納している。
【００７８】
ディスク制御プログラム 1001は、ホスト計算機 104が送信する論理ボリュームへの読み込み要求、および、書き込み要求に応じて仮想コントロール筐体 301内のHDD 407、または、仮想コントロール筐体 301に直接接続されたディスク筐体 202内のHDD 407に対して情報を読み書きし、ホスト計算機 104に対して応答するディスク制御プログラムである。ディスク制御プログラム 1001は、HDD 407に対して情報を読み書きするときにRAID処理を行う。
【００７９】
仮想論理ボリューム制御プログラム 1002は、ホスト計算機 104が送信する仮想論理ボリュームへの読み込み要求、および、書き込み要求に応じて仮想コントロール筐体 301内のHDD 407、または、仮想コントロール筐体 301に直接接続されたディスク筐体 202内のHDD 407に対して情報を読み書きし、ホスト計算機 104に対して応答する仮想論理ボリューム制御プログラムである。なお、仮想論理ボリュームはシン・プロビジョニングと呼ばれる技術により実現される。仮想論理ボリュームは、情報を記憶する領域であることは論理ボリュームと同じであるが、仮想論理ボリュームに対して情報を書き込む要求が来たときに、プールと呼ばれる論理ボリュームの集合の中から必要となる領域を、情報を書き込む要求が来た仮想論理ボリュームに割り当てることが、論理ボリュームとは異なる。仮想論理ボリュームが既に割り当てられている領域に対して情報を書き込む要求が来たときには、既に割り当てられている領域に対して情報を書き込む。仮想論理ボリュームが既に割り当てられた領域に対して情報を読み込む要求が来たときには、既に割り当てられた領域の情報を返す。仮想論理ボリュームが割り当てられていない領域に対して情報を読み込む要求が来たときには、空の情報を返す。仮想論理ボリュームの領域と実際に情報を読み書きする論理ボリュームの領域の対応については、図20において説明する。仮想論理ボリュームを利用することにより、必要なときに必要なだけの領域を割り当てるため、補助記憶装置の利用効率が向上する。さらに、プールに属する論理ボリュームの容量の合計を、同一のプールに属する仮想論理ボリュームの容量の合計よりも小さくすることができる。
【００８０】
外部仮想論理ボリューム制御プログラム 1003は、ホスト計算機 104が送信する外部論理ボリュームへの読み込み要求、および、書き込み要求に応じてコントロール筐体 203内のHDD 407、または、コントロール筐体 203に直接接続されたディスク筐体 202内のHDD 407に対して情報を読み書きし、ホスト計算機 104に対して応答する外部論理ボリューム制御プログラムである。外部論理ボリュームは、情報を記憶する領域であることは論理ボリュームと同じであるが、外部論理ボリュームに対して情報を読み書きする要求が来たときに、他のストレージ装置の論理ボリュームに対して情報を読み書きし、その結果を返すことが通常の論理ボリュームとは異なる。外部論理ボリュームと実際に読み書きする論理ボリュームの対応については、図 22において説明する。外部論理ボリュームを利用することにより、ホスト計算機 104からは、移行元ストレージシステム102に格納されている論理ボリュームが移行先ストレージシステム 103に格納されているように見える。
【００８１】
ボリューム移行プログラム 1004は、論理ボリュームを同一ストレージ装置内の論理ボリューム、または、他のストレージ装置内の論理ボリュームに移行するボリューム移行プログラムである。
構成情報 1005は、移行先ストレージシステム 103の構成情報である。
【００８２】
＜メインメモリ 702の内容＞
図11は、本実施形態による管理計算機 101内のメインメモリ 702の構成を示す図である。
メインメモリ 702は、構成情報取得プログラム 1101、パワー消費算出プログラム 1102、ボリューム移行プラン作成プログラム 1103、構成情報 1104、及びパワー消費情報 1105を格納している。
【００８３】
構成情報取得プログラム 1101は、移行元ストレージシステム 102から構成情報 904を取得し、移行先ストレージシステム 103から構成情報 1005を取得し、構成情報 1104に記録する構成情報取得プログラムである。
【００８４】
パワー消費算出プログラム 1102は、構成情報取得プログラム 1101が取得した構成情報を基に、移行元ストレージシステム 102、および、移行先ストレージシステム 103の消費電力を計算する消費電力計算プログラムである。
【００８５】
ボリューム移行プラン作成プログラム 1103は、移行元ストレージシステム 102に格納された論理ボリュームを移行先ストレージシステム 103に移行するための論理ボリューム移行案を作成するプログラムである。
【００８６】
構成情報 1104は、構成情報取得プログラム 1101が取得した移行元ストレージシステム 102、および、移行先ストレージシステム 103の構成情報である。
【００８７】
パワー消費情報 1105は、移行元ストレージシステム 102、および、移行先ストレージシステム 103の消費電力を計算するための情報である。
【００８８】
＜ストレージ装置の筐体情報＞
図12は、構成情報 1104の一部であるストレージ装置の筐体情報1201を示している。
列1202は、構成情報の取得元装置を示す。列1202が「移行元」である行は移行元ストレージ装置の筐体情報であり、「移行先」である行は移行先ストレージ装置の筐体情報である。
【００８９】
列1203は、筐体を一意に識別するための識別子である。例えば、「ディスク筐体 #1」は、移行元ストレージ装置に属する。
【００９０】
列1204は、筐体に電力を供給する分電盤を一意に識別するための識別子である。例えば、「ディスク筐体#1」は、「配電ボード #1」から電力が供給されている。
【００９１】
列1205は、分電盤から供給できる消費電力の上限値である。この値は分電盤毎にあらかじめ定められている。
【００９２】
列1206は、列1205の消費電力の上限値に対する論理ボリューム移行案作成時における消費電力の最大値の割合である。例えば、「配電ボード #1」に接続する筐体には、3,000 W×70%＝2,100 W以下になるように論理ボリュームを配置する。
【００９３】
列1207は、論理ボリューム移行後の論理ボリューム配置適正化の閾値であり、列1205の消費電力の上限値に対する割合である。例えば、「配電ボード #1」に接続する筐体が、3,000 W×90%＝2,700 Wを超えた場合には、論理ボリュームの配置を適正化する。つまり、使用しているうちに70％を超えても直ぐには適正化し直すことはなく、90％を超えた場合に論理ボリュームの適正化をし直すのである。
【００９４】
列1202、列1205、列1206、及び列1207は、構成情報取得プログラム 1101が構成情報 904、または、構成情報 1005から情報を取得するときに付与される情報である。また、列1203、及び列1204は、構成情報取得プログラム 1101が構成情報 904、または、構成情報 1005から取得する情報である。
【００９５】
＜HDD情報の内容＞
図13及び14は、本実施形態による、構成情報 1104の一部であるHDD情報(表1301)の内容を示す図である。図13と14は紙面の関係上分離して表現されているが、本来繋がっていて1つの表となっている。
【００９６】
列1302は、構成情報の取得元装置を示す。列1302が「移行元」である行は移行元ストレージ装置のHDD情報であり、「移行先」である行は移行先ストレージ装置のHDD情報である。
【００９７】
列1303は、HDDを一意に識別するための識別子である。例えば、「HDD #1」は、移行元ストレージ装置に属する。
【００９８】
列1304は、HDDが搭載されている筐体を一意に識別するための識別子である。例えば、「HDD #1」は、「コントロール筐体」に搭載されている。
【００９９】
列1305は、HDDが属するRGを一意に識別するための識別子である。例えば、「HDD #1」は、「RG #1」に属する。
【０１００】
列1306は、HDD種別である。例えば、「HDD #1」は、インタフェースがFC(Fibre Channel)であり、3.5インチの大きさのディスクが分速15,000回転であるHDDであることを示す。このタイプ1306と後述の動作レート 1308の情報は、消費電力を計算するために用いられる情報である。
【０１０１】
列1307は、HDDの容量である。例えば、「HDD #1」は、450 GB(Gigabyte)分の情報量を記録できる容量を持つことを示す。
【０１０２】
列1308は、HDDの稼働率(現在どのくらいのディスクが稼働しているかを示す情報)である。HDDの稼働率とは、HDDに読み書き要求が来てから応答を返すまでの時間が単位時間当たりに占める割合である。例えば、「HDD #1」は、20%の稼働率で動作していることを示す。なお、移行元ストレージ装置においては、アクセス量(IOPS (Input Output Per Second))及び稼働率の両方を把握することができるが、移行先ストレージ装置ではIOPSしか把握することはできない。移行先ストレージ装置はまだ稼働していないからである。よって、移行先ストレージ装置の消費電力計算は、IOPSを用いて実行される。なお、稼働率による計算の方がIOPSによるそれよりも精度良い値が得られることが多いため、移行元ストレージ装置では稼働率を用いる方が望ましい。アクセス量(IOPS)による計算の方が精度良い値が得られる場合は、アクセス量を用いる。
【０１０３】
列1302は、構成情報取得プログラム 1101が構成情報 904、または、構成情報 1005から情報を取得するときに付与される。列1303、列1304、列1305、列1306、列1307、及び列1308は、構成情報取得プログラム 1101が構成情報 904、または、構成情報 1005から取得する情報である。
【０１０４】
＜RG情報の内容＞
図15は、構成情報 1104の一部であるRG(RAID GROUP)情報(表1501)の内容を示す図である。
【０１０５】
列1502は、構成情報の取得元装置を示す。列1502が「移行元」である行は移行元ストレージ装置のRG情報であり、「移行先」である行は移行先ストレージ装置のRG情報である。
【０１０６】
列1503は、RGを一意に識別するための識別子である。例えば、「RG #1」は、移行元ストレージ装置に属する。
【０１０７】
列1504は、RGのRAIDレベルである。RAIDレベルとは、RAIDを構成する記憶装置の一部が故障した場合においても情報が失われないように情報を復旧するための情報を保存する方法を示す。例えば、「RG #1」のRAIDレベルは、「RAID 1(2D+2D)」である。
【０１０８】
列1505は、RGの総容量である。例えば、「RG #1」は、900 GB分の情報量を記録できる容量を持つことを示す。
【０１０９】
列1506は、RGの空き容量である。例えば、「RG #1」は、500 GB分の情報量を記録できる容量が空いていることを示す。
【０１１０】
列1507は、RGへのアクセス量である。RGへのアクセス量とは、単位時間当たりのRGへの情報の読み書き要求の回数である。例えば、「RG #1」へのアクセス量は180 IOPSであることを示す。
【０１１１】
列1508は、RGへの限界アクセス量である。RGの限界アクセス量とは、RGへの情報の読み書き要求に対する応答時間が、あらかじめ定めた値を超えない最大のアクセス量である。例えば、図15においては、「RG #1」への限界アクセス量は1,000 IOPSとなっている。
【０１１２】
列1502は、構成情報取得プログラム 1101が構成情報 904、または、構成情報 1005から情報を取得するときに付与される。また、列1503、列1504、列1505、列1506、列1507、及び列1508は、構成情報取得プログラム 1101が構成情報 904、または、構成情報 1005から取得する情報である。
【０１１３】
＜論理ボリューム情報＞
図16は、構成情報 1104の一部である論理ボリューム情報(表1601)を示す図である。
列1602は、論理ボリューム情報の取得元装置を示す。列1602が「移行元」である行は移行元ストレージ装置の論理ボリューム情報であり、「移行先」である行は移行先ストレージ装置の論理ボリューム情報である。
【０１１４】
列1603は、論理ボリュームを一意に識別するための識別子である。例えば、「論理ボリューム #1」は、移行元ストレージ装置に属する。
【０１１５】
列1604は、論理ボリュームが属するRGを一意に識別するための識別子である。例えば、「論理ボリューム #1」は、「RG #1」に属する。
【０１１６】
列1605は、論理ボリュームへのアクセス量(負荷量)である。例えば、「論理ボリューム #1」へのアクセス量は100 IOPSであることを示す。また、RG#1に属する論理ボリュームはLU#1とLU#2であるが、これらの負荷を加算すると、180IOPSであり、列1507の情報(図15参照)と同一値となる。
【０１１７】
列1606は、論理ボリュームへの限界アクセス量である。例えば、「論理ボリューム #1」への限界アクセス量は500 IOPSであることを示す。論理ボリュームへの限界アクセス量は、論理ボリューム移行時のアクセス量の計算の目安として使用する。LU#1とLU#2の限界負荷 1606を加算すると、1000 IOPSであり、これは列1508(図15参照)と同一値となる。
【０１１８】
列1607は、論理ボリュームの容量である。例えば、「論理ボリューム #1」は、450 GB分の情報量を記録できる容量を持つことを示す。
【０１１９】
列1608は、論理ボリュームの空き容量である。例えば、「論理ボリューム #1」は、250 GB分の情報量を記録できる容量が空いていることを示す。
【０１２０】
列1609は、論理ボリュームが属するプールを一意に識別するための識別子である。例えば、「論理ボリューム#7」は、「プール #1」に属する。列1608が「-」である行の論理ボリュームはプールに属さないことを示す。例えば、「論理ボリューム #1」は、プールに属さない。
【０１２１】
列1602は、構成情報取得プログラム 1101が構成情報 904、または、構成情報 1005から情報を取得するときに付与される。また、列1603、列1604、列1605、列1607、列1608、及び列1609は、構成情報取得プログラム 1101が構成情報 904、または、構成情報 1005から取得する情報である。
【０１２２】
列1606は、構成情報取得プログラム 1101が構成情報 904、または、構成情報 1005から情報を取得するときに構成情報 取得プログラム 1101が作成する情報である。具体的には、列1606の値は、列1508のRGの限界アクセス量を列1505のRGの容量で割った値に列1607の論理ボリュームの容量を掛けた値であり、例えば、「論理ボリューム #1」の限界アクセス量は、1,000 IOPS÷900 GB×450 GB＝500 IOPSとなる。
【０１２３】
なお、図16では、仮想化されているのは移行先ストレージ装置となっているが、移行元ストレージ装置を仮想化しても勿論良い。
【０１２４】
＜パワー消費情報の内容＞
図17は、本実施形態によるパワー消費情報 1105(表1701)の内容を示す図である。
列1702は、筐体種別である。列1703は、HDD種別である。列1704は、RAIDレベルである。
【０１２５】
列1705は、消費電力計算式である。列1703、および、列1704が「-」である行の列1705は、HDDの消費電力を除いた列1702の筐体の消費電力である。つまり、HDDを除いた部分であるので、消費電力は定数(b1、b2、b3)となっている。
【０１２６】
列1702が「-」である行の列1705は、列1703のHDD種別であり、列1704のRAIDレベルのときのHDDの消費電力である。
【０１２７】
HDDの消費電力を計算する方法は、アクセス量(IOPS)に基づいて計算する方法と、稼働率に基づいて計算する方法がある。式1706は、アクセス量(IOPS)に基づいてRGを構成するHDDの消費電力の合計を計算する式であり、xはアクセス量(IOPS)である。式1707は、稼働率に基づいてHDD 1台の消費電力を計算する式であり、yは稼働率の値である。IOPSから計算する場合には、該当するRG全体の消費電力が得られる。一方、稼働率の値から計算する場合には、個々のHDDの消費電力が得られる。従って、HDD個々の消費電力を加算すれば、RG全体の消費電力が求められる。
【０１２８】
列1705の式のx、および、y以外の値(係数aやb)は、HDDの種類によって決まる値であり、消費電力を測定した値に基づいてあらかじめ計算しておく。筐体の消費電力を計算するときには、筐体種別が列1702と同一の行の列1705の値と、列1507の筐体に搭載されたHDDのRGのアクセス量を、HDDの種別が列1703でありRAIDレベルが列1704である列1705の式に代入した値を足して計算する。
【０１２９】
本実施形態では、列1705の計算式は、定数、xの一次式、または、yの一次式であるが、消費電力を計測した値に基づいて式を用意する。また、情報を読み込む要求をするときの消費電力と情報を書き込むための要求をするときの消費電力が大きく異なる場合は、読み込みのアクセス量と書き込みのアクセス量を分けて式を用意する。さらに、連続した領域への情報を読み書きする要求(シーケンシャルアクセス要求)をするときと、連続していない領域への情報を読み書きする要求(ランダムアクセス要求)をするときの消費電力が大きく異なる場合は、連続した領域へのアクセス量と連続していない領域へのアクセス量を分けて式を用意する。
【０１３０】
列1702、列1703、列1704、及び列1705は、構成情報取得プログラム 1101が構成情報 904、または、構成情報 1005から取得する情報である。
【０１３１】
＜プール情報の内容＞
図18は、本実施形態による構成情報 1104の一部であるプール情報(表1801)の内容を示す図である。
列1802は、構成情報の取得元装置を示す。列1802が「移行元」である行は移行元ストレージ装置のプール情報であり、「移行先」である行は移行先ストレージ装置のプール情報である。
【０１３２】
列1803は、プールを一意に識別するための識別子である。例えば、「プール #1」は、移行先ストレージ装置に属する。
【０１３３】
列1804は、プールへのアクセス量である。プールへのアクセス量とは、プールに属する仮想論理ボリュームへのアクセス量の合計である。例えば、「プール #1」へのアクセス量は300 IOPSである。
【０１３４】
列1805は、プールへの限界アクセス量である。プールへの限界アクセス量とは、プールに属する仮想論理ボリュームへのアクセス量の合計の上限値である。例えば、「プール #1」への限界アクセス量は1,050 IOPSである。
【０１３５】
列1806は、プールの総容量である。プールの総容量とは、プールに属する論理ボリュームの容量の合計である。例えば、「プール #1」は、2,025 GB分の情報量を記録できる容量を持っている。
【０１３６】
列1807は、プールの空き容量である。プールの空き容量とは、プールに属する論理ボリュームの空き容量の合計である。例えば、「プール #1」は、25 GB分の情報量を記録できる、空き容量を有している。
【０１３７】
列1802は、構成情報取得プログラム 1101が構成情報 904、または、構成情報 1005から情報を取得するときに付与される。また、列1803、列1804、列1806、及び列1807は、構成情報取得プログラム 1101が構成情報 904、または、構成情報 1005から取得する情報である。列1805は、構成情報取得プログラム 1101が構成情報 1005から情報を取得するときに作成される。具体的には、列1805の値は、列1609のプール識別子が列1803のプール識別子と同一の行の列1606の限界アクセス量の合計であり、例えば、「プール #1」の限界アクセス量は、350 IOPS＋350 IOPS＋350 IOPS＝1,050 IOPSとなる。
【０１３８】
＜仮想論理ボリューム作成案情報の内容＞
図19は、本実施形態による構成情報 1104の一部である仮想論理ボリューム作成案情報(表1901)の内容を示す図である。
列1902は、仮想論理ボリュームを一意に識別するための識別子である。例えば、「仮想論理ボリューム #1」は、移行先ストレージ装置に属する。
【０１３９】
列1903は、プールを一意に識別するための識別子である。例えば、「仮想論理ボリューム #1」は、「プール #1」に属する。
【０１４０】
列1904は、仮想論理ボリュームの容量である。例えば、「仮想論理ボリューム #1」は、450 GB分の情報量を記録できる容量を持つことを示す。
【０１４１】
列1905は、仮想論理ボリュームの空き容量である。例えば、「仮想論理ボリューム #1」は、250 GB分の情報量を記録できる容量が空いていることを示す。
【０１４２】
＜仮想論理ボリューム割り当て情報の内容＞
図20は、本実施形態による構成情報 1005の一部である仮想論理ボリューム割り当て情報(表2001)を示す図である。
【０１４３】
列2002は、仮想論理ボリュームを一意に識別するための識別子である。列2003は、仮想論理ボリュームの領域の開始番地である。列2004は、仮想論理ボリュームの領域の終了番地である。
【０１４４】
列2005は、論理ボリュームを一意に識別するための識別子である。列2006は、論理ボリュームの領域の開始番地である。列2007は、論理ボリュームの領域の終了番地である。例えば、「仮想論理ボリューム #1」の0番地から99番地までの領域の情報は、「論理ボリューム #7」の0番地から99番地までの領域に記録されている。
【０１４５】
＜プールの閾値の内容＞
図21は、本実施形態による構成情報 1104の一部であるプールの閾値(表2101)の内容を示す図である。この表の値はあらかじめ定めておく。
列2102は、プールを一意に識別するための識別子である。
【０１４６】
列2103は、列1805のプールへの限界アクセス量に対する、プールに属する仮想論理ボリュームへのアクセス量の上限値の割合である。例えば、「プール #1」に属する仮想論理ボリュームへのアクセス量の合計が、1,050 IOPSの70%、すなわち、735 IOPS以下となるように仮想論理ボリュームを配置する。
【０１４７】
列2104は、列1806のプールへの容量に対する、プールに属する仮想論理ボリュームの容量の上限値の割合である。例えば、「プール #1」に属する仮想論理ボリュームの容量の合計が、2,025 GBの90%、すなわち、1,822.5 GB以下となるように仮想論理ボリュームが配置される。
【０１４８】
＜外部論理ボリューム情報の内容＞
図22は、本実施形態による構成情報 1104の一部である外部論理ボリューム情報(表2201)の内容を示す図である。
【０１４９】
列2202は、外部論理ボリュームを一意に識別するための識別子である。
【０１５０】
列2203は、外部論理ボリュームに対して情報の読み書き要求が来たときに実際に情報の読み書きをする論理ボリュームを一意に識別するための識別子である。例えば、「外部論理ボリューム #1」に対して情報の読み書き要求が来たときには、「論理ボリューム #1」に対して情報の読み書きを行う。
【０１５１】
列2202及び列2203は、構成情報 取得プログラム 1101が構成情報 904から取得する情報である。
【０１５２】
なお、外部論理ボリュームとは、移行元ストレージ装置内に存在する論理ボリュームをあたかも移行先ストレージ装置内に存在するかのように見せるための技術である。
【０１５３】
＜論理ボリュームの相互関係＞
図23は、本実施形態による、移行元ストレージシステム 102、および、移行先ストレージシステム 103における仮想論理ボリュームとプールと論理ボリュームの関係、および、外部論理ボリュームと論理ボリュームの関係を示す図である。
【０１５４】
移行元ストレージシステム 102には、論理ボリューム #1_2301、論理ボリューム #5_2302、論理ボリューム #6_2303などが格納されている。
【０１５５】
一方、移行先ストレージシステム 103には、外部論理ボリューム #1_2304、外部 論理ボリューム #2_2305、外部論理ボリューム #6_2306、仮想論理ボリューム #1_2307、仮想論理ボリューム #5_2308、仮想論理ボリューム #6_2309、プール #1 2310、プール #2_2311、論理ボリューム #7_2312、論理ボリューム #9_2313、論理ボリューム #10_2314、及び論理ボリューム #12_2315などが格納されている。
【０１５６】
例えば、外部論理ボリューム #1_2304と論理ボリューム #1_2301は、表2201により対応付けられている。例えば、仮想論理ボリューム #1_2307とプール #1_2310は、表1901により対応付けられている。例えば、プール #1_2310と論理ボリューム #7_2312、および、論理ボリューム #9_2313などは、表1601により対応付けられている。例えば、仮想論理ボリューム #1_2307と論理ボリューム #7_2312、および、論理ボリューム #9_2313などは、表2001により対応付けられている。
【０１５７】
＜設定画面(GUI)例＞
図24は、本実施形態による設定画面(GUI)の一例(移行設定画面2401)を示す図である。
図24において、選択ボタン2402、および、選択ボタン2403は、論理ボリューム移行案を作成するときに、消費電力を削減することを優先するか、性能が劣化しないことを優先するか選択するための選択ボタンである。管理者(利用者)が、選択ボタン2402を押すと消費電力を削減することが優先され、選択ボタン2403を押すと性能が劣化しないことを優先する。管理者が優先する方の選択ボタンを押す。
【０１５８】
テキスト入力ボックス2404は、移行元ストレージ装置を一意に識別するための識別子を入力するためのテキスト入力ボックスである。本実施形態では、移行元ストレージシステム 102が移行元であるため、テキスト入力ボックス2404に「移行元ストレージシステム」と入力する。移行元ストレージ装置が2台以上ある場合は、テキスト入力ボックス2404に2台以上の移行元ストレージ装置の識別子を入力する。
【０１５９】
テキスト入力ボックス2405は、移行先ストレージ装置を一意に識別するための識別子を入力するためのテキスト入力ボックスである。本実施形態では、移行先ストレージシステム 103が移行先であるため、テキスト入力ボックス2405に「移行先ストレージシステム」と入力する。移行先ストレージ装置が2台以上ある場合は、テキスト入力ボックス2405に2台以上の移行先ストレージ装置の識別子を入力する。
【０１６０】
押しボタン2406は、論理ボリューム移行案の作成を開始する押しボタンである。
押しボタン2407は、ボリューム移行プラン作成プログラム 1103を終了する押しボタンである。
【０１６１】
＜移行案表示画面例＞
図25は、本実施形態による移行案表示画面(移行プラン画面2501)例を示す図である。つまり、図25は、移行案作成演算の結果を示している。
図25において、列2502は、移行元論理ボリュームを一意に識別するための識別子である。
【０１６２】
列2503は、移行先仮想論理ボリュームを一意に識別するための識別子である。
列2504は、移行先仮想論理ボリュームが属するプールを一意に識別するための識別子である。
【０１６３】
列2505は、移行先仮想論理ボリュームが属するプールへのアクセス量、および、移行先仮想論理ボリュームが属するプールへの限界アクセス量である。
【０１６４】
列2506は、移行先仮想論理ボリュームが属するプールの容量、および、移行先仮想論理ボリュームが属するプールの空き容量である。例えば、「論理ボリューム #1」の移行先は、「仮想論理ボリューム #1」である。「仮想論理ボリューム#1」は、「プール #1」に属し、「プール #1」のアクセス量は300 IOPSである。また、「プール #1」の限界アクセス量は1,050 IOPSであり、「プール #1」の容量は、2,025 GBであり、「プール #1」の空き容量は625 GBである。
【０１６５】
ボタン2507は、パワー消費画面 2601を表示するボタンである。
ボタン2508は、論理ボリューム移行案に従い、論理ボリュームの移行を開始するボタンである。
【０１６６】
押しボタン2509は、ボリューム移行プラン作成プログラム 1103を終了する押しボタンである。
【０１６７】
＜消費電力表示画面例＞
図26は、本実施形態による消費電力表示画面(パワー消費画面 2601)例を示す図である。
図26において、テキスト表示ボックス2602は、移行前のストレージ装置の消費電力を表示する。
【０１６８】
テキスト表示ボックス2603は、移行後のストレージ装置の消費電力、消費電力削減量、消費電力削減率を表示する。
【０１６９】
列2604は、分電盤を一意に識別するための識別子である。
列2605は、分電盤が供給する電力である。例えば、「配電ボード #4」は、2,345 W供給している。
押しボタン2606は、パワー消費画面 2601を閉じる押しボタンである。
【０１７０】
＜論理ボリューム移行処理の概要＞
図27は、本実施形態による論理ボリュームを移行する処理の概要を説明するためのフローチャートである。
【０１７１】
i)ステップS2701では、ボリューム移行プラン作成プログラム 1103が、移行設定画面 2401をディスプレイ 708に表示する。管理者は、キーボード 706、または、マウス 707を介して入力する。管理者が、選択ボタン2402、または、選択ボタン2403を押し、テキスト入力ボックス2404に移行元ストレージ装置を入力し、テキスト入力ボックス2405に移行先ストレージ装置を入力し、押しボタン2406を押すと、処理はステップS2702に進む。
【０１７２】
ii)ステップS2702では、構成情報取得プログラム 1101が、移行元ストレージシステム102、および、移行先ストレージシステム 103から構成情報を取得し、構成情報 1104に記録する。
ステップS2703では、ボリューム移行プラン作成プログラム 1103が、論理ボリューム移行案を作成する。ステップS2703の詳細は図28を用いて後述する。
【０１７３】
iii)ステップS2704では、ボリューム移行プラン作成プログラム 1103が、移行プラン画面 2501をディスプレイ 708に表示する。列2502、列2503、列2504、列2505、及び列2506には、ステップS2703において計算した値が表示される。
管理者が押しボタン2507を押すと、パワー消費画面2601がディスプレイ 708に表示される。また、テキスト表示ボックス2602には、移行元ストレージ装置の消費電力が表示される。消費電力は、列1602が「移行元」である行の列1605のアクセス量、列1302が「移行元」である行の列1306のHDD種別、列1502が「移行元」である行の列1504のRAIDレベル、列1302が「移行元」である行の列1304の筐体の識別子から、表1701の消費電力計算式を用いて計算される。テキスト表示ボックス2603には、ステップS2703において計算した移行先ストレージ装置の消費電力、消費電力削減量、消費電力削減率が表示される。消費電力削減量は、移行先ストレージ装置の消費電力から移行元ストレージ装置の消費電力を引いた値である。また、消費電力削減率は、消費電力削減量を移行元ストレージ装置の消費電力で割った値である。列2604には、列1202が「移行先」である行の列1204が表示される。列2605には、処理2703において計算した、列2604の分電盤の消費電力が表示される。管理者が押しボタン2508を押すと処理はステップS2705に進む。
【０１７４】
iv)ステップS2705では、ボリューム移行プラン作成プログラム 1103が、表1901に従い、移行先ストレージシステム 103上に仮想論理ボリュームを作成する。仮想論理ボリューム作成後に、ボリューム移行プログラム1004が列2502の値と列2203の値が同一である行の列2202の外部論理ボリュームを列2503の仮想論理ボリュームに移行する。例えば、外部論理ボリューム #1_2304を仮想論理ボリューム #1_2307に移行する。
【０１７５】
v)ステップS2706では、ストレージシャットダウンプログラム 903が、移行元ストレージシステム102を停止させる。
【０１７６】
＜論理ボリューム移行案作成処理(ステップS2703)の詳細＞
図28は、本実施形態による論理ボリューム移行案作成処理(S2703)の詳細を説明するためのフローチャートである。
【０１７７】
i)ステップS2801では、ボリューム移行プラン作成プログラム 1103が、移行元論理ボリュームを1つ選択する。ステップS2701において管理者が選択ボタン2402を押した場合(消費電力軽減優先を選択した場合)には、表1601から列1602が「移行元」であり、移行先が決まっていない論理ボリュームであって、総容量(列1607)が1番大きい論理ボリュームが1つ選択される。ステップS2701において管理者が選択ボタン2403を押した場合(性能劣化回避優先を選択した場合)には、表1601から列1602が「移行元」であり、移行先が決まっていない論理ボリュームであって、負荷(列1605)が1番大きい論理ボリュームが1つ選択される。
【０１７８】
ii)ステップS2802では、ボリューム移行プラン作成プログラム 1103が、移行先プールを1つ選択する。ステップS2701において管理者が選択ボタン2402を押した場合(消費電力軽減優先を選択した場合)には、表1801から列1802が「移行先」であり、総容量(列1806)が1番大きいプールが1つ選択される。ステップS2701において管理者が選択ボタン2403を押した場合(性能優先を選択した場合)には、表1801から列1802が「移行先」であり、限界負荷(列1805)の値から負荷(列1804)の値を引いた値が1番大きいプールが1つ選択される。
【０１７９】
iii)ステップS2803では、ボリューム移行プラン作成プログラム 1103が、ステップS2801において選択した論理ボリュームをステップS2802において選択したプールに移行したときに、ステップS2802において選択したプールに属する論理ボリュームのアクセス量と容量の増分を計算する。なお、ステップS2803では、選択ボタン2402を選択した場合と選択ボタン2403を選択した場合で、同じ処理が実行される。
【０１８０】
アクセス量の増分とは、ステップS2801において選択した論理ボリュームのアクセス量を、ステップS2802において選択したプールに属する論理ボリュームの数で割った値である。ステップS2801において選択した論理ボリュームのアクセス量は、限界負荷(列1605)の値である。
【０１８１】
ステップS2802において選択したプールに属する論理ボリュームの数は、プールID(列1609)の値が、ステップS2802において選択したプールIDと同一となっている行の数から求まる。例えば、プールID#1の場合は3つである(図16参照)。
【０１８２】
容量の増分とは、ステップS2801において選択した論理ボリュームの容量をステップS2802において選択したプールに属する論理ボリュームの数で割った値である。ステップS2801において選択した論理ボリュームの容量は、列1607の総容量の値である。
【０１８３】
ステップS2802において選択したプールに属する論理ボリュームのそれぞれにおいて、列1605のアクセス量とアクセス量の増分を足した値が列1606の限界負荷以下で、容量の増分が列1608の空き容量以下で、筐体の消費電力が列1205(限界パワー消費)の値に列1206(移行限界レート)の値を掛けた値以下である場合は、ステップS2801において選択した論理ボリュームをステップS2802において選択したプールに移行可能とする。
【０１８４】
筐体の消費電力は、列1605のアクセス量、アクセス量の増分、列1306のHDD種別、列1504のRAIDレベル、列1304の筐体の識別子から、表1701の消費電力計算式を用いて計算する。移行可能である場合には、表1601、および、表1901が更新される。
【０１８５】
ステップS2802において選択したプールに属する論理ボリュームのそれぞれにおいて、ボリューム移行プラン作成プログラム 1103は、アクセス量の増分を列1605に加え、容量の増分を列1607から引き、表1601に記録する。また、ボリューム移行プラン作成プログラム 1103は、ステップS2801において選択した論理ボリュームの移行先となる仮想論理ボリュームの作成案を表1901に記録する。列1902は、新規作成する仮想論理ボリュームを一意に識別できる値とされる。また、列1903は、ステップS2802において選択したプールとされる。さらに、列1904は、ステップS2802において選択した論理ボリュームの容量とされる。最後に、列1905は、ステップS2802において選択した論理ボリュームの空き容量とされる。
【０１８６】
iv)ステップS2804では、ステップS2803において移行可能となった場合に、ボリューム移行プラン作成プログラム 1103は、処理をステップS2805に進ませる。移行可能とならなかった場合は、ボリューム移行プラン作成プログラム 1103は、処理をステップS2802に戻るようにする。ただし、このとき、ステップS2802では、すでに選択したプールを選択せずに処理を進める。
【０１８７】
v)ステップS2805では、全ての移行元論理ボリュームの移行先を決定した場合は、処理は終了すると判断される。全ての移行元論理ボリュームの移行先を決定していない場合は、処理はステップS2801に戻る。ただし、このとき、ステップS2801では、既に選択した論理ボリュームを選択せずに処理を進める。
【０１８８】
＜論理ボリューム移行後に消費電力を制御する処理＞
図29は、本実施形態による、論理ボリューム移行後に消費電力を上限値以下にする処理を説明するためのフローチャートである。
【０１８９】
ステップS2901では、構成情報取得プログラム 1101が、移行先ストレージシステム 103から構成情報を取得し、構成情報(格納部)1104に格納する。
【０１９０】
ステップS2902では、ボリューム移行プラン作成プログラム 1103が、移行先ストレージシステム 103の消費電力を筐体毎に計算する。列1602が「移行先」である行の列1605のアクセス量、列1302が「移行先」である行の列1306のHDD種別、列1502が「移行先」である行の列1504のRAIDレベル、列1302が「移行先」である行の列1304の筐体の識別子から、表1701の消費電力計算式を用いて消費電力を筐体毎に計算する。
【０１９１】
ステップS2903では、ボリューム移行プラン作成プログラム 1103が、筐体の消費電力が限界値を超過しているか判断する。ステップS2092において計算された消費電力が列1205の値に列1207の値を掛けた値(限界値)を超えている場合は、ボリューム移行プラン作成プログラム 1103は、消費電力が限界値を超過しそうであると判断し、処理はステップS2904に進む。そうでない場合は、処理はステップS2901に戻る。
【０１９２】
ステップS2904では、ボリューム移行プラン作成プログラム 1103は、論理ボリュームの移行案を作成する。ステップS2904の詳細については、図30を用いて後述する。
【０１９３】
ステップS2905では、ボリューム移行プラン作成プログラム 1103が、移行プラン画面 2501をディスプレイ 708に表示する。そして、列2502、列2503、列2504、列2505、及び列2506には、ステップS2904において計算した値が表示される。管理者がボタン2507(図25)を押すと、パワー消費画面 2601がディスプレイ 708に表示される。テキスト表示ボックス2602には、処理2902において計算した移行前のストレージ装置の消費電力の値が表示される。また、テキスト表示ボックス2603には、ステップS2904において計算された移行後のストレージ装置の消費電力、消費電力削減量、消費電力削減率の値がそれぞれ表示される。さらに、列2604には、列1204の情報が表示される。また、列2605には、ステップS2904において計算された列2604の分電盤の消費電力の値が表示される。そして、管理者がボタン2508(図25)を押すと、処理はステップS2906に進む。
【０１９４】
ステップS2906では、ボリューム移行プラン作成プログラム 1103が、移行先となる仮想論理ボリュームを作成する。仮想論理ボリューム作成後に、ボリューム移行プログラム 1004が、ステップS2904において作成された移行案に従い、仮想論理ボリュームにデータを移行する。
【０１９５】
＜論理ボリューム移行案作成処理(ステップS2904)の詳細＞
図30は、図29における論理ボリューム移行案作成処理(ステップS2904)の詳細を説明するためのフローチャートである。
【０１９６】
ステップS3001では、ボリューム移行プラン作成プログラム 1103は、ステップS2903において消費電力が閾値を超えた筐体から移行元論理ボリュームを1つ選択する。ステップS2701において管理者が選択ボタン2402(図24)を押した場合には、移行元論理ボリュームとして、ステップS2903において消費電力が閾値を超えた筐体上のプールに属する仮想論理ボリュームの中において容量が最大である論理ボリュームが1つ選択される。一方、ステップS2701において管理者が選択ボタン2403(図24)を押した場合には、移行元論理ボリュームとして、ステップS2903で消費電力が閾値を超えたと判断された筐体上のプールに属する仮想論理ボリュームのうち、アクセス量が最大である論理ボリュームが1つ選択される。
【０１９７】
ステップS3002では、ボリューム移行プラン作成プログラム 1103は、移行先プールを1つ選択する。ステップS2701において管理者が選択ボタン2402を押した場合には、消費電力が列1205の値に列1206の値を掛けた値を超えていない筐体上のプールの中で、容量が最大であるプールが1つ選択される。一方、ステップS2701において管理者が選択ボタン2403を押した場合には、消費電力が列1205の値に列1206の値を掛けた値を超えていない筐体上のプールの中で、限界アクセス量からアクセス量を引いた値(アクセス量の余裕度／空きアクセス量)が最大であるプールが1つ選択される。
【０１９８】
ステップS3003では、ボリューム移行プラン作成プログラム 1103は、ステップS2803と同様に、アクセス量の増分、容量の増分、消費電力を計算し、移行可能か判断する。
【０１９９】
ステップS3004では、ステップS3003において移行可能となった場合には、処理はステップS3005に進む。移行可能とならなかった場合は、処理はステップS3002に戻る。このとき、ステップS3002では、すでに選択したプールを選択せずに処理が実行される。
【０２００】
ステップS3005では、ステップS3003において計算した筐体毎の消費電力がそれぞれ列1205の値に列1206の値を掛けた値以下である場合は、処理は終了する。そうでない場合は、処理はステップS3001に戻る。このとき、ステップS3001では、既に選択した論理ボリュームを選択せずに処理が実行される。
【０２０１】
＜論理ボリューム移行後に設定変更が行われた場合の移行処理＞
図31は、本実施形態による、論理ボリューム移行後の設定変更時において論理ボリュームを移行する処理を説明するためのフローチャートである。ここで、設定変更とは、ステップS2701において、消費電力を削減することを優先するか、性能が劣化しないことを優先するか、管理者が設定した優先度を変更することをいうものとする。
【０２０２】
ステップS3101では、ボリューム移行プラン作成プログラム 1103が、移行設定画面 2401をディスプレイ 708に表示する。管理者は、キーボード706、または、マウス 707を介して情報を入力する。管理者が、選択ボタン2402、または、選択ボタン2403を押し、テキスト入力ボックス2404に移行元ストレージ装置を入力し、テキスト入力ボックス2405に移行先ストレージ装置を入力し、押しボタン2406を押すと、処理は、ステップS3102に進む。ここでは、テキスト入力ボックス2404、および、テキスト入力ボックス2405に入力する内容は、どちらも「移行先ストレージシステム」となる。
【０２０３】
ステップS3102では、構成情報取得プログラム 1101が、移行先ストレージシステム 103から構成情報を取得し、構成情報 1104に記録する。
【０２０４】
ステップS3103では、ボリューム移行プラン作成プログラム 1103が、論理ボリューム移行案を作成する。ステップS3103の処理の詳細については、図32を用いて後述する。
【０２０５】
ステップS3104では、ボリューム移行プラン作成プログラム 1103が、移行プラン画面 2501をディスプレイ 708に表示する。そして、列2502、列2503、列2504、列2505、及び列2506には、ステップS3103において計算した値が表示される。
【０２０６】
ステップS3105では、ボリューム移行プラン作成プログラム 1103が、移行先となる仮想論理ボリュームを作成する。そして、仮想論理ボリューム作成後に、ボリューム移行プログラム 1004が、ステップS3103において作成された移行案に従い、仮想論理ボリュームにデータを移行する。
【０２０７】
＜論理ボリューム移行案作成処理(ステップS3103)の詳細＞
図32は、図31における論理ボリューム移行案作成処理(ステップS23103)の詳細を説明するためのフローチャートである。
【０２０８】
ステップS3201では、ステップS3101において管理者が選択ボタン2402を押した場合(つまり、性能重視から消費電力重視に変更したとき)には、ボリューム移行プラン作成プログラム 1103は、空きアクセス量が最も小さいプールの中から、アクセス量が最も大きい論理ボリュームを1つ選択する。ここで、プールの空きアクセス量とは、列1805の値の限界アクセス量から列1804の値のアクセス量を引いた値である。一方、ステップS3101において管理者が選択ボタン2403を押した場合(つまり、消費電力重視から性能重視に変更したとき)には、ボリューム移行プラン作成プログラム1103は、空き容量が最も大きいプールの中から容量が最も大きい論理ボリュームを1つ選択する。
【０２０９】
ステップS3202では、ステップS3101において管理者が選択ボタン2402を押した場合に、ボリューム移行プラン作成プログラム 1103は、プールの空きアクセス量が最も大きいプールを選択する。一方、ステップS3101において管理者が選択ボタン2403を押した場合には、ボリューム移行プラン作成プログラム 1103は、プールの空き容量が最も小さいプールを選択する。
【０２１０】
ステップS3203では、ステップS3101において管理者が選択ボタン2402を押した場合、ボリューム移行プラン作成プログラム 1103は、ステップS3201において選択された論理ボリュームのアクセス量が、ステップS3202において計算された空きアクセス量からステップS3201において計算された空きアクセス量を引いた値を2で割った値以下である(つまり、移行後の論理ボリュームの容量バランスが偏っているか否かによって判断している)ときに、ステップS2803と同様に、アクセス量の増分、容量の増分、消費電力の値をそれぞれ計算し、移行可能であるか判断する。ステップS3201において選択された論理ボリュームのアクセス量が、ステップS3202において計算された空きアクセス量からステップS3201において計算された空きアクセス量を引いた値を2で割った値より大きい場合には、ボリューム移行プラン作成プログラム 1103は、移行不可能と判断する。一方、ステップS3101において管理者が選択ボタン2403を押した場合、ボリューム移行プラン作成プログラム 1103は、ステップS2803と同様に、アクセス量の増分、容量の増分、消費電力の値をそれぞれ計算し、移行可能か判断する。つまり、ステップS3202において選択されたプールに属する論理ボリュームのそれぞれにおいて、列1605のアクセス量とアクセス量の増分を足した値が列1606の限界負荷以下で、容量の増分が列1608の空き容量以下で、筐体の消費電力が列1205(限界パワー消費)の値に列1206(移行限界レート)の値を掛けた値以下である場合は、ステップS3201において選択された論理ボリュームをステップS3202において選択されたプールに移行可能とする。
【０２１１】
ステップS3204では、ステップS3203において移行可能と判断した場合には、処理はステップS3205に進む。そうでない場合は、処理はステップS3202に戻る。このとき、ステップS3202では、すでに選択したプールは選択されずに処理が実行される。
【０２１２】
ステップS3205では、ステップS3201において全ての論理ボリュームについて計算した場合、ボリューム移行プラン作成プログラム 1103は、次のプールについて計算し、全てのプールについて計算した場合は、処理を終了する。そうでない場合は、処理はステップS3201に戻る。このとき、ステップS3201では、既に選択した論理ボリュームは選択されずに処理が実行される。
【０２１３】
＜まとめ＞
以上の処理により、論理ボリュームの性能および容量を維持し、分電盤毎の消費電力の上限を超えないように、移行元ストレージシステム 102から移行先ストレージシステム103に論理ボリュームを移行できる。さらに、移行元ストレージシステム 102から移行先ストレージシステム103に論理ボリュームを移行するときに、管理者が消費電力を削減することを優先するか、性能が劣化しないことを優先するか選択することができる。さらに、移行元ストレージシステム 102から移行先ストレージシステム103に論理ボリュームを移行した後において、管理者が消費電力を削減することを優先するか、性能が劣化しないことを優先するかを変更することができる。さらに、移行元ストレージシステム 102から移行先ストレージシステム103に論理ボリュームを移行した後において、アクセス量の変化により分電盤毎に消費電力の上限を超えそうになった場合に、分電盤毎の消費電力の限界値を超えないように論理ボリュームを移行することができる。さらに、表1701を用いることによりRAIDレベル毎に消費電力を計算できるため、複数の筐体、および、ラックから構成されるプールにおいても消費電力を計算できる。さらに、表1701を用いることによりHDD種別、および、RAIDレベルが異なるRGから構成されるプールにおいても消費電力を計算できる。
【０２１４】
なお、本実施形態では、分電盤毎に消費電力の上限を定めていたが、分電盤に接続されている電流制限器(ブレーカー)や、ストレージ装置を接続するコンセント毎に消費電力の上限を定めてもよい。
【０２１５】
また、本実施形態では、ステップS2704の移行元ストレージ装置の消費電力の計算において、アクセス量を用いたが、アクセス量の代わりに列1308の稼働率を用いてもよい。
【０２１６】
アクセス量は、1日間のアクセス数を86,400(60×60×24)で割った値でもよく、1時間のアクセス数を3,600(60×60)で割った値でもよく、1秒間のアクセス数でもよい。
【０２１７】
また、稼働率は、1日間のアクセス時間を86,400(60×60×24)で割った値でもよく、1時間のアクセス時間を3,600(60×60)で割った値でもよく、1秒間のアクセス時間でもよい。アクセス時間とは、読み書き要求が着てから応答を返すまでの時間である。
【０２１８】
本実施形態では、ステップS2803におけるアクセスの増分を移行元論理ボリュームのアクセス量をプールに属する論理ボリュームの数で割った値とし、容量の増分を移行元論理ボリュームの容量をプールに属する論理ボリュームの数で割った値とした。しかし、仮想論理ボリューム制御プログラム1002が表2001の仮想論理ボリュームの領域と論理ボリュームの領域の割り当て方に従うようにしてもよい。例えば、仮想論理ボリュームへの割り当てられていない領域への書き込み要求が来たときに1つの論理ボリュームの領域を割り当て、その論理ボリュームの空き容量がなくなったら次の論理ボリュームに割り当てる方式であるときには、移行元論理ボリュームのアクセス量をプールに属する論理ボリュームの数で割らずに、1つの論理ボリュームに割り当てられるとして計算する。
【０２１９】
さらに、本実施形態では、ステップS2705の仮想論理ボリューム作成後に、表2201を参照したが、ボリューム移行プログラム 902が列2502の論理ボリュームを列2503の仮想論理ボリュームに移行してもよい。
【０２２０】
本実施形態では、ステップS2703、S2904、S3103において論理ボリューム移行案作成の一例を示したが、アクセス量、容量、消費電力を考慮した論理ボリューム移行案作成方式であれば他の方式でもよい。
【０２２１】
本実施形態では、移行元ストレージ装置に格納された全ての論理ボリュームを移行先ストレージ装置に移行する例を示したが、移行元ストレージ装置に格納された全ての論理ボリュームではなく、一部の論理ボリュームを移行先ストレージ装置に移行してもよい。このときの処理は、ステップS2804において、ステップS2801で選択された論理ボリュームがステップS2802で選択された全てのプールに移行できない場合は、ステップS2805に進むこととする。
【０２２２】
なお、本発明は、実施形態の機能を実現するソフトウェアのプログラムコードによっても実現できる。この場合、プログラムコードを記録した記憶媒体をシステム或は装置に提供し、そのシステム或は装置のコンピュータ(又はCPUやMPU)が記憶媒体に格納されたプログラムコードを読み出す。この場合、記憶媒体から読み出されたプログラムコード自体が前述した実施形態の機能を実現することになり、そのプログラムコード自体、及びそれを記憶した記憶媒体は本発明を構成することになる。このようなプログラムコードを供給するための記憶媒体としては、例えば、フレキシブルディスク、CD-ROM、DVD-ROM、ハードディスク、光ディスク、光磁気ディスク、CD-R、磁気テープ、不揮発性のメモリカード、ROMなどが用いられる。
【０２２３】
また、プログラムコードの指示に基づき、コンピュータ上で稼動しているOS(オペレーティングシステム)などが実際の処理の一部又は全部を行い、その処理によって前述した実施の形態の機能が実現されるようにしてもよい。さらに、記憶媒体から読み出されたプログラムコードが、コンピュータ上のメモリに書きこまれた後、そのプログラムコードの指示に基づき、コンピュータのCPUなどが実際の処理の一部又は全部を行い、その処理によって前述した実施の形態の機能が実現されるようにしてもよい。
【０２２４】
また、実施の形態の機能を実現するソフトウェアのプログラムコードを、ネットワークを介して配信することにより、それをシステム又は装置のハードディスクやメモリ等の記憶手段又はCD-RW、CD-R等の記憶媒体に格納し、使用時にそのシステム又は装置のコンピュータ(又はCPUやMPU)が当該記憶手段や当該記憶媒体に格納されたプログラムコードを読み出して実行するようにしても良い。
【符号の説明】
【０２２５】
101  管理計算機
102  移行元ストレージシステム
103  移行先ストレージシステム
104  ホスト計算機
105  管理ネットワーク
106  ストレージエリアネットワーク
201  ラック
202  ディスク筐体
203  コントロール筐体
204  配電ボード
301  仮想コントロール筐体
401  CPU
402  メインメモリ
403  バス
404  インタフェース #1
405  インタフェース #2
406  インタフェース #3
407  HDD
408  電源
501  メインメモリ
701  CPU
702  メインメモリ
703  バス
704  インタフェース
705  HDD
706  キーボード
707  マウス
708  ディスプレイ
【図１】
0005274665.tif 000002
【図２】
0005274665.tif 000003
【図３】
0005274665.tif 000004
【図４】
0005274665.tif 000005
【図５】
0005274665.tif 000006
【図６】
0005274665.tif 000007
【図７】
0005274665.tif 000008
【図８】
0005274665.tif 000009
【図９】
0005274665.tif 000010
【図１０】
0005274665.tif 000011
【図１１】
0005274665.tif 000012
【図１２】
0005274665.tif 000013
【図１３】
0005274665.tif 000014
【図１４】
0005274665.tif 000015
【図１５】
0005274665.tif 000016
【図１６】
0005274665.tif 000017
【図１７】
0005274665.tif 000018
【図１８】
0005274665.tif 000019
【図１９】
0005274665.tif 000020
【図２０】
0005274665.tif 000021
【図２１】
0005274665.tif 000022
【図２２】
0005274665.tif 000023
【図２３】
0005274665.tif 000024
【図２４】
0005274665.tif 000025
【図２５】
0005274665.tif 000026
【図２６】
0005274665.tif 000027
【図２７】
0005274665.tif 000028
【図２８】
0005274665.tif 000029
【図２９】
0005274665.tif 000030
【図３０】
0005274665.tif 000031
【図３１】
0005274665.tif 000032
【図３２】
0005274665.tif 000033