JP5858144B2 - 情報処理システム、障害検知方法および情報処理装置 - Google Patents

情報処理システム、障害検知方法および情報処理装置 Download PDF

Info

Publication number
JP5858144B2
JP5858144B2 JP2014507300A JP2014507300A JP5858144B2 JP 5858144 B2 JP5858144 B2 JP 5858144B2 JP 2014507300 A JP2014507300 A JP 2014507300A JP 2014507300 A JP2014507300 A JP 2014507300A JP 5858144 B2 JP5858144 B2 JP 5858144B2
Authority
JP
Japan
Prior art keywords
information processing
processing apparatus
nic
beat
notification
Prior art date
Legal status (The legal status is an assumption and is not a legal conclusion. Google has not performed a legal analysis and makes no representation as to the accuracy of the status listed.)
Expired - Fee Related
Application number
JP2014507300A
Other languages
English (en)
Other versions
JPWO2013145325A1 (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 JPWO2013145325A1 publication Critical patent/JPWO2013145325A1/ja
Application granted granted Critical
Publication of JP5858144B2 publication Critical patent/JP5858144B2/ja
Expired - Fee Related 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
    • 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/04Network management architectures or arrangements
    • 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/0677Localisation of faults
    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04LTRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
    • H04L43/00Arrangements for monitoring or testing data switching networks
    • H04L43/10Active monitoring, e.g. heartbeat, ping or trace-route
    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04LTRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
    • H04L49/00Packet switching elements
    • H04L49/30Peripheral units, e.g. input or output ports

Description

本発明は、情報処理システム、障害検知方法および情報処理装置に関する。
従来、大規模データを効率的に分散処理するオープンソースソフトウェアとして、Hadoopが知られている。Hadoopは、多くの要素で構成されるが、主に分散ファイルシステムのHDFS(Hadoop Distributed File System)や大規模データの分散処理を実行するHadoop MapReduceが知られている。
Hadoopを用いたシステムは、システム全体を管理する「マスタサーバ」と、並列処理を実行する複数台の「スレーブサーバ」とを有する。マスタサーバは、スレーブサーバの生存状態を監視するのに、ハートビートを利用する。例えば、各スレーブサーバは、マスタサーバに対して、3秒ごとにハートビートを送信する。マスタサーバは、スレーブサーバからのハートビートを10分間受信できない場合に、そのスレーブサーバが故障したと判定し、当該スレーブサーバをシステムから切り離す。このようにして、当該スレーブサーバは、復旧モードに入る。
また、新規のスレーブサーバをシステムに追加する場合、マスタサーバは、新規のスレーブサーバに命令を送出し、システムへの組み込み作業を実行させる。そして、マスタサーバは、新規のスレーブサーバから周期的にハートビートを受信すると、当該新規のスレーブサーバがシステムに正常に組み込まれたと認識する。このように、Hadoopを用いたシステムは、ハートビートによってスレーブサーバの障害監視や管理を行う。
一般的なシステムの障害監視としては、例えば、監視対象機器としてのスレーブサーバの生存状態を監視し、クライアント端末からの要求に応じて、監視対象機器の生存状態や状態の変化をクライアント端末に応答する技術が知られている。また、スレーブサーバとして利用されるサーバ装置のソフトウェアの障害をデバイス自身で検出し、他デバイスとの接続を切断するデバイス装置なども知られている。
特開2009−182667号公報 特開2000−307600号公報
しかしながら、従来技術では、スレーブサーバから、スレーブサーバが正常に動作していることを示すハートビートなどの死活通知情報を受信できなかった場合に、スレーブサーバ自体に障害が発生したのか、ネットワークで障害が発生したのかを切り分けることができないという問題がある。
例えば、マスタサーバがスレーブサーバからハートビートを受信できなくなった場合には2つの原因が考えられる。1つ目は、スレーブサーバ自体が故障してハートビートを送信していない場合である。2つ目は、スレーブサーバはハートビートを送信しているが、スレーブサーバとマスタサーバとを接続するネットワークで障害が発生していることから、マスタサーバにハートビートが届かない場合である。
ところが、マスタサーバは、スレーブサーバからハートビートを受信したか否かによって障害監視を行うので、いずれの原因でハートビートを受信できないかを特定することができない。また、マスタサーバは、ハートビートを受信できない場合には、障害を解析することもできない。さらに、マスタサーバは、ハートビートを受信できない場合に、一律にスレーブサーバに障害が発生したと判定して、当該スレーブサーバをシステムから切り離す。このため、ネットワークに障害がある場合でも、スレーブサーバに復旧作業が実行されることになり、無駄な作業が行われることにもなる。
1つの側面では、障害発生箇所を切分けることができる情報処理システム、障害検知方法および情報処理装置を提供することを目的とする。
第1の案では、第1の情報処理装置と、前記第1の情報処理装置を監視する第2の情報処理装置とを含む情報処理システムである。前記第1の情報処理装置は、第1の入出力装置と、オペレーティングシステムが動作するプロセッサとを有する。また、前記第1の情報処理装置は、前記第2の情報処理装置と通信可能であって、オペレーティングシステムからの通知が得られない場合であっても、前記第1の入出力装置から送信する通知信号を前記第2の情報処理装置に送信する第1の入出力部を有する。前記第2の情報処理装置は、第2の入出力装置と、前記第2の入出力装置が、前記第1の入出力装置から前記通知信号を受信しなかった場合に、前記ネットワークに障害が発生したと検知する障害検知部とを有する。
本発明の1実施態様によれば、障害の発生箇所を切分けることができる。
図1は、実施例1に係るシステムの全体構成例を示す図である。 図2は、NICビートの流れを説明する図である。 図3は、ハードウェア構成例を示す図である。 図4は、スレーブサーバの構成を示す機能ブロック図である。 図5は、ハートビートのデータ構成例を示す図である。 図6は、状態管理部が管理する情報の例を示す図である。 図7は、NICビートのデータ構造例を示す図である。 図8は、マスタサーバの構成を示す機能ブロック図である。 図9は、スレーブサーバ管理部が管理する情報の例を示す図である。 図10は、正常時のシーケンスを示す図である。 図11は、OS異常時のシーケンスを示す図である。 図12は、省電力移行時のシーケンスを示す図である。 図13は、ネットワーク異常時のシーケンスを示す図である。 図14は、スレーブサーバが実行するNICビート送信処理の流れを示すフローチャートである。 図15は、マスタサーバが実行するNICビート受信処理の流れを示すフローチャートである。 図16は、マスタサーバが実行する状態監視処理の流れを示すフローチャートである。
以下に、本発明にかかる情報処理システム、障害検知方法および情報処理装置の実施例を図面に基づいて詳細に説明する。なお、この実施例によりこの発明が限定されるものではない。
[全体構成]
図1は、実施例1に係るシステムの全体構成例を示す図である。図1に示すように、このシステムは、マスタサーバ50と複数のラック5とをL2スイッチ(レイヤ2スイッチ)を有し、ネットワークを介して相互に通信可能に接続される。このシステムは、Hadoopを用いた分散処理システムである。
マスタサーバ50は、複数のラック5やラック5に搭載される各スレーブサーバ10を管理するサーバ装置である。例えば、マスタサーバ50は、HDFS(Hadoop Distributed File System)のネームサーバやMapReduceのジョブトラッカーなどである。
L2スイッチ2は、各ラック5に収納されるL2スイッチ6やスレーブサーバ10と、マスタサーバ50とを接続する中継装置である。また、L2スイッチ2は、L3スイッチやルータなどであってもよい。
ラック5は、データセンター等に設置される電子機器を収納する装置である。このラック5は、1台以上のスレーブサーバ10とL2スイッチ6とを収納する。L2スイッチ6は、各スレーブサーバ10とL2スイッチ2との通信を中継する中継装置である。また、L2スイッチ6は、L3スイッチやルータなどであってもよい。スレーブサーバ10は、分散処理を実行するサーバである。例えば、スレーブサーバ10は、HDFSのデータノードやMapReduceのタスクトラッカーなどである。
このような状態において、各スレーブサーバ5は、ネットワークカードを有する。このネットワークカードは、ネットワークカードは、ネットワークカードが正常に動作していれば、上位のOSなどの死活にかかわらずに、ネットワークが正常に動作していることを通知する通知信号を送信する。ここでは、そのような通知信号をNIC(Network Interface Card)ビートと称することとする。各スレーブサーバ10のネットワークカードは、生成したNICビートをマスタサーバ50に送信する。マスタサーバ50は、各スレーブサーバ10のネットワークカードからNICビートを受信しなかった場合に、ネットワークに障害が発生したと検知する。なお、ネットワークカードに障害が発生する可能性は、上位のOSに障害が発生することよりも高いことが一般である。また、上位のOSが正常に動作しているかどうか等の上位のOSの状態を上位のOSからのハートビートなどから検出し、検出した上位の状態情報をハートビートに含めることとしてもよい。これにより、ネットワークの障害がないものの、上位のOSに障害が発生していることを通知することができる。
ここで、NICビートの流れを説明する。図2は、NICビートの流れを説明する図である。図2に示すように、各スレーブサーバ10内で実行されるHadoopは、定期的に、OS(Operating System)が正常に動作していることを示す死活通知情報であるハートビートを発行する。このハートビートは、ドライバを介してNICに送出される。そして、NIC内のNICビート装置は、受信したハートビートとは別にNICビートを生成し、LAN(Local Area Network)ポートを介してマスタサーバ50に送信する。このNICビートは、L2スイッチ2に受信されて、マスタサーバ50に中継される。
マスタサーバ50のNIC内で実行されるNICビート装置は、L2スイッチ2を介して、各スレーブサーバ5から送信されたNICビートを受信する。そして、NICビート装置は、NICビートの解析を実行する。その後、NICビート装置は、NICビートからハートビートを取り出し、ドライバを介してHadoopに送出する。
このようにして、各スレーブサーバ10のNICビート装置は、OSのハートビートとは別に生成したNICビートをマスタサーバ50に通知し、マスタサーバ50は、各スレーブサーバ10のNICビート装置からNICビートを受信する。各スレーブサーバ10のNICビート装置は、ハートビートが発生した場合にはハートビートの発生内容をNICビートに含めて送信し、ハートビートが発生しなかった場合にはハートビートが発生していないことをNICビートに含めて送信する。この結果、マスタサーバ50は、NICビートを受信できた場合には、少なくもネットワークに障害が発生していないと判定することができる。したがって、マスタサーバ50は、障害切分けを行うことができる。
[ハードウェア構成]
次に、スレーブサーバ10とマスタサーバ50のハードウェア構成を説明する。各サーバは、同様の構成を有するので、ここでは、サーバ100として説明する。図3は、ハードウェア構成例を示す図である。
図3に示すように、サーバ100は、CPU(Central Processing Unit)101とメモリ102とハードディスク103とNIC104とを有する。なお、ここで示したハードウェアはあくまで例示であり、これに限定されるものではない。
CPU101は、サーバ100全体の処理を司る処理部である。例えば、CPU101は、Hadoopやドライバを実行する。このHadoopは、ハートビートを生成してNICに送出する。メモリ102は、CPU101が実行するプログラムや各プログラムが使用するデータを記憶する記憶装置である。ハードディスク103は、分散処理の対象となるデータ、テーブル、データベース等を記憶する記憶装置である。
NIC104は、フラッシュROM(Read Only Memory)104aとコントローラ104bとを有し、NICビートの生成、送信、受信等を実行する。このNIC104には、CPU101とは別に電流が供給される。つまり、CPU101の電源供給が遮断された場合でも、NIC104には電源が供給されるようになっている。
フラッシュROM104aは、後述する図4や図8に示す処理部と同様の機能を実行する電子回路等を保持する。すなわち、フラッシュROM104aは、スレーブサーバ10のNICビート装置またはマスタサーバ50のNICビート装置と同様の機能を実行する。コントローラ104bは、NIC104から他装置へのデータ送信や他装置から送信されたデータの受信を実行する。例えば、コントローラ104bは、NICビートの送信や受信を実行する。
なお、ここでは、フラッシュROM104aが図4や図8に示す処理部と同様の機能を実行する電子回路等を保持する例を説明したが、これに限定されるものではない。例えば、フラッシュROM104aが、図4や図8に示す処理部と同様の機能を実行するプログラムを記憶し、コントローラ104bが、このプログラムを読み出して実行することで、図4や図8に示す処理部と同様の機能を実行してもよい。
[スレーブサーバ構成]
図4は、スレーブサーバの構成を示す機能ブロック図である。図4に示すように、スレーブサーバ10は、Hadoop11、省電力処理デーモン12、OS13、ドライバ14、NIC15を有する。
Hadoop11は、大規模データを効率的に分散処理するオープンソースソフトウェアであり、OS13によって実行される。また、Hadoop11は、スレーブサーバ10内の正常監視を実行する。例えば、Hadoop11は、3秒間に1回ハートビートを生成してNIC15に向けて送出する。
ここで、ハートビートについて説明する。図5は、ハートビートのデータ構成例を示す図である。図5に示すように、ハートビートは、例えば、「status」データ、「restarted」データ、「initialContact」データ、「acceptNewTasks」データ、「responseId」データから構成される。
「status」データは、タスクの名前、Host識別子、http(hypertext transfer protocol)リクエストを処理しているport番号、実行中タスクの詳細情報、失敗したタスク数、最大実行中Mapタスク数、最大実行中Reduceタスク数から構成される。「restarted」データは、プロセス実行中には「1」が設定され、その他の場合には「0」が設定される。「initialContact」データは、リフレッシュ後の初の通信の場合には「1」が設定され、その他の場合には「0」が設定される。「acceptNewTasks」データは、新たなタスクが実行可能である場合には「1」が設定され、新たなタスクが実行不可能である場合には「0」が設定される。「responseId」データは、最後に成功したレスポンスのID番号である。
図4に戻り、省電力処理デーモン12は、スレーブサーバ10を省電力モードに遷移させたり、スレーブサーバ10を省電力モードから復活させたりする処理部である。この省電力処理デーモン12は、OS13によって実行される。
例えば、省電力処理デーモン12は、スレーブサーバ10が実行対象とするジョブやタスクが存在しなくなったことを検出すると、NIC15以外の電源をオフにする。なお、ここでいう電源オフとは、全ての電源を遮断するのではなく、ジョブやタスクが発生することができる、最低限の電力量に調整することをいう。また、省電力処理デーモン12は、スレーブサーバ10でジョブやタスクが発生したことを検知した場合や、マスタサーバ50から復帰指示を受信した場合に、省電力モードから通常モードに電源状態を遷移させる。
OS13は、ハードディスクやメモリの管理、アプリケーションを実行する処理部である。このOS13は、Hadoop11、省電力処理デーモン12、ドライバ14を実行する。また、OS13は、省電力モード時は、最低限の電力量でジョブやタスクの発生を管理する。
ドライバ14は、スレーブサーバ10内部に装着された装置や、外部に接続した機器を制御する処理部である。具体的に、ドライバ14は、OS13やアプリケーションと、NIC15との通信を制御する。例えば、ドライバ14は、Hadoop11が送出したハートビートをOS13から受信してNIC15に送出する。また、ドライバ14は、NIC15が送出したエラー通知を受信し、OS13を介してHadoop11に送出する。なお、ドライバ14は、OS13によって実行される。また、ドライバ14は、OS13に内蔵されていてもよい。
NIC15は、コントローラ16とNICビート装置17とを有し、NICビートの生成や送信を制御する。このNIC15は、NICビート以外にも、分散処理システムで発生するデータやメッセージ等を送受信する。
コントローラ16は、送信処理部16aと受信処理部16bとを有し、ネットワークを介して、他のスレーブサーバやマスタサーバ50との間で、各種データを送受信する処理部である。
送信処理部16aは、各データを送信する処理部である。例えば、送信処理部16aは、NICビート装置17から送出されたNICビートをマスタサーバ50に送信する。また、送信処理部16aは、Hadoop11から送出された各種データやメッセージを宛先のサーバに送信する。
受信処理部16bは、各データを受信する処理部である。例えば、受信処理部16bは、他のスレーブサーバから各種データやメッセージを受信してHadoop11に送出する。また、受信処理部16bは、マスタサーバ50から省電力モードからの復帰指示を受信して、省電力処理デーモン12に送出する。
NICビート装置17は、ハートビート判定部17a、省電力モード処理部17b、状態管理部17c、NICビート生成部17d、及びNICビート送信部17eを有し、これらによって、NICビートの生成や送信を実行する処理部である。このNICビート装置17は、他の処理部とは電源供給が分離されており、他の処理部への電源供給が遮断された場合でも、電源が供給される。
ハートビート判定部17aは、ハートビートの受信有無やハートビートの内容を判定した判定結果を、状態管理部17cに通知する処理部である。具体的には、ハートビート判定部17aは、ジョブの実行状況、OS13の状態、ハートビートの送信間隔等をハートビートから特定して状態管理部17cに通知する。例えば、ハートビート判定部17aは、受信したハートビートに「失敗したタスク数」が「1」以上である場合や「acceptNewTasks」が「0」である場合には、OS13が異常であることを示す障害通知情報を状態管理部17cに通知する。
また、ハートビート判定部17aは、ハートビートの受信タイミングが不定期になった場合に、OS13が異常であることを示す障害通知情報を状態管理部17cに通知する。より具体的には、ハートビート判定部17aは、3秒間1回のタイミングでハートビートを受信できない場合やハートビート自体を受信できない場合に、OS13が異常であることを示す障害通知情報を状態管理部17cに通知する。このとき、ハートビート判定部17aは、スレーブサーバ10が省電力モードであれば、異常と判定せずに正常と判定する。なお、ハートビート判定部17aは、受信したハートビート自体をNICビート生成部17dに送出する。
省電力モード処理部17bは、省電力モードへの移行状況情報を状態管理部17cに通知する処理部である。例えば、省電力モード処理部17bは、省電力処理デーモン12によって、スレーブサーバ10が省電力モードに移行した場合に、移行通知情報を状態管理部17cに通知する。また、省電力モード処理部17bは、省電力処理デーモン12によって、スレーブサーバ10が省電力モードから通常モードに移行した場合に、解除通知情報を状態管理部17cに通知する。また、省電力モード処理部17bは、マスタサーバ50から省電力モードへの移行指示情報や通常モードへの移行指示情報を受信した場合には、当該指示情報を省電力処理デーモン12に送出する。
状態管理部17cは、スレーブサーバ10の状態を管理する処理部である。具体的には、状態管理部17cは、ハートビート判定部17aから通知された判定結果情報や省電力モード処理部17bから通知された移行状況情報を管理する処理部である。図6は、状態管理部が管理する情報の例を示す図である。図6に示すように、状態管理部17cは、「ハートビート送信時刻」、「OS異常検出フラグ」、「省電力モード」、及び「NICビート送信時刻」を管理する。
ここで管理される「ハートビート送信時刻」は、Hadoop11からハートビートが送信された時刻を示す。「OS異常検出フラグ」は、OS13に異常があるか否かを示し、異常がある場合には1が設定され、異常がない場合には0が設定される。「省電力モード」は、スレーブサーバ10が省電力モードであるか否かを示し、省電力モード中であれば1が設定され、通常モードであれば0が設定される。「NICビート送信時刻」は、NICビート送信部17eがNICビートを送信した時刻を示す。
例えば、状態管理部17cは、ハートビート判定部17aからハートビートの受信時刻を受け付けた場合、当該時刻を「ハートビート送信時刻」に格納する。また、状態管理部17cは、ハートビート判定部17aからOSが異常であることが通知された場合、OS異常検出フラグを1に設定する。同様に、状態管理部17cは、省電力モード処理部から17bから移行通知情報が通知された場合、省電力モードを1に設定し、省電力モード処理部17bから解除通知情報が通知された場合、省電力モードを0に設定する。また、状態管理部17cは、NICビート送信部17eがNICビートを送信した時刻を「NICビート送信時刻」に格納する。
NICビート生成部17dは、NICビートを生成する処理部である。具体的には、NICビート生成部17dは、1分間1回の間隔で、状態管理部17cで管理されるOS状況と、ハートビート判定部17aから入力されたハートビートとからNICビートを生成して、NICビート送信部17eに送出する。図7は、NICビートのデータ構造例を示す図である。図7に示すように、NICビートは、「ハートビート」、「OS状態ビット」、「WOL(Wake−on−LAN)機能ビット」、及び「OS異常ビット」から構成される。
「ハートビート」は、図5で説明したハートビートの内容である。「OS状態ビット」は、ジョブが実行中であるか否かを示し、OSがジョブを実行している場合すなわち通常モードであれば「1」が設定され、OSがジョブを実行していない場合すなわち省電力モードであれば「0」が設定される。「WOL機能ビット」は、WOL機能が有効であるか否かを示し、省電力モードで動作している場合には「1」が設定され、通常モードで動作している場合には「0」が設定される。「OS異常ビット」は、OSに異常が発生しているか否かを示し、OSに異常が発生している場合には「1」が設定され、OSが正常である場合には「0」が設定される。
例えば、NICビート生成部17dは、1分間1度のタイミングで、状態管理部17cを参照する。そして、NICビート生成部17dは、状態管理部17cの「OS異常検出フラグ」が「1」である場合には、OSに異常が発生していると判定して、「OS異常ビット」を「1」に設定する。また、NICビート生成部17dは、状態管理部17cの「省電力モード」が「1」である場合には、「OS状態ビット」を「0」に設定し、「WOL機能ビット」を「1」に設定する。その後、NICビート生成部17dは、ハートビート判定部17aから送出された最新のハートビートに、上記各ビット情報を付加したNICビートを生成して、NICビート送信部17eに送出する。
NICビート送信部17eは、NICビートをマスタサーバ50に送信する処理部である。具体的には、NICビート送信部17eは、NICビート生成部17dから送出されたNICビートを送信処理部16aに送出する。そして、NICビート送信部17eは、NICビートを送出した時刻を、状態管理部17cに通知する。
[マスタサーバ構成]
図8は、マスタサーバの構成を示す機能ブロック図である。図8に示すように、マスタサーバ50は、Hadoop51、状態監視デーモン52、OS53、ドライバ54、NIC55を有する。
Hadoop51は、大規模データを効率的に分散処理するオープンソースソフトウェアであり、OS53によって実行される。Hadoop51は、ハートビートの内容や状態監視デーモン52の通知に基づいて、スレーブサーバ10の生存状態を監視する。そして、Hadoop51は、スレーブサーバ10に異常があると判定された場合には、スレーブサーバ10をネットワークから切り離す。また、Hadoop51は、ネットワークに異常があると判定した場合には、管理者等に異常を通知する。例えば、Hadoop51は、受信されたハートビートの「status」の「失敗したタスク数」が記載されている場合には、当該タスクの再実行を該当するスレーブサーバ10に依頼したり、管理者にタスクの異常を通知したりする。
状態監視デーモン52は、NICビートに基づいてスレーブサーバ10の状態を監視する処理部であり、OS53によって実行される。具体的には、状態監視デーモン52は、スレーブサーバ管理部57bが管理する情報を参照し、スレーブサーバ10の異常やネットワークの異常を検出した場合に、Hadoop51に障害内容情報を通知する。通知の方法としては、メッセージを送信してもよく、ログを出力してもよい。
例えば、状態監視デーモン52は、スレーブサーバ管理部57bによって管理されるOS異常通知フラグが1(ON)であるスレーブサーバ10を検出した場合、当該スレーブサーバ10のOS53が異常であることをHadoop51に通知する。また、状態監視デーモン52は、スレーブサーバ管理部57bによって管理され省電力モードが1(ON)であるスレーブサーバ10を検出した場合、当該スレーブサーバ10が省電力モードで動作していることをHadoop51に通知する。また、状態監視デーモン52は、スレーブサーバ管理部57bによって管理されるNICビート受信時刻に基づいて、NICビートを1分間隔で受信できていないスレーブサーバ10を検出した場合、ネットワークに異常があることをHadoop51に通知する。
OS53は、ハードディスクやメモリの管理、アプリケーションを実行する処理部である。このOS53は、Hadoop51、状態監視デーモン52、ドライバ54を実行する。
ドライバ54は、マスタサーバ50内部に装着された装置や、外部に接続した機器を制御する処理部である。具体的に、ドライバ54は、OS53やアプリケーションと、NIC55との通信を制御する。例えば、ドライバ54は、NICビート装置57から送出されたハートビートをHadoop51に送出する。また、ドライバ54は、OS53に内蔵されていてもよい。
NIC55は、コントローラ56とNICビート装置57とを有し、NICビートの受信、ハートビートの抽出等を制御する。このNIC55は、NICビート以外にも、分散処理システムで発生するデータやメッセージ等を送受信する。
コントローラ56は、送信処理部56aと受信処理部56bとを有し、ネットワークを介して、各スレーブサーバ10との間で、各種データを送受信する処理部である。送信処理部56aは、各データを送信する処理部である。例えば、送信処理部56aは、省電力モードからの復帰指示、分散処理システムで発生するデータやメッセージ等を各スレーブサーバ10に送信する。受信処理部56bは、各データを受信する処理部である。例えば、受信処理部56bは、各スレーブサーバ10からNICビートを受信して、NICビート受信部57aに送出する。
NICビート装置57は、NICビート受信部57aとスレーブサーバ管理部57bと通知部57cとを有し、これらによって、各スレーブサーバ10の状態を管理する処理部である。このNICビート装置57は、他の処理部とは電源供給が分離されており、他の処理部への電源供給が遮断された場合でも、電源が供給される。
NICビート受信部57aは、各スレーブサーバ10から送信されたNICビートを受信して情報を抽出する処理部である。具体的には、NICビート受信部57aは、受信処理部56bが受信したNICビートからハートビートを抽出し、通知部57cに送出する。また、NICビート受信部57aは、受信されたNICビートに含まれるOS異常検出フラグ、省電力モード、スレーブサーバ名等に基づいて、スレーブサーバ管理部57bに管理される情報を更新する。
例えば、NICビート受信部57aは、NICビートやハートビートからスレーブサーバ名を抽出し、スレーブサーバ管理部57b内で該当するレコードを特定する。なお、NICビート受信部57aは、該当するレコードがなければ、スレーブサーバ管理部57b内に新たなレコードを生成する。
そして、NICビート受信部57aは、NICビートを受信した時刻をスレーブサーバ管理部57bに通知する。また、NICビート受信部57aは、NICビート内の「OS異常検出フラグ」が「1」であれば、当該スレーブサーバ10のOS53が異常であることをスレーブサーバ管理部57bに通知する。一方、NICビート受信部57aは、NICビート内の「OS異常検出フラグ」が「0」であれば、当該スレーブサーバ10のOS53が正常であることをスレーブサーバ管理部57bに通知する。同様に、NICビート受信部57aは、NICビート内の「省電力モード」が「1」であれば、当該スレーブサーバ10が省電力モードで動作していることをスレーブサーバ管理部57bに通知する。また、NICビート受信部57aは、NICビート内の「省電力モード」が「0」であれば、当該スレーブサーバ10が通常モードで動作していることをスレーブサーバ管理部57bに通知する。
スレーブサーバ管理部57bは、各スレーブサーバ10の状態を管理する処理部である。具体的には、スレーブサーバ管理部57bは、NICビート受信部57aから通知された各種情報に基づいて、スレーブサーバ10の状態を示す情報を生成して管理する。図9は、スレーブサーバ管理部が管理する情報の例を示す図である。
図9に示すように、スレーブサーバ管理部57bは、「スレーブサーバ名」、「NICビート受信時刻」、「OS異常通知フラグ」、及び「省電力モード」を管理する。ここで管理される「スレーブサーバ名」は、スレーブサーバ10を識別する情報であり、例えばホスト名などが設定される。「NICビート受信時刻」は、NICビートが受信された時刻を示す。「OS異常通知フラグ」は、スレーブサーバのOSが異常であるか否かを示す情報であり、異常がある場合には1が設定され、異常がない場合には0が設定される。「省電力モード」は、スレーブサーバ10の動作モードが省電力モードであるか否かを示す情報であり、省電力モード中であれば1が設定され、通常モードであれば0が設定される。
例えば、スレーブサーバ管理部57bは、NICビート受信部57aから通知されたスレーブサーバの名称及び受信時刻を、不図示のスレーブサーバ名の格納部、及びNICビート受信時刻の格納部にそれぞれ格納する。また、スレーブサーバ管理部57bは、NICビート受信部57aからOS53が異常であることが通知された場合、該当するスレーブサーバ名のOS異常通知フラグを1に設定する。一方、スレーブサーバ管理部57bは、NICビート受信部57aからOS53が正常であることが通知された場合、該当するスレーブサーバ名のOS異常通知フラグを0に設定する。また、スレーブサーバ管理部57bは、NICビート受信部57aから省電力モードで動作中であることが通知された場合、該当するスレーブサーバ名の省電力モードを1に設定する。一方、スレーブサーバ管理部57bは、NICビート受信部57aから通常モードで動作中であることが通知された場合、該当するスレーブサーバ名の省電力モードを0に設定する。
通知部57cは、スレーブサーバ10から受信されたNICビートに含まれるハートビートをNICビート受信部57aから受信する。そして、通知部57cは、ドライバ54とOS53とを介して、受信したハートビートをHadoop51に送出する。なお、ここで送出されたハートビートは、例えば図5に示したデータ構造である。
[処理の流れ(シーケンス)]
次に、スレーブサーバ10が、ハートビートからNICビートを生成してマスタサーバ50に送信し、マスタサーバ50が、NICビートからスレーブサーバの状態を把握する一連の流れを説明する。ここでは、正常時、OS異常時、省電力モード移行時、ネットワーク異常時の各々について説明する。
(正常時)
図10は、正常時のシーケンスを示す図である。スレーブサーバ10のHadoop11は、OS13やドライバ14を介してNICビート装置17に、3秒ごとにハートビートを送信する(S101とS102)。すると、NICビート装置17のハートビート判定部17aは、3秒ごとにハートビートを受信して状態管理部17cを更新する(S103)。
そして、NICビート生成部17dが、1分間ごとにスレーブサーバ10が正常であることを示すNICビートを生成し、NICビート送信部17eが、NICビートをマスタサーバ50に送信する(S104とS105)。このときのNICビートは、ハートビート、OS状態ビット=1、WOL機能ビット=0、OS異常ビット=0から構成される。
一方で、マスタサーバ50のNICビート受信部57aは、NICビートを受信する(S106)。このとき、NICビート受信部57aは、ハートビートを抽出して通知部57cに送出する。また、スレーブサーバ管理部57bは、NICビートからOS13が正常であることを特定して管理情報を更新する。
そして、通知部57cは、ドライバ54やOS53を介して、正常稼動中を示すハートビートをHadoop51に通知する(S107とS108)。この結果、Hadoop51は、スレーブサーバ10が正常稼動中であることを認識する(S109)。
(OS異常時)
図11は、OS異常時のシーケンスを示す図である。スレーブサーバ10のHadoop11は、OS13やドライバ14を介してNICビート装置17に送信するハートビートの送信タイミングが不規則になる(S201とS202)。すると、NICビート装置17のハートビート判定部17a、省電力モードがOFFかつハートビートが不定期であることに基づいてOS13が異常であると判定し、状態管理部17cを更新する(S203)。
そして、NICビート生成部17dがスレーブサーバ10のOS13が異常であることを示すNICビートを生成し、NICビート送信部17eがNICビートをマスタサーバ50に送信する(S204とS205)。このときのNICビートは、ハートビート、OS状態ビット=1、WOL機能ビット=0、OS異常ビット=1から構成される。
一方で、マスタサーバ50のNICビート受信部57aは、NICビートを受信する(S206)。このとき、NICビート受信部57aは、ハートビートを抽出して通知部57cに送出する。また、スレーブサーバ管理部57bは、NICビートからOS13が異常であることを特定して管理情報を更新する。
そして、通知部57cは、ドライバ54やOS53を介して、OS異常であることを状態監視デーモン52に通知する(S207とS208)。なお、状態監視デーモン52が定期的にスレーブサーバ管理部57bを監視して、OS13が異常であることを特定してもよい。また、通知部57cは、ハートビートをHadoop51に通知する。この結果、状態監視デーモン52は、スレーブサーバ10のOS13が異常であるログを出力する(S209)。このログを参照してHadoop51や管理者は、スレーブサーバ10のOS異常を検出する。なお、ログは、ハードディスク等に格納される。
(省電力モード移行時)
図12は、省電力移行時のシーケンスを示す図である。図12に示すように、スレーブサーバ10の省電力処理デーモン12は、OS13等で実行されるジョブやタスクがないことを検出すると(S301)、スレーブサーバ10を省電力モードに移行させる(S302)。続いて、省電力処理デーモン12は、移行したことをNICビート装置17に通知する(S303とS304)。
そして、省電力モード処理部17bが省電力モードへ移行したことを検出して状態管理部17cに通知し、状態管理部17cが管理情報を更新する(S305)。その後、NICビート生成部17dが、スレーブサーバ10が省電力モードへ移行したことを示すNICビートを生成し、NICビート送信部17eが、NICビートをマスタサーバ50に送信する(S306とS307)。このときのNICビートは、ハートビート、OS状態ビット=0、WOL機能ビット=1、OS異常ビット=0から構成される。
一方で、マスタサーバ50のNICビート受信部57aは、NICビートを受信する(S308)。このとき、NICビート受信部57aは、ハートビートを抽出して通知部57cに送出する。また、スレーブサーバ管理部57bは、NICビートからスレーブサーバ10が省電力モードへ移行したことを特定して管理情報を更新する。
そして、通知部57cは、ドライバ54やOS53を介して、省電力モードへ移行したことを状態監視デーモン52に通知する(S309とS310)。なお、状態監視デーモン52が定期的にスレーブサーバ管理部57bを監視して、省電力モードへ移行したことを特定してもよい。また、通知部57cは、ハートビートをHadoop51に通知する。この結果、状態監視デーモン52は、スレーブサーバ10が省電力モードへ移行したことを示すログを出力する(S311)。このログを参照してHadoop51や管理者は、スレーブサーバ10が省電力モードへ移行したことを検出する。省電力モードへ移行したスレーブサーバ10は、省電力モードが解除されるまで、NICビートの生成や送信を抑止する。
その後、スレーブサーバ10側がジョブ等の発生を検知して、スレーブサーバ10が主導で省電力モードを解除して通常モードに移行することもできる。また、マスタサーバ50がスレーブサーバ10へのジョブ等の発生を検知して、マスタサーバ50が主導で省電力モードを解除させることもできる。
(ネットワーク異常時)
図13は、ネットワーク異常時のシーケンスを示す図である。図13に示すように、スレーブサーバ10のHadoop11は、正常時と同様、OS13やドライバ14を介してNICビート装置17に、3秒ごとにハートビートを送信する(S401とS402)。すると、NICビート装置17のハートビート判定部17aは、3秒ごとにハートビートを受信して状態管理部17cを更新する(S403)。
そして、NICビート生成部17dが、1分間ごとにスレーブサーバ10が正常であることを示すNICビートを生成し、NICビート送信部17eが、NICビートをマスタサーバ50に送信する(S404とS405)。このときのNICビートは、「ハートビート、OS状態ビット=1、WOL機能ビット=0、OS異常ビット=0」から構成される。
一方で、マスタサーバ50のNICビート受信部57aでは、1分間または所定時間経過してもNICビートを受信できない(S406)。このとき、スレーブサーバ管理部57bは、NICビートが受信できないことを特定し、ネットワークに異常が発生したことを特定する。
そして、通知部57cは、スレーブサーバ管理部57bから通知されたネットワーク異常を、ドライバ54やOS53を介してHadoop51に通知する(S407とS408)。その後、Hadoop51は、ネットワークに異常が発生したことを示すログを出力する(S409)。このログを参照してHadoop51や管理者は、ネットワークに異常が発生したことを検出する。
[スレーブサーバ(フローチャート)]
次に、スレーブサーバ10が実行するNICビート送信処理の流れを説明する。図14は、スレーブサーバが実行するNICビート送信処理の流れを示すフローチャートである。
図14に示すように、スレーブサーバ10の状態管理部17cは、管理する「省電力モード」に「1」が格納されているか否かを判定する(S501)。そして状態管理部17cは、「省電力モード」に「1」が格納されていると判定した場合(S501:Yes)、「OS異常検出フラグ」に「0」を格納する(S502)。
続いて、NICビート生成部17dは、状態管理部17cに管理される「NICビート送信時刻」から1分経過したか否かを判定する(S503)。そして、NICビート生成部17dは、「NICビート送信時刻」から1分経過したと判定した場合(S503:Yes)、「ハートビート、OS状態ビット=0、WOL機能ビット=1、OS異常ビット=0」から構成されるNICビートを生成する(S504)。
そして、NICビート送信部17eは、S504で生成されたNICビートのパケットの送信を、コントローラ16の送信処理部16aに依頼する(S505)。こうして、送信処理部16aは、NICビートをマスタサーバ50に送信する。その後、NICビート送信部17eが送信時刻を状態管理部17cに通知し、状態管理部17cが、「NICビート送信時刻」を更新する(S506)。
その後、NICビート装置17は、1秒間待機した後(S507)、S501以降を繰り返す。なお、S503において、NICビート生成部17dが「NICビート送信時刻」から1分経過していないと判定した場合(S503:No)、NICビート装置17は、S507を実行する。
一方、状態管理部17cは、「省電力モード」に「0」が格納されていると判定した場合(S501:No)、「ハートビート送信時刻」から3秒が経過したか否かを判定する(S508)。
そして、状態管理部17cは、「ハートビート送信時刻」から3秒が経過したと判定した場合(S508:Yes)、「OS異常検出フラグ」に「0」が格納されているか否かを判定する(S509)。状態管理部17cは、「OS異常検出フラグ」に「0」が格納されていると判定した場合(S509:Yes)、「OS異常検出フラグ」を「1」に更新する(S510)。つまり、状態管理部17cは、ハートビートを定期的に受信できないことから、OS13に異常が発生したと判定する。その後、S512以降が実行される。
一方、状態管理部17cによって「OS異常検出フラグ」に「0」が格納されていないと判定された場合(S509:No)、NICビート生成部17dは、状態管理部17cに管理される「NICビート送信時刻」から1分経過したか否かを判定する(S511)。そして、NICビート生成部17dは、「NICビート送信時刻」から1分経過したと判定した場合(S511:Yes)、「ハートビート、OS状態ビット=1、WOL機能ビット=0、OS異常ビット=1」から構成されるNICビートを生成する(S512)。
そして、NICビート送信部17eは、S512で生成されたNICビートのパケットの送信を、コントローラ16の送信処理部16aに依頼する(S513)。こうして、送信処理部16aは、NICビートをマスタサーバ50に送信する。その後、NICビート送信部17eが送信時刻を状態管理部17cに通知し、状態管理部17cが、「NICビート送信時刻」を更新する(S514)。
その後、NICビート装置17は、1秒間待機した後(S507)、S501以降を繰り返す。なお、S511において、NICビート生成部17dが「NICビート送信時刻」から1分経過していないと判定した場合(S511No)、NICビート装置17は、S507を実行する。
一方、状態管理部17cは、「ハートビート送信時刻」から3秒が経過していないと判定した場合(S508:No)、「OS異常検出フラグ」に「0」を格納する(S515)。
そして、NICビート生成部17dは、状態管理部17cに管理される「NICビート送信時刻」から1分経過したか否かを判定する(S516)。そして、NICビート生成部17dは、「NICビート送信時刻」から1分経過したと判定した場合(S516:Yes)、「ハートビート、OS状態ビット=1、WOL機能ビット=0、OS異常ビット=0」から構成されるNICビートを生成する(S517)。
続いて、NICビート送信部17eは、S517で生成されたNICビートのパケットの送信を、コントローラ16の送信処理部16aに依頼する(S518)。こうして、送信処理部16aは、NICビートをマスタサーバ50に送信する。その後、NICビート送信部17eが送信時刻を状態管理部17cに通知し、状態管理部17cが、「NICビート送信時刻」を更新する(S519)。
その後、NICビート装置17は、1秒間待機した後(S507)、S501以降を繰り返す。なお、S516において、NICビート生成部17dが「NICビート送信時刻」から1分経過していないと判定した場合(S516:No)、NICビート装置17は、S507を実行する。
[マスタサーバ(フローチャート)]
次に、マスタサーバ50が実行するNICビート受信処理の流れと状態監視処理の流れとを説明する。
(NICビート受信処理)
図15は、マスタサーバが実行するNICビート受信処理の流れを示すフローチャートである。マスタサーバ50のNICビート受信部57aは、スレーブサーバ10からNICビートを受信すると(S601)、現在の時刻をスレーブサーバ管理部57bに通知する(S602)。すなわち、スレーブサーバ管理部57bは、該当するスレーブサーバ10のレコードにおける「NICビート受信時刻」に、通知された現在の時刻を格納する。
続いて、NICビート受信部57aは、「ハートビート、OS状態ビット=1、WOL機能ビット=0、OS異常ビット=0」から構成されるNICビートを受信したか否かを判定する(S603)。つまり、NICビート受信部57aは、異常がないNICビートを受信したか否かを判定する。
そして、NICビート受信部57aは、異常がないNICビートを受信したと判定した場合(S603:Yes)、通知部57cは、NICビート受信部57aがNICビートから抽出したハートビートをHadoop51に送出する(S604)。
一方、NICビート受信部57aは、「ハートビート、OS状態ビット=1、WOL機能ビット=0、OS異常ビット=0」から構成されるNICビートではないと判定した場合(S603:No)、S605を実行する。すなわち、NICビート受信部57aは、「ハートビート、OS状態ビット=0、WOL機能ビット=1、OS異常ビット=0」から構成されるNICビートを受信したか否かを判定する。つまり、NICビート受信部57aは、スレーブサーバ10が省電力モードで動作中であるか否かを判定する。
そして、スレーブサーバ管理部57bは、NICビート受信部57aによってスレーブサーバ10が省電力モードで動作中であると判定された場合(S605:Yes)、該当するスレーブサーバ10に対応する「省電力モード」に「1」を格納する(S606)。その後、NICビート装置57は、S604を実行する。
また、S605において、NICビート受信部57aは、「ハートビート、OS状態ビット=0、WOL機能ビット=1、OS異常ビット=0」から構成されるNICビートではないと判定した場合(S605:No)、S607を実行する。すなわち、NICビート受信部57aは、「ハートビート、OS状態ビット=1、WOL機能ビット=0、OS異常ビット=1」から構成されるNICビートを受信したか否かを判定する。つまり、NICビート受信部57aは、スレーブサーバ10のOS13に異常が発生したか否かを判定する。
そして、スレーブサーバ管理部57bは、NICビート受信部57によってスレーブサーバ10のOS13に異常が発生したと判定された場合(S607:Yes)、該当するスレーブサーバ10に対応する「OS異常通知フラグ」に「1」を格納する(S608)。その後、NICビート装置57は、S604を実行する。なお、NICビート受信部57aによってスレーブサーバ10のOS13に異常が発生したと判定されなかった場合(S607:No)、NICビート装置57は、処理を終了する。
(状態監視処理)
図16は、マスタサーバが実行する状態監視処理の流れを示すフローチャートである。図16に示すように、マスタサーバ50の状態監視デーモン52は、スレーブサーバ管理部57bを参照し、NICビート受信時刻から3分以上が経過しているスレーブサーバ10が存在するか否かを判定する(S701)。つまり、状態監視デーモン52は、スレーブサーバ管理部57bが管理するNICビート受信時刻が3分以上更新されないスレーブサーバ10が存在するか否かを判定する。
そして、状態監視デーモン52は、NICビート受信時刻から3分以上が経過しているスレーブサーバ10が存在すると判定した場合(S701:Yes)、ネットワークに障害が発生していることを示すログを出力する(S702)。その後、状態監視デーモン52は、1秒間待機した後(S703)、S701に戻って以降の処理を繰り返す。
一方、状態監視デーモン52は、NICビート受信時刻から3分以上が経過しているスレーブサーバ10が存在しないと判定した場合(S701:No)、「OS異常通知フラグ」に「1」が格納されているスレーブサーバが存在するか否かを判定する(S704)。
そして、状態監視デーモン52は、「OS異常通知フラグ」に「1」が格納されているスレーブサーバ10が存在すると判定した場合(S704:Yes)、当該スレーブサーバ10でOSに異常が発生していることを示すログを出力する(S705)。その後、状態監視デーモン52は、1秒間待機した後(S703)、S701に戻って以降の処理を繰り返す。
また、状態監視デーモン52は、「OS異常通知フラグ」に「1」が格納されているスレーブサーバ10が存在しないと判定した場合(S704:No)、「省電力モード」に「1」が格納されているスレーブサーバ10が存在するか否かを判定する(S706)。
そして、状態監視デーモン52は、「省電力モード」に「1」が格納されているスレーブサーバ10が存在すると判定した場合(S706:Yes)、当該スレーブサーバ10が省電力モードに移行したことを示すログを出力する(S707)。その後、状態監視デーモン52は、1秒間待機した後(S703)、S701に戻って以降の処理を繰り返す。なお、状態監視デーモン52は、「省電力モード」に「1」が格納されているスレーブサーバ10が存在しないと判定した場合(S706:No)、1秒間待機した後(S703)、S701に戻って以降の処理を繰り返す。
このように、従来のように3秒間に1度送信されたハートビートと比べ、単一な送信ルールではなく、送信時間等を柔軟に変更できるNICビートを使用することによって、マスタサーバ50の負荷を軽減することができる。また、NICビートを用いることで、ハートビートが持っていた生存情報を伝える機能を保持した上、故障した場所の特定ができる。さらに、スレーブサーバ10に対する故障箇所の誤判断を防ぐことができ、故障原因に対して作業の効率向上を実現できる。
また、ジョブ処理に関して、処理が完了したスレーブサーバ10が省電力になることから、電力コストの大幅な減少が実現できる。さらに、NICビートを送信することによって、省電力モードになったスレーブサーバ10に対して、マスタサーバ50の誤判断を防ぐことができる。また、マスタサーバ50のジョブ処理の要求に応じて、スレーブサーバ10が、省電力モードから通常処理モードに戻ることができる。
さらに、OS異常とネットワーク障害の切り分けができ、OS異常のときは代替スレーブサーバ10への切り替えを即時に開始できる。そして、ネットワーク障害のときはスレーブサーバ10に保存されたデータが破損する可能性がないためネットワークの復旧を待つなど、マスタサーバ50がスレーブサーバ10に対する対処方法を柔軟に変更することができる。
さて、これまで本発明の実施例について説明したが、本発明は上述した実施例以外にも、種々の異なる形態にて実施されてよいものである。そこで、以下に異なる実施例を説明する。
(通知内容)
実施例1では、OS状態ビット、省電力モード、OS異常ビットをNICビートで送信する例を説明したが、これに限定されるものではなく、いずれか1つを送信するようにしてもよい。また、任意の組み合わせで送信してもよい。
(送信間隔)
実施例1では、ハートビートが3秒間隔で送信され、NICビートが1分間隔で送信される例を説明したが、これに限定されるものではなく、いずれの送信間隔も任意に設定変更することができる。ただし、マスタサーバ50の負荷を軽減するために、NICビートの送信間隔は、ハートビートの送信間隔よりも長いことが好ましい。
(システム)
また、本実施例において説明した各処理のうち、自動的におこなわれるものとして説明した処理の全部または一部を手動的におこなうこともできる。あるいは、手動的におこなわれるものとして説明した処理の全部または一部を公知の方法で自動的におこなうこともできる。この他、上記文書中や図面中で示した処理手順、制御手順、具体的名称、各種のデータやパラメータを含む情報については、特記する場合を除いて任意に変更することができる。
また、図示した各装置の各構成要素は機能概念的なものであり、必ずしも物理的に図示の如く構成されていることを要しない。すなわち、各装置の分散・統合の具体的形態は図示のものに限られない。つまり、その全部または一部を、各種の負荷や使用状況などに応じて、任意の単位で機能的または物理的に分散・統合して構成することができる。さらに、各装置にて行なわれる各処理機能は、その全部または任意の一部が、CPUおよび当該CPUにて解析実行されるプログラムにて実現され、あるいは、ワイヤードロジックによるハードウェアとして実現され得る。
10 スレーブサーバ
11 Hadoop
12 省電力処理デーモン
13 OS
14 ドライバ
15 NIC
16 コントローラ
16a 送信処理部
16b 受信処理部
17 NICビート装置
17a ハートビート判定部
17b 省電力モード処理部
17c 状態管理部
17d NICビート生成部
17e NICビート送信部
50 マスタサーバ
51 Hadoop
52 状態監視デーモン
53 OS
54 ドライバ
55 NIC
56 コントローラ
56a 送信処理部
56b 受信処理部
57 NICビート装置
57a NICビート受信部
57b スレーブサーバ管理部
57c 通知部

Claims (9)

  1. 第1の情報処理装置と、前記第1の情報処理装置を監視する第2の情報処理装置とを含む情報処理システムであって、
    前記第1の情報処理装置は、
    第1の入出力装置と、
    オペレーティングシステムが動作するプロセッサと、
    前記第2の情報処理装置と通信可能であって、オペレーティングシステムからの通知が得られない場合であっても、前記第1の入出力装置から送信する通知信号を前記第2の情報処理装置に送信する第1の入出力部と、を有し、
    前記第2の情報処理装置は、
    第2の入出力装置と、
    前記第2の入出力装置が、前記第1の入出力装置から前記通知信号を受信しなかった場合に、前記第1の情報処理装置と前記第2の情報処理装置とを接続するネットワークに障害が発生したと検知する障害検知部と、
    を有することを特徴とする情報処理システム。
  2. 前記第1の入出力部は、オペレーティングシステムからの通知に応じて該オペレーティングシステムの状態情報を生成する生成部を有し、
    前記第1の入出力部は、該生成部が生成した該状態情報を、前記通知信号に含めて前記第2の情報処理装置に送信する、
    ことを特徴とする請求項1に記載の情報処理システム。
  3. 前記第1の情報処理装置の生成部は、
    前記オペレーティングシステムからの通知の発生周期が不規則になった場合、または、前記オペレーティングシステムからの通知を受信できなくなった場合に、前記第1の情報処理装置で異常が発生したことを示す異常通知情報を生成し、
    前記第1の入出力部は、前記生成部が生成した前記異常通知情報を、前記通知信号に含めて前記第2の情報処理装置に送信し、
    前記第2の情報処理装置の障害検知部は、
    前記第1の情報処理装置から受信した通知信号に、前記異常通知情報が含まれている場合には、前記第1の情報処理装置で障害が発生したと検知することを特徴とする請求項2に記載の情報処理システム。
  4. 前記第1の情報処理装置の生成部は、
    前記第1の情報処理装置が実行対象とするジョブが存在しなくなった場合に、電力消費を抑制する省電力モードに移行することを示す移行通知情報を生成し、
    前記第1の入出力部は、前記生成部が生成した前記移行通知情報を、前記通知信号に含めて前記第2の情報処理装置に送信し、
    前記第2の情報処理装置の障害検知部は、
    前記第1の情報処理装置から受信した通知信号に、前記移行通知情報が含まれている場合には、前記第1の情報処理装置を監視対象から除外することを特徴とする請求項2に記載の情報処理システム。
  5. 前記第1の情報処理装置の第1の入出力部は、前記移行通知情報を含む前記通知信号が前記第2の情報処理装置に送信された後、前記省電力モードが解除されるまで、前記通知信号の送信を抑制することを特徴とする請求項4に記載の情報処理システム。
  6. 前記第1の情報処理装置の生成部は、
    前記第1の情報処理装置に前記ジョブが発生した場合に、前記省電力モードを解除することを示す解除通知情報を生成し、
    前記第1の入出力部は、前記生成部が生成した前記解除通知情報を、前記通知信号に含めて前記第2の情報処理装置に送信し、
    前記第2の情報処理装置の障害検知部は、
    前記第1の情報処理装置から受信した通知信号に、前記解除通知情報が含まれている場合には、前記第1の情報処理装置を監視対象に戻すことを特徴とする請求項5に記載の情報処理システム。
  7. 第1の情報処理装置と、前記第1の情報処理装置を監視する第2の情報処理装置とを含む情報処理システムに適した障害検知方法において、
    前記第1の情報処理装置が、
    前記第2の情報処理装置と通信可能であって、プロセッサが動作させるオペレーティングシステムからの通知が得られない場合であっても、第1の入出力装置から送信する通知信号を前記第2の情報処理装置に送信し、
    前記第2の情報処理装置が、
    第2の入出力装置が、前記第1の入出力装置から前記通知信号を受信しなかった場合に、前記第1の情報処理装置と前記第2の情報処理装置とを接続するネットワークに障害が発生したと検知する、
    を実行することを特徴とする障害検知方法。
  8. 情報処理装置と、前記情報処理装置を監視する監視装置とを含む情報処理システムの前記情報処理装置において、
    第1の入出力装置と、
    オペレーティングシステムが動作するプロセッサと、
    前記第1の入出力装置から送信される通知信号を受信しなかった場合に前記情報処理装置と前記監視装置とを接続するネットワークに障害が発生したと検知する前記監視装置に、前記監視装置と通信可能であってオペレーティングシステムからの通知が得られない場合であっても前記通知信号を送信する第1の入出力部と、
    を有することを特徴とする情報処理装置。
  9. 監視対象の装置と、前記監視対象の装置を監視する情報処理装置とを含む情報処理システムの前記情報処理装置において、
    第2の入出力装置と、
    前記情報処理装置と通信可能であってプロセッサが動作させるオペレーティングシステムからの通知が得られない場合であっても前記監視対象の装置が送信する通知信号を、前記第2の入出力装置が前記監視対象の装置から受信しなかった場合に、前記監視対象の装置と自装置との間のネットワークに障害が発生したと検知する障害検知部と、
    を有することを特徴とする情報処理装置。
JP2014507300A 2012-03-30 2012-03-30 情報処理システム、障害検知方法および情報処理装置 Expired - Fee Related JP5858144B2 (ja)

Applications Claiming Priority (1)

Application Number Priority Date Filing Date Title
PCT/JP2012/058754 WO2013145325A1 (ja) 2012-03-30 2012-03-30 情報処理システム、障害検知方法および情報処理装置

Publications (2)

Publication Number Publication Date
JPWO2013145325A1 JPWO2013145325A1 (ja) 2015-08-03
JP5858144B2 true JP5858144B2 (ja) 2016-02-10

Family

ID=49258687

Family Applications (1)

Application Number Title Priority Date Filing Date
JP2014507300A Expired - Fee Related JP5858144B2 (ja) 2012-03-30 2012-03-30 情報処理システム、障害検知方法および情報処理装置

Country Status (3)

Country Link
US (1) US20150019671A1 (ja)
JP (1) JP5858144B2 (ja)
WO (1) WO2013145325A1 (ja)

Families Citing this family (8)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
JP5687173B2 (ja) * 2011-11-15 2015-03-18 株式会社日立製作所 通信システム及び方法、ハートビート代行サーバ
US9712380B2 (en) * 2013-08-30 2017-07-18 Shimadzu Corporation Analytical device control system
US9819563B2 (en) * 2014-12-19 2017-11-14 Verizon Patent And Licensing Inc. Failure management for electronic transactions
CN107294799B (zh) * 2016-03-31 2020-09-01 阿里巴巴集团控股有限公司 一种分布式系统中节点的处理方法和装置
JP6662185B2 (ja) * 2016-04-28 2020-03-11 横河電機株式会社 処理装置、代替処理装置、中継装置、処理システム及び処理方法
US10191794B2 (en) 2016-09-28 2019-01-29 Mcafee, Llc Monitoring and analyzing watchdog messages in an internet of things network environment
CN106603301B (zh) * 2016-12-29 2019-09-06 杭州宏杉科技股份有限公司 一种基于存储集群多节点对的仲裁者实现方法及装置
CN110933142A (zh) * 2019-11-07 2020-03-27 浪潮电子信息产业股份有限公司 一种icfs集群网卡监控方法、装置和设备及介质

Family Cites Families (2)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
JPH07262148A (ja) * 1994-03-22 1995-10-13 Nec Corp コンピュータシステム
JP4657800B2 (ja) * 2005-05-16 2011-03-23 本田技研工業株式会社 航空機用ガスタービン・エンジンの制御装置

Also Published As

Publication number Publication date
JPWO2013145325A1 (ja) 2015-08-03
US20150019671A1 (en) 2015-01-15
WO2013145325A1 (ja) 2013-10-03

Similar Documents

Publication Publication Date Title
JP5858144B2 (ja) 情報処理システム、障害検知方法および情報処理装置
JP5910811B2 (ja) スイッチ装置の制御システム、その構成制御装置および構成制御方法
US8332506B2 (en) Network monitor program executed in a computer of cluster system, information processing method and computer
CN106330475B (zh) 一种通信系统中管理主备节点的方法和装置及高可用集群
US20140095925A1 (en) Client for controlling automatic failover from a primary to a standby server
US9208124B2 (en) Reset of processing core in multi-core processing system
JP6179101B2 (ja) 管理装置、管理方法、および管理プログラム
JP2008015722A (ja) データ処理システム
EP3291487B1 (en) Method for processing virtual machine cluster and computer system
EP2637102A1 (en) Cluster system with network node failover
WO2016165157A1 (zh) 家庭服务系统的故障处理方法及家电设备、服务器
JPWO2015104841A1 (ja) 多重系システムおよび多重系システム管理方法
CN107071189B (zh) 一种通讯设备物理接口的连接方法
US20140129865A1 (en) System controller, power control method, and electronic system
JP6253956B2 (ja) ネットワーク管理サーバおよび復旧方法
KR102131863B1 (ko) 라우팅 처리기의 동작 모드 천이 방법
JP2010244463A (ja) イベント検出制御方法及びシステム
JP2010092395A (ja) サーバ管理システム,サーバ管理方法及びサーバ管理用プログラム
JP5613119B2 (ja) マスター/スレーブシステム、制御装置、マスター/スレーブ切替方法、および、マスター/スレーブ切替プログラム
JP2014048933A (ja) プラント監視システム、プラント監視方法およびプラント監視プログラム
CN110213364B (zh) 快递柜监控方法、系统、存储介质和设备
JP2011065469A (ja) 分散ファイルシステム及び分散ファイルシステムにおけるノード起動方法
JP2016100659A (ja) 周期型データ共有システム及び方法
JP4863984B2 (ja) 監視処理プログラム、方法及び装置
WO2014010021A1 (ja) 情報処理装置、情報処理システム、情報処理装置制御方法及び情報処理装置制御プログラム

Legal Events

Date Code Title Description
A131 Notification of reasons for refusal

Free format text: JAPANESE INTERMEDIATE CODE: A131

Effective date: 20150825

A521 Written amendment

Free format text: JAPANESE INTERMEDIATE CODE: A523

Effective date: 20151023

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

A61 First payment of annual fees (during grant procedure)

Free format text: JAPANESE INTERMEDIATE CODE: A61

Effective date: 20151130

R150 Certificate of patent or registration of utility model

Ref document number: 5858144

Country of ref document: JP

Free format text: JAPANESE INTERMEDIATE CODE: R150

LAPS Cancellation because of no payment of annual fees