明 細 書
情報処理装置、計算機、リソース割り当て方法及びリソース割り当てプロ グラム
技術分野
[0001] 本発明は、情報処理を実行する情報処理装置と、計算機内を複数のパーティショ ンに分割して、それぞれのパーティションが割り当てられたリソースを使用してデータ 処理を実行する計算機と、その情報処理装置や計算機で実行されるリソース割り当 て方法と、そのリソース割り当て方法の実現に用いられるリソース割り当てプログラムと に関する。
背景技術
[0002] 1つのサーバ装置上に複数の OS (オペレーティングシステム)を稼働できるサーバ 装置が用いられている。
[0003] このようなサーバ装置では複数の CPUが搭載されており、例えば、 OS1が 10台の CPUを使用してメールサーバとしての処理を行い、 OS2が 5台の CPUを使用して業 務用サーバとしての処理を行い、 OS3が 3台の CPUを使用してバッチ用サーバとし ての処理を行うというように、サーバ装置内を複数のパーティションに分割して、それ ぞれのパーティションが割り当てられた CPUなどのリソースを使用してデータ処理を 実行するようにしている。
[0004] 従来、このようなサーバ装置では、管理者が常にサーバ装置のリソースの使用状況 を監視するようにして、その使用状況に応じて、人手によりリソースの分配を変更する ようにしていた。
[0005] また、ある量のリソースをどの業務にも割り当てずにプールしておき、緊急時に、そ のプールしたリソースを、それを必要として 、る業務に割り当てると!、う方法も用いら れているが、この場合にも、リソースを人手により割り当てるようにしている。
[0006] し力しながら、ネットビジネスのような業務では、急激に負荷が増大するというような ことが起こる。このような場合に、人手によりリソースの分配を変更するようにしていると 、その分配の変更を実行する管理者に対して多大な負荷を強いるという問題がある。
[0007] そこで、最近、リソースとして CPUを用いる場合の例で説明するならば、 CPUの使 用率をモニタリングして、そのモニタリングした CPUの使用率がある閾値を超えた場 合に、新たな CPUを組み込むコマンドを発行することで、 CPUの使用率が大きくなる 場合に、新たな CPUを自動的に組み込むようにすると!/、う技術が用いられるようにな つてきた (例えば、特許文献 1参照)。
[0008] なお、本発明の背景技術として、下記の特許文献 2には、サービス受付用コンビュ ータと複数のサーバとを備えるサーバシステムにお 、て、各サーバの提供するサー ビスを時間帯に応じて変更することで、サービス品質の低下を防止できるようにすると いう発明が記載されている。
[0009] また、本発明の背景技術として、下記の特許文献 3には、複数のノードをネットヮー クで接続してクラスタと呼ばれるノード群を構成しておき、処理内容を分割して各ノー ドに割り当てて分散処理するというクラスタリングサービスを実現する方法として、複数 の物理サーバのそれぞれに、ホスティングサービス用仮想サーバとクラスタリングサ 一ビス用仮想サーバとを設けて、各クラスタリングサービス用仮想サーバをネットヮー クを介して接続してクラスタを構成して、 CPU時間スケジューリング機能を用いて、 C PUの余剰時間のみをクラスタリングサービス用仮想サーバに割り当てることで、ホス ティングサービスのパフォーマンスを低下させることなぐクラスタリングサービスを実 現できるようにすると 、う発明が記載されて 、る。
[0010] また、本発明の背景技術として、下記の特許文献 4には、複数の端末から投入され た複数のトランザクション処理メッセージについて、稼働統計情報をもとに、それぞれ の実行に要する CPU使用時間の予測値を算出して、その算出した予測値と複数の サーバの現在の CPU使用率とに基づいて、それらのトランザクション処理メッセージ を複数のサーバに振り分けることで、各サーバの CPU利用効率の平準化を実現する という発明が記載されている。
[0011] また、本発明の背景技術として、下記の特許文献 5には、資源管理サーバが仮想 計算機の資源の使用状態を収集して、それに基づいて資源の使用状態を予測し、ま た、過去の仮想計算機の実行履歴により、各々の仮想計算機の資源の使用状態に ついての相関関係を算出して、その予測値とその相関係数とに基づいて、各々の仮
想計算機の資源割当量を算出することで、資源の割り当ての最適化を実現できるよう にするという発明が記載されている。
特許文献 1 :特開 2003— 150571号公報
特許文献 2:特開 2002— 150000号公報
特許文献 3 :特開 2002— 318862号公報
特許文献 4:特開 2003— 296289号公報
特許文献 5 :特開 2004— 199561号公報
発明の開示
発明が解決しょうとする課題
[0012] し力しながら、管理者がリソースの使用状況を監視するようにして、その使用状況に 応じて、人手により CPUなどのリソースの分配を変更するという従来技術に従ってい ると、リソースの使用状況を常に管理者が監視する必要があるという問題があるととも に、リソースの分配も人手により行わなければならないという問題がある。
[0013] ユーザによるサーバ装置の利用については特定の期間や特定の時間帯に増加し たり減少したりすることが多ぐそのような場合にはリソースの使用状況があら力じめ把 握可能となる力 そのような場合にもリソースの分配を人手により行うということは極め て非効率的である。
[0014] また、 CPUの使用率をモニタリングして、そのモニタリングした CPUの使用率がある 閾値を超えた場合に新たな CPUを自動的に組み込むようにすると!/、う従来技術に従 つていると、ある業務の負荷が高くなつた場合にその業務にリソースが割り当てられる ことになるので、それ以外の業務の負荷が高くなつてもそれらの業務に対してリソース を割り当てることができなくなることが起こるという問題がある。
[0015] 本発明は力かる事情に鑑みてなされたものであって、情報処理装置の処理機能に 対して、処理機能が負荷に合わせた適切な量のリソースを確実に使用できるようにす る新たなリソース割り当て技術の提供を目的とする。
[0016] さらに、計算機内を複数のパーティションに分割して、それぞれのパーティションが 割り当てられたリソースを使用してデータ処理を実行するという構成を採る場合に、リ ソースの使用状況があら力じめ把握可能となる場合が多 、ことを考慮して、リソース量
の割り当てをあら力じめスケジューリングすることで、そのような場合に、人手を介さず に自動的に、各パーティションが負荷に合わせた適切な量のリソースを確実に使用 できるようにする新たなリソース割り当て技術の提供を目的とする。
課題を解決するための手段
[0017] 〔1〕本発明の情報処理装置の構成
〔1 1〕第 1の構成
上記の目的を達成するために、本発明の情報処理装置は、(1)情報処理を実行す る処理部と、(2)計時手段と、(3)時刻に応じて、処理機能に対して割り当てられるべ きリソース量を示す情報を記憶する記憶手段と、(4)計時手段による計時結果に応じ て、記憶手段を参照して当該時刻に割り当てられるべきリソース量を判別し、判別さ れた量のリソースを対応する処理機能に割り当てる制御手段とを備えるように構成す る。
[0018] 〔1 2〕第 2の構成
また、上記の目的を達成するために、本発明の情報処理装置は、(1)それぞれ異 なる処理機能を実行する複数の処理部と、(2)処理部の各々に対して割り当てられる べきリソース量を、時刻に対応付けて記憶する記憶手段と、(3)記憶手段を参照して 、現在時刻にある処理部に対して割り当てられるべき量のリソースを割り当てる制御 手段とを備えるように構成する。
[0019] この構成をとるときにあって、記憶手段は、各々の処理部に対して割り当てられるべ きリソース量を時間帯ごとに記憶することがある。
[0020] また、本発明の情報処理装置は、少なくとも複数の処理部を有する第一の装置と、 第一の装置に接続される一乃至複数の端末装置とを備えるもので構成されることが ある。
[0021] 〔2〕本発明のリソース割り当て方法の構成
上記の目的を達成するために、本発明のリソース割り当て方法では、情報処理を行 う処理部に対する処理に要するリーソスの割り当てを行うために、(1)処理部に対し て割り当てられるべきリソース量を示したスケジュール情報を参照し、(2)スケジユー ル情報に基づいて、現在時刻に処理部に対して割り当てられるべきリソース量を判別
し、(3)判別された量のリソースを処理部に割り当てるように処理する。
[0022] 本発明のリソース割り当て方法が前記の構成を採る本発明の情報処理装置で動作 することで、本発明の情報処理装置の備える 1つ又は複数の処理機能が負荷に合わ せた適切な量のリソースを確実に使用できるようになる。
[0023] 〔3〕本発明の計算機の構成
上記の目的を達成するために、本発明を具備する計算機は、計算機内を複数のパ ーテイシヨンに分割して、それぞれのパーティションが割り当てられたリソースを使用し てデータ処理を実行するという構成を採るときに、(1)各パーティションに対して、この 期間あるいは時刻についての時間的範囲にはこの量のリソースを割り当てるというこ とについて記述するスケジュール情報を記憶する記憶手段と、(2)記憶手段から、現 在の時刻の属する時間的範囲に対応付けて記憶されているリソース量を取得する取 得手段と、(3)各パーティションが取得手段の取得したリソース量のリソースを使用し てデータ処理を実行するように制御する制御手段とを備えるという構成を採る。
[0024] この構成を採るときにあって、現在の時刻の属する時間的範囲が前回判断したもの 力も変わったの力否かを判断する判断手段を備えることがあり、この判断手段を備え る場合には、取得手段は、この判断手段が時間的範囲の変更を判断する場合に、記 憶手段からリソース量を取得することになる。
[0025] ここで、記憶手段を除いた以上の各処理手段はコンピュータプログラムでも実現で きるものであり、このコンピュータプログラムは、適当なコンピュータ読み取り可能な記 録媒体に記録して提供されたり、ネットワークを介して提供され、本発明を実施する際 にインストールされて CPUなどの制御手段上で動作することにより本発明を実現する ことになる。
[0026] このように構成される本発明を具備する計算機では、記憶手段から、現在の時刻の 属する時間的範囲に対応付けて記憶されているリソース量を取得すると、各パーティ シヨンがその取得したリソース量のリソースを使用してデータ処理を実行するように制 御する。
[0027] すなわち、記憶手段力も取得したリソース量よりも少ないリソース量を使用している パーティションにつ 、ては、その差分量に相当するリソースを新たに割り当てるように
制御し、一方、記憶手段力も取得したリソース量よりも多いリソース量を使用している パーティションについては、その差分量に相当するリソースの割り当てを解除するよう に制御する。
[0028] ここで、この割り当てを解除する場合に、その解除の対象となるリソースが使用され ている場合には、その使用が終えてから、そのリソースの割り当てを解除するように制 御すること〖こなる。
[0029] このようにして、本発明を具備する計算機は、計算機内を複数のパーティションに 分割して、それぞれのパーティションが割り当てられたリソースを使用してデータ処理 を実行すると 、う構成を採る場合に、リソースの使用状況があら力じめ把握可能とな る場合が多いことを考慮して、リソース量の割り当てをあら力じめスケジューリングして 、そのスケジューリングに従って各パーティションに対してリソースを割り当てるように 制御することから、人手を介さずに自動的に、各パーティションが負荷に合わせた適 切な量のリソースを確実に使用できるようになることを実現できることになる。
発明の効果
[0030] 本発明によれば、情報処理装置の備える 1つ又は複数の処理機能が負荷に合わ せた適切な量のリソースを確実に使用できるようになる。
[0031] これから、本発明によれば、 1つ又は複数の処理機能を使って情報を処理する情報 処理装置にぉ 、て、その情報処理を効率的に実行できるようになる。
[0032] また、本発明によれば、計算機内を複数のパーティションに分割して、それぞれの パーティションが割り当てられたリソースを使用してデータ処理を実行するという構成 を採る場合に、人手を介さずに自動的に、各パーティションが負荷に合わせた適切 な量のリソースを確実に使用できるようになる。
[0033] これから、本発明によれば、計算機内を複数のパーティションに分割して、それぞ れのパーティションが割り当てられたリソースを使用してデータ処理を実行するという 構成を採る場合に、それらのデータ処理を効率的に実行できるようになる。
図面の簡単な説明
[0034] [図 1]本発明のサーバ装置の一実施形態例である。
[図 2]スケジュール情報テーブルの管理するスケジュール情報の一例である。
[図 3]スケジュール情報テーブルの管理するスケジュール情報の説明図である。
[図 4]スケジュール情報作成部の実行する処理フローの一例である。
[図 5]スケジュール情報作成部の実行する処理フローの一例である。
[図 6]設定反映部の実行する処理フローの一例である。
[図 7]設定反映部の実行する処理フローの一例である。
[図 8]スケジュール情報作成画面の説明図である。
圆 9]OS選択画面の説明図である。
[図 10]CPU数設定画面の説明図である。
[図 11]CPU数設定終了画面の説明図である。
[図 12]設定反映部の実行する処理フローの他の一例である。
[図 13]設定反映部の実行する処理フローの他の一例である。
圆 14]本発明のサーバ装置の他の実施形態例である。
[図 15]設定反映部の実行する処理フローの他の一例である。
[図 16]設定反映部の実行する処理フローの他の一例である。
符号の説明
1 サーバ装置
2 サーバ管理装置
3 ネットワーク
4 ネットワーク
5 ユーザ端末
10 パーティション
11 システムボード
12 サービスプロセッサ
20 スケジュール情報作成部
21 スケジュール情報送信部
100 オペレーティングシステム
101 アプリケーションプログラム
102 設定反映部
103 時間帯定義情報記憶部
104 前回時間帯情報記憶部
120 スケジュール情報テーブル
121 スケジュール情報登録部
発明を実施するための最良の形態
[0036] 以下、実施の形態に従って本発明を詳細に説明する。
[0037] 図 1に、本発明のサーバ装置 1の一実施形態例を図示する。
[0038] この図に示すように、本実施形態のサーバ装置 1は、自装置の管理を行うサーバ管 理装置 2とネットワーク 3を介して接続されており、ネットワーク 4を介して接続されるュ 一ザ端末 5に対して、例えば、メールサーバとしての機能'業務用サーバとしての機 能'バッチ用サーバとしての機能というように、複数のサーバ機能を提供する処理を 行う。
[0039] 本実施形態のサーバ装置 1は、これらのサーバ機能の提供を実現するために、各 サーバ機能を実現するために備えるオペレーティングシステム 100-i (i= l〜3)及び アプリケーションプログラム 101-i (i= l〜3)に従って、装置内が複数のパーティショ ン 10- i (i= l〜3)に分割されたものであり、各パーティション 10- iは、各々に割り当て られた CPUをノヽードウエア資源として使用して、自パーティション 10-iに展開される オペレーティングシステム 100- i (i= 1〜3)とアプリケーションプログラム 101- i (i= 1 〜3)とに従って所定のサーバ機能を実行することになる。
[0040] ここで、図中に示す114 (1= 1〜4)は本実施形態のサーバ装置1が備ぇるシステム ボードであり、各オペレーティングシステム 100-iに割り当てられる CPU (図中の丸印 で示すもの)及びメモリを実装する。また、 12は本実施形態のサーバ装置 1が備える サービスプロセッサであり、サーバ管理装置 2と連携して、本実施形態のサーバ装置 1の管理を行う。
[0041] このように構成されるときにあって、本実施形態のサーバ装置 1で本実施形態を実 現するために、サービスプロセッサ 12は、各オペレーティングシステム 100-iに割り当 てられる CPUの数についてのスケジュール情報を管理するスケジュール情報テープ ル 120と、サーバ管理装置 2から送信されてくるスケジュール情報を受信してスケジュ
ール情報テーブル 120に登録するスケジュール情報登録部 121とを備える。一方、 各パーティション 10-iは、スケジュール情報テーブル 120の管理するスケジュール情 報に従って、自パーティション 10-iで使用する CPUの数を設定する設定反映部 102 - i (i= l〜3)を備える。
[0042] そして、サーバ管理装置 2は、本実施形態のサーバ装置 1の管理を実行するため に、スケジュール情報テーブル 120に登録するスケジュール情報を作成するスケジュ ール情報作成部 20と、スケジュール情報作成部 20が作成したスケジュール情報を サービスプロセッサ 12に送信して、スケジュール情報をスケジュール情報テーブル 1 20に登録するスケジュール情報送信部 21とを備える。
[0043] 図 2に、スケジュール情報テーブル 120が管理するスケジュール情報の一例を図示 する。
[0044] 図 2に示すように、スケジュール情報テーブル 120は、設定された各時間帯に対応 付けて、その時間帯において、各オペレーティングシステム 100-iに割り当てられる C PUの数と、各オペレーティングシステム 100-iには割り当てられな!/ヽでプールされる ことになる CPUの数とを管理する情報を記憶する。
[0045] 図 2に示すスケジュール情報の例では、本実施形態のサーバ装置 1がメールサー ノ (OS1)と業務用サーバ(OS2)とバッチ用サーバ(OS3)という 3つのパーティショ ンで構成されている。また、サーバ装置 1全体で 24個の CPUを持つ場合に、 メールサーバ(OS1) AM9時〜 AM10時 : 高負荷 10CPU
PM12時〜 PM3時 : 高負荷 8CPU
それ以外 : 低負荷 5CPU
業務用サーバ(OS2) AM10時〜 PM5時 : 高負荷 10CPU
それ以外 : 低負荷 6CPU
バッチ用サーバ(OS3) AMI時〜 AM3時 : 高負荷 10CPU
それ以外 : 低負荷 2CPU
t 、う CPUの割り当てを行うことを想定して!/、る。
[0046] すなわち、ある機能について高負荷が予想される時間帯については、その機能に 対して CPUを多く割り当てることで、その高負荷となる機能に対応しているオペレー
ティングシステム 100-iの負荷を低減するように CPU数をスケジューリングする。一方 、ある機能について低負荷が予想される時間帯については、その機能に対する CP Uの割当数を少なくすることで、他の高負荷のオペレーティングシステム 100-iに対し てより多くの CPUを割り当てることが可能になるように CPU数をスケジューリングする のである。
[0047] ここで、ある時間帯にオペレーティングシステム 100-iが高負荷であるの力低負荷 であるのかということは、その時間帯における CPUの使用率などを使って判断するこ とが可能である。
[0048] また、図 2に示すスケジュール情報の例では、 1時間を単位として時間帯が設定さ れているが、例えば 40分というように、任意の時間を単位として時間帯を設定するこ とも可能である。また、図 2に示すスケジュール情報の例では、 3つのオペレーティン グシステム 100-iに共通となる時間帯が設定されることが想定されているが、各機能 Zオペレーティングシステム 100-i毎に別々の時間帯'別々の時間の区切りを設定 することも可會である。
[0049] 図 3は、図 2に示されたスケジュールを、時刻を横軸に、割り当てられる CPU数を縦 軸に示した図面である。各時間帯に割り当てられる、あるいは割り当てられるべき CP U数は、図 3のような形式で表示することで容易に認識できるようになる。
[0050] このように、スケジュール情報テーブル 120は、各オペレーティングシステム 100- i に対して、どの時間帯にはどの位の数の CPUを割り当てるということについて記述す るスケジュール情報を管理するのである。
[0051] 図 4及び図 5に、サーバ管理装置 2が備えるスケジュール情報作成部 20が実行す る処理フローの一例を図示し、図 6及び図 7に、サーバ装置 1が備える設定反映部 10 24が実行する処理フローの一例を図示する。
[0052] 次に、これらの処理フローに従って、図 1に図示される本実施形態のサーバ装置 1 の実行する処理について詳細に説明する。
[0053] 最初に、図 4及び図 5の処理フローに従って、サーバ管理装置 2が備えるスケジュ ール情報作成部 20が実行する処理について説明する。
[0054] サーバ管理装置 2が備えるスケジュール情報作成部 20は、サーバ管理装置 2を操
作する管理者力もスケジュール情報テーブル 120に登録されるスケジュール情報の 作成要求があると、先ずステップ 10で、スケジュール情報テーブル 120から現在管 理されているスケジュール情報を読み込む。読み込まれたスケジュール情報は、必 要に応じて図 1で図示省略されたディスプレイに、グラフ表示などの形態で表示され る。
[0055] 図 8は、ディスプレイ上に表示されるスケジュール情報作成画面の例を示す図面で ある。すなわち、スケジュール情報作成部 20は、ディスプレイに図 8に示すようなスケ ジュール情報作成画面を表示して、そこに、スケジュール情報テーブル 120から読み 込んだスケジュール情報をグラフ形式の表示形態でもって表示するのである。図 8の スケジュール情報作成画面に表示されるグラフは、スケジュール情報作成画面を用 V、て作成されたスケジュール情報を、時刻と CPU数とを対応付けて表示するもので あり、図 2に図示されたグラフと同等のものである。
[0056] ここで、図 8に示すスケジュール情報作成画面は、オペレーティングシステム 100-i の選択要求の際に操作される OS選択ボタンと、オペレーティングシステム 100-iに割 り当てる CPU数の設定要求の際に操作される CPU数設定ボタンとを有している。
[0057] また、図 8に示すスケジュール情報作成画面では、オペレーティングシステム 100-i に割り当てられな!/、CPUの数(プールされて!/、る CPUの数)につ!/、てグラフ表示しな Vヽ例を示して 、るが、この CPU数につ!、てもグラフ表示をすることは可能である。
[0058] 続!、て、ステップ 11で、スケジュール情報作成画面に表示された OS選択ボタンが 操作されたのカゝ否かを検出する。 OS選択ボタンが操作されたと判別された場合には オペレーティングシステム 100-iの選択要求が発行されるため、スケジュール情報作 成部 20はオペレーティングシステム 100-iの選択要求が発行されるのを待つ。オペ レーティングシステム 100-iの選択要求が発行されると、ステップ 12に進んで、ォペレ 一ティングシステム 100-iの選択に用いる OS選択画面を表示して、それに対する入 力を受け付けることで処理対象のオペレーティングシステム 100-iを選択する。
[0059] すなわち、図 9に示すように、オペレーティングシステム 100-iの選択に用いる OS 選択画面を表示して、それに対する入力を受け付けることで処理対象のオペレーテ イングシステム 100-iを選択するのである。 OS選択画面では、選択対象となる OSが
一覧表示されるので、オペレータは選択すべき OSを画面上で指示し、選択ボタンを 操作する。
[0060] 続 、て、 OSが選択された後、ステップ 13で、スケジュール情報作成画面に表示さ れた CPU数設定ボタンが操作されたのか否かを検出する。 CPU数設定ボタンが操 作された場合には、 CPU数設定要求が発行される。スケジュール情報作成部 20は 処理対象のオペレーティングシステム 100-iに対する CPU数の設定要求が発行され るのを待って、 CPU数の設定要求が発行されると、ステップ 14に進んで、 CPU数の 設定に用いる CPU数設定画面を表示する。そして、 CPU数設定画面力 の入力を 受け付けることで、処理対象のオペレーティングシステム 100-iについての時間帯と CPU数との対応関係を入力する。スケジュール情報作成部 20は、入力した対応関 係の設定要求がある場合には、その設定要求に応答してスケジュール情報テーブル
120から読み込んだスケジュール情報を更新する。
[0061] 図 10は、 CPU数設定画面の表示例を示す図面である。すなわち、図 10に示すよう に、スケジュール情報作成部 20は、処理対象のオペレーティングシステム 100-iに対 する CPU数の設定に用いる CPU数設定画面を表示して、それに対する入力を受け 付ける。 CPU数設定画面には時間帯を設定するための入力欄と、設定されるべき C PU数が入力される入力欄を有する。オペレータは、処理対象のオペレーティングシ ステム 100-iについての時間帯と CPU数との対応関係をこれらの入力欄力も入力し て、 CPU数設定画面に表示される設定ボタンを操作する。スケジュール情報作成部 20は、設定ボタンの操作をオペレータが入力した対応関係の設定要求とみなし、そ の設定要求に応答してスケジュール情報テーブル 120から読み込んだスケジュール 情報を、入力された情報に更新するのである。
[0062] 続 、て、ステップ 15で、スケジュール情報作成部 20は CPU数設定画面に表示さ れる終了ボタンが操作された力否力、つまり CPU数設定の終了要求が発行されたの か否かを判断する。終了ボタンが操作されない場合、すなわち、 CPU数設定画面の 持つ設定ボタンが操作された場合には、ステップ 14に処理を戻し、スケジュール情 報の更新を続行していく。
[0063] 一方、スケジュール情報作成部 20は、ステップ 15で、 CPU数設定画面の持つ終
了ボタンが操作され、 CPU数設定の終了要求が発行されたことを検出すると、ステツ プ 16に進んで、処理継続要求の受け付け、あるいは処理終了要求の受け付けに用 V、る CPU数設定終了画面を表示し、それに対する入力を受け付けることで処理継続 の要求があるのか、処理終了の要求があるのかを判断する。
[0064] 図 11は、画面に表示される CPU数設定終了画面の例を示す図面である。図 11に 示すように、処理継続要求を受け付けるのか処理終了要求を受け付けるのかに用い る CPU数設定終了画面が表示され、それに対する入力を受け付けることで処理継続 の要求があるのか、処理終了の要求があるのかをスケジュール情報作成部 20は判 断するのである。
[0065] このステップ 16の判断処理に従って、処理継続の要求が発行されたと判断したとき には、スケジュール情報作成部 20はステップ 11に戻っていくことで、スケジュール情 報の更新を続行していく。
[0066] 一方、ステップ 16の判断処理に従って、処理終了の要求が発行されたと判断したと きには、スケジュール情報作成部 20はステップ 17に進んで、スケジュール情報作成 画面にグラフ表示するために用いられるスケジュール情報をステップ 14の処理で更 新したものに変更し、新たに作成されたスケジュール情報をグラフ表示する処理を行
[0067] 続、て、ステップ 18で、スケジュール情報作成部 20は各時間帯毎に各オペレーテ イングシステム 100-iに割り当てた CPU数の総和を求めて、それがシステムボード 11 に実装される CPU数の総和よりも小さ 、か否かを判断する。スケジュール情報作成 部 20は、この判断によりプールする CPUを持たない時間帯があるのかを調べる。
[0068] 続いて、ステップ 19で、スケジュール情報作成部 20は、ステップ 18の処理に従つ て、プールする CPUを持たな 、時間帯があることが検出された力否かを判断する。 プールする CPUを持たな 、時間帯があると判断したときには、ステップ 20に進んで、 スケジュール情報作成画面にグラフ表示したスケジュール情報につ 、て、プールす る CPUがない時間帯を明示表示してから、ステップ 11に戻る。これにより、スケジュ ール情報を作成する管理者に対して、プールする CPUを持たな 、時間帯がなくなる ように CPU数を再設定することを指示する。
[0069] 一方、ステップ 19で、ステップ 18の処理に従って、プールする CPUを持たない時 間帯がないと判断したときには、ステップ 21に進んで、スケジュール情報作成部 20 はスケジュール情報送信部 21に対して、新たに作成したスケジュール情報の送信を 指示して、処理を終了する。
[0070] この送信指示を受けて、スケジュール情報送信部 21は、送信指示のあるスケジュ ール情報をサービスプロセッサ 12に送信する。このスケジュール情報の送信を受け て、サービスプロセッサ 12が備えるスケジュール情報登録部 121は、スケジュール情 報送信部 21から送信されてくるスケジュール情報を受信してスケジュール情報テー ブノレ 120に登録する。
[0071] このようにして、スケジュール情報テーブル 120には、図 2に示すようなスケジュール 情報が登録されることになるのである。
[0072] 次に、図 6及び図 7の処理フローに従って、サーバ装置 1が備える設定反映部 102
4が実行する処理にっ 、て説明する。
[0073] 設定反映部 102-iは、例えば 5分周期に設定される制御周期に到達することで起 動されると、先ずステップ 30で、図示しない時計を参照することで現在時刻を取得し
、続くステップ 31で、スケジュール情報テーブル 120からスケジュール情報を読み込 む。
[0074] 続 、て、ステップ 32で、読み込んだスケジュール情報に従って、現在時刻の属する 時間帯に割り当てられている自オペレーティングシステム 100-i (自分の属するパー テイシヨン 10-iに展開されているオペレーティングシステム 100-i)の設定 CPU数を 取り出し、続くステップ 33で、自オペレーティングシステム 100-iが現在使用している CPU数を取得する。
[0075] 続 、て、ステップ 34で、取り出した設定 CPU数と取得した使用 CPU数とを比較し、 続くステップ 35で、その比較結果に基づいて、設定 CPU数と使用 CPU数とが同じ値 であるか否か、言い換えれば設定 CPU数の方が使用 CPU数よりも大きいの力 ある いは設定 CPU数の方が使用 CPU数よりも小さ 、のかを判断する。
[0076] このステップ 35の判断処理に従って、設定 CPU数と使用 CPU数とが同じ値である という比較結果が得られたときには、設定反映部 102-iは何も処理を行わずに、処理
を終了する。
[0077] 一方、ステップ 35の判断処理に従って、設定 CPU数の方が使用 CPU数よりも大き いという比較結果が得られたときには、設定反映部 102-iはステップ 36に進んで、 C PU組み込みコマンド(オペレーティングシステム 100-iに装備されて!、るコマンドであ る)を発行することで、プールしてある CPUの中から、設定 CPU数と使用 CPU数との 差分に相当する数の CPUを自オペレーティングシステム 100-iに組み込んで (割り 当てて)、処理を終了する。
[0078] 一方、ステップ 35の判断処理に従って、設定 CPU数の方が使用 CPU数よりも小さ いときには、設定反映部 102-iはステップ 37に進んで、自オペレーティングシステム 1 00-iに割り当てられて ヽる CPU上でジョブが実行されて ヽるの力否かを判断する。
[0079] このステップ 37の判断処理に従って、 CPU上でジョブが実行されていないと判断し たときには、使用 CPU数と設定 CPU数との差分に相当する数の CPUを切り離すこと が可能であるので、ステップ 41に進んで、 CPU切り離しコマンド (オペレーティングシ ステム 100- iに装備されて 、るコマンドである)を発行することで、自オペレーティング システム 100-i力も使用 CPU数と設定 CPU数との差分に相当する数の CPUを切り 離し、それをプールに蓄積して、処理を終了する。
[0080] 一方、ステップ 37の判断処理に従って、 CPU上でジョブが実行されていると判断し たときには、設定反映部 102-iはステップ 38に進んで、ジョブの実行を終了した CPU があるカゝ否かを判断する。
[0081] このステップ 38の判断処理に従って、ジョブの実行を終了した CPUがあるときは、 設定反映部 102-iはステップ 39に進んで、使用 CPU数と設定 CPU数との差分に相 当する数の CPUを切り離すまで、 CPU切り離しコマンドを発行することにより、自ォ ペレ一ティングシステム 100-iからジョブを実行して!/、な!/、CPUを切り離して、それを プールに蓄積する。
[0082] そして、ステップ 40で、使用 CPU数と設定 CPU数との差分に相当する数の CPU を切り離したか否かを判断して、まだその数分切り離していないときには、ステップ 38 に戻って、ジョブの実行を終了する CPUが発生するのを待つ。一方、使用 CPU数と 設定 CPU数との差分に相当する数の CPUを切り離したときには、設定反映部 102-i
は処理を終了する。
[0083] このようにして、本実施形態では、サーバ装置 1内で複数のオペレーティングシステ ム 100-iが稼働することで複数のサーバ機能を提供する場合に、それぞれのォペレ 一ティングシステム 100-iの使用する CPUの数の割り当てをあらかじめスケジユーリン グしておいて、そのスケジューリングに従って各オペレーティングシステム 100-iに対 して CPUを割り当てるように制御するのである。
[0084] 各オペレーティングシステム 100-iの負荷の時間的な変動については、あらかじめ 把握可能であることが多いので、この本実施形態の構成に従って、人手を介さずに 自動的に、各オペレーティングシステム 100-iが負荷に合わせた適切な数の CPUを 使用できること〖こなる。
[0085] 図 12及び図 13に、設定反映部 102-iが実行する処理フローの他の一例を図示す る。ここで、図 6及び図 7の処理フローと同じ処理を実行するステップについては、同 じステップ番号で記述してある。
[0086] 図 6及び図 7の処理フローを実行する場合、設定反映部 102-iは、ステップ 30で現 在時刻を取得すると、直ちに、ステップ 31に進んで、スケジュール情報テーブル 120 からスケジュール情報を読み込むようにして 、る。
[0087] これに対して、図 12及び図 13の処理フローを実行する場合、設定反映部 102-iは
、ステップ 30で現在時刻を取得すると、続くステップ 100で、前回の制御周期に処理 した時間帯力も時間帯が変更になったの力否かを判断して、時間帯が変更になった 場合にのみステップ 31に進んで、スケジュール情報テーブル 120からスケジュール 情報を読み込むようにする。
[0088] 例えば、 1時間毎に時間帯を設定するという規約を設ける場合には、現在時刻を見 るだけで、前回の制御周期に処理した時間帯から時間帯が変更になったの力否かを 判断することが可能である。
[0089] この場合、時間帯が変更になっていなければ設定 CPU数に変更はないので、ステ ップ 31以降の処理に進む必要はない。
[0090] そこで、図 12及び図 13の処理フローを実行する場合、設定反映部 102-iは、ステ ップ 30で現在時刻を取得すると、続くステップ 100で、前回の制御周期に処理した
時間帯から時間帯が変更になったの力否かを判断して、時間帯が変更になっていな いと判断したときには、ステップ 31以降の処理に進むことなぐ直ちに処理を終了す るように処理するのである。
[0091] この図 12及び図 13の処理フローを実行することで、設定反映部 102-iは、無駄な 処理を実行しなくても済むようになる。
[0092] 一方、 1時間毎に時間帯を設定するというような規約を設けるのではなくて、スケジ ユール情報を作成する管理者に対して自由に時間帯を設定することを許可する場合 には、現在時刻を見ただけでは、前回の制御周期に処理した時間帯から時間帯が 変更になったの力否かを判断することができない。
[0093] このような場合には、図 14に示すように、各パーティション 10-iは、スケジュール情 報テーブル 120の管理するスケジュール情報で定義される時間帯についての情報を コピーして記憶する時間帯定義情報記憶部 103-i (i= l〜3)と、前回の制御周期に 処理した時間帯についての情報を記憶する前回時間帯情報記憶部 104-i (i= l〜3
)とを備えるようにする。
[0094] そして、サーバ装置 1の備える設定反映部 102-iは、図 15及び図 16の処理フロー を実行するようにする。ここで、図 6及び図 7の処理フローと同じ処理を実行するステ ップにつ 、ては、同じステップ番号で記述してある。
[0095] すなわち、スケジュール情報を作成する管理者に対して自由に時間帯を設定する ことを許可する場合には、設定反映部 102-iは、図 15及び図 16の処理フローに示す ように、ステップ 30で現在時刻を取得すると、それに続けて、ステップ 200で、前回時 間帯情報記憶部 104-iから、前回の制御周期に処理した時間帯の情報を取得する。 それに続けて、ステップ 201で、時間帯定義情報記憶部 103-iを参照することで、現 在時刻の属する時間帯を特定する。
[0096] 続!、て、ステップ 202で、ステップ 200で取得した時間帯の情報とステップ 201で特 定した時間帯の情報とに基づいて、前回の制御周期に処理した時間帯から時間帯 が変更になったの力否かを判断して、時間帯が変更になった場合にのみステップ 31 に進んで、スケジュール情報テーブル 120からスケジュール情報を読み込むようにす る。
[0097] そして、処理を終了する前に、ステップ 203で、前回時間帯情報記憶部 104-iに対 して、今回の制御周期に処理した時間帯の情報 (ステップ 201で特定した時間帯の 情報)を記録してから、処理を終了する。
[0098] このようにして、スケジュール情報を作成する管理者に対して自由に時間帯を設定 することを許可する場合には、設定反映部 102-iは、図 15及び図 16の処理フローを 実行することで、前回の制御周期に処理した時間帯から時間帯が変更になったのか 否かを判断して、時間帯が変更になっていない場合には、ステップ 31以降の処理に 進むことなく、直ちに処理を終了するように処理するのである。
[0099] この図 15及び図 16の処理フローを実行することで、設定反映部 102-iは、無駄な 処理を実行しなくても済むようになる。
[0100] 図示実施形態に従って説明したが、本発明はこれに限定されるものではない。例え ば、本発明は 1つ又は複数の処理機能を使って情報を処理するという構成を採る情 報処理装置を適用対象として、その処理機能へのリソースの割り当てを上述したよう な形態でスケジューリングすることで実現する場合にも、そのまま適用できるものであ る。
[0101] また、上記説明した実施形態では、サーバ装置への適用を具体例にして説明した
1S 本発明はサーバ装置にのみその適用が可能となるものではなくて、一般的な計 算機に対してもそのまま適用できるものである。
[0102] また、上記説明した実施形態では、サーバ装置とサーバ管理装置とに機能を分離 した形態について説明したが、これら装置で実行された機能'処理は本質的には分 離している必要はなぐ上記説明した処理のすべてが単一の装置で完結していても よい。その一方、複数の装置間で各機能を分離するとしても、その分配は上記実施 形態とは異なる形態にすることも適宜可能である。
産業上の利用可能性
[0103] 本発明は、 1つ又は複数の処理機能を使って情報を処理するという構成を採る情 報処理装置に適用できるものであり、その処理機能が負荷に合わせた適切な量のリ ソースを確実に使用できるようにすることを実現する。
[0104] 本発明は、計算機内を複数のパーティションに分割して、それぞれのパーティショ
ンが割り当てられたリソースを使用してデータ処理を実行するという構成を採る計算 機に適用できるものであり、人手を介さずに自動的に、各パーティションが負荷に合 わせた適切な量のリソースを確実に使用できるようにすることを実現する。