(57)【特許請求の範囲】
【請求項１】
複数の地域にそれぞれ設置された物理マシンと、該物理マシンのうちのいずれかで動作している仮想マシンと、該仮想マシンに対してアクセスするユーザ端末と、前記物理マシンと前記ユーザ端末とを接続するネットワーク機器と、前記仮想マシンを前記物理マシンに配置する配置制御装置とを有するネットワークシステムであって、
前記配置制御装置は、
前記仮想マシンの移動前に各地域におけるユーザ端末が前記仮想マシンに対して要求を行ってから該要求に対する応答を受信するまでにかかる時間である移動前応答時間に関する情報と、前記仮想マシンを現在動作している物理マシンから他の物理マシンへ移動した場合に該移動後の仮想マシンに対して前記各地域におけるユーザ端末が要求を行ってから該要求に対する応答を受信するまでにかかる移動後応答時間に関する情報とを前記ネットワーク機器から収集する収集部と、
前記収集部によって収集された各ユーザ端末の移動前応答時間同士の差分をそれぞれ算出し、該算出された移動前応答時間同士の差分のうち最も値が大きい移動前最大差分値を抽出するとともに、前記収集部によって収集された各ユーザ端末の移動後応答時間同士の差分を算出し、該算出された移動後応答時間同士の差分のうち最も値が大きい移動後最大差分値を抽出する算出部と、
前記算出部によって抽出された前記移動前最大差分値よりも前記移動後最大差分値が小さくなる前記仮想マシンの移動先物理マシンを選択し、該移動先物理マシンに仮想マシンを配置する配置部と
を有することを特徴とするネットワークシステム。
【請求項２】
複数の地域にそれぞれ設置された物理マシンと、該物理マシンのうちのいずれかで動作している仮想マシンと、該仮想マシンに対してアクセスするユーザ端末と、前記物理マシンと前記ユーザ端末とを接続するネットワーク機器と、前記仮想マシンを前記物理マシンに配置する配置制御装置とを有するネットワークシステムであって、
前記配置制御装置は、
前記仮想マシンの移動前に各地域におけるユーザ端末が前記仮想マシンに対して要求を行ってから該要求に対する応答を受信するまでにかかる時間である移動前応答時間に関する情報と、前記仮想マシンを現在動作している物理マシンから他の物理マシンへ移動した場合に該移動後の仮想マシンに対して前記各地域におけるユーザ端末が要求を行ってから該要求に対する応答を受信するまでにかかる移動後応答時間に関する情報とを前記ネットワーク機器から収集する収集部と、
前記複数の地域にそれぞれ設置された物理マシンのアクセスに関する情報を観測し、該アクセスに関する情報から各地域におけるユーザ数を計測する観測部と、
前記収集部によって収集された各ユーザ端末の移動前応答時間に前記観測部によって計測されたユーザ数を乗じた値である第一の値を算出し、また、前記収集部によって収集された各ユーザ端末の移動後応答時間に前記観測部によって計測されたユーザ数を乗じた値である第二の値を算出する算出部と、
前記算出部によって算出された前記第一の値よりも前記第二の値が小さくなる前記仮想マシンの移動先物理マシンを選択し、該移動先物理マシンに仮想マシンを配置する配置部と
を有することを特徴とするネットワークシステム。
【請求項３】
仮想マシンを物理マシンに配置する配置制御装置で実行される配置制御方法であって、
前記仮想マシンの移動前に各地域におけるユーザ端末が前記仮想マシンに対して要求を行ってから該要求に対する応答を受信するまでにかかる時間である移動前応答時間に関する情報と、前記仮想マシンを現在動作している物理マシンから他の物理マシンへ移動した場合に該移動後の仮想マシンに対して前記各地域におけるユーザ端末が要求を行ってから該要求に対する応答を受信するまでにかかる移動後応答時間に関する情報とをネットワーク機器から収集する収集工程と、
前記収集工程によって収集された各ユーザ端末の移動前応答時間同士の差分をそれぞれ算出し、該算出された移動前応答時間同士の差分のうち最も値が大きい移動前最大差分値を抽出するとともに、前記収集工程によって収集された各ユーザ端末の移動後応答時間同士の差分を算出し、該算出された移動後応答時間同士の差分のうち最も値が大きい移動後最大差分値を抽出する算出工程と、
前記算出工程によって抽出された前記移動前最大差分値よりも前記移動後最大差分値が小さくなる前記仮想マシンの移動先物理マシンを選択し、該移動先物理マシンに仮想マシンを配置する配置工程と
を含んだことを特徴とする配置制御方法。
【請求項４】
仮想マシンを物理マシンに配置する配置制御装置で実行される配置制御方法であって、
前記仮想マシンの移動前に各地域におけるユーザ端末が前記仮想マシンに対して要求を行ってから該要求に対する応答を受信するまでにかかる時間である移動前応答時間に関する情報と、前記仮想マシンを現在動作している物理マシンから他の物理マシンへ移動した場合に該移動後の仮想マシンに対して前記各地域におけるユーザ端末が要求を行ってから該要求に対する応答を受信するまでにかかる移動後応答時間に関する情報とをネットワーク機器から収集する収集工程と、
複数の地域にそれぞれ設置された物理マシンのアクセスに関する情報を観測し、該アクセスに関する情報から各地域におけるユーザ数を計測する観測工程と、
前記収集工程によって収集された各ユーザ端末の移動前応答時間に前記観測工程によって計測されたユーザ数を乗じた値である第一の値を算出し、また、前記収集工程によって収集された各ユーザ端末の移動後応答時間に前記観測工程によって計測されたユーザ数を乗じた値である第二の値を算出する算出工程と、
前記算出工程によって算出された前記第一の値よりも前記第二の値が小さくなる前記仮想マシンの移動先物理マシンを選択し、該移動先物理マシンに仮想マシンを配置する配置工程と
を含んだことを特徴とする配置制御方法。
【発明の詳細な説明】
【技術分野】
【０００１】
本発明は、ネットワークシステムおよび配置制御方法に関する。
【背景技術】
【０００２】
従来、物理マシン（Physical  Machine）上に仮想マシン（Virtual  Machine）を動作させる仮想化技術が知られている。例えば、複数の利用者がネットワーク上にある資源を共有するクラウドコンピューティング（cloud  computing）では、ネットワーク上のデータセンタ内の物理マシン（物理サーバ）に仮想マシン（仮想サーバ）を動作させる仮想化技術が適用される場合がある。
【０００３】
このような仮想マシンを動作させる物理サーバと仮想マシンにアクセスするユーザ端末との距離は、ＩＴシステムのレスポンスタイムに影響を与えるため、複数の拠点に物理サーバを配置し、リクエスト先を分散させるような設計が利用されている。また、複数の物理サーバに同一コンテンツを重複分散配置し、エンドユーザをネットワーク的に近いところに誘導する技術が知られている。
【先行技術文献】
【非特許文献】
【０００４】
【非特許文献１】“アカマイサーバ設置の効果について”、［online］、［平成２４年３月２１日検索］、インターネット＜http://enog.jp/wp-content/uploads/2011/06/20110624-ENOG.pdf＞
【非特許文献２】小原遼平、横井俊宏、菅原真司、山岡克式「ファイルサイズを考慮した人気度の異なるコンテンツの複製配置法」、信学技報ＩＮ２０１０−２０９
【非特許文献３】“マネージドGSLBサービスで、データセンター間負荷分散を”、［online］、［平成２４年２月２１日検索］、インターネット＜https://ascii.jp/elem/000/000/551/551559/＞
【非特許文献４】“サーバ負荷分散〜仕組み、サイトの構築事例、技術動向〜”、［online］、［平成２４年２月２１日検索］、インターネット＜http://www.nic.ad.jp/ja/materials/iw/2005/proceedings/T5.pdf＞
【発明の概要】
【発明が解決しようとする課題】
【０００５】
しかしながら、上記した技術では、仮想マシンを物理マシンに適切に配置できなくなる場合があるという課題があった。例えば、当初、物理マシンが設置されている地域などを考慮して仮想マシンを配置した場合であっても、時間とともにエンドユーザの数が増減したり利用頻度が変化したりした場合には、各ユーザ端末のレスポンスタイムが悪化し、当初の仮想マシンの配置が適切でなくなる場合がある。
【０００６】
そこで、この発明は、上述した従来技術の課題を解決するためになされたものであり、各ユーザ端末のレスポンスタイムを自動的に改善し、仮想マシンを物理マシンに適切に配置できるようにすることを目的とする。
【課題を解決するための手段】
【０００７】
上述した課題を解決し、目的を達成するため、本願に開示するネットワークシステムは、複数の地域にそれぞれ設置された物理マシンと、該物理マシンのうちのいずれかで動作している仮想マシンと、該仮想マシンに対してアクセスするユーザ端末と、前記物理マシンと前記ユーザ端末とを接続するネットワーク機器と、前記仮想マシンを前記物理マシンに配置する配置制御装置とを有するネットワークシステムであって、前記配置制御装置は、前記仮想マシンの移動前に各地域におけるユーザ端末が前記仮想マシンに対して要求を行ってから該要求に対する応答を受信するまでにかかる時間である移動前応答時間に関する情報と、前記仮想マシンを現在動作している物理マシンから他の物理マシンへ移動した場合に該移動後の仮想マシンに対して前記各地域におけるユーザ端末が要求を行ってから該要求に対する応答を受信するまでにかかる移動後応答時間に関する情報とを前記ネットワーク機器から収集する収集部と、前記収集部によって収集された移動前応答時間に関する情報および移動後応答時間に関する情報を用いて、前記仮想マシンの移動先物理マシンを選択し、該移動先物理マシンに仮想マシンを配置する配置部とを有することを特徴とする。
【０００８】
上述した課題を解決し、目的を達成するため、本願に開示する配置制御方法は、仮想マシンを物理マシンに配置する配置制御装置で実行される配置制御方法であって、前記仮想マシンの移動前に各地域におけるユーザ端末が前記仮想マシンに対して要求を行ってから該要求に対する応答を受信するまでにかかる時間である移動前応答時間に関する情報と、前記仮想マシンを現在動作している物理マシンから他の物理マシンへ移動した場合に該移動後の仮想マシンに対して前記各地域におけるユーザ端末が要求を行ってから該要求に対する応答を受信するまでにかかる移動後応答時間に関する情報とをネットワーク機器から収集する収集工程と、前記収集工程によって収集された移動前応答時間に関する情報および移動後応答時間に関する情報を用いて、前記仮想マシンの移動先物理マシンを選択し、該移動先物理マシンに仮想マシンを配置する配置工程とを含んだことを特徴とする。
【発明の効果】
【０００９】
本願に開示するネットワークシステムおよび配置制御方法は、各ユーザ端末のレスポンスタイムを自動的に改善し、仮想マシンを物理マシンに適切に配置できるようにするという効果を奏する。
【図面の簡単な説明】
【００１０】
【図１】図１は、第一の実施の形態に係る通信ネットワークシステム１００の構成を示すブロック図である。
【図２】図２は、第一の実施の形態に係る最適配置装置の構成を示すブロック図である。
【図３】図３は、ユーザ情報記憶部に記憶される情報の一例を示す図である。
【図４】図４は、遅延情報記憶部に記憶される情報の一例を示す図である。
【図５】図５は、自動的に仮想サーバを再配置する処理を説明する図である。
【図６】図６は、第一の実施の形態に係る最適配置装置の処理手順を説明するためのフローチャートである。
【図７】図７は、配置プログラムを実行するコンピュータを示す図である。
【発明を実施するための形態】
【００１１】
以下に添付図面を参照して、この発明に係るネットワークシステムおよび配置制御方法の実施形態を説明する。なお、このネットワークシステムおよび配置制御方法の実施形態の記載によりこの発明が限定されるものではない。
【００１２】
（第１の実施形態）
以下の実施形態では、第１の実施形態に係る通信システム、配置制御装置の構成および処理の流れを順に説明し、最後に第１の実施形態による効果を説明する。
【００１３】
［通信ネットワークシステムの構成］
最初に、図１を用いて、通信ネットワークシステム１００の構成を説明する。図１は、第１の実施形態に係る通信ネットワークシステムを説明するための図である。図１に示すように、この通信ネットワークシステム１００には、配置制御装置１０と、複数の地域Ａ〜Ｄにそれぞれ設置されるデータセンタ２０Ａ〜２０Ｄと、ルータなどのネットワーク機器を含むネットワーク３０とを有する。また、各データセンタ２０Ａ〜２０Ｄは、ネットワーク３０を介してそれぞれ接続されている。なお、図１の例では、４つのデータセンタ２０Ａ〜２０Ｄ、４つの地域Ａ〜Ｄを例示しているが、これに限定されるものではなく、データセンタおよび地域が３つ以下であってもよいし、５つ以上であってもよい。
【００１４】
図１に例示した通信ネットワークシステム１００は、各データセンタ２０Ａ〜２０Ｄ上で仮想サーバを動作させる仮想化技術が適用されているものとする。仮想化技術では、物理的なハードウェアを論理的に分割し、分割したハードウェア毎にＯＳ（Operating  System）を動作させることで、１台の物理サーバをあたかも複数台の物理サーバであるかのように動作させる。なお、以下では、データセンタ２０Ａ〜２０Ｄについて、特に区別することなく説明する場合には、「データセンタ２０」と記載して説明する。
【００１５】
配置制御装置１０は、各データセンタ２０Ａ〜２０Ｄおよびネットワーク３０内のネットワーク機器（例えば、ルータ等）と接続されている。配置制御装置１０は、各データセンタ２０Ａ〜２０Ｄからアクセスログ等を収集する。また、配置制御装置１０は、ネットワーク３０内のネットワーク機器から地域間の遅延情報を収集し、各地域におけるレスポンスタイムを算出する。そして、各地域のレスポンスタイムの最大差が小さくなるように、仮想サーバ群の移動先を選択し、選択した移動先に仮想サーバを移動するように制御する。なお、配置制御装置１０の構成については、後に図２を用いて詳述する。
【００１６】
各データセンタ２０Ａ〜２０Ｄは、地域Ａ〜地域Ｄにおいて地理的に分散するクラウドデータセンタであり、物理サーバを有する。この物理サーバは、テナントに利用させるための仮想サーバが稼動している。例えば、各データセンタ２０は、これらの仮想サーバをテナントである企業に貸し出すサービスを提供する。なお、図１に例示するように、地域Ａ〜地域Ｄには、ユーザグループＡ〜Ｄがそれぞれの地域に属しており、ユーザグループの各ユーザ端末がネットワーク３０を介してデータセンタ２０Ａ〜２０Ｄにアクセスする。
【００１７】
［配置制御装置の構成］
次に、図２を用いて、図１に示した配置制御装置１０の構成を説明する。図２は、第１の実施形態に係る配置制御装置１０の構成を示すブロック図である。図２に示すように、この配置制御装置１０は、通信処理部１１、制御部１２、記憶部１３を有し、図示しないデータセンタ２０やネットワーク３０内のネットワーク機器と接続される。以下にこれらの各部の処理を説明する。
【００１８】
通信処理部１１は、接続されるデータセンタ２０やネットワーク３０内のネットワーク機器との間でやり取りする各種情報に関する通信を制御する。例えば、通信処理部１１は、データセンタ２０からアクセスログ等を受信し、ネットワーク機器から遅延に関する情報を受信する。
【００１９】
記憶部１３は、制御部１２による各種処理に必要なデータおよびプログラムを格納するが、特に本発明に密接に関連するものとしては、アクセス情報記憶部１３ａおよび遅延情報記憶部１３ｂを有する。
【００２０】
アクセス情報記憶部１３ａは、ユーザ端末から仮想サーバに対するアクセスに関する情報を記憶する。具体的には、アクセス情報記憶部１３ａは、後述する観測部１２ａによって収集されたアクセスログを基に集計された、エンドユーザの地域分布、ユニークユーザ数、およびアクセス頻度等を記憶する。例えば、アクセス情報記憶部１３ａは、図３に例示するように、地域の名称を示す「地域名」と、各地域におけるユニークユーザ数を示す「ユーザ数」と、各地域における所定時間内におけるアクセス頻度を示す「アクセス数」とを対応付けて記憶する。
【００２１】
遅延情報記憶部１３ｂは、各地域について、ユーザ端末がアクセス先のデータセンタ２０へアクセスしてからアクセスに対するデータセンタの応答をユーザ端末が受信するまでのレスポンスタイムを記憶する。具体的には、遅延情報記憶部１３ｂは、後述する収集部１２ｂによって収集された地域間の遅延に関する情報を基に集計された、レスポンスタイムを記憶する。例えば、遅延情報記憶部１３ｂは、図４に例示するように、アクセスを行ったユーザの名前を示す「ユーザ名」と、ユーザが属する地域の名称を示す「地域名」と、アクセス先のデータセンタの名称を示す「アクセス先データセンタ」と、アクセスしてから応答を受信するまでに要した時間を示す「レスポンスタイム」とを対応付けて記憶する。
【００２２】
制御部１２は、各種の処理手順などを規定したプログラムおよび所要データを格納するための内部メモリを有し、これらによって種々の処理を実行するが、特に本発明に密接に関連するものとしては、観測部１２ａ、収集部１２ｂ、算出部１２ｃ、および配置制御部１２ｄを有する。
【００２３】
観測部１２ａは、複数の地域にそれぞれ設置されたデータセンタ２０の物理サーバのアクセスに関する情報を観測し、該アクセスに関する情報から各地域におけるユーザ数およびアクセス数を計測する。具体的には、観測部１２ａは、各データセンタ２０からアクセスログを収集し、アクセスログから各地域におけるユーザ数およびアクセス数を計測し、計測したユーザ数およびアクセス数をアクセス情報記憶部１３ａに記憶する。
【００２４】
収集部１２ｂは、仮想サーバの移動前に各地域におけるユーザ端末が仮想サーバに対して要求を行ってから該要求に対する応答を受信するまでにかかる遅延である移動前遅延に関する情報と、仮想サーバを現在動作しているデータセンタ２０から他のデータセンタ２０へ移動した場合に該移動後の仮想サーバに対して各地域におけるユーザ端末が要求を行ってから該要求に対する応答を受信するまでにかかる遅延である移動後遅延に関する情報とをネットワーク機器から収集する。
【００２５】
具体的には、収集部１２ｂは、各地域におけるユーザ端末が仮想サーバに対して要求を送信してから該要求に対する応答を受信するまでにかかる時間のうち、ネットワークを通じて要求および応答が送受信されることによる伝播遅延（Propagation  Delay）を、ルータなどのネットワーク機器から収集する。ここで、伝播遅延は、距離に依存するため、ユーザ端末とアクセス対象の仮想サーバが収容されたデータセンタとの距離が遠いほど、応答時間（レスポンスタイム）が長くなる。
【００２６】
そして、収集部１２ｂは、レスポンスタイムを算出して、遅延情報記憶部１３ｂに格納する。ここで、レスポンスタイムとは、「レスポンスタイムＲｉ＝Ｐｉ＋Ｔｉ＋Ｑｉ＋Ｐｒｉ＋Ｓｉ」により求められる。ここで、「Ｐｉ」とは、伝播遅延（Propagation  Delay）のことであり、ユーザ端末と仮想サーバを収容するデータセンタ２０との距離に比例する遅延である。つまり、仮想サーバが移動して、ユーザ端末とアクセス対象の仮想サーバが収容されたデータセンタとの距離が遠くなると、「Ｐｉ」の値が大きくなり、一方、ユーザ端末とアクセス対象の仮想サーバが収容されたデータセンタとの距離が短くなると、「Ｐｉ」の値が小さくなる。また、エンドユーザの所属する地域（ｉで示される）によっても、「Ｐｉ」の値が変化する。
【００２７】
また、「Ｔｉ」とは、伝送遅延（Transport  Delay）のことを示す。また、「Ｑｉ」とは、キューイング遅延（Queuing  Delay）のことを示す。また、「Ｐｉ」とは、プロトコル遅延（Protocol  Delay）のことを示す。また、「Ｓｉ」とは、サーバ遅延（Server  Delay）のことを示す。なお、伝送遅延、キューイング遅延、プロトコル遅延およびサーバ遅延に関する情報は、予め収集部１２ｂに予め設定されているものとする。また、伝送遅延、プロトコル遅延およびサーバ遅延は、場所に依存しない遅延であり、キューイング遅延は、無視出来るほど小さい遅延である。このため、本実施形態では、「レスポンスタイムＲｉ＝伝播遅延Ｐｉ」、すなわち、ネットワーク機器から収集した伝播遅延を応答時間とするようにしてもよい。
【００２８】
算出部１２ｃは、各地域間における仮想サーバ移動前と移動後のレスポンスタイムの最大差をそれぞれ算出する。具体的には、算出部１２ｃは、エンドユーザの所属する地域の全ての組み合わせについて（ｉ、ｊで示される）、収集部１２ｂによって収集された各ユーザ端末のレスポンスタイム同士の差分（｜Ｒｉ−Ｒｊ｜，ｉ≠ｊ）をそれぞれ算出し、該算出された移動前のレスポンスタイム同士の差分のうち最も値が大きい移動前最大差分値（ｍａｘ｜Ｒｉ−Ｒｊ｜，ｉ≠ｊ）を抽出するとともに、エンドユーザの所属する地域の全ての組み合わせについて、収集部１２ｂによって収集された仮想サーバ移動後のレスポンスタイム同士の差分（｜Ｒ（“〜”付き）ｉ−Ｒ（“〜”付き）ｊ｜，ｉ≠ｊ）を算出し、該算出された移動後レスポンスタイム同士の差分のうち最も値が大きい移動後最大差分値（ｍａｘ｜Ｒ（“〜”付き）ｉ−Ｒ（“〜”付き）ｊ｜，ｉ≠ｊ）を抽出する。
【００２９】
また、算出部１２ｃは、各地域間における仮想サーバ移動前と移動後のレスポンスタイムの最大差をそれぞれ算出する処理に代えて、各地域の仮想サーバ移動前と移動後のレスポンスタイムにそれぞれ地域に属するユーザ数を乗算するようにしてもよい。具体的には、算出部１２ｃは、各ユーザ端末について仮想サーバ移動前応答時間にユーザ数を乗じた値である第一の値をそれぞれ算出し合計した値を算出する。また、算出部１２ｃは、各ユーザ端末について仮想サーバ移動後のレスポンスタイムにユーザ数を乗じた値である第二の値をそれぞれ算出し合計した値を算出する。なお、ユーザ数に代えてアクセス数を、仮想サーバ移動前のレスポンスタイムおよび仮想サーバ移動後のレスポンスタイムに乗じてもよい。
【００３０】
配置制御部１２ｄは、移動前レスポンスタイムおよび移動後レスポンスタイムを用いて、仮想サーバの移動先データセンタ２０を選択し、該移動先データセンタ２０に仮想サーバを配置する。具体的には、配置制御部１２ｄは、算出部１２ｃによって抽出された移動前最大差分値よりも移動後最大差分値が小さくなる仮想サーバの移動先データセンタを選択し、クラウドデータセンタに具備されるライブマイグレーション機能を利用して、各データセンタ２０に仮想サーバを指示し、移動先物理サーバに仮想サーバを配置する。
【００３１】
例えば、配置制御部１２ｄは、下記（１）式を用いて、各地域のレスポンスタイムの最大差を小さくする仮想サーバの配置を選択する。すなわち、配置制御部１２ｄは、仮想サーバの全ての移動先データセンタについて、下記（１）式に値を代入し、移動前最大差分値（ｍａｘ｜Ｒｉ−Ｒｊ｜，ｉ≠ｊ）から移動後最大差分値（ｍａｘ｜Ｒ（“〜”付き）ｉ−Ｒ（“〜”付き）ｊ｜，ｉ≠ｊ）を引いた値が最も大きくなる移動先データセンタを選択し、該移動先物理サーバに仮想サーバを配置する。
【００３２】
【数１】
0005694214.tif 000002
【００３３】
また、算出部１２ｃが、各地域間における仮想サーバ移動前と移動後のレスポンスタイムの最大さをそれぞれ算出する処理に代えて、各地域の仮想サーバ移動前と移動後のレスポンスタイムにそれぞれ地域に属するユーザ数を乗算した場合には、配置制御部１２ｄは、下記（２）式を用いて、多人数のレスポンスタイムを優先する仮想サーバの配置を選択する。すなわち、仮想サーバの全ての移動先データセンタについて、下記（２）式に値を代入して値を求め、値が最も大きくなる移動先データセンタを選択し、該移動先物理サーバに仮想サーバを配置する。
【００３４】
【数２】
0005694214.tif 000003
【００３５】
このように、配置制御装置１０は、仮想サーバを配置するデータセンタ２０を自動的に決定し、クラウドデータセンタに具備されるライブマイグレーション機能を利用して、仮想サーバを自動的に再配置するので、エンドユーザの属する地域によって異なる不公平なレスポンスタイムを公平になるように、仮想サーバの配置場所を選択することができる。
【００３６】
ここで、図５の例を用いて、自動的に仮想サーバを再配置する処理を行うことによる効果ついて説明する。図５は、自動的に仮想サーバを再配置する処理を説明する図である。図５の左側に示すように、仮想サーバ移動前においては、地域１におけるＤＣ１に仮想サーバが４台収容されているものとする。この例では、地域１に属するユーザ端末からＤＣ１の仮想サーバにアクセスした際に、地域１に属するユーザ端末とＤＣ１との距離が短いため、レスポンスタイムが短くなるが、地域２〜５に属するユーザ端末からＤＣ１の仮想サーバにアクセスした際に、地域２〜５に属するユーザ端末とＤＣ１との距離が長いため、レスポンスタイムが長くなる。
【００３７】
このような仮想サーバに対して、配置制御装置１０は、図５の右側に示すように、自動的に仮想サーバを再配置する処理を行った結果、地域１のＤＣ１から地域２のＤＣ２へ仮想サーバ２台を移動したものとする。これにより、地域２、３に属するユーザ端末が距離の近いＤＣ２の仮想サーバへアクセスできることとなり、レスポンスタイムを短くすることができる。これにより配置制御装置１０は、エンドユーザの属する地域によって異なる不公平なレスポンスタイムを公平になるように、仮想サーバの配置場所を選択することができる。
【００３８】
［配置制御装置による処理］
次に、図６を用いて、第１の実施形態に係る配置制御装置１０による処理を説明する。図６は、第１の実施形態に係る配置制御装置１０の処理動作を示すフローチャートである。
【００３９】
図６に示すように、配置制御装置１０は、最適配置制御処理の開始指示を受け付けると（ステップＳ１０１肯定）、各地域間における遅延に関する情報を収集する（ステップＳ１０２）。具体的には、配置制御装置１０は、仮想サーバの移動前に各地域におけるユーザ端末が仮想サーバに対して要求を行ってから該要求に対する応答を受信するまでにかかる時間のうち、ネットワークを通じて要求および応答が送受信されることによる伝播遅延と、仮想サーバを現在動作している物理サーバから他の物理サーバへ移動した場合に該移動後の仮想サーバに対して各地域におけるユーザ端末が要求を行ってから該要求に対する応答を受信するまでにかかる時間のうち、ネットワークを通じて要求および応答が送受信されることによる伝播遅延とをネットワーク機器から収集する。
【００４０】
そして、配置制御装置１０は、各地域のレスポンスタイムの最大差を小さくする配置を選択する（ステップＳ１０３）。具体的には、配置制御装置１０は、レスポンスタイムを算出し、各地域間における仮想サーバ移動前と移動後のレスポンスタイムの最大差をそれぞれ算出する。そして、配置制御装置１０は、エンドユーザの所属する地域の全ての組み合わせについて、各ユーザ端末のレスポンスタイム同士の差分をそれぞれ算出し、該算出された移動前のレスポンスタイム同士の差分のうち最も値が大きい移動前最大差分値を抽出するとともに、仮想サーバ移動後のレスポンスタイム同士の差分を算出し、該算出された移動後レスポンスタイム同士の差分のうち最も値が大きい移動後最大差分値を抽出する。そして、配置制御装置１０は、仮想サーバの全ての移動先データセンタについて、上記（１）式に値を代入し、移動前最大差分値から移動後最大差分値を引いた値が最も大きくなる移動先データセンタを選択する。
【００４１】
続いて、配置制御装置１０は、仮想サーバを移動先データセンタに配置するように制御する（ステップＳ１０４）。具体的には、配置制御装置１０は、クラウドデータセンタに具備されるライブマイグレーション機能を利用して、各データセンタ２０に仮想サーバを指示し、移動先物理サーバに仮想サーバを配置する。
【００４２】
[第１の実施形態の効果]
上述してきたように、通信ネットワークシステム１００の配置制御装置１０は、仮想サーバの移動前に各地域におけるユーザ端末が仮想サーバに対して要求を行ってから該要求に対する応答を受信するまでにかかる時間である移動前応答時間に関する情報と、仮想サーバを現在動作しているデータセンタ２０から他のデータセンタ２０へ移動した場合に該移動後の仮想サーバに対して前記各地域におけるユーザ端末が要求を行ってから該要求に対する応答を受信するまでにかかる移動後応答時間に関する情報とをネットワーク機器から収集する。そして、配置制御装置１０は、収集された移動前応答時間に関する情報および移動後応答時間に関する情報を用いて、仮想サーバの移動先データセンタ２０を選択し、該移動先データセンタ２０に仮想サーバを配置する。このため、仮想サーバをユーザ端末からネットワーク的に近いデータセンタ上に自動的に配置してレスポンスタイムを改善することができる結果、仮想サーバを適切に配置できるようにすることが可能である。
【００４３】
また、第１の実施形態によれば、通信ネットワークシステム１００の配置制御装置１０は、収集された各ユーザ端末の移動前応答時間同士の差分をそれぞれ算出し、該算出された移動前応答時間同士の差分のうち最も値が大きい移動前最大差分値を抽出するとともに、収集された各ユーザ端末の移動後応答時間同士の差分を算出し、該算出された移動後応答時間同士の差分のうち最も値が大きい移動後最大差分値を抽出する。そして、配置制御装置１０は、抽出された移動前最大差分値よりも移動後最大差分値が小さくなる仮想サーバの移動先データセンタ２０を選択し、該移動先データセンタ２０に仮想サーバを配置する。このため、配置制御装置１０は、エンドユーザの属する地域によって異なる不公平なレスポンスタイムを公平になるように、仮想サーバの配置場所を選択することが可能である。
【００４４】
また、第１の実施形態によれば、通信ネットワークシステム１００の配置制御装置１０は、複数の地域にそれぞれ設置されたデータセンタ２０のアクセスに関する情報を観測し、該アクセスに関する情報から各地域におけるユーザ数を計測する。そして、配置制御装置１０は、各ユーザ端末の移動前応答時間に計測されたユーザ数を乗じた値である第一の値を算出し、また、収集された各ユーザ端末の移動後応答時間に計測されたユーザ数を乗じた値である第二の値を算出する。その後、配置制御装置１０は、算出された第一の値よりも第二の値が小さくなる前記仮想サーバの移動先データセンタ２０を選択し、該移動先データセンタ２０に仮想マシンを配置する。このため、配置制御装置１０は、エンドユーザの属する地域によって異なる不公平なレスポンスタイムを公平になるように、仮想サーバの配置場所を選択することが可能である。
【００４５】
［システム構成］
また、上記実施形態において説明した各処理のうち、自動的に行われるものとして説明した処理の全部または一部を手動的に行うこともでき、あるいは、手動的に行われるものとして説明した処理の全部または一部を公知の方法で自動的に行うこともできる。この他、上記文書中や図面中で示した処理手順、具体的名称、各種のデータやパラメータを含む情報については、特記する場合を除いて任意に変更することができる。
【００４６】
また、図示した各装置の各構成要素は機能概念的なものであり、必ずしも物理的に図示の如く構成されていることを要しない。すなわち、各装置の分散・統合の具体的形態は図示のものに限られず、その全部または一部を、各種の負荷や使用状況などに応じて、任意の単位で機能的または物理的に分散・統合して構成することができる。
【００４７】
［プログラム］
また、上記実施形態において説明した配置制御装置１０が実行する処理をコンピュータが実行可能な言語で記述したプログラムを作成することもできる。例えば、実施形態１に係る配置制御装置１０が実行する処理をコンピュータが実行可能な言語で記述した配置制御プログラムを作成することもできる。この場合、コンピュータが配置制御プログラムを実行することにより、上記実施形態と同様の効果を得ることができる。さらに、かかる配置制御プログラムをコンピュータ読み取り可能な記録媒体に記録して、この記録媒体に記録され配置制御プログラムをコンピュータに読み込ませて実行することにより上記実施形態１と同様の処理を実現してもよい。以下に、図７に示した配置制御装置１０と同様の機能を実現する配置制御プログラムを実行するコンピュータの一例を説明する。
【００４８】
図７は、配置制御プログラムを実行するコンピュータ１０００を示す図である。図７に例示するように、コンピュータ１０００は、例えば、メモリ１０１０と、ＣＰＵ１０２０と、ハードディスクドライブインタフェース１０３０と、ディスクドライブインタフェース１０４０と、シリアルポートインタフェース１０５０と、ビデオアダプタ１０６０と、ネットワークインタフェース１０７０とを有し、これらの各部はバス１０８０によって接続される。
【００４９】
メモリ１０１０は、図７に例示するように、ＲＯＭ（Read  Only  Memory）１０１１及びＲＡＭ１０１２を含む。ＲＯＭ１０１１は、例えば、ＢＩＯＳ（Basic  Input  Output  System）等のブートプログラムを記憶する。ハードディスクドライブインタフェース１０３０は、図７に例示するように、ハードディスクドライブ１０３１に接続される。ディスクドライブインタフェース１０４０は、図７に例示するように、ディスクドライブ１０４１に接続される。例えば磁気ディスクや光ディスク等の着脱可能な記憶媒体が、ディスクドライブに挿入される。シリアルポートインタフェース１０５０は、図７に例示するように、例えばマウス１０５１、キーボード１０５２に接続される。ビデオアダプタ１０６０は、図７に例示するように、例えばディスプレイ１０６１に接続される。
【００５０】
ここで、図７に例示するように、ハードディスクドライブ１０３１は、例えば、ＯＳ１０９１、アプリケーションプログラム１０９２、プログラムモジュール１０９３、プログラムデータ１０９４を記憶する。すなわち、上記の配置制御プログラムは、コンピュータ１０００によって実行される指令が記述されたプログラムモジュールとして、例えばハードディスクドライブ１０３１に記憶される。
【００５１】
また、上記実施形態で説明した各種データは、プログラムデータとして、例えばメモリ１０１０やハードディスクドライブ１０３１に記憶される。そして、ＣＰＵ１０２０が、メモリ１０１０やハードディスクドライブ１０３１に記憶されたプログラムモジュール１０９３やプログラムデータ１０９４を必要に応じてＲＡＭ１０１２に読み出し、各種手順を実行する。
【００５２】
なお、配置制御プログラムに係るプログラムモジュール１０９３やプログラムデータ１０９４は、ハードディスクドライブ１０３１に記憶される場合に限られず、例えば着脱可能な記憶媒体に記憶され、ディスクドライブ等を介してＣＰＵ１０２０によって読み出されてもよい。あるいは、配置制御プログラムに係るプログラムモジュール１０９３やプログラムデータ１０９４は、ネットワーク（ＬＡＮ（Local  Area  Network）、ＷＡＮ（Wide  Area  Network）等）を介して接続された他のコンピュータに記憶され、ネットワークインタフェース１０７０を介してＣＰＵ１０２０によって読み出されてもよい。
【符号の説明】
【００５３】
１０  配置制御装置
１１  通信処理部
１２  制御部
１２ａ  観測部
１２ｂ  収集部
１２ｃ  算出部
１２ｄ  配置制御部
１３  記憶部
１３ａ  アクセス情報記憶部
１３ｂ  遅延情報記憶部
２０Ａ〜２０Ｄ  データセンタ
３０  ネットワーク
１００  通信ネットワークシステム
【図１】
0005694214.tif 000004
【図２】
0005694214.tif 000005
【図３】
0005694214.tif 000006
【図４】
0005694214.tif 000007
【図５】
0005694214.tif 000008
【図６】
0005694214.tif 000009
【図７】
0005694214.tif 000010