Deprecated: The each() function is deprecated. This message will be suppressed on further calls in /home/zhenxiangba/zhenxiangba.com/public_html/phproxy-improved-master/index.php on line 456
JP4649341B2 - 計算機制御方法、情報処理システムおよび計算機制御プログラム - Google Patents
[go: Go Back, main page]

JP4649341B2 - 計算機制御方法、情報処理システムおよび計算機制御プログラム - Google Patents

計算機制御方法、情報処理システムおよび計算機制御プログラム Download PDF

Info

Publication number
JP4649341B2
JP4649341B2 JP2006014980A JP2006014980A JP4649341B2 JP 4649341 B2 JP4649341 B2 JP 4649341B2 JP 2006014980 A JP2006014980 A JP 2006014980A JP 2006014980 A JP2006014980 A JP 2006014980A JP 4649341 B2 JP4649341 B2 JP 4649341B2
Authority
JP
Japan
Prior art keywords
computer
virtual
virtual machine
reset
operation management
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
JP2006014980A
Other languages
English (en)
Other versions
JP2007199829A (ja
JP2007199829A5 (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.)
Hitachi Ltd
Original Assignee
Hitachi 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 Hitachi Ltd filed Critical Hitachi Ltd
Priority to JP2006014980A priority Critical patent/JP4649341B2/ja
Priority to US11/372,006 priority patent/US20070174836A1/en
Publication of JP2007199829A publication Critical patent/JP2007199829A/ja
Publication of JP2007199829A5 publication Critical patent/JP2007199829A5/ja
Application granted granted Critical
Publication of JP4649341B2 publication Critical patent/JP4649341B2/ja
Anticipated expiration legal-status Critical
Expired - Fee Related legal-status Critical Current

Links

Images

Classifications

    • GPHYSICS
    • G06COMPUTING OR CALCULATING; COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F9/00Arrangements for program control, e.g. control units
    • G06F9/06Arrangements for program control, e.g. control units using stored programs, i.e. using an internal store of processing equipment to receive or retain programs
    • G06F9/44Arrangements for executing specific programs
    • G06F9/455Emulation; Interpretation; Software simulation, e.g. virtualisation or emulation of application or operating system execution engines
    • G06F9/45533Hypervisors; Virtual machine monitors
    • G06F9/45558Hypervisor-specific management and integration aspects
    • GPHYSICS
    • G06COMPUTING OR CALCULATING; COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F9/00Arrangements for program control, e.g. control units
    • G06F9/06Arrangements for program control, e.g. control units using stored programs, i.e. using an internal store of processing equipment to receive or retain programs
    • G06F9/44Arrangements for executing specific programs
    • G06F9/455Emulation; Interpretation; Software simulation, e.g. virtualisation or emulation of application or operating system execution engines
    • G06F9/45533Hypervisors; Virtual machine monitors
    • G06F9/45558Hypervisor-specific management and integration aspects
    • G06F2009/45575Starting, stopping, suspending or resuming virtual machine instances

Landscapes

  • Engineering & Computer Science (AREA)
  • Software Systems (AREA)
  • Theoretical Computer Science (AREA)
  • Physics & Mathematics (AREA)
  • General Engineering & Computer Science (AREA)
  • General Physics & Mathematics (AREA)
  • Hardware Redundancy (AREA)

Description

本発明は、仮想計算機の計算機制御方法、情報処理システムおよび計算機制御プログラムに関する。
コンピュータの処理効率が稼働時間の経過に従って低下することがある。この現象は、コンピュータで実行されるプログラムにおいて、一旦確保した記憶領域を開放する処理が記述されていないなどのプログラミングエラーに起因することが知られており、ソフトウェアエージングと呼ばれている。このソフトウェアエージングに対しては、所定時間ごとにプログラムのリセットを行うことによって元の処理効率に回復させる技術がある(例えば特許文献1参照)。ここで、リセットとは、そのプログラムが確保していた記憶領域(メモリ)を開放する処理であり、例えば、プログラムの再起動であったり、FullGCと呼ばれたりする処理をいう。
特開2001−188684号公報
しかしながら、コンピュータにおいて、プログラムがリセットされた場合には、それらが再起動され、処理可能な状態になるまでの間は、システムによるサービスを提供できなくなるという問題がある。
例えば、J2EE(Java 2 Enterprise Edition:登録商標)を実装するアプリケーションサーバでは、リセット処理の一環として未使用の記憶領域を開放するFullGC(Garbage Collection:ガーベジコレクション)が実行されると、そのアプリケーションサーバの処理効率が低下し、サービスの目標性能を維持することが困難になる場合がある。特に、マルチプロセッサシステムなどにおいて大規模な仮想メモリ領域がアプリケーションサーバに割当てられている場合には、ガーベジコレクションによるアプリケーションサーバ全体の処理効率の低下は非常に顕著である。
また、負荷分散装置によって端末からの要求を複数のアプリケーションサーバに均等に振り分ける構成では、各アプリケーションサーバでFullGCが実行される時刻がほぼ同じ時間帯になり、複数のアプリケーションサーバからなるシステム全体において処理効率の低下が起きてしまう。
そこで、本発明は、前記問題に鑑み、コンピュータにおいて、システムにおける計算機の記憶領域の開放を行う場合に、システム全体の処理効率の低下を抑えることを目的とする。
前記課題を解決する本発明は、所定の要求を送信する端末と通信可能であり、端末から受信した要求を処理する2以上の仮想計算機を備える計算機と、仮想計算機と通信可能であり、仮想計算機に対するリセット処理指示を行う運用管理装置とを有する情報処理システムにおいて、仮想計算機の記憶領域を開放するための計算機制御方法であって、運用管理装置が、計算機内の仮想計算機を管理する記憶部を備えており、記憶部に管理された仮想計算機に対して1台ずつ順次リセット処理指示を行い、仮想計算機が、運用管理装置からリセット処理指示を受けたときに、自身のリソースの一部を他の仮想計算機に配分し、自身を閉塞してから、未処理の要求を処理し、自身のリセット処理を実行した後、自身の閉塞を解除し、前記他の仮想計算機に配分したリソースを自身に戻すことを特徴とする計算機制御方法である。なお、本発明は、他の計算機制御方法、情報処理システムおよび計
算機制御プログラムを含む。
本発明によれば、システムにおける計算機の記憶領域の開放を行う場合に、システム全体の処理効率の低下を抑えることができる。
以下、本発明を実施するための最良の形態について図面を参照して詳細に説明する。
≪システムの構成と概要≫
図1は、本実施形態に係る情報処理システムの構成を示すブロック図である。本実施形態では、端末からの要求を負荷分散装置が複数の仮想計算機に均等に割り振る情報処理システムにおける、仮想計算機のリセット制御方法について説明する。ここで、仮想計算機とは、1台の計算機内にあるCPU(Central Processing Unit)、メモリ、I/Oスロットなどのリソースを分けて割り当てることによって実現される論理的な計算機のことである。
図1に示すように、本実施形態における情報処理システム100は、端末10、負荷分散装置20、計算機30および運用管理装置50を含んで構成される。端末10は、ネットワーク60を介して負荷分散装置20と接続される。負荷分散装置20および運用管理装置50は、相互に接続されるとともに、それぞれが計算機30内の各仮想計算機40に接続されている。なお、図1では3つの仮想計算機40を示しているが、本発明の実施形態はその台数に限定されるものではない。
端末10は、ユーザが直接操作して利用する端末用コンピュータであり、ユーザの操作などに応じた要求を負荷分散装置20に送信するとともに、負荷分散装置20から受信した結果を表示してユーザが参照可能とする。負荷分散装置20は、端末10からの要求を受け付けて、各仮想計算機40にそれぞれ振り分ける。計算機30は、2以上の仮想計算機40を備える。仮想計算機40は、負荷分散装置20により振り分けられた端末10からの要求を処理する計算機である。仮想計算機40は、1以上のCPUが所定のメモリに格納されたプログラムを実行することによって実現される。なお、仮想計算機40は総称であり、個別に指示する場合には仮想計算機1、仮想計算機2、仮想計算機3などという。運用管理装置50は、各仮想計算機40に対するリセットの管理を行うとともに、負荷分散装置20に対する振り分け変更指示を行う。ネットワーク60は、端末10と負荷分散装置20とを通信可能とするための通信網であり、例えば、インターネットやLAN(Local Area Network)、無線ネットワーク、電話回線網などによって実現される。
ここで、仮想計算機40は、いわゆるアプリケーションサーバとして機能する。アプリケーションサーバ(プログラム)は、ミドルウェアの一種であり、Webブラウザなどのフロントエンドの端末層と、DBMS(DataBase Management System)やERP(Enterprise Resource Planning)パッケージなどのバックエンドの企業情報システムとの中間に位置し、業務アプリケーションプログラム(AP、Application Program)やビジネスロジック(BL、Business Logic)の実行環境を提供する。インターネットおよびブロードバンドの普及やシステムの高可用性および高信頼性を実現する技術の成熟によって、アプリケーションサーバは、企業内の業務システムだけでなく、オンラインショッピングやオンライントレード、企業間の電子商取引、さらには、ミッションクリティカル業務にも利用されるようになってきている。
本実施形態では、仮想計算機40内でFullGCが所定の条件(例えば、空きメモリ容量が所定値以下であるなど)により実行される前に、仮想計算機40を所定のタイミングで一台ずつリセットし、突然のFullGC実行によるアプリケーションサーバの極端な処理効率低下を防ぐ。リセットを行う際は、リセット対象となる仮想計算機40には、負荷分散装置20から要求の振り分けをしないようにするとともに、リセット対象の仮想計算機40自体も閉塞させる。リセット中は、リセット対象以外の仮想計算機40に端末10からの要求を振り分けるため、要求の処理を行う仮想計算機40が一つ減ることで処理効率が多少低下するが、一部の仮想計算機40において、FullGC実行によって極端な処理効率の低下が発生することを防止できるようにしている。
そのために、負荷分散装置20および仮想計算機40に接続された運用管理装置50において、リセット処理の管理を行う。運用管理装置50は、リセットの開始時刻になると(所定のタイミングにより)、振り分け変更およびリセット処理を実行するように、負荷分散装置20および仮想計算機40のそれぞれに対して指示する。その詳細について、以下に説明する。
≪第1の実施形態≫
本発明の第1の実施形態は、本発明に係る基本的な実施形態であり、第2の実施形態および第3の実施形態の基礎となるものである。
<仮想計算機の構成>
図2は、計算機のハードウェアおよびソフトウェアの構成を示す図である。図2に示すように、本実施形態に係る計算機30は、CPU(Central Processing Unit)401およびメモリ402を備えている。
CPU401は、図2では1以上あるように示されているが、実際には、1以上のCPU401が仮想計算機40ごとに割り当てられるので、例えば仮想計算機40が3個ある場合には、3以上のCPU401が備わる(図9ないし図12も同様)。
メモリ402内は、論理分割機能(LPAR、Logical Partitioning)の技術を用いて論理的に複数の仮想計算機40に分割されている。論理分割機能とは、1台の計算機30を論理的に複数の区画に分割して、リソース(CPUやメモリ、I/Oスロットなど)を区画ごとに割り当てるものである。これによれば、1台の計算機30に複数の仮想計算機40を構築できるため、計算機30を有効活用することができる。なお、図2において、仮想計算機40は、メモリ402内にあるように示されているが、実際にはメモリ402内の仮想計算機40用プログラムが、その仮想計算機40に割り当てられたCPU401によって実行されることによって実現される(図9ないし図12も同様)。
各仮想計算機40は、実行環境プログラム403およびオペレーティングシステム410を含む各種プログラムを有する。実行環境プログラム403は、アプリケーションプログラムやビジネスロジックなどのプログラムの実行環境を実現するプログラムである。オペレーティングシステム410は、プログラムの実行に際して、リソースの管理や処理全体の制御などを行う。
実行環境プログラム403は、要求処理部404、要求処理状況監視部405、閉塞処理実行部406およびリセット処理実行部407からなる。要求処理部404は、負荷分散装置20によって振り分けられた端末10からの要求に応じた処理を行う。具体的には、端末10からの要求に応じて業務アプリケーションプログラムを実行する。
要求処理状況監視部405は、要求処理部404における端末10からの要求の処理状況の監視を行う。本実施形態に係る仮想計算機40は、リセット処理を実行する前に、自らを閉塞して、内部に残っている要求をすべて処理してしまうか、もしくは、仕掛かり中の要求をキャンセルまたは破棄しなければならない。そのため、要求処理状況監視部405は、端末10からその仮想計算機40に送信された要求がすべて処理しきれたか否かを監視するか、もしくは、仕掛かり中の要求があるか否かを監視する必要がある。
閉塞処理実行部406は、仮想計算機40の閉塞を実行する。前記のようにリセット処理を行う際に、仮想計算機40を閉塞させて、負荷分散装置20から要求が振り分けられないようにする。具体的には、新たな要求を受け付けないようにするために、例えば、ビジー(Busy)のメッセージを返すような処理を行う。もしくは、新たな要求に応答しないようにする。この場合、負荷分散装置20が仮想計算機40に要求を送り、その応答が来ることなくタイムアウトになったときには、当該仮想計算機40には要求を送らないようにする。
リセット処理実行部407は、仮想計算機40内のリセット処理を実行する。具体的には、無意味に確保され続けているメモリ領域を強制的に開放するために、例えば、メモリ領域の強制ガーベジコレクションや仮想計算機40の再起動などを行う。なお、要求処理部404、要求処理状況監視部405、閉塞処理実行部406およびリセット処理実行部407は、プログラムである。
<運用管理装置の構成>
図3は、本実施形態に係る運用管理装置の構成を示す図である。図3に示すように、運用管理装置50は、CPU(処理部)501およびメモリ(記憶部)502を備えている。メモリ502には、リセット処理設定時間監視部510、リセット処理指示部520、リセット処理時間設定テーブル530、計算機状態管理テーブル540および負荷分散振り分け管理テーブル550が含まれている。
リセット処理設定時間監視部510は、リセット処理時間設定テーブル530に設定された値を読み込み、設定時間を監視する。読み込んだ値の時刻になったら、リセット処理指示部520にリセット処理開始通知を送信する。
リセット処理指示部520は、リセット処理設定時間監視部510からリセット処理開始通知を受信すると、負荷分散装置20およびリセット対象の仮想計算機40に振り分け変更指示およびリセット処理指示を送信し、計算機状態管理テーブル540および負荷分散振り分け管理テーブル550の状態変更を行う。負荷分散装置20には、リセット対象の仮想計算機40に対して端末10からの要求を振り分けないように振り分け変更の指示を出す。また、負荷分散振り分け管理テーブル550には、振り分け変更指示に対応するように仮想計算機40の状態を変更する。負荷分散装置20の振り分け変更が完了すると、リセット対象の仮想計算機40にリセット処理の指示を送信する。リセット対象の仮想計算機40では、リセット処理が終了すると、リセット処理指示部520にリセット処理完了通知を送信する。
図4は、リセット処理時間設定テーブルの構成を示す図である。リセット処理時間設定テーブル530は、リセット処理に関する時間設定を登録するテーブルである。リセット処理時間設定テーブル530は、設定項目531および設定値532を項目とするレコードからなる。設定項目531は、設定する項目の名称を示す。設定値532は、設定する値を示す。本例では、設定項目531に振り分け変更指示およびリセット処理指示の開始時刻のみが設定されているので、仮想計算機40のリセット処理が終了次第、次の仮想計算機40のリセット処理に移っていく。なお、開始時刻は、1日1回に限ることなく、1日2回以上設定してもよいし、2日以上の期間に1回設定してもよい。
本例に追加して、設定項目531には、必要に応じてさらにリセット間隔時間などを設定(格納)してもよい。リセット間隔時間は、2以上の仮想計算機40をリセットする際の間隔時間を示す。リセット間隔時間を設定した場合、所定の仮想計算機40のリセット処理が終了次第、次の仮想計算機40のリセット処理を行うのではなく、リセット処理を開始してからリセット間隔時間が経過した後、次のリセット処理を行うことになる。この場合、リセット処理設定時間監視部510は、開始時刻に加えて、リセット間隔時間も監視するようになる。
図5は、計算機状態管理テーブルの構成を示す図である。計算機状態管理テーブル540は、各仮想計算機40の稼働状態を管理するテーブルである。計算機状態管理テーブル540は、計算機名541、計算機識別情報(以下、計算機IDという)542および状態543を項目とするレコードからなる。計算機名541は、仮想計算機40の名称を示す。計算機ID542は、計算機名541に対応付けられた識別情報である。状態543は、仮想計算機40の状態を示す。この状態543は、通常「稼動」であるが、リセット処理の実行中は「リセット中」になる。また、負荷分散装置20から要求が振り分けられていない待機中は「待機」になる。なお、各項目ともに、最後の有効なレコードの次のレコードにNULLが設定される。
図6は、負荷分散振り分け管理テーブルの構成を示す図である。負荷分散振り分け管理テーブル550は、負荷分散装置20の要求振り分け状態を管理するテーブルである。負荷分散振り分け管理テーブル550は、計算機名551および状態552を項目とするレコードからなる。計算機名551は、仮想計算機40の名称を示す。状態552は、負荷分散装置20が端末10からの要求を当該仮想計算機40に振り分けるか否かを示す。状態552は、負荷分散装置20が要求を振り分けているときに「アクティブ」が設定され、要求を振り分けていないときに「スタンバイ」が設定される。この状態552の設定値は、要求の振り分け変更が完了した後に更新される。
<リセット処理指示>
図7は、リセット処理指示部の処理の流れを示すフローチャートである。運用管理装置50のリセット処理指示部520は、リセット処理の開始時刻になると、リセット処理設定時間監視部510から、リセット処理開始通知を受信する(ステップS611)。リセット処理開始通知を受信すると、リセット計算機IDを設定する(ステップS612)。リセット計算機IDは、計算機状態管理テーブル540におけるレコードの順番を示す。本実施形態では、順次リセットを行っていくので、リセット計算機IDに1を代入して、1ずつ更新しながら、リセット計算機IDが示すレコードの仮想計算機40がすべてリセットされるまでリセット処理を行う。具体的には、計算機状態管理テーブル540において、リセット計算機IDに対応する計算機ID542がNULLでない間は(ステップS613)、ステップS614ないしステップS621の処理を繰り返す(ステップS622)。
次に、各仮想計算機40内をリセットさせるまでの指示の流れを説明する。リセット処理指示部520は、リセット処理を開始するためには、リセットするための指示を負荷分散装置20およびリセット対象の仮想計算機40に送信する。まず、負荷分散装置20には、リセット対象の仮想計算機40に端末10からの要求を振り分けないように要求の振り分け変更指示を送信する(ステップS614)。この場合、リセット処理指示部520は、負荷分散装置20に対して各仮想計算機40に要求を振り分けるか否かを示す情報をまとめて送信する。従って、リセット対象でない仮想計算機40には要求を振り分ける指示を改めて行うことになる。
負荷分散装置20から要求の振り分け変更完了通知を受信すると(ステップS615)、リセット対象の(リセット計算機IDに対応する)仮想計算機40には要求が振り分けられない状態になったので、負荷分散振り分け管理テーブル550の状態552を「アクティブ」から「スタンバイ」に変更する(ステップS616)。端末10からの要求の振り分け変更が完了したので、リセット計算機IDに対応する仮想計算機40にリセット処理指示を送信する(ステップS617)。そして、計算機状態管理テーブル540において、リセット対象の仮想計算機40に対応する状態543を「リセット中」に変更する(ステップS618)。
リセット処理指示を受けた仮想計算機40は、リセット処理が完了すると、リセット処理完了通知をリセット処理指示部520に送信する。リセット処理指示部520は、仮想計算機40からリセット処理完了通知を受信すると(ステップS619)、計算機状態管理テーブル540において、その仮想計算機40に対応する状態543を「稼働」に変更する(ステップS620)。これにより、一の仮想計算機40に対するリセット処理指示部520の一連の処理が終了する。続いて、リセット計算機IDを+1更新し(ステップS621)、計算機状態管理テーブル540の次のレコードを参照して、次の仮想計算機40に対するリセット処理指示を行う。そして、計算機状態管理テーブル540の計算機ID542がNULLになるまで処理を繰り返す(ステップS613ないしステップS622)。
<仮想計算機内リセット処理>
図8は、仮想計算機内のリセット処理実行部407におけるリセット処理の流れを示すフローチャートである。仮想計算機40は、リセット処理指示部520からリセット処理指示を受信すると(ステップS631)、リセット処理を開始する。まず、仮想計算機40の閉塞処理実行部406が閉塞処理を実行する(ステップS632)。具体的には、仮想計算機40が新たな要求を受信したときは、その要求を受け付けることなく、例えば、ビジー(Busy)のメッセージを返すような閉塞状態を設定する。閉塞処理が完了すると、要求処理部404が、閉塞処理の前に仮想計算機40内のメモリに未処理で溜まっていた端末10からの要求をすべて処理する(ステップS633)。仮想計算機40内のメモリに溜まっていた要求の処理が終了し、要求が残っていない状態になると、リセット処理実行部407がリセット処理を実行する(ステップS634)。リセット処理が終了すると、閉塞処理実行部406が仮想計算機40の閉塞状態を解除する(ステップS635)。そして、仮想計算機40が、運用管理装置50のリセット処理指示部520にリセット処理終了通知を送信する(ステップS636)。
以上説明した本発明の第1の実施形態によれば、仮想計算機40のリセット処理を行っても、リセット処理中の仮想計算機40には端末10からの要求が振り分けられずに、他の仮想計算機40が要求を処理するので、ソフトウェアエージングに対する処置ができる。また、リセット処理中の仮想計算機40に振り分けられた要求の処理時間が長くなってしまうという不具合を防ぎ、計算機30全体の処理効率の低下を抑えることができる。
≪第2の実施形態≫
本発明の第2の実施形態は、動的論理分割機能(Dynamic Logical Partitioning)の技術を利用することによって、さらに情報処理システム100全体の処理効率の低下を抑えるものである。ここで、動的論理分割機能とは、論理分割機能により1つの計算機を仮想的に複数に分けた区画を、稼動中に仮想計算機40を再起動することなく、別の区画のリソースとして再割当てすることを可能にするものである。
第1の実施形態では、端末10からの要求を通常3つの仮想計算機40で処理しているが、1つの仮想計算機40のリセット中は2つの仮想計算機40に縮退して処理しなければならなくなる。そのため、リセット中以外の仮想計算機40に要求が集中して、スループットが落ちることがある。ところが、リセット中の仮想計算機40は、閉塞処理の前に残っていた要求を処理し、リセットできるだけのリソース(CPU使用率を含む)があれば十分なので、稼動しているときほどのリソースを必要としない。
そこで、第2の実施形態では、動的論理分割機能を利用し、リソースの再配分を行う。図9に示すように、リセット対象の仮想計算機40(仮想計算機1)には、リセット処理ができるだけのリソースを残して、余分なリソースを稼働中の仮想計算機40(仮想計算機2、仮想計算機3)に配分する。そうすると、図10に示すように、稼働中の仮想計算機40(仮想計算機2、仮想計算機3)は、リセット中の仮想計算機40(仮想計算機1)があることにより要求が増えたとしても、リソースが配分されて増加するので、通常の運用時より多くの要求を処理することができ、通常の運用時からの処理効率の低下を最小限に抑えて、処理を続行することができる。
実際の動作としては、負荷分散装置20における要求の振り分け変更後に、リセット対象の仮想計算機40のリソースを稼働中の仮想計算機40に配分する。リセット処理の終了後は、要求の振り分けを元に戻す前に、リソース配分を元の状態に戻す。具体的には、仮想計算機40が、運用管理装置50からリセット処理指示を受信した(図8のステップS631)ときに、閉塞処理(図8のステップS632)を行う前に、残っている要求の処理およびリセット処理に必要となる以外のリソースを他の仮想計算機40に配分し、閉塞解除処理(図8のステップS65)を行った後に、その配分したリソースを元に戻す。
以上説明した本発明の第2の実施形態によれば、リセット処理中の仮想計算機40のリソースを他の稼動中の仮想計算機40に配分するので、リセット中であってもさらに処理効率の低下を抑えることができる。
≪第3の実施形態≫
第3の実施形態は、待機用の仮想計算機40を用意することによって、処理効率をほとんど落とさずに計算機30全体の運用を続行することができるものである。本実施形態における通常の運用では、待機用の仮想計算機40には端末10からの要求を振り分けず、稼動中の仮想計算機40に要求を振り分けて処理をする。待機用の仮想計算機40は、第2の実施形態で説明したリセット中の仮想計算機40と同様に、最小限必要なリソースを持っている。
図13は、具体的なリソース配分例(リソース配分前の状態)を示す図である。リソース割り当て管理テーブル420は、計算機30内で仮想計算機40に対するリソースの割り当てを管理するテーブルである。リソース割り当て管理テーブル420は、計算機名421、CPU422およびメモリ423を項目とするレコードからなる。計算機名421は、仮想計算機40の名称である。CPU422は、計算機名421で示される仮想計算機40に割り当てられたCPUの個数を示す。メモリ423は、計算機名421で示される仮想計算機40に割り当てられたメモリの容量(MByte単位)を示す。計算機30全体では、リソースとして48個のCPUおよび3600MBのメモリがあるが、待機用の仮想計算機40である仮想計算機1には、CPUが少なめに割り当てられている。そして、その他の仮想計算機40(仮想計算機2ないし4)には、残りのCPUが均等に割り当てられている。また、各仮想計算機40(仮想計算機1ないし4)には、メモリが均等に割り当てられている。なお、CPUを割り当てる方法には、各仮想計算機40にそれぞれ1個のCPUを割り当てて、そのCPU使用率を指定する方法がある。この場合、例えば、仮想計算機1のCPU使用率を10%と指定し、仮想計算機2ないし4のCPU使用率をそれぞれ30%と指定することができる。
第2の実施形態では、リセット対象の仮想計算機40の余分なリソースを稼動中の仮想計算機40に配分したが、第3の実施形態では、図11に示すように、余分なリソースを待機中の仮想計算機40に配分する。図14は、リソース配分後の状態を示す図である。ここでは、仮想計算機2をリセットするので、その仮想計算機2に割り当てられていた余分のリソース(CPU12個)が待機中の仮想計算機40(仮想計算機1)に割り当てられる。なお、各仮想計算機40にそれぞれ1個のCPUを割り当てて、そのCPU使用率を指定する方法を使った場合、例えば、仮想計算機2のCPU使用率を10%と指定し、仮想計算機1、3および4のCPU使用率をそれぞれ30%と指定することができる。
実際の動作としては、運用管理装置50は、待機中の仮想計算機40(仮想計算機1)のリソースが増えることになるので、リセット対象の仮想計算機40(仮想計算機2)に振り分けていた要求を、待機中だった仮想計算機40に振り分けるように負荷分散装置20に対して振り分け変更指示を行い、リセット対象の仮想計算機40をスタンバイ状態とする。図12は、振り分け先を変更した後の状態を示す図である。そして、運用管理装置50は、リセット対象の仮想計算機40にリセット処理指示を行う。
仮想計算機40(仮想計算機2)は、運用管理装置50からリセット処理指示を受けて、まず、リソースの一部を待機中の仮想計算機40(仮想計算機1)に配分し、閉塞を行う。次に、閉塞前に溜まった要求を処理した後に、リセット処理を行う。そして、閉塞を解除した後、その仮想計算機40(仮想計算機2)がそのまま待機用の仮想計算機40として動作する。待機用だった仮想計算機40(仮想計算機1)は、振り分け変更指示を受けた負荷分散装置20から要求が振り分けられるとともに、リセット処理指示を受けた仮想計算機40(仮想計算機2)からリソースの一部が配分されることによって、稼動中の仮想計算機40としてそのまま処理を続ける。次の仮想計算機40をリセットする場合は、運用管理装置50からリセット処理指示を受けた仮想計算機40が、直前にリセット処理が完了して待機用となった仮想計算機40にリソースを配分してから、リセット処理を行うように繰り返す。
以上説明した本発明の第3の実施形態によれば、リセット処理中も余分なリソースを有効に活用でき、かつ、稼働している仮想計算機40の数も減らないので、通常の運用と変わらない状態で計算機30を稼働させることができる。そのため、処理効率をほとんど落とさずに運用することが可能となる。
以上本発明の実施の形態について説明したが、図1に示す情報処理システム100のそれぞれで実行されるプログラムをコンピュータにより読み取り可能な記録媒体に記録し、この記録媒体に記録されたプログラムをコンピュータシステムに読み込ませ、実行することにより、本発明の実施の形態に係る情報処理システムが実現されるものとする。なお、プログラムをインターネットなどのネットワーク経由でコンピュータシステムに提供するようにしてもよい。さらに、プログラムが書き込まれた半導体チップなどを提供してもよい。
≪その他の実施の形態≫
以上本発明の好適な実施の形態について一例を示したが、本発明は前記実施の形態に限定されず、本発明の趣旨を逸脱しない範囲で適宜変更が可能である。例えば、以下のような実施の形態が考えられる。
(1)前記実施形態では、情報処理システム100が端末10、負荷分散装置20、計算機30および運用管理装置50を含んで構成されるように記載したが、負荷分散装置20がない構成であってもよい。この場合、計算機30内の仮想計算機40が端末10から直接要求を受信することになる。
(2)前記実施形態では、リソース割り当て管理テーブル420にはCPUやメモリを設定したが、他のリソース、例えば、I/Oスロットやハードディスク装置などを設定してもよい。
(3)前記実施形態では、情報処理システム100において、端末10と負荷分散装置20とがネットワーク60を介して接続されるように記載したが、別の接続形態であってもよい。例えば、情報処理システム1が1台のコンピュータであって、端末10がキーボードやマウス、ディスプレイであり、計算機30(仮想計算機40)がコンピュータ全体を制御する構成であり、端末10と負荷分散装置20とがI/Oケーブルで接続される形態であってもよい。
(4)前記実施形態では、運用管理装置50が1台の負荷分散装置20および1台の計算機30に接続されているように記載したが、複数の負荷分散装置20および複数の計算機30に接続される構成であってもよい。この場合、運用管理装置50のメモリ502には、各計算機30に対応した複数のリセット処理時間設定テーブル530および計算機状態管理テーブル540、ならびに各負荷分散装置20に対応した複数の負荷分散振り分け管理テーブル550が含まれることになる。
本発明の実施形態に係る情報処理システムの構成を示す図である。 計算機のハードウェアおよびソフトウェアの構成を示す図である。 運用管理装置の構成を示す図である。 リセット処理時間設定テーブルの構成を示す図である。 計算機状態管理テーブルの構成を示す図である。 負荷分散振り分け管理テーブルの構成を示す図である。 リセット処理指示部の処理の流れを示すフローチャートである。 仮想計算機内のリセット処理の流れを示すフローチャートである。 動的論理分割機能の技術を利用し、システム稼働中に稼働中の仮想計算機にリソース配分する仮想計算機の構成を示す図である。 動的論理分割機能の技術を利用し、リソース配分した後の仮想計算機の構成を示す図である。 動的論理分割機能の技術を利用し、待機用仮想計算機にリソース配分している仮想計算機の構成を示す図である。 動的論理分割機能の技術を利用し、リソース配分した後の仮想計算機の構成を示す図である。 リソース配分前のリソース割り当て管理テーブルの構成を示す図である。 リソース配分後のリソース割り当て管理テーブルの構成を示す図である。
符号の説明
10 端末
20 負荷分散装置
30 計算機
40 仮想計算機
50 運用管理装置
100 情報処理システム
501 CPU(処理部)
502 メモリ(記憶部)
540 計算機状態管理テーブル

Claims (7)

  1. 所定の要求を送信する端末と通信可能であり、前記端末から受信した要求を処理する2以上の仮想計算機を備える計算機と、
    前記仮想計算機と通信可能であり、前記仮想計算機に対するリセット処理指示を行う運用管理装置と、
    を有する情報処理システムにおいて、前記仮想計算機の記憶領域を開放するための計算機制御方法であって、
    前記運用管理装置は、前記計算機内の仮想計算機を管理する記憶部を備えており、前記記憶部に管理された仮想計算機に対して1台ずつ順次リセット処理指示を行い、
    前記仮想計算機は、前記運用管理装置から前記リセット処理指示を受けたときに、自身のリソースの一部を他の仮想計算機に配分し、自身を閉塞してから、未処理の要求を処理し、自身のリセット処理を実行した後、自身の閉塞を解除し、前記他の仮想計算機に配分したリソースを自身に戻す
    ことを特徴とする計算機制御方法。
  2. 前記情報処理システムは、
    前記端末、前記仮想計算機および前記運用管理装置と通信可能であり、前記端末から受信した要求を前記仮想計算機に振り分ける負荷分散装置をさらに有し、
    前記運用管理装置は、前記仮想計算機にリセット処理指示を行う前に、その仮想計算機に前記要求を振り分けないように前記負荷分散装置に対して振り分け変更指示を行い、
    前記負荷分散装置は、前記振り分け変更指示を受けたときに、前記振り分け変更指示に従って振り分け変更を行う
    ことを特徴とする請求項1に記載の計算機制御方法。
  3. 所定の要求を送信する端末と通信可能であり、前記端末から受信した要求を処理する2以上の仮想計算機を備える計算機と、
    前記仮想計算機と通信可能であり、前記仮想計算機に対するリセット処理指示を行う運用管理装置と、
    前記端末、前記仮想計算機および前記運用管理装置と通信可能であり、前記端末から受信した要求を前記仮想計算機に振り分ける負荷分散装置と、
    を有する情報処理システムにおいて、前記仮想計算機の記憶領域を開放するための計算機制御方法であって、
    前記計算機が備える2以上の計算機のうち少なくとも1つは、前記負荷分散装置により前記端末からの要求が振り分けられない待機用仮想計算機として動作し、
    前記運用管理装置は、前記計算機内の仮想計算機を管理する記憶部を備えており、前記記憶部に管理された仮想計算機に対して1台ずつ順次リセット処理指示を行い、
    前記運用管理装置から前記リセット処理指示を受けた仮想計算機は、自身のリソースの一部を前記待機用仮想計算機に配分し、自身を閉塞してから、未処理の要求を処理し、自身のリセット処理を実行した後、自身の閉塞を解除して、自身が新たに待機用仮想計算機として動作し、
    前記リセット処理指示を受けた仮想計算機からリソースの配分を受けた待機用仮想計算機は、前記負荷分散装置により前記端末からの要求が振り分けられる稼働中の仮想計算機として動作する
    ことを特徴とする計算機制御方法。
  4. 前記運用管理装置が前記リセット処理指示または前記振り分け変更指示を行うタイミングは、前記記憶部に格納された前記振り分け変更指示または前記リセット処理指示の開始時刻を監視することにより定められる
    ことを特徴とする請求項1ないし請求項のいずれか一項に記載の計算機制御方法。
  5. 前記運用管理装置が前記リセット処理指示または前記振り分け変更指示を行うタイミングは、前記記憶部に格納された前記振り分け変更指示または前記リセット処理指示の開始時刻、および前記仮想計算機間のリセット間隔時間を監視することにより定められる
    ことを特徴とする請求項1ないし請求項のいずれか一項に記載の計算機制御方法。
  6. 所定の要求を送信する端末と通信可能であり、前記端末から受信した要求を処理する2以上の仮想計算機を備える計算機と、
    前記仮想計算機と通信可能であり、前記仮想計算機に対するリセット処理指示を行う運用管理装置と、
    を有する情報処理システムであって、
    前記運用管理装置は、
    前記計算機内の仮想計算機を管理する記憶部と、
    前記計算機内の仮想計算機の記憶領域を開放するために、前記記憶部に管理された仮想計算機に対して1台ずつ順次リセット処理指示を行う処理部と、
    を備え
    前記仮想計算機は、前記運用管理装置から前記リセット処理指示を受けたときに、自身のリソースの一部を他の仮想計算機に配分し、自身を閉塞してから、未処理の要求を処理し、自身のリセット処理を実行した後、自身の閉塞を解除し、前記他の仮想計算機に配分したリソースを自身に戻す
    ことを特徴とする情報処理システム。
  7. コンピュータに請求項1ないし請求項のいずれか一項に記載の計算機制御方法を実行させることを特徴とする計算機制御プログラム。
JP2006014980A 2006-01-24 2006-01-24 計算機制御方法、情報処理システムおよび計算機制御プログラム Expired - Fee Related JP4649341B2 (ja)

Priority Applications (2)

Application Number Priority Date Filing Date Title
JP2006014980A JP4649341B2 (ja) 2006-01-24 2006-01-24 計算機制御方法、情報処理システムおよび計算機制御プログラム
US11/372,006 US20070174836A1 (en) 2006-01-24 2006-03-10 System for controlling computer and method therefor

Applications Claiming Priority (1)

Application Number Priority Date Filing Date Title
JP2006014980A JP4649341B2 (ja) 2006-01-24 2006-01-24 計算機制御方法、情報処理システムおよび計算機制御プログラム

Publications (3)

Publication Number Publication Date
JP2007199829A JP2007199829A (ja) 2007-08-09
JP2007199829A5 JP2007199829A5 (ja) 2009-02-12
JP4649341B2 true JP4649341B2 (ja) 2011-03-09

Family

ID=38287119

Family Applications (1)

Application Number Title Priority Date Filing Date
JP2006014980A Expired - Fee Related JP4649341B2 (ja) 2006-01-24 2006-01-24 計算機制御方法、情報処理システムおよび計算機制御プログラム

Country Status (2)

Country Link
US (1) US20070174836A1 (ja)
JP (1) JP4649341B2 (ja)

Families Citing this family (6)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
JP5549374B2 (ja) * 2010-05-24 2014-07-16 富士通株式会社 負荷分散装置及び負荷分散制御方法
JP5845571B2 (ja) 2010-11-30 2016-01-20 富士通株式会社 計算システムおよび計算システム管理方法
US8959402B2 (en) * 2012-10-04 2015-02-17 Qualcomm Incorporated Method for preemptively restarting software in a multi-subsystem mobile communication device to increase mean time between failures
WO2015170365A1 (ja) * 2014-05-08 2015-11-12 三菱電機株式会社 サーバ装置、およびコンピュータシステム
CN105357038B (zh) * 2015-10-26 2019-05-07 北京百度网讯科技有限公司 监控虚拟机集群的方法和系统
JP6004075B2 (ja) * 2015-11-26 2016-10-05 富士通株式会社 計算システムおよび計算システム管理方法

Family Cites Families (8)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US6629266B1 (en) * 1999-11-17 2003-09-30 International Business Machines Corporation Method and system for transparent symptom-based selective software rejuvenation
US6594784B1 (en) * 1999-11-17 2003-07-15 International Business Machines Corporation Method and system for transparent time-based selective software rejuvenation
US7134123B1 (en) * 2000-05-31 2006-11-07 International Business Machines Corporation Virtual machine with reset operation
JP2002041305A (ja) * 2000-07-26 2002-02-08 Hitachi Ltd 仮想計算機システムにおける計算機資源の割当て方法および仮想計算機システム
JP4054616B2 (ja) * 2002-06-27 2008-02-27 株式会社日立製作所 論理計算機システム、論理計算機システムの構成制御方法および論理計算機システムの構成制御プログラム
JP4256693B2 (ja) * 2003-02-18 2009-04-22 株式会社日立製作所 計算機システム、i/oデバイス及びi/oデバイスの仮想共有方法
US7254733B2 (en) * 2003-02-18 2007-08-07 International Business Machines Corporation Method of shutting down virtual machines in an orderly manner
US7251815B2 (en) * 2003-04-29 2007-07-31 International Business Machines Corporation Multiple virtual machines sharing processor and work queue in memory having program/dispatch functions for assigning and accessing work items while the virtual machine was not idle

Also Published As

Publication number Publication date
US20070174836A1 (en) 2007-07-26
JP2007199829A (ja) 2007-08-09

Similar Documents

Publication Publication Date Title
CN114625533B (zh) 分布式任务调度方法、装置、电子设备及存储介质
US8108196B2 (en) System for yielding to a processor
US8112526B2 (en) Process migration based on service availability in a multi-node environment
JP2001331333A (ja) 計算機システム及び計算機システムの制御方法
US10333859B2 (en) Multi-tenant resource coordination method
US20170017511A1 (en) Method for memory management in virtual machines, and corresponding system and computer program product
US20080295095A1 (en) Method of monitoring performance of virtual computer and apparatus using the method
US20090150640A1 (en) Balancing Computer Memory Among a Plurality of Logical Partitions On a Computing System
JP6412244B2 (ja) 負荷に基づく動的統合
US20060288159A1 (en) Method of controlling cache allocation
US11556391B2 (en) CPU utilization for service level I/O scheduling
JP6272190B2 (ja) 計算機システム、計算機、負荷分散方法及びそのプログラム
CN114924888A (zh) 资源配置方法、数据处理方法、装置、设备和存储介质
US9531805B1 (en) Systems and methods for run time migration
US8296552B2 (en) Dynamically migrating channels
US7734782B2 (en) Method and system for controlling computer in system
CN114546587A (zh) 一种在线图像识别服务的扩缩容方法及相关装置
JP4649341B2 (ja) 計算機制御方法、情報処理システムおよび計算機制御プログラム
US20090319662A1 (en) Process Migration Based on Exception Handling in a Multi-Node Environment
JP5151509B2 (ja) 仮想マシンシステム及びそれに用いる仮想マシン分散方法
CN114816701B (zh) 线程管理方法、电子设备及存储介质
CN103257899B (zh) 计算机系统
CN111625344B (zh) 应用系统中的资源调度系统、方法及装置
US8984522B2 (en) Relay apparatus and relay management apparatus
CN121241335A (zh) 用于资源管理的方法、装置、设备和存储介质

Legal Events

Date Code Title Description
A521 Request for written amendment filed

Free format text: JAPANESE INTERMEDIATE CODE: A523

Effective date: 20081224

A621 Written request for application examination

Free format text: JAPANESE INTERMEDIATE CODE: A621

Effective date: 20081224

A977 Report on retrieval

Free format text: JAPANESE INTERMEDIATE CODE: A971007

Effective date: 20100830

A131 Notification of reasons for refusal

Free format text: JAPANESE INTERMEDIATE CODE: A131

Effective date: 20100914

A521 Request for written amendment filed

Free format text: JAPANESE INTERMEDIATE CODE: A523

Effective date: 20101112

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

A01 Written decision to grant a patent or to grant a registration (utility model)

Free format text: JAPANESE INTERMEDIATE CODE: A01

A61 First payment of annual fees (during grant procedure)

Free format text: JAPANESE INTERMEDIATE CODE: A61

Effective date: 20101213

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

Free format text: PAYMENT UNTIL: 20131217

Year of fee payment: 3

R150 Certificate of patent or registration of utility model

Ref document number: 4649341

Country of ref document: JP

Free format text: JAPANESE INTERMEDIATE CODE: R150

Free format text: JAPANESE INTERMEDIATE CODE: R150

LAPS Cancellation because of no payment of annual fees