JPWO2014006728A1 - 処理装置、処理システム、及びプログラム - Google Patents

処理装置、処理システム、及びプログラム Download PDF

Info

Publication number
JPWO2014006728A1
JPWO2014006728A1 JP2014523504A JP2014523504A JPWO2014006728A1 JP WO2014006728 A1 JPWO2014006728 A1 JP WO2014006728A1 JP 2014523504 A JP2014523504 A JP 2014523504A JP 2014523504 A JP2014523504 A JP 2014523504A JP WO2014006728 A1 JPWO2014006728 A1 JP WO2014006728A1
Authority
JP
Japan
Prior art keywords
processing
alternative
server
unit
processing device
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.)
Granted
Application number
JP2014523504A
Other languages
English (en)
Other versions
JP5983746B2 (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.)
Fujitsu Ltd
Original Assignee
Fujitsu 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 Fujitsu Ltd filed Critical Fujitsu Ltd
Publication of JPWO2014006728A1 publication Critical patent/JPWO2014006728A1/ja
Application granted granted Critical
Publication of JP5983746B2 publication Critical patent/JP5983746B2/ja
Active legal-status Critical Current
Anticipated expiration legal-status Critical

Links

Images

Classifications

    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F11/00Error detection; Error correction; Monitoring
    • G06F11/07Responding to the occurrence of a fault, e.g. fault tolerance
    • G06F11/16Error detection or correction of the data by redundancy in hardware
    • G06F11/20Error detection or correction of the data by redundancy in hardware using active fault-masking, e.g. by switching out faulty elements or by switching in spare elements
    • G06F11/202Error detection or correction of the data by redundancy in hardware using active fault-masking, e.g. by switching out faulty elements or by switching in spare elements where processing functionality is redundant
    • G06F11/2023Failover techniques
    • G06F11/203Failover techniques using migration
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F11/00Error detection; Error correction; Monitoring
    • G06F11/07Responding to the occurrence of a fault, e.g. fault tolerance
    • G06F11/16Error detection or correction of the data by redundancy in hardware
    • G06F11/20Error detection or correction of the data by redundancy in hardware using active fault-masking, e.g. by switching out faulty elements or by switching in spare elements
    • G06F11/202Error detection or correction of the data by redundancy in hardware using active fault-masking, e.g. by switching out faulty elements or by switching in spare elements where processing functionality is redundant
    • G06F11/2023Failover techniques
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F11/00Error detection; Error correction; Monitoring
    • G06F11/07Responding to the occurrence of a fault, e.g. fault tolerance
    • G06F11/0703Error or fault processing not based on redundancy, i.e. by taking additional measures to deal with the error or fault not making use of redundancy in operation, in hardware, or in data representation
    • G06F11/0706Error or fault processing not based on redundancy, i.e. by taking additional measures to deal with the error or fault not making use of redundancy in operation, in hardware, or in data representation the processing taking place on a specific hardware platform or in a specific software environment
    • G06F11/0721Error or fault processing not based on redundancy, i.e. by taking additional measures to deal with the error or fault not making use of redundancy in operation, in hardware, or in data representation the processing taking place on a specific hardware platform or in a specific software environment within a central processing unit [CPU]
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F11/00Error detection; Error correction; Monitoring
    • G06F11/07Responding to the occurrence of a fault, e.g. fault tolerance
    • G06F11/16Error detection or correction of the data by redundancy in hardware
    • G06F11/20Error detection or correction of the data by redundancy in hardware using active fault-masking, e.g. by switching out faulty elements or by switching in spare elements
    • G06F11/202Error detection or correction of the data by redundancy in hardware using active fault-masking, e.g. by switching out faulty elements or by switching in spare elements where processing functionality is redundant
    • G06F11/2023Failover techniques
    • G06F11/2025Failover techniques using centralised failover control functionality
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F11/00Error detection; Error correction; Monitoring
    • G06F11/07Responding to the occurrence of a fault, e.g. fault tolerance
    • G06F11/16Error detection or correction of the data by redundancy in hardware
    • G06F11/20Error detection or correction of the data by redundancy in hardware using active fault-masking, e.g. by switching out faulty elements or by switching in spare elements
    • G06F11/202Error detection or correction of the data by redundancy in hardware using active fault-masking, e.g. by switching out faulty elements or by switching in spare elements where processing functionality is redundant
    • G06F11/2023Failover techniques
    • G06F11/2028Failover techniques eliminating a faulty processor or activating a spare
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F11/00Error detection; Error correction; Monitoring
    • G06F11/07Responding to the occurrence of a fault, e.g. fault tolerance
    • G06F11/14Error detection or correction of the data by redundancy in operation
    • G06F11/1479Generic software techniques for error detection or fault masking
    • G06F11/1482Generic software techniques for error detection or fault masking by means of middleware or OS functionality
    • G06F11/1484Generic software techniques for error detection or fault masking by means of middleware or OS functionality involving virtual machines
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F11/00Error detection; Error correction; Monitoring
    • G06F11/07Responding to the occurrence of a fault, e.g. fault tolerance
    • G06F11/16Error detection or correction of the data by redundancy in hardware
    • G06F11/20Error detection or correction of the data by redundancy in hardware using active fault-masking, e.g. by switching out faulty elements or by switching in spare elements
    • G06F11/202Error detection or correction of the data by redundancy in hardware using active fault-masking, e.g. by switching out faulty elements or by switching in spare elements where processing functionality is redundant
    • G06F11/2046Error detection or correction of the data by redundancy in hardware using active fault-masking, e.g. by switching out faulty elements or by switching in spare elements where processing functionality is redundant where the redundant components share persistent storage

Landscapes

  • Engineering & Computer Science (AREA)
  • Theoretical Computer Science (AREA)
  • Quality & Reliability (AREA)
  • Physics & Mathematics (AREA)
  • General Engineering & Computer Science (AREA)
  • General Physics & Mathematics (AREA)
  • Hardware Redundancy (AREA)
  • Debugging And Monitoring (AREA)

Abstract

処理部により実行される処理が実行不能となる予兆を示す事象が生じたか否かを検知する予兆検知部と、前記予兆検知部により前記予兆を示す事象が生じたことが検知されたとき、前記処理装置において行われる処理の代替処理を行うことが可能な代替処理装置に、該代替処理を開始可能な状態となるように依頼し、該開始可能な状態となるように依頼した後、設定条件が成立したときに前記代替処理を開始可能な状態を終了するように前記代替処理装置に依頼する制御部と、を備える処理装置。

Description

本発明は、処理装置、処理システム、及びプログラムに関する。
従来、複数の記憶装置のうち、将来的に故障すると予測された記憶装置に格納されているデータを、複数の記憶装置が全て同一の記憶容量を有していないことから生じる余剰記憶領域にコピーするディスクアレイコントローラが知られている。このディスクアレイコントローラのCPU部は、予測された記憶装置が故障した場合において、予測された記憶装置に対するリード又はライトアクセスがあったときに、余剰記憶領域にコピーしたデータによりリード又はライトアクセスを実行する。
特開2010−160623号公報
しかしながら、上記従来のディスクアレイコントローラでは、将来的に故障すると予測された記憶装置に格納されているデータを余剰記憶領域にコピーした後、故障の予測がはずれることに対する配慮がなく、リソースを無駄に消費する問題がある。
一つの側面では、本発明は、リソースの浪費の抑制を図ることを目的とする。
本発明の一態様は、処理部により実行される処理が実行不能となる予兆を示す事象が生じたか否かを検知する予兆検知部と、前記予兆検知部により前記予兆を示す事象が生じたことが検知されたとき、前記処理装置において行われる処理の代替処理を行うことが可能な代替処理装置に、該代替処理を開始可能な状態となるように依頼し、該開始可能な状態となるように依頼した後、設定条件が成立したときに前記代替処理を開始可能な状態を終了するように前記代替処理装置に依頼する制御部と、を備える処理装置である。
一実施態様によれば、リソースの浪費の抑制を図ることができる。
本発明の第1実施例に係る処理システム1のシステム構成例である。 サーバ10及びサーバ100のハードウェア構成例である。 代替処理準備依頼がなされた結果として生じる状態を示す図である。 実行状態確認コマンドを実行した結果、サーバ10により行われる処理の流れを示すフローチャートの一例である。 代替処理が開始された状態を示す図である。 図5に示す状態からジョブ管理部10Aが復旧する様子を示す図である。 ジョブ管理部10Aにフェールオーバが発生せずに、所定期間が経過した状態を示す図である。 第1実施例に係るサーバ10の仮想サーバ設定処理部10Cにより実行される処理の流れを示すフローチャートの一例である。 第1実施例に係るサーバ100により実行される処理の流れを示すフローチャートの一例である。 本発明の第2実施例に係る処理システム2のシステム構成例である。 仮想サーバ設定処理部20C、22Cから代替処理準備依頼がなされた結果として生じる状態を示す図である。 ジョブ管理部22Aの代替処理が開始された状態を示す図である。 図12に示す状態からジョブ管理部22Aが復旧する様子を示す図である。 ジョブ管理部20Aにフェールオーバが発生せずに、所定期間が経過した状態を示す図である。 第2実施例に係るサーバ20、22の仮想サーバ設定処理部20C、22Cにより実行される処理の流れを示すフローチャートの一例である。 第2実施例に係るサーバ200により実行される処理の流れを示すフローチャートの一例である。 本発明の第3実施例に係る処理システム3のシステム構成例である。 サーバ32が起動される様子を示す図である。 ジョブ管理部30Aにより代替処理が開始された状態を示す図である。 ジョブ管理部30Aにフェールオーバが発生せずに、所定期間が経過した状態を示す図である。 第3実施例に係るサーバ30の起動制御部30Cにより実行される処理の流れを示すフローチャートの一例である。 第3実施例に係るサーバ32の実行状態確認部32Dにより実行される処理の流れを示すフローチャートの一例である。
以下、本発明を実施するための形態について、添付図面を参照しながら実施例を挙げて説明する。
<第1実施例>
以下、図面を参照し、本発明の第1実施例に係る処理装置、処理システム、及びプログラムについて説明する。
[全体構成]
図1は、本発明の第1実施例に係る処理システム1のシステム構成例である。処理システム1は、サーバ10と、サーバ100とを備える。
サーバ10は、例えばシステムの自動運転処理等、スケジュールに従った自発的な処理を行う。また、これに限らず、サーバ10は、LANを介してクライアントコンピュータに接続され、クライアントコンピュータからの要求に応じた処理を行い、処理結果をクライアントコンピュータに提供するものであってもよい。また、サーバ10は、オペレータ等により図示しない入出力手段に対して入力された要求に応じた処理を行ってもよい。
サーバ10とサーバ100は、例えばインターネット等のネットワーク50によって接続されている。サーバ100は、サーバ10その他のネットワーク50に接続された装置に対して、クラウドサービスを提供する。
図2は、サーバ10及びサーバ100のハードウェア構成例である。サーバ10及びサーバ100は、例えば、CPU(Central Processing Unit)Aと、ドライブ装置Bと、補助記憶装置Dと、メモリ装置Eと、インターフェース装置Fと、入力装置Gと、表示装置Hと、を備える。これらの構成要素は、バスやシリアル回線等を介して接続されている。また、サーバ10及びサーバ100は、図示しないタイマやDMA(Direct Memory Access)コントローラ、割り込みコントローラ等を備えてよい。なお、図1では、補助記憶装置とメモリ装置を区別せず、単に記憶装置11、110と表現している。
CPUAは、例えば、プログラムカウンタや命令デコーダ、各種演算器、LSU(Load Store Unit)、汎用レジスタ等を有するプロセッサである。ドライブ装置Bは、記憶媒体Cからプログラムやデータを読み込み可能な装置である。プログラムを記録した記憶媒体Cがドライブ装置Bに装着されると、プログラムが記憶媒体Cからドライブ装置Bを介して補助記憶装置Dにインストールされる。記憶媒体Cは、例えば、CD(Compact Disc)、DVD(Digital Versatile Disc)、USB(Universal Serial Bus)メモリ等の可搬型の記憶媒体である。また、補助記憶装置Dは、例えば、HDD(Hard Disk Drive)やフラッシュメモリである。
プログラムのインストールは、上記のように記憶媒体Cを用いる他、インターフェース装置Fがネットワークを介して他のコンピュータよりダウンロードし、補助記憶装置Dにインストールすることによって行うこともできる。ネットワークは、インターネット、LAN(Local Area Network)、無線ネットワーク等である。また、プログラムは、サーバ10又はサーバ100の出荷時に、予め補助記憶装置DやROM(Read Only Memory)等に格納されていてもよい。
このようにしてインストール又は予め格納されたプログラムをCPUAが実行することにより、図2に示す態様の情報処理装置が、本実施例のサーバ10又はサーバ100として機能することができる。
メモリ装置Eは、例えば、RAM(Random Access Memory)やEEPROM(Electrically Erasable and Programmable Read Only Memory)である。インターフェース装置Fは、上記ネットワークとの接続等を制御する。
入力装置Gは、例えば、キーボード、マウス、ボタン、タッチパッド、タッチパネル、マイク等である。また、表示装置Hは、例えば、LCD(Liquid Crystal Display)やCRT(Cathode Ray Tube)等の表示装置である。サーバ10及びサーバ100は、表示装置Hの他、プリンタ、スピーカ等の他の種類の出力装置を備えてもよい。
なお、サーバ10及びサーバ100が同じハードウェア構成を有する必要はなく、それぞれが、図2に示すハードウェアから一部の要素を削除、又は他の要素に置換したものであってよく、他の要素を付加したものであっても構わない。
サーバ10は、CPUがプログラムを実行することにより機能する機能部として、ジョブ管理部10Aと、予兆検知部10Bと、仮想サーバ設定処理部10Cと、経過情報送信部10Dとを備える。
また、サーバ10は、図2における補助記憶装置D或いはメモリ装置Eとして機能する記憶装置11を備える。記憶装置11には、ジョブ情報11Aが格納される。
サーバ100は、CPUがプログラムを実行することにより機能する機能部として、スケジュール管理部100Aと、ジョブ実行管理部100Bとを備える。また、サーバ100は、図2における補助記憶装置D或いはメモリ装置Eとして機能する記憶装置110を備える。
サーバ10、100が備える機能ブロックは、明確に分離したプログラムによって実現される必要はなく、サブルーチンや関数として他のプログラムによって呼び出されるものであってもよい。また、機能ブロックの一部が、LSI(Large Scale Integrated circuit)、IC(Integrated Circuit)やFPGA(Field Programmable Gate Array)等のハードウェア手段であっても構わない。
ジョブ管理部10Aは、例えば上記のように、種々の情報処理等を行う。ジョブ管理部10Aが行う処理は、例えばアプリケーションプログラムAPを包含するジョブJBが集合したジョブネットJN単位で行われる。ジョブJBは、業務を処理するためのアプリケーションプログラムAPを包含しているオブジェクトであり、バッチファイル/シェルスクリプト、コマンドなどを含む。また、ジョブネットJNは、一連の流れを有する一以上のジョブJBの集合である。ジョブ管理部10Aは、情報処理を行うのに限らず、例えばデータ管理のための処理を行うものであってもよい。
[予兆検知]
予兆検知部10Bは、ジョブ管理部10Aが実行する処理が実行不能となる、フェールオーバが発生する予兆を示す事象が生じたか否かを検知する。「フェールオーバが発生する予兆を示す事象」は、例えば以下に列挙する事象のいずれか又は組み合わせである。予兆検知部10Bは、このような事象が生じているかどうかを、例えば一定間隔で確認する。なお、予兆検知部10Bは、事象毎に異なる確認間隔を設定してもよい。
(ハードウェアに関する事象)
・CPUを冷却する冷却ファンに異常が発生した
・CPUの縮退運転が発生した
・サーバ10の電源ユニットに障害が発生した
・ネットワーク50との通信インターフェースであるNIC(Network Interface Card)、或いはクライアントコンピュータとの通信を行うローカルLANやネットワーク50に異常が発生した
・ネットワーク50やサーバ10、或いは上記ローカルLAN等が高負荷状態となった
・ディスク異常(ディスクI/Oのハングアップなど)が生じた
(ソフトウェアに関する事象)
・常駐プロセスが停止し、その後再起動された
・CPU使用率が、長時間、閾値を超えた
・メモリ不足が生じた
・アプリケーションプログラムがハングアップした、或いはアプリケーションのレスポンス異常が検出された
[代替処理準備依頼]
予兆検知部10Bが上記のような事象を検知すると、仮想サーバ設定処理部10Cは、サーバ100上に仮想サーバ100Cを設定し、ジョブ管理部10Aと同等の処理すなわち代替処理を開始可能な状態となるように、サーバ100に依頼する。以下、係る依頼を「代替処理準備依頼」と称する。図3は、代替処理準備依頼がなされた状態を示す図である。代替処理準備依頼は、例えば仮想サーバ設定処理部10Cからサーバ100に対して所定のフォーマットに従ったデータを送信することによって行われる。
仮想サーバ設定処理部10Cは、代替処理準備依頼を行う際に、記憶装置11に格納されたジョブ情報11Aを、サーバ100の記憶装置110に転送する。ジョブ情報11Aは、例えば、サーバ10の名称及びIPアドレス、ジョブ名、ジョブ番号(ジョブID)、ジョブを構成するアプリケーションプログラムやバッチファイル等、ジョブの状態、スケジュール情報、ジョブの実行履歴(処理結果)を含む。
また、仮想サーバ設定処理部10Cは、代替処理準備依頼を行う際に、ジョブ管理部10Aの実行状態を確認するためのソフトウェアである「実行状態確認ツールTL」をサーバ100に送信する。
サーバ100のスケジュール管理部100A及びジョブ実行管理部100Bは、記憶装置110に転送されたジョブ情報110Aに基づいて仮想サーバ100Cを設定する。また、記憶装置110に転送されたジョブの状態、スケジュール情報、ジョブの実行履歴は、スケジュール管理部100A及びジョブ実行管理部100Bに処理パラメータとして入力される。これによって、仮想サーバ100Cは、ジョブ管理部10Aと同等の処理すなわち代替処理が開始可能な状態となる。
[経過情報送信]
経過情報送信部10Dは、仮想サーバ設定処理部10Cが代替処理準備依頼を行うと、ジョブ管理部10Aによるジョブの実行経過に応じて変化する経過情報を、例えば所定周期でサーバ100に送信する。経過情報送信部10Dが送信する経過情報は、例えばジョブの状態、スケジュール情報、ジョブの実行履歴であり、これらの情報によって記憶装置110に転送された情報が、最新の情報に書き換えられる。
係る処理によって仮想サーバ100Cは、代替処理準備依頼がなされた後、ジョブ管理部10Aによりジョブの実行が進行しジョブの状態等が変化した場合であっても、改めて状態情報を取得せずにフレッシュな状態情報を用いて代替処理を開始することができる。すなわち、仮想サーバ100Cは、実際に代替処理を開始する際に、どこから処理を開始すれば良いのかを把握することができる。従って、仮想サーバ100Cは、代替処理準備依頼がなされた後、代替処理が開始可能な状態を維持することができる。
[実行状態確認]
サーバ100の例えばOS(オペレーティングシステム)は、サーバ10から受信した実行状態確認ツールTLを実行して実行状態確認部100Dを機能させる。
実行状態確認部100Dは、ジョブ管理部10Aの実行状態を確認するために、サーバ10に対して実行状態確認コマンド(checkprocess)を、例えば所定周期で送信する。
サーバ10は、実行状態確認コマンドを受信すると、実行状態確認コマンドに記述された命令を実行する。図4は、実行状態確認コマンドを実行した結果、サーバ10により行われる処理の流れを示すフローチャートの一例である。
サーバ10は、ジョブ管理部10A中に、ジョブ管理部10Aの稼働に必要な「メインプロセス」が存在するか否かを確認する(S400)。
ジョブ管理部10Aの稼働に必要な「メインプロセス」が存在する場合、サーバ10は、ジョブ管理部10A上で動作しているジョブネットJNがスケジュール通りに実行されているか否かを確認する(S402)。
「メインプロセス」が存在し、且つジョブネットJNがスケジュール通りに実行されている場合、サーバ10は、復帰値1をサーバ100に返信する(S404)。
一方、「メインプロセス」が存在しない場合、或いはジョブネットがスケジュール通りに実行されていない場合、サーバ10は、復帰値−1をサーバ100に返信する(S406)。
(代替処理開始)
実行状態確認部100Dは、サーバ10から復帰値−1を受信すると、ジョブ管理部10Aが実行する処理が実行不能となるフェールオーバが発生したと判断し、仮想サーバ100Cに代替処理を開始させる。実行状態確認部100Dは、例えばスケジュール管理部100Aに、フェールオーバが発生したことを通知する。スケジュール管理部100Aは、ジョブ実行管理部100Bにフェールオーバが発生したことを通知する。そして、ジョブ実行管理部100Bは、仮想サーバ100Cにアプリケーションプログラムの実行を開始させる。仮想サーバ100Cは、例えば、ジョブ管理部10Aに入力される入力情報をサーバ10から取得し、ジョブ管理部10Aと同等の処理を行い、処理結果を記憶装置110に格納する。処理結果は、例えばジョブ情報110Aの一部に追加される。図5は、代替処理が開始された状態を示す図である。
(復旧処理)
実行状態確認部100Dは、代替処理が開始された後も、サーバ10に対して実行状態確認コマンドを、例えば所定周期で送信する。そして、実行状態確認部100Dは、サーバ10から復帰値1を受信すると、例えばスケジュール管理部100Aに、ジョブ管理部10Aが復旧可能であることを通知する。スケジュール管理部100Aは、ジョブ実行管理部100Bにジョブ管理部10Aが復旧可能であることを通知する。そして、ジョブ実行管理部100Bは、仮想サーバ100Cにアプリケーションプログラムの実行を停止させる。係る実行停止指示に応じて仮想サーバ100Cは、記憶装置110に格納された、仮想サーバ100Cの処理結果を含むジョブ情報110Aを、サーバ10の記憶装置11に転送する。このように、復旧に応じて仮想サーバ100Cにアプリケーションプログラムの実行を停止させるため、代替処理開始後においても、不要な仮想サーバの稼働によるリソースの浪費を抑制することができる。
以上の処理が完了すると、例えばサーバ10の仮想サーバ設定処理部10Cは、仮想サーバ100C、実行状態確認部110D、及びジョブ情報110Aを削除するようにサーバ100に依頼する。以下、係る依頼を「削除依頼」と称する。図6は、図5に示す状態からジョブ管理部10Aが復旧する様子を示す図である。
[代替処理準備終了依頼]
上記のように、代替処理の準備依頼後、実際にフェールオーバが発生した場合には、仮想サーバ100Cにより代替処理が開始され、代替処理が開始された後に、復旧が可能であることが検出されると、仮想サーバ100Cのアプリケーションプログラムの実行が停止される。
ここでは、代替処理の準備依頼後、実際にはフェールオーバが発生しなかった場合について説明する。代替処理の準備依頼後、フェールオーバが発生しなかった場合、仮想サーバ設定処理部10Cは、代替処理を開始可能な状態を終了するようにサーバ100に依頼する。以下、係る依頼を「代替処理準備終了依頼」と称する。
仮想サーバ設定処理部10Cは、代替処理準備依頼をした後、設定条件が成立したときに、代替処理を開始可能な状態を終了するように、サーバ100に依頼する。設定条件は、例えば、代替処理準備依頼をした時点から、ジョブ管理部10Aにフェールオーバが発生せずに所定期間が経過したことである。仮想サーバ設定処理部10Cは、例えば代替処理準備依頼するとタイマによる計時を開始し、タイマの計時する時間が所定期間(例えば30[min]程度)経過すると、代替処理準備終了依頼を行う。所定期間は、予めデフォルト値として設定され、ユーザによって変更可能としてよい。
代替処理準備終了依頼の内容は、仮想サーバ100Cの停止依頼を含んでもよいし、仮想サーバ100C、実行状態確認部100D、及びジョブ情報110Aを削除するようにサーバ100に依頼することを含んでもよい。図7は、ジョブ管理部10Aにフェールオーバが発生せずに、所定期間が経過した状態を示す図である。
係る処理によって、サーバ10は、代替処理を開始可能な状態を維持するために必要なリソースの消費を抑制することができる。
また、サーバ100は、クラウドサービスを提供するサーバであるため、一般的に、仮想サーバ100Cが設定されている時間に応じて課金する仕組みとなっている。従って、サーバ10は、代替処理準備依頼をした後、フェールオーバが発生せずに所定期間が経過した場合に仮想サーバ100Cを削除するように依頼することによって、そのまま仮想サーバ100Cを存続(停止状態も含む)させるものに比して、課金額を低減することができる。また、サーバ100が無償でサービスを提供し、或いはサーバ10と同事業者によって運営される場合であっても、サーバ100におけるメモリ容量や電力消費を低減することができるため、サーバ10は、運用上のコストを低減することができる。
なお、「予兆を示す事象を検知したとき」ではなく、「フェールオーバが発生したとき」に仮想サーバ100Cを設定する場合、本実施例に比して更にコストを低減できるとも考えられる。しかしながら、この場合、サーバ100は、迅速に代替処理を開始することができない場合がある。サーバ10からクラウド環境下のサーバ100に処理を移行させるには、ジョブ情報11Aをサーバ100側にコピーする処理と、仮想サーバ100Cをジョブ情報110Aに基づいて生成する処理が必要となる。係る処理は、クラウド環境によっては比較的長い時間を要する場合があり、ジョブ管理部10Aが実行するジョブネットがリアルタイム性の高いものであれば、移行処理に要する時間によって実用性が損なわれる場合がある。従って、本実施例のように「予兆を示す事象を検知したとき」に仮想サーバ100Cを設定させることによって、サーバ100が、代替処理を迅速に開始することができる。
[フローチャート]
図8は、第1実施例に係るサーバ10の仮想サーバ設定処理部10Cにより実行される処理の流れを示すフローチャートの一例である。本フローチャートは、例えば周期的に繰り返し実行される。
まず、仮想サーバ設定処理部10Cは、予兆検知部10Bが、フェールオーバが発生する予兆を示す事象が生じたことを検知するまで待機する(S500)。
予兆検知部10Bが、フェールオーバが発生する予兆を示す事象が生じたことを検知すると、仮想サーバ設定処理部10Cは、代替処理準備依頼のためのデータをサーバ100に送信する(S502)。
次に、仮想サーバ設定処理部10Cは、実行状態確認コマンドに対する応答としてサーバ100に復帰値−1が返信されたか否かを判定する(S504)。
実行状態確認コマンドに対する応答としてサーバ100に復帰値−1が返信されなかった場合、仮想サーバ設定処理部10Cは、代替処理準備依頼のためのデータを送信してから所定期間が経過したか否かを判定する(S506)。代替処理準備依頼のためのデータを送信してから所定期間が経過していない場合、仮想サーバ設定処理部10Cは、S504に戻り、判定を行う。
代替処理準備依頼を送信してから所定期間が経過すると、仮想サーバ設定処理部10Cは、代替処理準備終了依頼のためのデータをサーバ100に送信し(S508)、本フローチャートの1ルーチンを終了する。
一方、実行状態確認コマンドに対する応答としてサーバ100に復帰値−1が返信された場合、仮想サーバ設定処理部10Cは、ジョブ管理部10Aに復旧処理を行わせ(S510)、本フローチャートの1ルーチンを終了する。
図9は、第1実施例に係るサーバ100により実行される処理の流れを示すフローチャートの一例である。本フローチャートは、例えば周期的に繰り返し実行される。
まず、サーバ100は、代替処理準備依頼のためのデータを受信するまで待機する(S550)。
代替処理準備依頼のためのデータを受信すると、サーバ100は、仮想サーバ100Cと実行状態確認部100Dを設定する(S552)。
次に、サーバ100の実行状態確認部100Dは、ジョブ管理部10Aにフェールオーバが発生したか否かを判定する(S554)。
ジョブ管理部10Aにフェールオーバが発生していない場合、サーバ100は、代替処理準備終了依頼のためのデータを受信したか否かを判定する(S556)。代替処理準備終了依頼のためのデータを受信していない場合、サーバ100は、S554に戻り、実行状態確認部100Dによる判定を行う。
代替処理準備終了依頼のためのデータを受信すると、サーバ100は、仮想サーバ100C、実行状態確認部100D、及びジョブ情報110Aを削除し(S558)、本フローチャートの1ルーチンを終了する。
一方、ジョブ管理部10Aにフェールオーバが発生した場合、サーバ100は、代替処理を開始する(S560)。
代替処理を開始すると、サーバ100の実行状態確認部100Dは、ジョブ管理部10Aが復旧可能であるか否かを判定する(S562)。本判定は、前述のように、実行状態確認コマンドの復帰値を参照して行われる。ジョブ管理部10Aが復旧可能でない場合、実行状態確認部100Dは、S562の判定を周期的に繰り返し実行する。
実行状態確認部100Dによりジョブ管理部10Aが復旧可能であると判定されると、サーバ100の仮想サーバ100Cは、ジョブ情報110Aをサーバ10の記憶装置11に転送する(S564)。
次に、サーバ100は、サーバ10から削除依頼を受信するまで待機し(S566)、削除依頼を受信すると、仮想サーバ100C、実行状態確認部100D、及びジョブ情報110Aを削除し(S568)、本フローチャートの1ルーチンを終了する。
[まとめ]
以上説明した本発明の第1実施例に係る処理装置、処理システム、及びプログラムによれば、代替処理準備依頼をした時点からフェールオーバが発生せずに所定期間が経過した場合に代替処理準備終了依頼を行うため、リソースの浪費の抑制を図ることができる。
また、本発明の第1実施例に係る処理装置、処理システム、及びプログラムによれば、代替処理準備依頼を行った後、ジョブの実行経過に応じて変化する経過情報を送信するため、代替処理が開始可能な状態を維持することができる。
なお、請求項1における「処理部」は、例えばジョブ管理部10Aに対応し、「制御部」は、例えば仮想サーバ設定処理部10Cに対応し、「処理装置」は、例えばサーバ10に対応し、「代替処理装置」は、例えばサーバ100に対応する。
<第2実施例>
以下、図面を参照し、本発明の第2実施例に係る処理装置、処理システム、及びプログラムについて説明する。
[全体構成]
図10は、本発明の第2実施例に係る処理システム2のシステム構成例である。処理システム2は、サーバ20、22、25と、サーバ200とを備える。
サーバ20、22は、例えばシステムの自動運転処理等、スケジュールに従った自発的な処理を行う。また、これに限らず、サーバ20、22は、LANを介してクライアントコンピュータに接続され、クライアントコンピュータからの要求に応じた処理を行い、処理結果をクライアントコンピュータに提供するものであってもよい。また、サーバ20、22は、オペレータ等により図示しない入出力手段に対して入力された要求に応じた処理を行ってもよい。
サーバ20とサーバ22は、例えば通信線27によって接続されている。サーバ25は、通信線27に接続され、後述するようにサーバ20、22の監視を行う。
サーバ25が監視するサーバの数は、図10に示す二個に限らず、如何なる数であってもよい。
また、サーバ20、22、25とサーバ200は、例えばインターネット等のネットワーク50によって接続されている。サーバ200は、サーバ20、22、25その他のネットワーク50に接続された装置に対して、クラウドサービスを提供する。
本実施例では、サーバ20、22、25及びサーバ200のハードウェア構成については、第1実施例に係るサーバ10等と同様であるため、図2を参照することとし、説明を省略する。
サーバ20は、CPUがプログラムを実行することにより機能する機能部として、ジョブ管理部20Aと、仮想サーバ設定処理部20Cと、経過情報送信部20Dとを備える。同様に、サーバ22は、CPUがプログラムを実行することにより機能する機能部として、ジョブ管理部22Aと、仮想サーバ設定処理部22Cと、経過情報送信部22Dとを備える。
サーバ25は、CPUがプログラムを実行することにより機能する機能部として、予兆検知部25Bと、実行状態確認部25Dとを備える。
また、サーバ20は、補助記憶装置或いはメモリ装置として機能する記憶装置21を備える。記憶装置21には、ジョブ情報21Aが格納される。また、サーバ22は、補助記憶装置或いはメモリ装置として機能する記憶装置23を備える。記憶装置23には、ジョブ情報23Aが格納される。
サーバ200は、CPUがプログラムを実行することにより機能する機能部として、スケジュール管理部200Aと、ジョブ実行管理部200Bとを備える。また、サーバ200は、補助記憶装置或いはメモリ装置として機能する記憶装置210を備える。
サーバ20、22、25、200が備える機能ブロックは、明確に分離したプログラムによって実現される必要はなく、サブルーチンや関数として他のプログラムによって呼び出されるものであってもよい。また、機能ブロックの一部が、LSI、ICやFPGA等のハードウェア手段であっても構わない。
ジョブ管理部20A、22Aは、例えば上記のように、種々の情報処理を行う。ジョブ管理部20A、22Aが行う処理は、例えばアプリケーションプログラムAPを包含するジョブJBが集合したジョブネットJN単位で行われる。ジョブJBは、業務を処理するためのアプリケーションプログラムAPを包含しているオブジェクトであり、バッチファイル/シェルスクリプト、コマンドなどを含む。また、ジョブネットJNは、一連の流れを有する一以上のジョブJBの集合である。ジョブ管理部10Aは、情報処理を行うのに限らず、例えばデータ管理のための処理を行うものであってもよい。
[予兆検知]
本実施例のサーバ25は、サーバ20、22に関してフェールオーバの監視を行う。サーバ25の予兆検知部25Bは、ジョブ管理部20A、22Aにフェールオーバが発生する予兆を示す事象が生じたか否かを検知する。「フェールオーバが発生する予兆を示す事象」については、第1実施例と同様であるため、説明を省略する。予兆検知部25Bは、フェールオーバが発生する予兆を示す事象が生じているかどうかを、例えば一定間隔で確認する。なお、予兆検知部25Bは、事象毎に異なる確認間隔を設定してもよい。
予兆検知部25Bは、サーバ20に関してフェールオーバが発生する予兆を示す事象を検知すると、その旨を通知するための予兆検知信号をサーバ20に送信する。また、予兆検知部25Bは、サーバ22に関してフェールオーバが発生する予兆を示す事象を検知すると、その旨を通知するための予兆検知信号をサーバ22に送信する。
なお、このような一括監視はあくまで一例であり、本実施例の処理システムは、例えばサーバA、B、Cが存在する場合に、サーバAがサーバBの監視を行い、サーバBがサーバCの監視を行い、サーバCがサーバAの監視を行う循環的な監視を行ってもよい。また、本実施例の処理システムは、一対のサーバが互いに監視を行う相互的な監視を行ってもよい。
[代替処理準備依頼]
サーバ20の仮想サーバ設定処理部20Cは、予兆検知信号を受信すると、サーバ200上に仮想サーバ200Caを設定し、ジョブ管理部20Aと同等の処理すなわち代替処理を開始可能な状態となるように、サーバ200に依頼する。
また、サーバ22の仮想サーバ設定処理部22Cは、予兆検知信号を受信すると、サーバ200上に仮想サーバ200Cbを設定し、ジョブ管理部22Aと同等の処理すなわち代替処理を開始可能な状態となるように、サーバ200に依頼する。以下、これらの処理を「代替処理準備依頼」と称する。図11は、仮想サーバ設定処理部20C、22Cから代替処理準備依頼がなされた状態を示す図である。代替処理準備依頼は、例えば仮想サーバ設定処理部20C、20Dからサーバ200に対して所定のフォーマットに従ったデータを送信することによって行われる。
仮想サーバ設定処理部20Cは、代替処理準備依頼を行う際に、記憶装置21に格納されたジョブ情報21Aを、サーバ200の記憶装置210に転送する。ジョブ情報21Aは、例えば、サーバ20の名称及びIPアドレス、ジョブ名、ジョブ番号(ジョブID)、ジョブを構成するアプリケーションプログラムやバッチファイル等、ジョブの状態、スケジュール情報、ジョブの実行履歴(処理結果)を含む。
同様に、仮想サーバ設定処理部22Cは、代替処理準備依頼を行う際に、記憶装置23に格納されたジョブ情報23Aを、サーバ200の記憶装置210に転送する。ジョブ情報23Aには、例えば、サーバ22の名称及びIPアドレス、ジョブ名、ジョブ番号(ジョブID)、ジョブを構成するアプリケーションプログラムやバッチファイル等、ジョブの状態、スケジュール情報、ジョブの実行履歴(処理結果)が含まれる。
サーバ200のスケジュール管理部200A及びジョブ実行管理部200Bは、代替処理準備依頼を行ったサーバ毎に、仮想サーバを設定する。すなわち、サーバ200のスケジュール管理部200A及びジョブ実行管理部200Bは、仮想サーバ設定処理部20Cによって記憶装置210に転送されたジョブ情報210Aaに基づいて仮想サーバ200Caを設定する。同様に、サーバ200のスケジュール管理部200A及びジョブ実行管理部200Bは、仮想サーバ設定処理部22Cによって記憶装置210に転送されたジョブ情報210Abに基づいて仮想サーバ200Cbを設定する。また、記憶装置210に転送されたジョブの状態、スケジュール情報、ジョブの実行履歴は、スケジュール管理部200A及びジョブ実行管理部200Bに処理パラメータとして入力される。これによって、仮想サーバ200Ca、200Cbは、ジョブ管理部20A、22Aと同等の処理すなわち代替処理が開始可能な状態となる。
[経過情報送信]
経過情報送信部20Dは、仮想サーバ設定処理部20Cが代替処理準備依頼を行うと、ジョブ管理部20Aによるジョブの実行経過に応じて変化する経過情報を、例えば所定周期でサーバ200に送信する。経過情報送信部20Dが送信する経過情報は、例えばジョブの状態、スケジュール情報、ジョブの実行履歴であり、これらの情報によって記憶装置210に転送された情報が書き換えられる。
同様に、経過情報送信部22Dは、仮想サーバ設定処理部22Cが代替処理準備依頼を行うと、ジョブ管理部22Aによるジョブの実行経過に応じて変化する経過情報を、例えば所定周期でサーバ200に送信する。経過情報送信部22Dが送信する経過情報は、例えばジョブの状態、スケジュール情報、ジョブの実行履歴であり、これらの情報によって記憶装置210に転送された情報が書き換えられる。
係る処理によって仮想サーバ200Caは、代替処理準備依頼がなされた後、ジョブ管理部20Aによりジョブの実行が進行しジョブの状態等が変化した場合であっても、改めて状態情報を取得せずにフレッシュな状態情報を用いて代替処理を開始することができる。同様に、仮想サーバ200Cbは、代替処理準備依頼がなされた後、ジョブ管理部22Aによりジョブの実行が進行しジョブの状態等が変化した場合であっても、改めて状態情報を取得せずにフレッシュな状態情報を用いて代替処理を開始することができる。すなわち、仮想サーバ200Ca、200Cbは、実際に代替処理を開始する際に、どこから処理を開始すれば良いのかを把握することができる。従って、仮想サーバ200Ca、200Cbは、代替処理準備依頼がなされた後、代替処理が開始可能な状態を維持することができる。
[実行状態確認]
サーバ25の実行状態確認部25Dは、ジョブ管理部20A、22Bの実行状態を確認するために、サーバ20、22に対して実行状態確認コマンド(checkprocess)を、例えば所定周期で送信する。実行状態確認コマンドの送信は、フェールオーバが発生する予兆を示す事象が検知されたサーバに対して行われる。
サーバ20、22は、実行状態確認コマンドを受信すると、実行状態確認コマンドに記述された命令を実行する。実行状態確認コマンドを実行した結果として行われる処理の流れについては、第1実施例で図4を用いて説明したものと同様であるため、説明を省略する。実行状態確認コマンドの復帰値は、サーバ25の実行状態確認部25Dに返信される。
(代替処理開始)
実行状態確認部25Dは、サーバ20又は22から復帰値−1を受信すると、ジョブ管理部20A又は20Bが実行する処理が実行不能となるフェールオーバが発生したと判断し、サーバ200に代替処理を開始させる。実行状態確認部25Dは、例えばスケジュール管理部200Aに、該当するサーバにフェールオーバが発生したことを示すフェールオーバ発生通知を送信する。以下の説明では、サーバ22のジョブ管理部22Aにフェールオーバが発生したものとして説明するが、サーバ20に関しても同様である。スケジュール管理部200Aは、ジョブ実行管理部200Bに、サーバ22のジョブ管理部22Aにフェールオーバが発生したことを通知する。ジョブ実行管理部200Bは、仮想サーバ200Cbにアプリケーションプログラムの実行を開始させる。仮想サーバ200Cbは、例えば、ジョブ管理部22Aに入力される入力情報をサーバ22から取得し、ジョブ管理部22Aと同等の処理を行い、処理結果を記憶装置210に格納する。処理結果は、例えばジョブ情報210Abの一部に追加される。図12は、ジョブ管理部22Aの代替処理が開始された状態を示す図である。
(復旧処理)
実行状態確認部25Dは、代替処理が開始された後も、サーバ20、22に対して実行状態確認コマンドを、例えば所定周期で送信する。そして、実行状態確認部25Dは、代替処理が開始されたサーバから復帰値1を受信すると、例えばスケジュール管理部200Aに、当該サーバのジョブ管理部が復旧可能であることを示す復旧可能通知を送信する。以下、サーバ22に関してのみ説明するが、サーバ20についても同様の処理が行われる。ジョブ管理部22Aについての復旧可能通知を受信したスケジュール管理部200Aは、ジョブ実行管理部200Bに、ジョブ管理部22Aが復旧可能であることを通知する。そして、ジョブ実行管理部200Bは、仮想サーバ200Cbにアプリケーションプログラムの実行を停止させる。係る停止指示に応じて仮想サーバ200Cbは、記憶装置210に格納された、仮想サーバ200Cbの処理結果を含むジョブ情報210Abを、サーバ22の記憶装置23に転送する。以上の処理が完了すると、サーバの仮想サーバ設定処理部22Cは、仮想サーバ200Cb、及びジョブ情報210Abを削除するようにサーバ200に依頼する。以下、係る依頼を「削除依頼」と称する。図13は、図12に示す状態からジョブ管理部22Aが復旧する様子を示す図である。
[代替処理準備終了依頼]
上記のように、実際にフェールオーバが発生した場合には、仮想サーバにより代替処理が開始されるが、フェールオーバが発生しなかった場合には、仮想サーバ設定処理部20C、22Cが、代替処理を開始可能な状態を終了するようにサーバ200に依頼する。以下、係る依頼を「代替処理準備終了依頼」と称する。
仮想サーバ設定処理部20Cは、代替処理準備依頼をした後、設定条件が成立したときに、代替処理を開始可能な状態を終了するように、サーバ200に依頼する。設定条件は、例えば、代替処理準備依頼をした時点から、ジョブ管理部20Aにフェールオーバが発生せずに所定期間が経過したことである。仮想サーバ設定処理部20Cは、代替処理準備依頼するとタイマによる計時を開始し、タイマの計時する時間が所定期間(例えば30[min]程度)経過すると、代替処理準備終了依頼を行う。所定期間は、予めデフォルト値として設定され、ユーザによって変更可能としてよい。
同様に、仮想サーバ設定処理部22Cは、代替処理準備依頼をした後、設定条件が成立したときに、代替処理を開始可能な状態を終了するように、サーバ200に依頼する。設定条件は、例えば、代替処理準備依頼をした時点から、ジョブ管理部22Aにフェールオーバが発生せずに所定期間が経過したことである。仮想サーバ設定処理部22Cは、代替処理準備依頼するとタイマによる計時を開始し、タイマの計時する時間が所定期間(例えば30[min]程度)経過すると、代替処理準備終了依頼を行う。所定期間は、予めデフォルト値として設定され、ユーザによって変更可能としてよい。
仮想サーバ設定処理部20Cによる代替処理準備終了依頼の内容は、仮想サーバ200Ca、及びジョブ情報210Aaを削除するようにサーバ200に依頼することを含む。仮想サーバ設定処理部22Cによる代替処理準備終了依頼の内容は、仮想サーバ200Cb、及びジョブ情報210Abを削除するようにサーバ200に依頼することを含む。図14は、ジョブ管理部20Aにフェールオーバが発生せずに、所定期間が経過した状態を示す図である。なお、図14は、ジョブ管理部22Aにはフェールオーバが発生し、代替処理が開始されている状態を示している。
係る処理によって、サーバ20、22は、運用上のコストを低減することができる。サーバ200は、クラウドサービスを提供するサーバであるため、一般的に、各仮想サーバが設定されている時間に応じて課金する仕組みとなっている。従って、サーバ20、22は、代替処理準備依頼をした時点からフェールオーバが発生せずに所定期間が経過した場合に該当する仮想サーバを削除するように依頼することによって、そのまま仮想サーバを存続させるものに比して、課金額を低減することができる。また、サーバ200が無償でサービスを提供し、或いはサーバ20、22と同事業者によって運営される場合であっても、サーバ200におけるメモリ容量や電力消費を低減することができるため、サーバ20、22は、運用上のコストを低減することができる。
[フローチャート]
図15は、第2実施例に係るサーバ20、22の仮想サーバ設定処理部20C、22Cにより実行される処理の流れを示すフローチャートの一例である。本フローチャートは、例えば周期的に繰り返し実行される。なお、図15及び図16は、サーバ20に関するものとして説明するが、サーバ22に関しても同様の処理が行われる。
まず、仮想サーバ設定処理部20Cは、予兆検知部25Bから予兆検知信号を受信するまで待機する(S600)。
予兆検知部25Bから予兆検知信号を受信すると、仮想サーバ設定処理部20Cは、代替処理準備依頼のためのデータをサーバ200に送信する(S602)。
次に、仮想サーバ設定処理部20Cは、実行状態確認コマンドに対する応答としてサーバ200に復帰値−1が返信したか否かを判定する(S604)。
実行状態確認コマンドに対する応答としてサーバ200に復帰値−1が返信されなかった場合、仮想サーバ設定処理部20Cは、代替処理準備依頼のためのデータを送信してから所定期間が経過したか否かを判定する(S606)。代替処理準備依頼のためのデータを送信してから所定期間が経過していない場合、仮想サーバ設定処理部20Cは、S604に戻り、判定を行う。
代替処理準備依頼のためのデータを送信してから所定期間が経過すると、仮想サーバ設定処理部20Cは、代替処理準備終了依頼をサーバ200に送信し(S608)、本フローチャートの1ルーチンを終了する。
一方、実行状態確認コマンドに対する応答としてサーバ200に復帰値−1が返信された場合、仮想サーバ設定処理部20Cは、ジョブ管理部20Aに復旧処理を行わせ(S610)、本フローチャートの1ルーチンを終了する。
図16は、第2実施例に係るサーバ200により実行される処理の流れを示すフローチャートの一例である。本フローチャートは、例えば周期的に繰り返し実行される。
まず、サーバ200は、サーバ20から代替処理準備依頼のためのデータを受信するまで待機する(S650)。
サーバ20から代替処理準備依頼のためのデータを受信すると、サーバ200は、仮想サーバ200Caを設定する(S652)。
次に、サーバ200は、実行状態確認部25Dからフェールオーバ発生通知を受信したか否かを判定する(S654)。
実行状態確認部25Dからフェールオーバ発生通知を受信しなかった場合、サーバ200は、サーバ20から代替処理準備終了依頼のためのデータを受信したか否かを判定する(S656)。サーバ20から代替処理準備終了依頼のためのデータを受信していない場合、サーバ200は、S654に戻り、判定を行う。
代替処理準備終了依頼のためのデータを受信すると、サーバ200は、仮想サーバ200Ca、及びジョブ情報210Aaを削除し(S658)、本フローチャートの1ルーチンを終了する。
一方、実行状態確認部25Dからフェールオーバ発生通知を受信した場合、サーバ200は、代替処理を開始する(S660)。
代替処理を開始すると、サーバ200の図示しないOSは、実行状態確認部25Dからジョブ管理部20Aが復旧可能であることを示す復旧可能通知を受信するまで待機する(S662)。
ジョブ管理部20Aが復旧可能であることを示す復旧可能通知を受信すると、サーバ200の仮想サーバ200Caは、ジョブ情報210Aaをサーバ20の記憶装置21に転送する(S664)。
次に、サーバ200は、サーバ20から削除依頼を受信するまで待機し(S666)、サーバ20から削除依頼を受信すると、仮想サーバ200Ca、及びジョブ情報210Aaを削除し(S668)、本フローチャートの1ルーチンを終了する。
[まとめ]
以上説明した本発明の第2実施例に係る処理装置、処理システム、及びプログラムによれば、代替処理準備依頼をした時点からフェールオーバが発生せずに所定期間が経過した場合に代替処理準備終了依頼を行うため、リソースの浪費の抑制を図ることができる。
また、本発明の第2実施例に係る処理装置、処理システム、及びプログラムによれば、代替処理準備依頼を行った後、ジョブの実行経過に応じて変化する経過情報を送信するため、代替処理が開始可能な状態を維持することができる。
本実施例では、サーバ25が実行状態確認部25Dを備え、フェールオーバが生じたか否かを確認するものとしたが、第1実施例と同様に、サーバ20、22、25のいずれかが実行状態確認ツールTLをサーバ200に送信して実行状態確認を行わせてもよい。
なお、請求項1の「処理部」は、例えばジョブ管理部20A、22Aに対応し、「制御部」は、例えば仮想サーバ設定処理部20C、22Cに対応し、「処理装置」は、例えばサーバ20、22に対応し、「代替処理装置」は、例えばサーバ200に対応する。
また、請求項5の「実行状態確認部」は、例えば実行状態確認部25Dに対応する。
<第3実施例>
以下、図面を参照し、本発明の第3実施例に係る処理装置、処理システム、及びプログラムについて説明する。
[全体構成]
図17は、本発明の第3実施例に係る処理システム3のシステム構成例である。処理システム3は、サーバ30と、サーバ32と、共有メモリ35とを備える。
サーバ30は、例えばシステムの自動運転処理等、スケジュールに従った自発的な処理を行う。また、これに限らず、サーバ30は、LANを介してクライアントコンピュータに接続され、クライアントコンピュータからの要求に応じた処理を行い、処理結果をクライアントコンピュータに提供するものであってもよい。また、サーバ30は、オペレータ等により図示しない入出力手段に対して入力された要求に応じた処理を行ってもよい。
サーバ30とサーバ32は、例えば通信線37によって接続されている。サーバ32は、サーバ30の代替処理装置として機能する。また、サーバ30、32は、例えばメモリバス38によって共有メモリ35にアクセス可能となっている。
本実施例では、サーバ30、32のハードウェア構成については、第1実施例に係るサーバ10等と同様であるため、図2を参照することとし、説明を省略する。
サーバ30は、CPUが図示しない補助記憶装置に格納されたプログラムを実行することにより機能する機能部として、ジョブ管理部30Aと、予兆検知部30Bと、起動制御部30Cとを備える。同様に、サーバ32は、CPUが図示しない補助記憶装置に格納されたプログラムを実行することにより機能する機能部として、ジョブ管理部32Aと、実行状態確認部32Dと、を備える。
サーバ30、32が備える機能ブロックは、明確に分離したプログラムによって実現される必要はなく、サブルーチンや関数として他のプログラムによって呼び出されるものであってもよい。また、機能ブロックの一部が、LSI、ICやFPGA等のハードウェア手段であっても構わない。
共有メモリ35は、例えば補助記憶装置やメモリ装置であり、ジョブ情報35Aが格納される。
ジョブ管理部30Aは、例えば上記のように、種々の情報処理を行う。ジョブ管理部30Aが行う処理は、アプリケーションプログラムAPを包含するジョブJBが集合したジョブネットJN単位で行われる。ジョブJBは、業務を処理するためのアプリケーションプログラムAPを包含しているオブジェクトであり、バッチファイル/シェルスクリプト、コマンドなどを含む。また、ジョブネットJNは、一連の流れを有する一以上のジョブJBの集合である。ジョブ管理部30Aは、情報処理を行うのに限らず、例えばデータ管理のための処理を行うものであってもよい。ジョブ管理部30Aが行った処理の結果、履歴等は、共有メモリ35にジョブ情報35Aとして格納される。
ジョブ情報35Aは、例えば、ジョブ名、ジョブ番号(ジョブID)、ジョブの状態、スケジュール情報、ジョブの実行履歴(処理結果)を含む。本実施例において、ジョブ管理部30Aが実行するアプリケーションプログラムやバッチファイル等は、代替処理装置として機能するサーバ32が保持しているため、必ずしもジョブ情報35Aに含まれる必要はない。
[予兆検知]
予兆検知部30Bは、ジョブ管理部30Aが実行する処理が実行不能となる、フェールオーバが発生する予兆を示す事象が生じたか否かを検知する。「フェールオーバが発生する予兆を示す事象」については、第1実施例と同様であるため、説明を省略する。予兆検知部30Bは、フェールオーバが発生する予兆を示す事象が生じているかどうかを、例えば一定間隔で確認する。なお、予兆検知部30Bは、事象毎に異なる確認間隔を設定してもよい。
予兆検知部30Bは、ジョブ管理部30Aについてフェールオーバが発生する予兆を示す事象を検知すると、その旨を起動制御部30Cに出力する。
[サーバ32の起動]
起動制御部30Cは、予兆検知部30Bが予兆を示す事象を検知すると、サーバ32の図示しない電源回路及びOS等に指示し、サーバ32を起動状態にする。
サーバ32は、ジョブ情報35Aを参照すればサーバ30と同等の処理すなわち代替処理を行うジョブ管理部32Aを機能させるためのプログラムを、予め補助記憶装置等に保持している。従って、サーバ32は、起動制御部30Cによって起動されると、メインプロセスを起動させてジョブ管理部32Aが動作可能な状態となり、ジョブ管理部30Aの代替処理を開始可能な状態となる。図18は、サーバ32が起動される様子を示す図である。
[実行状態確認]
サーバ32の実行状態確認部32Dは、ジョブ管理部30Aの実行状態を確認するために、サーバ30に対して実行状態確認コマンド(checkprocess)を、例えば所定周期で送信する。
サーバ30は、実行状態確認コマンドを受信すると、実行状態確認コマンドに記述された命令を実行する。実行状態確認コマンドを実行した結果として行われる処理の流れについては、第1実施例で図4を用いて説明したものと同様であるため、説明を省略する。実行状態確認コマンドの復帰値は、サーバ32の実行状態確認部32Dに返信される。
(代替処理開始)
実行状態確認部32Dは、サーバ30から復帰値−1を受信すると、ジョブ管理部30Aが実行する処理が実行不能となるフェールオーバが発生したと判断し、ジョブ管理部32Aに代替処理を開始させる。ジョブ管理部32Aは、例えば、ジョブ管理部30Aに入力される入力情報をサーバ30から取得し、ジョブ管理部30Aと同等の処理を行い、処理結果を共有メモリ35に格納する。処理結果は、例えばジョブ情報35Aの一部に追加される。図19は、ジョブ管理部30Aにより代替処理が開始された状態を示す図である。
(復旧処理)
実行状態確認部32Dは、代替処理が開始された後も、サーバ30に対して実行状態確認コマンドを、例えば所定周期で送信する。そして、実行状態確認部32Dは、サーバ30から復帰値1を受信すると、ジョブ管理部32Aに代替処理を停止させ、サーバ30をシャットダウンしてサーバ30の電源をオフにする。
[代替処理準備終了]
上記のように、実際にフェールオーバが発生した場合には、ジョブ管理部32Aにより代替処理が開始されるが、フェールオーバが発生しなかった場合には、起動制御部30Cが、サーバ32をシャットダウンしてサーバ32の電源をオフにする制御を行う。
起動制御部30Cは、サーバ32を起動させた後、設定条件が成立したときに、サーバ32をシャットダウンしてサーバ32の電源をオフにする制御を行う。設定条件は、例えば、サーバ32を起動した時点から(或いはジョブ管理部32Aのメインプロセスを起動した時点から)、ジョブ管理部30Aにフェールオーバが発生せずに所定期間が経過したことである。起動制御部30Cは、サーバ32を起動するとタイマによる計時を開始し、タイマの計時する時間が所定期間(例えば30[min]程度)経過すると、サーバ32をシャットダウンしてサーバ32の電源をオフにする。所定期間は、予めデフォルト値として設定され、ユーザによって変更可能としてよい。図20は、ジョブ管理部30Aにフェールオーバが発生せずに、所定期間が経過した状態を示す図である。
係る処理によって、サーバ30、32は、運用上のコストを低減することができる。サーバ32は、起動されて代替処理を開始可能な状態となってから、実際にフェールオーバが発生せずに所定期間経過すればシャットダウンされるため、電力消費を低減することができる。また、サーバ30、32の双方がアクセス可能な共有メモリ35にジョブの実行結果等を格納することにより、サーバ32は代替処理を開始可能な状態を維持することができる。この結果、サーバ30、32は、サーバ間の処理の受け渡しを迅速に行うことができる。
[フローチャート]
図21は、第3実施例に係るサーバ30の起動制御部30Cにより実行される処理の流れを示すフローチャートの一例である。本フローチャートは、例えば周期的に繰り返し実行される。
まず、起動制御部30Cは、予兆検知部30Bが、フェールオーバが発生する予兆を示す事象が生じたことを検知したか否かを判定する(S700)。
予兆検知部30Bが、フェールオーバが発生する予兆を示す事象が生じたことを検知すると、起動制御部30Cは、サーバ32を起動させる(S702)。
次に、起動制御部30Cは、実行状態確認コマンドに対する応答としてサーバ32に復帰値−1が返信されたか否かを判定する(S704)。
実行状態確認コマンドに対する応答としてサーバ32に復帰値−1が返信された場合、起動制御部30Cは、ジョブ管理部30Aに復旧処理を行わせる(S706)。
図22は、第3実施例に係るサーバ32の実行状態確認部32Dにより実行される処理の流れを示すフローチャートの一例である。本フローチャートは、サーバ32が起動されたときに開始される。
まず、実行状態確認部32Dは、ジョブ管理部32Aを機能させるためのメインプロセスを起動させる(S750)。
次に、実行状態確認部32Dは、サーバ30から復帰値−1を受信したか否かを判定する(S752)。
サーバ30から復帰値−1を受信した場合、実行状態確認部32Dは、ジョブ管理部32Aにジョブ管理部30Aの代替処理を開始させる(S754)。
次に、実行状態確認部32Dは、サーバ30から復帰値1を受信するまで待機する(S756)。サーバ30から復帰値1を受信すると、実行状態確認部32Dは、ジョブ管理部32Aに代替処理を停止させ、サーバ32をシャットダウンしてサーバ32の電源をオフにする(S758)。
一方、S752においてサーバ30から復帰値−1を受信しなかったと判定された場合、実行状態確認部32Dは、サーバ32の起動から所定期間が経過したか否かを判定する(S760)。サーバ32の起動から所定期間が経過していない場合、実行状態確認部32Dは、S752に戻り、判定を行う。
サーバ32の起動から所定期間が経過した場合、実行状態確認部32Dは、サーバ32をシャットダウンしてサーバ32の電源をオフにする(S762)。
[まとめ]
以上説明した本発明の第3実施例に係る処理装置、処理システム、及びプログラムによれば、サーバ32が起動された後、実際にフェールオーバが発生せずに所定期間経過すればサーバ32がシャットダウンされるため、電力消費を低減することができる。また、本発明の第3実施例に係る処理装置等は、リソースの浪費の抑制を図ることができる。また、サーバ30、32の双方がアクセス可能な共有メモリ35にジョブの実行結果等を格納することにより、サーバ32は、代替処理を開始可能な状態を維持することができる。この結果、サーバ30、32は、サーバ間の処理の受け渡しを迅速に行うことができる。
なお、請求項13における「処理部」は、例えばジョブ管理部30Aに対応し、「制御部」は、例えば起動制御部30Cに対応し、「処理装置」は、例えばサーバ30に対応し、「代替処理装置」は、例えばサーバ32に対応する。
以上、本発明を実施するための最良の形態について実施例を用いて説明したが、本発明はこうした実施例に何等限定されるものではなく、本発明の要旨を逸脱しない範囲内において種々の変形及び置換を加えることができる。
例えば、上記実施例とは異なり、特許請求の範囲における「処理装置」と「代替処理装置」の双方がクラウドサービスを提供する装置であってもよい。
本発明は、コンピュータ製造業、コンピュータ・ソフトウェア産業、コンピュータサービス提供産業、データ管理サービス提供産業等に利用することができる。
1、2、3 処理システム
10、20、22、25、30、32、100、200 サーバ
10A、20A、22A、30A、32A ジョブ管理部
10B、25B 予兆検知部
10C、20C、22C 仮想サーバ設定処理部
10D、20D、22D 経過情報送信部
11、21、23、110、210 記憶装置
11A、21A、23A、35A、110A、210Aa、210Ab ジョブ情報
25D、32D、100D 実行状態確認部
30C 起動制御部
35 共有メモリ
100A、200A スケジュール管理部
100B、200B ジョブ実行管理部
100C、200Ca、200Cb 仮想サーバ

Claims (22)

  1. 処理部により実行される処理が実行不能となる予兆を示す事象が生じたか否かを検知する予兆検知部と、
    前記予兆検知部により前記予兆を示す事象が生じたことが検知されたとき、前記処理部により実行される処理の代替処理を行うことが可能な代替処理装置に、該代替処理を開始可能な状態となるように依頼し、該開始可能な状態となるように依頼した後、設定条件が成立したときに前記代替処理を開始可能な状態を終了するように前記代替処理装置に依頼する制御部と、
    を備える処理装置。
  2. 前記制御部が、前記代替処理を開始可能な状態となるように前記代替処理装置に依頼した後、前記処理部により実行される処理の経過に応じて変化する情報を前記代替処理装置に送信する経過情報送信部を備える、
    請求項1記載の処理装置。
  3. 前記代替処理装置は、クラウドサービスを提供する装置であり、
    前記制御部は、前記代替処理を開始可能な状態となるように前記代替処理装置に依頼する際に、前記代替処理を実行するためのプログラムを前記代替処理装置に送信する、
    請求項2記載の処理装置。
  4. 前記制御部は、前記代替処理を開始可能な状態となるように前記代替処理装置に依頼する際に、前記処理部により実行される処理の実行状態を確認するためのプログラムを前記代替処理装置に送信し、該プログラムが実行されることにより、前記処理部により実行される処理が実行不能となったことが確認された場合に前記代替処理を開始するように、前記代替処理装置に依頼する、
    請求項1ないし3のいずれか1記載の処理装置。
  5. 前記制御部が、前記代替処理を開始可能な状態となるように前記代替処理装置に依頼した後、前記処理部により実行される処理が実行不能となったか否かを確認し、前記処理部により実行される処理が実行不能となったときに、前記代替処理を開始するように前記代替処理装置に依頼する実行状態確認部を備える、
    請求項1又は2記載の処理装置。
  6. 前記設定条件は、前記処理部により実行される処理が実行不能となることなく所定期間が経過したことである、
    請求項1ないし5のいずれか1項記載の処理装置。
  7. 処理装置に、
    処理部により実行される処理が実行不能となる予兆を示す事象が生じたか否かを検知させ、
    前記予兆を示す事象が生じたことが検知されたとき、前記処理部により実行される処理の代替処理を行うことが可能な代替処理装置に、該代替処理を開始可能な状態となるように依頼させ、
    前記代替処理を開始可能な状態となるように依頼させた後、設定条件が成立したときに前記代替処理を開始可能な状態を終了するように前記代替処理装置に依頼させる、
    プログラム。
  8. 前記処理装置に、
    前記代替処理を開始可能な状態となるように前記代替処理装置に依頼させた後、前記処理部により実行される処理の経過に応じて変化する情報を前記代替処理装置に送信させる、
    請求項7記載のプログラム。
  9. 前記代替処理装置は、クラウドサービスを提供する装置であり、
    前記処理装置に、
    前記代替処理を開始可能な状態となるように前記代替処理装置に依頼させる際に、前記代替処理を実行するためのプログラムを前記代替処理装置に送信させる、
    請求項8記載のプログラム。
  10. 前記処理装置に、
    前記代替処理を開始可能な状態となるように前記代替処理装置に依頼させる際に、前記処理部により実行される処理の実行状態を確認するためのプログラムを前記代替処理装置に送信させ、該プログラムが実行されることにより、前記処理部により実行される処理が実行不能となったことが確認された場合に前記代替処理を開始するように、前記代替処理装置に依頼させる、
    請求項9記載のプログラム。
  11. 前記処理装置に、
    前記代替処理を開始可能な状態となるように前記代替処理装置に依頼させた後、前記処理部により実行される処理が実行不能となったか否かを確認させ、
    前記処理部により実行される処理が実行不能となったときに、前記代替処理を開始するように前記代替処理装置に依頼させる、
    請求項7又は8記載のプログラム。
  12. 前記設定条件は、前記処理部により実行される処理が実行不能となることなく所定期間が経過したことである、
    請求項7ないし11のいずれか1項記載のプログラム。
  13. 処理部により実行される処理が実行不能となる予兆を示す事象が生じたか否かを検知する予兆検知部、及び前記予兆検知部により前記予兆を示す事象が生じたことが検知されたとき、前記処理部により実行される処理の代替処理を行うことが可能な代替処理装置が前記代替処理を開始可能な状態となるように制御する制御部を備える処理装置と、
    前記代替処理を開始可能な状態となるように依頼された後、設定条件が成立したときに前記開始可能な状態を終了する前記代替処理装置と、
    を備える処理システム。
  14. 前記処理装置は、前記制御部が、前記代替処理を開始可能な状態となるように前記代替処理装置に依頼した後、前記処理部により実行される処理の経過に応じて変化する情報を、前記代替処理装置がアクセス可能な記憶装置に格納する、
    請求項13記載の処理システム。
  15. 前記代替処理装置は、前記代替処理を開始可能な状態となるように依頼された後、前記処理部により実行される処理が実行不能となったか否かを確認する実行状態確認部を備え、
    該実行状態確認部により前記処理部により実行される処理が実行不能となったことが確認されたときに、前記代替処理を開始する、
    請求項13又は14記載の処理システム。
  16. 前記設定条件は、前記処理部により実行される処理が実行不能となることなく所定期間が経過したことである、
    請求項13ないし15のいずれか1項記載の処理システム。
  17. 処理装置と、該処理装置において行われる処理の代替処理を行うことが可能な代替処理装置とを備える処理システムに、
    前記処理装置において行われる処理が実行不能となる予兆を示す事象が生じたか否かを検知させ、
    前記予兆を示す事象が生じたことが検知されたとき、前記代替処理装置が前記代替処理を開始可能な状態となるよう制御させ、
    前記代替処理を開始可能な状態となるように制御させた後、設定条件が成立したときに、前記代替処理装置に前記代替処理を開始可能な状態を終了させる、
    プログラム。
  18. 前記処理装置に、
    前記代替処理を開始可能な状態となるように前記代替処理装置に依頼させた後、前記処理部により実行される処理の経過に応じて変化する情報を、前記代替処理装置がアクセス可能な記憶装置に記憶させる、
    請求項17記載のプログラム。
  19. 前記代替処理装置に、
    前記代替処理を開始可能な状態となるように依頼された後、前記処理部により実行される処理が実行不能となったか否かを確認させ、
    前記処理部により実行される処理が実行不能となったことが確認されたときに、前記代替処理を開始させる、
    請求項17又は18記載のプログラム。
  20. 前記設定条件は、前記処理部により実行される処理が実行不能となることなく所定期間が経過したことである、
    請求項17ないし19のいずれか1項記載のプログラム。
  21. 処理装置が、
    処理部により実行される処理が実行不能となる予兆を示す事象が生じたか否かを検知し、
    前記予兆を示す事象が生じたことが検知されたとき、前記処理部により実行される処理の代替処理を行うことが可能な代替処理装置に、該代替処理を開始可能な状態となるように依頼し、
    前記代替処理を開始可能な状態となるように依頼させた後、設定条件が成立したときに前記代替処理を開始可能な状態を終了するように前記代替処理装置に依頼する、
    処理方法。
  22. 処理装置と、該処理装置において行われる処理の代替処理を行うことが可能な代替処理装置とを備える処理システムが、
    前記処理装置において行われる処理が実行不能となる予兆を示す事象が生じたか否かを検知し、
    前記予兆を示す事象が生じたことが検知されたとき、前記代替処理装置が前記代替処理を開始可能な状態となるよう制御し、
    前記代替処理を開始可能な状態となるように制御させた後、設定条件が成立したときに、前記代替処理装置が前記代替処理を開始可能な状態を終了する、
    処理方法。
JP2014523504A 2012-07-05 2012-07-05 処理装置、処理システム、及びプログラム Active JP5983746B2 (ja)

Applications Claiming Priority (1)

Application Number Priority Date Filing Date Title
PCT/JP2012/067230 WO2014006728A1 (ja) 2012-07-05 2012-07-05 処理装置、処理システム、及びプログラム

Publications (2)

Publication Number Publication Date
JPWO2014006728A1 true JPWO2014006728A1 (ja) 2016-06-02
JP5983746B2 JP5983746B2 (ja) 2016-09-06

Family

ID=49881518

Family Applications (1)

Application Number Title Priority Date Filing Date
JP2014523504A Active JP5983746B2 (ja) 2012-07-05 2012-07-05 処理装置、処理システム、及びプログラム

Country Status (3)

Country Link
US (1) US9772914B2 (ja)
JP (1) JP5983746B2 (ja)
WO (1) WO2014006728A1 (ja)

Families Citing this family (3)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
WO2016067391A1 (ja) * 2014-10-29 2016-05-06 株式会社 東芝 電子機器、システムおよび方法
WO2017166119A1 (en) * 2016-03-30 2017-10-05 Intel Corporation Adaptive workload distribution for network of video processors
JP6613372B2 (ja) * 2016-06-01 2019-11-27 株式会社日立製作所 情報処理システム及び業務冗長化方法

Citations (8)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
JPH07295918A (ja) * 1994-04-20 1995-11-10 Canon Inc 情報処理方法及び装置及びシステム
US20030084100A1 (en) * 2001-11-01 2003-05-01 Gahan Richard A. Server monitoring and failover mechanism
JP2005301975A (ja) * 2004-03-17 2005-10-27 Hitachi Ltd マルチサイト上の遠隔二重化リンクを経由するハートビート装置、及びその使用方法
JP2006309700A (ja) * 2005-03-31 2006-11-09 Fujitsu Ltd 動的代替機能を持つ論理集積回路、これを用いた情報処理装置及び論理集積回路の動的代替方法
JP2009129148A (ja) * 2007-11-22 2009-06-11 Hitachi Ltd サーバ切り替え方法、およびサーバシステム
JP2009223582A (ja) * 2008-03-14 2009-10-01 Fujitsu Ltd 情報処理装置、情報処理装置の制御方法および制御プログラム
JP2009230385A (ja) * 2008-03-21 2009-10-08 Hitachi Ltd ストレージシステム及びストレージシステムにおける論理ユニットの引継方法
JP2011248735A (ja) * 2010-05-28 2011-12-08 Hitachi Ltd サーバ計算機の切替方法、管理計算機及びプログラム

Family Cites Families (11)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
JPH01195544A (ja) 1988-01-29 1989-08-07 Nec Corp デュプレックス構成システムのダウン監視方式
JPH09251443A (ja) * 1996-03-18 1997-09-22 Hitachi Ltd 情報処理システムのプロセッサ障害回復処理方法
US6543028B1 (en) * 2000-03-31 2003-04-01 Intel Corporation Silent data corruption prevention due to instruction corruption by soft errors
JP4054616B2 (ja) * 2002-06-27 2008-02-27 株式会社日立製作所 論理計算機システム、論理計算機システムの構成制御方法および論理計算機システムの構成制御プログラム
JP2005301442A (ja) * 2004-04-07 2005-10-27 Hitachi Ltd ストレージ装置
US7493516B2 (en) * 2005-08-29 2009-02-17 Searete Llc Hardware-error tolerant computing
JP2008152594A (ja) 2006-12-19 2008-07-03 Hitachi Ltd マルチコアプロセッサ計算機の高信頼化方法
JP5311211B2 (ja) 2009-01-07 2013-10-09 日本電気株式会社 ディスクアレイコントローラ及びディスクアレイの冗長化方法
US8037366B2 (en) * 2009-03-24 2011-10-11 International Business Machines Corporation Issuing instructions in-order in an out-of-order processor using false dependencies
JP2011128967A (ja) * 2009-12-18 2011-06-30 Hitachi Ltd 仮想計算機の移動方法、仮想計算機システム及びプログラム
US8418000B1 (en) * 2012-03-13 2013-04-09 True Metrics LLC System and methods for automated testing of functionally complex systems

Patent Citations (8)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
JPH07295918A (ja) * 1994-04-20 1995-11-10 Canon Inc 情報処理方法及び装置及びシステム
US20030084100A1 (en) * 2001-11-01 2003-05-01 Gahan Richard A. Server monitoring and failover mechanism
JP2005301975A (ja) * 2004-03-17 2005-10-27 Hitachi Ltd マルチサイト上の遠隔二重化リンクを経由するハートビート装置、及びその使用方法
JP2006309700A (ja) * 2005-03-31 2006-11-09 Fujitsu Ltd 動的代替機能を持つ論理集積回路、これを用いた情報処理装置及び論理集積回路の動的代替方法
JP2009129148A (ja) * 2007-11-22 2009-06-11 Hitachi Ltd サーバ切り替え方法、およびサーバシステム
JP2009223582A (ja) * 2008-03-14 2009-10-01 Fujitsu Ltd 情報処理装置、情報処理装置の制御方法および制御プログラム
JP2009230385A (ja) * 2008-03-21 2009-10-08 Hitachi Ltd ストレージシステム及びストレージシステムにおける論理ユニットの引継方法
JP2011248735A (ja) * 2010-05-28 2011-12-08 Hitachi Ltd サーバ計算機の切替方法、管理計算機及びプログラム

Also Published As

Publication number Publication date
JP5983746B2 (ja) 2016-09-06
US9772914B2 (en) 2017-09-26
US20150113320A1 (en) 2015-04-23
WO2014006728A1 (ja) 2014-01-09

Similar Documents

Publication Publication Date Title
JP5653151B2 (ja) クラウドコンピューティングシステム、クラウドコンピューティングシステムの制御方法、および管理アプリケーション
JP5834939B2 (ja) プログラム、仮想マシン制御方法、情報処理装置および情報処理システム
JP5259714B2 (ja) 実行順序決定装置、実行順序決定プログラム、実行順序決定回路及び情報処理装置
US9335998B2 (en) Multi-core processor system, monitoring control method, and computer product
JP4663497B2 (ja) 情報処理システムおよび情報処理装置の割当管理方法
JP4811830B1 (ja) コンピュータリソース制御システム
CN104951041A (zh) 动态电力供应单元轨道切换
JP2004355233A (ja) 耐障害システム、プログラム並列実行方法、耐障害システムの障害検出装置およびプログラム
JP6123626B2 (ja) 処理再開方法、処理再開プログラムおよび情報処理システム
JP5983746B2 (ja) 処理装置、処理システム、及びプログラム
JP5493976B2 (ja) 情報処理装置、計算機システム及びプログラム
JP2012208752A (ja) ライセンス管理装置、ライセンス管理方法、及びプログラム
US11829603B2 (en) Information processing system and image forming apparatus capable of accurately predicting lifetime of semiconductor device, and control method therefor
TWI778295B (zh) 資訊處理系統、其之電源作業控制器以及於叢集作業期間處理電源請求的方法
JP2009237758A (ja) サーバシステム、サーバ管理方法、およびそのプログラム
JP2013186520A (ja) コンピュータシステム、サーバ装置、負荷分散方法、及びプログラム
JP6003256B2 (ja) 電源装置およびプログラム
JP2010231295A (ja) 解析システム
JP2019168845A (ja) 情報処理装置とその制御方法
JP6391309B2 (ja) マルチ画面表示システム、及びマルチ画面表示方法
US11836390B2 (en) Smart storage services device
JP4723686B2 (ja) 情報処理システムおよび情報処理装置の割当管理方法
JP2012089109A (ja) コンピュータリソース制御システム
JP2016091519A (ja) 情報処理装置
JP6074810B2 (ja) 画像処理装置、画像処理システム、省電力モード移行制御方法、コンピュータプログラム、および記録媒体

Legal Events

Date Code Title Description
A131 Notification of reasons for refusal

Free format text: JAPANESE INTERMEDIATE CODE: A131

Effective date: 20160308

A521 Request for written amendment filed

Free format text: JAPANESE INTERMEDIATE CODE: A523

Effective date: 20160502

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

A61 First payment of annual fees (during grant procedure)

Free format text: JAPANESE INTERMEDIATE CODE: A61

Effective date: 20160718

R150 Certificate of patent or registration of utility model

Ref document number: 5983746

Country of ref document: JP

Free format text: JAPANESE INTERMEDIATE CODE: R150