(57)【要約】【課題】予約有り業務の実行を妨げることなく、計算機リソースの利用効率を充分に高めること。【解決手段】本発明は、利用者クライアント１０１から実行を指示された予約有り処理を実行する計算機を管理する計算機管理方法であって、管理装置１１０が、記憶手段に格納されるリソース管理テーブル１１６において、予約有り処理を実行していない計算機をリソースプールとして管理するリソース管理手順と、予約有り処理の実行を予約した期間、および、割り込みにより実行を指示された期間を除く期間に、リソースプールの計算機に予約無し処理を実行させる予約無し処理管理手順と、を実行することを特徴とする。【選択図】図２
2007179248.tif 000002
【特許請求の範囲】
【請求項１】
リソースの予約を要しない予約無し処理と、利用者クライアントから実行を指示されたリソースの予約を要する予約有り処理とを実行する計算機を管理する計算機管理方法であって、
コンピュータが、
記憶手段に格納されるリソース管理テーブルにおいて、前記予約有り処理を実行していない前記計算機をリソースプールとして管理するリソース管理手順と、
前記予約有り処理の実行を予約した期間、および、割り込みにより実行を指示された期間を除く期間に、前記リソースプールの前記計算機に前記予約無し処理を実行させる予約無し処理管理手順と、
を実行することを特徴とする計算機管理方法。
【請求項２】
前記リソース管理手順は、前記予約無し処理の実行を中断した計算機、または、新規に追加された計算機を、前記リソースプールに追加することを特徴とする請求項１に記載の計算機管理方法。
【請求項３】
前記予約無し処理管理手順は、所定の計算機について、前記予約有り処理の実行を予約した期間に現在の時刻が近づいた場合には、前記所定の計算機で動作している予約無し処理を終了し、その予約無し処理を実行するための予約無し業務プログラムを前記所定の計算機から削除することを特徴とする請求項１または請求項２に記載の計算機管理方法。
【請求項４】
前記予約無し処理管理手順は、前記計算機に前記予約無し処理を実行させるか否かを確認する画面を表示手段に表示することを特徴とする請求項１ないし請求項３のいずれか１項に記載の計算機管理方法。
【請求項５】
前記予約無し処理管理手順は、前記計算機が前記予約無し処理を実行した旨のログを記憶手段に記録することを特徴とする請求項１ないし請求項４のいずれか１項に記載の計算機管理方法。
【請求項６】
コンピュータが、前記予約無し処理を実行中の所定の計算機に関する障害を検知した場合、前記所定の計算機が実行するように予約された前記予約有り処理を、前記所定の計算機とは別の計算機に割り当てるように予約を変更する予約有り処理管理手順を実行することを特徴とする請求項１ないし請求項５のいずれか１項に記載の計算機管理方法。
【請求項７】
請求項１ないし請求項６のいずれか１項に記載の計算機管理方法を、コンピュータに実行させるための計算機管理プログラム。
【請求項８】
リソースの予約を要しない予約無し処理と、利用者クライアントから実行を指示されたリソースの予約を要する予約有り処理とを実行する計算機を管理する計算機管理装置であって、
リソース管理テーブルにおいて、前記予約有り処理を実行していない前記計算機をリソースプールとして管理するリソース管理部と、
前記予約有り処理の実行を予約した期間、および、割り込みにより実行を指示された期間を除く期間に、前記リソースプールの前記計算機に前記予約無し処理を実行させる予約無し処理管理部と、
を有することを特徴とする計算機管理装置。
【発明の詳細な説明】
【技術分野】
【０００１】
本発明は、計算機管理方法、計算機管理プログラム、および、計算機管理装置に関する技術である。
【背景技術】
【０００２】
従来、未使用の計算機リソースをプール化して管理し、利用時間の異なる複数の業務で計算機リソースを共用するシステムが実現されている（特許文献１）。このような従来技術において、計算機リソースを利用した業務を行う場合には、あらかじめ利用する時間帯に空いている計算機リソースを予約確保するのが一般的である。また、緊急の業務が発生したときには、必ずしも予約する必要はなく割り込みによって業務を計算機リソースに実行させてもよい。
【０００３】
このように、予約や割り込みなどにより、業務の依頼者が計算機リソースに対して業務の実行を明示的に指示するような業務を、予約有り業務と定義する。予約有り業務は、例えば、通常の一般業務である。従来は、あらゆる業務は、予約有り業務として明示的に指定する必要があった。
【特許文献１】特開２００１−３３１３３２号公報
【発明の開示】
【発明が解決しようとする課題】
【０００４】
しかし、従来の技術における予約有り業務をもとにした計算機リソースの管理方法では、計算機リソースの利用効率を充分に高めることはできなかった。
【０００５】
特に処理期限が定められていることがないような予約無し業務も、計算機リソースの使用対象として存在する。予約無し業務は、予約有り業務とは異なり、業務の依頼者が計算機リソースに対して業務の実行を明示的に指示することはない。予約無し業務は、例えば、複数の計算機リソースを使って並列に処理することが可能な科学計算が挙げられる。
【０００６】
但し、予約無し業務を無条件に計算機リソースに割り当てる方式は、採用できない。通常、計算機リソースは、一度割り当てられた予約無し業務を最後まで実行する。よって、予約無し業務の実行中に予約有り業務の実行が割り込みまたは予約により指示されたときには、計算機リソースは、予約無し業務の実行を終えた後に、予約有り業務の実行を開始する。しかし、このようにすると、予約有り業務の依頼者は、予約有り業務を割り当てる計算機リソースを利用したいときに利用できなくなり、サービスを充分に受けることができない。よって、予約無し業務によって、予約有り業務の実行を妨げることがあってはならない。
【０００７】
そこで本発明は、前記した課題を解決し、予約有り業務の実行を妨げることなく、計算機リソースの利用効率を充分に高めることを主な目的とする。
【課題を解決するための手段】
【０００８】
前記課題を解決するために、本発明は、利用者クライアントから実行を指示された予約有り処理を実行する計算機を管理する計算機管理方法であって、コンピュータが、記憶手段に格納されるリソース管理テーブルにおいて、前記予約有り処理を実行していない前記計算機をリソースプールとして管理するリソース管理手順と、前記予約有り処理の実行を予約した期間、および、割り込みにより実行を指示された期間を除く期間に、前記リソースプールの前記計算機に予約無し処理を実行させる予約無し処理管理手順と、を実行することを特徴とする。その他の手段は、後記する。
【発明の効果】
【０００９】
本発明によれば、予約有り業務で計算機リソースが必要となった場合には、リソースプールから計算機リソースを確保して利用するという形態を残したまま、その時点で利用できる計算機リソースつまり、未使用の計算機リソースを最大限使用して、予約無し業務の処理多重度を上げることができる。また、予約有り業務が使用していない計算機リソースの障害を、予約有り業務が利用を開始する時刻より以前に検知することができる。その結果、予約有り業務の実行を妨げることなく、計算機リソースの利用効率を充分に高めることができる。
【発明を実施するための最良の形態】
【００１０】
以下、本発明を実施するための最良の形態を図面に基づいて詳細に説明する。
【００１１】
図１は、業務処理システムを示す構成図である。
【００１２】
計算機センタ１０３には、業務処理サーバＡ１０５、業務処理サーバＢ１０６、業務処理サーバＣ１０７、業務処理サーバＤ１０８、業務処理サーバＥ１０９と、管理装置１１０が存在する。なお、図１では、５台の業務処理サーバの内で、業務処理サーバＣ１０７のみが予約有り業務を実行中であり、残る４台の業務処理サーバは予約有り業務を実行していない。なお、予約有り業務を実行していない各業務処理サーバは、リソースプールにプールされているともいえる。
【００１３】
図２は、管理装置１１０および業務処理サーバを示す構成図である。図２（ａ）の管理装置１１０は、主記憶装置１１１、ＣＰＵ１１２、通信管理１２２を有し、図示を省略したバスで接続されている。管理装置１１０は、業務処理サーバの予約スケジュールを管理し、予約された期間に指定された業務を実行するという制御を行っている。また、実行している業務の状態を監視し、負荷が増大した場合には未使用のリソースを追加したり、障害を検知した場合には、未使用のリソースと交換したりといった制御を行っている。
【００１４】
管理装置１１０の主記憶装置１１１には、予約有り業務管理１１３、リソース管理１１４、予約無し業務管理１１５、リソース管理テーブル１１６、予約有り業務プログラム１１７、予約無し業務プログラム１１８、予約無し業務処理データ１１９、および、予約無し業務処理結果１２０が存在する。なお、予約有り業務管理１１３、リソース管理１１４、および、予約無し業務管理１１５は、例えば、ＣＰＵによって実行されるプログラムモジュールである。以下、管理装置１１０の動作の概要を順に説明することにより、管理装置１１０の各構成要素を明らかにする。
【００１５】
リソース管理１１４は、計算機センタ１０３に存在する業務処理サーバの利用状況や予約状況について、リソース管理テーブル１１６を使って管理している。例えば、リソース管理１１４は、負荷増大に伴う計算機リソースの追加や、障害に伴う代替計算機リソースの割当てなどを行う。予約有り業務管理１１３は、予約された時刻に到達した場合、リソース管理１１４を使って予約していた業務処理サーバに対して、予約有り業務プログラム１１７をデプロイして業務を開始する。
【００１６】
予約無し業務管理１１５は、予約無し業務実行するための予約無し業務プログラム１１８を業務処理サーバに実行させる。なお、予約無し業務の実行手法は、例えば、文献（特開２００４−３０２７４１号公報）に記載されている、科学技術計算を複数の計算機リソースで実行するものが挙げられる。予約無し業務を実行するにあたり、リソース管理１１４に現時点で未使用の業務処理サーバを問い合わせる。予約無し業務管理１１５は、リソース管理１１４に確認した未使用の業務処理サーバに対して、予約無し業務プログラム１１８をコピーした後、予約無し業務処理データ１１９の処理データを投入する。各業務処理サーバの処理結果は、予約無し業務処理結果１２０に集める。
【００１７】
予約有り業務管理１１３は、利用者クライアント１０１からのアクセスが増大し、予約有り業務プログラム１１７の負荷が増大した場合、未使用のリソース（予約無し業務管理１１５が使用しているリソース）をリソースプールから取り出し、取り出したリソースである業務処理サーバ上で業務Ａを実行することで高負荷への対応を行う。このような場合、予約無し業務管理１１５は当該業務処理サーバで障害が発生したのと同様と考え、仕掛中であった処理を別の業務処理サーバで実行する。
【００１８】
予約無し業務管理１１５は、業務処理サーバの予約時刻が近づいた場合（例えば、現在の時刻と予約時刻との差分が所定値以下となる場合）、予約無し業務データの投入を停止し、投入する予定であったデータは他の業務処理サーバに投入する。逆に、業務Ａが終了して業務処理サーバがリソースプールに戻った場合、予約無し業務管理１１５は、当該業務サーバに予約無し業務プログラム１１８をコピーして、予約無し業務データの投入を開始する。
【００１９】
図２（ｂ）の業務処理サーバＣ１０７では、予約有り業務プログラム１１７が動作している。予約有り業務プログラム１１７は、利用者クライアント１０１からのリクエストについて、ネットワーク１０２を介して受信して処理を行っている。図２（ｃ）の業務処理サーバＡ１０５では、予約無し業務プログラム１１８が動作している。管理装置１１０は、予約有り業務プログラム１１７および予約無し業務プログラム１１８を各業務管理サーバにデプロイする。
【００２０】
図３は、計算機リソースの利用状況の一例を示す説明図である。図３は、５台の業務処理サーバの予約状況の例を示している。まず、時刻ｔ１において、図１に示すように、５台中１台の業務処理サーバが予約有り業務プログラム１１７を動作させている。次に、時刻ｔ２から時刻ｔ３までの期間に、業務処理サーバＡ１０５、業務処理サーバＢ１０６には予約有り業務Ｂに関する予約が入っている。また、時刻ｔ２から時刻ｔ５までの期間に、業務処理サーバＤ１０８にも予約有り業務Ｃに関する予約が入っており、時刻ｔ３から時刻ｔ５までの期間に、業務処理サーバＥ１０９にも予約有り業務Ｄに関する予約が入っていることを示している。
【００２１】
図３の予約スケジュールに沿った業務処理の実行の一例を説明する。まず、時刻ｔ１において、予約の入っていない各業務処理サーバ（業務処理サーバＡ１０５、業務処理サーバＢ１０６、業務処理サーバＤ１０８、および、業務処理サーバＥ１０９）が、予約無し業務を実行する。その後、現在の時刻が時刻ｔ２に近づいた時点で、時刻ｔ２から予約の入っている各業務処理サーバ（業務処理サーバＡ１０５、業務処理サーバＢ１０６、および、業務処理サーバＤ１０８）は、予約に備えて、予約無し業務を終了する。一方、時刻ｔ２から予約の入っていない業務処理サーバＥ１０９は、予約無し業務を続行する。さらに、時刻ｔ３から時刻ｔ４までの期間は、予約の入っていない各業務処理サーバ（業務処理サーバＡ１０５、および、業務処理サーバＢ１０６）が、予約無し業務を実行する。
【００２２】
図４は、リソース管理テーブル１１６を示す構成図である。リソース管理テーブル１１６には、業務処理サーバ名３０１ごとに、予約有り業務の使用状況３０２、次の予約の開始時刻である予約有り業務の利用開始時刻３０３、予約有り業務の利用終了時刻３０４が記録されている。また、リソース管理テーブル１１６には、予約無し業務管理１１５が使用していることを示すフラグである予約無し業務で使用中３０５、予約無し業務管理１１５が障害を検知したことを示す障害検知３０６も記録されている。
【００２３】
図５および図６は、予約無し業務管理１１５を示すフローチャートである。図５の処理が図６の処理をサブルーチンとして呼び出す。
【００２４】
図５は、予約無し業務管理１１５のメイン処理を示すフローチャートである。まず、予約無し業務管理１１５は、リソース管理１１４に未使用の業務処理サーバを確認する（Ｓ４０１）。未使用とは、予約有り業務も予約無し業務も実行していないことを指す。次に、Ｓ４０２からＳ４０５において、未使用の業務処理サーバの数だけ、ループ変数をｉとして以下に説明する処理を繰り返す。予約無し業務管理１１５は、図６に示すｉ番目の業務処理サーバの制御処理を起動し（Ｓ４０３）、その後、一定時間待つ（Ｓ４０４）。なお、Ｓ４０４は省略してもよい。
【００２５】
図６は、予約無し業務管理１１５のサブルーチン処理を示すフローチャートである。まず、予約無し業務管理１１５は、予約無し業務プログラム１１８を業務処理サーバにコピーして（Ｓ５００）、デプロイする。次に、予約無し業務管理１１５は、予約無し業務処理データ１１９から処理するべきデータを取り出す（Ｓ５０１）。
【００２６】
予約無し業務管理１１５は、処理するべきデータである予約無し業務の内容がないときには（Ｓ５０２，Ｙｅｓ）、処理を終了する。予約無し業務管理１１５は、予約無し業務の内容があるときには（Ｓ５０２，Ｎｏ）、予約無し業務を業務処理サーバに投入（Ｓ５０３）、その予約無し業務の処理の終了を待つ（Ｓ５０４）。
【００２７】
なお、Ｓ５０３において予約無し業務の処理を行う業務処理サーバの管理者に対して、予約無し業務の処理を行うことに関する許可を確認させる画面をディスプレイなどの表示手段に表示してもよい。これにより、業務処理サーバの管理者は、管理対象の業務処理サーバが意図しない用途に勝手に使用されることを防ぐことができる。
【００２８】
また、予約無し業務管理１１５は、Ｓ５０３において予約無し業務の処理を業務処理サーバに実行させたときには、その実行に関するログを記憶手段に記録してもよい。このログは、例えば、予約無し業務の処理の依頼者に対する、業務処理サーバの計算機リソースの使用の対価に関する課金処理に使用される。
【００２９】
予約無し業務管理１１５は、Ｓ５０４にて業務処理サーバからの処理結果が届いた場合か、Ｓ５０４の待ち時間を超えた場合にＳ５０５に進み、Ｓ５０３において投入した予約無し業務の処理が正常に終了したか否かを判定する（Ｓ５０５）。
【００３０】
まず、処理が正常に終了している場合は（Ｓ５０５，Ｙｅｓ）、予約無し業務管理１１５は、予約無し業務の処理結果を予約無し業務処理結果１２０に格納する（Ｓ５０６）。その後、予約無し業務管理１１５は、リソース管理テーブル１１６を確認し、現在の時刻が、使用した業務処理サーバについての予約有り業務の利用開始時刻３０３のｎ分前になったかを判定する（Ｓ５０７）。利用開始時刻が近づいている場合は（Ｓ５０７，Ｙｅｓ）、予約無し業務管理１１５は、業務処理サーバ上の予約無し業務プログラム１１８を削除して（Ｓ５１３）、処理を終了する。利用開始時刻が近づいていないときには（Ｓ５０７，Ｎｏ）、Ｓ５０１に戻る。
【００３１】
一方、処理が正常に終了していない場合は（Ｓ５０５，Ｎｏ）、失敗した予約無し業務処理のデータを予約無し業務処理データ１１９に再登録する（Ｓ５０８）。これにより、失敗した予約無し業務処理のデータは、他の業務処理サーバにて処理されることになる。
【００３２】
その後、失敗した要因がハード障害であった場合は（Ｓ５０９，Ｙｅｓ）、リソース管理１１４に障害を報告する（Ｓ５１０）。報告を受けたリソース管理１１４は、その報告に関する業務処理サーバを予約している業務について、他の利用可能な業務処理サーバを割当てることになる。つまり、予約時間が始まるより以前に、障害を検知することができるようになる。
【００３３】
失敗した要因がハード障害ではないと判断した場合（Ｓ５０９，Ｎｏ）、予約有り業務管理１１３による予約有り業務の割り込みにより（Ｓ５１１）、業務管理サーバが奪取されたかを判断する。割り込みがあれば（Ｓ５１１，Ｙｅｓ）、それは通常の動作であるため処理を終了する。割り込みがない場合（Ｓ５１１，Ｎｏ）、オペレータコールを発信し（Ｓ５１２）、オペレータに対処を依頼する。
【００３４】
図７は、予約無し業務管理１１５を業務処理サーバ上で動作させる場合の業務処理システム構成を示す構成図である。つまり、図１においては管理装置１１０で動作していた予約無し業務管理１１５を、予約有り業務と同様に業務処理サーバ上で動作させる場合の例を示している。業務処理サーバＥ１０９で予約無し業務管理１１５が動作し、他の未使用の業務処理サーバに予約無し業務を依頼している。これにより、管理装置１１０の負荷を軽減できる点と、予約有り業務管理１１３が予約無し業務を他の予約有り業務と同様の扱いで管理することで、指定された時刻に予約無し業務を開始するといった制御が、予約有り業務管理１１３の機能を利用して容易に実現できる。
【００３５】
以上説明した本実施形態は、以下の特徴を有する。予約無し業務の実行を制御する予約無し業務管理１１５は、リソースプール上の未使用の計算機リソースを利用して予約無し業務を実行する。予約有り業務は、業務で計算機リソースが必要となった場合には、リソースプールから計算機リソースを確保して利用するが、予約無し業務はリソースプールに計算機リソースを登録したままの状態（予約有り業務から見ると未使用の状態のまま）で、計算機リソースを利用することを特徴とする。
【００３６】
予約無し業務管理１１５は、リソースプール上の計算機リソースの予約状況を確認し、予約無し業務で利用している計算機リソースの予約時間が近づいた場合には、予約時間に先立って予約無し業務を終了させる。また予約無し業務管理１１５は、予約有り業務が終了してリソースプールに計算機リソースが戻されたことを確認した場合、当該計算機リソースを利用して予約無し業務の処理多重度を上げる。
【００３７】
以上説明した本実施形態により、未使用の計算機リソースをプール化して管理し、業務で計算機リソースが必要となった場合には、リソースプール上の計算機リソースを予約確保して利用するシステムにおいて、複数の計算機リソースを使って並列に処理することが可能な科学計算等の予約無し業務については、その時点で利用できる計算機リソースつまり、その時点で未使用の計算機リソースを最大限使用して、多重度を上げて短時間に処理をすることができる。その結果、短時間で処理を完了することができる。
【００３８】
また、科学計算等の予約無し業務は、処理の多重度や処理量や計算機リソースの処理能力によって業務の実行時間が大きく変動し、計算機リソースを予約確保することが難しいため、計算機リソースを予約確保せずに利用することを可能とする。
【図面の簡単な説明】
【００３９】
【図１】本発明の一実施形態に関する業務処理システムを示す構成図である。
【図２】本発明の一実施形態に関する管理装置および業務処理サーバを示す構成図である。
【図３】本発明の一実施形態に関する計算機リソースの利用状況の一例を示す説明図である。
【図４】本発明の一実施形態に関するリソース管理テーブルを示す構成図である。
【図５】本発明の一実施形態に関する予約無し業務管理のメイン処理を示すフローチャートである。
【図６】本発明の一実施形態に関する予約無し業務管理のサブルーチン処理を示すフローチャートである。
【図７】本発明の一実施形態に関する予約無し業務管理を業務処理サーバ上で動作させる場合の業務処理システム構成を示す構成図である。
【符号の説明】
【００４０】
１０１  利用者クライアント
１０２  ネットワーク
１０３  計算機センタ
１０５  業務処理サーバＡ
１０６  業務処理サーバＢ
１０７  業務処理サーバＣ
１０８  業務処理サーバＤ
１０９  業務処理サーバＥ
１１０  管理装置
１１１  主記憶装置
１１２  ＣＰＵ
１１３  予約有り業務管理
１１４  リソース管理
１１５  予約無し業務管理
１１６  リソース管理テーブル
１１７  予約有り業務プログラム
１１８  予約無し業務プログラム
１１９  予約無し業務処理データ
１２０  予約無し業務処理結果
１２２  通信管理
【図１】
2007179248.tif 000003
【図２】
2007179248.tif 000004
【図３】
2007179248.tif 000005
【図４】
2007179248.tif 000006
【図５】
2007179248.tif 000007
【図６】
2007179248.tif 000008
【図７】
2007179248.tif 000009