JP2019153055A - クラスタシステム、情報処理装置、クラスタ監視方法及びクラスタ監視プログラム - Google Patents
クラスタシステム、情報処理装置、クラスタ監視方法及びクラスタ監視プログラム Download PDFInfo
- Publication number
- JP2019153055A JP2019153055A JP2018037544A JP2018037544A JP2019153055A JP 2019153055 A JP2019153055 A JP 2019153055A JP 2018037544 A JP2018037544 A JP 2018037544A JP 2018037544 A JP2018037544 A JP 2018037544A JP 2019153055 A JP2019153055 A JP 2019153055A
- Authority
- JP
- Japan
- Prior art keywords
- node
- physical machine
- state
- information
- nodes
- 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.)
- Pending
Links
Images
Abstract
【課題】通信が制限されている場合においてもスプリットブレインの発生を防止することを可能とするクラスタシステム、情報処理装置、クラスタ監視方法及びクラスタ監視プログラムを提供する。【解決手段】クラスタシステムは、クラスタを構成する第1及び第2ノードと、第1及び第2ノードの動作状態をそれぞれ監視する監視ノードと、を有し、監視ノードは、第1及び第2ノードから各ノードの動作状態を取得し、取得した第1及び第2ノードの動作状態を示す状態情報を第1及び第2ノードのそれぞれに通知し、第1ノードは、第2ノードの動作状態を取得し、取得した第2ノードの動作状態が異常を示している場合であって、監視ノードから通知された状態情報に第2ノードの動作状態が異常であることを示す情報が含まれていると判定した場合、第2ノードが実行する処理を第2ノードに代わって実行する。【選択図】図9
Description
本発明は、クラスタシステム、情報処理装置、クラスタ監視方法及びクラスタ監視プログラムに関する。
例えば、利用者にサービスを提供する事業者(以下、単に事業者とも呼ぶ)は、サービスの提供を行うための業務システム(以下、情報処理システムとも呼ぶ)を構築して稼働させる。具体的に、事業者は、例えば、クラスタを構成する複数の物理マシンを用いることによって業務システムの構築を行う。これにより、事業者は、サービスの提供を行うための処理を実行する物理マシンにおいて異常が発生した場合であっても、異常が発生した物理マシンが実行していた処理を他の物理マシンに引き継がせることが可能になり、利用者に対するサービスの提供を継続することが可能になる。
上記のようなクラスタを構成する各物理マシンは、例えば、定期的な間隔において他の物理マシンの動作状態の確認を行う。そして、各物理マシンは、他の物理マシンの動作状態が異常であると判定した場合、他の物理マシンが実行している処理の引き継ぎを行う。
ここで、例えば、物理マシン間のネットワークの不調に起因して他の物理マシンの動作状態の確認を行うことができなかった場合、各物理マシンは、正常に動作している他の物理マシンの動作状態が異常であると判定する場合がある。そして、各物理マシンは、この場合、他の物理マシンが処理の実行を正常に継続しているにもかかわらず、他の物理マシンが実行している処理の実行を開始する。そのため、業務システムでは、複数の物理マシンにおいて同じ処理が行われる状況(以下、スプリットブレインとも呼ぶ)が発生する可能性がある。
そこで、事業者は、例えば、クラスタを構成する物理マシンの数が偶数である場合、クラスタを構成する物理マシンと、新たな物理マシン(以下、クォーラムサーバとも呼ぶ)とを含む奇数の物理マシンからなるクォーラムを構成する。クォーラムは、各物理マシンからアクセス可能な物理マシンの数がクラスタを構成する物理マシンの過半数に達していないと判定した場合、他の物理マシンが実行している処理の引き継ぎを行わない構成である。これにより、各物理マシンは、各物理マシンが他の物理マシンの動作状態を誤認した場合であっても、スプリットブレインの発生を防止することが可能になる(例えば、特許文献1及び2参照)。
上記のような業務システムにおいて、例えば、事業者が管理する物理マシン上に生成された仮想マシンをクォーラムサーバとして用いる場合、事業者は、新たな物理マシンの用意等を行う必要がなくなるため、クォーラムの構成に要するコストを抑えることが可能になる。
しかしながら、例えば、業務システムを構成する物理マシンから事業者が管理する物理マシンに対する通信が制限されている場合、業務システムを構成する物理マシンは、クォーラムサーバから情報を取得することができない。そのため、事業者は、この場合、事業者が管理する物理マシン上に生成された仮想マシンをクォーラムサーバとして用いることによるクォーラムを構成することができない。
そこで、一つの側面では、本発明は、通信が制限されている場合においてもスプリットブレインの発生を防止することを可能とするクラスタシステム、情報処理装置、クラスタ監視方法及びクラスタ監視プログラムを提供することを目的とする。
実施の形態の一態様では、クラスタシステムは、クラスタを構成する第1及び第2ノードと、第1及び第2ノードの動作状態をそれぞれ監視する監視ノードと、を有し、監視ノードは、第1及び第2ノードから各ノードの動作状態を取得し、取得した第1及び第2ノードの動作状態を示す状態情報を第1及び第2ノードのそれぞれに通知し、第1ノードは、第2ノードの動作状態を取得し、取得した第2ノードの動作状態が異常を示している場合であって、監視ノードから通知された状態情報に第2ノードの動作状態が異常であることを示す情報が含まれていると判定した場合、第2ノードが実行する処理を第2ノードに代わって実行する。
一つの側面によれば、通信が制限されている場合においてもスプリットブレインの発生を防止することを可能とする。
[情報処理システムの構成]
図1は、情報処理システム10の全体構成を示す図である。図1に示す情報処理システム10には、情報処理装置1と、物理マシン2(以下、第1ノード2とも呼ぶ)と、物理マシン3(以下、第2ノード3とも呼ぶ)と、操作端末5とが含まれている。
図1は、情報処理システム10の全体構成を示す図である。図1に示す情報処理システム10には、情報処理装置1と、物理マシン2(以下、第1ノード2とも呼ぶ)と、物理マシン3(以下、第2ノード3とも呼ぶ)と、操作端末5とが含まれている。
物理マシン2及び物理マシン3は、それぞれ1台以上の物理マシンであり、クラスタCLを構成している。そのため、例えば、物理マシン2において所定の異常が発生したことを物理マシン3が検知した場合、物理マシン3は、物理マシン2が実行していた処理(物理マシン2が実行する予定の処理)を引き継いで実行する。同様に、例えば、物理マシン3において所定の異常が発生したことを物理マシン2が検知した場合、物理マシン2は、物理マシン3が実行していた処理(物理マシン3が実行する予定の処理)を引き継いで実行する。
情報処理装置1は、1台以上の物理マシンであり、例えば、事業者が管理する物理マシンである。そして、情報処理装置1では、仮想マシン1a(以下、VM1aまたは監視ノード1aとも呼ぶ)が動作している。なお、事業者は、例えば、PC(Personal Computer)等の操作端末5を操作することにより、情報処理装置1に対して情報の入力等を行うものであってよい。
仮想マシン1aは、例えば、クォーラムサーバとして機能する仮想マシンであり、物理マシン2及び物理マシン3とクォーラムを構成する。
具体的に、仮想マシン1aは、例えば、物理マシン2及び物理マシン3の動作状態の確認を行う。また、物理マシン2は、例えば、仮想マシン1a及び物理マシン3の動作状態の確認を行う。さらに、物理マシン3は、例えば、仮想マシン1a及び物理マシン2の動作状態の確認を行う。そして、物理マシン2は、必要に応じて、例えば、仮想マシン1aによる物理マシン2及び物理マシン3の動作状態の確認結果を取得する。また、物理マシン3は、必要に応じて、例えば、仮想マシン1aによる物理マシン2及び物理マシン3の動作状態の確認結果を取得する。
これにより、物理マシン2は、例えば、物理マシン3との間のネットワークの不調に起因して物理マシン3の動作状態の確認ができない場合であっても、仮想マシン1aによって物理マシン3の動作状態の確認ができている場合、物理マシン3の動作状態が正常であると判定することが可能になる。そのため、物理マシン2は、物理マシン3の動作状態の誤認によるスプリットブレインの発生を防止することが可能になる。
また、物理マシン3は、例えば、物理マシン2との間のネットワークの不調に起因して物理マシン2の動作状態の確認ができない場合であっても、仮想マシン1aによって物理マシン2の動作状態の確認ができている場合、物理マシン2の動作状態が正常であると判定することが可能になる。そのため、物理マシン2は、物理マシン2の動作状態の誤認によるスプリットブレインの発生を防止することが可能になる。
しかしながら、例えば、物理マシン2及び物理マシン3と情報処理装置1との間に配置されたネットワーク装置(図示しない)によって、物理マシン2から情報処理装置1(仮想マシン1a)に対する通信が制限されている場合、物理マシン2は、クォーラムサーバとして機能する仮想マシン1aから情報を取得することができない。そのため、事業者は、この場合、仮想マシン1aをクォーラムサーバとして用いることによるクォーラムを構成することができない。
そこで、本実施の形態における仮想マシン1aは、物理マシン2及び物理マシン3の動作状態をそれぞれ取得し、取得した物理マシン2及び物理マシン3の動作状態を示す状態情報を物理マシン2及び物理マシン3のそれぞれに通知する。
そして、物理マシン2は、物理マシン3の動作状態を取得し、取得した物理マシン3の動作状態が異常であって、仮想マシン1aから通知された状態情報に物理マシン3の動作状態が異常であることを示す情報が含まれていると判定した場合、物理マシン3が実行する処理(物理マシン3が実行する予定の処理)を物理マシン3に代わって実行する。
すなわち、例えば、情報処理装置1(仮想マシン1a)から物理マシン2に対する通信が許可されている場合、仮想マシン1aは、物理マシン2及び物理マシン3の動作状態を取得するだけでなく、取得した動作状態を物理マシン2及び物理マシン3にそれぞれ送信する。
これにより、物理マシン2は、物理マシン2から情報処理装置1(仮想マシン1a)に対する通信が制限されている場合であっても、情報処理装置1(仮想マシン1a)から物理マシン2に対する通信が許可されている場合、仮想マシン1aが確認した物理マシン3の動作状態を参照することが可能になる。そのため、事業者は、この場合、事業者が管理する情報処理装置1に生成された仮想マシン1aをクォーラムサーバとして用いたクォーラムを構成することが可能になる。
[情報処理システムのハードウエア構成]
次に、情報処理システム10のハードウエア構成について説明する。図2から図4は、情報処理システム10のハードウエア構成について説明する図である。具体的に、図2は、情報処理装置1のハードウエア構成を説明する図である。また、図3は、物理マシン2のハードウエア構成を説明する図である。さらに、図4は、物理マシン3のハードウエア構成を説明する図である。
次に、情報処理システム10のハードウエア構成について説明する。図2から図4は、情報処理システム10のハードウエア構成について説明する図である。具体的に、図2は、情報処理装置1のハードウエア構成を説明する図である。また、図3は、物理マシン2のハードウエア構成を説明する図である。さらに、図4は、物理マシン3のハードウエア構成を説明する図である。
情報処理装置1は、図2に示すように、プロセッサであるCPU101と、メモリ102と、外部インターフェース(以下、I/Oユニットとも呼ぶ)103と、記憶媒体104とを有する。各部は、バス105を介して互いに接続される。
記憶媒体104は、例えば、記憶媒体104内のプログラム格納領域(図示しない)に、物理マシン2及び物理マシン3から構成されるクラスタを監視する処理(以下、クラスタ監視処理とも呼ぶ)を行うためのプログラム110を記憶する。記憶媒体104は、例えば、HDD(Hard Disk Drive)であってよい。
また、記憶媒体104は、例えば、クラスタ監視処理を行う際に用いられる情報を記憶する記憶部130(以下、情報格納領域130とも呼ぶ)を有する。
CPU101は、記憶媒体104からメモリ102にロードされたプログラム110を実行してクラスタ監視処理を行う。
外部インターフェース103は、例えば、ネットワークNWを介して物理マシン2や物理マシン3と通信を行う。
そして、物理マシン2は、図3に示すように、プロセッサであるCPU201と、メモリ202と、外部インターフェース203と、記憶媒体204とを有する。各部は、バス205を介して互いに接続される。
記憶媒体204は、例えば、記憶媒体204内のプログラム格納領域(図示しない)に、クラスタ監視処理を行うためのプログラム210を記憶する。記憶媒体204は、例えば、HDDであってよい。
また、記憶媒体204は、例えば、クラスタ監視処理を行う際に用いられる情報を記憶する記憶部230(以下、情報格納領域230とも呼ぶ)を有する。
CPU201は、記憶媒体204からメモリ202にロードされたプログラム210を実行してクラスタ監視処理を行う。
外部インターフェース203は、例えば、物理マシン3と通信を行う。また、外部インターフェース203は、通信が制限されていない場合、ネットワークNWを介して情報処理装置1と通信を行う。
さらに、物理マシン3は、図4に示すように、プロセッサであるCPU301と、メモリ302と、外部インターフェース303と、記憶媒体304とを有する。各部は、バス305を介して互いに接続される。
記憶媒体304は、例えば、記憶媒体304内のプログラム格納領域(図示しない)に、クラスタ監視処理を行うためのプログラム310を記憶する。記憶媒体304は、例えば、HDDであってよい。
また、記憶媒体304は、例えば、クラスタ監視処理を行う際に用いられる情報を記憶する記憶部330(以下、情報格納領域330とも呼ぶ)を有する。
CPU301は、記憶媒体304からメモリ302にロードされたプログラム310を実行してクラスタ監視処理を行う。
外部インターフェース303は、例えば、物理マシン2と通信を行う。また、外部インターフェース303は、通信が制限されていない場合、ネットワークNWを介して情報処理装置1と通信を行う。
[情報処理システムの機能]
次に、情報処理システム10の機能について説明を行う。図5から図7は、情報処理システム10の機能のブロック図である。具体的に、図5は、情報処理装置1の機能のブロック図である。また、図6は、物理マシン2の機能のブロック図である。さらに、図7は、物理マシン3の機能のブロック図である。
次に、情報処理システム10の機能について説明を行う。図5から図7は、情報処理システム10の機能のブロック図である。具体的に、図5は、情報処理装置1の機能のブロック図である。また、図6は、物理マシン2の機能のブロック図である。さらに、図7は、物理マシン3の機能のブロック図である。
初めに、情報処理装置1の機能について説明を行う。
情報処理装置1は、CPU101やメモリ102等のハードウエアとプログラム110とが有機的に協働することにより、図5に示すように、情報処理装置1の機能として、指示受信部111と、VM生成部112とを含む各種機能を実現する。また、CPU101やメモリ102等のハードウエアとプログラム110とが有機的に協働することにより、図5に示すように、情報処理装置1上に生成された仮想マシン1aの機能として、インストール実行部121と、状態取得部122と、情報生成部123と、情報通知部124とを含む各種機能を実現する。
そして、情報処理装置1は、図5に示すように、状態情報131と、設定情報132とを情報格納領域130に記憶する。
情報処理装置1の指示受信部111は、新たな仮想マシン(例えば、仮想マシン1a)を生成する旨の指示(以下、VM生成指示とも呼ぶ)を受信する。VM生成指示は、例えば、事業者が操作端末3を介して情報処理装置1に対して行うものであってよい。
情報処理装置1のVM生成部112は、指示受信部111がVM生成指示を受信した場合、新たな仮想マシン(例えば、仮想マシン1a)を生成する。VM生成部112は、例えば、情報処理装置1上において動作するハイパーバイザであってよい。
仮想マシン1aのインストール実行部121は、仮想マシン1aがクォーラムサーバとして機能するために、例えば、情報格納領域130に記憶されたインストール用プログラム(図示しない)を実行する。
仮想マシン1aの状態取得部122は、物理マシン2及び物理マシン3のそれぞれから動作状態を取得する。具体的に、状態取得部122は、例えば、定期的な間隔において物理マシン2及び物理マシン3のそれぞれから動作状態の取得を行う。
仮想マシン1aの情報生成部123は、状態取得部122が取得した物理マシン2及び物理マシン3の動作状態を含む状態情報131を生成する。そして、情報生成部123は、生成した状態情報131を情報格納領域130に記憶する。
仮想マシン1aの情報通知部124は、情報生成部123が生成した状態情報131を物理マシン2及び物理マシン3のそれぞれに通知する。設定情報132についての説明は後述する。
次に、物理マシン2の機能について説明を行う。
物理マシン2は、CPU201やメモリ202等のハードウエアとプログラム210とが有機的に協働することにより、図6に示すように、状態取得部211と、異常判定部212と、実行切換部213と、指示送信部214とを含む各種機能を実現する。
そして、物理マシン2は、図6に示すように、設定情報231を情報格納領域230に記憶する。
物理マシン2の状態取得部211は、物理マシン3の動作状態を取得する。
物理マシン2の異常判定部212は、状態取得部211が取得した物理マシン3の動作状態が異常を示しているか否かの判定を行う。また、異常判定部212は、状態取得部211が取得した物理マシン3の動作状態が異常を示している場合、仮想マシン1aから通知された状態情報131に、物理マシン3の動作状態が異常であることを示す情報が含まれているか否かを判定する。
物理マシン2の実行切換部213は、異常判定部212によって物理マシン3の動作状態が異常であると判定された場合、物理マシン3が実行する処理を物理マシン3に代わって実行する。具体的に、実行切換部213は、例えば、物理マシン3がプライマリの物理マシンとして動作しており、物理マシン2がセカンダリの物理マシンとして動作している場合において、異常判定部212によって物理マシン3の動作状態が異常であると判定された場合に、物理マシン2がプライマリの物理マシンとして動作を開始するように設定の変更等を行う。
物理マシン2の指示送信部214は、仮想マシン1aからの状態情報131の通知間隔に基づいて、仮想マシン1aの動作状態が異常であると判定した場合、仮想マシン1aに代わってクォーラムサーバとして機能する新たな仮想マシンの生成を情報処理装置1に指示する。設定情報231についての説明は後述する。
次に、物理マシン3の機能について説明を行う。
物理マシン3は、CPU301やメモリ302等のハードウエアとプログラム310とが有機的に協働することにより、図7に示すように、状態取得部311と、異常判定部312と、実行切換部313と、指示送信部314とを含む各種機能を実現する。
そして、物理マシン3は、図7に示すように、設定情報331を情報格納領域330に記憶する。
物理マシン3の状態取得部311は、物理マシン2の動作状態を取得する。
物理マシン3の異常判定部312は、状態取得部311が取得した物理マシン2の動作状態が異常を示しているか否かの判定を行う。また、異常判定部312は、状態取得部311が取得した物理マシン2の動作状態が異常を示している場合、仮想マシン1aから通知された状態情報131に、物理マシン2の動作状態が異常であることを示す情報が含まれているか否かを判定する。
物理マシン3の実行切換部313は、異常判定部312によって物理マシン2の動作状態が異常であると判定された場合、物理マシン2が実行する処理を物理マシン2に代わって実行する。具体的に、実行切換部313は、物理マシン2がプライマリの物理マシンとして動作しており、物理マシン3がセカンダリの物理マシンとして動作している場合において、異常判定部312によって物理マシン2の動作状態が異常であると判定された場合に、物理マシン3がプライマリの物理マシンとして動作を開始するように設定の変更等を行う。
物理マシン3の指示送信部314は、仮想マシン1aからの状態情報131の通知間隔に基づいて、仮想マシン1aの動作状態が異常であると判定した場合、仮想マシン1aに代わってクォーラムサーバとして機能する新たな仮想マシンの生成を情報処理装置1に指示する。設定情報331についての説明は後述する。
[第1の実施の形態の概略]
次に、第1の実施の形態の概略について説明する。図8及び図9は、第1の実施の形態におけるクラスタ監視処理の概略を説明するフローチャート図である。図10及び図11は、第1の実施の形態におけるクラスタ監視処理の概略を説明する図である。以下、図10及び図11を参照しながら、図8及び図9に示すクラスタ監視処理の概略について説明を行う。
次に、第1の実施の形態の概略について説明する。図8及び図9は、第1の実施の形態におけるクラスタ監視処理の概略を説明するフローチャート図である。図10及び図11は、第1の実施の形態におけるクラスタ監視処理の概略を説明する図である。以下、図10及び図11を参照しながら、図8及び図9に示すクラスタ監視処理の概略について説明を行う。
仮想マシン1aは、図8に示すように、状態通知タイミングまで待機する(S1のNO)。状態通知タイミングは、例えば、1秒間隔等の定期的なタイミングである。
そして、状態通知タイミングになった場合(S1のYES)、仮想マシン1aは、物理マシン2及び物理マシン3のそれぞれから動作状態を取得する(S2)。
その後、仮想マシン1aは、S2の処理で取得した物理マシン2及び物理マシン3の動作状態を示す状態情報131を、物理マシン2及び物理マシン3のそれぞれに通知する(S3)。
具体的に、仮想マシン1aは、図10に示すように、物理マシン2及び物理マシン3のそれぞれから動作状態を取得した後、取得した動作状態から状態情報131を生成する。そして、仮想マシン1aは、生成した状態情報131を物理マシン2及び物理マシン3のそれぞれに送信する。
また、物理マシン2は、図9に示すように、状態判定タイミングまで待機する(S11のNO)。状態判定タイミングは、例えば、1秒間隔等の定期的なタイミングであってよい。
そして、状態判定タイミングになった場合(S11のYES)、物理マシン2は、物理マシン3の動作状態を取得する(S12)。
続いて、物理マシン2は、S12の処理で取得した物理マシン3の動作状態が異常であって、かつ、S3の処理で仮想マシン1aから通知された状態情報131に、物理マシン3の動作状態が異常であることを示す情報が含まれているか否かを判定する(S13)。
その結果、S12の処理で取得した物理マシン3の動作状態が異常であって、かつ、S3の処理で仮想マシン1aから通知された状態情報131に、物理マシン3の動作状態が異常であることを示す情報が含まれていると判定した場合(S14のYES)、物理マシン2は、物理マシン3が実行する処理を物理マシン3に代わって実行する(S15)。
具体的に、物理マシン2は、図11に示すように、物理マシン3から取得した動作状態を確認した結果、物理マシン3の動作状態が異常であると判定した場合、物理マシン3が行っていた処理を引き継いで実行する。
これにより、物理マシン2は、物理マシン2から情報処理装置1(仮想マシン1a)に対する通信が制限されている場合であっても、仮想マシン1aが確認した物理マシン3の動作状態を参照することが可能になる。そのため、事業者は、物理マシン2から情報処理装置1(仮想マシン1a)に対する通信が制限されている場合であっても、情報処理装置1(仮想マシン1a)から物理マシン2に対する通信が許可されている場合、事業者が管理する情報処理装置1に生成された仮想マシン1aをクォーラムサーバとして用いたクォーラムを構成することが可能になる。
[第1の実施の形態の詳細]
次に、第1の実施の形態の詳細について説明する。図12から図17は、第1の実施の形態におけるクラスタ監視処理の詳細を説明するフローチャート図である。また、図18から図21は、第1の実施の形態におけるクラスタ監視処理の詳細を説明する図である。以下、図18から図21を参照しながら、図12から図17に示すクラスタ監視処理の詳細について説明を行う。なお、以下、クォーラムサーバとして機能する仮想マシン1aが情報処理装置1上において既に生成されているものとして説明を行う。
次に、第1の実施の形態の詳細について説明する。図12から図17は、第1の実施の形態におけるクラスタ監視処理の詳細を説明するフローチャート図である。また、図18から図21は、第1の実施の形態におけるクラスタ監視処理の詳細を説明する図である。以下、図18から図21を参照しながら、図12から図17に示すクラスタ監視処理の詳細について説明を行う。なお、以下、クォーラムサーバとして機能する仮想マシン1aが情報処理装置1上において既に生成されているものとして説明を行う。
[仮想マシンが実行するインストール処理]
初めに、仮想マシン1aが実行するクラスタ監視処理のうち、インストール用プログラムを実行する際の処理(以下、インストール処理とも呼ぶ)について説明を行う。図12は、仮想マシン1aが実行するインストール処理について説明する図である。
初めに、仮想マシン1aが実行するクラスタ監視処理のうち、インストール用プログラムを実行する際の処理(以下、インストール処理とも呼ぶ)について説明を行う。図12は、仮想マシン1aが実行するインストール処理について説明する図である。
仮想マシン1aのインストール実行部121は、図12に示すように、クォーラムサーバのインストールタイミングまで待機する(S21のNO)。クォーラムサーバのインストールタイミングは、例えば、事業者がクォーラムサーバの設定を行う旨の入力を操作端末5に対して行ったタイミングであってよい。
そして、クォーラムサーバのインストールタイミングになった場合(S21のYES)、インストール実行部121は、例えば、物理マシン2の情報格納領域230または物理マシン3の情報格納領域330に記憶されたインストール用プログラム(図示しない)と、物理マシン2及び物理マシン3のIPアドレスとを取得する(S22)。その後、インストール実行部121は、取得したインストール用プログラムとIPアドレスを示す情報とを情報格納領域130に記憶する。物理マシン2及び物理マシン3のIPアドレスは、例えば、情報格納領域230等から取得したインストール用プログラムに付加されている情報に含まれているものであってよい。
続いて、インストール実行部121は、S22の処理で取得したインストール用プログラムを実行する(S23)。具体的に、インストール実行部121は、例えば、情報格納領域130に記憶されたインストール用プログラムを実行する。
その後、インストール実行部121は、S22の処理で取得したIPアドレスを含む設定情報132を生成する(S24)。
これにより、仮想マシン1aは、クォーラムサーバとしての動作を開始することが可能になる。以下、設定情報132の具体例について説明を行う。
[設定情報の具体例]
図18は、設定情報132の具体例を説明する図である。具体的に、図18(A)は、S22の処理で取得したIPアドレスを含む第1設定情報132aの具体例を説明する図である。また、図18(B)は、仮想マシン1aが物理マシン2及び物理マシン3の動作状態を確認する時間間隔を示す情報を含む第2設定情報132bの具体例を説明する図である。
図18は、設定情報132の具体例を説明する図である。具体的に、図18(A)は、S22の処理で取得したIPアドレスを含む第1設定情報132aの具体例を説明する図である。また、図18(B)は、仮想マシン1aが物理マシン2及び物理マシン3の動作状態を確認する時間間隔を示す情報を含む第2設定情報132bの具体例を説明する図である。
図18(A)に示す第1設定情報132aは、第1設定情報132aに含まれる各情報を識別する「項番」と、各物理マシン(物理マシン2及び物理マシン3)を識別する「ノード名」と、各物理マシンのIPアドレスが設定される「IPアドレス」とを項目として有する。
具体的に、図18(A)に示す第1設定情報132aにおいて、「項番」が「1」である情報には、「ノード名」として「物理マシン2」が設定され、「IPアドレス」として「xxx.xxx.xxx.xxx」が設定されている。また、図18(A)に示す第1設定情報132aにおいて、「項番」が「2」である情報には、「ノード名」として「物理マシン3」が設定され、「IPアドレス」として「yyy.yyy.yyy.yyy」が設定されている。
そして、図18(B)に示す第2設定情報132bは、第2設定情報132bに含まれる各情報を識別する「項番」と、各物理マシンの動作状態を確認する時間間隔が設定される「監視間隔」とを項目として有する。
具体的に、図18(B)に示す第2設定情報132bにおいて、「項番」が「1」である情報には、「監視間隔」として「2(秒)」が設定されている。
[仮想マシンが実行する状態確認処理]
次に、仮想マシン1aが実行するクラスタ監視処理のうち、物理マシン2及び物理マシン3の動作状態を確認する際の処理(以下、状態確認処理とも呼ぶ)について説明を行う。図13は、仮想マシン1aが実行する状態確認処理について説明する図である。
次に、仮想マシン1aが実行するクラスタ監視処理のうち、物理マシン2及び物理マシン3の動作状態を確認する際の処理(以下、状態確認処理とも呼ぶ)について説明を行う。図13は、仮想マシン1aが実行する状態確認処理について説明する図である。
仮想マシン1aの状態取得部122は、状態通知タイミングまで待機する(S31のNO)。状態通知タイミングは、例えば、1秒間隔等の定期的なタイミングである。
そして、状態通知タイミングになった場合(S31のYES)、仮想マシン1aの状態取得部122は、物理マシン2及び物理マシン3のそれぞれから動作状態を取得する(S32)。
続いて、仮想マシン1aの情報生成部123は、S32の処理で取得した物理マシン2及び物理マシン3の動作状態を含む状態情報131を生成する(S33)。その後、情報生成部123は、生成した状態情報131を情報格納領域130に記憶する。以下、状態情報131の具体例について説明を行う。
[状態情報の具体例]
図19は、状態情報131の具体例を説明する図である。
図19は、状態情報131の具体例を説明する図である。
図19に示す状態情報131は、状態情報131に含まれる各情報を識別する「項番」と、各物理マシン(物理マシン2及び物理マシン3)を識別する「ノード名」と、各物理マシンの動作状態を示す情報が設定される「状態」とを項目として有する。「状態」には、各物理マシンの動作状態が正常であることを示す「正常」、または、各物理マシンの動作状態が異常であることを示す「異常」が設定される。また、図19に示す状態情報131は、各物理マシンの動作状態を確認した時刻が設定される「確認時刻」を項目として有する。
具体的に、図19に示す状態情報131において、「項番」が「1」である情報には、「ノード名」として「物理マシン2」が設定され、「状態」として「正常」が設定され、「確認時刻」として「2017/11/09 10:48:58」が設定されている。また、図19に示す状態情報131において、「項番」が「2」である情報には、「ノード名」として「物理マシン3」が設定され、「状態」として「異常」が設定され、「確認時刻」として「2017/11/09 10:48:58」が設定されている。
図13に戻り、仮想マシン1aの情報通知部124は、情報格納領域130に記憶された設定情報132を参照し、S33の処理で生成した状態情報131を、物理マシン2及び物理マシン3のそれぞれに通知する(S34)。
具体的に、情報通知部124は、図18(A)で説明した第1設定情報132aの「IPアドレス」に設定された各IPアドレスに対し、S33の処理で生成した状態情報131(情報格納領域130に記憶された状態情報131)をそれぞれ送信する。
[物理マシンが実行するクラスタ監視処理]
次に、物理マシン2が実行するクラスタ監視処理について説明を行う。
次に、物理マシン2が実行するクラスタ監視処理について説明を行う。
物理マシン2の状態取得部211は、図14に示すように、状態判定タイミングまで待機する(S41のNO)。状態判定タイミングは、例えば、情報格納領域230に記憶された設定情報231に含まれる監視間隔ごとのタイミングであってよい。具体的に、状態判定タイミングは、例えば、1秒間隔等の定期的なタイミングであってよい。以下、設定情報231の具体例について説明を行う。
[設定情報の具体例]
図20は、設定情報231の具体例を説明する図である。具体的に、図20(A)は、物理マシン3の監視間隔を含む第1設定情報231aの具体例を説明する図である。また、図20(B)は、仮想マシン1aの動作状態が異常であるか否かの判定に用いられる許容時間を含む第2設定情報231bの具体例を説明する図である。なお、設定情報231は、事業者によって予め作成され、情報格納領域230に記憶されるものであってよい。
図20は、設定情報231の具体例を説明する図である。具体的に、図20(A)は、物理マシン3の監視間隔を含む第1設定情報231aの具体例を説明する図である。また、図20(B)は、仮想マシン1aの動作状態が異常であるか否かの判定に用いられる許容時間を含む第2設定情報231bの具体例を説明する図である。なお、設定情報231は、事業者によって予め作成され、情報格納領域230に記憶されるものであってよい。
図20(A)に示す第1設定情報231aは、第1設定情報231aに含まれる各情報を識別する「項番」と、他の物理マシン(物理マシン3)の監視間隔が設定される「監視間隔」とを項目として有する。
具体的に、図20(A)に示す第1設定情報231aにおいて、「項番」が「1」である情報には、「監視間隔」として「2(秒)」が設定されている。
そして、図20(B)に示す第2設定情報231bは、第2設定情報231bに含まれる各情報を識別する「項番」と、仮想マシン1aの動作状態が異常であるか否かの判定に用いられる許容時間が設定される「許容時間」とを項目として有する。
具体的に、図20(B)に示す第2設定情報231bにおいて、「項番」が「1」である情報には、「許容時間」として「5(秒)」が設定されている。
図14に戻り、状態判定タイミングになった場合(S41のYES)、状態取得部211は、物理マシン3の動作状態を取得する(S42)。
続いて、物理マシン3の動作状態の取得に成功した場合(S43のYES)、物理マシン2の異常判定部212は、S42の処理で取得した動作状態を参照し、物理マシン3における現在の動作状態が異常であるか否かを判定する(S44)。
その結果、物理マシン3における現在の動作状態が異常であると判定した場合(S45のYES)、異常判定部212は、S34の処理で通知された状態情報131のうちの最新の情報を参照し、現在の動作状態が異常である物理マシンが存在しているか否かを判定する(S46)。また、異常判定部212はS43の処理において物理マシン3の動作状態の取得に失敗した場合(S43のNO)も同様に、S46の処理を行う。
そして、図15に示すように、現在の動作状態が異常である物理マシンが存在していると判定した場合(S51のYES)、異常判定部212は、S34の処理で通知された状態情報131のうちの最新の情報に、物理マシン2の現在の動作状態が異常であることを示す情報が含まれているか否かを判定する(S52)。
その結果、物理マシン2の現在の動作状態が異常であることを示す情報については含まれていないが、物理マシン3の現在の動作状態が異常であることを示す情報が含まれていると判定した場合(S52のNO)、物理マシン2の実行切換部213は、物理マシン3が実行している処理(実行する予定の処理)を引き継いで実行する(S53)。
すなわち、実行切換部213は、この場合、物理マシン3が利用者にサービスを提供するための処理の実行を継続することができなくなっていると判定し、物理マシン3が実行する処理の実行を引き継ぐ。
具体的に、実行切換部213は、物理マシン3がプライマリの物理マシンとして動作しており、物理マシン2がセカンダリの物理マシンとして動作している場合において、物理マシン3の現在の動作状態が異常であると判定された場合に、物理マシン2がプライマリの物理マシンとして動作を開始するように設定の変更等を行う。
一方、物理マシン2の現在の動作状態が異常であることを示す情報が含まれていると判定した場合(S52のYES)、実行切換部213は、物理マシン2において現在実行中の処理を停止する(S54)。
すなわち、S44の処理において物理マシン3の現在の動作状態が異常と判断される場合には、物理マシン3の動作状態が正常であるにもかかわらず、物理マシン2と物理マシン3との間におけるネットワークの状態の不調に起因して物理マシン3が異常と判断されている場合が含まれる。そのため、物理マシン2は、S44の処理において物理マシン3の現在の動作状態が異常と判断された場合、さらに、S34の処理で通知された状態情報131に、物理マシン3の現在の動作状態が異常であることを示す情報が含まれているか否かの判定を行う。そして、物理マシン2は、S34の処理で通知された状態情報131に、物理マシン3の現在の動作状態が異常であることを示す情報が含まれていると判定した場合に、物理マシン3が実行する処理の実行を引き継ぐ。
これにより、物理マシン2は、物理マシン3の実際の動作状態が正常であるにもかかわらず、物理マシン3が実行する処理の実行を開始することの防止が可能になる。そのため、事業者は、物理マシン2及び物理マシン3においてスプリットブレインが発生することを防止することが可能になる。
そして、物理マシン2は、S53の処理またはS54の処理の後、クラスタ監視処理を終了する。
また、S45の処理において、物理マシン3における現在の動作状態が異常でないと判定した場合(S45のNO)、異常判定部212は、図16に示すように、S34の処理で通知された状態情報131に含まれる時刻と現在時刻との差が、情報格納領域230に記憶された設定情報231に含まれる許容時間以下であるか否かを判定する(S61)。
すなわち、異常判定部212は、この場合、仮想マシン1aから状態情報131の通知が前回行われてから経過した時間が許容時間を超えているか否かを判定する。そして、異常判定部212は、状態情報131の通知が前回行われてから経過した時間が許容時間を超えていると判定した場合、仮想マシン1aの現在の動作状態が異常であると判定する。
これにより、異常判定部212は、物理マシン2から情報処理装置1(仮想マシン1a)に対する通信が制限されている場合であっても、仮想マシン1aの現在の動作状態の判定を行うことが可能になる。
具体的に、異常判定部212は、例えば、S34の処理で通知された状態情報131に含まれる時刻と現在時刻との差が、図20(B)で説明した第2設定情報231bの「許容時間」に設定された時間以下であるか否かの判定を行う。
その結果、S34の処理で通知された状態情報131に含まれる時刻と現在時刻との差が許容時間以下であると判定した場合(S62のYES)、物理マシン2は、クラスタ監視処理を終了する。すなわち、異常判定部212は、この場合、仮想マシン1aの動作状態が正常であると判定する。
一方、S34の処理で通知された状態情報131に含まれる時刻と現在時刻との差が許容時間以下でないと判定した場合(S62のNO)、状態取得部211は、物理マシン3が仮想マシン1aから通知された状態情報131のうちの最新の情報を、物理マシン3から取得する(S63)。具体的に、状態取得部211は、例えば、物理マシン3の情報格納領域330にアクセスし、物理マシン3が仮想マシン1aから通知された状態情報131のうちの最新の情報を取得する。
そして、異常判定部212は、S63の処理で取得した状態情報131に含まれる時刻と現在時刻との差が、情報格納領域230に記憶された設定情報231に含まれる許容時間以下であるか否かを判定する(S64)。
その結果、S63の処理で取得した状態情報131に含まれる時刻と現在時刻との差が許容時間以下であると判定した場合(S65のYES)、物理マシン2は、クラスタ監視処理を終了する。
一方、S63の処理で取得した状態情報131に含まれる時刻と現在時刻との差が許容時間以下でないと判定した場合(S65のNO)、物理マシン2の指示送信部214は、情報処理装置1に対して、クォーラムサーバとして機能する新たな仮想マシンの生成を行う旨の指示(VM生成指示)を送信する(S66)。
すなわち、S62の処理において仮想マシン1aから状態情報131の送信が前回行われてから許容時間を超えていると判断される場合には、仮想マシン1aの動作状態が正常であるにもかかわらず、情報処理装置1(仮想マシン1a)と物理マシン2との間におけるネットワークの状態の不調に起因して仮想マシン1aが異常と判断されている場合が含まれる。そのため、物理マシン2は、S62の処理において仮想マシン1aの現在の動作状態が異常と判断された場合、さらに、物理マシン3においても仮想マシン1aの現在の動作状態が異常と判断されているか否かを判定する。そして、物理マシン2は、物理マシン3においても仮想マシン1aの現在の動作状態が異常と判断されていると判定した場合に、情報処理装置1に対して新たな仮想マシンの生成を指示する。
これにより、物理マシン2は、仮想マシン1aの実際の動作状態が正常であるにもかかわらず、情報処理装置1に対して新たな仮想マシンの生成を指示することを防止することが可能になる。
なお、物理マシン3が実行するクラスタ監視処理は、物理マシン2が実行するクラスタ監視処理と同じ内容である。そのため、物理マシン3が実行するクラスタ監視処理については説明を省略する。また、情報格納領域330に記憶された設定情報331は、情報格納領域230に記憶された設定情報231と同じ内容である。そのため、設定情報331についての説明は省略する。
[情報処理装置が実行するクラスタ監視処理]
次に、情報処理装置1が実行するクラスタ監視処理について説明を行う。
次に、情報処理装置1が実行するクラスタ監視処理について説明を行う。
情報処理装置1の指示受信部111は、図17に示すように、物理マシン2または物理マシン3からVM生成指示を受信するまで待機する(S71のNO)。
そして、VM生成指示を受信した場合(S71のYES)、情報処理装置1のVM生成部112は、クォーラムサーバとして機能する新たな仮想マシン1b(以下、VM1bとも呼ぶ)を生成する(S72)。
具体的に、VM生成部112は、図21に示すように、新たな仮想マシンである仮想マシン1bを生成し、仮想マシン1aの代わりにクォーラムサーバとして機能させる。
これにより、情報処理装置1は、仮想マシン1aの動作状態が異常であると物理マシン2または物理マシン3が判定した場合、他の仮想マシンをクォーラムサーバとして機能させることが可能になる。
このように、本実施の形態における仮想マシン1aは、物理マシン2及び物理マシン3の動作状態をそれぞれ取得し、取得した物理マシン2及び物理マシン3の動作状態を示す状態情報131を物理マシン2及び物理マシン3のそれぞれに通知する。
そして、物理マシン2は、物理マシン3の動作状態を取得し、取得した物理マシン3の動作状態が異常であって、仮想マシン1aから通知された状態情報131に物理マシン3の動作状態が異常であることを示す情報が含まれていると判定した場合、物理マシン3が実行する処理(物理マシン3が実行する予定の処理)を物理マシン3に代わって実行する。
すなわち、例えば、情報処理装置1(仮想マシン1a)から物理マシン2に対する通信が許可されている場合、仮想マシン1aは、物理マシン2及び物理マシン3の動作状態を取得するだけでなく、取得した動作状態を物理マシン2及び物理マシン3にそれぞれ送信する。
これにより、物理マシン2は、物理マシン2から情報処理装置1(仮想マシン1a)に対する通信が制限されている場合であっても、情報処理装置1(仮想マシン1a)から物理マシン2に対する通信が許可されている場合、仮想マシン1aが確認した物理マシン3の動作状態を参照することが可能になる。そのため、事業者は、この場合、事業者が管理する情報処理装置1に生成された仮想マシン1aをクォーラムサーバとして用いたクォーラムを構成することが可能になる。
(付記1)
クラスタを構成する第1及び第2ノードと、
前記第1及び第2ノードの動作状態をそれぞれ監視する監視ノードと、を有し、
前記監視ノードは、
前記第1及び第2ノードから各ノードの動作状態を取得し、
取得した前記第1及び第2ノードの動作状態を示す状態情報を前記第1及び第2ノードのそれぞれに通知し、
前記第1ノードは、
前記第2ノードの動作状態を取得し、
取得した前記第2ノードの動作状態が異常を示している場合であって、前記監視ノードから通知された前記状態情報に前記第2ノードの動作状態が異常であることを示す情報が含まれていると判定した場合、前記第2ノードが実行する処理を前記第2ノードに代わって実行する、
ことを特徴とするクラスタシステム。
クラスタを構成する第1及び第2ノードと、
前記第1及び第2ノードの動作状態をそれぞれ監視する監視ノードと、を有し、
前記監視ノードは、
前記第1及び第2ノードから各ノードの動作状態を取得し、
取得した前記第1及び第2ノードの動作状態を示す状態情報を前記第1及び第2ノードのそれぞれに通知し、
前記第1ノードは、
前記第2ノードの動作状態を取得し、
取得した前記第2ノードの動作状態が異常を示している場合であって、前記監視ノードから通知された前記状態情報に前記第2ノードの動作状態が異常であることを示す情報が含まれていると判定した場合、前記第2ノードが実行する処理を前記第2ノードに代わって実行する、
ことを特徴とするクラスタシステム。
(付記2)
付記1において、
前記第2ノードは、
前記第1ノードの動作状態を取得し、
取得した前記第1ノードの動作状態が異常を示している場合であって、前記監視ノードから通知された前記状態情報に前記第1ノードの動作状態が異常であることを示す情報が含まれていると判定した場合、前記第1ノードが実行する処理を前記第1ノードに代わって実行する、
ことを特徴とするクラスタシステム。
付記1において、
前記第2ノードは、
前記第1ノードの動作状態を取得し、
取得した前記第1ノードの動作状態が異常を示している場合であって、前記監視ノードから通知された前記状態情報に前記第1ノードの動作状態が異常であることを示す情報が含まれていると判定した場合、前記第1ノードが実行する処理を前記第1ノードに代わって実行する、
ことを特徴とするクラスタシステム。
(付記3)
付記1において、
前記第1ノードは、
取得した前記第2ノードの動作状態が異常を示している場合に、通知された前記状態情報に前記第2ノードの動作状態が異常であることを示す情報が含まれているか否かを判定し、
通知された前記状態情報に前記第2ノードの動作状態が異常であることを示す情報が含まれていると判定した場合に、前記第2ノードが実行する処理を実行する、
ことを特徴とするクラスタシステム。
付記1において、
前記第1ノードは、
取得した前記第2ノードの動作状態が異常を示している場合に、通知された前記状態情報に前記第2ノードの動作状態が異常であることを示す情報が含まれているか否かを判定し、
通知された前記状態情報に前記第2ノードの動作状態が異常であることを示す情報が含まれていると判定した場合に、前記第2ノードが実行する処理を実行する、
ことを特徴とするクラスタシステム。
(付記4)
付記3において、
前記第1ノードは、
前記第2ノードの動作状態が異常であることを示している場合、または、前記第2ノードの動作状態を取得できなかった場合に、通知された前記状態情報に前記第2ノードの動作状態が異常であることを示す情報が含まれているか否かの判定を行う、
ことを特徴とするクラスタシステム。
付記3において、
前記第1ノードは、
前記第2ノードの動作状態が異常であることを示している場合、または、前記第2ノードの動作状態を取得できなかった場合に、通知された前記状態情報に前記第2ノードの動作状態が異常であることを示す情報が含まれているか否かの判定を行う、
ことを特徴とするクラスタシステム。
(付記5)
付記1において、さらに、
前記第1及び第2ノードと前記監視ノードとの間に配置されたネットワーク装置を有し、
前記ネットワーク装置は、前記第1及び第2ノードから前記監視ノードに対する通信を禁止する、
ことを特徴とするクラスタシステム。
付記1において、さらに、
前記第1及び第2ノードと前記監視ノードとの間に配置されたネットワーク装置を有し、
前記ネットワーク装置は、前記第1及び第2ノードから前記監視ノードに対する通信を禁止する、
ことを特徴とするクラスタシステム。
(付記6)
付記1において、
前記監視ノードは、物理マシン上に生成された仮想マシンからなるノードである、
ことを特徴とするクラスタシステム。
付記1において、
前記監視ノードは、物理マシン上に生成された仮想マシンからなるノードである、
ことを特徴とするクラスタシステム。
(付記7)
付記6において、
前記第1ノードは、前記状態情報の通知が所定時間以上行われない場合、前記物理マシンに対して、前記監視ノードとして動作する新たな仮想マシンの生成を指示する、
ことを特徴とするクラスタシステム。
付記6において、
前記第1ノードは、前記状態情報の通知が所定時間以上行われない場合、前記物理マシンに対して、前記監視ノードとして動作する新たな仮想マシンの生成を指示する、
ことを特徴とするクラスタシステム。
(付記8)
クラスタを構成する第1及び第2ノードから各ノードの動作状態を取得する状態取得部と、
前記第2ノードが実行する処理を前記第2ノードに代わって実行するか否かの判定を行う際に前記第1ノードが用いる情報として、取得した前記第1及び第2ノードの動作状態を示す状態情報を前記第1ノードに通知し、前記第1ノードが実行する処理を前記第1ノードに代わって実行するか否かの判定を行う際に前記第2ノードが用いる情報として、取得した前記第1及び第2ノードの動作状態を示す状態情報を前記第2ノードに通知する情報通知部と、を有する、
ことを特徴とする情報処理装置。
クラスタを構成する第1及び第2ノードから各ノードの動作状態を取得する状態取得部と、
前記第2ノードが実行する処理を前記第2ノードに代わって実行するか否かの判定を行う際に前記第1ノードが用いる情報として、取得した前記第1及び第2ノードの動作状態を示す状態情報を前記第1ノードに通知し、前記第1ノードが実行する処理を前記第1ノードに代わって実行するか否かの判定を行う際に前記第2ノードが用いる情報として、取得した前記第1及び第2ノードの動作状態を示す状態情報を前記第2ノードに通知する情報通知部と、を有する、
ことを特徴とする情報処理装置。
(付記9)
付記8において、
前記状態取得部及び前記情報通知部は、前記情報処理装置上に生成された仮想マシンが有しており、さらに、
前記状態情報の通知が所定時間以上行われていない旨が前記第1ノードまたは前記第2ノードから通知された場合、前記状態取得部及び前記情報通知部を有する新たな仮想マシンを生成し、
前記仮想マシンの前記状態取得部及び前記情報通知部に代わって、前記新たな仮想マシンの前記状態取得部及び前記情報通知部に処理を行わせる、
ことを特徴とする情報処理装置。
付記8において、
前記状態取得部及び前記情報通知部は、前記情報処理装置上に生成された仮想マシンが有しており、さらに、
前記状態情報の通知が所定時間以上行われていない旨が前記第1ノードまたは前記第2ノードから通知された場合、前記状態取得部及び前記情報通知部を有する新たな仮想マシンを生成し、
前記仮想マシンの前記状態取得部及び前記情報通知部に代わって、前記新たな仮想マシンの前記状態取得部及び前記情報通知部に処理を行わせる、
ことを特徴とする情報処理装置。
(付記10)
クラスタを構成する第1及び第2ノードの動作状態をそれぞれ監視する監視ノードが、前記第1及び第2ノードから各ノードの動作状態を取得し、
前記監視ノードが、取得した前記第1及び第2ノードの動作状態を示す状態情報を前記第1及び第2ノードのそれぞれに通知し、
前記第1ノードが、前記第2ノードの動作状態を取得し、
前記第1ノードが、取得した前記第2ノードの動作状態が異常を示している場合であって、前記監視ノードから通知された前記状態情報に前記第2ノードの動作状態が異常であることを示す情報が含まれていると判定した場合、前記第2ノードが実行する処理を前記第2ノードに代わって実行する、
ことを特徴とするクラスタ監視方法。
クラスタを構成する第1及び第2ノードの動作状態をそれぞれ監視する監視ノードが、前記第1及び第2ノードから各ノードの動作状態を取得し、
前記監視ノードが、取得した前記第1及び第2ノードの動作状態を示す状態情報を前記第1及び第2ノードのそれぞれに通知し、
前記第1ノードが、前記第2ノードの動作状態を取得し、
前記第1ノードが、取得した前記第2ノードの動作状態が異常を示している場合であって、前記監視ノードから通知された前記状態情報に前記第2ノードの動作状態が異常であることを示す情報が含まれていると判定した場合、前記第2ノードが実行する処理を前記第2ノードに代わって実行する、
ことを特徴とするクラスタ監視方法。
(付記11)
付記10において、
前記監視ノードは、物理マシン上に生成された仮想マシンからなるノードである、
ことを特徴とするクラスタ監視方法。
付記10において、
前記監視ノードは、物理マシン上に生成された仮想マシンからなるノードである、
ことを特徴とするクラスタ監視方法。
(付記12)
付記11において、さらに、
前記第1ノードが、前記状態情報の通知が所定時間以上行われない場合、前記物理マシンに対して、前記監視ノードとして動作する新たな仮想マシンの生成を指示する、
ことを特徴とするクラスタ監視方法。
付記11において、さらに、
前記第1ノードが、前記状態情報の通知が所定時間以上行われない場合、前記物理マシンに対して、前記監視ノードとして動作する新たな仮想マシンの生成を指示する、
ことを特徴とするクラスタ監視方法。
(付記13)
クラスタを構成する第1及び第2ノードから各ノードの動作状態を取得し、
前記第2ノードが実行する処理を前記第2ノードに代わって実行するか否かの判定を行う際に前記第1ノードが用いる情報として、取得した前記第1及び第2ノードの動作状態を示す状態情報を前記第1ノードに通知し、前記第1ノードが実行する処理を前記第1ノードに代わって実行するか否かの判定を行う際に前記第2ノードが用いる情報として、取得した前記第1及び第2ノードの動作状態を示す状態情報を前記第2ノードに通知する、
処理をコンピュータに実行させることを特徴とするクラスタ監視プログラム。
クラスタを構成する第1及び第2ノードから各ノードの動作状態を取得し、
前記第2ノードが実行する処理を前記第2ノードに代わって実行するか否かの判定を行う際に前記第1ノードが用いる情報として、取得した前記第1及び第2ノードの動作状態を示す状態情報を前記第1ノードに通知し、前記第1ノードが実行する処理を前記第1ノードに代わって実行するか否かの判定を行う際に前記第2ノードが用いる情報として、取得した前記第1及び第2ノードの動作状態を示す状態情報を前記第2ノードに通知する、
処理をコンピュータに実行させることを特徴とするクラスタ監視プログラム。
(付記14)
付記13において、
前記取得する処理及び前記通知する処理は、前記情報処理装置上に生成された仮想マシンによって行われ、さらに、
前記状態情報の通知が所定時間以上行われていない旨が前記第1ノードまたは前記第2ノードから通知された場合、新たな仮想マシンを生成し、
前記仮想マシンに代わって、前記取得する処理及び前記通知する処理を前記新たな仮想マシンに行わせる、
処理をコンピュータに実行させることを特徴とするクラスタ監視プログラム。
付記13において、
前記取得する処理及び前記通知する処理は、前記情報処理装置上に生成された仮想マシンによって行われ、さらに、
前記状態情報の通知が所定時間以上行われていない旨が前記第1ノードまたは前記第2ノードから通知された場合、新たな仮想マシンを生成し、
前記仮想マシンに代わって、前記取得する処理及び前記通知する処理を前記新たな仮想マシンに行わせる、
処理をコンピュータに実行させることを特徴とするクラスタ監視プログラム。
1:情報処理装置 1a:仮想マシン
2:物理マシン 3:物理マシン
5:操作端末 NW:ネットワーク
2:物理マシン 3:物理マシン
5:操作端末 NW:ネットワーク
Claims (10)
- クラスタを構成する第1及び第2ノードと、
前記第1及び第2ノードの動作状態をそれぞれ監視する監視ノードと、を有し、
前記監視ノードは、
前記第1及び第2ノードから各ノードの動作状態を取得し、
取得した前記第1及び第2ノードの動作状態を示す状態情報を前記第1及び第2ノードのそれぞれに通知し、
前記第1ノードは、
前記第2ノードの動作状態を取得し、
取得した前記第2ノードの動作状態が異常を示している場合であって、前記監視ノードから通知された前記状態情報に前記第2ノードの動作状態が異常であることを示す情報が含まれていると判定した場合、前記第2ノードが実行する処理を前記第2ノードに代わって実行する、
ことを特徴とするクラスタシステム。 - 請求項1において、
前記第2ノードは、
前記第1ノードの動作状態を取得し、
取得した前記第1ノードの動作状態が異常を示している場合であって、前記監視ノードから通知された前記状態情報に前記第1ノードの動作状態が異常であることを示す情報が含まれていると判定した場合、前記第1ノードが実行する処理を前記第1ノードに代わって実行する、
ことを特徴とするクラスタシステム。 - 請求項1において、
前記第1ノードは、
取得した前記第2ノードの動作状態が異常を示している場合に、通知された前記状態情報に前記第2ノードの動作状態が異常であることを示す情報が含まれているか否かを判定し、
通知された前記状態情報に前記第2ノードの動作状態が異常であることを示す情報が含まれていると判定した場合に、前記第2ノードが実行する処理を実行する、
ことを特徴とするクラスタシステム。 - 請求項3において、
前記第1ノードは、
前記第2ノードの動作状態が異常であることを示している場合、または、前記第2ノードの動作状態を取得できなかった場合に、通知された前記状態情報に前記第2ノードの動作状態が異常であることを示す情報が含まれているか否かの判定を行う、
ことを特徴とするクラスタシステム。 - 請求項1において、さらに、
前記第1及び第2ノードと前記監視ノードとの間に配置されたネットワーク装置を有し、
前記ネットワーク装置は、前記第1及び第2ノードから前記監視ノードに対する通信を禁止する、
ことを特徴とするクラスタシステム。 - 請求項1において、
前記監視ノードは、物理マシン上に生成された仮想マシンからなるノードである、
ことを特徴とするクラスタシステム。 - 請求項6において、
前記第1ノードは、前記状態情報の通知が所定時間以上行われない場合、前記物理マシンに対して、前記監視ノードとして動作する新たな仮想マシンの生成を指示する、
ことを特徴とするクラスタシステム。 - クラスタを構成する第1及び第2ノードから各ノードの動作状態を取得する状態取得部と、
前記第2ノードが実行する処理を前記第2ノードに代わって実行するか否かの判定を行う際に前記第1ノードが用いる情報として、取得した前記第1及び第2ノードの動作状態を示す状態情報を前記第1ノードに通知し、前記第1ノードが実行する処理を前記第1ノードに代わって実行するか否かの判定を行う際に前記第2ノードが用いる情報として、取得した前記第1及び第2ノードの動作状態を示す状態情報を前記第2ノードに通知する情報通知部と、を有する、
ことを特徴とする情報処理装置。 - クラスタを構成する第1及び第2ノードの動作状態をそれぞれ監視する監視ノードが、前記第1及び第2ノードから各ノードの動作状態を取得し、
前記監視ノードが、取得した前記第1及び第2ノードの動作状態を示す状態情報を前記第1及び第2ノードのそれぞれに通知し、
前記第1ノードが、前記第2ノードの動作状態を取得し、
前記第1ノードが、取得した前記第2ノードの動作状態が異常を示している場合であって、前記監視ノードから通知された前記状態情報に前記第2ノードの動作状態が異常であることを示す情報が含まれていると判定した場合、前記第2ノードが実行する処理を前記第2ノードに代わって実行する、
ことを特徴とするクラスタ監視方法。 - クラスタを構成する第1及び第2ノードから各ノードの動作状態を取得し、
前記第2ノードが実行する処理を前記第2ノードに代わって実行するか否かの判定を行う際に前記第1ノードが用いる情報として、取得した前記第1及び第2ノードの動作状態を示す状態情報を前記第1ノードに通知し、前記第1ノードが実行する処理を前記第1ノードに代わって実行するか否かの判定を行う際に前記第2ノードが用いる情報として、取得した前記第1及び第2ノードの動作状態を示す状態情報を前記第2ノードに通知する、
処理をコンピュータに実行させることを特徴とするクラスタ監視プログラム。
Priority Applications (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
JP2018037544A JP2019153055A (ja) | 2018-03-02 | 2018-03-02 | クラスタシステム、情報処理装置、クラスタ監視方法及びクラスタ監視プログラム |
Applications Claiming Priority (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
JP2018037544A JP2019153055A (ja) | 2018-03-02 | 2018-03-02 | クラスタシステム、情報処理装置、クラスタ監視方法及びクラスタ監視プログラム |
Publications (1)
Publication Number | Publication Date |
---|---|
JP2019153055A true JP2019153055A (ja) | 2019-09-12 |
Family
ID=67946490
Family Applications (1)
Application Number | Title | Priority Date | Filing Date |
---|---|---|---|
JP2018037544A Pending JP2019153055A (ja) | 2018-03-02 | 2018-03-02 | クラスタシステム、情報処理装置、クラスタ監視方法及びクラスタ監視プログラム |
Country Status (1)
Country | Link |
---|---|
JP (1) | JP2019153055A (ja) |
Cited By (2)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN115499299A (zh) * | 2022-09-13 | 2022-12-20 | 航天信息股份有限公司 | 一种集群设备监控方法及装置 |
CN115617917A (zh) * | 2022-12-16 | 2023-01-17 | 中国西安卫星测控中心 | 一种数据库集群多活控制的方法、装置、系统和设备 |
Citations (2)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
US9450852B1 (en) * | 2014-01-03 | 2016-09-20 | Juniper Networks, Inc. | Systems and methods for preventing split-brain scenarios in high-availability clusters |
CN107453932A (zh) * | 2017-09-29 | 2017-12-08 | 郑州云海信息技术有限公司 | 一种分布式存储系统管理方法及其装置 |
-
2018
- 2018-03-02 JP JP2018037544A patent/JP2019153055A/ja active Pending
Patent Citations (2)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
US9450852B1 (en) * | 2014-01-03 | 2016-09-20 | Juniper Networks, Inc. | Systems and methods for preventing split-brain scenarios in high-availability clusters |
CN107453932A (zh) * | 2017-09-29 | 2017-12-08 | 郑州云海信息技术有限公司 | 一种分布式存储系统管理方法及其装置 |
Cited By (3)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN115499299A (zh) * | 2022-09-13 | 2022-12-20 | 航天信息股份有限公司 | 一种集群设备监控方法及装置 |
CN115617917A (zh) * | 2022-12-16 | 2023-01-17 | 中国西安卫星测控中心 | 一种数据库集群多活控制的方法、装置、系统和设备 |
CN115617917B (zh) * | 2022-12-16 | 2023-03-10 | 中国西安卫星测控中心 | 一种数据库集群多活控制的方法、装置、系统和设备 |
Similar Documents
Publication | Publication Date | Title |
---|---|---|
US20190073276A1 (en) | System and method for datacenter recovery | |
JP2008191878A (ja) | 遠隔診断・障害対応システム、遠隔診断・障害対応装置、遠隔診断・障害対応指示装置、遠隔診断・障害対応方法、及び遠隔診断・障害対応プログラム | |
JP2009259161A (ja) | ナレッジ型障害復旧支援システム、ユーザ端末、中継サーバ及びナレッジ提供サーバ並びにデータ中継方法 | |
CN103607296A (zh) | 一种虚拟机故障处理方法和设备 | |
JP2013171301A (ja) | ジョブ継続管理装置、ジョブ継続管理方法、及び、ジョブ継続管理プログラム | |
JP2019153055A (ja) | クラスタシステム、情報処理装置、クラスタ監視方法及びクラスタ監視プログラム | |
CN110830443A (zh) | 一种远程监测设备状态的方法及系统 | |
JP2005301436A (ja) | クラスタシステムおよびクラスタシステムにおける障害回復方法 | |
JP5558279B2 (ja) | 監視制御システム、およびこれに利用する監視制御装置、監視制御方法 | |
US20070203974A1 (en) | Method and system for generic application liveliness monitoring for business resiliency | |
US20150249566A1 (en) | Apparatus for selecting master in redundancy system | |
CN112910742A (zh) | 链路状态检测方法及装置 | |
JP5613119B2 (ja) | マスター/スレーブシステム、制御装置、マスター/スレーブ切替方法、および、マスター/スレーブ切替プログラム | |
JP2011203941A (ja) | 情報処理装置、監視方法、および監視プログラム | |
JP6368157B2 (ja) | 通信システムとその制御方法 | |
JP2007200103A (ja) | クライアントサーバシステムおよびリソース制御方法 | |
JP5805582B2 (ja) | ワークフロー管理システム、ワークフロー管理方法、サービス状態管理装置、及びワークフロー管理装置 | |
JP2020038506A (ja) | 情報処理システム、情報処理方法、及び、プログラム | |
CA2978447A1 (en) | System and method for data center recovery | |
CN112787868A (zh) | 一种信息同步的方法和装置 | |
JP2016151965A (ja) | 冗長構成システム及び冗長構成制御方法 | |
JP5631285B2 (ja) | 障害監視システムおよび障害監視方法 | |
JP2016200961A (ja) | サーバー障害監視システム | |
JP6394620B2 (ja) | サーバ管理システム、サーバ、サーバ管理方法およびサービスプロセッサ | |
JP2015114991A (ja) | データ処理装置、データ処理装置監視方法およびデータ処理システム |
Legal Events
Date | Code | Title | Description |
---|---|---|---|
A621 | Written request for application examination |
Free format text: JAPANESE INTERMEDIATE CODE: A621 Effective date: 20201110 |
|
A977 | Report on retrieval |
Free format text: JAPANESE INTERMEDIATE CODE: A971007 Effective date: 20210922 |
|
A131 | Notification of reasons for refusal |
Free format text: JAPANESE INTERMEDIATE CODE: A131 Effective date: 20211012 |
|
A02 | Decision of refusal |
Free format text: JAPANESE INTERMEDIATE CODE: A02 Effective date: 20220405 |