JP2005071242A - 計算機システム及び動的ブートイメージ切替プログラム - Google Patents
計算機システム及び動的ブートイメージ切替プログラム Download PDFInfo
- Publication number
- JP2005071242A JP2005071242A JP2003302992A JP2003302992A JP2005071242A JP 2005071242 A JP2005071242 A JP 2005071242A JP 2003302992 A JP2003302992 A JP 2003302992A JP 2003302992 A JP2003302992 A JP 2003302992A JP 2005071242 A JP2005071242 A JP 2005071242A
- Authority
- JP
- Japan
- Prior art keywords
- boot image
- computer
- service
- boot
- computers
- 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.)
- Pending
Links
Images
Landscapes
- Multi Processors (AREA)
- Stored Programmes (AREA)
Abstract
【課題】あるサービスの実行に関する負荷のみが高い場合に、そのサービスを他の計算機でも確実に実行できるようにすることで、サービスレベルの低下を防ぐ。
【解決手段】ストレージ装置13には計算機をブートするのに必要なサービス#1〜#3用のブートイメージが記憶される。ブートイメージ切替制御部111は、計算機のブートに使用されるサービス#k用のブートイメージを計算機システムで実行されるサービスの負荷に応じて選択すると共に選択されたブートイメージでブートされる計算機11-jをシステム内の計算機11-1〜11-4の中から選択する。ブートイメージ割当部112-iは、ブートイメージ切替制御部111によって選択された計算機をブートするブートイメージを、ストレージ装置13に記憶されているブートイメージのうちの当該切替制御部111によって選択されたブートイメージに切り替える。
【選択図】 図1
【解決手段】ストレージ装置13には計算機をブートするのに必要なサービス#1〜#3用のブートイメージが記憶される。ブートイメージ切替制御部111は、計算機のブートに使用されるサービス#k用のブートイメージを計算機システムで実行されるサービスの負荷に応じて選択すると共に選択されたブートイメージでブートされる計算機11-jをシステム内の計算機11-1〜11-4の中から選択する。ブートイメージ割当部112-iは、ブートイメージ切替制御部111によって選択された計算機をブートするブートイメージを、ストレージ装置13に記憶されているブートイメージのうちの当該切替制御部111によって選択されたブートイメージに切り替える。
【選択図】 図1
Description
本発明は、クライアント端末から要求されたサービスを実行するための計算機システムに係り、特に複数のサービスを複数の計算機により分散して実行するのに好適な計算機システム及び動的ブートイメージ切替プログラムに関する。
近年、計算機上でアプリケーションプログラムを実行することにより、ユーザ(クライアント端末)にサービスを提供する計算機システムが運用されている。この種のシステムでは、継続したサービスの提供が必須になっている。これに伴い、サービス(業務)を実行している計算機にも高い可用性(サーバ稼働率、業務稼働率)が求められる。そこで、複数の計算機をクラスタ構成として、稼働状態にある計算機で障害が発生しても、その障害が発生した計算機で実行されていたサービス(業務)をシステム内の他の計算機に引き継がせる(フェイルオーバする)ことでシステム全体が停止するのを防止する、クラスタシステムと呼ばれる計算機システムが知られている(例えば、非特許文献1参照)。この非特許文献1に記載された計算機システム(クラスタシステム)では、当該システムを構成する計算機の負荷状態を監視し、その負荷状態をもとにクライアント端末からの実行要求を最適な計算機(ノード)に割り当てることによりシステムの性能向上が図られている。
また近年は、1つの筐体内に数十〜数百もの計算機ノードを含む高密度型の計算機シ
ステムが市販されている。このような計算機システムでは、プロビジョニングノード(provisioning node)と呼ばれる予備の計算機が含まれることが多い。一般に、予備計算機は通常は使用されず、通常使用している計算機が故障した場合の代替計算機(代替ノード)として使用される。具体的には、故障した計算機で実行されていたオペレーティングシステムを含むブートイメージを、オペレータ操作により予備計算機のブートイメージとして設定し、当該予備計算機を起動することにより、当該予備計算機を故障した計算機の代わりとして使用する。
金子哲夫、森良哉、「クラスタソフトウェア」、東芝レビュー、Vol.54 No.12(1999)、p.18-21
ステムが市販されている。このような計算機システムでは、プロビジョニングノード(provisioning node)と呼ばれる予備の計算機が含まれることが多い。一般に、予備計算機は通常は使用されず、通常使用している計算機が故障した場合の代替計算機(代替ノード)として使用される。具体的には、故障した計算機で実行されていたオペレーティングシステムを含むブートイメージを、オペレータ操作により予備計算機のブートイメージとして設定し、当該予備計算機を起動することにより、当該予備計算機を故障した計算機の代わりとして使用する。
金子哲夫、森良哉、「クラスタソフトウェア」、東芝レビュー、Vol.54 No.12(1999)、p.18-21
上記したように、非特許文献1に記載された計算機システム(クラスタシステム)では、当該システムを構成する計算機の負荷状態をもとに、クライアント端末からの実行要求が最適な計算機に割り当てられる。しかしながら従来の計算機システムでは、当該システムが提供するサービスを実行可能な計算機は、サービス毎に固定されている。このようなシステムとして、サービスAを実行可能な計算機が計算機a1及びa2の2台で、サービスBを実行可能な計算機が計算機b1及びb2の2台で、サービスCを実行可能な計算機が計算機c1及びc2の2台であるシステムを想定する。このシステムでは、特定のサービス、例えばサービスAの実行に関する負荷のみが高い場合にも、当該サービスAを、計算機a1及びa2以外の計算機、つまり計算機b1,b2,c1またはc2に割り当てて実行させることができない。。この場合、クライアント端末からのサービスAの実行要求に対する応答時間の低下等、サービスレベルの低下を招く。
本発明は上記事情を考慮してなされたものでその目的は、あるサービスの実行に関する負荷が高い場合に、そのサービスを他の計算機でも確実に実行できるようにすることで、当該サービスの要求に対する応答時間を向上して、サービスレベルの低下を防ぐことができる計算機システム及び動的ブートイメージ切替プログラムを提供することにある。
本発明の1つの観点によれば、複数の計算機を備え、複数種類のサービスを実行可能な計算機システムが提供される。この計算機システムは、計算機をブートするのに必要な、オペレーティングシステム及び上記複数種類のサービスのうちの少なくとも1つを実現するための当該オペレーティングシステムのもとで動作可能な少なくとも1つのアプリケーションを含む複数種類のブートイメージを記憶したストレージ装置と、計算機のブートに使用されるブートイメージの切り替えを制御するブートイメージ切替制御手段であって、計算機のブートに使用されるブートイメージを、上記計算機システムで実行されるサービスの負荷または提供時間帯に応じて選択すると共に選択されたブートイメージでブートされる計算機を前記複数の計算機の中から選択するブートイメージ切替制御手段と、このブートイメージ切替制御手段によって選択された計算機をブートするブートイメージを、上記ストレージ装置に記憶されているブートイメージのうち上記ブートイメージ切替制御手段によって選択されたブートイメージに切り替えるブートイメージ切替手段とを備えることを特徴とする。
このような構成の計算機システムにおいては、当該システムで実行されるサービスの負荷または提供時間帯に応じて選択されたブートイメージで、他のサービスを実行中の計算機がブートされる。このため、あるサービスの負荷が高くなった場合、或いは、あるサービスに対するクライアントからの要求が多くなることが予測される時間帯となった場合に、そのサービスを、他のサービスを実行中の計算機で実行させることができるようになり、クライアントからの当該サービスの要求に対する応答時間を向上して、サービスレベルの低下を防ぐことができる。しかも、ブートイメージは、アプリケーションと当該アプリケーションが実行可能なオペレーティングシステムを含んでいる。このため、選択されたブートイメージで選択された計算機をブートした場合に、当該計算機で当該ブートイメージに含まれているアプリケーションを正しく実行できないといった不具合が発生するのを防止できる。ここで、選択されたブートイメージでブートされる計算機を、最も負荷の少ないサービスを実行中の計算機の中から選択すると良い。
また、ブートイメージ切替制御手段によって選択された計算機をブートするブートイメージを、上記ブートイメージ切替制御手段によって選択されたブートイメージに切り替えるのに、上記複数の計算機と上記ストレージ装置とを接続するストレージエリアネットワークを設け、上記ブートイメージ切替手段を、上記ストレージ装置に記憶されているブートイメージのうちの上記選択されたブートイメージを上記選択された計算機に対して割り当てる、ブートイメージ割当手段として機能させると良い。
また、上記複数の計算機と上記ストレージ装置とを接続するネットワークを設け、上記ブートイメージ切替手段を、上記ストレージ装置に記憶されているブートイメージのうちの上記選択されたブートイメージを上記選択された計算機にコピーする、ブートイメージコピーサーバとして機能させても良い。
また、上記計算機システムを、通常は使用されない予備計算機を含む複数の計算機を備えた計算機システムとして構成すると共に、選択されたブートイメージでブートされる計算機を上記複数の計算機の中から上記ブートイメージ切替制御手段が選択する際に、上記予備計算機が優先的に選択される構成とすると良い。
本発明によれば、あるサービスの負荷が高くなった場合、或いは、あるサービスに対するクライアントからの要求が多くなることが予測される特定の時間帯となった場合に、そのサービスを、他のサービスを実行中の計算機で実行させることができることから、クライアントからの当該サービスの要求に対する応答時間を向上して、サービスレベルの低下を防ぐことができる。
以下、本発明をクラスタシステムに適用した実施の形態につき図面を参照して説明する。
[第1の実施形態]
図1は本発明の第1の実施形態に係るクラスタシステムの構成を示すブロック図である。図1のクラスタシステムは、例えば4台の計算機11-1(#1)〜11-4(#4)から構成される、負荷分散が可能な計算機システムである。図1のクラスタシステムでは、3種類のサービス(アプリケーション)#1,#2,#3が実行可能である。
図1は本発明の第1の実施形態に係るクラスタシステムの構成を示すブロック図である。図1のクラスタシステムは、例えば4台の計算機11-1(#1)〜11-4(#4)から構成される、負荷分散が可能な計算機システムである。図1のクラスタシステムでは、3種類のサービス(アプリケーション)#1,#2,#3が実行可能である。
計算機11-1〜11-4はストレージエリアネットワーク(以下、SAN(Storage Area Network)と称する)12に接続されている。SAN12には、ストレージ装置13も接続されている。ストレージ装置13の記憶領域は、サービス#1用のブートイメージを記憶するための記憶部(サービス#1用ブートイメージ記憶部)130-1と、サービス#2用のブートイメージを記憶するための記憶部(サービス#2用ブートイメージ記憶部)130-2と、サービス#3用のブートイメージを記憶するための記憶部(サービス#3用ブートイメージ記憶部)130-3とに分けて管理される。
サービス#1用ブートイメージ記憶部130-1はディスク装置131-11,131-12から構成されている。同様に、サービス#2用ブートイメージ記憶部130-2はディスク装置131-21,131-22から構成され、サービス#3用ブートイメージ記憶部130-3はディスク装置131-31,131-32から構成されている。計算機11-1〜11-4とストレージ装置13内のディスク装置131-11,131-12,131-21,131-22,131-31,131-32とはSAN12によって接続されている。また、計算機11-1〜11-4は、ネットワーク14によって相互接続されている。このネットワーク14にはクライアント端末(図示せず)も接続されている。
ディスク装置131-11,131-12には、サービス#1用のブートイメージ#B11,#B12が予め記憶されている。ディスク装置131-21,131-22には、サービス#2用のブートイメージ#B21,#B22が予め記憶され、ディスク装置131-31,131-32には、サービス#3用のブートイメージ#B31,#B32が予め記憶されている。つまりストレージ装置13には、ブートイメージ#B11,#B12,#B21,#B22,#B31,#B32が記憶されている。計算機11-1〜11-4は、SAN12を介して接続されたストレージ装置13に記憶されているブートイメージを用いることで、当該ブートイメージを自身が有するディスク(つまりローカルディスク)にコピーすることなくブートすることが可能である。このような機能を、SANブートと呼ぶ。
ブートイメージ#B11,#B12には、当該ブートイメージ#B11,#B12によってブートされる計算機に割り当てられるホスト名“comp-11”,“comp-12”(を示す情報)が設定されている。ブートイメージ#B21,#B22には、当該ブートイメージ#B21,#B22によってブートされる計算機に割り当てられるホスト名“comp-21”,“comp-22”が設定され、ブートイメージ#B31,#B32には、当該ブートイメージ#B31,#B32によってブートされる計算機に割り当てられるホスト名“comp-31”,“comp-32”が設定されている。ディスク装置131-kl(k=1〜3,l=1,2)に記憶されているサービス#k用のブートイメージ#Bklは、サービス#kを実現するためのアプリケーション#kと、当該アプリケーション#kが動作可能なオペレーティングシステム#klとを含む。つまりディスク装置131-klは、“comp-kl”のブートディスク装置(ブートディスク)として用いられる。なお、オペレーティングシステム#k1及び#k2の基本構成は同一であるものとする。但し、オペレーティングシステム#k1及び#k2に設定されているホスト名及びIP(Internet Protocol)アドレスは異なる。
計算機11-1〜11-4は、それぞれブートイメージ切替制御部111-1〜111-4と、ブートイメージ割当部112-1〜112-4と、ブートイメージ管理部113-1〜113-4と、計算機起動停止部114-1〜114-4と、サービス実行管理部115-1〜115-4と、計算機ハイバネーション部116-1〜116-4とを備えている。
ブートイメージ切替制御部111-i(i=1〜4)は、計算機11-j(j=1〜4,但しj≠i)をブートするブートイメージの切り替えを制御する。ブートイメージ切替制御部111-iは、計算機11-jをブートするブートイメージを切り替えるか否かの判断も行う。ブートイメージ切替制御部111-iは、この判断を、計算機システムにより提供されるサービス種類毎のサービス実行に起因するシステム全体の負荷(以下、サービスの実行負荷もしくはサービスの負荷と称する)またはサービスの提供時間帯に基づいて行う。サービス種類毎のサービスの実行負荷(サービスの負荷)には、単位時間に実行されているクライアントからの当該サービスに対する要求の数、クライアントからの当該サービスに対する単位時間当たりの要求の数、または当該サービスを実行する計算機の平均的な負荷を用いることができる。そのためブートイメージ切替制御部111-iは、図1のシステムが提供可能なサービスの種類毎に、そのサービスの実行負荷(サービスの負荷)を監視するサービス負荷監視手段(図示せず)を有している。
ブートイメージ割当部112-iは、ブートイメージ切替制御部111-iの制御のもとで、計算機11-jのブートに使用するブートイメージを切り替える。ブートイメージ管理部113-iは、ストレージ装置13に記憶されている各ブートイメージ#B11,#B12〜#B31,#B32がシステム内の計算機11-1〜11-4の何れをブートするのに用いられているかを管理する。この管理のための情報(ここでは、ブートイメージ管理テーブルと呼ばれる管理情報)は、ストレージ装置13に記憶される。
計算機起動停止部114-iは、計算機11-jの起動と停止を行う。サービス実行管理部115-iは、システムが提供可能な各サービス(アプリケーション)#1〜#3がシステム内の計算機11-1〜11-4のうちの何れの計算機で実行されているかを管理する。計算機ハイバネーション部116-iは、計算機11-jのブートに使用するブートイメージが切り替えられる場合に、その切り替えに先立ち当該計算機11-jをハイバネーション状態に設定する。ここでのハイバネーション状態とは、計算機11-jのブートに使用するブートイメージが切り替えられる場合に、そのブートイメージ切り替え前の当該計算機11-1〜11-4の状態を示す情報(状態情報)を当該計算機11-1〜11-4の記憶装置、例えばディスク装置(つまりローカルディスク装置)に保存することで、その後当該計算機11-jが元のブートイメージでブートされた際に、ディスク装置に保存されていた状態情報に基づいて当該計算機11-jを上記ブートイメージ切り替え前の状態から動作開始可能とする状態をいう。
ブートイメージ切替制御部111-1〜111-4はネットワーク14を介して互いに通信しながら一体となって同期(連携)して動作することで、計算機11-1〜11-4にまたがって存在する1つの仮想的なブートイメージ切替制御部111として機能する。同様に、ブートイメージ管理部113-1〜113-4及びサービス実行管理部115-1〜115-4はネットワーク14を介して互いに通信しながら一体となって同期して動作することで、それぞれ、計算機11-1〜11-4にまたがって存在する1つの仮想的なブートイメージ管理部113及びサービス実行管理部115として機能する。
次に、図1のシステムにおける動作について、ブートイメージの切り替えを例に、図2のフローチャート並びに図3及び図4の動作説明図を参照して説明する。
今、図1のシステム内の計算機11-1,11-2,11-3,11-4が、図3において矢印31,32,33,34で示されるように、ブートイメージ#B11,#B12,#B21,#B31でブートされているものとする。ここで、ブートイメージ#B11,#B12はサービス#1用であり、ブートイメージ#B21はサービス#2用であり、ブートイメージ#B31はサービス#3用である。つまり図3の例では、図1のシステムが提供可能な3種類のサービスのうち、サービス#1は2台の計算機11-1及び11-2で実行され、サービス#2,#3はそれぞれ1台の計算機11-3,11-4で実行されている。
今、図1のシステム内の計算機11-1,11-2,11-3,11-4が、図3において矢印31,32,33,34で示されるように、ブートイメージ#B11,#B12,#B21,#B31でブートされているものとする。ここで、ブートイメージ#B11,#B12はサービス#1用であり、ブートイメージ#B21はサービス#2用であり、ブートイメージ#B31はサービス#3用である。つまり図3の例では、図1のシステムが提供可能な3種類のサービスのうち、サービス#1は2台の計算機11-1及び11-2で実行され、サービス#2,#3はそれぞれ1台の計算機11-3,11-4で実行されている。
このような状態で、サービス#2の負荷(実行負荷)が高まってきたものとする。つまり、図1のシステムに対してサービス#2を要求する数(サービス#2を要求するクライアント端末の数)が増加してきたものとする。ここで、図1のシステムが提供可能なサービス#1〜#3の負荷は、ブートイメージ切替制御部111(のサービス負荷監視手段)が、クライアント端末からの各サービスの要求に対する応答時間を監視(して、例えばその平均値を算出)することにより取得される。
ブートイメージ切替制御部111は、サービス#k(k=1〜3)の負荷(応答時間)が基準値(基準時間)より高い(長い)場合、サービス#kの負荷(応答時間)が大幅に増加しており、サービス#kのサービスレベルが大幅に低下しているものと判断する。つまりブートイメージ切替制御部111は、各サービス#kの負荷(応答時間)を監視することで、当該各サービス#kのサービスレベルを監視し(ステップS1)、当該各サービス#kの負荷(応答時間)を基準値(基準時間)と比較することで、当該各サービス#kのサービスレベルが予め定められた条件(サービスレベル条件)を満足しているか否かを判定する(ステップS2)。ここでは、サービスレベル条件として、「応答時間がRms以内であること」という条件を適用し、クライアント端末からのサービス#kの要求に対する応答時間(サービスレベル)がRmsを超えた場合には、サービスレベル条件を満足しないと判定される。
全てのサービス#1〜#3で、サービスレベルがサービスレベル条件を満足している場合、ブートイメージ切替制御部111は、上記ステップS1及びS2を繰り返す。これに対し、サービスレベルがサービスレベル条件を満足していないサービスが存在する場合、ブートイメージ切替制御部111はそのサービスをサービス#Xとする。ここでは、サービス#1〜#3のうちのサービス#2のサービスレベルがサービスレベル条件を満足しないものとする。この場合、ブートイメージ切替制御部111は、サービス#Xとしてサービス#2を検出する。
ブートイメージ切替制御部111は、サービスレベルがサービスレベル条件を満足しないサービス#X(=#2)を検出すると、サービスレベルがサービスレベル条件を最も満足しているサービス#Yを探す(ステップS3)。ここでは、サービス#Yとしてサービス#1が検出されたものとする。
次にブートイメージ切替制御部111は、サービス#Y(=#1)を実行している計算機をサービス実行管理部115に問い合わせる(ステップS4)。この問い合わせを受けて、サービス実行管理部115は、自身が管理しているサービス#Y(=#1)を実行している計算機をブートイメージ切替制御部111に通知する。ブートイメージ切替制御部111は、サービス実行管理部115から通知されたサービス#Y(=#1)を実行している全ての計算機の中から、ブートイメージを切り替える計算機11-j(#j)を選択する(ステップS5)。ここでは、計算機11-j(#j)として、計算機11-1,11-2のうちの計算機11-2(#2)が選択されたものとする。また、上記ブートイメージ切替制御部111の動作が、計算機11-i(i=1〜4、但しi≠j)内のブートイメージ切替制御部111-iによって実現されているものとする。
次にブートイメージ切替制御部111(111-i)は、計算機11-i内の計算機ハイバネーション部116-iにより計算機11-j(=11-2)をハイバネーション状態に設定させる(ステップS6)。次にブートイメージ切替制御部111は、サービス#X(=#2)用のブートイメージのうち、現在使用されていないブートイメージをブートイメージ管理部113に問い合わせる(ステップS7)。この問い合わせを受けて、ブートイメージ管理部113は、サービス#X(=#2)用のブートイメージのうち、現在使用されていないブートイメージ#BXZをブートイメージ切替制御部111に通知する。サービス#Xがサービス#2であるこの例では、サービス#2(#X)用のブートイメージ#B21,#B22のうちのブートイメージ#B22が、ブートイメージ管理部113からブートイメージ切替制御部111に通知される。
ブートイメージ切替制御部111は、上記ステップS6でハイバネーション状態に設定された計算機11-2(11-j)に、ブートイメージ管理部113から通知されたサービス#2(#X)用のブートイメージ#B22(#BXZ)を計算機11-i内のブートイメージ割当部112-iによってリンク(割り当て)させる(ステップS8)。即ち計算機11-1は、計算機11-2(11-j)に割り当てるブートイメージを、サービス#1用のブートイメージ#B12からサービス#2(#X)用のブートイメージ#B22(#BXZ)にブートイメージ割当部112-iによって切り替えさせる。この処理は、ブートイメージ管理部113によって管理され、且つストレージ装置13に記憶されている管理情報(つまり、ブートイメージ#B11,#B12〜#B31,#B32と当該ブートイメージでブートされる計算機との関係を示すブートイメージ管理テーブル)のうち、ブートイメージ#B22(#BXZ)でブートされる計算機を指定する情報を(該当する計算機がないことを示す情報から)上記ステップS6でハイバネーション状態に設定された計算機11-2(11-j)を指定する情報に変更すると共に、ブートイメージ#B12でブートされる計算機を指定する情報を、該当する計算機がないことを示す情報に変更することで実現される。
次にブートイメージ切替制御部111は、ステップS5で選択された計算機11-j(=11-2)を、計算機11-i内の計算機起動停止部114-iにより起動させることで、当該計算機11-j(=11-2)を、上記ステップS8で当該計算機11-j(=11-2)に割り当てられたブートイメージ#B22(#BXZ)でブートさせる(ステップS9)。
これにより本実施形態では、負荷が高くなったサービス#2を、図3に示した計算機11-3の1台だけが実行する状態から、図4において矢印42及び33で示されるように、計算機11-2及び11-3の2台が実行する状態に動的に変えることができる。即ち本実施形態では、システムが提供する各サービスの負荷(実行負荷)に応じて、当該サービスを実行する計算機の構成を動的に変化させることができる。これにより、サービスの応答時間の低下等、サービスレベルの低下を防ぐことができる。しかも本実施形態では、サービス#2(#X)を実現するアプリケーション#2(#X)と当該アプリケーション#2(#X)が実行可能なオペレーティングシステム#2(#X)とを含むブートイメージ#B22(#BXZ)で、計算機11-2(11-j)をブートしている。このため、計算機11-2(11-j)において、オペレーティングシステムの種類、或いはバージョンが異なる等の要因でアプリケーション#2(#X)を正しく実行できないといった不具合が発生するのを防止できる。
本実施形態において、新たにサービス#2(#X)を実行する計算機11-2(11-j)、即ち新たにサービス#2(#X)用のブートイメージ#B22(#BXZ)でブートされた計算機11-2(11-j)は、システムが提供可能な他のサービス#1,#3のうち、最も負荷の低い(サービスレベルがサービスレベル条件を最も満足している)サービス#1(#Y)を実行していた計算機である。したがって、サービス#1(#Y)の負荷(サービスレベル)は高くなる(低下する)ものの、それ以上に、負荷(サービスレベル)が大幅に高くなった(低下した)サービス#2(#X)の負荷(サービスレベル)を改善する利点の方が大きい。
また本実施形態では、計算機11-j(=11-2)のブートに使用するブートイメージをサービス#X(=#2)用のブートイメージ#BXZ(=#B22)に切り替える場合に、当該計算機11-j(=11-2)がハイバネーション状態に設定される。このため、その後計算機11-j(=11-2)のブートに使用するブートイメージが元のサービス#Y(=#1)用のブートイメージに再度切り替えられた場合、先のサービス#Y(=#1)用のブートイメージからサービス#X(=#2)用のブートイメージ#BXZ(=#B22)への切り替え直前の状態から、当該計算機11-j(=11-2)を動作させることができる。ここで、計算機11-j(=11-2)をブートイメージ切り替え直前の状態から動作させる必要がないならば、上記ステップS6で当該計算機11-j(=11-2)を計算機ハイバネーション部116-iによりハイバネーション状態に設定する代わりに、当該計算機11-j(=11-2)を計算機起動停止部114-iにより停止させれば良い。この場合、計算機11-j(=11-2)を停止させた状態で、ブートイメージ割当部112-iを用いて当該計算機11-j(=11-2)のブートイメージを切り替えさせ、しかる後に改めて計算機起動停止部114-iによって当該計算機11-j(=11-2)を起動させれば良い。
なお、上記の例とは異なって、サービス#3の負荷が高くなって、当該サービス#3のサービスレベルがサービスレベル条件を満足しなくなった場合には、サービス#3用のブートイメージ#B31,#B32のうち、現在使用されていないブートイメージ#B32で計算機11-2がブートされることになる。
[第2の実施形態]
次に、本発明の第2の実施形態について説明する。図5は本発明の第2の実施形態に係るクラスタシステムの構成を示すブロック図であり、図1中の構成要素と同様の要素には、同一符号を付してある。図5のクラスタシステムは、例えば5台の計算機51-1(#1)〜51-5(#5)から構成される、負荷分散が可能な計算機システムである。図5の状態では、計算機51-1〜51-4は図1のシステム内の計算機11-1〜11-4と同様に稼働状態にあるのに対し、計算機51-5は、プロビジョニングノード(provisioning node)と呼ばれる予備計算機として配置されているものとする。この状態では、計算機51-5は停止状態にある。図5のクラスタシステムでは、図1のクラスタシステムと同様に、3種類のサービス(アプリケーション)#1,#2,#3が実行可能である。図5のクラスタシステムでは、サービス#1〜#3のうちの何れか、例えば前記第1の実施形態と同様にサービス#2の負荷が高くなった場合、まず予備計算機51-5に当該サービス#2用のブートイメージを割り当てて、当該計算機51-5でもそのサービス#2を実行させる。この点で、第2の実施形態は、別のサービスを実行していた計算機のブートイメージがサービス#2用のブートイメージに切り替えられる第1の実施形態とは異なる。
次に、本発明の第2の実施形態について説明する。図5は本発明の第2の実施形態に係るクラスタシステムの構成を示すブロック図であり、図1中の構成要素と同様の要素には、同一符号を付してある。図5のクラスタシステムは、例えば5台の計算機51-1(#1)〜51-5(#5)から構成される、負荷分散が可能な計算機システムである。図5の状態では、計算機51-1〜51-4は図1のシステム内の計算機11-1〜11-4と同様に稼働状態にあるのに対し、計算機51-5は、プロビジョニングノード(provisioning node)と呼ばれる予備計算機として配置されているものとする。この状態では、計算機51-5は停止状態にある。図5のクラスタシステムでは、図1のクラスタシステムと同様に、3種類のサービス(アプリケーション)#1,#2,#3が実行可能である。図5のクラスタシステムでは、サービス#1〜#3のうちの何れか、例えば前記第1の実施形態と同様にサービス#2の負荷が高くなった場合、まず予備計算機51-5に当該サービス#2用のブートイメージを割り当てて、当該計算機51-5でもそのサービス#2を実行させる。この点で、第2の実施形態は、別のサービスを実行していた計算機のブートイメージがサービス#2用のブートイメージに切り替えられる第1の実施形態とは異なる。
計算機51-1〜51-5のうちの計算機51-1〜51-4は、図1のシステムにおける計算機11-1〜11-4と同様に、それぞれブートイメージ切替制御部111-1〜111-4と、ブートイメージ割当部112-1〜112-4と、ブートイメージ管理部113-1〜113-4と、計算機起動停止部114-1〜114-4と、サービス実行管理部115-1〜115-4とを備えている。一方、計算機51-1〜51-5のうちの計算機51-5(予備計算機51-5))も、(上記ブートイメージ切替制御部111-1〜111-4と、ブートイメージ割当部112-1〜112-4と、ブートイメージ管理部113-1〜113-4と、計算機起動停止部114-1〜114-4と、サービス実行管理部115-1〜115-4とに相当する)ブートイメージ切替制御部111-5と、ブートイメージ割当部112-5と、ブートイメージ管理部113-5と、計算機起動停止部114-5と、サービス実行管理部115-5とを備えている。計算機51-1〜51-5はまた、システム内の予備計算機を管理する予備計算機管理部516-1〜516-5を備えている。
ブートイメージ切替制御部111-1〜111-5は、図1中のブートイメージ切替制御部111に相当する、1つの仮想的なブートイメージ切替制御部511を構成する。同様に、ブートイメージ管理部113-1〜113-5は、図1中のブートイメージ管理部113に相当する、1つの仮想的なブートイメージ管理部513を構成し、サービス実行管理部115-1〜115-5は、図1中のサービス実行管理部115に相当する、1つの仮想的なサービス実行管理部515を構成する。予備計算機管理部516-1〜516-5はネットワーク14を介して互いに通信しながら一体となって同期して動作することで、計算機11-1〜11-5にまたがって存在する1つの仮想的な予備計算機管理部516として機能する。
次に、図5のシステムにおける動作について、ブートイメージの切り替えを例に、図6のフローチャートを参照して説明する。
ブートイメージ切替制御部511は、図1中のブートイメージ切替制御部111と同様に、各サービス#kの負荷(応答時間)を監視することで、当該各サービス#kのサービスレベルを監視する(ステップS11)。そしてブートイメージ切替制御部511は、各サービス#kの負荷(応答時間)を基準値(基準時間)と比較することで、当該各サービス#kのサービスレベルがサービスレベル条件を満足しているか否かを判定する(ステップS12)。
ブートイメージ切替制御部511は、図1中のブートイメージ切替制御部111と同様に、各サービス#kの負荷(応答時間)を監視することで、当該各サービス#kのサービスレベルを監視する(ステップS11)。そしてブートイメージ切替制御部511は、各サービス#kの負荷(応答時間)を基準値(基準時間)と比較することで、当該各サービス#kのサービスレベルがサービスレベル条件を満足しているか否かを判定する(ステップS12)。
今、サービス#2が計算機51-3だけで実行されており、当該サービス#2の負荷が高まった結果、当該サービス#2のサービスレベルがサービスレベル条件を満足しなくなったものとする。この場合、ブートイメージ切替制御部511は、サービスレベルがサービスレベル条件を満足しないサービス#Xとしてサービス#2を検出する。するとブートイメージ切替制御部511は、利用可能な予備計算機を予備計算機管理部516に問い合わせる(ステップS13)。この問い合わせを受けて、予備計算機管理部516は、自身が管理している例えば全ての予備計算機をブートイメージ切替制御部511に通知する。なお、全ての予備計算機が何れもサービスの実行に使用されている場合には、利用可能な予備計算機が存在しないことが予備計算機管理部516からブートイメージ切替制御部511に通知される。
ブートイメージ切替制御部511は、予備計算機管理部516から利用可能な予備計算機が通知された場合(ステップS14)、その通知された全ての予備計算機の中から、サービス#2の実行に使用する予備計算機51-j(#j)を選択する(ステップS15)。ここでは、予備計算機は計算機51-5(#5)の1台だけであることから、当該計算機51-5(#5)がサービス#2の実行に使用する予備計算機51-j(#j)として選択される。
次にブートイメージ切替制御部511は、サービス#X(=#2)用のブートイメージのうち、現在使用されていないブートイメージをブートイメージ管理部513に問い合わせる(ステップS16)。この問い合わせを受けて、ブートイメージ管理部513は、サービス#X(=#2)用のブートイメージのうち、現在使用されていないブートイメージ#BXZをブートイメージ切替制御部511に通知する。ここでは、サービス#2(#X)用のブートイメージ#B21,#B22のうちのブートイメージ#B22が、ブートイメージ管理部513からブートイメージ切替制御部511に通知されたものとする。ブートイメージ切替制御部511は、上記ステップS15でサービス#2(#X)用に選択された予備計算機51-5(51-j)に、ブートイメージ管理部513から通知されたサービス#2(#X)用のブートイメージ#B22(#BXZ)をブートイメージ割当部512-iによってリンクさせる(ステップS17)。ここでは、予備計算機51-5(51-j)は停止状態にあることから、当該計算機51-5にサービス#2(#X)用のブートイメージをリンクさせる際に、当該計算機51-5をハイバネーション状態に設定させる、または当該計算機51-5を停止させる必要がない。
次にブートイメージ切替制御部111は、計算機51-i内の計算機起動停止部514-iにより当該計算機51-j(=51-5)を起動させることで、当該計算機51-j(=51-5)を、上記ステップS16で当該計算機51-j(=51-5)にリンクされたサービス#X(=#2)用のブートイメージ#BXZ(=#B22)でブートさせる(ステップS18)。これにより、負荷が高くなったサービス#X(=#2)を、計算機51-3の1台だけが実行する状態から、計算機51-3及び51-j(=51-5)の2台が実行する状態に動的に変えることができる。ここでは、負荷が高くなったサービス#X(=#2)を新たに実行する計算機として別のサービス#Yを実行中の計算機を用いる必要がないため、当該サービス#Yの実行に何ら影響を及ぼす虞がない。
一方、利用可能な予備計算機が存在しないことが予備計算機管理部516からブートイメージ切替制御部511に対して通知された場合、当該ブートイメージ切替制御部511は、前記第1の実施形態におけるステップS3〜S9(図2参照)に相当する制御(ステップS19)を行う。即ちブートイメージ切替制御部511は、サービスレベルがサービスレベル条件を最も満足しているサービス#Yを探し、そのサービス#Y(例えばサービス#1)を実行している計算機の中からブートイメージ#BXZ(=#B22)に切り替える計算機51-j(例えば計算機51-2)を選択する。そしてブートイメージ切替制御部511は、選択した計算機51-j(=51-2)をハイバネーション状態に設定させた後、または当該計算機51-j(=51-2)を停止させた後に、当該計算機51-j(=51-2)にブートイメージ#BXZ(=#B22)をリンクさせて、当該計算機51-j(=51-2)を起動する。
[第3の実施形態]
次に、本発明の第3の実施形態について説明する。図7は本発明の第3の実施形態に係るクラスタシステムの構成を示すブロック図であり、図1中の構成要素と同様の要素には、同一符号を付してある。図7のクラスタシステムが、図1のクラスタシステムと異なる第1の点は、計算機11-1〜11-4が計算機71-1〜71-4と置き換えられていることである。この計算機71-1〜71-4には、ブートイメージ割当部112-1〜112-4に代えてブートイメージコピー要求部712-1〜712-4が設けられている。計算機71-1〜71-4内の他の構成要素は、図1中の計算機11-1〜11-4と同様である。図7のクラスタシステムが、図1のクラスタシステムと異なる第2の点は、SAN12に代えて、ブートイメージコピーサーバ72と、当該ブートイメージコピーサーバ72を計算機11-1〜11-4と接続するネットワーク73とが設けられていることである。ブートイメージコピーサーバ72はストレージ装置13とも接続されている。サーバ72は、ブートイメージ切替制御部511の制御に従うブートイメージコピー要求部712-1〜712-4の何れかからの要求に応じて、計算機11-1〜11-4のうちの指定された計算機が有するローカルディスク(図示せず)に、ストレージ装置13に記憶されているブートイメージのうちの指定されたブートイメージをコピー(インストール)する。この指定計算機のローカルディスクへの指定ブートイメージのコピーにより、当該指定計算機を指定ブートイメージでブートすることができる。このブートイメージコピーサーバ72によるブートイメージのコピー(インストール)機能を、リモートディプロイメント(remote deployment)と呼ぶ。
次に、本発明の第3の実施形態について説明する。図7は本発明の第3の実施形態に係るクラスタシステムの構成を示すブロック図であり、図1中の構成要素と同様の要素には、同一符号を付してある。図7のクラスタシステムが、図1のクラスタシステムと異なる第1の点は、計算機11-1〜11-4が計算機71-1〜71-4と置き換えられていることである。この計算機71-1〜71-4には、ブートイメージ割当部112-1〜112-4に代えてブートイメージコピー要求部712-1〜712-4が設けられている。計算機71-1〜71-4内の他の構成要素は、図1中の計算機11-1〜11-4と同様である。図7のクラスタシステムが、図1のクラスタシステムと異なる第2の点は、SAN12に代えて、ブートイメージコピーサーバ72と、当該ブートイメージコピーサーバ72を計算機11-1〜11-4と接続するネットワーク73とが設けられていることである。ブートイメージコピーサーバ72はストレージ装置13とも接続されている。サーバ72は、ブートイメージ切替制御部511の制御に従うブートイメージコピー要求部712-1〜712-4の何れかからの要求に応じて、計算機11-1〜11-4のうちの指定された計算機が有するローカルディスク(図示せず)に、ストレージ装置13に記憶されているブートイメージのうちの指定されたブートイメージをコピー(インストール)する。この指定計算機のローカルディスクへの指定ブートイメージのコピーにより、当該指定計算機を指定ブートイメージでブートすることができる。このブートイメージコピーサーバ72によるブートイメージのコピー(インストール)機能を、リモートディプロイメント(remote deployment)と呼ぶ。
次に、図7のシステムにおける動作について、ブートイメージの切り替えを例に、図2のフローチャートを援用して説明する。
今、図7のシステム内の計算機71-1,71-2,71-3,71-4が、前記第1の実施形態における計算機11-1,11-2,11-3,11-4と同様に、ブートイメージ#B11,#B12,#B21,#B31でブートされているものとする。但し、計算機71-1,71-2,71-3,71-4は、第1の実施形態における計算機11-1,11-2,11-3,11-4とは異なって、当該計算機71-1,71-2,71-3,71-4のローカルディスクにコピーされたブートイメージ#B11,#B12,#B21,#B31によってブートされている。
今、図7のシステム内の計算機71-1,71-2,71-3,71-4が、前記第1の実施形態における計算機11-1,11-2,11-3,11-4と同様に、ブートイメージ#B11,#B12,#B21,#B31でブートされているものとする。但し、計算機71-1,71-2,71-3,71-4は、第1の実施形態における計算機11-1,11-2,11-3,11-4とは異なって、当該計算機71-1,71-2,71-3,71-4のローカルディスクにコピーされたブートイメージ#B11,#B12,#B21,#B31によってブートされている。
ブートイメージ切替制御部111は、前記第1の実施形態と同様に、ブートイメージの切り替えを制御する。即ちブートイメージ切替制御部111は、各サービス#kのサービスレベルを監視して、当該各サービス#kのサービスレベルがサービスレベル条件を満足しているか否かを判定する動作(つまり図2のフローチャート中のステップS1,S2に相当する動作)を行う。
今、前記第1の実施形態と同様にサービス#2の負荷が高まった結果、サービス#2のサービスレベルがサービスレベル条件を満足しなくなったものとする。この場合、ブートイメージ切替制御部111は、サービスレベルがサービスレベル条件を満足しないサービス#Xとしてサービス#2を検出する。するとブートイメージ切替制御部111は、サービスレベルがサービスレベル条件を最も満足しているサービス#Y(ここではサービス#1)を探し、そのサービス#Y(=#1)を実行している計算機の中からサービス#X用のブートイメージ#BXZに切り替える計算機71-j(#j)、例えば計算機71-2(#2)を選択する動作(つまり図2のフローチャート中のステップS3〜S5に相当する動作)を行う。そしてブートイメージ切替制御部111は、選択した計算機71-j(=71-2)をブートするブートイメージを、(サービス#1用のブートイメージ#B12から)現在使用されていないサービス#X用のブートイメージ#BXZ(ここではサービス#2用のブートイメージ#B22)に切り替えるための制御(つまり図2のフローチャート中のステップS6〜S9に相当する制御)を行う。但し、本実施形態では、第1の実施形態とは異なってSANブートではなくて、ブートイメージコピーサーバ72によるリモートディプロイメントによりブートイメージが切り替えられる。即ちブートイメージ切替制御部111は、サービス#Xを実行する計算機71-j(=71-2)を選択すると、当該計算機71-j(=71-2)を計算機11-i内の計算機ハイバネーション部116-iによりハイバネーション状態に設定させる、この状態で、ブートイメージ切替制御部111は、計算機11-i内のブートイメージコピー要求部712-iによりブートイメージコピーサーバ72に対して、サービス#X(=#2)用のブートイメージ#BXZ(=#B22)を計算機71-j(=71-2)のローカルディスクにコピーするように要求させる。そしてブートイメージ切替制御部111は、ブートイメージコピーサーバ72によりサービス#X(=#2)用のブートイメージ#BXZ(=#B22)が計算機71-j(=71-2)のローカルディスクにコピーされると、計算機11-i内の計算機起動停止部114-iにより当該計算機71-j(=71-2)を起動させる。これにより計算機71-j(=71-2)が、サービス#X(=#2)用のブートイメージ#BXZ(=#B22)でブートされ、サービス#X(=#2)の応答時間の低下等、サービス#X(=#2)のサービスレベルの低下を防ぐことができる。
[第4の実施形態]
次に、本発明の第4の実施形態について説明する。図8は本発明の第4の実施形態に係るクラスタシステムの構成を示すブロック図であり、図5または図7中の構成要素と同様の要素には、同一符号を付してある。図8のクラスタシステムが、図5のクラスタシステムと異なる点は、図7のクラスタシステムが、図1のクラスタシステムと異なる点と同様である。即ち図8のクラスタシステムでは、図5のクラスタシステムにおける計算機51-1〜51-5が計算機81-1〜81-5に置き換えられている。計算機81-5は、計算機51-5と同様に予備計算機である。計算機81-1〜81-5には、ブートイメージ割当部112-1〜112-5に代えてブートイメージコピー要求部712-1〜712-5が設けられている。計算機81-1〜81-5内の他の構成要素は、図5中の計算機51-1〜51-5と同様である。また、図8のクラスタシステムでは、SAN12に代えて、ブートイメージコピーサーバ72と、当該ブートイメージコピーサーバ72を計算機11-1〜11-4と接続するネットワーク73とが設けられている。
次に、本発明の第4の実施形態について説明する。図8は本発明の第4の実施形態に係るクラスタシステムの構成を示すブロック図であり、図5または図7中の構成要素と同様の要素には、同一符号を付してある。図8のクラスタシステムが、図5のクラスタシステムと異なる点は、図7のクラスタシステムが、図1のクラスタシステムと異なる点と同様である。即ち図8のクラスタシステムでは、図5のクラスタシステムにおける計算機51-1〜51-5が計算機81-1〜81-5に置き換えられている。計算機81-5は、計算機51-5と同様に予備計算機である。計算機81-1〜81-5には、ブートイメージ割当部112-1〜112-5に代えてブートイメージコピー要求部712-1〜712-5が設けられている。計算機81-1〜81-5内の他の構成要素は、図5中の計算機51-1〜51-5と同様である。また、図8のクラスタシステムでは、SAN12に代えて、ブートイメージコピーサーバ72と、当該ブートイメージコピーサーバ72を計算機11-1〜11-4と接続するネットワーク73とが設けられている。
次に、図8のシステムにおける動作について、ブートイメージの切り替えを例に、図6のフローチャートを援用して説明する。
ブートイメージ切替制御部511は、各サービス#kのサービスレベルを監視して、当該各サービス#kのサービスレベルがサービスレベル条件を満足しているか否かを判定する動作(つまり図6のフローチャート中のステップS11,S12に相当する動作)を行う。今、前記第2の実施形態と同様にサービス#2の負荷が高まった結果、サービス#2のサービスレベルがサービスレベル条件を満足しなくなったものとする。この場合、ブートイメージ切替制御部511は、サービスレベルがサービスレベル条件を満足しないサービス#Xとしてサービス#2を検出する。
ブートイメージ切替制御部511は、各サービス#kのサービスレベルを監視して、当該各サービス#kのサービスレベルがサービスレベル条件を満足しているか否かを判定する動作(つまり図6のフローチャート中のステップS11,S12に相当する動作)を行う。今、前記第2の実施形態と同様にサービス#2の負荷が高まった結果、サービス#2のサービスレベルがサービスレベル条件を満足しなくなったものとする。この場合、ブートイメージ切替制御部511は、サービスレベルがサービスレベル条件を満足しないサービス#Xとしてサービス#2を検出する。
するとブートイメージ切替制御部511は、利用可能な予備計算機の中からサービス#X(#2)の実行に使用する予備計算機51-j(#j)、例えば計算機51-5(#5)を選択する動作(つまり図6のフローチャート中のステップS13〜S15に相当する動作)を行う。そしてブートイメージ切替制御部511は、選択された予備計算機51-j(=51-5)を現在使用されていないサービス#X用のブートイメージ#BXZ(ここではサービス#2用のブートイメージ#B22)でブートするための制御(つまり図6のフローチャート中のステップS16〜S18に相当する制御)を行う。但し、本実施形態では、第2の実施形態とは異なってSANブートではなくて、ブートイメージコピーサーバ72によるリモートディプロイメントにより、予備計算機51-j(=51-5)がサービス#X(=#2)用のブートイメージ#BXZ(=#B22)でブートされる。
一方、利用可能な予備計算機が存在しない場合には、図6のフローチャート中のステップS19に相当する制御(つまり、図2のフローチャート中のステップS3〜S9に相当する制御)が行われる。これにより、サービスレベルがサービスレベル条件を最も満足しているサービス#Y(例えばサービス#1)を実行している計算機の中から、サービス#X(=#2)を実行する計算機51-j(例えば計算機51-2)が選択される。そして、選択された計算機51-j(=51-2)をブートするブートイメージがサービス#X(=#2)用のブートイメージ#BXZ(=#B22)に切り替えられる。但し、ここでも、第2の実施形態とは異なってSANブートではなくて、ブートイメージコピーサーバ72によるリモートディプロイメントにより、計算機51-j(=51-2)がブートイメージ#BXZ(=#B22)でブートされる。
[変形例]
次に、上記第1乃至第4の実施形態の変形例について説明する。上記第1、第2、第3または第4の実施形態に係るシステム(図1、図5、図7または図8に示すシステム)では、サービス#Xの負荷(実行負荷)が増大したために当該サービス#Xのサービスレベル(ここでは応答時間)がサービスレベル条件を満足しなくなった場合に、当該サービス#X(つまり、負荷が基準値を超えたサービス#X)を実行する新たな計算機として、別のサービスを実行中の計算機(図1、図5、図7または図8のシステム)、或いは予備計算機(図5または図8のシステム)が選択される構成が適用されている。そして、選択された計算機のブートイメージがサービス#X用のブートイメージに切り替えられる、或いは選択された予備計算機がサービス#X用のブートイメージでブートされる。しかし、図1、図5、図7または図8のシステムが、例えばサービス毎に当該サービスの負荷のピーク時間帯が予め予測されるシステムである場合には、サービスの負荷(サービスレベル)を監視しなくても、サービスが提供される時間帯に応じて、当該サービスを実行する新たな計算機(予備計算機)がブートイメージ切替制御部(111または511)によって選択されて、その選択された計算機(予備計算機)に当該サービス#X用のブートイメージが割り当てられる構成とすることも可能である。
次に、上記第1乃至第4の実施形態の変形例について説明する。上記第1、第2、第3または第4の実施形態に係るシステム(図1、図5、図7または図8に示すシステム)では、サービス#Xの負荷(実行負荷)が増大したために当該サービス#Xのサービスレベル(ここでは応答時間)がサービスレベル条件を満足しなくなった場合に、当該サービス#X(つまり、負荷が基準値を超えたサービス#X)を実行する新たな計算機として、別のサービスを実行中の計算機(図1、図5、図7または図8のシステム)、或いは予備計算機(図5または図8のシステム)が選択される構成が適用されている。そして、選択された計算機のブートイメージがサービス#X用のブートイメージに切り替えられる、或いは選択された予備計算機がサービス#X用のブートイメージでブートされる。しかし、図1、図5、図7または図8のシステムが、例えばサービス毎に当該サービスの負荷のピーク時間帯が予め予測されるシステムである場合には、サービスの負荷(サービスレベル)を監視しなくても、サービスが提供される時間帯に応じて、当該サービスを実行する新たな計算機(予備計算機)がブートイメージ切替制御部(111または511)によって選択されて、その選択された計算機(予備計算機)に当該サービス#X用のブートイメージが割り当てられる構成とすることも可能である。
そこで、このような構成を、図1のクラスタシステムに適用した変形例におけるブートイメージ切り替えの一例について、図9を参照して説明する。なお、図9では、計算機11-1〜11-4以外の構成要素については省略されている。また、本変形例におけるシステムは、説明を簡略化するために、上記実施形態とは異なって2種類のサービス#1,#2だけが実行可能であるものとする。
まず、図9(a)は、計算機11-1〜11-4のうちの計算機11-1〜11-3がサービス#1用のブートイメージでブートされ、計算機11-4のみがサービス#2用のブートイメージでブートされている状態を示す。つまり図9(a)では、3台の計算機11-1〜11-3でサービス#1が実行され、1台の計算機11-4でサービス#2が実行されている。
図9(b)は図9(a)の状態から遷移した状態を示し、計算機11-1のみがサービス#1用のブートイメージでブートされ、計算機11-2〜11-4がサービス#2用のブートイメージでブートされている状態を示す。つまり図9(b)では、1台の計算機11-1でサービス#1が実行され、3台の計算機11-2〜11-4でサービス#2が実行されている。
図9(c)は図9(b)の状態から遷移した状態であって、図9(a)と同一の状態に戻っていることを示す。図9(d)は図9(c)の状態から遷移した状態であって、図9(b)と同一の状態に戻っていることを示す。
図9の例では、システム内のサービス#1及び#2を実行する計算機の台数P:Q(P,Qはそれぞれサービス#1,#2を実行する計算機の台数)は、時間の経過に伴って3:1→1:3→3:1→1:3→…のように遷移する。このようなケースは、例えばサービス#1は日本向けサービス、サービス#2は米国向けサービスといった場合のように、時差のためにサービス毎の負荷のピーク時間帯がずれる場合に発生する。
そこで、サービス#1用のブートイメージでブートされる計算機の台数と、サービス#2用のブートイメージでブートされる計算機の台数とを、サービスが提供される時間帯に応じてブートイメージ切替制御部111の制御により変更することで、即ちシステムが提供する各サービスの提供時間帯に応じて、当該サービスを実行する計算機の構成を動的に変化させることで、全体としてシステムに必要な計算機の台数を少なくすることができる。このことは、図5、図7または図8のシステムにおいても同様である。
上記各実施形態及びその変形例では、1つの計算機で1つのサービス(アプリケーション)が実行されることを前提としている。しかし、ブートイメージに、オペレーティングシステムと当該オペレーティングシステムのもとで動作可能な複数のアプリケーションを含めることにより、1つの計算機で複数のサービスを実行することも可能である。
なお、本発明は、上記実施形態そのままに限定されるものではなく、実施段階ではその要旨を逸脱しない範囲で構成要素を変形して具体化できる。また、上記実施形態に開示されている複数の構成要素の適宜な組み合せにより種々の発明を形成できる。例えば、実施形態に示される全構成要素から幾つかの構成要素を削除してもよい。更に、異なる実施形態に亘る構成要素を適宜組み合せてもよい。
11-1〜11-4,51-1〜51-4,71-1〜71-4,81-1〜81-4…計算機、12…SAN(ストレージエリアネットワーク)、13…ストレージ装置、14,73…ネットワーク、51-5,81-5…予備計算機、72…ブートイメージコピーサーバ(ブートイメージ切替手段)、111,111-1〜111-5…ブートイメージ切替制御部、112-1〜112-5…ブートイメージ割当部(ブートイメージ切替手段)、113,113-1〜113-5…ブートイメージ管理部、114-1〜114-5…計算機起動停止部、115,115-1〜115-5…サービス実行管理部、116-1〜116-4…計算機ハイバネーション部、515,516-1〜516-5…予備計算機管理部、712-1〜712-5…ブートイメージコピー要求部(ブートイメージ切替手段)。
Claims (9)
- 複数の計算機を備え、複数種類のサービスを実行可能な計算機システムにおいて、
計算機をブートするのに必要な、オペレーティングシステム及び前記複数種類のサービスのうちの少なくとも1つを実現するための当該オペレーティングシステムのもとで動作可能な少なくとも1つのアプリケーションを含む複数種類のブートイメージを記憶したストレージ装置と、
計算機のブートに使用されるブートイメージの切り替えを制御するブートイメージ切替制御手段であって、計算機のブートに使用されるブートイメージを、前記計算機システムで実行されるサービスの負荷または提供時間帯に応じて選択すると共に選択されたブートイメージでブートされる計算機を前記複数の計算機の中から選択するブートイメージ切替制御手段と、
前記ブートイメージ切替制御手段によって選択された計算機をブートするブートイメージを、前記ストレージ装置に記憶されているブートイメージのうち前記ブートイメージ切替制御手段によって選択されたブートイメージに切り替えるブートイメージ切替手段と
を具備することを特徴とする計算機システム。 - 計算機を起動・停止する計算機起動停止手段であって、前記ブートイメージ切替手段によって計算機のブートイメージが切り替えられる場合に、そのブートイメージ切り替え前に当該計算機を停止し、そのブートイメージ切り替え後に当該計算機を起動する計算機起動停止手段を更に具備することを特徴とする請求項1記載の計算機システム。
- 計算機をハイバネーション状態に設定する計算機ハイバネーション手段であって、前記ブートイメージ切替手段によって計算機のブートイメージが切り替えられる場合に、そのブートイメージ切り替え前に当該計算機をハイバネーション状態に設定する計算機ハイバネーション手段と、
計算機を起動・停止する計算機起動停止手段であって、前記ブートイメージ切替手段によって計算機のブートイメージが切り替えられる場合に、そのブートイメージ切り替え後に当該計算機を起動する計算機起動停止手段とを更に具備することを特徴とする請求項1記載の計算機システム。 - 前記ブートイメージ切替制御手段は、前記選択されたブートイメージでブートされる計算機を、最も負荷の少ないサービスを実行中の計算機の中から選択することを特徴とする請求項1記載の計算機システム。
- 前記複数の計算機と前記ストレージ装置とを接続するストレージエリアネットワークを更に具備し、
前記ブートイメージ切替手段は前記ブートイメージ切替制御手段によって選択された計算機に、前記ストレージ装置に記憶されているブートイメージのうち前記ブートイメージ切替制御手段によって選択されたブートイメージを割り当てるブートイメージ割当手段であることを特徴とする請求項1記載の計算機システム。 - 前記複数の計算機と前記ブートイメージ切替手段とを接続するネットワークを更に具備し、
前記ブートイメージ切替手段は前記ブートイメージ切替制御手段によって選択された計算機に、前記ストレージ装置に記憶されているブートイメージのうち前記ブートイメージ切替制御手段によって選択されたブートイメージを前記ネットワークを介してコピーするブートイメージコピーサーバであることを特徴とする請求項1記載の計算機システム。 - 通常は使用されない予備計算機を含む複数の計算機を備え、複数種類のサービスを実行可能な計算機システムにおいて、
計算機をブートするのに必要な、オペレーティングシステム及び前記複数種類のサービスのうちの少なくとも1つを実現するための当該オペレーティングシステムのもとで動作可能な少なくとも1つのアプリケーションを含む複数種類のブートイメージを記憶したストレージ装置と、
計算機のブートに使用されるブートイメージの切り替えを制御するブートイメージ切替制御手段であって、計算機のブートに使用されるブートイメージを、前記計算機システムで実行されるサービスの負荷または提供時間帯に応じて選択すると共に選択されたブートイメージでブートされる計算機を前記複数の計算機の中から前記予備計算機を優先させて選択するブートイメージ切替制御手段と、
前記ブートイメージ切替制御手段によって選択された計算機をブートするブートイメージを、前記ストレージ装置に記憶されているブートイメージのうち前記ブートイメージ切替制御手段によって選択されたブートイメージに切り替えるブートイメージ切替手段と
を具備することを特徴とする計算機システム。 - 前記ブートイメージ切替制御手段は、前記複数の計算機の中に使用可能な予備計算機が存在しない場合には、当該ブートイメージ切替制御手段によって選択されたブートイメージでブートされる計算機を前記複数の計算機のうちの他の計算機の中から選択することを特徴とする請求項7記載の計算機システム。
- 複数の計算機と、計算機をブートするのに必要な、オペレーティングシステム及び前記複数種類のサービスのうちの少なくとも1つを実現するための当該オペレーティングシステムのもとで動作可能な少なくとも1つのアプリケーションを含む複数種類のブートイメージを記憶したストレージ装置とを備えた、複数種類のサービスを実行可能な計算機システムに適用される動的ブートイメージ切替プログラムであって、
前記計算機に、
計算機のブートに使用されるブートイメージを、前記計算機システムで実行されるサービスの負荷または提供時間帯に応じて選択するステップと、
選択されたブートイメージでブートされる計算機を前記複数の計算機の中から選択するステップと、
選択された計算機をブートするブートイメージを、前記ストレージ装置に記憶されているブートイメージのうちの選択されたブートイメージに動的に切り替えるステップと
を実行させるための動的ブートイメージ切替プログラム。
Priority Applications (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
JP2003302992A JP2005071242A (ja) | 2003-08-27 | 2003-08-27 | 計算機システム及び動的ブートイメージ切替プログラム |
Applications Claiming Priority (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
JP2003302992A JP2005071242A (ja) | 2003-08-27 | 2003-08-27 | 計算機システム及び動的ブートイメージ切替プログラム |
Publications (1)
Publication Number | Publication Date |
---|---|
JP2005071242A true JP2005071242A (ja) | 2005-03-17 |
Family
ID=34407112
Family Applications (1)
Application Number | Title | Priority Date | Filing Date |
---|---|---|---|
JP2003302992A Pending JP2005071242A (ja) | 2003-08-27 | 2003-08-27 | 計算機システム及び動的ブートイメージ切替プログラム |
Country Status (1)
Country | Link |
---|---|
JP (1) | JP2005071242A (ja) |
Cited By (6)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
JP2009110183A (ja) * | 2007-10-29 | 2009-05-21 | Hitachi Ltd | 計算機の起動方法及び計算機システム |
JP2009187297A (ja) * | 2008-02-06 | 2009-08-20 | Ricoh Co Ltd | 組み込み機器およびその高速起動方法 |
US7734818B2 (en) * | 2007-02-23 | 2010-06-08 | International Business Machines Corporation | Method to add IPV6 and DHCP support to the network support package |
US7734743B2 (en) | 2007-02-23 | 2010-06-08 | International Business Machines Corporation | Method to enable infiniband network bootstrap |
US7886139B2 (en) | 2007-02-23 | 2011-02-08 | International Business Machines Corporation | Method to enable firmware to boot a system from an ISCSI device |
JP5163744B2 (ja) * | 2008-07-25 | 2013-03-13 | 富士通株式会社 | 機能拡張装置、情報処理装置および制御方法 |
-
2003
- 2003-08-27 JP JP2003302992A patent/JP2005071242A/ja active Pending
Cited By (6)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
US7734818B2 (en) * | 2007-02-23 | 2010-06-08 | International Business Machines Corporation | Method to add IPV6 and DHCP support to the network support package |
US7734743B2 (en) | 2007-02-23 | 2010-06-08 | International Business Machines Corporation | Method to enable infiniband network bootstrap |
US7886139B2 (en) | 2007-02-23 | 2011-02-08 | International Business Machines Corporation | Method to enable firmware to boot a system from an ISCSI device |
JP2009110183A (ja) * | 2007-10-29 | 2009-05-21 | Hitachi Ltd | 計算機の起動方法及び計算機システム |
JP2009187297A (ja) * | 2008-02-06 | 2009-08-20 | Ricoh Co Ltd | 組み込み機器およびその高速起動方法 |
JP5163744B2 (ja) * | 2008-07-25 | 2013-03-13 | 富士通株式会社 | 機能拡張装置、情報処理装置および制御方法 |
Similar Documents
Publication | Publication Date | Title |
---|---|---|
JP5575641B2 (ja) | 共有データセンタ災害復旧システム及び方法 | |
US7062674B2 (en) | Multiple computer system and method for assigning logical computers on the same system | |
US6931640B2 (en) | Computer system and a method for controlling a computer system | |
JP5789640B2 (ja) | 複数のコンピュータシステムによるプログラムの実行を管理するシステム | |
CN109313564B (zh) | 用于支持多个不同租户的高度可用虚拟桌面的服务器计算机管理系统 | |
US7979862B2 (en) | System and method for replacing an inoperable master workload management process | |
US7945748B2 (en) | Data migration and copying in a storage system with dynamically expansible volumes | |
WO2012056596A1 (ja) | 計算機システム及び処理制御方法 | |
US20040250248A1 (en) | System and method for server load balancing and server affinity | |
JP2003248668A (ja) | データセンタ資源管理方法及び運用方法 | |
JP3987517B2 (ja) | 計算機システム及びクラスタシステム用プログラム | |
US9448615B2 (en) | Managing power savings in a high availability system at a redundant component level of granularity | |
JP2006350780A (ja) | キャッシュ割当制御方法 | |
US20050050200A1 (en) | Computer system and cluster system program | |
US20070124573A1 (en) | Method for rapid startup of a computer system | |
JP2008217285A (ja) | 情報処理システムの運用管理装置および運用管理方法 | |
JP2019144717A (ja) | サービス提供システム、資源割り当て方法、及び資源割り当てプログラム | |
CN113382077B (zh) | 微服务调度方法、装置、计算机设备和存储介质 | |
WO2020045189A1 (ja) | ネットワークサービス管理装置、ネットワークサービス管理方法およびネットワークサービス管理プログラム | |
JP6010975B2 (ja) | ジョブ管理装置、ジョブ管理方法、及びプログラム | |
KR100462886B1 (ko) | 부하 분담 구조와 프라이머리/백업 구조가 혼합된 시스템 | |
JP2005071242A (ja) | 計算機システム及び動的ブートイメージ切替プログラム | |
JP2007072672A (ja) | 計算機システムおよび記憶領域の割当て方法 | |
US20070180452A1 (en) | Load distributing system and method | |
JP2005011331A (ja) | 負荷分散システム及び計算機管理プログラム |
Legal Events
Date | Code | Title | Description |
---|---|---|---|
A977 | Report on retrieval |
Free format text: JAPANESE INTERMEDIATE CODE: A971007 Effective date: 20060531 |
|
A131 | Notification of reasons for refusal |
Free format text: JAPANESE INTERMEDIATE CODE: A131 Effective date: 20060725 |
|
A02 | Decision of refusal |
Free format text: JAPANESE INTERMEDIATE CODE: A02 Effective date: 20061212 |