×この技術を簡単クリック査定この機能をご利用いただくには、会員登録(無料)が必要です。出願した特許の牽制数、引用された数などを知る事ができます。気になる技術や特許をブックマークしておけば、いつでも後から読むことができます。後で印刷するために、公報をPDFでダウンロードできます。会員登録してastamuseを使えば、もっと簡単に便利にお使いいただけます。会員登録(無料)「astamuse」は世界中の挑戦したい社会課題に挑戦し、未来を創る人のプラットフォームです。関連する未来課題-重要な関連分野マルチプログラミング※この項目の情報は公開日時点(2019年7月18日)のものです。おける資源データを取得する取得部と、資源データに基づいて、配備対象コンテナの資源条件に適合する情報処理装置を、当該配備対象コンテナの配備先に決定する決定部とを有する。近年、プログラムをコンテナ単位でサーバ装置に展開して動作させるコンテナ仮想化技術が普及している。コンテナ仮想化技術は、例えば、複数のプログラムを複数のサーバ装置に分散配備するシステムに適用される。このようなシステムのセットアップを容易にするために、各コンテナの配備先となる所定のサーバ装置への展開を自動化するツールが用いられることも多い。コンテナ仮想化技術に自動展開ツールを適用する場合に、配備先となるサーバ装置を適切に選択しなければ、コンテナに含まれるプログラムが正しく動作しないことがある。適正なコンテナ配備先を自動的に決定できるようにする。おける資源データを取得する取得部と、資源データに基づいて、配備対象コンテナの資源条件に適合する情報処理装置を、当該配備対象コンテナの配備先に決定する決定部とを有する。おける資源データを取得する取得部と、前記資源データに基づいて、配備対象コンテナの資源条件に適合する情報処理装置を、当該配備対象コンテナの配備先に決定する決定部とを有する情報処理システム。請求項2前記資源条件は、前記配備対象コンテナにより使用されるデバイスに関する請求項1記載の情報処理システム。請求項3前記資源条件は、前記配備対象コンテナに要する、情報処理装置の本体資源又は本体性能に関する請求項1又は2記載の情報処理システム。おける資源データを取得する取得部と、前記資源データに基づいて、配備対象コンテナの資源条件に適合する情報処理装置を、当該配備対象コンテナの配備先に決定する決定部とを有するコンテナ管理装置。0001本発明は、仮想化技術におけるコンテナを配備する技術に関する。背景技術0002近年、プログラムをコンテナ単位でサーバ装置に展開して動作させるコンテナ仮想化技術が普及している。コンテナ仮想化技術は、例えば、複数のプログラムを複数のサーバ装置に分散配備するシステムに適用される。0003また、このようなシステムのセットアップを容易にするために、各コンテナの配備先となる所定のサーバ装置への展開を自動化するツールが用いられることも多い。0004但し、コンテナ仮想化技術に自動展開ツールを適用する場合に、配備先となるサーバ装置を適切に選択しなければ、コンテナに含まれるプログラムが正しく動作しないことがある。発明が解決しようとする課題0006本発明の目的は、一側面では、適正なコンテナ配備先を自動的に決定できるようにする。おける資源データを取得する取得部と、(D)資源データに基づいて、配備対象コンテナの資源条件に適合する情報処理装置を、当該配備対象コンテナの配備先に決定する決定部とを有する。発明の効果0008一側面としては、適正なコンテナ配備先を自動的に決定できる。図面の簡単な説明0009図1は、ネットワーク及びデバイスの構成例を示す図である。図2は、ソフトウェアの構成例を示す図である。図3は、コンテナの構成例を示す図である。図4は、コンテナが配備される前の状態におけるサーバ装置のモジュール構成例を示す図である。図5は、コンテナが配備された状態におけるサーバ装置のモジュール構成例を示す図である。図6は、コンテナが配備された状態におけるサーバ装置のモジュール構成例を示す図である。図7は、展開構成ファイルの例を示す図である。図8は、コンテナ展開に関わるモジュール構成例を示す図である。図9は、仮想ネットワーク例を示す図である。図10は、ネットワーク及びデバイスの構成例を示す図である。図11は、リソース要求ファイルの例を示す図である。図12は、評価コンテナの展開例を示す図である。図13は、管理装置のモジュール構成例を示す図である。図14は、メイン処理フローを示す図である。図15は、評価処理(A)フローを示す図である。図16は、評価結果テーブルの例を示す図である。図17は、メイン処理フローを示す図である。図18は、展開構成ファイルの例を示す図である。図19は、ネットワーク及びデバイスの構成例を示す図である。図20は、実施の形態2におけるリソース要求ファイルの例を示す図である。図21は、評価処理(B)フローを示す図である。図22は、実施の形態2における評価結果テーブルの例を示す図である。図23は、実施の形態2におけるメイン処理フローを示す図である。図24は、実施の形態2におけるメイン処理フローを示す図である。図25は、コンピュータの機能ブロック図である。図1図10図11図12図13図14図15図16図17図18実施例0010[実施の形態1]図1に、ネットワーク及びデバイスの構成例を示す。Network)には、サーバ装置101a乃至cが接続されている。サーバ装置101a乃至cは、コンテナの動作環境を提供する。サーバ装置101aには、スピーカー103が接続されている。サーバ装置101bには、ディスプレイ装置105が接続されている。サーバ装置101aの名前は、Server1である。サーバ装置101bの名前は、Server2である。サーバ装置101cの名前は、Server3である。図10011LANには、更にユーザ端末107及び管理装置109が接続されている。ユーザ端末107は、いずれかのサーバ装置101で動作するアプリケーションプログラムに指示を行うときに用いられる。管理装置109は、サーバ装置101a乃至cを管理するために用いられる。0012図2に、音声出力及び映像出力を行うサービスを実現するためのソフトウェアグループの構成例を示す。この例では、フロントエンド201a及びb、バックエンド203a及びb、データベース205、ライブラリ207a乃至eがソフトウェアグループに含まれる。図20013フロントエンド201aは、ユーザ端末107から受けた指示に応じて、スピーカー103を使用して音声を出力させるアプリケーションプログラムである。フロントエンド201aの処理において、ライブラリ207aが使用される。0014フロントエンド201bは、ユーザ端末107から受けた指示に応じて、ディスプレイ装置105を使用して映像を出力させるアプリケーションプログラムである。フロントエンド201bの処理において、ライブラリ207bが使用される。0015データベース205は、音声データ及び映像データを管理する。データベース205は、自らの記憶部に記憶されている音声データ及び映像データを読み出して提供する処理を行う。データベース205の処理において、ライブラリ207eが使用される。0016バックエンド203aは、フロントエンド201aからの要求に応じて、データベース205から取得した音声データを加工して提供するアプリケーションプログラムである。バックエンド203aの処理において、ライブラリ207cが使用される。0017バックエンド203bは、フロントエンド201bからの要求に応じて、データベース205から取得した映像データを加工して提供するアプリケーションプログラムである。バックエンド203bの処理において、ライブラリ207dが使用される。0018これらのソフトウェアが連携して動作することによって、サービスが実現される。この例で、各ソフトウェアをサーバ装置101a又はサーバ装置101bに配置するものとする。サーバ装置101cは、後述するようにコンテナの展開処理を行うために用いられる。サーバ装置101cに、ソフトウェアを配置するようにしてもよい。0019図2に示したソフトウェアグループにコンテナ仮想化技術を適用する場合におけるコンテナ301の構成例を図3に示す。コンテナ301は、1又は複数のプログラムを含むイメージとして用意される。この例では、コンテナ301a乃至eの夫々に1のアプリケーションプログラムが含まれる。1のコンテナ301に複数のアプリケーションプログラムを含めるようにしてもよい。コンテナ301の夫々に、当該アプリケーションプログラムが使用するライブラリ207を含む。コンテナ301にライブラリ207以外の付属データを含めるようにしてもよい。図2図30020具体的には、コンテナ301aは、フロントエンド201aと、フロントエンド201aが使用するライブラリ207aとを含んでいる。同様に、コンテナ301bは、フロントエンド201bと、フロントエンド201bが使用するライブラリ207bとを含んでいる。同様に、コンテナ301cは、バックエンド203aと、バックエンド203aが使用するライブラリ207cとを含んでいる。同様に、コンテナ301dは、バックエンド203bと、バックエンド203bが使用するライブラリ207dとを含んでいる。同様に、コンテナ301eは、データベース205と、データベース205が使用するライブラリ207eとを含んでいる。コンテナ301aの名前は、cont1である。コンテナ301bの名前は、cont2である。コンテナ301cの名前は、cont3である。コンテナ301dの名前は、cont4である。コンテナ301eの名前は、cont5である。0021このように、アプリケーションプログラムが用いるライブラリ207を同一のイメージに含めるようにすれば、コンテナ301の配備によってアプリケーションプログラムの動作環境が整う。従って、アプリケーションプログラムをセットアップするための労力が少なくて済む。0022管理装置109は、これらのコンテナ301a乃至eのイメージを保持している。これらのコンテナ301a乃至eのイメージを、配備先であるサーバ装置101(この例ではサーバ装置101a又はサーバ装置101b)に展開することによって、サービスを提供するシステムが構築される。0023尚、サーバ仮想化技術の場合には、仮想サーバ自身がゲストオペレーティングシステムを含むが、コンテナ仮想化技術の場合には、ゲストオペレーティングシステムを含まないので、イメージのサイズが小さい。従って、仮想サーバの場合に比べて、ソフトウェアを配備する処理の負荷が軽くなるという面がある。0024図4は、コンテナ301が配備される前の状態におけるサーバ装置101aのモジュール構成例を示している。図4に示すように、オペレーティングシステム401及びコンテナ仮想化エンジン403が動作している状態で、コンテナ301が展開される。サーバ装置101bの場合も同様である。コンテナ仮想化エンジン403は、例えばDockerエンジンである。コンテナ仮想化エンジン403は、コンテナ仮想基盤に相当する。図40025図5に、コンテナ301が配備された状態におけるサーバ装置101aのモジュール構成例を示す。この例では、コンテナ301a、コンテナ301c及びコンテナ301dがサーバ装置101aに配備されている。コンテナ301aに含まれるフロントエンド201aの処理において、サーバ装置101aに接続されているスピーカー103から音声を出力させる。図50026図6に、コンテナ301が配備された状態におけるサーバ装置101bのモジュール構成例を示す。この例では、コンテナ301b及びコンテナ301eがサーバ装置101bに配備されている。コンテナ301bに含まれるフロントエンド201bの処理において、サーバ装置101bに接続されているディスプレイ装置105から映像を出力させる。図60027このようなコンテナ301の展開に関し、配備対象であるコンテナ301と配備先であるサーバ装置101とを対応付けた展開構成ファイルを用いて自動化する技術がある。展開構成ファイルについて説明する。0028図7に、展開構成ファイルの例を示す。展開構成ファイルにおいて、配備対象のコンテナ301毎に配備先のサーバ装置101が指定されている。配備対象であるコンテナ301と配備先となるサーバ装置101とが対応付けられている。図70029この例では、コンテナ名:cont1のコンテナ301aの配備先としてサーバ名:server1のサーバ装置101aが指定されている。同様に、コンテナ名:cont2のコンテナ301bの配備先としてサーバ名:server2のサーバ装置101bが指定されている。同様に、コンテナ名:cont3のコンテナ301cの配備先としてサーバ名:server1のサーバ装置101aが指定されている。同様に、コンテナ名:cont4のコンテナ301dの配備先としてサーバ名:server1のサーバ装置101aが指定されている。同様に、コンテナ名:cont5のコンテナ301eの配備先としてサーバ名:server2のサーバ装置101bが指定されている。サーバ装置101は、ノードに相当する。0030管理者は、コンテナ名:cont1のコンテナ301aがスピーカー103を使用するアプリケーションプログラムを含むことと、サーバ名:server1のサーバ装置101aにスピーカー103が接続されていることを知っていれば、コンテナ301aの配備先として正しくサーバ装置101aを指定できる。同様に、管理者は、コンテナ名:cont2のコンテナ301bが、ディスプレイ装置105を使用するアプリケーションプログラムを含むことと、サーバ名:server2のサーバ装置101bにディスプレイ装置105が接続されていることを知っていれば、コンテナ301bの配備先として正しくサーバ装置101bを指定できる。0031例えばKubernetesのようなコンテナ管理ツールは、展開構成ファイルを参照して、指定されたサーバ装置101にコンテナ301を展開させ、展開されたコンテナ301に含まれるアプリケーションプログラムを起動させる。コンテナ管理ツールは、クラスタ管理ツールと呼ばれることもある。0032図8に、コンテナ展開に関わるモジュール構成例を示す。サーバ装置101cは、展開部801を含んでいる。展開部801は、配備対象であるコンテナ301と配備先であるサーバ装置101(この例では、サーバ装置101a又はサーバ装置101b)とが指定されたコンテナ展開の指示を受け付けて、配備対象のコンテナ301を配備先のサーバ装置101に展開する。Interface)サーバと呼ばれることがある。コンテナ仮想化エンジン403と展開部801とを、同一のサーバ装置101に含めるようにしてもよい。展開部801をサーバ装置101aに含め、サーバ装置101cを省くようにしてもよい。図80033管理装置109は、コンテナ記憶部803、受付部805、展開構成記憶部807及びコンテナ管理ツール809を有する。コンテナ記憶部803は、コンテナ301a乃至eのイメージを記憶する。受付部805は、展開構成ファイルを受け付ける。展開構成記憶部807は、展開構成ファイルを記憶する。コンテナ管理ツール809は、展開構成ファイルに基づいて、コンテナ301をサーバ装置101へ配備する。具体的には、コンテナ管理ツール809は、配備対象であるコンテナ301と配備先であるサーバ装置101とを指定して、展開部801にコンテナ301の展開を指示する。0034図7に示した展開構成ファイルに基づいてコンテナ301a乃至eが展開されると、図5及び図6に示した配備状態となる。展開構成ファイルに基づくコンテナ301の自動展開は、例えばアプライアンス展開を行う場合、つまり特定のサービスに係るシステムを構築する場合に便利である。図5図6図70035尚、コンテナ301a乃至eの間は、図9に示したように仮想ネットワークで接続される。各コンテナ301a乃至eには、IPアドレスが割り当てられる。送信側のコンテナ301は、IPアドレスを指定することによって受信側のコンテナ301を特定する。仮想ネットワークは、コンテナ仮想化エンジン403の連携によって制御される。図90036ここで、図10を用いて、図1の例とは異なるネットワーク及びデバイスの構成例について説明する。この例では、図1の例でスピーカー103が接続されていたサーバ装置101aに、スピーカー103に代えてディスプレイ装置105が接続されている。図1の例でディスプレイ装置105が接続されていたサーバ装置101bに、ディスプレイ装置105に代えてスピーカー103が接続されている。図1図100037図10の構成例の場合にも、図7の展開構成ファイルを適用してコンテナ301a乃至eの自動展開を行えば、上述の通り図5及び図6の配備状態となる。図10の構成例ではサーバ装置101aにスピーカー103が接続されていないので、コンテナ301aに含まれるフロントエンド201aの処理において音声を出力できないという障害が生じる。サーバ装置101bにディスプレイ装置105が接続されていないので、コンテナ301bに含まれるフロントエンド201bの処理において映像を出力できないという障害が生じる。図10図5図6図70038但し、図10の構成例の場合に、コンテナ301aをサーバ装置101bに配備すれば、コンテナ301aに含まれるフロントエンド201aの処理において音声を出力できる。コンテナ301bをサーバ装置101aに配備すれば、コンテナ301bに含まれるフロントエンド201bの処理において映像を出力できる。図100039つまり、デバイスの接続状態に応じて展開構成ファイルを書き換えることが求められるかもしれない。展開構成ファイルを作成する段階で、デバイスの接続状態が明らかであるとも限らない。運用段階で、デバイスの接続状態が変更される場合もある。0040本実施の形態では、デバイスの接続状態に関わらず正常にアプリケーションプログラムが動作するように展開構成ファイルを生成する。0041本実施の形態で、管理者は、図11に例示するリソース要求ファイルを用意する。リソース要求ファイルによって、コンテナ301毎に使用するデバイスが指定される。コンテナ301の名前とデバイスの種類とが対応付けられている。ここで指定されるデバイスの種類は、コンテナ301を動作させる場合に要求される資源条件の例である。図110042この例では、コンテナ名:cont1のコンテナ301aが、スピーカー103を要することを示している。コンテナ名:cont2のコンテナ301bが、ディスプレイ装置105を要することを示している。0043次に、本実施の形態における管理装置109に設けられる動的配備ツールの処理の概要について説明する。動的配備ツールは、リソース要求ファイルによる資源条件を満たすように展開構成ファイルを生成する。そのため、動的配備ツールは、まず評価コンテナをサーバ装置101a及びサーバ装置101bに配備する。評価コンテナは、サーバ装置101の資源を評価するために用いられる。0044図12に、評価コンテナ1201の展開例を示す。この例では、サーバ装置101a及びサーバ装置101bが、コンテナ配備先の候補であるものとする。そのため、サーバ装置101a及びサーバ装置101bに、評価コンテナ1201が展開される。図120045評価コンテナ1201には、評価プログラム1203及びライブラリ1205が含まれる。評価プログラム1203は、ライブラリ1205を使用する。評価コンテナ1201が展開されると、評価プログラム1203は、当該サーバ装置101におけるリソースを調べる。この例では、サーバ装置101に接続されているデバイスの種類を特定する。デバイスの種類が評価結果に含められる。0046以下、本実施の形態に係る管理装置109の動作について説明する。図13に、管理装置109のモジュール構成例を示す。管理装置109は、図8を用いて説明したコンテナ記憶部803、受付部805、展開構成記憶部807及びコンテナ管理ツール809の他に、リソース要求記憶部1301及び動的配備ツール1303を有する。図13図80047受付部805は、リソース要求ファイルを受け付ける。リソース要求記憶部1301は、リソース要求ファイルを記憶する。動的配備ツール1303は、各評価プログラム1203から評価結果を取得して、リソース要求ファイルと評価結果に基づいてコンテナ301の配備先を決定する。動的配備ツール1303は、展開構成ファイルにコンテナ301の配備先を書き込む。0048動的配備ツール1303は、配備部1305、取得部1307、決定部1309、通知部1311、起動部1313、評価コンテナ記憶部1321及び評価結果記憶部1323を有する。0049配備部1305は、サーバ装置101へ評価コンテナ1201を配備する。取得部1307は、評価プログラム1203から評価結果を取得する。決定部1309は、コンテナ301の配備先を決定する。通知部1311は、資源不足の通知を出力する。起動部1313は、コンテナ管理ツール809を起動する。評価コンテナ記憶部1321は、評価コンテナ1201を記憶する。評価結果記憶部1323は、評価結果テーブルを記憶する。Unit)2503に実行させるプログラムとを用いて実現される。図250051上述したリソース要求記憶部1301、評価コンテナ記憶部1321、評価結果記憶部1323、コンテナ記憶部803及び展開構成記憶部807は、ハードウエア資源(例えば、図25)を用いて実現される。図250052続いて、管理装置109における処理について説明する。図14に、メイン処理フローを示す。受付部805は、例えば管理者の操作によって記憶媒体又は通信媒体経由でリソース要求ファイルを受け付け、受け付けたリソース要求ファイルをリソース要求記憶部1301に記憶する(S1401)。図140053配備部1305は、リソース要求ファイルを読み(S1403)、更にソース要求ファイルから読み取ったテキストデータに含まれるサーバ装置101の名前を1つ特定する(S1405)。0054配備部1305は、評価コンテナ1201を当該サーバ装置101に配備する(S1407)。具体的には、配備部1305は、評価コンテナ1201を当該サーバ装置101に展開させる指示を展開部801へ送る。0055評価コンテナ1201がサーバ装置101に展開されると、評価コンテナ1201に含まれる評価プログラム1203の処理が自動的に開始される。0056ここで、評価プログラム1203による評価処理(A)について説明する。図15に、評価処理(A)フローを示す。評価プログラム1203の処理を実行することによって実現される機能部を、以下では評価部という。図150057評価部は、オペレーティングシステム401に、当該サーバ装置101に接続されているデバイスの種類を問い合わせる(S1501)。0058評価部は、オペレーティングシステム401から、接続されているデバイスの種類の回答を受け(S1503)、当該デバイスの種類を含む評価結果を動的配備ツール1303へ送信する(S1505)。評価処理(A)を終える。評価プログラム1203の処理を終えると、評価コンテナ1201は消滅する。0059メイン処理の説明に戻る。取得部1307は、評価プログラム1203から評価結果を受信し、評価結果テーブルを更新する(S1409)。具体的には、評価結果テーブルにレコードを追加して、追加したレコードに評価結果を設定する。この例では、各デバイスの有無が設定される。0060図16に、評価結果テーブルの例を示す。この例における評価結果テーブルは、サーバ装置101に対応するレコードを有している。評価結果テーブルのレコードは、サーバ装置101の名前が設定されるフィールドと、スピーカー103の有無が設定されるフィールドと、ディスプレイ装置105の有無が設定されるフィールドとを有している。図160061図14の説明に戻る。配備部1305は、未特定のサーバ装置101があるか否かを判定する(S1411)。未特定のサーバ装置101があると判定した場合には、S1405に示した処理に戻って、上述した処理を繰り返す。未特定のサーバ装置101がないと判定した場合には、端子Aを介して、図17に示したS1701の処理に移る。図14図170062図17の説明に戻る。決定部1309は、例えばリソース要求ファイルに基づいて、コンテナ301を1つ特定する(S1701)。図170063決定部1309は、サーバ装置101を1つ特定する(S1703)。決定部1309は、当該サーバ装置101の評価結果及びリソース要求ファイルに基づいて、当該サーバ装置101の評価結果が、当該コンテナ301の資源条件を満たすか否かを判定する(S1705)。0064当該サーバ装置101の評価結果が、当該コンテナ301の資源条件を満たさないと判定した場合には、決定部1309は、未特定のサーバ装置101があるか否かを判定する(S1707)。未特定のサーバ装置101があると判定した場合には、S1703に示した処理に戻って、上述した処理を繰り返す。0065一方、未特定のサーバ装置101がないと判定した場合には、通知部1311は、資源不足の通知を出力する(S1709)。通知部1311は、資源不足の通知を示す画面をディスプレイに表示させる。0066S1705の説明に戻る。S1705において、当該サーバ装置101の評価結果が、当該コンテナ301の資源条件を満たすと判定した場合には、決定部1309は、当該サーバ装置101を当該コンテナ301の配備先に決定する(S1711)。決定部1309は、配備対象であるコンテナ301の名前に対応付けて配備先である当該サーバ装置101を展開構成ファイルに書き込む。0067決定部1309は、未特定のコンテナ301があるか否かを判定する(S1713)。未特定のコンテナ301があると判定した場合には、S1701に示した処理に戻って、上述した処理を繰り返す。0068一方、未特定のコンテナ301がないと判定した場合には、起動部1313は、展開構成ファイルをコンテナ管理ツール809に渡して、コンテナ管理ツール809を起動する(S1715)。0069本実施の形態で生成される展開構成ファイルの例を、図18に示す。この例では、図7に示した展開構成ファイルの例とは異なり、コンテナ名:cont1のコンテナ301aの配備先としてサーバ名:server2のサーバ装置101bが指定されている。同様に、コンテナ名:cont2のコンテナ301bの配備先としてサーバ名:server1のサーバ装置101aが指定されている。コンテナ名:cont3のコンテナ301c、コンテナ名:cont4のコンテナ301d及びコンテナ名:cont5のコンテナ301eについては、図7の場合と同様である。図18図70070コンテナ管理ツール809は、上述の通り、展開構成ファイルに基づいてコンテナ展開の指示を展開部801へ送る。コンテナ301の展開が完了すると、コンテナ管理ツール809は、展開完了の通知を起動部1313へ送る。0071その後、起動部1313は、コンテナ管理ツール809から展開完了の通知を受けて(S1717)、メイン処理を終える。0072本実施の形態によれば、適正なコンテナ配備先を自動的に決定できる。0073更に、デバイスを用いた処理を行うプログラムを含むコンテナ301の配備先として、より適正な情報処理装置を選ぶことができる。0074[実施の形態2]本実施の形態では、サーバ装置101の本体資源又は本体性能に関する資源条件を用いる例について説明する。0075図19に、ネットワーク及びデバイスの構成例を示す。この例で、サーバ装置101aには、タッチパネル1901及びディスプレイ装置105が接続されている。サーバ装置101bには、スピーカー103が接続されている。図190076図20に、実施の形態2におけるリソース要求ファイルの例を示す。リソース要求ファイルによって、コンテナ301毎に要求される本体資源及び本体性能が指定される。図200077この例では、コンテナ名:cont1のコンテナ301aが、スピーカー103を要する他、伝送レート450Mbps以上のダウンロード性能と、動作周波数500MHz以上のCPUのコアを1つ要することを示している。コンテナ名:cont2のコンテナ301bが、解像度が1920×1080以上であるディスプレイ装置105の他に、伝送レート500Mbps以上のダウンロード性能と、動作周波数500MHz以上のCPUのコアを2つ要することを示している。ダウンロード性能の条件は、本体性能の条件の例である。CPUの条件は、本体資源の条件の例である。0078本実施の形態で、評価部は、評価処理(A)に代えて評価処理(B)を実行する。図21に、評価処理(B)フローを示す。評価部は、オペレーティングシステム401に、付属デバイスの種類及び仕様を問い合わせて(S2101)、付属デバイスの種類及び仕様を得る(S2103)。図210079この例で、付属デバイスの種類は、タッチパネル1901、スピーカー103及びディスプレイ装置105である。タッチパネル1901が有る場合には、評価部は、オペレーティングシステム401から、タッチパネル1901の解像度も得る。ディスプレイ装置105が有る場合には、評価部は、オペレーティングシステム401から、ディスプレイ装置105の解像度も得る。評価部は、付属デバイスの種類及び仕様を評価結果に設定する。0080評価部は、当該サーバ装置101の本体性能を計測する(S2105)。この例で、評価部は、CPU性能、ファイルライト性能、ファイルリード性能、ダウンロード性能及びアップロード性能を計測する。CPU性能は、例えばunixbenchのスコアである。評価部は、当該サーバ装置101の本体性能を評価結果に設定する。0081評価部は、オペレーティングシステム401に、当該サーバ装置101の本体資源を問い合わせて(S2107)、当該サーバ装置101の本体資源のデータを得る(S2109)。0082この例で、評価部は、オペレーティングシステム401から、CPUの動作周波数、CPUのコア数、メモリ容量及びディスク容量を得る。評価部は、当該サーバ装置101の本体資源のデータを評価結果に設定する。0083評価部は、付属デバイスの種類及び仕様と、当該サーバ装置の本体性能及び本体資源のデータとを含む評価結果を送信する(S2111)。0084図22に、実施の形態2における評価結果テーブルの例を示す。実施の形態2における評価結果テーブルは、サーバ装置101の名前が設定されるフィールドと、付属デバイスに関するフィールドと、本体性能に関するフィールドと、本体資源に関するフィールドとを有している。図220085付属デバイスに関するフィールドは、スピーカー103の有無が設定されるフィールドと、ディスプレイ装置105の有無が設定されるフィールドと、ディスプレイ装置105の解像度が設定されるフィールドと、タッチパネル1901の有無が設定されるフィールドと、タッチパネル1901の解像度が設定されるフィールドとを含んでいる。0086本体性能に関するフィールドは、CPU性能が設定されるフィールドと、ファイルライト性能(Mbps)が設定されるフィールドと、ファイルリード性能(Mbps)が設定されるフィールドと、ダウンロード性能(Mbps)が設定されるフィールドと、アップロード性能(Mbps)が設定されるフィールドとを含んでいる。0087本体資源に関するフィールドは、CPUの動作周波数が設定されるフィールドと、CPUのコア数が設定されるフィールドと、メモリ容量が設定されるフィールドと、ディスク容量が設定されるフィールドとを含んでいる。0088続いて、実施の形態2におけるメイン処理について説明する。実施の形態2におけるメイン処理において、実施の形態1の場合と同様に、図14のS1401乃至S1411に示した処理を実行する。S1411において未特定のサーバ装置101がないと判定した場合には、端子Aを介して、図23に示したS2301の処理に移る。図14図230089図23について説明する。決定部1309は、例えばリソース要求ファイルに基づいて、コンテナ301を1つ特定する(S2301)。図230090決定部1309は、サーバ装置101を1つ特定する(S2303)。決定部1309は、当該サーバ装置101の評価結果及びリソース要求ファイルに基づいて、当該サーバ装置101の評価結果が、付属デバイスの条件及び本体性能の条件を満たすか否かを判定する(S2305)。0091当該サーバ装置101の評価結果が、付属デバイスの条件及び本体性能の条件を満たすと判定した場合には、決定部1309は、当該サーバ装置101を候補として選択し(S2307)、S2309の処理に移る。当該サーバ装置101の評価結果が、付属デバイスの条件及び本体性能の条件を満たさないと判定した場合には、決定部1309は、当該サーバ装置101を候補として選択せず、そのままS2309の処理に移る。0092決定部1309は、未特定のサーバ装置101があるか否かを判定する(S2309)。未特定のサーバ装置101があると判定した場合には、S2303に示した処理に戻って、上述した処理を繰り返す。0093一方、未特定のサーバ装置101がないと判定した場合に、決定部1309は、候補のサーバ装置101が2つ以上であるか否かを判定する(S2311)。候補のサーバ装置101が2つ以上である場合には、決定部1309は、本体資源に基づいて、当該コンテナ301の配備先とするサーバ装置101を選択する(S2313)。端子Bを介して、図24のS2401に示した処理に移る。この例では、本体資源の残量が多い方のサーバ装置101を選択する。本体資源の残量が少ない方のサーバ装置101を選択するようにしてもよい。本体資源の条件を満たすサーバ装置101が無い場合に、S2319の処理に移るようにしてもよい。本体資源の残量は、後述する図24のS2401の処理において更新される。図240094一方、候補のサーバ装置101が2つ以上でない場合には、決定部1309は、候補サーバ装置101が1つであるか否かを判定する(S2315)。候補サーバ装置101が1つである場合には、決定部1309は、当該候補のサーバ装置101を当該コンテナ301の配備先に決定する(S2317)。端子Bを介して、図24のS2401に示した処理に移る。当該候補のサーバ装置101が本体資源の条件を満たさない場合に、S2319の処理に移るようにしてもよい。図240095S2315において、候補サーバ装置101が1つもないと判定した場合には、通知部1311は、資源不足の通知を出力する(S2319)。通知部1311は、資源不足の通知を示す画面をディスプレイに表示させる。0096図24の説明に移る。決定部1309は、配備先のサーバ装置101における本体資源の値を減らす(S2401)。配備先のサーバ装置101のメモリ容量から当該コンテナ301のメモリ使用量を引く。配備先のサーバ装置101のHDD容量から当該コンテナ301のHDD使用量を引く。配備先のサーバ装置101のCPUコア数から当該コンテナ301の使用コア数を引く。図240097決定部1309は、未特定のコンテナ301があるか否かを判定する(S2403)。未特定のコンテナ301があると判定した場合には、端子Cを介して、図23のS2301に示した処理に戻る。図230098一方、未特定のコンテナ301がないと判定した場合には、起動部1313は、展開構成ファイルをコンテナ管理ツール809に渡して、コンテナ管理ツール809を起動する(S2405)。0099コンテナ管理ツール809は、上述の通り、展開構成ファイルに基づいてコンテナ展開の指示を展開部801へ送る。コンテナ301の展開が完了すると、コンテナ管理ツール809は、展開完了の通知を起動部1313へ送る。0100その後、起動部1313は、コンテナ管理ツール809から展開完了の通知を受けて(S2407)、メイン処理を終える。0101本実施の形態によれば、サーバ装置101の本体資源又は本体性能に依存するプログラムを含むコンテナ301の配備先として、より適正なサーバ装置101を選ぶことができる。0102尚、評価コンテナ1201をサーバ装置101に常駐させるようにしてもよい。配備部1305は、図14のS1407において評価プログラム1203を起動するようにしてもよい。図140103また、リソース要求ファイルにおいて、付属デバイスについて専有することを条件として設定するようにしてもよい。0104以上本発明の実施の形態を説明したが、本発明はこれに限定されるものではない。上述の機能ブロック構成はプログラムモジュール構成に一致しない場合もある。0105また、上で説明した各記憶領域の構成は一例であって、上記のような構成でなければならないわけではない。処理フローにおいても、処理結果が変わらなければ、処理の順番を入れ替えることや複数の処理を並列に実行させるようにしても良い。Drive)2505と表示装置2509に接続される表示制御部2507とリムーバブル・ディスク2511用のドライブ装置2513と入力装置2515とネットワークに接続するための通信制御部2517とがバス2519で接続されている。System)及び本実施例における処理を実施するためのアプリケーション・プログラムは、HDD2505に格納されており、CPU2503により実行される際にはHDD2505からメモリ2501に読み出される。CPU2503は、アプリケーション・プログラムの処理内容に応じて表示制御部2507、通信制御部2517、ドライブ装置2513を制御して、所定の動作を行わせる。処理途中のデータについては、主としてメモリ2501に格納されるが、HDD2505に格納されるようにしてもよい。本発明の実施例では、上で述べた処理を実施するためのアプリケーション・プログラムはコンピュータ読み取り可能なリムーバブル・ディスク2511に格納されて頒布され、ドライブ装置2513からHDD2505にインストールされる。インターネットなどのネットワーク及び通信制御部2517を経由して、HDD2505にインストールされる場合もある。このようなコンピュータ装置は、上で述べたCPU2503、メモリ2501などのハードウエアとOS及びアプリケーション・プログラムなどのプログラムとが有機的に協働することにより、上で述べたような各種機能を実現する。図250107以上述べた本発明の実施の形態をまとめると、以下のようになる。おける資源データを取得する取得部と、(D)資源データに基づいて、配備対象コンテナの資源条件に適合する情報処理装置を、当該配備対象コンテナの配備先に決定する決定部とを有する。0109このようにすれば、適正なコンテナ配備先を自動的に決定できる。0110更に、資源条件は、配備対象コンテナにより使用されるデバイスに関するものであってもよい。0111このようにすれば、デバイスを用いた処理を行うプログラムを含むコンテナの配備先として、より適正な情報処理装置を選ぶことができる。0112更に、資源条件は、配備対象コンテナに要する、情報処理装置の本体資源又は本体性能に関するものであってもよい。0113このようにすれば、情報処理装置の資源又は性能に依存するプログラムを含むコンテナの配備先として、より適正な情報処理装置を選ぶことができる。0114また、情報処理システムは、更に、(E)配備先に決定された情報処理装置に、配備対象コンテナを配備するコンテナ管理部を有するようにしてもよい。0115このようにすれば、更にコンテナの配備を自動化できる。0116なお、上で述べた情報処理システムの処理をコンピュータに行わせるためのプログラムを作成することができ、当該プログラムは、例えばフレキシブルディスク、CD−ROM、光磁気ディスク、半導体メモリ、ハードディスク等のコンピュータ読み取り可能な記憶媒体又は記憶装置に格納されるようにしてもよい。中間的な処理結果は、一般的にメインメモリ等の記憶装置に一時保管される。0117以上の実施例を含む実施形態に関し、さらに以下の付記を開示する。前記資源データに基づいて、配備対象コンテナの資源条件に適合する情報処理装置を、当該配備対象コンテナの配備先に決定する決定部とを有する情報処理システム。0119(付記2)前記資源条件は、前記配備対象コンテナにより使用されるデバイスに関する付記1記載の情報処理システム。0120(付記3)前記資源条件は、前記配備対象コンテナに要する、情報処理装置の本体資源又は本体性能に関する付記1又は2記載の情報処理システム。前記配備先に決定された前記情報処理装置に、前記配備対象コンテナを配備するコンテナ管理部を有する付記1乃至3のいずれか1つ記載の情報処理システム。前記資源データに基づいて、配備対象コンテナの資源条件に適合する情報処理装置を、当該配備対象コンテナの配備先に決定する決定部とを有するコンテナ管理装置。前記資源データに基づいて、配備対象コンテナの資源条件に適合する情報処理装置を、当該配備対象コンテナの配備先に決定する処理を含み、コンピュータにより実行されるコンテナ管理方法。