図面 (/)

技術 アプリケーション冗長化管理システムおよびアプリケーション冗長化管理方法

出願人 日本電信電話株式会社
発明者 堀米紀貴
出願日 2017年2月23日 (1年10ヶ月経過) 出願番号 2017-031755
公開日 2018年8月30日 (4ヶ月経過) 公開番号 2018-136814
状態 未査定
技術分野 ハードウェアの冗長性 マルチプログラミング ストアードプログラム
主要キーワード ポート番 故障耐性 待機側 信号管 物理IPアドレス 複製信号 運用側 アプリケーション管理プログラム
関連する未来課題
重要な関連分野

この項目の情報は公開日時点(2018年8月30日)のものです。
また、この項目は機械的に抽出しているため、正しく解析できていない場合があります

図面 (14)

課題

冗長機構を有しない既存のアプリケーションを利用する場合でも、アプリケーションに改造を加えることなく、システム側の冗長化機構の仕組みを利用可能にすること。

解決手段

同じ機能を有する複数のアプリケーションソフトウェア20−1、20−2をそれぞれ独立したアプリケーション管理ユニット10−1、10−2で管理し、運用側ACTおよび待機側SBYとして同時に同じ状態で動作させる。同じ要求信号を複数のアプリケーションソフトウェア20−1、20−2に与えることにより、運用側ACT、待機側SBYを同じ状態に維持し、一方の応答信号のみを選択して出力する。運用側ACTに故障が発生した場合は、IPアドレスの追加や切り替えにより、待機側SBYを運用側ACTに切り替える。複数のアプリケーションソフトウェア20−1、20−2の応答信号の比較により異常の有無を検知できる。

概要

背景

例えば様々な通信サービスを提供するような通信ステムにおいては、非常に高い信頼性が求められる場合がある。したがって、単体サーバ故障耐性の高いものを採用したり、機器障害発生時であってもサービスを継続可能にするために、冗長性を持たせるようにシステム全体を構成する必要がある。

例えば、サーバ上で動作する各種APLアプリケーションソフトウェア)が特別な冗長機構を有していない場合には、各APLが動作するサーバやシステム側に冗長性を持たせるための特別な仕組みが必要になる。

例えば、ACT−SBY(アクティブスタンバイ)型のアーキテクチャを採用した通信システムにおいては、通常はアクティブ状態である運用系のサーバ(ACT)と、通常はスタンバイ状態である待機系の専用のサーバ(SBY)との両方を常時用意してある。したがって、運用系のサーバに何らかの障害が発生した場合には、直ちに待機系のサーバを稼働状態切り替えて、運用系のサーバの動作を待機系のサーバで引き継ぐことができる。しかし、ACT−SBY型の通信システムの場合には、待機系として割り当てた設備は、障害が発生しない限り使われることはなく利用効率が低い。したがって、信頼性を高めるために設備のコストが高くなるのは避けられない。

一方、非特許文献1の図1などに示されているN−ACT型アーキテクチャを採用した通信システムにおいては、処理中のサーバが同時に他のサーバの予備系になる。したがって、待機系の専用サーバを設ける必要はなく、設備の利用効率が高くなる。そのため、通信システムの設備コストを削減できる。

概要

冗長化機構を有しない既存のアプリケーションを利用する場合でも、アプリケーションに改造を加えることなく、システム側の冗長化機構の仕組みを利用可能にすること。同じ機能を有する複数のアプリケーションソフトウェア20−1、20−2をそれぞれ独立したアプリケーション管理ユニット10−1、10−2で管理し、運用側ACTおよび待機側SBYとして同時に同じ状態で動作させる。同じ要求信号を複数のアプリケーションソフトウェア20−1、20−2に与えることにより、運用側ACT、待機側SBYを同じ状態に維持し、一方の応答信号のみを選択して出力する。運用側ACTに故障が発生した場合は、IPアドレスの追加や切り替えにより、待機側SBYを運用側ACTに切り替える。複数のアプリケーションソフトウェア20−1、20−2の応答信号の比較により異常の有無を検知できる。

目的

本発明は、上記の状況に鑑みてなされたものであり、冗長化機構を内蔵していない既存のアプリケーションソフトウェアを利用する場合であっても、これらのアプリケーションソフトウェアに改造を加えることなく、システム側の冗長化機構の仕組みを利用することが可能なアプリケーション冗長化管理システムおよびアプリケーション冗長化管理方法を提供する

効果

実績

技術文献被引用数
0件
牽制数
0件

この技術が所属する分野

ライセンス契約や譲渡などの可能性がある特許掲載中! 開放特許随時追加・更新中 詳しくはこちら

請求項1

コンピュータハードウェア上、又は仮想マシン上で動作可能な所定の機能を実現するアプリケーションソフトウェア稼働状況を管理すると共に、冗長化機能を付与するアプリケーション冗長化管理システムであって、第1のアプリケーションソフトウェアの稼働開始に伴って、前記第1のアプリケーションソフトウェアと同一の機能を提供する第2のアプリケーションソフトウェアを稼働できる状態で生成し、前記第1のアプリケーションソフトウェアおよび前記第2のアプリケーションソフトウェアの両方を同時に稼働状態に制御するシステム構築部と、前記第1のアプリケーションソフトウェアの入力と、前記第2のアプリケーションソフトウェアの入力との両方に、同一の共通信号を同時に与える信号管理部と、を備えたことを特徴とするアプリケーション冗長化管理システム。

請求項2

前記信号管理部は、同時に稼働している前記第1のアプリケーションソフトウェアおよび前記第2のアプリケーションソフトウェアの一方を運用側アプリケーション、他方を待機側アプリケーションとして割り当て、定常状態においては前記運用側アプリケーションの出力信号のみを選択的に出力する、請求項1に記載のアプリケーション冗長化管理システム。

請求項3

前記信号管理部は、同時に稼働している前記第1のアプリケーションソフトウェアおよび前記第2のアプリケーションソフトウェアの両方の出力信号を常時監視し、前記両方の出力信号の状態が一致している場合に、前記第1のアプリケーションソフトウェアおよび前記第2のアプリケーションソフトウェアの稼働状態に異常が発生していないことを認識する、請求項1に記載のアプリケーション冗長化管理システム。

請求項4

前記信号管理部は、同時に稼働している前記運用側アプリケーションおよび前記待機側アプリケーションのうち、前記運用側アプリケーションの異常を検知した場合には、前記待機側アプリケーションの出力信号のみを選択的に出力する、請求項2に記載のアプリケーション冗長化管理システム。

請求項5

同時に稼働している前記運用側アプリケーションおよび前記待機側アプリケーションのうち、前記運用側アプリケーションの異常を検知した場合には、前記待機側アプリケーション、又は前記待機側アプリケーションを管理している管理部に割り当てた第1の識別子を、前記運用側アプリケーション、又は前記運用側アプリケーションを管理している管理部に割り当てた第2の識別子に切り替えアドレス管理部、を備えた、請求項4に記載のアプリケーション冗長化管理システム。

請求項6

同時に稼働している前記運用側アプリケーションおよび前記待機側アプリケーションのそれぞれに状態管理部を接続し、前記運用側アプリケーションに接続した第1の状態管理部と、前記待機側アプリケーションに接続した第2の状態管理部との間で相互に通信を行い、前記第1の状態管理部および前記第2の状態管理部の少なくとも一方が、前記運用側アプリケーション又は待機側アプリケーションの稼働状況の異常の有無を識別する、請求項4に記載のアプリケーション冗長化管理システム。

請求項7

前記システム構築部は、同時に稼働している前記運用側アプリケーションおよび前記待機側アプリケーションのいずれか一方の異常を検知した場合には、異常が発生したアプリケーションの代わりの新たなアプリケーションを稼働可能な状態で追加し、追加した前記アプリケーションを前記待機側アプリケーションとして割り当てる、請求項4に記載のアプリケーション冗長化管理システム。

請求項8

コンピュータのハードウェア上、又は仮想マシン上で動作可能な所定の機能を実現するアプリケーションソフトウェアの稼働状況を管理すると共に、冗長化機能を付与するアプリケーション冗長化管理方法であって、第1のアプリケーションソフトウェアの稼働開始に伴って、前記第1のアプリケーションソフトウェアと同一の機能を提供する第2のアプリケーションソフトウェアを稼働できる状態で生成し、前記第1のアプリケーションソフトウェアおよび前記第2のアプリケーションソフトウェアの両方を同時に稼働状態に制御し、前記第1のアプリケーションソフトウェアの入力と、前記第2のアプリケーションソフトウェアの入力との両方に、同一の共通信号を同時に与える、ことを特徴とするアプリケーション冗長化管理方法。

技術分野

0001

本発明は、アプリケーション冗長化管理システムおよびアプリケーション冗長化管理方法に関する。

背景技術

0002

例えば様々な通信サービスを提供するような通信システムにおいては、非常に高い信頼性が求められる場合がある。したがって、単体サーバ故障耐性の高いものを採用したり、機器障害発生時であってもサービスを継続可能にするために、冗長性を持たせるようにシステム全体を構成する必要がある。

0003

例えば、サーバ上で動作する各種APLアプリケーションソフトウェア)が特別な冗長化機構を有していない場合には、各APLが動作するサーバやシステム側に冗長性を持たせるための特別な仕組みが必要になる。

0004

例えば、ACT−SBY(アクティブスタンバイ)型のアーキテクチャを採用した通信システムにおいては、通常はアクティブ状態である運用系のサーバ(ACT)と、通常はスタンバイ状態である待機系の専用のサーバ(SBY)との両方を常時用意してある。したがって、運用系のサーバに何らかの障害が発生した場合には、直ちに待機系のサーバを稼働状態切り替えて、運用系のサーバの動作を待機系のサーバで引き継ぐことができる。しかし、ACT−SBY型の通信システムの場合には、待機系として割り当てた設備は、障害が発生しない限り使われることはなく利用効率が低い。したがって、信頼性を高めるために設備のコストが高くなるのは避けられない。

0005

一方、非特許文献1の図1などに示されているN−ACT型アーキテクチャを採用した通信システムにおいては、処理中のサーバが同時に他のサーバの予備系になる。したがって、待機系の専用サーバを設ける必要はなく、設備の利用効率が高くなる。そのため、通信システムの設備コストを削減できる。

先行技術

0006

福元健・飯尾政美・上田清志 、“将来網に向けたフレキシブルネットワーク構成技術 将来のネットワーク制御ノード実現に向けた取り組み”、NTT技術ジャーナル, 2012年3月1日、第24巻、第3号、P.23−P.27.

発明が解決しようとする課題

0007

ところで、上記のACT−SBY型のアーキテクチャや、N−ACT型アーキテクチャを採用する場合に、実際に冗長化機構を使うための仕組みは、クラスタや分散システムのミドルウェアとして提供される。したがって、サーバのミドルウェア上で動作する各々のアプリケーションソフトウェアが冗長化機構を内蔵していない場合には、ミドルウェアを介して設備側の冗長化機構を利用できるように、各々のアプリケーションソフトウェアに改造を加える必要がある。しかし、冗長化機構を使うために既存の様々なアプリケーションソフトウェアに改造を加えようとすると、改造のために大きなコストがかかるのは避けられない。

0008

本発明は、上記の状況に鑑みてなされたものであり、冗長化機構を内蔵していない既存のアプリケーションソフトウェアを利用する場合であっても、これらのアプリケーションソフトウェアに改造を加えることなく、システム側の冗長化機構の仕組みを利用することが可能なアプリケーション冗長化管理システムおよびアプリケーション冗長化管理方法を提供することを目的とする。

課題を解決するための手段

0009

(1)コンピュータハードウェア上、又は仮想マシン上で動作可能な所定の機能を実現するアプリケーションソフトウェアの稼働状況を管理すると共に、冗長化機能を付与するアプリケーション冗長化管理システムであって、
第1のアプリケーションソフトウェアの稼働開始に伴って、前記第1のアプリケーションソフトウェアと同一の機能を提供する第2のアプリケーションソフトウェアを稼働できる状態で生成し、前記第1のアプリケーションソフトウェアおよび前記第2のアプリケーションソフトウェアの両方を同時に稼働状態に制御するシステム構築部と、
前記第1のアプリケーションソフトウェアの入力と、前記第2のアプリケーションソフトウェアの入力との両方に、同一の共通信号を同時に与える信号管理部と、を備える。

0010

このアプリケーション冗長化管理システムによれば、前記第1のアプリケーションソフトウェアおよび前記第2のアプリケーションソフトウェアの両方を同時に稼働状態にすると共に、これらに与える前記共通信号によって、同じ状態で常に前記第1のアプリケーションソフトウェアおよび前記第2のアプリケーションソフトウェアの両方が動作するように制御できる。したがって、前記第1のアプリケーションソフトウェアおよび前記第2のアプリケーションソフトウェアの一方に障害が発生したような場合であっても、障害が発生していない他方を運用側として選択することにより、通常のサービス実行状態を継続できる。つまり、冗長化機構を有しないアプリケーションソフトウェア自体に特別な改造を加えなくても、同じ機能を果たす2つのアプリケーションソフトウェアの同時稼働によって、冗長化の機能を付与することができる。

0011

(2)前記信号管理部は、同時に稼働している前記第1のアプリケーションソフトウェアおよび前記第2のアプリケーションソフトウェアの一方を運用側アプリケーション、他方を待機側アプリケーションとして割り当て、定常状態においては前記運用側アプリケーションの出力信号のみを選択的に出力する。

0012

このアプリケーション冗長化管理システムによれば、定常状態では、前記運用側アプリケーションの出力信号を利用してユーザに所定のサービスを提供することができる。また、前記待機側アプリケーションも同時に動作している。これにより、前記運用側アプリケーションに障害が発生した場合には、前記待機側アプリケーションの出力を選択することにより、ユーザに提供するサービスを正常な状態で継続できる。

0013

(3)前記信号管理部は、同時に稼働している前記第1のアプリケーションソフトウェアおよび前記第2のアプリケーションソフトウェアの両方の出力信号を常時監視し、前記両方の出力信号の状態が一致している場合に、前記第1のアプリケーションソフトウェアおよび前記第2のアプリケーションソフトウェアの稼働状態に異常が発生していないことを認識する。

0014

このアプリケーション冗長化管理システムによれば、前記第1のアプリケーションソフトウェアおよび前記第2のアプリケーションソフトウェアの稼働状態に異常が発生していないことを、単純な処理により常時検知できる。

0015

(4)前記信号管理部は、同時に稼働している前記運用側アプリケーションおよび前記待機側アプリケーションのうち、前記運用側アプリケーションの異常を検知した場合には、前記待機側アプリケーションの出力信号のみを選択的に出力する。

0016

このアプリケーション冗長化管理システムによれば、前記運用側アプリケーションの動作に異常が発生した場合に、前記待機側アプリケーションの出力信号のみを選択的に出力する。これにより、障害が発生した場合であっても、ユーザに提供するサービスを正常な状態で継続できる。

0017

(5)同時に稼働している前記運用側アプリケーションおよび前記待機側アプリケーションのうち、前記運用側アプリケーションの異常を検知した場合には、前記待機側アプリケーション、又は前記待機側アプリケーションを管理している管理部に割り当てた第1の識別子を、前記運用側アプリケーション、又は前記運用側アプリケーションを管理している管理部に割り当てた第2の識別子に切り替えるアドレス管理部を備える。

0018

このアプリケーション冗長化管理システムによれば、前記第1の識別子を前記第2の識別子に切り替えることにより、前記待機側アプリケーションを前記運用側アプリケーションの代わりに利用することが可能になる。また、このような切り替えは瞬時に行うことが可能である。

0019

(6)同時に稼働している前記運用側アプリケーションおよび前記待機側アプリケーションのそれぞれに状態管理部を接続し、前記運用側アプリケーションに接続した第1の状態管理部と、前記待機側アプリケーションに接続した第2の状態管理部との間で相互に通信を行い、前記第1の状態管理部および前記第2の状態管理部の少なくとも一方が、前記運用側アプリケーション又は待機側アプリケーションの稼働状況の異常の有無を識別する。

0020

このアプリケーション冗長化管理システムによれば、前記第1の管理部又は前記第2の管理部が、前記運用側アプリケーション又は待機側アプリケーションの稼働状況の異常の有無を検知できる。

0021

(7)前記システム構築部は、同時に稼働している前記運用側アプリケーションおよび前記待機側アプリケーションのいずれか一方の異常を検知した場合には、異常が発生したアプリケーションの代わりの新たなアプリケーションを稼働可能な状態で追加し、追加した前記アプリケーションを前記待機側アプリケーションとして割り当てる。

0022

このアプリケーション冗長化管理システムによれば、異常を検知した後においても、新たなアプリケーションを起動する。これにより複数のアプリケーションが正常に稼働している状況を維持できる。そのため、1つのアプリケーションに異常が発生した後に、更に別のアプリケーションに異常が発生した場合であっても、再びアプリケーションを切り替えることが可能であり、サービスの提供を正常な状態で継続できる。

0023

(8)コンピュータのハードウェア上、又は仮想マシン上で動作可能な所定の機能を実現するアプリケーションソフトウェアの稼働状況を管理すると共に、冗長化機能を付与するアプリケーション冗長化管理方法であって、
第1のアプリケーションソフトウェアの稼働開始に伴って、前記第1のアプリケーションソフトウェアと同一の機能を提供する第2のアプリケーションソフトウェアを稼働できる状態で生成し、
前記第1のアプリケーションソフトウェアおよび前記第2のアプリケーションソフトウェアの両方を同時に稼働状態に制御し、
前記第1のアプリケーションソフトウェアの入力と、前記第2のアプリケーションソフトウェアの入力との両方に、同一の共通信号を同時に与える。

0024

このアプリケーション冗長化管理方法によれば、前記第1のアプリケーションソフトウェアおよび前記第2のアプリケーションソフトウェアの両方を同時に稼働状態にすると共に、これらに与える前記共通信号によって、同じ状態で常に前記第1のアプリケーションソフトウェアおよび前記第2のアプリケーションソフトウェアの両方が動作するように制御できる。したがって、前記第1のアプリケーションソフトウェアおよび前記第2のアプリケーションソフトウェアの一方に障害が発生したような場合であっても、障害が発生していない他方を運用側として選択することにより、通常のサービス実行状態を継続できる。つまり、冗長化機構を有しないアプリケーションソフトウェア自体に特別な改造を加えなくても、同じ機能を果たす2つのアプリケーションソフトウェアの同時稼働によって、冗長化の機能を付与することができる。

発明の効果

0025

本発明のアプリケーション冗長化管理システムおよびアプリケーション冗長化管理方法によれば、冗長化機構を内蔵していない既存のアプリケーションソフトウェアを利用する場合であっても、これらのアプリケーションソフトウェアに改造を加えることなく、システム側の冗長化機構の仕組みを利用することが可能になる。

図面の簡単な説明

0026

本発明の実施形態におけるアプリケーション冗長化管理システムの主要な構成要素を表すブロック図である。
本発明の実施形態においてアプリケーション冗長化管理システムを構築する際のシステム構成の変化例を表す状態遷移図である。
本発明の実施形態におけるアプリケーション冗長化管理システムの基本動作概要を示す状態遷移図である。
図4(a)および図4(b)は、本発明のアプリケーション冗長化管理システムを有しない第1比較例の通信システムの構成および動作の例を表すブロック図である。
本発明の実施形態におけるアプリケーション冗長化管理システムを含む通信システムの構成および動作の例を表すブロック図である。
本発明の実施形態におけるアプリケーション冗長化管理システムを含む通信システムの構成および動作の例を表すブロック図である。
図7(a)および図7(b)は、本発明のアプリケーション冗長化管理システムを有しない第2比較例の通信システムの構成および動作の例を表すブロック図である。
本発明の実施形態におけるアプリケーション冗長化管理システムを含む通信システムの構成および動作の例を表すブロック図である。
本発明の実施形態におけるアプリケーション冗長化管理システムを含む通信システムの構成および動作の例を表すブロック図である。
図10(a)および図10(b)は、本発明の実施形態におけるアプリケーション冗長化管理システムを含む通信システムにおいて、運用側の設備に故障が発生した場合のそれぞれ異なる動作状態を表すブロック図である。
図11(a)、図11(b)、および図11(c)は、本発明の実施形態におけるアプリケーション冗長化管理システムを含む通信システムにおいて、運用側の設備に故障が発生した場合のそれぞれ異なる動作状態を表すブロック図である。
図12(a)および図12(b)は、本発明の実施形態におけるアプリケーション冗長化管理システムを含む通信システムにおいて、待機側の設備に故障が発生した場合のそれぞれ異なる動作状態を表すブロック図である。
図13(a)、図13(b)、および図13(c)は、本発明の実施形態におけるアプリケーション冗長化管理システムを含む通信システムにおいて、待機側の設備に故障が発生した場合のそれぞれ異なる動作状態を表すブロック図である。

実施例

0027

本発明の実施形態について各図を参照しながら以下に説明する。
<アプリケーション冗長化管理システムの主要な要素の構成例>
本発明の実施形態におけるアプリケーション冗長化管理システムの主要な構成要素を図1に示す。

0028

図1に示したアプリケーション管理ユニット10が、本発明のアプリケーション冗長化管理システムの主要な構成要素である。このアプリケーション管理ユニット10は、サーバのようなコンピュータのハードウェア上、又はコンピュータ上に形成された仮想マシン上で動作するミドルウェア(MW)として構成されている。則ち、サーバのCPU(Central Processing Unit)がミドルウェア・プログラムを実行することにより、このアプリケーション管理ユニット10が具現化される。勿論、アプリケーション管理ユニット10と同様な機能をミドルウェア以外の形態で実現することも可能である。各図中および本明細書中に示した「MW」の各々は、1つのアプリケーション管理ユニット10と同じものを表している。

0029

ユーザに対して各種サービスなどを提供する様々なアプリケーションソフトウェア20の各々は、アプリケーション管理ユニット10によって配置され、かつ管理される。各図では、アプリケーションソフトウェア20をアプリケーション管理ユニット10の上側に描くことで、このアプリケーション管理ユニット10により管理されることを示している。なお、各図中および本明細書中に示した「APL」はそれぞれ1つのアプリケーションソフトウェア20を表している。

0030

図1に示したように、アプリケーション管理ユニット10は、外部信号送受信部11、内部信号複製/比較部(信号管理部)12、内部信号送受信部13、同期信号送受信部14、IPアドレス管理部15、MW状態管理部16、およびシステム構築部17を備えている。また、内部信号複製/比較部12はキャッシュ12aを備え、IPアドレス管理部15はデータベース(DB)15aを備え、MW状態管理部16もデータベース16aを備えている。

0031

_<外部信号送受信部11の機能>
外部信号送受信部11は、外部の装置から外部信号11aを受信した場合に、この外部信号11aを内部信号複製/比較部12に送信する。また、外部信号送受信部11は、内部信号複製/比較部12から信号を受信した場合に、この信号を外部信号11bとして外部の装置に送信する。送受信する各信号は、例えばIP(Internet Protocol)パケットである。

0032

_<内部信号複製/比較部12の機能>
内部信号複製/比較部12は、以下の(1)〜(3)に示す動作を行う。
(1)内部信号複製/比較部12は、内部信号送受信部13から受信した信号を複製し、複製した信号を内部信号送受信部13および同期信号送受信部14に送信する。

0033

(2)内部信号複製/比較部12は、内部信号送受信部13から受信した信号をキャッシュ12aに記憶し、MW状態管理部16の状態を確認し、MW状態管理部16の状態に応じて以下の(2−1)又は(2−2)の処理を実行する。

0034

_(2−1)受信した信号の送信元のアプリケーションソフトウェア20が、運用側ACTとして割り当てられている場合、内部信号複製/比較部12は、受信した信号を外部信号送受信部11に送信する。
_(2−2)受信した信号の送信元のアプリケーションソフトウェア20が、待機側SBYとして割り当てられている場合、内部信号複製/比較部12は、受信した信号を同期信号送受信部14に送信する。

0035

(3)内部信号複製/比較部12は、同期信号送受信部14から受信した信号をキャッシュ12aに記憶し、MW状態管理部16の状態を確認し、MW状態管理部16の状態に応じて以下の(3−1)〜(3−2)の処理を実行する。

0036

_(3−1)受信した信号の送信元のアプリケーションソフトウェア20が、運用側ACTとして割り当てられている場合、内部信号複製/比較部12は、内部信号送受信部13から受信した信号と比較する。内部信号送受信部13から受信した信号がまだ揃っていない場合は揃うまで待機する。
__(3−1−1)内部信号複製/比較部12は、上記(3−1)の比較結果が一致であれば、キャッシュ12aに記憶していた内部信号送受信部13からの受信信号および同期信号送受信部14からの受信信号を削除する。
__(3−1−2)内部信号複製/比較部12は、上記(3−1)の比較結果が不一致であれば、キャッシュ12aに記憶していた内部信号送受信部13からの受信信号および同期信号送受信部14からの受信信号を削除し、内部信号送受信部13が受信した信号の送信元の待機側SBYが異常であることを、MW状態管理部16に通知する。
_(3−2)受信した信号の送信元のアプリケーションソフトウェア20が、待機側SBYとして割り当てられている場合、内部信号複製/比較部12は、内部信号送受信部13に信号を送信する。

0037

_<内部信号送受信部13の機能>
内部信号送受信部13は、以下の(1),(2)に示す動作を行う。
(1)内部信号送受信部13は、内部信号複製/比較部12から受信した信号をアプリケーションソフトウェア20に送信する。
(2)内部信号送受信部13は、アプリケーションソフトウェア20から受信した信号を内部信号複製/比較部12に送信する。

0038

_<同期信号送受信部14の機能>
同期信号送受信部14は、以下の(1)〜(3)に示す動作を行う。
(1)同期信号送受信部14は、内部信号複製/比較部12から信号を受信した場合、MW状態管理部16の状態を確認し、MW状態管理部16の状態に応じて以下の(1−1)〜(1−3)の処理を実行する。

0039

_(1−1)受信した信号の送信元のアプリケーションソフトウェア20が運用側ACTであれば、同期信号送受信部14は、待機側SBYに存在するアプリケーション管理ユニット10内の同期信号送受信部14に対して、信号をカプセル化して送信する。
_(1−2)受信した信号の送信元のアプリケーションソフトウェア20が待機側SBYであれば、同期信号送受信部14は、運用側ACTに存在するアプリケーション管理ユニット10内の同期信号送受信部14に対して、信号をカプセル化して送信する。
_(1−3)同期信号送受信部14は、アプリケーション管理ユニット10が故障状態であれば信号を送信しない。

0040

(2)外部から信号を受信した場合、同期信号送受信部14は、その信号をデカプセル化して内部信号複製/比較部12に送信する。
(3)同期信号送受信部14は、暗号化情報セッション情報等、アプリケーション管理ユニット10間で必要な情報を共有し、信号を書き換える。

0041

_<IPアドレス管理部15の機能>
IPアドレス管理部15は、以下の(1),(2)に示す動作を行う。
(1)IPアドレス管理部15は、外部装置から見えるアプリケーション管理ユニット10のIPアドレスと、アプリケーションソフトウェア20に見せかけるIPアドレスを管理する。但し、アプリケーション管理ユニット10のIPアドレスは物理IPアドレスではなく、フローティングIPアドレス等とする。なお、アプリケーション管理ユニット10とアプリケーションソフトウェア20のIPアドレスを同一にすることもできるし、別々の値にすることもできる。また、1つのアプリケーション管理ユニット10に対して複数のIPアドレスを付与することもできる。
(2)IPアドレス管理部15は、MW状態管理部16からの通知に基づき、自アプリケーション管理ユニット10のIPアドレスの変更を外部装置に通知する。

0042

_<MW状態管理部16の機能>
MW状態管理部16は、以下の(1)〜(6)に示す動作を行う。
(1)MW状態管理部16は、自アプリケーション管理ユニット10、およびそれ自身に冗長化のために接続されている他のアプリケーション管理ユニット10の各々について、そのIPアドレスと、そのアプリケーション管理ユニット10上に存在しているアプリケーションソフトウェア20のIPアドレスと、装置状態とを管理する。この装置状態は、「運用中」、「故障中」、「構築中」のいずれかを表す。

0043

(2)MW状態管理部16は、各アプリケーション管理ユニット10上のアプリケーションソフトウェア20の状態を管理する。この状態は、運用側ACTと待機側SBYとの区別を表す。
(3)MW状態管理部16は、自アプリケーション管理ユニット10と接続されている他のアプリケーション管理ユニット10との間で、「KeepAlive」を実施し、応答がない場合、または明示的に異常を通知された場合、対向のアプリケーション管理ユニット10を故障とみなす。なお、「KeepAlive」は、ネットワーク上で接続が有効であることを確認するために定期的に行われる通信のことであり、例えば双方向ハートビート確認である。そして、更に以下の動作も行う。
_(3−1)MW状態管理部16は、「KeepAlive」の実施に伴い、対向のアプリケーション管理ユニット10に、自アプリケーション管理ユニット10の状態も通知する。
_(3−2)対向のアプリケーション管理ユニット10が故障の場合、かつ、対向アプリケーション管理ユニット10上のアプリケーションソフトウェア20が運用側ACTの場合、MW状態管理部16は、自アプリケーション管理ユニット10のIPアドレスを、運用側ACTのアプリケーションソフトウェア20のIPアドレスに変更し、この変更をIPアドレス管理部15に通知する。
_(3−3)待機側SBYのアプリケーションソフトウェア20が複数存在している場合、MW状態管理部16は、各アプリケーションソフトウェア20を運用側ACTに切り替える際の優先順位事前に決めておく。なお、MW状態管理部16は、複数の待機側SBYのアプリケーションソフトウェア20による合意を形成してもよい。

0044

(4)MW状態管理部16は、「KeepAlive」に対して、正常/異常の区別を応答する。また、MW状態管理部16は、対向アプリケーション管理ユニット10から通知された状態に更新する。また、対向アプリケーション管理ユニット10に対して異常を通知した場合、MW状態管理部16は、自身に故障を通知して、自アプリケーション管理ユニット10をネットワークから切り離す

0045

(5)内部信号複製/比較部12から待機側SBYの異常を通知された場合、MW状態管理部16は、対象のアプリケーション管理ユニット10を故障と判定し、対象のアプリケーション管理ユニット10に対して故障通知を送信する。
(6)冗長化を組んでいる対向アプリケーション管理ユニット10から故障通知を受信した場合、MW状態管理部16は、対向アプリケーション管理ユニット10を故障と判定する。また、冗長化のシステム構成として複数の待機側SBYを用意してある場合には、運用側ACTのMW状態管理部16が、故障していない待機側SBYに対して故障を通知する。

0046

_<システム構築部17の機能>
システム構築部17は、以下の(1)〜(3)に示す動作を行う。
(1)システム構築部17は、運用側ACTのアプリケーションソフトウェア20をインストールする。なお、このインストール作業を行っている間は、MW状態管理部16に対して「構築中」を通知し、インストール作業の完了後に「運用中」を通知する。

0047

(2)システム構築部17は、運用側ACTのアプリケーションソフトウェア20に対してライブマイグレーションを実施して、待機側SBYのアプリケーションソフトウェア20を構築する。勿論、ライブマイグレーション以外の技術を用いて待機側SBYのアプリケーションソフトウェア20を構築することも可能である。また、システム構築部17は、上記と同様に、このライブマイグレーションを行っている間は、MW状態管理部16に対して「構築中」を通知し、ライブマイグレーションの完了後にMW状態管理部16に対して「運用中」を通知する。なお、ライブマイグレーションとは、あるコンピュータ(仮想マシンを含む)で稼働しているソフトウェアを停止させずに、別のコンピュータ(仮想マシンを含む)に移動させる機能である。
(3)システム構築部17は、MW状態管理部16に対して、自アプリケーション管理ユニット10と冗長化を組む他のアプリケーション管理ユニット10を登録又は削除する。

0048

<アプリケーション冗長化管理システムの構築>
本発明の実施形態においてアプリケーション冗長化管理システムを構築する際のシステム構成の変化例を図2に示す。図2に示した例では、3つの独立したベース装置30−1、30−2、30−3を同時に使用してシステムを構築する場合を想定している。ベース装置30−1、30−2、30−3の各々は、サーバを構成するコンピュータのハードウェア(HW)又は仮想マシン(VM)である。

0049

図2に示した最初の状態の通信システム101Aにおいては、ベース装置30−1、30−2、30−3のみが存在している。そして、ベース装置30−1、30−2、30−3の各々に、ミドルウェアであるアプリケーション管理ユニット10を構築する前に、それぞれのアプリケーション管理ユニット10に、所定のIPアドレスが割り当てられている。

0050

そして、通信システム101Aの状態から、ベース装置30−1、30−2、30−3の各々に、ミドルウェアであるアプリケーション管理ユニット10−1〜10−3を構築すると、通信システム101Bの構成に遷移する。

0051

すなわち、通信システム101Bの構成では、ベース装置30−1上にアプリケーション管理ユニット10−1が構築され、これにIPアドレス「192.168.10.11」が割り当てられている。また、ベース装置30−2上にアプリケーション管理ユニット10−2が構築され、これにIPアドレス「192.168.10.12」が割り当てられている。ベース装置30−3上にはアプリケーション管理ユニット10−3が構築され、これにIPアドレス「192.168.10.13」が割り当てられている。ベース装置30−1〜30−3のCPU(Central Processing Unit)は、それぞれアプリケーション管理プログラムを実行することにより、各アプリケーション管理ユニット10−1〜10−3を具現化する。

0052

通信システム101Bの状態で、処理41を実行すると通信システム101Cの構成に遷移する。処理41において、まず最初に、運用側ACTとして割り当てるアプリケーション管理ユニット10−1のシステム構築部17は、アプリケーションソフトウェア20−1をインストールすると共に、アプリケーションソフトウェア20−1の動作開始に必要な各種設定を行う。これにより、アプリケーションソフトウェア20−1は、アプリケーション管理ユニット10−1上に配置される。
次に、アプリケーション管理ユニット10−1のシステム構築部17は、待機側SBYとして割り当てるアプリケーション管理ユニット10−2に対して、ライブマイグレーションを実施する。これにより、システム構築部17は、動作中のアプリケーションソフトウェア20−1の状態と同じものを、新たにアプリケーションソフトウェア20−2としてアプリケーション管理ユニット10−2上に構築することができる。これにより、アプリケーションソフトウェア20−2は、アプリケーション管理ユニット10−2上に配置される。

0053

図2に示した通信システム101Cの構成において、アプリケーション管理ユニット10−1上に配置されたアプリケーションソフトウェア20−1は運用側ACTである。アプリケーション管理ユニット10−2上に配置されたアプリケーションソフトウェア20−2は待機側SBYである。

0054

なお、アプリケーション管理ユニット10−1のシステム構築部17は、アプリケーション管理ユニット10−3に対してライブマイグレーションを実施する。これにより、システム構築部17は、動作中のアプリケーションソフトウェア20−1の状態と同じものを、新たにアプリケーションソフトウェア20−3としてアプリケーション管理ユニット10−3上に構築することができる。アプリケーションソフトウェア20−3は、アプリケーション管理ユニット10−3上に配置される。つまり、待機側SBYのアプリケーションソフトウェア20の数は必要に応じて増やすことができる。

0055

また、運用側ACTのアプリケーションソフトウェア20−1のIPアドレスおよびポート番号は、外部装置からアプリケーション管理ユニット10−1のIPアドレスおよびポート番号と同一に見えるように、アプリケーション管理ユニット10−1のIPアドレス管理部15が処理する。

0056

また、待機側SBYのアプリケーションソフトウェア20−2のIPアドレスおよびポート番号については、外部装置から運用側ACTのアプリケーションソフトウェア20−1のIPアドレスおよびポート番号と同一に見えるように、アプリケーション管理ユニット10−2のIPアドレス管理部15が処理する。つまり、アプリケーション管理ユニット10−2のIPアドレス管理部15は、外部から見えるアプリケーションソフトウェア20−2のIPアドレスを、運用側ACTのアプリケーションソフトウェア20−1のIPアドレスと同じにする。

0057

通信システム101Cの構成に更にアプリケーションソフトウェア20を追加して通信システム101Dを構成することができる。通信システム101Dの構成において、アプリケーション管理ユニット10−1上には、運用側ACTのアプリケーションソフトウェア20−1と、待機側SBYのアプリケーションソフトウェア20−4が配置されている。アプリケーション管理ユニット10−2上には、待機側SBYのアプリケーションソフトウェア20−2と、運用側ACTのアプリケーションソフトウェア20−5が配置されている。アプリケーション管理ユニット10−3上には、待機側SBYのアプリケーションソフトウェア20−3と、運用側ACTのアプリケーションソフトウェア20−6が配置されている。

0058

この通信システム101Dの構成のように、アプリケーション管理ユニット10−1〜10−3の各々の上には、運用側ACTおよび待機側SBYの両方のアプリケーションソフトウェア20を配置することができる。但し、冗長化のために互いに紐付けられる運用側ACTおよび待機側SBYのアプリケーションソフトウェア20は、それぞれ異なるアプリケーション管理ユニット10上に配置される。

0059

図2に示した通信システム101Dにおいては、運用側ACTのアプリケーションソフトウェア20(APL−ACT)と、待機側SBYのアプリケーションソフトウェア20(APL−SBY)とが複数のアプリケーション管理ユニット10間の「Association」によりそれぞれ紐付けられている。

0060

例えば、運用側ACTのアプリケーションソフトウェア20−1と、待機側SBYのアプリケーションソフトウェア20−2とが、処理42の「Association」により紐付けられている。また、運用側ACTのアプリケーションソフトウェア20−5と、待機側SBYのアプリケーションソフトウェア20−3とが「Association」により紐付けられている。また、運用側ACTのアプリケーションソフトウェア20−6と、待機側SBYのアプリケーションソフトウェア20−4とが「Association」により紐付けられている。
これらアプリケーション管理ユニット10間の「Association」によりそれぞれ紐付けられている運用側ACTのアプリケーションソフトウェア20と待機側SBYのアプリケーションソフトウェア20とは、冗長化されている。つまり運用側ACTのアプリケーションソフトウェア20が故障等で停止した場合、待機側SBYであったアプリケーションソフトウェア20が運用側ACTに切り替わる。これにより、クライアント端末に対するサービスを継続することができる。また、アプリケーション冗長化管理システムは、1つのアプリケーション管理ユニット10の上に、複数の運用側ACTのアプリケーションソフトウェア20(APL−ACT)を配置することも可能である。その場合、不図示の外部装置は、ポート番号を用いて複数のアプリケーションソフトウェア20(APL−ACT)を識別することが想定される。

0061

<アプリケーション冗長化管理システムの基本動作>
本発明の実施形態におけるアプリケーション冗長化管理システムの基本動作の概要を図3に示す。

0062

図3に示した通信システム102A〜102Gは、アプリケーション冗長化管理システムにより管理されている。通信システム102A〜102Gは同じシステムであるが、動作状態がそれぞれ異なっている。

0063

例えば、通信システム102Aにおいて、ベース装置30−1上にアプリケーション管理ユニット10−1が配置されている。更に、アプリケーション管理ユニット10−1の上にアプリケーションソフトウェア20−1が配置されている。

0064

実際の通信システム102Aには待機側SBYの設備も含まれているが、ユーザが使用するクライアント端末50からは運用側ACTのアプリケーションソフトウェア20−1のみが見える状態である。ユーザは、クライアント端末50を用いて要求信号51を送信することにより、運用側ACTのアプリケーションソフトウェア20−1によるサービスを受けることができる。

0065

要求信号51は、クライアント端末50のIPアドレスおよびポートを表す送信元の情報「192.168.1.100:10000」、送信先のアプリケーションソフトウェア20−1のIPアドレスおよびポートを表す情報「192.168.10.11:8080」、およびプロトコル「TCP」を含むように構成される。

0066

通信システム102Aは、この要求信号51がアプリケーション管理ユニット10−1に入力されると、通信システム102Bの状態に遷移する。つまり、要求信号転送処理52において、外部信号送受信部11と内部信号複製/比較部12と内部信号送受信部13により、要求信号51の内容がアプリケーションソフトウェア20−1に転送される。要求信号転送処理52は、アプリケーション管理ユニット10−1を透過するように要求信号51の内容を転送する処理である。

0067

また、通信システム102Bは、要求信号51に応答して、通信システム102Cの状態に遷移する。すなわち、要求信号転送処理53において、運用側ACTのアプリケーション管理ユニット10−1は、同期信号送受信部14により、待機側SBYのアプリケーション管理ユニット10−2に向けて、要求信号51の内容を転送する。なお、要求信号転送処理53において、同期信号送受信部14は、要求信号51がUDPであっても、TCPカプセリング等で確実に送信する。また、要求信号転送処理54において、待機側SBYのアプリケーション管理ユニット10−2は、運用側ACTのアプリケーション管理ユニット10−1の同期信号送受信部14から、自身の同期信号送受信部14により受け取った要求信号51の内容を、内部信号複製/比較部12と内部信号送受信部13により待機側SBYのアプリケーションソフトウェア20−2に転送する。要求信号転送処理54は、アプリケーション管理ユニット10−2を透過するように要求信号51の内容を転送する処理である。なお、要求信号転送処理52と、要求信号転送処理53とは、同じタイミングで実施されてもよい。

0068

したがって、ユーザが送信した同じ要求信号51の内容が、要求信号転送処理52、53、54により、運用側ACTのアプリケーションソフトウェア20−1と、待機側SBYのアプリケーションソフトウェア20−2の両方にほぼ同時に入力される。そして、運用側ACTのアプリケーションソフトウェア20−1、および待機側SBYのアプリケーションソフトウェア20−2の各々は、入力された同じ要求信号に従って同じ処理を実行する。

0069

通信システム102Cは、要求信号転送処理53、54により、通信システム102Dの状態に遷移する。そして、アプリケーションソフトウェア20−1の処理の結果出力される応答信号は、応答信号転送処理55によりアプリケーション管理ユニット10−1の内部信号送受信部13に転送される。また、アプリケーションソフトウェア20−2の処理の結果出力される応答信号は、応答信号転送処理56によりアプリケーション管理ユニット10−2の内部信号送受信部13に転送される。この応答信号は、更に応答信号転送処理57により、アプリケーション管理ユニット10−1の内部信号送受信部13に転送される。

0070

また、運用側ACTおよび待機側SBYの各アプリケーションソフトウェア20−1、20−2からそれらの処理の結果として送信された各応答信号は、処理58により、運用側ACTのアプリケーション管理ユニット10−1の内部で一時的に保存される。

0071

通信システム102Dの状態において故障が発生し、通信システム102Eの状態に遷移すると、処理59において、運用側ACTのアプリケーション管理ユニット10−1は、内部信号複製/比較部12により、運用側ACTのアプリケーションソフトウェア20−1の応答信号と、待機側SBYのアプリケーションソフトウェア20−2の応答信号とを比較する。この比較の結果、運用側ACTの応答信号と待機側SBYの応答信号が一致した場合、アプリケーション管理ユニット10−1は、待機側SBYからの応答信号を破棄する。また、比較の結果、運用側ACTの応答信号と待機側SBYの応答信号が不一致の場合、アプリケーション管理ユニット10−1の内部信号複製/比較部12は、処理60において、待機側SBYの故障とみなす。

0072

また、通信システム102Dの状態において故障が発生していない場合には、通信システム102Fの状態に遷移する。通信システム102Fの状態において、運用側ACTのアプリケーション管理ユニット10−1の内部信号複製/比較部12が、外部信号送受信部11により、アプリケーションソフトウェア20−1からの応答信号を、応答信号61としてクライアント端末50に送信する。一方、アプリケーション管理ユニット10−2の内部信号複製/比較部12は、待機側SBYのアプリケーションソフトウェア20−2からの応答信号を、応答信号62としてクライアント端末50に送信することはない。したがって、クライアント端末50を使用するユーザは、運用側ACTのアプリケーションソフトウェア20−1からの応答のみを受け取ることができる。

0073

また、通信システム102Gの状態において、クライアント端末50との間の通信に必要な情報があれば、処理63により、アプリケーション管理ユニット10−1、10−2は、両者間でその情報を共有する。例えば、アプリケーション管理ユニット10−1、10−2は、TCPセッション情報等を共有することが想定される。

0074

なお、図3に示したように、この例ではアプリケーション管理ユニット10−1、アプリケーションソフトウェア20−1、および20−2にIPアドレス「192.168.10.11」が割り当てられている。アプリケーション管理ユニット10−2にはIPアドレス「192.168.10.12」が割り当てられている。

0075

<通信システムの具体的な動作例−1>
通信システムの具体的な動作例−1について以下に説明する。また、特徴的な冗長化機構の有無による動作の違いが明確になるように、冗長化機構を有しない第1比較例の通信システムの場合と、本発明のアプリケーション冗長化管理システムを含む通信システムとのそれぞれについて順番に説明する。

0076

_<第1比較例の通信システムの場合>
本発明のアプリケーション冗長化管理システムを有しない第1比較例の通信システムの構成および動作の例を図4(a)および図4(b)に示す。

0077

図4(a)に示した通信システム200Aにおいては、ベース装置201上にアプリケーションソフトウェア211が配置され、ベース装置202上にアプリケーションソフトウェア212が配置されている。また、ベース装置203上のアプリケーションソフトウェア213はまだ存在しない。

0078

図4(a)に示した通信システム200Aの状態において、ユーザが使用するクライアント端末50は、L4(レイヤ4)スイッチである負荷分散装置ロードバランサ:LB)70を経由して、アプリケーションソフトウェア211又は212にアクセスすることができる。この例では、クライアント端末50が信号225として送信する要求信号の要求先のIPアドレスは、負荷分散装置70のIPアドレスである。そして、負荷分散装置70は、何らかのアルゴリズムを用いて入力された要求信号をベース装置201,202のうちいずれかに振り分ける。ここで負荷分散装置70は、要求信号をベース装置201に振り分けている。

0079

したがって、図4(a)に示したように、クライアント端末50から送出される要求信号は、負荷分散装置70を経由してベース装置201に向かい、ベース装置201上のアプリケーションソフトウェア211に入力される。また、アプリケーションソフトウェア211が処理の結果として出力する応答信号は、ベース装置201、負荷分散装置70を経由してクライアント端末50に返ってくる。信号225は、これら要求信号と応答信号の経路を示している。

0080

図4(b)に示した通信システム200Bの状態は、通信システム200Aの状態においてアプリケーションソフトウェア211に何らかの障害が発生した場合を想定している。そのため、処理221において示したように、アプリケーションソフトウェア211には、「サービス断」が発生する。

0081

したがって、アプリケーションソフトウェア211の「サービス断」が発生した後で、不図示の上位装置は、処理222により、空いているベース装置203上に新たなアプリケーションソフトウェア213を構築する。これにより、クライアント端末50のユーザが同じサービスを利用可能な状態にすることができる。

0082

つまり、この場合はユーザが継続的にアプリケーションソフトウェア211のサービスを利用することはできない。そして、障害の発生に伴ってサービス提供が一端終了した後で、新たなアプリケーションソフトウェア213が利用可能な状態になると、ユーザはアプリケーションソフトウェア213からのサービスを利用することが可能になる。したがって、ユーザは障害発生の影響を受けることになり、ユーザは障害発生後にサービスの再開を求めるために特別な操作を行う必要がある。

0083

_<アプリケーション冗長化管理システムを含む通信システムの場合>
本発明の実施形態におけるアプリケーション冗長化管理システムを含む通信システムの構成および動作の例を図5および図6に示す。図5の通信システム103Aと、図6の通信システム103Bとは状態および構成が多少異なる。なお、図5および図6に示した負荷分散装置70がなくても本発明は実施できる。

0084

図5に示した通信システム103Aは、本発明のアプリケーション冗長化管理システムを備えている。各ベース装置30−1、30−2、30−3の上に、アプリケーション管理ユニット10−1、10−2、10−3がそれぞれ配置されている。そして、アプリケーション管理ユニット10−1上にアプリケーションソフトウェア20−1が配置されている。アプリケーション管理ユニット10−2上にアプリケーションソフトウェア20−2が配置されている。

0085

ここで、アプリケーションソフトウェア20−1が運用側ACT、アプリケーションソフトウェア20−2が待機側SBYである。そして、2つのアプリケーションソフトウェア20−1、20−2は同じ機能を有するものである。また、1つの要求信号に対して2つのアプリケーションソフトウェア20−1、20−2は、同期した状態で同時に同じ動作を実行する。

0086

図5に示した通信システム103Aの構成において、アプリケーション管理ユニット10−1、アプリケーションソフトウェア20−1、および20−2の各々のIPアドレスが同じ値「192.168.10.11」になっている。また、アプリケーション管理ユニット10−2のIPアドレスは「192.168.10.12」になっている。

0087

つまり、運用側ACTのアプリケーションソフトウェア20−1のIPアドレスは、アプリケーション管理ユニット10−1のIPアドレスと同じになっている。更に、待機側SBYのアプリケーションソフトウェア20−2のIPアドレスは、運用側ACTのアプリケーションソフトウェア20−1のIPアドレスと同じになっている。

0088

なお、図5に示した通信システム103Aの状態で、アプリケーション管理ユニット10−3上のアプリケーションソフトウェア20−3は、破線で示されており、まだ存在していないことを示している。つまり、ベース装置30−3およびアプリケーション管理ユニット10−3はまだ空き状態である。

0089

図5に示した通信システム103Aの状態で、ユーザがクライアント端末50から、宛先IPアドレスを負荷分散装置70のIPアドレスとするとする要求信号51を送信する。この要求信号は負荷分散装置70によりIPアドレス「192.168.10.11」のベース装置30−1に振り分けられ、アプリケーション管理ユニット10−1を通ってアプリケーションソフトウェア20−1に到達する。

0090

ここで、運用側ACTのアプリケーション管理ユニット10−1と、待機側SBYのアプリケーション管理ユニット10−2の間は互いに連携している状態である。アプリケーション管理ユニット10−1に入力された要求信号は、要求信号転送処理53において、同期信号送受信部14により、アプリケーション管理ユニット10−2に転送される。また、この要求信号は、アプリケーション管理ユニット10−2を通ってアプリケーションソフトウェア20−2まで到達する。また、運用側ACTのアプリケーション管理ユニット10−1の同期信号送受信部14と、待機側SBYのアプリケーション管理ユニット10−2の同期信号送受信部14の間では、セッション継続に必要な情報、例えばL7(レイヤ7)情報などがあればそれを共有する。

0091

運用側ACTのアプリケーションソフトウェア20−1が処理の結果として出力する応答信号は、運用側ACTのアプリケーション管理ユニット10−1に転送される。また、待機側SBYのアプリケーションソフトウェア20−2が処理の結果として出力する応答信号は、待機側SBYのアプリケーション管理ユニット10−2に転送される。更に、アプリケーション管理ユニット10−2は、内部信号送受信部13により、アプリケーションソフトウェア20−2から受け取った応答信号を、応答信号転送処理57において、同期信号送受信部14により運用側ACTのアプリケーション管理ユニット10−1に転送する。なお、アプリケーション管理ユニット10−2は、同期信号送受信部14により、カプセル化された複製信号をデカプセル化して原信号復元する。復元された原信号は、内部信号送受信部13によりアプリケーションソフトウェア20−2に転送される。アプリケーションソフトウェア20−2は、原信号を処理して応答信号を生成する。また、図3に示した通信システム102Eの場合と同じように、運用側ACTのアプリケーション管理ユニット10−1は、内部信号複製/比較部12により、待機側SBYのアプリケーションソフトウェア20−2から返ってきた応答信号と、運用側ACTのアプリケーションソフトウェア20−1の応答信号とを比較する。この比較の結果、運用側ACTの応答信号と待機側SBYの応答信号とが一致した場合、アプリケーション管理ユニット10−1の内部信号複製/比較部12は、待機側SBYからの応答信号は破棄する。また、比較の結果、運用側ACTの応答信号と待機側SBYの応答信号が不一致の場合、アプリケーション管理ユニット10−1の内部信号複製/比較部12は、待機側SBYの故障とみなす。なお、この比較機能は必要不可欠なものではない。

0092

上記のように、内部信号複製/比較部12により待機側SBYからの応答信号が破棄される。これにより、運用側ACTのアプリケーションソフトウェア20−1からの応答信号のみが、アプリケーション管理ユニット10−1、ベース装置30−1、負荷分散装置70を通って応答信号61としてクライアント端末50に届く。

0093

一方、図6に示した通信システム103Bは、図5の通信システム103Aの状態で、アプリケーションソフトウェア20−1に何らかの障害が発生した場合の状況を表している。

0094

図6の通信システム103Bにおいては、アプリケーション管理ユニット10−1のMW状態管理部16は、運用側ACTの故障を検知する。処理P63において、アプリケーション管理ユニット10−1のMW状態管理部16は、アプリケーション管理ユニット10−2に運用側ACTの故障を通知し、次の処理を行わせる。すなわち、待機側SBYのアプリケーション管理ユニット10−2のMW状態管理部16は、IPアドレス管理部15により、自身のIPアドレスを、この時点における運用側ACTのアプリケーション管理ユニット10−1のIPアドレス「192.168.10.11」と同じ値に切り替える。

0095

また、この故障を契機として、処理P64で、負荷分散装置70がARP(Address Resolution Protocol)テーブルの内容を書き換える。ARPテーブルは、ネットワーク上の通信に用いられるIPアドレスとMAC(Media Access Control)アドレス対応関係を管理するためのものである。ARPテーブルの書き換えは、アプリケーション管理ユニット10−1からの指示により適切に行うことができる。これにより要求信号は、負荷分散装置70によりIPアドレス「192.168.10.11」のベース装置30−2に振り分けられるようになる。この要求信号は更に、アプリケーション管理ユニット10−2を通ってアプリケーションソフトウェア20−2に到達する。

0096

処理P63において、アプリケーション管理ユニット10−1は、待機側SBYのアプリケーション管理ユニット10−2のIPアドレスを切り替えさせる。これにより、それまで待機側SBYであったアプリケーション管理ユニット10−2およびアプリケーションソフトウェア20−1を、運用側ACTに切り替わる。また、それまでのアプリケーションソフトウェア20−2は、運用側ACTのアプリケーションソフトウェア20−1と同じ動作をしていたので、アプリケーションソフトウェア20−2の動作に特別な変更を加える必要はない。したがって、処理P61として、運用側ACTが故障する前と同じ状態のまま、クライアント端末50に対するサービスを継続できる。

0097

図6に示すように、アプリケーションソフトウェア20−1における故障の発生に伴ってクライアント端末50の要求信号51および応答信号61の通る経路が変化する。しかし、システムによる通信サービスが中断することはなく、クライアント端末50を使用するユーザが故障発生の影響を受けることはない。

0098

また、図6に示した状態では、アプリケーションソフトウェア20−1の機能が使えない状態になり、アプリケーションソフトウェア20−2が待機側SBYから運用側ACTに切り替わったので、冗長化機構の存在を維持するために、新たに待機側SBYを用意する必要がある。

0099

そこで、アプリケーション管理ユニット10−2、10−3は、システム構築部17により、処理P62において、ライブマイグレーションを実施し、アプリケーションソフトウェア20−1と同じ状態の新たなアプリケーションソフトウェア20−3をアプリケーション管理ユニット10−3上に構築する。このアプリケーション管理ユニット10−3およびアプリケーションソフトウェア20−3を新たな待機側SBYとして割り当てる。新たな待機側SBYのアプリケーションソフトウェア20−3のIPアドレスは、運用側ACTのIPアドレス「192.168.10.11」と同じ値とする。
更に、運用側ACTのアプリケーション管理ユニット10−2のシステム構築部17と、待機側SBYのアプリケーション管理ユニット10−3のシステム構築部17とは、お互いを関連付ける。すなわち、これらシステム構築部17は、冗長化を組む相手として相互に登録する。これにより、運用側ACTのアプリケーション管理ユニット10−2と、待機側SBYのアプリケーション管理ユニット10−3との間は、「Association」によりそれぞれ紐付けられる。そして、クライアント端末50との間の通信に必要な情報、例えばセッション情報などがあれば、運用側ACTのアプリケーション管理ユニット10−2の同期信号送受信部14と、待機側SBYのアプリケーション管理ユニット10−3の同期信号送受信部14とが、これら情報を共有する。
以降は、運用側ACTのアプリケーション管理ユニット10−2の同期信号送受信部14と待機側SBYのアプリケーション管理ユニット10−2の同期信号送受信部14との間で、要求信号転送処理53、応答信号転送処理57などを実施し、運用側ACTと待機側SBYとが連携できるように動作する。詳細な動作は既に説明したとおりである。
処理P65において、運用側ACTのアプリケーション管理ユニット10−2のMW状態管理部16と、待機側SBYのアプリケーション管理ユニット10−3のMW状態管理部16とは、両者間で定期的に「KeepAlive」の通信を行い、通信の死活監視を実施している。

0100

<通信システムの具体的な動作例−2>
通信システムの具体的な動作例−2について以下に説明する。また、特徴的な冗長化機構の有無による動作の違いが明確になるように、冗長化機構を有しない第2比較例の通信システムの場合と、本発明のアプリケーション冗長化管理システムを含む通信システムとのそれぞれについて順番に説明する。

0101

_<第2比較例の通信システムの場合>
本発明のアプリケーション冗長化管理システムを有しない第2比較例の通信システムの構成および動作の例を図7(a)および図7(b)に示す。

0102

図7(a)に示した通信システム200Aにおいては、ベース装置201上にアプリケーションソフトウェア211が配置され、ベース装置202上にアプリケーションソフトウェア212が配置されている。また、ベース装置203上のアプリケーションソフトウェア213はまだ存在しない。

0103

図7(a)に示した通信システム200Aにおいては、DNS(Domain Name System)サーバ72が設けてある。DNSサーバ72は、DNSの名前解決の機能を有している。つまり、ホスト名やメールアドレスに含まれるドメイン名などの名前などに基づき、IPアドレスなどを特定することができる。また、この例ではDNSサーバ72が負荷分散装置(ロードバランサ:LB)の機能も有する場合を想定している。すなわち、DNSサーバ72は、DNSラウンドロビンを利用して負荷を分散する。DNSラウンドロビンでは、1つのドメイン名に複数のIPアドレスを割り当てることにより負荷を分散することができる。

0104

したがって、図7(a)に示した通信システム200Aにおいては、ユーザのクライアント端末50は、信号225によりアプリケーションソフトウェア211のサービスにアクセスする際に、DNSサーバ72からサービスの要求先であるアプリケーションソフトウェア211のIPアドレスを取得する。そして、クライアント端末50は、DNSサーバ72から取得したIPアドレスを宛先アドレスとする要求信号を送る。つまり、処理220に示したように、サービスの要求先のIPアドレスは、DNSサーバ72に基づいて取得することができる。
一方、図7(b)に示した通信システム200Bにおいては、図7(a)の通信システム200Aの状態で、アプリケーションソフトウェア211に何らかの障害が発生した場合を想定している。したがって、図7(b)に示した処理221により、アプリケーションソフトウェア211は「サービス断」となる。

0105

そのため、処理221の「サービス断」が発生した場合、クライアント端末50のユーザはそれまでアプリケーションソフトウェア211で提供されていたサービスを利用できない状態になる。したがって、図7(b)に示す処理222により、空き状態であるベース装置203の上に新たなアプリケーションソフトウェア213を構築する必要がある。そして、ユーザは要求信号の送信先を切り替えて、アプリケーションソフトウェア213からサービスを受けることになる。しかし、いずれにしても、ユーザに対するサービス提供は一時的に中断し、ユーザは障害発生の影響を受ける。

0106

_<アプリケーション冗長化管理システムを含む通信システムの場合>
本発明の実施形態におけるアプリケーション冗長化管理システムを含む通信システムの構成および動作の例を図8および図9に示す。なお、図8および図9に示したDNSサーバ72B上の負荷分散装置(LB)がなくても本発明は実施できる。

0107

図8に示した通信システム104Aは、本発明のアプリケーション冗長化管理システムを備えている。各ベース装置30−1、30−2、30−3の上に、アプリケーション管理ユニット10−1、10−2、10−3がそれぞれ配置されている。そして、アプリケーション管理ユニット10−1上にアプリケーションソフトウェア20−1が配置され、アプリケーション管理ユニット10−2上にアプリケーションソフトウェア20−2が配置されている。

0108

ここで、アプリケーションソフトウェア20−1が運用側ACT、アプリケーションソフトウェア20−2が待機側SBYである。そして、2つのアプリケーションソフトウェア20−1、20−2は同じ機能を果たすものである。また、1つの要求信号に対して2つのアプリケーションソフトウェア20−1、20−2が同期した状態で同時に同じ動作を実行する。

0109

図8に示した通信システム104Aの構成においては、アプリケーション管理ユニット10−1、アプリケーションソフトウェア20−1、および20−2の各々のIPアドレスが同じ値「192.168.10.11」になっている。また、アプリケーション管理ユニット10−2のIPアドレスの値は「192.168.10.12」になっている。

0110

つまり、運用側ACTでは、処理P82により、アプリケーションソフトウェア20−1のIPアドレスが、アプリケーション管理ユニット10−1のIPアドレス「192.168.10.11」と同じになっている。更に、待機側SBYのアプリケーションソフトウェア20−2(APL−SBY)のIPアドレスは、処理P83により、運用側ACTのアプリケーションソフトウェア20−1(APL−ACT)のIPアドレス「192.168.10.11」と同じになっている。

0111

また、セッション継続に必要なL7(レイヤ7)などの情報がある場合、処理P81により、その情報を運用側ACTのアプリケーション管理ユニット10−1の同期信号送受信部14と、待機側SBYのアプリケーション管理ユニット10−2の同期信号送受信部14との間で共有する。

0112

なお、図8に示した通信システム104Aの状態で、アプリケーション管理ユニット10−3上のアプリケーションソフトウェア20−3は、破線で示されており、まだ存在していないことを示している。つまり、アプリケーション管理ユニット10−3上は、まだ空き状態である。

0113

図8に示した通信システム104Aの状態で、ユーザがクライアント端末50からアプリケーションソフトウェア20−1にアクセスしてそのサービスを利用する場合、DNSサーバ72Bを利用して、要求信号51の要求先のIPアドレスを取得する。

0114

DNSサーバ72Bは、処理P87において、アプリケーション管理ユニット10のIPアドレスにラウンドロビンを適用すると共に、運用側ACTと待機側SBYの組合せをDNSラウンドロビンの対象とする。ここで、待機側SBYが複数台の場合もあり得る。

0115

クライアント端末50は、DNSサーバ72Bから取得したIPアドレス「192.168.10.11」を宛先アドレスに設定した要求信号51を送信する。この要求信号51は、ベース装置30−1、アプリケーション管理ユニット10−1を経由してアプリケーションソフトウェア20−1に入力される。

0116

ここで、運用側ACT、待機側SBYのアプリケーション管理ユニット10−1、10−2の間は互いに連携している状態である。アプリケーション管理ユニット10−1に入力された要求信号は、処理P84において、内部信号複製/比較部12により複製され、カプセル化されて待機側SBYのアプリケーション管理ユニット10−2に転送される。また、運用側ACTのアプリケーション管理ユニット10−1の内部信号複製/比較部12と、待機側SBYのアプリケーション管理ユニット10−2の内部信号複製/比較部12との間では、セッション継続に必要な情報、例えばL7(レイヤ7)情報などがあればそれを共有する。

0117

運用側ACTのアプリケーションソフトウェア20−1が処理の結果として出力する応答信号は、運用側ACTのアプリケーション管理ユニット10−1の内部信号送受信部13に転送される。また、待機側SBYのアプリケーションソフトウェア20−2が処理の結果として出力する応答信号は、待機側SBYのアプリケーション管理ユニット10−2の内部信号送受信部13に転送される。また、アプリケーション管理ユニット10−2は、処理P85において、同期信号送受信部14により、カプセル化された複製信号をデカプセル化して原信号を復元する。復元された原信号は、内部信号送受信部13によりアプリケーションソフトウェア20−2に転送される。アプリケーションソフトウェア20−2は、転送された原信号を処理して応答信号を生成する。
アプリケーション管理ユニット10−2は、内部信号送受信部13により、アプリケーションソフトウェア20−2から応答信号を受け取る。更に、アプリケーション管理ユニット10−2は、アプリケーションソフトウェア20−2から受け取った応答信号を、応答信号転送処理57において、同期信号送受信部14により、運用側ACTのアプリケーション管理ユニット10−1に転送する。

0118

また、図3に示した通信システム102Eの場合と同じように、処理P86において、運用側ACTのアプリケーション管理ユニット10−1は、内部信号複製/比較部12により、待機側SBYのアプリケーションソフトウェア20−2から返ってきた応答信号と、運用側ACTのアプリケーションソフトウェア20−1の応答信号とを比較する。この比較の結果、運用側ACTの応答信号と待機側SBYの応答信号とが一致した場合、アプリケーション管理ユニット10−1の内部信号複製/比較部12は、待機側SBYからの応答信号を破棄する。また、比較の結果、運用側ACTの応答信号と待機側SBYの応答信号が不一致の場合、アプリケーション管理ユニット10−1の内部信号複製/比較部12は、待機側SBYの故障とみなす。なお、この比較機能は必要不可欠なものではない。

0119

上記のように、内部信号複製/比較部12により待機側SBYからの応答信号が破棄される。これにより、運用側ACTのアプリケーションソフトウェア20−1からの応答信号のみが、アプリケーション管理ユニット10−1、ベース装置30−1を通って応答信号61としてクライアント端末50に届く。

0120

一方、図9に示した通信システム104Bは、図8の通信システム104Aの状態で、アプリケーションソフトウェア20−1に何らかの障害が発生した場合の状況を表している。

0121

図9の通信システム104Bにおいて、アプリケーション管理ユニット10−1のMW状態管理部16は、運用側ACTの故障を検知する。すると、処理P91において、アプリケーション管理ユニット10−1のMW状態管理部16は、待機側SBYのアプリケーション管理ユニット10−2のIPアドレスを、それまでの運用側ACTのアプリケーション管理ユニット10−1のIPアドレスと同じ値「192.168.10.11」に切り替えさせる。なお、この故障の際に、DNSサーバ72Bにおいて特別な制御を実施する必要はない。

0122

処理P93で、待機側SBYのアプリケーション管理ユニット10−2のIPアドレスを、運用側ACTのアプリケーション管理ユニット10−1のIPアドレスと同じ値に切り替えることにより、それまで待機側SBYであったアプリケーション管理ユニット10−2およびアプリケーションソフトウェア20−1は、運用側ACTに切り替わる。また、それまでのアプリケーションソフトウェア20−2は、運用側ACTのアプリケーションソフトウェア20−1と同じ動作をしていたので、アプリケーションソフトウェア20−2の動作に特別な変更を加える必要はない。したがって、処理P92において、通信システム104Bは、運用側ACTが故障する前と同じ状態のまま、クライアント端末50に対するサービスを継続できる。

0123

図9に示すように、故障の発生に伴ってクライアント端末50の要求信号51および応答信号61の通る経路が変化する。しかし、通信システム104Bは、通信サービスを中断することはない。クライアント端末50のユーザは、アプリケーションソフトウェア20−1の故障発生の影響を受けることはない。

0124

また、図9に示した状態では、アプリケーションソフトウェア20−1の機能が使えない状態になり、アプリケーションソフトウェア20−2が待機側SBYから運用側ACTに切り替わる。このとき、通信システム104Bは、冗長化機構の存在を維持するために、新たに待機側SBYを用意する必要がある。

0125

そこで、アプリケーション管理ユニット10−2、10−3は、システム構築部17により、処理P93において、ライブマイグレーションを実施し、アプリケーションソフトウェア20−1と同じ状態の新たなアプリケーションソフトウェア20−3をアプリケーション管理ユニット10−3上に構築する。このアプリケーション管理ユニット10−3およびアプリケーションソフトウェア20−3を新たな待機側SBYとして割り当てる。新たな待機側SBYのアプリケーションソフトウェア20−3のIPアドレスは、運用側ACTのIPアドレス「192.168.10.11」と同じ値とする。
更に運用側ACTのアプリケーション管理ユニット10−2のシステム構築部17と、待機側SBYのアプリケーション管理ユニット10−3のシステム構築部17とは、お互いを関連付ける。すなわち、これらシステム構築部17は、冗長化を組む相手として相互に登録する。これにより、運用側ACTのアプリケーション管理ユニット10−2と、待機側SBYのアプリケーション管理ユニット10−3との間は、「Association」によりそれぞれ紐付けられる。
そして、処理P94により、クライアント端末50との間の通信に必要な情報、例えばセッション情報などがあれば、運用側ACTのアプリケーション管理ユニット10−2の同期信号送受信部14と、待機側SBYのアプリケーション管理ユニット10−2の同期信号送受信部14とが、これら情報を共有する。
以降は、運用側ACTのアプリケーション管理ユニット10−2の同期信号送受信部14と、待機側SBYのアプリケーション管理ユニット10−3の同期信号送受信部14との間で、要求信号や応答信号の転送処理などを実施し、運用側ACTと待機側SBYとが連携できるように動作する。詳細な動作は既に説明したとおりである。

0126

<運用側ACTに故障が発生した場合の動作例>
本発明の実施形態におけるアプリケーション冗長化管理システムを含む通信システムにおいて、運用側ACTの設備に故障が発生した場合のそれぞれ異なる動作状態を、図10(a)、図10(b)、図11(a)、図11(b)、および図11(c)に示す。

0127

例えば図10(a)に示した通信システム105Aは、アプリケーション冗長化管理システムを含んでいるので、運用側ACT、待機側SBYの両方の機能を備えている。すなわち、ベース装置30−1上にアプリケーション管理ユニット10−1が配置され、アプリケーション管理ユニット10−1上にアプリケーションソフトウェア20−1が配置されている。アプリケーション管理ユニット10−1およびアプリケーションソフトウェア20−1は、運用側ACTとして割り当てられている。また、ベース装置30−2上にアプリケーション管理ユニット10−2が配置され、アプリケーション管理ユニット10−2上にアプリケーションソフトウェア20−2が配置されている。アプリケーション管理ユニット10−2およびアプリケーションソフトウェア20−2は、待機側SBYとして割り当てられている。

0128

また、図10(a)に示した処理P101において、運用側ACTのアプリケーション管理ユニット10−1のMW状態管理部16と、待機側SBYのアプリケーション管理ユニット10−2のMW状態管理部16との間で定期的に「KeepAlive」の通信を行い、通信の死活監視を実施している。具体的にいうと、これらMW状態管理部16は、双方向ハートビート確認などの処理を実施する。

0129

また、ユーザの端末からの要求信号51は、運用側ACTのアプリケーション管理ユニット10−1およびアプリケーションソフトウェア20−1に割り当てたIPアドレス「192.168.10.11」が宛先アドレスとなる。したがって、この要求信号51は所定の通信ネットワークを経由して、アプリケーション管理ユニット10−1に入力され、外部信号送受信部11と内部信号複製/比較部12と内部信号送受信部13により、アプリケーションソフトウェア20−1までに到達する。

0130

図10(a)に示した通信システム105Aの状態で、運用側ACTに故障が発生すると、図10(b)に示した通信システム105Bの状態に遷移する。すなわち、ベース装置30−1、アプリケーション管理ユニット10−1、アプリケーションソフトウェア20−1のいずれかの故障に起因して、運用側ACTの動作異常が発生したような場合、処理P102において、アプリケーション管理ユニット10−2が、MW状態管理部16により「KeepAlive」通信の途絶を検知し、よって運用側ACTの故障を検知する。この場合は、アプリケーションソフトウェア20−1のみの故障であっても、システムの故障とみなす。このような故障検知は、運用側ACTのアプリケーション管理ユニット10−1のMW状態管理部16により実現してもよい。

0131

図10(b)に示した通信システム105Bにおいて、運用側ACTの故障が検知された場合、前述のように待機側SBYが運用側ACTに切り替わる。この時、切り替え前に待機側SBYであったアプリケーション管理ユニット10−2は、自身のMW状態管理部16とIPアドレス管理部15により、処理P103において、それ自身を表すIPアドレス「192.168.10.12」に、故障が発生した運用側ACTのIPアドレス「192.168.10.11」を追加する。

0132

これにより、IPアドレス「192.168.10.11」が割り当てられた運用側ACTのアプリケーションソフトウェア20−1が仮想的にアプリケーション管理ユニット10−2上に載っている場合と同じ状況になる。このIPアドレス「192.168.10.11」の追加の際、処理P104において、アプリケーション管理ユニット10−2は、IPアドレス管理部15により、例えば通信ネットワーク上に存在するルータ等73に対して、IPアドレスの変更を通知する。この通知は、ARPテーブルの書き換えなどの指示も含む。

0133

なお、アプリケーション管理ユニット10−2にIPアドレスを追加する代わりに、アプリケーション管理ユニット10−2のIPアドレスを変更することも考えられる。例えば、アプリケーション管理ユニット10−2は、自身のMW状態管理部16とIPアドレス管理部15により、自身のIPアドレスを「192.168.10.12」から「192.168.10.11」に変更する。これにより、アプリケーション管理ユニット10−2は、自身およびアプリケーションソフトウェア20−2を待機側SBYから運用側ACTに切り替えることができる。

0134

アプリケーション管理ユニット10−2が待機側SBYから運用側ACTに切り替わると、ユーザからの要求信号51は、ベース装置30−2を通じてアプリケーション管理ユニット10−2に入力される。

0135

一方、待機側SBYが1組だけ存在する場合に、図10に示した通信システム105Bのように待機側SBYを運用側ACTに切り替えると、待機側SBYが存在しない状態になる。したがって、システム内に冗長化機構が存在する状態を常に維持するために、通信システムは、待機側SBYを運用側ACTに切り替える際に、新たな待機側SBYを更に用意する必要がある。

0136

そこで、図11(a)に示した通信システム105Cのように、図10(b)の通信システム105Bの構成に加えて、新たなベース装置30−3を用意する。更に、図11(a)に示した通信システム105Cの状態から、図11(b)に示した通信システム105Dの状態に遷移する。すなわち、ベース装置30−3上にアプリケーション管理ユニット10−3を構築し、このアプリケーション管理ユニット10−3の上にアプリケーションソフトウェア20−3を構築する。そして、現在の運用側ACTと対になる待機側SBYを構成するように、アプリケーション管理ユニット10−3、およびアプリケーションソフトウェア20−3を割り当てる。

0137

具体的には、アプリケーション管理ユニット10−1,10−3は、システム構築部17により、処理P111において、ライブマイグレーションを実施し、アプリケーションソフトウェア20−1と同じ状態の新たなアプリケーションソフトウェア20−3をアプリケーション管理ユニット10−3上に構築する。このアプリケーション管理ユニット10−3およびアプリケーションソフトウェア20−3を新たな待機側SBYとして割り当てる。新たな待機側SBYのアプリケーションソフトウェア20−3のIPアドレスは、運用側ACTのIPアドレス「192.168.10.11」と同じ値とする。
なお、この処理P111を開始してから完了するまでの間、外部から入力される信号はアプリケーション管理ユニット10−2、10−3で止められている。

0138

更に、処理P112において、運用側ACTのアプリケーション管理ユニット10−2のシステム構築部17と、待機側SBYのアプリケーション管理ユニット10−3のシステム構築部17とは、お互いを関連付ける。すなわち、これらシステム構築部17は、冗長化を組む相手として相互に登録する。これにより、運用側ACTのアプリケーション管理ユニット10−2と、待機側SBYのアプリケーション管理ユニット10−3との間は、「Association」によりそれぞれ紐付けられる。
そして、処理P113において、クライアント端末50との間の通信に必要な情報、例えばセッション情報などがあれば、これを運用側ACTのアプリケーション管理ユニット10−2の同期信号送受信部14と待機側SBYのアプリケーション管理ユニット10−3の同期信号送受信部14とが、これら情報を共有する。

0139

図11(b)に示した通信システム105Dの状態で、ライブマイグレーション、MW関連付け、セッション情報共有の処理が完了すると、通常の基本動作が可能になる。よって、図11(c)に示した通信システム105Eの状態に遷移する。図11(b)に示す通信システム105Dのベース装置30−1、アプリケーション管理ユニット10−1、およびアプリケーションソフトウェア20−1は、故障の発生により完全に切り離されるため、図11(c)の通信システム105Eには存在しない。

0140

図11(c)の処理P101において、運用側ACTのアプリケーション管理ユニット10−1のMW状態管理部16と、待機側SBYのアプリケーション管理ユニット10−2のMW状態管理部16とは、両者間で定期的に「KeepAlive」の通信を行い、通信の死活監視を実施している。通信システム105Eにおいては、クライアント端末50からの要求信号51が、運用側ACTのアプリケーション管理ユニット10−2に入力される。そして、要求信号51の内容は、外部信号送受信部11と内部信号複製/比較部12と内部信号送受信部13により、アプリケーションソフトウェア20−2に転送される。また、要求信号51の内容は、要求信号転送処理53において、アプリケーション管理ユニット10−2の同期信号送受信部14により、アプリケーション管理ユニット10−3の同期信号送受信部14に転送される。更に要求信号51の内容は、要求信号転送処理53Bにおいて、内部信号複製/比較部12と内部信号送受信部13により、アプリケーションソフトウェア20−3に転送される。

0141

<待機側SBYに故障が発生した場合の動作例>
本発明の実施形態におけるアプリケーション冗長化管理システムを含む通信システムにおいて、待機側SBYの設備に故障が発生した場合のそれぞれ異なる動作状態を図12(a)、図12(b)、図13(a)、図13(b)、および図13(c)に示す。

0142

例えば図12(a)に示した通信システム106Aは、アプリケーション冗長化管理システムを含んでいるので、運用側ACT、待機側SBYの両方の機能を備えている。すなわち、ベース装置30−1上にアプリケーション管理ユニット10−1が配置され、アプリケーション管理ユニット10−1上にアプリケーションソフトウェア20−1が配置されている。アプリケーション管理ユニット10−1およびアプリケーションソフトウェア20−1は、運用側ACTとして割り当てられている。また、ベース装置30−2上にアプリケーション管理ユニット10−2が配置され、アプリケーション管理ユニット10−2上にアプリケーションソフトウェア20−2が配置されている。アプリケーション管理ユニット10−2およびアプリケーションソフトウェア20−2は、待機側SBYとして割り当てられている。

0143

また、図12(a)に示した処理P121において、運用側ACTのアプリケーション管理ユニット10−1のMW状態管理部16と、待機側SBYのアプリケーション管理ユニット10−2のMW状態管理部16とは、両者間で定期的に「KeepAlive」の通信を行い、通信の死活監視を実施している。具体的にいうと、これらMW状態管理部16は、双方向ハートビート確認などの処理を実施する。

0144

また、ユーザの端末からの要求信号51は、運用側ACTのアプリケーション管理ユニット10−1およびアプリケーションソフトウェア20−1に割り当てたIPアドレス「192.168.10.11」が宛先アドレスとなる。したがって、この要求信号51は所定の通信ネットワークを経由して、アプリケーション管理ユニット10−1に入力され、アプリケーションソフトウェア20−1までに到達する。

0145

図12(a)に示した通信システム106Aの状態で、待機側SBYに故障が発生すると、図12(b)に示した通信システム106Bの状態に遷移する。すなわち、ベース装置30−2、アプリケーション管理ユニット10−2、アプリケーションソフトウェア20−2のいずれかの故障に起因して、待機側SBYの動作異常が発生したような場合、処理P122において、アプリケーション管理ユニット10−2は、MW状態管理部16により、システムの故障を検知する。この場合は、アプリケーションソフトウェア20−2のみの故障であっても、システムの故障とみなす。このような故障検知は、運用側ACTのアプリケーション管理ユニット10−1のMW状態管理部16により実現してもよい。

0146

図12(b)に示した通信システム106Bにおいて、待機側SBYの故障が検知された場合、アプリケーション管理ユニット10−1は、処理P123でアプリケーション管理ユニット10−2への要求信号の転送を行わない。また、アプリケーション管理ユニット10−1は、処理P121において「KeepAlive」を行う必要もなくなる。

0147

図12(b)に示した通信システム106Bのように、待機側SBYに故障が発生した場合、現在の運用側ACTの機能には問題ないが、冗長化機構が使えない状態になっている。したがって、冗長化機構が使えるように通信システム106Bの構成を変更する必要がある。

0148

そこで、図12(b)に示した通信システム106Bの状態から図13(a)に示した通信システム106Cの状態に遷移する際に、処理P131で、新たなアプリケーションソフトウェア20−3のために、ベース装置30−3を用意する。なお、図13(a)の処理P133の破線矢印は、アプリケーション管理ユニット10−1と、故障により停止したアプリケーション管理ユニット10−2とが冗長化されていたことを示している。

0149

そして、処理P132で、ベース装置30−3上にアプリケーション管理ユニット10−3を構築する。更にアプリケーション管理ユニット10−3は、システム構築部17により、アプリケーション管理ユニット10−3上に待機側SBYのアプリケーションソフトウェア20−3を再構築する。

0150

再構築される待機側SBYのアプリケーションソフトウェア20−3には、対になる運用側ACTのアプリケーションソフトウェア20−1のIPアドレス「192.168.10.11」と同じIPアドレスが割り当てられる。アプリケーション管理ユニット10−3のIPアドレスの値は、通信システム106Dにおいては「192.168.10.13」である。

0151

また、アプリケーション管理ユニット10−1、10−3は、システム構築部17により、処理P134において、ライブマイグレーションを実施し、アプリケーションソフトウェア20−1と同じ状態の新たなアプリケーションソフトウェア20−3をアプリケーション管理ユニット10−3上に構築する。このアプリケーション管理ユニット10−3およびアプリケーションソフトウェア20−3を新たな待機側SBYとして割り当てる。なお、この処理P134が開始してから完了するまでの間は、外部から入力される信号はアプリケーション管理ユニット10−1、10−3で止められている。

0152

更に、処理P135において、運用側ACTのアプリケーション管理ユニット10−1のシステム構築部17と、待機側SBYのアプリケーション管理ユニット10−3のシステム構築部17とは、お互いを関連付ける。すなわち、これらシステム構築部17は、冗長化を組む相手として相互に登録する。これにより、運用側ACTのアプリケーション管理ユニット10−1と、待機側SBYのアプリケーション管理ユニット10−3との間は、「Association」によりそれぞれ紐付けられる。
更に、処理P136において、運用側ACTのアプリケーション管理ユニット10−1の同期信号送受信部14と待機側SBYのアプリケーション管理ユニット10−3の同期信号送受信部14とは、クライアント端末50との間の通信に必要な情報、例えばセッション情報などがあれば、これら情報を共有する。

0153

図13(b)に示した通信システム106Dの状態で、ライブマイグレーション、MW関連付け、セッション情報共有の処理が完了すると(処理P137)、通常の基本動作が可能になる。よって、図13(c)に示した通信システム106Eの状態に遷移する。図13(b)に示す通信システム106Dのベース装置30−2、アプリケーション管理ユニット10−2、およびアプリケーションソフトウェア20−2は、故障の発生により完全に切り離されるため、図13(c)の通信システム106Eには存在しない。

0154

図13(c)の処理P133において、運用側ACTのアプリケーション管理ユニット10−1のMW状態管理部16と、待機側SBYのアプリケーション管理ユニット10−2のMW状態管理部16とは、両者間で定期的に「KeepAlive」の通信を行い、通信の死活監視を実施している。
通信システム106Eにおいては、クライアント端末50からの要求信号51が、運用側ACTのアプリケーション管理ユニット10−1に入力される。そして、要求信号51の内容は、外部信号送受信部11と内部信号複製/比較部12と同期信号送受信部14により、アプリケーションソフトウェア20−1に転送される。また、要求信号51の内容は、要求信号転送処理53において、アプリケーション管理ユニット10−1の同期信号送受信部14により、アプリケーション管理ユニット10−3の同期信号送受信部14に転送される。更に要求信号51の内容は、要求信号転送処理53Bにおいて、内部信号複製/比較部12と内部信号送受信部13により、アプリケーションソフトウェア20−3に転送される。

0155

<アプリケーション冗長化管理システムの利点>
(1)本発明のアプリケーション冗長化管理システムを利用する場合、例えば図5に示した通信システム103Aのように、同じ機能を有する複数のアプリケーションソフトウェア20−1、20−2を同時に同じ状態で動作させることができる。したがって、複数のアプリケーションソフトウェア20−1、20−2のいずれかを運用側ACTに割り当て、残りを待機側SBYに割り当てることができる。そして、例えば運用側ACTに故障が発生した場合、図6に示すように待機側SBYを運用側ACTに切り替えることができる。これによりシステムは、故障発生の場合でも、そのままユーザへのサービス提供を継続できる。

0156

(2)また、例えば図3に示した通信システム102Fのように、同時に稼働している複数のアプリケーションソフトウェア20−1、20−2の一方を運用側ACT、他方を待機側SBYとし、定常状態においては運用側ACTの応答信号のみを選択的に外部に出力する。これによりシステムは、運用側ACTが故障した場合、即座に待機側SBYの応答信号に切り替えて出力することが可能である。

0157

(3)また、例えば図3に示した通信システム102Eのように、運用側ACTの応答信号と待機側SBYの応答信号とを比較することにより、これらの一致/不一致に応じて、運用側ACT又は待機側SBYの故障の有無を識別できる。

0158

(4)また、例えば図9に示した通信システム104Bのように、同時に稼働している運用側ACTおよび待機側SBYのアプリケーションソフトウェア20−1、20−2のうち、運用側ACTの異常を検知した場合、待機側SBYのアプリケーションソフトウェア20−2を運用側ACTに切り替える。これによりシステムは、故障の影響を受けることなく、正常な応答信号を直ちに出力できる。

0159

(5)また、例えば図10(b)に示した通信システム105Bのように、同時に稼働している運用側ACTおよび待機側SBYのアプリケーションソフトウェア20−1、20−2のうち、運用側ACTの異常を検知した場合、アプリケーション管理ユニット10−2にIPアドレスを追加するか、又はIPアドレスを変更する。これにより、待機側SBYのアプリケーション管理ユニット10−2、およびアプリケーションソフトウェア20−2を、待機側SBYから運用側ACTに瞬時に切り替えることができる。なお、各アプリケーションソフトウェア20や各アプリケーション管理ユニット10を、IPアドレス以外の識別子を用いて管理してもよい。

0160

(6)また、例えば図3に示した通信システム102Dのように、同時に稼働している複数のアプリケーションソフトウェア20のそれぞれにアプリケーション管理ユニット10を接続し、複数のアプリケーション管理ユニット10の間で相互に通信を行う。これにより、各アプリケーション管理ユニット10は各アプリケーションソフトウェア20の異常の有無を識別できる。

0161

(7)また、例えば図11(c)に示した通信システム105Dのように、同時に稼働している複数のアプリケーションソフトウェア20のうちいずれか一方の異常を検知した場合、異常が発生したアプリケーションの代わりの新たなアプリケーションソフトウェア20−3を稼働可能な状態で追加し、これを新たに待機側SBYとして割り当てる。これにより、既に故障が発生した状況であっても、冗長化機構を利用可能な状況を常時維持できる。

0162

なお、上述のようなアプリケーション冗長化管理システムは、これと同じような処理手順を適用することにより、様々な方法で実現可能である。例えば、同様の処理手順を実行するプログラムとして実現することも可能である。上記実施形態では、分散システムを例として説明しているが、分散システムでなくてもよい。

0163

10,10−1,10−2,10−3アプリケーション管理ユニット
11外部信号送受信部
11a,11b 外部信号
12内部信号複製/比較部(信号管理部)
12aキャッシュ
13 内部信号送受信部
14同期信号送受信部
15IPアドレス管理部
15aデータベース
16 MW状態管理部 (第1の状態管理部、第2の状態管理部)
16a データベース
17システム構築部
20,20−1,20−2,20−3アプリケーションソフトウェア
30,30−1,30−2,30−3ベース装置
41,42,58,59,60,63,221,222 処理
50クライアント端末
51要求信号
52,53,54 要求信号転送処理
55,56,57応答信号転送処理
61,62 応答信号
70負荷分散装置(ロードバランサ:LB)
72,72BDNSサーバ
73ルータ等
101A,101B,101C,101D,101E通信システム
102A,102B,102C,102D,102E 通信システム
103A,103B,104A,104B 通信システム
105A,105B,105C,105D,105E 通信システム
106A,106B,106C,106D,106E 通信システム
P61,P62,P63,P64,P65 処理
P81,P82,P83,P84,P85,P86,P87 処理
P91,P92,P93,P94 処理
P101,P102,P103 処理
P111,P112,P113 処理
P121,P122,P123 処理
P131,P132,P134,P135,P136,P137 処理
200A,200B 通信システム
201,202,203 ベース装置
211,212,213 アプリケーションソフトウェア
225 信号
ACT運用側
SBY 待機側

ページトップへ

この技術を出願した法人

この技術を発明した人物

ページトップへ

関連する挑戦したい社会課題

関連する公募課題

ページトップへ

技術視点だけで見ていませんか?

この技術の活用可能性がある分野

分野別動向を把握したい方- 事業化視点で見る -

ページトップへ

新着 最近 公開された関連が強い 技術

この 技術と関連性が強い人物

関連性が強い人物一覧

この 技術と関連する挑戦したい社会課題

関連する挑戦したい社会課題一覧

この 技術と関連する公募課題

関連する公募課題一覧

astavision 新着記事

サイト情報について

本サービスは、国が公開している情報(公開特許公報、特許整理標準化データ等)を元に構成されています。出典元のデータには一部間違いやノイズがあり、情報の正確さについては保証致しかねます。また一時的に、各データの収録範囲や更新周期によって、一部の情報が正しく表示されないことがございます。当サイトの情報を元にした諸問題、不利益等について当方は何ら責任を負いかねることを予めご承知おきのほど宜しくお願い申し上げます。

主たる情報の出典

特許情報…特許整理標準化データ(XML編)、公開特許公報、特許公報、審決公報、Patent Map Guidance System データ