(57)【要約】【課題】  計算機の負荷がアプリケーションプログラムの起動閾値を越えた場合、計算機システムに計算機リソースを追加することが可能な技術を提供する。【解決手段】  計算機システムの構成を制御するシステム構成制御方法において、計算機の負荷状況を示す負荷情報の通知を受け付けて記憶手段に格納するステップと、前記記憶手段に格納された負荷情報が記憶手段中の起動閾値を超える前にアプリケーションプログラムを通信手段により計算機へ配布するステップと、前記記憶手段に格納された負荷情報が記憶手段中の起動閾値を超えている場合にアプリケーションプログラムの起動を通信手段により計算機へ指示するステップとを有するものである。【選択図】        図５
2005234766.tif 000002
【特許請求の範囲】
【請求項１】
計算機システムの構成を制御するシステム構成制御方法において、
計算機の負荷状況を示す負荷情報の通知を受け付けて記憶手段に格納するステップと、前記記憶手段に格納された負荷情報が記憶手段中の起動閾値を超える前にアプリケーションプログラムを通信手段により計算機へ配布するステップと、前記記憶手段に格納された負荷情報が記憶手段中の起動閾値を超えている場合にアプリケーションプログラムの起動を通信手段により計算機へ指示するステップとを有することを特徴とするシステム構成制御方法。
【請求項２】
前記起動閾値よりも低い配布閾値を記憶手段に格納し、前記負荷情報が記憶手段中の配布閾値を超えている場合にアプリケーションプログラムを配布することを特徴とする請求項１に記載されたシステム構成制御方法。
【請求項３】
前記記憶手段に格納された負荷情報の変化から負荷の変化する速度または加速度を算出し、その算出した速度または加速度の値に応じて記憶手段中の前記配布閾値を設定することを特徴とする請求項２に記載されたシステム構成制御方法。
【請求項４】
前記記憶手段に格納された負荷情報の変化から算出された負荷の変化する速度または加速度が記憶手段中の所定の速度または加速度以上である場合に前記配布閾値を下げることを特徴とする請求項２または請求項３のいずれかに記載されたシステム構成制御方法。
【請求項５】
アプリケーションプログラムの配布開始から実行可能な状態になるまでの所要時間を記憶手段中に格納し、前記記憶手段に格納された負荷情報の変化から負荷が記憶手段中の起動閾値に達するまでの時間を算出し、その算出した時間が前記記憶手段中の所要時間を下回る場合にアプリケーションプログラムの配布を開始することを特徴とする請求項１乃至請求項４のいずれか１項に記載されたシステム構成制御方法。
【請求項６】
アプリケーションプログラムを通信手段により配布して、アプリケーションプログラムを起動可能な予備の計算機を確保し、前記記憶手段に格納された負荷情報が記憶手段中の起動閾値を超えている場合にアプリケーションプログラムの起動を通信手段により前記予備の計算機へ指示し、アプリケーションプログラムを通信手段により配布して予備の計算機を新たに確保することを特徴とする請求項１に記載されたシステム構成制御方法。
【請求項７】
前記記憶手段に格納された負荷情報の変化に応じて確保する予備の計算機の台数を変更することを特徴とする請求項６に記載されたシステム構成制御方法。
【請求項８】
計算機システムの構成を制御するシステム構成制御方法をコンピュータに実行させる為のプログラムにおいて、
計算機の負荷状況を示す負荷情報の通知を受け付けて記憶手段に格納するステップと、前記記憶手段に格納された負荷情報が記憶手段中の起動閾値を超える前にアプリケーションプログラムを通信手段により計算機へ配布するステップと、前記記憶手段に格納された負荷情報が記憶手段中の起動閾値を超えている場合にアプリケーションプログラムの起動を通信手段により計算機へ指示するステップとをコンピュータに実行させることを特徴とするプログラム。
【請求項９】
計算機システムの構成を制御するシステム構成制御システムにおいて、
計算機の負荷状況を示す負荷情報の通知を受け付けて記憶手段に格納する負荷情報受付処理部と、前記記憶手段に格納された負荷情報が記憶手段中の起動閾値を超える前にアプリケーションプログラムを通信手段により計算機へ配布する配布処理部と、前記記憶手段に格納された負荷情報が記憶手段中の起動閾値を超えている場合にアプリケーションプログラムの起動を通信手段により計算機へ指示する起動指示処理部とを備えるシステム構成制御装置と、
装置内の負荷状況を監視してその内容を示す負荷情報を通信手段によりシステム構成制御装置へ通知する負荷監視処理部と、アプリケーションプログラムの配布を通信手段によりシステム構成制御装置から受け付けて記憶手段に格納する配布受付処理部と、アプリケーションプログラムの起動指示を通信手段によりシステム構成制御装置から受け付けて記憶手段中のアプリケーションプログラムを起動する起動処理部とを備える計算機とを具備することを特徴とするシステム構成制御システム。
【請求項１０】
計算機システムの構成を制御するシステム構成制御装置において、
計算機の負荷状況を示す負荷情報の通知を受け付けて記憶手段に格納する負荷情報受付処理部と、前記記憶手段に格納された負荷情報が記憶手段中の起動閾値を超える前にアプリケーションプログラムを通信手段により計算機へ配布する配布処理部と、前記記憶手段に格納された負荷情報が記憶手段中の起動閾値を超えている場合にアプリケーションプログラムの起動を通信手段により計算機へ指示する起動処理部とを備えることを特徴とするシステム構成制御装置。
【発明の詳細な説明】
【技術分野】
【０００１】
本発明は計算機システムの構成を制御するシステム構成制御装置に関し、特に計算機システムの負荷状況に応じて計算機リソースの構成を変更するシステム構成制御装置に適用して有効な技術に関するものである。
【背景技術】
【０００２】
従来の計算機システムにおいて、負荷の増大により現在のアプリケーション処理の続行が困難となる場合には、そのアプリケーション処理を実行する計算機を動的に追加して負荷の増大に対処する必要がある。
【０００３】
分散オブジェクトシステムにおいて、負荷均衡機能を備え、容易に新たな計算機を追加し、サーバ側のシステムを拡張できる様にしているものもあるが（例えば特許文献１参照）、従来の計算機システムでは、負荷の増大を検出した後に、その負荷の増大した計算機で実行されているアプリケーションプログラムを他の計算機に送信し、その計算機でアプリケーションプログラムを起動することによって、負荷の増大に応じた計算機の動的な追加を行っている。
【０００４】
この様な計算機システムにおいて、負荷の増大に応じてアプリケーション処理を実行する計算機を動的に追加する際に、ＥＪＢ(Enterprise JavaBeans)の様にアプリケーションプログラムやその処理に必要なデータの配布及び設定を伴う様な場合では、前提ソフトウェアのインストールされた計算を選択する追加計算機の決定、アプリケーションプログラム及びデータの配布及び設定、並びに配布したアプリケーションプログラムの起動を、実際に負荷が増大してから行うと、負荷の増大から実際に追加計算機でアプリケーション処理が実行されるまでに時間を要することがある。
【０００５】
【特許文献１】特開２００１−３０６５３７号公報
【発明の開示】
【発明が解決しようとする課題】
【０００６】
前記の様に従来の計算機システムでは、アプリケーション処理によっては、追加する計算機の決定、アプリケーションプログラム及びデータの配布及び設定、並びにアプリケーションプログラムの起動に時間を要する為、負荷増大から実際に追加計算機でアプリケーション処理が実行されるまでに間が空いてしまい、計算機の追加が間に合わず、負荷の増大した計算機がシステムダウン等の障害を起こすという問題がある。
【０００７】
本発明の目的は上記問題を解決し、計算機の負荷がアプリケーションプログラムの起動閾値を越えたかどうかを監視し、その結果に基づいて計算機システムの計算機リソースを変更することが可能な技術を提供することにある。
【課題を解決するための手段】
【０００８】
本発明は、計算機システムの構成を制御するシステム構成制御装置において、計算機の負荷がアプリケーションプログラムの起動閾値を超える前にアプリケーションプログラムを配布しておくものである。
【０００９】
本発明のシステム構成制御装置（計算機や情報処理装置、またはその様な処理を実施するプログラムやオブジェクトでも良い）では、計算機システムを構成する各計算機から、その計算機の負荷状況を示す負荷情報の通知を通信手段により受け付けて、メモリ等の記憶手段に格納する。
【００１０】
そして、前記記憶手段に格納された負荷情報と、磁気ディスク装置等の記憶手段中の閾値テーブルに格納された閾値とを比較し、前記負荷情報が起動閾値を超える前にアプリケーションプログラムを計算機プールの計算機へ配布する。例えば前記起動閾値よりも低い配布閾値を磁気ディスク装置中の閾値テーブルに格納しておき、前記負荷情報が閾値テーブル中の配布閾値を超えている場合にアプリケーションプログラムを配布する。
【００１１】
計算機プールの計算機では、アプリケーションプログラムの配布を通信手段によりシステム構成制御装置から受け付けて磁気ディスク装置等の記憶手段に格納する。
【００１２】
また、前記記憶手段に格納された負荷情報と記憶手段中の閾値テーブルに格納された閾値とを比較した結果、前記負荷情報が起動閾値を超えている場合には、アプリケーションプログラム配布済みの計算機に対してアプリケーションプログラムの起動を通信手段により指示する。
【００１３】
アプリケーションプログラム配布済みの計算機では、アプリケーションプログラムの起動指示を通信手段によりシステム構成制御装置から受け付けて記憶手段中のアプリケーションプログラムを起動する。
【発明の効果】
【００１４】
本発明によれば計算機の負荷がアプリケーションプログラムの起動閾値を超える前にアプリケーションプログラムを配布しておくので、計算機の負荷がアプリケーションプログラムの起動閾値を越えた場合、計算機システムに計算機リソースを追加することが可能である。
【発明を実施するための最良の形態】
【００１５】
以下に計算機プール中の計算機を追加して計算機システムの構成を制御する一実施形態のシステム構成制御装置について説明する。
【００１６】
図１は本実施形態のアプリケーションの配布閾値と起動閾値の概要を示す図である。図１では、時間経過に対するアプリケーション処理を実行中の計算機の負荷の変化を表しており、状態Ａ及びＢは、アプリケーションプログラムを起動した計算機を計算機システムに追加して構成を変更すべき状態と前記構成の変更を決定すべき状態をそれぞれ示している。
【００１７】
アプリケーション処理を実行中の計算機で負荷が上昇した場合には、その計算機の状態が状態Ａになる前に、他の計算機にアプリケーションプログラムを配布して起動することによりアプリケーション処理を複数の計算機で分担する必要があり、本実施形態のシステム構成制御装置では、図１の様にそのアプリケーションプログラムを起動する負荷の閾値である起動閾値１０１よりも低い負荷に対して、アプリケーションプログラムを配布する閾値である配布閾値１０２を設定し、配布を行う閾値に負荷が達した時点で配布を開始することで、事前に配布を行う。
【００１８】
図２は本実施形態の負荷変動の一例を示す図である。図２の負荷変動では、計算機の負荷が状態Ｂを超えた後、状態Ａを超えること無く低下する例を表している。
【００１９】
図１の様に配布を行う閾値に負荷が達した時点で配布を開始するだけでは、図２の様な負荷変動を起こす場合に配布を行うことが無駄となることも考えられるので、本実施形態のシステム構成制御装置では、負荷の値だけではなく、図３及び図４の様に負荷変動の速度や加速度も考慮することでより効率的な事前配布を行う。
【００２０】
図３は本実施形態の負荷変動の速度を考慮した事前配布の概要を示す図である。図３の場合、（２）の場合よりも（１）の場合のほうが負荷の変化が速いため、より高速に配布を行う必要がある。
【００２１】
図４は本実施形態の負荷変動の加速度を考慮した事前配布の概要を示す図である。また図４の場合、（３）と（４）では変動の速度はほぼ同じだが、加速度は（３）の方が高いため起動の閾値に達する可能性が高い。逆に（４）の場合加速度は負であり、起動の閾値に達するまで時間が長い、或いは起動の閾値に達しない可能性が高い。本実施形態のシステム構成制御装置では、これらの負荷変動を元に起動の閾値に達するまでの時間を予測し、それまでに配布が完了する様に配布の閾値を自動的に変更する。
【００２２】
図５は本実施形態のシステム構成制御システムの概略構成を示す図である。図５に示す様に本実施形態のシステム構成制御装置５００は、負荷情報受付処理部５０１と、配布処理部５０２と、起動指示処理部５０３と、閾値設定処理部５０４とを有している。
【００２３】
負荷情報受付処理部５０１は、計算機５１０の負荷状況を示す負荷情報の通知を通信装置により受け付けてメモリに格納する処理部である。配布処理部５０２は、前記メモリに格納された負荷情報が磁気ディスク装置中の閾値テーブル５０７に格納された起動閾値を超える前にアプリケーションプログラムを通信装置により他の計算機５１０へ配布し、負荷情報が閾値テーブル５０７中の削除閾値以下である場合に、前記配布されたアプリケーションプログラムを計算機５１０から削除する処理部である。
【００２４】
起動指示処理部５０３は、前記メモリに格納された負荷情報が磁気ディスク装置中の閾値テーブル５０７に格納された起動閾値を超えている場合にアプリケーションプログラムの起動を通信装置により計算機５１０へ指示する処理部である。
【００２５】
閾値設定処理部５０４は、閾値テーブル５０７中の起動閾値とアプリケーションプログラムの配布に必要な時間を基に閾値テーブル５０７中の配布閾値を設定する処理や、前記メモリに格納された負荷情報の変化から負荷の変化する速度または加速度を算出し、その算出した速度または加速度の値に応じて閾値テーブル５０７中の配布閾値を設定する処理、前記速度または加速度が閾値テーブル５０７中の所定の速度または加速度以上である場合に閾値テーブル５０７中の配布閾値を下げる処理を行う処理部である。
【００２６】
システム構成制御装置５００を負荷情報受付処理部５０１、配布処理部５０２、起動指示処理部５０３及び閾値設定処理部５０４として機能させる為のプログラムは、ＣＤ−ＲＯＭ等の記録媒体に記録され磁気ディスク等に格納された後、メモリにロードされて実行されるものとする。なお前記プログラムを記録する記録媒体はＣＤ−ＲＯＭ以外の他の記録媒体でも良い。また前記プログラムを当該記録媒体から情報処理装置にインストールして使用しても良いし、ネットワークを通じて当該記録媒体にアクセスして前記プログラムを使用するものとしても良い。
【００２７】
またシステム構成制御装置５００は、前提ソフトウェアテーブル５０５と、インストール済みソフトウェアテーブル５０６と、閾値テーブル５０７とを有している。
【００２８】
前提ソフトウェアテーブル５０５は、アプリケーション処理を実行する際の前提となるソフトウェアやデータを示す情報を磁気ディスク装置中の所定領域に格納したテーブルである。インストール済みソフトウェアテーブル５０６は、各計算機にインストール済みの前提ソフトウェアを示す情報を磁気ディスク装置中の所定領域に格納するテーブルである。閾値テーブル５０７は、アプリケーションプログラムの配布、起動または削除を行う為の閾値を磁気ディスク装置中の所定領域に格納したテーブルである。
【００２９】
計算機５１０は、負荷監視処理部５１１と、配布受付処理部５１２と、起動処理部５１３とを有している。
【００３０】
負荷監視処理部５１１は、装置内の負荷状況を監視してその内容を示す負荷情報を通信装置によりシステム構成制御装置５００へ通知する処理部である。配布受付処理部５１２は、アプリケーションプログラムの配布を通信装置によりシステム構成制御装置５００から受け付けて磁気ディスク装置中に格納する処理部である。起動処理部５１３は、アプリケーションプログラムの起動指示を通信装置によりシステム構成制御装置５００から受け付けて磁気ディスク装置中のアプリケーションプログラムを起動する処理部である。
【００３１】
計算機５１０を負荷監視処理部５１１、配布受付処理部５１２及び起動処理部５１３として機能させる為のプログラムは、ＣＤ−ＲＯＭ等の記録媒体に記録され磁気ディスク等に格納された後、メモリにロードされて実行されるものとする。なお前記プログラムを記録する記録媒体はＣＤ−ＲＯＭ以外の他の記録媒体でも良い。また前記プログラムを当該記録媒体から情報処理装置にインストールして使用しても良いし、ネットワークを通じて当該記録媒体にアクセスして前記プログラムを使用するものとしても良い。
【００３２】
図５では、計算機５１０の構成例として計算機３の構成を示しているが、他の計算機の構成も計算機３と同様であるものとする。
【００３３】
図６は本実施形態の前提ソフトウェアテーブル５０５の一例を示す図である。図６に示す様に本実施形態の前提ソフトウェアテーブル５０５は、アプリケーション名６０１で識別されるアプリケーション処理を実行する際の前提となるソフトウェア（プログラム）やデータを示す前提ソフトウェア情報６０２と、当該アプリケーション処理を実行する為のアプリケーションプログラムやデータの配布開始から実行可能な状態になるまでの所要時間を示す所要時間情報６０３とを格納している。前記所要時間としては、配布開始から実行可能な状態になるまでの時間の実測値や、配布されるアプリケーションプログラム及びデータのサイズと通信装置及び通信経路での通信速度並びに配布を行うシステム構成制御装置５００と配布を受ける計算機５１０の処理能力等から算出される理論値が用いられるものとする。
【００３４】
図７は本実施形態のインストール済みソフトウェアテーブル５０６の一例を示す図である。図７に示す様に本実施形態のインストール済みソフトウェアテーブル５０６は、計算機名７０１で識別される各計算機にインストール済みの前提ソフトウェアを示すインストール済みソフトウェア情報７０２を格納している。
【００３５】
計算機５１０から送信された負荷情報が配布を開始する閾値を超えていた場合、配布処理部５０２は、前提ソフトウェアテーブル５０５とインストール済みソフトウェアテーブル５０６を参照して、アプリケーションプログラムの配布される計算機５１０を決定した後、その決定した計算機５１０に対して配布を行う。
【００３６】
図８は本実施形態の閾値テーブル５０７の一例を示す図である。図８に示す様に本実施形態の閾値テーブル５０７は、アプリケーションプログラムの配布、起動または削除を行う為の閾値として、ＣＰＵの使用率（％）等の特定の負荷の値を格納している。
【００３７】
本実施形態のシステム構成制御装置５００の閾値設定処理部５０４は、閾値テーブル５０７中の起動閾値８０３及び前提ソフトウェアテーブル５０５中の所要時間情報６０３と、過去の負荷情報から負荷上昇時のデータを選択して算出した負荷上昇速度を基に、例えば数１の様にして配布の閾値を算出した後、閾値テーブル５０７中の配布閾値８０２を設定する。
[数１]
配布閾値＝起動閾値−負荷上昇速度×所要時間
【００３８】
ここで負荷上昇速度として、過去の負荷上昇時のデータにおける平均値や最大値を用いたり、所要時間として複数のアプリケーションの所要時間の平均値や最大値を用いても良いものとする。
【００３９】
図９は本実施形態の負荷情報通知処理の概要を示す図である。図９に示す様にアプリケーションを実行中の各計算機５１０の負荷監視処理部５１１は、自装置内のＣＰＵ使用率や待ち行列に入ってきているトランザクション数等の負荷状況を監視してその内容を示す負荷情報を通信装置によりシステム構成制御装置５００へ所定の時間間隔で通知し、システム構成制御装置５００の負荷情報受付処理部５０１は、計算機５１０の負荷状況を示す負荷情報の通知を通信装置により受け付けてメモリに格納する処理を行う。本実施形態の負荷情報は１次元の数値となっているものとするが、多次元ベクトルやその他の形式で表すことも出来る。
【００４０】
図１０は本実施形態の負荷情報と閾値の比較処理の概要を示す図である。図１０に示す様にシステム構成制御装置５００の配布処理部５０２は、前記メモリに格納された負荷情報と、磁気ディスク装置中の閾値テーブル５０７に格納された、該当計算機の配布閾値８０２とを比較し、前記負荷情報が配布閾値８０２を超えているかどうかを調べる。
【００４１】
図１１は本実施形態の配布閾値８０２を超えた場合のアプリケーションの配布処理の概要を示す図である。図１１に示す様に配布処理部５０２は、前記負荷情報が配布閾値８０２を超えている場合に、その計算機５１０で実行されているアプリケーション処理の前提ソフトウェアを前提ソフトウェアテーブル５０５から読み出した後、インストール済みソフトウェアテーブル５０６を参照して当該前提ソフトウェアがインストールされている計算機５１０を選択した後、その計算機５１０に対してアプリケーションプログラムを配布する。
【００４２】
前記配布を受けた計算機５１０の配布受付処理部５１２は、アプリケーションプログラムの配布を通信装置によりシステム構成制御装置５００から受け付けて磁気ディスク装置中に格納する。
【００４３】
この例では計算機１で負荷が配布閾値８０２を超えているものとすると、その負荷が上がった計算機１でアプリケーションＡを実行しているので、まず前提ソフトウェアテーブル５０５を参照してアプリケーションＡがソフトウェアＡを前提としていることを調べ、次いでインストール済みソフトウェアテーブル５０６を参照してソフトウェアＡがインストール済みの計算機を調べ、計算機３に配布することを決定する。
【００４４】
図１２は本実施形態の起動閾値８０３を超えた場合のアプリケーションの起動処理の概要を示す図である。図１２に示す様にシステム構成制御装置５００の起動指示処理部５０３は、更に通知を受けメモリに格納された負荷情報が磁気ディスク装置中の閾値テーブル５０７に格納された起動閾値８０３を超えている場合に、前記配布を行った計算機５１０に対してアプリケーションプログラムの起動を指示する処理を行う。
【００４５】
前記起動指示の行われた計算機５１０の起動処理部５１３は、アプリケーションプログラムの起動指示を通信装置によりシステム構成制御装置５００から受け付けて磁気ディスク装置中のアプリケーションプログラムを起動し、アプリケーション処理を開始する。
【００４６】
図１３は本実施形態の削除閾値８０４以下である場合のアプリケーションの削除処理の概要を示す図である。図１３に示す様にシステム構成制御装置５００の配布処理部５０２は、前記の様にして配布を行ったがその後起動閾値８０３を超えることなく負荷情報が削除閾値８０４以下まで下がった場合に、前記配布したアプリケーションプログラムの削除を計算機５１０に指示し、前記削除指示を受けた計算機５１０の配布受付処理部５１２は、前記配布により磁気ディスク装置中に格納したアプリケーションプログラムを削除する。
【００４７】
アプリケーションを実行中の各計算機５１０の負荷監視処理部５１１は、自装置内のＣＰＵ使用率や待ち行列に入ってきているトランザクション数等の負荷状況を監視して、その内容を示す負荷情報を計算機名称及び実行中のアプリケーション名称と共に通信装置によりシステム構成制御装置５００へ通知する。
【００４８】
システム構成制御装置５００は、計算機名称、アプリケーション名称及び負荷情報を含む通知を通信装置により計算機５１０から受信しているかどうかを調べ、前記通知を受信している場合には図１４に示す様なシステム構成制御処理を開始する。
【００４９】
図１４は本実施形態のシステム構成制御処理の処理手順を示すフローチャートである。ステップ１４０１でシステム構成制御装置５００の負荷情報受付処理部５０１は、アプリケーション処理を実行中の計算機１等の計算機５１０から通信装置により受信した、計算機名称、アプリケーション名称及び負荷情報を含む通知を受け付けてメモリ中の配布管理テーブルに格納した後、前記負荷情報の値をメモリ中の変数Ａに格納する。
【００５０】
図１５は本実施形態の配布管理テーブルの一例を示す図である。図１５に示す様に本実施形態の配布管理テーブル１５００は、前記負荷情報と共に計算機５１０から通知された計算機名称及びアプリケーション名称を格納する計算機名１５０１及びアプリケーション名１５０２と、通知された負荷情報の値を複数保持する為の負荷情報欄１５０３と、アプリケーション名１５０２で識別されるアプリケーションプログラムが他の計算機に配布されたかどうかを示す配布情報１５０４と、計算機に配布されたアプリケーションプログラムが起動されたかどうかを示す実行情報１５０５とを有している。
【００５１】
ステップ１４０１で受信した情報を配布管理テーブル１５００に格納する際には、受信した計算機名称と同一の計算機名１５０１を持つレコードが既に配布管理テーブル１５００内に存在しているかどうかを調べ、前記レコードがまだ存在していない場合には新しいレコードの計算機名１５０１、アプリケーション名１５０２及び負荷情報欄１５０３に前記受信した計算機名称、アプリケーション名称及び負荷情報をそれぞれ格納し、前記レコードが既に存在している場合には当該レコードの負荷情報欄１５０３に前記受信した負荷情報を追加する。
【００５２】
ステップ１４０２でシステム構成制御装置５００の配布処理部５０２は、磁気ディスク装置中の閾値テーブル５０７を参照し、前記負荷情報と共に受信した計算機名１５０１と同一の計算機名８０１に対応する起動閾値８０３を閾値テーブル５０７から読み出す。そして、前記メモリ中の変数Ａに格納された負荷情報と前記読み出した起動閾値８０３の値を比較して、前記変数Ａの値が起動閾値８０３を超えているかどうかを調べ、前記変数Ａの値が起動閾値８０３を超えていない場合にはステップ１４０３へ進む。
【００５３】
ここで、配布管理テーブル１５００の負荷情報欄１５０３中に格納された複数の負荷情報の変化から負荷が閾値テーブル５０７中の起動閾値８０３に達するまでの時間を算出し、その算出した時間が前提ソフトウェアテーブル５０５中の所要時間を下回る場合にステップ１４０３へ進むものとしても良い。
【００５４】
ステップ１４０３では、磁気ディスク装置中の閾値テーブル５０７を参照し、前記負荷情報と共に受信した計算機名１５０１と同一の計算機名８０１に対応する配布閾値８０２を閾値テーブル５０７から読み出す。そして、前記メモリ中の変数Ａに格納された負荷情報と前記読み出した配布閾値８０２の値を比較して、前記変数Ａの値が配布閾値８０２を超えているかどうかを調べ、前記変数Ａの値が配布閾値８０２を超えている場合にはステップ１４０４へ進む。
【００５５】
ステップ１４０４では、磁気ディスク装置中の前提ソフトウェアテーブル５０５を参照し、前記負荷情報と共に送信されたアプリケーション名１５０２と同一のアプリケーション名６０１に対応する前提ソフトウェア情報６０２を前提ソフトウェアテーブル５０５から読み出して、前記負荷情報を送信した計算機５１０で実行されているアプリケーションプログラムの前提ソフトウェアを調べる。
【００５６】
ステップ１４０５では、磁気ディスク装置中のインストール済みソフトウェアテーブル５０６を参照し、ステップ１４０４で読み出した前提ソフトウェア情報６０２と一致するインストール済みソフトウェア情報７０２を検索して計算機名７０１を読み出すことにより、ステップ１４０４で調べた前提ソフトウェアがインストール済みの計算機５１０の名称を調べ、その調べた計算機５１０の名称の中から１つを選択する。
【００５７】
ステップ１４０６では、磁気ディスク装置中のアプリケーションリポジトリを参照し、前記負荷情報と共に受信したアプリケーション名１５０２に対応するアプリケーションプログラムやそのアプリケーションプログラムの実行に必要なデータを読み出した後、その読み出したアプリケーションプログラム及びデータをステップ１４０５で選択した名称の計算機５１０に対して配布し、その配布先の計算機名称を配布管理テーブル１５００の配布情報１５０４に設定する。
【００５８】
前記配布を受けた計算機５１０の配布受付処理部５１２は、システム構成制御装置５００から配布されたアプリケーションプログラム及びデータを通信装置により受け付けて磁気ディスク装置中に格納する。
【００５９】
一方、システム構成制御装置５００の配布処理部５０２は、ステップ１４０３で前記メモリ中の変数Ａに格納された負荷情報と前記読み出した配布閾値８０２の値を比較した結果、前記変数Ａの値が配布閾値８０２を超えていない場合にはステップ１４０７へ進む。
【００６０】
ステップ１４０７では、磁気ディスク装置中の閾値テーブル５０７を参照し、前記負荷情報と共に受信した計算機名１５０１と同一の計算機名８０１に対応する削除閾値８０４を閾値テーブル５０７から読み出す。そして、前記メモリ中の変数Ａに格納された負荷情報と前記読み出した削除閾値８０４の値を比較して、前記変数Ａの値が削除閾値８０４を超えているかどうかを調べ、前記変数Ａの値が削除閾値８０４を超えている場合、すなわち変数Ａが配布解除の閾値を下回った場合にはステップ１４０８へ進む。
【００６１】
ステップ１４０８では、メモリ中の配布管理テーブル１５００を参照し、前記負荷情報と共に受信した計算機名称と一致する計算機名１５０１に対応した配布情報１５０４及び実行情報１５０５を読み出して、そのアプリケーション名１５０２に対応するアプリケーションプログラムがステップ１４０６の処理で配布済みでありかつ実行前であるかどうかを調べ、配布済みでありかつ実行前である場合にはステップ１４０９へ進む。
【００６２】
ステップ１４０９では、ステップ１４０８で読み出した配布情報１５０４から配布先の計算機名称を取得した後、その計算機５１０に対して前記配布したアプリケーションプログラムの削除を指示し、配布管理テーブル１５００中の配布情報１５０４から配布先の計算機名称を削除する。そしてその削除指示を受けた計算機５１０の配布受付処理部５１２は、前記配布により磁気ディスク装置中に格納したアプリケーションプログラムを削除する。
【００６３】
一方、システム構成制御装置５００の配布処理部５０２は、ステップ１４０２で前記メモリ中の変数Ａに格納された負荷情報と前記読み出した起動閾値８０３の値を比較した結果、前記変数Ａの値が起動閾値８０３を超えている場合にはステップ１４１０へ進む。
【００６４】
ステップ１４１０でシステム構成制御装置５００の起動指示処理部５０３は、メモリ中の配布管理テーブル１５００を参照し、前記負荷情報と共に受信した計算機名称と一致する計算機名１５０１に対応した配布情報１５０４を読み出して、その配布情報１５０４から配布先の計算機名称を取得した後、その計算機５１０に対して当該アプリケーションプログラムの起動を通信装置により指示し、配布管理テーブル１５００の実行情報１５０５に実行中であることを示す情報を設定する。
【００６５】
前記起動指示の行われた計算機５１０の起動処理部５１３は、アプリケーションプログラムの起動指示を通信装置によりシステム構成制御装置５００から受け付けた後、前記配布により磁気ディスク装置中に格納したアプリケーションプログラムを起動する。
【００６６】
また本実施形態のシステム構成制御装置５００の閾値設定処理部５０４は、配布管理テーブル１５００の負荷情報欄１５０３に格納された複数の負荷情報を用いて、それらの値の変化から負荷の変化する速度または加速度を算出し、その算出した速度または加速度の値に応じて閾値テーブル５０７中の配布閾値８０２を設定するものとしても良い。
【００６７】
例えば算出した速度を用いて配布閾値８０２を設定する場合、負荷情報欄１５０３中の複数の負荷情報とその測定時刻から負荷変化速度を算出し、閾値テーブル５０７中の起動閾値８０３及び前提ソフトウェアテーブル５０５中の所要時間情報６０３を基に、数２の様にして配布の閾値を算出した後、その算出した値が閾値テーブル５０７中の配布閾値８０２よりも小さい場合にその値を配布閾値８０２に設定する。
[数２]
配布閾値＝起動閾値−負荷変化速度×所要時間
【００６８】
ここで、所要時間として複数のアプリケーションの所要時間の平均値や最大値を用いても良いものとする。
【００６９】
また算出した速度及び加速度を用いて配布閾値８０２を設定する場合には、負荷が時間の２次関数で表されるので、その２次関数を解いて起動閾値８０３における時間を求め、その時間から所要時間を引いた時間における負荷の値を算出した後、その算出した値が閾値テーブル５０７中の配布閾値８０２よりも小さい場合にその値を配布閾値８０２に設定する。
【００７０】
更に閾値設定処理部５０４は、前記算出した速度または加速度と閾値テーブル５０７中の速度閾値８０５や加速度閾値８０６とを比較し、前記算出した速度または加速度が速度閾値８０５や加速度閾値８０６以上である場合に閾値テーブル５０７中の配布閾値８０２を所定の値だけ下げる処理を行うものとしても良い。
【００７１】
また本実施形態のシステム構成制御装置５００では、アプリケーション処理毎に常に１台以上の予備の計算機を確保し、この計算機に予めアプリケーションプログラムを配布済みとしておき、負荷情報が起動閾値８０３を超えている場合に予備の計算機でアプリケーションプログラムを起動すると共に、新たに１台以上の予備の計算機を確保してアプリケーションの配布を行うものとしても良い。
【００７２】
図１６は本実施形態のアプリケーション配布済みの予備の計算機を確保している場合の処理手順を示すフローチャートである。ステップ１６０１でシステム構成制御装置５００の負荷情報受付処理部５０１は、通信装置により計算機５１０から受信した、計算機名称、アプリケーション名称及び負荷情報を含む通知を受け付けてメモリ中の配布管理テーブル１５００の計算機名１５０１、アプリケーション名１５０２及び負荷情報欄１５０３に格納した後、前記負荷情報の値をメモリ中の変数Ａに格納する。
【００７３】
ステップ１６０２でシステム構成制御装置５００の配布処理部５０２は、磁気ディスク装置中の閾値テーブル５０７を参照し、前記負荷情報と共に受信した計算機名１５０１と同一の計算機名８０１に対応する起動閾値８０３を閾値テーブル５０７から読み出す。そして、前記メモリ中の変数Ａに格納された負荷情報と前記読み出した起動閾値８０３の値を比較して、前記変数Ａの値が起動閾値８０３を超えているかどうかを調べ、前記変数Ａの値が起動閾値８０３を超えている場合にはステップ１６０３へ進む。
【００７４】
ここで、配布管理テーブル１５００の負荷情報欄１５０３中に格納された複数の負荷情報の変化から負荷が閾値テーブル５０７中の起動閾値８０３に達するまでの時間を算出し、その算出した時間が前提ソフトウェアテーブル５０５中の所要時間を下回る場合にステップ１６０３へ進むものとしても良い。
【００７５】
ステップ１６０３で起動指示処理部５０３は、メモリ中の配布管理テーブル１５００を参照し、前記負荷情報と共に受信した計算機名称と一致する計算機名１５０１に対応したアプリケーション名１５０２を読み出して、そのアプリケーション名１５０２が配布されている予備の計算機の計算機名称を取得した後、その予備の計算機に対して当該アプリケーションプログラムの起動を通信装置により指示する。
【００７６】
前記起動指示の行われた予備の計算機の起動処理部５１３は、アプリケーションプログラムの起動指示を通信装置によりシステム構成制御装置５００から受け付けた後、磁気ディスク装置中に格納している配布済みのアプリケーションプログラムを起動する。
【００７７】
ステップ１６０４では、磁気ディスク装置中の前提ソフトウェアテーブル５０５を参照し、前記負荷情報と共に送信されたアプリケーション名１５０２と同一のアプリケーション名６０１に対応する前提ソフトウェア情報６０２を前提ソフトウェアテーブル５０５から読み出して、前記負荷情報を送信した計算機５１０で実行されているアプリケーションプログラムの前提ソフトウェアを調べる。
【００７８】
ステップ１６０５では、磁気ディスク装置中のインストール済みソフトウェアテーブル５０６を参照し、ステップ１６０４で読み出した前提ソフトウェア情報６０２と一致するインストール済みソフトウェア情報７０２を検索して計算機名７０１を読み出すことにより、ステップ１６０４で調べた前提ソフトウェアがインストール済みの予備の計算機の名称を調べ、その調べた予備の計算機の名称の中から１つを選択する。
【００７９】
ステップ１６０６では、磁気ディスク装置中のアプリケーションリポジトリを参照し、前記負荷情報と共に受信したアプリケーション名１５０２に対応するアプリケーションプログラムやそのアプリケーションプログラムの実行に必要なデータを読み出した後、その読み出したアプリケーションプログラム及びデータをステップ１６０５で選択した名称の予備の計算機に対して配布する。
【００８０】
前記配布を受けた予備の計算機の配布受付処理部５１２は、システム構成制御装置５００から配布されたアプリケーションプログラム及びデータを通信装置により受け付けて磁気ディスク装置中に格納する。
【００８１】
以上説明した様に本実施形態のシステム構成制御装置によれば、計算機の負荷がアプリケーションプログラムの起動閾値を超える前にアプリケーションプログラムを配布しておくので、計算機の負荷がアプリケーションプログラムの起動閾値を越えた場合、計算機システムに計算機リソースを追加することが可能である。
【図面の簡単な説明】
【００８２】
【図１】本実施形態のアプリケーションの配布閾値と起動閾値の概要を示す図である。
【図２】本実施形態の負荷変動の一例を示す図である。
【図３】本実施形態の負荷変動の速度を考慮した事前配布の概要を示す図である。
【図４】本実施形態の負荷変動の加速度を考慮した事前配布の概要を示す図である。
【図５】本実施形態のシステム構成制御システムの概略構成を示す図である。
【図６】本実施形態の前提ソフトウェアテーブル５０５の一例を示す図である。
【図７】本実施形態のインストール済みソフトウェアテーブル５０６の一例を示す図である。
【図８】本実施形態の閾値テーブル５０７の一例を示す図である。
【図９】本実施形態の負荷情報通知処理の概要を示す図である。
【図１０】本実施形態の負荷情報と閾値の比較処理の概要を示す図である。
【図１１】本実施形態の配布閾値８０２を超えた場合のアプリケーションの配布処理の概要を示す図である。
【図１２】本実施形態の起動閾値８０３を超えた場合のアプリケーションの起動処理の概要を示す図である。
【図１３】本実施形態の削除閾値８０４以下である場合のアプリケーションの削除処理の概要を示す図である。
【図１４】本実施形態のシステム構成制御処理の処理手順を示すフローチャートである。
【図１５】本実施形態の配布管理テーブルの一例を示す図である。
【図１６】本実施形態のアプリケーション配布済みの予備の計算機を確保している場合の処理手順を示すフローチャートである。
【符号の説明】
【００８３】
１０１…起動閾値、１０２…配布閾値、５００…システム構成制御装置、５１０…計算機、５０１…負荷情報受付処理部、５０２…配布処理部、５０３…起動指示処理部、５０４…閾値設定処理部、５０５…前提ソフトウェアテーブル、５０６…インストール済みソフトウェアテーブル、５０７…閾値テーブル、５１１…負荷監視処理部、５１２…配布受付処理部、５１３…起動処理部、６０１…アプリケーション名、６０２…前提ソフトウェア情報、６０３…所要時間情報、７０１…計算機名、７０２…インストール済みソフトウェア情報、８０１…計算機名、８０２…配布閾値、８０３…起動閾値、８０４…削除閾値、８０５…速度閾値、８０６…加速度閾値、１５００…配布管理テーブル、１５０１…計算機名、１５０２…アプリケーション名、１５０３…負荷情報欄、１５０４…配布情報、１５０５…実行情報。
【図１】
2005234766.tif 000003
【図２】
2005234766.tif 000004
【図３】
2005234766.tif 000005
【図４】
2005234766.tif 000006
【図５】
2005234766.tif 000007
【図６】
2005234766.tif 000008
【図７】
2005234766.tif 000009
【図８】
2005234766.tif 000010
【図９】
2005234766.tif 000011
【図１０】
2005234766.tif 000012
【図１１】
2005234766.tif 000013
【図１２】
2005234766.tif 000014
【図１３】
2005234766.tif 000015
【図１４】
2005234766.tif 000016
【図１５】
2005234766.tif 000017
【図１６】
2005234766.tif 000018