JPH07183891A - 計算機システム - Google Patents

計算機システム

Info

Publication number
JPH07183891A
JPH07183891A JP5328162A JP32816293A JPH07183891A JP H07183891 A JPH07183891 A JP H07183891A JP 5328162 A JP5328162 A JP 5328162A JP 32816293 A JP32816293 A JP 32816293A JP H07183891 A JPH07183891 A JP H07183891A
Authority
JP
Japan
Prior art keywords
data
computer system
software
failure
program
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
JP5328162A
Other languages
English (en)
Other versions
JP3447347B2 (ja
Inventor
Hoze Uemura
ホゼ ウエムラ
Takashi Sakakura
隆史 坂倉
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.)
Mitsubishi Electric Corp
Original Assignee
Mitsubishi Electric Corp
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 Mitsubishi Electric Corp filed Critical Mitsubishi Electric Corp
Priority to JP32816293A priority Critical patent/JP3447347B2/ja
Publication of JPH07183891A publication Critical patent/JPH07183891A/ja
Application granted granted Critical
Publication of JP3447347B2 publication Critical patent/JP3447347B2/ja
Anticipated expiration legal-status Critical
Expired - Lifetime legal-status Critical Current

Links

Landscapes

  • Hardware Redundancy (AREA)
  • Debugging And Monitoring (AREA)
  • Small-Scale Networks (AREA)

Abstract

(57)【要約】 【目的】 計算機システムにおいて、より少ないハード
ウェア開発で稼働率の向上、ならびに、信頼性の向上を
目的とする。 【構成】 1つ、あるいは、複数のネットワークに接続
された複数の計算機から構成される計算機システムで、
被検プログラム112,113,114は計算機103
の負荷状況により検出信号の送出間隔を変えながら検出
信号を障害検出プログラム108,107または106
へ送出する。一方、障害検出プログラムも計算機103
の負荷状況を調べ、送られてきた検出信号がタイムアウ
トか否かチェックし障害発生の有無を判断する。

Description

【発明の詳細な説明】
【0001】
【産業上の利用分野】本発明は、耐故障性を備えた計算
機システムに関し、特に、ネットワークに接続された、
複数台の計算機から構成される計算機システムに関す
る。
【0002】
【従来の技術】近年、計算機システムの信頼性に対する
関心が高まってきている。その背景として、従来の計算
機システムにおいて、ダウンサイジングとよばれるよう
に汎用機上にあった機能を端末側に移行する、また、セ
ンタ機能自体をマイクロプロセッサベースの計算機上で
実現することによる低コスト化を図る試みが盛んになさ
れている。ところが、汎用機システムがハードウェアの
故障、誤動作、また、これらを要因とするソフトウェア
障害、ソフトウェア自体の障害に対してその対処手段を
持ち、より高い稼働率や信頼性を実現するのに対し、マ
イクロプロセッサベースの計算機システムでは、障害対
処手段が貧弱であり、高い稼働率や、信頼性を要求され
るアプリケーションを稼働させるのは難しかった。
【0003】ところで、ダウンサイジングにあたって、
特徴的なこととして、計算機の接続形態の変化がある。
従来の汎用機を中心としたシステムが、その端末群と、
電話回線や、シリアルラインによってクラスタ接続され
ていたのに対し、主にほぼ等価なマイクロプロセッサベ
ースの計算機で構成されるシステムでは個々の計算機
は、高速なローカルエリアネットワークに接続されるこ
とが多くなった。
【0004】本発明の課題である計算機システムの高い
稼働率、高信頼性を実現するために、過去に商用化され
たものとして、タンデム社、ストラタス社、セコイアシ
ステム社などによるものがある。これらのシステムは、
ハードウェアのコンポーネントを冗長化し、シングルポ
イントフェイル、つまり、ある一つのコンポーネントが
故障したためにシステム全体が停止しないようにできて
いる。しかし、ハードウェアの冗長化のため、これらシ
ステムは高価なものとなっている。
【0005】近年のハードウェアの信頼性の向上、ま
た、要求される稼働率や信頼性のレベルにより、必ずし
も全てのコンポーネントの冗長化は、コスト面も考える
とそれを要求できない場合も多い。本発明は、かかるシ
ステムに適用され、稼働率、信頼性の向上を図るもの
で、ハードウェアの機構を最小限にとどめ、主にソフト
ウェアによる実現を図る。ハードウェアの冗長度が低い
計算機群で、これらの課題を達成するにあたって、高速
なローカルエリアネットワークが鍵となる。つまり、ハ
ードウェアの冗長度に欠けるところを、ネットワークを
通して、複数台の計算機で補い合うことでカバーする。
このようなアプローチによる製品も幾つか市場に既に出
ていて、DEC社のVAXクラスタ、IBM社のHAN
FSなどがある。DEC社のVAXクラスタと呼ばれる
製品は、デュアルポートディスクを共有する、ネットワ
ークで接続された複数台の計算機で構成され、主系の計
算機に障害が発生した時は、従系の計算機が業務を代行
する。IBM社のHANFSは、同様にディスク装置を
共有するネットワークに接続された複数の計算機から構
成される計算機上で実行されており、複数の計算機間で
ファイル共有サービスを行うプログラムに障害が発生し
た時は、該サービスプログラムは、ディスク装置を共有
している他の計算機上で起動される。
【0006】特開平4−230538には、一定時間間
隔内に応答が受信されるか否かを障害発生の判断の1つ
とした障害ソフトウェアコンポーネントの検出方法、特
開平4−340649には、検知信号の発信によらない
ソフトウェア障害の検出方法が述べられている。特開平
1−61855には、マルチプロセッサシステムにおけ
るバックアッププロセッサの起動方法が述べられてい
る。
【0007】また、障害発生時の主記憶上のデータのダ
ンプの高速化を図るものの先行事例としては、特開平3
−211638に、コアデータを圧縮した上で2次記憶
上に退避する方法が述べられている。また、ディスクデ
ータの一貫性を図るために考えられた先行特許として、
特開平1−277372では、エラー発生すると書き込
んだデータ内容を、ホストシステムに返送する方式が述
べられている。
【0008】
【発明が解決しようとする課題】本発明の課題は、より
少ないハードウェアの投資で、高い稼働率や、信頼性を
提供する計算機システムを構築するための、基本的要素
を提供するものである。
【0009】従来のシステムにおいて、ソフトウェア障
害検知機構がタイムアウトを、その障害発生状態か否か
を判断する基準にしている場合、計算機の負荷状態によ
っては送信のために決められた時間よりも長い時間がか
かってしまい、タイムアウトとなり、障害発生と判断さ
れ、正確な判断が下せないという問題点があった。
【0010】また、障害検知しようとするプログラムが
幾つかのプログラムのサービスを利用して成り立ってい
るとき、あるいは、相互にサービスを利用しあって成り
立っているとき、目的とするプログラムの障害検知を行
うだけでは不十分で、正確な判断ができないという問題
点があった。
【0011】そして、従来の障害検知方式では、検知機
構自体のシングルポイントフェイルに対応できないとい
う問題点があった。
【0012】更に、従来の障害検知、復旧方式では、復
旧手段が一律的であり、障害に対して、必要以上の処置
をとらざるを得ない場合が多いという問題点があった。
【0013】また、ソフトウェア障害が発生し、その復
旧にあたって、ネットワーク内の他の計算機上に移行す
る必要が生じたときに、固定的に移行先の計算機を決め
たのでは、移行先の負荷状況、資源状況によって、必ず
しも移行先として望ましいものとはならない場合がある
という問題点があった。
【0014】より高稼働率、高信頼性システムを構築す
る上で、障害発生時になくてはならない、主記憶データ
の採取を高速に行うことも課題である。稼働率は、故障
修理期間を短くすることによって向上できる。従って、
システム再立ち上げを行う場合に、主記憶データのダン
プ時間を短くすることは、稼働率向上に寄与する。
【0015】また、主記憶上にキャッシュされたディス
クデータの一貫性を維持することを課題としており、こ
れによりシステム再立ち上げの場合、ディスク上に構築
されたファイルシステムの一貫性回復のために要する時
間を最小に押さえることができる。
【0016】また、データベースプログラムなどの保証
すべき信頼性が特に高いアプリケーションに利用される
べき機能で、全てのディスクに対する書き込みオペレー
ションに対し、成功か不成功かの場合に、更新後、更新
前の状態を必ず保証することにより、従来アプリケーシ
ョンプログラムの中で行っていたデータ一貫性保持操作
を簡略化し、かつ、ハードウェアレベルでデータの一貫
性を保証し、システムの高速化を図ることも課題であ
る。
【0017】本発明は、上記のような問題点を解決し、
課題を達成するためになされたもので、より少ないハー
ドウェア開発で、より高い計算機システムの稼働率、信
頼性を実現することを目的とする。また、障害復旧時の
計算機立ち上げ時間を短縮することにより、稼働率の向
上を図ることを目的とする。また、ディスクデータの一
貫性を保証して、アプリケーションプログラムの中で行
っていた、データ一貫性保持操作を簡略化することによ
り、システムの高速化を図ることが目的である。
【0018】
【課題を解決するための手段】第1の発明に係る計算機
システムは、(a)所定の処理を実行するとともに、そ
の処理の実行中に障害の発生の有無を検出し検出信号と
して送信する被検ソフトウェア、(b)上記被検ソフト
ウェアからの検出信号を受信して、被検ソフトウェアの
障害を検出する障害検出ソフトウェアを有する計算機シ
ステムにおいて、上記被検ソフトウェア及び障害検出ソ
フトウェアは、それぞれシステムの負荷を検出する負荷
検出部と、システムの負荷に応じて検出信号の送受信間
隔を調整するための頻度表を持つことを特徴とする。
【0019】第2の発明に係る計算機システムは、
(a)所定の処理を実行するとともに、その処理の実行
中に障害の発生の有無を検出し検出信号として送信する
被検ソフトウェア、(b)上記被検ソフトウェアからの
検出信号を受信して、被検ソフトウェアの障害を検出す
る障害検出ソフトウェアを有する計算機システムにおい
て、上記被検ソフトウェアは、検出信号の送出間隔の情
報を検出信号にふくませ上記障害検出ソフトウェアに通
知し、障害検出ソフトウェアは通知された検出信号の送
出間隔に基づいて被検ソフトウェアの障害を検出するこ
とを特徴とする。
【0020】第3の発明に係る計算機システムは、上記
第2の発明に係る計算機システムにおいて、上記被検ソ
フトウェアにシステムの負荷を検出する負荷検出部を備
え、負荷検出部により検出したシステムの負荷に応じて
検出信号の送出間隔を調整するための頻度表を持つこと
を特徴とする。
【0021】第4の発明に係る計算機システムにおい
て、上記被検ソフトウェアは、複数のプログラムを備
え、各プログラムが検出信号を送信するとともに、上記
障害検出ソフトウェアは、上記複数のプログラムの中の
関連するプログラムを示す管理情報を記憶するととも
に、管理情報に基づき関連する複数のプログラムからの
検出信号を受信して関連する複数のプログラムの障害を
検出することを特徴とする。
【0022】第5の発明に係る計算機システムにおい
て、上記障害検出ソフトウェアは、第1の障害検出ソフ
トウェアと第2の障害検出ソフトウェアを備えており、
一方の障害検出ソフトウェアが他方の障害検出ソフトウ
ェアの障害を検出することを特徴とする。
【0023】第6の発明に係る計算機システムにおい
て、上記被検ソフトウェアは、障害検出ソフトウェアに
対する動作手順を指示するメッセージを検出信号中に含
ませるとともに、上記障害検出ソフトウェアは、メッセ
ージに対応する手順を記載した手順情報を持ち、メッセ
ージと手順情報により指示された手順を実行することを
特徴とする。
【0024】第7の発明に係る計算機システムは、複数
の計算機を備えており、各計算機は各計算機の状態を調
査して上記障害検出ソフトウェアに出力する調査プログ
ラムを備え、上記障害検出ソフトウェアは調査プログラ
ムからの調査結果と被検ソフトウェアの実行条件を考慮
して、障害が検出された被検ソフトウェアを他の計算機
により実行させることを特徴とする。
【0025】第8の発明に係る計算機システムは、主記
憶装置および2次記憶装置を持つ複数の計算機が接続さ
れた計算機システムにおいて、主記憶装置の内容を分割
して複数の計算機の2次記憶装置に退避する分割退避手
段を備えたことを特徴とする。
【0026】第9の発明に係る計算機システムは、上記
第8の発明に係る計算機システムにおいて、あらかじ
め、分割退避先を設定した管理表を備えたことを特徴と
する。
【0027】第10の発明に係る計算機システムは、上
記第8の発明に係る計算機システムにおいて、さらに、
ネットワークに2次記憶装置を持つ複数の計算機が接続
され、上記分割退避手段は、ネットワークを用いて複数
の2次記憶装置にデータを退避することを特徴とする。
【0028】第11の発明に係る計算機システムは、以
下の要素を有することを特徴とする。(a)データを記
憶する2次記憶装置、(b)上記データを一時的に記憶
する主記憶装置、(c)上記主記憶装置に記憶されたデ
ータの2次記憶装置への書き戻しの有無と、そのデータ
の正当性を判断するデータを管理情報として記憶する記
憶手段、(d)障害発生時に、上記記憶手段により記憶
された管理情報により上記主記憶装置に記憶されたデー
タのうち、2次記憶装置に書き戻されていないデータを
判定し、その正当性をチェックしてデータを書き戻す書
き戻し手段。
【0029】第12の発明に係る計算機システムは、上
記第11の発明に係る計算機システムにおいて、複数の
2次記憶装置を備えた多重系システムであり、上記書き
戻し手段は、複数の2次記憶装置に対してデータを書き
戻すことを特徴とする。
【0030】第13の発明に係る計算機システムは、以
下の要素を有することを特徴とする。(a)データを記
憶する2次記憶装置、(b)上記2次記憶装置に対して
データを書込む書込み手段、(c)上記書込み手段によ
り更新しようとする時、元のデータを不揮発性記憶媒体
に退避し、更新開始を示すマークと、更新完了後に更新
完了のマークを退避データにマークする退避手段、
(d)障害発生時に、上記退避手段により退避したデー
タを調べ、更新開始を示すマークがあり、更新完了のマ
ークがないデータをデータの更新中にエラーが発生した
とみなし、退避データを用いて上記2次記憶装置のデー
タを復旧する復旧手段、(e)更新成功時には退避デー
タを開放する開放手段。
【0031】
【作用】第1の発明における計算機システムは、被検ソ
フトウェアが所定の処理実行中に障害の発生を検出し、
検出信号として送信し、障害検出ソフトウェアが検出信
号を受信して被検ソフトウェアの障害を検出する。この
ように2つの独立したプログラムとすることにより、検
出信号が所定の間隔で到着しない場合、障害検出ソフト
ウェア側は被検ソフトウェア側で検出信号を送信できな
い障害が発生したとみなして、タイムアウトを障害発生
か否かの判断の1つにすることができる。このとき、検
出信号の到着に要する時刻は、システムの負荷によって
遅れることがあるため、双方のソフトウェアにシステム
の負荷を検出する負荷検出部を持たせ、負荷に応じて検
出信号の送受信間隔を調整する。
【0032】第2の発明における計算機システムは、被
検ソフトウェアが検出信号の送出間隔を障害検出ソフト
ウェアに通知するため、障害検出ソフトウェア側で送出
間隔を調べる手順を省くことができる。
【0033】第3の発明における計算機システムは、被
検ソフトウェア側に負荷検出部と頻度表を持たせ、負荷
により検出信号の送出間隔の調整を行う。また、その送
出間隔の情報も検出信号中に含ませ障害検出ソフトウェ
ア側に通知するので、障害検出ソフトウェア側では、負
荷検出部や頻度表による処理を行う必要がない。
【0034】第4の発明における計算機システムでは、
上記被検ソフトウェアは、複数のプログラムを備え、各
プログラムが検出信号を送信する。上記障害検出ソフト
ウェアは、上記複数のプログラムの中の関連するプログ
ラムを示す管理情報を記憶し、管理情報に基づき関連す
る複数のプログラムからの検出信号を受信して、関連す
る複数のプログラムの障害を検出することができる。
【0035】第5の発明における計算機システムは、障
害検出ソフトウェアの障害を検出するソフトウェアを備
えることにより、障害検知機構自体のシングルポイント
フェイルを回避できる。
【0036】第6の発明における計算機システムは、上
記被検ソフトウェアが、障害検出ソフトウェアに対する
動作手順を指示するメッセージを検出信号中に含ませ
る。上記障害検出ソフトウェアは、メッセージに対応す
る手順を記した手順情報を持ち、手順情報によりメッセ
ージに対応する手順を実行するため、無駄な処理を省く
ことができる。
【0037】第7の発明における計算機システムでは、
上記計算機システムは、複数の計算機を備えており、各
計算機は各計算機の状態を調査して上記障害検出ソフト
ウェアに出力する調査プログラムを備える。上記障害検
出プログラムは被検ソフトウェアの実行条件を考慮して
調査プログラムから得られた負荷状況、資源状況に基づ
き、障害が検出され、かつ他の計算機への移行が必要と
なった被検ソフトウェアの移行に最適な計算機を探し、
移行して実行する。
【0038】第8の発明における計算機システムは、障
害発生時に主記憶装置の内容を分割して、接続されてい
る複数の他の計算機の2次記憶装置に退避することがで
きる。
【0039】第9の発明における計算機システムは、分
割退避先を設定した管理表を備えているので、主記憶装
置のデータの採取先をすみやかに決めることができる。
【0040】第10の発明における計算機システムは、
ネットワークを介して分割されたデータを退避する作業
を他の計算機に分割することができる。
【0041】第11の発明における計算機システムは、
主記憶装置上にキャッシュされたデータの2次記憶装置
への書き戻しの有無と、そのデータの正当性を判断する
データを管理情報として持つ。これにより、障害発生時
にこの管理情報に基づいて主記憶装置に記憶されたデー
タのうち、2次記憶装置に書き戻されていないデータを
判断し、またそのデータに障害の影響があるかどうか正
当性を再度チェックし、データを書き戻す。
【0042】第12の発明における計算機システムは、
多重系システムにおいても上記第11の発明と同様に、
障害発生時の主記憶装置上に読み出され、変更されたデ
ータとディスクデータの一貫性を保つことができる。
【0043】第13の発明における計算機システムは、
ディスク装置への書き込みの際に、更新される前のデー
タに更新開始のマークをしてそのデータを退避した後、
ディスク装置への書き込みを開始し、更新終了後、退避
したデータに更新完了のマークをする。ディスクへの書
き込み命令が異常終了した場合に、この退避したデータ
の中で更新完了のマークがない退避データを書き戻すこ
とにより、書き込み命令発行以前のデータ状態を保証す
ることができる。また、更新成功時には退避データを開
放する。
【0044】
【実施例】
実施例1.本実施例における計算機システムの例を図1
を用いて説明する。103および104は独立した計算
機で、ネットワーク101,102にそれぞれ接続され
ている。図中には計算機は2台しか描かれていないが、
台数に制限はない。主/副形態で、機能の冗長性を実現
する場合は、主/副それぞれの計算機からアクセスでき
るディスク装置110により、二つの計算機間でのコン
システントなデータの引渡しを可能にする。プライマリ
ーサーバ111にあるプログラム群112,113,1
14はそれぞれ依存関係を持つアプリケーションプログ
ラム、つまり、被検プログラムに相当する。106,1
07,108は障害検出プログラムで、被検プログラム
が実行されている同一計算機上で、また、ネットワーク
内の違う計算機上で実行される。109は、これら障害
検知機構のセクションの開始/終了などのサービスを行
うチェックエージェントプログラムである。
【0045】障害検知機構は、アプリケーションプログ
ラム(被検プログラム)の中で処理される部分と障害検
出プログラムの中で処理される部分に分かれて存在して
いる。図2は本実施例による障害検知機構のソフトウェ
ア構成を示している。被検プログラム201は、計算機
の負荷状況を調査する負荷検出部202と、図3にその
内容を示す負荷に対しての障害検知頻度を示す頻度表2
03と、障害検出信号を障害検出プログラムに送出する
送信部204を含んでいる。一方、障害検出プログラム
は、202に等価な負荷検出部206,203に等しい
頻度表207、被検プログラムからの障害検出信号を受
信する受信部208を含んでいる。被検プログラム20
1は、一定期間中に何回かの割合で送信部204から”
私は正常である”旨のメッセージを障害検出プログラム
205に送信している。障害検出プログラム205の受
信部208はそのメッセージを受け取り、その内容また
はメッセージが到着するか否かで被検プログラムが正常
であるか否かを判断している。
【0046】そのため、ソフトウェア障害検知機構がタ
イムアウト(次のメッセージが到着すべき時刻に到着し
ない場合に異常であると判断するまでの時間)を障害発
生状態か否かを判断する基準にしているので、計算機の
負荷状態によっては、一律な判断基準では正確な判断が
下せないという問題点があった。そこで、双方のプログ
ラムは、計算機の負荷状態を定期的に採取し、その値か
ら、障害検知頻度を頻度表に従って設定する。例えば、
頻度表の内容が図3のよう場合、負荷が0のときは頻度
は10であるから、双方のプログラムは一定期間中に1
0回障害検知のためのメッセージのやり取りを行うこと
になる。なお、負荷は計算機の稼動率とジョブキューの
長さで決まる。
【0047】また、なぜ双方のプログラムで、負荷検出
部と頻度表を持つかを説明する。被検プログラムで、計
算機の負荷状態により送信頻度を変えているため、障害
検出プログラム側のタイムアウト値も変える必要があ
る。そのため、障害検出プログラム側でも被検プログラ
ムと同様の処理を行い、新しいタイムアウト値を設定す
る。
【0048】被検プログラムと障害検出プログラムの中
の負荷検出部は、オペレーティングシステムの問い合わ
せ手段を用い、ジョブキューの長さと計算機の稼動率に
より得る。ただし計算機の負荷状況は急峻に変化するこ
とがあるので、双方の負荷検出値に差異が生じることを
防ぐために、負荷検出部には十分長いサンプリング期間
を持たせる。負荷状況はたえず変化するものなので、負
荷は一瞬一瞬の細かい値の検出ではなく、その時間帯の
大まかな傾向値とした方がより実際的である。
【0049】また、被検プログラムと障害検出プログラ
ムに分けているのはプログラムの作り勝手によるため
と、独立したプログラムにすることにより、被検プログ
ラム側で検出信号を送信できない状態に陥った場合、障
害検出プログラム側ではタイムアウトを障害発生か否か
の判断の1つにするためである。
【0050】以上のようにこの実施例では、該システム
上で走行するソフトウェアに発生する障害を検知し、障
害状態から回復せしめることを特徴とする計算機システ
ムであって、該障害検知に用いる、被検ソフトウェア自
身の送出する、検出信号の送出頻度を、該システムの負
荷状況により調整する。
【0051】そのために計算機システムの負荷状況検出
手段、および、計算機システムの負荷状況と、障害検知
頻度の頻度表を、検知信号送信側、つまり、被検プログ
ラムと検知機構にそれぞれ持つことによって、計算機シ
ステムの負荷状況によって、障害検知頻度の調整を行う
ようにしている。
【0052】実施例2.この実施例では、被検プログラ
ム側の障害検知信号中に、障害検知信号の送信間隔情報
(インターバル情報ともいう)を送り、それをもとに、
障害検出プログラムがタイムアウト時間を設定する例に
ついて述べる。
【0053】図4はこの実施例の障害検知機構のソフト
ウェア構成を示している。被検プログラム401は、計
算機の負荷状況を調査する負荷検出部402と、図5に
その内容を示す負荷に対しての障害検知の頻度と、障害
検出プログラムへ送信する障害検知のインターバル情報
を示す頻度表403と、障害検出信号を障害検出プログ
ラムに送出する送信部405を含んでいる。一方、障害
検出プログラム406は、被検プログラムからの障害検
出信号を受信する受信部407を含んでいる。被検プロ
グラムは、計算機の負荷状態を定期的に採取し、その値
から頻度表に従って障害検知頻度を設定し、また、頻度
表から障害検知信号の一部として送るべき送出情報を設
定する。例えば、図5の501ならば、負荷が0の時は
一定期間に10回の頻度で、被検プログラムは送出情報
1を含む障害検知信号を、障害検出プログラムに送信す
る。障害検出プログラムは、タイムアウト値を送出情報
に合わせて設定して、障害か否かの判断を行う。
【0054】これは被検プログラムが正常か否かを障害
検出プログラムにおいて、ある一定期間内に次のメッセ
ージが到着するか否かでも判断しているためである。ま
た、被検プログラム側で負荷の状況により、頻度表を参
照して検出信号の送信間隔を変えているので、その値を
送出情報として障害検出プログラムに知らせる。これに
より障害検出プログラム側では送出情報により被検プロ
グラム側での変化に合わせてタイムアウト値の変更を行
うことができる。
【0055】以上のようにこの実施例では、障害検出信
号に検知頻度調整のための情報を付加することを特徴と
している。
【0056】実施例3.障害検知しようとするプログラ
ムが幾つかのプログラムのサービスを利用して成り立っ
ているとき、あるいは、相互にサービスを利用しあって
成り立っているとき、目的とするプログラムの障害検知
を行うだけでは不十分で正確な判断ができない。そのた
めこの実施例では、監視すべきプログラム、および、監
視すべきプログラムがそのサービスを利用しているプロ
グラムとのプログラム間の依存関係を示す表を、障害検
出機構に持つことにより、上記依存関係を持つプログラ
ムの監視を可能にする例について述べる。
【0057】被検プログラム、障害検出プログラムは、
実施例1または、実施例2の機能を持つ。図6は計算機
システム上で、ある瞬間のプログラムの実行状況を示し
た図である。アプリケーションプログラムA(60
2)、アプリケーションプログラムB(603)、アプ
リケーションプログラムC(601)、障害検出プログ
ラム604が実行されている。障害検出プログラム60
4は、図7に詳細を示すアプリケーションプログラム間
の依存関係表605、各アプリケーションからの障害検
出信号を受信する受信部606を含んでいる。
【0058】この依存関係表605は、つぎのようにし
て設定する。例えば、プログラムAを作る時、依存する
プログラムはプログラムBとCであると判る。プログラ
ムBは、プログラムAに依存しており、またプログラム
AをとおしてプログラムCに依存している。プログラム
Cは、どのプログラムにも依存していない。このよう
に、各プログラム間の依存関係がわかるので、障害検出
プログラムを作成するときにこれを依存関係表605と
して持たせる。
【0059】図7は、アプリケーションプログラム間の
依存関係を表す依存関係表で、例えば、AはCとBに依
存しており(701)、BはA、AはさらにCに依存し
ており(702)、Cはサービスは提供するがいずれの
プログラムにも依存していない(703)ことを示すも
のである。障害検出プログラム604は、この依存関係
表を参照し、例えばAのプログラムをモニタする場合に
は、CおよびBのプログラムの障害検知も行う。
【0060】このようにアプリケーションプログラム間
の依存関係表を持つことにより監視すべきプログラムお
よびこのプログラムが利用するプログラムを総合的に監
視することが可能になる。
【0061】以上のように、この実施例では、該システ
ム上で互助動作する複数のソフトウェアに発生する障害
を検知し、障害状態から回復することを目的とし、該複
数ソフトウェアの管理情報を持ち、該管理情報中に記述
される全てのソフトウェアについて、障害検出、およ
び、障害回復を行うことを特徴とする計算機システムに
ついて述べた。
【0062】実施例4.今までの障害検知方式では、検
知機構自体のシングルポイントフェイルに対応できなか
った。この実施例では障害検知機構を2重化することに
より、障害検知機構自体の障害による、システム障害を
回避する例を説明する。
【0063】図8は被検プログラムと障害検出プログラ
ムのソフトウェア構成を示した図である。被検プログラ
ム801は、障害検知信号を主障害検出プログラム80
2、および、副障害検出プログラム803に送信する。
図9に副障害検出プログラムの動作を示す。もし障害が
検出されたならば(901)、副障害検出プログラムは
主障害検出プログラムの状態をチェックし(902)、
健全ならば何もしない。もし健全でなければ、障害検出
プログラム復旧(903)を行う。障害検出プログラム
復旧とは、副障害検出プログラムが主障害検出プログラ
ムを停止させ、副障害検出プログラムが主障害検出プロ
グラムの代わりに被検プログラムの障害に対処する。ま
た、この時副障害検出プログラムは、自分の複製を作
り、以後これに自分を監視させる。なお、当実施例にお
いて主障害検出プログラムは、副障害検出プログラムの
存在を意識しない。
【0064】この実施例では、該システム上で走行する
ソフトウェアに発生する障害を検知し、障害状態から回
復せしめることを特徴とする計算機システムであって、
障害検知機構を2重化することにより、障害検知機構自
体の障害による、システム障害を回避することを特徴と
する計算機システムについて述べた。
【0065】実施例5.上記実施例は1例に過ぎず、副
障害検出プログラムが、主障害検出プログラムのみを監
視する方式もある。図10はこの実施例の被検プログラ
ムと障害検出プログラムの関係を示した図である。
【0066】実施例6.従来の障害検知、復旧方式で
は、復旧手段が一律的であり、障害に対して、必要以上
の処置をとらざるを得ない場合が多かった。この実施例
では、被検ソフトウェアの送出する検出信号によって障
害種類を類別する障害検出機構を有し、障害種類によっ
て障害回復手順を記述した手順情報を持つこと、また、
手順情報の設定手段を持つことによって障害種類に応じ
た障害復旧手段を提供する例について述べる。
【0067】この実施例は実施例1から5にある障害検
知機構に適用されるもので、障害検知信号に応じて、障
害復旧、もしくは、サービスを行う。図11に、障害検
知信号と、障害検出プログラムが起動するサービスの手
順の対応を示す対応表を示す。障害検出プログラムは、
そのプログラム内にこの対応表を含み、障害検知信号を
受けとったならば、対応する手順を実行する。図11に
ついて説明する。正常信号を受けとっている限り、障害
検出プログラムは何もしない(1001)。停止信号を
受けとった時は、障害検出プログラムはタイムアウトを
延期する(1002)。開始信号を受けとった時は、障
害検出プログラムは、該被検プログラムの監視を開始す
る(1003)。終了信号を受けとった時は、被検プロ
グラムの監視を終了または、終了処理を行う(100
4)。障害1信号を受けとった時は、同じ処理を3回リ
トライする(1005)。障害2信号を受けとった時
は、ディスクデータを修復する(1006)。障害3信
号を受けとった時は、他計算機で再実行する(100
7)。
【0068】以上のようにこの実施例では、該システム
上で走行するソフトウェアに発生する障害を検知し、障
害状態から回復せしめることを特徴とする計算機システ
ムであって、被検ソフトウェアの送出する検出信号によ
って障害種類を類別する障害検出機構を有し、障害種類
によって障害回復手順を記述した手順情報を持つことを
特徴とする計算機システムについて説明した。
【0069】実施例7.ソフトウェア障害が発生し、そ
の復旧にあたって、ネットワーク内の他の計算機上に移
行する必要が生じた時に、固定的に移行先を決めたので
は移行先の負荷状況、資源状況によって、必ずしも移行
先として望ましいものとはならない場合があった。そこ
で、この実施例ではあるサービスが実行されていた計算
機に障害が起きた時に、ネットワーク内のどの計算機で
サービスを継続するかを決定するシステムについて述べ
る。すなわち、ネットワーク内の各計算機の負荷状況、
資源状況を表す表と、その更新手段と、起動すべきプロ
グラムと、負荷状況、および、資源状況との対応を示す
表と、負荷、資源状況の比較結果により、指定されたプ
ログラムの起動を行うことによって達成される。
【0070】この実施例が適用される計算機システムの
例を図1を用いて説明する。103および104は独立
した計算機で、ネットワーク101,102にそれぞれ
接続されている。図中には計算機は2台しか描かれてい
ないが、台数に制限はない。主/副形態で、機能の冗長
性を実現する場合は、主/副それぞれの計算機からアク
セスできるディスク装置110により、二つの計算機間
でのコンシステントなデータの引渡しを可能にする。プ
ライマリーサーバ111にあるプログラム群112,1
13,114はそれぞれ依存関係を持つアプリケーショ
ンプログラム、つまり、前述した実施例で述べてきた被
検プログラムに相当する。106,107,108は障
害検出プログラムで、被検プログラムが実行されている
同一計算機上で、また、ネットワーク内の違う計算機上
で実行される。109は、これら障害検知機構のセッシ
ョンの開始/終了などのサービスを行うチェックエージ
ェントプログラムである。
【0071】もし、被検プログラムに障害が発生したと
き、さらに、計算機103自体が稼働不能に陥ったとき
は、スタンドバイサーバ105のアプリケーションプロ
グラム群は、ディスク装置110、または、ネットワー
クを通してディスク装置115のデータが複写されてい
るディスク装置116からデータを引き継ぎ、起動され
る。この時、これらの引き継ぎ処理を行うのは、計算機
104上の障害検出プログラム106である。
【0072】この実施例は、あるアプリケーションプロ
グラムが実行されている計算機が稼働不能に陥ったとき
に、いずれかの計算機で再実行される時に適用されるも
ので、図12にそのソフトウェア構成を示す。障害検出
プログラム1203は、ある計算機上で実行されている
被検プログラム1201から障害検知信号を受けとり、
また、ネットワークに接続された、各計算機の負荷、資
源状況を調査するプログラム1202からの状況報告を
定期的に受ける。障害検出プログラム1203は、被検
プログラム1201の実行条件データをそのプログラム
に含む。
【0073】各計算機の負荷、資源状況を調査するプロ
グラム1202は、オペレーティングシステムの問い合
わせ手段を用い、各計算機の負荷、資源状況を調査す
る。計算機の負荷や資源状況は、報告を受けた時点では
変化していることもあるので、大まかな傾向がわかれば
よいと考え、十分長いサンプリング期間を持たせる。
【0074】実行条件データの例を図13に示す。プロ
グラムAは、計算機の負荷が1以下で、I/O頻度が1
00以下、主記憶残が2以上というのがその実行の条件
である(1101)。プログラムBは、計算機の負荷が
4以下で、I/O頻度が1000以下、主記憶残が0.
1以上というのが、その実行の条件である(110
2)。一方、障害検出プログラム1203は、負荷、資
源状況を調査するプログラム1202から、図14に示
すような情報を定期的に受ける。計算機Aは負荷が0.
1でI/O頻度が10、主記憶残が100である(13
01)。計算機Bは負荷が2で、I/O頻度が50、主
記憶残が10である(1302)。計算機Cは負荷が1
で、I/O頻度が1000、主記憶残が50である(1
303)。これらの情報を照らし合わせた上で、障害検
出プログラムは、障害が発生した被検プログラムをどの
計算機上で再起動するかを決定する。例えば、図13、
および、図14のデータで、プログラムAに障害が発生
したとすると、プログラムAは計算機A上で再起動され
る。
【0075】以上のように、この実施例では、1つ、あ
るいは、複数のネットワークに、複数台接続された計算
機によって構成され、互助動作する計算機システムにお
いて、該システム上で走行するソフトウェアは、障害検
知手段により監視され、該ソフトウェアが障害状態であ
り、かつ、走行中の計算機自体に障害があった時に、ネ
ットワークリンク内の健全な他の計算機上で、該ソフト
ウェアの再起動を行うものである。そのとき、他の計算
機上で該ソフトウェアを再起動すべきとき、ネットワー
クリンク内のいずれの計算機上で起動すべきかに関する
情報をもつこと、また、該情報を生成する手段を有する
ことを特徴とする。
【0076】実施例8.この実施例は、障害発生時の主
記憶上のデータのダンプの高速化を図る例である。主記
憶を分割し、複数のネットワークリンクを通して同時
に、複数の計算機の2次記憶上にダンプすることによ
り、処理の高速化を図る。これは、分割された主記憶領
域に対して、それぞれ、ネットワークリンク、ダンプ先
計算機、その計算機上のデータダンプ用の2次記憶領域
を登録しておくことにより、達成される。
【0077】本実施例は、図15にあるような複数のネ
ットワークで接続された複数計算機上で適用されるので
あるが、高速主記憶データダンプは以下のように実現さ
れる。各計算機は図16に示すような主記憶の管理表を
それぞれ持っている。図16は、計算機0用の管理表を
示している。0から11までの主記憶領域は3つに分け
て管理され、0から3の領域の主記憶データは計算機0
のディスク装置0に(1401)、4から7の領域の主
記憶データはネットワーク0を通して、計算機1のディ
スク装置0に(1402)、8から11の主記憶領域の
データはネットワーク1を通して、計算機2のディスク
装置0に(1403)対応づけられている。計算機に障
害が発生したときは、リセット後の計算機立ち上げ時
に、該管理表に従って主記憶データのダンプが行われ
る。また、システム機構は、図15に示したが、図17
に示すシステムでもよい。
【0078】このようにして、障害発生時になくてはな
らない、主記憶データの採取を高速に行うことができ
る。また、稼働率は、故障修理期間を短くすることによ
って向上できる。従って、システム再立ち上げを行う場
合に、主記憶データのダンプ時間を短くすることは、稼
働率向上に寄与する。
【0079】以上のように、この実施例では、複数のネ
ットワークリンクに複数台接続された計算機によって構
成され、互助動作する計算機システムにおいて、該シス
テム内のある計算機に障害が発生した時は、該計算機の
主記憶内容を、あらかじめ情報設定手段によって設定さ
れたコアダンプ情報によって分割し、定められたネット
ワークリンクを通して自身を含めた該ネットワークリン
ク内の計算機に送出することにより、退避することを特
徴とする計算機システムについて説明した。
【0080】実施例9.この実施例は、主記憶上のバッ
ファにキャッシュされたディスクデータの一貫性を維持
することを課題としており、これはシステム再立ち上げ
の場合、ディスク上に構築されたファイルシステムの一
貫性回復のために要する時間を最小に押さえることを可
能にする。すなわち、チェックサムによる主記憶上のデ
ィスクデータを検証し、自計算機上のディスク装置、お
よび、複写されたデータを持つ他計算機のディスク装置
に、ネットワークを通して書き込みを行うことにより実
現される。
【0081】この実施例は、図1に示すような計算機シ
ステムに適用され、115と116の関係にあるディス
ク装置が本実施例の対象である。すなわち、ディスク装
置115のデータは、ディスク装置115に対して書き
込みがあるたびにディスク装置116に複写される。計
算機103上に読み出された、ディスク装置115のデ
ータに対して、更新が加えられるとブロック毎にチェッ
クサムデータがとられる。
【0082】図18は本実施例による、計算機上のディ
スクデータの管理情報を示したものである。ドライブー
セクタとなっている項目は、正/副ディスク装置の計算
機とドライブ番号を表しており、フラグは、各バッファ
のステートを示し、チェックサムデータには、各バッフ
ァデータ更新の度にチェックサムデータが格納される。
また、図19はステートの種類を示す図である。図18
では、1501において管理されるディスクデータは計
算機Aのディスク装置0で、データの複写先は、計算機
Bのディスク装置0で、第0セクタのデータが格納され
ていることを意味する。このバッファのステートはBU
SYでCPUがデータ参照更新、もしくは、チェックサ
ムデータ計算、書き込み中である。1502のバッファ
は未使用である。1503のバッファは計算機Aのディ
スク装置0で、データの複写先は、計算機Bのディスク
装置0で、第2セクタのデータが格納されている。この
バッファのステートはDIRTYで、ディスク装置に書
き戻す必要のあるデータである。1504のバッファは
未使用である。
【0083】ひとたび、この状態で、計算機103に相
当する計算機が障害を起こし使用不能になった時は、該
計算機をリセット後、再立ち上げの際に、該管理表に基
づき、BUSY、または、DIRTYであるバッファの
内容に対しチェックサム計算を行い、バッファの内容か
ら得られたチェックサムと管理表中のチェックサムデー
タと一致したならば、バッファ内容が正しいものとして
正/副両方のディスクにバッファの内容の書き出しを行
う。このようにして、障害発生時の主記憶上のバッファ
に読み出され変更されたデータもチェックサムにより、
データが破壊されていないことがわかれば、ディスクに
書き戻し、ディスクデータの一貫性を保つことができ
る。
【0084】以上のように、この実施例は、1つ、ある
いは、複数のネットワークリンクに複数台接続された計
算機によって構成され、互助動作する計算機システムで
ある。該計算機システムにおいて、ディスク記憶装置上
のデータは異なる計算機上のディスク記憶装置に多重に
格納されており、データとしてファイルシステム等が構
築されており、該ディスクデータ利用時は該データは主
記憶上のバッファに展開され、主記憶上バッファのデー
タは更新時にチェックサムを実行する。そのとき、該デ
ータを利用中の計算機が障害状態となり、該計算機の停
止後、再起動時に主記憶上のバッファは展開されていた
ディスクデータで、更新済みで、かつ、チェックサムデ
ータによりデータの正当性が認められ、さらに、ディス
ク装置への書き戻しが行われていないデータを、該計算
機のディスク装置、および、データの多重化の行われて
いる他計算機のディスク装置に書き戻すことを特徴とす
るものである。
【0085】実施例10.本実施例はディスク装置への
書き込みの際にもしエラーが発生しても、書き込み前の
データ状態を保証するものである。エラーの要因として
は、電源断、ディスクヘッドの損傷などが有り得る。本
実施例の適用されたディスク装置は、データ書き込みを
図20のフローチャートに示す手順で行う。書き込み要
求があれば、まず書き込み先のセクタのデータを退避す
る(1701)。退避先としてディスク領域を利用する
ことも、他の不揮発性記憶を利用することも可能であ
る。セクタデータは図21に示すような形で退避され
る。すなわち、書き込み先のセクタ番号1601、書き
込み操作が始まったことを示すBEGINマーク160
2、そして、データ1603が退避される。このように
データ退避が終了したならば、データの書き込みを始
め、(1702)、データの更新に成功すると、160
4のCOMMITマークを書き入れる(1703)。仮
に、データの退避中に障害がおきても、ディスクデータ
は保持される。また、データ更新中にエラーが発生した
場合、退避データを調べればCOMMITマークのない
データはデータ更新中であるとわかるので、この退避し
たデータにより元のデータの復旧が可能になる。また、
退避データは不要になると開放する。
【0086】以上で説明した機能は、データベースプロ
グラムなどの、保証すべき信頼性が特に高いアプリケー
ションに利用されるべき機能で、全てのディスクに対す
る書き込みオペレーションに対し成功か不成功かの場合
に、更新後、更新前の状態を必ず保証するディスク装置
である。これにより、従来、アプリケーションプログラ
ムの中で行っていたデータ一貫性保持操作が簡略化さ
れ、かつハードウェアレベルでデータ一貫性が保証され
るため、システムの高速化も期待できる。
【0087】以上のように、この実施例では、データベ
ースプログラムなどの、厳密にデータの一貫性が要求さ
れるプログラムに利用されるディスク記憶装置におい
て、データ更新に当たって、2フェーズコミットメント
を行うことにより、データ更新時に、該ディスク記憶装
置に障害が発生しても、該更新操作前のデータを保証す
ることを特徴とする例について述べた。
【0088】
【発明の効果】第1の発明によれば、被検ソフトウェア
および障害検出ソフトウェアは、それぞれシステムの負
荷を検出し、その負荷に応じて検出信号の送受信間隔を
調整するため、タイムアウトを使った障害発生の判断が
より正確になる。また、双方のソフトウェアでそれぞれ
負荷検出を行うことにより被検ソフトウェアで送信間隔
を調整することに関する障害が発生した場合、障害検出
ソフトウェア側で検出することができる効果がある。ま
た、ハードウェアではなく、ソフトウェアで障害検知に
関する機能を実現するため障害検知に要するコストを低
減することができる。
【0089】第2の発明によれば、被検ソフトウェアが
検出信号の送出間隔を障害検出ソフトウェアに通知す
る。そのため、障害検出ソフトウェア側で送出間隔を調
べるための処理を省くことができる。それにより、シス
テムの負荷を減らすことができる。
【0090】第3の発明によれば、被検ソフトウェア側
に負荷検出部を持たせ、負荷により検出信号の送出間隔
の調整を行う。また、その送出間隔の情報も検出信号中
に含ませ障害検出ソフトウェア側に通知するので、障害
検出ソフトウェア側では、負荷検出部を持つ必要がな
く、また、その処理を行う必要がない。そのため、障害
検出ソフトウェアのプログラムステップ数を減らすこと
ができ、また、その処理を省くことができるため、シス
テムの負荷を減らすことができる。
【0091】第4の発明によれば、被検ソフトウェアが
いくつかのプログラムのサービスを利用して成り立って
いる時、あるいは、相互にサービスを利用しあって成り
立っている時、プログラム間の関係を示す管理情報を持
つことによって、関連するすべてのプログラムを監視す
ることができ、より正確な障害検出ができるという効果
がある。
【0092】第5の発明によれば、障害検知機構を2重
化することにより、障害検知機構自体の障害による、シ
ステム障害を回避することができる。
【0093】第6の発明によれば、検出信号中に障害検
出ソフトウェアで実行すべき動作手順を指示するメッセ
ージを含ませ、障害検出ソフトウェア側でそのメッセー
ジに対する手順情報を持つ。このため、障害検出ソフト
ウェア側で不必要な処理を省くことができ、的確な処理
を行うことができる。
【0094】第7の発明によれば、各計算機の状態を調
査する調査プログラムを持つ。これにより、被検ソフト
ウェアに障害が検出され、かつ他の計算機への移行が必
要となった場合、各計算機の負荷状況と資源状況を考慮
して最適な移行先を選ぶことができる。
【0095】第8の発明によれば、障害発生時に主記憶
装置の内容を分割して、複数の他の計算機の2次記憶装
置に退避することができる。そのため、主記憶装置のデ
ータの採取を高速に行うことができ、主記憶装置のデー
タのダンプ時間を短くすることができる。このため、故
障修理期間を短くすることができるので、稼働率向上に
寄与する。
【0096】第9の発明によれば、分割退避先を設定し
た管理表を備えているので、主記憶装置のデータの採取
先をすみやかに決めることができ、主記憶装置のデータ
のダンプの高速化を図ることになり、稼働率向上に寄与
するという効果がある。
【0097】第10の発明によれば、ネットワークを介
して分割されたデータを退避する作業を他の計算機に分
割することができるため、主記憶装置のデータのダンプ
の高速化を図ることができ、稼働率向上に寄与すること
ができる。
【0098】第11の発明によれば、主記憶装置上に読
み出され、変更されたデータも、障害発生後の回復時
に、データの正当性を調べ2次記憶装置に書き戻す事が
できる。そのため、ディスクデータの一貫性を保つこと
ができ、システム再立ち上げの時、ディスク上に構築さ
れたファイルシステムの一貫性回復のために要する時間
を最小に押さえることができるので、稼働率向上に寄与
する。
【0099】第12の発明によれば、多重系システムに
おいても上記第11の発明と同様の効果が得られる。
【0100】第13の発明において、ディスク装置への
書き込みの際に、更新される前のデータを退避しておく
ためディスクへの書き込み命令が異常終了した場合に
も、書き込み命令の発行以前のデータ状態を必ず保証す
ることができる。このように、本発明は、データベース
プログラムなどの、保証すべき信頼性が特に高いアプリ
ケーションに利用されるべき機能で、全てのディスクに
対する書き込みオペレーションに対し、成功か不成功か
の場合に、更新後、更新前の状態を必ず保証するディス
ク装置である。これにより、従来、アプリケーションプ
ログラムの中で行っていた、データ一貫性保持操作が簡
略化され、かつ、ハードウェアレベルでデータ一貫が保
証されるため、システムの高速化も期待できる。
【図面の簡単な説明】
【図1】本発明を適用する計算機システムの例を示す
図。
【図2】本発明を適用したソフトウェア構成例を示す
図。
【図3】本発明における頻度表例を示す図。
【図4】本発明を適用したソフトウェア構成例を示す
図。
【図5】本発明における頻度表例を示す図。
【図6】本発明を適用したソフトウェア構成例を示す
図。
【図7】本発明における依存関係表例を示す図。
【図8】本発明を適用したソフトウェア構成例を示す
図。
【図9】本発明における副障害検出プログラムの動作ア
ルゴリズムを示す図。
【図10】本発明を適用したソフトウェア構成例を示す
図。
【図11】本発明における障害に対する手順についての
対応表の例を示す図。
【図12】本発明におけるソフトウェア構成例を示す
図。
【図13】本発明における被検プログラムの実行条件デ
ータの例を表す図。
【図14】本発明における計算機の負荷、資源状況の調
査結果の例を示す図。
【図15】本発明を適用する計算機システムの例を示す
図。
【図16】本発明における計算機0用の主記憶ダンプ先
の管理表を示す図。
【図17】本発明を適用する計算機システムの例を示す
図。
【図18】本発明における計算機上のディスクデータの
管理情報を表す図。
【図19】本発明におけるバッファのステートの種類を
示す図。
【図20】本発明におけるディスクデータ書き込みアル
ゴリズムを示す図。
【図21】本発明における退避データ形態例を表す図。
【符号の説明】
103 計算機(主) 104 計算機(副) 105 スタンドバイサーバ 106 障害検出プログラム 107 障害検出プログラム(副) 108 障害検出プログラム(主) 109 チェックエージェントプログラム 110,115,116 ディスク装置 111 プライマリーサーバ 112,113,114 被検プログラム 202,206 負荷検出部 203,207 頻度表 204 送信部 208 受信部

Claims (13)

    【特許請求の範囲】
  1. 【請求項1】 (a)所定の処理を実行するとともに、
    その処理の実行中に障害の発生の有無を検出し検出信号
    として送信する被検ソフトウェア、(b)上記被検ソフ
    トウェアからの検出信号を受信して、被検ソフトウェア
    の障害を検出する障害検出ソフトウェアを有する計算機
    システムにおいて、 上記被検ソフトウェア及び障害検出ソフトウェアは、そ
    れぞれシステムの負荷を検出する負荷検出部を備え、負
    荷検出部により検出したシステムの負荷に応じて検出信
    号の送受信間隔を調整することを特徴とする計算機シス
    テム。
  2. 【請求項2】 (a)所定の処理を実行するとともに、
    その処理の実行中に障害の発生の有無を検出し検出信号
    として送信する被検ソフトウェア、(b)上記被検ソフ
    トウェアからの検出信号を受信して、被検ソフトウェア
    の障害を検出する障害検出ソフトウェアを有する計算機
    システムにおいて、 上記被検ソフトウェアは、検出信号の送出間隔を上記障
    害検出ソフトウェアに通知し、障害検出ソフトウェアは
    通知された検出信号の送出間隔に基づいて被検ソフトウ
    ェアの障害を検出することを特徴とする計算機システ
    ム。
  3. 【請求項3】 上記被検ソフトウェアは、システムの負
    荷を検出する負荷検出部を備え、負荷検出部により検出
    したシステムの負荷に応じて検出信号の送出間隔を調整
    することを特徴とする請求項2記載の計算機システム。
  4. 【請求項4】 上記被検ソフトウェアは、複数のプログ
    ラムを備え、各プログラムが検出信号を送信するととも
    に、 上記障害検出ソフトウェアは、上記複数のプログラムの
    中の関連するプログラムを示す管理情報を記憶するとと
    もに、管理情報に基づき関連する複数のプログラムから
    の検出信号を受信して関連する複数のプログラムの障害
    を検出することを特徴とする請求項1,2または3記載
    の計算機システム。
  5. 【請求項5】 上記障害検出ソフトウェアは、第1の障
    害検出ソフトウェアと第2の障害検出ソフトウェアを備
    えており、一方の障害検出ソフトウェアが他方の障害検
    出ソフトウェアの障害を検出することを特徴とする請求
    項1,2または3記載の計算機システム。
  6. 【請求項6】 上記被検ソフトウェアは、障害検出ソフ
    トウェアに対する動作手順を指示するメッセージを検出
    信号中に含ませるとともに、上記障害検出ソフトウェア
    は、手順情報を持ち、メッセージと手順情報により指示
    された手順を実行することを特徴とする請求項1,2ま
    たは3記載の計算機システム。
  7. 【請求項7】 上記計算機システムは、複数の計算機を
    備えており、各計算機は各計算機の状態を調査して上記
    障害検出ソフトウェアに出力する調査プログラムを備
    え、上記障害検出ソフトウェアは調査プログラムからの
    調査結果に基づいて、障害が検出された被検ソフトウェ
    アを他の計算機により実行させることを特徴とする請求
    項1,2または3記載の計算機システム。
  8. 【請求項8】 主記憶装置および2次記憶装置を持つ複
    数の計算機が接続された計算機システムにおいて、主記
    憶装置の内容を分割して複数の計算機の2次記憶装置に
    退避する分割退避手段を備えたことを特徴とする計算機
    システム。
  9. 【請求項9】 上記計算機システムは、あらかじめ、分
    割退避先を設定した管理表を備えたことを特徴とする請
    求項8記載の計算機システム。
  10. 【請求項10】 上記計算機システムは、さらに、ネッ
    トワークに2次記憶装置を持つ複数の計算機が接続さ
    れ、上記分割退避手段は、ネットワークを用いて複数の
    2次記憶装置にデータを退避することを特徴とする請求
    項8記載の計算機システム。
  11. 【請求項11】 以下の要素を有する計算機システム (a)データを記憶する2次記憶装置、(b)上記デー
    タを一時的に記憶する主記憶装置、(c)上記主記憶装
    置に記憶されたデータの2次記憶装置への書き戻しの有
    無と、そのデータの正当性を判断するデータを管理情報
    として記憶する記憶手段、(d)障害発生時に、上記記
    憶手段により記憶された管理情報により上記主記憶装置
    に記憶されたデータのうち、2次記憶装置に書き戻され
    ていないデータを判定し、その正当性をチェックしてデ
    ータを書き戻す書き戻し手段。
  12. 【請求項12】 上記計算機システムは、複数の2次記
    憶装置を備えた多重系システムであり、上記書き戻し手
    段は、複数の2次記憶装置に対してデータを書き戻すこ
    とを特徴とする請求項11記載の計算機システム。
  13. 【請求項13】 以下の要素を有する計算機システム (a)データを記憶する2次記憶装置、(b)上記2次
    記憶装置に対してデータを書込む書込み手段、(c)上
    記書込み手段により更新しようとする時、元のデータを
    不揮発性記憶媒体に退避し、更新開始を示すマークと、
    更新完了後に更新完了のマークを退避データにマークす
    る退避手段、(d)障害発生時に、上記退避手段により
    退避したデータを調べ、更新開始を示すマークがあり、
    更新完了のマークがないデータをデータの更新中にエラ
    ーが発生したとみなし、退避データを用いて上記2次記
    憶装置のデータを復旧する復旧手段、(e)更新成功時
    には退避データを開放する開放手段。
JP32816293A 1993-12-24 1993-12-24 障害検出方法 Expired - Lifetime JP3447347B2 (ja)

Priority Applications (1)

Application Number Priority Date Filing Date Title
JP32816293A JP3447347B2 (ja) 1993-12-24 1993-12-24 障害検出方法

Applications Claiming Priority (1)

Application Number Priority Date Filing Date Title
JP32816293A JP3447347B2 (ja) 1993-12-24 1993-12-24 障害検出方法

Publications (2)

Publication Number Publication Date
JPH07183891A true JPH07183891A (ja) 1995-07-21
JP3447347B2 JP3447347B2 (ja) 2003-09-16

Family

ID=18207185

Family Applications (1)

Application Number Title Priority Date Filing Date
JP32816293A Expired - Lifetime JP3447347B2 (ja) 1993-12-24 1993-12-24 障害検出方法

Country Status (1)

Country Link
JP (1) JP3447347B2 (ja)

Cited By (8)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
JPH09101912A (ja) * 1995-10-06 1997-04-15 Mitsubishi Electric Corp 差分バックアップ方式
JP2002108817A (ja) * 2000-07-15 2002-04-12 Internatl Business Mach Corp <Ibm> 共用データベースによるアベイラビリティ・モニタリング方法
JP2005157933A (ja) * 2003-11-28 2005-06-16 Hitachi Ltd ストレージネットワークの性能情報を収集する方法およびプログラム
JP2008123262A (ja) * 2006-11-13 2008-05-29 Hitachi Software Eng Co Ltd 情報処理装置、及びシステム監視方法、並びにシステム監視方法をコンピュータに実行させるためのプログラム
JP2011097573A (ja) * 2009-09-29 2011-05-12 Canon Inc 情報処理装置、その制御方法及びプログラム
JP2015056082A (ja) * 2013-09-13 2015-03-23 日本電気株式会社 障害情報収集装置、障害情報収集方法、及び、障害情報収集プログラム
CN105528202A (zh) * 2014-10-22 2016-04-27 中兴通讯股份有限公司 多控制器***的资源处理方法及装置
US9558061B2 (en) 2014-07-10 2017-01-31 Fujitsu Limited Information processing apparatus and information processing method

Cited By (9)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
JPH09101912A (ja) * 1995-10-06 1997-04-15 Mitsubishi Electric Corp 差分バックアップ方式
JP2002108817A (ja) * 2000-07-15 2002-04-12 Internatl Business Mach Corp <Ibm> 共用データベースによるアベイラビリティ・モニタリング方法
US6968381B2 (en) 2000-07-15 2005-11-22 International Business Machines Corporation Method for availability monitoring via a shared database
JP2005157933A (ja) * 2003-11-28 2005-06-16 Hitachi Ltd ストレージネットワークの性能情報を収集する方法およびプログラム
JP2008123262A (ja) * 2006-11-13 2008-05-29 Hitachi Software Eng Co Ltd 情報処理装置、及びシステム監視方法、並びにシステム監視方法をコンピュータに実行させるためのプログラム
JP2011097573A (ja) * 2009-09-29 2011-05-12 Canon Inc 情報処理装置、その制御方法及びプログラム
JP2015056082A (ja) * 2013-09-13 2015-03-23 日本電気株式会社 障害情報収集装置、障害情報収集方法、及び、障害情報収集プログラム
US9558061B2 (en) 2014-07-10 2017-01-31 Fujitsu Limited Information processing apparatus and information processing method
CN105528202A (zh) * 2014-10-22 2016-04-27 中兴通讯股份有限公司 多控制器***的资源处理方法及装置

Also Published As

Publication number Publication date
JP3447347B2 (ja) 2003-09-16

Similar Documents

Publication Publication Date Title
US7793060B2 (en) System method and circuit for differential mirroring of data
US8615578B2 (en) Using a standby data storage system to detect the health of a cluster of data storage servers
US7925633B2 (en) Disaster recovery system suitable for database system
US7802128B2 (en) Method to avoid continuous application failovers in a cluster
KR100557399B1 (ko) 네트웍 매체 링크상태 기능을 이용한 컴퓨터 클러스터링시스템의 가용도 개선방법
US5590277A (en) Progressive retry method and apparatus for software failure recovery in multi-process message-passing applications
US7062676B2 (en) Method and system for installing program in multiple system
US7694177B2 (en) Method and system for resynchronizing data between a primary and mirror data storage system
EP0691610B1 (en) Progressive retry method and apparatus having reusable software modules for software failure recovery in multiprocess message-passing applications
US6134673A (en) Method for clustering software applications
US6477663B1 (en) Method and apparatus for providing process pair protection for complex applications
US7627775B2 (en) Managing failures in mirrored systems
US6026499A (en) Scheme for restarting processes at distributed checkpoints in client-server computer system
US6526521B1 (en) Methods and apparatus for providing data storage access
US9189348B2 (en) High availability database management system and database management method using same
US20010056554A1 (en) System for clustering software applications
US20060143497A1 (en) System, method and circuit for mirroring data
US20080288812A1 (en) Cluster system and an error recovery method thereof
US8347142B2 (en) Non-disruptive I/O adapter diagnostic testing
US20230123923A1 (en) Methods and systems for data resynchronization in a replication environment
US7797571B2 (en) System, method and circuit for mirroring data
JPH0950424A (ja) ダンプ採取装置およびダンプ採取方法
JPH07183891A (ja) 計算機システム
EP0881569B1 (en) File system and file management method which realize distributed replication in system having shared type raid
JP3025732B2 (ja) 多重化コンピュータシステムの制御方式

Legal Events

Date Code Title Description
A02 Decision of refusal

Free format text: JAPANESE INTERMEDIATE CODE: A02

Effective date: 20021217

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

Free format text: JAPANESE INTERMEDIATE CODE: A01

Effective date: 20030624

RD04 Notification of resignation of power of attorney

Free format text: JAPANESE INTERMEDIATE CODE: A7424

Effective date: 20040520

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

Free format text: PAYMENT UNTIL: 20070704

Year of fee payment: 4

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

Free format text: PAYMENT UNTIL: 20080704

Year of fee payment: 5

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

Free format text: PAYMENT UNTIL: 20090704

Year of fee payment: 6

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

Free format text: PAYMENT UNTIL: 20100704

Year of fee payment: 7