JP2011118864A - リソース制御方法及びリソース制御システム - Google Patents

リソース制御方法及びリソース制御システム Download PDF

Info

Publication number
JP2011118864A
JP2011118864A JP2010147060A JP2010147060A JP2011118864A JP 2011118864 A JP2011118864 A JP 2011118864A JP 2010147060 A JP2010147060 A JP 2010147060A JP 2010147060 A JP2010147060 A JP 2010147060A JP 2011118864 A JP2011118864 A JP 2011118864A
Authority
JP
Japan
Prior art keywords
business
job
space
resource
computer
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.)
Granted
Application number
JP2010147060A
Other languages
English (en)
Other versions
JP5396339B2 (ja
Inventor
Kosuke Shibata
幸祐 柴田
Current Assignee (The listed assignees may be inaccurate. Google has not performed a legal analysis and makes no representation or warranty as to the accuracy of the list.)
Hitachi Ltd
Original Assignee
Hitachi Ltd
Priority date (The priority date is an assumption and is not a legal conclusion. Google has not performed a legal analysis and makes no representation as to the accuracy of the date listed.)
Filing date
Publication date
Application filed by Hitachi Ltd filed Critical Hitachi Ltd
Priority to JP2010147060A priority Critical patent/JP5396339B2/ja
Publication of JP2011118864A publication Critical patent/JP2011118864A/ja
Application granted granted Critical
Publication of JP5396339B2 publication Critical patent/JP5396339B2/ja
Active legal-status Critical Current
Anticipated expiration legal-status Critical

Links

Images

Landscapes

  • Stored Programmes (AREA)
  • Debugging And Monitoring (AREA)

Abstract

【課題】仮想化システムにおいて、ひとつのマシンで複数の業務が実行される場合や、さらにひとつの業務が複数のマシンにまたがって実行される場合に、業務視点でリソースの割り当てを可能にする。
【解決手段】物理的なマシン100の中の仮想空間内に、業務を実行するための空間として「業務空間」124、125を定義し、業務空間124、125に対してリソースの割り当てをおこなう。実行中のジョブの状態を取得し、実行中のジョブを有する業務と、当該ジョブが所属する業務の優先度を加味して業務空間124、125に対するリソース量を算出する。そして、業務空間124、125内に、当該業務の実行に必要な仮想マシンの複製130、132を配置し、業務空間124、125に割り当てられたリソースを用いてこれらの仮想マシン130、132を動作させる。
【選択図】図1

Description

本発明は、仮想化システム環境における仮想マシンへのリソース割り当て方法の技術に関しする。
業務アプリケーションが動作している複数のマシンを仮想化し、1台の物理的なマシンに集約することで、ITにかかるコストを削減する取り組みが活発におこなわれている。例えば、ある業務が物理的に3台のマシンで構成されたシステムで稼働する場合、当該業務を1台の物理マシン上に3台の仮想マシンを構築して稼働させることで、ITにかかるコストを従来の3分の1に削減することができる。
ここで、物理的なマシン1台あたりの仮想マシンの数(集約度)は、削減できるコストに直結するので、集約度を更に大きくするためには、各仮想マシンが必要とする「平均」リソース量の総和が、物理的なマシンが有するリソース量と等しくなる程度に物理的なマシン上に仮想マシンを配置することが多い。こうすることで、リソースの限られた物理的なマシン上に更に多くの仮想マシンを配置することが可能となる。そのため、逆に業務アプリケーションを稼働する各仮想マシンが必要とする「最大」リソース量の総和は、物理的なマシンが有するリソース量よりも大きくなるのが一般的である。
仮想マシンの必要とする最大リソース量の総和が、物理的なマシンの持つリソース量を越えるような場合、各仮想マシンに割り当てるリソースの量を適宜かつ適切に決定する必要がある。
従来の技術では、特許文献1に示すように、各仮想マシンに対して、あらかじめ決められた比率あるいは固定値にしたがって、各仮想マシンに割り当てるリソースの量を決定する。さらに、ある仮想マシンにおいて余剰リソースがある場合には、余剰リソースを回収したうえで、不足している仮想マシンに余剰リソースの再割り当てをおこなう。
特開2005−309644 リソース制御方法及びそのシステム
すでに運用している業務システムを仮想化集約する場合、ひとつの仮想マシンで複数の業務アプリケーションが動作する場合や、さらにひとつの業務が複数の仮想マシンにまたがって実行される場合がある。このような場合、ある業務で使用可能なリソースは、同一仮想マシン上で実行される他の業務により影響を受ける可能性がある。しかし、従来技術では、リソースの割当が仮想マシンを単位として行われているため、他の業務により影響を受ける場合の考慮がなされていない。従来技術での仮想マシン単位でのリソース割り当てでは、このような同一仮想マシン上で実行される業務の影響を考慮した業務視点でリソースの割り当てをおこなうことができない。
本発明では、このように、ひとつのマシンで複数の業務が実行される場合や、さらにひとつの業務が複数のマシンにまたがって実行される場合に、業務視点でリソースの割り当てを可能にすることを目的とする。
本発明では、物理的なマシンの中の仮想空間内に、業務を実行するための空間として「業務空間」を定義し、業務空間に対してリソースの割り当てをおこなう。
前述の業務空間内に、当該業務の実行に必要な仮想マシンの複製を配置し、業務空間に割り当てられたリソースを用いてこれらの仮想マシンを動作させる。業務空間に配置された仮想マシンには、当該業務のみを実行させることにより、各業務を実行するマシンを業務空間内に集約し、各業務に対して一定のリソースを割り当てることができる。
このとき、各業務空間に割り当てた業務を構成するジョブの実行状況から、業務空間および業務空間内に配置した仮想マシンに対するリソース割り当てを制御する。実際のリソース使用状況ではなく、ジョブの実行状況を利用することで、業務に対して必要なリソース量を正しく把握し、適切なリソースの割り当てをおこなうことができる。
本発明によれば、仮想化システムにおいて、ひとつの仮想マシンで複数の業務が実行される場合や、さらにひとつの業務が複数の仮想マシンにまたがって実行される場合に、業務視点でリソースの割り当てをおこなうことができる。
実施例1での全体構成を示した説明図 実施例1の業務空間の詳細を示した説明図 実施例1の記憶部の詳細を示した説明図 実施例1におけるジョブの概念図 実施例1におけるジョブ管理テーブル 実施例1における業務別リソース割当管理テーブル 実施例1における業務空間管理テーブル 実施例1における業務空間リソース割当管理テーブル 実施例1におけるジョブ実行状況管理テーブル 実施例1における業務空間割り当ての流れを示したフローチャート 実施例1におけるジョブ実行の流れを示したフローチャート 実施例1におけるリソース割り当ての流れを示したフローチャート 実施例1における業務空間への割り当てを示した概念図 実施例1におけるリソース割り当て管理テーブル 実施例1におけるジョブ実行状況およびリソース割り当て状況を表示する画面 実施例2における全体構成を示した説明図 実施例2における管理マネージャの詳細を示した説明図 実施例2における管理マネージャの記憶部の詳細を示した説明図 実施例2における管理マネージャ用ジョブ管理テーブル 実施例2における管理マネージャ用業務別リソース割当管理テーブル 実施例2における管理マネージャ用業務空間管理テーブル 実施例2における管理マネージャ用業務空間リソース割当管理テーブル 実施例2における管理マネージャ用ジョブ実行状況管理テーブル 実施例2における管理マネージャ用マシンリソース管理テーブル 実施例2において各業務に業務空間を割り当て、各実行マシンに業務空間を割り当てる流れの概要を示したフローチャート 実施例2において各業務に業務空間を割り当てる流れを示したフローチャート 実施例2において各実行マシンに業務空間を割り当てる流れを示したフローチャート 実施例2において各実行マシンに対して業務空間の割り当て(更新)をおこなう流れを示したフローチャート 実施例2においてジョブを実行する際の流れを示したフローチャート 実施例2において業務空間にジョブを投入する際の流れを示したフローチャート 実施例2において業務空間の移動をおこなう流れを示したフローチャート 実施例2において業務空間の削除をおこなう流れを示したフローチャート
以下、本発明におけるシステムの実施例について、図面を用いて説明する。
まず、以下で使用する用語について説明する。
ジョブとは、業務やサービスを構成する手順のひとつであり、業務アプリケーションやコマンド、スクリプトの実行などが該当する。ジョブの実行内容を定義したものをジョブ定義といい、ジョブ定義を識別するための識別子をジョブIDという。
業務とは、複数のジョブの集合であり、ジョブを実行する契機や、あるジョブの実行後に継続して実行するジョブを定義することにより、一連の手順を実行することができる。この一連の手順の定義を業務定義といい、業務定義を識別するための識別子を業務IDという。
仮想マシンとは、仮想化技術により物理的なマシンの中で動作する論理的なマシンであり、独立したOSを持ち、物理的なマシンと同様に動作する。仮想マシンの動作に必要なリソースは、物理的なマシンのリソースを、該物理的なマシンの中で動作する複数の仮想マシンで共有し、各仮想マシンには仮想的なリソースとして割り当てて使用される。このとき、物理的なマシンのリソースをどの仮想マシンにどれだけ割り当てるかを決めることができる。複数の仮想マシンで共有するリソースとして、CPUやメモリがあげられる。
また、仮想マシンの複製は、仮想マシンを構成する論理ボリュームを複製することにより容易に作成することができる。
本実施例では、各業務に対して割り当て量の調整をおこなうリソースを、CPUとメモリとし、それぞれ割り当ての比率が同じである場合について説明する。管理対象のリソースを減らすこと、これ以外のリソースについて管理対象として加えること、また業務への割り当て比をリソースごとに決定することも本発明の考え方において可能である。
また、本実施例では、複数の物理的なマシンに対して本発明を適用する場合に、各実行マシン上でのジョブの実行状況に応じた業務空間および業務空間上で実行される仮想マシンへのリソースの割り当てについては、各実行マシンで制御する方法を説明する。これらの制御を管理マネージャにおいて一括でおこなうことも、本発明の考え方において可能である。
図1は、本発明の実施例1の全体構成を示した説明図である。物理コンピュータ100に仮想化システムを構成した例を示している。
物理コンピュータ100は、ディスクインタフェース110、通信インタフェース111、CPU112、メモリ113、表示インタフェース114を備える。また、ディスクインタフェース110を通して記憶部101と、通信インタフェース111を通してネットワーク102と、表示インタフェース114を通して表示装置103と接続している。メモリ113には、OS120、ジョブ管理部121、業務空間管理部122、仮想化部123がロードされ、後述する業務空間124、125が確保される。業務空間には、ひとつまたは複数の仮想マシンが割り当てられる。業務空間の詳細については図2、記憶部の詳細については図3で説明する。
ジョブ管理部121は、図3に示すジョブ管理テーブル300、業務別リソース割当管理テーブル301の情報をもとに、業務ごとに業務空間を割り当て、割り当てた業務空間で仮想マシンを稼働させて、当該仮想マシンでジョブを実行し、これらの実行状況を管理する処理部である。これらの処理の詳細については、図10、図11に示している。
業務空間管理部122は、図3に示す業務空間管理テーブル302、業務空間リソース割当管理テーブル303、ジョブ実行状況管理テーブル304の情報をもとに、業務空間、仮想マシンごとのリソースの割り当て管理をおこなう処理部である。この処理の詳細については、図12に示している。
図2は、業務空間の詳細な構成を示した説明図である。説明を簡単にするため、仮想マシンは1台としている。
業務空間124は、業務空間で使用するリソースである論理CPU200、論理メモリ201を備え、ひとつまたは複数の仮想マシン130と、ひとつまたは複数の仮想ディスク131が割り当てられる。
仮想マシン130は、記憶部101に論理ボリュームとして記録されており、必要に応じてメモリ中にロードすることで仮想マシンとして動作する。仮想マシン130は、論理ディスクインタフェース210、論理通信インタフェース211、論理CPU212、論理メモリ213、論理表示インタフェース214を備える。また、論理ディスクインタフェース210を通して仮想ディスク131と接続している。論理メモリ213には、OS220、ジョブ実行部221、ひとつまたは複数の業務アプリケーション222がロードされる。
仮想ディスク131は、記憶部101に論理ボリュームとして記録されており、仮想マシン130の論理ディスクインタフェースを通して読み書きされる内容は、記憶部101内の論理ボリュームに反映される。
図3は、記憶部101の詳細な構成を示した説明図である。
記憶部101には、ジョブ管理テーブル300、業務別リソース割当管理テーブル301、業務空間管理テーブル302、業務空間リソース割当管理テーブル303、ジョブ実行状況管理テーブル304、リソース割り当て管理テーブル305が格納される。また、仮想マシンや仮想ディスクの論理ボリュームとして、仮想マシン論理ボリューム310、312、仮想ディスク論理ボリューム311、313が格納される。
図4は、本実施例で実行される業務と、業務を構成するジョブおよびその実行ホスト、実行順序を表した概念図である。図中の丸はジョブを、矢印はジョブの実行順序を表す。この情報は、図5に示すジョブ管理テーブル300の形式で管理される。
本実施例では、業務1(410)〜業務4(440)が、ホストA、ホストB、ホストCの3つのホストで実行される。
業務1(410)は、ジョブ1A(411)、ジョブ1B(412)、ジョブ1C(413)で構成され、この順序で実行される。同様に、業務2(420)は、ジョブ2A1(421)、ジョブ2A2(422)、ジョブ2C(423)で、業務3は、ジョブ3A1(431)、ジョブ3A2(432)、ジョブ3C(433)で、業務4(440)は、ジョブ4C(441)で構成される。ジョブ1A(411)、ジョブ2A1(421)、ジョブ2A2(422)は、ホストA上で実行される。同様に、ジョブ1B(412)、ジョブ3B1(431)、ジョブ3B2(432)は、ホストB上で、ジョブ1C(413)、ジョブ2C(423)、ジョブ3C(433)、ジョブ4C(441)は、ホストC上で実行される。
図5は、ジョブ管理テーブル300の詳細を示したものである。
業務を構成するジョブと、ジョブの実行内容を管理するテーブルで、業務ID500、ジョブID501、各ジョブが実行するコマンドの内容502、ジョブを実行するホスト503、そのジョブを実行した後に実行するジョブのジョブID504、そのジョブを実行する前に実行するジョブのジョブID505の情報を持つ。図5は、図4に示す業務の定義が格納された例を示している。
図6は、業務別リソース割当管理テーブル301の詳細を示したものである。業務IDごとのリソース割当量を管理するテーブルで、業務ID600、リソース割当比率601の情報を持つ。リソース割当比率601は、即ち業務の優先度を数値化したものにも相当する。またリソース割当比率601は、計算機リソース全体を100%としたときのリソース配分量であるので、業務毎に割当てるべきリソース量そのものを決定している。本実施例では、リソース割当比率601、もしくは当該割当比率から算出された具体的なリソース量を業務リソース量と呼ぶ。また業務リソース量は予めユーザの設定画面を通じて変更することも可能である。
図7は、業務空間管理テーブル302の詳細を示したものである。業務空間に所属する業務と、業務空間を構成するホストを管理するテーブルで、業務ID700、業務空間ID701、構成ホスト702の情報を持つ。業務空間管理テーブル302は、図10に示す手順で作成される。
図8は、業務空間リソース割当管理テーブル303の詳細を示したものである。業務空間ごとに割り当てる計算機リソースの割当比率を管理するテーブルで、業務空間ID800、リソース割当比率801の情報を持つ。業務空間リソース割当管理テーブル303は、図10に示す手順で作成される。リソース割当比率は、計算機リソース全体を100%とした場合の、業務空間毎に割り当てるべきリソース量である。これにより、業務の優先度に応じた業務空間へのリソース割当を行う。本実施例では、リソース割当比率801、もしくは当該割当比率から算出された具体的なリソース量を空間リソース量と呼ぶ。
図9は、ジョブ実行状況管理テーブル304の詳細を示したものである。
業務空間ごとの実行中のジョブを管理するテーブルで、業務空間ID900、ジョブ実行ID901、ジョブID902、実行ホスト903の情報を持つ。
ジョブ実行状況管理テーブル304は、図11に示す手順で作成される。
図10は、ジョブ管理部121が、各業務に業務空間を割り当てる流れを示したフローチャートである。割り当て方法の一例を示しているが、割り当て方法はこの限りではない。
ジョブ管理部121は、ジョブ管理テーブル300と業務別リソース割当管理テーブル301を参照し、優先度の高い業務から順に業務空間への割り当て処理をおこなう(1000)。まず、業務を割り当てるための業務空間を新たに定義する(1001)。定義した業務空間には、管理のために業務空間IDを割り振る。業務空間の割り当てがおこなわれていない業務のうち、もっとも優先度の高い業務を、1001で定義した業務空間に割り当て、業務空間管理テーブル302を更新する(1002)。業務空間管理テーブル302を参照し、業務空間を構成するために必要なマシンを算出する(1003)。業務空間管理テーブル302と、業務別リソース割当管理テーブル301を参照し、業務空間に対する優先度を算出し、業務空間リソース割当管理テーブル303を更新する(1004)。定義された業務空間が、以下の数1を満たすか検査する(1005)。業務空間の構成に必要な仮想マシンの動作に必要なリソースが、業務空間に割り当てられたリソースに対して十分に小さいかを検査することで、業務空間の割り当てを効率的におこなうことができる。式中の「係数」は、リソースや、物理的なマシンの特性によってあらかじめ決定される。
Figure 2011118864

数1を満たす場合、業務空間への業務の割り当てを確定とし、次の業務空間の定義と業務の割り当てのため、1000に戻る(1007)。この場合、1002で割り当てられた業務が、1001で定義した業務空間を占有する。数1を満たさない場合、業務空間の割り当てがおこなわれていない業務のうち次に優先度の高い業務を、1001で定義した業務空間に追加で割り当て、業務空間管理テーブル302を更新した後、1003の手順から繰り返す(1006)。この場合、1001で定義した業務空間は、数1を満たすように複数の業務で共有される。以上の処理を、すべての業務について業務空間が割り当てられるまで繰り返す(1008)。
割り当て処理の完了後、ジョブ管理部121は、仮想化部123に対して、業務空間と、必要な仮想マシンの複製を作成するよう通知する(1009)。仮想化部123は、業務空間管理テーブルを参照し、記憶部101に記録されている仮想マシン論理ボリュームと、仮想ディスク論理ボリュームの複製を作成し、業務空間と、必要な仮想マシンをメモリ中に展開する。
図4に示す業務を、以上の流れにしたがって業務空間に割り当てた例を図13に示す。
図11は、ジョブ管理部121が、ジョブを実行する流れを示したフローチャートである。ジョブ管理部121は、まず、ジョブ管理テーブル300から、業務IDおよびジョブの実行ホストを取得する(1100)。業務空間管理テーブル302を参照し、業務IDから、ジョブを実行する業務空間を取得する(1101)。ジョブ管理部121は、1101で取得した業務空間内の実行ホスト上にあるジョブ実行部221に対し、実行するジョブの情報を通知し、業務空間内の仮想マシン上でジョブを実行させる(1102)。
ジョブ管理部121は、ジョブ実行状況管理テーブル304に、実行ジョブのエントリーを追加する(1103)。ジョブ管理部121は、定期的にジョブ実行部221に対し、ジョブの実行状況を確認する(1104)。ジョブの実行が終了していた場合、ジョブ管理部121は、ジョブ実行状況管理テーブル304から、実行ジョブのエントリーを削除する(1105、1107)。ジョブの実行が終了していなかった場合、ジョブ実行状況管理テーブル304の情報を更新し、1004に戻る(1106)。これにより、ジョブ実行状況管理テーブルには、常に実行中のジョブのエントリーのみが記録されることになる。
ジョブ管理テーブル300を参照し、次ジョブが定義されているか確認する(1108)。次ジョブが定義されている場合、次ジョブIDに指定されているジョブを実行させ、当該ジョブの実行を終了する(1109)。次ジョブが定義されていない場合、そのまま当該ジョブの実行を終了する。
図12は、業務空間管理部122が、各業務空間、各仮想マシンに対してリソースを割り当てる流れを示したフローチャートである。割り当て方法の一例を示しているが、割り当て方法はこの限りではない。
業務空間管理部122は、すべての業務空間について、順にリソースの割り当て処理をおこなう(1200)。まず、業務空間管理部122は、業務空間リソース割当管理テーブル303から、業務空間への割り当てリソースを取得し、業務空間の論理CPU200、論理メモリ201へ割り当て量を決定する(1201)。業務空間管理部122は、ジョブ実行状況管理テーブル304から、業務空間で実行中のジョブの数を取得する(1202)。業務空間管理部122は、業務空間管理テーブル302から業務空間内のホストを取得し、業務空間内のすべてのホストについて、順にリソースの割り当て処理をおこなう(1203)。業務空間管理部122は、ジョブ実行状況管理テーブル304から、ジョブ実行情報を取得する。例えば、ホストで実行中のジョブの数を取得する(1204)。ホストに割り当てるリソースの量を、以下の数2により決定する(1205)。業務空間に割り当てられたリソースを、実行中のジョブの数に応じてホストに配分することになる。
Figure 2011118864

以上の手順で決定したホストごとのリソース割り当て量で、リソース割り当て管理テーブル305を更新する(1206)。これを、業務空間と、各業務空間を構成するホストの数だけ繰り返す(1207、1208)。
業務空間管理部122は、仮想化部123に対して、リソースの割り当てを要求する(1209)。仮想化部123は、リソース割り当て管理テーブル305の情報にしたがい、仮想ホストへのリソースの割り当てをおこなう。先の図8、図9の例では、業務空間3では、ジョブ実行IDが003、006、007の3個のジョブが実行中であり、各ジョブに対して業務空間3に割り当てられたリソース20%を均等に6.66%ずつ割り当てる。ジョブ実行IDが003のジョブはホストBで、ジョブ実行IDが006、007のジョブはホストCで実行中のため、各ホストに割り当てられるリソースは、ホストBが6.67%、ホストCが13.33%となる。
また、例えば業務空間3で実行していた全てのジョブが終了した場合、業務空間3に割当てられている空間リソース量を、現在実行中のジョブを有する他の業務空間に再配分することも可能である。
Figure 2011118864

業務空間3で実行していた全てのジョブが終了した場合、現在実行中のジョブを有する業務空間は、業務空間1と業務空間2となる。図8の業務空間リソース割当管理テーブル303に定義する業務空間1の50%と業務空間2の30%との割合を維持しながら、再配分すればよい。上述数3に基づいて再配分すると、業務空間1に対して62.5%、業務空間2に対して37.5%を配分する。この再配分された空間リソース量に基づいて、各業務空間で実行中のジョブを稼働するホストに対するリソース量を再計算すればよい。また新たに業務空間3の業務3を稼働させたい場合は、上述のように実行中のジョブの状況を再確認し、業務空間に割当てるべき空間リソース量を上述数3に基づいて再調整することで、実現できる。このように、業務空間に対して割当てるべき空間リソース量を、業務の優先度に応じて適宜調整することで、業務を遂行する仮想マシンに対するリソース量を、他の優先度の高い業務への空間リソース量を配慮し、維持しながら適宜自由に設定することができる。
業務別リソース割当管理テーブル301は、前述した通り、ユーザからの設定画面により変更することも可能であるので、システムを稼働中に業務リソース量を変更した場合は、上述の手順で空間リソース量を再設定し、実行中の仮想マシンに対するリソース量を変更することも可能である。このように、業務空間に割当ら得る空間リソース量は、実行中のジョブの状態に応じて適宜変更することができる。
図13は、図4に示す業務を、図10に示す流れにしたがって業務空間に割り当てた例を示す概念図である。業務空間1(1300)で業務1が、業務空間2(1310)で業務2が、業務空間3(1320)で業務3と業務4が実行される。業務空間1(1300)には、業務1の実行に必要な仮想マシンの複製が配置され、それぞれの仮想マシンでは、業務1に関連するジョブ1A(411)、ジョブ1B(412)、ジョブ1C(413)のみが実行される。業務空間2(1310)には、業務2の実行に不要なホストBの仮想マシンの複製は配置されない。業務空間3(1320)に配置されたホストCでは、業務3を構成するジョブ3C(433)、業務4を構成するジョブ4C(441)の両方が実行される。
図14は、リソース割り当て管理テーブル305の詳細を示したものである。
業務空間に配置されているホストと、各ホストへのリソース割り当て状況を管理するテーブルで、業務空間ID1400、ホスト名1401、リソース割り当て量1402の情報を持つ。リソース割り当て管理テーブル305は、図12に示す手順で作成される。
図15は、業務空間の割り当て状況、ジョブの実行状況およびリソースの割り当て状況を管理者に表示するための画面を示す図である。表示装置103に表示される。
生成された業務空間および各業務空間内に複製されたホストの状況が、それぞれ1500〜1502、1510〜1516で示される。実行中の業務の状況が、1520〜1535で示される。1520〜1535がジョブを表し、1520のように実行中のジョブが色などで識別できるように表示される。これにより、どの業務のどのジョブが、どのホストでいくつ実行中か、視覚的に確認することができる。また、ジョブの実行状況は、1540〜1542の表でも示され、一覧形式でも確認できる。
各仮想ホストへのリソースの割り当て状況は、1510〜1516の中に示され、ジョブの実行状況とあわせて視覚的に確認できる。
図16は、本発明を複数の物理的なマシンに適用する場合の実施例2における全体構成を示した説明図である。業務を実行可能な物理コンピュータ100、1610が、コンピュータ資源1600として確保されている。説明を簡単にするため、コンピュータ資源として確保される物理コンピュータを2台としている。物理コンピュータ100、1610の詳細な構成は図1で説明したとおりである。コンピュータ資源として確保された物理コンピュータは、ネットワーク102を通して、管理マネージャと接続されている。管理マネージャの詳細については図17で説明する。
図17は、本発明を複数の物理的なマシンに適用する場合に、全体の業務空間、ジョブおよびリソースの割り当てを制御する管理マネージャの詳細を示した説明図である。管理マネージャを物理コンピュータ1700に構成した例を示している。
物理コンピュータ1700は、ディスクインタフェース1710、通信インタフェース1711、CPU1712、メモリ1713、表示インタフェース1714を備える。また、ディスクインタフェース1710を通して記憶部1701と、通信インタフェース1711を通してネットワーク102と、表示インタフェース1714を通して表示装置1703と接続している。メモリ1713には、OS1720、管理マネージャ用ジョブ管理部1721、管理マネージャ用実行マシン管理部1722がロードされ、コンピュータ資源として確保されている業務を実行する物理コンピュータ(以下、実行マシンと記載)のジョブおよびリソースの割り当てを制御する。管理マネージャは、実行マシンに対して業務空間の割り当て、当該業務空間に対するリソースの割り当ておよび当該業務空間へのジョブの投入を制御するが、当該実行マシン上でのジョブの実行状況に応じた業務空間および業務空間上で実行される仮想マシンへのリソースの割り当ては、先に示した手順により、各実行マシンでおこなわれる。
図18は、記憶部1701の詳細を示した説明図である。記憶部1701には、管理マネージャ用ジョブ管理テーブル1800、管理マネージャ用業務別リソース割当管理テーブル1801、管理マネージャ用業務空間管理テーブル1802、管理マネージャ用業務空間リソース割当管理テーブル1803、管理マネージャ用ジョブ実行状況管理テーブル1804、管理マネージャ用マシンリソース管理テーブル1805が格納される。また、仮想マシンや仮想ディスクの論理ボリュームとして、仮想マシン論理ボリューム1810、1812、仮想ディスク論理ボリューム1811、1813が格納される。
管理マネージャを用いて複数の実行マシンを制御する場合、実行マシンで定義していたジョブ管理テーブル300、業務別リソース割当管理テーブル301は、管理マネージャのそれぞれ管理マネージャ用ジョブ管理テーブル1800、管理マネージャ用業務別リソース割当管理テーブル1801で定義する。実行マシンのジョブ管理テーブル300、業務空間管理テーブル302、業務空間リソース割当管理テーブル303は管理マネージャから更新される。また、仮想マシンや仮想ディスクの論理ボリュームも、管理マネージャが必要に応じて実行マシンへ転送する。したがって、運用に必要な定義はすべて管理マネージャでおこなう。
図19は、管理マネージャ用ジョブ管理テーブル1800の詳細を示したものである。業務を構成するジョブと、ジョブの実行内容を管理するテーブルで、管理する内容は、図5で示したジョブ管理テーブル300と同じであり、業務ID1900、ジョブID1901、各ジョブが実行するコマンドの内容1902、ジョブを実行するホスト1903、そのジョブを実行した後に実行するジョブのジョブID1904、そのジョブを実行する前に実行するジョブのジョブID1905の情報を持つ。ジョブ管理テーブル300が当該物理コンピュータ上で実行するジョブの情報のみを管理するのに対して、管理マネージャ用ジョブ管理テーブル1800はコンピュータ資源全体で実行するジョブの情報を管理する。本情報は、ユーザの設定画面を通じて事前に定義することが可能で、また、ユーザの設定画面を通じて変更することも可能である。説明を簡単にするため、業務1〜業務6が定義されている例を示している。
図20は、管理マネージャ用業務別リソース割当管理テーブル1801の詳細を示したものである。業務ごとのリソース割当量を管理するテーブルで、業務ID2000、リソース割当量2001、最小多重度2002、最大多重度2003の情報を持つ。リソース割当量2001は、図6で示した業務別リソース割当管理テーブル301のリソース割当比率601が当該実行マシンの持つリソースに対する相対的な比率で表しているのに対し、複数の実行マシンの持つリソース差異に対応するために絶対的なリソース量で表すものである。最小多重度2002は、当該業務を実行するにあたり最低いくつの業務空間を作成するかを定義したものである。また最大多重度2003は、当該業務を実行するにあたり最大いくつの業務空間を作成するかを定義したものである。本情報は、ユーザの設定画面を通じて事前に定義することが可能で、また、ユーザの設定画面を通じて変更することも可能である。
図21は、管理マネージャ用業務空間管理テーブル1802の詳細を示したものである。業務空間別に、当該業務空間で実行する業務と、業務空間を構成するホスト、業務空間の実行マシンおよび業務空間の実行に必要なリソース割当量を管理するテーブルで、業務空間ID2100、業務ID2101、構成ホスト2102、実行マシン2103、リソース割当量2104の情報を持つ。管理マネージャ用業務空間管理テーブル1802は、図26および図27に示す手順で作成される。また、図29、図31、図32に示す手順で、それぞれ追加、変更、削除される。
図22は、管理マネージャ用業務空間リソース割当管理テーブル1803の詳細を示したものである。実行マシン別に、業務空間ごとのリソースの割当量および業務空間での業務の実行状況から判断した現在必要なリソース量を管理するテーブルで、実行マシン2200、業務空間ID2201、リソース割当量2202、必要リソース量2203の情報を持つ。必要リソース量2203は、業務空間でのジョブの実行状況から判断した、実際に割り当てが必要なリソース量を表す。すなわち、業務空間に対してリソースが割り当てられている場合でも、当該業務空間でジョブが実行されていない場合、当該業務空間に対するリソースの割り当ては不要であり、ジョブの実行状況を加味することで求められる、その時点で実際に必要なリソース量を表している。管理マネージャ用業務空間リソース割当管理テーブル1803は、図27に示す手順で作成される。また、図30および図31に示す手順で変更、図32に示す手順で削除される。
図23は、管理マネージャ用ジョブ実行状況管理テーブル1804の詳細を示したものである。業務別に、業務空間ごとの実行中のジョブおよび新規ジョブの投入可否を管理するテーブルで、業務ID2300、業務空間ID2301、ジョブ実行ID2302、ジョブ投入可否2303の情報を持つ。ジョブ投入可否2303は、当該業務空間に新規ジョブの投入が可能かを示し、業務空間の削除をおこなう場合に、新規ジョブの投入を抑止し、業務空間を空けるために使用する。管理マネージャ用ジョブ実行状況管理テーブル1804は、図26に示す手順で作成される。また、図29、図30、図32に示す手順で、それぞれ追加、変更、削除される。
図24は、管理マネージャ用マシンリソース管理テーブル1805の詳細を示したものである。実行マシンごとの保有リソース量と、未割り当てのリソース量および業務空間での業務の実行状況から判断した現在余剰となっているリソース量を管理するテーブルで、実行マシン2400、保有リソース量2401、未割当リソース量2402、余剰リソース量2403の情報を持つ。保有リソース量2401は、当該マシンの持つリソース量を絶対的な値で表したものである。未割当リソース量2402は、業務空間に明示的に割り当てられていないリソース量で、当該マシンに業務空間を追加するときに割り当て可能なリソース量を表す。業務実行時の業務空間の追加判断や、ユーザが業務空間の移動をおこなう際に移動先の決定の参考にするために使用する。余剰リソース量2403は、当該実行マシンの保有リソース量2401から、図22の管理マネージャ用業務空間リソース割当管理テーブル1803で示した必要リソース量2203の当該実行マシン分の総和を減じて求められ、当該マシンで現在実行中の各業務に必要なリソースを割り当てたうえで余剰となるリソース量を表す。なお、実際には、図12に示す手順により、余剰リソースは業務を実行中の業務空間に割り振られ、実行中のジョブで利用される。
管理マネージャ用マシンリソース管理テーブル1805の情報のうち、実行マシン2400および保有リソース量2401は、コンピュータ資源として確保された実行マシンの情報をもとに、あらかじめユーザにより定義される。未割当リソース量2402、余剰リソース量2403については、図27に示す手順で設定される。また、図30、図31、図32に示す手順で変更される。
図25は、管理マネージャが、各業務に業務空間を割り当て、各実行マシンに業務空間を割り当てる流れを示したフローチャートである。割り当て方法の一例を示しているが、割り当て方法はこの限りではない。
管理マネージャ用ジョブ管理部1721が、各業務に対して業務空間の割り当てをおこなう(2500)。この処理については、図26で詳細に説明する。次に、管理マネージャ用実行マシン管理部1722が、各業務空間に対して実行マシンの割り当てをおこなう(2501)。この処理については、図27で詳細に説明する。実行マシンに対して業務空間の割り当てが完了した後、すべての実行マシンについて業務空間の更新をおこなう(2502)。各実行マシンに対して必要な管理テーブルや論理ボリュームを転送し、業務空間を追加、削除するよう各実行マシンの仮想化部123に指示する(2503)。この処理については、図28で詳細に説明する。すべての実行マシンについて業務空間の更新が完了するまで2503の処理を繰り返す(2504)。
図26は、管理マネージャ用ジョブ管理部1721が、各業務に業務空間を割り当てる流れを示したフローチャートである。割り当て方法の一例を示しているが、割り当て方法はこの限りではない。
管理マネージャ用ジョブ管理部1721は、管理マネージャ用ジョブ管理テーブル1800と管理マネージャ用業務別リソース割当管理テーブル1801を参照し、業務空間への割り当て処理をおこなう。
最初に、最大多重度が2以上のすべての業務について、業務空間への割り当て処理をおこなう(2600)。最大多重度が2以上の業務については、業務空間の追加、削除がおこなわれるため、当該業務単独で業務空間を割り当てる。まず、業務を割り当てるための業務空間を新たに定義し、業務空間の割り当てがおこなわれていない業務について、定義した業務空間に割り当てる(2601)。このとき、定義した業務空間には、管理のためにユニークになるように業務空間IDを割り振る。2601での割り当て結果にしたがい、業務空間ID、業務IDについて、管理マネージャ用業務空間管理テーブル1802を更新する(2602)。2601での定義および割り当て結果に従い、管理マネージャ用ジョブ実行状況管理テーブル1804に割り当て結果を追加する(2603)。このとき、ジョブ実行IDはなし、ジョブ投入可否は「可」とする。
次に、業務空間を構成するために必要なマシンを算出する(2604)。管理マネージャ用業務別リソース割当管理テーブル1801を参照し、業務空間に対するリソース割当量を取得する(2605)。構成ホスト、リソース割当量について、業務空間管理マネージャ用業務空間管理テーブル1802を更新する(2606)。最小多重度の数になるよう、業務空間管理マネージャ用業務空間管理テーブル1802業務空間の定義を複製する(2607)。このとき、業務空間IDのみ、ユニークになるよう更新する。以上の処理を、最大多重度が2以上のすべての業務について業務空間が割り当てられるまで繰り返す(2608)。
次に、業務空間を未割り当てのすべての業務について、優先度の高い業務から順に業務空間への割り当て処理をおこなう(2609)。本割り当て処理は、図10で示したものとほぼ同じである。まず、業務を割り当てるための業務空間を新たに定義し、業務空間の割り当てがおこなわれていない業務のうち、もっとも優先度の高い業務について、定義した業務空間に割り当てる(2610)。定義した業務空間には、管理のためにユニークになるように業務空間IDを割り振る。構成ホスト、リソース割当量について、管理マネージャ用業務空間管理テーブル1802を更新する(2611)。2610もしくは後述する2616での割り当て結果にしたがい、管理マネージャ用ジョブ実行状況管理テーブル1804に割り当て結果を追加する(2612)。管理マネージャ用業務空間管理テーブル1802を参照し、当該業務空間で実行される業務から、業務空間を構成するために必要なマシンを算出する(2613)。管理マネージャ用業務空間管理テーブル1802と、管理マネージャ用業務別リソース割当管理テーブル1801を参照し、業務空間に対するリソース割当量を算出する(2614)。定義された業務空間が、数1を満たすか検査する(2615)。数1は実施例1と同じ式を用いる。図10の場合と同様に、業務空間の構成に必要な仮想マシンの動作に必要なリソースが、業務空間に割り当てられたリソースに対して十分に小さいかを検査することで、業務空間の割り当てを効率的におこなうことができる。式中の「係数」は、リソースや、コンピュータ資源1600に確保された実行マシンの特性によってあらかじめ決定される。
数1を満たす場合、業務空間への業務の割り当てを確定とし、構成ホスト、リソース割当量について、管理マネージャ用業務空間管理テーブル1802を更新する(2616)。その後、次の業務空間の定義と業務の割り当てのため、2609に戻る(2617)。この場合、2610での割り当て結果が確定し、2610で定義した業務空間を1つの業務が占有する。
数1を満たさない場合、業務空間の割り当てがおこなわれていない業務のうち次に優先度の高い業務を、2610で定義した業務空間に追加で割り当てた後、2611の手順から繰り返す(2616)。この場合、2610で定義した業務空間は、数1を満たすように複数の業務で共有される。以上の処理を、すべての業務について業務空間が割り当てられるまで繰り返す(2618)。
図27は、管理マネージャ用実行マシン管理部1722が、各実行マシンに業務空間を割り当てる流れを示したフローチャートである。割り当て方法の一例を示しているが、割り当て方法はこの限りではない。
管理マネージャ用実行マシン管理部1722は、管理マネージャ用業務空間管理テーブル1802と管理マネージャ用業務空間リソース割当管理テーブル1803を参照し、業務空間の割り当て処理をおこなう。実行マシンを未割当のすべての業務空間について、リソース割当量の多いものから順に実行マシンへの割り当て処理をおこなう(2700)。まず、業務空間を割り当てる実行マシンを決定するため、実行マシンのうち、未割り当てのリソースがもっとも多いものを検索する(2701)。検索された実行マシン上で、同一業務を実行する他の業務空間が割り当てられていないことを確認する(2702)。もし、検索された実行マシン上で、同一業務を実行する他の業務空間がすでに割り当て済みの場合、実行マシンのうち、未割り当てのリソースが次に多いものを検索し、2702に戻って再度評価をおこなう(2703)。2702の評価で、検索された実行マシン上で、同一業務を実行する他の業務空間が割り当てられていないことが確認された場合、当該実行マシンに業務空間の割り当てをおこなう(2704)。
決定した割り当てにしたがい、実行マシンについて、管理マネージャ用業務空間管理テーブル1802を更新する(2705)。実行マシン、業務空間ID、リソース割当量、必要リソース量について、管理マネージャ用業務空間リソース割当管理テーブル1803を更新する。ここで、新規に追加する業務空間については、必要リソース量は0とする(2706)。未割当リソース量、余剰リソース量について、管理マネージャ用マシンリソース管理テーブル1805を更新する。余剰リソース量は、保有リソース量から、当該実行マシンの必要リソース量を引いたもので求められ、ここでは余剰リソース量と同じとする(2707)。
以上の処理を、すべての業務空間について実行マシンが割り当てられるまで繰り返す(2708)。
図28は、管理マネージャ用実行マシン管理部1722が、各実行マシンに対して業務空間の割り当て(更新)をおこなう流れを示したフローチャートである。割り当て方法の一例を示しているが、割り当て方法はこの限りではない。
管理マネージャ用実行マシン管理部1722が、実行マシンのジョブ管理テーブル300の内容を更新する(2800)。当該実行マシンで実行する業務のジョブ定義については、管理マネージャから実行マシンに転送し、更新を反映する。当該実行マシンで実行しない業務のジョブ定義がジョブ管理テーブル300にある場合は、当該ジョブ定義を削除する。
管理マネージャ用実行マシン管理部1722が、実行マシンの業務空間管理テーブル302の内容を更新する(2801)。当該マシンで実行する業務空間について、管理マネージャ用業務空間管理テーブル1802から、業務空間ID、業務ID、構成ホストの情報を、実行マシンの業務空間管理テーブル302に転送し、更新を反映する。当該実行マシンで実行しない業務空間の定義が業務空間管理テーブル302にある場合は、当該定義を削除する。
管理マネージャ用実行マシン管理部1722が、実行マシンの業務空間リソース割当管理テーブル303の内容を更新する(2802)。当該マシンで実行する業務空間について、管理マネージャ用リソース割当管理テーブル1801および管理マネージャ用マシンリソース管理テーブル1805から、実行マシンでの優先度を計算し、業務空間リソース割当管理テーブル303のリソース割り当て比とする。当該実行マシンで実行しない業務空間の定義が業務空間リソース割当管理テーブル303にある場合は、当該定義を削除する。
次に、当該実行マシンで削除する業務空間があるか評価する(2803)。削除すべき業務空間がない場合、次の処理2805に進む。削除すべき業務空間がある場合、実行マシンの仮想化部123に、当該業務空間を削除するよう指示をおこなった後、次の処理2805に進む(2804)。
実行マシンで使用する仮想マシン論理ボリュームについて、不足しているものを管理マネージャから実行マシンへ転送する。当該実行マシンで実行しない仮想マシンの論理ボリュームがある場合は、当該仮想マシン論理ボリュームを削除する(2805)。
実行マシンで使用する仮想ディスク論理ボリュームについて、不足しているものを管理マネージャから実行マシンへ転送する。当該実行マシンで実行しない仮想マシンの仮想ディスク論理ボリュームがある場合は、当該仮想ディスク論理ボリュームを削除する(2806)。
次に、当該実行マシンで追加する業務空間があるか評価する(2807)。追加すべき業務空間がない場合、業務空間の更新処理が完了する。追加すべき業務空間がある場合、実行マシンの仮想化部123に、当該業務空間を追加するよう指示をおこなった後、業務空間の更新処理が完了する(2808)。
図29は、管理マネージャ用ジョブ管理部1721が、ジョブを実行する際の流れを示したフローチャートである。ジョブの実行方法の一例を示しているが、実行方法はこの限りではない。
管理マネージャ用ジョブ管理部1721は、管理マネージャ用リソース割当管理テーブル1801、管理マネージャ用ジョブ実行状況管理テーブル1804を参照し、当該業務についてすでに最大多重度の業務空間を割り当てているかを評価する(2900)。
当該業務についてすでに最大多重度の業務空間を割り当てている場合、管理マネージャ用ジョブ実行状況管理テーブル1804を参照し、当該業務用の業務空間でジョブ投入可否が「可」の業務空間のうち、実行中のジョブ数がもっとも少ない業務空間を検索する(2901)。2901で検索された業務空間を、ジョブ投入対象の業務空間として決定する(2902)。
当該業務についてまだ最大多重度の業務空間を割り当てていない場合、管理マネージャ用マシンリソース管理テーブル1805を参照し、実行マシンのうち未割り当てのリソース量がもっとも多いものを検索する(2903)。2903で検索された実行マシンに対し、新たに業務空間を割り当て可能か検査する(2904)。割り当て不可の場合、2901からの処理を実行する。割り当て可能な場合、2903で検索された実行マシン上で、同一業務を実行する他の業務空間が割り当てられていないことを確認する(2905)。もし、検索された実行マシン上で、同一業務を実行する他の業務空間がすでに割り当て済みの場合、実行マシンのうち、未割り当てのリソースが次に多いものを検索し、2904に戻って再度評価をおこなう(2906)。2905の評価で、検索された実行マシン上で、同一業務を実行する他の業務空間が割り当てられていないことが確認された場合、当該実行マシンに業務空間の割り当てをおこなう(2907)。
割り当てにしたがい、業務空間ID、業務ID、構成ホスト、リソース割当量について、管理マネージャ用業務空間管理テーブル1802を更新する(2908)。
当該業務について業務空間を追加するよう、管理マネージャ用ジョブ実行状況管理テーブル1804を更新する(2909)。
追加した定義にしたがい、実行マシンに対して必要な管理テーブルや論理ボリュームを転送し、業務空間を追加するよう実行マシンの仮想化部123に指示する(2910)。この処理については、図28で詳細に説明した。業務空間の作成が完了したら、作成した業務空間をジョブ投入対象の業務空間として決定する(2911)。ジョブ投入対象として2902で決定された既存の業務空間または2911で決定された新規に作成した業務空間に対して、ジョブの投入をおこなう(2912)。この処理については、図30で詳細に説明する。
図30は、管理マネージャ用ジョブ管理部1721が、業務空間にジョブを投入する際の流れを示したフローチャートである。
管理マネージャ用ジョブ管理部1721は、投入するジョブを識別するためのユニークなジョブ実行IDを採番し、ジョブ実行IDについて、管理マネージャ用ジョブ実行状況管理テーブル1804を更新する(3000)。
ジョブの実行状態から、必要リソース量について、管理マネージャ用業務空間リソース割当管理テーブル1803を更新する(3001)。更新後の必要リソース量は、業務空間内で実行されている業務ごとのリソース割当量の総和になる。
3001で計算された必要リソース量から、管理マネージャ用マシンリソース管理テーブル1805の余剰リソース量を更新する(3002)。実行マシンのジョブ管理部に対して、当該ジョブの実行を指示する(3003)。この際、ジョブ実行IDも通知し、管理マネージャと実行マシンで同一のジョブ実行IDで管理する。その後、実行マシンでのジョブの実行状況を監視する(3004)。一連のジョブが終了するまで、監視を継続する(3005)。一連のジョブが終了したら、ジョブ実行IDについて、管理マネージャ用ジョブ実行状況管理テーブル1804から削除する(3006)。ジョブの実行状態から、必要リソース量について、管理マネージャ用業務空間リソース割当管理テーブル1803を更新する(3007)。更新後の必要リソース量は、業務空間内で実行されている業務ごとのリソース割当量の総和になる。3007で計算された必要リソース量から、管理マネージャ用マシンリソース管理テーブル1805の余剰リソース量を更新する(3008)。
図31は、管理マネージャ用実行マシン管理部1722が、業務空間を実行するマシンの移動をおこなう流れを示したフローチャートである。移動の方法の一例を示しているが、移動の方法はこの限りではない。
まず、管理マネージャ用実行マシン管理部1722が、管理マネージャ用業務空間管理テーブル1802および管理マネージャ用マシンリソース管理テーブル1805を参照し、移動先マシンの未割当リソース量が十分か確認をおこなう(3100)。未割当リソースが十分でない場合、移動処理はおこなわない。未割当リソースが十分ある場合、移動元マシンで、移動対象の業務空間を停止させるため、移動元マシンの仮想化部123に、業務空間の停止を指示する(3101)。移動対象業務空間で使用するジョブ管理テーブル300の内容を、移動元マシンから、移動先マシンへ転送する(3102)。移動対象業務空間で使用する業務空間管理テーブル302の内容を、移動元マシンから、移動先マシンへ転送する(3103)。移動元マシンの業務空間リソース割当管理テーブル303から、移動対象業務空間の情報を削除する(3104)。移動先マシンの業務空間リソース割当管理テーブル303に、移動対象業務空間の情報を追加する(3105)。このとき、管理マネージャ用リソース割当管理テーブル1801および管理マネージャ用マシンリソース管理テーブル1805から、移動先マシンでの優先度を計算し、業務空間リソース割当管理テーブル303のリソース割り当て比とする。移動対象業務空間で使用するジョブ実行状況管理テーブル304の内容を、移動元マシンから、移動先マシンへ転送する(3106)。移動対象業務空間で使用する仮想マシン論理ボリュームを、移動元マシンから、移動先マシンへ転送する(3107)。移動対象業務空間で使用する仮想ディスク論理ボリュームを、移動元マシンから、移動先マシンへ転送する(3108)。業務空間の移動結果にしたがって、実行マシンについて、管理マネージャ用業務空間管理テーブル1802を更新する(3109)。
業務空間の移動結果にしたがって、業務空間ID、リソース割当量、必要リソース量について、管理マネージャ用業務空間リソース割当管理テーブル1803を更新する(3110)。移動元マシンから当該業務空間の情報を削除し、移動先マシンに当該業務空間の情報を追加する。移動前後で、リソース割当量、必要リソース量は、変化しない。3110で変更された業務空間の割り当てから、移動元マシン、移動先マシンそれぞれについて、管理マネージャ用マシンリソース管理テーブル1805の余剰リソース量を更新する(3111)。移動先マシンで、移動対象の業務空間を再開させる。移動先マシンの仮想化部123に、業務空間の再開を指示する(3112)。
図32は、管理マネージャ用ジョブ管理部1721が、業務空間の削除をおこなう流れを示したフローチャートである。業務空間の削除の方法の一例を示しているが、削除の方法はこの限りではない。
管理マネージャ用ジョブ管理部1721が、まず、当該業務空間について、管理マネージャ用ジョブ実行状況管理テーブル1804のジョブ投入可否を「不可」に更新する(3200)。業務空間の使用状況を確認する。管理マネージャ用ジョブ実行状況管理テーブル1804を確認し、当該業務空間で実行中のジョブ実行IDを監視する(3201)。ジョブ実行IDがある場合、当該業務空間でジョブが実行中のため、3201に戻ってジョブの実行完了を待つ(3202)。ジョブ実行IDがない場合、業務空間の削除をおこなう。まず、管理マネージャ用業務空間管理テーブル1802から当該業務空間の情報を削除する(3203)。管理マネージャ用業務空間リソース割当管理テーブル1803から当該業務空間の情報を削除する(3204)。当該業務空間を実行していた実行ホストについて、管理マネージャ用マシンリソース管理テーブル1805の未割当リソース量、余剰リソース量を更新する(2305)。余剰リソース量は、保有リソース量から、当該実行マシンの必要リソース量を引いたもので求められる。管理マネージャ用ジョブ実行状況管理テーブル1804から当該業務空間の情報を削除する(3206)。更新した定義にしたがい、業務空間を削除するよう実行マシンの仮想化部123に指示する(3207)。この処理については、図28で詳細に説明した。
以上から、各業務空間に対してリソースを一旦割当て、当該割当てられたリソースの範囲で仮想マシンを稼働させてジョブを実行するので、別の業務を遂行するためにリソースを割当てる場合においても、実行中のジョブに直接影響しない。また、別業務の業務空間に対するリソースの割当ては、業務の優先度に応じてなされるので、例えば重要なジョブを実行している最中に、別業務の実行を開始しなければならない場合にも、重要なジョブへ影響を及ぼさない。
また、業務を実行する業務空間を定義することにより、図6で示すように業務毎にリソースを割当てることができる。これは、複数かつ複雑な業務を遂行する業務システムにおいて、実行状態を事前に加味する必要がない点で有効である。例えば、稼働中の業務システムにおいて、新たな業務を加えたい場合にも、図6で示すリソース割当比率を、その業務の優先度に応じて設定し、他の業務に対するリソース比率を変更することが可能となる。
また先の実施例では、業務の実行を開始する以前に予め定義する点を説明したが、これを業務の実行を開始するときに業務リソース量を変更することも可能である。業務に対するリソース割当ての量(業務リソース量)は一旦業務空間へのリソース割当て量(空間リソース量)に変換するので、その結果を用いて実行中の仮想マシンに割当てられたリソースを変更すればよい。これにより、業務の実行状態に合わせて計算機全体のリソース配分を調整することができる。
このように、複雑なジョブを構成する業務を遂行する業務システムにおいては、同時に複数の業務を並行して実施する中で、業務の優先度に応じた適切なリソース割当を実施しなければならない。本発明のように、業務と仮想マシンとの間に「業務空間」を定義することで、業務に対して適切なリソースの割当を行うことができ、業務実行時に適切に割り当てられたリソースに基づいて仮想マシンを実行することができるようになる。
複数の実行マシンを利用する場合も、業務空間を定義することで、業務に対して割り当てたリソースに基づいて業務空間が適切な実行マシンに確保され、業務空間に対して割り当てられたリソースに基づいて仮想マシンが実行される。各実行マシンへの業務空間の割り当て状況から未割当リソース量が、各業務空間でのジョブの実行状況から余剰リソース量が算出される。ユーザは、業務の実行計画と、それらの情報を利用して、特定の業務を実行する業務空間について、未割当リソース量や余剰リソース量の多い実行マシンに移動することができる。
なお、先の実施例では、業務空間を、リソースを持つ論理的な空間として説明したが、単に複数の仮想マシンをグループ化してリソースの割り当て量を算出するための論理的な単位として考えることも可能である。この場合も、業務空間および業務空間内の各仮想マシンでのジョブの実行状況をもとに、まず業務空間に対するリソース割り当て量を算出した後、業務空間内での各仮想マシンへのリソースの割り当てをおこなう点は同様である。
100、1610 物理コンピュータ
101、1611 記憶部
102 ネットワーク
103 表示装置
110 物理コンピュータのディスクインタフェース
111 物理コンピュータの通信インタフェース
112 物理コンピュータのCPU
113 物理コンピュータのメモリ
114 物理コンピュータの表示インタフェース
120 ホストOS
121 ジョブ管理部
122 業務空間管理部
123 仮想化部
124、125 仮想化部123により管理される業務空間
130、132 仮想化部123により管理される仮想マシン
131、133 仮想化部123により管理される仮想ディスク
200 業務空間に割り当てられた論理CPU
201 業務空間に割り当てられた論理メモリ
210 仮想マシンの論理ディスクインタフェース
211 仮想マシンの論理通信インタフェース
212 仮想マシンの論理CPU
213 仮想マシンの論理メモリ
214 仮想マシンの論理表示インタフェース
220 仮想マシン上のゲストOS
221 仮想マシン上のジョブ実行部
222 仮想マシン上の業務アプリケーション
300 ジョブ管理テーブル
301 業務別リソース割当管理テーブル
302 業務空間管理テーブル
303 業務空間リソース割当管理テーブル
304 ジョブ実行状況管理テーブル
305 リソース割り当て管理テーブル
310、312 仮想マシンの論理ボリューム
311、313 仮想ディスクの論理ボリューム
1600 コンピュータ資源
1700 物理コンピュータ
1701 記憶部
1703 表示装置
1710 物理コンピュータのディスクインタフェース
1711 物理コンピュータの通信インタフェース
1712 物理コンピュータのCPU
1713 物理コンピュータのメモリ
1714 物理コンピュータの表示インタフェース
1720 OS
1721 管理マネージャ用ジョブ管理部
1722 管理マネージャ用実行マシン管理部
1800 管理マネージャ用ジョブ管理テーブル
1801 管理マネージャ用業務別リソース割当管理テーブル
1802 管理マネージャ用業務空間管理テーブル
1803 管理マネージャ用業務空間リソース割当管理テーブル
1804 管理マネージャ用ジョブ実行状況管理テーブル
1805 管理マネージャ用マシンリソース管理テーブル
1810、1812 仮想マシンの論理ボリューム
1811、1813 仮想ディスクの論理ボリューム

Claims (12)

  1. ある計算機上で仮想マシンを稼働させて業務を実行するのに必要なリソースの割当てを行うリソース制御方法であって、
    前記計算機は、
    業務と前記業務の優先度と前記業務を構成する少なくとも1つ以上のジョブとの対応関係を記憶し、
    前記業務と前記業務を実行する業務空間との対応関係を記憶し、
    前記計算機で実行中のジョブの状態を示すジョブ実行情報を取得し、
    取得した前記ジョブ実行情報と、実行中の前記ジョブが所属する前記業務空間と、実行中の前記ジョブが所属する前記業務の優先度との対応関係から、実行中の前記ジョブが所属する前記業務空間に割当てるリソース量を算出し、
    前記算出したリソース量から、前記業務空間で実行中の前記ジョブが稼働する仮想マシンに対して割当てるべきリソース量を算出する
    ことを特徴とするリソース制御方法。
  2. 前記業務の優先度は、前記計算機の有するリソースの配分量で表すことを特徴とする、
    請求項1に記載のリソース制御方法。
  3. 前記計算機は、更に、
    実行すべきジョブを稼働するための仮想マシンを複製によって生成し、前記仮想マシンに対するリソース量を算出して実行することを特徴とする、請求項2に記載のリソース制御方法。
  4. ある計算機上で仮想マシンを稼働させて業務を実行するのに必要なリソースの割当てを行うリソース制御システムであって、
    前記計算機は、
    業務と前記業務の優先度と前記業務を構成する少なくとも1つ以上のジョブとの対応関係を記憶する業務管理記憶部と、
    前記業務と前記業務が実行する業務空間との対応関係を記憶する業務空間記憶部と、
    前記計算機上で実行中のジョブの状態を示すジョブ実行情報を取得するジョブ実行情報取得部と、
    前記ジョブ実行情報取得部で取得した前記ジョブ実行情報と、実行中の前記ジョブが所属する前記業務空間と、実行中の前記ジョブが所属する前記業務の優先度とを、前記業務管理記憶部と前記業務空間記憶部で記憶された対応関係から参照して、実行中の前記ジョブが所属する前記業務空間に割当てるリソース量を算出する業務空間リソース割当部と、
    前記業務空間リソース割当部で算出したリソース量から、前記業務空間で実行中の前記ジョブが稼働する仮想マシンに対して割当てるべきリソース量を算出する仮想マシンリソース割当部と、
    を有することを特徴とするリソース制御システム。
  5. 前記業務管理記憶部で記憶されている前記業務の前記優先度は、前記計算機の有するリソースの配分量で表すことを特徴とする、
    請求項4に記載のリソース制御システム。
  6. 前記仮想マシンリソース割当部は、
    更にジョブを稼働させるのに必要な仮想マシンを複製よって生成し、算出した前記仮想マシンに対するリソース量を算出して実行することを更に有することを特徴とする、
    請求項5に記載のリソース制御システム。
  7. 複数の計算機上で仮想マシンを稼働させて業務を実行するのに必要なリソースの割当てを行う制御装置におけるリソース制御方法であって、
    前記制御装置は、
    業務を実行する計算機の保有するリソース量を記憶し、
    業務と前記業務に割当てるリソース量と最小多重度、最大多重度および前記業務を構成する少なくとも1つ以上のジョブとの対応関係を記憶し、
    前記業務と前記業務を実行する少なくとも1つ以上の業務空間との対応関係を記憶し、
    前記業務空間と前記業務空間を実行する前記計算機との対応関係を記憶し、
    前記業務と前記業務を実行する業務空間との対応関係と、前記業務と前記業務に割当てるリソース量との対応関係から、前記業務空間に割当てるリソース量を算出し、
    算出された前記業務空間に割当てるリソース量と、前記業務空間と前記業務空間を実行する前記計算機との対応関係から、前記計算機で必要なリソース量を算出し、
    算出された前記計算機で必要なリソース量と、前記計算機の保有するリソース量との対応関係から、前記計算機で割当て可能なリソース量を算出し、
    算出された前記計算機で割当て可能なリソース量から、前記業務を実行する業務空間を追加するべき計算機を算出する
    ことを特徴とするリソース制御方法。
  8. 前記業務空間の前記計算機への割当ては、更に、
    前記計算機の保有するリソース量と、前記業務空間に割当てるリソース量との対応関係から、前記計算機での優先度を算出し、
    前記計算機でリソース制御をおこなうことを特徴とする、
    請求項7に記載のリソース制御方法。
  9. 前記制御装置は、更に、
    前記計算機で実行中のジョブの状態を示すジョブ実行情報を取得し、
    取得した前記ジョブ実行情報と、実行中の前記ジョブが所属する前記業務空間との対応関係から、新たに前記業務のジョブを実行するべき業務空間を算出し、
    算出された業務空間から、前記業務のジョブを実行するべき計算機を算出することを特徴とする、
    請求項7に記載のリソース制御方法。
  10. 複数の計算機上で仮想マシンを稼働させて業務を実行するのに必要なリソースの割当てを行う制御装置におけるリソース制御システムであって、
    前記制御装置は、
    前記複数の計算機の各々が保有する保有リソース量を記憶する計算機リソース管理記憶部と、
    業務と前記業務に割当てる必要リソース量と前記業務の多重度および前記業務を構成する少なくとも1つ以上のジョブとの対応関係を記憶する業務管理記憶部と、
    前記業務と前記業務を実行する少なくとも1つ以上の業務空間との対応関係を記憶する業務空間記憶部と、
    前記業務空間と前記業務空間を実行する前記計算機との対応関係を記憶する実行計算機記憶部と、
    前記業務と前記業務を実行する業務空間との対応関係を業務空間記憶部から参照し、前記業務と前記業務に割当てるリソース必要量との対応関係を業務管理記憶部から参照し、前記業務空間に割当てるリソース割当量を算出する業務空間リソース割当部と、
    前記リソース割当量と、前記業務空間と前記業務空間を実行する前記計算機との対応関係を実行計算機記憶部から参照し、前記計算機で必要なリソース必要量を算出し、
    前記リソース必要量と、前記計算機の保有する前記リソース保有量との対応関係を計算機リソース管理記憶部から参照し、前記計算機で割当て可能な割当可能リソース量を算出する計算機リソース管理部と、
    前記割当可能リソース量から、前記業務を実行する業務空間を追加するべき計算機を前記複数の計算機から特定する実行計算機割当部と
    を有することを特徴とするリソース制御システム。
  11. 前記実行計算機割当部は、更に、
    前記計算機の保有する前記保有リソース量を前記計算機リソース管理記憶部から取得し、前記業務空間リソース割当部で算出した前記リソース割当量との対応関係から、前記複数の計算機毎の優先度を算出することを特徴とする、
    請求項10に記載のリソース制御システム。
  12. 前記制御システムは、更に、
    前記計算機で実行中のジョブの状態を示すジョブ実行情報を取得するジョブ実行情報取得部と、
    前記ジョブ実行情報取得部で取得した前記ジョブ実行情報と、実行中の前記ジョブが所属する前記業務空間との対応関係を記憶するジョブ実行状況管理記憶部と、
    前記ジョブ実行状況管理記憶部から参照したジョブの実行状況から、新たに前記業務のジョブを実行するべき業務空間を算出する実行業務空間検索部と、
    算出された業務空間から、前記業務のジョブを実行するべき計算機を前記複数の計算機から特定する実行計算機検索部とを有することを特徴とする、
    請求項10に記載のリソース制御システム。
JP2010147060A 2009-10-28 2010-06-29 リソース制御方法及びリソース制御システム Active JP5396339B2 (ja)

Priority Applications (1)

Application Number Priority Date Filing Date Title
JP2010147060A JP5396339B2 (ja) 2009-10-28 2010-06-29 リソース制御方法及びリソース制御システム

Applications Claiming Priority (3)

Application Number Priority Date Filing Date Title
JP2009247198 2009-10-28
JP2009247198 2009-10-28
JP2010147060A JP5396339B2 (ja) 2009-10-28 2010-06-29 リソース制御方法及びリソース制御システム

Publications (2)

Publication Number Publication Date
JP2011118864A true JP2011118864A (ja) 2011-06-16
JP5396339B2 JP5396339B2 (ja) 2014-01-22

Family

ID=44284069

Family Applications (1)

Application Number Title Priority Date Filing Date
JP2010147060A Active JP5396339B2 (ja) 2009-10-28 2010-06-29 リソース制御方法及びリソース制御システム

Country Status (1)

Country Link
JP (1) JP5396339B2 (ja)

Cited By (8)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
GB2493812A (en) * 2011-08-16 2013-02-20 Esds Software Solution Pvt Ltd Scaling resources for virtual machines, using comparison with established threshold values
JP2013164749A (ja) * 2012-02-10 2013-08-22 Nomura Research Institute Ltd 仮想サーバ管理システム
JP2015064657A (ja) * 2013-09-24 2015-04-09 株式会社東芝 スケジューリング装置、システム、装置、方法およびプログラム
JP2015127974A (ja) * 2015-03-04 2015-07-09 株式会社野村総合研究所 仮想サーバ管理システム
JPWO2015146104A1 (ja) * 2014-03-27 2017-04-13 日本電気株式会社 仮想マシンシステムおよびその制御方法およびその制御プログラム
US10157073B2 (en) 2013-05-29 2018-12-18 Nec Corporation Virtual-machine control device, virtual-machine control method, computer-readable recording medium recording program for virtual-machine control method, and data center
JP2019021167A (ja) * 2017-07-20 2019-02-07 富士ゼロックス株式会社 情報処理装置および情報処理システム
JP2021005235A (ja) * 2019-06-26 2021-01-14 株式会社日立製作所 リソース管理システム、リソース割当方法

Citations (1)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
JP2007272263A (ja) * 2006-03-30 2007-10-18 Hitachi Ltd 計算機の管理方法、計算機システム、及び管理プログラム

Patent Citations (1)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
JP2007272263A (ja) * 2006-03-30 2007-10-18 Hitachi Ltd 計算機の管理方法、計算機システム、及び管理プログラム

Cited By (10)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
GB2493812A (en) * 2011-08-16 2013-02-20 Esds Software Solution Pvt Ltd Scaling resources for virtual machines, using comparison with established threshold values
GB2493812B (en) * 2011-08-16 2017-05-10 Esds Software Solution Pvt Ltd Method and system for real time detection of resource requirement and automatic adjustments
JP2013164749A (ja) * 2012-02-10 2013-08-22 Nomura Research Institute Ltd 仮想サーバ管理システム
US10157073B2 (en) 2013-05-29 2018-12-18 Nec Corporation Virtual-machine control device, virtual-machine control method, computer-readable recording medium recording program for virtual-machine control method, and data center
JP2015064657A (ja) * 2013-09-24 2015-04-09 株式会社東芝 スケジューリング装置、システム、装置、方法およびプログラム
JPWO2015146104A1 (ja) * 2014-03-27 2017-04-13 日本電気株式会社 仮想マシンシステムおよびその制御方法およびその制御プログラム
JP2015127974A (ja) * 2015-03-04 2015-07-09 株式会社野村総合研究所 仮想サーバ管理システム
JP2019021167A (ja) * 2017-07-20 2019-02-07 富士ゼロックス株式会社 情報処理装置および情報処理システム
JP2021005235A (ja) * 2019-06-26 2021-01-14 株式会社日立製作所 リソース管理システム、リソース割当方法
JP7084894B2 (ja) 2019-06-26 2022-06-15 株式会社日立製作所 リソース管理システム、リソース割当方法

Also Published As

Publication number Publication date
JP5396339B2 (ja) 2014-01-22

Similar Documents

Publication Publication Date Title
JP5396339B2 (ja) リソース制御方法及びリソース制御システム
JP5801189B2 (ja) 計算機システム及びその制御方法
JP5439581B2 (ja) ストレージシステム、ストレージ装置、ストレージシステムの記憶領域の最適化方法
JP5368285B2 (ja) 計算機システム、計算機リソースの管理方法及びプログラム
US20130339956A1 (en) Computer system and optimal arrangement method of virtual machine in computer system
US20180189109A1 (en) Management system and management method for computer system
JP5973089B2 (ja) ストレージシステムの移行方式および移行方法
JP2015001828A (ja) 割当プログラム、割当装置および割当方法
JP6383861B2 (ja) ストレージ管理計算機
JP2009238114A (ja) ストレージ管理方法、ストレージ管理プログラム、ストレージ管理装置およびストレージ管理システム
US20150234671A1 (en) Management system and management program
WO2012039053A1 (ja) 計算機システムの運用管理方法、計算機システム及びプログラムを記憶する計算機読み取り可能な媒体
JP2005228278A (ja) 記憶領域の管理方法、管理装置及び管理プログラム
US8151079B2 (en) Computer system, storage area allocation method, and management computer
CN109725838A (zh) 用于管理多个盘的方法、装置以及计算机可读介质
JP2017215884A (ja) 仮想マシン配置装置およびリソース管理方法
JP2012079245A (ja) 仮想計算機のボリューム割当て方法およびその方法を用いた計算機システム
JP6244496B2 (ja) サーバストレージシステムの管理システム及び管理方法
JP2011100263A (ja) 仮想コンピュータシステム、仮想コンピュータ管理方法および管理プログラム
JP5558615B2 (ja) 計算機システム、計算機リソースの管理方法及びプログラム
JP2016212548A (ja) ストレージ制御装置、ストレージ制御方法、及びストレージ制御プログラム
JP7113698B2 (ja) 情報システム
JP2011215812A (ja) 仮想計算機管理方法、計算機システム及びリソース管理プログラム
US20240202027A1 (en) Computer-readable recording medium storing resource management program, resource management method, and management device
JP5744287B2 (ja) 計算機システム及び計算機リソースの管理方法

Legal Events

Date Code Title Description
A621 Written request for application examination

Free format text: JAPANESE INTERMEDIATE CODE: A621

Effective date: 20120305

A131 Notification of reasons for refusal

Free format text: JAPANESE INTERMEDIATE CODE: A131

Effective date: 20130806

A977 Report on retrieval

Free format text: JAPANESE INTERMEDIATE CODE: A971007

Effective date: 20130807

A521 Written amendment

Free format text: JAPANESE INTERMEDIATE CODE: A523

Effective date: 20130905

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: 20130924

A61 First payment of annual fees (during grant procedure)

Free format text: JAPANESE INTERMEDIATE CODE: A61

Effective date: 20131021

R151 Written notification of patent or utility model registration

Ref document number: 5396339

Country of ref document: JP

Free format text: JAPANESE INTERMEDIATE CODE: R151