JP2011028481A - フォールトトレラントサーバ、プロセッサ切り替え方法およびプロセッサ切り替えプログラム - Google Patents

フォールトトレラントサーバ、プロセッサ切り替え方法およびプロセッサ切り替えプログラム Download PDF

Info

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
Application number
JP2009172876A
Other languages
English (en)
Inventor
Kazuhiko Watanabe
和彦 渡邊
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.)
NEC Corp
Original Assignee
NEC 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 NEC Corp filed Critical NEC Corp
Priority to JP2009172876A priority Critical patent/JP2011028481A/ja
Publication of JP2011028481A publication Critical patent/JP2011028481A/ja
Pending legal-status Critical Current

Links

Images

Landscapes

  • Hardware Redundancy (AREA)

Abstract

【課題】システムの可用性を向上させる。
【解決手段】自システムで使用されているプロセッサに障害が発生した場合に、自システムに含まれる全てのプロセッサを隔離し、他システムに対して障害発生通知を送信する二重化制御部104、204と、障害発生通知を受信した場合に、当該障害発生通知を送信したシステムに対してプロセッサの切り替え指示を送信するCPUモジュール部100、200と、を有し、切り替え指示を受信した場合に、プロセッサ切り替え部は、自システムで使用するプロセッサを、障害が発生したプロセッサから他のプロセッサに切り替え、二重化制御部は、他システムに格納されている情報を自システムに格納させ、隔離した全てのプロセッサを自システムに組み込んでから、自システムと他システムとを同期させる。
【選択図】図1

Description

本発明は、フォールトトレラントサーバ、プロセッサ切り替え方法およびプロセッサ切り替えプログラムに関する。
大規模なシステムやミッションクリティカルな業務のシステムでは、障害の発生が許されない。したがって、システムに冗長性を持たせて障害を回避させるフォールトトレランスなシステムが構築されている。下記特許文献1には、CPU、主記憶、通信インターフェース等のハードウェアを二重化し、いずれか一方のハードウェアが故障しても通常運用を継続することが可能なフォールトトレラントサーバが開示されている。
特開平10−145459号公報
上記特許文献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. 二重化構成された第1および第2のシステムを備え、
    それぞれの前記システムが、
    複数のプロセッサと、
    自システムで使用する前記プロセッサを切り替えるプロセッサ切り替え部と、
    自システムで使用されている前記プロセッサに障害が発生した場合に、自システムに含まれる全ての前記プロセッサを自システムから隔離し、他システムに対して障害発生通知を送信する制御部と、
    前記障害発生通知を受信した場合に、当該障害発生通知を送信したシステムに対してプロセッサの切り替え指示を送信する切り替え指示送信部と、を有し、
    前記切り替え指示を受信した場合に、
    前記プロセッサ切り替え部は、自システムで使用する前記プロセッサを、前記障害が発生した前記プロセッサから他の前記プロセッサに切り替え、
    前記制御部は、他システムに格納されている情報を自システムに格納させ、自システムから隔離した全ての前記プロセッサを自システムに組み込んでから、自システムと他システムとを同期させる、
    ことを特徴とするフォールトトレラントサーバ。
  2. それぞれの前記システムは、自システムで使用する前記プロセッサに電力を供給する電力供給部を、さらに有し、
    前記電力供給部は、前記プロセッサ切り替え部によって前記プロセッサが切り替えられた場合に、電力供給先のプロセッサを、前記障害が発生した前記プロセッサから他の前記プロセッサに切り替えることを特徴とする請求項1記載のフォールトトレラントサーバ。
  3. 前記制御部は、自システムに含まれる全ての前記プロセッサによる自システム以外へのデータ送信を不可能にすることで、全ての前記プロセッサを自システムから隔離することを特徴とする請求項1または2記載のフォールトトレラントサーバ。
  4. 前記制御部は、自システムに含まれる全ての前記プロセッサによる自システム以外へのデータ送信を可能にすることで、自システムから隔離した全ての前記プロセッサを自システムに組み込むことを特徴とする請求項3の記載のフォールトトレラントサーバ。
  5. 二重化構成され、それぞれ複数のプロセッサを有する第1および第2のシステムを備えるサーバで実行されるプロセッサ切り替え方法であって、
    自システムで使用されている前記プロセッサに障害が発生した場合に、自システムに含まれる全ての前記プロセッサを自システムから隔離し、他システムに対して障害発生通知を送信するステップと、
    前記障害発生通知を受信した場合に、当該障害発生通知を送信したシステムに対してプロセッサの切り替え指示を送信するステップと、
    前記切り替え指示を受信した場合に、自システムで使用する前記プロセッサを、前記障害が発生した前記プロセッサから他の前記プロセッサに切り替えるプロセッサ切り替えステップと、
    他システムに格納されている情報を自システムに格納させ、自システムから隔離した全ての前記プロセッサを自システムに組み込んでから、自システムと他システムとを同期させるステップと、
    を含むことを特徴とするプロセッサ切り替え方法。
  6. 請求項5に記載の各ステップをコンピュータに実行させるためのプロセッサ切り替えプログラム。
JP2009172876A 2009-07-24 2009-07-24 フォールトトレラントサーバ、プロセッサ切り替え方法およびプロセッサ切り替えプログラム Pending JP2011028481A (ja)

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)

* Cited by examiner, † Cited by third party
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プラットフォームズ株式会社 サーバシステム、検出方法及びプログラム

Cited By (2)

* Cited by examiner, † Cited by third party
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) 障害復旧システム、方法及びプログラム、並びにクラスタシステム