JP5342660B2 - 管理システム及びシステム管理方法及びプログラム - Google Patents
管理システム及びシステム管理方法及びプログラム Download PDFInfo
- Publication number
- JP5342660B2 JP5342660B2 JP2011553689A JP2011553689A JP5342660B2 JP 5342660 B2 JP5342660 B2 JP 5342660B2 JP 2011553689 A JP2011553689 A JP 2011553689A JP 2011553689 A JP2011553689 A JP 2011553689A JP 5342660 B2 JP5342660 B2 JP 5342660B2
- Authority
- JP
- Japan
- Prior art keywords
- virtual machine
- unit
- disk image
- virtual
- disk
- 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.)
- Expired - Fee Related
Links
- 238000007726 management method Methods 0.000 title claims description 45
- 238000012545 processing Methods 0.000 claims description 43
- 238000000034 method Methods 0.000 claims description 19
- 238000011835 investigation Methods 0.000 claims description 18
- 230000007257 malfunction Effects 0.000 abstract 1
- 238000010276 construction Methods 0.000 description 72
- 238000004364 calculation method Methods 0.000 description 31
- 238000010586 diagram Methods 0.000 description 11
- 230000006870 function Effects 0.000 description 8
- 238000004891 communication Methods 0.000 description 7
- 238000012544 monitoring process Methods 0.000 description 6
- 230000003287 optical effect Effects 0.000 description 3
- 238000005516 engineering process Methods 0.000 description 2
- 238000007639 printing Methods 0.000 description 2
- 238000004458 analytical method Methods 0.000 description 1
- 230000005540 biological transmission Effects 0.000 description 1
- 239000000872 buffer Substances 0.000 description 1
- 238000007796 conventional method Methods 0.000 description 1
- 238000012217 deletion Methods 0.000 description 1
- 230000037430 deletion Effects 0.000 description 1
- 238000009795 derivation Methods 0.000 description 1
- 230000003203 everyday effect Effects 0.000 description 1
- 238000000605 extraction Methods 0.000 description 1
- 230000010354 integration Effects 0.000 description 1
- 238000012423 maintenance Methods 0.000 description 1
- 239000007787 solid Substances 0.000 description 1
- 239000000758 substrate Substances 0.000 description 1
Images
Classifications
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR COUNTING
- G06F—ELECTRIC DIGITAL DATA PROCESSING
- G06F11/00—Error detection; Error correction; Monitoring
- G06F11/07—Responding to the occurrence of a fault, e.g. fault tolerance
- G06F11/14—Error detection or correction of the data by redundancy in operation
- G06F11/1402—Saving, restoring, recovering or retrying
- G06F11/1415—Saving, restoring, recovering or retrying at system level
- G06F11/1438—Restarting or rejuvenating
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR COUNTING
- G06F—ELECTRIC DIGITAL DATA PROCESSING
- G06F11/00—Error detection; Error correction; Monitoring
- G06F11/07—Responding to the occurrence of a fault, e.g. fault tolerance
- G06F11/14—Error detection or correction of the data by redundancy in operation
- G06F11/1479—Generic software techniques for error detection or fault masking
- G06F11/1482—Generic software techniques for error detection or fault masking by means of middleware or OS functionality
- G06F11/1484—Generic software techniques for error detection or fault masking by means of middleware or OS functionality involving virtual machines
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR COUNTING
- G06F—ELECTRIC DIGITAL DATA PROCESSING
- G06F11/00—Error detection; Error correction; Monitoring
- G06F11/07—Responding to the occurrence of a fault, e.g. fault tolerance
- G06F11/16—Error detection or correction of the data by redundancy in hardware
- G06F11/20—Error detection or correction of the data by redundancy in hardware using active fault-masking, e.g. by switching out faulty elements or by switching in spare elements
- G06F11/202—Error detection or correction of the data by redundancy in hardware using active fault-masking, e.g. by switching out faulty elements or by switching in spare elements where processing functionality is redundant
- G06F11/2023—Failover techniques
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR COUNTING
- G06F—ELECTRIC DIGITAL DATA PROCESSING
- G06F11/00—Error detection; Error correction; Monitoring
- G06F11/07—Responding to the occurrence of a fault, e.g. fault tolerance
- G06F11/16—Error detection or correction of the data by redundancy in hardware
- G06F11/20—Error detection or correction of the data by redundancy in hardware using active fault-masking, e.g. by switching out faulty elements or by switching in spare elements
- G06F11/2097—Error detection or correction of the data by redundancy in hardware using active fault-masking, e.g. by switching out faulty elements or by switching in spare elements maintaining the standby controller/processing unit updated
Landscapes
- Engineering & Computer Science (AREA)
- Theoretical Computer Science (AREA)
- Quality & Reliability (AREA)
- Physics & Mathematics (AREA)
- General Engineering & Computer Science (AREA)
- General Physics & Mathematics (AREA)
- Hardware Redundancy (AREA)
Description
本発明は、仮想計算機システムに関する。
近年、仮想化によるサーバ統合が普及してきている一方で、システムの高信頼化へのニーズも高くなってきている。
仮想環境における高信頼化として、仮想計算機(以下VM(Virtual Machine)ともいう)が動作している物理計算機(以下サーバともいう)において障害が生じた際、障害により停止したVMを予備のサーバで起動しなおすことで、VMの処理の継続を行う方法がある。
仮想環境における高信頼化として、仮想計算機(以下VM(Virtual Machine)ともいう)が動作している物理計算機(以下サーバともいう)において障害が生じた際、障害により停止したVMを予備のサーバで起動しなおすことで、VMの処理の継続を行う方法がある。
例えばVMware(登録商標)のESX Server(商標)では、共有ディスクを使用することにより、障害時に別のサーバで起動することができる。
しかし、この方法では、SAN(Storage Area Network)等の共有ストレージに仮想ディスクイメージを格納しておく必要があり、高価な共有ディスク装置が必要である。
しかし、この方法では、SAN(Storage Area Network)等の共有ストレージに仮想ディスクイメージを格納しておく必要があり、高価な共有ディスク装置が必要である。
低コストで実現するために、非共有ディスクを使用することが考えられる。
非共有ディスクの環境では、障害発生時に予備サーバでVMを再構築することになる。
予備サーバのディスク容量が十分あれば、予めすべての仮想ディスクイメージを構築しておくことができる。
しかし、現実には、予備サーバにコストはかけられず、現用サーバに比べて予備サーバは少ない台数で構成することが多く、予備サーバのディスク容量は十分でない場合が多い。
そのため、障害が発生したサーバの仮想ディスクイメージを障害が発生した時点で生成することになる。
なお、仮想ディスクイメージは同じようなデータが多いため、「マスタファイル」+「差分ファイル」から構築することを想定し、「マスタファイル」と「差分ファイル」はシステム内サーバのどこかに存在するものとする。
非共有ディスクの環境では、障害発生時に予備サーバでVMを再構築することになる。
予備サーバのディスク容量が十分あれば、予めすべての仮想ディスクイメージを構築しておくことができる。
しかし、現実には、予備サーバにコストはかけられず、現用サーバに比べて予備サーバは少ない台数で構成することが多く、予備サーバのディスク容量は十分でない場合が多い。
そのため、障害が発生したサーバの仮想ディスクイメージを障害が発生した時点で生成することになる。
なお、仮想ディスクイメージは同じようなデータが多いため、「マスタファイル」+「差分ファイル」から構築することを想定し、「マスタファイル」と「差分ファイル」はシステム内サーバのどこかに存在するものとする。
図22に、非共有ディスクを利用するシステム例を示す。
図22において、サーバ(1)、サーバ(2)、サーバ(3)、サーバ(4)が現用のサーバであり、サーバ(5)が予備サーバである。
図22において、サーバ(1)、サーバ(2)、サーバ(3)、サーバ(4)が現用のサーバであり、サーバ(5)が予備サーバである。
サーバ(1)は仮想マシンモニタ(6)により仮想化されており、仮想計算機VM#1(16)と仮想計算機VM#2(17)が動作している。それぞれの仮想計算機は、ローカルディスク(11)内の仮想ディスク(24)と仮想ディスク(25)を使用している。
サーバ(2)、サーバ(3)、サーバ(4)においても、サーバ(1)と同様、それぞれVMが動作している。
予備機であるサーバ(5)では、仮想ディスクイメージのマスタファイル(32)と、各仮想ディスクイメージの差分ファイル(33)が存在している。
ここではマスタファイル、差分ファイルすべてをサーバ(5)のローカルディスク(15)内に配置しているが、別サーバ内でもかまわない。
なお、前提としてサーバ(5)のローカルディスク(15)の容量は、VM#1〜VM#8すべての仮想ディスクを同時に構築できない大きさとする。
サーバ(2)、サーバ(3)、サーバ(4)においても、サーバ(1)と同様、それぞれVMが動作している。
予備機であるサーバ(5)では、仮想ディスクイメージのマスタファイル(32)と、各仮想ディスクイメージの差分ファイル(33)が存在している。
ここではマスタファイル、差分ファイルすべてをサーバ(5)のローカルディスク(15)内に配置しているが、別サーバ内でもかまわない。
なお、前提としてサーバ(5)のローカルディスク(15)の容量は、VM#1〜VM#8すべての仮想ディスクを同時に構築できない大きさとする。
例えば、サーバ(1)で障害が発生した場合は、予備機であるサーバ(5)をサーバ(1)の代替機とするためVM#1の仮想ディスク(37)、VM#2の仮想ディスク(38)をマスタファイル(32)と差分ファイル(33)から生成しVMを構築する。
また、予備機を別途用意せず、障害時には通常サーバを予備機として使用する構成もある。
例えば図22において、予備機であるサーバ(5)がない構成で、サーバ(1)で障害が発生した場合は、サーバ(1)で動作していたVM#1とVM#2を残りのサーバ(2)、サーバ(3)、サーバ(4)のどれかで構築し動作させる。
この場合も、VM#1とVM#2は、マスタファイルと差分ファイルから生成する。
例えば図22において、予備機であるサーバ(5)がない構成で、サーバ(1)で障害が発生した場合は、サーバ(1)で動作していたVM#1とVM#2を残りのサーバ(2)、サーバ(3)、サーバ(4)のどれかで構築し動作させる。
この場合も、VM#1とVM#2は、マスタファイルと差分ファイルから生成する。
上述の構成においては、障害発生時に「マスタファイル」+「差分ファイル」からのVM構築を効率的に行う必要がある。
ファイルを効率的に生成する従来技術としては、特許文献1に記載の技術がある。
特許文献1では、必要になった時点でファイルを生成するのではなく、ファイルの優先度を元に事前にファイルを生成しておく投機実行の技術が開示されている。
ファイルを効率的に生成する従来技術としては、特許文献1に記載の技術がある。
特許文献1では、必要になった時点でファイルを生成するのではなく、ファイルの優先度を元に事前にファイルを生成しておく投機実行の技術が開示されている。
従来技術では、ファイルの優先度を元に事前にファイルを生成しているが、仮想環境を対象としているわけではないため、仮想環境構築に適用した場合、必ずしも最適な処理が行われない。
例えば、従来技術では、生成したファイルが必ず使用されることを前提にしているが、仮想環境構築では、障害が発生した時点でファイルが使用されるため、生成したファイルがいつ使用されるかは不定である。
そのため使用されるまでの間に状況が変わり別のファイルの優先度が高くなる場合があるが、従来技術では優先度の変化に対応できないという課題がある。
また、従来技術では優先度のみから対象ファイルを選択しているが、仮想環境構築においては、仮想計算機の動作状態や負荷状態なども考慮しなければ効率的には実行できない。
例えば、従来技術では、生成したファイルが必ず使用されることを前提にしているが、仮想環境構築では、障害が発生した時点でファイルが使用されるため、生成したファイルがいつ使用されるかは不定である。
そのため使用されるまでの間に状況が変わり別のファイルの優先度が高くなる場合があるが、従来技術では優先度の変化に対応できないという課題がある。
また、従来技術では優先度のみから対象ファイルを選択しているが、仮想環境構築においては、仮想計算機の動作状態や負荷状態なども考慮しなければ効率的には実行できない。
この発明は、上記のような課題を解決することを主な目的の一つとしており、共有ディスクを使用しない仮想環境において、障害発生時に効率よく仮想計算機を再構築することを主な目的とする。
本発明に係る管理システムは、
複数の仮想計算機を動作させる複数の物理計算機が含まれ、物理計算機間で共有ディスクが用いられない仮想計算機システム
を管理する管理システムであって、
いずれかの仮想計算機に障害が発生する前に、所定の選択タイミングごとに、予備用のディスクイメージを生成する仮想計算機を予備対象仮想計算機として前記複数の仮想計算機の中から選択する仮想計算機選択部と、
前記仮想計算機選択部により選択された前記予備対象仮想計算機のディスクイメージを生成するディスクイメージ生成部と、
前記予備対象仮想計算機が動作していないいずれかの物理計算機に前記ディスクイメージ生成部により生成された前記予備対象仮想計算機のディスクイメージを格納するディスクイメージ格納部とを有することを特徴とする。
複数の仮想計算機を動作させる複数の物理計算機が含まれ、物理計算機間で共有ディスクが用いられない仮想計算機システム
を管理する管理システムであって、
いずれかの仮想計算機に障害が発生する前に、所定の選択タイミングごとに、予備用のディスクイメージを生成する仮想計算機を予備対象仮想計算機として前記複数の仮想計算機の中から選択する仮想計算機選択部と、
前記仮想計算機選択部により選択された前記予備対象仮想計算機のディスクイメージを生成するディスクイメージ生成部と、
前記予備対象仮想計算機が動作していないいずれかの物理計算機に前記ディスクイメージ生成部により生成された前記予備対象仮想計算機のディスクイメージを格納するディスクイメージ格納部とを有することを特徴とする。
本発明によれば、選択タイミングごとに予備対象仮想計算機を選択し直すため、時間の経過に伴ってバックアップの必要性の高い仮想計算機が変動する場合でも、選択タイミングの都度、バックアップの必要性の高い仮想計算機を選択して予備用のディスクイメージを設けることができ、仮想計算機システムの信頼性を向上させることができる。
実施の形態1.
実施の形態1〜9では、効率よく仮想計算機(以下、VMともいう)を構築するため、事前(障害発生前)にVMを構築するための仕組みを説明する。
つまり、実施の形態1〜9では、複数の仮想計算機を動作させる複数の物理計算機が含まれ、物理計算機間で共有ディスクが用いられない仮想計算機システムにおいて投機実行を行う仕組みを説明する。
実施の形態1〜9では、効率よく仮想計算機(以下、VMともいう)を構築するため、事前(障害発生前)にVMを構築するための仕組みを説明する。
つまり、実施の形態1〜9では、複数の仮想計算機を動作させる複数の物理計算機が含まれ、物理計算機間で共有ディスクが用いられない仮想計算機システムにおいて投機実行を行う仕組みを説明する。
図1に、本実施の形態に係るシステム構成例を示す。
仮想計算機システム(500)には、複数のサーバ装置(50)が含まれる。
各サーバ装置(50)は、複数のVMを動作させる物理計算機である。
なお、各サーバ装置(50)には、各サーバ装置(50)で動作するVMのみを図示しているが、各サーバ装置(50)の構成は図22で示したサーバ(1)〜(4)と同様であり、各サーバ装置(50)には仮想マシンモニタやローカルディスクが含まれている。
ここでは、例として各サーバ装置(50)内には2つのVMが実装されているが、VM数は2である必要はなく、何台でもかまわない。
また、仮想計算機システム(500)には、管理サーバ装置(51)が接続される。
管理サーバ装置(51)は、仮想計算機システム(500)を管理し、仮想計算機の投機実行を管理する。管理サーバ装置(51)は、管理システムの例である。
複数のサーバ装置(50)と管理サーバ装置(51)は、LAN(Local Area Network)(40)により接続され、相互に通信が可能である。
各サーバ装置(50)は、複数のVMを動作させる物理計算機である。
なお、各サーバ装置(50)には、各サーバ装置(50)で動作するVMのみを図示しているが、各サーバ装置(50)の構成は図22で示したサーバ(1)〜(4)と同様であり、各サーバ装置(50)には仮想マシンモニタやローカルディスクが含まれている。
ここでは、例として各サーバ装置(50)内には2つのVMが実装されているが、VM数は2である必要はなく、何台でもかまわない。
また、仮想計算機システム(500)には、管理サーバ装置(51)が接続される。
管理サーバ装置(51)は、仮想計算機システム(500)を管理し、仮想計算機の投機実行を管理する。管理サーバ装置(51)は、管理システムの例である。
複数のサーバ装置(50)と管理サーバ装置(51)は、LAN(Local Area Network)(40)により接続され、相互に通信が可能である。
管理サーバ装置(51)は、OS(Operating System)と投機実行部(52)を有する。
投機実行部(52)は、投機実行対象VM選択部(53)、VM優先度情報記憶部(54)、VM構築部(55)を含む。
投機実行対象VM選択部(53)及びVM構築部(55)は、例えば、OS上で動作するアプリケーションプログラムである。
VM優先度情報記憶部(54)は、HDD(Hard Disc Drive)、SSD(Solid State Drive)、RAM(Random Access Memory)等の記憶装置である。
投機実行対象VM選択部(53)は、いずれかの仮想計算機に障害が発生する前に、所定の選択タイミングごとに、VM優先度情報に基づき、予備用のディスクイメージを生成する仮想計算機を投機実行対象VM(予備対象仮想計算機)として複数の仮想計算機の中から選択する。投機実行対象VM選択部(53)は、仮想計算機選択部の例である。
VM優先度情報記憶部(54)は、VM優先度情報を記憶している。
VM優先度情報は、各VMの優先度が示される情報である。
VM優先度情報に示される各VMの優先度は、時間の経過に伴って更新され得る。
VM優先度情報記憶部(54)は、優先度情報記憶部の例である。
VM構築部(55)は、投機実行対象VM選択部(53)により選択された投機実行対象VMを構築する。
「投機実行対象VMの構築」又は「投機実行対象VMの投機実行」とは、VM構築部(55)が、投機実行対象VMのディスクイメージを生成し、また、投機実行対象VMが動作していないいずれかのサーバ装置(50)に投機実行対象VMのディスクイメージを格納することを意味する。
VM構築部(55)は、ディスクイメージ生成部及びディスクイメージ格納部の例である。
なお、投機実行部(52)は、障害発生時ではなく通常運用時から動作させる。
投機実行部(52)は、投機実行対象VM選択部(53)、VM優先度情報記憶部(54)、VM構築部(55)を含む。
投機実行対象VM選択部(53)及びVM構築部(55)は、例えば、OS上で動作するアプリケーションプログラムである。
VM優先度情報記憶部(54)は、HDD(Hard Disc Drive)、SSD(Solid State Drive)、RAM(Random Access Memory)等の記憶装置である。
投機実行対象VM選択部(53)は、いずれかの仮想計算機に障害が発生する前に、所定の選択タイミングごとに、VM優先度情報に基づき、予備用のディスクイメージを生成する仮想計算機を投機実行対象VM(予備対象仮想計算機)として複数の仮想計算機の中から選択する。投機実行対象VM選択部(53)は、仮想計算機選択部の例である。
VM優先度情報記憶部(54)は、VM優先度情報を記憶している。
VM優先度情報は、各VMの優先度が示される情報である。
VM優先度情報に示される各VMの優先度は、時間の経過に伴って更新され得る。
VM優先度情報記憶部(54)は、優先度情報記憶部の例である。
VM構築部(55)は、投機実行対象VM選択部(53)により選択された投機実行対象VMを構築する。
「投機実行対象VMの構築」又は「投機実行対象VMの投機実行」とは、VM構築部(55)が、投機実行対象VMのディスクイメージを生成し、また、投機実行対象VMが動作していないいずれかのサーバ装置(50)に投機実行対象VMのディスクイメージを格納することを意味する。
VM構築部(55)は、ディスクイメージ生成部及びディスクイメージ格納部の例である。
なお、投機実行部(52)は、障害発生時ではなく通常運用時から動作させる。
次に動作について説明する。
図2に、本実施の形態に係る投機実行部(52)の投機実行のフローチャートを示す。
図2に、本実施の形態に係る投機実行部(52)の投機実行のフローチャートを示す。
まず、投機実行対象VM選択部(53)がVM優先度情報を元に投機実行対象VMを選択する(S1)。
投機実行対象VM選択部(53)は、例えば、VM優先度情報を参照し、最も優先度が高いVMから予め指定されている任意数分のVMを投機実行対象VMとして選択する。
次に、VM構築部(55)が投機実行を行う(S2)。
VM構築部(55)は、マスタファイルと差分ファイルから、選択された投機実行対象VMのバックアップ用のディスクイメージを生成し、生成したディスクイメージをいずれかのサーバ装置(50)に格納する。
マスタファイルと差分ファイルは、サーバ装置1(50)〜サーバ装置n(50)のいずれかに格納されている。
VM構築部(55)は、マスタファイルと差分ファイルが格納されているサーバ装置(50)に対して、投機実行対象VMのバックアップ用のディスクイメージの生成に必要な差分ファイルを通知して、投機実行対象VMのバックアップ用のディスクイメージを生成させる。
また、VM構築部(55)は、投機実行対象VMのディスクイメージの格納先のサーバ装置(50)を選択し、マスタファイルと差分ファイルが格納されているサーバ装置(50)に対して格納先のサーバ装置(50)を通知し、マスタファイルと差分ファイルが格納されているサーバ装置(50)から格納先のサーバ装置(50)に投機実行対象VMのディスクイメージを送信させる。
また、VM構築部(55)は、格納先のサーバ装置(50)に投機実行対象VMのディスクイメージの格納を指示し、格納先のサーバ装置(50)に投機実行対象VMのディスクイメージの受信及び格納を行わせる。
例えば、図1において、サーバ装置1(50)のVM#1が投機実行対象VMとして選択された場合は、VM構築部(55)は、マスタファイルと差分ファイルが格納されているサーバ装置(50)を用いてこのVM#1を実現するためのディスクイメージを生成し、ディスクイメージの格納先となるサーバ装置(50)を、VM#1が動作しているサーバ装置1(50)以外のサーバ装置2(50)〜サーバ装置n(50)の中から選択する。そして、VM構築部(55)は、前述のように、選択した格納先のサーバ装置(50)とマスタファイルと差分ファイルが格納されているサーバ装置(50)に指示を送信して、選択した格納先のサーバ装置(50)にVM#1のディスクイメージを格納する。
投機実行対象VM選択部(53)は、例えば、VM優先度情報を参照し、最も優先度が高いVMから予め指定されている任意数分のVMを投機実行対象VMとして選択する。
次に、VM構築部(55)が投機実行を行う(S2)。
VM構築部(55)は、マスタファイルと差分ファイルから、選択された投機実行対象VMのバックアップ用のディスクイメージを生成し、生成したディスクイメージをいずれかのサーバ装置(50)に格納する。
マスタファイルと差分ファイルは、サーバ装置1(50)〜サーバ装置n(50)のいずれかに格納されている。
VM構築部(55)は、マスタファイルと差分ファイルが格納されているサーバ装置(50)に対して、投機実行対象VMのバックアップ用のディスクイメージの生成に必要な差分ファイルを通知して、投機実行対象VMのバックアップ用のディスクイメージを生成させる。
また、VM構築部(55)は、投機実行対象VMのディスクイメージの格納先のサーバ装置(50)を選択し、マスタファイルと差分ファイルが格納されているサーバ装置(50)に対して格納先のサーバ装置(50)を通知し、マスタファイルと差分ファイルが格納されているサーバ装置(50)から格納先のサーバ装置(50)に投機実行対象VMのディスクイメージを送信させる。
また、VM構築部(55)は、格納先のサーバ装置(50)に投機実行対象VMのディスクイメージの格納を指示し、格納先のサーバ装置(50)に投機実行対象VMのディスクイメージの受信及び格納を行わせる。
例えば、図1において、サーバ装置1(50)のVM#1が投機実行対象VMとして選択された場合は、VM構築部(55)は、マスタファイルと差分ファイルが格納されているサーバ装置(50)を用いてこのVM#1を実現するためのディスクイメージを生成し、ディスクイメージの格納先となるサーバ装置(50)を、VM#1が動作しているサーバ装置1(50)以外のサーバ装置2(50)〜サーバ装置n(50)の中から選択する。そして、VM構築部(55)は、前述のように、選択した格納先のサーバ装置(50)とマスタファイルと差分ファイルが格納されているサーバ装置(50)に指示を送信して、選択した格納先のサーバ装置(50)にVM#1のディスクイメージを格納する。
また、上記と異なり、管理サーバ装置(51)がマスタファイルと差分ファイルを所持し、投機実行対象VMを選択した際に、所持しているマスタファイルと差分ファイルから、選択した投機実行対象VMのディスクイメージを生成し、生成したディスクイメージを格納先のサーバ装置(50)に送信するようにしてもよい。
投機実行部(52)は、S2のVM構築完了後、次の実行時間まで待機し(S3)、待機時間経過後、再度S1から処理を繰り返す。
待機時間については、指定されている時間(例えば、1時間)が経過するまで待つ形態でもよいし、指定されている日時(毎日9時と15時、毎月1日と15日など)まで待つ形態であってもよい。
前述したように、VM優先度情報は更新されるため、次のS1の処理の実行までの間に優先度の高いVMが変化している可能性がある。このため、投機実行対象VMとして選択されるVMは固定的ではなく、投機実行対象VMの選択タイミングごとに都度優先度の高いVMが選択されることになる。
待機時間については、指定されている時間(例えば、1時間)が経過するまで待つ形態でもよいし、指定されている日時(毎日9時と15時、毎月1日と15日など)まで待つ形態であってもよい。
前述したように、VM優先度情報は更新されるため、次のS1の処理の実行までの間に優先度の高いVMが変化している可能性がある。このため、投機実行対象VMとして選択されるVMは固定的ではなく、投機実行対象VMの選択タイミングごとに都度優先度の高いVMが選択されることになる。
このように投機実行対象VMの選択を繰り返して見直すことにより、常に優先度の高いVMが投機実行されるため、障害が発生した場合に優先度の高いVMは障害が発生してから構築する必要がなく、信頼性が向上する。
なお、投機実行したVMとは異なるVMに障害が発生した場合には、投機実行のペナルティが発生することになるが、ペナルティは投機実行で生成したファイルを削除するだけであり、ファイルの削除時間はファイル生成時間に比較して十分短いため無視できる。
なお、投機実行したVMとは異なるVMに障害が発生した場合には、投機実行のペナルティが発生することになるが、ペナルティは投機実行で生成したファイルを削除するだけであり、ファイルの削除時間はファイル生成時間に比較して十分短いため無視できる。
なお、ここでは投機実行部(52)をサーバ装置(50)とは別の管理サーバ装置(51)で構成しているが、投機実行部(52)をいずれかのサーバ装置(50)内に含めることも可能である。
以上のように、本実施の形態では、共有ディスクを使用しない仮想環境において、予備の仮想計算機を構築する際、障害発生時ではなく事前に仮想計算機を構築する(投機実行を行う)仮想環境構築方式を説明した。
より具体的には、本実施の形態では、投機実行で構築する仮想計算機は仮想計算機の優先度にしたがって選択され、投機実行完了後、ある時間の経過後に投機実行対象の仮想計算機の選択を見直し、前回と異なる仮想計算機が選択された場合は、投機実行をやり直して仮想計算機を構築することを説明した。
より具体的には、本実施の形態では、投機実行で構築する仮想計算機は仮想計算機の優先度にしたがって選択され、投機実行完了後、ある時間の経過後に投機実行対象の仮想計算機の選択を見直し、前回と異なる仮想計算機が選択された場合は、投機実行をやり直して仮想計算機を構築することを説明した。
実施の形態2.
本実施の形態では、投機実行でVM構築する際に、サーバ装置の負荷を考慮して行う。
本実施の形態では、投機実行でVM構築する際に、サーバ装置の負荷を考慮して行う。
図3は、本実施の形態に係るシステム構成例を示す。
図3に示すように、本実施の形態では、各サーバ装置(50)内に負荷情報取得部(61)を設ける。
負荷情報取得部(61)は、各サーバ装置(50)の負荷をモニタし負荷情報を取得する。負荷情報取得部(61)がモニタする負荷は、例えばCPU使用率、メモリ使用率等である。
また、負荷情報取得部(61)は、負荷情報を定期的にLAN(40)を用いて管理サーバ装置(51)に送信する。
なお、図3ではサーバ装置(50)の内部構成の図示を簡略化しているが、本実施の形態に係るサーバ装置(50)は、図22に示すサーバ(1)〜(4)の構成に負荷情報取得部(61)を追加したものに相当する。
図3に示すように、本実施の形態では、各サーバ装置(50)内に負荷情報取得部(61)を設ける。
負荷情報取得部(61)は、各サーバ装置(50)の負荷をモニタし負荷情報を取得する。負荷情報取得部(61)がモニタする負荷は、例えばCPU使用率、メモリ使用率等である。
また、負荷情報取得部(61)は、負荷情報を定期的にLAN(40)を用いて管理サーバ装置(51)に送信する。
なお、図3ではサーバ装置(50)の内部構成の図示を簡略化しているが、本実施の形態に係るサーバ装置(50)は、図22に示すサーバ(1)〜(4)の構成に負荷情報取得部(61)を追加したものに相当する。
本実施の形態では、VM構築部(55)は、各サーバ装置(50)から負荷情報を受信し、また、受信した負荷情報を所定の記憶領域に記憶する。
そして、VM構築部(55)は、投機実行対象VM選択部(53)により投機実行対象VMが選択された際に、マスタファイル、差分ファイルが存在するサーバ装置および投機実行対象VMを構築するサーバ装置(格納先物理計算機)の負荷情報を確認する。
マスタファイル、差分ファイルが存在するサーバ装置は、投機実行対象VMが動作しているサーバ装置である場合もあるし、別のサーバ装置である場合もある。
また、マスタファイル、差分ファイルが存在するサーバ装置は、投機実行対象VMを構築するサーバ装置(格納先物理計算機)である場合もあるし、別のサーバ装置である場合もある。
また、投機実行対象VMを構築するサーバ装置(格納先物理計算機)は、投機実行対象VMが動作しているサーバ装置とは別のサーバ装置である。
これらのサーバ装置(50)のうち少なくともいずれか一方の負荷レベルが所定レベル以上である場合は、VM構築の実行を行わないようにする。
つまり、VM構築部(55)は、マスタファイル、差分ファイルが存在するサーバ装置の負荷レベルが高い場合は、投機実行対象VMのディスクイメージを生成せず、また、投機実行対象VMを構築するサーバ装置の負荷レベルが高い場合は、投機実行対象VMのディスクイメージの格納を行わない。
また、VM構築部(55)は、マスタファイル、差分ファイルが存在するサーバ装置の負荷レベルおよび投機実行対象VMを構築するサーバ装置の負荷レベルが所定レベル未満となった時点でVM構築を行うようにする。
なお、本実施の形態では、VM構築部(55)は負荷レベル調査部の例でもある。
そして、VM構築部(55)は、投機実行対象VM選択部(53)により投機実行対象VMが選択された際に、マスタファイル、差分ファイルが存在するサーバ装置および投機実行対象VMを構築するサーバ装置(格納先物理計算機)の負荷情報を確認する。
マスタファイル、差分ファイルが存在するサーバ装置は、投機実行対象VMが動作しているサーバ装置である場合もあるし、別のサーバ装置である場合もある。
また、マスタファイル、差分ファイルが存在するサーバ装置は、投機実行対象VMを構築するサーバ装置(格納先物理計算機)である場合もあるし、別のサーバ装置である場合もある。
また、投機実行対象VMを構築するサーバ装置(格納先物理計算機)は、投機実行対象VMが動作しているサーバ装置とは別のサーバ装置である。
これらのサーバ装置(50)のうち少なくともいずれか一方の負荷レベルが所定レベル以上である場合は、VM構築の実行を行わないようにする。
つまり、VM構築部(55)は、マスタファイル、差分ファイルが存在するサーバ装置の負荷レベルが高い場合は、投機実行対象VMのディスクイメージを生成せず、また、投機実行対象VMを構築するサーバ装置の負荷レベルが高い場合は、投機実行対象VMのディスクイメージの格納を行わない。
また、VM構築部(55)は、マスタファイル、差分ファイルが存在するサーバ装置の負荷レベルおよび投機実行対象VMを構築するサーバ装置の負荷レベルが所定レベル未満となった時点でVM構築を行うようにする。
なお、本実施の形態では、VM構築部(55)は負荷レベル調査部の例でもある。
このように本実施の形態によれば、負荷を確認することで通常の業務に影響を与えることなく投機実行ができる。
以上、本実施の形態では、投機実行で仮想計算機を構築する際に、サーバの負荷を考慮する仮想環境構築方式を説明した。
より具体的には、本実施の形態では、サーバの負荷が高い場合は仮想計算機の構築を実行せず、負荷が低くなった時点で仮想計算機の構築を開始することを説明した。
より具体的には、本実施の形態では、サーバの負荷が高い場合は仮想計算機の構築を実行せず、負荷が低くなった時点で仮想計算機の構築を開始することを説明した。
実施の形態3.
実施の形態1では、VM優先度にしたがって投機実行させるVMを選択していたが、実施の形態3では実際にVMを構築するための時間を推測し、構築時間の長さにしたがってVMを選択する。
実施の形態1では、VM優先度にしたがって投機実行させるVMを選択していたが、実施の形態3では実際にVMを構築するための時間を推測し、構築時間の長さにしたがってVMを選択する。
図4に、本実施の形態に係るシステム構成例を示す。
本実施の形態では、投機実行部(52)内に、構築時間調査部(70)を設ける。
また、サーバ装置(50)内に、負荷情報取得部(61)とディスク性能取得部(62)を設ける。
なお、本実施の形態では、投機実行対象VM選択部(53)は、選択タイミングごとに、構築時間調査部(70)にディスクイメージの生成及び格納に要する処理時間をVMごとに予測させ、構築時間調査部(70)により予測されたVMごとの処理時間に基づいて、投機実行対象VMを選択する。
本実施の形態では、投機実行部(52)内に、構築時間調査部(70)を設ける。
また、サーバ装置(50)内に、負荷情報取得部(61)とディスク性能取得部(62)を設ける。
なお、本実施の形態では、投機実行対象VM選択部(53)は、選択タイミングごとに、構築時間調査部(70)にディスクイメージの生成及び格納に要する処理時間をVMごとに予測させ、構築時間調査部(70)により予測されたVMごとの処理時間に基づいて、投機実行対象VMを選択する。
構築時間調査部(70)の詳細を図5に示す。
構築時間調査部(70)は、ディスク性能調査部(71)と時間予測計算部(73)で構成される。
ディスク性能調査部(71)は、サーバ装置(50)内のディスク性能取得部(62)からディスクに関する性能情報を取得し、ディスク性能情報管理テーブル(72)に保存する。
時間予測計算部(73)は、ディスク性能情報管理テーブル(72)のデータと、サーバ装置(50)内の負荷情報取得部(61)から取得したサーバの負荷情報からVM構築の時間を予測計算する。
ディスク性能情報管理テーブル(72)に含まれるデータを、図6、図7、図8に示す。
構築時間調査部(70)は、ディスク性能調査部(71)と時間予測計算部(73)で構成される。
ディスク性能調査部(71)は、サーバ装置(50)内のディスク性能取得部(62)からディスクに関する性能情報を取得し、ディスク性能情報管理テーブル(72)に保存する。
時間予測計算部(73)は、ディスク性能情報管理テーブル(72)のデータと、サーバ装置(50)内の負荷情報取得部(61)から取得したサーバの負荷情報からVM構築の時間を予測計算する。
ディスク性能情報管理テーブル(72)に含まれるデータを、図6、図7、図8に示す。
図6は、各サーバ装置(50)のローカルディスクRead性能を示すローカルディスクRead性能テーブルである。ローカルディスクRead性能は、各サーバ装置(50)が内部のローカルディスクからデータを読み出す性能(単位時間当たりの読み出しデータ量)である。
図7は、各サーバ装置(50)のローカルディスクWrite性能を示すローカルディスクWrite性能テーブルである。ローカルディスクWrite性能は、各サーバ装置(50)が内部のローカルディスクにデータを書き込む性能(単位時間当たりの書き込みデータ量)である。
図8は、ネットワーク越しディスクRead性能を示すネットワーク越しディスクRead性能テーブルである。ネットワーク越しディスクRead性能は、各サーバ装置(50)が他のサーバ装置(50)のディスクからネットワーク越しにデータを読み出す性能(単位時間当たりの読み出しデータ量)である。
ディスク性能は、すべてのサーバの物理ディスク毎に調査を行う。
調査の際、サーバに負荷をかけ、負荷をかけた場合の性能も調査する。
例えば図6に示したように、負荷0%、5%、10%・・・100%のように負荷を変化させて性能を調査する。
また、図6〜図8の各々に示される数値は、各サーバ装置(50)の性能値を示している。
例えば、図6では、サーバAは、負荷が0%の場合は、ローカルディスクであるディスク#1をReadする性能値は80であり、負荷が5%の場合はディスク#1をReadする性能値は75である。
図7は、各サーバ装置(50)のローカルディスクWrite性能を示すローカルディスクWrite性能テーブルである。ローカルディスクWrite性能は、各サーバ装置(50)が内部のローカルディスクにデータを書き込む性能(単位時間当たりの書き込みデータ量)である。
図8は、ネットワーク越しディスクRead性能を示すネットワーク越しディスクRead性能テーブルである。ネットワーク越しディスクRead性能は、各サーバ装置(50)が他のサーバ装置(50)のディスクからネットワーク越しにデータを読み出す性能(単位時間当たりの読み出しデータ量)である。
ディスク性能は、すべてのサーバの物理ディスク毎に調査を行う。
調査の際、サーバに負荷をかけ、負荷をかけた場合の性能も調査する。
例えば図6に示したように、負荷0%、5%、10%・・・100%のように負荷を変化させて性能を調査する。
また、図6〜図8の各々に示される数値は、各サーバ装置(50)の性能値を示している。
例えば、図6では、サーバAは、負荷が0%の場合は、ローカルディスクであるディスク#1をReadする性能値は80であり、負荷が5%の場合はディスク#1をReadする性能値は75である。
図6〜図8に示すように、サーバ装置(50)ごとにディスクアクセスの際の処理性能が異なり、また、実際の負荷状況は時間の経過ととともに変動するため、時間によってもサーバ装置(50)のディスクアクセスの際の処理性能は異なる。
このため、ディスクイメージの生成及び格納に要する処理時間はサーバ装置(50)ごとに異なり、また、時間の経過によっても変動し得る。
本実施の形態に係る構築時間調査部(70)は、このような性質の処理時間を、サーバ装置(50)ごとに予測する。
構築時間調査部(70)は処理時間予測部の例である。
このため、ディスクイメージの生成及び格納に要する処理時間はサーバ装置(50)ごとに異なり、また、時間の経過によっても変動し得る。
本実施の形態に係る構築時間調査部(70)は、このような性質の処理時間を、サーバ装置(50)ごとに予測する。
構築時間調査部(70)は処理時間予測部の例である。
次に動作について説明する。
構築時間調査部(70)を使用した場合のフローチャートを図9に示す。
構築時間調査部(70)を使用した場合のフローチャートを図9に示す。
まず、運用開始前(業務負荷が何も無い状態)に、ディスク性能調査部(71)は、上記で示したディスク性能について、各サーバ装置(50)のディスク性能取得部(62)に負荷レベルごとのディスク性能の調査を指示し、すべてのサーバ装置(50)に実際に各ディスクへのReadとWriteを実行させて負荷レベルごとの性能調査を行う(S10、S11、S12)。
そして、ディスク性能調査部(71)は、各サーバ装置(50)のディスク性能取得部(62)から調査結果(ディスク性能情報)を取得し、ディスク性能情報管理テーブル(72)(図6、図7、図8)に記録する。
そして、ディスク性能調査部(71)は、各サーバ装置(50)のディスク性能取得部(62)から調査結果(ディスク性能情報)を取得し、ディスク性能情報管理テーブル(72)(図6、図7、図8)に記録する。
また、負荷情報取得部(61)は選択タイミングの際のサーバ装置(50)の負荷状況を監視し、負荷情報を投機実行部(52)に送信する。
本実施の形態では、投機実行部(52)において、構築時間調査部(70)の時間予測計算部(73)が各サーバ装置(50)の負荷情報取得部(61)から負荷情報を受信する。
本実施の形態では、投機実行部(52)において、構築時間調査部(70)の時間予測計算部(73)が各サーバ装置(50)の負荷情報取得部(61)から負荷情報を受信する。
次に、時間予測計算部(73)が受信したサーバの負荷情報とディスク性能情報管理テーブル(72)内の各ディスク性能情報から、すべてのVMに対し、それぞれを構築した場合のVM構築時間(VM構築に要する処理時間)を予測計算する(S13、S14)。
なお、時間予測計算部(73)によるVM構築時間の予測計算の詳細は後述する。
なお、時間予測計算部(73)によるVM構築時間の予測計算の詳細は後述する。
次に、投機実行対象VM選択部(53)が、時間予測計算部(73)により算出されたVM構築時間のうち、VM構築時間の長い順に1つ以上のVMを投機実行対象VMとして選択する(S1)。
以後の処理は実施の形態1と同じであるため、説明を省略する。
以後の処理は実施の形態1と同じであるため、説明を省略する。
次に時間予測計算部(73)による構築時間の予測計算の詳細について説明する。
図10にフローチャートを示す。
なお、図10は、仮想計算機システム(500)に含まれるVMごとに行われる。
図10にフローチャートを示す。
なお、図10は、仮想計算機システム(500)に含まれるVMごとに行われる。
まず、時間予測計算部(73)は、構築時間の予測計算の対象となるVMを選択し、選択したVMの生成元となるマスタファイルと差分ファイルのあるサーバ装置(50)とディスクの情報を取得する(S21)。なお、構築時間の予測計算の対象として選択したVMを対象VMと呼ぶ。
次に、時間予測計算部(73)は、対象VMの構築先のサーバとディスクの情報を取得する(S22)。
次に、時間予測計算部(73)は、生成元ファイルがあるサーバ装置と構築先のサーバ装置が同じかどうかチェックする(S23)。
同じサーバ装置の場合(S23でYES)は、時間予測計算部(73)は、ローカルディスクRead性能テーブル(図6)を使用する(S24)。
異なるサーバ装置の場合(S23でNO)は、ネットワーク越しディスクRead性能テーブル(図8)を使用する(S25)。
また、時間予測計算部(73)は、生成元ファイルのあるサーバの負荷情報を取得する(S26)。
次に、時間予測計算部(73)は構築先サーバの負荷情報を取得し(S27)、生成元のファイルサイズの情報を取得する(S28)。
Read処理時間計算(S29)では、時間予測計算部(73)は、Read性能テーブル(図6または図8)の、サーバ、ディスク、負荷が一致する性能値を用いて、生成元ファイルサイズ÷性能値(単位時間当たりの読み出しデータ量)の計算を行って、Read処理時間を求める。
Write処理時間計算(S30)では、時間予測計算部(73)は、Write性能テーブル(図7)の、サーバ、ディスク、負荷が一致する性能値を用いて、生成元ファイルサイズ÷性能値(単位時間当たりの書き込みデータ量)の計算を行って、Write処理時間を求める。
合計処理時間計算(S31)は、Read処理時間計算(S29)で算出したRead処理時間とWrite処理時間計算(S30)で算出したWrite処理時間を合計する。
次に、時間予測計算部(73)は、対象VMの構築先のサーバとディスクの情報を取得する(S22)。
次に、時間予測計算部(73)は、生成元ファイルがあるサーバ装置と構築先のサーバ装置が同じかどうかチェックする(S23)。
同じサーバ装置の場合(S23でYES)は、時間予測計算部(73)は、ローカルディスクRead性能テーブル(図6)を使用する(S24)。
異なるサーバ装置の場合(S23でNO)は、ネットワーク越しディスクRead性能テーブル(図8)を使用する(S25)。
また、時間予測計算部(73)は、生成元ファイルのあるサーバの負荷情報を取得する(S26)。
次に、時間予測計算部(73)は構築先サーバの負荷情報を取得し(S27)、生成元のファイルサイズの情報を取得する(S28)。
Read処理時間計算(S29)では、時間予測計算部(73)は、Read性能テーブル(図6または図8)の、サーバ、ディスク、負荷が一致する性能値を用いて、生成元ファイルサイズ÷性能値(単位時間当たりの読み出しデータ量)の計算を行って、Read処理時間を求める。
Write処理時間計算(S30)では、時間予測計算部(73)は、Write性能テーブル(図7)の、サーバ、ディスク、負荷が一致する性能値を用いて、生成元ファイルサイズ÷性能値(単位時間当たりの書き込みデータ量)の計算を行って、Write処理時間を求める。
合計処理時間計算(S31)は、Read処理時間計算(S29)で算出したRead処理時間とWrite処理時間計算(S30)で算出したWrite処理時間を合計する。
このようにして時間予測計算部(73)は、全てのVMに対して図10のフローを実行して、すべてのVMの処理時間を計算し、投機実行部(52)が処理時間が長いものを投機実行対象VMとして選択する。
以上説明したように、本実施の形態では、VM構築時間の長いものを投機実行対象とすることにより、障害が発生した場合のVM構築時間が短縮できる。
つまり、VM構築時間が長いものは投機実行されているため、投機実行されているVMに障害が発生した場合にVM構築までに長時間を要する事態を回避することができ、また、もし投機実行されたVMとは異なるVMに障害が発生した場合も、そのVMの構築時間は短いため、VM構築までに長時間を要することもない。
つまり、VM構築時間が長いものは投機実行されているため、投機実行されているVMに障害が発生した場合にVM構築までに長時間を要する事態を回避することができ、また、もし投機実行されたVMとは異なるVMに障害が発生した場合も、そのVMの構築時間は短いため、VM構築までに長時間を要することもない。
このように、本実施の形態では、投機実行する仮想計算機を選択する際に、仮想計算機の構築時間を予測計算し、構築時間が長い仮想計算機を選択する仮想環境構築方式を説明した。
また、本実施の形態では、構築時間は、あらかじめ各物理ディスクの読み込み性能、書き込み性能を調査し、ファイル生成元とファイル生成先のサーバ場所、ファイルサイズ、サーバ負荷から計算することを説明した。
また、本実施の形態では、構築時間は、あらかじめ各物理ディスクの読み込み性能、書き込み性能を調査し、ファイル生成元とファイル生成先のサーバ場所、ファイルサイズ、サーバ負荷から計算することを説明した。
実施の形態4.
実施の形態3では、構築時間の長さにしたがって投機実行させるVMを選択していたが、実施の形態4では物理サーバの障害の発生しやすさを調査し推測する障害推測にしたがってVMを選択する。
実施の形態3では、構築時間の長さにしたがって投機実行させるVMを選択していたが、実施の形態4では物理サーバの障害の発生しやすさを調査し推測する障害推測にしたがってVMを選択する。
図11に、本実施の形態に係るシステム構成例を示す。
本実施の形態では、投機実行部(52)内に、障害推測部(80)を設ける。
また、サーバ装置(50)内に、障害情報取得部(81)を設ける。
障害推測部(80)は、VMごとに、VMが動作しているサーバ装置(50)の障害発生可能性を導出する。障害情報取得部(81)は、障害発生可能性導出部の例である。
障害情報取得部(81)は、障害推測部(80)の障害発生可能性の導出に用いられる障害情報を取得する。
また、本実施の形態では、投機実行対象VM選択部(53)は、選択タイミングごとに、障害推測部(80)にサーバ装置(50)の障害発生可能性をVMごとに導出させ、障害推測部(80)により導出されたVMごとの障害発生可能性に基づいて、投機実行対象VMを選択する。
本実施の形態では、投機実行部(52)内に、障害推測部(80)を設ける。
また、サーバ装置(50)内に、障害情報取得部(81)を設ける。
障害推測部(80)は、VMごとに、VMが動作しているサーバ装置(50)の障害発生可能性を導出する。障害情報取得部(81)は、障害発生可能性導出部の例である。
障害情報取得部(81)は、障害推測部(80)の障害発生可能性の導出に用いられる障害情報を取得する。
また、本実施の形態では、投機実行対象VM選択部(53)は、選択タイミングごとに、障害推測部(80)にサーバ装置(50)の障害発生可能性をVMごとに導出させ、障害推測部(80)により導出されたVMごとの障害発生可能性に基づいて、投機実行対象VMを選択する。
障害推測部(80)は、例えば、S.M.A.R.T.(Self−Monitoring Analysis and Reporting Technology)によって蓄積されたデータをモニタすることで障害発生可能性を導出し、ディスク故障の予兆を知ることができる。
この機能により、投機実行対象VM選択部(53)は故障が最も起こりやすいサーバを選択し、そのサーバ上のVMを投機実行の対象とすることで、効率化ができる。
本実施の形態では、S.M.A.R.T.を例にして説明したが、障害推測としては、サーバの稼働時間をモニタしておき、最も長く稼動しているサーバやディスクアクセス数が多いサーバで障害が発生しやすいなど、様々な方法が考えられ、この情報で投機実行するVMを選択する。
この機能により、投機実行対象VM選択部(53)は故障が最も起こりやすいサーバを選択し、そのサーバ上のVMを投機実行の対象とすることで、効率化ができる。
本実施の形態では、S.M.A.R.T.を例にして説明したが、障害推測としては、サーバの稼働時間をモニタしておき、最も長く稼動しているサーバやディスクアクセス数が多いサーバで障害が発生しやすいなど、様々な方法が考えられ、この情報で投機実行するVMを選択する。
このように、本実施の形態では、投機実行する仮想計算機を選択する際に、物理サーバの故障発生の可能性にしたがって仮想計算機を選択する仮想環境構築方式を説明した。
実施の形態5.
実施の形態4では、障害推測にしたがって投機実行させるVMを選択していたが、実施の形態5ではVM動作特性にしたがってVMを選択する。
実施の形態4では、障害推測にしたがって投機実行させるVMを選択していたが、実施の形態5ではVM動作特性にしたがってVMを選択する。
図12に、本実施の形態に係るシステム構成例を示す。
本実施の形態では、投機実行部(52)内に、VM動作特性調査部(82)を設ける。VM動作特性調査部(82)は動作特性調査部の例である。
また、サーバ装置(50)内に、VM動作特性情報取得部(83)を設ける。
VM動作特性情報取得部(83)は、VMのディスクアクセス数やネットワークアクセス数などをモニタする。
VM動作特性調査部(82)は、VM動作特性情報取得部(83)からVMのディスクアクセス数やネットワークアクセス数を通知する動作特性情報を入力し、VMごとに動作特性を調査する。ディスクアクセス数の大小やネットワークアクセス数の大小といった動作特性は、VMごとに異なり、また、時間の経過に伴って変動し得る。
そして、本実施の形態では、投機実行対象VM選択部(53)は、選択タイミングごとに、VM動作特性調査部(82)に各VMの動作特性を調査させ、VM動作特性調査部(82)により調査された動作特性に基づき、投機実行対象VMを選択する。
つまり、投機実行対象VM選択部(53)は、ディスクアクセス数やネットワークアクセス数が多いVMは重要なものと判断し、アクセス数が多いVMを投機実行の対象VMとする。
本実施の形態では、投機実行部(52)内に、VM動作特性調査部(82)を設ける。VM動作特性調査部(82)は動作特性調査部の例である。
また、サーバ装置(50)内に、VM動作特性情報取得部(83)を設ける。
VM動作特性情報取得部(83)は、VMのディスクアクセス数やネットワークアクセス数などをモニタする。
VM動作特性調査部(82)は、VM動作特性情報取得部(83)からVMのディスクアクセス数やネットワークアクセス数を通知する動作特性情報を入力し、VMごとに動作特性を調査する。ディスクアクセス数の大小やネットワークアクセス数の大小といった動作特性は、VMごとに異なり、また、時間の経過に伴って変動し得る。
そして、本実施の形態では、投機実行対象VM選択部(53)は、選択タイミングごとに、VM動作特性調査部(82)に各VMの動作特性を調査させ、VM動作特性調査部(82)により調査された動作特性に基づき、投機実行対象VMを選択する。
つまり、投機実行対象VM選択部(53)は、ディスクアクセス数やネットワークアクセス数が多いVMは重要なものと判断し、アクセス数が多いVMを投機実行の対象VMとする。
このように、本実施の形態では、投機実行する仮想計算機を選択する際に、仮想計算機の動作特性にしたがって仮想計算機を選択する仮想環境構築方式を説明した。
実施の形態6.
実施の形態5では、VM動作特性にしたがって投機実行させるVMを選択していたが、実施の形態6ではユーザ指示やその他のパラメータにしたがってVMを選択する。
実施の形態5では、VM動作特性にしたがって投機実行させるVMを選択していたが、実施の形態6ではユーザ指示やその他のパラメータにしたがってVMを選択する。
図13に、本実施の形態に係るシステム構成例を示す。
本実施の形態では、投機実行部(52)内に、ユーザ指示、その他パラメータ入力部(84)を設ける。
また、本実施の形態では、投機実行対象VM選択部(53)は、ユーザ指示やその他パラメータがユーザ指示、その他パラメータ入力部(84)によって入力された際に、入力されたユーザ指示やその他パラメータにより投機実行するVMを選択する。
例えば、ハードウェアメンテナンスなどにより停止するサーバが決まっている場合、そのサーバ上にあるVMを投機実行の対象とすることが考えられる。
本実施の形態では、投機実行部(52)内に、ユーザ指示、その他パラメータ入力部(84)を設ける。
また、本実施の形態では、投機実行対象VM選択部(53)は、ユーザ指示やその他パラメータがユーザ指示、その他パラメータ入力部(84)によって入力された際に、入力されたユーザ指示やその他パラメータにより投機実行するVMを選択する。
例えば、ハードウェアメンテナンスなどにより停止するサーバが決まっている場合、そのサーバ上にあるVMを投機実行の対象とすることが考えられる。
このように、本実施の形態では、投機実行する仮想計算機を選択する際に、ユーザの指示またはその他のパラメータ入力にしたがって仮想計算機を選択する仮想環境構築方式を説明した。
実施の形態7.
実施の形態1〜5では、それぞれの条件にしたがって投機実行させるVMを選択していたが、実施の形態7では、これらの条件を組み合わせて、VMを選択する。
実施の形態1〜5では、それぞれの条件にしたがって投機実行させるVMを選択していたが、実施の形態7では、これらの条件を組み合わせて、VMを選択する。
ここでは、一例として、実施の形態1、3、4の選択基準を組み合わせる場合を考える。
まず、実施の形態1、3、4で説明した方法により、各VMに対して、VM優先度、障害発生可能性度、VM構築時間を求める。
そして、投機実行対象VM選択部(53)では、これらの値の積を、VMの投機実行度とする。
つまり、以下の式に従って投機実行度を求める。
投機実行度=VM優先度×障害発生可能性度×構築時間
投機実行対象VM選択部(53)では、すべてのVMについて投機実行度を計算し、投機実行度の高いVMを投機実行対象VMとして選択する。
このように複数の条件を組み合わせて選択することにより、より効率的に投機実行対象VMを選択することができる。
なお、ここでは、VM優先度、障害推測、構築時間の3つの選択基準を組み合わせたが、実施の形態1、3、4、5、6で示したパラメータを任意に組み合わせて投機実行度を計算して投機実行対象VMを選択するようにしてもよい。
まず、実施の形態1、3、4で説明した方法により、各VMに対して、VM優先度、障害発生可能性度、VM構築時間を求める。
そして、投機実行対象VM選択部(53)では、これらの値の積を、VMの投機実行度とする。
つまり、以下の式に従って投機実行度を求める。
投機実行度=VM優先度×障害発生可能性度×構築時間
投機実行対象VM選択部(53)では、すべてのVMについて投機実行度を計算し、投機実行度の高いVMを投機実行対象VMとして選択する。
このように複数の条件を組み合わせて選択することにより、より効率的に投機実行対象VMを選択することができる。
なお、ここでは、VM優先度、障害推測、構築時間の3つの選択基準を組み合わせたが、実施の形態1、3、4、5、6で示したパラメータを任意に組み合わせて投機実行度を計算して投機実行対象VMを選択するようにしてもよい。
このように、本実施の形態では、投機実行する仮想計算機を選択する際に、複数の条件を組み合わせて仮想計算機を選択する仮想環境構築方式を説明した。
実施の形態8.
実施の形態1では、指定された時間の経過後や、指定された日時などの定期的な選択タイミングごとに投機実行対象VMを選択しているが、実施の形態8ではVM動作特性や、システム監視によって投機実行をやり直すタイミングを決める。
実施の形態1では、指定された時間の経過後や、指定された日時などの定期的な選択タイミングごとに投機実行対象VMを選択しているが、実施の形態8ではVM動作特性や、システム監視によって投機実行をやり直すタイミングを決める。
図14に本実施の形態に係る動作例を示すフローチャートを示す。
投機実行完了後(S2)、投機実行対象VM選択部(53)は、VM動作特性およびシステム監視を行う(S41)。
VMの負荷状態や仮想計算機システム(500)の負荷状態が変化した場合など、システムの状態に変化があった場合に、投機実行対象VM選択部(53)は、投機実行対象VMの選択をやり直す(S42)。
このようなタイミングで投機実行対象VMを見直すことにより、より効率的な投機実行が可能になる。
投機実行完了後(S2)、投機実行対象VM選択部(53)は、VM動作特性およびシステム監視を行う(S41)。
VMの負荷状態や仮想計算機システム(500)の負荷状態が変化した場合など、システムの状態に変化があった場合に、投機実行対象VM選択部(53)は、投機実行対象VMの選択をやり直す(S42)。
このようなタイミングで投機実行対象VMを見直すことにより、より効率的な投機実行が可能になる。
以上、本実施の形態では、仮想計算機動作特性やシステム監視を行い、システムの状態に変化が発生したタイミングで投機実行処理を行う仮想環境構築方式を説明した。
実施の形態9.
本実施の形態では、予備サーバ装置(以下、予備サーバともいう)が複数あり、VMの構築先サーバが決まっていない場合に投機実行先サーバを選択して投機実行を行う。
本実施の形態では、予備サーバ装置(以下、予備サーバともいう)が複数あり、VMの構築先サーバが決まっていない場合に投機実行先サーバを選択して投機実行を行う。
図15に、本実施の形態に係るシステム構成例を示す。
本実施の形態では、投機実行対象VM選択部(53)が、投機実行先サーバ選択機能(85)を有する。
本実施の形態では、投機実行対象VMの障害発生時に投機実行対象VMを動作させるために設けられた予備サーバ装置(予備物理計算機)が複数存在する場合に、投機実行対象VM選択部(53)は、投機実行先サーバ選択機能(85)により、投機実行対象VMごとに構築先の予備サーバ装置を決定する。
また、投機実行対象VM選択部(53)は、予備サーバ装置でVMを動作させることができる個数分の投機実行対象VMを選択する。
本実施の形態では、投機実行対象VM選択部(53)が、投機実行先サーバ選択機能(85)を有する。
本実施の形態では、投機実行対象VMの障害発生時に投機実行対象VMを動作させるために設けられた予備サーバ装置(予備物理計算機)が複数存在する場合に、投機実行対象VM選択部(53)は、投機実行先サーバ選択機能(85)により、投機実行対象VMごとに構築先の予備サーバ装置を決定する。
また、投機実行対象VM選択部(53)は、予備サーバ装置でVMを動作させることができる個数分の投機実行対象VMを選択する。
図16に本実施の形態に係る動作例を示すフローチャートを示す。
まず、投機実行対象VM選択部(53)は、すべての予備サーバについて、すべてのVMを各予備サーバに構築する場合の投機実行度を計算する(S51、S52、S53)。
投機実行度は、例えば、実施の形態7で示した方法で計算する。
VMが5つ、予備サーバ装置が2台の場合に投機実行度を計算した例を図20に示す。
計算には、例として図17、図18、図19の値を使用した。
図17は各VMの優先度を示す。図18は各VMの障害発生可能性度を示す。図19は各VMの構築時間を示す。
2台の予備サーバそれぞれが2つのVMを投機実行する場合、図20において各サーバで投機実行度の高いVMを選択すると、SERVER_Aでは、VM#1とVM#3、SERVER_BではVM#1とVM#2が選択される。
この場合、VM#1は、両方の予備サーバで選択されるが、VM#1を両方のサーバで投機実行する。
または、1つのVMが複数のサーバで投機実行されないという条件を追加する場合は以下のように選択する。
投機実行対象VM選択部(53)は、投機実行先サーバ選択機能(85)により、まず、投機実行度の最も大きいSERVER_AのVM#1を選択する。
次に、投機実行対象VM選択部(53)は、既に選択されたVM#1を除いて、次に投機実行度の大きいSERVER_BのVM#2を選択する。
次に、既に選択されたVM#1とVM#2を除いて、次に投機実行度の大きいSERVER_BのVM#3を選択する。
この時点で、SERVER_Bは2つのVMが選択されたため以降の選択ではSERVER_Bを除く。
次に、投機実行対象VM選択部(53)は、既に選択されたVM#1、VM#2、VM#3およびSERVER_Bを除いて、次に投機実行度の大きいSERVER_AのVM#5を選択する。
これで、SERVER_Aも2つのVMが選択される。
この方法で選択すると、SERVER_AではVM#1とVM#5、SERVER_BではVM#2とVM#3が選択されたことになり、この選択結果で投機実行を行う。
まず、投機実行対象VM選択部(53)は、すべての予備サーバについて、すべてのVMを各予備サーバに構築する場合の投機実行度を計算する(S51、S52、S53)。
投機実行度は、例えば、実施の形態7で示した方法で計算する。
VMが5つ、予備サーバ装置が2台の場合に投機実行度を計算した例を図20に示す。
計算には、例として図17、図18、図19の値を使用した。
図17は各VMの優先度を示す。図18は各VMの障害発生可能性度を示す。図19は各VMの構築時間を示す。
2台の予備サーバそれぞれが2つのVMを投機実行する場合、図20において各サーバで投機実行度の高いVMを選択すると、SERVER_Aでは、VM#1とVM#3、SERVER_BではVM#1とVM#2が選択される。
この場合、VM#1は、両方の予備サーバで選択されるが、VM#1を両方のサーバで投機実行する。
または、1つのVMが複数のサーバで投機実行されないという条件を追加する場合は以下のように選択する。
投機実行対象VM選択部(53)は、投機実行先サーバ選択機能(85)により、まず、投機実行度の最も大きいSERVER_AのVM#1を選択する。
次に、投機実行対象VM選択部(53)は、既に選択されたVM#1を除いて、次に投機実行度の大きいSERVER_BのVM#2を選択する。
次に、既に選択されたVM#1とVM#2を除いて、次に投機実行度の大きいSERVER_BのVM#3を選択する。
この時点で、SERVER_Bは2つのVMが選択されたため以降の選択ではSERVER_Bを除く。
次に、投機実行対象VM選択部(53)は、既に選択されたVM#1、VM#2、VM#3およびSERVER_Bを除いて、次に投機実行度の大きいSERVER_AのVM#5を選択する。
これで、SERVER_Aも2つのVMが選択される。
この方法で選択すると、SERVER_AではVM#1とVM#5、SERVER_BではVM#2とVM#3が選択されたことになり、この選択結果で投機実行を行う。
このように、本実施の形態では、予備サーバが複数あり、構築先が決まっていない場合に、各仮想計算機が予備サーバそれぞれで構築する場合の投機実行度を求め、その値によって投機実行を行う仮想環境構築方式を説明した。
最後に、実施の形態1〜9に示した管理サーバ装置(51)のハードウェア構成例について説明する。
図21は、実施の形態1〜9に示す管理サーバ装置(51)のハードウェア資源の一例を示す図である。
なお、図21の構成は、あくまでも管理サーバ装置(51)のハードウェア構成の一例を示すものであり、管理サーバ装置(51)のハードウェア構成は図21に記載の構成に限らず、他の構成であってもよい。
図21は、実施の形態1〜9に示す管理サーバ装置(51)のハードウェア資源の一例を示す図である。
なお、図21の構成は、あくまでも管理サーバ装置(51)のハードウェア構成の一例を示すものであり、管理サーバ装置(51)のハードウェア構成は図21に記載の構成に限らず、他の構成であってもよい。
図21において、管理サーバ装置(51)は、プログラムを実行するCPU911(Central Processing Unit、中央処理装置、処理装置、演算装置、マイクロプロセッサ、マイクロコンピュータ、プロセッサともいう)を備えている。
CPU911は、バス912を介して、例えば、ROM(Read Only Memory)913、RAM(Random Access Memory)914、通信ボード915、表示装置901、キーボード902、マウス903、磁気ディスク装置920と接続され、これらのハードウェアデバイスを制御する。
更に、CPU911は、FDD904(Flexible Disk Drive)、コンパクトディスク装置905(CDD)、プリンタ装置906、スキャナ装置907と接続していてもよい。また、磁気ディスク装置920の代わりに、光ディスク装置、メモリカード(登録商標)読み書き装置などの記憶装置でもよい。
RAM914は、揮発性メモリの一例である。ROM913、FDD904、CDD905、磁気ディスク装置920の記憶媒体は、不揮発性メモリの一例である。これらは、記憶装置の一例である。
実施の形態1〜9で説明した「VM優先度情報記憶部(54)」は、RAM914、磁気ディスク装置920等により実現される。
通信ボード915、キーボード902、マウス903、スキャナ装置907、FDD904などは、入力装置の一例である。
また、通信ボード915、表示装置901、プリンタ装置906などは、出力装置の一例である。
CPU911は、バス912を介して、例えば、ROM(Read Only Memory)913、RAM(Random Access Memory)914、通信ボード915、表示装置901、キーボード902、マウス903、磁気ディスク装置920と接続され、これらのハードウェアデバイスを制御する。
更に、CPU911は、FDD904(Flexible Disk Drive)、コンパクトディスク装置905(CDD)、プリンタ装置906、スキャナ装置907と接続していてもよい。また、磁気ディスク装置920の代わりに、光ディスク装置、メモリカード(登録商標)読み書き装置などの記憶装置でもよい。
RAM914は、揮発性メモリの一例である。ROM913、FDD904、CDD905、磁気ディスク装置920の記憶媒体は、不揮発性メモリの一例である。これらは、記憶装置の一例である。
実施の形態1〜9で説明した「VM優先度情報記憶部(54)」は、RAM914、磁気ディスク装置920等により実現される。
通信ボード915、キーボード902、マウス903、スキャナ装置907、FDD904などは、入力装置の一例である。
また、通信ボード915、表示装置901、プリンタ装置906などは、出力装置の一例である。
通信ボード915は、図1に示すように、ネットワークに接続されている。例えば、通信ボード915は、LAN(ローカルエリアネットワーク)の他、インターネット、WAN(ワイドエリアネットワーク)、SAN(ストレージエリアネットワーク)などに接続されていても構わない。
磁気ディスク装置920には、オペレーティングシステム921(OS)、ウィンドウシステム922、プログラム群923、ファイル群924が記憶されている。
プログラム群923のプログラムは、CPU911がオペレーティングシステム921、ウィンドウシステム922を利用しながら実行する。
プログラム群923のプログラムは、CPU911がオペレーティングシステム921、ウィンドウシステム922を利用しながら実行する。
また、RAM914には、CPU911に実行させるオペレーティングシステム921のプログラムやアプリケーションプログラムの少なくとも一部が一時的に格納される。
また、RAM914には、CPU911による処理に必要な各種データが格納される。
また、RAM914には、CPU911による処理に必要な各種データが格納される。
また、ROM913には、BIOS(Basic Input Output System)プログラムが格納され、磁気ディスク装置920にはブートプログラムが格納されている。
管理サーバ装置(51)の起動時には、ROM913のBIOSプログラム及び磁気ディスク装置920のブートプログラムが実行され、BIOSプログラム及びブートプログラムによりオペレーティングシステム921が起動される。
管理サーバ装置(51)の起動時には、ROM913のBIOSプログラム及び磁気ディスク装置920のブートプログラムが実行され、BIOSプログラム及びブートプログラムによりオペレーティングシステム921が起動される。
上記プログラム群923には、実施の形態1〜9の説明において「〜部」(「VM優先度情報記憶部(54)」以外、以下同様)として説明している機能を実行するプログラムが記憶されている。プログラムは、CPU911により読み出され実行される。
ファイル群924には、実施の形態1〜9の説明において、「〜の判断」、「〜の計算」、「〜の算出」、「〜の比較」、「〜の調査」、「〜の更新」、「〜の設定」、「〜の登録」、「〜の選択」等として説明している処理の結果を示す情報やデータや信号値や変数値やパラメータが、「〜ファイル」や「〜データベース」の各項目として記憶されている。
「〜ファイル」や「〜データベース」は、ディスクやメモリなどの記録媒体に記憶される。ディスクやメモリなどの記憶媒体に記憶された情報やデータや信号値や変数値やパラメータは、読み書き回路を介してCPU911によりメインメモリやキャッシュメモリに読み出され、抽出・検索・参照・比較・演算・計算・処理・編集・出力・印刷・表示などのCPUの動作に用いられる。
抽出・検索・参照・比較・演算・計算・処理・編集・出力・印刷・表示のCPUの動作の間、情報やデータや信号値や変数値やパラメータは、メインメモリ、レジスタ、キャッシュメモリ、バッファメモリ等に一時的に記憶される。
また、実施の形態1〜9で説明しているフローチャートの矢印の部分は主としてデータや信号の入出力を示し、データや信号値は、RAM914のメモリ、FDD904のフレキシブルディスク、CDD905のコンパクトディスク、磁気ディスク装置920の磁気ディスク、その他光ディスク、ミニディスク、DVD等の記録媒体に記録される。また、データや信号は、バス912や信号線やケーブルその他の伝送媒体によりオンライン伝送される。
「〜ファイル」や「〜データベース」は、ディスクやメモリなどの記録媒体に記憶される。ディスクやメモリなどの記憶媒体に記憶された情報やデータや信号値や変数値やパラメータは、読み書き回路を介してCPU911によりメインメモリやキャッシュメモリに読み出され、抽出・検索・参照・比較・演算・計算・処理・編集・出力・印刷・表示などのCPUの動作に用いられる。
抽出・検索・参照・比較・演算・計算・処理・編集・出力・印刷・表示のCPUの動作の間、情報やデータや信号値や変数値やパラメータは、メインメモリ、レジスタ、キャッシュメモリ、バッファメモリ等に一時的に記憶される。
また、実施の形態1〜9で説明しているフローチャートの矢印の部分は主としてデータや信号の入出力を示し、データや信号値は、RAM914のメモリ、FDD904のフレキシブルディスク、CDD905のコンパクトディスク、磁気ディスク装置920の磁気ディスク、その他光ディスク、ミニディスク、DVD等の記録媒体に記録される。また、データや信号は、バス912や信号線やケーブルその他の伝送媒体によりオンライン伝送される。
また、実施の形態1〜9の説明において「〜部」として説明しているものは、「〜回路」、「〜装置」、「〜機器」であってもよく、また、「〜ステップ」、「〜手順」、「〜処理」であってもよい。
すなわち、実施の形態1〜9で説明したフローチャートに示すステップ、手順、処理により、本発明に係るシステム管理方法を実現することができる。
また、「〜部」として説明しているものは、ROM913に記憶されたファームウェアで実現されていても構わない。或いは、ソフトウェアのみ、或いは、素子・デバイス・基板・配線などのハードウェアのみ、或いは、ソフトウェアとハードウェアとの組み合わせ、さらには、ファームウェアとの組み合わせで実施されても構わない。ファームウェアとソフトウェアは、プログラムとして、磁気ディスク、フレキシブルディスク、光ディスク、コンパクトディスク、ミニディスク、DVD等の記録媒体に記憶される。プログラムはCPU911により読み出され、CPU911により実行される。すなわち、プログラムは、実施の形態1〜9の「〜部」としてコンピュータを機能させるものである。あるいは、実施の形態1〜9の「〜部」の手順や方法をコンピュータに実行させるものである。
すなわち、実施の形態1〜9で説明したフローチャートに示すステップ、手順、処理により、本発明に係るシステム管理方法を実現することができる。
また、「〜部」として説明しているものは、ROM913に記憶されたファームウェアで実現されていても構わない。或いは、ソフトウェアのみ、或いは、素子・デバイス・基板・配線などのハードウェアのみ、或いは、ソフトウェアとハードウェアとの組み合わせ、さらには、ファームウェアとの組み合わせで実施されても構わない。ファームウェアとソフトウェアは、プログラムとして、磁気ディスク、フレキシブルディスク、光ディスク、コンパクトディスク、ミニディスク、DVD等の記録媒体に記憶される。プログラムはCPU911により読み出され、CPU911により実行される。すなわち、プログラムは、実施の形態1〜9の「〜部」としてコンピュータを機能させるものである。あるいは、実施の形態1〜9の「〜部」の手順や方法をコンピュータに実行させるものである。
このように、実施の形態1〜9に示す管理サーバ装置(51)は、処理装置たるCPU、記憶装置たるメモリ、磁気ディスク等、入力装置たるキーボード、マウス、通信ボード等、出力装置たる表示装置、通信ボード等を備えるコンピュータであり、上記したように「〜部」として示された機能をこれら処理装置、記憶装置、入力装置、出力装置を用いて実現するものである。
40 LAN、50 サーバ装置、51 管理サーバ装置、52 投機実行部、53 投機実行対象VM選択部、54 VM優先度情報記憶部、55 VM構築部、61 負荷情報取得部、62 ディスク性能取得部、70 構築時間調査部、71 ディスク性能調査部、72 ディスク性能情報管理テーブル、73 時間予測計算部、80 障害推測部、81 障害情報取得部、82 VM動作特性調査部、83 VM動作特性情報取得部、84 ユーザ指示、その他パラメータ入力部、85 投機実行先サーバ選択機能、500 仮想計算機システム。
Claims (11)
- 複数の仮想計算機を動作させる複数の物理計算機が含まれ、物理計算機間で共有ディスクが用いられない仮想計算機システム
を管理する管理システムであって、
仮想計算機ごとに異なり、時間の経過に伴って変動し得るディスクイメージの生成及び格納に要する処理時間を、仮想計算機ごとに予測する処理時間予測部と、
いずれかの仮想計算機に障害が発生する前に、所定の選択タイミングごとに、前記処理時間予測部にディスクイメージの生成及び格納に要する処理時間を仮想計算機ごとに予測させ、前記処理時間予測部により予測された仮想計算機ごとの処理時間に基づいて、予備用のディスクイメージを生成する仮想計算機を予備対象仮想計算機として前記複数の仮想計算機の中から選択する仮想計算機選択部と、
前記仮想計算機選択部により選択された前記予備対象仮想計算機のディスクイメージを生成するディスクイメージ生成部と、
前記予備対象仮想計算機が動作していないいずれかの物理計算機に前記ディスクイメージ生成部により生成された前記予備対象仮想計算機のディスクイメージを格納するディスクイメージ格納部とを有することを特徴とする管理システム。 - 前記管理システムは、更に、
時間の経過に伴って各仮想計算機の優先度が更新され得る優先度情報を記憶する優先度情報記憶部を有し、
前記仮想計算機選択部は、
選択タイミングごとに、選択タイミング時に前記優先度記憶部に記憶されている優先度情報に基づいて、前記予備対象仮想計算機を選択することを特徴とする請求項1に記載の管理システム。 - 前記管理システムは、更に、
仮想計算機ごとに、仮想計算機が動作している物理計算機の障害発生可能性を導出する障害発生可能性導出部を有し、
前記仮想計算機選択部は、
選択タイミングごとに、前記障害発生可能性導出部に物理計算機の障害発生可能性を仮想計算機ごとに導出させ、前記障害発生可能性導出部により導出された仮想計算機ごとの障害発生可能性に基づいて、前記予備対象仮想計算機を選択することを特徴とする請求項1に記載の管理システム。 - 前記管理システムは、更に、
仮想計算機ごとに異なり、時間の経過に伴って変動し得る仮想計算機の動作特性を仮想計算機ごとに調査する動作特性調査部を有し、
前記仮想計算機選択部は、
選択タイミングごとに、前記動作特性調査部に各仮想計算機の動作特性を調査させ、前記動作特性調査部により調査された各仮想計算機の動作特性に基づいて、前記予備対象仮想計算機を選択することを特徴とする請求項1に記載の管理システム。 - 前記仮想計算機選択部は、
選択タイミングごとに、複数の選択基準を組み合わせ、組わせた選択基準に基づいて、前記予備対象仮想計算機を選択することを特徴とする請求項1に記載の管理システム。 - 前記管理システムは、更に、
前記仮想計算機選択部により選択された前記予備対象仮想計算機のディスクイメージの格納先となる格納先物理計算機の負荷レベルを調査する負荷レベル調査部を有し、
前記ディスクイメージ格納部は、
前記格納先物理計算機の負荷レベルが所定レベル以上である場合に、前記格納先物理計算機への前記予備対象仮想計算機のディスクイメージの格納を行わず、前記格納先物理計算機の負荷レベルが前記所定レベル未満となった際に、前記格納先物理計算機への前記予備対象仮想計算機のディスクイメージの格納を行うことを特徴とする請求項1に記載の管理システム。 - 前記仮想計算機選択部は、
一定周期の選択タイミングごとに、前記予備対象仮想計算機を選択することを特徴とする請求項1に記載の管理システム。 - 前記仮想計算機選択部は、
前記仮想計算機システムのユーザから予備対象仮想計算機の選択指示があったタイミング、特定のパラメータが入力されたタイミング、いずれかの仮想計算機の負荷状態が変化したタイミング、前記仮想計算機システムの負荷状態が変化したタイミングの少なくともいずれかを選択タイミングとし、選択タイミングごとに、前記予備対象仮想計算機を選択することを特徴とする請求項1に記載の管理システム。 - 前記管理システムは、
障害発生時に障害が発生した仮想計算機を動作させるために設けられた予備物理計算機が存在する仮想計算機システムを管理し、
前記仮想計算機選択部は、
前記予備物理計算機で動作させることができる仮想計算機の個数分の予備対象仮想計算機を選択することを特徴とする請求項1に記載の管理システム。 - 複数の仮想計算機を動作させる複数の物理計算機が含まれ、物理計算機間で共有ディスクが用いられない仮想計算機システム
を管理するコンピュータが、
いずれかの仮想計算機に障害が発生する前に、所定の選択タイミングごとに、仮想計算機ごとに異なり、時間の経過に伴って変動し得るディスクイメージの生成及び格納に要する処理時間を仮想計算機ごとに予測し、予測した仮想計算機ごとの処理時間に基づいて、予備用のディスクイメージを生成する仮想計算機を予備対象仮想計算機として前記複数の仮想計算機の中から選択し、
選択した前記予備対象仮想計算機のディスクイメージを生成し、
前記予備対象仮想計算機が動作していないいずれかの物理計算機に生成した前記予備対象仮想計算機のディスクイメージを格納することを特徴とするシステム管理方法。 - 複数の仮想計算機を動作させる複数の物理計算機が含まれ、物理計算機間で共有ディスクが用いられない仮想計算機システム
を管理するコンピュータに、
いずれかの仮想計算機に障害が発生する前に、所定の選択タイミングごとに、仮想計算機ごとに異なり、時間の経過に伴って変動し得るディスクイメージの生成及び格納に要する処理時間を仮想計算機ごとに予測し、予測した仮想計算機ごとの処理時間に基づいて、予備用のディスクイメージを生成する仮想計算機を予備対象仮想計算機として前記複数の仮想計算機の中から選択する仮想計算機選択処理と、
前記仮想計算機選択処理により選択された前記予備対象仮想計算機のディスクイメージを生成するディスクイメージ生成処理と、
前記予備対象仮想計算機が動作していないいずれかの物理計算機に前記ディスクイメージ生成処理により生成された前記予備対象仮想計算機のディスクイメージを格納するディスクイメージ格納処理とを実行させることを特徴とするプログラム。
Applications Claiming Priority (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
PCT/JP2010/052040 WO2011099141A1 (ja) | 2010-02-12 | 2010-02-12 | 管理システム及びシステム管理方法及びプログラム |
Publications (2)
Publication Number | Publication Date |
---|---|
JPWO2011099141A1 JPWO2011099141A1 (ja) | 2013-06-13 |
JP5342660B2 true JP5342660B2 (ja) | 2013-11-13 |
Family
ID=44367444
Family Applications (1)
Application Number | Title | Priority Date | Filing Date |
---|---|---|---|
JP2011553689A Expired - Fee Related JP5342660B2 (ja) | 2010-02-12 | 2010-02-12 | 管理システム及びシステム管理方法及びプログラム |
Country Status (2)
Country | Link |
---|---|
JP (1) | JP5342660B2 (ja) |
WO (1) | WO2011099141A1 (ja) |
Families Citing this family (3)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
JP2013186692A (ja) * | 2012-03-08 | 2013-09-19 | Hitachi Systems Ltd | 仮想マシン提供システム |
US20150317175A1 (en) * | 2012-11-19 | 2015-11-05 | Hitachi Systems, Ltd. | Virtual machine synchronization system |
JP6052407B2 (ja) * | 2013-06-12 | 2016-12-27 | 富士通株式会社 | 中継装置、中継プログラム、及び中継方法 |
Citations (2)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
JP2009129148A (ja) * | 2007-11-22 | 2009-06-11 | Hitachi Ltd | サーバ切り替え方法、およびサーバシステム |
JP2009211620A (ja) * | 2008-03-06 | 2009-09-17 | Hitachi Information Systems Ltd | 仮想環境複製方法とシステムおよびプログラム |
Family Cites Families (2)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
JPS61278902A (ja) * | 1985-06-04 | 1986-12-09 | Hitachi Ltd | 制御装置のバツクアツプ方法 |
JPH05160876A (ja) * | 1991-12-09 | 1993-06-25 | Oki Electric Ind Co Ltd | 通信制御プロセッサの管理方法 |
-
2010
- 2010-02-12 JP JP2011553689A patent/JP5342660B2/ja not_active Expired - Fee Related
- 2010-02-12 WO PCT/JP2010/052040 patent/WO2011099141A1/ja active Application Filing
Patent Citations (2)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
JP2009129148A (ja) * | 2007-11-22 | 2009-06-11 | Hitachi Ltd | サーバ切り替え方法、およびサーバシステム |
JP2009211620A (ja) * | 2008-03-06 | 2009-09-17 | Hitachi Information Systems Ltd | 仮想環境複製方法とシステムおよびプログラム |
Also Published As
Publication number | Publication date |
---|---|
WO2011099141A1 (ja) | 2011-08-18 |
JPWO2011099141A1 (ja) | 2013-06-13 |
Similar Documents
Publication | Publication Date | Title |
---|---|---|
US11182220B2 (en) | Proactive high availability in a virtualized computer system | |
US10838803B2 (en) | Resource provisioning and replacement according to a resource failure analysis in disaggregated data centers | |
JP5140633B2 (ja) | 仮想化環境において生じる障害の解析方法、管理サーバ、及びプログラム | |
US11050637B2 (en) | Resource lifecycle optimization in disaggregated data centers | |
US9934098B2 (en) | Automatic serial order starting of resource groups on failover systems based on resource group usage prediction | |
US10379967B2 (en) | Live rollback for a computing environment | |
US10152364B2 (en) | Predicting, diagnosing, and recovering from application failures based on resource access patterns | |
US8627143B2 (en) | Dynamically modeling and selecting a checkpoint scheme based upon an application workload | |
US8977906B2 (en) | Checkpoint debugging using mirrored virtual machines | |
US10754720B2 (en) | Health check diagnostics of resources by instantiating workloads in disaggregated data centers | |
US20160004582A1 (en) | Management system and management program | |
Levy et al. | Predictive and Adaptive Failure Mitigation to Avert Production Cloud {VM} Interruptions | |
JP6190468B2 (ja) | 管理システム、プラン生成方法、およびプラン生成プログラム | |
US10761915B2 (en) | Preemptive deep diagnostics and health checking of resources in disaggregated data centers | |
US9256489B2 (en) | Synchronized debug information generation | |
JP6009089B2 (ja) | 計算機システムを管理する管理システム及びその管理方法 | |
US10831580B2 (en) | Diagnostic health checking and replacement of resources in disaggregated data centers | |
US20200097352A1 (en) | Preemptive resource replacement according to failure pattern analysis in disaggregated data centers | |
US20180225148A1 (en) | Resource pre-configuration | |
JP2012178014A (ja) | 故障予測・対策方法及びクライアントサーバシステム | |
JP2010134557A (ja) | 仮想マシン運用管理システム、その運用管理方法、及びプログラム | |
JP5342660B2 (ja) | 管理システム及びシステム管理方法及びプログラム | |
US11113163B2 (en) | Storage array drive recovery | |
Di Martino et al. | Measuring the resiliency of extreme-scale computing environments | |
JP2010128866A (ja) | 情報処理装置及び情報処理方法及びプログラム |
Legal Events
Date | Code | Title | Description |
---|---|---|---|
A521 | Request for written amendment filed |
Free format text: JAPANESE INTERMEDIATE CODE: A523 Effective date: 20130513 |
|
TRDD | Decision of grant or rejection written | ||
A01 | Written decision to grant a patent or to grant a registration (utility model) |
Free format text: JAPANESE INTERMEDIATE CODE: A01 Effective date: 20130716 |
|
A61 | First payment of annual fees (during grant procedure) |
Free format text: JAPANESE INTERMEDIATE CODE: A61 Effective date: 20130809 |
|
R150 | Certificate of patent or registration of utility model |
Free format text: JAPANESE INTERMEDIATE CODE: R150 |
|
R250 | Receipt of annual fees |
Free format text: JAPANESE INTERMEDIATE CODE: R250 |
|
LAPS | Cancellation because of no payment of annual fees |