説明

ストレージシステム

【課題】仮想マシンに対してより効率的な仮想ディスクの割り当てを行なうことができるストレージシステムを提供する。
【解決手段】HypervisorのI/O性能計測部は、仮想ディスクに対するI/O処理要求のレイテンシを計測し、この平均値を管理サーバのI/O性能情報収集部に通知する。配備先決定部は、仮想ディスクが配備されているストレージ装置について、このレイテンシの平均値が最も小さいストレージ装置を、仮想ディスクを割り当てるストレージ装置として設定する。

【発明の詳細な説明】
【技術分野】
【0001】
以下の実施形態は、ストレージシステムに関する。
【背景技術】
【0002】
近年、記憶装置の大容量化も進み、ユーザからネットワークを介して受け取るデータを、サーバの保有する記憶装置に格納するサービスが検討されている。このサービスはクラウドサービスと呼ばれる。このような、大容量の記憶装置を構成する場合、実ストレージを多数接続し、計算機でストレージの管理を効率よくすることが必要となる。その場合には、計算機にはストレージを管理する仮想マシンを複数設定し、実ストレージにも仮想ストレージを設定して、より柔軟な管理ができるようにする。
【0003】
図1は、仮想マシン12が設定される計算機のブロック構成を示す図である。
仮想マシンを複数搭載する計算機9には、実際の処理を実行するハードウェア10が存在する。ハードウェア10には、ハードウェア資源を使用する仮想マシン12が搭載される。ハードウェア10上には、仮想マシン12の動作を制御する仮想計算機モニタ11が存在する。そして、計算機9には、ストレージ装置14が接続される。
【0004】
図2は、ストレージ装置14のブロック構成図である。
ストレージ装置14は、仮想マシン12が動作する計算機9が接続される。ストレージ装置15は、実ストレージの集合体であり、複数の実ストレージには、仮想ディスク(VDisk)17が設定され、複数の仮想ディスク17をまとめて仮想ストレージ(VStorage)18を構成する。
【0005】
仮想計算機モニタ(VMM:Virtual Machine Monitor)11は、ハイパーバイザ(Hypervisor) とも呼ばれる。これは、VMシステム全体を制御するレイヤのプログラムであり、仮想マシン12のディスパッチを行う。また、各仮想マシン12が実行する特権命令(書き込み命令や読み出し命令)のエミュレーション、CPUに関するハードウェア制御等を行う。Hypervisorは、VMシステムのboot時に最初に動作し、仮想マシン12を起動する。
【0006】
仮想マシン12は、通常のOSの動作を行なう仮想マシンである。ストレージ装置への指示は、仮想計算機モニタ11を介して実行されるため、実の入出力インタフェースは持たず、仮想的な入出力インタフェースのみが割当てられている。
仮想ディスク(VDisk)17は、仮想マシン12が使用するディスクである。
【0007】
図3は、仮想ストレージのイメージ図である。
実ストレージとして、500GBのディスクが3つある場合、実ストレージに直接アクセスする場合には、それぞれ500GBずつの別のディスクとしてアクセスしなければならない。一方、これら3つのディスクを1つの仮想ストレージとして設定することにより、1500GBの1つのディスクが存在するかのようにアクセスが可能になる。このように、仮想ストレージを設定することにより、実ストレージを適切にグループ化し、用途に適したディスクシステムを構築することができる。
【0008】
従来技術には、I/Oモニタリング集計を簡易化するものや、仮想マシンの環境によりリソースを共用するものや、実行系ノードに待機系ノードを設けて切り替えられるようにするものがある。更には、複数のサーバ及び仮想マシンで動作している、ある1つのアプリケーションの性能を監視し、アプリケーションが定められた性能を得ていない場合には空きのある他のサーバにマイグレーションするものがある。
【先行技術文献】
【特許文献】
【0009】
【特許文献1】特開平5−257720号公報
【特許文献2】特開2009−265778号公報
【特許文献3】特開2007−207219号公報
【特許文献4】特開2006−244481号公報
【発明の概要】
【発明が解決しようとする課題】
【0010】
図4は、従来の問題点を説明する図である。
仮想マシン作成時に割り当てる仮想ディスクは、空き容量が多い仮想ストレージに作成するのが一般的である。これは、「空き容量が多い=利用者が少ない=アクセス集中が少ない=レスポンスが良い」という理由のためである。
【0011】
しかし、計算機9に複数のストレージ装置が接続されている場合、計算機9と各々のストレージ装置との距離はまちまちであり、必ずしも、「空き容量が多い=レスポンスが良い」とは限らない。すなわち、計算機と各々のストレージ装置との間の距離が大きいと、間にネットワークを接続するスイッチなどが介在し、スイッチの動作遅延などにより、レスポンスが悪くなることがある。更に、ストレージ装置自身の動作速度も、複数のストレージ装置を実装する場合、まちまちになる可能性がある。
【0012】
そのため、空き容量が多い仮想ストレージ上に作成した仮想ディスクを仮想マシン12に割り当てる従来手法では、仮想マシン12からのディスクアクセスの性能を低下させてしまう可能性があった。
【0013】
すなわち、新たに仮想マシンを配備する場合、計算機9を管理するする管理サーバ15は、仮想ディスクの空き容量のみを参照して割当てる。ユーザが指定する場合も判断材料は仮想ディスクの容量しかない。その結果、レイテンシが遅いストレージ装置に対して仮想ディスクを割当ててしまい、仮想マシンの性能を劣化させてしまう可能性がある。
【0014】
1つの側面によれば、本発明は、より効率的な仮想ディスクの割り当てを行なうことができるストレージシステムを提供することを目的とする。
【課題を解決するための手段】
【0015】
以下の実施形態の一側面におけるストレージシステムは、仮想ディスクが配備される複数のストレージ装置と、仮想マシンを起動することによって仮想ディスクの制御を行い、入出力処理要求を仮想ディスクに発行し、該入出力処理要求のレイテンシを計測する複数の計算機と、該計算機が計測したレイテンシに基づいて、レイテンシの平均値が最も小さい仮想マシンと仮想ディスクの組を該計算機と該ストレージ装置に配備する管理サーバとを備える。
【発明の効果】
【0016】
以下の実施形態によれば、より効率的な仮想ディスクの割り当てを行なうことができるストレージシステムを提供することができる。
【図面の簡単な説明】
【0017】
【図1】仮想マシンが設定される計算機のブロック構成を示す図である。
【図2】ストレージ装置のブロック構成図である。
【図3】仮想ストレージのイメージ図である。
【図4】従来の問題点を説明する図である。
【図5】本実施形態のブロック構成図である。
【図6】本実施形態で用いられるデータ構造を説明する図(その1)である。
【図7】本実施形態で用いられるデータ構造を説明する図(その2)である。
【図8】本実施形態で用いられるデータ構造を説明する図(その3)である。
【図9】本実施形態で用いられるデータ構造を説明する図(その4)である。
【図10】本実施形態で用いられるデータ構造を説明する図(その5)である。
【図11】本実施形態で用いられるデータ構造を説明する図(その6)である。
【図12】マイグレーションを行なう場合に使用されるデータ構造を示す図である。
【図13】マイグレーションを行なう場合の処理のフローチャート(その1)である。
【図14】マイグレーションを行なう場合の処理のフローチャート(その2)である。
【図15】仮想ディスクのマイグレーションのイメージを説明する図である。
【図16】本実施形態の処理をプログラムで実現する場合の、コンピュータのハードウェア構成を説明する図である。
【発明を実施するための形態】
【0018】
本実施形態では、仮想マシンからの仮想ディスクへのI/O処理要求の応答時間(レイテンシ)をHypervisor で記録する。Hypervisorは、記録したレイテンシの情報を管理サーバに通知する。管理サーバは、各Hypervisor から報告される情報から、Hypervisorとストレージ装置間のレイテンシの平均値を算出する。仮想マシン−仮想ディスクの情報を、Hypervisor−ストレージ装置(StorageUnit)の情報に読み替える。管理サーバは、読み替えた収集データなどを仮想マシン配備時の判断のために使用する。すなわち、レイテンシの小さい(仮想マシン、ストレージ装置)の組合せを採用する。
【0019】
本実施形態は、仮想マシンが実行時に必要とするディスクアクセスを使ってレイテンシを計測するので、システムの動的な構成変更(サーバやストレージ装置の追加など)に対応でき、レイテンシ計測のための余計な負荷をネットワークに与えないという効果がある。
【0020】
すなわち、レイテンシの小さいストレージ装置に対して仮想ディスクを作成できるので、仮想マシンのI/O処理性能を向上させることができる。
また、新たに仮想マシンやストレージ装置の追加による構成の変更が行われても、動的に情報を収集するので、常に最適な仮想ストレージを選択することができる。
【0021】
仮想マシンが多数のストレージ装置に接続されているような大規模環境でも、通常のI/Oアクセスを監視するだけなので、性能データ収集用の余分なトラフィックが発生しない。すなわち、実際に必要なアクセスでレイテンシを 計測するので、ネットワークに余計な負荷を与えない 。
【0022】
情報が十分に収集できない環境構築時に配備された仮想マシンは、かならずしも最適な配置にならないが、情報が集まることで新規に配備を行う場合は常に最適な位置に仮想マシンを配置できるようになる。
【0023】
図5は、本実施形態のブロック構成図である。
資源管理装置(管理サーバ)20は、ストレージ装置31、仮想マシン(計算機あるいはサーバ)28とネットワーク32、33で接続されている。ストレージリソース管理部26は、ストレージ装置31の実ディスクの数や容量を監視しており、これらの情報をデータベース22に格納する。サーバリソース管理部27は、仮想マシン28の動作状況などをHypervisorを介して収集する。収集した情報は、データベース22に格納する。
【0024】
I/O性能情報収集部21は、Hypervisor34に設けられているI/O性能計測部30が計測する、I/O処理のレイテンシの情報を収集し、データベース22に格納する。VMゲスト配備部23は、配備先決定部24と配備実行部25を含む。配備先決定部24は、データベース22に格納された情報から、仮想ディスクをどのVMゲストに配備するかを決定する。配備実行部25は、配備先決定部24によって決定された配備先に従って、サーバリソースとストレージリソースの配備を行なう。
【0025】
図6〜図11は、本実施形態で用いられるデータ構造を説明する図である。
図6は、図7の構成において得られるレイテンシに関するデータを示す。図7において、Hypervisor1、2によって監視される仮想マシン(VG1〜VG4)は、それぞれ、ネットワークを介して仮想ディスク(VD1〜VD4)にアクセスする。このときのレイテンシを、アクセスがあるごとに記録したものが、図6の(1)のテーブルである。Hypervisorごとに、どの仮想マシンがどの仮想ディスクにアクセスしたときに、どの程度のレイテンシがあったかが記録される。図6の(2)のテーブルは、図6の(1)のテーブルから得られるレイテンシの情報から、仮想マシンが仮想ディスクにアクセスしたときに発生したレイテンシの平均値を、仮想マシンと仮想ディスクとの組について記録したものである。このテーブルは、管理サーバのデータベースに格納される。
【0026】
図8は、図7の構成において、管理サーバのデータベースに格納される他の管理テーブルを示す。図8の(1)は、仮想マシン管理テーブルである。このテーブルには、各仮想マシンがどのHypervisorを経由して、どの仮想ディスクと接続されているかが登録されている。図8の(2)は、仮想ストレージ管理テーブルである。このテーブルには、各仮想ストレージについて、容量はいくらであるか、どの程度割り当てが行なわれているか、空き容量はいくらであるか、割り当てられている実のストレージ装置はどれであるかが登録されている。図8の(3)は、仮想ディスクテーブルである。このテーブルには、仮想ディスクの容量と、割り当てられている実のストレージ装置が登録されている。
【0027】
図9のテーブルは、管理サーバに格納されるもので、図6の(2)のテーブルと、図8の(1)〜(3)のテーブルから生成される。図9のテーブルには、各VMホストと各ストレージ装置の組み合わせについて、レイテンシの平均値と、仮想マシンからストレージ装置に対してアクセス可能か否かとを登録する。例えば、VH1−SU2のレイテンシの平均値を求める場合を考えると、図8の(1)より、VH1には、VD1、2、3が配備されていることが分かる。更に、VH1には、VG1、2が配備されていることが分かる。図8の(3)より、VD1はVS1、VD2はVS2、VD3はVS2と対応しており、さらに図3の(2)よりVS1は、SU1、VS2はSU2、VS3はSU2に対応していることがわかる。よって、VD1−SU1、VD2−SU2、VD3−SU3の対応が分かり、図6の(2)よりVG1−VD3の組と、VG2−VD2の組を求めることでVH1−SU2の平均値がわかる。よって、図6(2)よりVG1−VD3の組と、VG2−VD2の組のレイテンシの平均値平均値を平均したものが、図9のVH1−SU2の欄に記載されるレイテンシの平均値である。レイテンシにデータが登録されていない場合は、まだ測定ができていないストレージ装置であることを示す。また、accessibleがtureの場合は、Hypervisorからストレージ装置に対し、ディスクの割り当てが可能な場合を示し、これがfalseの場合には、ディスクの割り当てが不可能であることを示す。図7の構成を見ると、ストレージ装置SU3はシステムに含まれているが、VH1、VH2からはストレージ装置SU3に結線がされていないので、アクセスすることは不可能である。したがって、図9のテーブルで、ストレージ装置SU3の列においては、accessibleがfalseとなっている。
【0028】
図10は、本実施形態の通常時の処理のフローチャートである。
Hypervisorは、常に、仮想マシンが配備されているか否かを監視しており、ステップS10において、配備されている仮想マシンがあるか否かを判断する。ステップS10の判断がNoの場合には、ステップS14に進む。ステップS10の判断がYesの場合には、ステップS11において、仮想マシンが仮想ディスク(VDisk)に対して、I/O処理要求を発行したか否かを判断する。ステップS11の判断がNoの場合には、ステップS14に進む。
【0029】
ステップS11の判断がYesの場合には、I/O性能計測部において、発行されたI/O処理要求のレスポンスを受け取るまでの時間を計測し、図6の(1)のテーブルにレスポンス時間をレイテンシとして蓄積する。ステップS13では、I/O性能計測部は、前回管理サーバに平均レスポンス時間を通知したときから一定時間経過したか否かを判断する。この一定時間は、システムの設計者が、I/O処理要求の発行頻度などを参考に適宜定める。ステップS13の判断がNoの場合には、ステップS14に進む。ステップS13の判断がYesの場合には、ステップS15に進む。
【0030】
ステップS14では、Hypervisorは、仮想マシンの配備状況を監視する動作に戻る。この状態では、Hypervisorは、仮想マシンが新たに配備されたり、削除されたりすることを監視している。このとき、新たに仮想マシンの配備が検出された場合には、ステップS10に戻って処理を行う。ステップS15においては、I/O性能計測部は、図6の(1)のテーブルのレイテンシを平均し、管理サーバに通知すると共に、図6の(1)のテーブルのレイテンシの情報を消去して、テーブルを初期化する。
【0031】
管理サーバのI/O性能情報収集部は、データベースを参照し、図6の(2)のテーブルと、図9のテーブルを、Hypervisorから受け取ったレイテンシの平均値の情報で更新する。
【0032】
図11は、新規仮想マシン配備時の処理のフローチャートである。
ステップS20において、新規に仮想マシンを作成する。ステップS21において、配備先決定部は、既存の方式により、仮想マシンを配備する計算機(Hypervisor)を決定する。この既存の方法とは、CPUリソースの使用量が少ない計算機(Hypervisor)を選択するなどの方法を用いる。ステップS22において、配備先決定部は、図9のテーブルを参照し、仮想マシンを配備するHypervisorに、accessible=true、latency:-となっているストレージ装置(VStorageUnit)が1つ以上あるか否かを判断する。
【0033】
ステップS22の判断がYesの場合には、ステップS23において、配備先決定部は、accessible=trueで、かつ、latency:-となっているストレージ装置の中から既存の方式で、仮想マシンを配備するストレージ装置を決定する。既存の方式とは、ディスク容量の空きが多いストレージ装置を選択するというものである。ステップS22の判断がNoの場合には、ステップS24において、配備先決定部は、図9のテーブルを参照し、accessible=trueで、かつ、latencyが最も小さいストレージ装置を選択する。図9のテーブルの例では、VH1に仮想マシンを配備する場合、VH1−SU1のlatency=15msec、VH1−SU2のlatency=35msecとなるので、配備先としてSU1を選択する。
【0034】
ステップS25においては、ストレージリソース管理部は、選択したストレージ装置に仮想マシンが配備可能であるか否かを判断する。配備が可能か否かは、選択したストレージ装置に仮想マシンが必要とするストレージ容量が確保できるかを確認することによって行なう。ステップS25の判断がNoの場合には、ステップS26で、配備先決定部は、図9のテーブルを参照し、次にaccessible=trueで、latencyが小さい別のストレージ装置を選択し、ステップS25に戻る。ステップS25の判断がYesの場合には、ステップS27において、ストレージリソース管理部は、データベースを参照して、図8の(1)〜(3)のテーブルにおいて、該当するストレージ装置のVStorageに、仮想ディスクを割り当てて、テーブルを更新する。
【0035】
上記実施形態では、性能テーブルが未完成の状態で配備されたVMゲスト-VDiskの組は最適な配置とならない可能性がある。
そこで、図9のテーブルが完成後、定期的に図6の(2)のテーブルの値を監視し、最もレイテンシの大きい仮想マシン-仮想ディスク(VDisk)の組み合わせに対して、レイテンシが小さくなるようにVMのマイグレーション or VDiskのマイグレーションを行う。
【0036】
本実施形態では、仮想ディスクのマイグレーションのマイグレーション先を決定し、マイグレーションの処理自体は、既存の方法を使用する。
以上の構成によれば、配備済みの仮想マシンに対しても、最も応答性能が早いVDiskを割当てることができる。
【0037】
図12は、マイグレーションを行なう場合に使用されるデータ構造を示す図である。
図12のデータ構造は、図6の(2)のテーブルに対応するものであり、そのときのシステムの構成は、図7に示すとおりである。
【0038】
図12に示されるように、図6の(2)のテーブルに対して、I/O処理要求の頻度(frequency of I/O request、I/O頻度)を追加する。I/O頻度は、例えば、1分間に仮想マシンからストレージ装置へ発行された入出力要求(I/O処理要求)の回数である。ここでは、I/O頻度の平均値は、20回/minuteとなっている。管理サーバでは、I/O頻度が閾値以上の組み合わせをマイグレーション実施の候補とする。閾値は、例えば、I/O頻度の平均値の60%などであり、システムの設計者が管理サーバに設定する。
【0039】
図13及び図14は、マイグレーションを行なう場合の処理のフローチャートである。
図13は、仮想マシンをマイグレーションをする場合の、図12のテーブルを参照した処理の流れを示し、図14は、仮想ディスクのマイグレーションをする場合の、図12のテーブルを参照した処理の流れを示す。
【0040】
図13において、ステップS30では、配備先決定部は、定期的に図12のテーブルを参照して、最もレイテンシが大きい仮想マシン−仮想ディスクの組を探す。ステップS31において、I/O頻度が閾値(例えば、平均値の60%)以上か否かを判断する。図12のテーブルの例では、I/O頻度が閾値12以上で最もレイテンシの大きい組がVG2−VD2の組であり、35msecとなっている。ステップS31の判断がNoの場合には、ステップS36に進み、マイグレーションは行なわず、次にレイテンシが大きい組を検索し、ステップS31に戻る。
【0041】
ステップS31の判断がYesの場合には、ステップS32において、配備先決定部は、図9のテーブルを参照して、マイグレーションが可能なマイグレーション先で、一番レイテンシが小さくなるHypervisorへ仮想マシンのマイグレーションは可能か否かを判断する。例えば、マイグレーション先でCPUの空きがあるかどうかのチェックを行なう。図8の(1)〜(3)のテーブルによると、VG2−VD2は、VH1−SU2の組み合わせに配備されているものと分かる。すなわち、図8の(1)より、VG2は、VH1に配備されていることが分かり、接続されているのはVD2であることが分かる。また、図8の(3)より、VD2は、VS2に配備されていることが分かり、図8の(2)より、VS2は、SU2に配備されていることが分かる。したがって、VG2−VD2は、VH1−SU2の組み合わせに配備されていることが分かる。VG2のマイグレーション候補(VH2)を参照すると、VH2−SU2の組み合わせに配備されていることが分かり、レイテンシは15msecである。したがって、マイグレーションした結果は、現状の35msecより小さくなるので、仮想マシンのマイグレーションが可能となる。すなわち、VG2は、現在VH1に存在するが、これをマイグレーションすると、VH2に移動することとなる。すると、VG2は、VH2−SU2の組に配備することとなる。そして、図9を参照すると、VH2−SU2の組のレイテンシの平均値は、15msecであり、accessible:trueであるのでマイグレーション可能となる。
【0042】
ステップS33において、サーバリソース管理部は、該当する仮想マシンがマイグレーション可能であるか否かを判断する。図13の場合は、可能と判断されたものとする。ステップS33の判断がNoの場合には、ステップS34において、配備先決定部が、図9のテーブルを参照し、マイグレーション可能なマイグレーション先で、一番レイテンシが小さくなるストレージ装置へ仮想ディスクのマイグレーションが可能か否かを判断する。例えば、ディスクに空きがあるか否かをチェックする。ステップS35において、ストレージリソース管理部は、仮想ディスクのマイグレーションが可能か否かを判断し、Noの場合にはステップS36に進み、Yesの場合にはステップS37に進む。図13の場合には、ステップS33がYesであり、仮想マシンのマイグレーションを行なう場合であるので、ステップS33からステップS37に進む。
【0043】
ステップS37では、配備実行部は、対象の仮想マシンあるいは仮想ディスクのマイグレーションを行なう。ここでは、VG2のVH2へのマイグレーションを行なう。ステップS38では、管理サーバのデータベースにおいて、図12のテーブルからマイグレーションを行なった組のレイテンシの値を削除し、図8の(1)〜(3)のテーブルを更新して処理を終了する。
【0044】
図14において、ステップS30では、配備先決定部は、定期的に図12のテーブルを参照して、最もレイテンシが大きい仮想マシン−仮想ディスクの組を探す。ステップS31において、I/O頻度が閾値(例えば、平均値の60%)以上か否かを判断する。図12のテーブルの例では、I/O頻度が閾値12以上で最もレイテンシの大きい組がVG2−VD2の組であり、35msecとなっている。ステップS31の判断がNoの場合には、ステップS36に進み、マイグレーションは行なわず、次にレイテンシが大きい組を検索し、ステップS31に戻る。
【0045】
ステップS31の判断がYesの場合には、ステップS32において、配備先決定部は、図9のテーブルを参照して、マイグレーションが可能なマイグレーション先で、一番レイテンシが小さくなるHypervisorへ仮想マシンのマイグレーションは可能か否かを判断する。
【0046】
ステップS33において、サーバリソース管理部は、該当する仮想マシンがマイグレーション可能であるか否かを判断する。先に仮想マシンがマイグレーション可能か否かを判断するのは、仮想ディスクのマイグレーションの場合には、ディスクのコピーが必要でコストがかかるが、仮想マシンのマイグレーションの場合には、メモリのコピーのみでコストが少ないからである。図14の場合には、可能な仮想マシンのマイグレーションは終わっている場合を想定しており、仮想ディスクのマイグレーションを行なう場合であるので、ステップS34に進む。ステップS34において、配備先決定部が、図9のテーブルを参照し、マイグレーション可能なマイグレーション先で、一番レイテンシが小さくなるストレージ装置へ仮想ディスクのマイグレーションが可能か否かを判断する。例えば、ディスクに空きがあるか否かをチェックする。VG2−VD2は、VH1−SU2の組に配備されることが分かる。すなわち、図8の(1)より、VG2はVH1に配備されていることが分かる。また、図8の(3)より、VD2は、VS2に配備されていることが分かる。更に、図8の(2)より、VS2は、SU2に配備されていることが分かる。したがって、VG2−VD2は、VH1−SU2の組に配備されていることが分かる。したがって、VD2をマイグレーションすると、VD2は、SU2からSU1に移動することとなる(SU3は、結線されていないのでマイグレーション先とできない)。したがって、VG2−VD2の組は、マイグレーション後VH1−SU1の組に配備されることとなる。VD2のマイグレーション候補(SU1)を参照すると、VH1−SU1の組み合わせのレイテンシは、図9のテーブルより、10msecで、現状の35msecより小さくなることが分かる。ステップS35において、ストレージリソース管理部は、仮想ディスクのマイグレーションが可能か否かを判断し、Noの場合にはステップS36に進み、Yesの場合にはステップS37に進む。図14の場合、仮想ディスクのマイグレーションは可能であるので、ステップS37に進む。
【0047】
ステップS37では、配備実行部は、対象の仮想マシンあるいは仮想ディスクのマイグレーションを行なう。ここでは、VD2のSU1へのマイグレーションを行なう。ステップS38では、管理サーバのデータベースにおいて、図12のテーブルからマイグレーションを行なった組のレイテンシの値を削除し、図8の(1)〜(3)のテーブルを更新して処理を終了する。
【0048】
図15は、仮想ディスクのマイグレーションのイメージを説明する図である。
最初、図15の(1)のように、Hypervisor1(VH1)に、仮想ディスクVD1〜VD3が配備され、Hypervisor2 (VH2)に、仮想ディスクVD3が配備されている場合を考える。仮想ディスクVD1、VD2は、ストレージ装置SU1に割り当てられ、仮想ストレージVS1を構成している。仮想ディスクVD3は、ストレージ装置SU2に割り当てられ、仮想ストレージVS1を構成している。いま、仮想ディスクVD2をマイグレーションする場合を考える。すると、図15の(2)に示されるように、仮想ディスクVD2は、ストレージ装置SU2に移動され、仮想ストレージVS2を構成するものとなる。このように、仮想ディスクは、ストレージ装置のうち、レイテンシの良いものを選んで、任意に設定可能である。
【0049】
図16は、本実施形態の処理をプログラムで実現する場合の、コンピュータのハードウェア構成を説明する図である。
CPU40には、バス50を介して、ROM41、RAM42、通信インタフェース43、記憶装置46、媒体読み取り装置47、及び、入出力装置49が接続される。CPU40は、ROM41に格納されているBI/OS等の基本プログラムを読み込んで実行し、コンピュータ39の基本動作を実現させる。
【0050】
また、CPU40は、ハードディスクなどの記憶装置46に格納された、本実施形態の処理を行うプログラムをRAM42に展開して実行し、本実施形態の処理を実現する。本実施形態の処理を行うプログラムは、記憶装置46に格納されている必要は必ずしも無く、CD−ROM、DVD、Blu−ray、ICメモリ、フレキシブルディスクなどの可搬記録媒体48に格納されていても良い。この場合には、媒体読み取り装置47を用いて、可搬記録媒体48に格納されたプログラムを読み込み、RAM42に展開して、CPU40が実行する。
【0051】
入出力装置49は、キーボード、タブレット、マウス、ディスプレイ、プリンタなどの、コンピュータ39を操作するユーザが入力を行なったり、処理結果の出力を行ったりするものである。
【0052】
通信インタフェース43は、ネットワーク44を介して、情報提供者45の有するデータベース等にアクセスし、プログラム等をコンピュータ39にダウンロードするなどするものである。ダウンロードされたプログラムは、記憶装置46や可搬記録媒体48に格納したり、直接RAM42に展開してCPU40が実行したりする。また、プログラムの実行は、情報提供者45の有するコンピュータで行い、コンピュータ39は、入出力操作だけ行うようにしてもよい。
【符号の説明】
【0053】
9 計算機
10 ハードウェア
11 仮想計算機モニタ(Hypervisor)
12 VMホスト
13−1、13−2 VMゲスト
14、31 ストレージ装置
15 管理サーバ
16 実ストレージ
17 仮想ディスク
18 仮想ストレージ
20 資源仮装置(管理サーバ)
21 I/O性能情報収集部
22 データベース
23 VMゲスト配備部
24 配備先決定部
25 配備実行部
26 ストレージリソース管理部
27 サーバリソース管理部
28 VMホスト
29−1、29−2 VMゲスト
30 I/O性能計測部
32、33 ネットワーク
34 ハイパーバイザ
39 コンピュータ
40 CPU
41 ROM
42 RAM
43 通信インタフェース
44 ネットワーク
45 情報提供者
46 記憶装置
47 媒体読み取り装置
48 可搬記録媒体
49 入出力装置
50 バス

【特許請求の範囲】
【請求項1】
仮想ディスクが配備される複数のストレージ装置と、
仮想マシンを起動し、該仮想マシンが仮想ディスクの制御を行うために発行する入出力処理要求のレイテンシを計測する複数の計算機と、
該計算機が計測したレイテンシに基づいて、レイテンシの平均値が最も小さい仮想マシンと仮想ディスクの組を該計算機と該ストレージ装置に配備する管理サーバと、
を備えることを特徴とするストレージシステム。
【請求項2】
前記レイテンシの計測が完了する前においては、前記ストレージ装置の空き容量に基づいて、前記仮想マシンと前記仮想ディスクとの組を前記計算機と該ストレージ装置に配備することを特徴とする請求項1に記載のストレージシステム。
【請求項3】
前記計算機と前記ストレージ装置に配備された前記仮想マシンと前記仮想ディスクのうち、前記入出力処理要求の発行頻度が所定値を超えるものについて、前記レイテンシの平均値がより小さくなるように、該仮想マシンと該仮想ディスクを再配備することを特徴とする請求項1に記載のストレージシステム。
【請求項4】
前記再配備は、前記仮想マシンの再配備を先に行い、該仮想マシンの再配備後に前記仮想ディスクの再配備を行なうことを特徴とする請求項3に記載のストレージシステム。
【請求項5】
前記レイテンシは、前記入出力処理要求が前記ストレージ装置へ発行されてから、処理が完了するまでのレスポンス時間であることを特徴とする請求項1に記載のストレージシステム。
【請求項6】
前記仮想マシンは、各仮想ディスクを制御する仮想マシンゲストと、該仮想マシンゲストを制御する仮想マシンホストを含むことを特徴とする請求項1に記載のストレージシステム。
【請求項7】
仮想ディスクが配備される複数のストレージ装置と、仮想マシンを起動することによって仮想ディスクの制御を行う複数の計算機と、該複数のストレージ装置と該複数の計算機を管理する管理サーバとを備えるストレージシステムにおける処理方法であって、
該計算機は、入出力処理要求を仮想ディスクに発行し、該入出力処理要求のレイテンシを計測し、
該管理サーバは、該計算機が計測したレイテンシに基づいて、レイテンシの平均値が最も小さい仮想マシンと仮想ディスクの組を該計算機と該ストレージ装置に配備する、
ことを特徴とする処理方法。
【請求項8】
仮想ディスクが配備される複数のストレージ装置と、仮想マシンを起動することによって仮想ディスクの制御を行う複数の計算機と、該複数のストレージ装置と該複数の計算機を管理する管理サーバとを備えるストレージシステムにおけるプログラムであって、
該計算機に、入出力処理要求を仮想ディスクに発行し、該入出力処理要求のレイテンシを計測させ、
該管理サーバに、該計算機が計測したレイテンシに基づいて、レイテンシの平均値が最も小さい仮想マシンと仮想ディスクの組を該計算機と該ストレージ装置に配備させる、
ことを特徴とするプログラム。

【図1】
image rotate

【図5】
image rotate

【図6】
image rotate

【図8】
image rotate

【図9】
image rotate

【図10】
image rotate

【図11】
image rotate

【図12】
image rotate

【図13】
image rotate

【図14】
image rotate

【図16】
image rotate

【図2】
image rotate

【図3】
image rotate

【図4】
image rotate

【図7】
image rotate

【図15】
image rotate