JP5211766B2 - 資源割り当て装置及びプログラム - Google Patents

資源割り当て装置及びプログラム Download PDF

Info

Publication number
JP5211766B2
JP5211766B2 JP2008059182A JP2008059182A JP5211766B2 JP 5211766 B2 JP5211766 B2 JP 5211766B2 JP 2008059182 A JP2008059182 A JP 2008059182A JP 2008059182 A JP2008059182 A JP 2008059182A JP 5211766 B2 JP5211766 B2 JP 5211766B2
Authority
JP
Japan
Prior art keywords
physical server
physical
server
resources
virtual
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
Application number
JP2008059182A
Other languages
English (en)
Other versions
JP2009217434A (ja
Inventor
励 河合
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.)
Fujitsu Ltd
Original Assignee
Fujitsu 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 Fujitsu Ltd filed Critical Fujitsu Ltd
Priority to JP2008059182A priority Critical patent/JP5211766B2/ja
Publication of JP2009217434A publication Critical patent/JP2009217434A/ja
Application granted granted Critical
Publication of JP5211766B2 publication Critical patent/JP5211766B2/ja
Expired - Fee Related legal-status Critical Current
Anticipated expiration legal-status Critical

Links

Images

Description

本発明は、資源割り当て方法及び装置並びにプログラムに係り、特に複数の顧客が資源を仮想化によって共用する環境で用いる資源割り当て方法、そのような資源割り当て方法を採用した資源割り当て装置、及びコンピュータにそのような資源割り当て方法を用いた資源割り当てを実行させるプログラムに関する。
インターネットデータセンタの中でも複数顧客が資源を仮想化によって共用する仮想化データセンタで利用される仮想環境管理システムにおいて、サービスの信頼性の保証や管理を行うことが望まれている。
近年、インターネットデータセンタ等のデータセンタにおいて、資源を顧客に貸し出すホスティングサービスに加え、物理的なものではない仮想資源を貸し出す仮想化データセンタサービスの提供が始められている。このような仮想化データセンタサービスでは、物理的なサーバやネットワーク配線を貸し出すのではなく、指定された処理能力を持った仮想サーバや要求された帯域幅を貸し出す。仮想化データセンタは、提供する仮想資源を物理資源から供給するが、その際に単一の物理資源を仮想化することにより複数の顧客で共用させる。
一般に、顧客から要求されるサーバ資源量は必ずしも物理サーバ単位の資源量とは一致せず、又、近年のサーバの性能向上により物理サーバを占有させると過剰な資源量を提供してしまう傾向がある。更に、セキュリティへの要望が強くなっていることから、単純に複数の顧客で単一の物理サーバを共用する運用形態では適切なサービスを提供できなくなってきている。そこで、資源の仮想化により個々の仮想空間を独立化することで、各顧客から見るとは物理サーバを占有しているのと同等のセキュリティを提供し、これと同時に物理資源の有効利用を図ることができる。
このような仮想化による資源の共用は、資源の効率利用という利点をもたらすが、信頼性の面で新たな問題を引き起こす。例えば、顧客が信頼性の向上のために複数の仮想サーバで処理を行うような設計をしても、それらの複数の仮想サーバの処理が全て同一の物理サーバ上で実行されてしまっては、複数の仮想サーバの処理が単一の障害点を共有することになってしまい、処理を多重化した意味がなくなってしまう。一方、顧客に仮想サーバの物理配置を意識させたのでは、仮想化データセンタによる資源配置の最適化が行えなくなってしまう。
上記の如き問題は、仮想化データセンタからサービスを開始する場合に限らず、機器障害等によるサービスの再構成や再割当を行う場合にも発生する。特に障害回復のための再割当を行う際には、処理の冗長性だけでなく処理時間の短縮についても考慮する必要がある。これは、仮想化データセンタにおいては、処理で活用されない資源は通常稼動させないため、新規に物理サーバに論理サーバを割り当てる場合には仮想環境の初期化にかかる時間も必要となるためである。
このような信頼性の問題は、複数の顧客が資源を共用する仮想化データセンタに限らず、仮想化によりサーバの統合を行う顧客内データセンタの場合にも起こり得る。
従来の仮想データセンタは、動作するサービスの信頼性については言及しておらず、同時に保障もしていないが、今後、より高度なサービスのインフラストラクチャとして仮想データセンタが利用がされることが予想されるので、サービスの可用性や信頼性の評価及び保証を行うことが必要となってくると考えられる。このため、今後は、仮想化データセンタが提供するサービスの信頼性保証と資源の利用効率の最適化を両立させる要望がより一層強まると予想される。
特許文献1では、オンデマンドセンタにおける負荷分散及びリソース管理の方法についての提案がされているが、サービスの信頼性の評価や保証についての提案はない。
又、特許文献2では、データセンタにおける可用性を向上する方法についての提案がされているが、仮想化環境を考慮したものではなく、配置済みのサービスを利用しての可用性の向上に関してのものである。
特許第3627005号公報 特表2005−512190号公報 特開平10−187638号公報 特開2000−207374号公報 特開2001−209627号公報 特開2004−46372号公報 特開2006−268711号公報 特開2002−24192号公報
今後は、仮想化データセンタが提供するサービスの信頼性保証と資源の利用効率の最適化を両立させる要望がより一層強まると予想されるものの、従来は仮想化データセンタが提供するサービスの信頼性保証と資源の利用効率の最適化を両立する対策は取られていなかった。
そこで、本発明は、仮想化データセンタが提供するサービスの信頼性保証と資源の利用効率の最適化を両立可能な資源割り当て方法及び装置並びにプログラムを提供することを目的とする。
本発明の一観点によれば、提供するべき仮想化資源を複数の物理サーバに割り当てる資源割り当て装置であって、物理サーバの障害を認識する認識手段と、前記障害が認識された物理サーバにおける仮想化資源を検索する検索手段と、前記障害が認識された物理サーバ以外の物理サーバの中で、前記検索手段で検索された仮想化資源と冗長構成となる仮想化資源が割り当てられた物理サーバを除いた、仮想化資源が既に割り当てられている物理サーバを含む物理サーバの中から選択した物理サーバに、前記検索手段で検索された仮想化資源を割り当てた場合に残る資源が既に選択された他の物理サーバの残りの資源よりも少ないと、前記選択した前記物理サーバを検索された前記仮想化資源を割り当て可能な物理サーバ決定する決定手段とを備えた資源割り当て装置が提供される。
本発明の一観点によれば、提供するべき仮想化資源を複数の物理サーバに割り当てる割当処理をコンピュータに行わせるプログラムであって、物理サーバの障害を認識する手順と、前記障害が認識された物理サーバにおける仮想化資源を検索する手順と、前記障害が認識された物理サーバ以外の物理サーバの中で、前記検索手順で検索された仮想化資源と冗長構成となる仮想化資源が割り当てられた物理サーバを除いた、仮想化資源が既に割り当てられている物理サーバを含む物理サーバの中から選択した物理サーバに、前記検索手順で検索された仮想化資源を割り当てた場合に残る資源が既に選択された他の物理サーバの残りの資源よりも少ないと、前記選択した前記物理サーバを検索された前記仮想化資源を割り当て可能な物理サーバ決定する手順とを前記コンピュータに実行させるプログラムが提供される。
開示の資源割り当て方法及び装置並びにプログラムによれば、仮想化データセンタが提供するサービスの信頼性保証と資源の利用効率の最適化を両立可能とすることができる。
仮想化データセンタが提供するサービスの信頼性を保証するためには、多重化された仮想サーバ群が単一障害点を共有しないように物理サーバへ割り当てる必要がある。開示の資源割り当て方法及び装置並びにプログラムでは、顧客側で仮想サーバの多重化に関する情報を付与し、仮想化データセンタ側でこの情報に基づいて仮想サーバの物理サーバへの割り当てを決定する。
具体的には、提供するべき仮想化資源を複数の物理サーバに割り当てるコンピュータによる資源割り当て方法において、任意の1つの物理サーバの障害を認識するステップと、障害が認識された物理サーバで冗長構成の仮想化資源を検索するステップと、任意の1つの物理サーバ以外の物理サーバの中から冗長構成が可能であり、且つ、仮想化資源を割り当て可能な物理サーバを決定するステップとをコンピュータに実行させる。資源割り当て装置は、これらのステップに対応する手段を備える。
仮想化データセンタが提供するサービスの信頼性の保証は、従来技術にはない思想であり、提供するサービスの信頼性保証と資源の利用効率の最適化を両立させることは、今後仮想化データセンタが提供するサービスの高付加価値化に伴い必要になると考えられる。
開示の資源割り当て方法及び装置並びにプログラムによれば、提供するサービスの信頼性の保証を考慮した上でインスタンス(又は、論理)の物理サーバへの再割当を行うことができるため、仮想環境においても信頼性の高いサービスを提供することが可能となる。
又、本発明は仮想化データセンタに限らず、仮想化技術を利用するサービス運用システム全般に適用可能である。
以下に、本発明の資源割り当て方法及び装置並びにプログラムの各実施例を、図面と共に説明する。
図1は、本発明の第1実施例における仮想環境管理システムの概略構成を示すブロック図である。図1に示す仮想環境管理システム1は、管理サーバ2、インターネットデータセンタ等の仮想データセンタ3、及び複数のクライアント4を含む。管理サーバ2は、汎用コンピュータにより構成可能であり、仮想データセンタ3と接続されている。仮想データセンタ3は、インターネット等のネットワーク5を介して複数のクライアント4と接続される。各クライアント4は、汎用コンピュータにより構成可能である。仮想データセンタ3は、サーバプールを形成する複数の共用物理サーバ31を含む。各物理サーバ31は、汎用コンピュータにより構成可能である。各物理サーバ31は、サーバ仮想化機構を利用して複数の仮想サーバ35に分割され、その仮想サーバ35が複数連携することでサービスを形成する。サービスを形成する際、仮想サーバ35間は仮想ネットワークで接続される。尚、サーバ仮想化機構による物理サーバ31の仮想化の方式が様々なものが提案されて、仮想化方式は特に限定されない。このように、本実施例は特定の仮想化方式に依存するものではないので、仮想化方式自体の詳細な説明は省略する。
管理サーバ2、物理サーバ31及びクライアント4を構成する汎用コンピュータは、CPU,MPU等のプロセッサと、内部及び/又は外部記憶部とを備える。記憶部は、プロセッサが実行するプログラムや後述するテーブルを含む各種データを格納すると共に、プロセッサが実行する演算に用いたり中間データ等を格納するために用いられるワークエリアを提供する。
図1に示す如き環境において、本実施例では以下に説明するように仮想サーバ35を物理サーバ31に割り当てる。尚、以下の説明に用いられるパラメータ及び記号の定義は次の通りである。
物理サーバ台数K(Kは2以上の整数)は、仮想データセンタ3内で利用可能な物理サーバ31の台数を示す。物理サーバ性能P(k)は、各物理サーバ31が有する資源量を示し、1≦k≦Kである。クラスタグループS={クラスタA,B,C,...}は、仮想サーバ35の冗長性を考慮したクラスタ(即ち、仮想サーバ35が提供するサービス)A,B,C,...のグループを示す。クラスタs毎のインスタンス数N(s)は、各クラスタsに含まれるインスタンスの数を示し、s∈Sである。インスタンスの要求資源量R(s,n)は、各インスタンスに割り当てる資源量を示し、s∈S、且つ、1≦n≦N(s)である。クラスタsへの割当保証資源量G(s)は、サービスA,B,C,...の設計性能を維持するために必要な資源量を示し、s∈Sである。クラスタsへの割当済み資源量C(s)は、インスタンスを物理サーバ31に割り当てた結果として割り当てられた資源量を示し、s∈Sである。物理サーバ31へのインスタンス割当量M(k)={(s,n),...,割当インスタンス群}は、各物理サーバ31に割り当てられたインスタンスのリストを示し、1≦k≦Kである。物理サーバ31への割当済資源量
Figure 0005211766
は、各物理サーバ31でインスタンスの割り当てによって使用済みの資源量を示し、1≦k≦Kである。再割り当てが必要な仮想サーバ群Uは、U={(s,n),...}で表される。性能達成度T(s)は、クラスタの割当保証値に対する割当済の比率を示し、0≦T(s)≦1.0で表される。インスタンスへの資源割当量E(s,n)は、各インスタンスに実際に割り当てられた資源量を示し、s∈S、且つ、1≦n≦N(s)である。
次に、本実施例で使用する各種テーブル41〜44について説明する。
図2は、仮想データセンタ3内の記憶部に格納されるクラスタ定義テーブル41の一例を示す図である。顧客は冗長性を意識して設計したインスタンス群をクラスタとして定義する。仮想データセンタ3は、各顧客からの定義情報をまとめてクラスタ定義テーブル41を作成する。クラスタ定義テーブル41は、仮想データセンタ3の運用開始前に定義され、運用開始後はクラスタ構成の変更時、新クラスタの追加時、及びクラスタの削除時に変更される。クラスタ定義テーブル41には、インスタンスの要求資源量R(s,n)及びクラスタへの割当保証資源量G(s)の情報が記述される。
図3は、仮想データセンタ3内の記憶部に格納される物理サーバ定義テーブル42の一例を示す図である。物理サーバ定義テーブル42には、仮想データセンタ3が利用可能な物理サーバ31を登録する。図3中、「物理1」等は、物理サーバ31のサーバ名を示す。物理サーバ定義テーブル42は、仮想化データセンタ3の運用開始前に定義さる。仮想化データセンタ3の運用開始後は、物理サーバ31に障害(又は、異常)が発生した場合には周知の方法で認識され該当物理サーバ31が物理サーバ定義テーブル42から削除され、障害が発生した物理サーバ31の修復された場合や仮想データセンタ3の資源拡張時に物理サーバ31が追加されると物理サーバ定義テーブル42に追加される。物理サーバ定義テーブル42には、物理サーバ性能P(k)の情報が記述される。
図4は、仮想データセンタ3内の記憶部に格納される割当状況テーブル43の一例を示す図である。割当状況テーブル43は、以下で述べるような手順に従い、新規割当又は再割当の際に作成又は更新される。割当状況テーブル43は、仮想データセンタ3の運用開始時に後述する手順(PR1)で作成され、運用中は物理サーバ定義テーブル42又はクラスタ定義テーブル41の変更に合わせて後述する手順(PR2)以降により順次更新される。割当状況テーブル43の定義に基づき、実際の物理サーバ31にインスタンスの配備や移動が行われる。割当状況テーブル43は、物理サーバ31へのインスタンス割当量M(k)、物理サーバ31への割当済資源量A(k)及びインスタンスへの資源割当量E(s,n)の情報が記述される。インスタンス割当量M(k)は、物理サーバ定義テーブル42の物理サーバ性能P(k)からコピーされる。
図5は、仮想データセンタ3内の記憶部に格納される再割当優先度判定テーブル44の一例を示す図である。再割当優先度判定テーブル44は、クラスタ、クラスタ保証値、クラスタ割当量、性能達成度T(s)及び優先度の情報が記述される。クラスタ保証値は、クラスタ定義テーブル41の割当保証資源量G(s)からコピーされる。再割当優先度判定テーブル44は、以下の手順(PR1)〜(PR4)にて割り当てを調整する際に、優先するべきインスタンスを判断するために用いられる。
手順(PR1)は、多重化を考慮した仮想サーバ35の物理サーバ31への割り当てを行う。多重化時の配備制約を考慮した上で仮想サーバ35を物理サーバ31に割り当てる方法は、次の通りである。
手順(PR1):
ステップPR1−1:全てのkに対してM(k)={φ}とし、割当状況を初期化する。
ステップPR1−2:N(s)が大きい順に以降の処理を行う。これは、必要となる仮想サーバ35の台数が多いものを優先することで最大物理サーバ31の台数をできるだけ少なくするためである。複数のクラスタが同数の物理サーバ31からなる場合は、それらの中でR(s,n)が最大となるクラスタsを優先させる。
ステップPR1−3:選択したクラスタsに対してR(s,n)(1≦n≦N(s))が大きい順に以降の処理を行う。これは、インスタンスの要求資源量R(s,n)、即ち、要求性能が高い仮想サーバ35の方が割当制約が厳しいことから効率的な割り当てになるようにするためである。
ステップPR1−4:全ての物理サーバkに対し、任意のnに対し¬((s,n)∈M(k))であり、(A(k)+R(s,n))≦P(k)であり、且つ、(P(k)−(A(k)+R(s,n)))が最小となるようなkを選択する。これは、物理サーバ31がクラスタsの仮想サーバ35が割り当てられておらず、割り当てることで未割当性能が最小となる物理サーバ31を選択することを意味する。尚、(P(k)−(A(k)+R(s,n)))が同値で最小となるkが複数ある場合は任意のものを選んで良い。選択したkは、物理サーバ31へのインスタンス割当量M(k)に追加される。
図6は、初期割当処理をより詳細に説明するフローチャートである。図6において、ステップS1は割当状況テーブル43をゼロに初期化する。ステップS2は、クラスタ定義テーブル41でインスタンスが多い順に仮想サーバ35を割り当てる処理を開始し、全てのインスタンスに対する仮想サーバ35の割り当てが完了すると処理は終了する。ステップS3は、各インスタンスについて、要求資源量R(s,n)、即ち、要求性能が高い順に仮想サーバ35を割り当てる割当処理を開始して処理はステップS4へ進み、全てのインスタンスに対する割当処理が完了すると処理はステップS2へ戻る。
ステップS4は、選択された仮想サーバ35を未定義として設定し、ステップS5は、全ての物理サーバ31を順に調べる処理を開始する。ステップS6は、物理サーバ31が既にクラスタ内で利用済であるか否かを判定する。ステップS6の判定結果がYESであると、ステップS7は、この物理サーバ31がインスタンスの要求資源量R(s,n)、即ち、要求性能を確保可能であるか否かを判定する。ステップS7の判定結果がYESであると、ステップS8は、既に選択された他の物理サーバ31が有るか否かを判定する。ステップS8の判定結果がYESであると、ステップS9は、この物理サーバ31の資源を選択された仮想サーバ35に割り当てた後に残る資源が、既に選択された他の物理サーバ31の残りの資源より少ないか否かを判定する。ステップS9の判定結果がYESであると、ステップS10は、この物理サーバ31を選択された仮想サーバ35を割り当てる物理サーバ31として選択する。ステップS6〜S9のいずれかの判定結果がNOであるか、或いは、ステップS10の後、処理はステップS5へ戻る。
ステップS5において、全ての物理サーバ31についてステップS6〜S10の処理が完了すると、処理はステップS11へ進む。ステップS11は、選択された仮想サーバ35を割り当てる物理サーバ31が選択されたか否かを判定する。ステップS11の判例結果がYESであると、ステップS12は、選択された物理サーバ31を割当状況テーブル43に登録し、処理はステップS3戻る。一方、ステップS11の判定結果がNOであると、ステップS13は、仮想データセンタ3又は管理サーバ2の管理者に、仮想サーバ35を割り当てる物理サーバ31が選択されなかった旨を含む警告を出力し、処理はステップS3へ戻る。
このようにして、余剰性能の量を抑制しつつ多重構成の物理サーバ31の重複割当を回避することができる。尚、上記の手順(PR1)では最適な構成となることは保証されないが、仮想データセンタ3の運用時において多くの場合に妥当となる程度の効率化は可能である。
手順(PR2)は、物理サーバ31の障害発生時における冗長性及び資源効率と配備時間を考慮したインスタンス配置設計を行う。
物理サーバ31やソフトウェアに障害が発生した場合、検索の結果冗長構成を取っていた場合には非冗長構成に、冗長構成を取っていなかった場合には縮退運用又はサービス停止といった事態が発生する。このような場合、仮想化データセンタ3においては、利用可能な資源が存在しているのであれば、障害が発生した物理サーバ31を別の物理サーバ31に割り当て直すことで障害から回復させることが可能である。この際、冗長性の維持等を考慮しながら再割り当てを行う方法は次の通りである。尚、再割当処理は、物理サーバ定義テーブル43から物理サーバ31が削除されることで開始される。削除と同時に追加される物理サーバ31がある場合は、先ず本手順(PR2)が行われ、その後に後述する手順(PR3)が行われる。
手順(PR2):
ステップPR2−1:割り当て状況テーブル43において、削除された物理サーバ31に関係しているインスタンスを再割り当てが必要なインスタンスとして仮想サーバ群Uに登録する。仮想サーバ群U={φ}であれば(障害が発生した物理サーバ31上でインスタンスが動いていなかった場合)、これ以上何も処理は行わない。これと同時に、該当インスタンスは割り当て状況テーブル43から削除する。
ステップPR2−2: 仮想サーバ群Uに含まれる仮想サーバ35が含まれるクラスタsに対し、現在割り当て済みの性能C(s)を計算する。
ステップPR2−3:性能達成度T(s)=C(s)/G(s)を計算する、但し、G(s)がゼロの場合もしくはT(s)が1.0を超える場合にはT(s)=1.0とする。
ステップPR2−4:T(s)が最も小さいクラスタs内を選択する。同値の場合はG(s)が大きいものを優先する(障害の影響が大きいと思われるものを優先する)。その中に含まれるインスタンスのうち、要求資源量が大きいものを選択する。
ステップPR2−5:現在稼動している物理サーバ31(M(k)≠φ)の中で、クラスタsに含まれる仮想サーバ35が割り当てられておらず、且つ、再割り当てを行う(s,n)に割り当てる資源R(s,n)を確保できる物理サーバがあるか否かを検索する。そのような物理サーバ31が複数ある場合には、残りの資源量が最小になる物理サーバ31を優先する。
ステップPR2−6:ステップPR2−5において割り当てができない場合は、未稼動状態の物理サーバ31の中からR(s,n)が割り当て可能な物理サーバ31を選択する。
ステップPR2−7:ステップPR2−6において割り当てができない(必要な大きさの仮想サーバ35のための資源を選択できない)場合は、確保可能な最大量を割り当てる。
ステップPR2−8:ステップPR2−4で選択されたインスタンスを再割り当て優先度判定テーブル44から削除し、部分的に割り当てた結果状況が改善したクラスタの優先度を再判定するためにステップPR2−2から処理を繰り返す。全てのインスタンスが処理されるまで上記ステップPR2−2〜PR2−8が繰り返される。
図7は、障害発生時の再割当処理を説明するフローチャートである。図7において、ステップS21は、障害を起こした物理サーバ31内のインスタンスを再割当候補に選択する。ステップS22は、障害を起こした物理サーバ31内のインスタンスの割当を解除する。ステップS23は、再割当処理を行い、処理は終了する。
図8乃至図10は、再割当処理を説明するフローチャートである。図8において、ステップS31は、選択されたインスタンスが残っているか否かを判定し、判定結果がNOであると処理は終了する。一方、ステップS31の判定結果がYESであると、ステップS32は、再割当優先度判定テーブル44を構築する処理を開始する。ステップS33は、割当優先度の高いクラスタを選択し、ステップS34は、要求性能の高いインスタンスを選択する。ステップS35は、選択された仮想サーバ35を未定義として設定し、ステップS36は、稼働中の物理サーバ31を順に調べる処理を開始する。ステップS37は、物理サーバ31が既にクラスタ内で利用済であるか否かを判定する。ステップS37の判定結果がYESであると、ステップS38は、この物理サーバ31がインスタンスの要求資源量R(s,n)、即ち、要求性能を確保可能であるか否かを判定する。ステップS38の判定結果がYESであると、ステップS39は、既に選択された他の物理サーバ31が有るか否かを判定する。ステップS39の判定結果がYESであると、ステップS40は、この物理サーバ31の資源を選択された仮想サーバ35に割り当てた後に残る資源が、既に選択された他の物理サーバ31の残りの資源より少ないか否かを判定する。ステップS40の判定結果がYESであると、ステップS41は、この物理サーバ31を選択された仮想サーバ35を割り当てる物理サーバ31として選択する。ステップS37〜S40のいずれかの判定結果がNOであるか、或いは、ステップS41の後、処理はステップS36へ戻る。
ステップS36において、全ての物理サーバ31についてステップS37〜S41の処理が完了すると、処理は図9に示すステップS51へ進む。ステップS51は、選択された仮想サーバ35を割り当てる物理サーバ31が選択されたか否かを判定する。ステップS51の判例結果がYESであると、処理は図10と共に後述するステップS70へ進む。一方、ステップS51の判定結果がNOであると、ステップS52は、全ての物理サーバ31を順に調べる処理を開始する。ステップS53は、物理サーバ31が既にクラスタ内で利用済であるか否かを判定する。ステップS53の判定結果がYESであると、ステップS54は、この物理サーバ31がインスタンスの要求資源量R(s,n)、即ち、要求性能を確保可能であるか否かを判定する。ステップS54の判定結果がYESであると、ステップS55は、既に選択された他の物理サーバ31が有るか否かを判定する。ステップS55の判定結果がYESであると、ステップS56は、この物理サーバ31の資源を選択された仮想サーバ35に割り当てた後に残る資源が、既に選択された他の物理サーバ31の残りの資源より少ないか否かを判定する。ステップS56の判定結果がYESであると、ステップS57は、この物理サーバ31を選択された仮想サーバ35を割り当てる物理サーバ31として選択する。ステップS53〜S56のいずれかの判定結果がNOであるか、或いは、ステップS57の後、処理はステップS52へ戻る。
ステップS52において、全ての物理サーバ31についてステップS53〜S57の処理が完了すると、処理はステップS58へ進む。ステップS58は、選択された仮想サーバ35を割り当てる物理サーバ31が選択されたか否かを判定する。ステップS58の判例結果がYESであると、処理は図10と共に後述するステップS70へ進む。一方、ステップS58の判定結果がNOであると、ステップS59は、全ての物理サーバ31を順に調べる処理を開始する。ステップS60は、物理サーバ31がインスタンスの要求資源量R(s,n)、即ち、要求性能を確保可能であるか否かを判定する。ステップS60の判定結果がYESであると、ステップS61は、既に選択された他の物理サーバ31が有るか否かを判定する。ステップS61の判定結果がYESであると、ステップS62は、この物理サーバ31の資源を選択された仮想サーバ35に割り当てた後に残る資源が、既に選択された他の物理サーバ31の残りの資源より少ないか否かを判定する。ステップS62の判定結果がYESであると、ステップS63は、この物理サーバ31を選択された仮想サーバ35を割り当てる物理サーバ31として選択する。ステップS60〜S62のいずれかの判定結果がNOであるか、或いは、ステップS63の後、処理はステップS59へ戻る。
ステップS59において、全ての物理サーバ31についてステップS60〜S63の処理が完了すると、処理はステップS64へ進む。ステップS64は、選択された仮想サーバ35を割り当てる物理サーバ31が選択されたか否かを判定する。ステップS64の判例結果がYESであると、処理は図10に示すステップS70へ進み、NOであると処理は図10に示すステップS65へ進む。
図10において、ステップS65は、全ての物理サーバ31を順に調べる処理を開始する。ステップS66は、既に選択された他の物理サーバ31が有るか否かを判定する。ステップS66の判定結果がYESであると、ステップS67は、この物理サーバ31に未割当資源があり、且つ、既に選択された他の物理サーバ31より多くの資源が確保可能であるか否かを判定する。ステップS67の判定結果がYESであると、ステップS68は、この物理サーバ31を選択された仮想サーバ35を割り当てる物理サーバ31として選択する。ステップS66又はS67のいずれかの判定結果がNOであるか、或いは、ステップS68の後、処理はステップS65へ戻る。
ステップS65において、全ての物理サーバ31についてステップS66〜S68の処理が完了すると、処理はステップS69へ進む。ステップS69は、選択された仮想サーバ35を割り当てる物理サーバ31が選択されたか否かを判定する。ステップS69の判例結果がYESであると、ステップS70は、選択された物理サーバ31を割当状況テーブル43に登録する。一方、ステップS69の判定結果がNOであると、ステップS71は、仮想データセンタ3又は管理サーバ2の管理者に、仮想サーバ35を割り当てる物理サーバ31が選択されなかった旨を含む警告を出力する。ステップS70又はS71の後、処理はステップS72へ進む。ステップS72は、処理したインスタンスを処理対象から除外し、処理は図8に示すステップS31へ戻る。
図11は、再割当優先度判定テーブル構築処理を説明するフローチャートである。図11において、ステップS81は、再割当優先度判定テーブル44をゼロに初期化する。ステップS82は、再割当インスタンスをクラスタ毎にまとめる。ステップS83は、各再割当インスタンスをクラスタ毎に登録する処理を開始する。ステップS85は、クラスタ内のインスタンスを再割当優先度判定テーブル44に登録する。ステップS86は、そのクラスタで現在割当済のインスタンスの資源量の合計を示すクラスタ割当量を登録する。ステップS87は、そのクラスタの割当保証値がゼロであるか否かを判定する。ステップS87の判定結果がNOであると、ステップS88は、そのクラスタの割当保証値に対する割当済の比率を性能達成度T(s)として算出する。ステップS89は、性能達成度T(s)≧1.0であるか否かを判定する。ステップS87又はS89の判定結果がYESであると、ステップS90は、性能達成度T(s)を1.0に設定する。ステップS89の判定結果がNO、又は、ステップS90の後、処理はステップS83へ戻る。ステップS83において、全てのクラスタについてステップS85〜S90の処理が完了すると、処理はステップS84へ進む。ステップS84は、性能達成度T(s)が大きい順に優先度を設定し、処理は終了する。例えば、性能達成度T(s)が同値であれば、ステップS84はクラスタ保証値の大きい方を優先して優先度を設定する。
上記の如く、障害により割り当て性能の劣化が大きいものを優先することで、障害の影響が大きいクラスタの復旧を優先させる。又、十分な資源が確保できない場合でも割り当て可能な資源があれば融通することで、クラスタを部分的にでも復旧させる。
手順(PR3)は、物理サーバ障害回復時における冗長性、資源効率及び配備時間を考慮したインスタンス配置設計を行う。
障害が発生した物理サーバ31を修理したり代替機を新規に調達した時は、新たな余剰資源により適切に配置されなかったインスタンスについて再調整により配置を適切に修正することができる。尚、障害回復時の再割当処理は、物理サーバ定義テーブル42に物理サーバ3が追加されることで開始される。物理サーバ定義テーブル42への物理サーバ31の追加と同時に削除される物理サーバ31がある場合は、先ず手順(PR2)が行われ、その後本手順(PR3)が行われる。
手順(PR3):
ステップPR3−1:割当状況テーブル43とクラスタ定義テーブル41より、再割り当てが必要なインスタンスを選択する。先ず、割り当てられていないインスタンスや割当量が要求量に達していないインスタンスを再割り当てが必要な仮想サーバ群Uに登録する。その後、クラスタ内で同一物理サーバ31に割り当てられたインスタンスを探して見つかった場合は、資源量が少ないものから優先して仮想サーバ群Uに登録していく。仮想サーバ群Uに登録されたインスタンスは、割当状況テーブル43から削除する。又、U={φ}である(再割り当てが必要なインスタンスが無い)場合は、ここで処理を終える。同時に、該当インスタンスは割当状況テーブル43から削除する。
ステップPR3−2:ステップPR3−1の後は、上記手順(PR2)のPR2−2以降と同様の処理を行う。
図12は、障害回復時の再割当処理を説明するフローチャートである。図12において、ステップS91は、クラスタ定義テーブル41のインスタンスを順に選択する。ステップS92は、割当状況テーブル43に選択されたインスタンスが存在するか否かを判定する。ステップS92の判定結果がYESであると、ステップS93は、割当状況テーブル43のインスタンス割当量M(k)がクラスタ定義テーブル41の要求資源量R(s,n)と等しいか否かを判定し、判定結果がYESであると処理はステップS91へ戻る。一方、ステップS92又はS93の判定結果がNOであると、ステップS94は、インスタンスを再割当候補に選択し、この再割当候補のインスタンスを割当状況テーブル43から削除し、処理はステップS91へ戻る。
ステップS91において、クラスタ定義テーブル41の全てのインスタンスについてステップS92〜S94の処理が完了すると、処理はステップS95へ進む。ステップS95は、割当状況テーブル43の物理サーバ31を順に選択する。ステップS96は、同一クラスタのインスタンスが複数存在するか否かを判定する。ステップS96の判定結果がYESであると、ステップS97は、同一クラスタ内の最大資源量のインスタンス以外のインスタンスを再割当候補に選択し、この再割当候補のインスタンスを割当状況テーブル43から削除する。ステップS96の判定結果がNO、又は、ステップS97の後、処理はステップS95へ進む。ステップS95において、割当状況テーブル43の全ての物理サーバ31についてステップS96及びS97の処理が完了すると、処理はステップS98へ進む。ステップS98は、再割当処理を行い、処理は終了する。
これにより、適切でない割り当て状況にあったインスタンスをより適切になるよう調整することができる。
手順(PR4)は、クラスタ構成変更時の冗長性、資源効率及び配備時間を考慮したインスタンス配置設計を行う。
仮想データセンタ3の運用中にサービス規模が変化したり、新しいクラスタが追加されたり、クラスタが削除される場合があり得る。又、クラスタ内のインスタンスの増減や要求資源量の増減が発生する場合もある。クラスタ更新時の再割当処理は、このような場合にインスタンスの割り当てを調整するものであり、クラスタ定義テーブル41が更新された時に実行される。
手順(PR4):
ステップPR4−1:割当状況テーブル43とクラスタ定義テーブル41を比較し、割当状況テーブル43に含まれクラスタ定義テーブル41に含まれないインスタンス(更新された結果存在しなくなったインスタンス)を割当状況テーブル43から削除する。
ステップPR4−2:割当状況テーブル43とクラスタ定義テーブル41を比較し、割当状況テーブル43上のインスタンスへの資源割当量E(s,n)がクラスタ定義テーブル41上の要求資源量R(s,n)よりも多い場合は資源割当量E(s,n)を削減する。
ステップPR4−3:割当状況テーブル43とクラスタ定義テーブル41を比較し、割当状況テーブル43上のインスタンスへの資源割当量E(s,n)がクラスタ定義テーブル41上の要求資源量R(s,n)よりも少ないインスタンスを列挙し、必要資源量R(s,n)が大きいものから順に以下の処理を施す。
ステップPR4−3A:物理サーバ31内で要求資源量R(s,n)まで資源割り当てを拡張可能であれば割り当てを変更する。
ステップPR4−3B:資源割り当てを拡張不可能であれば、割当状況テーブル43から該当インスタンスを削除する処理、即ち、次の処理で新規と同様の割当処理を行う。
ステップPR4−4:割当状況テーブル43とクラスタ定義テーブル41を比較し、クラスタ定義テーブル41上に含まれ割当状況テーブル43に含まれない、即ち、(新規に追加された、若しくはステップPR4−3において一旦削除されたインスタンスを仮想サーバ群Uに登録する。
ステップPR4−5:ステップPR4−4以降の処理は、手順(PR2)のPR2−2以降と同様である。
図13及び図14は、クラスタ構成更新時の再割当処理を説明するフローチャートである。図13において、ステップS101は、割当状況テーブル43のインスタンスを順に選択する。ステップS102は、選択されたインスタンスがクラスタ定義テーブル41上に存在するか否かを判定する。ステップS102の判定結果がYESであると、ステップS103は、クラスタ定義テーブル41上の要求資源量R(s,n)が割当状況テーブル43上の割当済み資源量A(k)より少ないか否かを判定し、判定結果がNOであると処理はステップS101へ戻る。一方、ステップS103の判定結果がYESであると、ステップS104は、インスタンスを割当調整候補に登録し、インスタンスの割当量を縮小する。ステップS102の判定結果がNOであると、ステップS105は、インスタンスを削除候補として登録し、このインスタンスを割当状況テーブル43から削除する。ステップS103,104,105のいずれかの後、処理はステップS101へ戻る。
ステップS101は、割当状況テーブル43の全てのインスタンスについてステップS102〜S104の処理が完了すると、処理はステップS106へ進む。ステップS106は、割当状況テーブル43の物理サーバ31を順に選択する。ステップS107は、物理サーバ31に割り当てられたインスタンスの要求資源量R(s,n)をクラスタ定義テーブル41から調査する。ステップS108は、インスタンスの要求資源量R(s,n)の大きい順に物理サーバ31を選択する。
ステップS109は、要求資源量R(s,n)が割当済資源量A(k)より大きいか否かを判定する。ステップS109の判定結果がYESであると、ステップS110は、その物理サーバ31上で資源量を要求資源量R(s,n)まで拡張可能であるか否かを判定する。ステップS110の判定結果がYESであると、ステップS111は、その物理サーバ31を割当調整候補として登録し、インスタンスの割当量を拡大する。一方、ステップS110の判定結果がNOであると、ステップS112は、インスタンスを割当候補として登録し。このインスタンスを割当状況テーブル43から削除する。ステップS109の判定結果がNO、又は、ステップS111又はS112の後、処理はステップS108へ戻る。
ステップS108において、クラスタ定義テーブル41の全てのインスタンスについてステップS109〜S112の処理が完了すると、処理はステップS106へ戻る。ステップS106において、割当状況テーブル43の全てのインスタンスについてステップS107〜S112の処理が完了すると、処理は図14に示すステップS113へ進む。
図14において、ステップS113は、クラスタ定義テーブル41上のインスタンスを順に選択する。ステップS114は、選択されたインスタンスが割当状況テーブル43上に存在するか否かを判定し、判定結果がYESであると処理はステップS113へ戻る。ステップS114の判定結果がNOであると、ステップS115は、インスタンスを割当候補として登録し、処理はステップS113へ戻る。ステップS113において、クラスタ定義テーブル41の全てのインスタンスについてステップS114及びS115の処理が完了すると、処理はステップS116へ進む。ステップS116は、再割当処理を行い、処理は終了する。
この手順(PR4)により、インスタンスの移動をできるだけ少なくすると共に、できるだけ資源利用効率を高くすることができる。
尚、以上の処理は全て割当状況の更新を行うものである。インスタンスの起動や終了、移動といった処理は、全てのテーブル更新が完了した時点で更新前後のテーブルの差分を調査して一括で行う。
図15は、本実施例で利用する物理サーバ構成及びクラスタ構成を示す図である。図15(a)は物理サーバ構成を示し、図15(b)はクラスタ構成を示す。ここでは説明の便宜上、物理サーバ31の台数は4台であり、夫々の資源量、即ち、物理サーバ機能P(k)は50である。又、配備されるクラスタはA〜Dの4つである。クラスタAは3つのインスタンスからなり、(2+1)冗長構成となっている。クラスタBは2つのインスタンスからなり、資源量としては冗長性はないが単一障害に際しての縮退運転が可能となっている。クラスタC,Dはいずれも冗長構成となっていない。このような物理サーバ構成及びクラスタ構成の場合のクラスタ定義テーブル41は図2のようになり、物理サーバ定義テーブル42は図3のようになる。
初期割り当ての一例として、割当順序はインスタンス数が多い順で、且つ、同数なら資源量が多い順となるので、A→B→C→Dとなる。図16は、初期割り当て時の割当手順を示す図である。
図16(a)は、クラスタAの割り当てを示し、(1)のインスタンス(A,1)をサーバ名が物理1の物理サーバ31に割り当て、(2)のインスタンス(A,2)の割り当てではサーバ名が物理1以外の物理サーバ31から選択して割り当て(この例では物理2に割り当て)、(3)のインスタンス(A,3)の割り当てはサーバ名が物理1,2以外の物理サーバ31から選択して割り当てる(この例では物理3に割り当てる)。
図16(b)は、クラスタBの割り当てを示し、(4)のインスタンス(B,1)の割り当てはサーバ名が物理1,2,3のいずれかの物理サーバ31に割り当てた場合に物理サーバ31の余剰分が最小になるのでいずれかを選択して割り当て(この例では物理1に割り当て)、(5)のインスタンス(B,2)の割り当てはサーバ名が物理1の物理サーバ31を避けて、余剰が最小になるサーバ名が物理2,3の物理サーバ31を選択して割り当てる(この例ではサーバ名が物理2の物理サーバ31を割り当てる)。
図16(c)は、クラスタCの割り当てを示し、(6)のインスタンス(C,1)の割り当てはサーバ名が物理1の物理サーバ31に割り当てた場合が余剰分最小なのでサーバ名が物理1の物理サーバ31を選択して割り当てる。
図16(d)は、クラスタDの割り当てを示し、(7)のインスタンス(D,1)の割り当てはサーバ名が物理2の物理サーバ31に割り当てた場合が余剰分最小なのでサーバ名が物理2の物理サーバ31を選択して割り当てる。
この結果作成される割当状況テーブル43は、図4のようになる。
次に、物理サーバ31の削減等による障害発生時に資源が十分に残っている場合について図17と共に説明する。図17は、障害発生時に資源が十分残っている場合の割当手順を示す図である。
図16(d)のようにクラスタが物理サーバ31に割り当てられた状態で、図17(a)に示すようにサーバ名が物理1の物理サーバ31で障害が発生したとする。この障害発生により、インスタンス
(A,1),(B,1),(C,1)の再割当が必要となる。
先ず、再割当優先度判定テーブル44を作成する。判定が必要となるクラスタA,B,Cで再割当が必要なインスタンスを分類し、既にそのクラスタ内で割り当てられているインスタンスの資源割当量の合計をクラスタ割当量に設定する。このクラスタ割当値とクラスタ保証値との比を性能達成度T(s)とする。
図17(b)に(11)で示すように、作成した再割当優先度判定テーブル44より、最初に処理すべきクラスタはクラスタCとなる。そしてクラスタC内で再割当が必要なインスタンスとしてこの場合唯一のインスタンス(C,1)が選択される。稼働中の物理サーバ31内でインスタンス(C,1)が割当可能なのは物理サーバ31なので、インスタンス(C,1)は物理サーバ31に割り当てられ、再割当候補から除外される。
又、図17(b)に(12)で示すように、再度インスタンス(A,1),(B,1)で再割当優先度判定テーブル44を作成する。次に処理するクラスタとしてクラスタBが選択され、インスタンスとしてはインスタンス(B,1)が選択される。稼働中の物理サーバ31内で(B,1)が割り当て可能なのは、サーバ名が物理3の物理サーバ31のみなので (サーバ名が物理2の物理サーバ31はインスタンス(B,2)が存在するため選択できないので)、サーバ名が物理3の物理サーバ31に割り当てられ、インスタンス(B,1)は再割当候補から除外される。最後にインスタンス(A,1)の処理を行う。稼働中の物理サーバ31にインスタンス(A,1)が割当可能な物理サーバ31は存在しない。非稼働中の物理サーバ31を含めて探索すると、サーバ名が物理4の物理サーバ31に割当が可能であるため、このサーバ名が物理4の物理サーバ31に割り当てられる。
図17(c)は、再割当優先度判定テーブル44の状態を図17(b)に対応させて示す。
次に、物理サーバ31の削減等による障害発生時に十分な資源が残っていない、即ち、資源が不足している場合について図18と共に説明する。図18は、障害発生時に資源が不足している場合の割当手順を示す図である。
図17の場合、冗長性及び要求資源量を満たすことが可能なだけの予備資源があったが、図18の場合は十分な資源が確保できないものとする。一例として、図17の場合にサーバ名が物理4の物理サーバ31が存在しない場合の割当手順を説明する。図18(a)は、図17(a)と同じである。
先ず、図17(c)の場合と同様に図18(c)に示す再割当優先度判定テーブル44を作成する。図18(b)に(11)で示すように、作成した再割当優先度判定テーブル44より、最初に処理するべきクラスタはクラスタCとなる。クラスタC内で再割当が必要なインスタンスとしてこの場合唯一のインスタンス(C,1)が選択される。稼働中の物理サーバ31内でインスタンス(C,1)が割当可能なのはサーバ名が物理3の物理サーバ31なので、インスタンス(C,1)はサーバ名が物理3の物理サーバ31に割り当てられ、再割当候補から除外される。
図18(b)に(12)で示すように、再度インスタンス(A,1),(B,1)で再割当優先度判定テーブル44を作成する。次に処理するクラスタとしてクラスタBが選択され、インスタンスとしてはインスタンス(B,1)が選択される。稼働中の物理サーバ31内でインスタンス(B,1)が割当可能なのは、サーバ名が物理3の物理サーバ31のみであり、サーバ名が物理3の物理サーバ31はインスタンス(B,2)が存在するため選択できないので、サーバ名が物理2の物理サーバ31に割り当てられ、インスタンス(B,1)は再割当候補から除外される。
図18(b)に(14)で示すように、最後にインスタンス(A,1)の処理を行う。稼働中の物理サーバ31内でインスタンス(A,1)が割当可能な物理サーバ31は存在しない。非稼働中の物理サーバ31を含めて探索しても割当可能な物理サーバ31はない。更に、冗長性を無視しても要求資源量を確保可能な物理サーバ31が存在しないため、最大の資源確保が可能なサーバ名が物理2の物理サーバ31上に確保可能な最大の資源を割り当てる。
次に、物理サーバ31の増加等による物理サーバ31の障害回復時の割当手順を、図19と共に説明する。図19は、障害回復時の割当手順を説明する図である。
ここでは、図18において障害が完全に回復できない場合に、その後の障害回復により資源の再割当が行われる場合について説明する。図19では、図18においてサーバ名が物理1の物理サーバ31が復旧されるものとする。
先ず、処理対象のインスタンスの探索を行うと、インスタンス(A,1)の割当済資源量が要求資源量と異なるため、インスタンス(A,1)が選択される。そして、この選択されたインスタンス(A,1)に基づいて再割当優先度判定テーブル44を作成する。
稼働中の物理サーバ31内にインスタンス(A,1)が割当可能な物理サーバ31は存在しない。非稼働中の物理サーバ31を含めて探索すると、サーバ名が物理1の物理サーバ31に割当が可能であるため、サーバ名が物理1の物理サーバ31にインスタンス(A,1)が割り当てられる。
尚、インスタンスを割り当てる物理サーバ31を決定する際には、一旦割当を解除した上で再割当という手順を踏むが、実際の再割当作業においては、インスタンスを物理サーバ31間で移動させるようにしても良い。
図20は、クラスタ構成の変更時の割当手順を示す図である。図20(a)はクラスタ定義テーブル41を示し、図20(b)はクラスタの割り当てを示し、図20(c)は再割当優先度判定テーブル44を示す。ここでは、上記実施例の処理を実施した後に、クラスタAのインスタンスに割り当てる資源量を増加させる場合を例にとって説明する。又、変更されるインスタンスは(A,1),(A,2),(A,3)であるものとする。インスタンス(A,1)は、現在の物理サーバ31内では拡張不可能なため、再割当が行われる。インスタンス(A,2),(A,3)は、現在の物理サーバ31内で拡張可能なため、割当済みの物理サーバ31はそのままで割当量の拡張が行われる。そして、インスタンス(A,1)の再割当処理が行われ、結果としてサーバ名が物理4の物理サーバ31に割り当てられる。
尚、インスタンスを割り当てる物理サーバ31を決定する際には、一旦割当を解除した上で再割当という手順を踏むが、実際の再割当作業においては、インスタンスを物理サーバ31間で移動させるようにしても良い。
尚、本発明は、以下に付記する発明をも包含するものである。
(付記1)
提供するべき仮想化資源を複数の物理サーバに割り当てるコンピュータによる資源割り当て方法であって、
任意の1つの物理サーバの障害を認識するステップと、
該障害が認識された物理サーバで冗長構成の仮想化資源を検索するステップと、
該任意の1つの物理サーバ以外の物理サーバの中から冗長構成が可能であり、且つ、該仮想化資源を割り当て可能な物理サーバを決定するステップと
を該コンピュータに実行させることを特徴とする、コンピュータによる資源割り当て方法。
(付記2)
該物理サーバを決定するステップは、該障害発生時における冗長性及び資源効率と配備時間を考慮したインスタンス配置設計を行うことを特徴とする、付記1記載の資源割り当て方法。
(付記3)
該物理サーバを決定するステップは、クラスタ構成変更時の冗長性、資源効率及び配備時間を考慮したインスタンス配置設計を行い、クラスタは冗長性を意識して設計したインスタンス群であることを特徴とする、付記1記載の資源割り当て方法。
(付記4)
該物理サーバを決定するステップは、
該障害が発生した物理サーバ内のインスタンスを再割当候補に選択し、
該障害を発生した物理サーバ内のインスタンスの割当を解除し、
再割当処理を行い、
利用可能な物理サーバの資源が存在すれば、該障害が発生した物理サーバを別の物理サーバに割り当て直すことで障害から回復させることを特徴とする、付記1記載の資源割り当て方法。
(付記5)
提供するべき仮想化資源を複数の物理サーバに割り当てる資源割り当て装置であって、
任意の1つの物理サーバの障害を認識する認識手段と、
該障害が認識された物理サーバで冗長構成の仮想化資源を検索する検索手段と、
該任意の1つの物理サーバ以外の物理サーバの中から冗長構成が可能であり、且つ、該仮想化資源を割り当て可能な物理サーバを決定する決定手段とを備えたことを特徴とする、資源割り当て装置。
(付記6)
該決定手段は、該障害発生時における冗長性及び資源効率と配備時間を考慮したインスタンス配置設計を行うことを特徴とする、付記5記載の資源割り当て装置。
(付記7)
該決定手段は、クラスタ構成変更時の冗長性、資源効率及び配備時間を考慮したインスタンス配置設計を行い、クラスタは冗長性を意識して設計したインスタンス群であることを特徴とする、付記5記載の資源割り当て装置。
(付記8)
該決定手段は、
該障害が発生した物理サーバ内のインスタンスを再割当候補に選択する手段と、
該障害を発生した物理サーバ内のインスタンスの割当を解除する手段と、
再割当処理を行う手段とを含み、
利用可能な物理サーバの資源が存在すれば、該障害が発生した物理サーバを別の物理サーバに割り当て直すことで障害から回復させることを特徴とする、付記5記載の資源割り当て装置。
(付記9)
提供するべき仮想化資源を複数の物理サーバに割り当てる割当処理をコンピュータに行わせるプログラムであって、
任意の1つの物理サーバの障害を認識する手順と、
該障害が認識された物理サーバで冗長構成の仮想化資源を検索する手順と、
該任意の1つの物理サーバ以外の物理サーバの中から冗長構成が可能であり、且つ、該仮想化資源を割り当て可能な物理サーバを決定する手順と
を該コンピュータに実行させることを特徴とする、プログラム。
(付記10)
該物理サーバを決定する手順は、該障害発生時における冗長性及び資源効率と配備時間を考慮したインスタンス配置設計を行うことを特徴とする、付記9記載のプログラム。
(付記11)
該物理サーバを決定する手順は、クラスタ構成変更時の冗長性、資源効率及び配備時間を考慮したインスタンス配置設計を行い、クラスタは冗長性を意識して設計したインスタンス群であることを特徴とする、付記9記載のプログラム。
(付記12)
該物理サーバを決定する手順は、
該障害が発生した物理サーバ内のインスタンスを再割当候補に選択し、
該障害を発生した物理サーバ内のインスタンスの割当を解除し、
再割当処理を行い、
利用可能な物理サーバの資源が存在すれば、該障害が発生した物理サーバを別の物理サーバに割り当て直すことで障害から回復させることを特徴とする、付記9記載のプログラム。
以上、本発明を実施例により説明したが、本発明は上記実施例に限定されるものではなく、本発明の範囲内で種々の変形及び改良が可能であることは言うまでもない。
本発明の第1実施例における仮想環境管理システムの概略構成を示すブロック図である。 クラスタ定義テーブルの一例を示す図である。 物理サーバ定義テーブルの一例を示す図である。 割当状況テーブルの一例を示す図である。 再割当優先度判定テーブルの一例を示す図である。 初期割当処理をより詳細に説明するフローチャートである。 障害発生時の再割当処理を説明するフローチャートである。 再割当処理を説明するフローチャートである。 再割当処理を説明するフローチャートである。 再割当処理を説明するフローチャートである。 再割当優先度判定テーブル構築処理を説明するフローチャートである。 障害回復時の再割当処理を説明するフローチャートである。 クラスタ構成更新時の再割当処理を説明するフローチャートである。 クラスタ構成更新時の再割当処理を説明するフローチャートである。 実施例で利用する物理サーバ構成及びクラスタ構成を示す図である。 初期割り当て時の割当手順を示す図である。 障害発生時に資源が十分に残っている場合の割当手順を示す図である。 障害発生時に資源が不足している場合の割当手順を示す図である。 物理サーバの障害回復時の割当手順を示す図である。 クラスタ構成の変更時の割当手順を示す図である。
符号の説明
1 仮想環境管理システム
2 管理サーバ
3 仮想データセンタ
4 クライアント
5 ネットワーク
31 物理サーバ
35 仮想サーバ

Claims (6)

  1. 提供するべき仮想化資源を複数の物理サーバに割り当てる資源割り当て装置であって、
    物理サーバの障害を認識する認識手段と、
    前記障害が認識された物理サーバにおける仮想化資源を検索する検索手段と、
    前記障害が認識された物理サーバ以外の物理サーバの中で、前記検索手段で検索された仮想化資源と冗長構成となる仮想化資源が割り当てられた物理サーバを除いた、仮想化資源が既に割り当てられている物理サーバを含む物理サーバの中から選択した物理サーバに、前記検索手段で検索された仮想化資源を割り当てた場合に残る資源が既に選択された他の物理サーバの残りの資源よりも少ないと、前記選択した前記物理サーバを検索された前記仮想化資源を割り当て可能な物理サーバ決定する決定手段と
    を備えた、資源割り当て装置。
  2. 前記決定手段は、前記検索手段で検索された仮想化資源を割り当て可能な物理サーバが存在しないとき、確保可能な資源が最大の物理サーバを割り当て可能な物理サーバとして決定する、請求項1記載の資源割り当て装置。
  3. 前記決定手段は、前記障害発生時における冗長性及び資源効率と配備時間を考慮したインスタンス配置設計を行う、請求項1記載の資源割り当て装置。
  4. 前記決定手段は、クラスタ構成変更時の冗長性、資源効率及び配備時間を考慮したインスタンス配置設計を行い、クラスタは冗長性を意識して設計したインスタンス群である、請求項1記載の資源割り当て装置。
  5. 提供するべき仮想化資源を複数の物理サーバに割り当てる割当処理をコンピュータに行わせるプログラムであって、
    物理サーバの障害を認識する手順と、
    前記障害が認識された物理サーバにおける仮想化資源を検索する手順と、
    前記障害が認識された物理サーバ以外の物理サーバの中で、前記検索手順で検索された仮想化資源と冗長構成となる仮想化資源が割り当てられた物理サーバを除いた、仮想化資源が既に割り当てられている物理サーバを含む物理サーバの中から選択した物理サーバに、前記検索手順で検索された仮想化資源を割り当てた場合に残る資源が既に選択された他の物理サーバの残りの資源よりも少ないと、前記選択した前記物理サーバを検索された前記仮想化資源を割り当て可能な物理サーバ決定する手順と
    を前記コンピュータに実行させる、プログラム。
  6. 前記決定する手順は、前記検索する手順で検索された仮想化資源を割り当て可能な物理サーバが存在しないとき、確保可能な資源が最大の物理サーバを割り当て可能な物理サーバとして決定する、請求項5記載のプログラム。
JP2008059182A 2008-03-10 2008-03-10 資源割り当て装置及びプログラム Expired - Fee Related JP5211766B2 (ja)

Priority Applications (1)

Application Number Priority Date Filing Date Title
JP2008059182A JP5211766B2 (ja) 2008-03-10 2008-03-10 資源割り当て装置及びプログラム

Applications Claiming Priority (1)

Application Number Priority Date Filing Date Title
JP2008059182A JP5211766B2 (ja) 2008-03-10 2008-03-10 資源割り当て装置及びプログラム

Publications (2)

Publication Number Publication Date
JP2009217434A JP2009217434A (ja) 2009-09-24
JP5211766B2 true JP5211766B2 (ja) 2013-06-12

Family

ID=41189232

Family Applications (1)

Application Number Title Priority Date Filing Date
JP2008059182A Expired - Fee Related JP5211766B2 (ja) 2008-03-10 2008-03-10 資源割り当て装置及びプログラム

Country Status (1)

Country Link
JP (1) JP5211766B2 (ja)

Families Citing this family (14)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
JP5767480B2 (ja) * 2011-01-31 2015-08-19 インターナショナル・ビジネス・マシーンズ・コーポレーションInternational Business Machines Corporation 情報処理装置、情報処理システム、配置構成決定方法、プログラムおよび記録媒体
JP5887149B2 (ja) * 2012-01-25 2016-03-16 株式会社エヌ・ティ・ティ・データ 仮想マシン配置装置、仮想マシン配置方法
US20150074251A1 (en) * 2012-04-16 2015-03-12 Hitachi, Ltd. Computer system, resource management method, and management computer
WO2014076838A1 (ja) * 2012-11-19 2014-05-22 株式会社日立システムズ 仮想マシン同期システム
JP6273732B2 (ja) * 2013-09-20 2018-02-07 日本電気株式会社 情報処理引き継ぎ制御装置、情報処理引き継ぎ制御方法、及び、情報処理引き継ぎ制御プログラム
US9880918B2 (en) 2014-06-16 2018-01-30 Amazon Technologies, Inc. Mobile and remote runtime integration
US10185590B2 (en) 2014-06-16 2019-01-22 Amazon Technologies, Inc. Mobile and remote runtime integration
JP6385471B2 (ja) * 2014-06-16 2018-09-05 アマゾン テクノロジーズ インコーポレイテッド 移行および遠隔ランタイム統合
WO2016013199A1 (ja) * 2014-07-22 2016-01-28 日本電気株式会社 仮想化基盤管理装置、仮想化基盤管理システム、仮想化基盤管理方法、及び、仮想化基盤管理プログラムが記録された記録媒体
JP5968563B1 (ja) * 2015-04-27 2016-08-10 三菱電機株式会社 情報処理装置及びリソース割り当て方法及びリソース割り当てプログラム
JP2017182591A (ja) * 2016-03-31 2017-10-05 三菱電機インフォメーションシステムズ株式会社 コンピュータ資源配分決定方法、コンピュータ資源配分決定方法プログラムおよび制御用コンピュータ
JP6934754B2 (ja) * 2017-06-15 2021-09-15 株式会社日立製作所 分散処理システム、分散処理システムの管理方法、及び分散処理システム管理プログラム
JP6374059B2 (ja) * 2017-06-21 2018-08-15 三菱電機インフォメーションシステムズ株式会社 コンピュータ資源配分決定方法、コンピュータ資源配分決定方法プログラムおよび制御用コンピュータ
JP7444274B2 (ja) 2020-10-07 2024-03-06 日本電信電話株式会社 多重伝送システムおよび多重伝送システムのリソース制御方法

Family Cites Families (5)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
JP4119162B2 (ja) * 2002-05-15 2008-07-16 株式会社日立製作所 多重化計算機システム、論理計算機の割当方法および論理計算機の割当プログラム
US9329905B2 (en) * 2004-10-15 2016-05-03 Emc Corporation Method and apparatus for configuring, monitoring and/or managing resource groups including a virtual machine
US8112527B2 (en) * 2006-05-24 2012-02-07 Nec Corporation Virtual machine management apparatus, and virtual machine management method and program
US8719624B2 (en) * 2007-12-26 2014-05-06 Nec Corporation Redundant configuration management system and method
JP5035011B2 (ja) * 2008-02-22 2012-09-26 日本電気株式会社 仮想サーバ管理装置および仮想サーバ管理方法

Also Published As

Publication number Publication date
JP2009217434A (ja) 2009-09-24

Similar Documents

Publication Publication Date Title
JP5211766B2 (ja) 資源割り当て装置及びプログラム
US10789102B2 (en) Resource provisioning in computing systems
US7827435B2 (en) Method for using a priority queue to perform job scheduling on a cluster based on node rank and performance
US20060015773A1 (en) System and method for failure recovery and load balancing in a cluster network
JP5353712B2 (ja) 冗長構成管理システムおよび方法
JP4620455B2 (ja) サーバ連結環境のための業務継続ポリシー
CN113918270A (zh) 基于Kubernetes的云资源调度方法及系统
US20120054768A1 (en) Workflow monitoring and control system, monitoring and control method, and monitoring and control program
JP6233413B2 (ja) タスク割り当て判定装置、制御方法、及びプログラム
US20050132379A1 (en) Method, system and software for allocating information handling system resources in response to high availability cluster fail-over events
EP3442201B1 (en) Cloud platform construction method and cloud platform
CN109189552B (zh) 虚拟网络功能扩容与缩容方法及系统
CN111459642B (zh) 一种分布式系统中故障处理和任务处理方法及装置
EP3152659B1 (en) Scheduling access to resources for efficient utilisation of network capacity and infrastructure
CN116340005B (zh) 容器集群的调度方法、装置、设备及存储介质
CN113382077B (zh) 微服务调度方法、装置、计算机设备和存储介质
JP7077867B2 (ja) ネットワークサービス管理装置、ネットワークサービス管理方法およびネットワークサービス管理プログラム
JP6010975B2 (ja) ジョブ管理装置、ジョブ管理方法、及びプログラム
CN101908004A (zh) 促进请求执行的装置和方法
US20230155958A1 (en) Method for optimal resource selection based on available gpu resource analysis in large-scale container platform
CN114546493A (zh) 核共享方法及装置、处理核、电子设备、介质
JP5577745B2 (ja) クラスタシステム、プロセス配置方法、及びプログラム
JP7188603B2 (ja) 局所的波長デフラグ装置、局所的波長デフラグ方法、プログラム
CN115061811A (zh) 一种资源调度方法、装置、设备及存储介质
JP2008135056A (ja) 計算機システム、管理サーバ、ブレード割り当て方法、ブレード割り当てプログラム、サーバシステム及びサーバの配置方法

Legal Events

Date Code Title Description
A621 Written request for application examination

Free format text: JAPANESE INTERMEDIATE CODE: A621

Effective date: 20101018

A977 Report on retrieval

Free format text: JAPANESE INTERMEDIATE CODE: A971007

Effective date: 20120130

A131 Notification of reasons for refusal

Free format text: JAPANESE INTERMEDIATE CODE: A131

Effective date: 20120228

A521 Written amendment

Free format text: JAPANESE INTERMEDIATE CODE: A523

Effective date: 20120501

A131 Notification of reasons for refusal

Free format text: JAPANESE INTERMEDIATE CODE: A131

Effective date: 20121106

A521 Written amendment

Free format text: JAPANESE INTERMEDIATE CODE: A523

Effective date: 20130107

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

A61 First payment of annual fees (during grant procedure)

Free format text: JAPANESE INTERMEDIATE CODE: A61

Effective date: 20130211

R150 Certificate of patent or registration of utility model

Free format text: JAPANESE INTERMEDIATE CODE: R150

FPAY Renewal fee payment (event date is renewal date of database)

Free format text: PAYMENT UNTIL: 20160308

Year of fee payment: 3

LAPS Cancellation because of no payment of annual fees