JP5970541B2 - 情報処理システム、管理サーバ群、および、サーバ管理プログラム - Google Patents

情報処理システム、管理サーバ群、および、サーバ管理プログラム Download PDF

Info

Publication number
JP5970541B2
JP5970541B2 JP2014510963A JP2014510963A JP5970541B2 JP 5970541 B2 JP5970541 B2 JP 5970541B2 JP 2014510963 A JP2014510963 A JP 2014510963A JP 2014510963 A JP2014510963 A JP 2014510963A JP 5970541 B2 JP5970541 B2 JP 5970541B2
Authority
JP
Japan
Prior art keywords
server
application
data
management server
management
Prior art date
Legal status (The legal status is an assumption and is not a legal conclusion. Google has not performed a legal analysis and makes no representation as to the accuracy of the status listed.)
Expired - Fee Related
Application number
JP2014510963A
Other languages
English (en)
Other versions
JPWO2013157042A1 (ja
Inventor
崇利 加藤
崇利 加藤
裕 工藤
裕 工藤
松並 直人
直人 松並
藤林 昭
昭 藤林
Current Assignee (The listed assignees may be inaccurate. Google has not performed a legal analysis and makes no representation or warranty as to the accuracy of the list.)
Hitachi Ltd
Original Assignee
Hitachi Ltd
Priority date (The priority date is an assumption and is not a legal conclusion. Google has not performed a legal analysis and makes no representation as to the accuracy of the date listed.)
Filing date
Publication date
Application filed by Hitachi Ltd filed Critical Hitachi Ltd
Publication of JPWO2013157042A1 publication Critical patent/JPWO2013157042A1/ja
Application granted granted Critical
Publication of JP5970541B2 publication Critical patent/JP5970541B2/ja
Expired - Fee Related legal-status Critical Current
Anticipated expiration legal-status Critical

Links

Images

Classifications

    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04LTRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
    • H04L47/00Traffic control in data switching networks
    • H04L47/70Admission control; Resource allocation
    • H04L47/76Admission control; Resource allocation using dynamic resource allocation, e.g. in-call renegotiation requested by the user or requested by the network in response to changing network conditions
    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04LTRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
    • H04L65/00Network arrangements, protocols or services for supporting real-time applications in data packet communication
    • H04L65/10Architectures or entities
    • H04L65/1063Application servers providing network services
    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04LTRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
    • H04L67/00Network arrangements or protocols for supporting network services or applications
    • H04L67/34Network arrangements or protocols for supporting network services or applications involving the movement of software or configuration parameters 
    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04WWIRELESS COMMUNICATION NETWORKS
    • H04W40/00Communication routing or communication path finding
    • H04W40/02Communication route or path selection, e.g. power-based or shortest path routing
    • H04W40/20Communication route or path selection, e.g. power-based or shortest path routing based on geographic position or location

Description

本明細書で開示する技術は、広域のコンピュータネットワークに接続された情報処理システムでのアプリケーションおよびデータ利用方法に関する。
広域のコンピュータネットワークに接続された情報処理システムでは、中央のデータセンタに配置された情報処理装置の処理機能を利用して、端末装置に対して処理結果を送信する形態が一般的になっている。特にクラウドコンピューティングと呼ばれる情報処理システムの利用形態では、データセンタ上のサーバやストレージなどの情報処理装置へ処理を集中させ、利用者が、データセンタとネットワークで接続された外部から、情報処理装置を利用するのが一般的である。クラウドコンピューティングにより、データセンタ上へ情報処理装置を集中させることにより、システム構築コストやランニングコストの極小化が可能となる。
クラウドコンピューティングとよばれる利用形態では、利用者が、ホスティングを行う業者から、サーバ及びストレージの提供を受け、サーバ上でアプリケーションプログラム(アプリケーションまたはAPという)を動作させ、ストレージ上にデータを保存することにより、遠隔地から、サーバ及びストレージを利用した情報処理機能を利用する。このようにアプリケーションを動作させたり、ストレージ上にデータを保存し活用する形態を、それぞれ、アプリケーションホスティング、データホスティングと言う。
クラウドコンピューティングでは、データセンタ上の情報処理装置に処理を集中させるため、システムの利用者が増加し、多数の端末から、データセンタ上の情報処理装置に対して、情報処理の要求があると、情報処理要求への返答の品質(転送データのスループットと応答時間)が低下する。この要求に対する返答の品質を保持するため、接続回線の増強が必要となる。データセンタ上にて情報処理装置を提供する企業としては、この回線増強のコスト増が事業運営上での課題となる。特に、近年では、これまで、利用者の端末の処理性能が高くないか、もしくは、利用者の端末が基幹ネットワークへ接続するための無線アクセス網のアクセススピードが遅いなどの条件のため大きな問題とならなかった、処理時間に対する品質の要求が高まっており、さらなる接続回線の増強(回線品質の確保)が課題となっている。
このため、データセンタ事業者やデータセンタ事業者から設備を借り入れ、ホスティング事業に利用したり、自社利用している事業者は、広域のネットワーク上に分散して配置された情報処理装置上に、アプリケーションやデータの複製を配付し、中央のデータセンタの情報処理装置の利用頻度を下げるなどの負荷分散措置を取ることにより、情報処理要求への返答の品質の維持を行っている。このような負荷分散技術の一つとしてコンテンツデリバリーネットワーク(CDN)が挙げられる。CDN技術は、例えば、特許文献1及び特許文献2に開示されている。
また、特許文献3には、情報処理機能と任意の宛先変更機能を備えたインテリジェントノードを用いて、情報処理位置を変更し、低遅延の情報処理システムを提供することが可能なシステムが述べられている。
米国特許第8073961号 米国特許第7734815号 米国公開特許公報US2011/0202658号
特許文献1及び特許文献2に記載されているCDN技術では、主に、音楽や動画といったデジタルコンテンツのようなデータを配付対象としている。ネットワーク上のさまざまな場所にデータの配付点を用意して利用者のネットワーク位置に応じて適切な配付点へのアクセスを指示することにより、大量のコンテンツをスムーズに利用者に配信できるようにする。こうして、配付対象のデータを中央のデータセンタから配信すると、ネットワークに大きな負荷がかかるという問題を解決している。
一般のCDN技術では、データ種別によって、配信方法を分けている。データベース(DB)に格納されている利用者毎に異なる情報を利用する処理や逐次更新すべき情報を利用する処理などの動的生成が必要な処理では、利用する情報は配付点に存在するサーバへ配付されない。そのため、動的生成が必要な処理では、端末から、情報処理の中心となる中央のデータセンタのサーバ(オリジンサーバ)への通信が発生する。このように、処理の結果が毎回異なるような場合、中央のデータセンタでの処理量は膨大になり、中央のデータセンタの回線品質の確保が事業運営上の課題となる。
つまり、CDN技術では、デジタルコンテンツなどの静的コンテンツ配信に好適なデータ配信方法は示されているが、毎回処理が異なるような情報処理を行う情報処理システムに対する適用は、効果が少なく、回線品質の維持にコストがかかる。動的生成が必要な処理でも、あらかじめ処理を行い、配付点に配付しておくことができる処理については、配付により、課題を解消できるが、際限なく配付点であるエッジのデータセンタへ処理済みのデータのキャッシュを行うと、エッジのデータセンタのストレージや転送時のネットワークのリソースを消費してしまうため、コスト増が事業運営上の課題となる。
特許文献3に記載されているデータセンタ集約型情報システムでは、既存のデータセンタなどの情報システムとの整合性を取りながらシームレスに移行できる仕組みを持つプラットフォームにおいて、情報処理位置を端末に近いノードに移行することで低遅延化を行う。しかし、ネットワークノードなどの動的生成処理を行うアプリケーションを配付点にアプリケーションやデータを配置し配付点における特にストレージリソースに関わるリソース使用量を抑える方法について詳細な開示が無い。
上記のように、既存の分散アプリケーション及びデータホスティングを行う情報処理システムにおいては、端末などのネットワークに接続される末端の機器からのアクセスによる処理集中を代替のデータセンタのサーバやストレージで代替する際、ネットワークの転送量とストレージ使用量を抑えながら、中央のデータセンタへのネットワークアクセスにかかる負荷を軽減しないと、ネットワーク増強にかかるコスト増が事業運営上の課題となる。
開示されるのは、公知の技術では解決できない、動的生成処理を行うアプリケーションを配付点に配付する分散アプリケーション及びデータホスティングを行う情報処理システムにおいて、アプリケーションやデータのキャッシュに必要な配付点のリソース使用量を抑えながら、オリジンサーバのある中央のデータセンタへのネットワークアクセスにかかる負荷を軽減する方法である。
本明細書にて開示するのは、アプリケーションを実行し、実行結果を端末などのネットワークに接続された機器に送信するアプリケーションサーバと、アプリケーションサーバ及びストレージ上に、それぞれ、アプリケーション及びデータを配置する管理サーバとを含み、管理サーバは、アプリケーションサーバを経由して、機器から機器の位置情報を入手し、位置情報からアプリケーションの移行(migration)先となるアプリケーションサーバを選定する手順と、移行元のアプリケーションサーバへ、移行先のアプリケーションサーバを指示する手順と、アプリケーションサーバ間でアプリケーションとデータとを移行する手順と、により、アプリケーション実行場所の再配置を行うことを特徴とする分散アプリケーション及びデータホスティング方法と当該方法を実現する情報処理システムである。
上記方法により、分散した情報処理装置上へ、アプリケーションやデータのキャッシュに必要な情報処理装置のリソース使用量を抑えながら、特定の情報処理装置やアプリケーションやデータの提供元の情報処理装置のネットワークアクセスにかかる負荷を軽減する広域分散型アプリケーション及びデータホスティング方法を提供可能になる。
上記態様によれば、ネットワーク上に分散して配置された情報処理装置が、連携して動作することにより、広域の配付点にアプリケーション及びデータを配付するシステムにおいて、アプリケーションやデータの配付に必要な配付点のリソース使用量を抑えながら、特定のデータセンタへのネットワーク負荷を集中させない広域分散型の情報処理システムを提供できる。
また、上記態様によれば、データセンタ集約型情報システムでのシステムの応答時間を改善したシステムを提供することにより、システムの利用者が情報処理サービスを受ける際の応答時間を短縮し、利用者の体感品質を向上する効果がある。
また、上記態様によれば、同等の品質を持つデータセンタ集約型情報システムと比較し、特定のデータセンタへのネットワーク負荷を集中させないため、データセンタへ接続するネットワークの転送量や帯域などを抑えることが可能となり、コストを低減した情報システムを提供できるという効果がある。
他の特徴及び利点は、添付図面に関する以下の実施例の開示から明らかになるであろう。
開示によれば、利用者の体感品質を向上させた情報システムを低コストで提供できるという効果を奏する。
第一の実施形態の情報処理システムのシステム構成を例示する図。 第一の実施形態の情報処理システムのサーバ及び管理サーバのハードウェア構成を例示する図。 第一の実施形態の情報処理システムにおいて、アプリケーション及びデータを分散した情報処理装置上へ移動する際の動作を例示するシーケンス図。 第一の実施形態の情報処理システムにおける、サーバの機能を例示する図。 第二の実施形態の情報処理システムにおける、ストレージに格納されるメタデータを例示する図。 第二の実施形態のメタデータの詳細を例示する図。 第二の実施形態の情報処理システムにおいて、アプリケーション及びデータを分散した情報処理装置上へ移動する際の動作を例示するシーケンス図。 第一の実施形態の情報処理システムの機器の構成を例示する図。 第一の実施形態の情報処理システムにおける、アプリケーションの移行の判定に利用する、拠点情報管理テーブルを例示する図。 第一の実施形態の機器が送信する処理要求の例を示す図。 第一の実施形態の管理サーバがリソースと稼働条件を管理する管理テーブルを例示する図。 第一の実施形態の情報処理システムにおけるサービス情報テーブルを例示する図。 第一の実施形態の情報処理システムにおけるアプリケーションやデータの配付される拠点の変化を例示する第1の図。 第一の実施形態の情報処理システムにおけるアプリケーションやデータの配付される拠点の変化を例示する第2の図。 第一の実施形態の情報処理システムにおけるアプリケーションやデータの配付される拠点の変化を例示する第3の図。 第一の実施形態の情報処理システムにおけるアプリケーションやデータの配付される拠点の変化を例示する第4の図。
以下、実記形態について図面を参照して説明する。各図における同一符号は、同一のものを示す。
第一の実施形態の情報処理システムの構成の概略を図1に示す。本実施形態の情報処理システムは、管理拠点、拠点B、拠点C、拠点D、拠点E内に設置されたサーバおよび管理サーバと、端末やセンサのような機器が基幹ネットワークやアクセスネットワークを介して接続しているものである。
拠点B110は、基幹ネットワークに接続された、利用者が要求する情報処理を行う情報処理拠点であり、一般的に、データセンタや、データセンタ内に設置されたあらかじめ定められた領域である。
本実施形態において拠点と表記されるのは、データセンタや、データセンタ内に設置されたあらかじめ定められた領域において、あらかじめ定められた範囲のネットワークセグメント内に、サーバや管理サーバやストレージや機器が接続されているものである。
例えば、拠点とは、データセンタ全体であったり、データセンタのある区画だったり、データセンタのあるラックだったり、ビル内に設置された装置だったり、ネットワーク基地局に設置された機器だったり、小売店に設置されたキオスク端末機器であったり、現金自動払機、または自動販売機、または携帯電話や固定電話の通信機器や電柱などの設備に付随し設置される機器であったり、センサや車載器から無線にて情報を取得する路側無線機器(RSU:Road Side Unit)を含む一設備であったりする。
拠点B110の中には、管理サーバB111及びアプリケーションサーバB112及びストレージ113が設置されており、それぞれが基幹ネットワークやアクセスネットワークなどのネットワークを介して以降に説明するサーバ及び端末及び機器などの情報処理機器に接続している。拠点Bには、管理サーバ及びサーバは、1台もしくは2台以上の複数台設置される。すべてのアプリケーションサーバは、いずれかの管理サーバの管理対象とされ、アプリケーションサーバ上でのアプリケーション実行やストレージの利用を管理される。なお、以下の説明では、アプリケーションサーバを単にサーバと称す。
管理拠点100は、本実施形態の情報処理システムの情報処理の制御を中心的行うサーバ(管理サーバA101)、および管理用のストレージであるストレージ103が設置されており、利用者が要求する情報処理を提供する(ホスティングする)事業者による情報処理の管理を行う拠点を示す。管理サーバA101は、基幹ネットワーク、アクセスネットワークなどのネットワークを介して管理サーバB111やサーバB112、ストレージ113、以降に説明する情報処理機器に接続している。管理サーバA101は、管理サーバB111等の管理サーバを集中的に管理する管理サーバで、各拠点のアプリケーションの実行とストレージのへのデータ格納について、各管理サーバへ指示を行う。
拠点C120及び拠点D130は、基幹ネットワーク160に接続している、前述した情報処理を分散実行するための設備を設置してある情報処理拠点である。一般的に、拠点C120及び拠点D130は、ホスティング事業者のデータセンタもしくはデータセンタ内に設置されたあらかじめ定められた領域である。
拠点C120の中には、管理サーバC121及びサーバC122及びストレージ123が設置されており、拠点D130の中には、管理サーバD131及びサーバD132及びストレージ133が設置されている。それぞれの管理サーバとサーバは、基幹ネットワーク160などのネットワークを介して管理サーバA101及び管理サーバB111及びサーバB112及び、以降に説明する情報処理機器に接続している。拠点C120、拠点D130内には、管理サーバ及びサーバは、1もしくは2以上の複数台設置される。すべてのサーバは、いずれかの管理サーバの管理対象とされ、サーバ上でのアプリケーション実行やストレージの利用を管理される。
また、拠点C120及び拠点D130のそれぞれの管理サーバとサーバは、アクセスネットワーク162にも接続している。アクセスネットワーク162は、後述する端末や、拠点E140が接続するためのローカルネットワークである。拠点C120や拠点D130に設置された図示しないネットワーク機器により、アクセスネットワーク162に接続された機器から基幹ネットワーク160への通信は行われ、基幹ネットワーク160からアクセスネットワーク162に接続された機器への通信も、逆方向に行われる。アクセスネットワーク162は、例えば、有線ローカルエリアネットワーク(LAN)または無線LAN、または近距離無線通信などである。
拠点E140は、アクセスネットワーク162に接続している、前述した情報処理を分散実行するための設備を設置してある情報処理拠点である。一般的に、 拠点E140は、ホスティング事業者のデータセンタもしくはデータセンタ内に設置されたあらかじめ定められた領域や、ホスティング事業者が、地域の拠点や街中に情報処理を行う設備として設置する領域である。
拠点E140の中には、管理サーバE141及びサーバE142及びストレージ143が設置されている。それぞれの管理サーバとサーバは、アクセスネットワーク162を介して他の拠点と接続しており、図示しないネットワーク装置によって、基幹ネットワーク160を介して、管理サーバA101及び管理サーバB111及びサーバB112など、すでに説明した、また、以降に説明する情報処理機器に接続している。拠点E140内には、管理サーバ及びサーバが、1台もしくは複数台設置される。すべてのサーバは、いずれかの管理サーバの管理対象となり、サーバ上でのアプリケーション実行やストレージの利用を管理される。
機器(151〜154)は、アクセスネットワーク162や、アクセスネットワーク161を介して基幹ネットワーク160に接続する本実施形態の情報処理システムを利用するために利用者が操作、もしくは設置する端末、もしくはセンサ等の制御用機器である。機器151〜154は、例えば、カーナビ、またはPC、またはスマートフォン、または携帯電話、または家電機器、のいずれか一種類以上の、ユーザインタフェースを持つ端末機器や、センサ(例えば、メータ機器、または温度計、または電力計などの計器)、人流解析器、または監視カメラ、または認証機器などの制御用機器である。
機器151〜154は、サーバにネットワークで接続され、サーバ上で行わせようとする情報処理要求および/または情報処理のためのデータをサーバへ送信し、該情報処理をサーバに実施させる機器のことである。
本実施例の情報処理システムでは、機器151〜154などの機器が、情報処理を行うサーバへ情報処理要求を送信する際に、管理サーバが、機器の利用状況に応じて、利用者の要求する情報処理を分散した情報処理装置上へ移動し、情報処理に必要なリソース使用量を抑えながら特定の情報処理装置の接続しているネットワークアクセスにかかる負荷を軽減し、かつ、情報処理装置の応答性能を向上する。
ここで、拠点内のストレージは、サーバと独立の装置のように記載しているが、各サーバに搭載されたフラッシュメモリやハードディスクのようなストレージでもよいし、仮想的にサーバ上のストレージを集合させた仮想ストレージでもよい。
図2に、上述の、各管理サーバ、各アプリケーションサーバを実現する計算機のハードウェア構成を例示する。
また、図4に、各アプリケーションサーバの機能構成を例示する。これらの機能は、図2のストレージ203に格納されたプログラムをCPU201が読み出し、メモリ202上で実行することにより、実現されるものである。各プログラムは、あらかじめ、上記計算機内のストレージ203に格納されていても良いし、必要なときに、入出力装置205やNIC204と、上記計算機が利用可能な媒体を介して、他の装置から上記ストレージ203に導入されてもよい。媒体とは、たとえば、入出力装置205に着脱可能な記憶媒体、またはNIC204に接続可能な通信媒体(すなわち有線、無線、光などのネットワーク)または当該ネットワークを伝搬する搬送波やディジタル信号、を指す。
アプリケーション実行部402は、アプリケーション401−1ないしアプリケーション401−nの実行の管理を行う機能である。アプリケーション実行部402は、他のサーバのアプリケーション実行部及び管理サーバと通信を行い、アプリケーションの移動を行う。また、アプリケーション実行部402は、管理サーバの指示に従い、アプリケーション401−1ないしアプリケーション401−nの実行、停止を行う。メタデータ管理部403は、ストレージ203上のデータの作成や更新、追加、削除が行われると、データオブジェクトのメタデータを作成し、それぞれの拠点の管理サーバへメタデータを送付する。
分散データ制御部405は、他のサーバの分散データ制御部間で相互に通信を行い、管理サーバの指示に従い、サーバ内、もしくは、同一拠点内のストレージ上のデータの作成や更新、追加、削除などを行う。また、分散データ制御部405は、管理サーバの指示により、更新や、追加を行ったデータオブジェクトの複製を別のサーバへ作成する。このデータの複製の作成方法は、後述する。
図3は、本実施例の情報処理システムにおいて、機器からの情報処理要求に対して、情報処理を行うサーバなどの情報処理機器を分散した情報処理装置上へ移動する際の動作を示したシーケンス図である。
以下では、機器は、機器151であるものとして説明を行うが、他の機器であっても同様である。機器151は、まず、情報処理装置(サーバ)に行わせたい、情報処理要求を作成する(301)。この情報処理要求とは、例えば、機器151がPCであれば、PC(機器151)上のブラウザアプリケーションで表示させたいURIの指示や、ドキュメント表示アプリケーションで表示させたいコンテンツのパス名やファイル名の指示などである。例えば、機器151がセンサや監視カメラであれば、拠点B110のサーバ上で情報処理を行わせたい測定データおよび/または記録データ(例えば、測定した温度、消費電力量、記録音声、記録映像などのいずれか一種類以上)とそれらに対する処理の指示と、を含む送信内容である。
機器151は、サーバB112へ情報処理要求301で作成した内容の情報処理を実施させるため、処理要求送信(302)において、サーバB112へ処理要求を送信する。ここで、機器151は、自身が作成した処理要求をどのサーバ(この場合、サーバB112とする)へ送信すべきかの情報は、サーバB112の名称とIPアドレスなどのネットワーク上の所在などを、あらかじめ機器151に登録するか、利用者が利用の際に入力するなどして、すでに保持している。たとえば、利用者が行いたい情報処理が、あるURIと紐付けられている場合、機器上のリゾルバと呼ばれるクライアントプログラムからDNSサーバへの問合を行うことにより、情報処理を行うサーバのネットワークアドレスが明らかとなり、機器が、利用者が行いたい情報処理を提供するサーバに対してアクセス可能となる。
機器151からサーバB112への通信は、機器151上に記録されている後述するメモリ上で動作する図示しない通信プログラムが行う。サーバB112のネットワーク上でのアドレスは、前述したように通信プログラムによりネットワーク上のDNSサーバに問い合わせることにより入手し、通信プログラムがサーバB112上の通信プログラムと機器151との間の通信を行う。サーバB112は、処理要求送信(302)において受け取った処理要求の内容を処理するアプリケーションの決定を、処理要求確認ステップ(303)において行う。処理要求を行うアプリケーションがサーバに存在し、動作可能かを確認する。
一般的に、データセンタ内では、あるサーバと同様の機能を有するサーバを複数設置し、サーバ群の直前にロードバランサ等の付加分散機器を設置し、サーバへ通信してくる機器ごとに情報処理を行うサーバへの接続を分散する処理が行われる。本実施例では、簡便のため、機器からの接続をすべてサーバB112が処理するように記載するが、情報処理が機器ごとにサーバB112と同等の機能を有するサーバ群において、付加分散され実行していても同様である。
サーバB112上での処理要求確認(303)が終了し、受け取った処理要求の内容を処理するアプリケーションが動作しない状態であれば、図示しない手順で、サーバB112は、機器151に対してアプリケーションが動作しておらず、情報処理要求が実行できない旨のエラーを返信する。処理要求を行うアプリケーションが動作しており、情報処理要求の処理が可能であれば、サーバB112は、管理サーバB111に処理要求確認を依頼(304)する。
この処理要求確認304のステップは、機器151から処理要求が送信された際に、毎回行ってもよいし、処理がある定められた期間内において最初に行われた際のみに行ってもよいし、ある定められた期間において定められた頻度で行ってもよい。処理要求確認を依頼するステップ304では、機器151が送信した処理要求の内容がステップ304で送信される情報に含まれるため、管理サーバB111は、機器151の情報を取得している。
ここで、図10を用いて、機器151が送信する処理要求の例を示す。処理要求1000は、機器151がHTTPサーバであるサーバB112に対し、HTTPリクエストを処理要求として送付した際の要求の内容を説明するものである。処理要求1000は、リクエスト1001、ヘッダ1002、メッセージボディ1003より構成される。リクエスト1001は、HTTPのリクエストの要求内容の主体である。リクエスト1001は、例えばサーバに対するコマンドや、URIなどのリクエスト対象となるデータ情報やパス名を含み、サーバB112はこのリクエスト内容に応じた情報処理を行う。
ヘッダ1002は、HTTPのリクエストの詳細部分をサーバに認識させるための情報である。ヘッダ1002は、例えば、送信側のアプリケーションでサポートするデータタイプやデータの圧縮方法、アプリケーションの種別などを含む。ボディ1003は、サーバへデータを送るために使う領域で、送信したいテキストデータなどを含む。本実施例の処理要求では、必要に応じてあらかじめ定められたフォーマットで、位置情報や経路情報、機器情報を処理要求1000内に含めて送信する。
図10では、ボディ1003の中に、位置、経路、機器情報1004を挿入して送信を行っている例を示している。位置、経路、機器情報1004は、機器151の位置情報、機器151から情報処理を行うサーバや管理サーバへの経路情報、機器151の種別情報のいずれか一種類以上を含んだ情報である。
位置情報は、例えば、機器151の現在の(機器の測定機能から提供される)緯度、経度、高度等の情報やあらかじめ設定した地域のID番号や端末が通信しているアクセスネットワークの種別や端末が最も近い拠点の情報である。また、経路情報は、端末のIPアドレスや、端末から特定のサーバへの経路情報などである。端末の種別情報は、端末の動作している機器の種別、端末で動作しているOS、アプリケーションの種別、バージョン、サポートしている送受信プロトコルの種別、バージョン等である。また、機器情報は、実行を要求する情報処理のかつての実行履歴、及び実行所要時間、及び品質を含んでいる。これらの位置、経路、機器情報1004を機器151がサーバB112に送信することにより、後述するように、アプリケーションの移行の判断を管理サーバ(101,111)にて実施する。
このような位置、経路、機器情報が、機器151からサーバB11及び管理サーバB11に送信されることにより、情報処理システムにおいて、機器151の情報処理の速度を向上させたり、情報処理コストを低減する情報処理を行うアプリケーションやデータの配置を管理サーバがサーバへ指示し、構成することができる。
次に、図8を用いて、機器151〜154の構成について説明する。機器151〜154は、図8に示すようにCPU801、メモリ802、ストレージ803、NIC(ネットワークインターフェースカード)804、入出力装置805で構成される。機器151〜154は、ストレージ803上に、図示しないサーバとの通信プログラムを保存しており、メモリ802に読み込んだ通信プログラムを利用して、CPU801がNIC804を介してネットワーク上のサーバと通信を行う。
ストレージ803は、位置、経路、機器情報806を保存している。この機器情報806は、機器の位置情報や、端末から情報処理を行うサーバや管理サーバへの経路情報、機器の種別情報を含んだ情報である。位置、経路、機器情報806のうち、位置情報は、機器151〜154の持つGPS等の位置および/または高度の測定機能を利用して利用者が端末を利用したり、端末が動作する際に作成されるか、あらかじめ利用者が設定する。また、経路情報は、前記の通信プログラムが与えられたアドレス情報やサーバへの経路情報から作成する。また、機器情報は、端末の出荷時やあらかじめ利用者が端末の種別、動作しているOS、アプリケーションの種別、バージョン、サポートしている送受信プロトコルの種別、バージョン等が記録されたものである。また、機器情報は、実行を要求する情報処理のかつての実行履歴、実行所要時間、品質のいずれか一種類以上を含んでいる。
ストレージ803に保存されている位置、経路、機器情報806は、機器151〜154が動作中にメモリ802に読み込まれ、前述した位置、経路、機器情報1004として、サーバへ全部もしくはその一部が送信される。この位置、経路、機器情報1004をサーバ及び管理サーバが利用することにより、アプリケーション、及びデータの配付場所が管理サーバからサーバへ指示される。サーバへ向けて送信される機器情報は、位置、経路、機器情報806に保存されている情報の最新値や平均値である。
ここで、図3を用いた、処理の説明に戻る。サーバB112から送信されてきた処理要求確認(304)により、サーバB112上で動作する、機器151からの要求のあった情報処理を行うアプリケーションが、サーバB112以外で動作させるか否かの移行の判定を行う。この移行判定の方法は、後述する。
後述する移行判定結果により、移行が必要と判断された場合、管理サーバB111は、管理サーバA101へ移行判定要求(305)を送信する。管理サーバA101は、管理サーバB111の上位の管理サーバである。本実施例の管理サーバは、あらかじめ登録された階層構造に従って、管理を制御されている。本実施例では、管理サーバA101が、管理サーバB111、及び管理サーバC121、及び管理サーバD131を管理する上位の管理サーバとなっている。管理サーバは、上位の管理サーバの指示でアプリケーションの実行、移動、停止、消去などの管理を行う。管理サーバA101は、ネットワークに接続された機器が、どのアプリケーションをどのサーバで実行し、情報処理を行っているかを管理している。この記録管理方法については、後述する。
移行判定要求(305)において、管理サーバB111は、機器151からステップ302で受信した要求(位置、経路、機器情報1004を含む)と管理サーバB111でのアプリケーションの実行状況を管理サーバA101に送信する。管理サーバA101は、管理サーバB111と同様にアプリケーションの移行判定を行う。管理サーバA101上で移行判定が行われた後、管理サーバA101は、移行判定結果を管理サーバB111に送信する(306)。
移行判定結果には、アプリケーションを移行するサーバに関する情報(例えば、移行先は拠点C上のサーバである)が含まる。ここで、管理サーバA101と管理サーバB111上で行われた移行判定が共に移行必要であれば、管理サーバB111は、該当するアプリケーションの移行を行う。何れかの判定も移行不可であれば、管理サーバB111は、アプリケーションの移行を指示しない。ここで、移行不可とは、アプリケーションの移行ができないか、移行しても端末との通信の品質が低下したり、通信コストなどのコスト増があると管理サーバが判断することを言う。
ここで、管理サーバB111は、処理要求情報確認が行われたという情報をサーバB112へ送信する(確認結果送信(307))。サーバB11は、送信された処理要求に対応した処理結果の生成を行う(308)。サーバB112は、生成された処理結果を機器151に送信する(309)。ここで、これらの処理結果生成のプロセス(301〜309)は、処理要求をサーバB112が確認してから、確認結果送信(307)までを待って行われるように説明しているが、308及び309の処理を非同期に(先行して)行ってもよい。
上述した管理サーバA101と管理サーバB111上での移行判定がともに「移行必要」であれば、管理サーバB111及びサーバB112は、これから述べるAP移行準備310から移行完了通知323の手順において、アプリケーションの移行を行う。ここで、アプリケーションの移行先は、拠点C120のサーバであると管理サーバA101もしくは、管理サーバB111が決定したものとして、説明を進める。
AP移行準備310において、管理サーバB111は、アプリケーションを拠点Cのサーバへ移行するための準備を行う。上述したように、管理サーバB111は、アプリケーションの移行先が、拠点Cのサーバであり、管轄する管理サーバは、管理サーバC12であることをあらかじめ管理サーバA101から通知されている。管理サーバB111は、管理サーバC121に対して、アプリケーションの移行を要求するためのアプリケーション情報を作成する。作成したアプリケーション情報は、管理サーバC121に送信される(AP移行要求(311))。管理サーバC121は、AP移行要求(311)を受信し、移行すべきサーバを決定する。決定には拠点C120において、管理サーバC121が管理するサーバにおいて、AP移行要求に含まれるアプリケーションの情報から、管理サーバC121の管理するサーバ群の中で、それぞれのサーバのメモリ容量、及びCPU性能、及びストレージ容量、及び動作可能なVM(仮想マシン)の種別、及び動作可能なアプリケーションの種別といった、リソースや稼働条件を判断し、すべての条件において、稼働可能であるサーバ群を選定する。
ここで、図11を用いて、管理サーバC121が拠点C内でアプリケーションを移行するサーバを選定の判断を行う際の情報を管理する管理テーブルの説明をする。図11は、管理サーバC121が管理するサーバにおいてアプリケーションを動作させるためのリソースと稼働条件を管理する管理テーブル1100である。管理テーブル1100は、管理サーバC121上のメモリやストレージ上に記録され、常に管理サーバC121の管理テーブル管理機能により更新される。管理テーブル管理機能は、管理サーバC121の管理対象、及び、拠点C内のサーバの後述するリソースや情報を管理し、他の管理サーバからのアプリケーション実行の要求に対するリソース割り当てを行う。
管理テーブル1100には、サーバID1101、及びサーバ名1102、及びアドレス1103、及び割り当て可能メモリ量1104、及び割り当て可能ストレージ量1105、及びCPU情報1106、及び動作可能VM種別1107、及び動作可能アプリケーション種別1108、及び動作アプリケーション情報1109、及びアプリケーション稼働実績1110、及びコスト1111が記載されている。管理テーブル1100は、拠点内の管理サーバ同士の通信により、拠点内で共有され、随時更新される。
サーバID1101、サーバ名1102は、それぞれ管理サーバC121が管理するサーバにつけられたID及び名称である。アドレス1103は、各サーバに付与されたネットワークアドレスが記録される。割り当て可能メモリ量1104、割り当て可能ストレージ量1105は、それぞれ、空きメモリ、ストレージの空き容量に関し、アプリケーションの移行を受け入れられる、残りのリソースを示している。この空リソース量は、管理サーバC121から管理される各サーバに要求を出し、常に更新される。管理サーバは、空リソース量を比較し、リソース割り当てを行う。
CPU情報1106は、各サーバの持つCPUのスペック情報であり、動作周波数やソケット数、コア数が記録される。動作可能VM種別1107及び動作可能アプリケーション種別1108は、それぞれサーバ上で動作可能なVM及びバージョンを含むアプリケーションの種別が記録されたものである。アプリケーションが動作する際に、依存関係のある必要なライブラリがインストール済かがチェックされ、記録されている。動作アプリケーション情報1109は、現在動作しているアプリケーションの情報である。アプリケーション稼働実績1110は該当するサーバにてどのようなアプリケーションの稼働実績があるかが記載されている。
コスト1111は、単位時間当たり、サーバ及びストレージを利用する際にかかる電力の費用やスペースなどについての利用者が負担する賃料などの、サーバ利用に係り利用者が負担する費用を、サーバ台数もしくはCPU数もしくはCPUのコア数もしくは、ストレージ容量あたりで乗算したコストの指標である。
管理サーバB111が、移行に必要なサーバのアドレスやスペック情報を管理サーバC12に通知すると、管理サーバC12は、通知された条件で動作させることができるサーバを選定する。この選定には、割り当て可能メモリ量1104、及び割り当て可能ストレージ量1105、及びCPU情報1106が参照され、必要なリソースが確保できるサーバが選定される。選定したサーバの中で、すでに要求のあったアプリケーションが稼働しているサーバがあれば、管理サーバC12は、そのサーバを選定する。
要求のあったアプリケーションが稼働しているサーバがない場合は、アプリケーション稼働実績1110を参照し、選定したサーバの中から、稼働実績のあるサーバを優先し、かつ動作可能VM種別1107もしくはアプリケーション種別1108に記載される条件を満たし、かつ、コスト1111に記載されているコスト(複数台の場合はコストの総量)が最も小さいサーバを選び出す。
上記のように管理サーバC12が選定したサーバに対して、アプリケーションを移行することにより、機器151に対して、応答品質が良く、コストの安いサービス提供を可能となる。
次に、先ほど述べた、サーバB112上で動作する機器151からの要求のあった情報処理を行うアプリケーションをサーバB112以外で動作させるか否かという移行の判定を行う方法について述べる。
管理サーバB11、及び管理サーバA101の管理者は、あらかじめ、機器151が特定の情報処理を行う際の、情報処理の配付について、ポリシーを決定し、管理サーバA101の中に格納し、管理サーバ群で共有させる。管理サーバA101は、ポリシーの共有のため、管理サーバB11の問い合わせに応じて、ポリシーを回答する。ポリシーとは、機器151と情報処理の内容の組み合わせそれぞれに対し、許容する応答時間、及び許容する距離、及び通信時に許容するネットワーク機器の数を定義する。
管理サーバB11は、ポリシーの中に許容する応答時間が含まれている場合、要求に含まれる応答時間の内容を調査し、ポリシーにおいて、アプリケーションとデータの移動が必要と判断される場合は、アプリケーションとデータの移行が必要と判断する。例えば、管理サーバB11は、ポリシーの中に許容する位置情報の最大値が含まれている場合、ステップ302の要求に含まれる機器の位置情報と、拠点Bの距離の大きさを計算し、アプリケーションとデータの移行が必要と判断される場合は、アプリケーションとデータの移動が必要と判断する。
例えば、管理サーバB11は、ポリシーの中に許容する経由するネットワーク機器(ホップ数)の最大値が含まれている場合、ステップ302の要求に含まれる機器の経路情報から、経由するネットワーク機器(ホップ数)の大きさを計算し、アプリケーションとデータの移行が必要と判断される場合は、アプリケーションとデータの移動が必要と判断する。
以上の判断が管理サーバB11において行われた場合、管理サーバA10において、同様の判定が行われる。管理サーバB11,管理サーバA10共に、移行必要と判断された場合、管理サーバA10において、移行先の拠点の検討が行われる。管理サーバA10は、ステップ305において、機器151の位置、経路、機器情報を入手する。拠点B110と比較し、移行による機器151の情報処理について品質が向上する拠点を管理サーバA10は選定し、ステップ306において管理サーバB11に送付する。
上述した管理サーバA101と管理サーバB111上での移行判定がともに「移行必要」であれば、管理サーバB111、及びサーバB112、及び移行先の管理サーバ及びサーバは、これから述べるAP移行準備310から移行完了通知323の手順において、アプリケーションの移行を行う。ここで、アプリケーションとデータの移行先は、拠点Cのサーバであると管理サーバA101もしくは、管理サーバB111が決定したものとして、説明を進める。
ここで、管理サーバC121は、管理テーブル1100を参照し、管理サーバC121の管理対象であるサーバから、アプリケーションを動作させるサーバを決定する。まず、管理サーバA101、管理サーバB111から入手したアプリケーションのメモリやストレージに関するリソース使用情報とデータのストレージに関するリソース使用量を確認し、データ格納とアプリケーションの条件を満たすサーバを選出する。
また、配付されるアプリケーションが、アプリケーション形式であれば、動作可能なAP種別を確認し、動作可能であるサーバを選出する。すでに稼働実績があるサーバは優先し、実際に現在アプリケーションが稼働中であれば、アプリケーションの移行は行わず、データのみの移行を行う。
アプリケーションの配付は、パッケージ化されたアプリケーションを準備し、実行するアプリケーションに送信し、実行するとして説明を行うが、仮想マシン(VM)を準備し、実行するサーバは仮想マシンを送信し、仮想マシンを動作することで、アプリケーションの実行を行ってもよい。以降は、前者の例を示す。
以降、本実施例では、アプリケーションやデータを移行するサーバがサーバC122であると管理サーバC121が決定したとして説明する。管理サーバC121は、移行するサーバC122のアドレスやスペック情報(移行情報)を管理サーバB111へ送信する(312)。この移行情報は、アプリケーションを受け入れるための認証情報を含む。管理サーバB111は、受け取った移行情報をサーバB112に送信する。このことにより、サーバB112は、認証情報を含む移行情報をサーバB112に送信する(314)。
サーバC122は、管理サーバC121より、事前に移行受け入れ要求(313)を受け取っている。サーバB112は、移行情報を受け取ると、移行情報の中に存在する認証情報を送付し、サーバC122と通信を開始する。サーバC122は、移行受け入れ要求313により受理した認証情報と、送付された認証情報を確認し、通信相手がサーバB112と確認された場合、送付されたアプリケーションプログラムをサーバC122上で動作させるためのアプリケーションパッケージと、データを受信し(315、316)、サーバC122上でアプリケーションが動作するようにアプリケーション及びデータの格納(317)を行う。
アプリケーション及びデータの格納とは、サーB112で動作していたアプリケーションがサーバC122にて動作するよう、サーバC122へサーバアプリケーションのインストール、及びWebアプリケーションのインストール、及びアプリケーションへの設定、及び環境設定、及びユーザデータの格納を行うことである。アプリケーション及びデータの格納の作業に必要な情報は、AP移行315、及びデータ送信316のステップにて、サーバB112がサーバC122に送信する。
ここで、AP移行315、及びデータ送信316のステップでは、サーバB112がサーバC122に直接情報を送信するように記載している。拠点B110及び拠点C120の環境によっては、サーバB112からサーバC122に直接通信を行えない場合がある。その際は、AP移行315、及びデータ送信316のステップは、サーバB112及びサーバC122の一方もしくは両方がサーバB112とサーバC122間の通信を、制御用の通信路を用いて、仲介する。
アプリケーションの移行に伴い、機器151に関するデータがサーバC12に送信される。サーバC122は、サーバC122のストレージもしくはストレージ113に機器151に関するデータを格納し、ステップ317で動作するアプリケーションから機器151に関するデータを利用可能にし、アプリケーションを実行する(317)。機器151に関するデータの利用に際し、DBMSなどのミドルウェアの配備が必要な場合、サーバC122上で動作するよう管理サーバC121がサーバC122へ指示する。
サーバC122は、アプリケーションの格納が完了した際、格納完了を管理サーバC12に通知する(318)。管理サーバC121は、自らの持つ管理テーブル1101の更新を行う。管理サーバC121は、格納完了通知をサーバB112に行う(319)。管理サーバB111は、移行完了処理要求をサーバB112及び管理サーバA101に行う(320、321)。
移行完了処理322は、管理サーバA101、及び管理サーバB111にて、機器151からの処理要求がサーバC122で処理されるように、ロードバランサ、DNSサーバ、ネットワーク機器のいずれか一種類以上の関連する機器に、設定変更の指示を行う。例えば、DNSサーバへ情報処理に対応した名前解決の情報変更を依頼する要求を行う。この移行完了処理322により、機器151からアプリケーションへのアクセス経路が変更され、サーバC122に到達する。サーバB112は、サーバC122に対し、移行完了処理が完了したことを通知し、移行のためのサーバB112とサーバC122間の通信を終了する(323)。
上記の手順を実行することにより、管理サーバA10、及び管理サーバB11、及び管理サーバC12が連携し、サーバB112で動作していたアプリケーションを、機器151が送信した位置、経路、機器情報1004を用いて、機器151でサーバから情報処理結果を受信する際の応答品質を損なうことなく、サーバC122でアプリケーションを実行させることにより、情報処理を行うコストを低減することができる。
上記手順では、拠点B110における管理サーバB111がサーバ112上のアプリケーションの移行を拠点C120に対して行ったが、拠点B110、及び拠点C120、及び拠点D130は同一の機能を持つため、拠点間で同様にアプリケーションとデータの移行を行うことができる。また、拠点E140は、ネットワーク接続が、他の拠点と異なるが、拠点E140における管理サーバE141、サーバE142、ストレージ143は、拠点B110における管理サーバB111、及びサーバB112、及びストレージ113と同様の機能を持つため、同様の移行を行うことができる。
ただし、管理サーバE141は、直接、管理サーバA101と通信を行わず、管理サーバE141を管理対象とする管理サーバC121に対して移行の許可などの管理の指示を受け、必要に応じて管理サーバC121は上位の管理サーバである管理サーバA101に対し、管理の指示を受けるよう通信を行う。
ここで、前述した、機器151から要求のあった情報処理を行うアプリケーションをサーバB112以外で動作させるか否かの移行の判定を行う方法について、詳細を述べる。図12は、アプリケーションの移行の判定に利用する、サービス情報テーブル1200の詳細を説明する図である。サービス情報テーブル1200は、アプリケーションID1201、アプリケーション名称1202、配付先1203、稼働状況1204、利用機器1205、配付条件1206が記録されている。
管理サーバA101は、管理サーバA101が管理する管理サーバB111、及び管理サーバC121、及び管理サーバD131が管理対象とするサーバ(サーバB112、及びサーバC122、及びサーバD132等)における、稼働アプリケーションと稼働条件をサービス情報テーブル1200で管理している。サービス情報テーブル1200は、ストレージ、またはストレージ103上に保存され、メモリ202上に読み込まれて更新、管理される。アプリケーションID1201は、それぞれアプリケーションのIDで、アプリケーションごとに一意に設定されている。アプリケーション名称1202は、アプリケーションの名称、サイズ、実行ファイルやパッケージの保管パスが記録されている。配付先1203は、アプリケーションがどのサーバへ配付されているのかを示し、稼働状況1204は、拠点内でどのサーバで稼働しているかの情報が格納されている。
利用機器1205は、配付されたアプリケーションを利用している利用機器のリストである。配付先1203及び稼働状況1204は、利用機器1205の各機器毎に対応づけられる。配付条件1206は、アプリケーションを拠点上のサーバに移行する際に、必要な条件(サーバでの動作OS、及び必要な依存関係のあるプログラムとライブラリ、及び必要リソース(メモリ、及びストレージ、及びネットワーク)等)が記載されている。管理サーバA101は、移行の判定を行う際に、サービス情報テーブル1200を参照し、アプリケーションを移行する必要があるか、判定する。まず、管理サーバA101は、アプリケーションID1201、及び稼働状況1204、及び利用機器1205から、当該機器及び当該アプリケーションが稼働している拠点を調査する。
すでに管理サーバA101に機器151から送信されている位置、経路、機器情報1004の中から、位置情報を用いて、アプリケーションが稼働している拠点と、現在、機器151がアプリケーションを利用している拠点B110との距離の一覧を算出する。その中で、最も距離の近い拠点(この場合、拠点Cとする)を算出し、現在アプリケーションを利用している拠点B110との距離の差があらかじめ定められた値以上か、距離の比があらかじめ定められた値未満の場合、移行は可能で、移行先は拠点C120とすることを判定結果とする。
前述で稼働中の拠点を選出できなかった場合、当該アプリケーションが稼働していない拠点で、配付条件1206に記載された条件を満たす拠点を選出し、前述の位置情報を用いて、選出された拠点と、現在、機器151がアプリケーションを利用している拠点B110との距離の一覧を算出する。その中で、最も距離の近い拠点(この場合、拠点C120とする)を算出し、現在アプリケーションを利用している拠点Bとの距離の差があらかじめ定められた値以上か、距離の比があらかじめ定められた値未満の場合、移行は可能で、移行先は拠点C120とすることを判定結果とする。以上は、位置情報を利用した拠点の判定方法であったが、位置情報の他に、経路情報や機器情報に含まれる各拠点間のRTT(応答時間)や、ルータホップ数を利用してもよい。その際は、応答時間やルータホップ数があらかじめ定められた差や比以上に改善されれば、移行可能として、拠点を選出する。
また、アプリケーションが利用するデータは、複数の拠点上のストレージに分散されている。この分散の方法は、後述する。拠点の選定時に、すでに、アプリケーションが機器151から利用するデータの複製が存在する拠点については、距離や経路による算出に優先して、データの複製が存在する拠点を優先する。データの複製が存在する拠点が、拠点B110と比較し、機器151に対して距離が近い場合、データの複製が存在する拠点に優先してアプリケーションの移動を行う。
この際、データの移動は必要ないため、ステップ316のデータ送信は行われない。ステップ322の移行完了処理において、データの消去やアプリケーションの停止も行われない。
上記のように、管理サーバA101は、管理サーバA101が統括する管理サーバ群の設置されている拠点の中から、アプリケーションが動作可能な拠点を選別し、判定結果と合わせて、管理サーバB111に通知する。
図3において、移行完了通知323のステップが終了すると、機器151におけるアプリケーションの実行は、拠点C120における、サーバC122において行われる準備が完了している。その後、機器151が、情報処理装置(サーバ)に行わせたい、情報処理要求を作成し(301)、情報処理要求をサーバC122へ送信すると、前述した処理要求確認(303)から処理結果送信(308)までの手順が、管理サーバC121、及びサーバC122、及び管理サーバA101にて行われるため。機器151では、引き続き、情報処理を続けることができる。
次に、機器151に関するデータを本実施例の情報処理システムが多重化し、可用性を向上させる方法について、説明する。データの複製の管理は、各サーバ間の分散データ制御部405が通信を行い実施する。初めに、機器151に関するデータが拠点B110のストレージ113上に生成されると、拠点B110のサーバ112上の分散データ制御部405は、管理サーバ121に問い合わせを行い、機器151に関するデータの複製の生成先(配付先)を決定し、配付先へデータを送信する。配付先の選定は、拠点内の配付先は、管理サーバB11が決定する。すでにデータの複製の生成先が決まっており、複製が存在しているデータは、そのデータ複製先を引き継ぐため、新たな拠点へのデータの複製は作られない。
拠点外へのデータの配付(複製)先は、管理サーバB111が、管理サーバA101に問い合わせて決定する。管理サーバB111は、管理サーバA101より、機器151に関するデータの可用性をどのように保つ必要があるかのポリシーについての情報を提供する(ステップ306)。このポリシーとは、例えば、同一拠点内に一つの複製と、拠点外に二つの複製を含むなどである。この拠点外の複製を作成する際に、管理サーバA101及び管理サーバB111は、ともに後述するような地域情報管理テーブルを持っており、条件に合った配付先を決定する。
図9は、拠点情報管理テーブルを説明する図である。拠点情報管理テーブル900には、各拠点の位置情報などが記載されている。拠点情報管理テーブルには、拠点ID901、拠点名902、拠点位置(緯度、経度)903、接続ネットワーク情報904、拠点形態905、拠点のセキュリティレベル906、拠点の被災、停電リスク907のいずれか一種類以上が記載されている。拠点情報管理テーブル900は、管理サーバA101が管理し、管理サーバB111などの管理サーバと共有する。
管理サーバB111は、機器151に関するデータの複製をどの程度作成するかを決定するために、管理サーバA101に問い合わせを行う。管理サーバA101は、あらかじめ、機器151の所有者が決めたポリシーに従ってストレージ上のデータの冗長化の指示を送る。このポリシーとは、例えば、「常にデータの複製を2つ持ち、一つは同一拠点内、一つは100Km以上離れた拠点に作成する。」のようなものである。
この場合、管理サーバB111は、拠点情報管理テーブルの拠点ID901、及び拠点位置903などから、距離を判断し、複製を作成する拠点を決定する。また、例えば、ポリシーが、「接続ネットワークの異なる3拠点に作成する。」であれば、管理サーバB111は、拠点情報管理テーブルの接続ネットワーク情報904から、接続ネットワークを判断し、拠点を決定する。また、例えば、ポリシーが、「拠点のグレードを示す拠点形態、セキュリティレベル、被災、停電リスクのいずれか一種類以上が一定の値以上である3拠点に作成する。」であれば、管理サーバB111は、拠点情報管理テーブルの拠点形態905、拠点のセキュリティレベル906、拠点の被災、停電リスク907のいずれか一種類以上とそれらの値から、拠点の選別と拠点の決定を行う。
例えば、ポリシーが、「常にデータの複製を1つ持ち、データを参照するアプリケーションの稼働している拠点」である場合、管理サーバB111は、動作アプリケーション情報1109を調査し、稼働している拠点を複製を作成する拠点として決定する。
アプリケーション種別が、利用者及び利用機器毎に区別して管理されているとすると、アプリケーションを利用者が利用する毎に、アプリケーションの稼働する拠点は、利用機器から物理的に近い拠点もしくは、利用機器とのネットワーク上の応答が短い拠点上で動作することになる。
本実施例のシステムが、動作を続けると、あるデータに対する複製は、いったん決められたポリシーに従って、同一の拠点に作成されるが、上記、「データを参照するアプリケーションの稼働している拠点」とする場合、アプリケーションの稼働拠点が移行することが頻繁に起こる。その際、管理サーバB111は、複製の作成先の拠点をアプリケーションの稼働している拠点へ変更する。以前複製の作成先とされていた拠点上のデータは消去され、新たに選択された拠点上に複製が作成される。
上記のように複製の作成先を変更することによって、あるデータを作成もしくは参照もしくは更新するアプリケーションやそのアプリケーションを利用する機器が複数ある場合、アプリケーションを利用する利用者や利用機器にとって、応答性能やスループットの良い拠点上でアプリケーションが実施されるうえ、データやデータの複製が前記の拠点上に作成されるようになるため、アプリケーションの処理時間を含めた、アプリケーションの利用効率が向上し、利用者のアプリケーションを利用する体感品質が向上するという効果がある。
以下、「常にデータの複製を2つ持ち、一つは同一拠点内、一つは100Km以上離れた拠点に作成する。」というポリシーが、機器151に関するデータに対して設定されていたものとする。
管理サーバB111の指示により、分散データ制御部405は、機器151に関するデータの複製を拠点内と、100Km以上離れた拠点D130に作るよう動作する。分散データ制御部405は、管理サーバB111の指示したストレージ113と、拠点D130のサーバ上の分散データ制御部405と接続を行い、機器151に関するデータの複製を作成する。機器151に関するデータが更新されるたびに、分散データ制御部405がそれぞれの複製を更新する。
ここで、分散データ制御部405が、データの複製を作成するように記載したが、データのコピー(バックアップ)である複製を作るのではなく、分散データ・ガーディングのような、データとパリティの集合をいくつかのストレージで分担するような冗長化を実施してもよい。
次に、図13から図16を用いて、機器151及び機器152が、図示しないアクセスネットワーク及び基幹ネットワーク160を介して、アプリケーションとデータを利用する際、アプリケーションやデータが拠点間で移動されたり、複製されたりする手順を説明する。
図13に、機器151が利用するアプリケーション1301、及びデータ1302がそれぞれサーバB112上で動作し、ストレージ1303上に保存されているものとする。すでに説明したアプリケーションとデータの拠点移動のステップにより、ステップ315でアプリケーション1301がサーバB112上からサーバC122上に、ステップ316で、データ1302がストレージ113からストレージ123に移動する。移行完了処理332において、サーバB112上のアプリケーション1301が停止され、データ1302が消去される。(図14)
ここで、データの複製が、拠点D130に作られるとすると、図15に示すように、管理サーバ131は、ストレージ133上にデータの複製1303を作成するよう指示する。その後、機器151が移動し、機器151の位置、またはネットワーク上のアドレスが変わると、サーバC122上で動作しているアプリケーション1301の移動先が管理サーバC121において判定される。この際、拠点D130内にはすでに、ストレージ上にデータの複製が存在しており、拠点D130は、アプリケーションの移動先として、優先的に管理サーバC121に選択される。この際、すでに述べたアプリケーションの移行は行われるが、データの移行は必要ないため、ステップ316でのデータの移行は行われない。また、ステップ322での移行完了処理におけるデータの消去は行われない。
上記のようにアプリケーションの移行が行われると、図16に示すように、アプリケーション1301が、それぞれ拠点C120及び拠点D130において動作し、データ1302及びデータの複製1303がそれぞれ、拠点C120及び拠点D130に配付される。機器151の位置が、拠点D130に比較し、拠点C120に近いか、機器151から拠点C120のネットワーク上の距離が拠点D130に比べて近い場合、機器151から利用されるアプリケーション及びデータは、アプリケーション1301及びデータ1302となる。また、機器151の位置が、拠点C120に比較し、拠点D130に近いか、機器151から拠点D130のネットワーク上の距離が拠点C120に比べて近い場合、機器151から利用されるアプリケーション及びデータは、アプリケーション1301及びデータの複製1303となる。
ここで、機器151からアプリケーション1301を介してデータの複製1303に更新が加えられた場合、各々のサーバ上の分散データ制御部405は、データの複製1303に加えられた更新の情報を共有し、更新情報をデータ1302に反映する。上記の更新の反映により、機器151は、サーバC122及びサーバD132上のどちらのアプリケーション1301を利用しても、同じアプリケーションを介してデータを利用することができ、アプリケーションの応答性能を向上出来たり、データの参照、記録(更新)の速度が向上される効果がある。
上記では、機器151に依存してデータの移行及びアプリケーションの移行及びデータの複製の作成が行われるように説明しているが、機器が利用者毎にグループ化されて管理されていてもよい。このようにすることにより、図16で示す例で利用者が利用する機器が151でなく、機器152であったとしても、同様の効果が得られる。このようにすることにより、機器151が生成したセンサ情報をアプリケーション1301経由でデータ1302に付加し、機器152がその付加されたデータを参照する際にアプリケーション1301経由でデータ1303にアクセスするということができる。このようにすることにより、効率良く、機器152からのアプリケーションの応答性能を向上させたり、データの参照の速度が向上させたりすることができる。
この利用者毎に機器を管理するのは、サービス情報テーブル1200の利用機器1205において、利用する機器を利用者に応じてグループ化しておくことにより、実現する。例えば、機器151と機器152を利用する利用者は同様であるとするなら、サービス情報テーブル1200の利用機器1205において、機器151と機器152を同様にみなす。
以上のように、利用者の端末などの機器と各拠点に設置した、サーバ、管理サーバが連携することにより、動的な生成結果を出力するようなアプリケーションを本来稼働しているオリジンサーバのある中央のデータセンタから、分散した末端のデータセンタへ移動することにより、中央のデータセンタのネットワークアクセスにかかる負荷を軽減することが可能になる。
このことにより、本実施例の情報処理システムは、データセンタのコストを低減することができ、機器を利用し、データセンタ内のアプリケーションやデータによる情報処理を利用する利用者が負担するコストを下げることができるという効果を奏する。
また、本実施形態の情報処理システムは、毎回処理が異なるような情報処理を行う情報処理システムに対する適用は、効果が高く、回線品質の維持にかかるコストを低減することができる。あらかじめ動的生成処理を行い、配付点に配付する方式ではなく、アプリケーションを配付するため、配付により多量のデータを生成し、ストレージを消費し、コスト増が発生するという課題も解消できる。
本実施形態の情報処理システムにおいて、例えば、機器が、カーナビやPC、携帯電話のような利用者が持つ端末機器である場合、利用者が利用するアプリケーションが、利用者と物理的に近い位置もしくは、ネットワーク上で近い位置に存在する拠点(データセンタ)に実行するアプリケーションが配置される。このため、一か所の拠点(データセンタ)へ処理が集中し、端末機器を利用する利用者への、アプリケーションを実行する際の、アプリケーションの応答時間が長くなったり、データを送受信する時間が長くなるといった課題が解消でき、利用者のシステム利用時の体感品質を向上できる。
また、上記の機器は、場所を移動して利用されることが多いが、機器の場所が移動しても、機器からサーバもしくは管理サーバへ送信される位置情報や経路情報や機器情報を管理サーバが利用することにより、アプリケーションとデータが配置される拠点(データセンタ)は利用者の体感品質を高めることができる拠点が選別される。
また、例えば、機器が、メータ機器や温度計、電力計などの計器のようなセンサや人流解析器、監視カメラ、認証機器などの制御用機器である場合、センサや制御用機器からの要求を受けて動作するアプリケーションが、センサと物理的に近い位置もしくは、ネットワーク上で近い位置に存在する拠点(データセンタ)に実行するアプリケーションが配置される。
このため、一か所の拠点(データセンタ)へデータや処理が集中し、拠点(データセンタ)のネットワーク帯域が不足し、センサや制御用機器からの要求にたいする情報処理が滞ることがなく、センサや制御用機器を利用して情報処理を行う事業者が、拠点(データセンタ)の設備を増強したり、帯域不足に対する追加のコスト負担をする必要がなくなるという効果がある。
また、例えば、拠点が、RSUであり、機器が車載器である場合、車載器から送信される、データセンタから情報を求めるための位置情報、運行情報、燃費情報などのいずれか一種類以上を含んだ処理要求や、車載器に搭載された映像、音声、温度などの測定結果などのいずれか一種類以上を含んだ処理要求がRSUに送信され、拠点において情報処理されるか、もしくは、RSU上に蓄積された情報がRSU上で処理され、車載器で表示される。本実施形態で示す配付方法を利用すれば、車載器に対し物理的距離が近い拠点やネットワーク上での通信遅延が少ない拠点上で情報処理が行われるため、車載器で情報処理結果が早く表示され、ユーザの体感品質が上がる。
RSUと車載器の通信距離が短い場合、情報処理を行う時間が短いことで、対応できる車載器の搭載された車の車速を向上できたり、送信する情報の量を増やしたりすることができる。また、車載器が拠点に送信する情報が大きい場合、一か所の拠点(データセンタ)へデータや処理が集中し、拠点(データセンタ)のネットワーク帯域が不足し、車載機器からの要求に対する情報処理が滞る割合を減らし、センサや制御用機器を利用して情報処理を行う事業者が、拠点(データセンタ)の設備を増強したり、帯域不足に対する追加のコスト負担を事業者がする必要が少なくなるという効果がある。
また、例えば、拠点が、監視カメラ用のネットワーク送信の中継設備であり、機器が監視カメラである場合、監視カメラから送信される映像及び音声の情報は、本実施例で示す配付方法に従えば、監視カメラの設置位置に対し物理的距離が近い拠点やネットワーク上での通信遅延が少ない拠点上で情報処理が行われる。また、監視カメラによる監視結果を確認するPCなどの別の機器が存在する場合、監視カメラでの監視結果の複製は、別の機器に対し物理的距離が近い拠点やネットワーク上での通信遅延が少ない拠点上にデータの複製が作成される。
よって、上記の別の機器が監視結果を参照する際の処理時間が短くなるため、ユーザの体感品質が向上する。また、複製を作成する拠点は、監視結果を生成する機器(監視カメラ)から物理的距離が近い拠点やネットワーク上での通信遅延が少ない拠点と、上記別の機器に対し物理的距離が近い拠点やネットワーク上での通信遅延が少ない拠点に設置されるため、効率よいデータの複製が実現でき、システム全体として、各拠点のストレージ容量を増強するというコスト負担を事業者がする必要が少なくなるという効果がある。
次に、第2の実施形態を図面を参照しながら説明する。第2の実施形態に示す情報処理システムは、第1の実施例に示す情報処理システムと同様であるが、分散されている「機器に関するデータ」のメタデータを管理サーバA101が収集し、ストレージ103に記憶するところが異なる。
図5に、第2の実施形態の情報システムにおける、管理サーバA101及びストレージ503の構成図を示す。管理サーバA101は、ストレージ503上に管理サーバA101の管理対象とする管理サーバがそれぞれ管理対象としているストレージに記憶されるデータのメタデータを管理し、保存する。メタデータの管理は、メタデータ管理部403が行う。
メタデータとは、あるデータについて、そのデータが付随して持っているデータの内容を抽象化したデータのことを意味する。主に、検索時に、データ本体を検索せずに、データの内容や性質を高速に知ることができる手段として利用される。管理サーバA101上のストレージ503に集積される利用されるメタデータの詳細を図6に示す。メタデータ600を構成する各要素は、図示する通り、ファイルオブジェクトの名前601、ID602、サイズ603、パス名604、レプリケーション605、所有者606、パーミッション607、利用するアプリケーション608、そのほかのパラメータ609のいずれか一種類以上である。
ファイルオブジェクトの名前601は、ファイルオブジェクトの名前である。ID602は、ファイルオブジェクトに一意につけられたIDである。サイズ603は、ファイルオブジェクトのサイズである。パス名604は、ファイルオブジェクトは、格納されているサーバやディレクトリなどのファイルにアクセスするためのアクセス情報である。レプリケーション605とは、ファイルオブジェクトの複製が作成された個数と、その格納場所を示す。
所有者606は、そのファイルオブジェクトを作成した、ファイルオブジェクトの改変や移動や削除の権限を持つ利用者の識別子である。パーミッション607は、ファイルオブジェクトの所有者やそのほかの利用者がファイルオブジェクトに対してどのようなアクセス権限を持つのかである。利用するアプリケーション608は、ファイルオブジェクトを利用するサーバ上のアプリケーションの種別やIDやバージョン情報である。そのほかのパラメータ609は、ファイルオブジェクトの種別に依存した、データに付帯した情報である。
例えば、データの種別が画像であれば、メタデータは、作成日時、位置情報、カメラパラメータ、サムネールなどのいずれか一種類以上が各要素である。また、例えば、データの種別がドキュメントであれば、メタデータは、サイズ、ページ数、文字数、タイトルなどのいずれか一種類以上が各要素である。また、例えば、データの種別が動画であれば、メタデータは、フレームレート、ビットデート、サイズ、コーデックのIDなどのいずれか一種類以上が各要素である。また、データの種別に寄らず、メタデータは、ファイルの場所、サイズ、パス名、ファイル名、キーワード、更新日時、ファイル種別、著作権情報、作者、レーティング、アクセスパーミッション、コメントなどのいずれか一種類以上が各要素である。また、例えば、データ内容の分析結果や、検索のためのインデックス情報等をメタデータの要素として含めてもよい。
拠点B〜D内の管理サーバは、自らの管理対象である、管理サーバの設置された拠点のストレージ(ストレージ113、またはストレージ123,またはストレージ133,またはストレージ143のいずれか一つ)にデータが書き込まれると、後述する方法で、データのメタデータを取得し、管理サーバA101に送信する。管理サーバA101は、ストレージ103にメタデータ504を記録する。
拠点B〜D内のサーバ(サーバB112,サーバC122,サーバD132)は、サーバの設置された拠点のストレージ(それぞれストレージ113、123,133)上のストレージへアクセスするための分散データ制御部405を持つ。サーバB11,サーバC12,サーバD132上で実行されるアプリケーションからストレージ上のデータに対するアクセス要求を仲介して、ストレージ113,及びストレージ123,及びストレージ133上のデータにアクセスし、データの作成や更新、追記、削除などを行う。
データ管理部405は、相互に通信を行い、それぞれ、管理サーバB11,及び管理サーバC12,及び管理サーバD131の指示に従い、ストレージ113,及びストレージ123,及びストレージ133上のデータの作成や更新、追記、削除などを行う。ストレージ113、及びストレージ123,及びストレージ133上のデータの作成や更新、追記、削除が行われると、メタデータ管理部403は、データオブジェクトのメタデータを作成し、それぞれの拠点の管理サーバへメタデータを送付する。
管理サーバ(111,121,131)の取得したメタデータは、管理サーバA101へ送付され、それぞれのファイルオブジェクトごとにストレージ103上に管理(メタデータ304に対して、作成時は追加、更新、追記時は更新、削除時は削除)される。
今、機器151が、サーバB112上で動作するアプリケーションを利用して情報処理を行っているとする。この場合、サーバB112上のアプリケーションが参照もしくは作成するデータは、分散データ制御部405を経由してストレージ113にそれぞれ読み出しもしくは記録される。この際、分散データ制御部405は、通信可能なその他のサーバ上のデータ制御部と通信し、あらかじめ定められた数のデータのレプリケーション(複製)を作成する。このレプリケーションの作成は、データの可用性や耐災害性を高めるために行う。
分散データ制御部405は、管理サーバB111が決定したレプリケーション記録先に、あらかじめ定められた数のレプリケーションを作成しながら、データの作成、更新、削除を行う。
管理サーバA101は、ある機器に紐付けられたデータ(ある機器が情報処理で利用するデータ)とその複製がどの拠点のストレージに格納されているかを、メタデータ504により、管理している。管理サーバA101は、移行判定304のステップで、アプリケーションの稼働する拠点を選択する際に、データが記録されている拠点を優先し、次にデータの複製が記録されている拠点を優先する。以上の判定によって、ある機器に紐付けられたデータの拠点間の移動が抑制され、機器を利用する事業者が負担するコストを低減することができる。
以下では、具体的に、センサからデータをサーバ上に蓄積し、演算処理をするような情報処理を例にとり、本実施形態の情報処理システムが、データとメタデータを管理する方法について、説明する。図7は、本実施形態の情報処理システムにおいて、センサのような機器が、サーバに対し、データの送信を伴った情報処理を行う際のシーケンス図を示したものである。
機器151は、センサ機能を持つ機器であり、センサ部分で入手した情報を拠点Bのサーバもしくは、サーバの記録領域であるストレージ113に情報を記録させる役割を持つものである。機器151は、サーバB112に対して処理を行わせたい、情報処理要求を作成する(301)。この情報処理要求とは、機器151がセンサであるので、測定した温度や消費電力量、記録音声、記録映像などの測定データとその内容の記録の指示である。本例では、機器151が消費電力量を量る電力計であるとして説明する。
機器151は、サーバB112へ情報処理要求301で作成した内容の情報処理を実施させるため、処理要求送信(302)において、サーバB112へ処理要求を送信する。その後、サーバB112、管理サーバB111、管理サーバA101のそれぞれの間で前述した処理要求確認(304)、移行判定要求(305)、移行判定結果送信(306)、確認結果送信(307)を行う。
次に、サーバB112は、情報処理結果を生成すなわち、情報処理要求に含まれるデータに対する指示された処理(例えば、項目の総和や平均を求めたり、測定結果から、課金情報や統計情報を求める)を行い、測定データと処理済のデータをサーバB112もしくはストレージ113への格納を行う。次にサーバB112は、格納した測定データと処理済のデータについて、メタデータを算出し、管理サーバB111を経由して、管理サーバA101へ送信する(701,702)。管理サーバA101は、受け取ったメタデータをストレージ503に格納する。
ここで、サーバB112は、データの記録を行った成否の情報などの生成された処理結果を機器151に送信する(309)。上述のプロセスにおいて、情報処理を行うアプリケーションの移行が必要であれば、前述した手順でアプリケーションの移行を行う。管理サーバA101は、受け取ったメタデータをメタデータ504に追記、更新し、ストレージ103上で管理する。メタデータ504を管理サーバA101が参照することにより、拠点のストレージ上のデータとして何が存在し、どのような付帯情報を持っているかが把握できる。このため、管理拠点において、そのほかの拠点群で管理されたデータについて、情報処理の要求が利用者からあれば、第一の実施形態で説明したアプリケーションの移行を利用することにより、データの存在する場所へアプリケーションを移行し、情報処理を行うことができる。
図7で図示しない別の機器(機器152とする)から、ストレージ113に保存されたデータ(以降データBと呼ぶ)に対する情報処理の要求がサーバC122に送信されたとする。ステップ750にて、サーバC122は、処理要求を受信する。
ここで、機器152は、機器151をはじめとするその他のセンサを管理している利用者が利用する端末で、機器151を含む機器からのデータを集約する情報処理を統括する処理をサーバに実行依頼する端末である。例えば、電力計に対する処理は、計測結果の集約や表示や集計結果から算出される、課金情報や統計情報の表示である。
サーバC122は、処理要求の確認を行う(303)。サーバC122は、管理サーバB111に処理要求確認を依頼(304)する。この処理要求確認304のステップは、機器152から処理要求が送信された際に、毎回行ってもよいし、処理がある定められた期間内において最初に行われた際のみに行ってもよいし、ある定められた期間において定められた頻度で行ってもよい。処理要求303のステップで、処理要求が、データBに対する集計処理(例えば、データ全体(電力使用量の時系列)の平均を求めるであったり、データ(電力使用量)から課金情報を求めたりするような処理)であるとすると、移行判定要求305に対する管理サーバA101の回答(判定結果)は、データBの記録されている拠点においてアプリケーションを実行するよう、アプリケーション及びデータの移行の指示を含むものとなる。
管理サーバC121及びサーバC122は、AP移行準備310から移行完了通知323の手順において、アプリケーションの移行を行う。ここで、アプリケーションの移行先は、拠点Bのサーバであると管理サーバA101もしくは、管理サーバB111が決定したものとして、説明を進める。
AP移行がステップ323により終了すると、サーバC122は、機器152から受け取った処理要求をサーバB112に送信し(703)、処理要求の確認(704)と処理結果作成(705)を行う。作成された処理結果は、サーバB112から、ステップ706においてサーバC122に送信される。サーバC122は受け取った処理結果を利用し、機器152に処理結果を通知する。
ここで、機器152が、データBに対する集計処理を要求してきたとして説明を行ったが、機器152が、複数のデータに対する集計処理を要求した場合、管理サーバA101は、複数の拠点に対するアプリケーション移行の指示をサーバC12に行い、複数のアプリケーションの移行を実施する。ステップ706で送信される処理結果は複数集まるため、サーバC12は、複数の処理結果を最終の処理結果とし、機器152に通知する。
以上のように処理することにより、データBが記録されている拠点のサーバ上で、機器から要求された処理を実行し、処理結果を機器に送信することができる。
このことにより、機器から収集されたデータ(データB)を機器に近い拠点に記録し、情報処理に利用することができるので、管理拠点100や拠点B110などの特定の拠点のデータ通信が集中するようなことが起きず、各拠点の情報処理機器を効率的に利用することができる。また、管理拠点100などの特定の拠点のストレージ保管コストが高い場合、機器から収集されたデータを機器に近い拠点に記録することにより、データ記録のストレージ保管コストを低減することが可能となる。
100:管理拠点、101:管理サーバA、102:サーバA、103:ストレージ、111:管理サーバB、112:サーバB、113:ストレージ、121:管理サーバC、122:サーバC、123:ストレージ、131:管理サーバD、132:サーバD、133:ストレージ、141:管理サーバE、142:サーバE、143:ストレージ、151〜154:機器、160:基幹ネットワーク、161、162:アクセスネットワーク、403:メタデータ管理部、405:分散データ制御部、503:ストレージ、504:メタデータ、600:メタデータ、900:拠点情報管理テーブル、901:拠点ID、902:拠点名、903:拠点位置、904:接続ネットワーク情報、905:拠点形態、906:セキュリティレベル、907:停電リスク、1100:管理テーブル、1101:サーバID、1102:サーバ名、1103:アドレス、1104:可能メモリ量、1105:可能ストレージ量、1106:CPU情報、1107:動作可能VM種別、1108:動作可能アプリケーション種別、1109:動作アプリケーション情報、1110:アプリケーション稼働実績、1111:コスト、1200:サービス情報テーブル、1201:アプリケーションID、1202:アプリケーション名称、1203:配付先、1204:稼働状況、1205:利用機器、1206:配付条件。

Claims (12)

  1. アプリケーションを実行するサーバと、データを記録するストレージを有するファイルサーバと、前記サーバと前記ファイルサーバを管理する管理サーバと、を備える拠点複数、ネットワークを介して接続され情報処理システムであって、
    第1の拠点の第1の前記管理サーバは、
    アプリケーションの実行をネットワークを介して指示する機器の位置情報を取得し
    複数の前記サーバの位置情報と取得した前記機器の前記位置情報とに基づいて、前記アプリケーション実行サーバを第1のサーバから第2の拠点の第2のサーバへ変更することを決定し、
    前記第2のサーバを管理する第2の前記管理サーバへ、前記第1のサーバから前記第2のサーバへの前記アプリケーション及びデータの移行の指示を送信し、
    前記第2の管理サーバは、
    前記第1の管理サーバへ前記第2のサーバを特定する情報を送信し、
    前記第2のサーバへ、前記移行の指示を送信し、
    前記第1の管理サーバは、前記第2のサーバを特定する前記情報を前記第1のサーバへ送信し、
    前記第2のサーバは、
    前記第1のサーバから、前記アプリケーション実行に用いる情報及び前記データを受信し、
    前記アプリケーションを実行し、
    受信した前記データを前記第2の拠点の第2のファイルサーバへ格納し、
    前記第1の管理サーバは、前記第2のサーバ上で前記アプリケーション実行され、及び前記データ行すると、前記機器から指示される前記アプリケーション実行させるサーバ前記第1のサーバから前記第2のサーバへ変更する指示を前記ネットワークを構成するネットワーク機器送信する
    ことを特徴とする情報処理システム。
  2. 請求項1に記載の情報処理システムであって、
    前記第1の管理サーバは、前記データに対する演算処理を行う第2のアプリケーションの実行の指示を受け取ると、前記第2のサーバを管理する前記第2の管理サーバへ、前記第2のアプリケーションの移行の指示を送信し、
    前記第2のサーバは、前記データを入力とした前記第2のアプリケーションの演算結果を前記第1のサーバへ送信する
    ことを特徴とする情報処理システム。
  3. アプリケーションを実行するサーバと、データを記録するストレージを有するファイルサーバと、前記サーバと前記ファイルサーバを管理する管理サーバと、を備える拠点複数、ネットワークを介して接続され情報処理システムであって、
    第一の拠点の第1の前記管理サーバは、
    前記ネットワーク情報を取得し
    複数の前記サーバとアプリケーションの実行を指示する機器前記ネットワーク上のホップ数情報に基づいて、前記アプリケーションを実行するサーバを第1のサーバから第2の拠点の第2のサーバへ変更することを決定し、
    前記第2のサーバを管理する第2の前記管理サーバへ、前記第1のサーバから前記第2のサーバへの前記アプリケーション及びデータの移行の指示を送信し、
    前記第2の管理サーバは、
    前記第1の管理サーバへ前記第2のサーバを特定する情報を送信し、
    前記第2のサーバへ、前記移行の指示を送信し、
    前記第1の管理サーバは、前記第2のサーバを特定する前記情報を前記第1のサーバへ送信し、
    前記第2のサーバは、
    前記第1のサーバから、前記アプリケーション実行に用いる情報及び前記データを受信し、
    前記アプリケーションを実行し、
    受信した前記データを前記第2の拠点の第2のファイルサーバへ格納し、
    前記第1の管理サーバは、前記第2のサーバ上で前記アプリケーション実行され、及び前記データ行すると、前記機器から指示される前記アプリケーション実行させるサーバ前記第1のサーバから前記第2のサーバへ変更する指示を前記ネットワークを構成するネットワーク機器送信する
    ことを特徴とする情報処理システム。
  4. 請求項3に記載の情報処理システムであって、
    前記第1の管理サーバは、前記データに対する演算処理を行う第2のアプリケーションの実行の指示を受け取ると、前記第2のサーバを管理する前記第2の管理サーバへ、前記第2のアプリケーションの移行の指示を送信し、
    前記第2のサーバは、前記データを入力とした前記第2のアプリケーションの演算結果を前記第1のサーバへ送信する
    ことを特徴とする情報処理システム。
  5. ネットワークを介して接続されたアプリケーションを実行する複数のサーバと、データを記録するためのストレージを有する複数のファイルサーバと、を管理する管理サーバ群であって、
    前記管理サーバ群の第1の管理サーバは、
    アプリケーションへの処理要求を送信する機器の位置情報を取得し、
    前記管理サーバ群が有する複数の前記サーバの位置情報と、取得した前記機器の前記位置情報と、に基づいて、前記アプリケーションを実行するサーバを第1の前記サーバから第2の前記サーバへ変更することを決定し、
    前記第2のサーバを管理する前記管理サーバ群の第2の管理サーバへ、前記第1のサーバから前記第2のサーバへの前記アプリケーション及びデータの移行の指示を送信し、
    前記第2の管理サーバは、
    前記第1の管理サーバへ前記第2のサーバを特定する情報を送信し、
    前記第2のサーバへ、前記移行の指示を送信し、
    前記第1の管理サーバは、前記第2のサーバを特定する前記情報を前記第1のサーバへ送信し、
    前記第2のサーバは、
    前記第1のサーバから、前記アプリケーションの実行に用いる情報及び前記データを受信し、
    前記アプリケーションを実行し、
    受信した前記データを前記第2の拠点の第2のファイルサーバへ格納し、
    前記第1の管理サーバは、前記第2のサーバ上で前記アプリケーションが実行され、及び前記データを移行すると、前記機器による前記アプリケーションへの処理要求の送信先を、前記第1のサーバから前記第2のサーバへ変更する指示を、前記ネットワークを構成するネットワーク機器へ送信する
    ことを特徴とする管理サーバ群。
  6. 請求項5に記載の管理サーバ群であって、
    前記第1の管理サーバは、前記データに対する演算処理を行う第2のアプリケーションの実行の指示を受け取ると、前記第2のサーバを管理する前記第2の管理サーバへ、前記第2のアプリケーションの移行の指示を送信し、
    前記第2のサーバは、前記データを入力とした前記第2のアプリケーションの演算結果を前記第1のサーバへ送信する
    ことを特徴とする管理サーバ群。
  7. ネットワークを介して接続されたアプリケーションを実行する複数のサーバと、データを記録するためのストレージを有する複数のファイルサーバと、を管理する管理サーバ群であって、
    前記管理サーバ群の第1の管理サーバは、
    前記ネットワークの情報を取得し、
    複数の前記サーバとアプリケーションの実行を指示する機器との前記ネットワーク上のホップ数情報に基づいて、前記アプリケーションを実行するサーバを第1の前記サーバから第2の前記サーバへ変更することを決定し、
    前記第2のサーバを管理する前記管理サーバ群の第2の管理サーバへ、前記第1のサーバから前記第2のサーバへの前記アプリケーション及びデータの移行の指示を送信し、
    前記第2の管理サーバは、
    前記第1の管理サーバへ前記第2のサーバを特定する情報を送信し、
    前記第2のサーバへ、前記移行の指示を送信し、
    前記第1の管理サーバは、前記第2のサーバを特定する前記情報を前記第1のサーバへ送信し、
    前記第2のサーバは、
    前記第1のサーバから、前記アプリケーションの実行に用いる情報及び前記データを受信し、
    前記アプリケーションを実行し、
    受信した前記データを前記第2の拠点の第2のファイルサーバへ格納し、
    前記第1の管理サーバは、前記第2のサーバ上で前記アプリケーションが実行され、及び前記データを移行すると、前記機器による前記アプリケーションへの処理要求の送信先を、前記第1のサーバから前記第2のサーバへ変更する指示を、前記ネットワークを構成するネットワーク機器へ送信する
    ことを特徴とする管理サーバ群。
  8. 請求項7に記載の管理サーバ群であって、
    前記第1の管理サーバは、前記データに対する演算処理を行う第2のアプリケーションの実行の指示を受け取ると、前記第2のサーバを管理する前記第2の管理サーバへ、前記第2のアプリケーションの移行の指示を送信し、
    前記第2のサーバは、前記データを入力とした前記第2のアプリケーションの演算結果を前記第1のサーバへ送信する
    ことを特徴とする管理サーバ群。
  9. 複数の計算機上で実行されることにより管理サーバ群を実現するサーバ管理プログラムであって、
    前記管理サーバ群は、ネットワークを介して接続されたアプリケーションを実行する複数のサーバと、データを記録するためのストレージを有する複数のファイルサーバと、を管理し、
    前記管理サーバ群の第1の管理サーバは、
    アプリケーションへの処理要求を送信する機器の位置情報を取得し、
    前記管理サーバ群が有する複数の前記サーバの位置情報と、取得した前記機器の前記位置情報と、に基づいて、前記アプリケーションを実行するサーバを第1の前記サーバから第2の前記サーバへ変更することを決定し、
    前記第2のサーバを管理する前記管理サーバ群の第2の管理サーバへ、前記第1のサーバから前記第2のサーバへの前記アプリケーション及びデータの移行の指示を送信し、
    前記第2の管理サーバは、
    前記第1の管理サーバへ前記第2のサーバを特定する情報を送信し、
    前記第2のサーバへ、前記移行の指示を送信し、
    前記第1の管理サーバは、前記第2のサーバを特定する前記情報を前記第1のサーバへ送信し、
    前記第2のサーバは、
    前記第1のサーバから、前記アプリケーションの実行に用いる情報及び前記データを受信し、
    前記アプリケーションを実行し、
    受信した前記データを前記第2の拠点の第2のファイルサーバへ格納し、
    前記第1の管理サーバは、前記第2のサーバ上で前記アプリケーションが実行され、及び前記データを移行すると、前記機器による前記アプリケーションへの処理要求の送信先を、前記第1のサーバから前記第2のサーバへ変更する指示を、前記ネットワークを構成するネットワーク機器へ送信する
    ことを特徴とするサーバ管理プログラム。
  10. 請求項9に記載のサーバ管理プログラムであって、
    前記サーバ管理プログラムにより実現される前記第1の管理サーバは、前記データに対する演算処理を行う第2のアプリケーションの実行の指示を受け取ると、前記第2のサーバを管理する前記第2の管理サーバへ、前記第2のアプリケーションの移行の指示を送信し、
    前記サーバ管理プログラムにより実現される前記第2のサーバは、前記データを入力とした前記第2のアプリケーションの演算結果を前記第1のサーバへ送信する
    ことを特徴とするサーバ管理プログラム。
  11. 複数の計算機上で実行されることにより管理サーバ群を実現するサーバ管理プログラムであって、
    前記管理サーバ群は、ネットワークを介して接続されたアプリケーションを実行する複数のサーバと、データを記録するためのストレージを有する複数のファイルサーバと、を管理し、
    前記管理サーバ群の第1の管理サーバは、
    前記ネットワークの情報を取得し、
    複数の前記サーバとアプリケーションの実行を指示する機器との前記ネットワーク上のホップ数情報に基づいて、前記アプリケーションを実行するサーバを第1の前記サーバから第2の前記サーバへ変更することを決定し、
    前記第2のサーバを管理する前記管理サーバ群の第2の管理サーバへ、前記第1のサーバから前記第2のサーバへの前記アプリケーション及びデータの移行の指示を送信し、
    前記第2の管理サーバは、
    前記第1の管理サーバへ前記第2のサーバを特定する情報を送信し、
    前記第2のサーバへ、前記移行の指示を送信し、
    前記第1の管理サーバは、前記第2のサーバを特定する前記情報を前記第1のサーバへ送信し、
    前記第2のサーバは、
    前記第1のサーバから、前記アプリケーションの実行に用いる情報及び前記データを受信し、
    前記アプリケーションを実行し、
    受信した前記データを前記第2の拠点の第2のファイルサーバへ格納し、
    前記第1の管理サーバは、前記第2のサーバ上で前記アプリケーションが実行され、及び前記データを移行すると、前記機器による前記アプリケーションへの処理要求の送信先を、前記第1のサーバから前記第2のサーバへ変更する指示を、前記ネットワークを構成するネットワーク機器へ送信する
    ことを特徴とするサーバ管理プログラム。
  12. 請求項11に記載のサーバ管理プログラムであって、
    前記サーバ管理プログラムにより実現される前記第1の管理サーバは、前記データに対する演算処理を行う第2のアプリケーションの実行の指示を受け取ると、前記第2のサーバを管理する前記第2の管理サーバへ、前記第2のアプリケーションの移行の指示を送信し、
    前記サーバ管理プログラムにより実現される前記第2のサーバは、前記データを入力とした前記第2のアプリケーションの演算結果を前記第1のサーバへ送信する
    ことを特徴とするサーバ管理プログラム。
JP2014510963A 2012-04-20 2012-04-20 情報処理システム、管理サーバ群、および、サーバ管理プログラム Expired - Fee Related JP5970541B2 (ja)

Applications Claiming Priority (1)

Application Number Priority Date Filing Date Title
PCT/JP2012/002730 WO2013157042A1 (ja) 2012-04-20 2012-04-20 分散アプリケーション及びデータホスティングシステム

Publications (2)

Publication Number Publication Date
JPWO2013157042A1 JPWO2013157042A1 (ja) 2015-12-21
JP5970541B2 true JP5970541B2 (ja) 2016-08-17

Family

ID=49383039

Family Applications (1)

Application Number Title Priority Date Filing Date
JP2014510963A Expired - Fee Related JP5970541B2 (ja) 2012-04-20 2012-04-20 情報処理システム、管理サーバ群、および、サーバ管理プログラム

Country Status (3)

Country Link
US (1) US9654415B2 (ja)
JP (1) JP5970541B2 (ja)
WO (1) WO2013157042A1 (ja)

Families Citing this family (13)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
CN104239083A (zh) * 2013-06-21 2014-12-24 中兴通讯股份有限公司 移动终端的应用的迁移方法、装置以及系统
US9396009B2 (en) * 2014-01-30 2016-07-19 International Business Machines Corporation Optimized global capacity management in a virtualized computing environment
JP2015191301A (ja) * 2014-03-27 2015-11-02 富士通株式会社 通信制御装置、蓄積装置、通信制御方法、及び通信制御プログラム
WO2016017021A1 (ja) * 2014-08-01 2016-02-04 株式会社日立製作所 経路解決システム及び経路解決方法
KR102332934B1 (ko) * 2014-12-10 2021-11-30 삼성전자주식회사 다른 전자 장치와 연결되는 전자 장치 및 그 제어 방법
JP6407946B2 (ja) * 2016-12-12 2018-10-17 ファナック株式会社 機器情報及び位置情報の管理装置及び管理システム
CN113055373A (zh) * 2017-03-30 2021-06-29 华为技术有限公司 数据传输方法和通信设备
CN109697120B (zh) * 2017-10-20 2023-06-27 伊姆西Ip控股有限责任公司 用于应用迁移的方法、电子设备
JP6977521B2 (ja) * 2017-12-07 2021-12-08 富士通株式会社 情報配信システム、情報配信方法及びサーバ装置
JP7095354B2 (ja) * 2018-03-28 2022-07-05 株式会社リコー 情報処理システム、情報処理装置、情報処理方法及びプログラム
US11681565B2 (en) * 2018-09-13 2023-06-20 Intel Corporation Technologies for hierarchical clustering of hardware resources in network function virtualization deployments
JP7193732B2 (ja) * 2019-04-08 2022-12-21 富士通株式会社 管理装置、情報処理システムおよび管理プログラム
JP7174372B2 (ja) * 2020-02-21 2022-11-17 日本電信電話株式会社 分散ストレージネットワークにおけるデータ管理方法、装置、プログラム

Family Cites Families (14)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
JP3666708B2 (ja) * 1997-03-04 2005-06-29 日本電信電話株式会社 サーバ環境移動方法及びサーバネットワーク
JP3417818B2 (ja) * 1997-11-05 2003-06-16 日本電信電話株式会社 アプリケーションプログラム移動位置決定方法及びデータファイル移動位置決定方法並びにその装置
US6108703A (en) 1998-07-14 2000-08-22 Massachusetts Institute Of Technology Global hosting system
US7734815B2 (en) 2006-09-18 2010-06-08 Akamai Technologies, Inc. Global load balancing across mirrored data centers
US7840673B1 (en) * 2002-06-17 2010-11-23 International Business Machines Corporation Method and apparatus for management of hosted applications
US20050097086A1 (en) * 2003-10-30 2005-05-05 Riaz Merchant System and method for migrating an application developed around an ISAM database server to an SQL database server without source level changes
US20050273486A1 (en) * 2004-06-03 2005-12-08 Keith Robert O Jr Virtual distributed file system
US9077611B2 (en) * 2004-07-07 2015-07-07 Sciencelogic, Inc. Self configuring network management system
US8429630B2 (en) * 2005-09-15 2013-04-23 Ca, Inc. Globally distributed utility computing cloud
JP4567031B2 (ja) * 2006-07-26 2010-10-20 三星電子株式会社 WebOS−基盤ユーザ装置のためのアプリケーションをハンドオフする方法
US7801994B2 (en) * 2007-11-29 2010-09-21 Hitachi, Ltd. Method and apparatus for locating candidate data centers for application migration
JP5087456B2 (ja) * 2008-04-09 2012-12-05 株式会社インテック サービス提供システム及びそれを構成するユーザ収容装置
JP5506444B2 (ja) 2010-02-18 2014-05-28 株式会社日立製作所 情報システム、装置および方法
US8880704B2 (en) * 2012-04-19 2014-11-04 Empire Technology Development Llc Migration in place by infrastructure deployment of platforms to customer hardware

Also Published As

Publication number Publication date
JPWO2013157042A1 (ja) 2015-12-21
US9654415B2 (en) 2017-05-16
WO2013157042A1 (ja) 2013-10-24
US20150163163A1 (en) 2015-06-11

Similar Documents

Publication Publication Date Title
JP5970541B2 (ja) 情報処理システム、管理サーバ群、および、サーバ管理プログラム
US11016749B1 (en) Architecture for incremental deployment
US10826799B2 (en) Apparatus for providing cloud service based on cloud service brokerage and method thereof
KR101717228B1 (ko) 가상 데스크탑들을 위한 애플리케이션 마켓플레이스
US7904562B2 (en) Server and connecting destination server switch control method
KR101839060B1 (ko) 자동화된 데스크탑 배치
US8108502B2 (en) Storage device for use in a shared community storage network
US8462665B2 (en) Shared community storage network
US11064041B2 (en) Apparatus for providing cloud service using cloud service brokerage based on multiple clouds and method thereof
KR100719285B1 (ko) 웹 스토리지의 분산 파일관리시스템 및 파일관리방법
JP4473942B2 (ja) コンテンツ配信装置、コンテンツ配信方法、及びコンテンツ配信プログラム
JP4861472B2 (ja) コンテンツ配信装置、コンテンツ配信方法、及びコンテンツ配信プログラム
JP2007514995A (ja) エンタープライズ・ストレージ・システムを管理するためのコンピュータ・システム、方法、およびプログラム
US20140188801A1 (en) Method and system for intelligent load balancing
US8984162B1 (en) Optimizing performance for routing operations
US9544371B1 (en) Method to discover multiple paths to disk devices cluster wide
CN113301079B (zh) 一种数据的获取方法、系统、计算设备及存储介质
JP2004302564A (ja) ネームサービス提供方法及びその実施装置並びにその処理プログラム
US11172021B2 (en) File objects download and file objects data exchange
KR20190119497A (ko) 분산 파일 시스템 기반의 대용량 다중 vod 스트리밍 서비스 제공 시스템 및 그 제공 방법
US11656957B1 (en) Managing nodes of a DBMS
KR101525541B1 (ko) 콘텐츠 딜리버리 네트워크 서비스 시스템 및 방법
EP4362426A1 (en) Home content delivery network
KR101479617B1 (ko) 유틸리티 컴퓨팅 서비스가 가능한 가상 스토리지 제공 방법및 그 시스템
CN113688114A (zh) 一种镜像上传方法、系统及计算机可读存储介质

Legal Events

Date Code Title Description
TRDD Decision of grant or rejection written
A01 Written decision to grant a patent or to grant a registration (utility model)

Free format text: JAPANESE INTERMEDIATE CODE: A01

Effective date: 20160614

A61 First payment of annual fees (during grant procedure)

Free format text: JAPANESE INTERMEDIATE CODE: A61

Effective date: 20160711

R151 Written notification of patent or utility model registration

Ref document number: 5970541

Country of ref document: JP

Free format text: JAPANESE INTERMEDIATE CODE: R151

LAPS Cancellation because of no payment of annual fees