(57)【要約】【課題】  複数種別の仮想ノードの運用において、適切な増減設台数を一度に決定し、オートスケーリングの収束時間を短縮する。【解決手段】  サーバ装置に備えられた複数種別の仮想ノードを管理する運用管理装置であって、複数種別の仮想ノードのそれぞれを構成する仮想マシンの増減設をサーバ装置に指示する増減設実施部と、仮想マシン毎の通信量を管理する通信量計測部と、仮想マシンの増減設台数を決定する増減設量判定部と、を備え、通信量計測部は、複数種別の仮想ノードのそれぞれが処理するトラフィック種別ごとに通信量を取得し、増減設量判定部は、トラフィック種別ごとの通信量に基づいて、仮想マシンを増減設する仮想ノードの種別と増減設台数を決定する。【選択図】  図２
2015149578.tif 000002
【特許請求の範囲】
【請求項１】
サーバ装置に備えられた複数種別の仮想ノードを管理する運用管理装置であって、
前記複数種別の仮想ノードのそれぞれを構成する仮想マシンの増減設を前記サーバ装置に指示する増減設実施部と、
前記仮想マシン毎の通信量を管理する通信量計測部と、
前記仮想マシンの増減設台数を決定する増減設量判定部と、を備え、
前記通信量計測部は、前記複数種別の仮想ノードのそれぞれが処理するトラフィック種別ごとに通信量を取得し、
前記増減設量判定部は、前記トラフィック種別ごとの通信量に基づいて、仮想マシンを増減設する仮想ノードの種別と増減設台数を決定することを特徴とする運用管理装置。
【請求項２】
請求項１に記載の運用管理装置であって、
前記複数種別の仮想ノードのそれぞれは、複数のトラフィック種別を処理し、
前記増減設量判定部は、前記トラフィック種別ごとの通信量に対して前記トラフィック種別ごとの処理量に応じた重み付けをおこない正規化した通信量を計算し、前記正規化した通信量に基づいて、仮想マシンを増減設する仮想ノードの種別と増減設台数を決定することを特徴とする運用管理装置。
【請求項３】
請求項２に記載の運用管理装置であって、
前記通信量計測部は、前記トラフィック種別に分けて前記仮想マシン毎に通信量を管理し、
前記増減設量判定部は、前記正規化した通信量を前記仮想マシン毎に計算し、所定の種別の仮想ノードを構成する仮想マシンのうち、少なくとも一台の仮想マシンの前記正規化した通信量が第１の閾値を超えた場合に、所定の種別の仮想ノードを構成する仮想マシンの増設を決定することを特徴とする運用管理装置。
【請求項４】
請求項３に記載の運用管理装置であって、
前記増減設量判定部は、前記所定の種別の仮想ノードを構成する仮想マシンの前記正規化した通信量の平均値が第２の閾値を下回る場合に、前記所定の種別の仮想ノードを構成する仮想マシンの減設を決定することを特徴とする運用管理装置。
【請求項５】
請求項２から請求項４のいずれかに記載の運用管理装置であって、
前記仮想ノードの種別が移動体通信コア網におけるｖＳ−ＧＷ（Ｖｉｒｔｕｌｉｚｅｄ  Ｓｅｒｖｉｎｇ  Ｇａｔｅｗａｙ）またはｖＰ−ＧＷ（Ｖｉｒｔｕｌｉｚｅｄ  Ｐａｃｋｅｔ  Ｄａｔａ  Ｎｅｔｗｏｒｋ  Ｇａｔｅｗａｙ）である場合、
前記増減設量判定部は、前記ｖＳ−ＧＷまたは前記ｖＰ−ＧＷが処理するトラフィック種別のうち、ユーザデータトラフィックよりも呼制御信号トラフィックの重み付けを大きくして前記正規化した通信量を計算することを特徴とする運用管理装置。
【請求項６】
請求項２から請求項５のいずれかに記載の運用管理装置であって、
前記仮想ノードの種別が移動体通信コア網におけるｖＭＭＥ（Ｖｉｒｔｕａｌｉｚｅｄ  Ｍｏｂｉｌｉｔｙ  Ｍａｎａｇｅｍｅｎｔ  Ｅｎｔｉｔｙ）である場合、
前記増減設量判定部は、前記ｖＭＭＥが処理するトラフィック種別のうち、ハンドオーバや接続確立または接続解放の呼制御信号トラフィックよりもアタッチまたはデタッチの呼制御信号トラフィックの重み付けを大きくして前記正規化した通信量を計算することを特徴とする運用管理装置。
【請求項７】
請求項２から請求項６のいずれかに記載の運用管理装置であって、
前記増減設量判定部は、前記複数のトラフィック種別の定義設定と、前記複数種別の仮想ノードの定義設定を管理者が投入するためのインタフェースを備えることを特徴とする運用管理装置。
【請求項８】
請求項２から請求項７のいずれかに記載の運用管理装置であって、
前記増減設量判定部は、仮想マシンを増設することを決定すると、前記通信量計測部に対して前記増設する仮想マシンに対する前記複数のトラフィック種別の取得開始を指示し、
前記通信量計測部は、前記仮想マシン毎の通信量を計測する他の装置に対して、前記増設する仮想マシンに対する前記複数のトラフィック種別を通知するように設定することを特徴とする運用管理装置。
【請求項９】
請求項８に記載の運用管理装置であって、
前記増減設量判定部は、仮想マシンを減設することを決定すると、前記通信量計測部に対して前記減設する仮想マシンに対する前記複数のトラフィック種別の取得終了を指示し、
前記通信量計測部は、前記他の装置に対して、前記減設する仮想マシンに対する前記複数のトラフィック種別を通知しないように設定することを特徴とする運用管理装置。
【請求項１０】
請求項２から請求項９のいずれかに記載の運用管理装置であって、
前記増減設量判定部は、前記仮想ノードごとに過去の通信量の推移から将来の通信量を予測し、所定期間内に仮想マシンを増設するための前記サーバ装置の物理リソースが不足する場合には、前記物理リソースの増設を管理者に通知するインタフェースを備えることを特徴とする運用管理装置。
【発明の詳細な説明】
【技術分野】
【０００１】
本発明は、運用管理装置に係わり、特に、通信システムにおいて、仮想化されたネットワークノードの負荷に応じて、そのネットワークノードのオートスケーリングを制御する運用管理装置に関する。
【背景技術】
【０００２】
通信キャリアが主体となり、欧州電気通信標準化機構ＥＴＳＩ（Ｅｕｒｏｐｅａｎ  Ｔｅｌｅｃｏｍｍｕｎｉｃａｔｉｏｎｓ  Ｓｔａｎｄａｒｄｓ  Ｉｎｓｔｉｔｕｔｅ）において、ＮＦＶ（Ｎｅｔｗｏｒｋ  Ｆｕｎｃｔｉｏｎｓ  Ｖｉｒｔｕａｌｉｚａｔｉｏｎ）の標準化が進められている。ＮＦＶとは、クラウド運用技術やサーバ仮想化技術を取り入れて、移動体通信システムのＥＰＣ（Ｅｖｏｌｖｅｄ Ｐａｃｋｅｔ Ｃｏｒｅ）やファイヤウォール、セットトップボックスなどのネットワークノードを仮想化してソフトウェアパッケージ化し、汎用サーバ内の仮想マシン上で実行する技術である。
【０００３】
ＮＦＶの主たる目的は、導入／運用コスト低減と、新サービス導入のリードタイム短縮である。上記で列挙したようなネットワークノードは、これまで専用のハードウェアを用いて実装され、運用管理も個々のネットワークノードごとに行われてきた。一方ＮＦＶでは、ネットワークノードのソフトウェアとハードウェアを仮想化によって分離し、共通の汎用ハードウェアを用いる。これに加えて、運用管理を集中型の形態に移行することによって、上記の目的の達成を目指す。以下では、仮想化されたネットワークノードのことを仮想ネットワークノード、または単に、仮想ノードと呼ぶ。
【０００４】
ＮＦＶを実現する上で重要な技術課題の１つは、仮想ノードにかかる処理負荷に応じて、仮想ノードを構成する仮想マシンの台数を自動的に増減設するオートスケーリングである。仮想ノードは、収容するユーザやフローは異なるが、同じネットワークノードの機能を持った複数台の仮想マシンから構成される。このように同様の機能を持つ仮想マシンを複数台並べることで、仮想ノードの処理能力を調整することが可能になる。処理負荷に応じて仮想マシンの増減設を行うことは、これらを動作させる汎用サーバ群のうち不要な機器の電源をオフにすることに繋がり、省電力化に貢献することができる。また、ハードウェアが汎用サーバに共通化されているため、複数種類の仮想ノードを動作させる場合には、予備ハードウェアのリソースを仮想ノード間で共用、調整可能になる。そのため、機器の効率的な活用が可能になる。
【０００５】
特許文献１では、移動体通信システムにおいて、仮想ノードの増減設を管理するネットワークマネージャが、各仮想マシンが通信処理する処理負荷としてＣＰＵ使用率を計測し、その値に基づいて、仮想ノードを構成する仮想マシンの増減設量を決定する方法を開示している。また、特許文献２では、ウェブサーバシステムにおいて、ロードバランサにより処理サーバ（仮想マシン）群へ転送される転送量と、代替サーバへ転送される転送量とに応じて、処理サーバ群の台数の目標規模を演算し、処理サーバの増設を準備する方法を開示している。
【先行技術文献】
【特許文献】
【０００６】
【特許文献１】特開２０１３−２３９９１３号公報
【特許文献２】特開２０１２−２０８７８１号公報
【発明の概要】
【発明が解決しようとする課題】
【０００７】
特許文献１に記載の方法では、仮想ノードに過負荷がかかっている状態、すなわち仮想マシンのＣＰＵ負荷が１００％になっている状態では、仮想マシンの適切な増設量の計算が困難であるという問題がある。これは、仮想ノードに必要とされる処理量の最大値が分からないからである。この状態では、仮想マシンを１台ずつ増設することになり、適切な仮想マシンの台数になって、安定状態に収束するまでに時間がかかってしまう。
【０００８】
また、特許文献２に記載の方法では、ロードバランサを通過する単一種類の転送量のみを見て、処理サーバ群の増減設台数を判定しており、処理サーバが複数種類のトラフィックを扱うことを想定していないという問題がある。また、トラフィックの種類によって、ある機能を持った処理サーバだけに影響するもの、別の機能を持った処理サーバにも影響するものがあることを想定していないという問題がある。
【０００９】
特に、ＮＶＦを移動体通信システムのＥＰＣに適用する場合は、複数種別の仮想ノード（例えば、Ｐ−ＧＷ、Ｓ−ＧＷ、ＭＭＥ）を扱い、また複数種別のトラフィック（例えば、呼制御信号のメッセージ種別ごとや、ユーザデータのパケット長ごとのトラフィック）を扱う必要がある。さらには、システムに入力されるトラフィック種別によって、増減設すべき仮想ノードが異なる。そのため、上記の問題点は、実現に向けた大きな課題となる。
本発明は、このような事情に鑑みてなされたものであり、上述した課題の少なくとも一部を解決することを目的とする。
【課題を解決するための手段】
【００１０】
本願において開示される発明のうち、代表的なものの概要を簡単に説明すれば、下記の通りである。
サーバ装置に備えられた複数種別の仮想ノードを管理する運用管理装置であって、複数種別の仮想ノードのそれぞれを構成する仮想マシンの増減設を前記サーバ装置に指示する増減設実施部と、仮想マシン毎の通信量を管理する通信量計測部と、仮想マシンの増減設台数を決定する増減設量判定部と、を備え、通信量計測部は、複数種別の仮想ノードのそれぞれが処理するトラフィック種別ごとに通信量を取得し、増減設量判定部は、トラフィック種別ごとの通信量に基づいて、仮想マシンを増減設する仮想ノードの種別と増減設台数を決定する。
【発明の効果】
【００１１】
本発明によれば、システム内で複数種別の仮想ノードのオートスケーリングに対応可能になり、オートスケーリングの収束時間を短縮できる。上記した以外の課題、構成及び効果は、以下の実施形態の説明により明らかにされる。
【図面の簡単な説明】
【００１２】
【図１】通信システム例を示す図である。
【図２】実施例１に係る、システム構成例を示す図である。
【図３】運用管理装置、および物理サーバ群を構成する物理サーバ１台のハードウェア構成例を示す図である。
【図４】ロードバランサ装置、および計測装置のハードウェア構成例を示す図である。
【図５】管理者から入力トラフィック種別定義とノード定義の設定が投入される処理シーケンスの例を示す図である。
【図６】入力トラフィック種別定義テーブルの例を示す図である。
【図７】ノード定義テーブルの例を示す図である。
【図８】仮想マシンテーブルの例を示す図である。
【図９】測定キューテーブルの例を示す図である。
【図１０】特定の仮想ノードの仮想マシンを増設する処理シーケンスの例を示す図である。
【図１１】特定の仮想ノードの仮想マシンを減設する処理シーケンスの例を示す図である。
【図１２】物理サーバ群の増設を管理者に提案する処理シーケンスの例を示す図である。
【図１３】正規通信量推移テーブルの例を示す図である。
【図１４】仮想ノードを構成する仮想マシンの増減設を判断し、実施するフローチャートの例を示す図である。
【図１５】物理サーバ群の増設時期を判断し、提案するフローチャートの例を示す図である。
【図１６】実施例２に係る、システム構成例を示す図である。
【図１７】実施例３に係る、システム構成例を示す図である。
【発明を実施するための形態】
【００１３】
以下の実施の形態においては便宜上その必要があるときは、複数のセクションまたは実施の形態に分割して説明するが、特に明示した場合を除き、それらはお互い無関係なものではなく、一方は他方の一部または全部の変形例、詳細、補足説明などの関係にある。各実施の形態は、個別で実施してもよいが、組合せて実施してもよい。
また、以下の実施の形態において、要素の数など（個数、数値、量、範囲等を含む）に言及する場合、特に明示した場合及び原理的に明らかに特定の数に限定される場合などを除き、その特定の数に限定されるものではなく、特定の数以上でも以下でもよいものとする。
さらに、以下の実施の形態において、その構成要素（要素ステップなどを含む）は、特に明示した場合及び原理的に明らかに必須であると考えられる場合などを除き、必ずしも必須のものではないことは言うまでもない。
同様に、以下の実施の形態において、構成要素などの形状、位置関係等に言及するときは、特に明示した場合及び原理的に明らかにそうでないと考えられる場合などを除き、実質的にその形状などに近似または類似するものなどを含むものとする。このことは前記数値及び範囲についても同様である。
【実施例１】
【００１４】
第１の実施例として、パケット通信システムの場合の運用管理装置について、そのシステム、処理（シーケンス、フローチャート）の順に説明する。
＜システム＞
はじめに、図１を用いて本実施形態における通信システムの構成の一例を説明する。ここでは３ＧＰＰ  ＬＴＥにおける移動体通信システムのＥＰＣを仮想ノードで構成した通信システム例にとる。ユーザ端末ＵＥ（Ｕｓｅｒ  Ｅｑｕｉｐｍｅｎｔ）（１００ａ、１００ｂ）は、無線インタフェースを介して、無線信号を有線信号に相互変換する無線基地局ｅＮＢ（Ｅｖｏｌｖｅｄ  Ｎｏｄｅ  Ｂ）（１０１ａ、１０１ｂ）と通信を行う。ｅＮＢ（１０１ａ、１０１ｂ）は、仮想ノードである移動管理ゲートウェイｖＭＭＥ（Ｖｉｒｔｕａｌｉｚｅｄ  Ｍｏｂｉｌｉｔｙ  Ｍａｎａｇｅｍｅｎｔ  Ｅｎｔｉｔｙ）１０２と呼制御信号の通信を行う。ｖＭＭＥ１０２は、ユーザごとのＵＥの無線接続状況を管理するとともに、他のＥＰＣ装置に対してユーザデータトラフィックの経路を設定する装置である。ｖＭＭＥ１０２は、さらに、加入者管理サーバＨＳＳ（Ｈｏｍｅ  Ｓｕｂｓｃｒｉｂｅｒ  Ｓｅｒｖｅｒ）１０３と呼制御信号の通信を行う。ＨＳＳ１０３は、ＵＥ（１００ａ、１００ｂ）の認証情報やサービス情報を管理する装置である。さらに、ｅＮＢ（１０１ａ、１０１ｂ）は、仮想ノードである無線アクセス網ゲートウェイｖＳ−ＧＷ（Ｖｉｒｔｕｌｉｚｅｄ  Ｓｅｒｖｉｎｇ  Ｇａｔｅｗａｙ）１０４とユーザデータの通信を行う。ｖＳ−ＧＷ１０４とは、ＵＥが属する適切なｅＮＢに対して、ユーザデータトラフィックを転送する装置である。ｖＳ−ＧＷ１０４は、仮想ノードであるパケットデータ網ゲートウェイｖＰ−ＧＷ（Ｖｉｒｔｕｌｉｚｅｄ  Ｐａｃｋｅｔ  Ｄａｔａ  Ｎｅｔｗｏｒｋ  Ｇａｔｅｗａｙ）１０５と呼制御信号とユーザデータの通信を行う。ｖＰ−ＧＷ１０５は、ユーザデータを適切なＰＤＮ（Ｐａｃｋｅｔ  Ｄａｔａ  Ｎｅｔｗｏｒｋ）１０６に転送する装置である。ＰＤＮ１０６とは、インターネットや企業網などのことであり、上記説明した移動体通信システムを介して、ＵＥ（１００−１、１００−２）とエンド−エンド間の通信を行う端末が存在する網である。さらに、ｖＰ−ＧＷ１０５は、ポリシ管理サーバＰＣＲＦ（Ｐｏｌｉｃｙ  ａｎｄ  Ｃｈａｒｇｉｎｇ  Ｒｕｌｅｓ  Ｆｕｎｃｔｉｏｎ）１０７と呼制御信号の通信を行う。ＰＣＲＦ１０７とは、ｖＰ−ＧＷ１０５に対して、ユーザごとの通信品質設定を行う装置である。
【００１５】
ｖＭＭＥ１０２、ｖＳ−ＧＷ１０４、ｖＰ−ＧＷ１０５は、図１では１台ずつであるが、通信システムの規模に応じて、複数台存在しても良い。また、ｖＭＭＥ１０２、ｖＳ−ＧＷ１０４、ｖＰ−ＧＷ１０５は、上述したように仮想ノードであり、一般的には汎用の物理サーバ群を設置したデータセンタ１０８内に設置される。
【００１６】
また、各装置間のインタフェースには以下のように参照点名が付けられている。ｅＮＢ（１０１ａ、１０１ｂ）とｖＭＭＥ１０２の間を「Ｓ１−ＭＭＥ」と呼ぶ。ｖＭＭＥ１０２とＨＳＳ１０３の間を「Ｓ６ａ」と呼ぶ。ｅＮＢ（１０１ａ、１０１ｂ）とｖＳ−ＧＷ１０４の間を「Ｓ１−Ｕ」と呼ぶ。ｖＳ−ＧＷ１０４とｖＭＭＥ１０２の間を「Ｓ１１」と呼ぶ。ｖＳ−ＧＷ１０４とｖＰ−ＧＷ１０５の間を「Ｓ５／Ｓ８」と呼ぶ。ｖＰ−ＧＷ１０５とＰＣＲＦ１０７の間を「Ｇｘ」と呼ぶ。ｖＰ−ＧＷ１０５とＰＤＮ１０７の間を「ＳＧｉ」と呼ぶ。移動体通信システムでは、参照点ごとに、適用されるプロトコルが異なっている。
【００１７】
次に、図２を用いて、本実施の形態のシステム構成の一例を説明する。本システム構成は、図１で示したデータセンタ１０８内の構成に該当する。本システムは、物理サーバ群２１０、ロードバランサ装置２００、計測装置２０１、運用管理装置２２０から構成される。各装置は、スイッチ、またはルータによって接続される。物理サーバ群２１０は、仮想ノードを構成する仮想マシン群を備える。図２では、仮想マシンＶ１〜Ｖ５（２１１ａ〜２１１ｅ）が動作しており、それぞれで仮想ノードソフトウェアであるｖＰ−ＧＷ２１２ａ、ｖＳ−ＧＷ２１２ｂ、ｖＭＭＥ（２１２ｃ〜２１２ｅ）を実行している。また、物理サーバ群２１０は、仮想マシンを起動可能な一定量の空きリソース（ＣＰＵ資源、メモリ資源など）２１３を備える。ロードバランサ装置２００は、外部ネットワークから受信する呼制御信号やユーザデータのパケットを、適切な仮想マシンに振り分ける機能を持つ。例えば、図２では仮想マシンＶ３〜Ｖ５（２１１ｃ〜２１１ｅ）が１つの仮想ノードとしてｖＭＭＥを構成しており、ロードバランサ装置２００は、呼制御信号パケットの対象ユーザを識別した上で、そのユーザ情報を収容する仮想マシンにそのパケットを転送する。計測装置２０１は、ロードバランサ装置２００と仮想マシンＶ１〜Ｖ５（２１１ａ〜２１１ｅ）の間に位置し、その間を流れるトラフィックの種別を識別し、それぞれのトラフィック種別の統計情報を計測する装置である。トラフィック種別の具体例は、後述の＜処理（シーケンス）＞の中で説明する。
【００１８】
運用管理装置２２０は、トラフィック種別ごとの通信量に応じて、各仮想ノードの仮想マシン増減設を制御する装置である。運用管理装置２２０は、増減設量判定部２２１、通信量計測部２２２、増減設実施部２２３を備える。増減設量判定部２２１は、仮想ノードに入力するトラフィック種別の定義と、仮想ノードのノード定義を管理者２３０が投入するインタフェースを持つ。入力トラフィック種別定義、仮想ノード定義の具体例は、後述の＜処理（シーケンス）＞の中で説明する。また、増減設量判定部２２１は、通信量計測部２２２に対して、計測装置２０１で計測したいトラフィック種別の計測キュー設定指示を行い、計測結果を取得する。さらに、増減設量判定部２２１は、上記計測結果に基づいて仮想ノードを構成する仮想マシンの増減設量を判定し、増減設実施部２２３に対して、増減設指示を出す。通信量計測部２２２は、計測装置２０１に対して計測したいトラフィック種別の計測キューを設定し、そのキューごとの通信量を計測装置２０１から取得する。増減設実施部２２３は、増減設量判定部２２１から増減設実施の指示を受け、物理サーバ群２１０に対して仮想マシンの起動／停止、仮想ノードの設定を行う。また、増減設実施部２２３は、増減設に合わせて、ロードバランサ装置２００の転送テーブルの再設定を行う。
【００１９】
図３は、本実施の形態の運用管理装置２２０、および物理サーバ群（２１０）を構成する物理サーバ１台のハードウェア構成の一例を示す図である。運用管理装置２２０は、ＣＰＵ３００、メモリ３０１、ストレージ３０２、ＮＩＦ（Ｎｅｔｗｏｒｋ  Ｉｎｔｅｒｆａｃｅ）３０３から構成される。増減設量判定部２２１、通信量計測部２２２、増減設実施部２２３の機能を提供するためのソフトウェアプログラムはストレージ３０２に記憶されており、装置の起動時にメモリ３０１に展開される。ＣＰＵ３００は、メモリ３０１内に展開されたソフトウェアプログラムを順次読み出して実行する。ＮＩＦ３０３ａ、３０３ｂは、システム内の他の装置と通信するための管理用のネットワークインタフェース、および移動体通信に係る呼制御信号やユーザデータパケットを送受信するためのデータ用のネットワークインタフェースである。
【００２０】
図４は、本実施の形態のロードバランサ装置２００、および計測装置２０１のハードウェア構成の一例を示す図である。ここでは、両装置が同様のハードウェア構成であり、内部に記憶するソフトウェアによって、その機能が分かれることを想定する。ロードバランサ装置２００、および計測装置２０１は、外部ネットワークから送受信する呼制御信号やユーザデータを処理するための部位（ＮＰＵ（Ｎｅｔｗｏｒｋ  Ｐｒｏｃｅｓｓｉｎｇ  Ｕｎｉｔ）４００、メモリ４０１、ＮＩＦ（４０２ａ〜４０２ｃ））と、装置を設定、制御するための部位（ＣＰＵ４１０、メモリ４１１、ストレージ４１２、ＮＩＦ４１３）を備える。ＮＩＦ（４０２ａ〜４０２ｃ）は外部ネットワークに接続しており、呼制御信号やユーザデータのパケットを送受信する。ＮＰＵ４００には、ロードバランサ機能、または計測機能を提供するソフトウェアプログラムがダウンロードされており、送受信した呼制御信号やユーザデータのパケットに対して処理を行う。メモリ４０１上には、ロードバランサ機能に必要な転送テーブル、または計測機能に必要な計測キューテーブルが展開されている。一方、装置を設定するための機能を提供するためのソフトウェアプログラムはストレージ４１２に記憶されており、装置の起動時にメモリ４１１に展開される。ＣＰＵ４１０は、メモリ４１１内に展開されたソフトウェアプログラムを順次読み出して実行する。ＮＩＦ４１３は、運用管理装置と通信するための管理用のネットワークインタフェースである。ＣＰＵ４１０は、メモリ４１１からロードバランサ機能、または計測機能を提供するソフトプログラムを読み出して、ＮＰＵ４００にダウンロードする。また、運用管理装置２２０からの指示に従って、メモリ４０１に転送テーブル、または測定キューテーブルを展開する。
以上が、本実施の形態のシステムである。
【００２１】
＜処理（シーケンス）＞
本実施の形態において、複数種別の仮想ノードの増減設を管理する運用管理装置が、仮想ノードが処理する入力トラフィック種別ごとに通信量を計測し、入力トラフィック種別ごとの通信量に基づいて、仮想マシンを増減設する仮想ノードの種別と増減設量を決定する処理について、４つの手順を説明する。具体的には、（Ａ）管理者から入力トラフィック種別定義とノード定義の設定が投入される処理、（Ｂ）特定の仮想ノードの仮想マシンを増設する処理、（Ｃ）特定の仮想ノードの仮想マシンを減設する処理、（Ｄ）物理サーバ群の増設を管理者に提案する処理の手順である。
【００２２】
（Ａ）管理者から入力トラフィック種別定義とノード定義の設定が投入される処理
図５を用いて、管理者から入力トラフィック種別定義とノード定義の設定が投入され、運用管理装置がシステムの設定を行う手順を説明する。まず、管理者２３０が、運用管理装置２２０に対して、計測対象としたい入力トラフィック種別の定義を投入する（ステップ５００）。運用管理装置２２０は、後述する入力トラフィック種別定義テーブルにエントリを作成し、投入された定義情報をテーブルに設定する（ステップ５０１）。
【００２３】
図６は、入力トラフィック種別定義テーブルのデータ構成の一例を示す図である。入力トラフィック種別定義テーブル６００は、トラフィック種別番号６０１、対象ノード種別６０２、分類６０３、定義６０４の項目から構成される。トラフィック種別番号６０１は、エントリの識別番号である。対象ノード種別６０２は、そのトラフィック種別のトラフィックが入力する仮想ノードの種別である。分類６０３は、そのトラフィック種別が呼制御信号であるのか、ユーザデータであるのかを表す。定義６０４は、そのトラフィック種別の具体的な定義である。エントリＴ１〜Ｔ５は、ｖＰ−ＧＷに関するトラフィック種別の定義である。
【００２４】
エントリＴ１では、図１に示した参照点「Ｓ５／Ｓ８」と「Ｇｘ」から入力する呼制御信号のうち、イニシャルトランザクションパケット（移動体通信に係る一連の呼制御シーケンスのうち、起点となるメッセージパケットのこと）を計測することを定義している。エントリＴ２〜Ｔ５では、ユーザデータパケットのうち、図１に示した参照点「ＳＧｉ」と「Ｓ５／Ｓ８」、またパケット長１２８バイト未満と以上をそれぞれ分けて計測することを定義している。これは、参照点ごとにパケット転送処理量が異なったり、パケット長に応じてパケット転送のオーバヘッドが異なったりするためである。
【００２５】
一方、エントリＴ６〜Ｔ８は、ｖＳ−ＧＷに関するトラフィック種別定義である。エントリＴ６では、図１に示した参照点「Ｓ１１」と「Ｓ５／Ｓ８」から入力する呼制御信号のうち、イニシャルトランザクションパケットを計測することを定義している。エントリＴ７、Ｔ８では、ユーザデータパケットのうち、図１に示した参照点「Ｓ１−Ｕ」と「Ｓ５／Ｓ８」の両方に関して、パケット長１２８バイト未満と以上を分けて計測することを定義している。なおここでは、参照点「Ｓ１−Ｕ」と「Ｓ５／Ｓ８」のユーザデータパケットに対する転送処理量が同じであるとして、同一のトラフィック種別として定義している。
【００２６】
さらに、エントリＴ９〜Ｔ１１は、ｖＭＭＥに関するトラフィック種別定義である。エントリＴ９〜Ｔ１１ではそれぞれ、呼接続信号のメッセージ種類として、アタッチ／デタッチ、ハンドオーバ、接続確立／接続解放（通信するための無線リソースの確保／解放のこと）のイニシャルトランザクションパケットを計測することを定義している。これは、呼制御信号でもメッセージの種類によって、その後の一連の呼制御シーケンスの処理量が異なるためである。以上のようにして、計測対象としたいトラフィック種別の個々の定義を行っていく。
【００２７】
図５に戻る。管理者２３０が、運用管理装置２２０に対して、システム内で動かしたい仮想ノードのノード定義を投入する（ステップ５０２）。運用管理装置２２０は、後述するノード定義テーブルにエントリを作成し、投入された定義情報をテーブルに設定する（ステップ５０３）。
【００２８】
図７は、ノード定義テーブルのデータ構成の一例を示す図である。ノード定義テーブル７００は、ノード番号７０１、ノード種別７０２、起動イメージ７０３、使用リソース７０４、正規通信量計算式７０５、処理可能通信量７０６、上限閾値７０７、下限閾値７０８、目標負荷７０９の項目から構成される。ノード番号７０１は、エントリの識別番号である。ノード種別７０２は、仮想ノードの種別である。起動イメージ７０３は、その仮想ノードとして動作するための仮想マシンイメージのファイル名である。使用リソース７０４は、その仮想ノードを構成する仮想マシンを１台起動するのに必要とする物理リソース量である。正規通信量計算式７０５は、仮想マシン１台にかかる現在の通信量を評価するための計算式である。この計算方法については後述する。処理可能通信量７０６は、仮想マシン１台がトラフィックを処理できる最大の通信量である。上限閾値７０７は、仮想マシンの増設実施を判定するための負荷閾値条件である。下限閾値７０８は、仮想マシンの減設実施を判定するための負荷閾値条件である。目標負荷７０９は、仮想マシンの増減設実施後に、各仮想マシンにかかるようにしたい平均負荷の目標値である。
【００２９】
正規通信量計算式７０５について説明する。ＥＰＣに代表されるような仮想ノードでは、１つの仮想ノードが多種の入力トラフィック種別を扱い、それらのトラフィック処理の負荷はそれぞれで異なる。したがって、各仮想マシンにかかる正しい通信量を評価するためは、それぞれのトラフィック種別の通信量に対して処理量の比率を積算する正規化が必要になる。正規通信量計算式７０５は、上記の正規化の計算式を表す。具体的には、以下の数式（１）、（２）によって計算される。
【００３０】
【数１】
2015149578.tif 000003
【００３１】
【数２】
2015149578.tif 000004
【００３２】
ここでＲ（Ｔｎ）は、トラフィック種別番号Ｔｎに対して計測された通信量である。Ｒｍａｘ（Ｔｎ）は、仮想マシンにトラフィック種別番号Ｔｎのトラフィックだけを入力したときに計測された最大の通信量である。Ａｉは係数である。Ｒｍａｘ（Ｔｎ）の逆数から、そのトラフィック種別に対する処理量に変換して、全体の処理量に対する比率を計算している。仮想ノードでは、専用のハードウェアが不要であるため、実際に運用を開始する前に、上記のように最大通信量をあらかじめ評価することが容易である。
【００３３】
ノード定義テーブル７００のエントリの一例として、エントリＮ１、Ｎ２を説明する。エントリＮ１では、ノード種別７０２として、ｖＰ−ＧＷのノード定義をしている。仮想マシンを起動する際には、起動イメージ（７０３）としてｖｐｇｗ１．ｉｍｇを元に起動する。使用リソース７０４として、ＣＰＵリソースを３コア必要とし、それらのコアを１００％占有する。また、メモリリソースを１６ＧＢ必要とする。正規通信量計算式７０５には、図６の入力トラフィック種別定義テーブル６００で定義したトラフィック種別番号Ｔ１〜Ｔ５の通信量を用いる。計算式は上述した数式（１）、（２）を用いて定義する。なお、ここでＰ（Ｔｎ）とは、トラフィック種別番号Ｔｎに対して計測された毎秒入力パケット数を表す。１台の仮想マシンの処理可能通信量７０５は、５０ｋｐｐｓ（Ｐａｃｋｅｔｓ  Ｐｅｒ  Ｓｅｃｏｎｄ）である。上限負荷７０６、下限負荷７０７、目標負荷７０８はそれぞれ８０％、４０％、６０％である。
【００３４】
一方、エントリＮ２では、ノード種別７０２として、ＤＰＩ（Ｄｅｅｐ  Ｐａｃｋｅｔ  Ｉｎｓｐｅｃｔｉｏｎ）機能を備え、ユーザデータトラフィックの処理だけを行うｖＰ−ＧＷのノード定義をしている。ＤＰＩ機能とは、ユーザデータのパケットペイロードを検査、識別して品質制御などに役立てる機能である。正規通信量計算式７０５には、図６の入力トラフィック種別定義テーブル６００で定義したトラフィック種別番号Ｔ２〜Ｔ５の通信量を用いる。計算式は上述した数式（１）、（２）を用いて定義する。なお、ここでＢ（Ｔｎ）とは、トラフィック種別番号Ｔｎに対して計測された毎秒入力ビット数を表す。ＤＰＩ機能を備える場合、処理量は秒間パケット数ではなく、秒間ビット数（秒間バイト数）に依存するので、Ｂ（Ｔｎ）を用いている。１台の仮想マシンの処理可能通信量７０５は、５Ｇｂｐｓ（Ｂｉｔｓ  Ｐｅｒ  Ｓｅｃｏｎｄ）である。
【００３５】
なお、図７の正規通信量計算式７０５に示したように、例えばｖＰ−ＧＷやｖＳ−ＧＷの場合、一般的にユーザデータトラフィックよりも呼制御信号トラフィックの方が１パケット当たりの処理量が大きいため、ユーザデータトラフィックよりも呼制御信号トラフィックの重み付けを大きくして正規化した通信量を計算することになる。また、例えばｖＭＭＥの場合は、通常はハンドオーバや接続確立または接続解放の呼制御信号トラフィックよりもアタッチまたはデタッチの呼制御信号トラフィックの方が１パケット当たりの処理量が大きいため、ハンドオーバや接続確立または接続解放の呼制御信号トラフィックよりもアタッチまたはデタッチの呼制御信号トラフィックの重み付けを大きくして正規化した通信量を計算することになる。
【００３６】
以上のように、通信量を計測する入力トラフィック種別を定義し、仮想ノードごとに通信量から計算される正規通信量を定義することによって、システム内で複数種別の仮想ノードのオートスケーリングに対応可能になり、また通信量計測によって適切な増減設台数を一度に決定し、オートスケーリングの収束時間を短縮できる。
【００３７】
図５に戻る。運用管理装置２３０は、投入されたノード定義に従って仮想ノードを構成するため、物理サーバ群２１０に対して、物理リソースを割り当てて仮想マシンの起動命令を出す（ステップ５０４）。ここでは、仮想マシンＶ１（ｖＰ−ＧＷ）２１１ａ、仮想マシンＶ２（ｖＳ−ＧＷ）２１１ｂ、仮想マシンＶ３（ｖＭＭＥ）２１１ｃを１台ずつ起動している。その後、起動した仮想マシン（２１１ａ〜２１１ｃ）に対して、仮想ノードとして動作するためのシステムパラメータなどを設定する（ステップ５０５）。運用管理装置２２０は、後述する仮想マシンテーブルにエントリを作成し、起動した仮想マシンに関する情報を格納する（ステップ５０６）。
【００３８】
図８は、仮想マシンテーブルのデータ構造の一例を示す図である。仮想マシンテーブル８００は、仮想マシン番号８０１、ノード番号８０２、ネットワーク情報（８０３）、正規通信量８０４の項目から構成される。仮想マシン番号８０１は、エントリの識別番号である。ノード番号８０２は、その仮想マシンがどの仮想ノードであるかを表し、図７のノード定義テーブル７００のノード番号７０１に対応する。ネットワーク情報８０３は、その仮想マシンに付けられたＭＡＣ（Ｍｅｄｉａ  Ａｃｃｅｓｓ Ｃｏｎｔｒｏｌ）アドレスとＩＰ（Ｉｎｔｅｒｎｅｔ  Ｐｒｏｔｏｃｏｌ）アドレスの情報を格納する。正規通信量８０４は、ノード定義テーブル７００の正規通信量計算式７０５から計算される現在の通信量である。図８では、仮想マシン番号Ｖ１をノード番号Ｎ１のｖＰ−ＧＷとして、仮想マシン番号Ｖ２をノード番号Ｎ３のｖＳ−ＧＷとして、仮想マシン番号Ｖ３〜Ｖ５をノード番号Ｎ４のｖＭＭＥとしてエントリを作成していることを示す。
【００３９】
図５に戻る。運用管理装置２２０は、投入された入力トラフィック種別定義とノード定義に基づいて、後述する計測キューテーブルにエントリを作成する（ステップ５０７）。
【００４０】
図９は、測定キューテーブルのデータ構成の一例を示す図である。測定キューテーブル９００は、測定キュー番号９０１、宛先の仮想マシン番号９０２、トラフィック種別番号９０３、毎秒入力パケット数９０４、毎秒入力ビット数９０５の項目から構成される。測定キュー番号９０１は、エントリの識別番号である。宛先の仮想マシン番号９０２は、どの仮想マシンに対するトラフィックであるかを表し、図８の仮想マシンテーブル８００の仮想マシン番号８０１に対応する。仮想マシンテーブル８００から、ネットワーク情報８０３であるＭＡＣアドレスとＩＰアドレスを検索できる。トラフィック識別番号９０３は、入力トラフィック種別を表し、図６の入力トラフィック種別定義テーブル６００のトラフィック種別番号６０１に対応する。毎秒入力パケット数９０４と毎秒入力ビット数９０５には、後述する計測装置２０１から取得する計測結果を格納する。図９では、エントリＱ１−１〜Ｑ１−５は、仮想マシン番号Ｖ１に対する計測キューの設定になる。それぞれ、トラフィック識別番号Ｔ１〜Ｔ５を計測するための計測キューである。これらは、図７のノード定義テーブル７００の正規通信量計算式７０５に含まれるトラフィック種別番号から設定される。
【００４１】
図５に戻る。運用管理装置２２０は、ステップ５０７で作成した計測キューテーブル９００のエントリ情報に基づいて、計測装置２０１に対して計測キューを追加する設定を行う（ステップ５０８）。この設定の際には、計測キューテーブル９００のエントリ情報のうち、計測キュー番号９０１、宛先の仮想マシン番号９０２に対応した仮想マシンテーブル８００のネットワーク情報８０３、トラフィック種別番号９０３に対応した入力トラフィック種別定義テーブル６００の定義６０４の情報が含まれる。その後、運用管理装置２２０は、外部ネットワークから受信した仮想ノード宛のパケットが、適切な仮想マシンに転送されるように、ロードバランサ装置２００の転送テーブルを設定する（ステップ５０９）。
【００４２】
以上の設定が完了すると、外部ネットワークからロードバランサ装置２００、計測装置２０１、仮想マシンＶ１〜Ｖ３（２１１ａ〜２１１ｃ）へと呼制御信号やユーザデータのパケットが転送される（ステップ５２０〜５２２）。計測装置２０１は、設定された計測キューに対して入力パケット数や入力ビット数の通信量を計測しており、定期的に運用管理装置２２０に対して計測キューごとの通信量を通知する（ステップ５３０〜５３１）。運用管理装置２２０は、上記通知を受けると、図９の計測キューテーブル９００の毎秒入力パケット数９０４と毎秒入力ビット数９０５に通信量を格納する。
【００４３】
以上が、入力トラフィック種別定義とノード定義の設定に基づいて、運用管理装置がシステムの設定を行う手順である。本手順に従えば、入力トラフィック種別定義とノード定義を柔軟に変更できるため、既存サービスの更新、新規サービスの導入、サービスごとの論理構成の変更などへの追従が容易になり、ＮＦＶの目的である運用管理の自動化や運用コスト低減に繋がる。
【００４４】
（Ｂ）特定ノードの仮想マシンを増設する処理
図１０を用いて、運用管理装置が、特定の仮想ノードの仮想マシンの増設を判定し、仮想マシンの増設を実施する手順を説明する。ここでは、仮想ノードとしてｖＰ−ＧＷを対象とする。また、仮想マシンＶ１（２１１ａ）が既に起動状態にあり、新たに仮想マシンＶ６、Ｖ７（２１１ｆ、２１１ｇ）を増設することを想定する。
【００４５】
計測装置２０１は、設定された計測キューに対して入力パケット数や入力ビット数の通信量を計測しており、定期的に運用管理装置２２０に対して計測キューごとの通信量を通知する（ステップ５３０〜５３１と同様）。運用管理装置２２０は、上記通知を受けると、図９の計測キューテーブル９００の毎秒入力パケット数９０４と毎秒入力ビット数９０５に通信量を格納する。
【００４６】
次に、運用管理装置２２０は、計測キューの計測通信量に基づいて、仮想マシンごとの正規通信量を評価し、仮想マシンテーブル８００の正規通信量８０４に記録する（ステップ１０００）。このとき、記録する正規通信量は、直前の計測通信量に基づく瞬間値でも良いし、過去の値も考慮に入れた単純移動平均値や指数移動平均値を算出しても良い。そして、運用管理装置２２０は、上記評価した正規通信量と、ノード定義テーブル７００に設定した処理可能通信量７０６から、各仮想マシンにかかっている処理負荷を計算する。この処理負荷がノード定義テーブル７００に設定した上限閾値を超えている場合には、その仮想マシンが属する仮想ノードのスケールアウト、すなわち仮想マシンの増設実施を決定する（ステップ１００１）。具体的な判定フローについては、後述の＜処理（フローチャート）＞において説明する。運用管理装置２２０は、以下の数式（３）を用いて、現在必要な仮想マシンの台数Ｎを計算する。そして、現在の仮想マシン台数との差分から、増設台数を決定する。
【００４７】
【数３】
2015149578.tif 000005
【００４８】
ここで、ＲｏｕｎｄＵｐ関数は、小数点以下を切り上げる関数である。分子は、スケールアウト対象の仮想ノードを構成する全仮想マシンの正規通信量の合計である。分母は、ノード定義テーブル７００に設定された1台の仮想マシンあたりの処理可能通信量７０６と目標負荷７０９の積である。
【００４９】
以上の手順を踏むことで、通信量計測から適切な増設台数を一度に決定し、オートスケーリングの収束時間を短縮できる。
【００５０】
図１０に戻る。運用管理装置２２０は、決定した増設台数分だけ、物理サーバ群２１０に対して、物理リソースを割り当てて仮想マシンの起動命令を出す（ステップ１００２）。ここでは、仮想マシンＶ６（ｖＰ−ＧＷ）２１１ｆ、仮想マシンＶ７（ｖＰ−ＧＷ）２１１ｇの２台を起動している。運用管理装置２２０は、起動した仮想マシンＶ６、Ｖ７（２１１ｆ、２１１ｇ）に対して、仮想ノードとして動作するためのシステムパラメータを設定する。同時に、仮想ノードのスケールアウトに伴って、仮想マシン間で収容するユーザ情報の再配置などの設定を行う（ステップ１００３）。運用管理装置２２０は、図８の仮想マシンテーブル８００にエントリを追加作成し、新たに起動した仮想マシンＶ６、Ｖ７（２１１ｆ、２１１ｇ）に関する情報を格納する（ステップ１００４）。
【００５１】
また、運用管理装置２２０は、投入された入力トラフィック種別定義とノード定義に基づいて、図９の測定キューテーブル９００に新たに起動した仮想マシンＶ６、Ｖ７（２１１ｆ、２１１ｇ）に対する測定キューのエントリを追加作成する（ステップ１００５）。運用管理装置２２０は、追加作成した計測キューテーブル９００のエントリ情報に基づいて、計測装置２０１に対して計測キューを追加する設定を行う（ステップ１００６）。この設定の際には、計測キューテーブル９００のエントリ情報のうち、計測キュー番号９０１、宛先の仮想マシン番号９０２に対応した仮想マシンテーブル８００のネットワーク情報８０３、トラフィック種別番号９０３に対応した入力トラフィック種別定義テーブル６００の定義６０４の情報が含まれる。その後、運用管理装置２２０は、外部ネットワークから受信した仮想ノード宛のパケットが、適切な仮想マシンに転送されるように、ロードバランサ装置２００の転送テーブルを再設定する（ステップ１００７）。
【００５２】
以上が、運用管理装置が、特定の仮想ノードの仮想マシンの増設を判定し、仮想マシンの増設を実施する手順である。本手順に従えば、システム内で複数種別の仮想ノードのオートスケールアウトに対応可能になり、また通信量計測によって適切な増設台数を一度に決定し、オートスケールアウトの収束時間を短縮できる。さらに、空きリソースを適宜、スケールアウトしたい仮想ノードの増設仮想マシンに割り当てることで、予備設備を複数の仮想ノードで共用して高効率な運用が可能になる。
【００５３】
（Ｃ）特定ノードの仮想マシンを減設する処理
図１１を用いて、運用管理装置が、特定の仮想ノードの仮想マシンの減設を判定し、仮想マシンの増設を実施する手順を説明する。ここでは、仮想ノードとしてｖＭＭＥを対象とする。また、仮想マシンＶ３〜Ｖ５（２１１ｃ〜２１１ｅ）が既に起動状態にあり、仮想マシンＶ４、Ｖ５（２１１ｄ、２１１ｅ）を減設することを想定する。
【００５４】
計測装置２０１は、設定された計測キューに対して入力パケット数や入力ビット数の通信量を計測しており、定期的に運用管理装置２２０に対して計測キューごとの通信量を通知する（ステップ５３０〜５３１と同様）。運用管理装置２２０は、上記通知を受けると、図９の計測キューテーブル９００の毎秒入力パケット数９０４と毎秒入力ビット数９０５に通信量を格納する。
【００５５】
次に、運用管理装置２２０は、計測キューの計測通信量に基づいて、仮想マシンごとの正規通信量を評価し、仮想マシンテーブル８００の正規通信量８０４に記録する（ステップ１１００）。このとき、記録する正規通信量は、直前の計測通信量に基づく瞬間値でも良いし、過去の値も考慮に入れた単純移動平均値や指数移動平均値を算出しても良い。そして、運用管理装置２２０は、上記評価した正規通信量と、ノード定義テーブル７００に設定した処理可能通信量７０６から、各仮想マシンにかかっている処理負荷を計算する。この処理負荷がノード定義テーブル７００に設定した下限閾値を下回っている場合には、その仮想マシンが属する仮想ノードのスケールイン、すなわち仮想マシンの減設実施を決定する（ステップ１１０１）。具体的な判定フローについては、後述の＜処理（フローチャート）＞において説明する。運用管理装置２２０は、上述した数式（３）を用いて、現在必要な仮想マシンの台数Ｎを計算する。そして、現在の仮想マシン台数との差分から、減設台数を決定する。
【００５６】
以上の手順を踏むことで、通信量計測から適切な減設台数を一度に決定し、オートスケーリングの収束時間を短縮できる。
【００５７】
図１１に戻る。運用管理装置２２０は、外部ネットワークから受信した仮想ノード宛のパケットが、以降、減設する仮想マシンに転送されないように、ロードバランサ装置２００の転送テーブルを再設定する（ステップ１１０２）。ここでは、仮想マシンＶ４（ｖＭＭＥ）２１１ｄ、仮想マシンＶ５（ｖＭＭＥ）２１１ｅの２台を停止の対象とする。運用管理装置２２０は、仮想ノードのスケールインに伴って、仮想マシン間で収容するユーザ情報の再配置などの設定を行う（ステップ１１０３）。その後、運用管理装置２２０は、決定した減設台数分だけ、物理サーバ群２１０に対して、仮想マシンの停止命令を出して、割り当てていた物理リソースを解放する（ステップ１１０４）。
【００５８】
運用管理装置２２０は、図９の計測キューテーブル９００のエントリ情報に基づいて、計測装置２０１に対して、減設した仮想マシンＶ４、Ｖ５（２１１ｄ、２１１ｅ）に関する計測キューを削除する設定を行う（ステップ１１０５）。この設定の際には、計測キューテーブル９００のエントリ情報のうち、計測キュー番号９０１が含まれる。そして、運用管理装置２２０は、測定キューテーブル９００のエントリから、減設した仮想マシンＶ４、Ｖ５（２１１ｄ、２１１ｅ）に関する計測キューのエントリを削除する（ステップ１１０６）。その後、運用管理装置２２０は、図８の仮想マシンテーブル８００のエントリから、仮想マシンＶ４、Ｖ５（２１１ｄ、２１１ｅ）のエントリを削除する（ステップ１１０７）。
【００５９】
以上が、運用管理装置が、特定の仮想ノードの仮想マシンの減設を判定し、仮想マシンの減設を実施する手順である。本手順に従えば、システム内で複数種別の仮想ノードのオートスケールインに対応可能になり、また通信量計測によって適切な減設台数を一度に決定し、オートスケールインの収束時間を短縮できる。さらに、仮想マシンの減設によってできた空きリソースを適宜、増設したい他の仮想ノードに割り当てることで、予備設備を複数の仮想ノードで共用して高効率な運用が可能になる。
【００６０】
（Ｄ）物理サーバ群の増設を管理者に提案する処理
図１２を用いて、運用管理装置が、物理サーバ群の空きリソース不足を予測して、物理サーバ群の増設を管理者に提案する手順を説明する。
【００６１】
計測装置２０１は、設定された計測キューに対して入力パケット数や入力ビット数の通信量を計測しており、定期的に運用管理装置２２０に対して計測キューごとの通信量を通知する（ステップ５３０〜５３１と同様）。運用管理装置２２０は、上記通知を受けると、図９の計測キューテーブル９００の毎秒入力パケット数９０４と毎秒入力ビット数９０５に通信量を格納する。次に、運用管理装置２２０は、計測キューの計測通信量に基づいて、仮想マシンごとの正規通信量を評価し、仮想マシンテーブル８００の正規通信量８０４に記録する（ステップ１２００）。このとき、記録する正規通信量は、直前の計測通信量に基づく瞬間値でも良いし、過去の値も考慮に入れた単純移動平均値や指数移動平均値を算出しても良い。その後、運用管理装置２２０は、上記記録した正規通信量の値を、後述する正規通信量推移テーブルにも記録する（ステップ１２０１）。
【００６２】
図１３は、正規通信量推移テーブルのデータ構成の一例を示す図である。正規通信量推移テーブル１３００は、ノード番号１３０１、過去のデータ（１３０２、１３０３）、現在のデータ１３０４、将来のデータ（１３０５、１３０６）の項目から構成される。また、過去のデータは、過去のデータ（１５週前）１３０２、過去のデータ（１４週前）１３０３など一定期間ごとに細分化される。将来のデータも、将来のデータ（１週後）１３０５、将来のデータ（１５週後）１３０６など一定期間ごとに細分化される。さらに、各データの項目は、合計通信量（１３０７、１３０９）と必要台数（１３０８、１３１０）の小項目から構成される。ノード番号１３０１は、仮想ノードごとに作成されたエントリの識別番号を表し、図７のノード定義テーブル７００のノード番号７０１と同じである。過去のデータ（１５週前）１３０２とは、現在から１５週前に記録した合計通信量１３０７と必要台数１３０８である。合計通信量１３０７は、その仮想ノードを構成する全仮想マシンの正規通信量の合計値である。必要台数１３０８は、合計通信量１３０７を処理するのに必要な仮想マシン台数であり、上述した式（３）から計算される。このようにして、過去のデータ（１３０２、１３０３）と現在のデータ１３０４を一定期間ごとに記録しておく。図１３では、一例として１週間ごとに記録しているが、１日ごとや１カ月ごとでも良い。また、記録するデータは、記録する期間ごとの間隔が同じであれば良いので、その期間中の特定時間の瞬間値でも良いし、その期間中の平均値でも良い。
【００６３】
一方、将来のデータ（１週後）１３０５とは、現在から１週後を予測した合計通信量１３０９と必要台数１３１０である。合計通信量１３０９は、過去のデータ（１３０２、１３０３）と現在のデータ１３０４の合計通信量から、線形近似、対数近似、多項式近似、累乗近似、指数近似などの各手法に基づいて予測計算される。必要台数１３１０は、合計通信量１３０９を処理するのに必要な仮想マシン台数であり、上述した式（３）から計算される。このようにして、将来のデータ（１３０５、１３０６）を一定期間ごとに予測計算結果を記録する。
【００６４】
図１２に戻る。運用管理装置２２０は、図１３の正規通信量推移テーブル１３００を用いて将来における各仮想ノードの仮想マシンの必要台数を予測する（ステップ１２０２）。将来の必要台数が分かると、図７のノード定義テーブル７００の使用リソース７０４から、システム全体で将来に必要な物理リソース量を計算することができる。運用管理装置２２０は、この将来に必要な物理リソース量が、物理サーバ群が持つ物理リソース量を上回るのであれば、その時期を増設時期として管理者に提案する（ステップ１２０３）。
【００６５】
以上が、運用管理装置が、物理サーバ群の空きリソース不足を予測して、物理サーバ群の増設を管理者に提案する手順である。本手順に従えば、中長期的な視点に立って必要十分な予備設備を持つことができるので、システム内で複数種別の仮想ノードを運用する場合でもオートスケーリングの実施を妨げることがなく、また高効率な運用が可能になる。
【００６６】
＜処理（フローチャート）＞
本実施の形態の運用管理装置は２つの動作から成る。具体的には、仮想ノードを構成する仮想マシンの増減設を判断し、実施する動作と、物理サーバ群の増設時期を判断し、提案する動作である。
以下、図１４と図１５を用いて、運用管理装置２２０の動作の処理フローを説明する。なお、以下では、運用管理装置２２０内の通信量計測部２２２が、図９の計測キューテーブル９００を保持、管理しているとする。また、運用管理装置２２０内の増減設量判定部２２１が、図６の入力トラフィック種別定義テーブル６００、図７のノード定義テーブル７００、図８の仮想マシンテーブル８００、図１３の正規通信量推移テーブル１３００を保持、管理しているとする。
【００６７】
図１４は、運用管理装置が仮想ノードを構成する仮想マシンの増減設を判断し、実施するフローチャートの一例を示す図である。まず、運用管理装置２２０が処理を開始する（ステップ１４００）。運用管理装置２２０内の通信量計測部２２２が、計測装置２０１から計測キューごとの通信量通知を取得し、図９の計測キューテーブル９００に通信量を記録する（ステップ１４０１）。そして、運用管理装置２２０内の増減設量判定部２２１が、図７のノード定義テーブル７００の正規通信量計算式７０５と、上記で通信量計測部２２２が記録した通信量を参照して、各仮想マシンの正規通信量を計算し、図８の仮想マシンテーブル８００に記録する（ステップ１４０２）。次に、増減設量判定部２２１は、ノード定義テーブル７００に定義したノード番号７０１ごとに、以下のループ処理を開始する（ステップ１４０３）。
【００６８】
まず、増減設量判定部２２１は、仮想マシンテーブル８００のノード番号８０２が一致する仮想マシンのうち、正規通信量８０４と、ノード定義テーブル７００で定義した処理可能通信量７０６から、各仮想マシンの処理負荷を計算する。そして、増減設量判定部２２１は、その処理負荷が上限閾値７０７を超える仮想マシンがあるかを調べる（ステップ１４０４）。ステップ１４０４で該当する仮想マシンが存在する場合、増減設量判定部２２１は、その仮想マシンが属する仮想ノードのスケールアウト、すなわち仮想マシンの増設実施を決定する。増減設量判定部２２１は、仮想ノードを構成する全仮想マシンの正規通信量の合計と、ノード定義テーブル７００の処理可能通信量７０６を参照し、上述した式（３）を用いて現在必要な仮想マシンの台数Ｎを計算する。そして、増減設量判定部２２１は、現在の仮想マシン台数との差分から、増設台数を決定する（ステップ１４０５）。増設台数が決定すると、運用管理装置２２０内の増減設実施部２２３が、図１０のステップ１００２〜ステップ１００４に示したように、仮想マシンの増設処理を実施する（ステップ１４０６）。一方、通信量計測部２２２が、図１０のステップ１００５〜ステップ１００６に示したように、計測装置２０１に増設した仮想マシンに関する計測キューを追加設定する（ステップ１４０７）。最後に、増減設実施部２２３が、図１０のステップ１００７に示したように、ロードバランサ装置２００の転送テーブルを再設定し（ステップ１４０８）、次のループ処理に移行する。
【００６９】
ステップ１４０４に戻って、該当する仮想マシンが存在しない場合、増減設量判定部２２１は、ステップ１４０４と同様に各仮想マシンの処理負荷を計算する。そして、増減設量判定部２２１は、仮想ノードを構成する全仮想マシンの処理負荷の平均値が下限閾値７０８を下回っているかを調べる（ステップ１４０９）。ステップ１４０９で下回っている場合、増減設量判定部２２１は、その仮想マシンが属する仮想ノードのスケールイン、すなわち仮想マシンの減設実施を決定する。増減設量判定部２２１は、仮想ノードを構成する全仮想マシンの正規通信量の合計と、ノード定義テーブル７００の処理可能通信量７０６を参照し、上述した式（３）を用いて現在必要な仮想マシンの台数Ｎを計算する。そして、増減設量判定部２２１は、現在の仮想マシン台数との差分から、減設台数を決定する（ステップ１４１０）。減設台数が決定すると、増減設実施部２２３が、図１１のステップ１１０２に示したように、ロードバランサ装置２００の転送テーブルを再設定する（ステップ１４１１）。さらに、増減設実施部２２３は、図１１のステップ１１０３〜ステップ１１０４に示したように、仮想マシンの減設処理を実施する（ステップ１４１２）。最後に、通信量計測部２２２が、図１１のステップ１１０５〜ステップ１１０６に示したように、計測装置２０１に減設した仮想マシンに関する計測キューを削除設定し（ステップ１４１３）、次のループ処理に移行する。
【００７０】
ステップ１４０９に戻って、仮想ノードを構成する全仮想マシンの処理負荷の平均値が下限閾値７０８を下回っていない場合、次のループ処理に移行する。以上のループ処理が、ノード定義テーブル７００に定義したノード番号７０１の全てに対して完了すると（ステップ１４１４）、運用管理装置２２０は一連の処理を終了する（ステップ１４１５）。その後、定期的にステップ１４００から始まる処理を再び開始する。
【００７１】
以上の手順を踏むことで、システム内で複数種別の仮想ノードのオートスケーリングに対応可能になり、また通信量計測によって適切な増減設台数を一度に決定し、オートスケーリングの収束時間を短縮できる。
【００７２】
図１５は、運用管理装置が物理サーバ群の増設時期を判断し、提案するフローチャートの一例を示す図である。まず、運用管理装置２２０が処理を開始する（ステップ１５００）。運用管理装置２２０内の通信量計測部２２２が、計測装置２０１から計測キューごとの通信量通知を取得し、図９の計測キューテーブル９００に通信量を記録する（ステップ１５０１）。そして、運用管理装置２２０内の増減設量判定部２２１が、図７のノード定義テーブル７００の正規通信量計算式７０５と、上記で通信計測部２２２が記録した通信量を参照して、各仮想マシンの正規通信量を計算し、図８の仮想マシンテーブル８００に記録する（ステップ１５０２）。また、増減設量判定部２２１は、上記記録した正規通信量の値を、図１３の正規通信量推移テーブル１３００にも記録する。
【００７３】
次に、増減設量判定部２２１は、正規通信量推移テーブル１３００を用いて、ノード番号１３０１ごとに将来のデータ（１３０５〜１３０６）合計通信量を評価して、各仮想ノードの仮想マシンの必要台数を予測する（ステップ１５０３）。増減設量判定部２２１は、将来の必要台数が分かると、図７のノード定義テーブル７００の使用リソース７０４から、システム全体で将来に必要な物理リソース量を計算することができる。増減設量判定部２２１は、指定期間内（例えば１５週以内）に、将来に必要な物理リソース量が、物理サーバ群が持つ物理リソース量を上回って、リソース不足が発生するかを調べる（ステップ１５０４）。ステップ１５０４で将来リソース不足が発生する場合、増減設量判定部２２１は、その時期を増設時期として管理者に提案する（ステップ１５０５）。以上をもって、運用管理装置２２０は一連の処理を終了する（ステップ１５０６）。その後、定期的にステップ１５００から始まる処理を再び開始する。
【００７４】
以上の手順を踏むことで、中長期的な視点に立って必要十分な予備設備を持つことができるので、システム内で複数種別の仮想ノードを運用する場合でもオートスケーリングの実施を妨げることがなく、また高効率な運用が可能になる。
【実施例２】
【００７５】
第２の実施例として、パケット通信システムの場合の運用管理装置について、そのシステム構成を説明する。本実施例は、実施例１の図２で示したロードバランサ装置２００と計測装置２０１が一体化した構成である。本実施形態を適用する通信システムの構成例は、実施例１の図１と同様であるため、説明を省略する。
【００７６】
図１６は、本実施形態のシステム構成の一例である。本システム構成は、図１で示したデータセンタ１０８内の構成に該当する。本システムは、物理サーバ群２１０、ロードバランサ装置２００、運用管理装置２２０から構成される。各装置は、スイッチ、またはルータによって接続される。ロードバランサ装置２００は、外部ネットワークから受信する呼制御信号やユーザデータのパケットを、適切な仮想マシンに振り分けるロードバランサ部１６００と、仮想マシンＶ１〜Ｖ５（２１１ａ〜２１１ｅ）に入力するトラフィックの種別を識別し、それぞれのトラフィック種別の統計情報を計測する計測部１６０１を備える。その他の装置については、実施例１の図２と同様であるため、説明を省略する。また、本実施の形態の運用管理装置２２０／物理サーバ群２１０と、ロードバランサ装置２００のハードウェア構成は、実施例１で示した図３と図４と同様であるため、説明を省略する。
【００７７】
以上の構成を採ることで、ロードバランサ装置２００と計測装置２０１を一体化して、必要な装置台数を削減することができる。
【００７８】
処理（シーケンス、フローチャート）については、実施例１の計測装置２０１を本実施例の計測部１６０１と読み替えれば良いので、ここでの説明を省略する。
【実施例３】
【００７９】
第３の実施例として、パケット通信システムの場合の運用管理装置について、そのシステム構成を説明する。本実施例は、実施例１の図２で示した計測装置２０１が持つ機能が、仮想マシン側に吸収された構成である。本実施形態を適用する通信システムの構成例は、実施例１の図１と同様であるため、説明を省略する。
【００８０】
図１７は、本実施形態のシステム構成の一例である。本システム構成は、図１で示したデータセンタ１０８内の構成に該当する。本システムは、物理サーバ群２１０、ロードバランサ装置２００、運用管理装置２２０から構成される。各装置は、スイッチ、またはルータによって接続される。物理サーバ群２１０は、仮想ノードを構成する仮想マシン群を備える。図２では、仮想マシンＶ１〜Ｖ５（２１１ａ〜２１１ｅ）が動作しており、それぞれで仮想ノードソフトウェアであるｖＰ−ＧＷ２１２ａ、ｖＳ−ＧＷ２１２ｂ、ｖＭＭＥ（２１２ｃ〜２１２ｅ）を実行している。また、仮想マシンＶ１〜Ｖ５（２１１ａ〜２１１ｅ）は、トラフィック種別の統計情報を計測する計測部（１７００ａ〜１７００ｅ）を備える。計測部（１７００ａ〜１７００ｅ）は、同じ仮想マシン内で動作する仮想ノードソフトウェアから、トラフィック種別ごとの通信量を取得して、運用管理装置に通知する。運用管理装置２２０は、実施例１と同様に、増減設量判定部２２１、通信量計測部２２２、増減設実施部２２３を備える。通信量計測部２２２は、各仮想マシンの計測部（１７００ａ〜１７００ｅ）に対して計測したいトラフィック種別の計測キューを設定し、そのキューごとの通信量を取得する。
【００８１】
その他の装置、および機能部については、実施例１の図２と同様であるため、説明を省略する。また、本実施の形態の運用管理装置２２０／物理サーバ群２１０と、ロードバランサ装置２００のハードウェア構成は、実施例１で示した図３と図４と同様であるため、説明を省略する。
【００８２】
以上の構成を採ることで、計測装置２０１が持つ機能を仮想マシン側に吸収し、必要な装置台数を削減することができる。
【００８３】
処理（シーケンス、フローチャート）については、実施例１の計測装置２０１を本実施例の計測部の集合（１７００ａ〜１７００ｅ）と読み替えれば良いので、ここでの説明を省略する。
【符号の説明】
【００８４】
２００：ロードバランサ装置、２０１：計測装置、２１０：物理サーバ群、２１１ａ：仮想マシンＶ１、２１１ｂ：仮想マシンＶ２、２１１ｃ：仮想マシンＶ３、２１１ｄ：仮想マシンＶ４、２１１ｅ：仮想マシンＶ５、２１１ｆ：仮想マシンＶ６、２１１ｇ：仮想マシンＶ７、２２０：運用管理装置、２２１：増減設量判定部、２２２：通信量計測部、２２３：増減設実施部、２３０：管理者、６００：入力トラフィック種別定義テーブル、７００：ノード定義テーブル、８００：仮想マシンテーブル、９００：測定キューテーブル、１３００：正規通信量推移テーブル
【図１】
2015149578.tif 000006
【図２】
2015149578.tif 000007
【図３】
2015149578.tif 000008
【図４】
2015149578.tif 000009
【図５】
2015149578.tif 000010
【図６】
2015149578.tif 000011
【図７】
2015149578.tif 000012
【図８】
2015149578.tif 000013
【図９】
2015149578.tif 000014
【図１０】
2015149578.tif 000015
【図１１】
2015149578.tif 000016
【図１２】
2015149578.tif 000017
【図１３】
2015149578.tif 000018
【図１４】
2015149578.tif 000019
【図１５】
2015149578.tif 000020
【図１６】
2015149578.tif 000021
【図１７】
2015149578.tif 000022