JP5277228B2 - クラスタシステム復旧方法、サーバ及びソフトウェア - Google Patents

クラスタシステム復旧方法、サーバ及びソフトウェア Download PDF

Info

Publication number
JP5277228B2
JP5277228B2 JP2010252888A JP2010252888A JP5277228B2 JP 5277228 B2 JP5277228 B2 JP 5277228B2 JP 2010252888 A JP2010252888 A JP 2010252888A JP 2010252888 A JP2010252888 A JP 2010252888A JP 5277228 B2 JP5277228 B2 JP 5277228B2
Authority
JP
Japan
Prior art keywords
state
status
cluster
machine
transition
Prior art date
Legal status (The legal status is an assumption and is not a legal conclusion. Google has not performed a legal analysis and makes no representation as to the accuracy of the status listed.)
Active
Application number
JP2010252888A
Other languages
English (en)
Other versions
JP2012014671A (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.)
Nippon Telegraph and Telephone Corp
Original Assignee
Nippon Telegraph and Telephone Corp
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 Nippon Telegraph and Telephone Corp filed Critical Nippon Telegraph and Telephone Corp
Priority to JP2010252888A priority Critical patent/JP5277228B2/ja
Publication of JP2012014671A publication Critical patent/JP2012014671A/ja
Application granted granted Critical
Publication of JP5277228B2 publication Critical patent/JP5277228B2/ja
Active legal-status Critical Current
Anticipated expiration legal-status Critical

Links

Images

Landscapes

  • Hardware Redundancy (AREA)

Description

本発明は、クラスタサービス再開方法、サーバ及びソフトウェアに関する。
サービスの重要性が増すにつれ、ダウンタイムの少ないシステムの要求が高まっている。このため、複数のサーバで冗長構成されたクラスタシステムを構築し、何らかの故障が発生したときに自動的にサーバを切り替えることにより、サービスの継続を可能とするHeartbeatおよびPacemakerなどの高可用性クラスタソフトが開発されている(非特許文献1参照)。
高可用性クラスタソフトでは、サーバ上のリソース、ネットワーク、共有ディスク等を監視しており、サービス稼働中のサーバで故障を検知すると、予め待機しているサーバに切り替え、サービスを継続させる。
図1に、高可用性クラスタソフトを用いたクラスタシステムの概略図を示す。クラスタシステムは、ネットワークに接続されている複数のサーバ(現用機及び予備機)と、これらの複数のサーバで共有して用いられる共有ディスクとを有する。
現用機及び予備機は、オペレーティングシステム(OS)と、高可用性クラスタソフトと、サービスを提供するために必要な構成要素であるリソースとをそれぞれ有する。高可用性クラスタソフトは、現用機での故障の発生を検知し、故障が発生したときに自動的に予備機に切り替える。サーバにおけるサービスの稼働状態、リソースの稼働状態及び故障状態は、内蔵ディスクの状態記憶部に格納され、故障箇所等の詳細な情報は、内蔵ディスクのログ記憶部に格納される。
現用機及び予備機は、サービスLANと呼ばれるネットワークに接続されており、リソースによるサービスをクライアントに提供する。また、現用機及び予備機は、インターコネクトLANと呼ばれるネットワークに接続されており、サーバにおけるサービスの稼働状態、リソースの稼働状態、故障状態等の情報を交換する。更に、現用機及び予備機は、管理LANと呼ばれるネットワークに接続されており、保守端末からのコマンドを受け付けることができる。
また、現用機及び予備機には、故障時に他サーバの電源を強制的に切断する強制電源断機能を設定することができる。強制電源断機能は、管理LANを経由して他サーバのハードウェア制御ボードに対して電源を切断する指示を送信することにより、他サーバの電源を切断する。
共有ディスクは、サービスの一貫性を保つために、サービス提供に用いられるデータを保存する記憶装置である。共有ディスクにより、現用機から予備機に切り替わった後も、同じデータを用いてサービスを継続できる。
このように、高可用性クラスタソフトでリソースの故障を監視しているため、リソース故障が発生した場合に、予備機でサービスを継続させることができる。予備機に系切り替えを行った後は、予備機でサービスが継続される(特許文献1参照)。
特許第4353005号,「クラスタ構成コンピュータシステムの系切替方法」
三井 一能 他,「サービスの可用性を向上させるOSSミドルHeartbeatの開発」,NTT技術ジャーナル,2009年3月,46〜49ページ
上記のように、予備機に系切り替えを行った後は予備機でサービスが提供される。しかし、ネットワークや共有ディスク等の故障の場合、系切り替えが必ずしも成功するとは限らない。また、系切り替えの失敗はシステムにとって影響の大きい故障であるため、この状態で予備機に系切り替えを行ったとしても、予備機でのサービス開始準備ができていないタイミングで予備機に系切り替えが行われる可能性がある。
本発明は、クラスタシステムの現用機で故障が発生して現用機から予備機への系切り替えが失敗した場合に、予備機でサービスを再開させることを目的とする。
本発明の上記の課題を解決するため、本発明のクラスタサービス再開方法は、
故障状態を監視する故障監視手段と、故障状態に基づく現用機及び予備機のサービス稼働状態として、サービス稼働中の状態と、サービス稼働中へ遷移できる状態と、サービス稼働中への遷移が抑止されている状態と、系切り替え中の状態と、クラスタ状態に組み込まれていない状態とを含むクラスタ状態を管理する状態管理手段と、クラスタ状態及び故障状態を格納する状態記憶手段とをそれぞれ含む現用機と予備機とで構成されるクラスタシステムで、該現用機で故障が発生して該現用機から該予備機への系切り替えが失敗した場合に、予備機のクラスタ状態をサービス稼働中へ遷移させるクラスタサービス再開方法であって、
前記予備機の遷移抑止手段が、前記状態記憶手段に格納された現用機のクラスタ状態が系切り替え中の状態であり、前記状態記憶手段に格納された現用機の故障状態がリソース停止に失敗した状態であり、前記状態記憶手段に格納された予備機のクラスタ状態がサービス稼働中へ遷移できる状態である場合、予備機のクラスタ状態をサービス稼働中への遷移が抑止されている状態へ遷移させる遷移抑止ステップと、
前記予備機の停止指示手段が、前記状態記憶手段に格納された予備機のクラスタ状態がサービス稼働中への遷移が抑止されている状態である場合、前記現用機に対してオペレーティングシステム又は電源の停止を指示する停止指示ステップと、
前記予備機の遷移抑止解除手段が、前記状態記憶手段に格納された現用機のクラスタ状態がクラスタ構成に組み込まれていない状態である場合、予備機のクラスタ状態をサービス稼働中へ遷移できる状態へ遷移させる遷移抑止解除ステップと、
前記予備機の起動指示手段が、前記状態記憶手段に格納された予備機のクラスタ状態がサービス稼働中の状態である場合、前記現用機に対してオペレーティングシステム又は電源の起動を指示する起動指示ステップと、
を有することを特徴とする。
また、本発明のサーバは、
故障状態を監視する故障監視手段と、故障状態に基づく現用機及び予備機のサービス稼働状態として、サービス稼働中の状態と、サービス稼働中へ遷移できる状態と、サービス稼働中への遷移が抑止されている状態と、系切り替え中の状態と、クラスタ状態に組み込まれていない状態とを含むクラスタ状態を管理する状態管理手段と、クラスタ状態及び故障状態を格納する状態記憶手段とをそれぞれ含む現用機と予備機とで構成されるクラスタシステムで、該予備機として動作するサーバであって、
前記現用機で故障が発生して前記現用機から前記予備機への系切り替えが失敗した場合に、
前記状態記憶手段に格納された現用機のクラスタ状態が系切り替え中の状態であり、前記状態記憶手段に格納された現用機の故障状態がリソース停止に失敗した状態であり、前記状態記憶手段に格納された予備機のクラスタ状態がサービス稼働中へ遷移できる状態である場合、予備機のクラスタ状態をサービス稼働中への遷移が抑止されている状態へ遷移させる遷移抑止手段と、
前記状態記憶手段に格納された予備機のクラスタ状態がサービス稼働中への遷移が抑止されている状態である場合、前記現用機に対してオペレーティングシステム又は電源の停止を指示する停止指示手段と、
前記状態記憶手段に格納された現用機のクラスタ状態がクラスタ構成に組み込まれていない状態である場合、予備機のクラスタ状態をサービス稼働中へ遷移できる状態へ遷移させる遷移抑止解除手段と、
前記状態記憶手段に格納された予備機のクラスタ状態がサービス稼働中の状態である場合、前記現用機に対してオペレーティングシステム又は電源の起動を指示する起動指示手段と、
を有することを特徴とする。
また、本発明のプログラムは、
故障状態を監視する故障監視手段と、故障状態に基づく現用機及び予備機のサービス稼働状態として、サービス稼働中の状態と、サービス稼働中へ遷移できる状態と、サービス稼働中への遷移が抑止されている状態と、系切り替え中の状態と、クラスタ状態に組み込まれていない状態とを含むクラスタ状態を管理する状態管理手段と、クラスタ状態及び故障状態を格納する状態記憶手段とをそれぞれ含む現用機と予備機とで構成されるクラスタシステムで、該予備機として動作するサーバを、
前記現用機で故障が発生して前記現用機から前記予備機への系切り替えが失敗した場合に、
前記状態記憶手段に格納された現用機のクラスタ状態が系切り替え中の状態であり、前記状態記憶手段に格納された現用機の故障状態がリソース停止に失敗した状態であり、前記状態記憶手段に格納された予備機のクラスタ状態がサービス稼働中へ遷移できる状態である場合、予備機のクラスタ状態をサービス稼働中への遷移が抑止されている状態へ遷移させる遷移抑止手段、
前記状態記憶手段に格納された予備機のクラスタ状態がサービス稼働中への遷移が抑止されている状態である場合、前記現用機に対してオペレーティングシステム又は電源の停止を指示する停止指示手段、
前記状態記憶手段に格納された現用機のクラスタ状態がクラスタ構成に組み込まれていない状態である場合、予備機のクラスタ状態をサービス稼働中へ遷移できる状態へ遷移させる遷移抑止解除手段、及び
前記状態記憶手段に格納された予備機のクラスタ状態がサービス稼働中の状態である場合、前記現用機に対してオペレーティングシステム又は電源の起動を指示する起動指示手段、
として機能させるためのプログラムであることを特徴とする。
本発明によれば、クラスタシステムの現用機で故障が発生して現用機から予備機への系切り替えが失敗した場合に、予備機でサービスを再開させることが可能になる。
高可用性クラスタソフトを用いたクラスタシステムの概略図 本発明の実施例に係るクラスタシステムの機能ブロック図 状態管理部で管理されるクラスタ状態の状態遷移図 状態記憶部に格納される情報を示す図 本発明の実施例に係るクラスタ状態の遷移を示す図 本発明を高可用性クラスタソフトに適用したときの機能ブロック図 本発明を高可用性クラスタソフトに適用したときのサービス再開方法のフローチャート
以下、図面を参照して本発明の実施例について説明する。
本発明の実施例では、現用機と予備機とで構成されるクラスタシステムが用いられる。現用機及び予備機は、それぞれ、故障状態を監視する故障監視手段と、故障状態に基づいて現用機及び予備機のサービス稼働状態を示すクラスタ状態を管理する状態管理手段と、クラスタ状態及び故障状態を格納する状態記憶手段とを有する。
現用機で故障が発生して現用機から予備機への系切り替えが失敗した場合に、予備機の遷移抑止手段は、予備機のクラスタ状態をサービス稼働中への遷移が抑止されている状態へ遷移させる。次に、予備機の停止指示手段は、現用機に対してオペレーティングシステム又は電源の停止を指示する。次に、予備機の遷移抑止解除手段は、予備機のクラスタ状態をサービス稼働中へ遷移できる状態へ遷移させる。次に、予備機の起動指示手段は、現用機に対してオペレーティングシステム又は電源の起動を指示する。このようにして、予備機のクラスタ状態をサービス稼働中へ遷移させることができる。
本発明の実施例に係るクラスタシステム及び方法を詳細に説明する前に、まず、本発明の実施例で用いられる用語について説明する。
「クラスタ構成」とは、複数のサーバを相互に接続し、サービスを提供するユーザ又は他サーバに対して全体で1つのサーバであるかのように振舞わせる技術のことを言う。クラスタ構成により、1つのサーバが故障しても、システム全体でサービスを継続させることができ、また、サービス継続中に故障修理や交換を行うことができる。
「現用機」とは、クラスタシステムにおいて、サービス提供を開始して故障が発生していないときに、サービス稼働中であるサーバのことを言う。
「予備機」とは、クラスタシステムにおいて、現用機の故障発生時にサービスを引き継ぐサーバのことを言う。予備機は、1つの現用機のサービスを引き継いでもよく、複数の現用機のサービスを引き継いでもよい。すなわち、現用機と予備機との関係は、1対1の関係でもよく、N対1の関係でもよい。
「高可用性クラスタソフト」とは、クラスタ構成を提供するためのソフトウェアのことを言う。高可用性クラスタソフトは、サーバの故障を監視し、故障時に系切り替えを実施する。
「リソース」とは、サービスを提供するために必要な構成要素のことを言う。クラスタ構成におけるリソースとは、高可用性クラスタソフトが起動、停止、監視等の制御対象とするアプリケーションを示す。リソースには、データベース等が含まれる。
「クラスタ状態」とは、サーバにおけるサービスの稼働状態を言う。クラスタ状態には、ACTと、SBY[online]と、SBY[standby]と、SBY[遷移中]と、OUSと、NONEとが含まれる。
「リソース状態」とは、サーバにおけるリソースの稼働状態を言う。リソース状態には、他サーバでリソース稼働中である状態と、自サーバでリソースが稼働中である状態と、リソースが停止中である状態と、リソースの管理を行わない状態とが含まれる。
「ACT」とは、サーバでサービス稼働中の状態を言う。クラスタ構成において、データベース等のサービスを提供するリソースが稼働しているサーバの状態を「ACT」と言う。
「SBY[online]」とは、ACTへ遷移できる状態を言う。クラスタ構成において、故障等による系切り替えが発生した場合、ACTからリソースを切り替えることが可能なサーバの状態を「SBY[online]」と言う。
「SBY[standby]」とは、ACTへの遷移が抑止されている状態を言う。クラスタ構成において、故障等による系切り替えが発生した場合でも、ACTに遷移しないように抑止されているサーバの状態を「SBY[standby]」と言う。
「SBY[遷移中]」とは、系切り替え中の状態を言う。クラスタ構成において、故障等による系切り替えが発生したが、リソース停止に失敗して系切り替えが終了していないサーバの状態を「SBY[遷移中]」と言う。
「OUS」とは、サーバでリソース故障中の状態を言う。クラスタ構成において、リソース故障が発生している状態を「OUS」と言う。
「NONE」とは、サーバがクラスタ構成に組み込まれていない状態を言う。高可用性クラスタソフトが停止している状態のように、クラスタ構成に組み込まれていないサーバの状態を「NONE」と言う。
<クラスタシステムの構成>
図2に、本発明の実施例に係るクラスタシステムの機能ブロック図を示す。クラスタシステムは、相互に接続されている複数のサーバ(現用機10及び予備機20)と、これらの複数のサーバで共有して用いられる共有ディスク30とを有する。現用機10及び予備機20は、ルータ40を介してクライアントにサービスを提供する。なお、現用機10の性能は、予備機20の性能より優れていてもよい。また、クラスタシステムは、2つ以上の現用機と1つの予備機とで構成されてもよい。
現用機10は、リソース101と、故障監視部111と、リソース起動・停止部113と、状態管理部115と、状態記憶部117と、故障ログ記憶部119と、起動・停止部123と、オペレーティングシステム(OS)151と、電源制御部153と、電源155とを有する。
予備機20は、リソース201と、故障監視部211と、リソース起動・停止部213と、状態管理部215と、状態記憶部217と、故障ログ記憶部219と、ACT化抑止部221と、起動・停止指示部223と、ACT化抑止解除部225と、状態確認部227と、オペレーティングシステム(OS)251と、電源制御部253と、電源255とを有する。
リソース101及び201は、クライアントにサービスを提供するアプリケーションである。リソース101及び201は、クラスタ状態がサービス稼働中(ACT)のサーバで起動している。
故障監視部111及び211、リソース起動・停止部113及び213、状態管理部115及び215が高可用性クラスタソフトに相当する。
故障監視部111及び211は、サーバの故障状態を監視する。例えば、リソース、ネットワーク、共有ディスク等を監視する。リソースはサービス稼働中(ACT)のサーバのみで監視されるが、ネットワーク、共有ディスク及び内蔵ディスクは、現用機と予備機との双方で監視される。現用機で故障が検知された場合、故障状態は、状態管理部115を介して状態記憶部117に格納される。例えば、故障状態として、故障回数や、故障発生タイミング(リソース開始失敗、リソース監視時の故障、リソース停止失敗)を示すエラーステータスが状態記憶部117に格納される。以下に説明するように、現用機の故障状態は、状態管理部215を介して予備機の状態記憶部217にも格納される。予備機で故障が検知された場合も同様に、予備機の故障状態は、状態管理部215を介して状態記憶部217に格納され、更に、状態管理部115を介して状態記憶部117に格納される。また、現用機及び予備機の故障箇所を示す詳細な故障ログ(エラーメッセージ)は、それぞれ故障ログ記憶部119及び219に格納される。
リソース起動・停止部113及び213は、クラスタ状態及び故障状態に基づいてリソースを起動及び停止させる。サーバのクラスタ状態がACTへ遷移できる状態(SBY[online])のときに他サーバのリソースが停止した場合、リソース起動・停止部113及び213は、リソースを起動させる。サーバのクラスタ状態がサービス稼働中(ACT)のときに故障が発生した場合、リソース起動・停止部113及び213は、リソースを停止させる。
状態管理部115及び215は、故障状態に基づいてクラスタ状態を管理する。現用機10の状態管理部115と予備機20の状態管理部215は、互いに状態記憶部に格納された故障状態(故障回数、エラーステータス)、クラスタ状態等の情報を交換し、各サーバの情報を状態記憶部117及び217に格納する。
図3に、状態管理部115及び215で管理されるクラスタ状態の状態遷移図を示す。クラスタ状態には、ACTと、SBY[online]と、SBY[standby]と、SBY[遷移中]と、OUSと、NONEとが含まれる。ACTのサーバにリソース故障が発生した場合、クラスタ状態はACTからOUSになる(T1)。ACTのサーバにリソース以外の故障(ネットワーク、共有ディスク等の故障)が発生した場合、クラスタ状態はACTからSBY[遷移中]になる(T2)。OUSのサーバの故障状態がクリアされた場合、クラスタ状態はOUSからSBY[online]になる(T3)。故障等により系切り替えが発生して、SBY[online]のサーバがサービスを引き継ぐ場合、クラスタ状態はSBY[online]からSBY[遷移中]になり(T4)、更に、ACTになる(T5)。ACTのサーバから他サーバにサービスを引き継ぐためにACTのサーバでサービスの稼働が抑止された場合、クラスタ状態はACTからSBY[standy]になる(T6)。SBY[standy]のサーバでACTへの遷移抑止が解除された場合、クラスタ状態はSBY[standy]からSBY[online]になる(T7)。SBY[online]のサーバでACTへの遷移が抑止された場合、クラスタ状態はSBY[online]からSBY[standy]になる(T8)。また、電源の停止、オペレーティングシステムの停止又は高可用性クラスタソフト自体の停止により、高可用性クラスタソフトが停止した場合、クラスタ状態はNONEになる(T9〜T13)。高可用性クラスタソフトが起動した場合、クラスタ状態はNONEからSBY[online]になる(T14)。また、現用機及び予備機の双方のクラスタ状態がNONEのときに高可用性クラスタソフトが起動した場合、クラスタ状態はNONEからACTになる(T15)。
状態記憶部117及び217は、各サーバのクラスタ状態及び故障状態を格納する。具体的には、状態記憶部117及び217は、現用機10の情報と予備機20の情報との双方をそれぞれ格納し、状態管理部115と状態管理部215との情報交換によって、状態記憶部117に格納される情報と状態記憶部217に格納される情報とは同一に保持される。
図4に、状態記憶部117及び217に格納される情報の例を示す。状態記憶部117及び217は、サーバ毎にクラスタ状態、故障回数、エラーステータス及びリソース状態を格納する。状態記憶部117及び217は、クラスタ状態として、ACTと、SBY[online]と、SBY[standby]と、SBY[遷移中]と、OUSと、NONEとのうちいずれかを記憶する。故障回数として、故障が発生した回数(0〜Nの値)を記憶する。故障発生タイミングを示すエラーステータスとして、エラー無しの状態と、リソース開始に失敗した状態と、リソース監視時に故障を検知した状態と、リソース停止に失敗した状態とのうちいずれかを記憶する。リソース状態として、他サーバでリソース稼働中である状態と、自サーバでリソースが稼働中である状態と、リソースが停止中である状態と、リソースの管理を行わない状態とのうちいずれを記憶する。
また、状態記憶部117及び217は、他サーバの電源を強制的に切断する機能が設定されているか否かを示す強制電源断設定状態を格納してもよい。強制電源断設定状態は、システム全体として設定されてもよく、サーバ毎に設定されてもよい。なお、現用機10及び予備機20は、ネットワークや共有ディスク及び内蔵ディスク等に故障が発生した場合等に、他サーバの電源制御部253又は153に対して強制的に電源を切断する指示を送信する強制電源断機能部を有してもよい。
故障ログ記憶部119及び219は、それぞれ現用機10及び予備機20の故障ログ(エラーメッセージ)を格納する。故障ログには、故障箇所を示す詳細な情報が含まれる。
ACT化抑止部221は、状態管理部215を介して、状態記憶部217に格納された予備機20のクラスタ状態をサービス稼働中への遷移が抑止されている状態へ遷移させる。この遷移抑止により、状態管理部115を介して、状態記憶部117に格納された予備機20のクラスタ状態も遷移し、予備機20のクラスタ状態は、SBY[standby]になる。
起動・停止指示部223は、現用機10の起動・停止部123に対してオペレーティングシステム又は電源の起動及び停止を指示する。現用機10の起動・停止部123は、起動・停止指示部223から停止指示を受信し、オペレーティングシステム151を停止させる。オペレーティングシステム151の停止が失敗した場合には、電源制御部153を介して電源155を停止させる。また、現用機10の起動・停止部123は、起動・停止指示部223から起動指示を受信し、電源155が停止している場合には、電源制御部153を介して電源155を起動させる。オペレーティングシステム151が停止している場合には、オペレーティングシステム151を起動させる。なお、起動・停止指示部223は、オペレーティング又は電源の起動・停止を個別に行うのではなく、オペレーティングシステム又は電源の再起動を行ってもよい。
ACT化抑止解除部225は、状態管理部215を介して、状態記憶部217に格納された予備機20のクラスタ状態をサービス稼働中へ遷移できる状態へ遷移させる。この遷移抑止の解除により、状態管理部115を介して、状態記憶部117に格納された予備機20のクラスタ状態も遷移し、予備機20のクラスタ状態は、SBY[online]になる。
状態確認部227は、状態管理部215を介して、状態記憶部217に格納された情報を確認する。例えば、現用機10及び予備機20の双方のクラスタ状態、故障回数、エラーステータス及びリソース状態を確認する。
オペレーティングシステム151は、サーバ上で高可用性クラスタソフトやアプリケーション等を動作させるための基本ソフトウェアである。
電源制御部153は、他サーバから強制的に電源を切断する指示を受信し、サーバに電力を供給する電源155をオン及びオフにする。
図5に、本発明の実施例に係るクラスタ状態の遷移を示す。本発明の実施例では、クラスタシステムの現用機で故障が発生して現用機から予備機への系切り替えが失敗した状態を前提とする。この状態から、予備機への系切り替え処理を実施し、予備機でサービスを再開させる。
具体的には、図5に示すように、サービスを開始して故障が発生していない場合、現用機のクラスタ状態は、ACTであり、予備機のクラスタ状態は、SBY[online]である(S1)。ネットワークケーブル抜けやディスクケーブル抜け等により、故障監視部111が現用機のネットワークや共有ディスク等の故障を検知すると、現用機から予備機への系切り替えが実行され、現用機のリソース起動・停止部113はリソースを停止させる。しかし、ネットワークや共有ディスク等の故障時には、現用機のリソース停止は失敗する可能性がある。リソース停止が失敗したとき、状態管理部115及び215は、現用機のエラーステータスをリソース停止失敗にする。また、状態管理部115及び215は、現用機のクラスタ状態をSBY[遷移中]にする(S2)。なお、ネットワークや共有ディスク等の故障時には、ハードウェア故障の可能性があるため、予備機への系切り替えは自動的に行われず、予備機のクラスタ状態はSBY[online]のままである。
この状態から予備機でサービスを再開させるために、状態確認部227は、現用機のクラスタ状態がSBY[遷移中]であり、現用機のエラーステータスがリソース停止失敗であり、予備機のクラスタ状態がSBY[online]であると確認してもよい。予備機での意図しないサービス再開を防ぐために、ACT化抑止部211は、予備機のクラスタ状態をSBY[standby]へ遷移させる(S3)。処理の正常終了を確認するため、状態確認部227は、予備機のクラスタ状態がSBY[standby]であると確認してもよい。次に、予備機の起動・停止指示部223は、現用機の起動・停止部123に対して、現用機のオペレーティングシステム又は電源の停止を指示する。現用機のオペレーティングシステム又は電源が停止した場合、現用機のクラスタ状態はNONEになる(S4)。処理の正常終了を確認するため、状態確認部227は、現用機のクラスタ状態がNONEであると確認してもよい。次に、ACT化抑止解除部225は、予備機のACTへの遷移抑止を解除する。この解除により、予備機のクラスタ状態は、ACTになる(S5)。処理の正常終了を確認するため、状態確認部227は、予備機のクラスタ状態がACTであると確認してもよい。その後、予備機の起動・停止指示部223は、現用機の起動・停止部123に対して、現用機のOS又は電源の起動を指示する。この場合、現用機のクラスタ状態は、NONEのままである。このようにして、系切り替えが失敗したときでも、予備機でサービスを再開することができる。
<高可用性クラスタソフトへの適用>
図6に本発明を高可用性クラスタソフトに適用したときの機能ブロック図を示す。
高可用性クラスタソフトには、サーバの故障状態を監視する故障監視機能と、クラスタ状態及び故障状態に基づいてリソースを起動及び停止させるリソース起動・停止機能と、故障状態に基づいてクラスタ状態を管理する状態管理機能とが含まれる。故障ログは、内蔵ディスクの故障ログ記憶部に格納され、サーバ毎のクラスタ状態、故障回数、エラーステータス及びリソース状態は、内蔵ディスクの状態記憶部に格納される。
このような高可用性クラスタソフトシステムの現用機に、上記の起動・停止部123を設け、予備機に、上記のACT化抑止部221と、起動・停止指示部223と、ACT化抑止解除部225と、状態確認部227とを設けることで、以下に説明するように、系切り替えが失敗したときでも、予備機でサービスを再開することができる。
図7に、本発明を高可用性クラスタソフトに適用したときのサービス再開方法のフローチャートを示す。
このサービス再開方法は、クラスタシステムの現用機で故障が発生して現用機から予備機への系切り替えが失敗した状態から始まる。この場合、現用機及び予備機は以下の状態である。
(現用機の状態)
クラスタ状態:SBY[遷移中]
故障回数:1以上
エラーステータス:3
リソース状態:3
(予備機の状態)
クラスタ状態:SBY[online]
故障回数:0
エラーステータス:0
リソース状態:0
サービス再開方法の実行に先立ち、状態確認部227は、状態確認コマンドを実行して、予備機の状態記憶部に格納されたクラスタ状態を読み取り、現用機のクラスタ状態がSBY[遷移中]であり、予備機のクラスタ状態がSBY[online]であることを確認してもよい。ここで、高可用性クラスタソフトでは予備機と現用機との間で状態記憶部の情報交換が行われているため、状態確認コマンドにより現用機及び予備機の双方の状態を読み取ることができる。なお、このようなクラスタ状態の場合、現用機のエラーステータスは3である。
この状態において、現用機の故障回復中にサービスが予備機に誤遷移することを回避するため、ACT化抑止部221は、状態遷移コマンド(系切り替えコマンド)を実行して、予備機の状態記憶部に格納された予備機のクラスタ状態をSBY[standby]へ遷移させる(S101)。予備機の高可用性クラスタソフトは、クラスタ状態の遷移を現用機の高可用性クラスタソフトに通知し、現用機の高可用性クラスタソフトは、この通知を受け、現用機の状態記憶部に格納された予備機のクラスタ状態をSBY[standby]にする。
次に、状態確認部227は、状態確認コマンドを実行して、予備機の状態記憶部に格納された予備機のクラスタ状態を読み取り(S103)、予備機のクラスタ状態がSBY[standby]であるか確認する(S105)。このときの現用機及び予備機の状態は以下の状態である。
(現用機の状態)
クラスタ状態:SBY[遷移中]
故障回数:1以上
エラーステータス:3
リソース状態:3
(予備機の状態)
クラスタ状態:SBY[standby]
故障回数:0
エラーステータス:0
リソース状態:0
状態遷移が失敗し、予備機が上記の状態になっていない場合(S105:NO)、エラーが出力される(S107)。例えば、エラーは、管理LANに接続された保守端末に表示される。
この状態では、依然として現用機のリソースの停止が完了していない可能性がある。従って、状態遷移が成功し、予備機が上記の状態になっている場合(S105:YES)、起動・停止指示部223は、起動・停止部123に対して現用機のOSの停止を指示する(S109)。停止指示に応じて、起動・停止部123は、現用機のOSを停止させる。OSの停止が失敗した場合(S109:NO)、起動・停止指示部223は、起動・停止部123に対して現用機の電源の停止を指示する(S113)。起動・停止部123は、現用機の電源を停止させる。
次に、状態確認部227は、状態確認コマンドを実行して、予備機の状態記憶部に格納された現用機のクラスタ状態を読み取り(S115)、現用機のクラスタ状態がNONEであるか確認する(S117)。このときの現用機及び予備機の状態は以下の状態である。
(現用機の状態)
クラスタ状態:NONE
故障回数:0
エラーステータス:0
リソース状態:0
(予備機の状態)
クラスタ状態:SBY[standby]
故障回数:0
エラーステータス:0
リソース状態:0
OS又は電源の停止が失敗し、現用機が上記の状態になっていない場合(S117:NO)、エラーが出力される(S119)。
OS又は電源の停止が成功し、現用機が上記の状態になっている場合(S117:YES)、ACT化抑止解除部225は、状態遷移コマンド(系切り替えコマンド)を実行して、予備機の状態記憶部に格納された予備機のクラスタ状態をSBY[online]へ遷移させる(S121)。このとき、現用機のクラスタ状態はNONEであるため(高可用性クラスタソフトが停止しているため)、予備機のクラスタ状態は自動的にACTへ遷移する。予備機の高可用性クラスタソフトは、クラスタ状態の遷移を現用機の高可用性クラスタソフトに通知し、現用機の高可用性クラスタソフトは、この通知を受け、現用機の状態記憶部に格納された予備機のクラスタ状態をACTにする。
次に、状態確認部227は、状態確認コマンドを実行して、予備機の状態記憶部に格納された予備機のクラスタ状態を読み取り(S123)、予備機のクラスタ状態がACTであるか確認する(S125)。このときの現用機及び予備機の状態は以下の状態である。
(現用機の状態)
クラスタ状態:NONE
故障回数:0
エラーステータス:0
リソース状態:0
(予備機の状態)
クラスタ状態:ACT
故障回数:0
エラーステータス:0
リソース状態:1
状態遷移が失敗し、予備機が上記の状態になっていない場合(S125:NO)、エラーが出力される(S127)。
状態遷移が成功し、予備機が上記の状態になっている場合(S125:YES)、起動・停止指示部223は、起動・停止部123に対して現用機のOS又は電源の起動を指示する。起動・停止部123がOS又は電源を起動し(S129)、処理が終了する。なお、OS又は電源の起動・停止を別々のステップで記載しているが、ステップS109及びS113で、それぞれOS及び電源の再起動を行ってもよい。
なお、上記の処理フローは、管理LANに接続された保守端末から現用機の各機能部を実行させることにより、実施されてもよい。
<実施例の効果>
上記のように、本発明の実施例によれば、クラスタシステムの現用機で故障が発生して現用機から予備機への系切り替えが失敗した場合に、予備機でサービスを再開させることが可能になる。
また、現用機のOS又は電源の停止の前に予備機のクラスタ状態をサービス稼働中への遷移が抑止されている状態へ遷移させることにより、予備機でのサービス開始準備ができていない意図しないタイミングで予備機に系切り替えが行われることを回避することができる。
説明の便宜上、本発明の実施例に係るシステムは機能的なブロック図を用いて説明しているが、本発明のシステムは、ハードウェア、ソフトウェア又はそれらの組み合わせで実現されてもよい。例えば、サーバ(現用機及び予備機)の各機能部がソフトウェアで実現され、オペレーションシステム上にインストールされてもよい。また、各機能部が必要に応じて組み合わせて使用されてもよい。
以上、本発明の実施例について説明したが、本発明は、上記の実施例に限定されることなく、特許請求の範囲内において、種々の変更・応用が可能である。
10 サーバ(現用機)
20 サーバ(予備機)
30 共有ディスク
40 ルータ
101 リソース
111 故障監視部
113 リソース起動・停止部
115 状態管理部
117 状態記憶部
119 故障ログ記憶部
123 起動・停止部
151 オペレーティングシステム
153 電源制御部
155 電源
201 リソース
211 故障監視部
213 リソース起動・停止部
215 状態管理部
217 状態記憶部
219 故障ログ記憶部
221 ACT化抑止部
223 起動・停止指示部
225 ACT化抑止解除部
227 状態確認部
251 オペレーティングシステム
253 電源制御部
255 電源

Claims (3)

  1. 故障状態を監視する故障監視手段と、故障状態に基づく現用機及び予備機のサービス稼働状態として、サービス稼働中の状態と、サービス稼働中へ遷移できる状態と、サービス稼働中への遷移が抑止されている状態と、系切り替え中の状態と、クラスタ状態に組み込まれていない状態とを含むクラスタ状態を管理する状態管理手段と、クラスタ状態及び故障状態を格納する状態記憶手段とをそれぞれ含む現用機と予備機とで構成されるクラスタシステムで、該現用機で故障が発生して該現用機から該予備機への系切り替えが失敗した場合に、予備機のクラスタ状態をサービス稼働中へ遷移させるクラスタサービス再開方法であって、
    前記予備機の遷移抑止手段が、前記状態記憶手段に格納された現用機のクラスタ状態が系切り替え中の状態であり、前記状態記憶手段に格納された現用機の故障状態がリソース停止に失敗した状態であり、前記状態記憶手段に格納された予備機のクラスタ状態がサービス稼働中へ遷移できる状態である場合、予備機のクラスタ状態をサービス稼働中への遷移が抑止されている状態へ遷移させる遷移抑止ステップと、
    前記予備機の停止指示手段が、前記状態記憶手段に格納された予備機のクラスタ状態がサービス稼働中への遷移が抑止されている状態である場合、前記現用機に対してオペレーティングシステム又は電源の停止を指示する停止指示ステップと、
    前記予備機の遷移抑止解除手段が、前記状態記憶手段に格納された現用機のクラスタ状態がクラスタ構成に組み込まれていない状態である場合、予備機のクラスタ状態をサービス稼働中へ遷移できる状態へ遷移させる遷移抑止解除ステップと、
    前記予備機の起動指示手段が、前記状態記憶手段に格納された予備機のクラスタ状態がサービス稼働中の状態である場合、前記現用機に対してオペレーティングシステム又は電源の起動を指示する起動指示ステップと、
    を有するクラスタサービス再開方法。
  2. 故障状態を監視する故障監視手段と、故障状態に基づく現用機及び予備機のサービス稼働状態として、サービス稼働中の状態と、サービス稼働中へ遷移できる状態と、サービス稼働中への遷移が抑止されている状態と、系切り替え中の状態と、クラスタ状態に組み込まれていない状態とを含むクラスタ状態を管理する状態管理手段と、クラスタ状態及び故障状態を格納する状態記憶手段とをそれぞれ含む現用機と予備機とで構成されるクラスタシステムで、該予備機として動作するサーバであって、
    前記現用機で故障が発生して前記現用機から前記予備機への系切り替えが失敗した場合に、
    前記状態記憶手段に格納された現用機のクラスタ状態が系切り替え中の状態であり、前記状態記憶手段に格納された現用機の故障状態がリソース停止に失敗した状態であり、前記状態記憶手段に格納された予備機のクラスタ状態がサービス稼働中へ遷移できる状態である場合、予備機のクラスタ状態をサービス稼働中への遷移が抑止されている状態へ遷移させる遷移抑止手段と、
    前記状態記憶手段に格納された予備機のクラスタ状態がサービス稼働中への遷移が抑止されている状態である場合、前記現用機に対してオペレーティングシステム又は電源の停止を指示する停止指示手段と、
    前記状態記憶手段に格納された現用機のクラスタ状態がクラスタ構成に組み込まれていない状態である場合、予備機のクラスタ状態をサービス稼働中へ遷移できる状態へ遷移させる遷移抑止解除手段と、
    前記状態記憶手段に格納された予備機のクラスタ状態がサービス稼働中の状態である場合、前記現用機に対してオペレーティングシステム又は電源の起動を指示する起動指示手段と、
    を有するサーバ。
  3. 故障状態を監視する故障監視手段と、故障状態に基づく現用機及び予備機のサービス稼働状態として、サービス稼働中の状態と、サービス稼働中へ遷移できる状態と、サービス稼働中への遷移が抑止されている状態と、系切り替え中の状態と、クラスタ状態に組み込まれていない状態とを含むクラスタ状態を管理する状態管理手段と、クラスタ状態及び故障状態を格納する状態記憶手段とをそれぞれ含む現用機と予備機とで構成されるクラスタシステムで、該予備機として動作するサーバを、
    前記現用機で故障が発生して前記現用機から前記予備機への系切り替えが失敗した場合に、
    前記状態記憶手段に格納された現用機のクラスタ状態が系切り替え中の状態であり、前記状態記憶手段に格納された現用機の故障状態がリソース停止に失敗した状態であり、前記状態記憶手段に格納された予備機のクラスタ状態がサービス稼働中へ遷移できる状態である場合、予備機のクラスタ状態をサービス稼働中への遷移が抑止されている状態へ遷移させる遷移抑止手段、
    前記状態記憶手段に格納された予備機のクラスタ状態がサービス稼働中への遷移が抑止されている状態である場合、前記現用機に対してオペレーティングシステム又は電源の停止を指示する停止指示手段、
    前記状態記憶手段に格納された現用機のクラスタ状態がクラスタ構成に組み込まれていない状態である場合、予備機のクラスタ状態をサービス稼働中へ遷移できる状態へ遷移させる遷移抑止解除手段、及び
    前記状態記憶手段に格納された予備機のクラスタ状態がサービス稼働中の状態である場合、前記現用機に対してオペレーティングシステム又は電源の起動を指示する起動指示手段、
    として機能させるためのプログラム。
JP2010252888A 2010-06-04 2010-11-11 クラスタシステム復旧方法、サーバ及びソフトウェア Active JP5277228B2 (ja)

Priority Applications (1)

Application Number Priority Date Filing Date Title
JP2010252888A JP5277228B2 (ja) 2010-06-04 2010-11-11 クラスタシステム復旧方法、サーバ及びソフトウェア

Applications Claiming Priority (3)

Application Number Priority Date Filing Date Title
JP2010128889 2010-06-04
JP2010128889 2010-06-04
JP2010252888A JP5277228B2 (ja) 2010-06-04 2010-11-11 クラスタシステム復旧方法、サーバ及びソフトウェア

Publications (2)

Publication Number Publication Date
JP2012014671A JP2012014671A (ja) 2012-01-19
JP5277228B2 true JP5277228B2 (ja) 2013-08-28

Family

ID=45600973

Family Applications (1)

Application Number Title Priority Date Filing Date
JP2010252888A Active JP5277228B2 (ja) 2010-06-04 2010-11-11 クラスタシステム復旧方法、サーバ及びソフトウェア

Country Status (1)

Country Link
JP (1) JP5277228B2 (ja)

Families Citing this family (2)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
JP6935819B2 (ja) * 2017-09-13 2021-09-15 日本電気株式会社 ノード装置、回復動作制御方法、及び回復動作制御プログラム
JP7013988B2 (ja) * 2018-03-22 2022-02-01 日本電気株式会社 制御装置、制御方法、制御プログラム、及び制御システム

Family Cites Families (1)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
JP4353005B2 (ja) * 2004-06-29 2009-10-28 株式会社日立製作所 クラスタ構成コンピュータシステムの系切替方法

Also Published As

Publication number Publication date
JP2012014671A (ja) 2012-01-19

Similar Documents

Publication Publication Date Title
CA2611457C (en) Method and apparatus for facilitating device redundancy in a fault-tolerant system
JP4572250B2 (ja) 計算機切り替え方法、計算機切り替えプログラム及び計算機システム
WO2021136422A1 (zh) 状态管理方法、主备应用服务器的切换方法及电子设备
JP2005535241A (ja) マルチコンピュータ・アーキテクチャにおけるアプリケーション・ソフトウェアの移動方法、前記移動方法を用いて作動の連続性を実現するマルチコンピュータ方法および装置
CN101908980A (zh) 一种网管升级的方法及系统
US20090164565A1 (en) Redundant systems management frameworks for network environments
CN111935244B (zh) 一种业务请求处理系统及超融合一体机
JP5285045B2 (ja) 仮想環境における故障復旧方法及びサーバ及びプログラム
JP5285044B2 (ja) クラスタシステム復旧方法及びサーバ及びプログラム
JP5277228B2 (ja) クラスタシステム復旧方法、サーバ及びソフトウェア
CN112860485A (zh) 基于keepalived的双机热备系统的控制方法
KR101358995B1 (ko) 고가용성 관리 방법 및 시스템
US8036105B2 (en) Monitoring a problem condition in a communications system
JP2005055995A (ja) ストレージ制御方法、および、冗長化機能を有するサーバシステム
JP5277229B2 (ja) クラスタシステム復旧方法、サーバ及びソフトウェア
JP5277227B2 (ja) クラスタシステム復旧方法、サーバ及びソフトウェア
CN116192885A (zh) 高可用集群架构人工智能实验云平台数据处理方法及系统
CN113220509B (zh) 一种双组合交替倒班系统及方法
JP2009075710A (ja) 冗長化システム
JP4485560B2 (ja) コンピュータ・システム及びシステム管理プログラム
KR20140140719A (ko) 가상 머신 동기화 장치 및 시스템과 이를 이용한 장애 처리 방법
WO2012149744A1 (zh) 主备管理软件的切换方法及系统
JP6107159B2 (ja) データベースシステム及びデータベースシステムの制御方法
JP6856574B2 (ja) サービス継続システムおよびサービス継続方法
WO2020103627A1 (zh) 一种基于虚机容灾的业务自愈方法、设备和存储介质

Legal Events

Date Code Title Description
A977 Report on retrieval

Free format text: JAPANESE INTERMEDIATE CODE: A971007

Effective date: 20130215

A131 Notification of reasons for refusal

Free format text: JAPANESE INTERMEDIATE CODE: A131

Effective date: 20130226

A521 Written amendment

Free format text: JAPANESE INTERMEDIATE CODE: A523

Effective date: 20130423

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

A61 First payment of annual fees (during grant procedure)

Free format text: JAPANESE INTERMEDIATE CODE: A61

Effective date: 20130520

R150 Certificate of patent or registration of utility model

Free format text: JAPANESE INTERMEDIATE CODE: R150

Ref document number: 5277228

Country of ref document: JP

Free format text: JAPANESE INTERMEDIATE CODE: R150

S531 Written request for registration of change of domicile

Free format text: JAPANESE INTERMEDIATE CODE: R313531

R350 Written notification of registration of transfer

Free format text: JAPANESE INTERMEDIATE CODE: R350