JP5982842B2 - コンピュータ障害監視プログラム、方法、及び装置 - Google Patents

コンピュータ障害監視プログラム、方法、及び装置 Download PDF

Info

Publication number
JP5982842B2
JP5982842B2 JP2012022492A JP2012022492A JP5982842B2 JP 5982842 B2 JP5982842 B2 JP 5982842B2 JP 2012022492 A JP2012022492 A JP 2012022492A JP 2012022492 A JP2012022492 A JP 2012022492A JP 5982842 B2 JP5982842 B2 JP 5982842B2
Authority
JP
Japan
Prior art keywords
server device
server
business
processing request
client
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.)
Active
Application number
JP2012022492A
Other languages
English (en)
Other versions
JP2013161251A (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
Priority to JP2012022492A priority Critical patent/JP5982842B2/ja
Priority to US13/752,459 priority patent/US20130205017A1/en
Publication of JP2013161251A publication Critical patent/JP2013161251A/ja
Application granted granted Critical
Publication of JP5982842B2 publication Critical patent/JP5982842B2/ja
Active legal-status Critical Current
Anticipated expiration legal-status Critical

Links

Images

Classifications

    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04LTRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
    • H04L43/00Arrangements for monitoring or testing data switching networks
    • H04L43/08Monitoring or testing based on specific metrics, e.g. QoS, energy consumption or environmental parameters
    • H04L43/0805Monitoring or testing based on specific metrics, e.g. QoS, energy consumption or environmental parameters by checking availability
    • H04L43/0817Monitoring or testing based on specific metrics, e.g. QoS, energy consumption or environmental parameters by checking availability by checking functioning
    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04LTRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
    • H04L43/00Arrangements for monitoring or testing data switching networks
    • H04L43/04Processing captured monitoring data, e.g. for logfile generation
    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04LTRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
    • H04L41/00Arrangements for maintenance, administration or management of data switching networks, e.g. of packet switching networks
    • H04L41/06Management of faults, events, alarms or notifications
    • H04L41/0654Management of faults, events, alarms or notifications using network fault recovery
    • H04L41/0668Management of faults, events, alarms or notifications using network fault recovery by dynamic selection of recovery network elements, e.g. replacement by the most appropriate element after failure

Description

本発明は、コンピュータ障害監視プログラム、方法、及び装置に関する。
近年のサーバシステムの高度化に伴い、オンラインシステムでは、24時間365日停止することのない高い信頼性と可用性が求められている。システムの可用性を向上させるためには、システムを構成するサーバを冗長化する方策が挙げられる。この冗長化によって、あるサーバが故障した場合においても、他のサーバが業務を引き継ぐことで、業務サービスの停止を防止することができる。また、故障したサーバの業務サービスへの影響を最小限にするために、速やかに故障したサーバを切り離し、正常なサーバで業務サービスを継続させることができる。
システムを構成するサーバを冗長化するための上記のような技術として、クラスタシステムがある。代表的なクラスタシステムとしては、HAクラスタとフェイルオーバクラスタがある。
HA(High Availability)クラスタは、サーバを複数台使用して冗長化させることにより、システム停止時間を最小限に抑え、業務サービスの可用性を向上させるクラスタシステムである。
フェイルオーバクラスタは、現用系サーバと待機系サーバとで構成される。業務サービスを運用中のサーバを現用系サーバと呼ぶ。そして、現用系サーバがダウンした場合に、その業務を引き継ぐサーバを待機系サーバと呼ぶ。この待機系サーバが複数台存在することでシステムの信頼性がより向上する。現用系サーバから待機系サーバへの業務処理の引き継ぎの仕組みをフェイルオーバと呼ぶ。
現用系サーバと待機系サーバとは、ハートビートと呼ばれる信号を送受信し合い、それぞれが正常に動作していることを確かめる(生存監視)。ハートビートとは「心臓の拍動」を意味し、自身が生きている(正常に動作している)ことを周囲に知らせるために定期的に送信する信号である。
クラスタシステムは、業務サービス単位にクラスタシステムを構築してもよい。したがって、サーバAとサーバBが、業務サービスXと業務サービスYを提供し得る場合、業務サービスXについてはサーバAが現用系サーバでサーバBが待機系サーバであり、業務サービスYについてはサーバAが待機系サーバでサーバBが現用系サーバであってもよい。
一般に、ある単一箇所が障害となると、システム全体が停止となるような箇所を、単一障害点と言う。フェイルオーバ後において、例えば現用系サーバCだけで業務サービスZを提供しており、待機系サーバが存在しない場合、現用系サーバCによって提供される業務サービスZは、単一障害点である。なぜなら、現用系サーバCによって提供される業務サービスZにおいて障害が発生した場合、業務サービスZの提供が停止してしまうからである。
上述のような単一障害点については、故障した現用系サーバを復旧し、クラスタシステムに組み込むことで、冗長化が回復し、単一障害点は解消する。しかしながら、上述の障害が回復し、クラスタシステムに組み込むことが完了するまでは、単一障害点が存在することとなり、危険な状態である。
一般に、故障に備えて、冗長化の多重度を増加させたシステムは、可用性が高いと言える。しかしながら、ハードウェアを含めたリソースを手当する必要があり、その分だけコストがかかることとなる。
また、地震や火災などの災害によってシステム障害が発生した場合に、迅速に復旧するための仕組みや組織体制を「ディザスターリカバリ」と呼ぶ。ディザスターリカバリに対処するためには、例えば冗長化するシステムの一部を地理的に離れた場所に設置することが有効である。
このディザスターリカバリを考慮すると、現用系サーバが存在するサイトから離れた遠隔地にバックアップサイトを設けることも考慮する必要がある。クラスタシステムを構成しているサーバ間では、生存監視とデータ同期が頻繁に行われる。このため、バンド幅の広い専用線等が用いられる。しかしながら、遠隔地に対して専用線を敷くことはコストアップとなる。
また、例えば、業務サービスを三重化以上にした場合であっても、上述のハートビート用の専用線が故障すると、クラスタシステムを構成しているサーバ間の監視が不能となる。この場合、待機系のサーバ群は、現用系から切り離され、現用系の業務サービスが単一障害点になってしまう。単一障害点となった業務サービスにおいて故障が発生すると、上述のように業務サービスの提供は停止する。このため、業務サービスの停止を避けるためには、単一障害点を発見すること、及びこれを迅速に解消することが必要である。
また、現用系サーバが業務に利用しているネットワークを、生存監視等に用いることで、冗長化を図ることは可能であるが、業務サービス用のネットワークに負荷をかけ、システムのパフォーマンスに影響を与える可能性がある。
従来、クライアント・サーバシステムにおいて、ある閾値以上のトラフィックが検出された場合、トラフィック異常と認識する技術がある(特許文献1参照)。
また、従来、IP電話システムにおいて、疎通確認部が疎通確認用マルチキャストパケットを各IP電話にマルチキャストする。そして、所定の期間内に応答があるか否かによって、IP電話の異常を検知する技術がある(特許文献2参照)。
特開平11−17549号公報 特開2009−206862号公報
1つの側面では、本発明は、サーバの障害監視のための有用な情報を取得することを目的とする。
一実施形態によれば、第1のサーバ装置に対する処理要求に、記憶部に記憶された前記第1のサーバ装置の状態を表す情報を含む状態情報を含ませた処理要求電文を生成し、前記処理要求電文を、前記第1のサーバ装置と、前記第1のサーバ装置を監視する第2のサーバ装置とに送信し、前記第1のサーバ装置から新たな状態情報を受信する、処理をクライアント装置に実行させるプログラムが提供される。
実施態様によれば、サーバの障害監視のための有用な情報を取得することができる。
本発明の実施形態のシステム環境を示す図である。 一実施形態に係る機能ブロック図である。 業務サービス生存情報テーブルの例を示す図である。 業務サービス生存情報配信リストの例を示す図である。 通常処理におけるクラスタシステムの監視の概略を示すフローチャートである。 現用系サーバが業務サービス生存情報テーブルを更新するフローチャートである。 コネクション確立時におけるクライアントの処理を示すフローチャートである。 コネクション確立時における現用サイトの現用系サーバの処理を示すフローチャートである。 コネクション確立時における現用サイトの待機系サーバの処理を示すフローチャートである。 コネクション確立時における監視・バックアップサイトの予備サーバの処理を示すフローチャートである。 一実施形態に係る機能ブロック図である。 予備サーバがクラスタシステムに参入する概略を示すフローチャートである。 クラスタシステムへの参入の詳細を示すフローチャートである。 予備サーバがクラスタシステムから離脱する概略を示すフローチャートである。 クライアント及びサーバのハードウェア構成を示す図である。
本明細書においては、クラスタシステムを例示して説明を行うが、本発明は、クラスタシステムに限定されるものではない。また、図面を用いて説明するが、図面は、実施形態の内容を分かりやすく説明するためのものであり、発明を限定するためのものではない。
なお、各図に付された参照符号は、図面において最初に用いられた番号を他の図においても用いることがある点に留意すべきである。
図1は、本発明の実施形態のシステム環境100を示している。以下に説明する実施形態では、図1に示すシステム環境を前提とするが、本発明は、この環境に限定されるものではない。
図1に示すように、システム環境100は、現用サイト110と、監視・バックアップサイト150、クライアント180がネットワークNWで接続されている。なお、クライアント180は複数存在してもよい。
まず、現用サイト110は、複数の業務Aないし業務Zをクライアント180にサービスしている。例えば、業務Aをサービスしているクラスタシステム110Aは、現用系サーバ111Aと待機系サーバ112Aを有する。待機系サーバ112Aは、複数存在していてもよい。現用系サーバ111Aと待機系サーバ112Aとは、バンド幅の広い専用線190で接続されている。この専用線190によって、双方のサーバが生存監視を行い、データの同期を行っている。そして、例えば、クラスタシステム110Aのフェイルオーバ機能により、現用系サーバ111Aが故障した場合には、待機系サーバ112Aが業務を引き継ぎ、現用系サーバとして機能する。これにより、業務Aの継続的なサービスが担保されている。
監視・バックアップサイト150には、現用サイト110によりサービスされている業務Aと同じ業務を継続するために現用サイト110の111Aないし112Aと同等なハードウェア構成・ソフトウエア構成を持つサーバ151Aが存在する。このため、サーバ151Aは、現用サイトによりサービスされている業務Aの監視を行うことで業務Aのクラスタシステムに参入及び離脱することが可能である。業務Aのクラスタシステム110Aの現用系サーバ111A及び待機系サーバ112Aが正常に稼働している限り、監視・バックアップサイト150のサーバ151Aは、業務Aのクラスタシステム110Aからは切り離され、業務Aのクラスタシステム110Aの監視を行ってもよい。そして、サーバ151Aは、監視・バックアップサイト150における他の業務の別個のクラスタシステムの一部として機能していてもよい。同様に、監視・バックアップサイト150には、業務nないし業務Zを監視し、またはバックアップするため、サーバ151nないし151Zが存在してもよい。
なお、上述の説明では、各業務にそれぞれ別個のサーバが用意されているが、一つのサーバが複数の業務をサポートしてもよい。また、サーバは、物理マシンであっても仮想マシンであってもよい。
更に、図1において、クライアント180が存在する。クライアント180は、ネットワークNWを介して、現用サイトの現用系サーバが提供する業務Aないし業務Zのうちの少なくとも1つのサービスを受けることができる。例えば、クライアント180は、業務Zのサービスを受けてもよい。例えば、クライアント180は、業務Zの処理要求電文171、172、及び173をマルチキャストでそれぞれサーバ111Z、112Z、及び151Zに送信してもよい。
図1では、現用サイト110と監視・バックアップサイト150とは、業務に用いるネットワークNWによって接続されており、バンド幅の広い専用線190によって接続されていなくてもよい。なお、現用サイト110と監視・バックアップサイト150とは、地理的に離れていても、接近していてもよい。
バックアップサイトに存在するサーバ151Aないし151Zは、現用サイトのクラスタシステムに常時組み込まれていないことが望ましい。そして、監視・バックアップサイトの主たる機能は、現用サイトのクラスタシステムの単一障害点の迅速な発見、及び/又は、現用サイトにおける単一障害点が存在する間にクラスタシステムへの一時的な参入を行い、この単一障害点を解消することである。
なお、上記システム環境100の詳細な動作については、後述する。
以下の、詳細な実施形態においては、大きく以下の2つの項目に分けて、順を追って説明を行う。
(A)監視・バックアップサイトの予備サーバが現用サイトのクラスタシステムの単一障害点を監視する実施形態。
(B)現用サイトのクラスタシステムの単一障害点が存在する場合、監視・バックアップサイトのサーバが、現用サイトのクラスタシステムに参入及び離脱する実施形態。
なお、各実施形態は、それぞれ排他的なものではない。すなわち、必要に応じて、ある実施形態の一部を他の実施形態と組合せてもよいことは言うまでもない。
(A)監視・バックアップサイトの予備サーバが現用サイトのクラスタシステムの単一障害点を監視する実施形態。
図2は、一実施形態に係る機能ブロック図を示している。図2は、図1における業務Zに係る機能について例示したものである。
クライアント180は、クライアント用業務Z処理部210、クライアント制御部220、業務サービス生存情報テーブル(1)215、業務サービス生存情報配信リスト216を含む。
クライアント用業務Z処理部210は、例えばスケジュール管理を提供するアプリケーションプログラムであってもよい。クライアント用業務Z処理部は、処理要求を現用系サーバ111Zのサーバ用業務Z処理部260に与える。そして、サーバ用業務Z処理部260からの応答を受信することにより、スケジュール管理の業務を遂行してもよい。
クライアント制御部220は、クライアント用業務Z処理部210からの処理要求と、サーバ用業務Z処理部260からの応答を仲介する機能を有する。クライアント制御部220は、受信部222、処理要求電文生成部224、制御電文生成部226、及び送信部228を含んでもよい。また送信部228は、マルチキャスト送信部229を含むことが望ましい。また、クライアント制御部220は、業務サービス生存情報テーブル(1)215及び業務サービス生存情報配信リスト216を利用してもよい。
業務サービス生存情報テーブル(1)215は、各サーバの状態を業務別に整理した情報であり、その具体例を図3(A)に示す。なお、図3の詳細については、後述する。
また、業務サービス生存情報配信リスト216は、マルチキャスト送信部229が、業務に係る電文をその業務に関連するサーバにマルチキャスト送信するために用いるサーバのアドレスが記憶されたリストである。具体的な業務サービス生存情報配信リスト216の例を図4に示す。なお、図4の詳細については後述する。
受信部222は、業務Z処理部に処理結果を返却する。また、サーバからの応答電文に付加されたサーバ状態情報を抽出して、業務サービス生存情報テーブル(1)215に蓄積する機能を有してもよい。
処理要求電文生成部224は、クライアント用業務Z処理部210からの処理要求に業務サービス生存情報テーブル(1)215の情報を付加して処理要求電文を生成する機能を有してもよい。
制御電文生成部226は、所定の時間内(例えば、業務Z用クラスタシステムで用いられるハートビートの時間間隔)にクライアント用業務Z処理部210からの処理要求が発生せず、かつその間に業務サービス生存情報テーブル(1)215の業務Zに係る情報が変更されている場合に、業務サービス生存情報テーブル(1)215の情報を制御電文として生成してもよい。この制御電文は、各サーバにマルチキャスト送信される。この機能によって、処理要求が所定の時間内に発生しない場合であっても、監視・バックアップサイト150の業務Z予備サーバ(1)151Zが管理している業務サービス生存情報テーブル(3)285の情報をアップデートすることができる。これによって、監視・バックアップサイト150の業務Z予備サーバ(1)151Zは、クラスタシステムの状態を常に監視することができる。
更に図2において、現用サイトの業務Z用クラスタシステム110Zは、現用系サーバ111Zと待機系サーバ112Zとを有している。上述のように、待機系サーバ112Zは、複数存在することが望ましいが、その分コストを増加させることとなる。図2においては、例示としてクラスタシステムを構成する最小限の数のサーバが示されている。現用系サーバ111Zと待機系サーバ112Zは、同じ構成であることが望ましいが、異なるハードウェア要素又はソフトウエア要素があってもよい。ただし、クラスタシステムを構成するために必要なソフトウエアがインストールされていること、および最低限のハードウェアスペックが確保されていることが必要である。
現用系サーバ111Zには、サーバ制御部250、サーバ用業務Z処理部260、業務サービス生存情報テーブル(2)265、待機系サーバ112Zとの同期・生存監視(ハートビート)のための専用線267を有することが望ましい。
業務サービス生存情報テーブル(2)265は、例えばサーバ制御部250によってアップデートされてもよい。サーバ制御部250は、待機系サーバ112Zの生存監視を行い、この情報を業務サービス生存情報テーブル(2)265に反映させることが望ましい。業務サービス生存情報テーブル(2)265の具体例を図3(B)に示す。図3の詳細は後述する。
サーバ用業務Z処理部260は、クライアント180からの処理要求を受け、その処理結果を応答として返す。サーバ用業務Z処理部260は、業務処理Z(例えば、スケジュール管理)の業務を処理するアプリケーションプログラムであってもよい。
サーバ状態送信部252は、サーバ用業務Z処理部260からの応答に、業務サービス生存情報テーブル(2)265の情報を付加して、応答電文を生成し、クライアント180に送信する機能を有してもよい。また、サーバ状態送信部252は、ハートビートの時間間隔に関する情報を含む電文を生成し、クライアント180に送信する機能を有してもよい。
業務サービス生存情報削除部254は、クライアント180から送られた電文から業務情報サービス生存情報を削除することにより、クライアント180からの処理要求を抽出して、サーバ用業務Z処理部260に伝達してもよい。業務情報サービス生存情報は、現用系サーバ111Zが過去にクライアント180に送った情報によってアップデートされた業務サービス生存情報テーブル(2)265の情報及び他の業務に係る情報であるため、削除してもよい。
待機系サーバ112Zにも、クライアント180から、マルチキャストで電文が送信されてもよい。なお、待機系サーバ112Zは、この電文を単に破棄してもよい。
更に図2を参照する。監視・バックアップサイト150には、少なくとも1つの業務Z予備サーバ(1)151Zが存在する。
業務Z予備サーバ(1)151Zは、少なくとも現用サイトの業務Z用クラスタシステム110Zの監視機能を有することが望ましい。業務Z予備サーバ(1)151Zは、少なくとも、サーバ制御部280及び業務サービス生存情報テーブル(3)285を有し、現用サイトの業務Z用クラスタシステム110Zに存在する複数のサーバを監視する機能を有する。また、業務Z予備サーバ(1)151Zは、現用サイトの業務Z用クラスタシステム110Zに単一障害点が発生した場合に、能動的(主体的)に当該クラスタシステムに参入し、そして、クラスタシステムの障害が回復した際に、能動的(主体的)にクラスタシステムから離脱する機能を有してもよい。なお、この点に関する詳細は、実施形態(B)において後述する。
サーバ状態受信部282は、クライアント180からマルチキャストされた電文を受信する。そして、サーバ状態受信部282は、更にその電文から業務サービス生存情報のうち、業務Zに係る情報を抽出し、業務サービス生存情報テーブル(3)285を更新する。この処理を行うことによって、業務サービス生存情報テーブル(3)285には、現用サイトの業務Z用クラスタシステム110Zに存在する複数のサーバの状態が蓄積されると共に、アップデートされてゆく。
動作制御部284は、業務サービス生存情報テーブル(3)285の内容を読み出し、現用サイトの業務Z用クラスタシステム110Zに単一障害点が存在するか否かを監視する。動作制御部284は、この監視した情報をオペレータに分かるように報知してもよい。あるいは、後述するように、動作制御部284は、業務Z予備サーバ(1)151Zを、業務Z用クラスタシステム110Zに参入させ、あるいは、離脱させてもよい。
なお、図2は、クライアントからサーバへの処理依頼に対し、サーバからクライアントへ結果を返却する同期型の説明をしているが、クライアントからサーバへの処理依頼を一方的に通知し、サーバからクライアントへ結果が返却されない、非同期型でもよい。
図3は、業務サービス生存情報テーブルの例を示しており、記憶部(図示せず)に記憶される。
図3(A)は、クライアント180に存在する業務サービス生存情報テーブル(1)215の例を示している。業務サービス生存情報テーブル(1)215は、サーバ名、業務サービス名、サーバの場所、業務サービス生存情報、サーバ状態取得時刻、業務サービス生存情報配信時刻、業務サービス生存情報配信タイマー値、及びサーバ状態変更フラグを有することが望ましい。業務サービス生存情報テーブル(1)215は、クライアント180が利用する業務に関連するクラスタシステムの各々のサーバの状態が蓄積された情報である。この情報は、上述のように、現用系サーバ111Z等からの応答に付加された業務サービス生存情報を抽出することによって取得される。そして、業務サービス生存情報テーブル(1)215の情報は、処理要求に付加された処理要求電文、又は制御電文によって、マルチキャスト送信される。なお、業務サービス生存情報テーブル(1)215の情報のうち、処理要求電文に係る業務に関連する情報のみを抽出して、処理要求電文に付加してもよい。
サーバ名は、各サーバに付与された固有の識別情報である。
業務サービス名は、クラスタシステムが提供する業務サービスを特定する情報である。
サーバの場所は、例えば、現用サイト、監視・バックアップサイトのいずれかである。サーバの場所は、例えば、サーバが、能動的にクラスタシステムから離脱する際に、自身が、クラスタシステムに参入した監視・バックアップサイト150の予備サーバであるか否かを確認するために利用してもよい。また、サーバの場所の情報を参照することによって、現用サイトのサーバは、能動的にクラスタシステムから離脱させないようにすることも可能である。
業務サービスの生存情報は、現用系(Active:業務サービス動作可能な状態)、待機系(Standby:業務サービス切り替え可能な状態)、Activating(Standby→Activeへ切り替わり中)、Stop(停止)、Starting(Stop→Standby中)、Stopping(Active, Standby→stop中)、Faulted(故障)、データ同期中等の状態を用いてもよい。たとえば、特定の業務において、現用サイトの現用系だけが稼働しており、待機系が存在しない場合(例えば、故障の場合)には、その現用サイトの業務は、単一障害点であることが分かる。この場合には、現用系だけが稼働しており、危険な状態である。したがって、監視・バックアップサイト150のサーバを、そのクラスタシステムに参入させる等の対応を行うことにより、単一障害点を解消することができる。
サーバ状態取得時刻は、業務サービス生存情報テーブル(1)215を更新する際に、既に登録されている情報を古い情報で上書きしてしまうのを防止するために利用してもよい。
業務サービス生存情報配信時刻は、クライアント180が、業務サービス生存情報テーブル(1)215の情報を最後に送信した時刻が記憶される。
業務サービス生存情報配信タイマー値は、例えば、対応する業務のクラスタシステムのハートビートの時間間隔を用いてもよい。
サーバ状態変更フラグは、クライアント180が、業務サービス生存情報テーブル(1)215の情報を最後に送信した時刻から、現在時刻までに、対応する業務に係る業務サービス生存情報テーブル(1)215のエントリが更新されたか否かを示す。OFFであれば、更新されていないことを示す。ONであれば、更新されていることを示す。
業務サービス生存情報配信時刻から、業務サービス生存情報配信タイマー値の時間が経過し、かつサーバ状態変更フラグがONの場合、以下の処理を行うことが望ましい。すなわち、次の処理要求の発生を待たずに、制御電文生成部が業務サービス生存情報を含む制御電文を生成し、かつ、サーバ状態変更フラグがONの業務に結びつけられた業務サービス生存情報配信リストのサーバへマルチキャスト送信する。この処理によって、クライアント180の業務サービス生存情報テーブル(1)215の更新された情報を、監視・バックアップサイト150の業務Z予備サーバ(1)151Zに、ハートビートの時間間隔と同程度のタイムラグで伝達することができる。
業務B(人事)のエントリでは、監視・バックアップサイト150の予備サーバ151Bがリストアップされている。そして、現用サイト110のサーバ111Bが故障しているため、現用サイト110のサーバ112Bが、現用系サーバとして稼働している。すなわち、現用サイト110の業務Bのサービスにおいて単一障害点が存在しているため、監視・バックアップサイト150の予備サーバ151Bが、待機系サーバとして、業務Bに係るクラスタシステムに参入していることが示されている。このように、監視・バックアップサイト150の予備サーバは、クラスタシステムに参入したときだけ、この業務サービス生存情報テーブル(1)にリストアップされてもよい。図3に示す他のテーブルについても同様である。
図3(B)は、現用系サーバ111Zが管理する業務サービス生存情報テーブル(2)265の例を示す。このテーブルの情報は、サーバ用業務Z処理部260の応答に付加されて、クライアント180に伝達され、業務サービス生存情報テーブル(1)215を更新するために用いられることが望ましい。
図3(C)は、業務Z予備サーバ(1)151Zが管理する業務サービス生存情報テーブル(3)285の例を示している。このテーブルの情報は、クライアント180からのマルチキャスト送信で配信された電文に含まれる情報(すなわち、業務サービス生存情報テーブル(1)215の情報)によって更新される。業務Z予備サーバ(1)151Zは、業務サービス生存情報テーブル(3)285を参照することにより、業務Z用クラスタシステム110Zを監視することができる。また、業務Z用クラスタシステム110Zに単一障害点が存在する場合には、例えば実施形態(B)において後述するように、この単一障害点を解消するためのオペレーションを開始してもよい。
図4は、業務サービス生存情報配信リストの例を示している。このリストは、業務サービス名、サーバ名、IPアドレスの項目を有することが望ましい。このリストにより、特定の業務サービスに対応できるサーバ名とそのネットワークアドレスが取得できる。なお、アドレスは必ずしもIPアドレスである必要はない。マルチキャスト送信部229は、このリストを参照して、電文に関連する業務に関係するサーバに、電文をマルチキャスト送信することができる。このリストには、現用サイトの現用系サーバ111Z及び待機系サーバ112Z、並びに監視・バックアップサイトの予備サーバ151Zの情報が格納されていることが望ましい。 図5は、通常処理におけるクラスタシステムの監視の概略を示すフローチャートを示している。通常処理とは、コネクション確立時等の初期化の処理等を含まない、通常の処理のフローを意味する。
ステップ502において、クライアント180が処理要求電文又は制御電文を最後に配信した時刻から、ハートビートの時間間隔が経過したかが判断される。この判断が「はい」であれば、ハートビートの時間間隔よりも長い間、業務サービス生存情報テーブル(1)215の情報が、各サーバにマルチキャスト配信されていないことを意味する。なお、この判断は、業務サービス生存情報テーブル(1)215の業務サービス生存情報配信時刻と現在時刻の差を、業務サービス生存情報配信タイマー値と比較することにより判断できる。ステップ502は、定期的なタイマー割込で開始されることが望ましい。また、このタイマー割込の間隔は、ハートビートタイマー値よりも十分短いことが望ましい。なお、ハートビートタイマー値以外の時間間隔を別途設定してもよい。この判断が、「いいえ」であれば、処理は終了する。この判断が「はい」であれば、ステップ504に進む。
ステップ504において、業務サービス生存情報テーブル(1)215のサーバ状態変更フラグがONのエントリが存在するか否かが判断される。この判断が、「はい」であれば、業務サービス生存テーブル(1)の情報が最後に送信されてから、現在までの間に業務サービス生存情報テーブル(1)215の情報がマルチキャストされておらず、かつその時間がハートビート時間間隔よりも長いことを意味する。この状況は、クラスタシステムの状況が変化したにもかかわらず、その情報が、監視・バックアップサイトの予備サーバ151Zに一定期間(ハートビート時間間隔以上の期間)伝達されていないことを示す。この判断が「いいえ」であれば、業務サービス生存情報テーブル(1)215の情報は変更されていないため、処理は終了する。この判断が「はい」であれば、ステップ506に進む。
ステップ506において、クライアント180は、業務サービス生存情報テーブル(1)215の情報含む処理要求なしの制御電文を生成する。この制御電文は、クライアント用業務Z処理部210からの処理要求を待たずに、業務サービス生存情報テーブル(1)215の情報を、クラスタシステムを監視する監視・バックアップサイトに転送するための電文である。次にステップ510に進むが、その前にステップ508について説明する。
ステップ508は、クライアント180が、処理要求を発生した場合に開始される。このステップで、処理要求に業務サービス生存情報テーブル(1)215の情報を付加した処理要求電文が生成される。この処理は、処理要求を現用系サーバにユニキャストで送るのではなく、処理要求に業務サービス生存情報テーブル(1)215の情報を付加した電文を生成し、監視等を行う予備サーバにもマルチキャストで同じ電文を送ることにより、処理要求と監視用の情報とを送信し、トラフィックの増加を極力抑えつつ、複数の情報を送り、複数の処理(処理要求の処理とクラスタシステムの監視)をすることが可能となる。なお、業務サービス生存情報テーブル(1)215の情報のうち、電文に関連する業務の部分のみを抽出して、処理要求に付加してもよい。また、この処理要求電文には、現用系サーバ111Zに対し、応答電文にクラスタシステムを構成する現用系サーバと待機系サーバの状態に関する情報を送るよう要求する命令を含めてもよい。この場合には、後述するように、この命令がなされた場合にのみ、現用系サーバ111Zは、上記状態に関する情報を応答電文に付加して、クライアントに返信する。
ステップ510において、クライアント180が、業務サービス生存情報配信リスト216を参照し、処理要求電文又は制御電文の業務に結びつけられた配信先のサーバに、処理要求電文又は制御電文をマルチキャストで送信する。業務サービス生存情報配信時刻は、クライアント180が、業務サービス生存情報テーブル(1)215の情報に電文を送信した時刻を記憶する。そして、業務サービス生存情報テーブル(1)215の関連する業務のサーバ状態変更フラグをOFFにする。
ステップ512において、現用系サーバ111Zは、電文を受け取り、クライアント180の処理要求を処理し応答を生成し、応答に業務サービス生存情報テーブル(2)265の情報を付加して応答電文を生成し、クライアント180に送信する。たとえば、現用系サーバ111Zが管理している業務サービス生存情報テーブル(2)265は、クラスタシステムを構成している待機系サーバ112Zの生存情報も含まれる(図3(B)参照)。したがって、クライアント180は、この応答電文を受信することにより、処理要求の結果とクラスタシステムに関連するサーバの情報の最新情報を入手することが可能となる。このように、応答電文に業務処理の応答とクラスタシステムに関連するサーバの情報を含めることにより、トラフィックの増加を最小限に抑えつつ、二つの情報をクライアント180に送ることが可能となる。なお、この伝送は、ユニキャストにより送信されることが望ましい。なお、ステップ508で述べたように、クライアントからの電文にクラスタシステムを構成する現用系サーバと待機系サーバの状態に関する情報を送るよう要求する命令が含まれていた場合にのみ、応答に業務サービス生存情報テーブル(2)265の情報を付加してもよい。
ステップ514において、クライアント180は、例えば、現用系サーバ111Zから受信した応答電文に含まれるクラスタシステムの情報を取得し、業務サービス生存情報テーブル(1)215を更新し、変更があれば、対応する業務のサーバ状態変更フラグをONにする。なお、この処理においては、業務サービス生存情報テーブル(1)215の関連する業務のサーバ状態取得時刻をチェックすることが望ましい。このチェックにより、業務サービス生存情報テーブル(1)215に記録されたサーバ状態取得時刻が、サーバから取得された情報に付加されたサーバ状態取得時刻よりも新しい場合には、業務サービス生存情報テーブル(1)215を古い情報で上書きしてしまうことを避けることができる。そして、その後処理は終了する。
ステップ516は、待機系サーバ112Zの処理を示している。上述の電文のマルチキャスト送信では、電文を待機系サーバ112Zに送信してもよい。この場合には、待機系サーバ112Zは、受信した電文を単に破棄してもよい。なお、待機系サーバ112Zが現用系サーバになった場合には、自己の業務サービス生存情報テーブルを参照して、自サーバの業務サービス生存情報を付加し、クライアント180に返信する。
ステップ518は、監視・バックアップサイト150の予備サーバ151Zの処理を示している。予備サーバ151Zは、処理要求電文又は制御電文から業務サービス生存情報を抽出し、業務サービス生存情報テーブル(3)285を更新することが望ましい。業務サービス生存情報テーブル(3)285をチェックすることにより、例えば、現用サイトの業務Z用クラスタシステム110Zを監視することができる。このクラスタシステムに単一障害点が発見されれば障害の解消を実行してもよい。あるいは、オペレータに報知してもよい。障害の解消の詳細は、実施形態(B)において後述する。なお、予備サーバ151Zが待機系サーバ又は現用系サーバになった場合には、自己の業務サービス生存情報テーブル(3)285を参照して、自サーバの業務サービス生存情報を付加し、クライアント180に返信する。
以上の一連の処理によって、監視・バックアップサイトの予備サーバ151Zは、ネットワークNWのトラフィックの増加を抑えつつ、業務Zクラスタシステム110Zに存在する現用系サーバ111Z及び待機系サーバ112Zを簡便に監視することが可能となる。
図6は、現用系サーバ111Zが業務サービス生存情報テーブルを更新するフローチャートを示している。
ステップ602において、現用系サーバ111Zが、待機系サーバ112Zの状態を取得し、現用系サーバ111Zと待機系サーバ112Zの状態を業務サービス生存情報テーブル(2)265に保存する(図3(B)参照)。通常、クラスタシステムは、ハートビートの時間間隔で、現用系と待機系とが相互に相手の生存監視を行っている。この監視の結果の情報を業務サービス生存情報テーブル(2)265に保存することが望ましい。
図7ないし図10は、コネクション確立時における処理を示している。クライアント180が現用系サーバと連携して業務を処理するためには、まずコネクションの確立が正常に行われる必要がある。また、クライアント180は、現用系サーバ111Z、待機系サーバ112Z及び、監視・バックアップサイト150の予備サーバ151Zにマルチキャスト送信を行うため、予めコネクション確立を行っておくことが望ましい。
図7は、コネクション確立時におけるクライアント180の処理を示すフローチャートである。
ステップ702において、業務サービス生存情報配信リストをメモリ上のテーブルに設定する。特定の業務に関係するサーバのサーバ名及びネットワークアドレスは、予めクライアント180に記憶されていてもよい。あるいは、ネットワーク上の特定のサイトを参照して、クライアント180が、特定の業務に関係するサーバのサーバ名とアドレスを検索して取得してもよい。
ステップ704において、クライアント180は、業務サービス名に結びつけられた現用サイトおよび監視・バックアップサイトのサーバへコネクション確立依頼の処理要求を含む処理要求電文をマルチキャスト送信する。
ステップ706において、業務サービス生存情報テーブル(1)215のサーバ状態変更フラグをOFFに設定する。
ステップ708において、現用系サーバ111Zから応答電文を受信する。
ステップ710において、受信した電文に付加されているクラスタシステムを構成しているサーバ間のハートビートのタイマー値を業務サービス状態配信タイマー値として業務サービス生存情報テーブル(1)215に設定する。この値は、その後変更しなくてもよい。また、ハートビートのタイマー値以外の値が設定されてもよい。なお、このステップにおいて、現用系サーバ111Zから、業務サービス生存情報テーブル(2)265に関する情報を取得し、クライアント180の業務サービス生存情報テーブル(1)215に保存してもよい。
ステップ712において、現用系サーバ111Zからの応答電文からクラスタシステムを構成しているサーバ間のハートビートのタイマー値(及び必要に応じて、業務サービス生存情報テーブル(2)265に関する情報)を除外し、呼び出し元のクライアント制御部220に渡す。
以上の処理によって、クライアント180は、コネクションが確立されたことが確認できると共に、業務サービス状態配信タイマー値がセットされる。また、業務サービス生存情報テーブル(2)265に関する情報を取得することも可能である。
図8は、コネクション確立時における現用サイトの現用系サーバ111Zの処理を示すフローチャートである。
ステップ802において、現用系サーバ111Zは、クライアント180のクライアント制御部220からのコネクション確立依頼の処理要求電文を受信する。
ステップ804において、現用系サーバ111Zは、クライアント180とコネクションを確立する。
ステップ806において、クラスタシステムを構成しているサーバ間のハートビートのタイマー値を応答電文に付加する。なお、このステップにおいて、現用系サーバ111Zが管理する業務サービス生存情報テーブル(2)265の情報を応答電文に付加してもよい。
ステップ808において、呼び出し元のクライアント180のクライアント制御部220へ応答電文を返信する。
図9は、コネクション確立時における現用サイト110の待機系サーバ112Zの処理を示すフローチャートである。
ステップ902において、クライアント制御部220からのコネクション確立依頼の処理要求電文を受信する。
ステップ904において、クライアント180とコネクションを確立する。
ステップ906において、呼び出し元のクライアント制御部220へ応答電文を返信する。コネクション確立が確実に行われたか否かをクライアント180が確認するために、待機系サーバ112Zであっても、コネクション確立に対する応答をクライアント180に返信することが望ましい。
図10は、コネクション確立時における監視・バックアップサイト150の予備サーバ151Zの処理を示すフローチャートである。
ステップ1002において、クライアント制御部220からのコネクション確立依頼の処理要求電文を受信する。
ステップ1004において、クライアント180とコネクションを確立する。
ステップ1006において、呼び出し元のクライアント制御部220へ応答電文を返信する。コネクション確立が確実に行われたか否かをクライアント180が確認するために、予備サーバであっても、コネクション確立に対する応答をクライアント180に返信することが望ましい。
以上の処理が正常に終了することによって、業務サービス生存情報配信リスト216の内容が正しいことが確認できる。
(B)現用サイトのクラスタシステムの単一障害点が存在する場合、監視・バックアップサイトのサーバが、現用サイトのクラスタシステムに参入及び離脱する実施形態。
図11は、一実施形態に係る機能ブロック図を示している。図2と同じ構成要素には、同じ参照符号が付されている。図2と比較して、図11では、新たに業務Z予備サーバ(2)1151Zが示されている。なお、業務Z予備サーバ(2)1151Zが必須であるわけではない。また、業務Z予備サーバ(1)151Zのサーバ制御部280に、動作選択部1186が存在してもよい。また、動作制御部284は、業務Z用クラスタシステム110Zへの参入要求及び離脱要求1101を伝達できる能力があることが望ましい。また、併せて業務Z予備サーバ(1)151Zは、監視・バックアップサイト150に存在する別個のクラスタシステムへの離脱及び参入ができる能力があることが望ましい(図示せず)。
図12は、監視・バックアップサイト150の予備サーバ(1)151Zがクラスタシステム110Zに参入する概略を示すフローチャートを示している。
ステップ1202において、監視・バックアップサイト150の予備サーバ151Z(自サーバ)が、処理要求電文又は制御電文をクライアント制御部220から受信する。
ステップ1204において、自サーバが、処理要求電文又は制御電文から業務サービス生存情報を抽出し、業務サービス生存情報テーブル(3)285を更新することが望ましい。この処理によって、クラスタシステム110Zの現用系サーバ111Z及び待機系サーバ112Zに関して新たな状態が業務サービス生存情報テーブル(3)285に蓄積される。なお、この処理においては、業務サービス生存情報テーブル(3)285のサーバ状態取得時刻をチェックすることが望ましい。このチェックにより、蓄積されている情報よりも取得した情報が古いものであるか否かがチェックでき、古い情報で、業務サービス生存情報テーブル(3)285が上書きされてしまうことを防止できる。
ステップ1206において、業務サービス生存情報テーブル(3)285に存在する、受信した電文に係る業務の業務サービス生存情報を参照する。
ステップ1208において、監視対象の業務サービスが単一障害点になっているかがチェックされる。このチェックは、稼働可能な現用サイトのサーバ台数が1以下となっているか否かで判断することが可能である。この判断が「いいえ」であれば、処理は、ステップ1202に戻る。この判断が「はい」であれば、ステップ1212に移る。
ステップ1212において、現在参入している監視・バックアップサイトのクラスタシステムから、予備サーバ(1)151Z(自サーバ)を離脱させる。予備サーバ(1)151Zは、クラスタシステム110Zを監視しつつ、他のクラスタシステムの一部として稼働していてもよいからである。この場合には、クラスタシステム110Zの負荷を軽くするため、現在参入している監視・バックアップサイトのクラスタシステムから、予備サーバ(1)151Z(自サーバ)を離脱させることが望ましい。なお、予備サーバ(1)151Zの処理能力に応じて、離脱させないようにすることも可能である。この離脱は、予備サーバ(1)151Zによって、能動的に行われることが望ましい。
また、複数の予備サーバが存在する場合には、クラスタシステムに現在参入している予備サーバのうちで、最も業務処理の優先度が低い予備サーバを選択してもよい。この選択は、図11における動作選択部1186によって遂行される。この選択基準は、予備サーバの業務サービス生存情報(図示せず)に、予め優先順位を与えておいてもよい。
ステップ1214において、現用サイトのクラスタシステム110Zに対し、予備サーバ(1)151Z(自サーバ)の参入要求を送信する(1101)。この参入要求は、予備サーバ(1)151Z(自サーバ)によって、能動的に行われることが望ましい。
ステップ1216において、現用サイトのクラスタシステム110Zの肯定応答を受けて、現用サイトのクラスタシステム110Zに、予備サーバ(1)151Z(自サーバ)を参入させる。なお、参入の手順の詳細は、図13を用いて後述する。
ステップ1218において、クライアント180からの処理要求電文が到来した際に、業務サービス生存情報テーブル(3)285を参照して、これに対する応答電文に、自サーバの業務サービス生存情報を付加し、クライアント180に返信する。この処理によって、クライアント180の管理する業務サービス生存情報テーブル(1)216が更新される。
以上の処理によって、監視・バックアップサイト150の予備サーバ(1)151Zがクラスタシステム110Zに参入する。
図13は、クラスタシステム110Zへの参入の詳細を示すフローチャートである。
ステップ1302において、監視・バックアップサイトの予備サーバ(1)151Z(自サーバ)の状態をデータ同期中にして、現用サイトのクラスタシステムとハートビートを開始する。
ハートビートは、ステップ1304、ステップ1306、ステップ1308のデータ同期処理と並行に実施する。
なお、クラスタシステム参入後、クラスタシステムを構成する他サーバの生存監視について、クラスタシステムの機能を使用して実施してもよい。
ステップ1304において、例えば、現用サイトの現用系サーバ111Zとデータ同期を開始する。この同期は、専用線ではなく業務に用いられているネットワークNWを用いることができる。なお、ファイル共有機能を用いて、データ同期のためのデータ転送量を減少させてもよい。
ステップ1306において、現用サイトの現用系サーバとデータ同期完了を待ち合わせる。
ステップ1308において、データ同期が完了したか否かが判断される。この判断が「いいえ」であれば、ステップ1306に戻る。この判断が「はい」であれば、ステップ1310に移る。
ステップ1310において、自サーバの状態を待機系にして、現用サイトの現用系サーバにハートビートを送信する。この送信には、業務用のネットワークNWを用いることができる。
以上の処理で、監視・バックアップサイト150の予備サーバ(1)151Zがクラスタシステム110Zに参入し、待機系サーバとして機能することができる。なお、現用系のサーバが全てダウンした場合には、監視・バックアップサイト150の予備サーバ(1)151Zが、現用系サーバとなることができることは言うまでもない。
図14は、予備サーバ151Zがクラスタシステム110Zから離脱する概略を示すフローチャートである。
ステップ1402において、現用系サーバからのハートビートを待機する。
ステップ1404において、現用系サーバからのハートビートを受信する。
ステップ1406において、受信したハートビートから業務サービス生存情報を参照する。なお、業務サービス生存情報は、クライアント180からのマルチキャストされる電文からも得ることができる。いずれのルートを用いてもよい。
ステップ1408において、自サーバが監視・バックアップサイトのサーバであるかが、チェックされる。このチェックは、業務サービス生存情報テーブル(3)285のサーバの場所を確認し、現用サイト110であるか監視・バックアップサイト150であるかの情報を参照して判定できる。このチェックによって、現用サイト110に存在するサーバが、能動的にクラスタシステム110Zから離脱してしまうことを防止できる。この判断が「いいえ」であれば、ステップ1402に戻る。この判断が「はい」であれば、ステップ1410に移る。
ステップ1410において、現用サイトのクラスタシステム110Zで故障したサーバが復旧されている、または、新たなサーバが追加されているかが判断される。この判断は、業務サービス生存情報テーブル(3)285から業務サービス生存情報を参照し、稼働可能な現用サイト110のサーバ数が2以上となっているかで判断できる。この場合には、現用サイト110における単一障害点が解消していることを示している。この判断が「いいえ」であれば、ステップ1402に戻る。この判断が「はい」であれば、ステップ1412に移る。
ステップ1412において、現用サイトのクラスタシステム110Zに対し、自サーバの離脱要求を送信する(1101)。この離脱要求は、能動的に実行されることが望ましい。この処理によって、離脱が行われる。
ステップ1414において、監視・バックアップサイト150のクラスタシステムに自サーバが参入する。この参入は能動的に行われることが望ましい。このクラスタシステムは、過去に参入していたクラスタシステムに復帰するものであってもよい。あるいは、新しいクラスタシステムに参入してもよい。あるいは、監視・バックアップサイト150に、参入すべきクラスタシステムがない場合には、参入の処理を行わなくてもよい。
ステップ1416において、業務サービス生存情報テーブル(3)285の業務サービス生存情報から、離脱した監視・バックアップサイトのサーバ(自サーバ)を削除し、復旧した現用サイトのサーバを追加する。
ステップ1418において、業務サービス生存情報テーブル(3)285のサーバ状態取得時刻を現在時刻に更新する。
ステップ1420において、クライアント制御部220からの電文を受信する。
ステップ1422において、クライアント制御部220に返信する電文を作成する。
ステップ1424において、呼び出し元のクライアント180に返信する電文に業務サービス生存情報テーブル(3)285に保存された業務サービス生存情報を付加し、呼び出し元のクライアント180に応答電文を返信する。この処理によって、クライアント180が管理している業務サービス生存情報テーブル(1)215が更新される。
以上の処理によって、離脱が完了する。なお、離脱する自サーバが、現用系サーバである場合には、上記の処理に加えて、フェイルオーバの処理がなされる。
以上のように、本実施形態を利用することによって、現用サイトの業務サービスの停止という最悪の事態を簡便な形で回避することができる。また、クラスタシステムの監視においては、ネットワークNWへの負荷を可能な限り軽減することが可能である。また、クラスタシステムが正常動作している場合、監視・バックアップサイト150の予備サーバを、他の業務でも有効活用することができる。
図15は、クライアント及びサーバのハードウェア構成を示している。クライアント及びサーバは、CPU1510、メモリ1515、入力装置1520、出力装置1525、外部記憶装置1530、可搬記録媒体駆動装置1535、ネットワーク接続装置1545が含まれる。そして、それぞれの機器は、バス1550によって接続されている。また、可搬記録媒体駆動装置1535は、可搬記録媒体1540を読み書きすることができる。そして、ネットワーク接続装置1545には、インターネット1560及び専用線1561が接続されている。
なお、本実施形態のプログラムは、可搬記録媒体1540に格納することができる。可搬記録媒体1540とは、構造(structure)を有する1つ以上の非一時的(non-transitory)な、有形(tangible)な、記憶媒体を言う。例示として、可搬記録媒体1540としては、磁気記録媒体、光ディスク、光磁気記録媒体、不揮発性メモリなどがある。磁気記録媒体には、HDD、フレキシブルディスク(FD)、磁気テープ(MT)などがある。光ディスクには、DVD(Digital Versatile Disc)、DVD−RAM、CD−ROM(Compact Disc-Read Only Memory)、CD−R(Recordable)/RW(ReWritable)などがある。また、光磁気記録媒体には、MO(Magneto-Optical disk)などがある。
なお、請求項に記載された方法やプログラムに係る発明は、矛盾のない限り処理の順番を入れ替えてもよく、あるいは、複数の処理を同時に実施してもよい。そして、これらの実施形態も、請求項に記載された発明の技術的範囲に包含されることは言うまでもない。
上記実施形態に関し、以下の付記を開示する。
(付記1)
第1のサーバ装置に対する処理要求に、記憶部に記憶された前記第1のサーバ装置の状態を表す情報を含む状態情報を含ませた処理要求電文を生成し、
前記処理要求電文を、前記第1のサーバ装置と、前記第1のサーバ装置を監視する第2のサーバ装置とに送信し、
前記第1のサーバ装置から新たな状態情報を受信する、
処理をクライアント装置に実行させるプログラム。
(付記2)
前記状態情報は、処理要求電文に対する前記第1のサーバからの応答電文に含まれる、
付記1記載のプログラム。
(付記3)
前記状態情報は、前記第1のサーバ装置の障害時に稼働する待機系サーバ装置の状態を表す情報を含む、付記1又は2項記載のプログラム。
(付記4)
前記送信する処理は、マルチキャストにより送信する処理を含む、付記1ないし3のうちいずれか1項記載のプログラム。
(付記5)
前記状態情報は、前記第1のサーバ装置により前記クライアント装置に提供される業務サービスの状態を含む、付記1ないし4のうちいずれか1項記載のプログラム。
(付記6)
前記処理要求電文が、前記状態情報を、前記クライアント装置に送信するよう要求する命令を含む、
付記1ないし5のうちいずれか1項記載のプログラム。
(付記7)
前記クライアント装置が前記第2のサーバ装置に電文を最後に送信した時刻から、所定の時間が経過した場合であって、前記最後に送信した前記処理要求電文に含まれていた前記状態情報と、現在の前記状態情報とが異なる場合、現在の前記状態情報を含む制御電文を生成し、
前記制御電文を少なくとも前記第2のサーバに送信する、
処理をクライアント装置に更に実行させる、付記1ないし6のうちいずれか1項記載のプログラム。
(付記8)
第1のサーバ装置が、前記第1のサーバ装置の状態を表す情報を含む状態情報をクライアント装置に送信し、
前記第1のサーバ装置を監視する第2のサーバ装置が、前記クライアント装置から、前記状態情報を含む前記第1のサーバ装置への処理要求電文を受信する、
処理を、前記第1のサーバ及び前記第2のサーバに実行させるプログラム。
(付記9)
前記状態情報は、前記第1のサーバ装置の障害時に稼働する待機系サーバ装置の状態を表す情報を含む、付記8記載のプログラム。
(付記10)
クライアント装置が、
第1のサーバ装置に対する処理要求に、記憶部に記憶された前記第1のサーバ装置の状態を表す情報を含む状態情報を含ませた処理要求電文を生成し、
前記処理要求電文を、前記第1のサーバ装置と、前記第1のサーバ装置を監視する第2のサーバ装置とに送信し、
前記第1のサーバ装置から新たな状態情報を受信する、
処理を有する方法。
(付記11)
前記状態情報は、処理要求電文に対する前記第1のサーバからの応答電文に含まれる、
付記10記載の方法。
(付記12)
前記状態情報は、前記第1のサーバ装置の障害時に稼働する待機系サーバ装置の状態を表す情報を含む、付記10又は11記載の方法。
(付記13)
前記送信する処理は、マルチキャストにより送信する処理を含む、付記10ないし12のうちいずれか1項記載の方法。
(付記14)
前記状態情報は、前記第1のサーバ装置により前記クライアント装置に提供される業務サービスの状態を含む、付記10ないし13のうちいずれか1項記載の方法。
(付記15)
前記処理要求電文が、前記状態情報を、前記クライアント装置に送信するよう要求する命令を含む、
付記10ないし14のうちいずれか1項記載の方法。
(付記16)
前記クライアント装置が前記第2のサーバ装置に電文を最後に送信した時刻から、所定の時間が経過した場合であって、前記最後に送信した前記処理要求電文に含まれていた前記状態情報と、現在の前記状態情報とが異なる場合、現在の前記状態情報を含む制御電文を生成し、
前記制御電文を少なくとも前記第2のサーバに送信する、
処理を更に有する付記10ないし15のうちいずれか1項記載の方法。
(付記17)
第1のサーバ装置が、前記第1のサーバ装置の状態を表す情報を含む状態情報をクライアント装置に送信し、
前記第1のサーバ装置を監視する第2のサーバ装置が、前記クライアント装置から、前記状態情報を含む前記第1のサーバ装置への処理要求電文を受信する、
処理を有する方法。
(付記18)
前記状態情報は、前記第1のサーバ装置の障害時に稼働する待機系サーバ装置の状態を表す情報を含む、付記17記載の方法。
(付記19)
第1のサーバ装置に対する処理要求に、記憶部に記憶された前記第1のサーバ装置の状態を表す情報を含む状態情報を含ませた処理要求電文を生成する処理要求電文生成部と、
前記処理要求電文を、前記第1のサーバ装置と、前記第1のサーバ装置を監視する第2のサーバ装置とに送信する送信部と、
前記第1のサーバ装置から新たな状態情報を受信する受信部と、
を有するクライアント装置。
(付記20)
前記状態情報は、処理要求電文に対する前記第1のサーバからの応答電文に含まれる、
付記19記載のクライアント装置。
(付記21)
前記状態情報は、前記第1のサーバ装置の障害時に稼働する待機系サーバ装置の状態を表す情報を含む、付記19又は20記載のクライアント装置。
(付記22)
前記送信部は、マルチキャストにより送信するマルチキャスト送信部を含む、付記19ないし21のうちいずれか1項記載のクライアント装置。
(付記23)
前記状態情報は、前記第1のサーバ装置により前記クライアント装置に提供される業務サービスの状態を含む、付記18ないし22のうちいずれか1項記載のクライアント装置。
(付記24)
前記処理要求電文が、前記状態情報を、当該クライアント装置に送信するよう要求する命令を含む、
付記19ないし23のうちいずれか1項記載のクライアント装置。
(付記25)
当該クライアント装置が前記第2のサーバ装置に電文を最後に送信した時刻から、所定の時間が経過した場合であって、前記最後に送信した前記処理要求電文に含まれていた前記状態情報と、現在の前記状態情報とが異なる場合、現在の前記状態情報を含む、制御電文を生成する制御電文生成部、
を有し、
前記送信部は、前記制御電文を少なくとも前記第2のサーバに送信する、
付記19ないし24のうちいずれか1項記載のクライアント装置。
(付記26)
第1のサーバ装置が、前記第1のサーバ装置の状態を表す情報を含む状態情報をクライアント装置に送信するサーバ状態送信部と、
前記第1のサーバ装置を監視する第2のサーバ装置が、前記クライアント装置から、前記状態情報を含む前記第1のサーバ装置への処理要求電文を受信するサーバ状態受信部、
を有するシステム。
(付記27)
前記状態情報は、前記第1のサーバ装置の障害時に稼働する待機系サーバ装置の状態を表す情報を含む、付記26記載のシステム。
110 現用サイト
150 監視・バックアップサイト
180 クライアント
210 クライアント用業務Z処理部
215 業務サービス生存情報テーブル(1)
220 クライアント制御部
222 受信部
224 処理要求電文生成部
226 制御電文生成部
228 送信部
229 マルチキャスト送信部
250 サーバ制御部
252 サーバ状態送信部
254 業務サービス生存情報削除部
260 サーバ用業務Z処理部
265 業務サービス生存情報テーブル(2)
267 専用線
280 サーバ制御部
282 サーバ状態受信部
284 動作制御部
285 業務サービス生存情報テーブル(3)
1186 動作選択部

Claims (11)

  1. 業務処理要求を第1のサーバ装置へ送信する際に、クライアント装置に記憶された状態情報を添付することによって処理要求電文を生成する処理であって、前記状態情報は、前記第1のサーバ装置から受信された前記第1のサーバ装置の状態を示す情報を含み、前記第1のサーバ装置を監視する第2のサーバ装置であって、前記第1のサーバ装置の業務サービスを即座に引き継ぐクラスタシステムに属さず、前記第1のサーバ装置の前記業務サービスを行うための資源を有する前記第2のサーバ装置に、送信される、処理と、
    前記処理要求電文を、前記第1のサーバ装置と、前記第2のサーバ装置とに送信する処理と、
    前記第1のサーバ装置から前記第1のサーバ装置の新たな状態情報を受信し、前記クライアント装置に記憶された前記状態情報を前記新たな状態情報に更新する処理と、
    を前記クライアント装置に実行させるプログラムであって、
    更新された前記新たな状態情報は、次の処理要求電文によって前記第1のサーバ装置と、前記第2のサーバ装置とに送信されるようにしたプログラム。
  2. 前記状態情報は、前記処理要求電文に対する前記第1のサーバ装置からの応答電文に含まれる、
    請求項1記載のプログラム。
  3. 前記状態情報は、前記第1のサーバ装置の障害時に稼働する前記クラスタシステムに属する待機系サーバ装置の状態を表す情報を含む、請求項1又は2に記載のプログラム。
  4. 前記送信する処理は、マルチキャストにより送信する処理を含む、請求項1ないし3のうちいずれか1項記載のプログラム。
  5. 前記状態情報は、前記第1のサーバ装置により前記クライアント装置に提供される業務サービスの状態を含む、請求項1ないし4のうちいずれか1項記載のプログラム。
  6. 前記処理要求電文が、前記状態情報を、前記クライアント装置に送信するよう要求する命令を含む、
    請求項1ないし5のうちいずれか1項記載のプログラム。
  7. 前記クライアント装置が前記第2のサーバ装置に電文を最後に送信した時刻から、所定の時間が経過した場合であって、前記最後に送信した前記処理要求電文に含まれていた前記状態情報と、現在の前記状態情報とが異なる場合、現在の前記状態情報を含む制御電文を生成し、
    前記制御電文を少なくとも前記第2のサーバ装置に送信する、
    処理をクライアント装置に更に実行させる、請求項1ないし6のうちいずれか1項記載のプログラム。
  8. クライアント装置が、
    業務処理要求を第1のサーバ装置へ送信する際に、クライアント装置に記憶された状態情報を添付することによって処理要求電文を生成する処理であって、前記状態情報は、前記第1のサーバ装置から受信された前記第1のサーバ装置の状態を示す情報を含み、前記第1のサーバ装置を監視する第2のサーバ装置であって、前記第1のサーバ装置の業務サービスを即座に引き継ぐクラスタシステムに属さず、前記第1のサーバ装置の前記業務サービスを行うための資源を有する前記第2のサーバ装置に、送信される、処理と、
    前記処理要求電文を、前記第1のサーバ装置と、前記第2のサーバ装置とに送信する処理と、
    前記第1のサーバ装置から前記第1のサーバ装置の新たな状態情報を受信し、前記クライアント装置に記憶された前記状態情報を前記新たな状態情報に更新する処理と、
    を有する方法であって、
    更新された前記新たな状態情報は、次の処理要求電文によって前記第1のサーバ装置と、前記第2のサーバ装置とに送信されるようにした方法。
  9. 第1のサーバ装置が、業務処理要求と、クライアント装置に記憶された状態情報と、を含む処理要求電文を、前記クライアント装置から受信する処理と
    前記第1のサーバ装置が、前記処理要求電文に対する業務処理応答を前記クライアント装置へ送信する際に、前記第1のサーバ装置に格納された新たな状態情報を前記業務処理応答に添付することによって応答電文を生成する処理と、
    前記第1のサーバ装置が、前記処理要求電文の送信元である前記クライアント装置に前記応答電文を送信する第1の処理と、
    前記クライアント装置が、前記状態情報を、前記新たな状態情報に更新する処理と、
    前記クライアント装置が、前記新たな状態情報を含む処理要求電文を、前記第1のサーバと、前記第1のサーバ装置を監視する第2のサーバ装置であって、前記第1のサーバ装置の業務サービスを即座に引き継ぐクラスタシステムに属さず、前記第1のサーバ装置の前記業務サービスを行うための資源を有する前記第2のサーバ装置とに、送信する第2の処理と、
    を有する方法。
  10. クライアント装置であって、
    業務処理要求を第1のサーバ装置へ送信する際に、前記クライアント装置に記憶された状態情報を添付することによって処理要求電文を生成する処理要求電文生成部であって、前記状態情報は、前記第1のサーバ装置から受信された前記第1のサーバ装置の状態を示す情報を含み、前記第1のサーバ装置を監視する第2のサーバ装置であって、前記第1のサーバ装置の業務サービスを即座に引き継ぐクラスタシステムに属さず、前記第1のサーバ装置の前記業務サービスを行うための資源を有する前記第2のサーバ装置に、送信される、処理要求電文生成部と、
    前記処理要求電文を、前記第1のサーバ装置と、前記第2のサーバ装置とに送信する送信部と、
    前記第1のサーバ装置から前記第1のサーバ装置の新たな状態情報を受信し、前記クライアント装置に記憶された前記状態情報を前記新たな状態情報に更新する更新部と、
    を有するクライアント装置であって、
    更新された前記新たな状態情報は、次の処理要求電文によって前記第1のサーバ装置と、前記第2のサーバ装置とに送信されるようにしたクライアント装置。
  11. 第1のサーバ装置と、クライアント装置とを有するシステムであって、
    前記第1のサーバ装置
    業務処理要求と、クライアント装置に記憶された状態情報と、を含む処理要求電文を、前記クライアント装置から受信する受信部と、
    前記処理要求電文に対する業務処理応答を前記クライアント装置へ送信する際に、前記第1のサーバ装置に格納された新たな状態情報を前記業務処理応答に添付することによって応答電文を生成する応答電文生成部と、
    前記処理要求電文の送信元である前記クライアント装置に前記応答電文を送信する第1の送信部と、
    含み、
    前記クライアント装置は、
    前記状態情報を、前記新たな状態情報に更新する更新部と、
    前記新たな状態情報を含む処理要求電文を、前記第1のサーバと、前記第1のサーバ装置を監視する第2のサーバ装置であって、前記第1のサーバ装置の業務サービスを即座に引き継ぐクラスタシステムに属さず、前記第1のサーバ装置の前記業務サービスを行うための資源を有する前記第2のサーバ装置とに、送信する第2の送信部と、
    を含む、
    システム。
JP2012022492A 2012-02-03 2012-02-03 コンピュータ障害監視プログラム、方法、及び装置 Active JP5982842B2 (ja)

Priority Applications (2)

Application Number Priority Date Filing Date Title
JP2012022492A JP5982842B2 (ja) 2012-02-03 2012-02-03 コンピュータ障害監視プログラム、方法、及び装置
US13/752,459 US20130205017A1 (en) 2012-02-03 2013-01-29 Computer failure monitoring method and device

Applications Claiming Priority (1)

Application Number Priority Date Filing Date Title
JP2012022492A JP5982842B2 (ja) 2012-02-03 2012-02-03 コンピュータ障害監視プログラム、方法、及び装置

Publications (2)

Publication Number Publication Date
JP2013161251A JP2013161251A (ja) 2013-08-19
JP5982842B2 true JP5982842B2 (ja) 2016-08-31

Family

ID=48903912

Family Applications (1)

Application Number Title Priority Date Filing Date
JP2012022492A Active JP5982842B2 (ja) 2012-02-03 2012-02-03 コンピュータ障害監視プログラム、方法、及び装置

Country Status (2)

Country Link
US (1) US20130205017A1 (ja)
JP (1) JP5982842B2 (ja)

Families Citing this family (13)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US9208015B2 (en) * 2013-06-18 2015-12-08 Vmware, Inc. Hypervisor remedial action for a virtual machine in response to an error message from the virtual machine
JP6224985B2 (ja) * 2013-10-23 2017-11-01 日本電信電話株式会社 通知装置及び通知方法
JP2015158773A (ja) * 2014-02-24 2015-09-03 富士通株式会社 仮想装置の動作検証装置,仮想装置の動作検証システム及びプログラム
JP6411790B2 (ja) * 2014-06-20 2018-10-24 日本電信電話株式会社 通信システムおよび通信方法
JPWO2016129275A1 (ja) * 2015-02-10 2017-12-28 日本電気株式会社 情報処理装置、ログ管理システム、ログ管理方法及びプログラム
US10346191B2 (en) * 2016-12-02 2019-07-09 Wmware, Inc. System and method for managing size of clusters in a computing environment
US10348840B2 (en) * 2017-01-16 2019-07-09 International Business Machines Corporation Dynamic workflow control between network entities
EP3680780B1 (en) * 2017-09-06 2022-03-02 Nec Corporation Cluster system, control method, and corresponding computer program
US10778506B1 (en) 2017-11-30 2020-09-15 Open Invention Network Llc Coordinated switch of activity in virtual network function components
CN109981459B (zh) * 2019-02-28 2021-02-19 联想(北京)有限公司 一种信息发送方法、客户端和计算机可读存储介质
US11825017B2 (en) 2020-02-21 2023-11-21 Nippon Telegraph And Telephone Corporation Call control apparatus, call processing continuation method and call control program
US11245752B2 (en) * 2020-04-30 2022-02-08 Juniper Networks, Inc. Load balancing in a high-availability cluster
CN115065715A (zh) * 2022-05-11 2022-09-16 厦门立林科技有限公司 服务监控和自动重启方法、介质、设备及系统

Family Cites Families (12)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
JPH05298270A (ja) * 1992-04-20 1993-11-12 Hitachi Ltd データ伝送方法
JPH08185330A (ja) * 1994-12-28 1996-07-16 Nippon Telegr & Teleph Corp <Ntt> 冗長コンピュータシステム切り替え方法
US6247141B1 (en) * 1998-09-24 2001-06-12 Telefonaktiebolaget Lm Ericsson (Publ) Protocol for providing replicated servers in a client-server system
US6848000B1 (en) * 2000-11-12 2005-01-25 International Business Machines Corporation System and method for improved handling of client state objects
US6934137B2 (en) * 2001-02-20 2005-08-23 Radiant Power Corporation Peer-to-peer control and decision making system
US7619761B2 (en) * 2005-06-30 2009-11-17 Microsoft Corporation Extensible and distributed job execution service in a server farm
US8615578B2 (en) * 2005-10-07 2013-12-24 Oracle International Corporation Using a standby data storage system to detect the health of a cluster of data storage servers
US7693984B2 (en) * 2005-12-29 2010-04-06 Panasonic Electric Works Co., Ltd. Systems and methods for providing current status data to a requesting device
US7536581B2 (en) * 2006-05-16 2009-05-19 Bea Systems, Inc. Automatic migratable services
DE102007007344A1 (de) * 2007-02-14 2008-08-28 Siemens Ag Verfahren zum Verteilen zumindest eines Datensegments mindestens eines Datenstroms an eine Gruppe von mehreren Nutzern in einem Netzwerk, sowie ein Nutzer und ein System
WO2008105032A1 (ja) * 2007-02-28 2008-09-04 Fujitsu Limited クライアント装置と複数のサーバ装置からなるシステムの通信方法、その通信プログラム、クライアント装置及びサーバ装置
JP5213108B2 (ja) * 2008-03-18 2013-06-19 株式会社日立製作所 データ複製方法及びデータ複製システム

Also Published As

Publication number Publication date
JP2013161251A (ja) 2013-08-19
US20130205017A1 (en) 2013-08-08

Similar Documents

Publication Publication Date Title
JP5982842B2 (ja) コンピュータ障害監視プログラム、方法、及び装置
EP3210367B1 (en) System and method for disaster recovery of cloud applications
US20070121490A1 (en) Cluster system, load balancer, node reassigning method and recording medium storing node reassigning program
JP2013161252A (ja) 冗長コンピュータ制御プログラム、方法、及び装置
CN102394914A (zh) 集群脑裂处理方法和装置
CN109189854B (zh) 提供持续业务的方法及节点设备
US8522069B2 (en) Process for secure backspacing to a first data center after failover through a second data center and a network architecture working accordingly
KR101358995B1 (ko) 고가용성 관리 방법 및 시스템
CN115794769B (zh) 高可用数据库管理的方法、电子设备及存储介质
JP4806382B2 (ja) 冗長化システム
JP6953713B2 (ja) 通信ノード、通信システム、通信方法及びプログラム
JP4491167B2 (ja) 通信システムにおける管理装置のバックアップシステム
JP2006246152A (ja) パケット転送装置、パケット転送ネットワークシステムおよびパケット転送方法
JP2012168907A (ja) 相互監視システム
JP2004280337A (ja) プラントデータ収集装置
JP2007249659A (ja) システム切替方法、その計算機システム及びプログラム
JP2007173990A (ja) 情報処理装置、通信負荷分散方法及び通信負荷分散プログラム
JP2011250033A (ja) 監視システム及びサーバ切替方法
JP2014110620A (ja) ネットワーク運用システム
JP5344712B2 (ja) データ整合方法及びサービス提供装置
KR101659579B1 (ko) 퍼블리쉬-서브스크라이브 방식을 이용한 서버 다중화 서비스 제공장치 및 그 방법
JP5106648B2 (ja) 複数のインターネットサービスを多重化するサービス中継装置及びサービス中継方法
KR102327520B1 (ko) 무중단 네트워크 미러링 솔루션 시스템 및 그 방법
JP2009211279A (ja) 操業データ管理サーバシステム
JP2018028782A (ja) デバイス接続装置およびデバイス接続方法

Legal Events

Date Code Title Description
A621 Written request for application examination

Free format text: JAPANESE INTERMEDIATE CODE: A621

Effective date: 20141007

A977 Report on retrieval

Free format text: JAPANESE INTERMEDIATE CODE: A971007

Effective date: 20150812

A131 Notification of reasons for refusal

Free format text: JAPANESE INTERMEDIATE CODE: A131

Effective date: 20150929

A521 Request for written amendment filed

Free format text: JAPANESE INTERMEDIATE CODE: A523

Effective date: 20151130

A131 Notification of reasons for refusal

Free format text: JAPANESE INTERMEDIATE CODE: A131

Effective date: 20160426

A521 Request for written amendment filed

Free format text: JAPANESE INTERMEDIATE CODE: A523

Effective date: 20160510

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

Country of ref document: JP

Free format text: JAPANESE INTERMEDIATE CODE: R150