(57)【要約】【課題】汎用サーバシステムにおいて動作するソフトウェアを更新する際、サービスを停止させず、関連するサーバに対して同時に更新、更新解除を可能とする。【解決手段】メインサーバ１は、サブサーバ２1〜２Nに対して新ファイルを配信した後に、新ファイルの適用要求を通知し、新ファイル適用後にサブサーバ２1〜２Nのいずれかから新ファイル異常検出通知が通知された場合、サブサーバ２1〜２Nに対して新ファイル適用解除要求を通知する。サブサーバ２1〜２Nは、メインサーバ１からの新ファイル適用要求を受信すると、運用中のサービスを停止することなくメインメモリ上に新ファイルの実行コードの書き込みを行った後に新ファイルの適用を行い、新ファイルの異常が検知された場合、メインサーバ１に対して新ファイル異常検知報告を行い、メインサーバ１から新ファイル適用解除要求を受信した場合、メインメモリ上の新ファイルの適用解除を行う。【選択図】図２
2006268172.tif 000002
【特許請求の範囲】
【請求項１】
メインサーバと複数のサブサーバとから構成される汎用サーバシステムにおいて、
前記メインサーバは、前記複数のサブサーバに対して新ファイルを配信した後に、新ファイルの適用要求を通知し、新ファイル適用後に前記複数のサブサーバのいずれかから新ファイル異常検出通知が通知された場合は、前記複数のサブサーバに対して新ファイル適用解除要求を通知する手段を備え、
前記複数のサブサーバは、それぞれ、前記メインサーバからの新ファイル適用要求を受信すると、運用中のサービスを停止することなくメインメモリ上に新ファイルの実行コードの書き込みを行った後に該新ファイルの適用を行い、新ファイルの異常が検知された場合、前記メインサーバに対して新ファイル異常検知報告を行い、前記メインサーバから新ファイル適用解除要求を受信した場合、前記メインメモリ上の新ファイルの適用解除を行う手段を備えていることを特徴とするサーバシステム。
【請求項２】
前記サブサーバでは、旧ファイルへのジャンプアドレスを新ファイルの開始アドレスに書き換えることにより新ファイルの適用を行い、新ファイルへのジャンプアドレスを旧ファイルの開始アドレスに書き換えることにより新ファイルの適用解除を行う請求項１記載のサーバシステム。
【請求項３】
メインサーバと複数のサブサーバとから構成される汎用サーバシステムにおいてオンラインを介してサブサーバに適用されるソフトウェアの更新を行うためのオンラインソフトウェア更新方法であって、
前記メインサーバが、前記複数のサブサーバに対して新ファイルを配信した後に、新ファイルの適用要求を通知するステップと、
前記複数のサブサーバが、前記メインサーバからの新ファイル適用要求を受信すると、運用中のサービスを停止することなくメインメモリ上に新ファイルの実行コードの書き込みを行った後に該新ファイルの適用を行うステップと、
前記複数のサーバが、新ファイルの異常が検知された場合、前記メインサーバに対して新ファイル異常検知報告を行うステップと、
前記メインサーバが、新ファイル適用後に前記複数のサブサーバのいずれかから新ファイル異常検出通知が通知された場合は、前記複数のサブサーバに対して新ファイル適用解除要求を通知するステップと、
前記複数のサブサーバが、前記メインサーバから新ファイル適用解除要求を受信した場合、前記メインメモリ上の新ファイルの適用解除を行うステップと、を備えているオンラインソフトウェア更新方法。
【請求項４】
前記新ファイルの適用を行うステップでは、旧ファイルへのジャンプアドレスを新ファイルの開始アドレスに書き換えることにより新ファイルの適用を行い、
前記新ファイルの適用解除を行うステップでは、新ファイルへのジャンプアドレスを旧ファイルの開始アドレスに書き換えることにより新ファイルの適用解除を行う請求項３記載のオンラインソフトウェア更新方法。
【発明の詳細な説明】
【技術分野】
【０００１】
本発明は、メインサーバと複数のサブサーバとから構成される汎用サーバシステムに関し、特にこのサーバシステムにおいてオンラインを介してサブサーバに適用されるソフトウェアの更新を行うためのオンラインソフトウェア更新方法に関する。
【背景技術】
【０００２】
メインサーバと複数のサブサーバとから構成される汎用サーバシステムでは、メインサーバとサブサーバとはそれぞれ異なるソフトウェアにより制御されている。このような汎用サーバシステムでは、それぞれのサーバにインストールされているソフトウェアに何等かの問題が発生したり新しいソフトウェア機能の追加を行う場合、新しいソフトウェアをそれぞれのサーバ毎にインストールする必要があった。
【０００３】
ネットワークで接続された複数の処理装置においてアプリケーションモジュールを更新する際に、オンラインテストを行うようにしたシステムや（例えば、特許文献１参照。）、ネットワークによって管理計算機と複数の被管理計算機とが接続されたシステムにおいて、管理計算機から被管理計算機に対して新しい機能を追加するためのプログラムをネットワークを介して配信してインストールするようにしたシステム（例えば、特許文献２参照。）が提案されている。
【０００４】
しかし、このような従来のサーバシステムでは、新しいソフトウェアをインストールし、その後にシステムを再起動することにより新しいソフトウェアを適用している。つまり、システムの再起動が必要となり、一時的にサービスを停止しなければならない問題が生じる。
【０００５】
また、ソフトウェア疎結合であるサーバシステムでは、関連するサーバ群を同時にソフトウェア更新することが出来ない。従い、関連するサーバ間のインタフェースを変更する場合、特定のサーバのソフトウェアを更新した段階で、該当サーバと関連するサーバ間のインタフェースの不一致が発生しシステム運用に問題が生じるため、サーバ間のインタフェースを変更するようなソフトウェア更新が出来ない、もしくは更新対象のソフトウェアに対し以前のインタフェースについても動作保障する必要が生じ複雑なソフトウェア構造となる問題が生じる。
【０００６】
さらに、新しいソフトウェアに不具合があった場合、システム保守者が介在して新しいソフトウェアのアンインストールを実施し、その後システムの再起動を実施しなければならないという問題も生じてしまう。
【特許文献１】特開平９−６２６２６号公報
【特許文献２】特開２００２−３６６３６１号公報
【発明の開示】
【発明が解決しようとする課題】
【０００７】
上述した従来のサーバシステムでは、下記のような問題点があった。
（１）新しいソフトウェアに更新する際に、サービスを停止しなければならない。
（２）関連するサーバ群を同時にソフトウェア更新することができない。
（３）更新した新しいソフトウェアに不具合が発生した場合、新しいソフトウェアのアンインストールをシステム保守者によって行う必要がある。
【０００８】
本発明の目的は、汎用サーバシステムにおいて動作するソフトウェアを更新する際に、サービスを停止させることなく、また関連するサーバに対して同時に更新、並びに更新解除が可能なサーバシステムおよびオンラインソフトウェア更新方法を提供することである。
【課題を解決するための手段】
【０００９】
上記目的を達成するために、本発明のサーバシステムは、メインサーバと複数のサブサーバとから構成される汎用サーバシステムにおいて、
前記メインサーバは、前記複数のサブサーバに対して新ファイルを配信した後に、新ファイルの適用要求を通知し、新ファイル適用後に前記複数のサブサーバのいずれかから新ファイル異常検出通知が通知された場合は、前記複数のサブサーバに対して新ファイル適用解除要求を通知する手段を備え、
前記複数のサブサーバは、それぞれ、前記メインサーバからの新ファイル適用要求を受信すると、運用中のサービスを停止することなくメインメモリ上に新ファイルの実行コードの書き込みを行った後に該新ファイルの適用を行い、新ファイルの異常が検知された場合、前記メインサーバに対して新ファイル異常検知報告を行い、前記メインサーバから新ファイル適用解除要求を受信した場合、前記メインメモリ上の新ファイルの適用解除を行う手段を備えていることを特徴とする。
【００１０】
また、前記サブサーバでは、旧ファイルへのジャンプアドレスを新ファイルの開始アドレスに書き換えることにより新ファイルの適用を行い、新ファイルへのジャンプアドレスを旧ファイルの開始アドレスに書き換えることにより新ファイルの適用解除を行うようにしてもよい。
【００１１】
本発明によれば、ソフトウェアのオンライン更新機能の具備により、システムの再起動を行うことなく新しいソフトウェアを適用することが出来るため、一時的にサービスを停止させる必要がなくなる。また、関連するサーバ群を同時にソフトウェア更新する機能の具備により、関連するサーバ間のインタフェースを変更する場合であっても、新しいインタフェースのみを提供するのみでよくソフトウェア構造の簡素化が期待出来る。更に、新しいソフトウェアの不具合の自動検出および更新解除機能の具備により、システム保守者の介在無しに自動的に新しいソフトウェアを削除することが出来る。
【発明の効果】
【００１２】
以上説明したように、本発明によれば、下記のような効果を得ることができる。
（１）メインサーバからの新ファイル適用要求を受けて、サブサーバのメインメモリ上に直接新ファイルを適用出来るため、システム再起動により一時的にサービス停止が発生することを防止することができる。
（２）メインサーバから全ての関連するサブサーバに対して一斉に新ファイル適用要求を行うことで、同時に全てのサブサーバにおいて新ファイルの適用が出来るため、サーバ間のインタフェース変更を伴うような場合にシステム運用に問題が生じる、または以前のインタフェースについても動作保障する複雑なソフトウェア構造となることを防止することができる。
（３）新ファイルにおける異常を検知した場合に、自動的にメインサーバから全ての関連サブサーバに対して一斉に新ファイルの適用解除を行うようにしているので、人間が介在して新ファイルをアンインストールし、その後にシステムの再起動を実施する必要がなくなる。
【発明を実施するための最良の形態】
【００１３】
次に、本発明の実施の形態について図面を参照して詳細に説明する。
【００１４】
図１は本発明の一実施形態のサーバシステムの構成を示すシステム図である。本実施形態のサーバシステムは、図１に示されるよう、メインサーバ１と、Ｎ個のサブサーバ２1〜２Nとから構成されている。
【００１５】
メインサーバ１はサブサーバ２1〜２Nを制御する位置に設置され、サブサーバ２1〜２Nに対して新ファイルを配信し、新ファイルの適用要求を通知する。また、新ファイル適用後にサブサーバ２1〜２Nのいずれかから新ファイル異常検出通知を通知された場合は、サブサーバ２1〜２Nに対して新ファイル適用解除要求を通知する。
【００１６】
サブサーバ２1〜２Nは、メインサーバ１からの新ファイル適用要求に対し、運用中のサービスを停止することなく、直接メインメモリ上に新ファイルの実行コードの書き込みを行う。逆にメインサーバ１から新ファイル適用解除要求を受けた場合、サブサーバ２1〜２Nは、直接メインメモリ上の新ファイルの実行コードを削除する。
【００１７】
本実施形態のサーバシステムでは、メインサーバ１からサブサーバ２1〜２Nに対して新ファイルを同時に配信する。新ファイルの配信が終了後、メインサーバ１からサブサーバ２1〜２Nに対して、一斉に新ファイル適用要求を行い、サブサーバ２1〜２Nは、メインサーバ１から新ファイル適用要求を受信すると、システムを停止させることなく直接メインメモリ上に新ファイル内容を書き込み、新ファイルを適用させ、メインサーバ１に対して応答を返信する。サブサーバ２1〜２Nのいずれかにおいて、新ファイルの異常を検知した場合は、異常を検知したサブサーバからメインサーバ１に対して新ファイル異常検知報告を行い、メインサーバ１は、サブサーバ２1〜２Nに対して同時に新ファイル適用解除要求を行い、サブサーバ２1〜２Nは直接メインメモリ上から新ファイルを消去し、メインサーバ１に対して応答を返信する。
【００１８】
次に、図１中のメインサーバ１およびサブサーバ２1の構成を図２を参照して説明する。この図２では、サブサーバ２1〜２Nのうちのサブサーバ２1のみの構成について説明するが、サブサーバ２2〜２Nの構成についてもサブサーバ２1と同様な構成となっている。
【００１９】
メインサーバ１は、図２に示されるように、メインサーバ−サブサーバ間信号送受信部１１と、新ファイル制御部１２と、新ファイル履歴情報管理部１３とから構成されている。また、サブサーバ２1は、メインサーバ−サブサーバ間信号送受信部２１と、新ファイル制御部２２と、メインメモリ更新処理部２３とから構成されている。
【００２０】
新ファイル履歴情報管理部１３は、各サブサーバ２1〜に２Nおいて適用されているファイルの情報を管理する。メインサーバ１の新ファイル制御部１２は、メインサーバ−サブサーバ間信号送受信部１１を経由して、サブサーバ２1に対して新ファイルを配信し、その後新ファイル適用要求を行う。
【００２１】
サブサーバ２1では、メインサーバ−サブサーバ間信号送受信部２１にて新ファイル適用要求を受信後、新ファイル制御部２２からメインメモリ更新処理部２３を呼び出し、メインメモリ更新処理部２３においてメモリ上への新ファイル適用を行う。サブサーバ２1にて新ファイル適用処理終了後、サブサーバ２1からメインサーバ１に対して新ファイル適用応答を返信し、メインサーバ１の新ファイル制御部１２では関連する全てのサブサーバ２1〜２Nにおいて新ファイル適用処理が正常に行われたか否か判断し、新ファイル履歴情報管理部１３において新ファイルの適用履歴情報を更新する。
【００２２】
サブサーバ２1の新ファイル制御部２２において、新ファイルの異常を検知した場合、メインサーバ−サブサーバ間信号送受信部２１を経由して、メインサーバ１に対して異常検知報告を行う。メインサーバ１の新ファイル制御部１２では、サブサーバ２1からの異常検知報告を受けて、関連する全てのサブサーバ２1〜２Nに対して新ファイル適用解除要求を行い、全てのサブサーバ２1〜２Nにおいて新ファイルの適用解除を行った後に、新ファイル履歴情報管理部１３において、新ファイル適用履歴情報を更新する。
【００２３】
図１、図２に示す新ファイル適用、および新ファイル適用解除の動作を、図３、図４に示すサブサーバのメインメモリ上の適用および適用解除処理詳細、および図５、図６に示す処理フローチャートを使用して説明する。
【００２４】
図３を参照すると、図１に示すサブサーバ２1〜２Nにおける新ファイル適用処理の詳細が示されている。図３において、メインメモリ上、旧ファイルの実行コードがアドレス12345678以降に展開され、新ファイルの実行コードがアドレス456789012以降に展開されるものとする。この場合、まず新ファイルの実行コードがアドレス456789012以降に書き込まれる。旧ファイルの実行コードから新ファイルの実行コードに切り替えるために、旧ファイルの実行コードの開始行を示すジャンプアドレス情報を新ファイルの実行コードの開始行に書き換える。これにより、サービスを停止することなく、新ファイルの実行コードがメモリ上に反映され、新ファイルが適用される。
【００２５】
図４を参照すると、図１に示すサブサーバ２1〜２Nにおける新ファイル適用解除処理の詳細が示されている。図４において、メインメモリ上、旧ファイルの実行コードがアドレス12345678以降に展開され、新ファイルの実行コードがアドレス456789012以降に展開され、新ファイルの実行コードの開始行を示すジャンプアドレス情報が展開されているものとする。この場合、新ファイルの実行コードの開始行を示すジャンプアドレス情報を旧ファイルの実行コードの開始行に書き換える。これにより、サービスを停止することなく、新ファイルの適用が解除され、旧ファイルに切り戻る。
【００２６】
図５を参照すると、新ファイル適用処理フローが示されている。図５において、まずメインサーバ１から関連サブサーバ２1〜２Nに対して新ファイルを配信する（ステップ１０１）。その後、メインサーバ１から全ての関連サブサーバ２1〜２Nに対して新ファイル適用要求を行う（ステップ１０２）。サブサーバ２1〜２Nは、メインサーバ１から新ファイル適用要求を受信すると、メインメモリ上に新ファイルの適用を行い（ステップ１０３）、メインサーバ１に対して新ファイル適用応答を返信する。メインサーバ１は、サブサーバ２1〜２Nからの新ファイル適用応答を受信後、新ファイル適用処理が正常終了したかどうか判断し（ステップ１０４）、正常終了の場合は処理を終了する。異常終了の場合は、後述の図６で示す新ファイル適用解除処理を実施し（ステップ１０５、１０６）、処理を終了する。
【００２７】
図６を参照すると、新ファイル適用解除処理フローが示されている。ここでは、サブサーバ２1における新ファイルの適用処理が正常に行われなかったものとして説明を行う。図６において、サブサーバが新ファイルの異常を検知すると（ステップ２０１）、サブサーバ２1からメインサーバ１に対して異常検知報告を行う（ステップ２０２）。メインサーバ１は、サブサーバ２1からの異常検知報告を受信後、全てのサブサーバ２1〜２Nに対して新ファイル適用解除要求を行う（ステップ２０３）。サブサーバ２1〜２Nは、メインサーバ１からの新ファイル適用解除要求を受信すると、メインメモリ上の新ファイルの適用解除を行い（ステップ２０４）、新ファイルを削除した後に、メインサーバ１に対して応答を返信する。
【００２８】
本実施形態のサーバシステムによれば、メインサーバ１からの新ファイル適用要求を受けて、サブサーバ２1〜２Nのメインメモリ上に直接新ファイルを適用できるため、従来の問題点であったシステム再起動により一時的にサービス停止が発生する問題が解決される。また、メインサーバ１から全ての関連するサブサーバ２1〜２Nに対して一斉に新ファイル適用要求を行うことで、同時に全てのサブサーバ２1〜２Nにおいて新ファイルの適用ができるため、従来の問題点であったサーバ間のインタフェース変更を伴うような場合にシステム運用に問題が生じる、または以前のインタフェースについても動作保障する複雑なソフトウェア構造となる問題が解決される。さらにサブサーバ２1〜２Nのいずれかにおいて新ファイルの異常が検知された場合に、自動的にメインサーバ１から全ての関連サブサーバに対して一斉に新ファイルの適用解除ができるため、従来の問題点であった人間が介在して新ファイルをアンインストールし、その後にシステムの再起動を実施する問題が解決される。
【００２９】
なお、本実施形態では、メインサーバ１を設け、このメインサーバ１から関連する全てのサブサーバ２1〜２Nに対して指示を行っているが、明示的にメインサーバ１を設けずに、個々のサブサーバ２1〜２Nにおいて上記のメインサーバ１における処理を具備する形でもよい。
【図面の簡単な説明】
【００３０】
【図１】本発明の一実施形態のサーバシステムの構成を示すシステム図である。
【図２】図１のメインサーバ１およびサブサーバ２1の構成を示すブロック図である。
【図３】サブサーバ２1〜２Nにおいて、メインメモリ上の新ファイルを適用する際の動作を説明するための図である。
【図４】サブサーバ２1〜２Nにおいて、メインメモリ上の新ファイルの適用を解除する際の動作を説明するための図である。
【図５】本発明の一実施形態のサーバシステムにおける新ファイル適用処理を示すフローチャートである。
【図６】本発明の一実施形態のサーバシステムにおける新ファイル適用解除処理を示すフローチャートである。
【符号の説明】
【００３１】
１    メインサーバ
２1〜２N    サブサーバ
１１    メインサーバ−サブサーバ間信号送受信部
１２    新ファイル制御部
１３    新ファイル履歴情報管理部
２１    メインサーバ−サブサーバ間信号送受信部
２２    新ファイル制御部
２３    メインメモリ更新処理部
１０１〜１０６    ステップ
２０１〜２０４    ステップ
【図１】
2006268172.tif 000003
【図２】
2006268172.tif 000004
【図３】
2006268172.tif 000005
【図４】
2006268172.tif 000006
【図５】
2006268172.tif 000007
【図６】
2006268172.tif 000008