(57)【要約】【課題】フェイルオーバドライバを介さずに通信制御装置の故障を検出し、故障が検出されると他方の通信制御装置に切り替えるフォールトトレラントサーバを提供する。【解決手段】フォールトトレラントサーバ１０００は、ＣＰＵ１１０とＣＰＵ２１０とのいずれかのＣＰＵを用いることにより、正常時の通信制御装置１４０を監視して通信制御装置１４０の故障を検出する検出部と、ＣＰＵ１１０とＣＰＵ２１０とのいずれかのＣＰＵを用いることにより、検出部が通信制御装置１４０の故障を検出した場合に通信制御装置１４０を通信制御装置２４０として機能させる機能情報を通信制御装置２４０に設定すると共に、通信制御装置１４０から通信制御装置２４０に切り替えて通信制御装置１４０を通信制御装置２４０で代替する切替部とを備えた。【選択図】図２
2015179386.tif 000002
【特許請求の範囲】
【請求項１】
第１のＣＰＵと、第１の入出力ユニットと、前記第１の入出力ユニットからの制御に基づきネットワーク通信を行う第１の通信制御装置とを有する主系の第１のサーバ部と、
第２のＣＰＵと、第２の入出力ユニットと、前記第２の入出力ユニットからの制御に基づきネットワーク通信を行う第２の通信制御装置とを有する従系の第２のサーバ部と
を備え、
前記第１の通信制御装置が正常な場合には前記第１の通信制御装置によってネットワーク通信を行うフォールトトレラントサーバ装置であって、
前記第１のＣＰＵと前記第２のＣＰＵとのいずれかのＣＰＵを用いることにより、正常時の前記第１の通信制御装置を監視して前記第１の通信制御装置の故障を検出する検出部と、
前記第１のＣＰＵと前記第２のＣＰＵとのいずれかのＣＰＵを用いることにより、前記検出部が前記第１の通信制御装置の故障を検出した場合に前記第１の通信制御装置を前記第２の通信制御装置として機能させる機能情報を前記第２の通信制御装置に設定すると共に、前記第１の通信制御装置から前記第２の通信制御装置に切り替えて前記第１の通信制御装置を前記第２の通信制御装置で代替する切替部と
を備えたことを特徴とするフォールトトレラントサーバ装置。
【請求項２】
前記検出部と、前記切替部とは、
前記第１のＣＰＵを用いることを特徴とする請求項１記載のフォールトトレラントサーバ装置。
【請求項３】
前記切替部は、
前記機能情報として、ネットワークにおけるアドレスを示すアドレス情報と、アプリケーションが前記第２の通信制御装置を識別するための識別情報とを設定することを特徴とする請求項１または２に記載のフォールトトレラントサーバ装置。
【請求項４】
第１のＣＰＵと、第１の入出力ユニットと、前記第１の入出力ユニットからの制御に基づきネットワーク通信を行う第１の通信制御装置とを有する主系の第１のサーバ部と、
第２のＣＰＵと、第２の入出力ユニットと、前記第２の入出力ユニットからの制御に基づきネットワーク通信を行う第２の通信制御装置とを有する従系の第２のサーバ部と
を備え、
前記第１の通信制御装置が正常な場合には前記第１の通信制御装置によってネットワーク通信を行うコンピュータであるフォールトトレラントサーバ装置に、
前記第１のＣＰＵと前記第２のＣＰＵとのいずれかのＣＰＵを用いることにより、正常時の前記第１の通信制御装置を監視して前記第１の通信制御装置の故障を検出する処理、
前記第１のＣＰＵと前記第２のＣＰＵとのいずれかのＣＰＵを用いることにより、前記第１の通信制御装置の故障を検出した場合に前記第１の通信制御装置を前記第２の通信制御装置として機能させる機能情報を前記第２の通信制御装置に設定すると共に、前記第１の通信制御装置から前記第２の通信制御装置に切り替えて前記第１の通信制御装置を前記第２の通信制御装置で代替する処理、
を実行させるための通信制御装置の切替プログラム。
【発明の詳細な説明】
【技術分野】
【０００１】
この発明は、フォールトトレラントサーバにおける第１の通信制御装置から第２の通信制御装置への切り替えに関する。
【背景技術】
【０００２】
図４は従来のフォールトトレラントサーバ１０における通信制御装置１４０の冗長化を示す図である。図５は従来のフォールトトレラントサーバ１０の構成を示す図である。
【０００３】
図５のように、フォールトトレラントサーバ１０は、ネットワーク３０にシーケンサ２１、シーケンサ２２と共に接続し、シーケンサ２１，２２等と通信を行う。
【０００４】
図５のようにフォールトトレラントサーバ１０は主系サーバ部１００と、従系サーバ部２００を備える。主系サーバ部１００は、ＣＰＵ（Ｃｅｎｔｒａｌ  Ｐｒｏｃｅｓｓｉｎｇ  Ｕｎｉｔ）１１０、Ｉ／Ｏユニット１３０、通信制御装置１４０を備えている。Ｉ／Ｏユニット１３０はフェイルオーバドライバ１３１及びドライバ１３２を備えている。従系の従系サーバ部２００も主系サーバ部１００と同様の構成である。
【０００５】
図４、図５に示すように、従来ではフォールトトレラントサーバ１０に搭載する通信制御装置を冗長化するには、Ｉ／Ｏユニット１３０に含まれる、専用のフェイルオーバドライバ１３１，２３１が必要であった。このため、通信制御装置として使用できるのは、専用のフェイルオーバドライバ１３１，２３１によって制御できる通信制御装置に限定されていた。
【０００６】
フェイルオーバドライバ１３１は、通信制御装置１４０の故障を検出した場合、通信制御装置１４０を通信制御装置２４０に切り替える。その際、フェイルオーバドライバ１３１は、通信制御装置２４０が通信制御装置１４０に代替するように通信制御装置２４０を設定することに加え、通信制御装置２４０以外の機器の設定も変更する必要があった。
【０００７】
特許文献１ではデータ転送経路の冗長化技術を開示しているが、主系、従系のそれぞれに故障検知モジュールが必要となる。
【先行技術文献】
【特許文献】
【０００８】
【特許文献１】特開平８−４４６３７号公報
【発明の概要】
【発明が解決しようとする課題】
【０００９】
この発明は、フェイルオーバドライバを介さずに通信制御装置の故障を検出し、故障が検出されると他方の通信制御装置に切り替えるフォールトトレラントサーバの提供を目的とする。
【課題を解決するための手段】
【００１０】
この発明のフォールトトレラントサーバ装置は、
第１のＣＰＵと、第１の入出力ユニットと、前記第１の入出力ユニットからの制御に基づきネットワーク通信を行う第１の通信制御装置とを有する主系の第１のサーバ部と、
第２のＣＰＵと、第２の入出力ユニットと、前記第２の入出力ユニットからの制御に基づきネットワーク通信を行う第２の通信制御装置とを有する従系の第２のサーバ部と
を備え、
前記第１の通信制御装置が正常な場合には前記第１の通信制御装置によってネットワーク通信を行うフォールトトレラントサーバ装置であって、
前記第１のＣＰＵと前記第２のＣＰＵとのいずれかのＣＰＵを用いることにより、正常時の前記第１の通信制御装置を監視して前記第１の通信制御装置の故障を検出する検出部と、
前記第１のＣＰＵと前記第２のＣＰＵとのいずれかのＣＰＵを用いることにより、前記検出部が前記第１の通信制御装置の故障を検出した場合に前記第１の通信制御装置を前記第２の通信制御装置として機能させる機能情報を前記第２の通信制御装置に設定すると共に、前記第１の通信制御装置から前記第２の通信制御装置に切り替えて前記第１の通信制御装置を前記第２の通信制御装置で代替する切替部と
を備えたことを特徴とする。
【発明の効果】
【００１１】
この発明によれば、フェイルオーバドライバを介さずに通信制御装置の故障を検出し、故障が検出されると他方の通信制御装置に切り替えるフォールトトレラントサーバを提供できる。
【図面の簡単な説明】
【００１２】
【図１】実施の形態１の図で、フォールトトレラントサーバ１０００における通信制御装置の冗長化を示す図。
【図２】実施の形態１の図で、フォールトトレラントサーバ１０００の構成を示す図。
【図３】実施の形態１の図で、通信制御装置の切り替えの手順を示す図。
【図４】従来の技術を示す図で、従来のフォールトトレラントサーバ１０における通信制御装置の冗長化を示す図。
【図５】従来の技術を示す図で、従来のフォールトトレラントサーバ１０の構成を示す図。
【発明を実施するための形態】
【００１３】
実施の形態１．
図１〜図３を参照して、実施の形態１のフォールトトレラントサーバ１０００（フォールトトレラントサーバ装置）を説明する。
図１は、フォールトトレラントサーバ１０００における通信制御装置の冗長化を示す図である。
図２は、フォールトトレラントサーバ１０００の構成を示す図である。
図３は、通信制御装置の切り替えの手順を示す図である。
【００１４】
図１は図４に対応する図である。図１のように、実施の形態１のフォールトトレラントサーバ１０００では、常駐モニタプログラム（後述する検出部）が主系の通信制御装置１４０（第１の通信制御装置）の故障を検出すると、切替部（後述する）が通信制御装置１４０を通信制御装置２４０（第２の通信制御装置）に切り替える。
【００１５】
図２は、主系サーバ部１００（第１のサーバ部）と従系サーバ部２００（第２のサーバ部）とからなるフォールトトレラントサーバ１０００の構成を示す図であり、図５に対応する。以下では図５と異なる点を説明する。図２のフォールトトレラントサーバ１０００は図５のフォールトトレラントサーバ１０に対して以下の点が異なる。
（１）フォールトトレラントサーバ１０００ではＩ／Ｏユニット１３０（第１の入出力ユニット）、Ｉ／Ｏユニット２３０（第２の入出力ユニット）がフェイルオーバドライバ１３１，１３２を持たない。
（２）フォールトトレラントサーバ１０００は、メモリー１２０、２２０を有する。フォールトトレラントサーバ１０００は、メモリー１２０に格納された通信制御装置１４０の故障検出のプログラム（常駐モニタプログラム）をＣＰＵ１１０（第１のＣＰＵ）が実行することで、通信制御装置１４０を監視し、その故障を検出する。常駐モニタプログラムとＣＰＵ１１０とは、主系の通信制御装置１４０の故障を検出する検出部を構成する。なお、メモリー２２０に格納された常駐モニタプログラムをＣＰＵ２１０（第２のＣＰＵ）が実行することで、通信制御装置１４０を監視し、その故障を検出してもよい。この場合、メモリー２２０の常駐モニタプログラムとＣＰＵ２１０とが、検出部を構成する。
（３）またフォールトトレラントサーバ１０００では、メモリー１２０に格納された切替プログラムをＣＰＵ１１０が実行することで、故障が検出された通信制御装置１４０を通信制御装置２４０に切り替える。切替プログラムとＣＰＵ１１０とは、切替部を構成する。なお、メモリー２２０に格納された切替プログラムをＣＰＵ２１０が実行することで、通信制御装置１４０を通信制御装置２４０に切り替えても良い。この場合、メモリー２２０の切替プログラムとＣＰＵ２１０とが、切替部を構成する。
（４）上記では常駐モニタプログラムと切替プログラムは別個のプログラムとして説明したが、一体のプログラムであってもよい。なお図２ではメモリー１２０とメモリー２２０とは別個としているが一体でも構わない。
【００１６】
（Ｓ１０）
図３を参照してフォールトトレラントサーバ１０００の通信制御装置の切替動作を説明する。図３の説明では、メモリー１２０に記憶された常駐モニタプログラムとＣＰＵ１１０とが検出部を構成し、メモリー１２０に記憶された切替プログラムとＣＰＵ１１０とが切替部を構成する場合を説明するが、メモリー２２０に記憶された常駐モニタプログラムとＣＰＵ２１０とが検出部を構成し、メモリー２２０に記憶された切替プログラムとＣＰＵ２１０とが切替部を構成してもよいことは、上記のとおりである。
【００１７】
（ステップＳ１０）
検出部は、ＣＰＵ１１０を用いることにより、正常時の通信制御装置１４０を監視して、通信制御装置１４０の故障を検出する（Ｓ１０）。検出部は、通信制御装置１４０の故障を検出すると、故障検出の通知を切替部に送信する。
【００１８】
（ステップＳ２０）
切替部は検出部から故障検出の通知を受信すると、通信制御装置１４０をネットワーク３０から切り離す（Ｓ２０）。
【００１９】
（ステップＳ３０、ステップＳ４０）
切替部は、ＣＰＵ１１０を用いることにより、通信制御装置１４０を通信制御装置２４０として機能させる機能情報を通信制御装置２４０に設定する（Ｓ３０）。ここで「機能情報」とは、例えば、ネットワーク３０におけるアドレスを示す「アドレス情報」と、フォールトトレラントサーバ１０００で実行されるアプリケーションが通信制御装置２４０を識別するための「識別情報」である。アドレス情報の例は図２に示す「局番」である。「アドレス情報」及び「識別情報」は、通信制御装置１４０に設定されていたものである。切替部は、ＣＰＵ１１０を用いることにより、通信制御装置２４０をネットワーク３０に接続し、通信制御装置１４０から通信制御装置２４０に切り替えて通信制御装置１４０を通信制御装置２４０で代替する。
【００２０】
以上のようにフォールトトレラントサーバ１０００では、ＣＰＵとメモリーに記憶されたプログラムとが、検出部、切替部として機能するので、フェイルオーバドライバが不要であり、通信制御装置は汎用の装置を使用することができる。
また、フォールトトレラントサーバ１０００では、切替部が通信制御装置２４０に機能情報を設定することで通信制御装置１４０から通信制御装置２４０に引き継ぐことができるので通信制御装置２４０以外の機器の設定が不要となり、簡単に別の通信制御装置に引き継ぐことができる。
【符号の説明】
【００２１】
２１，２２  シーケンサ、３０  ネットワーク、１００  主系サーバ部、１１０  ＣＰＵ、１２０  メモリー、１３０  Ｉ／Ｏユニット、１３１  フェイルオーバドライバ、１３２  ドライバ、１４０  通信制御装置、２００  従系サーバ部、２１０  ＣＰＵ、２２０  メモリー、２３０  Ｉ／Ｏユニット、２３１  フェイルオーバドライバ、２３２  ドライバ、２４０  通信制御装置、１０００  フォールトトレラントサーバ。
【図１】
2015179386.tif 000003
【図２】
2015179386.tif 000004
【図３】
2015179386.tif 000005
【図４】
2015179386.tif 000006
【図５】
2015179386.tif 000007