(19)【発行国】日本国特許庁(JP)
(12)【公報種別】公開特許公報(A)
(11)【公開番号】P2024018784
(43)【公開日】2024-02-08
(54)【発明の名称】情報処理装置、情報処理システム、情報処理方法、及びプログラム
(51)【国際特許分類】
G06F 11/34 20060101AFI20240201BHJP
G06F 11/07 20060101ALI20240201BHJP
【FI】
G06F11/34 152
G06F11/07 151
G06F11/07 140A
【審査請求】未請求
【請求項の数】10
【出願形態】OL
(21)【出願番号】P 2022122319
(22)【出願日】2022-07-29
(71)【出願人】
【識別番号】000004237
【氏名又は名称】日本電気株式会社
(74)【代理人】
【識別番号】100103894
【弁理士】
【氏名又は名称】家入 健
(72)【発明者】
【氏名】中嶋 卓也
【テーマコード(参考)】
5B042
【Fターム(参考)】
5B042JJ06
5B042JJ29
5B042MA08
5B042MA14
5B042MC22
(57)【要約】
【課題】障害予兆を適切に検知することが可能な情報処理装置を提供すること。
【解決手段】本開示にかかる情報処理装置101は、障害の検知対象である検知対象装置の状態に関する状態情報を取得する取得部102と、状態情報と、検知対象装置の障害に関する障害情報と、を比較して障害の予兆を検知する予兆検知部103と、予兆が検知された場合に、予兆に関する障害予兆情報をサーバに送信する送信部104と、を備える。
【選択図】
図1
【特許請求の範囲】
【請求項1】
障害の検知対象である検知対象装置の状態に関する状態情報を取得する取得部と、
前記状態情報と、前記検知対象装置の障害に関する障害情報と、を比較して前記障害の予兆を検知する予兆検知部と、
前記予兆が検知された場合に、前記予兆に関する障害予兆情報をサーバに送信する送信部と、を備える
情報処理装置。
【請求項2】
前記送信部は、前記検知対象装置に障害が発生した場合、当該障害に関する障害発生情報を前記サーバに送信する
請求項1に記載の情報処理装置。
【請求項3】
前記障害情報は予め保持されており、
前記障害が発生した場合、前記サーバから取得したデータに応じて、前記障害情報を更新する更新部をさらに備える
請求項1又は2に記載の情報処理装置。
【請求項4】
前記障害情報は、前記情報処理装置と対応付けられた前記検知対象装置の障害に関する情報を含み、前記情報処理装置と対応付けられていない前記検知対象装置の障害に関する情報を含まない
請求項1又は2に記載の情報処理装置。
【請求項5】
前記検知対象装置は、プロセッサ、主記憶装置、及び補助記憶装置の少なくともいずれか1つを含む
請求項1又は2に記載の情報処理装置。
【請求項6】
前記状態情報は、前記検知対象装置の温度、データの読み込み回数、データの書き込み回数、及びエラー情報の少なくともいずれか1つを含む
請求項1又は2に記載の情報処理装置。
【請求項7】
情報処理装置と、
サーバと、を備え
前記情報処理装置は、
障害の検知対象である検知対象装置の状態に関する状態情報を取得する取得部と、
前記状態情報と、前記検知対象装置の障害に関する障害情報と、を比較して前記障害の予兆を検知する予兆検知部と、
前記予兆が検知された場合に、前記予兆に関する障害予兆情報を前記サーバに送信する送信部と、を有する
情報処理システム。
【請求項8】
前記送信部は、前記検知対象装置に障害が発生した場合、当該障害に関する障害発生情報を前記サーバに送信する
請求項7に記載の情報処理システム。
【請求項9】
コンピュータが、
障害の検知対象である検知対象装置の状態に関する状態情報を取得する取得ステップと、
前記状態情報と、前記検知対象装置の障害に関する障害情報と、を比較して前記障害の予兆を検知する予兆検知ステップと、
前記予兆が検知された場合に、前記予兆に関する障害予兆情報をサーバに送信する送信ステップと、を実行する
情報処理方法。
【請求項10】
障害の検知対象である検知対象装置の状態に関する状態情報を取得する取得ステップと、
前記状態情報と、前記検知対象装置の障害に関する障害情報と、を比較して前記障害の予兆を検知する予兆検知ステップと、
前記予兆が検知された場合に、前記予兆に関する障害予兆情報をサーバに送信する送信ステップと、をコンピュータに実行させる
プログラム。
【発明の詳細な説明】
【技術分野】
【0001】
本開示は、情報処理装置、情報処理システム、情報処理方法、及びプログラムに関する。
【背景技術】
【0002】
複数の装置で測定される情報を用いて、各装置に障害又はその予兆が発生しているか否かを監視する技術が知られている。関連する技術として、特許文献1は、複数の情報処理装置から受信した監視情報を分析し、それぞれの情報処理装置に異常の予兆があるか否かを判定する監視用情報処理装置を開示する。
【先行技術文献】
【特許文献】
【0003】
【発明の概要】
【発明が解決しようとする課題】
【0004】
特許文献1が開示するような技術を用いて、複数の装置を専用のサーバで監視するとする。当該サーバは、所定の情報を複数の装置から受信し、受信した情報を分析することで各装置の障害予兆の検知を行う。これにより、サーバは複数の装置を一元的に管理することができる。しかしながら、当該サーバに障害が発生した場合、サーバが管理する複数の装置に関する予兆検知を行うことができない状況に陥るおそれがある。
【0005】
本開示の目的は、上述した課題を鑑み、障害予兆を適切に検知することが可能な情報処理装置、情報処理システム、情報処理方法、及びプログラムを提供することにある。
【課題を解決するための手段】
【0006】
本開示にかかる情報処理装置は、
障害の検知対象である検知対象装置の状態に関する状態情報を取得する取得部と、
前記状態情報と、前記検知対象装置の障害に関する障害情報と、を比較して前記障害の予兆を検知する予兆検知部と、
前記予兆が検知された場合に、前記予兆に関する障害予兆情報をサーバに送信する送信部と、を備えるものである。
【0007】
本開示にかかる情報処理システムは、
情報処理装置と、
サーバと、を備え
前記情報処理装置は、
障害の検知対象である検知対象装置の状態に関する状態情報を取得する取得部と、
前記状態情報と、前記検知対象装置の障害に関する障害情報と、を比較して前記障害の予兆を検知する予兆検知部と、
前記予兆が検知された場合に、前記予兆に関する障害予兆情報を前記サーバに送信する送信部と、を有するものである。
【0008】
本開示にかかる情報処理方法は、
コンピュータが、
障害の検知対象である検知対象装置の状態に関する状態情報を取得する取得ステップと、
前記状態情報と、前記検知対象装置の障害に関する障害情報と、を比較して前記障害の予兆を検知する予兆検知ステップと、
前記予兆が検知された場合に、前記予兆に関する障害予兆情報をサーバに送信する送信ステップと、を実行するものである。
【0009】
本開示にかかるプログラムは、
障害の検知対象である検知対象装置の状態に関する状態情報を取得する取得ステップと、
前記状態情報と、前記検知対象装置の障害に関する障害情報と、を比較して前記障害の予兆を検知する予兆検知ステップと、
前記予兆が検知された場合に、前記予兆に関する障害予兆情報をサーバに送信する送信ステップと、をコンピュータに実行させるものである。
【発明の効果】
【0010】
本開示にかかる情報処理装置、情報処理システム、情報処理方法、及びプログラムは、障害予兆を適切に検知することができる。
【図面の簡単な説明】
【0011】
【
図1】実施形態1にかかる情報処理装置の構成を示すブロック図である。
【
図2】実施形態2にかかる情報処理システムの構成を示すブロック図である。
【
図3】実施形態2にかかる分析サーバの構成を示すブロック図である。
【
図4】実施形態2にかかる障害情報の一例を示す図である。
【
図5】実施形態2にかかる装置情報の一例を示す図である。
【
図6】実施形態2にかかるモジュールの構成を示すブロック図である。
【
図7】実施形態2にかかる情報処理システムにおいて各装置が保持する障害情報の一例を示す図である。
【
図8】実施形態2にかかるモジュールが行う予兆検知処理を模式的に示す図である。
【
図9】実施形態2にかかるモジュールが行う予兆検知処理を示すフローチャートである。
【
図10】実施形態2にかかるモジュール及び分析サーバが実行する処理を模式的に示す図である。
【
図11】実施形態2にかかるモジュールが行う障害検知処理を示すフローチャートである。
【
図12】実施形態2にかかる分析サーバが行う障害情報の更新制御処理を示すフローチャートである。
【
図13】実施形態2にかかるモジュールが行う障害情報の更新処理を示すフローチャートである。
【
図14】情報処理装置等を実現するコンピュータのハードウエア構成を例示するブロック図である。
【発明を実施するための形態】
【0012】
以下では、本開示の実施形態について、図面を参照しながら詳細に説明する。各図面において、同一又は対応する要素には同一の符号が付されている。説明の明確化のため、必要に応じて重複説明は省略される。
【0013】
<実施形態1>
図1を参照して、実施形態1について説明する。
図1は、本実施形態にかかる情報処理装置101の構成を示すブロック図である。図に示されるように、情報処理装置101は、取得部102、予兆検知部103、及び送信部104を備えている。
【0014】
取得部102は、障害の検知対象である検知対象装置の状態に関する状態情報を取得する。予兆検知部103は、状態情報と、検知対象装置の障害に関する障害情報と、を比較して障害の予兆を検知する。送信部104は、予兆が検知された場合に、予兆に関する障害予兆情報をサーバに送信する。サーバは、例えば、障害予兆情報を用いてユーザへの報知を行う。
【0015】
以上説明したように、本実施形態にかかる情報処理装置101によれば、予兆検知部103は、状態情報と障害情報とを比較して、障害の予兆を検知することができる。また送信部104は、予兆が検知された場合に障害予兆情報をサーバに送信する。このようにすることで、情報処理装置101は、障害予兆を適切に検知することを可能とする。
【0016】
<実施形態2>
続いて、
図2を参照して、実施形態2について説明する。実施形態2は、上述した実施形態1の具体例である。
図2は、本実施形態にかかる情報処理システム1000の構成を示すブロック図である。
【0017】
(情報処理システム1000の構成)
図2に示されるように、情報処理システム1000は、分析サーバ20と、分析サーバ20に接続される複数の装置100a~100cと、を備えている。本実施形態では、3つの装置100a~100cを用いて説明するが、装置の数は3つに限定されない。
【0018】
情報処理システム1000は、所定の情報処理を行うことで、複数の装置の一部又は全部に発生した障害予兆を検知することが可能な情報処理システムである。以下では、障害予兆を単に「予兆」と称して説明する場合がある。また情報処理システム1000は、予兆に加え、障害の発生を検知することができる。
【0019】
装置100a~100cは、例えば、パーソナルコンピュータ又はサーバコンピュータなどの情報処理装置である。装置100a~100cは、図示しない他の装置などと接続されていてもよい。例えば、装置100a~100cは、スイッチングハブ又はルータなどのネットワーク機器であってもよい。これらは一例であるので、装置100a~100cとして種々の装置が用いられ得る。
【0020】
複数の装置100a~100cと分析サーバ20とは、ネットワークを用いて接続されている。ネットワークは、有線であってもよいし、無線であってもよい。また、装置100a~100cのそれぞれが互いに接続されていてもよい。
【0021】
分析サーバ20は、装置100a~100cから受信したデータを分析する情報処理装置である。例えば、分析サーバ20は、装置100a~100cが備える検知対象装置の障害に関する障害情報を分析する。分析サーバ20は、例えば、パーソナルコンピュータ又はサーバコンピュータなどの情報処理装置である。
【0022】
ここで、検知対象装置は、情報処理システム1000において、障害予兆の検知対象である装置を示している。検知対象装置は、障害予兆だけでなく、障害発生の検知対象となり得る。検知対象装置は、例えば、プロセッサ、主記憶装置、又は補助記憶装置などである。本実施形態では、装置100a~100cは、検知対象装置として、これら全てを備えている。なお、これらに限らず、装置100a~100cは、種々の装置を検知対象装置として備えてもよい。例えば、装置100a~100cは、入力装置、出力装置、バス、入出力インタフェース、ネットワークインタフェース、又はその他の装置を検知対象装置として備えてもよい。装置100a~100cは、検知対象装置として、これらのうち少なくともいずれか1つを含むように構成されてもよいし、これらのうち2つ以上を含むように構成されてもよい。
【0023】
図2に示されるように、本実施形態では、装置100a~100cは、HDD(Hard Disk Drive)、メモリ、及びCPU(Central Processing Unit)を検知対象装置として備えている。装置100a~100cは、HDD、メモリ、及びCPUを備えている点で共通する。しかしながら、装置100a~100cは、それぞれ異なる組み合わせの検知対象装置を備えており、物理構成は異なっている。
【0024】
図2の例では、装置100aは、HDD1A、メモリ2A、及びCPU3Bを備えている。装置100bは、HDD1B、メモリ2A、及びCPU3Bを備えている。装置100cは、HDD1A、メモリ2B、及びCPU3Aを備えている。なお、これらは一例であり、検知対象装置の組み合わせは任意である。
【0025】
装置100aと装置100bとは、メモリ2A及びCPU3Bを備える点で共通の構成を備えている。しかしながら、装置100aはHDD1A、装置100bはHDD1Bを備える点で構成が異なっている。このように、装置100a~100cは、組み合わせは異なるものの、共通する検知対象装置を備えている。
【0026】
また、装置100a~100cは、上述した検知対象装置のほか、モジュール10a~10cをそれぞれ備えている。モジュール10a~10cのそれぞれは、上述した情報処理装置101の一例である。モジュール10a~10cは、それぞれ同様の構成を備えている。以下の説明では、モジュール10a~10cのそれぞれを単に「モジュール10」と称して説明する場合がある。また同様に、装置100a~100cのそれぞれを単に「装置100」と称して説明する場合がある。
【0027】
なお、
図2では、装置100a~100cの内部にモジュール10a~10cが設けられている例を示しているが、これに限られない。モジュール10a~10cは、装置100a~100cの外部に設けられてもよい。また、モジュール10a~10cは、1つの装置に複数設けられてもよい。モジュール10a~10cは、装置100a~100cに外付け可能に構成されてもよいし、そうでなくともよい。モジュール10a~10cは、例えば、パーソナルコンピュータなどを用いて構成されてもよい。
【0028】
分析サーバ20は、装置100a~100cから取得したデータを分析した結果、得られた障害情報を記憶する。
図2では、分析サーバ20が備えるデータベースに、障害情報291として記憶される例を示している。障害情報291は、分析サーバ20に予め記憶され得る。また、分析サーバ20は、障害情報291を適宜更新し得る。なお、
図2では障害情報291を記憶するデータベースを分析サーバ20の外部に示しているが、当該データベースは分析サーバ20の内部に設けられてもよい。
【0029】
図2に示されるように、障害情報291は、検知対象装置であるHDD1A、HDD1B、メモリ2A、メモリ2B、CPU3A、及びCPU3Bに関する情報を含んでいる。障害情報291及び検知対象装置について、詳細は後述する。
【0030】
(分析サーバ20の構成)
図3を参照して、分析サーバ20の構成について説明する。
図3は、分析サーバ20の構成を示すブロック図である。
図3に示されるように、分析サーバ20は、取得部21、分析部22、更新制御部23、報知部24、通信部25、及び記憶部29を備えている。
【0031】
分析サーバ20は、装置100a~100cからデータを取得し、所定の分析処理を行う情報処理装置である。分析サーバ20は、取得したデータを蓄積し、蓄積したデータを分析する。分析サーバ20は、分析結果である障害情報を装置100a~100cに送信する。また、分析サーバ20は、所定のタイミングで、更新された障害情報を装置100a~100cに送信し、保持されている障害情報を更新させる。
【0032】
取得部21は、検知対象装置の障害に関する情報を装置100a~100cから取得する。障害に関する情報は、例えば、障害予兆に関する障害予兆情報、又は障害発生に関する障害発生情報を含み得る。
【0033】
障害予兆情報は、例えば、障害予兆が検知された検知対象装置の情報及び障害予兆の内容を含み得る。障害発生情報は、障害発生が検知された検知対象装置の情報及び障害発生の内容を含み得る。検知対象装置は、例えば、検知対象装置を識別するための検知対象装置IDなどを用いて表されてもよい。また障害予兆情報及び障害発生情報のそれぞれは、上記以外の情報(例えば、日時情報など)を含んでもよい。
【0034】
分析部22は、取得部21で取得された情報を用いて、検知対象装置の障害に関する分析を行う。分析部22は、例えば、装置100a~100cから取得された複数の障害発生情報を用いて、所定期間における障害発生情報を分析する。分析部22は、過去の障害発生情報に基づいて、障害発生の傾向を求める。分析部22は、例えば、障害発生情報に含まれる検知対象装置の温度、データの書き込み回数、データの読み込み回数、又はエラー情報などを用いて、障害に関する分析を行う。エラー情報は、例えば、検知対象装置で障害が発生した際の日時や内容を示す情報である。エラー情報は、ログファイルに記録されるエラーコードなどであってもよい。
【0035】
分析部22は、障害発生情報だけでなく、所定期間における障害予兆情報をさらに用いて分析を行ってもよい。分析部22は、周知の技術を用いて当該分析を行ってよい。分析部22は、例えば、ディープラーニングを導入したAI(Artificial Intelligence)などを用いて当該分析を行ってもよい。
【0036】
分析部22は、障害発生情報を分析することで、障害情報291を生成する。分析部22は、取得部21が装置100a~100cから新たなデータを取得した場合、障害情報の再分析を行い得る。分析部22は、再分析の結果に応じて、障害情報291を更新する。また分析部22は、更新後の障害情報291に対応する更新障害情報を生成する。
【0037】
更新制御部23は、装置100a~100cのいずれかに障害が発生した場合、装置100a~100cのそれぞれで保持されている障害情報を、更新障害情報を用いて更新させる。このとき、更新制御部23は、装置情報292を参照し、装置100a~100cのうち、障害が発生した検知対象装置と同じものを備えている装置を特定する。
【0038】
例えば、装置100aにおいてHDD1Aに障害が発生したとする。この場合、更新制御部23は、装置100a~100cの中から、HDD1Aを備える装置を特定する。本実施形態では、HDD1Aを備える装置は、装置100a及び装置100cである。更新制御部23は、特定した装置100a及び100cに対して、それぞれが保持する障害情報を更新させるための更新障害情報を送信する。これにより、更新障害情報が送信された装置100a及び100cは、予め保持している障害情報を更新する。
【0039】
報知部24は、装置100a~100cにおいて障害予兆又は障害発生が検知された場合に、ユーザに対する報知を行う。ユーザは、例えば、情報処理システム1000の管理者などであってもよいし、装置100a~100cの少なくともいずれかを管理する者などであってもよい。
【0040】
報知部24は、例えば、図示しない出力部に報知内容を出力させる。出力部は、例えば、ディスプレイなどの表示装置であってもよいし、スピーカなどの音声出力装置であってもよい。これに限らず、出力部は、光や振動などを出力可能に構成されてもよい。また、出力部は、これらのうち2つ以上を含んでもよい。
【0041】
報知部24は、例えば、「装置100aのHDD1Aに障害の予兆があります。」、「装置100bのメモリ2Aに障害が発生しました。」などのメッセージをディスプレイに表示させるための表示情報を生成する。報知部24は、当該メッセージをディスプレイに表示させることでユーザに報知する。これに限らず、報知部24は、電子メールなどを用いてユーザに報知してもよい。
【0042】
このようにすることで、ユーザは、装置100a~100cのいずれかで予兆が検知された場合に、その事実を速やかに把握することができる。これにより、ユーザは、必要な人員を配置する、障害が発生する前に対策を行う、などの対処を行うことができる。また、ユーザは、障害予兆だけでなく、障害発生時においてもその事実を速やかに把握することができる。これにより、発生した障害に速やかに対応することができる。
【0043】
通信部25は、ネットワークとの通信インタフェースである。通信部25は、装置100a~100cのそれぞれとの通信を行う。通信部25は、装置100a~100cのそれぞれから、状態情報、障害予兆情報、及び障害発生情報を受信する受信部として機能する。また、通信部25は、装置100a~100cに対し、障害情報を送信する送信部として機能する。さらに、通信部25は、装置100a~100cのうち、更新制御部23で特定された装置に対し、更新障害情報を送信する送信部としても機能する。
【0044】
記憶部29は、分析サーバ20の各機能を実現するためのプログラムが格納される記憶装置である。また、記憶部29は、障害情報291及び装置情報292を記憶する。
【0045】
ここで、
図4を参照して、障害情報291について説明する。
図4は、障害情報291の一例を示す図である。
図4に示されるように、障害情報291は、検知対象装置情報291aと、障害グラフ291bと、を対応付けた情報である。図に示される障害情報291は一例であるので、障害情報291は他の情報を含んでもよい。
【0046】
検知対象装置情報291aは、検知対象装置を示す情報である。図に示されるように、検知対象装置情報291aは、検知対象装置の種別(HDD、メモリ、及びCPU)と、それぞれの種別をさらに分類する情報(例えば、1A、1B)と、を含み得る。検知対象装置情報291aは、例えば、製品の型番などを用いて、製品ごとに異なるように設定され得る。これに限らず、検知対象装置情報291aは、製造時期、ロット、又は設置環境などの違いに応じて設定されてもよい。
【0047】
障害グラフ291bは、検知対象装置の障害に関する障害情報を示すものである。障害グラフ291bは、複数のモジュール10から送信された複数の障害発生情報に基づいて、分析部22において生成され得る。障害グラフ291bは、図示しない過去のデータを用いて算出され得る。
【0048】
例えば、障害グラフ291bは、所定期間内に発生した、装置100a~100cの障害に関する障害発生情報に基づいて生成され得る。例えば、HDD1Aに関する障害グラフ291bは、所定期間内に、装置100aのHDD1A、及び装置100cのHDD1Aで発生した障害に関する障害情報に基づいて生成される。また、障害グラフ291bは、装置100a及び100c以外の装置が備えるHDD1Aで発生した障害に関する障害情報を加味して生成されてもよい。
【0049】
障害グラフ291bは、例えば、障害が発生した際の状態情報の時間変化を示す情報であってよい。
図4において、障害グラフ291bの横軸は時間tを示し、縦軸は状態情報xを示している。状態情報xは、例えば、検知対象装置の温度、データの書き込み回数、データの読み込み回数、又はエラー情報などであってよい。状態情報xは、これらのうち2つ以上の組み合わせであってもよい。
図4に示されるように、障害グラフ291bは、検知対象装置ごとに生成されている。なお、
図4は一例であるので、障害情報291は、種々の形態を用いて生成されてよい。例えば、障害グラフ291bに代えて、又は障害グラフ291bと共に、所定のテーブルなどが障害情報291として生成されてもよい。
【0050】
なお、障害情報291は、モジュール10a~10cで保持される障害情報と対応している。モジュール10a~10cは、障害情報291のうち、自身が障害予兆又は障害発生を検知する検知対象装置に関する情報を、障害情報として保持する。例えば、モジュール10aは、障害情報291のうち、装置100aが備えるHDD1A、メモリ2A、及びCPU3Bに関する情報を障害情報として保持する。
【0051】
図3に戻り、記憶部29について説明を続ける。装置情報292は、装置100a~100cに関する情報である。装置情報292は、装置100a~100cが備える検知対象装置の情報を含む。
【0052】
ここで、
図5を参照して、装置情報292について説明する。
図5は、装置情報292の一例を示す図である。装置情報292は、例えば、装置100a~100cを識別する装置ID、検知対象装置、及びモジュール10a~10cを識別するモジュールIDを対応付けた情報である。これにより、分析サーバ20は、複数の装置100の中から、特定の検知対象装置を備えている装置を特定することができる。よって、分析サーバ20は、障害が発生した検知対象装置と同じものを備える装置を特定することができる。装置情報292は、例えば管理者等が登録を行うことで、予め記憶部29に記憶され得る。
【0053】
(モジュール10の構成)
続いて、
図6を参照して、モジュール10の構成について説明する。
図6は、モジュール10の構成を示すブロック図である。
図6に示されるように、モジュール10は、取得部11、予兆検知部12、障害検知部13、更新部14、通信部15、及び記憶部19を備えている。
【0054】
モジュール10は、装置100が備える検知対象装置の障害の予兆を検知し、予兆に関する障害予兆情報を分析サーバ20に送信する。また、モジュール10は、装置100が備える検知対象装置の障害の発生を検知し、障害発生に関する障害発生情報を分析サーバ20に送信する。さらに、モジュール10は、分析サーバ20から更新障害情報を受信して、保持している障害情報191を更新する。
【0055】
モジュール10の各機能構成部は、各機能構成部を実現するハードウエア(例:ハードワイヤードされた電子回路など)で実現されてもよい。また、モジュール10は、ハードウエアとソフトウエアとの組み合わせ(例:電子回路とそれを制御するプログラムの組み合わせなど)で実現されてもよい。ハードウエアの構成例について、詳細は後述する。
【0056】
取得部11は、上述した取得部102の一例である。取得部11は、検知対象装置の状態に関する状態情報を取得する。状態情報は、検知対象装置の障害予兆に関連する情報を含み得る。また状態情報は、障害発生に関連する情報を含み得る。
【0057】
状態情報は、検知対象装置の動作状態に関する情報を含み得る。状態情報は、例えば、検知対象装置の温度、データの書き込み回数、データの読み込み回数、又はエラー情報などである。これらに限らず、状態情報は、障害予兆及び障害発生に関連する種々の情報であってよい。
【0058】
例えば、モジュール10aにおいて、取得部11は、装置100aが備えるHDD1A、メモリ2A、及びCPU3Bの状態に関する状態情報をそれぞれ取得する。取得部11は、例えば、図示しないセンサなどを用いて、各検知対象装置に対応する状態情報を取得してもよいし、各検知対象装置で検出される情報を状態情報として取得してもよい。取得部11は、所定の時間間隔で状態情報を取得し得る。例えば、取得部11は、リアルタイムで状態情報を取得する。取得部11は、取得した状態情報を記憶部19に記憶してもよい。
【0059】
予兆検知部12は、上述した予兆検知部103の一例である。予兆検知部12は、状態情報と、検知対象装置の障害に関する障害情報と、を比較して障害の予兆を検知する。具体的には、予兆検知部12は、取得部11で取得される状態情報と、モジュール10に予め保持されている障害情報と、を比較する。予兆検知部12は、比較結果に応じて、検知対象装置に障害予兆が発生したか否かを判定し、判定結果に応じて予兆を検知する。詳細については後述する。
【0060】
図6に示されるように、本実施形態では、障害情報は、記憶部19において障害情報191として記憶されている。障害情報191は、分析サーバ20の障害情報291と対応する情報である。モジュール10a~10cのそれぞれは、自身が設けられた装置100に備えられた検知対象装置に関する障害情報を記憶する。したがって、モジュール10a~10cは、それぞれ異なる障害情報191a~191cを保持している。
【0061】
図7を参照して、装置100a~100cが保持する障害情報191a~191cについて説明する。
図7は、情報処理システム1000において各装置が保持する障害情報191の一例を示す図である。
図7において、装置100a~100cの下方に、各装置のモジュール10a~10cが保持する障害情報191a~191cが示されている。障害情報191a~191cは、図の右上に示される分析サーバ20の障害情報291の内容と対応している。障害情報291と同様、図に示されるグラフの横軸は時間tを示し、縦軸は状態情報xを示している。状態情報xは、例えば、検知対象装置の温度、データの書き込み回数、データの読み込み回数、又はエラー情報などであってよい。また状態情報xは、これらのうち2つ以上の組み合わせであってもよい。
【0062】
障害情報191は、モジュール10と対応付けられた検知対象装置の障害に関する情報を含み、情報処理装置と対応付けられていない検知対象装置の障害に関する情報を含まない。ここで、モジュール10と対応付けられた検知対象装置とは、それぞれのモジュール10が検知対象とする検知対象装置を示している。
【0063】
本実施形態では、モジュール10と対応付けられた検知対象装置は、モジュール10と共に装置100に内蔵された検知対象装置を示している。例えば、モジュール10aと対応付けられた検知対象装置は、モジュール10aと共に装置100aに備えられた、HDD1A、メモリ2A、及びCPU3Bである。
【0064】
したがって、モジュール10aが保持する障害情報191aは、HDD1A、メモリ2A、及びCPU3Bの障害に関する情報を含む。しかしながら、障害情報191aは、HDD1A、メモリ2A、及びCPU3Bのいずれにも該当しない検知対象装置の障害に関する情報は含まない。例えば、障害情報191aは、HDD1B、メモリ2B、及びCPU3Aの障害に関する情報のいずれも含まない。
【0065】
このように、モジュール10aが保持する障害情報191aは、モジュール10aと対応付けられた検知対象装置の障害に関する情報のみを含み、モジュール10aと対応付けられていないモジュール10b及び10cの障害に関する情報を含まない。モジュール10bが保持する障害情報191b、及び装置100cが保持する障害情報191cについても同様である。モジュール10b及び10cは、それぞれに対応付けられた検知対象装置の障害に関する情報のみを障害情報191b及び191cとしてそれぞれ保持し、対応付けられていない検知対象装置の障害に関する情報を保持しない。
【0066】
このようにすることで、モジュール10a~10cは、それぞれに対応付けられた検知対象装置の障害予兆の検知に必要な情報のみを保持することができる。
【0067】
上述したように、障害情報191は、分析サーバ20の障害情報291と対応している。したがって、障害情報191は、複数のモジュール10から送信された複数の障害発生情報に基づいて生成され得る。障害情報191は、例えば、過去の所定期間内に発生した、装置100a~100cの障害に関する障害発生情報に基づいて生成され得る。
【0068】
予兆検知部12が行う予兆の検知について詳細に説明する。予兆検知部12は、例えば、所定時間における状態情報(例えば、温度)の時間変化を記憶部19から取得する。予兆検知部12は、状態情報の時間変化と、障害情報の時間変化と、を比較し、比較結果に応じて障害予兆を検知する。例えば、予兆検知部12は、状態情報の時間変化と、障害情報の時間変化と、が一致するか否か、又は所定以上類似するか否か、を判定し、判定結果に応じて障害予兆を検知する。
【0069】
例えば、予兆検知部12は、状態情報の時間変化が示す波形を求め、当該波形と、障害情報191が示す波形と、を比較する。予兆検知部12は、状態情報が示す波形と、障害情報191が示す波形と、が一致するか、又は所定以上類似する場合に、障害予兆が発生したと判定する。予兆検知部12は、これらの波形が一致せず、かつ、所定以上類似しない場合には、障害予兆が発生していないと判定する。当該判定には、所定の類似度が用いられてよい。類似度は、固定でもよいし、適宜変更されてもよい。
【0070】
これに限らず、予兆検知部12は、周知の技術を用いて、障害予兆が発生したか否かを判定してもよい。上記のような判定を行うことで、予兆検知部12は、判定結果に応じて障害予兆を検知する。予兆検知部12は、障害予兆を検知した場合、通信部15を介して、予兆に関する障害予兆情報を分析サーバ20に送信する。これにより、分析サーバ20では、管理者等が障害予兆の発生を把握することができる。
【0071】
なお、予兆検知部12は、図示しない報知部を用いて、障害予兆の発生をユーザに報知してもよい。報知部は、分析サーバ20の報知部24と同様に構成されてよい。報知部は、モジュール10に備えられてもよいし、例えば、装置100の内部又は外部に設けられてもよい。報知部は、例えば、装置100が備える図示しない出力部に報知内容を出力させる。出力部は、ディスプレイ又はスピーカなどであってよい。このようにすることで、管理者等は、分析サーバ20を介することなく、装置100を用いて障害予兆の発生を把握することができる。これにより、分析サーバ20に障害が発生している場合であっても、装置100は障害予兆を報知することができる。
【0072】
図6に戻り説明を続ける。障害検知部13は、検知対象装置における障害発生を検知する。障害検知部13は、予兆検知部12において障害予兆が検知された後に、障害発生を検知してもよいし、障害予兆が検知されていない状態で障害発生を検知してもよい。障害検知部13は、例えば、検知対象装置の状態情報(例えば、温度)が所定の閾値を超えたか否かを判定し、判定結果に応じて障害発生を検知する。所定の閾値は、固定であってもよいし、適宜変更されてもよい。
【0073】
障害検知部13は、例えば、状態情報が所定の閾値を超えた場合、障害が発生したと判定し、当該閾値を超えていない場合、障害が発生していないと判定する。このようにして、予兆検知部12は、障害発生を検知する。
【0074】
これに限らず、障害検知部13は、予兆検知部12と同様に、状態情報と障害情報191とを用いて障害発生を検知してもよい。この場合、障害検知部13は、状態情報の時間変化と、障害情報191の時間変化と、を比較し、比較結果に応じて障害発生を検知する。例えば、障害検知部13は、状態情報の時間変化と、障害情報の時間変化と、が一致するか否か、又は所定以上類似するか否か、を判定し、判定結果に応じて障害発生を検知する。
【0075】
例えば、障害検知部13は、状態情報の時間変化が示す波形を求め、当該波形と、障害情報191が示す波形と、を比較する。障害検知部13は、状態情報が示す波形と、障害情報191が示す波形と、が一致するか、又は所定以上類似する場合に、障害が発生したと判定する。障害検知部13は、これらの波形が一致せず、かつ、所定以上類似しない場合には、障害予兆が発生していないと判定する。当該判定には、所定の類似度が用いられてよい。類似度は、固定でもよいし、適宜変更されてもよい。障害検知部13は、当該判定のために、予兆検知部12で用いられる類似度とは異なる類似度を用いてよい。例えば、障害検知部13は、障害予兆の判定に用いられる類似度よりも、高い類似度を用いて、障害発生の判定を行う。
【0076】
これに限らず、障害検知部13は、周知の技術を用いて、障害が発生したか否かを判定してもよい。障害検知部13は、障害発生を検知した場合、通信部15を介して、障害発生に関する障害発生情報を分析サーバ20に送信する。
【0077】
更新部14は、検知対象装置に障害が発生した場合、分析サーバ20から取得したデータに応じて、予め保持している障害情報を更新する。例えば、更新部14は、分析サーバ20から送信された更新障害情報を取得する。更新部14は、予め保持している障害情報191を、取得した更新障害情報を用いて更新する。これにより、モジュール10は、より新しい障害情報を保持することができる。
【0078】
通信部15は、上述した送信部104の一例である。通信部15は、ネットワークとの通信インタフェースである。通信部15は、分析サーバ20との通信を行う。通信部15は、予兆が検知された場合に、障害予兆情報を分析サーバ20に送信する送信部として機能する。また、通信部15は、検知対象装置に障害が発生した場合、障害に関する障害発生情報を分析サーバ20に送信する。さらに、通信部15は、分析サーバ20から送信された障害情報及び更新障害情報を受信する受信部として機能する。
【0079】
記憶部19は、モジュール10の各機能を実現するためのプログラムが格納される記憶装置である。また記憶部19は、障害情報191を記憶する。記憶部19は、モジュール10自身が設けられた装置100に備えられた検知対象装置に関する障害情報を記憶する。また図示しないが、記憶部19は、検知対象装置の状態情報を記憶し得る。記憶部19は、状態情報を所定期間の間保持し、所定期間経過後に削除するようにしてもよい。
【0080】
図7を用いて説明したように、モジュール10a~10cは、記憶部19において、それぞれ異なる障害情報191a~191cを保持している。つまり本実施形態では、障害情報191a~191cを分析サーバ20において一括管理するだけでなく、モジュール10a~10cのそれぞれで分散保持している。これにより、モジュール10a~10cは、分析サーバ20に障害が発生した場合であっても、それぞれが保持する障害情報191a~191cを用いて予兆を検知することができる。なお、記憶部19は、モジュール10の外部に設けられてもよい。
【0081】
以上、情報処理システム1000の構成について説明した。なお、
図2などに示される情報処理システム1000の構成は一例に過ぎない。情報処理システム1000の構成は、適宜変更され得る。例えば、装置100a~100c及び分析サーバ20のそれぞれは、複数の構成が集約された装置などを用いて構成されてもよい。例えば、装置100a~100cのいずれかの機能と、分析サーバ20の機能と、が同一の装置に集約されていてもよい。例えば、装置100aが分析サーバ20の機能を備えるように構成されてもよい。
【0082】
また、例えば、装置100a~100cにおける各機能部は、複数の装置などを用いて分散処理されてもよい。例えば、モジュール10a~10cにおける各機能部は、複数の装置などを用いて分散処理されてもよい。
【0083】
続いて、
図8~
図12を参照して、情報処理システム1000が実行する処理を具体的に説明する。以下では、
図3及び
図6を用いて説明した分析サーバ20及びモジュール10の機能部を適宜用いて説明を行う。
【0084】
(モジュール10における予兆検知処理)
まず、
図8及び
図9を参照して、モジュール10が行う予兆検知処理について説明する。
図8は、モジュール10が行う予兆検知処理を模式的に示す図である。また
図9は、モジュール10が行う予兆検知処理を示すフローチャートである。以下では、一例として、装置100aが備えるモジュール10aにおいて、障害の予兆を検知する場合を説明する。
【0085】
まず、取得部11は、検知対象装置から状態情報を取得する(S11)。例えば、モジュール10aは、装置100aが備えるHDD1A、メモリ2A、及びCPU3Bから状態情報を取得する。状態情報は、例えば、HDD1A、メモリ2A、及びCPU3Bのそれぞれの温度の時間変化などであってよい。取得部11は、所定の時間間隔で状態情報を取得してもよい。例えば、取得部11は、リアルタイムで状態情報を取得する。
【0086】
モジュール10aの予兆検知部12は、状態情報と障害情報とを比較して、障害の予兆を検知する(S12)。ここで、障害情報は、障害情報191aとして、モジュール10aの記憶部19に予め記憶されている。予兆検知部12は、状態情報と、障害情報191aと、を比較する。
【0087】
例えば、予兆検知部12は、状態情報が示す波形と、障害情報191aが示す波形と、が一致するか、又は所定以上類似する場合に、予兆が発生したと判定し、検知対象装置の予兆を検知する。これに限らず、予兆検知部12は他の方法を用いて、予兆を検知してもよい。
【0088】
図8に示されるように、ここでは、メモリ2Aに関し、状態情報が示す波形と、障害情報191aが示す波形と、が所定以上類似したものとする。この場合、予兆検知部12は、メモリ2Aに障害予兆が発生したと判定する。これにより、予兆検知部12はメモリ2Aに発生した予兆を検知する。
【0089】
続いて、予兆検知部12は、予兆が検知されたか否かを判定する(S13)。予兆が検知されなかった場合(S13のNO)、ステップS11に戻り処理を繰り返す。予兆が検知された場合(S13のYES)、予兆検知部12は、予兆に関する障害予兆情報を分析サーバに送信する(S14)。ここでは、予兆検知部12は、メモリ2Aの予兆に関する障害予兆情報D1を分析サーバ20に送信する。障害予兆情報D1は、予兆が検知されたメモリ2Aの情報及び予兆の内容を含み得る。障害予兆情報D1は、例えば装置100aを識別する装置IDなどの情報を含んでもよい。
【0090】
このような予兆検知処理を行うことで、モジュール10aは、メモリ2Aに障害の予兆が発生したことを分析サーバ20に通知する。分析サーバ20では、報知部24がユーザに対する報知を行い得る。これにより、分析サーバ20の管理者等は、装置100aのメモリ2Aに予兆が発生していること把握することができる。なお、分析サーバ20だけでなく、装置100aにおいても、図示しない報知部が、予兆に関する報知を行ってもよい。
【0091】
(障害発生時の処理)
続いて、
図10~
図13を参照して、障害が発生した場合にモジュール10及び分析サーバ20が実行する処理について説明する。
図10は、障害が発生した場合にモジュール10及び分析サーバ20が実行する処理を模式的に示す図である。
図11~
図13は、障害検知処理、更新制御処理、及び更新処理のそれぞれを示すフローチャートである。
図10に示されるように、ここでは、装置100aが備えるHDD1Aにおいて障害が発生した場合を用いて説明する。
【0092】
(モジュール10における障害検知処理)
まず、
図11を参照して、モジュール10が行う障害検知処理について説明する。
図11は、モジュール10が行う障害検知処理を示すフローチャートである。
【0093】
モジュール10aの障害検知部13は、装置100aが備える検知対象装置(HDD1A、メモリ2A、及びCPU3B)の障害発生を検知する。障害検知部13は、例えば、取得部11においてリアルタイムで取得された状態情報(例えば、温度)が所定の閾値を超えたか否かを判定し、判定結果に応じて障害発生を検知する。または、障害検知部13は、予兆検知部12と同様に、状態情報と障害情報191aとを用いて障害発生を検知してもよい。この場合、障害検知部13は、状態情報の時間変化と、障害情報191aの時間変化と、を比較し、比較結果に応じて障害発生を検知する。
【0094】
障害検知部13は、障害発生を検知したか否かを判定する(S21)。障害発生を検知しなかった場合(S21のNO)、障害検知部13は、障害発生の検知を継続する。障害発生を検知した場合(S21のYES)、障害検知部13は、障害発生に関する障害発生情報を分析サーバ20に送信する(S22)。ここでは、障害検知部13は、装置100aが備えるHDD1Aの障害発生を検知し、障害発生情報D2を分析サーバ20に送信する。障害発生情報D2は、障害発生が検知されたHDD1Aの情報及び障害の内容を含み得る。障害発生情報D2は、例えば装置100aを識別する装置IDなどの情報を含んでもよい。
【0095】
(分析サーバ20における更新制御処理)
続いて、
図12を参照して、分析サーバ20が行う障害情報の更新制御処理について説明する。
図12は、分析サーバ20が行う障害情報の更新制御処理を示すフローチャートである。
【0096】
まず、取得部21は、装置100aから障害発生情報D2を取得する(S31)。分析部22は、障害が発生したHDD1Aに関する障害情報を分析する(S32)。分析部22は、例えば、取得部21で取得された障害発生情報D2と、既に所定期間のデータが蓄積された障害情報291と、を用いて分析を行う。
【0097】
分析部22は、分析結果に応じて、障害情報291を更新する(S33)。ここでは、
図10に示されるように、分析部22は、障害情報291のうち、HDD1Aに関する情報を更新し、更新障害情報D3を生成する。なお、分析部22は、例えば、発生した障害の内容や重要度などに応じて、障害情報291を更新する必要があるか否かを判定し、必要がある場合に障害情報291を更新するようにしてもよい。また、分析部22は、管理者等から障害情報291を更新する旨の指示を受け付けて、障害情報291を更新するようにしてもよい。
【0098】
続いて、更新制御部23は、障害情報を更新させる対象の検知対象装置を備える装置を特定する(S34)。ここでは、更新対象の検知対象装置は、障害が発生したHDD1Aである。更新制御部23は、装置情報292を参照し、装置100a~100cのうち、HDD1Aを備えている装置を特定する。ここでは、更新制御部23は、更新対象の検知対象装置を備える装置として装置100a及び100cを特定する。なお、更新対象の検知対象装置を備える装置が存在しない場合は処理を終了する。
【0099】
続いて、更新制御部23は、装置100a及び100cに対して、更新障害情報D3を送信する(S35)。これにより、更新制御部23は、モジュール10a及び10cに対し、障害情報191a及び191cをそれぞれ更新させるよう制御を行う。
【0100】
上記のような処理を行うことで、分析サーバ20は、障害が発生した検知対象装置を備える装置を特定し、更新障害情報D3を用いて、当該装置が保持する障害情報191を更新させる。更新障害情報D3は、各装置で障害予兆が検知されていたか否かにかかわらず、発生した障害の内容を含む障害発生情報D2を用いて生成される。したがって、予兆が検知されず突発的に障害が発生した場合であっても、分析サーバ20は、当該障害の情報を更新障害情報D3に反映させることができる。これにより、分析サーバ20は、発生した障害の情報を各装置に反映させることができるので、今後の予兆検知の精度を高めることができる。また、図示を省略するが、分析サーバ20は、適宜ユーザに対する報知を行ってもよい。例えば、報知部24は、装置100aのHDD1Aで障害が発生したこと、及び、HDD1Aを備える装置100a及び100cに対して更新障害情報D3を送信したこと、などをディスプレイなどに出力させる。
【0101】
(モジュール10における更新処理)
続いて、
図13を参照して、モジュール10が行う障害情報の更新処理について説明する。
図13は、モジュール10が行う障害情報の更新処理を示すフローチャートである。ここでは、HDD1Aを備える装置100a及び100cのモジュール10a及び10cがそれぞれ当該処理を行う。
【0102】
まず、モジュール10a及び10cの更新部14は、分析サーバ20から更新障害情報D3を取得する(S41)。続いて、更新部14は、更新障害情報D3を用いて、予め保持されている障害情報191a又は191cをそれぞれ更新する(S42)。
【0103】
以上説明したように、本実施形態にかかる情報処理システム1000では、複数の装置100が備えるモジュール10において、取得部11は、障害の検知対象である検知対象装置の状態に関する状態情報を取得する。また、予兆検知部12は、当該状態情報と、検知対象装置の障害情報と、を比較して障害の予兆を検知する。また、予兆検知部12は、予兆が検知された場合に、予兆に関する障害予兆情報を、通信部15を用いて分析サーバ20に送信する。
【0104】
情報処理システム1000では、障害情報を分析サーバ20のみで保持するのではなく、各装置において保持する。このような構成を備えることで、各装置100が備えるモジュール10において、各装置の障害予兆を検知することができる。したがって、例えば、分析サーバ20に障害が発生した場合であっても、モジュール10が、各装置の障害予兆を検知することができる。
【0105】
また、本実施形態にかかる分析サーバ20は、複数の装置100から取得した障害予兆又は障害発生に関する情報を管理する。これにより、分析サーバ20は、データの推移を随時分析することで、将来の障害発生の予兆を精度よく検知することができる。分析サーバ20は、各装置の障害予兆を早期に発見することができるので、検知対象装置又はこれを備える装置の突発的な故障修理を防ぐことができる。これにより、分析サーバ20は、対応稼働の削減、効果的なスケジュール管理などを可能とする。
【0106】
また、モジュール10が保持する障害情報は、モジュール10と対応付けられた検知対象装置の障害に関する情報を含み、モジュール10と対応付けられていない検知対象装置の障害に関する情報を含まない。よって、モジュール10は、各装置に設けられた検知対象装置の必要なデータのみを保持し、不要なデータは保持しない。これにより、モジュール10は、予兆検知のために最小限のデータを保持することができる。
【0107】
また、情報処理システム1000では、予兆の検知を、分析サーバ20のみでなく、モジュール10において行うことができるので、分析サーバ20は、各装置の障害に関する最小限のデータを取得することができる。これにより、情報処理システム1000では、予兆検知にかかる時間を短縮することができる。またこれにより、分析サーバ20におけるデータの集中や、負荷の増加を抑えることができる。そして、分析サーバ20が取得するデータが膨大となることを防ぐことができるので、分析サーバ20が誤ったデータが用いて分析することを防ぐことができる。さらに、分析サーバ20は、各装置から、対応する検知対象装置のデータのみを取得するので、通信時間の短縮、及び分析時間の短縮を実現することができる。
【0108】
このように、本実施形態にかかるモジュール10は、装置100が備える検知対象装置に発生した障害予兆を適切に検知することを可能とする。
【0109】
<ハードウエアの構成例>
上述した情報処理装置101、モジュール10a~10c、装置100a~100c、及び分析サーバ20の各機能構成部は、各機能構成部を実現するハードウエア(例:ハードワイヤードされた電子回路など)で実現されてもよいし、ハードウエアとソフトウエアとの組み合わせ(例:電子回路とそれを制御するプログラムの組み合わせなど)で実現されてもよい。以下、情報処理装置101等の各機能構成部がハードウエアとソフトウエアとの組み合わせで実現される場合について説明する。
【0110】
図14は、情報処理装置101等を実現するコンピュータ900のハードウエア構成を例示するブロック図である。コンピュータ900は、情報処理装置101等を実現するために設計された専用のコンピュータであってもよいし、汎用のコンピュータであってもよい。コンピュータ900は、スマートフォンやタブレット端末などといった可搬型のコンピュータであってもよい。
【0111】
例えば、コンピュータ900に対して所定のアプリケーションをインストールすることにより、コンピュータ900で、情報処理装置101等の各機能が実現される。上記アプリケーションは、情報処理装置101等の機能構成部を実現するためのプログラムで構成される。
【0112】
コンピュータ900は、バス902、プロセッサ904、メモリ906、ストレージデバイス908、入出力インタフェース910、及びネットワークインタフェース912を有する。バス902は、プロセッサ904、メモリ906、ストレージデバイス908、入出力インタフェース910、及びネットワークインタフェース912が、相互にデータを送受信するためのデータ伝送路である。ただし、プロセッサ904などを互いに接続する方法は、バス接続に限定されない。
【0113】
プロセッサ904は、CPU(Central Processing Unit)、GPU(Graphics Processing Unit)、又は FPGA(Field-Programmable Gate Array)などの種々のプロセッサである。メモリ906は、RAM(Random Access Memory)などを用いて実現される主記憶装置である。ストレージデバイス908は、ハードディスク、SSD(Solid State Drive)、メモリカード、又は ROM(Read Only Memory)などを用いて実現される補助記憶装置である。
【0114】
入出力インタフェース910は、コンピュータ900と入出力デバイスとを接続するためのインタフェースである。例えば入出力インタフェース910には、キーボードなどの入力装置や、ディスプレイ装置などの出力装置が接続される。
【0115】
ネットワークインタフェース912は、コンピュータ900をネットワークに接続するためのインタフェースである。このネットワークは、LAN(Local Area Network)であってもよいし、WAN(Wide Area Network)であってもよい。
【0116】
ストレージデバイス908は、情報処理装置101等の各機能構成部を実現するプログラム(前述したアプリケーションを実現するプログラム)を記憶している。プロセッサ904は、このプログラムをメモリ906に読み出して実行することで、情報処理装置101等の各機能構成部を実現する。
【0117】
プロセッサの各々は、図面を用いて説明されたアルゴリズムをコンピュータに行わせるための命令群を含む1又はそれ以上のプログラムを実行する。このプログラムは、コンピュータに読み込まれた場合に、実施形態で説明された1又はそれ以上の機能をコンピュータに行わせるための命令群(又はソフトウェアコード)を含む。プログラムは、様々なタイプの非一時的なコンピュータ可読媒体(non-transitory computer readable medium)又は実体のある記憶媒体(tangible storage medium)に格納されてもよい。限定ではなく例として、コンピュータ可読媒体又は実体のある記憶媒体は、random-access memory(RAM)、read-only memory(ROM)、フラッシュメモリ、solid-state drive(SSD)又はその他のメモリ技術、CD-ROM、digital versatile disc(DVD)、Blu-ray(登録商標)ディスク又はその他の光ディスクストレージ、磁気カセット、磁気テープ、磁気ディスクストレージ又はその他の磁気ストレージデバイスを含む。プログラムは、様々なタイプの一時的なコンピュータ可読媒体(transitory computer readable medium)又は通信媒体上で送信されてもよい。限定ではなく例として、一時的なコンピュータ可読媒体又は通信媒体は、電気的、光学的、音響的、又はその他の形式の伝搬信号を含む。
【0118】
なお、本開示は上記実施形態に限られたものではなく、趣旨を逸脱しない範囲で適宜変更することが可能である。
【0119】
上記の実施形態の一部又は全部は、以下の付記のようにも記載されうるが、以下には限られない。
(付記1)
障害の検知対象である検知対象装置の状態に関する状態情報を取得する取得部と、
前記状態情報と、前記検知対象装置の障害に関する障害情報と、を比較して前記障害の予兆を検知する予兆検知部と、
前記予兆が検知された場合に、前記予兆に関する障害予兆情報をサーバに送信する送信部と、を備える
情報処理装置。
(付記2)
前記送信部は、前記検知対象装置に障害が発生した場合、当該障害に関する障害発生情報を前記サーバに送信する
付記1に記載の情報処理装置。
(付記3)
前記障害情報は予め保持されており、
前記障害が発生した場合、前記サーバから取得したデータに応じて、前記障害情報を更新する更新部をさらに備える
付記1又は2に記載の情報処理装置。
(付記4)
前記障害情報は、前記情報処理装置と対応付けられた前記検知対象装置の障害に関する情報を含み、前記情報処理装置と対応付けられていない前記検知対象装置の障害に関する情報を含まない
付記1~3のいずれか1項に記載の情報処理装置。
(付記5)
前記検知対象装置は、プロセッサ、主記憶装置、及び補助記憶装置の少なくともいずれか1つを含む
付記1~4のいずれか1項に記載の情報処理装置。
(付記6)
前記状態情報は、前記検知対象装置の温度、データの読み込み回数、データの書き込み回数、及びエラー情報の少なくともいずれか1つを含む
付記1~5のいずれか1項に記載の情報処理装置。
(付記7)
前記予兆検知部は、前記状態情報の時間変化と、前記障害情報の時間変化と、が一致するか、又は所定以上類似する場合、前記予兆を検知する
付記1~6のいずれか1項に記載の情報処理装置。
(付記8)
前記障害情報は、複数の前記情報処理装置から送信された複数の前記障害発生情報に基づいて生成されている
付記2~7のいずれか1項に記載の情報処理装置。
(付記9)
障害の検知対象である検知対象装置に発生した障害に関する障害発生情報を取得する取得部と、
前記障害発生情報を分析し、前記障害の予兆を検知するための障害情報を生成する分析部と、
前記障害情報を、前記検知対象装置を備える情報処理装置に対して送信する送信部と、を備える
サーバ。
(付記10)
前記分析部は、前記障害発生情報が新たに取得された場合、前記障害情報を再分析して更新し、
前記検知対象装置を備える情報処理装置に対し、更新された前記障害情報を用いて予め保持されている前記障害情報を更新させる更新制御部をさらに備える
付記9に記載のサーバ。
(付記11)
情報処理装置と、
サーバと、を備え
前記情報処理装置は、
障害の検知対象である検知対象装置の状態に関する状態情報を取得する取得部と、
前記状態情報と、前記検知対象装置の障害に関する障害情報と、を比較して前記障害の予兆を検知する予兆検知部と、
前記予兆が検知された場合に、前記予兆に関する障害予兆情報を前記サーバに送信する送信部と、を有する
情報処理システム。
(付記12)
前記送信部は、前記検知対象装置に障害が発生した場合、当該障害に関する障害発生情報を前記サーバに送信する
付記11に記載の情報処理システム。
(付記13)
コンピュータが、
障害の検知対象である検知対象装置の状態に関する状態情報を取得する取得ステップと、
前記状態情報と、前記検知対象装置の障害に関する障害情報と、を比較して前記障害の予兆を検知する予兆検知ステップと、
前記予兆が検知された場合に、前記予兆に関する障害予兆情報をサーバに送信する送信ステップと、を実行する
情報処理方法。
(付記14)
前記検知対象装置に障害が発生した場合、当該障害に関する障害発生情報を前記サーバに送信するステップをさらに実行する
付記13に記載の情報処理方法。
(付記15)
コンピュータが、
障害の検知対象である検知対象装置に発生した障害に関する障害発生情報を取得する取得ステップと、
前記障害発生情報を分析し、前記障害の予兆を検知するための障害情報を生成する分析ステップと、
前記障害情報を、前記検知対象装置を備える情報処理装置に対して送信する送信ステップと、を実行する
情報処理方法。
(付記16)
前記分析ステップでは、前記障害発生情報が新たに取得された場合、前記障害情報を再分析して更新し、
前記検知対象装置を備える情報処理装置に対し、更新された前記障害情報を用いて予め保持されている前記障害情報を更新させる更新制御ステップをさらに実行する
付記15に記載の情報処理方法。
(付記17)
情報処理装置のコンピュータが、
障害の検知対象である検知対象装置の状態に関する状態情報を取得する取得ステップと、
前記状態情報と、前記検知対象装置の障害に関する障害情報と、を比較して前記障害の予兆を検知する予兆検知ステップと、
前記予兆が検知された場合に、前記予兆に関する障害予兆情報をサーバに送信する送信ステップと、を実行し、
前記サーバのコンピュータが、
前記障害予兆情報を受信するステップを実行する、
情報処理方法。
(付記18)
前記情報処理装置のコンピュータが、
前記検知対象装置に障害が発生した場合、当該障害に関する障害発生情報を前記サーバに送信するステップをさらに実行する
付記17に記載の情報処理方法。
(付記19)
障害の検知対象である検知対象装置の状態に関する状態情報を取得する取得ステップと、
前記状態情報と、前記検知対象装置の障害に関する障害情報と、を比較して前記障害の予兆を検知する予兆検知ステップと、
前記予兆が検知された場合に、前記予兆に関する障害予兆情報をサーバに送信する送信ステップと、をコンピュータに実行させる
プログラム。
(付記20)
前記検知対象装置に障害が発生した場合、当該障害に関する障害発生情報を前記サーバに送信するステップをさらに実行する
付記19に記載のプログラム。
(付記21)
障害の検知対象である検知対象装置に発生した障害に関する障害発生情報を取得する取得ステップと、
前記障害発生情報を分析し、前記障害の予兆を検知するための障害情報を生成する分析ステップと、
前記障害情報を、前記検知対象装置を備える情報処理装置に対して送信する送信ステップと、をコンピュータに実行させる
プログラム。
(付記22)
前記分析ステップでは、前記障害発生情報が新たに取得された場合、前記障害情報を再分析して更新し、
前記検知対象装置を備える情報処理装置に対し、更新された前記障害情報を用いて予め保持されている前記障害情報を更新させる更新制御ステップをさらにコンピュータに実行させる
付記21に記載のプログラム。
【符号の説明】
【0120】
1A、1B HDD
2A、2B メモリ
3A、3B CPU
10、10a~10c モジュール
11 取得部
12 予兆検知部
13 障害検知部
14 更新部
15 通信部
19 記憶部
20 分析サーバ
21 取得部
22 分析部
23 更新制御部
24 報知部
25 通信部
29 記憶部
100、100a~100c 装置
101 情報処理装置
102 取得部
103 予兆検知部
104 送信部
191、191a~191c 障害情報
291 障害情報
291a 検知対象装置情報
291b 障害グラフ
292 装置情報
900 コンピュータ
902 バス
904 プロセッサ
906 メモリ
908 ストレージデバイス
910 入出力インタフェース
912 ネットワークインタフェース
1000 情報処理システム
D1 障害予兆情報
D2 障害発生情報
D3 更新障害情報