JP2011028481A - フォールトトレラントサーバ、プロセッサ切り替え方法およびプロセッサ切り替えプログラム - Google Patents
フォールトトレラントサーバ、プロセッサ切り替え方法およびプロセッサ切り替えプログラム Download PDFInfo
- Publication number
- JP2011028481A JP2011028481A JP2009172876A JP2009172876A JP2011028481A JP 2011028481 A JP2011028481 A JP 2011028481A JP 2009172876 A JP2009172876 A JP 2009172876A JP 2009172876 A JP2009172876 A JP 2009172876A JP 2011028481 A JP2011028481 A JP 2011028481A
- Authority
- JP
- Japan
- Prior art keywords
- processor
- unit
- switching
- processors
- failure
- 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
Landscapes
- Hardware Redundancy (AREA)
Abstract
【課題】システムの可用性を向上させる。
【解決手段】自システムで使用されているプロセッサに障害が発生した場合に、自システムに含まれる全てのプロセッサを隔離し、他システムに対して障害発生通知を送信する二重化制御部104、204と、障害発生通知を受信した場合に、当該障害発生通知を送信したシステムに対してプロセッサの切り替え指示を送信するCPUモジュール部100、200と、を有し、切り替え指示を受信した場合に、プロセッサ切り替え部は、自システムで使用するプロセッサを、障害が発生したプロセッサから他のプロセッサに切り替え、二重化制御部は、他システムに格納されている情報を自システムに格納させ、隔離した全てのプロセッサを自システムに組み込んでから、自システムと他システムとを同期させる。
【選択図】図1
【解決手段】自システムで使用されているプロセッサに障害が発生した場合に、自システムに含まれる全てのプロセッサを隔離し、他システムに対して障害発生通知を送信する二重化制御部104、204と、障害発生通知を受信した場合に、当該障害発生通知を送信したシステムに対してプロセッサの切り替え指示を送信するCPUモジュール部100、200と、を有し、切り替え指示を受信した場合に、プロセッサ切り替え部は、自システムで使用するプロセッサを、障害が発生したプロセッサから他のプロセッサに切り替え、二重化制御部は、他システムに格納されている情報を自システムに格納させ、隔離した全てのプロセッサを自システムに組み込んでから、自システムと他システムとを同期させる。
【選択図】図1
Description
本発明は、フォールトトレラントサーバ、プロセッサ切り替え方法およびプロセッサ切り替えプログラムに関する。
大規模なシステムやミッションクリティカルな業務のシステムでは、障害の発生が許されない。したがって、システムに冗長性を持たせて障害を回避させるフォールトトレランスなシステムが構築されている。下記特許文献1には、CPU、主記憶、通信インターフェース等のハードウェアを二重化し、いずれか一方のハードウェアが故障しても通常運用を継続することが可能なフォールトトレラントサーバが開示されている。
上記特許文献1に記載のサーバでは、運用系に障害が発生した場合、二重化部分を運用系から待機系に切り替えている。しかしながら、切り替えた後の運用系は故障した状態のままであるため、この運用系を交換するまでの間は、システムの冗長性が失われてしまう。この問題を解決するために、ハードウェアを三重化することも考えられるが、サーバの占有領域の増大や消費電力の増大等を招いてしまう。
本発明は、上述した課題を解決するためになされたものであり、システムの可用性を向上させることができるフォールトトレラントサーバ、プロセッサ切り替え方法およびプロセッサ切り替えプログラムを提供することを目的とする。
本発明のフォールトトレラントサーバは、二重化構成された第1および第2のシステムを備え、それぞれのシステムが、複数のプロセッサと、自システムで使用するプロセッサを切り替えるプロセッサ切り替え部と、自システムで使用されているプロセッサに障害が発生した場合に、自システムに含まれる全てのプロセッサを自システムから隔離し、他システムに対して障害発生通知を送信する制御部と、障害発生通知を受信した場合に、当該障害発生通知を送信したシステムに対してプロセッサの切り替え指示を送信する切り替え指示送信部と、を有し、切り替え指示を受信した場合に、上記プロセッサ切り替え部は、自システムで使用するプロセッサを、障害が発生したプロセッサから他のプロセッサに切り替え、上記制御部は、他システムに格納されている情報を自システムに格納させ、自システムから隔離した全てのプロセッサを自システムに組み込んでから、自システムと他システムとを同期させる。
本発明のプロセッサ切り替え方法は、二重化構成され、それぞれ複数のプロセッサを有する第1および第2のシステムを備えるサーバで実行されるプロセッサ切り替え方法であって、自システムで使用されているプロセッサに障害が発生した場合に、自システムに含まれる全てのプロセッサを自システムから隔離し、他システムに対して障害発生通知を送信するステップと、障害発生通知を受信した場合に、当該障害発生通知を送信したシステムに対してプロセッサの切り替え指示を送信するステップと、切り替え指示を受信した場合に、自システムで使用するプロセッサを、障害が発生したプロセッサから他のプロセッサに切り替えるプロセッサ切り替えステップと、他システムに格納されている情報を自システムに格納させ、自システムから隔離した全てのプロセッサを自システムに組み込んでから、自システムと他システムとを同期させるステップと、を含む。
本発明のプロセッサ切り替えプログラムは、上記プロセッサ切り替え方法に含まれる各ステップをコンピュータに実行させる。
本発明によれば、システムの可用性を向上させることができる。
以下、添付図面を参照して、本発明に係るフォールトトレラントサーバの好適な実施形態について説明する。
まず、図1を参照して、実施形態におけるフォールトトレラントサーバの構成について説明する。図1は、実施形態におけるフォールトトレラントサーバの概略構成図である。
同図に示すように、フォールトトレラントサーバ1は、CPUモジュール部100およびI/Oモジュール部300からなる第1のシステムと、CPUモジュール部200およびI/Oモジュール部400からなる第2のシステムとを有する。フォールトトレラントサーバ1は、これら二つのシステムによって二重化構成(冗長構成)されたシステムを備える。
つまり、CPUモジュール部100とCPUモジュール部200とは同一構成であり、I/Oモジュール部300とI/Oモジュール部400とは同一構成である。CPUモジュール部100とCPUモジュール部200はクロック同期で動作する。I/Oモジュール部300とI/Oモジュール部400は並行して動作する。
以下においては、CPUモジュール部100およびI/Oモジュール部300の構成について説明し、CPUモジュール部200およびI/Oモジュール部400の構成についてはその説明を省略する。
CPUモジュール部100は、運用系プロセッサ101と、待機系プロセッサ102と、プロセッサ切り替え部110と、メモリ・I/O制御部103と、二重化制御部104(制御部)とを有する。プロセッサ切り替え部110は、プロセッサ選択部111と、エラー情報記憶部112と、電源供給部113とを有する。I/Oモジュール部300は、二重化制御部104(制御部)と、I/Oデバイス301と、診断部302とを有する。
運用系プロセッサ101は、バス121を介してプロセッサ切り替え部110のプロセッサ選択部111と接続される。待機系プロセッサ102は、バス122を介してプロセッサ切り替え部110のプロセッサ選択部111と接続される。プロセッサ選択部111は、バス123を介してメモリ・I/O制御部103と接続される。メモリ・I/O制御部103は、バス124を介して二重化制御部104と接続される。二重化制御部104は、バス321を介してI/Oデバイス301および診断部302に接続される。二重化制御部104は、バス521を介してI/Oモジュール部400の二重化制御部204と接続される。
運用系プロセッサ101および待機系プロセッサ102は、プロセッサの内部で発生したエラーを検出する。運用系プロセッサ101は、検出したエラー情報(信号131)をプロセッサ切り替え部110のエラー情報記憶部112に送信する。待機系プロセッサ102は、検出したエラー情報(信号132)をプロセッサ切り替え部110のエラー情報記憶部112に送信する。
メモリ・I/O制御部103は、運用系プロセッサ101または待機系プロセッサ102が発行するトランザクションをチェックして、例えばプロトコルエラーやデータエラー等を検出する。メモリ・I/O制御部103は、検出したエラー情報(信号133)をプロセッサ切り替え部110のエラー情報記憶部112に送信する。
プロセッサ選択部111は、プロセッサ切り替え部110に接続するプロセッサとして、運用系プロセッサ101および待機系プロセッサ102のうちいずれか一方を選択する。プロセッサ選択部111は、プロセッサの選択結果をメモリ・I/O制御部103に通知する。
エラー情報記憶部112は、運用系プロセッサ101、待機系プロセッサ102およびメモリ・I/O制御部103から送信された各種のエラー情報を記憶する。エラー情報記憶部112は、各種のエラー情報を記録した場合に、プロセッサエラーが発生した旨(信号134)を二重化制御部104に通知する。
電源供給部113は、運用系プロセッサ101および待機系プロセッサ102のうちのいずれか一方を電力供給先のプロセッサに設定し、電力を供給する。
二重化制御部104は、CPUモジュール部100で発行されたトランザクションとCPUモジュール部200から発行されたトランザクションとを比較して、例えばタイミングのずれやデータの差異等を検出する。二重化制御部104は、運用系プロセッサ101、待機系プロセッサ102またはメモリ・I/Oコントローラでエラーが検出された場合に、CPUモジュール部100を自システムから切り離して隔離する。二重化制御部104は、CPUモジュール部100を自システムから隔離した場合に、CPUモジュール部200にプロッサエラーが発生した旨を通知する。二重化制御部104は、エラーを発生したプロセッサが他のプロッセサに切り替えられた後に、隔離したCPUモジュール部100を自システムに組み込む。二重化制御部104は、CPUモジュール部100とCPUモジュール部200との間の同期処理を行う。
診断部302は、エラー情報記憶部112に記憶されたエラー情報を参照する。診断部302は、プロセッサ選択部111によるプロッセサの選択を制御する。診断部302は、運用系プロセッサ101または待機系プロセッサ102に電力を供給する電源供給部113の電力供給先を制御する。
フォールトトレラントサーバ1には、上述した各機能を実現させるプロセッサ切り替えプログラムがインストールされている。このプロセッサ切り替えプログラムを実行することで、上述した各種の機能を実現することができる。
次に、図1および図2を参照して、実施形態におけるフォールトトレラントサーバ1のプロセッサ切り替え処理について説明する。図2は、プロセッサ切り替え処理の処理手順を説明するためのフローチャートである。この処理手順では、第1のシステムで使用するプロッセサとして選択されているCPUモジュール部100の運用系プロセッサ101が故障した場合に行われるプロセッサ切り替え処理の手順について説明する。
最初に、運用系プロセッサ101が内部エラーを検出した場合(ステップS101;YES)には、運用系プロセッサ101がエラー情報をエラー情報記憶部112に記憶させる。一方、メモリ・I/O制御部103がプロトコルエラーやデータエラー等を検出した場合(ステップS101;YES)には、メモリ・I/O制御部103がエラー情報をエラー情報記憶部112に記憶させる。
続いて、エラー情報記憶部112は、上記いずれかのエラー情報を記憶した場合に、プロセッサエラーが発生した旨を二重化制御部104に通知する。
続いて、二重化制御部104は、CPUモジュール部100からI/Oモジュール部300へのアクセスを禁止することで、CPUモジュール部100を自システムから隔離する(ステップS102)。そして、二重化制御部104は、他システムのCPUモジュール部200にプロッサエラーが発生した旨を通知する(ステップS103)。
続いて、CPUモジュール部200(切り替え指示送信部)は、受信したエラー通知に基づいて、I/Oモジュール部300の診断部302にプロセッサ切り替え指示を送信する。
続いて、診断部302は、エラー情報記憶部112に記憶されているエラー情報を取得する。診断部302は、取得したエラー情報に基づいて、運用系プロセッサ101が故障したと判定する。診断部302は、プロセッサ切り替え部110に接続するプロセッサとして、待機系プロセッサ102を選択させるための指令をプロセッサ選択部111に送信する。プロセッサ選択部111は、プロセッサ切り替え部110に接続するプロセッサとして、待機系プロセッサ102を選択する。これにより、プロセッサ切り替え部110に接続するプロセッサが、故障した運用系プロセッサ101から待機系プロセッサ102に切り替わる(ステップS104)。
診断部302は、運用系プロセッサ101が故障したと判定した場合に、運用系プロセッサ101への電力の供給を停止し、待機系プロセッサ102への電力の供給を開始させるための指令を電源供給部113に送信する。電源供給部113は、電力を供給するプロセッサとして、待機系プロセッサ102を選択する。これにより、電力の供給先が、故障した運用系プロセッサ101から待機系プロセッサ102に切り替わる(ステップS105)。
続いて、二重化制御部104および二重化制御部204は、運用系プロセッサ101の二重化(冗長化)の対象として稼働していた運用系プロセッサ201の内部情報を、待機系プロセッサ102にコピーさせる。二重化制御部104および二重化制御部204は、CPUモジュール部200のメモリに格納されている内容を、CPUモジュール部100のメモリにコピーさせる(ステップS106)。
続いて、二重化制御部104は、CPUモジュール部100からI/Oモジュール部300へのアクセス禁止状態を解除することで、CPUモジュール部100を自システムに組み込む(ステップS107)。二重化制御部104および二重化制御部204は、CPUモジュール部100とCPUモジュール部200との間の同期処理を行う(ステップS108)。
これにより、プロセッサが故障した場合であっても、故障したプロセッサ以外のハードウェアについては、引き続き二重化構成を維持したまま、システムを稼動させることができる。したがって、プロセッサ故障時のシステムの停止時間を極力短時間に抑えることができ、さらに、プロセッサが故障してもシステムの機能や性能を劣化させることなく稼働させることができる。それゆえに、フォールトトレラントサーバ1の可用性を向上させることができる。
なお、上述した実施形態は、単なる例示に過ぎず、実施形態に明示していない種々の変形や技術の適用を排除するものではない。すなわち、本発明は、その趣旨を逸脱しない範囲で様々な形態に変形して実施することができる。
例えば、上述した実施形態では、各CPUモジュール部に運用系プロセッサと待機系プロセッサとを一つずつ設けた場合について説明したが、各CPUモジュール部に運用系プロセッサを二つ以上儲けることとしてもよい。この場合には、プロセッサ選択部が、故障した運用系プロセッサ以外の運用系プロセッサを選択することとすればよい。
また、上述した実施形態では、電力供給部によって電力供給先のプロセッサを切り替えているが、電力供給部は必ずしも設ける必要はない。CPUモジュール部で使用するプロセッサをいずれか一のプロセッサに切り替えることができればよい。
また、上述した実施形態では、CPUモジュール部100からI/Oモジュール部300へのアクセスを禁止することで、CPUモジュール部100をシステムから隔離しているが、システムから隔離する方法はこれに限定されない。例えば、故障した運用系プロセッサ101を含むCPUモジュール部から、他のシステムにデータを送信することができないように、運用系プロセッサ101および待機系プロセッサ102をシステムから隔離することができればよい。
1…フォールトトレラントサーバ、100、200…CPUモジュール部、101、201…運用系プロセッサ、102、202…待機系プロセッサ、103、203…メモリ・I/O制御部、104、204…二重化制御部、110、210…プロセッサ切り替え部、111、211…プロセッサ選択部、112、212…エラー情報記憶部、113、213…電源供給部、300、400…I/Oモジュール部、301、401…I/Oデバイス、302。402…診断部。
Claims (6)
- 二重化構成された第1および第2のシステムを備え、
それぞれの前記システムが、
複数のプロセッサと、
自システムで使用する前記プロセッサを切り替えるプロセッサ切り替え部と、
自システムで使用されている前記プロセッサに障害が発生した場合に、自システムに含まれる全ての前記プロセッサを自システムから隔離し、他システムに対して障害発生通知を送信する制御部と、
前記障害発生通知を受信した場合に、当該障害発生通知を送信したシステムに対してプロセッサの切り替え指示を送信する切り替え指示送信部と、を有し、
前記切り替え指示を受信した場合に、
前記プロセッサ切り替え部は、自システムで使用する前記プロセッサを、前記障害が発生した前記プロセッサから他の前記プロセッサに切り替え、
前記制御部は、他システムに格納されている情報を自システムに格納させ、自システムから隔離した全ての前記プロセッサを自システムに組み込んでから、自システムと他システムとを同期させる、
ことを特徴とするフォールトトレラントサーバ。 - それぞれの前記システムは、自システムで使用する前記プロセッサに電力を供給する電力供給部を、さらに有し、
前記電力供給部は、前記プロセッサ切り替え部によって前記プロセッサが切り替えられた場合に、電力供給先のプロセッサを、前記障害が発生した前記プロセッサから他の前記プロセッサに切り替えることを特徴とする請求項1記載のフォールトトレラントサーバ。 - 前記制御部は、自システムに含まれる全ての前記プロセッサによる自システム以外へのデータ送信を不可能にすることで、全ての前記プロセッサを自システムから隔離することを特徴とする請求項1または2記載のフォールトトレラントサーバ。
- 前記制御部は、自システムに含まれる全ての前記プロセッサによる自システム以外へのデータ送信を可能にすることで、自システムから隔離した全ての前記プロセッサを自システムに組み込むことを特徴とする請求項3の記載のフォールトトレラントサーバ。
- 二重化構成され、それぞれ複数のプロセッサを有する第1および第2のシステムを備えるサーバで実行されるプロセッサ切り替え方法であって、
自システムで使用されている前記プロセッサに障害が発生した場合に、自システムに含まれる全ての前記プロセッサを自システムから隔離し、他システムに対して障害発生通知を送信するステップと、
前記障害発生通知を受信した場合に、当該障害発生通知を送信したシステムに対してプロセッサの切り替え指示を送信するステップと、
前記切り替え指示を受信した場合に、自システムで使用する前記プロセッサを、前記障害が発生した前記プロセッサから他の前記プロセッサに切り替えるプロセッサ切り替えステップと、
他システムに格納されている情報を自システムに格納させ、自システムから隔離した全ての前記プロセッサを自システムに組み込んでから、自システムと他システムとを同期させるステップと、
を含むことを特徴とするプロセッサ切り替え方法。 - 請求項5に記載の各ステップをコンピュータに実行させるためのプロセッサ切り替えプログラム。
Priority Applications (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
JP2009172876A JP2011028481A (ja) | 2009-07-24 | 2009-07-24 | フォールトトレラントサーバ、プロセッサ切り替え方法およびプロセッサ切り替えプログラム |
Applications Claiming Priority (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
JP2009172876A JP2011028481A (ja) | 2009-07-24 | 2009-07-24 | フォールトトレラントサーバ、プロセッサ切り替え方法およびプロセッサ切り替えプログラム |
Publications (1)
Publication Number | Publication Date |
---|---|
JP2011028481A true JP2011028481A (ja) | 2011-02-10 |
Family
ID=43637165
Family Applications (1)
Application Number | Title | Priority Date | Filing Date |
---|---|---|---|
JP2009172876A Pending JP2011028481A (ja) | 2009-07-24 | 2009-07-24 | フォールトトレラントサーバ、プロセッサ切り替え方法およびプロセッサ切り替えプログラム |
Country Status (1)
Country | Link |
---|---|
JP (1) | JP2011028481A (ja) |
Cited By (2)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
JP2013149114A (ja) * | 2012-01-20 | 2013-08-01 | Mitsubishi Electric Corp | 入出力制御システム |
JP2021092877A (ja) * | 2019-12-09 | 2021-06-17 | Necプラットフォームズ株式会社 | サーバシステム、検出方法及びプログラム |
-
2009
- 2009-07-24 JP JP2009172876A patent/JP2011028481A/ja active Pending
Cited By (2)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
JP2013149114A (ja) * | 2012-01-20 | 2013-08-01 | Mitsubishi Electric Corp | 入出力制御システム |
JP2021092877A (ja) * | 2019-12-09 | 2021-06-17 | Necプラットフォームズ株式会社 | サーバシステム、検出方法及びプログラム |
Similar Documents
Publication | Publication Date | Title |
---|---|---|
US9195553B2 (en) | Redundant system control method | |
EP2224341B1 (en) | Node system, server switching method, server device, and data transfer method | |
JP2006178557A (ja) | コンピュータシステム及びエラー処理方法 | |
JP2006277205A (ja) | 記憶装置システムおよびその制御方法、制御プログラム | |
JP2008107896A (ja) | 物理資源制御管理システム、物理資源制御管理方法および物理資源制御管理用プログラム | |
JP2012208896A (ja) | ディスクアレイ装置、接続経路制御方法、及び接続経路制御プログラム | |
JP4491482B2 (ja) | 障害回復方法、計算機、クラスタシステム、管理計算機及び障害回復プログラム | |
JP5287974B2 (ja) | 演算処理システム、再同期方法、およびファームプログラム | |
JP2005293315A (ja) | データミラー型クラスタシステム及びデータミラー型クラスタシステムの同期制御方法 | |
JP2006178659A (ja) | フォールト・トレラント・コンピュータシステムと、そのための割り込み制御方法 | |
JP6083480B1 (ja) | 監視装置、フォールトトレラントシステムおよび方法 | |
JP5201134B2 (ja) | 二重化システム、切替プログラムおよび切替方法 | |
JP2009098988A (ja) | フォルトトレラントコンピュータシステム | |
JP3774826B2 (ja) | 情報処理装置 | |
JP2011028481A (ja) | フォールトトレラントサーバ、プロセッサ切り替え方法およびプロセッサ切り替えプログラム | |
JP2011000977A (ja) | 入出力部一体型2重系cpuにおける入出力管理方式 | |
JP2004094433A (ja) | フォールトトレラントコンピュータ及びそのディスク管理機構及びディスク管理プログラム | |
JP2006058960A (ja) | 冗長構成のサーバシステムにおける同期化方法及びシステム | |
JP6394727B1 (ja) | 制御装置、制御方法、及び、フォールトトレラント装置 | |
JP5556086B2 (ja) | 二重化システム、及び、二重化方法 | |
JP6464704B2 (ja) | フォールトトレラントシステム、稼働系装置、待機系装置、フェイルオーバー方法、および、フェイルオーバープログラム | |
JP2007274255A (ja) | 冗長構成システム及びノード | |
JP7056057B2 (ja) | 情報処理装置、情報処理方法、情報処理システム、及び、コンピュータ・プログラム | |
JP6056801B2 (ja) | フォールトトレラントサーバ、同期化方法、及びプログラム | |
JP2010055509A (ja) | 障害復旧システム、方法及びプログラム、並びにクラスタシステム |