JPWO2012111491A1 - Deployment device, deployment method, and program - Google Patents
Deployment device, deployment method, and program Download PDFInfo
- Publication number
- JPWO2012111491A1 JPWO2012111491A1 JP2012557902A JP2012557902A JPWO2012111491A1 JP WO2012111491 A1 JPWO2012111491 A1 JP WO2012111491A1 JP 2012557902 A JP2012557902 A JP 2012557902A JP 2012557902 A JP2012557902 A JP 2012557902A JP WO2012111491 A1 JPWO2012111491 A1 JP WO2012111491A1
- Authority
- JP
- Japan
- Prior art keywords
- infrastructure
- name
- configuration information
- function
- deployment
- 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.)
- Pending
Links
Images
Classifications
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR COUNTING
- G06F—ELECTRIC DIGITAL DATA PROCESSING
- G06F8/00—Arrangements for software engineering
- G06F8/60—Software deployment
Landscapes
- Engineering & Computer Science (AREA)
- Software Systems (AREA)
- General Engineering & Computer Science (AREA)
- Theoretical Computer Science (AREA)
- Physics & Mathematics (AREA)
- General Physics & Mathematics (AREA)
- Stored Programmes (AREA)
Abstract
装置等は、アプロケーションプログラム(AP)が必要とするプラットフォームプログラム(インフラ)を、機能に基づいて選択して、実行環境に配備することが出来ない。配備装置は、複数のAPのおのおの対応に、AP名および要求機能名を含むAP構成情報を格納するAP構成記憶手段と、複数のインフラのおのおの対応に、インフラ実装名および提供機能名を含むインフラ構成情報を格納するインフラ構成記憶手段と、AP名を取得して、取得したAP名を含むAP構成情報内の要求機能名のリストを作成し、提供機能名が当該リストの要求機能名を包含するインフラ構成情報を選択し、選択したインフラ構成情報に含まれるインフラ実装名を出力する解決手段と、インフラ実装名を有するプログラムを実行装置に出力する配備手段、を備える。The device or the like cannot select a platform program (infrastructure) required by the allocation program (AP) based on the function and deploy it to the execution environment. The deployment device includes an AP configuration storage unit that stores AP configuration information including an AP name and a requested function name for each of a plurality of APs, and an infrastructure including an infrastructure implementation name and a provided function name for each of the plurality of infrastructures. Infrastructure configuration storage means for storing configuration information, AP name is acquired, a list of requested function names in AP configuration information including the acquired AP name is created, and the provided function name includes the requested function name in the list A solution unit that selects infrastructure configuration information to be output, and outputs an infrastructure implementation name included in the selected infrastructure configuration information; and a deployment unit that outputs a program having the infrastructure implementation name to an execution device.
Description
本発明は、プログラムの配備装置、配備方法およびプログラムに関する。特に、依存関係を有するミドルウェアやアプリケーションプログラム等を用いて構築される、サービスシステムへのプログラム配備に関する。 The present invention relates to a program deployment apparatus, a deployment method, and a program. In particular, the present invention relates to program deployment to a service system that is constructed using middleware or application programs having dependency relationships.
近年、複数のサービス、アプリケーション提供システムを特定のデータセンタ内で構築して、運用する形態を採用することが増加している。この形態は、サービスの提供にあたり、サービス、アプリケーションに依らず共通的に利用する機能群をデータセンタが提供することにより、システムの開発にかかるコストを削減する。ここで、共通的に利用する機能群は、ソフトウェアだけではなくハードウェアの機能も含む。つまり、この形態では、サービス事業者自身は、ハードウェアや一部ソフトウェアを所有せずに、サービス、アプリケーションを利用者に提供できる。この形態のサービスは、クラウド形態のサービスと呼ばれる。
一方で、このようなクラウド形態のサービスは、データセンタ内部で、ハードウェアやミドルウェアなどのソフトウェアを他のサービス、アプリケーションと共有して提供される。一事業者がハードウェアやソフトウェアを占有してしまうと、ハードウェアやソフトウェアの総量が肥大化し、その維持コストは高くなる。共有は、この高いコストを防止する。つまり、クラウド形態のサービスは、決められた機能性と品質を提供するための最低限のハードウェア、ソフトウェアリソースを用いて実現されることで、維持費が低い安価なサービス実行環境をサービス事業者に提供する。
この時、サービス事業者に、データセンタ内部の構造を意識させずにサービス、アプリケーションの運用に必要な環境・動作条件を指定させて、所望の条件のサービスシステムをデータセンタ内に構築することが必要となる。これをいかに行うかが課題となる。特に、このようなデータセンタでは、大量のサービス、アプリケーションを運用するため、いかにサービスシステムの構築負荷を低下させるかが課題となる。
このような課題は、クラウド形態のサービスを提供する大規模データセンタが登場する前から取り組まれており、システム構築をなるべく自動化するアプローチが取られてきた。
例えば、特許文献1は、システムを所定のサービス定義モデルによって詳細に記述し、システム構成を自動化する技術を開示する。
また、特許文献2は、仮想計算機システムをホストコンピュータに組み込む際、仮想計算機システムを動作させるために必要となる仮想計算機システム構成情報、およびホストコンピュータと各子OSのシステム構成情報を自動生成するシステムを開示する。
さらに、特許文献3は、事例データベース内の再利用可能な仕様書を特定し、仕様書の雛形に特定した仕様書各々の内容を反映して、設計対象システムに対するコンポジット仕様書を自動生成する装置を開示する。特許文献4は、アプリケーションプログラムの配備手続ファイルが指定するサーバに、アプリケーションプログラムを配備する装置を開示する。In recent years, an increasing number of services and application providing systems are constructed and operated in a specific data center. In this form, the cost for system development is reduced by providing the data center with a function group that is commonly used regardless of the service and application in providing the service. Here, the commonly used function group includes not only software but also hardware functions. That is, in this form, the service provider itself can provide services and applications to users without owning hardware or some software. This form of service is called a cloud form service.
On the other hand, such cloud-type services are provided by sharing software such as hardware and middleware with other services and applications inside the data center. If one business operator occupies hardware and software, the total amount of hardware and software increases, and its maintenance cost increases. Sharing prevents this high cost. In other words, services in the cloud form are realized by using the minimum hardware and software resources to provide the determined functionality and quality, so that service providers can create an inexpensive service execution environment with low maintenance costs. To provide.
At this time, it is possible to allow the service provider to specify the environment and operating conditions necessary for service and application operation without being aware of the internal structure of the data center, and to build a service system with desired conditions in the data center. Necessary. The challenge is how to do this. In particular, in such a data center, in order to operate a large amount of services and applications, how to reduce the construction load of the service system becomes a problem.
Such issues have been addressed before the advent of large-scale data centers that provide cloud-type services, and approaches to automate system construction as much as possible have been taken.
For example,
Further,
上述の文献に開示された技術は、何れも、アプリケーションプログラムが必要とする機能に基づいて、プラットフォームプログラムを選択して、実行環境に配備できない。
特許文献2のシステムにおいて、ホストコンピュータのOS(Operating System)、仮想計算機の子OSは予め特定のものが想定されている。特許文献3のシステムにおいて、コンポーネントは、事例に基づいて決定される。特許文献4のシステムにおいて、プラットフォームプログラムはサーバハードウェアと分離して考慮されないし、配備もされない。
本発明は、上述の課題を解決するための装置、方法、プログラムを提供することを目的とする。None of the techniques disclosed in the above-mentioned documents can select a platform program based on the functions required by the application program and deploy it to the execution environment.
In the system of
An object of the present invention is to provide an apparatus, a method, and a program for solving the above-described problems.
本発明の一実施形態の配備装置は、複数のアプリケーションプログラム(AP)のおのおの対応に、AP名および要求機能名を含むAP構成情報を格納するAP構成記憶手段と、
複数のプラットフォームプログラム(インフラ)のおのおの対応に、インフラ実装名および提供機能名を含むインフラ構成情報を格納するインフラ構成記憶手段と、
AP名を取得して、取得した前記AP名を含む前記AP構成情報内の前記要求機能名のリストを作成し、前記提供機能名が当該リストの前記要求機能名を包含する前記インフラ構成情報を選択し、選択した前記インフラ構成情報に含まれる前記インフラ実装名を出力する解決手段と、
前記インフラ実装名を有するプログラムを実行装置に出力する配備手段、を備える。
本発明の一実施形態のプログラムは、コンピュータに、
複数のアプリケーションプログラム(AP)のおのおの対応に、AP名および要求機能名を含むAP構成情報をAP構成記憶手段に格納するAP構成記憶処理と、
複数のプラットフォームプログラム(インフラ)のおのおの対応に、インフラ実装名および提供機能名を含むインフラ構成情報をインフラ構成記憶手段に格納するインフラ構成記憶処理と、
AP名を取得して、取得した前記AP名を含む前記AP構成情報内の前記要求機能名のリストを作成し、前記提供機能名が当該リストの前記要求機能名を包含する前記インフラ構成情報を選択し、選択した前記インフラ構成情報に含まれる前記インフラ実装名を出力する解決処理と、
前記インフラ実装名を有するプログラムを実行装置に出力する配備処理、を実行させる。
本発明の一実施形態の配備方法は、複数のアプリケーションプログラム(AP)のおのおの対応に、AP名および要求機能名を含むAP構成情報をAP構成記憶手段に格納し、
複数のプラットフォームプログラム(インフラ)のおのおの対応に、インフラ実装名および提供機能名を含むインフラ構成情報をインフラ構成記憶手段に格納し、
AP名を取得して、取得した前記AP名を含む前記AP構成情報内の前記要求機能名のリストを作成し、前記提供機能名が当該リストの前記要求機能名を包含する前記インフラ構成情報を選択し、選択した前記インフラ構成情報に含まれる前記インフラ実装名を出力し、
前記インフラ実装名を有するプログラムを実行装置に出力する。The deployment apparatus according to an embodiment of the present invention includes an AP configuration storage unit that stores AP configuration information including an AP name and a requested function name for each of a plurality of application programs (APs);
Infrastructure configuration storage means for storing infrastructure configuration information including an infrastructure implementation name and a provided function name for each of a plurality of platform programs (infrastructure);
An AP name is acquired, a list of the requested function names in the AP configuration information including the acquired AP name is created, and the infrastructure configuration information in which the provided function name includes the requested function name in the list Means for selecting and outputting the infrastructure implementation name included in the selected infrastructure configuration information;
Deployment means for outputting a program having the infrastructure implementation name to an execution device.
A program according to an embodiment of the present invention is stored in a computer.
AP configuration storage processing for storing AP configuration information including an AP name and a requested function name in the AP configuration storage means for each of a plurality of application programs (AP);
In response to each of a plurality of platform programs (infrastructure), an infrastructure configuration storage process for storing infrastructure configuration information including an infrastructure implementation name and a provided function name in an infrastructure configuration storage means;
An AP name is acquired, a list of the requested function names in the AP configuration information including the acquired AP name is created, and the infrastructure configuration information in which the provided function name includes the requested function name in the list Selecting and outputting the infrastructure implementation name included in the selected infrastructure configuration information; and
A deployment process for outputting a program having the infrastructure implementation name to an execution device is executed.
A deployment method according to an embodiment of the present invention stores AP configuration information including an AP name and a requested function name in an AP configuration storage unit for each of a plurality of application programs (AP).
For each of the multiple platform programs (infrastructure), the infrastructure configuration information including the infrastructure implementation name and the provided function name is stored in the infrastructure configuration storage means.
An AP name is acquired, a list of the requested function names in the AP configuration information including the acquired AP name is created, and the infrastructure configuration information in which the provided function name includes the requested function name in the list Select and output the infrastructure implementation name included in the selected infrastructure configuration information,
A program having the infrastructure implementation name is output to the execution device.
本願発明に係る装置等は、アプロケーションプログラムが必要とするプラットフォームプログラムを、機能に基づいて選択して、実行環境に配備することが出来る。 The apparatus according to the present invention can select a platform program required by the allocation program based on the function and deploy it to the execution environment.
==第1の実施の形態==
図1は、本実施の形態の配備システム20の全体構成を示す。配備システム20は、ネットワーク22で接続された、配備装置21、実行装置23、アプリケーションプログラム(以降、AP)管理装置24、ミドルウェア等のプラットフォームプログラム(以降、インフラ)管理装置26を包含する。ネットワーク22は、WAN(Wide Area Network)、LAN(Local Area Network)、N対Nの直結ケーブル等である。
配備装置21は、解決部13、合成部14、配備部15、入出力装置16、AP構成記憶部10、インフラ構成記憶部11、システム構成記憶部12を備える。解決部13、合成部14、配備部15は、論理回路等で構成されたハードウェア装置である。解決部13、合成部14、配備部15は、コンピュータである配備装置21のプロセッサが、図示しないプログラムを実行することで実現されても良い。入出力装置16は、キーボードとディスプレイ装置等である。AP構成記憶部10、インフラ構成記憶部11、システム構成記憶部12は、半導体メモリ、ディスク装置等の記憶装置である。
配備装置21は、実行装置23に、AP25やその実行基盤であるインフラ27を配備する。ここで、配備とは、実行装置23にプログラムを送信して、実行装置23内のインストール用プログラムにインストールの要求をすることである。
AP管理装置24は、本システムで配備の対象となるAP25を記憶している。AP25の開発者やリリース担当者などの利用者は、予め、AP25をAP管理装置24に登録しておく。インフラ管理装置26は、本システムで配備の対象となるインフラ27を記憶している。インフラ27の開発者やリリース担当者などの利用者は、予め、インフラ27をインフラ管理装置26に登録しておく。
なお、AP25やインフラ27は、配備装置21が備えたディスク装置などに格納されていても良い。この場合、AP管理装置24やインフラ管理装置26は不要となる。
実行装置23は、AP25やインフラ27を受信およびインストールを行い、その後AP25やインフラ27を実行する。実行装置23は、例えば、通信機能を持つ基本OSやインストールプログラム等を備えたコンピュータである。
AP構成記憶部10は、1以上のAP構成情報40を格納する。AP構成情報40は、AP25対応に存在する。例えば、AP25の開発者やリリース担当者などの利用者が、配備装置21が備える入出力インターフェース等を介して、AP構成情報40をAP構成記憶部10に格納する。配備装置21が、AP25の開発リポジトリ等から、一部又は全部のAP構成情報40を取得してもよい。
図2は、AP構成情報40の構成を示す。AP構成情報40は、AP名41、パッケージ情報42、1以上の要求機能名43、コンテンツ情報44を含む。
AP名41は、当該AP構成情報40に対応するAP25を識別するための識別子である。パッケージ情報42は、対応するAP25の配備形態を表す情報である。要求機能名43は、対応するAP25が要求する機能を表わす識別子である。
コンテンツ情報44は、対応するAP25の構成物の内容の要約情報である。コンテンツ情報44は、コンテンツキーワードを含む。コンテンツキーワードは、AP25に含まれるファイル名、ディレクトリ名、ディレクトリの構成(ツリー構造)記述、ファイルに含まれるテキストキーワード情報、テキスト構造情報(記述フォーマット)等である。
インフラ構成記憶部11は、1以上のインフラ構成情報50を格納する。インフラ構成情報50はインフラ27対応に存在する。例えば、インフラ27の開発者やリリース担当者などの利用者が、配備装置21が備える入出力インターフェース等を介して、インフラ構成情報50をインフラ構成記憶部11に格納する。配備装置21が、インフラ27の開発リポジトリ等から、一部又は全部のインフラ構成情報50を取得してもよい。
図3は、インフラ構成情報50の構成を示す。インフラ構成情報50は、1つの機能名51、0以上の包含機能名52、1以上の実装機能名53、インフラ実装名54を含む。機能名51、包含機能名52、および、実装機能名53は、まとめて、機能名群55としても参照される。
機能名51は、対応するインフラ27が実現、即ち提供する機能の識別子である。包含機能名52は、機能名51で特定される機能が内包する機能の識別子である。例えば、機能名51が暗号電子メール通信機能の識別子である場合、包含機能名52は、電子メール通信機能の識別子と暗号/複合機能の識別子である。
インフラ実装名54は、対応するインフラ27を識別するための識別子である。
実装機能名53は、対応するインフラ27が実現する、機能名51で特定される機能以外の機能の識別子である。実装機能名53は、利用者が直接入力するのではなく、インフラ実装名54のインフラ27のパッケージ情報から配備装置21が取得しても良い。さらには、インフラ構成情報50は実装機能名53を包含せず、解決部13が、図7のS22等で、インフラ27のパッケージ情報から実装機能名53を取得しても良い。
なお、AP構成情報40の要求機能名43およびインフラ構成情報50の機能名群55のおのおのは、同じ機能に対して同じ識別子(機能識別子)を包含する。AP構成情報40の要求機能名43およびインフラ構成情報50の機能名群55のおのおので指定される機能の単位、内容、並びに、機能識別子の形式、値は、予め、本システムの管理者等が決定し、AP構成情報40やインフラ構成情報50の登録者等に通知しておく。
システム構成記憶部12は、1以上のシステム構成情報30を格納する。システム構成情報30は、構築対象となるサービスシステムの異なる構成対応に存在する。本システムの運用管理者等は、配備装置21が備える入出力インターフェース等を介して、システム構成情報30をシステム構成記憶部12に格納する。
図4は、システム構成情報30の構成を示す。システム構成情報30は、システム名31、1以上のAP名32を含む。システム構成情報30は、1以上のカスタマイズ情報330を含んでいても良い。カスタマイズ情報330は、インフラ構成情報50と同じ構造を有する。即ち、カスタマイズ情報330は、1つの機能名331、0以上の包含機能名332、1以上の実装機能名333、インフラ実装名334を含む。
システム名31は、対応するサービスシステムの構成の識別子である。AP名32は、対応するサービスシステムに配備すべきAP25の識別子である。
システム構成情報30は、実行装置23が備えるべきハードウェアの条件、例えば、ディスク容量、メモリ容量、プロセッサ数等を備えていても良い。そして、配備装置21が、この情報に基づいて、AP25やインフラ27を配備する実行装置23を複数の候補から選択するようにしても良い。
本システムは、システム構築担当者等の利用者が、入出力装置16から、構築対象となるシステムのシステム名を配備装置21の合成部14に入力すると、動作を開始する。
図5は、合成部14の動作フローチャートである。まず、合成部14は、入出力装置16から、利用者が入力したシステム名を取得し(S1)、システム構成記憶部12を検索して、入力したシステム名に一致するシステム名31を包含するシステム構成情報30を取得する(S2)。さらに、合成部14は、当該システム構成情報30に含まれる全てのAP名32を取得して解決部13に送信し、解決部13の動作(図6、7参照)の完了を待ち合わせる(S3)。
その後、合成部14は、解決部13から、AP構成情報40および選択されたインフラ構成情報50を受信して、機能名51を取得する(S4)。合成部14は、S2で取得したシステム構成情報30に、機能名331が当該機能名51と一致するカスタマイズ情報330が存在するか判定する(S5)。存在する場合(S5でY)、合成部14は、当該カスタマイズ情報330で解決部13から受信したインフラ構成情報50を上書きして(S6)、AP構成情報40および上書きされたインフラ構成情報50を配備部15に送信して(S7)、処理を終了する。存在しない場合(S5でN)、合成部14は、解決部13から受信したインフラ構成情報50を、そのまま配備部15に送信する(S7)。
例えば、カスタマイズ情報330の機能名331およびインフラ構成情報50の機能名51が共に機能F1を示していた場合、合成部14は、機能F1の情報としてカスタマイズ情報330に定義されたものを採用し、インフラ構成情報50の情報を無視する。
このように、システム構成情報30にカスタマイズ情報330を設定しておくことにより、システム構築担当者等の利用者は、適切なインフラ27を配備することが可能になる。
例えば、システム構築担当者等の利用者は、カスタマイズ情報330の機能名331にリレーショナルデータベース機能の機能識別子を、インフラ実装名334にOSS(OpenSource Software)のデータベース製品の機能識別子を設定できる。こうしておけば、開発者等が、機能名51をリレーショナルデータベース機能、インフラ実装名54を有料データベース製品とするインフラ構成情報50だけを登録していても、システム構築担当者等は実行装置23にOSS製品を配備することができる。
図6および7は、解決部13の動作フローチャートである。合成部14からシステム構成情報30を受信して(S11)、解決部13は、そこから全てのAP名32を取り出す(S12)。その後、解決部13は、AP名32のおのおのについて、S13乃至S16の処理を繰り返す。
解決部13は、まず、AP構成記憶部10から、AP名41が当該AP名32に一致するAP構成情報40を取得する(S13)。解析部13は、パッケージ情報42を取り出して、当該情報に基づいて、1以上の機能識別子Aを作成する(S14)。
例えば、パッケージ情報42が、対応AP25のパッケージ形式がwarであるとの情報を含む場合、解決部13は機能識別子Aとしてpackage.warを生成する。package.warは、パッケージ形式がwarであるプログラムを実行可能とする機能に付けられた機能識別子である。即ち、この機能識別子Aは、当該AP25はパッケージ形式がwarであるプログラムを実行可能なインフラ27が必要であることを示す。
なお、機能識別子Aは、パッケージ形式と1対1の関係にある必要はない。解決部13は、1つのパッケージ形式から2つの機能識別子Aを生成しても良い。さらには、解決部13は、例えば、パッケージ情報42が示すパッケージ形式がwarである場合とearである場合の両方とも、package.jeeという同一機能識別子Aを生成してもよい。この場合、package.jeeは、パッケージ形式がwarおよびearであるプログラムを実行可能とする機能に付けられた機能識別子である。
パッケージ形式と1以上の機能識別子Aの対応は、予め配備装置21に、対応表、変換ルール等として与えられている。
次に、解決部13は、コンテンツ情報44を取り出して、当該情報に基づいて、1以上の機能識別子Bを作成する(S15)。具体的には、解決部13は、コンテンツ情報44に含まれるコンテンツキーワードを取り出して、それに基づいて機能識別子Bを作成する。
例えば、データベースアクセス処理を代行するフレームワークを導入した場合、該当フレームワークが使用する設定ファイルのファイル名が、コンテンツ情報44に含まれていることを検出した解決部13は、機能識別子Bとしてdb.framework1を生成する。db.framework1は、当該フレームワークの共通機能に付けられた機能識別子である。
機能識別子Bは、コンテンツキーワードと1対1の関係にある必要はない。解決部13は、異なる複数のコンテンツキーワードから、同一機能識別子Bを生成しても良い。逆に、同部は、コンテンツ情報44に、異なるコンテンツキーワードの全てが含まれている場合に、ある1つの機能識別子Bを生成しても良い。
解決部13は、このように、コンテンツ情報44からフレームワーク等のインフラ27に係る特徴を発見して、そこから機能識別子Bを生成する。1以上のコンテンツキーワードと機能識別子の対応は、予め配備装置21に、対応表、変換ルール等として与えられている。
解決部13は、AP構成情報40に含まれている要求機能名43、生成した機能識別子AおよびBを結合して、当該AP名32に対応する要求機能1を生成する(S16)。ここで、結合とは、要求機能名43、機能識別子AおよびBの機能識別子の和集合を生成することを指す。
例えば、機能識別子Aが{A1}、機能識別子Bが{B1,B2,P1}、要求機能名43が{C1,P1}である場合、当該AP名32に対応する要求機能1は、{A1,B1,B2,C1,P1}となる。
解決部13は、要求機能1を、システム構成情報30から取り出したAP名32の数だけ繰り返し生成する。
続いて、解決部13は、生成した全ての要求機能1を結合し、要求機能2を生成する(S21)。ここでの結合処理は、S16と同様の処理内容である。
解決部13は、インフラ構成記憶部11を検索して、機能名群55が、要求機能2に含まれる機能識別子を全て包含するインフラ構成情報50を選択して、取得する(S22)。
例えば、要求機能2に含まれる機能識別子が{F1,F2,F3}であったとする。あるインフラ構成情報50の機能名51がF1で、インフラ実装名54が示すインフラ27の実装機能53が{F1,F2}で、包含機能名52が{F3}であった場合、解決部13は、該当インフラ構成情報50を選択する。しかし、要求機能2に含まれる機能識別子が{F1,F2,F3,F4}であった場合、同部は、当該インフラ構成情報50を選択しない。
次に、解決部13は、取得した全てのAP構成情報40と、選択したインフラ構成情報50を、合成部14に送信する(S23)。
図8は、配備部15の動作フローチャートである。まず、配備部15は、AP構成情報40およびインフラ構成情報50を合成部14から受信する(S31)。次に、配備部15は、受信したインフラ構成情報50が包含するインフラ実装名54を持つインフラ27を、インフラ管理装置26に要求して、受信する(S32)。
配備部15は、受信したAP構成情報40のおのおのが包含するAP名41を持つAP25を、AP管理装置24に要求して、受信し(S33)、受信したインフラ27およびAP25を実行装置23に送信する(S34)。
実行装置23は、配備部15から送信されたプログラムを受信して、インストールを行う。この為、実行装置23は、予めインストール用のプログラムを備えている。または、実行装置23は、予めプログラム受信用の基本OSだけを備え、各プログラム個別のインストール用プログラムは、AP25、インフラ27に包含されて配備装置21から送信されても良い。
なお、配備装置21は、システム構成記憶部12、合成部14を備えなくても良い。この場合、システム構築担当者等の利用者が入出力装置16から直接AP名を解決部13に入力し、解決部13が選択したインフラ実装名54を配備部15に出力する。
本実施形態の配備装置21は、AP25が必要とするインフラ27を選択して、実行装置23に配備することが出来る。その理由は、配備装置21が、AP構成情報40の要求機能名43とインフラ構成情報50の機能名群55との照合を行って、インフラ27を選択するからである。この為、AP25の開発者もシステム構築の担当者も、サービスシステムにどのインフラ27を利用するのかという情報を入力する必要がなく、システム構築が容易になる。
さらに、システム構築の担当者等は、システム独自の要件に基づいてインフラ27を配備することが可能であり、柔軟性の高いシステム構築が出来る。その理由は、配備装置21が、選択したインフラ構成情報50を、所定条件の下、カスタマイズ情報330で置換するからである。
==第2の実施の形態==
本発明の第2の実施形態の配備システム20は、1以上のAP25が要求する要求機能名43を全て満たすインフラ27が存在しなかった場合、複数のインフラ27を組み合わせることによって所望のシステム構成を実現する。
本実施形態における解決部13の動作フローチャートは、図7のコネクタ2と3の間に図9のフローチャートを挿入したものとなる。本実施の形態の配備システム20は、他の点において、第1の実施の形態と同じである。
本実施の形態に於いて解決部13は、機能名群55が、要求機能2に含まれる機能識別子を全て包含するインフラ構成情報50を選択しようとして(図7のS22)、これが出来なかったとき(図9のS22−1でN)、インフラ構成記憶部11を検索して、以下の条件を満たす複数のインフラ構成情報50を選択して、取得する(S24)。
a)複数のインフラ構成情報50の機能名群55の機能識別子を併せたもの(和集合)が、要求機能2に含まれる機能識別子を全て包含する。
b)複数のインフラ構成情報50の機能名群55のおのおのが相互結合機能に対する機能識別子を包含している。具体例の1つは、当該複数のインフラ構成情報50が、ブラウザに対する機能識別子を包含する1つのインフラ構成情報50と、プラグイン機能提供に対する機能識別子を包含している他のインフラ構成情報50から構成される場合である。他の具体例は、当該複数のインフラ構成情報50が、Java(登録商標)Enterprise Edition対応サーバソフトウェアに対する機能識別子を包含する1つのインフラ構成情報50と、当該サーバソフトウェアに組み込まれ、種々のAP25に共通的に提供される機能に対する機能識別子を包含している他のインフラ構成情報50から構成される場合がある。
解決部13が、複数のインフラ構成情報50を取得する(S22−1、S24)手順は、例えば、以下の通りである。
要求機能2が機能識別子F1及びF3を含み、かつ、第1のインフラ構成情報50の機能名51が機能識別子F1、インフラ実装名54がI1、I1で特定されるインフラ27の実装機能(実装機能名53)の機能識別子がF1、F2及びP3+であったとする。この時、要求機能2が含む機能識別子F3が第1のインフラ構成情報50の機能名群55に含まれていないため、解決部13は、第1のインフラ構成情報50を単独では選択しない(図9のS22−1でN)。
次に、解決部13は、機能識別子F1、P3+と機能識別子F3、P3−を機能名群55に包含するインフラ構成情報50をそれぞれ個別に取得する(S24)。その結果、前述の第1のインフラ構成情報50と、例えば、機能名51がF3、実装機能名53がF3、P3−である第2のインフラ構成情報50が選択される。ここで、機能識別子P3+とP3−は組み合わせ可能な相互結合機能を示す。解決部13は、第2のインフラ構成情報50を検索できなかった場合、処理を中断する。
複数のインフラ構成情報50を選択した後、解決部13は、選択した全てのインフラ構成情報50のインフラ実装名54、機能名群55を包含する新たなインフラ構成情報50を生成する(S25)。最後に、解決部13は、取得した全てのAP構成情報40と、新たに生成したインフラ構成情報50を、合成部14に送信して(S26)、動作を終了する。
機能名群55が、要求機能2に含まれる機能識別子を全て包含するインフラ構成情報50を選択(図7のS22)出来たとき(図9のS22−1でY)、解決部13は、図7のS23を実行する。
本実施の形態の配備装置21は、複雑なAP25を用いるサービスシステムも、構築できる。その理由は、解決部13が、複数インフラ27の組み合わせによりAP25が動作可能なサービスシステムを構成するためである。
==第3の実施の形態==
本発明の第3の実施形態の配備システム20は、インフラ27に適用する設定項目値を生成する。設定項目値は、インフラ27の環境設定用の値であり、配備装置21がインフラ27と共に実行装置23に送信する。実行装置23のインストーラ、またはインフラ27等が、当該値に基づいて、インフラ27の動作環境を設定する。
本実施形態において、インフラ構成情報50(図3)は、図示されない設定項目のデフォルト値を包含しても良い。また、システム構成情報30のカスタマイズ情報330(図4)は、図示されない設定項目値を包含しても良い。本実施形態における合成部14の動作フローチャートは、図5のコネクタ5以降を、図10のフローチャートで置換したものとなる。
本実施の形態の配備システム20は、他の点において、第1の実施の形態と同じである。
本実施の形態に於いて、合成部14は図5のS1乃至S6の後、カスタマイズ情報330が設定項目値を含むか否かを判定する(S6−1)。含む場合(S6−1でY)、合成部14は、解決部13から受信したインフラ構成情報50に、設定項目値を設定(追記またはデフォルト値の上書き)を行う(S6−2)。
その後、合成部14は、AP構成情報40及びインフラ構成情報50を配備部15に送信する(S7:図5と同じ)。
本実施の形態の配備装置21は、柔軟なシステムが構築可能となる。その理由は、合成部14が、インフラ27の動作を決定する設定項目データの設定及びカスタマイズを行うからである。
==第4の実施の形態==
図11は、第4の実施の形態の配備装置21の構成を示す。配備装置21は、AP構成記憶部10、インフラ構成記憶部11、解決部13および配備部15を備える。
AP構成記憶部10は、複数のAP25のおのおの対応に、AP名41および要求機能名43を含むAP構成情報40を格納する。インフラ構成記憶部11は、複数のインフラ27のおのおの対応に、インフラ実装名54および機能名群56を含むインフラ構成情報50を格納する。
解決部13は、AP名を取得して、取得したAP名を含むAP構成情報40内の要求機能名43のリストを作成し、機能名群55が当該リストの要求機能名43を包含するインフラ構成情報50を選択し、選択したインフラ構成情報50に含まれるインフラ実装名54を出力する。配備部15は、インフラ実装名54を有するインフラ27を実行装置23に出力する。
本実施形態の配備装置21は、AP26が必要とするインフラ27を選択して、実行装置23に配備することが出来る。その理由は、配備装置21が、AP構成情報40の要求機能名43とインフラ構成情報50の機能名群55との照合を行って、インフラ27を選択するからである。
以上、実施形態(及び実施例)を参照して本願発明を説明したが、本願発明は上記実施形態(及び実施例)に限定されものではない。本願発明の構成や詳細には、本願発明のスコープ内で当業者が理解し得る様々な変更をすることができる
2011年2月14日に出願された日本出願特願2011−028137を基礎とする優先権を主張し、その開示の全てをここに取り込む。== First Embodiment ==
FIG. 1 shows an overall configuration of a deployment system 20 according to the present embodiment. The deployment system 20 includes a
The
The
The AP management device 24 stores an
The
The execution device 23 receives and installs the
The AP
FIG. 2 shows the configuration of the AP configuration information 40. The AP configuration information 40 includes an
The
The
The infrastructure
FIG. 3 shows the configuration of the infrastructure configuration information 50. The infrastructure configuration information 50 includes one
The
The
The
Each of the requested
The system
FIG. 4 shows the configuration of the system configuration information 30. The system configuration information 30 includes a
The
The system configuration information 30 may include hardware conditions that the execution device 23 should have, such as disk capacity, memory capacity, and the number of processors. Then, the
The system starts its operation when a user such as a system construction person inputs the system name of the system to be constructed from the input /
FIG. 5 is an operation flowchart of the
Thereafter, the synthesizing
For example, when the
As described above, by setting the
For example, a user such as a person in charge of system construction can set the function identifier of the relational database function in the
6 and 7 are operation flowcharts of the
First, the
For example, when the
Note that the function identifier A does not have to have a one-to-one relationship with the package format. The
The correspondence between the package format and one or more function identifiers A is given to the
Next, the
For example, when a framework that performs database access processing is introduced, the
The function identifier B need not have a one-to-one relationship with the content keyword. The
In this way, the
The
For example, when the function identifier A is {A1}, the function identifier B is {B1, B2, P1}, and the requested
The
Subsequently, the
The
For example, it is assumed that the function identifier included in the
Next, the
FIG. 8 is an operation flowchart of the
The
The execution device 23 receives the program transmitted from the
The
The
Furthermore, the person in charge of system construction can deploy the infrastructure 27 based on the requirements unique to the system and can construct a highly flexible system. The reason is that the
== Second Embodiment ==
The deployment system 20 according to the second exemplary embodiment of the present invention has a desired system configuration by combining a plurality of infrastructures 27 when there is no infrastructure 27 that satisfies all of the requested
The operation flowchart of the
In the present embodiment, the
a) A combination of function identifiers of the function name group 55 of the plurality of infrastructure configuration information 50 (union) includes all the function identifiers included in the
b) Each of the function name groups 55 of the plurality of infrastructure configuration information 50 includes a function identifier for the mutual coupling function. One specific example is that the plurality of infrastructure configuration information 50 includes one infrastructure configuration information 50 including a function identifier for a browser and other infrastructure configuration information 50 including a function identifier for providing a plug-in function. This is the case. In another specific example, the plurality of infrastructure configuration information 50 includes one infrastructure configuration information 50 including a function identifier for Java (registered trademark) Enterprise Edition compatible server software, and the server software. In some cases, the infrastructure configuration information 50 includes a function identifier for a commonly provided function.
The procedure by which the
The requested
Next, the
After selecting the plurality of infrastructure configuration information 50, the
When the function name group 55 has selected the infrastructure configuration information 50 that includes all the function identifiers included in the requested function 2 (S22 in FIG. 7) (Y in S22-1 in FIG. 9), the
The
== Third embodiment ==
The deployment system 20 according to the third embodiment of the present invention generates setting item values to be applied to the infrastructure 27. The setting item value is a value for setting the environment of the infrastructure 27, and is transmitted from the
In the present embodiment, the infrastructure configuration information 50 (FIG. 3) may include default values of setting items not shown. Further, the customization information 330 (FIG. 4) of the system configuration information 30 may include setting item values not shown. The operation flowchart of the combining
The deployment system 20 of the present embodiment is the same as the first embodiment in other points.
In this embodiment, the
Thereafter, the combining
The
== Fourth embodiment ==
FIG. 11 shows the configuration of the
The AP
The
The
While the present invention has been described with reference to the embodiments (and examples), the present invention is not limited to the above embodiments (and examples). 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. Claim priority and incorporate all of its disclosure here.
10 AP構成記憶部
11 インフラ構成記憶部
12 システム構成記憶部
13 解決部
14 合成部
15 配備部
16 入出力装置
20 配備システム
21 配備装置
22 ネットワーク
23 実行装置
24 AP管理装置
25 AP
26 インフラ管理装置
27 インフラ
30 システム構成情報
31 システム名
32 AP名
330 カスタマイズ情報
331 機能名
332 包含機能名
333 実装機能名
334 インフラ実装名
40 AP構成情報
41 AP名
42 パッケージ情報
43 要求機能名
44 コンテンツ情報
50 インフラ構成情報
51 機能名
52 包含機能名
53 実装機能名
54 インフラ実装名
55 機能名群DESCRIPTION OF
26 Infrastructure Management Device 27 Infrastructure 30
Claims (10)
複数のプラットフォームプログラム(インフラ)のおのおの対応に、インフラ実装名および提供機能名を含むインフラ構成情報を格納するインフラ構成記憶手段と、
AP名を取得して、取得した前記AP名を含む前記AP構成情報内の前記要求機能名のリストを作成し、前記提供機能名が当該リストの前記要求機能名を包含する前記インフラ構成情報を選択し、選択した前記インフラ構成情報に含まれる前記インフラ実装名を出力する解決手段と、
前記インフラ実装名を有するプログラムを実行装置に出力する配備手段、を備える配備装置。AP configuration storage means for storing AP configuration information including an AP name and a requested function name for each of a plurality of application programs (AP);
Infrastructure configuration storage means for storing infrastructure configuration information including an infrastructure implementation name and a provided function name for each of a plurality of platform programs (infrastructure);
An AP name is acquired, a list of the requested function names in the AP configuration information including the acquired AP name is created, and the infrastructure configuration information in which the provided function name includes the requested function name in the list Means for selecting and outputting the infrastructure implementation name included in the selected infrastructure configuration information;
A deployment device comprising deployment means for outputting a program having the infrastructure implementation name to an execution device.
前記解決手段は、前記機能リストに、前記パッケージ形式記述に対応する要求機能名を追加する請求項1または2の配備装置。The AP configuration information includes a package format description of the AP,
The deployment device according to claim 1 or 2, wherein the solving means adds a requested function name corresponding to the package format description to the function list.
前記解決手段は、前記機能リストに、前記キーワードに対応する要求機能名を追加する請求項1乃至3のいずれかの配備装置。The AP configuration information includes AP summary information including keywords,
The deployment device according to claim 1, wherein the solving unit adds a requested function name corresponding to the keyword to the function list.
前記配備手段は、当該複数のAP名のおのおのを有するプログラムと、前記合成手段が出力した前記インフラ実装名を有するプログラムを実行装置に出力する、請求項1乃至4のいずれかの配備装置。The solving means inputs system configuration information including a plurality of AP names, acquires the plurality of AP names from the system configuration information, and stores the plurality of AP names in the AP configuration information including the acquired plurality of AP names. Create a list containing the union of requested function names,
The deployment device according to claim 1, wherein the deployment unit outputs a program having each of the plurality of AP names and a program having the infrastructure implementation name output by the synthesis unit to an execution device.
選択した前記インフラ構成情報が前記第1の提供機能名を包含するとき、前記解決手段が出力した前記インフラ実装名に代えて、前記カスタマイズ情報のインフラ実装名を前記配備手段に出力する、請求項1乃至5のいずれかの配備装置。The system configuration information includes customization information including a provided function name and an infrastructure implementation name,
The infrastructure implementation name of the customization information is output to the deployment unit instead of the infrastructure implementation name output by the resolution unit when the selected infrastructure configuration information includes the first provided function name. The deployment device according to any one of 1 to 5.
複数のアプリケーションプログラム(AP)のおのおの対応に、AP名および要求機能名を含むAP構成情報をAP構成記憶手段に格納するAP構成記憶処理と、
複数のプラットフォームプログラム(インフラ)のおのおの対応に、インフラ実装名および提供機能名を含むインフラ構成情報をインフラ構成記憶手段に格納するインフラ構成記憶処理と、
AP名を取得して、取得した前記AP名を含む前記AP構成情報内の前記要求機能名のリストを作成し、前記提供機能名が当該リストの前記要求機能名を包含する前記インフラ構成情報を選択し、選択した前記インフラ構成情報に含まれる前記インフラ実装名を出力する解決処理と、
前記インフラ実装名を有するプログラムを実行装置に出力する配備処理、を実行させるプログラム。On the computer,
AP configuration storage processing for storing AP configuration information including an AP name and a requested function name in the AP configuration storage means for each of a plurality of application programs (AP);
In response to each of a plurality of platform programs (infrastructure), an infrastructure configuration storage process for storing infrastructure configuration information including an infrastructure implementation name and a provided function name in an infrastructure configuration storage means;
An AP name is acquired, a list of the requested function names in the AP configuration information including the acquired AP name is created, and the infrastructure configuration information in which the provided function name includes the requested function name in the list Selecting and outputting the infrastructure implementation name included in the selected infrastructure configuration information; and
A program for executing a deployment process for outputting a program having the infrastructure implementation name to an execution device.
複数のプラットフォームプログラム(インフラ)のおのおの対応に、インフラ実装名および提供機能名を含むインフラ構成情報をインフラ構成記憶手段に格納し、
AP名を取得して、取得した前記AP名を含む前記AP構成情報内の前記要求機能名のリストを作成し、前記提供機能名が当該リストの前記要求機能名を包含する前記インフラ構成情報を選択し、選択した前記インフラ構成情報に含まれる前記インフラ実装名を出力し、
前記インフラ実装名を有するプログラムを実行装置に出力する、配備方法。In response to each of the plurality of application programs (AP), AP configuration information including an AP name and a requested function name is stored in the AP configuration storage means,
For each of the multiple platform programs (infrastructure), the infrastructure configuration information including the infrastructure implementation name and the provided function name is stored in the infrastructure configuration storage means.
An AP name is acquired, a list of the requested function names in the AP configuration information including the acquired AP name is created, and the infrastructure configuration information in which the provided function name includes the requested function name in the list Select and output the infrastructure implementation name included in the selected infrastructure configuration information,
A deployment method for outputting a program having the infrastructure implementation name to an execution device.
Applications Claiming Priority (3)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
JP2011028137 | 2011-02-14 | ||
JP2011028137 | 2011-02-14 | ||
PCT/JP2012/052793 WO2012111491A1 (en) | 2011-02-14 | 2012-02-01 | Deployment device, deployment method and program |
Publications (1)
Publication Number | Publication Date |
---|---|
JPWO2012111491A1 true JPWO2012111491A1 (en) | 2014-07-03 |
Family
ID=46672418
Family Applications (1)
Application Number | Title | Priority Date | Filing Date |
---|---|---|---|
JP2012557902A Pending JPWO2012111491A1 (en) | 2011-02-14 | 2012-02-01 | Deployment device, deployment method, and program |
Country Status (2)
Country | Link |
---|---|
JP (1) | JPWO2012111491A1 (en) |
WO (1) | WO2012111491A1 (en) |
Family Cites Families (3)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
JP2005044011A (en) * | 2003-07-24 | 2005-02-17 | Hitachi Ltd | Software package management method |
JP2010146236A (en) * | 2008-12-18 | 2010-07-01 | Yokogawa Electric Corp | Distributed system analysis apparatus and program |
JP5627187B2 (en) * | 2009-03-13 | 2014-11-19 | 新日鉄住金ソリューションズ株式会社 | Information processing apparatus, information processing method, and program |
-
2012
- 2012-02-01 WO PCT/JP2012/052793 patent/WO2012111491A1/en active Application Filing
- 2012-02-01 JP JP2012557902A patent/JPWO2012111491A1/en active Pending
Also Published As
Publication number | Publication date |
---|---|
WO2012111491A1 (en) | 2012-08-23 |
Similar Documents
Publication | Publication Date | Title |
---|---|---|
JP5288334B2 (en) | Virtual appliance deployment system | |
JP4923058B2 (en) | Automated device driver management | |
JP5026430B2 (en) | Discover, qualify, and launch software add-in components | |
US20080163171A1 (en) | Virtual resource templates | |
CN110752947A (en) | K8s cluster deployment method and device, and deployment platform | |
US20200167444A1 (en) | Systems and methods for software license management | |
US20110258620A1 (en) | Method and Apparatus for Making a BPM Application Available to Multiple Tenants | |
US8027817B2 (en) | Simulation management within a grid infrastructure | |
CN104765621A (en) | Method and system for deploying program on cluster node | |
JP6202091B2 (en) | Information processing apparatus and deployment method | |
CN114073058A (en) | Graphical representation and description of configuration parameters for media processing functions in network-based media processing (NBMP) | |
US20100131942A1 (en) | Suite-based integration and deployment of business products | |
EP2256633A2 (en) | Service provider management device, service provider management program, and service provider management method | |
CN116783581A (en) | Deploying software release on a data center configured in a cloud platform | |
CN108139947B (en) | System and method for isolating web user interface applications from runtime engines | |
CN113448650A (en) | Live broadcast function plug-in loading method, device, equipment and storage medium | |
CN116155978A (en) | Multi-registry adaptation method, device, electronic equipment and storage medium | |
Iyer et al. | Extending android application programming framework for seamless cloud integration | |
US11755297B2 (en) | Compiling monoglot function compositions into a single entity | |
CN111382953A (en) | Dynamic process generation method and device | |
JP5574017B2 (en) | Information processing apparatus, compatibility evaluation method, and program | |
WO2012111491A1 (en) | Deployment device, deployment method and program | |
CN111857736B (en) | Cloud computing product generation method, device, equipment and storage medium | |
US20180341475A1 (en) | Just In Time Deployment with Package Managers | |
CN113032004A (en) | Method, apparatus and program product for managing development jobs in a development environment |