JP5522525B2 - Service construction system, apparatus, method, and program - Google Patents
Service construction system, apparatus, method, and program Download PDFInfo
- Publication number
- JP5522525B2 JP5522525B2 JP2010062140A JP2010062140A JP5522525B2 JP 5522525 B2 JP5522525 B2 JP 5522525B2 JP 2010062140 A JP2010062140 A JP 2010062140A JP 2010062140 A JP2010062140 A JP 2010062140A JP 5522525 B2 JP5522525 B2 JP 5522525B2
- Authority
- JP
- Japan
- Prior art keywords
- service
- distributed computing
- mapping information
- resource
- application
- 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.)
- Active
Links
Images
Landscapes
- Computer And Data Communications (AREA)
Description
本発明は、分散コンピューティング環境におけるサービス構築システムに関する。 The present invention relates to a service construction system in a distributed computing environment.
近年、複数のアプリケーションを連携させて1つのサービスとして提供するサービス形態が一般化している。このようなサービス形態は、企業における業務アプリケーションに例示される。このようなサービス形態では、各アプリケーションを単一のIT資源上で稼動させるというシステム形態が考えられる。 In recent years, service forms in which a plurality of applications are linked and provided as one service have become common. Such a service form is exemplified by a business application in a company. In such a service form, a system form in which each application is operated on a single IT resource can be considered.
ここで、IT資源とは、汎用PC(Personal Computer)や、汎用サーバや、GPGPU(General Purpose Graphics Processing Unit)のように特定の処理を高速化するエンジンに例示される計算リソース全般を指す。また、物理的な計算リソースだけでなく、仮想マシンなどの技術により仮想化された資源も含む。 Here, the IT resource refers to general computing resources exemplified by a general-purpose PC (Personal Computer), a general-purpose server, and an engine that accelerates a specific process such as GPGPU (General Purpose Graphics Processing Unit). Further, not only physical computing resources but also resources virtualized by a technology such as a virtual machine are included.
一方で、最近では、分散コンピューティング環境を利用したシステム形態が主流となっている。分散コンピューティング環境は、通信ネットワーク(以下、ネットワーク)で相互接続された複数のIT資源を用いて、サービスを構築する各アプリケーションを異なるIT資源上で稼動させる。 On the other hand, recently, a system form using a distributed computing environment has become mainstream. A distributed computing environment uses a plurality of IT resources interconnected by a communication network (hereinafter referred to as a network) to operate each application for constructing a service on different IT resources.
サービス設計者は、このようなサービスを構築する場合、まず、必要となる機能を決定して、各機能がどのように連携するかを決定する。その上で、サービス設計者は、各機能を実現するための具体的なアプリケーションを決定する。 When constructing such a service, the service designer first determines the necessary functions and determines how each function works. Then, the service designer determines a specific application for realizing each function.
しかし、このような手順で決定されるのは、IT資源上で実行される機能(アプリケーション)の連携のみである。そのため、IT資源同士を接続するネットワークについては考慮されることはない。 However, only the cooperation of functions (applications) executed on IT resources is determined by such a procedure. Therefore, a network that connects IT resources is not considered.
現在、機能的にはネットワーク資源で行われる処理であっても、当該機能をIT資源上で処理させる例も存在する。すなわち、IT資源をネットワーク資源として運用する例が存在する。このように、処理の実行される資源には、境界が無くなってきている。 At present, there is an example in which the function is processed on the IT resource even if the process is functionally performed on the network resource. That is, there is an example in which IT resources are used as network resources. As described above, the resource to be processed has no boundary.
ここで、ネットワーク資源とは、ネットワークルータ(以下、ルータ)や、ネットワークスイッチ(以下、スイッチ)や、ファイアウォールや、負荷分散装置に例示されるネットワーク機器のリソース全般を指す。また、物理的なネットワークリソースだけでなく、仮想ルータや、仮想ファイアウォールに例示されるか仮想化された資源も含む。 Here, the network resources refer to all network device resources exemplified by network routers (hereinafter referred to as routers), network switches (hereinafter referred to as switches), firewalls, and load distribution devices. It also includes not only physical network resources, but also resources that are exemplified or virtualized by virtual routers and virtual firewalls.
ネットワーク資源で行われている処理をIT資源上で行わせる例として、iptables(非特許文献1)や、Click Moduler Router(非特許文献2)が存在する。iptablesは、ファイアウォール機能を提供するアプリケーションである。Click Moduler Routerは、ソフトウェアルータである。 Examples of causing the processing performed on the network resource to be performed on the IT resource include iptables (Non-patent Document 1) and Click Module Router (Non-patent Document 2). iptables is an application that provides a firewall function. Click Module Router is a software router.
このようなソフトウェアを汎用サーバ上で実行する場合、ルータやファイアウォール等の専用のネットワーク機器と比較して、一般に、性能が低くなる。しかし、専用のネットワーク機器は、汎用サーバに比べて高コストであることが多い。そのため、専用のネットワーク機器を用いるのに換えて、上述したようなソフトウェアを汎用サーバ上で実行することで、サービスを低コストで実現できるというメリットが存在する。 When such software is executed on a general-purpose server, the performance is generally lower than that of a dedicated network device such as a router or a firewall. However, dedicated network devices are often more expensive than general-purpose servers. Therefore, there is a merit that the service can be realized at low cost by executing the above-described software on the general-purpose server instead of using the dedicated network device.
このようなサービス構築においては、サービスの設計からリリースまでの期間の短縮が求められる。そのために、サービスの設計情報を入力すると、IT資源へアプリケーションのマッピングやネットワーク資源への設定を、自動的に行う仕組みが求められる。これに関連する技術として、以下のような技術が開示されている。 In such service construction, it is required to shorten the period from service design to release. Therefore, when service design information is input, a mechanism for automatically mapping applications to IT resources and setting to network resources is required. The following technologies are disclosed as related technologies.
特許文献1は、効率的なシステム構成を自動生成することができるシステムレイアウト設計装置を開示している。特許文献1のシステムレイアウト設計装置は、管理対象ネットワーク上での複数の機能の配置を決定するシステムレイアウト設計装置である。
特許文献1のシステムレイアウト設計装置によれば、生成されたシステムレイアウトを評価して、最も評価の高いシステムレイアウトを設計結果とする構成であるため、大規模な管理対象ネットワークであっても、効率性等に関する所定の評価基準に最も適合したシステムレイアウトを設計することができる。
According to the system layout design apparatus of
また、特許文献2は、ネットワーク構成設定用パラメータの生成時にネットワークを構成する各ノードが自ノードの物理情報及び識別子をサーバノードに送信するネットワークシステムを開示している。特許文献2のネットワークシステムは、サーバノードとサーバノードにより管理されるノードを有するネットワークシステムである。
特許文献2のネットワークシステムによれば、各ノードの最新の物理構成情報と識別を自動的に収集できる。そのため、ネットワークシステム管理者は、各ノードの詳細情報を把握しておく必要がなくなる。
According to the network system of
また、特許文献3は、特定の管理サーバを経由することなく、フローに基づいたアプリケーションの連携処理を実現するアプリケーションフロー制御装置を開示している。特許文献3のアプリケーションフロー制御装置は、連携処理を行う複数のアプリケーションの一部を有するアプリケーションフロー制御装置である。
Further,
特許文献3のアプリケーションフロー制御装置によれば、アプリケーションを有する装置間でフロー制御のためのメッセージが転送されるため、特定の管理サーバを経由することなく、フローに基づいたアプリケーションの連携処理が実現される。
According to the application flow control apparatus of
このほか、特許文献4は、従来のWWWサーバ用の単純な負荷分散システムよりも柔軟かつ高度な分散処理、すなわち、計算機リソースや、計算機リソース間を結合するネットワークやネットワーク接続装置等の効率的な割当処理を実行することができる分散処理システムを開示している。特許文献5は、ネットワークに接続された複数の機器のそれぞれの能力に応じてそれぞれの諸機能を利用できる情報処理装置を開示している。特許文献6は、分散コンピューティングシステムのためのアーキテクチャを開示している。
In addition,
特許文献1のシステムレイアウト設計装置は、システムレイアウトの生成対象がIT資源のみであり、ネットワーク資源を対象としていない。そのため、サービスを構築する際に、ネットワーク資源の設定を別途行う必要があり、サービスのリリースまでに時間を要する。
In the system layout design apparatus of
また、特許文献2のネットワークシステムは、ネットワーク資源への設定を自動化することができるが、IT資源へのアプリケーションのマッピングなどを行わない。そのため、アプリケーションのマッピングを別途行う必要があり、サービスのリリースまでに時間を要する。
In addition, the network system disclosed in
特許文献3のアプリケーションフロー制御装置は、各アクティビティに示される情報がIT資源上で実行される処理に限定されており、ネットワーク資源については考慮されていない。そのため、アプリケーションの連携において、最適なネットワークの設定がなされず、サービスの性能が劣化する場合がある。
The application flow control apparatus of
本発明の目的は、分散コンピューティング環境におけるサービス構築において、IT資源とネットワーク資源との双方に対して高速にサービスを構築可能なサービス構築システムを提供することにある。 An object of the present invention is to provide a service construction system capable of constructing a service at high speed for both IT resources and network resources in service construction in a distributed computing environment.
本発明の第1の側面であるサービス構築システムは、互いに接続されてネットワークを構成する分散コンピューティング資源を具備する分散コンピューティング環境と、分散コンピューティング環境にサービスを構築するサービス構築装置とを備える。サービス構築装置は、サービスにおける処理の流れを示すアプリケーションフロー解析結果を生成するアプリケーションフロー解析部と、アプリケーションフロー解析結果に基づいて、分散コンピューティング資源のうちから処理を実現するアプリケーションを実行するべき第1選択分散コンピューティング資源とアプリケーション間の通信転送処理を実行するべき第2選択分散コンピューティング資源とを割り当てたマッピング情報を生成するマッピング情報生成部と、マッピング情報に基づいて、第1選択分散コンピューティング資源に対するアプリケーションの配置情報と、第2選択分散コンピューティング資源に対する通信転送処理の設定情報とをマッピングする設定指示部とを備える。 A service construction system according to a first aspect of the present invention includes a distributed computing environment including distributed computing resources that are connected to each other to form a network, and a service construction apparatus that constructs a service in the distributed computing environment. . The service construction device includes an application flow analysis unit that generates an application flow analysis result indicating a processing flow in the service, and an application that realizes the process from among the distributed computing resources based on the application flow analysis result. A mapping information generating unit for generating mapping information to which a first selected distributed computing resource and a second selected distributed computing resource for executing a communication transfer process between applications are assigned; and a first selected distributed computer based on the mapping information. A setting instructing unit that maps application arrangement information with respect to the operating resources and setting information of communication transfer processing with respect to the second selected distributed computing resource.
本発明によれば、分散コンピューティング環境におけるサービス構築において、IT資源とネットワーク資源とでそれぞれ実行されてきた処理を、両資源へ区別無くマッピングしてサービスを構築可能なサービス構築システムを提供できる。そのため、分散コンピューティング環境へのサービスのマッピングをIT資源とネットワーク資源の双方に対して単一の処理で行うことができ、高速にサービスを構築することができる。 According to the present invention, in service construction in a distributed computing environment, it is possible to provide a service construction system capable of constructing a service by mapping processes executed by IT resources and network resources to both resources without distinction. Therefore, the service mapping to the distributed computing environment can be performed with a single process for both the IT resource and the network resource, and the service can be constructed at high speed.
添付図面を参照して、本発明の実施形態によるサービス構築システムを以下に説明する。 A service construction system according to an embodiment of the present invention will be described below with reference to the accompanying drawings.
(第1実施形態)
はじめに、本発明の第1実施形態によるサービス構築システムを以下に説明する。
(First embodiment)
First, the service construction system according to the first embodiment of the present invention will be described below.
[構成の説明]
まず、本実施形態におけるサービス構築システムの構成の説明を行う。図1は、本実施形態におけるサービス構築システムの構成を示す図である。本実施形態のサービス構築システムは、分散コンピューティング環境1とサービス構築装置2とを備える。
[Description of configuration]
First, the configuration of the service construction system in this embodiment will be described. FIG. 1 is a diagram showing a configuration of a service construction system in the present embodiment. The service construction system of this embodiment includes a distributed
まず、分散コンピューティング環境1の説明を行う。分散コンピューティング環境1は、一つ以上のネットワーク資源11と、一つ以上のIT資源12とを備える。
First, the distributed
まず、ネットワーク資源11は、ネットワークルータ(以下、ルータ)や、ネットワークスイッチ(以下、スイッチ)や、ファイアウォールや、負荷分散装置に例示されるネットワーク機器のリソース全般を指す。また、ネットワーク資源11は、物理的なネットワークリソースだけでなく、仮想ルータや、仮想ファイアウォールに例示されるか仮想化された資源も含む。
First, the
次に、IT資源12は、汎用PC(Personal Computer)や、汎用サーバや、GPGPU(General Purpose Graphics Processing Unit)のように特定の処理を高速化するエンジンに例示される計算リソース全般を指す。また、IT資源12は、物理的な計算リソースだけでなく、仮想マシンなどの技術により仮想化された資源も含む。
Next, the
ネットワーク資源11は、互いに接続されてネットワークを構成する。IT資源12は、ネットワーク資源11と接続される。ネットワーク資源11とIT資源12とは、サービス構築装置2によって、サービスを構築するための設定情報を設定される。なお、以下では、ネットワーク資源11とIT資源12とをまとめて、分散コンピューティング資源と呼ぶ。
次に、サービス構築装置2の説明を行う。図2は、本実施形態におけるサービス構築装置2の構成を示す図である。本実施形態におけるサービス構築装置2は、記憶部100と、制御部120と、通信部130と、入力部140と、出力部150とを備える。記憶部100と、制御部120と、通信部130と、入力部140と、出力部150とは、バス160を介して接続されており、データの送受信が可能である。
Next, the
まず、通信部130は、外部装置との通信インターフェースである。通信部130は、NIC(Network Interface Card)に例示される。サービス構築装置2は、通信部130を介してネットワーク資源11やIT資源12とデータを送受信することが可能である。
First, the
次に、入力部140、出力部150は、サービス構築装置2のユーザとの入出力インターフェースである。入力部140は、キーボードや、マウスに例示される。出力部150は、LCD(Liquid Crystal Display)に例示される。ユーザは、入力部140、出力部150を用いて、サービス構築装置2を操作可能である。
Next, the
次に、記憶部100は、サービス構築装置2の機能を実現するコンピュータプログラムやデータを記憶する。記憶部100は、RAM(Random Access Memory)や、ROM(Read Only Memory)や、HDD(Hard Disk Drive)に例示されるような主記憶装置、2次記憶装置により構成される。記憶部100は、コンピュータプログラムとしてサービス構築プログラム110を備える。
Next, the memory |
次に、制御部120は、記憶部100に記憶されたコンピュータプログラムを実行してサービス構築装置2の機能を実現する。制御部120は、CPU(Central Processing Unit)に例示される。
Next, the
ここで、記憶部100に記憶されたサービス構築プログラム110は、移動可能な記憶媒体に記録することが可能である。記憶媒体とは、CD(Compact Disk)や、USB(Universal Serial Bus)インターフェースを搭載したフラッシュメモリ(USBメモリ)等に例示される。サービス構築プログラム110は、このような記録媒体により流通が可能である。
Here, the
サービス構築プログラム110は、図示されないサービス構築装置2のCDドライブや、USBインターフェースを介して、サービス構築装置2へ導入される。また、サービス構築プログラム110は、図示されないネットワークに接続されたアプリケーションサーバのHDDにダウンロード可能な形で記憶されていても良い。この場合、サービス構築プログラム110は、ネットワークを介して、サービス構築装置2へ導入される。
The
次に、図3は、本実施形態におけるサービス構築装置2の機能を示す機能ブロック図である。本実施形態のサービス構築装置2は、アプリケーションフロー解析部21と、マッピング情報生成部22と、アプリケーション管理部23と、設定指示部24と、資源管理部25とを備える。ここで、サービス構築装置2の各機能ブロックは、前述の通りソフトウェアにより実現されても良いし、あるいはハードウェアによって実現されても良い。あるいは、ソフトウェアとハードウェアの組み合わせにより実現されても良い。以下、サービス構築装置2の各機能ブロックを詳細に説明する。
Next, FIG. 3 is a functional block diagram showing functions of the
まず、アプリケーションフロー解析部21は、サービス定義42の示すサービスを構成する各処理の接続関係を解析する。アプリケーションフロー解析部21は、サービス定義42を入力とする。アプリケーションフロー解析部21は、サービス定義42の示すサービスを構成する各処理の接続関係を解析して、アプリケーションフロー解析結果を生成する。アプリケーションフロー解析部21は、アプリケーションフロー解析結果をマッピング情報生成部22へ出力する。
First, the application
ここで、サービス定義42は、サービス構築装置2のユーザであるサービス設計者により入力される。サービス定義42は、設計されたサービスに含まれる処理の内容や、各処理をどのような順番で実行するか、処理の入出力形式は何かといった情報を含む。
Here, the
また、アプリケーションフロー解析部21の解析する各処理の接続関係とは、各処理間における入出力関係を示す。すなわち、接続関係は、ある処理の出力がどの処理の入力となるのか、あるいは、ある処理の入力がどの処理の出力であるのか、といった情報を含む。
The connection relationship of each process analyzed by the application
サービス定義42は、上述のような情報を含めば、特定の定義手法に限定しない。サービス定義42の一例として、ビジネスプロセスモデリング言語であるBPEL(Business Process Execution Language)が挙げられる。BPELは、アクティビティと呼ばれる個々の処理ステップを表現する命令を記述することで、Webサービスを定められた手順で呼び出すことができる。
The
また、サービス定義42は、サービスの制約事項を情報に含むことも考えられる。サービスの制約事項とは、例えば、サービスを分散コンピューティング資源へマッピングするにあたり満たすべき条件である。すなわち、サービスの制約事項は、サービス全体のスループットや、ある処理を実行する際の処理性能、ある処理とある処理との間のネットワーク遅延、サービスを稼動するのに必要な消費電力、あるいは、使用するべき分散コンピューティング資源の優先順位といった条件を含む。なお、マッピングとは、分散コンピューティング資源への設定と、分散コンピューティング資源へのアプリケーションの配置を含めた総称である。
Further, the
次に、アプリケーション管理部23は、分散コンピューティング環境で実行可能なアプリケーション情報を記憶する。アプリケーション管理部23は、ユーザによりアプリケーション43を外部から登録される。ここで、アプリケーション43とは、何らかの機能を提供するコンピュータプログラムに限定しない。例えば、FPGA(Field Programmable Gate Array)のように、ハードウェアの構成を変更することが可能なハードウェアの設定情報も含む。
Next, the
アプリケーション情報は、各アプリケーションがどのような機能を有して、どのような入出力を必要として、利用するためのどのような条件が必要であるか、といった情報を含む。利用するための条件とは、例えば、CPUの動作周波数や、メインメモリ容量といった性能条件や、ハードウェアの備えるべき機能、OS(Operating System)の種類やバージョン、必要とされるライブラリといった、アプリケーション実行環境に関する条件である。例えば、GPGPUを利用することを前提としたアプリケーションの場合、実行するためのハードウェアとしてGPUが備えられていることや、GPGPU専用のライブラリが備えられていること等が条件として考えられる。 The application information includes information such as what functions each application has, what input / outputs are required, and what conditions are required for use. Conditions for use include, for example, performance conditions such as CPU operating frequency and main memory capacity, functions to be provided with hardware, OS (Operating System) types and versions, and required libraries. This is an environmental condition. For example, in the case of an application premised on the use of GPGPU, it is conceivable that the GPU is provided as hardware for execution, or that a library dedicated to GPGPU is provided.
次に、資源管理部25は、分散コンピューティング環境1の備える分散コンピューティング資源に関する資源情報を記憶する。例えば、資源情報は、IT資源12であれば、搭載されているCPUの性能、メモリ容量、ディスク容量、ネットワークインターフェースの通信速度、搭載されている拡張カード、MAC(Media Access Control)アドレス、IP(Internet Protocol)アドレス、ネットマスク、消費電力といった情報を含む。また、例えば、資源情報は、ネットワーク資源11であれば、各物理ポートにおけるリンクの通信速度、MACアドレス、IPアドレス、ネットマスク、諸費電力といった情報を含む。また、資源管理部25に、モニタリング装置を接続することで、分散コンピューティング資源の状態をモニタリングすることが可能となる。
Next, the
資源管理部25は、分散コンピューティング資源から状態情報44を入力する。資源管理部25は、分散コンピューティング環境1の分散コンピューティング資源の追加、削除を含む構成の変更が生じた場合、状態情報45に基づいて記憶している資源情報の変更を行う。
The
次に、マッピング情報生成部22は、分散コンピューティング資源にサービスをマッピングするための設定情報であるマッピング情報を生成する。マッピング情報生成部22は、アプリケーションフロー解析部21からアプリケーションフロー解析結果を入力する。また、マッピング情報生成部22は、アプリケーション管理部23からアプリケーション情報と、資源管理部25から資源情報とを取得する。マッピング情報生成部22は、アプリケーションフロー解析結果と、アプリケーション情報と、資源情報とに基づいて、マッピング情報を生成する。
Next, the mapping
具体的に、マッピング情報生成部22は、資源情報を参照しつつ、アプリケーション管理部23に記憶されるアプリケーションのうちから、アプリケーションフロー解析結果に含まれる各処理を実現するアプリケーションを選択する。マッピング情報生成部22は、例えば、あるアプリケーションを実行するための十分な計算性能を備えたIT資源を選択したり、ファイアウォールのようなネットワーク資源で実行されるアプリケーションをIT資源上で動作させたりといった選択を行う。マッピング情報生成部22は、このようにして選択した結果を、マッピング情報として記憶する。
Specifically, the mapping
マッピング情報生成部22は、アプリケーションと、当該アプリケーションを動作させる分散コンピューティング資源とを選択すると、アプリケーション間の通信経路をアプリケーションフロー解析結果に基づいて決定する。マッピング情報生成部22は、アプリケーション間の通信経路を決定すると、通信経路上に存在する分散コンピューティング資源の設定情報を生成する。マッピング情報生成部22は、設定情報をマッピング情報に含める。ここで、通信経路を決定する方法として、例えば、ダイクストラ法が知られている。
When the mapping
マッピング情報生成部22は、このようにして生成したマッピング情報と、サービス定義とを設定指示部24へ出力する。
The mapping
次に、設定指示部24は、分散コンピューティング資源への設定情報やアプリケーションの配置情報を生成する。設定指示部24は、マッピング情報生成部22からマッピング情報と、サービス定義とを入力する。設定指示部24は、マッピング情報とサービス定義とに基づいて、設定情報や配置情報を生成する。設定指示部24は、設定情報と配置情報とを含んだ設定要求41を送信して、分散コンピューティング資源へ設定情報と配置情報とをマッピングする。設定指示部24は、分散コンピューティング資源へのマッピングを完了すると、マッピング情報生成部22へマッピング結果を示す通知を出力する。設定指示部24は、マッピングを正常に完了した場合、マッピングの正常完了を示す完了通知をマッピング情報生成部22へ出力する。一方、設定指示部24は、分散コンピューティング資源の障害等により、マッピングを正常に完了できなかった場合、マッピングが異常終了を示す未完了通知をマッピング情報生成部22へ出力する。
Next, the setting
以上が、本実施形態におけるサービス構築装置2及びサービス構築装置2を備える分散コンピューティング環境1の構成の説明である。
The above is description of the structure of the distributed
[動作の説明]
次に、上述したような構成の本実施形態におけるサービス構築装置2の動作の説明を行う。図4は、本実施形態におけるサービス構築装置2により構築されるサービスのサービス定義42の一例を示す図である。図4のサービス定義は、構築されるべきサービスの処理の流れを示している。
[Description of operation]
Next, the operation of the
まず、「Input」は、サービスに対する入力である。「Output」は、サービスからの出力である。また、処理A〜Fは、それぞれ、ある機能を備えた処理単位を示す。図4に示されたサービスにおける処理では、サービスに対する入力は、処理Aを実行される。処理Aの処理結果は、処理Bへ出力されて、処理Bを実行される。処理Bの処理結果は、処理Cと処理Eとへ出力されて、処理C及び処理Eを実行される。処理Cの処理結果は、処理Dへ出力されて処理Dを実行される。処理Dの実行結果と処理Eの実行結果は、処理Fへ出力されて、処理Fを実行される。そして、処理Fの実行結果は、サービスからの出力として出力される。なお、処理Cと処理Eへ出力される処理Bの処理結果は、同一の内容に限らない。処理Bの処理結果に応じて、処理結果の出力先が選択されても良い。これは、構築されるサービスにおける処理内容に依存する。 First, “Input” is an input to the service. “Output” is an output from the service. Processes A to F each indicate a processing unit having a certain function. In the process in the service shown in FIG. 4, the process A is executed for the input to the service. The process result of process A is output to process B, and process B is executed. The processing result of processing B is output to processing C and processing E, and processing C and processing E are executed. The process result of process C is output to process D and process D is executed. The execution result of process D and the execution result of process E are output to process F, and process F is executed. Then, the execution result of process F is output as an output from the service. In addition, the process result of the process B output to the process C and the process E is not restricted to the same content. Depending on the processing result of processing B, the output destination of the processing result may be selected. This depends on the processing contents in the service to be constructed.
次に、図5は、本実施形態におけるサービス構築装置2によりサービスを構築される分散コンピューティング環境1の一例を示す図である。図5の分散コンピューティング環境1は、ファイアウォール(Firewall)と、ロードバランサ(LoadBalancer)と、ルータ(Router)と、サーバ(Server)A〜Gとを備える。ファイアウォール、ロードバランサ、及びルータは、ネットワーク資源11である。サーバA〜Gは、IT資源12である。これらの分散コンピューティング資源は、ネットワークによって相互に接続されており、データの送受信を行うことが可能である。
Next, FIG. 5 is a diagram illustrating an example of a distributed
次に、図6は、本実施形態におけるサービス構築装置2の動作を示すフローチャートである。以下では、サービス構築装置2が、上述のような、図5の分散コンピューティング環境1に図4のサービス定義42に示されたサービスを構築する場合の動作を説明する。
Next, FIG. 6 is a flowchart showing the operation of the
まず、アプリケーションフロー解析部21は、サービス定義42を入力とする。サービス定義42は、サービス構築装置2にユーザにより、入力部140から入力されてもよいし、ネットワークと通信部130とを介して入力されても良い。アプリケーションフロー解析部21は、サービス定義42の解析を行って、アプリケーションフロー解析結果を生成する(ステップS20)。アプリケーションフロー解析部21は、アプリケーションフロー解析結果をサービス定義42と共に、マッピング情報生成部22へ出力する。
First, the application
マッピング情報生成部22は、アプリケーションフロー解析部21からアプリケーションフロー解析結果とサービス定義42とを入力する。また、マッピング情報生成部22は、アプリケーション管理部23からアプリケーション情報と、資源管理部25から資源情報とを取得する。マッピング情報生成部22は、アプリケーション解析結果と、アプリケーション情報と、資源情報とに基づいて、マッピング情報を生成する(ステップS22)。マッピング情報生成部22は、マッピング情報をサービス定義42と共に、設定指示部24へ出力する。
The mapping
設定指示部24は、マッピング情報生成部22からマッピング情報とサービス定義42とを入力する。設定指示部24は、マッピング情報とサービス定義42に基づいて、設定情報や配置情報を生成する。設定指示部24は、設定情報と配置情報とを含めた設定要求41を送信して、分散コンピューティング環境1へサービスのマッピングを行う(ステップS24)。すなわち、設定指示部24は、マッピング情報とサービス定義42に基づいて分散コンピューティング資源のネットワーク資源11とIT資源12への設定とアプリケーションの配置を実行する。
The setting
設定指示部24は、マッピング結果をマッピング情報生成部22へ出力する。設定指示部24は、マッピングが正常に完了した場合、マッピング結果として完了通知を出力する。一方、設定指示部24は、マッピングが正常に完了しない場合、マッピング結果として未完了通知を出力する。
The setting
マッピング情報生成部22は、設定指示部24からマッピング結果として完了通知または未完了通知を入力する。マッピング情報生成部22は、マッピングが成功したか否かを判定する(ステップS26)。すなわち、マッピング情報生成部22は、分散コンピューティング環境への設定とアプリケーションの配置が成功したか否かを判定する。
The mapping
マッピング情報生成部22は、マッピングが成功した場合(ステップS26のYes)、サービス構築が完了したことを示すサービス構築完了通知45を出力する(ステップS28)。一方、マッピングが成功しなかった場合(ステップS26のNo)、ステップS22へ戻る。この場合、マッピング情報生成部22は、再度、マッピング情報を生成することになる。
If the mapping is successful (Yes in step S26), the mapping
以上が、サービス構築装置2が、図5の分散コンピューティング環境1に図4のサービス定義42に示されたサービスを構築する場合の動作の説明である。
The above is the description of the operation when the
続いて、上述した図6のフローチャートに示された各ステップを詳細に説明する。まず、図6のフローチャートのステップS20に示された動作について詳細な説明を行う。図7は、本実施形態において図6に示されたフローチャートのステップS20における動作を詳細に示したフローチャートである。 Next, each step shown in the flowchart of FIG. 6 will be described in detail. First, the operation shown in step S20 in the flowchart of FIG. 6 will be described in detail. FIG. 7 is a flowchart showing in detail the operation in step S20 of the flowchart shown in FIG. 6 in the present embodiment.
まず、アプリケーションフロー解析部21は、サービス定義42の入力の有無を判定する(ステップS100)。この確認方法としては、アプリケーションフロー解析部21に対して、サービス定義42の入力に対応付けられた割り込みを発生させて通知する方法や、アプリケーションフロー解析部21が特定の記憶領域をポーリングして入力の有無を確認する方法等が考えられる。この場合の記憶領域には、記憶部100のメモリやハードディスク、あるいは制御部120のレジスタが相当する。
First, the application
アプリケーションフロー解析部21は、サービス定義42の入力が無い場合(ステップS100のNo)、サービス定義42の入力があるまで本ステップを繰り返す。一方、アプリケーションフロー解析部21は、サービス定義42の入力が有る場合(ステップS100のYes)、サービス定義42の解析を行う(ステップS110)。サービス定義42の解析では、サービス定義42に含まれる処理の入出力関係に基づいて、アプリケーションフロー解析結果を生成する。処理の入出力関係とは、ある処理の出力がいずれの処理の入力となるか、あるいは、ある処理の入力がいずれの処理の出力であるかという関係を示す。
When there is no input of the service definition 42 (No in step S100), the application
ここで、図8及び図9は、本実施形態におけるアプリケーションフロー解析結果の一例を示す図である。図8及び図9に示されるアプリケーションフロー解析結果は、図4のサービス定義42に示されたサービスに基づいて生成されたものである。図8のアプリケーションフロー解析結果は、ある処理と当該処理の次に実行されるべき処理とを関連づけたテーブルとなっている。例えば、サービスに対する入力である「Input」の次の処理は、「処理A」であることが示されている。また、「処理F」の次の処理は、サービスからの出力である「Output」であることが示されている。また、アプリケーションフロー解析結果は、図9に示すように、ある処理と当該処理の直前の処理とを関連付けたテーブルとして生成されても良い。なお、アプリケーションフロー解析結果は、図8及び図9に示されるようなテーブル形式の表現に限定しない。
Here, FIG. 8 and FIG. 9 are diagrams illustrating examples of application flow analysis results in the present embodiment. The application flow analysis results shown in FIGS. 8 and 9 are generated based on the service shown in the
次に、図7に戻り、アプリケーションフロー解析部21は、アプリケーション解析結果とサービス定義42とを、マッピング情報生成部22へ送信する(ステップS120)。以上が、図6のフローチャートのステップS20に示された動作の詳細な説明である。アプリケーションフロー解析部21は、上述のような動作によりアプリケーションフロー解析結果を生成する。
Next, returning to FIG. 7, the application
続いて、図6のフローチャートのステップS22に示された動作について詳細な説明を行う。図10は、本実施形態において図6のフローチャートのステップS20における動作を詳細に示したフローチャートである。 Subsequently, the operation shown in step S22 of the flowchart of FIG. 6 will be described in detail. FIG. 10 is a flowchart showing in detail the operation in step S20 of the flowchart of FIG. 6 in the present embodiment.
まず、マッピング情報生成部22は、アプリケーションフロー解析結果とサービス定義42との入力の有無を判定する(ステップS200)。この確認の方法として、マッピング情報生成部22に対してサービス定義42の解析結果の入力に対応付けられた割り込みを発生させて通知する方法や、マッピング情報生成部22が特定の記憶領域をポーリングして入力の有無を確認する方法等が考えられる。この場合の記憶領域には、記憶部100のメモリやハードディスク、あるいは制御部120のレジスタが相当する。
First, the mapping
マッピング情報生成部22は、アプリケーションフロー解析結果とサービス定義42との入力が無い場合(ステップS200のNo)、アプリケーションフロー解析結果とサービス定義42との入力があるまで本ステップを繰り返す。一方、マッピング情報生成部22は、アプリケーションフロー解析結果とサービス定義42との入力がある場合(ステップS200のYes)、サービスを構成する各処理にアプリケーション43を割り当てる(ステップS210)。マッピング情報生成部22は、アプリケーション管理部23のアプリケーション情報を参照して、サービスを構成する各処理を実現するのに必要な機能を提供するアプリケーション43を各処理へ割り当てる。
If there is no input of the application flow analysis result and the service definition 42 (No in step S200), the mapping
各処理へアプリケーション43が割り当てられた結果は、マッピング情報として、マッピング情報生成部22の内部、あるいは外部の記憶領域に記憶される。この場合の記憶領域には、記憶部100のメモリやハードディスク、あるいは制御部120のレジスタが相当する。ステップS210が完了した時点でのマッピング情報は、あるアプリケーションと次に実行されるべきアプリケーションとを関連付けた情報となる。
The result of allocating the
ここで、図11は、本実施形態におけるステップS210が完了した時点のマッピング情報の一例を示す図である。図11に示されたマッピング情報は、図8に示されたアプリケーションフロー解析結果に基づいて生成されたものである。例えば、サービスに対する入力である「Input」の次に処理を行うアプリケーション(以下、Appと記載する場合がある。)43は、「AppA」であることが示されている。また、「AppF」による処理結果は、サービスからの出力である「Output」であることが示されている。なお、マッピング情報は、図11に示されるようなテーブル形式の表現に限定しない。 Here, FIG. 11 is a diagram illustrating an example of mapping information at the time when step S210 in the present embodiment is completed. The mapping information shown in FIG. 11 is generated based on the application flow analysis result shown in FIG. For example, an application 43 (hereinafter sometimes referred to as “App”) that performs processing after “Input” that is an input to the service is indicated as “AppA”. Further, it is indicated that the processing result by “AppF” is “Output” which is an output from the service. Note that the mapping information is not limited to the table format as shown in FIG.
次に、図10へ戻り、マッピング情報生成部22は、各処理へ割り当てられたアプリケーションを、分散コンピューティング資源へ割り当てる(ステップS220)。マッピング情報生成部22は、資源管理部25の資源情報を参照して、マッピング情報を分散コンピューティング資源へ割り当てる。マッピング情報を分散コンピューティング資源へ割り当てた結果は、マッピング情報生成部22の内部、あるいは外部の記憶領域に記憶される。この場合の記憶領域には、記憶部100のメモリやハードディスク、あるいは制御部120のレジスタが相当する。ステップS220が完了した時点でのマッピング情報は、あるアプリケーションと、当該アプリケーションを実行する分散コンピューティング資源と、当該アプリケーションの次に実行されるべきアプリケーションとを関連付けた情報となる。
Next, returning to FIG. 10, the mapping
ここで、図12は、本実施形態におけるステップS220が完了した時点のマッピング情報の一例を示す図である。図12に示されたマッピング情報は、図11に示されたマッピング情報に分散コンピューティング資源を対応付けたものである。例えば、サービスに対する入力である「Input」は、「入力装置(Input Resource)」に入力される。「AppA」は、「ファイアウォール」により実行される。また、「AppF」は、「サーバF」により実行されて、「サーバF」の実行結果がサービスからの「Output」として出力されることが示されている。なお、マッピング情報は、図12に示されるようなテーブル形式の表現に限定しない。 Here, FIG. 12 is a diagram illustrating an example of mapping information at the time when step S220 in the present embodiment is completed. The mapping information shown in FIG. 12 is obtained by associating distributed computing resources with the mapping information shown in FIG. For example, “Input”, which is an input for a service, is input to “Input Device”. “AppA” is executed by the “firewall”. Further, “AppF” is executed by “Server F”, and the execution result of “Server F” is output as “Output” from the service. Note that the mapping information is not limited to the table format as shown in FIG.
また、マッピング情報生成部22は、ステップS210においてアプリケーション43を各処理へ割り当てる際に、ある処理がIT資源12でもネットワーク資源11でも機能を実現できる処理の場合、どちらの場合も割り当て候補として生成しておく。そして、マッピング情報生成部22は、ステップS220においてアプリケーション43に分散コンピューティング資源を割り当てる際に、評価関数に基づいていずれの候補を用いるのかを決定する動作とすることも可能である。ここで、評価関数とは、分散コンピューティング資源の消費電力やコストや、性能といった指標を用いた関数である。
In addition, when the
次に、図10へ戻り、マッピング情報生成部22は、選択した分散コンピューティング資源の間に経路上資源が存在するかを判定する(ステップS230)。ここで、経路上資源とは、分散コンピューティング資源にアプリケーション43を割り当てた結果、選択された分散コンピューティング資源間で通信を行う経路上に存在する分散コンピューティング資源である。このような経路上資源に対しても、適切な設定を行う必要がある。
Next, returning to FIG. 10, the mapping
経路上資源が存在するか否かを判定する判定手法として、例えば、図1には図示されない、分散コンピューティング環境1に存在する全ての分散コンピューティング資源を管理する管理システムに対して問い合わせを行う方法が考えられる。あるいは、あるサーバからサーバまでの経路を探索するツールを利用してもよい。このようなツールは、「Traceroute」に例示される。
As a determination method for determining whether or not a resource on a path exists, for example, an inquiry is made to a management system that manages all distributed computing resources existing in the distributed
ここで、図13は、本実施形態におけるアプリケーションの割り当てられた分散コンピューティング資源間に存在する経路上資源を示した図である。図13を参照すると、例えば、サービスに対する入力である「Input」は、「AppA」で処理を行われる。「AppA」は、ファイアウォールに割り付けられている。「Input」がファイアウォールに到達するためには、経路上資源であるルータを経由する必要がある。また、「AppB」の処理を割り付けられたロードバランサと、「AppB」の次の処理を行う「AppC」を割り付けられたサーバFとの間には、経路上資源であるサーバCが存在する。このような場合、ルータやサーバCに対しても、アプリケーション43間で適切な通信を可能にするために設定を行う必要がある。
Here, FIG. 13 is a diagram showing resources on the path existing between distributed computing resources to which applications are assigned in the present embodiment. Referring to FIG. 13, for example, “Input” that is an input to a service is processed by “AppA”. “AppA” is assigned to the firewall. In order for “Input” to reach the firewall, it is necessary to go through a router which is a resource on the route. Further, a server C that is a resource on the path exists between the load balancer assigned with the process “AppB” and the server F assigned with “AppC” that performs the next process of “AppB”. In such a case, it is necessary to make settings for the router and the server C in order to enable appropriate communication between the
次に、図10に戻り、選択した分散コンピューティング資源の間に経路上資源が存在する場合(ステップS230のYes)、マッピング情報生成部22は、マッピング情報に経路上資源の情報を追加する(ステップS240)。一方、選択した分散コンピューティング資源の間に経路上資源が存在しない場合(ステップS230のNo)、マッピング情報生成部22は、マッピング情報への経路上資源の情報を追加しない。いずれも、その後ステップS250へ進む。
Next, returning to FIG. 10, when there is a resource on the path between the selected distributed computing resources (Yes in step S230), the mapping
ここで、図14は、本実施形態におけるステップS240が完了した時点のマッピング情報の一例を示す図である。図14のマッピング情報は、図12のマッピング情報に、経路上資源の情報を追加したものである。例えば、サービスに対する入力である「Input」と、「Input」を処理するべき「AppA」の割り付けられたファイアウォールとの間に、経路上資源であるルータが関連付けられている。また、「AppB」の処理を割り付けられたロードバランサと、「AppB」の次の処理を行う「AppC」を割り付けられたサーバFとの間に、経路上資源であるサーバCが関連付けられている。なお、マッピング情報は、図14に示されるようなテーブル形式の表現に限定しない。 Here, FIG. 14 is a diagram illustrating an example of mapping information at the time when step S240 in the present embodiment is completed. The mapping information in FIG. 14 is obtained by adding information on a route resource to the mapping information in FIG. For example, a router which is a resource on the path is associated between “Input” which is an input to a service and a firewall to which “AppA” which should process “Input” is assigned. Further, a server C, which is a resource on the path, is associated between the load balancer assigned with the process “AppB” and the server F assigned with “AppC” that performs the next process of “AppB”. . Note that the mapping information is not limited to the table format as shown in FIG.
次に、図10へ戻り、マッピング情報生成部22は、生成されたマッピング情報をサービス定義42と共に設定指示部24へ出力する(ステップS250)。以上が、図6のフローチャートのステップS22に示された動作の詳細な説明である。マッピング情報生成部22は、上述のような動作によりマッピング情報を生成する。
Next, returning to FIG. 10, the mapping
続いて、図6のフローチャートのステップS24に示された動作について詳細な説明を行う。図15は、本実施形態において図6のフローチャートのステップS24における動作を詳細に示したフローチャートである。 Next, the operation shown in step S24 of the flowchart of FIG. 6 will be described in detail. FIG. 15 is a flowchart showing in detail the operation in step S24 of the flowchart of FIG. 6 in the present embodiment.
まず、設定指示部24は、マッピング情報とサービス定義42との入力の有無を確認する(ステップS400)。この確認の方法として、設定指示部24に対してマッピング情報の入力に対応付けられた割り込みを発生させて通知する方法や、設定指示部24が特定の記憶領域をポーリングして入力の有無を確認する方法等が考えられる。この場合の記憶領域には、記憶部100のメモリやハードディスク、あるいは制御部120のレジスタが相当する。
First, the setting
設定指示部24は、マッピング情報とサービス定義42との入力が無い場合(ステップS400のNo)、マッピング情報とサービス定義42との入力があるまで本ステップを繰り返す。一方、設定指示部24は、マッピング情報とサービス定義42との入力がある場合(ステップS400のYes)、マッピング情報とサービス定義42とに基づいて、分散コンピューティング資源へのアプリケーション43の配置情報や設定情報を生成する(ステップS410)。
If there is no input of the mapping information and the service definition 42 (No in step S400), the setting
ここで、アプリケーション43の配置情報は、アプリケーション43が正常に稼動することができるのに必要な情報が含まれる。例えば、アプリケーション43のプログラムコードや、アプリケーションの引数、データ送受信の対向先のIPアドレスやアプリケーションポート番号といった情報に例示される。また、設定情報は、ルータへのルーティング情報や、ファイアウォールへのフィルタリング情報といった情報に例示される。
Here, the arrangement information of the
設定指示部24は、分散コンピューティング資源に反映するために、生成した配置情報や設定情報を含めた設定要求41を送信する(ステップS420)。設定指示部24は、設定要求41を送信した全ての分散コンピューティング資源から応答(ACK:Acknowlege)を待つ(ステップS430)。応答を待つ際の処理例として、設定要求41を送信した全ての分散コンピューティング資源から応答を受信するまで待機する方法や、一定時間待機した後に応答を受信していない分散コンピューティング資源に対して、再度、設定要求41を送信するという処理を一定回数繰り替えるといった方法が考えられる。また、ネットワークトラブルや、分散コンピューティング資源の故障等により設定に失敗する場合も考えられる。そこで、一定時間経過後、あるいは一定回数の要求再発行後に応答を受信できない分散コンピューティング資源については、サービスのマッピングに失敗したと判定する方法も考えられる。
The setting
設定指示部24は、マッピングの結果をマッピング情報生成部22へ通知する(ステップS440)。設定指示部24は、マッピングが正常に完了した場合、マッピング結果として完了通知を出力する。一方、設定指示部24は、マッピングが正常に完了しない場合、マッピング結果として未完了通知を出力する。以上が、図6のフローチャートのステップS24に示された動作の詳細な説明である。設定指示部24は、上述のような動作により分散コンピューティング資源への設定とアプリケーションの配置を行う。
The setting
続いて、図15のフローチャートのステップS430に示された動作について詳細な説明を行う。図16は、本実施形態において図15のフローチャートのステップS430における動作を詳細に示したフローチャートである。 Next, the operation shown in step S430 in the flowchart of FIG. 15 will be described in detail. FIG. 16 is a flowchart showing in detail the operation in step S430 of the flowchart of FIG. 15 in the present embodiment.
まず、設定指示部24は、アプリケーション43の配置情報や設定情報を反映するための設定要求41を送信した全ての分散コンピューティング資源から応答が帰ってきたかを判定する(ステップS432)。設定指示部24は、全ての分散コンピューティング資源から応答が帰ってきていれば(ステップS432のYes)、サービスのマッピングに成功したと判定する(ステップS433)。一方、設定指示部24は、全ての分散コンピューティング資源から応答が帰ってきていない場合(ステップS432のNo)、該当する分散コンピューティング資源に設定要求41を特定の回数、再発行したかを判定する(ステップS434)。ここで、特定の回数とは、予め定められた、サービスのマッピングが失敗したと判定するための閾値となる回数である。
First, the setting
設定指示部24は、設定要求41の再発行回数が特定の回数へ達している場合(ステップS434のYes)、サービスのマッピングが失敗したと判定する(ステップS435)。一方、設定指示部24は、設定要求41の再発行回数が特定の回数へ達していない場合(ステップS434のNo)、該当する分散コンピューティング資源に対して設定要求41の再発行を行う(ステップS436)。以上が、図15のフローチャートのステップS430に示された動作の詳細な説明である。設定指示部24は、上述のような動作により分散コンピューティング資源へのマッピングの成功及び失敗を判定する。
If the number of reissues of the setting
続いて、図6のフローチャートのステップS26に示された動作について詳細な説明を行う。図17は、本実施形態において図6のフローチャートのステップS26における動作を詳細に示したフローチャートである。 Next, the operation shown in step S26 of the flowchart of FIG. 6 will be described in detail. FIG. 17 is a flowchart showing in detail the operation in step S26 of the flowchart of FIG. 6 in the present embodiment.
まず、マッピング情報生成部22は、設定指示部24からサービスのマッピング結果の通知の有無を判定する(ステップS260)。この確認の方法として、マッピング情報生成部22に対してサービス定義42の解析結果の入力に対応付けられた割り込みを発生させて通知する方法や、マッピング情報生成部22が特定の記憶領域をポーリングして入力の有無を確認する方法等が考えられる。この場合の記憶領域には、記憶部100のメモリやハードディスク、あるいは制御部120のレジスタが相当する。
First, the mapping
マッピング情報生成部22は、マッピング結果の通知が無い場合(ステップS260のNo)、マッピング結果の通知があるまで本ステップを繰り返す。一方、マッピング情報生成部22は、マッピング結果の通知があった場合(ステップS260のYes)、通知の内容を確認する(ステップS270)。マッピング情報生成部22は、通知の内容に基づいて、サービスのマッピングに成功したかを判定する(ステップS280)。
If there is no notification of the mapping result (No in step S260), the mapping
マッピングが成功していた場合(ステップS280のYes)、すなわち、マッピング結果が完了通知であった場合、図6に示したステップS28へ移行する。この場合、図6のステップS28に示したように、サービス構築完了通知45を出力することになる。一方、マッピングが失敗している場合(ステップS280のNo)、すなわち、マッピング結果が未完了通知であった場合、図6に示したステップS22へ移行する。この場合、マッピング情報生成部22は、再度、マッピング情報を生成することになる。以上が、図6のフローチャートのステップS26に示された動作の詳細な説明である。マッピング情報生成部22は、上述のような動作により分散コンピューティング資源へのサービスの構築完了を判定する。
If the mapping is successful (Yes in step S280), that is, if the mapping result is a completion notification, the process proceeds to step S28 shown in FIG. In this case, as shown in step S28 of FIG. 6, the service
以上が、本実施形態におけるサービス構築装置2の動作方法の説明である。
The above is the description of the operation method of the
ここまで説明したように本実施形態では、サービス構築装置2のマッピング情報生成部22が、これまでIT資源12で実行されてきた処理と、これまでネットワーク資源11で実行されてきた処理を区別無く一様に扱ってマッピング情報を生成する。つまり、マッピング情報生成部22は、IT資源12とネットワーク資源11のうちから区別無く選択した資源上に各処理を割り当ててマッピング情報を生成する。また、マッピング情報生成部22は、選択されたIT資源12やネットワーク資源11で行われる処理間で適切な通信を可能とするために、経路上資源を抽出してこれら経路上資源に対してもマッピング情報を生成する。このように、IT資源12とネットワーク資源11の双方に対して単一の処理でマッピングが可能となる。そのため、サービス構築に要する時間を短縮することができる。
As described above, in the present embodiment, the mapping
以上が、本実施形態におけるサービス構築装置の説明である。 The above is the description of the service construction device in the present embodiment.
(第2実施形態)
次に、本発明の第2実施形態におけるサービス構築システムの説明を行う。
(Second Embodiment)
Next, a service construction system according to the second embodiment of the present invention will be described.
[概要]
本実施形態におけるサービス構築システムは、分散コンピューティング環境1に構築されるサービスを、マッピング情報やサービス定義42に基づいて可視化する可視化装置3を備える。ユーザは、構築されたサービスを可視化装置3により確認することが可能となる。
[Overview]
The service construction system in this embodiment includes a
[構成の説明]
まず、本実施形態におけるサービス構築システムの構成の説明を行う。本実施形態のサービス構築システムは、第1実施形態と同様、分散コンピューティング環境1とサービス構築装置2とを備え、さらに可視化装置3を備える。本実施形態におけるサービス構築システムは、可視化装置3をさらに備える点が第1実施形態と異なる。そのため、第1実施形態と同様の部分については重ねての説明を省略して、第1実施形態と異なる部分を中心に説明を行う。
[Description of configuration]
First, the configuration of the service construction system in this embodiment will be described. As in the first embodiment, the service construction system of the present embodiment includes a distributed
図18は、本実施形態におけるサービス構築装置2と可視化装置3との機能を示す機能ブロック図である。なお、本実施形態のサービス構築装置2は、第1実施形態と同様、図2に示したようなハードウェア構成である。
FIG. 18 is a functional block diagram showing functions of the
可視化装置3は、分散コンピューティング環境1に構築されたサービスを可視化する。可視化装置3は、サービス構築装置2のマッピング情報生成部22と接続される。本実施形態のマッピング情報生成部22は、サービスのマッピングに成功してサービス構築完了通知45を出力する際に、サービス構築完了通知45にマッピング情報とサービス定義42を含めて出力する。可視化装置3は、マッピング情報とサービス定義42に基づいて、分散コンピューティング環境1に構築されたサービスを可視化する。なお、可視化装置3は、図18に示すようにサービス構築装置2の外部に構築されても良いし、サービス構築装置の内部に構築されても良い。なお、サービス構築装置2は、上述以外、第1実施形態と同様である。
The
以上が、本実施形態におけるサービス構築装置2の構成の説明である。
The above is description of the structure of the
[動作の説明]
次に、本実施形態におけるサービス構築装置2の動作の説明を行う。図19は、本実施形態におけるサービス構築システムの動作を示すフローチャートである。なお、図19に示されたフローチャートでは、図6に示されたフローチャートのステップS28において実行される処理を示している。また、この時点でのマッピング情報は、図14に示した状態であるとする。
[Description of operation]
Next, the operation of the
まず、マッピング情報生成部22は、マッピング情報において、複数の経路上資源に関連付けられた処理が存在するかを判定する(ステップS282)。マッピング情報生成部22は、複数の経路上資源に関連付けられた処理が存在する場合(ステップS282のYes)、該当する処理を新たな処理としてマッピング情報へ追加する(ステップS284)。具体的に、マッピング情報生成部22は、複数の経路上資源に関連付けられた処理の「次の処理」に関する情報を、該当する処理から最初に経由する経路上資源で実行される処理の「次の処理」の情報として、その経路上資源で行うべき処理をマッピング情報に追加する。この新たに追加される経路上資源で行うべき処理において、「次の処理」の情報は、変更前の該当する処理の「次の処理」の情報である。「経路上資源」の情報は、変更前の該当する処理の「経路上資源」の情報から、該当する処理が最初に経由する経路上資源の情報を除いたものになる。その後、ステップS282に戻り、他に複数の経路上資源に関連付けられた処理が存在するかを判定することになる。
First, the mapping
ここで、図20は、本実施形態におけるステップS284が完了した時点のマッピング情報の一例を示す図である。図20のマッピング情報は、図14のマッピング情報に、複数の経路上資源に関連付けられた処理を新たな処理として追加したものである。なお、マッピング情報は、図20に示されるようなテーブル形式の表現に限定しない。 Here, FIG. 20 is a diagram illustrating an example of mapping information at the time when step S284 in the present embodiment is completed. The mapping information in FIG. 20 is obtained by adding processing associated with a plurality of resources on the route as new processing to the mapping information in FIG. Note that the mapping information is not limited to the table format as shown in FIG.
例えば、図14において、「AppD」は、複数の経路上資源に関連付けられた処理である。「AppD」の処理と「AppF」の処理との間の経路上資源は、「ServerC」と「Router」の二つ存在する。図20に示されたステップS284の処理を実行後のマッピング情報では、「AppD」の「次の処理」に関する情報を「ServerC」で実行される「Forwarding1」という処理に置き換えている。つまり、「ServerC」で実行される転送処理を「Forwarding1」という処理として追加している。ここで、「ServerC」と「Router」とのうち「ServerC」が選択されるのは、「AppD」から「AppF」への通信経路上で「ServerC」を最初に経由するためである。
For example, in FIG. 14, “AppD” is a process associated with a plurality of resources on the path. There are two resources on the path between the “AppD” process and the “AppF” process, “ServerC” and “Router”. In the mapping information after executing the process of step S284 shown in FIG. 20, the information related to “next process” of “AppD” is replaced with the process of “
なお、処理「Forwarding1」の「次の処理」は、図14において「AppD」に関連付けられていた「AppF」となる。さらに、処理「Forwarding1」の「経路上資源」は、図14において「AppD」に関連付けられていた「ServerC」と「Router」から「ServerC」を除いた「Router」となる。また、「AppD」の「次の処理」は、追加された「Forwarding1」となる。
Note that the “next process” of the process “
次に、図19へ戻り、マッピング情報生成部22は、複数の経路上資源に関連付けられた処理が存在しない場合(ステップS282のNo)、経路上資源を関連付けられた処理が存在するかを判定する(ステップS286)。なお、ステップS286の段階では、複数の経路上資源に関連付けられた処理は存在しない。経路上資源を関連付けられた処理が存在しない(ステップS286のNo)、ステップS290へ進む。
Next, returning to FIG. 19, the mapping
マッピング情報生成部22は、経路上資源を関連付けられた処理が存在する場合(ステップS286のYes)、該当する処理を新たな処理としてマッピング情報へ追加する(ステップS288)。具体的に、マッピング情報生成部22は、該当する処理の「次の処理」に関する情報を、経路上資源で実行される処理の情報として、その経路上資源で行うべき処理をマッピング情報に追加する。この経路上資源で行うべき処理の「次の処理」の情報は、変更前の該当する処理の「次の処理」となる。
If there is a process associated with the resource on the path (Yes in step S286), the mapping
ここで、図21は、本実施形態におけるステップS288が完了した時点のマッピング情報の一例を示す図である。図21のマッピング情報は、図20のマッピング情報に、経路上資源による処理と新たな処理として追加したものである。なお、マッピング情報は、図21に示されるようなテーブル形式の表現に限定しない。 Here, FIG. 21 is a diagram illustrating an example of mapping information at the time when step S288 in the present embodiment is completed. The mapping information in FIG. 21 is added to the mapping information in FIG. 20 as a process by a resource on the route and a new process. Note that the mapping information is not limited to the table format as shown in FIG.
例えば、図20において、「AppB」は、経路上資源を関連付けられた処理である。「AppB」は、「ServerC」を経路上資源とする処理と、「Router」を経路上資源とする処理とが存在する。図21に示されたステップS288の処理を実行後のマッピング情報では、一方の「AppB」の「次の処理」に関する情報を「ServerC」で実行される「Forwarding3」という処理に置き換えている。つまり、「ServerC」で実行される転送処理を「Forwarding3」という処理として追加している。このとき、処理「Forwarding3」の「次の処理」は、図20において「AppB」に関連付けられていた「AppC」となる。また、「AppB」の「次の処理」は、追加された「Forwarding3」となる。
For example, in FIG. 20, “AppB” is a process associated with a resource on the path. “AppB” includes a process using “ServerC” as a resource on a route and a process using “Router” as a resource on a route. In the mapping information after executing the process of step S288 shown in FIG. 21, the information related to the “next process” of one “AppB” is replaced with the process “
また、図21に示されたマッピング情報では、他方の「AppB」の「次の処理」に関する情報を「Router」で実行される「Forwarding4」という処理に置き換えている。つまり、「Router」で実行される転送処理を「Forwarding4」という処理として追加している。このとき、処理「Forwarding4」の「次の処理」は、図20において他方の「AppB」に関連付けられていた「AppE」となる。また、他方の「AppB」の「次の処理」は、追加された「Forwarding4」となる。
In the mapping information shown in FIG. 21, the information related to “next processing” of the other “AppB” is replaced with the processing “
同様に、図20のマッピング情報における「Input」や、「Forwarding1」や、「AppF」等の処理も、関連付けられた経路上資源を新たな処理として追加する処理が行われる。このような処理が行われることで、図21に示されたステップS288を実行後のマッピング情報では、経路上資源に関連付けられている処理は存在しない。そして、IT資源12の処理もネットワーク資源11の処理も、統一された形式で表現が可能となる。
Similarly, processes such as “Input”, “
次に、図19に戻り、マッピング情報生成部22は、マッピング情報とサービス定義42をサービス構築完了通知45と共に出力する(ステップS290)。可視化装置3は、マッピング情報とサービス定義42を入力とする。可視化装置3は、マッピング情報とサービス定義42とに基づいて、分散コンピューティング環境1に構築されたサービスを可視化する(ステップS292)。以上が、本実施形態におけるサービス構築装置2の動作の説明である。
Next, returning to FIG. 19, the mapping
ここで、図22は、本実施形態における可視化装置3により可視化されたサービスの例を示す図である。可視化装置3は、図22に示すようなウィンドウW41〜W44を表示する。このような表示は、可視化装置3が独自に備える表示装置に表示されてもよいし、サービス構築装置2の出力部150のLCD等に表示されても良い。以下、各ウィンドウの説明を行う。
Here, FIG. 22 is a diagram illustrating an example of a service visualized by the
まず、ウィンドウW41は、サービスを選択するためのウィンドウである。ウィンドウW41は、現在、分散コンピューティング環境に構築されているサービスの一覧を表示する。ユーザは、ウィンドウW41において、可視化したいサービスを選択することができる。 First, the window W41 is a window for selecting a service. The window W41 displays a list of services currently built in the distributed computing environment. The user can select a service to be visualized in the window W41.
次に、ウィンドウW42は、分散コンピューティング環境1を表示するウィンドウである。ウィンドウW42は、分散コンピューティング環境1の分散コンピューティング資源が、ネットワーク接続状態と共に表示される。また、ウィンドウW42には、ウィンドウW41で選択されたサービスのマッピング状況に応じた分散コンピューティング環境1が表示される。
Next, the window W42 is a window for displaying the distributed
次に、ウィンドウW43は、サービス定義を表示するウィンドウである。ウィンドウW43は、ウィンドウW41で選択されたサービスのサービス定義に基づいて、サービスを構成する処理間の接続に関する情報が表示される。 Next, the window W43 is a window for displaying the service definition. The window W43 displays information related to connections between processes constituting the service based on the service definition of the service selected in the window W41.
次に、ウィンドウW44は、マッピング情報を表示するウィンドウである。ウィンドウW44は、ウィンドウW41で選択されたサービスのマッピング情報が表示される。 Next, the window W44 is a window for displaying mapping information. The window W44 displays mapping information of the service selected in the window W41.
次に、図23は、本実施形態における図4に示したサービス定義のサービスを可視化装置3により可視化した例を示す図である。
Next, FIG. 23 is a diagram illustrating an example in which the service of the service definition illustrated in FIG. 4 in the present embodiment is visualized by the
ウィンドウW41は、分散コンピューティング環境1に構築されているサービスを表示する。ユーザが、ウィンドウW41においてサービスを選択すると、ウィンドウW43にサービス定義42が表示される。このサービス定義42は、図4に示されたサービス定義42である。また、ウィンドウW44にマッピング情報が表示される。このマッピング情報は、図21に示されたマッピング情報である。さらに、ウィンドウW42にマッピング情報の内容が可視化されて表示される。
The window W41 displays services established in the distributed
次に、図24は、本実施形態における図23の可視化表示において特定の情報を選択した場合を示す図である。 Next, FIG. 24 is a diagram illustrating a case where specific information is selected in the visualization display of FIG. 23 in the present embodiment.
例えば、ユーザがウィンドウW44に表示されたマッピング情報の特定のデータを選択したとする。図24を参照すると、処理「AppA」が選択されている。これに伴い、ウィンドウW43では、処理「AppA」に対応する処理Aがハイライトされる。また、ウィンドウW42では、処理「AppA」と処理「AppA」を実行する「Firewall」がハイライトされる。なお、同様に、ウィンドウW43で特定の処理を選択すると、ウィンドウW44の対応するマッピング情報と、ウィンドウW42の対応する分散コンピューティング資源とアプリケーション43とがハイライトされる。また、ウィンドウW42で特定の分散コンピューティング資源、あるいはアプリケーション43を選択すると、ウィンドウW44の対応するマッピング情報と、ウィンドウW43に対応する処理とがハイライトされる。
For example, it is assumed that the user has selected specific data of the mapping information displayed in the window W44. Referring to FIG. 24, the process “AppA” is selected. Accordingly, the process A corresponding to the process “AppA” is highlighted in the window W43. In the window W42, “Firewall” for executing the process “AppA” and the process “AppA” is highlighted. Similarly, when a specific process is selected in the window W43, the corresponding mapping information in the window W44, the corresponding distributed computing resource in the window W42, and the
このように、ユーザは、特定の表示を選択することで、当該処理に対応する情報を確認することができる。これにより、本来のサービス定義に含まれない経路上資源の情報を含めたマッピング情報が可視化され、サービスを構成する処理を詳細に確認することができる。そのため、分散コンピューティング環境1の分散コンピューティング資源が、あるサービスにおいてどのように使用されているのかを詳細に確認することが可能になる。
Thus, the user can confirm information corresponding to the processing by selecting a specific display. As a result, mapping information including information on resources on the route that is not included in the original service definition is visualized, and the processes constituting the service can be confirmed in detail. Therefore, it is possible to confirm in detail how the distributed computing resources of the distributed
以上が、本実施形態におけるサービス構築装置2の動作の説明である。
The above is description of operation | movement of the
ここまで本発明のサービス構築システムの説明を行ってきた。本発明の第1実施形態によるサービス構築装置2は、これまでIT資源12で実行されてきた処理と、これまでネットワーク資源11で実行されてきた処理を区別無く一様に扱ってマッピング情報を生成する。サービス構築装置2は、IT資源12とネットワーク資源11のうちから区別無く選択された資源上に、構築するべきサービスの各処理を割り当てて、マッピング情報を生成する。また、サービス構築装置2は、選択されたIT資源12やネットワーク資源11で行われる処理間で適切な通信を可能とするために経路上資源を抽出して、これら経路上資源に対してもマッピング情報を生成する。これにより、IT資源12とネットワーク資源11の双方に対して単一の処理でマッピングが可能となる。そのため、サービス構築に要する時間を短縮することができる。
So far, the service construction system of the present invention has been described. The
また、本発明の第2実施形態によるサービス構築装置2は、本来のサービス定義に含まれない経路上資源の情報を含めたマッピング情報が可視化され、サービスを構成する処理を詳細に確認することができる。そのため、分散コンピューティング環境1の分散コンピューティング資源が、あるサービスにおいてどのように使用されているのかを詳細に確認することが可能になる。なお、各実施形態は独立して実現することも、組み合わせて実現することも可能である。
In addition, the
以上、実施形態を参照して本願発明を説明したが、本願発明は上記実施形態に限定されるものではない。本願発明の構成や詳細には、本願発明のスコープ内で当業者が理解し得る様々な変更を行うことができる。 While the present invention has been described with reference to the embodiments, the present invention is not limited to the above embodiments. Various changes that can be understood by those skilled in the art can be made to the configuration and details of the present invention within the scope of the present invention.
なお、上記の実施形態の一部又は全部は、以下の付記のようにも記載されうるが、以下には限られない。 In addition, although a part or all of said embodiment can be described also as the following additional remarks, it is not restricted to the following.
(付記1)互いに接続されてネットワークを構成する分散コンピューティング資源を具備する分散コンピューティング環境と、前記分散コンピューティング環境にサービスを構築するサービス構築装置とを備え、前記サービス構築装置は、前記サービスにおける処理の流れを示すアプリケーションフロー解析結果を生成するアプリケーションフロー解析部と、前記アプリケーションフロー解析結果に基づいて、前記分散コンピューティング資源のうちから前記処理を実現するアプリケーションを実行するべき第1選択分散コンピューティング資源と前記アプリケーション間の通信転送処理を実行するべき第2選択分散コンピューティング資源とを割り当てたマッピング情報を生成するマッピング情報生成部と、前記マッピング情報に基づいて、前記第1選択分散コンピューティング資源に対する前記アプリケーションの配置情報と、前記第2選択分散コンピューティング資源に対する通信転送処理の設定情報とをマッピングする設定指示部とを備えるサービス構築システム。 (Supplementary Note 1) A distributed computing environment including distributed computing resources that are connected to each other to form a network, and a service construction device that constructs a service in the distributed computing environment, the service construction device including the service An application flow analysis unit for generating an application flow analysis result indicating the flow of processing in the application, and a first selection distribution to execute an application for realizing the processing from the distributed computing resources based on the application flow analysis result A mapping information generating unit for generating mapping information to which a computing resource and a second selected distributed computing resource for executing a communication transfer process between the applications are assigned, and based on the mapping information Service construction system comprising a location information of the application, and a setting instruction unit for mapping the configuration information of the communication transfer processing for the second selected distributed computing resources for the first selected distributed computing resources.
(付記2)付記1に記載のサービス構築システムであって、前記マッピング情報生成部は、前記処理に対して前記処理を実現するアプリケーションを割り当てて、前記分散コンピューティング資源のうちから前記アプリケーションを実行するべき前記第1選択分散コンピューティング資源を割り当てて、前記分散コンピューティング資源のうちから前記処理の流れにおいて前記第1選択分散コンピューティング資源に割り当てられた前記アプリケーション間の通信系路上に存在して通信転送処理を実行するべき第2選択分散コンピューティング資源を割り当てて前記マッピング情報を生成するサービス構築システム。
(Supplementary note 2) The service construction system according to
(付記3)付記1または付記2に記載のサービス構築システムであって、前記分散コンピューティング資源は、ネットワーク資源とIT資源とを含み、前記ネットワーク資源は、互いに接続されて前記ネットワークにおいて前記通信転送処理を行い、前記IT資源は、他のIT資源や前記ネットワーク資源に接続されて前記アプリケーションを実行し、前記マッピング情報生成部は、前記ネットワーク資源と前記ITとのうちから、前記第1選択分散コンピューティング資源と前記第2選択分散コンピューティング資源とを区別無く割り当てるサービス構築システム。
(Supplementary note 3) The service construction system according to
(付記4)付記1から付記3までのいずれかに記載のサービス構築システムであって、前記アプリケーションフロー解析部は、前記サービスの仕様を定めたサービス定義入力して、前記サービス定義に基づいて前記サービスにおける前記処理の入出力関係を示す前記アプリケーションフロー解析結果を生成するサービス構築システム。
(Supplementary note 4) The service construction system according to any one of
(付記5)付記1から付記4までのいずれかに記載のサービス構築システムであって、前記サービス定義は、前記サービスに含まれる前記処理の内容や、前記処理の入出力関係や、前記サービスにおける制約事項を含むサービス構築システム。
(Supplementary note 5) The service construction system according to any one of
(付記6)付記1から付記5までのいずれかに記載のサービス構築システムであって、前記分散コンピューティング資源に配置可能な前記アプリケーションと、前記アプリケーションを動作させる前記分散コンピューティング資源における条件を示すアプリケーション情報を記憶するアプリケーション管理部をさらに備え、前記マッピング情報生成部は、前記アプリケーション情報を用いて前記マッピング情報を生成するサービス構築システム。
(Supplementary note 6) The service construction system according to any one of
(付記7)付記1から付記6までのいずれかに記載のサービス構築システムであって、前記分散コンピューティング資源と前記分散コンピューティング資源の各々の前記分散コンピューティング環境における接続関係を示す前記資源情報とを記憶する資源管理部をさらに備え、前記マッピング情報生成部は、前記資源情報を用いて前記マッピング情報を生成するサービス構築システム。
(Supplementary note 7) The service construction system according to any one of
(付記8)付記1から付記7までのいずれかに記載されたサービス構築システムであって、前記サービス毎に前記マッピング情報に基づく処理の流れを前記分散コンピューティング環境における前記分散コンピューティング資源に対応付けて可視化する可視化装置をさらに備えるサービス構築システム。
(Supplementary note 8) The service construction system according to any one of
(付記9)付記8に記載のサービス構築システムであって、前記サービス構築装置が前記可視化装置を備えるサービス構築システム。 (Supplementary note 9) The service construction system according to supplementary note 8, wherein the service construction device includes the visualization device.
(付記10)付記8または付記9に記載のサービス構築システムであって、前記マッピング情報生成部は、前記通信転送処理を前記サービスにおいて前記第2選択分散コンピューティング資源の実行する前記処理の1つとして前記マッピング情報へ追加すされた補正マッピング情報を生成して、前記可視化装置は、前記補正マッピング情報に基づいて前記処理の流れを前記分散コンピューティング環境における前記分散コンピューティング資源に対応付けるサービス構築システム。 (Supplementary note 10) The service construction system according to supplementary note 8 or supplementary note 9, wherein the mapping information generating unit is one of the processes in which the communication transfer process is executed by the second selected distributed computing resource in the service. And generating the corrected mapping information added to the mapping information as follows, and the visualization apparatus associates the processing flow with the distributed computing resources in the distributed computing environment based on the corrected mapping information. .
(付記11)付記1から付記10までのいずれかに記載のサービス構築システムで用いられるサービス構築装置。
(Additional remark 11) The service construction apparatus used with the service construction system in any one of
(付記12)互いに接続されてネットワークを構成する分散コンピューティング資源を具備する分散コンピューティング環境と、前記分散コンピューティング環境にサービスを構築するサービス構築装置とを備えるサービス構築システムにおいて、前記サービスにおける処理の流れを示すアプリケーションフロー解析結果を生成するステップと、前記アプリケーションフロー解析結果に基づいて、前記分散コンピューティング資源うちから前記処理を実現するアプリケーションを実行するべき第1選択分散コンピューティング資源と前記アプリケーション間の通信転送処理を実行するべき第2選択分散コンピューティング資源とを割り当てたマッピング情報を生成するステップと、前記マッピング情報に基づいて、前記第1選択分散コンピューティング資源に対する前記アプリケーションの配置情報と、前記第2選択分散コンピューティング資源に対する通信転送処理の設定情報とをマッピングするステップとを備えるサービス構築方法。 (Supplementary note 12) In a service construction system comprising a distributed computing environment comprising distributed computing resources connected to each other to constitute a network, and a service construction device for constructing a service in the distributed computing environment, the processing in the service Generating an application flow analysis result indicating the flow of the first, a first selected distributed computing resource to execute the application that realizes the processing from the distributed computing resources based on the application flow analysis result, and the application Generating mapping information to which a second selected distributed computing resource to execute a communication transfer process between is assigned, and based on the mapping information, the first selected distributed computer Service construction method comprising the arrangement information of the application for the computing resources, and a step of mapping the configuration information of the communication transfer processing for the second selected distributed computing resources.
(付記13)付記12に記載のサービス構築方法をコンピュータに実行させるコンピュータプログラム。
(Additional remark 13) The computer program which makes a computer perform the service construction method of
1 分散コンピューティング環境
2 サービス構築装置
3 可視化装置
11 ネットワーク資源
12 IT資源
21 アプリケーションフロー解析部
22 マッピング情報生成部
23 アプリケーション管理部
24 設定指示部
25 資源管理部
41 設定要求
42 サービス定義
43 アプリケーション
44 状態情報
45 サービス構築完了通知
100 記憶部
110 サービス構築プログラム
120 制御部
130 通信部
140 入力部
150 出力部
160 バス
W41〜W44 ウィンドウ
DESCRIPTION OF
Claims (10)
前記分散コンピューティング環境にサービスを構築するサービス構築装置と
を備え、
前記サービス構築装置は、
前記サービスにおける処理の流れを示すアプリケーションフロー解析結果を生成するアプリケーションフロー解析部と、
前記アプリケーションフロー解析結果に基づいて、前記分散コンピューティング資源のうちから前記処理を実現するアプリケーションを実行するべき第1選択分散コンピューティング資源と前記アプリケーション間の通信転送処理を実行するべき第2選択分散コンピューティング資源とを割り当てたマッピング情報を生成するマッピング情報生成部と、
前記マッピング情報に基づいて、前記第1選択分散コンピューティング資源に対する前記アプリケーションの配置情報と、前記第2選択分散コンピューティング資源に対する通信転送処理の設定情報とをマッピングする設定指示部と
を備えるサービス構築システム。 A distributed computing environment comprising distributed computing resources connected together to form a network;
A service construction device for constructing a service in the distributed computing environment,
The service construction device
An application flow analysis unit that generates an application flow analysis result indicating a flow of processing in the service;
Based on the application flow analysis result, among the distributed computing resources, a first selected distributed computing resource for executing an application for realizing the processing and a second selected distribution for executing a communication transfer process between the applications. A mapping information generating unit that generates mapping information to which computing resources are allocated;
A service construction comprising: a setting instruction unit that maps, based on the mapping information, arrangement information of the application with respect to the first selected distributed computing resource and setting information of communication transfer processing with respect to the second selected distributed computing resource system.
前記マッピング情報生成部は、
前記処理に対して前記処理を実現するアプリケーションを割り当てて、前記分散コンピューティング資源のうちから前記アプリケーションを実行するべき前記第1選択分散コンピューティング資源を割り当てて、前記分散コンピューティング資源のうちから前記処理の流れにおいて前記第1選択分散コンピューティング資源に割り当てられた前記アプリケーション間の通信経路上に存在して通信転送処理を実行するべき第2選択分散コンピューティング資源を割り当てて前記マッピング情報を生成する
サービス構築システム。 The service construction system according to claim 1,
The mapping information generation unit
An application that implements the process is allocated to the process, the first selected distributed computing resource that is to execute the application is allocated from the distributed computing resources, and the distributed computing resource is the in the flow of processing by assigning second selection distributed computing resources to execute the communication transfer process present in the communication through path between said application assigned to the first selected distributed computing resources to generate the mapping information Service construction system.
前記分散コンピューティング資源は、ネットワーク資源とIT資源とを含み、
前記ネットワーク資源は、互いに接続されて前記ネットワークにおいて前記通信転送処理を行い、
前記IT資源は、他のIT資源や前記ネットワーク資源に接続されて前記アプリケーションを実行し、
前記マッピング情報生成部は、前記ネットワーク資源と前記IT資源とのうちから、前記第1選択分散コンピューティング資源と前記第2選択分散コンピューティング資源とを区別無く割り当てる
サービス構築システム。 The service construction system according to claim 1 or 2,
The distributed computing resources include network resources and IT resources,
The network resources are connected to each other and perform the communication transfer process in the network,
The IT resource is connected to another IT resource or the network resource to execute the application,
The mapping information generation unit allocates the first selected distributed computing resource and the second selected distributed computing resource without discrimination between the network resource and the IT resource .
前記アプリケーションフロー解析部は、前記サービスの仕様を定めたサービス定義を入力して、前記サービス定義に基づいて前記サービスにおける前記処理の入出力関係を示す前記アプリケーションフロー解析結果を生成する
サービス構築システム。 A service construction system according to any one of claims 1 to 3,
The application flow analysis unit, the service construction system by entering a service definition that defines specifications of the service, to generate the application flow analysis result showing the input-output relationship of the process in the service based on the service definition.
前記サービス毎に前記マッピング情報に基づく処理の流れを前記分散コンピューティング環境における前記分散コンピューティング資源に対応付けて可視化する可視化装置
をさらに備えるサービス構築システム。 A service construction system according to any one of claims 1 to 4, wherein
A service construction system further comprising a visualization device that visualizes a processing flow based on the mapping information for each service in association with the distributed computing resource in the distributed computing environment.
前記サービス構築装置が前記可視化装置を備える
サービス構築システム。 The service construction system according to claim 5,
A service construction system, wherein the service construction device includes the visualization device.
前記マッピング情報生成部は、前記通信転送処理を前記サービスにおいて前記第2選択分散コンピューティング資源の実行する前記処理の1つとして前記マッピング情報へ追加された補正マッピング情報を生成して、
前記可視化装置は、前記補正マッピング情報に基づいて前記処理の流れを前記分散コンピューティング環境における前記分散コンピューティング資源に対応付ける
サービス構築システム。 The service construction system according to claim 5 or 6,
The mapping information generating unit generates the said correction mapping information that have been added to the mapping information as one of the processing performed by the second selection distributed computing resources of the communication transfer processing in the service,
The visualization apparatus is a service construction system that associates the processing flow with the distributed computing resources in the distributed computing environment based on the correction mapping information.
前記サービスにおける処理の流れを示すアプリケーションフロー解析結果を生成するステップと、
前記アプリケーションフロー解析結果に基づいて、前記分散コンピューティング資源のうちから前記処理を実現するアプリケーションを実行するべき第1選択分散コンピューティング資源と前記アプリケーション間の通信転送処理を実行するべき第2選択分散コンピューティング資源とを割り当てたマッピング情報を生成するステップと、
前記マッピング情報に基づいて、前記第1選択分散コンピューティング資源に対する前記アプリケーションの配置情報と、前記第2選択分散コンピューティング資源に対する通信転送処理の設定情報とをマッピングするステップと
を備えるサービス構築方法。 In a service construction system comprising a distributed computing environment comprising distributed computing resources connected to each other to form a network, and a service construction device for constructing a service in the distributed computing environment,
Generating an application flow analysis result indicating a flow of processing in the service;
Based on the application flow analysis result, among the distributed computing resources, a first selected distributed computing resource for executing an application for realizing the processing and a second selected distribution for executing a communication transfer process between the applications. Generating mapping information assigned with computing resources;
A service construction method comprising: mapping, based on the mapping information, arrangement information of the application with respect to the first selected distributed computing resource and setting information of communication transfer processing with respect to the second selected distributed computing resource.
Priority Applications (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
JP2010062140A JP5522525B2 (en) | 2010-03-18 | 2010-03-18 | Service construction system, apparatus, method, and program |
Applications Claiming Priority (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
JP2010062140A JP5522525B2 (en) | 2010-03-18 | 2010-03-18 | Service construction system, apparatus, method, and program |
Publications (2)
Publication Number | Publication Date |
---|---|
JP2011197866A JP2011197866A (en) | 2011-10-06 |
JP5522525B2 true JP5522525B2 (en) | 2014-06-18 |
Family
ID=44876014
Family Applications (1)
Application Number | Title | Priority Date | Filing Date |
---|---|---|---|
JP2010062140A Active JP5522525B2 (en) | 2010-03-18 | 2010-03-18 | Service construction system, apparatus, method, and program |
Country Status (1)
Country | Link |
---|---|
JP (1) | JP5522525B2 (en) |
Families Citing this family (3)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
US9300548B2 (en) | 2011-10-14 | 2016-03-29 | Alcatel Lucent | Providing dynamic reliability and security in communications environments |
US9608932B2 (en) | 2013-12-10 | 2017-03-28 | International Business Machines Corporation | Software-defined networking single-source enterprise workload manager |
CN116471320A (en) * | 2017-05-12 | 2023-07-21 | 微软技术许可有限责任公司 | Intelligent cloud management based on portrait information |
-
2010
- 2010-03-18 JP JP2010062140A patent/JP5522525B2/en active Active
Also Published As
Publication number | Publication date |
---|---|
JP2011197866A (en) | 2011-10-06 |
Similar Documents
Publication | Publication Date | Title |
---|---|---|
US7958184B2 (en) | Network virtualization in a multi-node system with multiple networks | |
JP5159071B2 (en) | COMMUNICATION SYSTEM, COMMUNICATION DEVICE, AND ITS CONTROL METHOD | |
US20090019164A1 (en) | Dynamically configuring a router to find the best dhcp server | |
KR20130139897A (en) | Debugger launch and attach on compute clusters | |
JP2007195166A (en) | Method, computer program, and apparatus for creation and management of routing table for pci bus address based routing with integrated did | |
JP5742958B2 (en) | Program, information processing apparatus, and route setting method | |
JP5757325B2 (en) | Virtual desktop system, network processing apparatus, management method, and management program | |
JP5522525B2 (en) | Service construction system, apparatus, method, and program | |
JPWO2014171130A1 (en) | Information processing system, deployment method, processing device, and deployment device | |
CN114726774B (en) | Method and device for realizing service chain of cloud platform and cloud platform-based system | |
JP5482155B2 (en) | Information communication system, connection setting device, and connection setting program | |
WO2012160641A1 (en) | Administration device, information processing device, information processing system, data transfer method, path selection program, and transfer request program | |
JP2016184299A (en) | Information processing device and program | |
EP4296853A1 (en) | Dynamic container layer switching | |
JP4830537B2 (en) | Information processing apparatus, control method, and control program | |
US20220321457A1 (en) | Route discovery for failure detection in computer networks | |
US10148518B2 (en) | Method and apparatus for managing computer system | |
JP7332869B2 (en) | Communication program, communication method and communication device | |
Schweigler et al. | pony-The occam-pi Network Environment. | |
JP4667299B2 (en) | Interprocess communication method | |
JP6554042B2 (en) | Data relocation system, data relocation apparatus, and data relocation method | |
JP2004102931A (en) | Automatic processing general-purpose control system, control device, execution device, automatic processing general-purpose control method and device, program and recording medium | |
WO2024121897A1 (en) | Service provision device, replica number determination method, and program | |
JP7381882B2 (en) | Communication control device, communication control system, communication control method and program | |
JP2006186877A (en) | Method for synchronizing packet filter and packet relay system |
Legal Events
Date | Code | Title | Description |
---|---|---|---|
A621 | Written request for application examination |
Free format text: JAPANESE INTERMEDIATE CODE: A621 Effective date: 20130206 |
|
A977 | Report on retrieval |
Free format text: JAPANESE INTERMEDIATE CODE: A971007 Effective date: 20131225 |
|
A131 | Notification of reasons for refusal |
Free format text: JAPANESE INTERMEDIATE CODE: A131 Effective date: 20140106 |
|
A521 | Written amendment |
Free format text: JAPANESE INTERMEDIATE CODE: A523 Effective date: 20140225 |
|
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: 20140314 |
|
A61 | First payment of annual fees (during grant procedure) |
Free format text: JAPANESE INTERMEDIATE CODE: A61 Effective date: 20140327 |
|
R150 | Certificate of patent or registration of utility model |
Ref document number: 5522525 Country of ref document: JP Free format text: JAPANESE INTERMEDIATE CODE: R150 |