(57)【特許請求の範囲】
【請求項１】
サーバ群に含まれるサーバ各々について、データの送受信が行われているか否かを監視する監視部と、
前記監視部により前記データの送受信が行われていないとの監視結果が得られた場合に、データの送受信に用いられる第１のネットワークを介して、該監視結果が得られたサーバに死活監視用データを送信する送信部と、
前記送信部により送信された前記死活監視用データに対する応答がない場合に、前記第１のネットワークとは別の第２のネットワークを介して、前記サーバ群に含まれる前記サーバ各々に任意の処理を分散させて実行させる分散装置に、応答がなかったサーバを通知する通知部とを備え、
前記送信部は、前記第１のネットワークを介して送信した前記死活監視用データに対する応答がない場合に、応答がなかったサーバに対して前記第２のネットワークを介して前記死活監視用データを送信し、
前記通知部は、前記第２のネットワークを介して送信された前記死活監視用データに対する応答がある場合には、第１のネットワークに障害がある旨を通知し、前記第２のネットワークを介して送信された前記死活監視用データに対する応答がない場合には、前記第１のネットワーク及び前記第２のネットワークに障害がある旨を通知すると共に、
前記送信部は、前記第１のネットワークに障害が発生している場合に、前記第１のネットワークを迂回して、前記第２のネットワークを介して前記死活監視用データを送信し、
前記通知部は、前記送信部により前記第２のネットワークを介して送信された前記死活監視用データに対する応答がない場合に、該第２のネットワークを介して、前記第１のネットワークの障害を前記分散装置に通知する
ことを特徴とする死活監視サーバ。
【請求項２】
前記送信部は、前記死活監視用データを１度送信し、
前記通知部は、前記送信部により１度送信された前記死活監視用データに対する応答がない場合に通知することを特徴とする請求項１に記載の死活監視サーバ。
【請求項３】
サーバ群に含まれるサーバ各々について、データの送受信が行われているか否かを監視する監視ステップと、
前記監視ステップにより前記データの送受信が行われていないとの監視結果が得られた場合に、データの送受信に用いられる第１のネットワークを介して、該監視結果が得られたサーバに死活監視用データを送信する送信ステップと、
前記送信ステップにより送信された前記死活監視用データに対する応答がない場合に、前記第１のネットワークとは別の第２のネットワークを介して、前記サーバ群に含まれる前記サーバ各々に任意の処理を分散させて実行させる分散装置に、応答がなかったサーバを通知する通知ステップとをコンピュータに実行させ、
前記送信ステップでは、前記第１のネットワークを介して送信した前記死活監視用データに対する応答がない場合に、応答がなかったサーバに対して前記第２のネットワークを介して前記死活監視用データを送信し、
前記通知ステップでは、前記第２のネットワークを介して送信された前記死活監視用データに対する応答がある場合には、第１のネットワークに障害がある旨を通知し、前記第２のネットワークを介して送信された前記死活監視用データに対する応答がない場合には、前記第１のネットワーク及び前記第２のネットワークに障害がある旨を通知すると共に、
前記送信ステップでは、前記第１のネットワークに障害が発生している場合に、前記第１のネットワークを迂回して、前記第２のネットワークを介して前記死活監視用データを送信し、
前記通知ステップでは、前記送信ステップにより前記第２のネットワークを介して送信された前記死活監視用データに対する応答がない場合に、該第２のネットワークを介して、前記第１のネットワークの障害を前記分散装置に通知する処理
をコンピュータに実行させるための死活監視プログラム。
【請求項４】
サーバ群に含まれるサーバ各々について、データの送受信が行われているか否かを監視する監視工程と、
前記監視工程により前記データの送受信が行われていないとの監視結果が得られた場合に、データの送受信に用いられる第１のネットワークを介して、該監視結果が得られたサーバに死活監視用データを送信する送信工程と、
前記送信工程により送信された前記死活監視用データに対する応答がない場合に、前記第１のネットワークとは別の第２のネットワークを介して、前記サーバ群に含まれる前記サーバ各々に任意の処理を分散させて実行させる分散装置に、応答がなかったサーバを通知する通知工程とを含み、
前記送信工程は、前記第１のネットワークを介して送信した前記死活監視用データに対する応答がない場合に、応答がなかったサーバに対して前記第２のネットワークを介して前記死活監視用データを送信し、
前記通知工程は、前記第２のネットワークを介して送信された前記死活監視用データに対する応答がある場合には、第１のネットワークに障害がある旨を通知し、前記第２のネットワークを介して送信された前記死活監視用データに対する応答がない場合には、前記第１のネットワーク及び前記第２のネットワークに障害がある旨を通知すると共に、
前記送信工程は、前記第１のネットワークに障害が発生している場合に、前記第１のネットワークを迂回して、前記第２のネットワークを介して前記死活監視用データを送信し、
前記通知工程は、前記送信工程により前記第２のネットワークを介して送信された前記死活監視用データに対する応答がない場合に、該第２のネットワークを介して、前記第１のネットワークの障害を前記分散装置に通知する処理
を含んだことを特徴とする死活監視方法。
【発明の詳細な説明】
【技術分野】
【０００１】
本発明は、死活監視サーバ、死活監視プログラム及び死活監視方法に関する。
【背景技術】
【０００２】
従来、大規模な分散ファイルシステムでは、死活監視技術が用いられている。死活監視技術が用いられた分散ファイルシステムでは、監視サーバは、分散ファイルシステムを形成するサーバ各々について死活監視用データを送信し、応答の有無に基づいて死活監視を行う。監視サーバは、分散ファイルシステムにて処理されるデータの送受信に用いられるネットワークを介して、死活監視用データを送信する。そして、分散ファイルシステムでは、監視サーバによりダウンしていると判断されたサーバについて、復旧するまで分散対象としない。
【先行技術文献】
【非特許文献】
【０００３】
【非特許文献１】サーバ負荷分散概論、［ｏｎｌｉｎｅ］、［２０１２年２月１４日検索］、インターネット（ＵＲＬ：ｈｔｔｐ：／／ｌａｂ．ｋｌａｂ．ｏｒｇ／ｗｉｋｉ／％Ｅ３％８２％Ｂ５％Ｅ３％８３％ＢＣ％Ｅ３％８３％９０％Ｅ８％Ｂ２％Ａ０％Ｅ８％８Ｄ％Ｂ７％Ｅ５％８８％８６％Ｅ６％９５％Ａ３％Ｅ６％Ａ６％８２％Ｅ８％ＡＢ％９６）
【非特許文献２】死活監視とは、［ｏｎｌｉｎｅ］、［２０１２年２月１４日検索］、インターネット（ＵＲＬ：ｈｔｔｐ：／／ａｓｐ．ａｇ−ｍｏｎｉｔｏｒ．ｃｏｍ／ａｂｏｕｔ＿ｗａｔｃｈｉｎｇ．ｐｈｐ）
【発明の概要】
【発明が解決しようとする課題】
【０００４】
しかしながら、上述の従来技術では、死活監視に時間がかかったり、死活監視自体ができなかったりするという問題がある。例えば、上述の従来技術では、死活監視と他のデータ通信とが競合した場合や、回線に障害が発生した場合などにおいて、死活監視に時間がかかったり、死活監視自体ができなくなったりする。
【０００５】
開示の技術は、上述に鑑みてなされたものであって、死活監視を確実かつ迅速に実行可能となる死活監視サーバ、死活監視プログラム及び死活監視方法を提供することを目的とする。
【課題を解決するための手段】
【０００６】
開示する死活監視サーバは、１つの態様において、サーバ群に含まれるサーバ各々について、データの送受信が行われているか否かを監視する監視部を備える。また、開示する死活監視サーバは、前記監視部により前記データの送受信が行われていないとの監視結果が得られた場合に、データの送受信に用いられる第１のネットワークを介して、該監視結果が得られたサーバに死活監視用データを送信する送信部を備える。また、開示する死活監視サーバは、前記送信部により送信された前記死活監視用データに対する応答がない場合に、前記第１のネットワークとは別の第２のネットワークを介して、前記サーバ群に含まれる前記サーバ各々に任意の処理を分散させて実行させる分散装置に、応答がなかったサーバを通知する通知部を備える。
【発明の効果】
【０００７】
開示する死活監視サーバの１つの態様によれば、死活監視を確実かつ迅速に実行可能となるという効果を奏する。
【図面の簡単な説明】
【０００８】
【図１】図１は、実施形態１に係る死活監視サーバの全体像について説明するための図である。
【図２】図２は、実施形態１に係る死活監視サーバの構成の一例について説明するためのブロック図である。
【図３】図３は、実施形態１に係る死活監視サーバの構成の一例について説明するための図である。
【図４】図４は、実施形態１に係る死活監視サーバによる処理の流れの一例を説明するためのフローチャートである。
【図５】図５は、サーバの状況を把握する場合における死活監視サーバによる処理の流れの一例を説明するためのフローチャートである。
【図６】図６は、死活監視用データを制御ネットワークを介して送信する場合について説明するための図である。
【図７】図７は、一連の処理を実行するためのプログラムによる情報処理がコンピュータを用いて具体的に実現されることを示す図である。
【発明を実施するための形態】
【０００９】
以下に、開示する死活監視サーバ、死活監視プログラム及び死活監視方法の実施形態について、図面に基づいて詳細に説明する。なお、本実施形態により開示する発明が限定されるものではない。各実施形態は、処理内容を矛盾させない範囲で適宜組み合わせることが可能である。
【００１０】
以下では、実施形態１に係る死活監視サーバ、死活監視プログラム及び死活監視方法について説明する。具体的には、死活監視サーバの全体像について簡単に説明した上で、死活監視サーバの構成の一例、死活監視サーバによる処理の一例について順に説明する。
【００１１】
［死活監視サーバの全体像］
図１は、実施形態１に係る死活監視サーバの全体像について説明するための図である。図１に示す例では、説明の便宜上、死活監視サーバ１００に加えて、ｎ個の死活監視サブサーバ２００と、ｍ個の分散ファイルワーカ３００と、分散ファイルマスタ４００とを併せて示した。死活監視サーバ１００と、ｎ個の死活監視サブサーバ２００と、ｍ個の分散ファイルワーカ３００と、分散ファイルマスタ４００とは、それぞれ、データの送受信に用いられるデータネットワーク１０と、データネットワーク１０とは別途設けられた制御ネットワーク２０とで接続される。なお、図１の「ｎ」「ｍ」は、任意の自然数である。
【００１２】
なお、分散ファイルマスタ４００を「分散装置」とも称する。データネットワーク１０を「第１のネットワーク」とも称する。制御ネットワーク２０を「第２のネットワーク」とも称する。ｍ個の分散ファイルワーカ３００を「サーバ群」や「大規模な分散ファイルシステム」とも称する。
【００１３】
死活監視サーバ１００は、ｍ個の分散ファイルワーカ３００各々の死活監視を行う。具体的には、死活監視サーバ１００は、ｍ個の分散ファイルワーカ３００各々について、データの送受信が可能な状態であるか否かや、動作しているか否かなどを監視する。より詳細には、死活監視サーバ１００は、データネットワーク１０を介して死活監視用データを送信し、制御ネットワーク２０を介して監視結果を通知する。死活監視サーバ１００の詳細については後述する。なお、死活監視サーバ１００による死活監視対象となる分散ファイルワーカ３００は、例えば、分散ファイルマスタ４００により通知される。
【００１４】
ｎ個の死活監視サブサーバ２００は、死活監視サーバ１００とマスタ・スレーブ関係を有する死活監視サーバである。例えば、死活監視サーバ１００が動作しなくなった場合に、ｎ個ある死活監視サブサーバ２００のうち任意の１つの死活監視サブサーバ２００が、マスタとして死活監視を行う。なお、死活監視サーバ１００とｎ個の死活監視サブサーバ２００との間におけるマスタ・スレーブ関係は、公知の技術を用いて実現して良い。
【００１５】
ｍ個の分散ファイルワーカ３００各々は、分散ファイルマスタ４００との間でデータネットワーク１０を介してデータ通信を行う。ｍ個の分散ファイルワーカ３００各々は、分散ファイルマスタ４００により割り振られた処理を行う。分散ファイルワーカ３００各々は、例えば、公知のサーバを用いて実現される。また、新たな分散ファイルワーカ３００がデータネットワーク１０と制御ネットワーク２０とに接続されると、新たに接続された分散ファイルワーカ３００は、自装置が動作していることを制御ネットワーク２０を介して分散ファイルマスタ４００に通知する。
【００１６】
分散ファイルマスタ４００は、分散ファイルワーカ３００との間でデータネットワーク１０を介してデータ通信を行う。分散ファイルマスタ４００は、サーバ群に含まれるサーバ各々に任意の処理を分散させて実行させる。具体的には、分散ファイルマスタ４００は、ｍ個の分散ファイルワーカ３００各々に処理を割り当てることで、任意の処理を実行する。例えば、分散ファイルマスタ４００は、動作していると通知があった分散ファイルワーカ３００各々に対して、処理を割り当てる。また、分散ファイルマスタ４００は、死活監視サーバ１００に問い合わせたり、死活監視サーバ１００からの通知を受信したりすることで、ｍ個ある分散ファイルワーカ３００各々のうち障害が発生している分散ファイルワーカ３００を判断する。なお、分散ファイルマスタ４００は、障害が発生していると判断した分散ファイルワーカ３００については、復旧するまで処理を割り当てない。言い換えると、分散ファイルマスタ４００は、制御ネットワーク２０を介して処理の割当先を切り替える切替処理を実行する。
【００１７】
なお、分散ファイルマスタ４００は、例えば、分散ファイルワーカ３００が動作していないことが制御ネットワーク２０を介して通知されると、通知された分散ファイルワーカ３００に係る管理情報を削除する。また、分散ファイルマスタ４００は、新たに分散ファイルワーカ３００がデータネットワーク１０に接続され、データネットワーク１０を介して通知を受信した場合には、制御ネットワーク２０を介して死活監視サーバ１００にその旨を通知する。その後、死活監視サーバ１００は、通知された分散ファイルワーカ３００の死活監視を開始する。
【００１８】
分散ファイルマスタ４００は、例えば、公知のサーバを用いて実現される。また、分散ファイルマスタ４００に障害が発生した場合には、ｍ個ある分散ファイルワーカ３００のうち任意の分散ファイルワーカ３００が、分散ファイルマスタ４００として処理を実行する。分散ファイルマスタ４００とｍ個の分散ファイルワーカ３００との関係は、公知の技術を用いて実現して良い。
【００１９】
ここで、データネットワーク１０と制御ネットワーク２０とについて補足する。データネットワーク１０と制御ネットワーク２０とは、別個のネットワークであり、例えば、別個の回線である。また、データネットワーク１０は、例えば、分散ファイルマスタ４００と分散ファイルワーカ３００間におけるデータ処理用のデータが送受信される。また、制御ネットワーク２０は、例えば、障害が発生したサーバの通知に用いられる。ここで、制御ネットワーク２０は、分散ファイルマスタ４００と分散ファイルワーカ３００との間におけるデータ処理用のデータの送受信には用いられない結果、ネットワークの帯域混雑による影響を受けることがデータネットワーク１０と比較して少なく、各種の制御データを迅速に送受信可能となる。この結果、データネットワーク１０とは別の制御ネットワーク２０を介して制御データを送受信することで、瞬時の制御を実現可能となる。
【００２０】
［死活監視サーバの構成］
図２は、実施形態１に係る死活監視サーバの構成の一例について説明するためのブロック図である。図２に示す例では、死活監視サーバ１００は、入出力部１０１と、記憶部１１０と、制御部１２０とを有する。
【００２１】
入出力部１０１は、制御部１２０と接続される。入出力部１０１は、各種の情報を受け付け、受け付けた情報を制御部１２０に入力する。また、入出力部１０１は、制御部１２０から情報を受け付け、受け付けた情報を出力する。入出力部１０１によって受け付けられたり出力されたりする情報については、後述する。
【００２２】
記憶部１１０は、制御部１２０と接続される。記憶部１１０は、制御部１２０による各種処理に用いるデータを記憶する。記憶部１１０は、例えば、ＲＡＭ（Ｒａｎｄｏｍ  Ａｃｃｅｓｓ  Ｍｅｍｏｒｙ）やＲＯＭ（Ｒｅａｄ  Ｏｎｌｙ  Ｍｅｍｏｒｙ）、フラッシュメモリ（Ｆｌａｓｈ  Ｍｅｍｏｒｙ）などの半導体メモリ素子、又は、ハードディスクや光ディスクなどである。
【００２３】
制御部１２０は、入出力部１０１と記憶部１１０と接続される。制御部１２０は、各種の処理手順などを規定したプログラムを記憶する内部メモリを有し、種々の処理を制御する。制御部１２０は、例えば、ＡＳＩＣ（Ａｐｐｌｉｃａｔｉｏｎ  Ｓｐｅｃｉｆｉｃ  Ｉｎｔｅｇｒａｔｅｄ  Ｃｉｒｃｕｉｔ）、ＦＰＧＡ（Ｆｉｅｌｄ  Ｐｒｏｇｒａｍｍａｂｌｅ  Ｇａｔｅ  Ａｒｒａｙ）、ＣＰＵ（Ｃｅｎｔｒａｌ  Ｐｒｏｃｅｓｓｉｎｇ  Ｕｎｉｔ）、ＭＰＵ（Ｍｉｃｒｏ  Ｐｒｏｃｅｓｓｉｎｇ  Ｕｎｉｔ）などである。図２に示す例では、制御部１２０は、監視部１２１と、送信部１２２と、通知部１２３とを有する。
【００２４】
監視部１２１は、図３の（２）に示すように、サーバ群に含まれるサーバ各々について、データの送受信が行われているか否かを監視する。図３は、実施形態１に係る死活監視サーバの構成の一例について説明するための図である。なお、図３の（１）に示すように、分散ファイルマスタ４００と分散ファイルワーカ３００とは、データネットワーク１０を介してデータ通信を行う。
【００２５】
監視部１２１の説明に戻る。監視部１２１は、ｍ個ある分散ファイルワーカ３００各々について、データネットワーク１０を介したデータの送受信が行われているか否かを監視する。例えば、監視部１２１は、データネットワーク１０を形成するルータからデータの送受信に関する情報を受信したり、データネットワーク１０を流れるデータをモニタしたり、他の公知の手法を用いたりすることで、データの送受信の有無を監視する。すなわち、監視部１２１は、データネットワーク１０上の分散ファイルマスタ４００と分散ファイルワーカ３００間のデータの流れを監視（スヌープ）する。
【００２６】
送信部１２２は、監視部１２１によりデータの送受信が行われていないとの監視結果が得られた場合に、図３の（３）に示すように、データの送受信に用いられる第１のネットワークを介して、監視結果が得られたサーバに死活監視用データを送信する。例えば、送信部１２２は、死活監視用データを１度送信する。
【００２７】
より詳細な一例をあげて説明すると、送信部１２２は、所定の期間内にデータの流れがない分散ファイルワーカ３００に対して、データネットワーク１０を介して、死活監視用データとしてＫｅｅｐＡｌｉｖｅパケットを送信する。
【００２８】
通知部１２３は、送信部１２２により送信された死活監視用データに対する応答がない場合に、図３の（４）に示すように、死活監視通知を行う。つまり、通知部１２３は、第１のネットワークとは別の第２のネットワークを介して、サーバ群に含まれるサーバ各々に任意の処理を分散させて実行させる分散装置に、応答がなかったサーバを通知する。例えば、通知部１２３は、送信部１２２により１度送信された死活監視用データに対する応答がない場合に、分散装置に通知する。
【００２９】
より詳細な一例をあげて説明すると、通知部１２３は、分散ファイルワーカ３００から応答となるＨｅａｒＢｅａｔメッセージがない場合には、送信部１２２によりＫｅｅｐＡｌｉｖｅパケットが再送されることなく、直ちに、制御ネットワーク２０を介して分散ファイルマスタ４００に分散ファイルワーカ３００に障害が発生していることを通知する。
【００３０】
このように、実施形態１における死活監視サーバ１００は、データの送受信が行われていないにもかかわらず、死活監視用データに対する応答がない場合には、データネットワーク１０に障害が発生していたり、分散ファイルワーカ３００に障害が発生していたりすると判断し、制御ネットワーク２０を介して直ちに分散ファイルマスタ４００に通知する。この結果、データネットワーク１０に障害が発生したり、分散ファイルワーカ３００に障害が発生したりした場合には、分散ファイルマスタ４００において、制御ネットワーク２０を介した切替処理が迅速に実行されることになる。
【００３１】
［死活監視サーバによる処理］
図４は、実施形態１に係る死活監視サーバによる処理の流れの一例を説明するためのフローチャートである。死活監視サーバ１００では、監視部１２１が、分散ファイルワーカ３００によるデータの送受信があるかを監視している。つまり、監視部１２１は、サーバ群に含まれるサーバ各々について、データの送受信が行われているか否かを監視している。
【００３２】
ここで、図４に示すように、死活監視サーバ１００の送信部１２２は、データの送受信がない場合には（ステップＳ１０１否定）、死活監視用データをデータネットワーク１０を介して送信する（ステップＳ１０２）。つまり、送信部１２２は、監視部１２１によりデータの送受信が行われていないとの監視結果が得られた場合に、データの送受信に用いられるデータネットワーク１０を介して、データの送受信が行われていないとの監視結果が得られたサーバに死活監視用データを送信する。
【００３３】
そして、送信部１２２により送信された死活監視用データに対する応答がある場合には（ステップＳ１０３肯定）、通知部１２３は、分散ファイルマスタ４００に通知しない（ステップＳ１０４）。一方、送信部１２２により送信された死活監視用データに対する応答がない場合に（ステップＳ１０３否定）、通知部１２３は、制御ネットワーク２０を介して、分散ファイルマスタ４００に応答がなかった分散ファイルワーカ３００を通知する（ステップＳ１０５）。
【００３４】
なお、上記の処理手順は、上記の順番に限定されるものではなく、処理内容を矛盾させない範囲で適宜変更しても良い。例えば、ステップＳ１０３において、送信部１２２により送信された死活監視用データに対する応答がある場合に、応答があった旨を分散ファイルマスタ４００に通知しても良い。
【００３５】
［実施形態１の効果］
上述したように、実施形態１によれば、死活監視サーバ１００は、分散ファイルワーカ３００各々について、データの送受信が行われているか否かを監視する。また、死活監視サーバ１００は、データの送受信が行われていないとの監視結果が得られた場合に、データの送受信に用いられるデータネットワーク１０を介して、データの送受信が行われていないとの監視結果が得られた分散ファイルワーカ３００に対して、死活監視用データを送信する。そして、死活監視サーバ１００は、死活監視用データに対する応答がない場合に、制御ネットワーク２０を介して、分散ファイルマスタ４００に、応答がなかった分散ファイルワーカ３００を通知する。この結果、死活監視を確実かつ迅速に実行可能となる。
【００３６】
例えば、データの送受信に用いられるデータネットワークとは別のネットワークを介して通知する結果、データネットワークの混雑状況にかかわらず、迅速かつ確実に通知可能となる。また、例えば、データネットワークにおける通信量の増加を抑えることも可能となる。より詳細な一例をあげて説明すると、死活監視用データが１ｋｂｙｔｅ、分散ファイルワーカ３００が１０００台ある場合には、分散ファイルワーカ３００各々に一度死活監視用データを送信するだけで、８Ｍｂｉｔ（１ｋｂｙｔｅ×８×１０００＝８Ｍｂｉｔ）必要なことになる。また、分散ファイルワーカ３００の台数が増えれば増えるほど、死活監視用データの送信に要するデータ量は多くなる。実施形態１によれば、死活監視用データは何度も送信されない結果、死活監視に要するデータを抑えることができ、データネットワーク１０に対する負荷を軽減することが可能となる。
【００３７】
また、例えば、多数のサーバにより処理が分散されて実行される大規模な分散ファイルシステム環境下においても、いずれのサーバが活きているのかを迅速かつ確実に把握でき、性能の良い分散ファイル制御を実現可能となり、分散ファイルシステムの管理を容易とすることが可能となる。
【００３８】
また、実施形態１によれば、死活監視サーバ１００は、死活監視用データを１度送信し、１度送信された死活監視用データに対する応答がない場合に通知する。この結果、データの送受信がないにもかかわらず死活監視用データに応答がない場合に、直ぐに障害発生と検知するので、何度も死活監視用データを送信する手法と比較して、迅速に障害を検出可能となる。
【００３９】
また、例えば、データの送受信がない場合に死活監視用データを送信して死活監視を実行するので、死活監視用データが１度しか送信しなくても、死活監視を確実に実行可能である。また、死活監視用データが１度しか送信しなくても、死活監視を確実に行いつつ、データネットワークに対する影響を最小限とすることが可能である。
【００４０】
また、例えば、死活監視用データの再送を行わず、制御ネットワーク２０を介して通知することで、死活監視に関連して送受信されるデータ量を少なくでき、迅速な死活監視も可能となる。より詳細な一例をあげて説明すると、死活監視に関連して送受信されるデータ量を最大で５分の１にすることができ、死活監視に要する時間を１８０分の１にすることが可能である。すなわち、今までは１０秒，２０秒，４０秒，８０秒，１６０秒と３分（１８０秒）の間に死活監視用データを繰り返し送信することで、管理していたが、本方式では１回のみで、それ以外の死活監視用データを送信しないことで実現が可能となる。
【００４１】
さて、これまで実施形態１について説明したが、上述した実施形態以外にも、その他の実施形態にて実施されても良い。そこで、以下では、その他の実施形態を示す。
【００４２】
［分散ファイルワーカの状態］
例えば、上述した実施形態では、データネットワーク１０を介して送信された死活監視用データに応答がない場合に、直ちに分散ファイルマスタ４００に通知する場合について説明したが、これに限定されるものではない。
【００４３】
例えば、送信部１２２は、データネットワーク１０を介して送信した死活監視用データに対する応答がない場合に、応答がなかったサーバに対して制御ネットワーク２０を介して死活監視用データを送信しても良い。また、通知部１２３は、制御ネットワーク２０を介して送信された死活監視用データに対する応答がある場合には、データネットワーク１０に障害がある旨を通知し、制御ネットワーク２０を介して送信された死活監視用データに対する応答がない場合には、データネットワーク１０及び制御ネットワーク２０に障害がある旨、又は、サーバが使用不可な旨を通知しても良い。この結果、サーバの状況を正確に把握可能となる。
【００４４】
図５は、サーバの状況を把握する場合における死活監視サーバによる処理の流れの一例を説明するためのフローチャートである。なお、図５に示す一連の処理のうち、ステップＳ２０１〜Ｓ２０４は、図４におけるステップＳ１０１〜Ｓ１０４と同様であり、説明を省略する。
【００４５】
図５に示すように、死活監視サーバ１００では、送信部１２２により送信された死活監視用データに対する応答がない場合に（ステップＳ２０３否定）、送信部１２２は、死活監視用データを制御ネットワーク２０を介して送信する（ステップＳ２０５）。つまり、送信部１２２は、データネットワーク１０を介して送信した死活監視用データに対する応答がない場合に、応答がなかった分散ファイルワーカ３００に対して制御ネットワーク２０を介して死活監視用データを送信する。
【００４６】
そして、通知部１２３は、制御ネットワーク２０を介して送信された死活監視用データに対する応答がある場合には（ステップＳ２０６肯定）、データネットワーク１０に障害ありと分散ファイルマスタ４００に通知する（ステップＳ２０７）。一方、通知部１２３は、制御ネットワーク２０を介して送信された死活監視用データに対する応答がない場合には（ステップＳ２０６否定）、データネットワーク１０及び制御ネットワーク２０に障害がある旨、又は、サーバが使用不可な旨を通知する（ステップＳ２０８）。
【００４７】
なお、上記の処理手順は、上記の順番に限定されるものではなく、処理内容を矛盾させない範囲で適宜変更しても良い。例えば、上記のステップＳ２０２をＳ２０４の後に実行しても良い。
【００４８】
［死活監視用データを送信するネットワーク］
また、例えば、上述した実施形態１では、死活監視用データをデータネットワーク１０を介して送信する場合について説明した。ただし、限定されるものではく、制御ネットワーク２０を介して送信しても良い。図６は、死活監視用データを制御ネットワークを介して送信する場合について説明するための図である。
【００４９】
図６の（１）に示すように、送信部１２２は、データネットワーク１０に障害が発生している場合に、図６の（２）に示すように、制御ネットワーク２０を介して死活監視用データを送信する。つまり、データネットワーク１０を迂回して制御ネットワーク２０を介して送信する。その後、通知部１２３は、送信部１２２により制御ネットワーク２０を介して送信された死活監視用データに対する応答がない場合に、制御ネットワーク２０を介して分散ファイルマスタ４００に通知する。この結果、データネットワーク１０に障害が発生している場合でも、死活監視を確実に実行可能となる。
【００５０】
［システム構成］
また、本実施形態において説明した各処理のうち、自動的に行われるものとして説明した処理の全部又は一部を手動的に行うこともでき、あるいは、手動的に行われるものとして説明した処理の全部又は一部を公知の方法で自動的に行うこともできる。この他、上述文書中や図面中で示した処理手順、制御手順、具体的名称、各種のデータやパラメータを含む情報（図１〜図６）については、特記する場合を除いて任意に変更することができる。
【００５１】
また、図示した各装置の各構成要素は機能概念的なものであり、必ずしも物理的に図示の如く構成されていることを要しない。すなわち、各装置の分散・統合の具体的形態は図示のものに限られず、その全部又は一部を、各種の負荷や使用状況などに応じて、任意の単位で機能的又は物理的に分散・統合して構成することができる。例えば、死活監視サーバ１００の記憶部１１０を別装置とし、ネットワーク経由で接続されて協働するようにしても良い。
【００５２】
［プログラム］
図７は、一連の処理を実行するためのプログラムによる情報処理がコンピュータを用いて具体的に実現されることを示す図である。図７に例示するように、コンピュータ３０００は、例えば、メモリ３０１０と、ＣＰＵ（Ｃｅｎｔｒａｌ  Ｐｒｏｃｅｓｓｉｎｇ  Ｕｎｉｔ）３０２０と、ネットワークインタフェース３０７０と、ハードディスクドライブ３０８０とを有する。コンピュータ３０００の各部はバス３１００によって接続される。
【００５３】
メモリ３０１０は、図７に例示するように、ＲＯＭ３０１１及びＲＡＭ３０１２を含む。ＲＯＭ３０１１は、例えば、ＢＩＯＳ（Ｂａｓｉｃ  Ｉｎｐｕｔ  Ｏｕｔｐｕｔ  Ｓｙｓｔｅｍ）等のブートプログラムを記憶する。
【００５４】
ここで、図７に例示するように、ハードディスクドライブ３０８０は、例えば、ＯＳ３０８１、アプリケーションプログラム３０８２、プログラムモジュール３０８３、プログラムデータ３０８４を記憶する。すなわち、開示の技術に係る更新プログラムは、コンピュータによって実行される指令が記述されたプログラムモジュール３０８３として、例えばハードディスクドライブ３０８０に記憶される。具体的には、上記実施形態で説明した制御部１２０の各部と同様の情報処理を実行する手順各々が記述されたプログラムモジュールが、ハードディスクドライブ３０８０に記憶される。
【００５５】
また、上死活監視プログラムによる情報処理に用いられるデータは、プログラムデータ３０８４として、例えばハードディスクドライブ３０８０に記憶される。そして、ＣＰＵ３０２０が、ハードディスクドライブ３０８０に記憶されたプログラムモジュール３０８３やプログラムデータ３０８４を必要に応じてＲＡＭ３０１２に読み出し、各種の手順を実行する。
【００５６】
なお、死活監視プログラムに係るプログラムモジュール３０８３やプログラムデータ３０８４は、ハードディスクドライブ３０８０に記憶される場合に限られない。例えば、プログラムモジュール３０８３やプログラムデータ３０８４は、着脱可能な記憶媒体に記憶されても良い。この場合、ＣＰＵ３０２０は、ディスクドライブなどの着脱可能な記憶媒体を介してデータを読み出す。また、同様に、死活監視プログラムに係るプログラムモジュール３０８３やプログラムデータ３０８４は、ネットワーク（ＬＡＮ（Ｌｏｃａｌ  Ａｒｅａ  Ｎｅｔｗｏｒｋ）、ＷＡＮ（Ｗｉｄｅ  Ａｒｅａ  Ｎｅｔｗｏｒｋ）等）を介して接続された他のコンピュータに記憶されても良い。この場合、ＣＰＵ３０２０は、ネットワークインタフェースを介して他のコンピュータにアクセスすることで各種データを読み出す。
【００５７】
［その他］
なお、本実施形態で説明した死活監視プログラムは、インターネットなどのネットワークを介して配布することができる。また、死活監視プログラムは、ハードディスク、フレキシブルディスク（ＦＤ）、ＣＤ−ＲＯＭ、ＭＯ、ＤＶＤなどのコンピュータで読み取り可能な記録媒体に記録され、コンピュータによって記録媒体から読み出されることによって実行することもできる。
【符号の説明】
【００５８】
１０        データネットワーク
２０        制御ネットワーク
１００      死活監視サーバ
１０１      入出力部
１１０      記憶部
１２０      制御部
１２１      監視部
１２２      送信部
１２３      通知部
２００      死活監視サブサーバ
３００      分散ファイルワーカ
４００      分散ファイルマスタ
【図１】
0005727404.tif 000002
【図２】
0005727404.tif 000003
【図３】
0005727404.tif 000004
【図４】
0005727404.tif 000005
【図５】
0005727404.tif 000006
【図６】
0005727404.tif 000007
【図７】
0005727404.tif 000008