JP2017111761A - Container storage device, container creation method and program - Google Patents
Container storage device, container creation method and program Download PDFInfo
- Publication number
- JP2017111761A JP2017111761A JP2015247897A JP2015247897A JP2017111761A JP 2017111761 A JP2017111761 A JP 2017111761A JP 2015247897 A JP2015247897 A JP 2015247897A JP 2015247897 A JP2015247897 A JP 2015247897A JP 2017111761 A JP2017111761 A JP 2017111761A
- Authority
- JP
- Japan
- Prior art keywords
- container
- user
- area
- data
- specific user
- 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.)
- Granted
Links
- 238000000034 method Methods 0.000 title claims abstract description 55
- 230000008569 process Effects 0.000 claims abstract description 41
- 238000012544 monitoring process Methods 0.000 claims description 21
- 230000004308 accommodation Effects 0.000 claims description 10
- 238000002955 isolation Methods 0.000 claims description 2
- 238000007726 management method Methods 0.000 description 51
- 230000006870 function Effects 0.000 description 26
- 238000005516 engineering process Methods 0.000 description 10
- 238000010586 diagram Methods 0.000 description 8
- 238000012545 processing Methods 0.000 description 8
- 230000004044 response Effects 0.000 description 3
- 230000000694 effects Effects 0.000 description 2
- 230000000717 retained effect Effects 0.000 description 2
- 230000008859 change Effects 0.000 description 1
- 238000004891 communication Methods 0.000 description 1
- 238000007796 conventional method Methods 0.000 description 1
- 238000013500 data storage Methods 0.000 description 1
- 238000001514 detection method Methods 0.000 description 1
- 238000009434 installation Methods 0.000 description 1
- 238000012986 modification Methods 0.000 description 1
- 230000004048 modification Effects 0.000 description 1
- 230000007480 spreading Effects 0.000 description 1
- 239000000126 substance Substances 0.000 description 1
Images
Abstract
Description
本発明は、共用ホスティングサービスにおけるサービス提供方式に関連するものである。 The present invention relates to a service providing method in a shared hosting service.
近年では、VPS(Virtual Private Server)やクラウドといったCPU/メモリ/ディスクなどを占有する仮想サーバ型のホスティングサービスが広がりつつある。しかし、仮想サーバ型のホスティングサービスでは、ユーザにおいてサーバを管理運用する手間が個々のサーバ毎に発生する。これに対し、サーバ資源を他のユーザと共有することで、低コストでサーバ管理の手間がかからない共用ホスティングサービスが主に中小企業ユーザに広く利用されている。 In recent years, virtual server type hosting services that occupy CPU / memory / disk, such as VPS (Virtual Private Server) and cloud, are spreading. However, in the virtual server type hosting service, a user needs to manage and operate the server for each individual server. On the other hand, by sharing server resources with other users, a shared hosting service that is low-cost and does not require time and effort for server management is widely used mainly by small and medium enterprise users.
従来の共用ホスティングサービスの提供手法では、単一のプロセスを一筐体内において多数の収容ユーザで共有する。具体的には、共有デーモンプロセスを用意し、利用ユーザをドメインなどのユーザ固有の情報で振り分け、筐体のリソースを収容ユーザで共有する。 In the conventional method for providing a shared hosting service, a single process is shared by a large number of accommodated users in one housing. Specifically, a shared daemon process is prepared, user users are distributed according to user-specific information such as a domain, and housing resources are shared among accommodated users.
しかしながら、上記のようにプロセスをユーザ間で共有する方式では、例えば、収容されている一部のユーザが大量のリソースを占有した場合、他のユーザがサービスを利用できないといった影響を受ける場合がある。また、プロセスを利用する全ユーザ間で共通のリソースの設定を用いらなければならないという問題もある。 However, in the method of sharing a process between users as described above, for example, when some accommodated users occupy a large amount of resources, there is a case that other users cannot use the service. . There is also a problem that a common resource setting must be used among all users using the process.
すなわち、従来技術では、サーバリソースをユーザ間で共用する共用ホスティングサービスにおいて、リソースの制御をユーザ毎に適切に行うことができないという問題があった。 That is, the conventional technology has a problem in that it is not possible to appropriately control resources for each user in a shared hosting service in which server resources are shared among users.
本発明は上記の点に鑑みてなされたものであり、サーバリソースをユーザ間で共用する共用ホスティングサービスにおいて、リソースの制御をユーザ毎に適切に行うことを可能とする技術を提供することを目的とする。 The present invention has been made in view of the above points, and an object of the present invention is to provide a technology that enables appropriate control of resources for each user in a shared hosting service in which server resources are shared among users. And
本発明の実施の形態によれば、特定のユーザのプロセスを他のユーザのプロセスと隔離して動作させる仮想的な環境であるコンテナを収容するコンテナ収容装置であって、
前記特定のユーザのコンテナの作成指示を受信した場合に、各ユーザのコンテナ作成において共通に使用されるモデルデータを用いて、前記特定のユーザのコンテナを作成するコンテナ管理手段を備え、
前記コンテナ管理手段は、前記コンテナの外部にある外部領域を、前記コンテナにおいて前記特定のユーザにより認識されるデータ領域に接続し、データが前記外部領域に格納されるようにする
ことを特徴とするコンテナ収容装置が提供される。
According to an embodiment of the present invention, a container accommodation apparatus that accommodates a container that is a virtual environment in which a process of a specific user is operated separately from other users' processes,
A container management means for creating a container for the specific user by using model data commonly used in creating a container for each user when receiving the container creation instruction for the specific user;
The container management means connects an external area outside the container to a data area recognized by the specific user in the container so that data is stored in the external area. A container storage device is provided.
また、本発明の実施の形態によれば、特定のユーザのプロセスを他のユーザのプロセスと隔離して動作させる仮想的な環境であるコンテナを収容するコンテナ収容装置が実行するコンテナ作成方法であって、
前記特定のユーザのコンテナの作成指示を受信した場合に、各ユーザのコンテナ作成において共通に使用されるモデルデータを用いて、前記特定のユーザのコンテナを作成するコンテナ作成ステップを備え、
前記コンテナ作成ステップにおいて、前記コンテナ収容装置は、前記コンテナの外部にある外部領域を、前記コンテナにおいて前記特定のユーザにより認識されるデータ領域に接続し、データが前記外部領域に格納されるようにする
ことを特徴とするコンテナ作成方法が提供される。
In addition, according to the embodiment of the present invention, there is provided a container creation method executed by a container accommodation device that accommodates a container that is a virtual environment for operating a specific user process separately from other user processes. And
A container creation step of creating a container for the specific user by using model data commonly used in creating a container for each user when the container creation instruction for the specific user is received;
In the container creation step, the container receiving device connects an external area outside the container to a data area recognized by the specific user in the container, so that data is stored in the external area. A container creation method characterized by the above is provided.
本発明の実施の形態によれば、サーバリソースをユーザ間で共用する共用ホスティングサービスにおいて、リソースの制御をユーザ毎に適切に行うことを可能とする技術を提供することが可能となる。 According to the embodiment of the present invention, it is possible to provide a technique that enables appropriate control of resources for each user in a shared hosting service in which server resources are shared among users.
以下、図面を参照して本発明の実施の形態を説明する。なお、以下で説明する実施の形態は一例に過ぎず、本発明が適用される実施の形態は、以下の実施の形態に限られるわけではない。 Embodiments of the present invention will be described below with reference to the drawings. The embodiment described below is only an example, and the embodiment to which the present invention is applied is not limited to the following embodiment.
(実施の形態の概要)
本実施の形態では、サーバアプリケーション、ライブラリモジュール、共通設定等からなるコンテナテンプレートを作成し、コンテナテンプレートからユーザ毎のコンテナを作成することとしている。これにより、各コンテナに収容される収容ユーザのプロセス空間の分離を行う。これによりリソースについてコンテナ単位で適切に制御できるようになる。
(Outline of the embodiment)
In this embodiment, a container template including a server application, a library module, common settings, and the like is created, and a container for each user is created from the container template. Thereby, the process space of the accommodation user accommodated in each container is separated. This makes it possible to appropriately control resources on a container basis.
また、ユーザが作成するデータやカスタマイズ可能な設定ファイルはコンテナとは別のストレージにデータ領域として確保し、コンテナとして作成された仮想ストレージのレイヤ化を行い、データ領域をバインドマウントすることで、ユーザは共通領域(コンテナ)とデータ領域の種別の境界を特に意識することなく透過的にファイルシステムを扱うことができる。 In addition, data created by the user and customizable configuration files are secured as a data area in a storage separate from the container, the virtual storage created as a container is layered, and the data area is bind-mounted to allow the user to Can handle the file system transparently without being particularly aware of the boundary between the types of the common area (container) and the data area.
<コンテナについて>
ここで、コンテナの概要を簡単に説明しておく。なお、コンテナ自体は既存技術である。一般にOSの内部は、アプリケーション(OS上で動作するソフトウェア)が使用するユーザ空間と、カーネルが使用するカーネル空間とに分かれる。アプリケーションが実行されると、ユーザ空間においてプロセス(プログラムの実行単位)が生成される。コンテナの技術では、プロセスをグループ化し、他のグループやグループに属していないプロセスから隔離した空間で動作させる。この空間(仮想的な環境)をコンテナと呼ぶ。
<About Container>
Here, the outline of the container will be briefly described. The container itself is an existing technology. In general, the OS is divided into a user space used by an application (software operating on the OS) and a kernel space used by the kernel. When the application is executed, a process (program execution unit) is generated in the user space. In container technology, processes are grouped and run in a space isolated from other groups and processes that do not belong to the group. This space (virtual environment) is called a container.
コンテナの技術では、コンテナ内のプロセスからは他のコンテナのプロセスにアクセスすることはできない。また、CPU、メモリ、デバイス等については、コンテナ毎に、コンテナから利用できる範囲が制限される。 In container technology, processes in a container cannot access processes in other containers. For the CPU, memory, device, etc., the range that can be used from the container is limited for each container.
なお、コンテナの作成等を行うためのソフトウェア("コンテナ管理ソフト"と呼ぶ)としては種々のものがあるが、本実施の形態では、一例として、Docker(登録商標)を使用することを想定している。ただし、本発明を適用できるコンテナ管理ソフトは、特定のコンテナ管理ソフトに限定されるわけではなく、様々なコンテナ管理ソフトを適用して本発明を実施することができる。 There are various types of software for creating containers (referred to as “container management software”). In this embodiment, it is assumed that Docker (registered trademark) is used as an example. ing. However, the container management software to which the present invention can be applied is not limited to specific container management software, and the present invention can be implemented by applying various container management software.
(システム全体構成)
図1に、本発明の実施の形態に係るシステムの全体構成例を示す図である。図1に示すように、本実施の形態に係るシステムは、コンテナ収容装置100と管理装置200を有する。
(Whole system configuration)
FIG. 1 is a diagram showing an example of the overall configuration of a system according to an embodiment of the present invention. As shown in FIG. 1, the system according to the present embodiment includes a
コンテナ収容装置100と管理装置200はそれぞれ、ネットワークに接続されている装置であり、コンテナ収容装置100と管理装置200との間で通信が可能である。また、コンテナ収容装置100と管理装置200はそれぞれ、1つ又は複数の物理的なサーバ(コンピュータ)であってもよいし、1つ又は複数の仮想サーバであってもよい。コンテナ収容装置100を「ホスト」と称してもよい。
Each of the
<コンテナ収容装置>
コンテナ収容装置100は、各ユーザに対して共用ホスティングサービスを提供する装置である。本実施の形態では、コンテナ収容装置100内にユーザ毎のコンテナが作成される。
<Container storage device>
The
図1に示すように、コンテナ収容装置100は、コンテナ管理部110、テンプレート格納部120、監視制御部130を含む。コンテナ管理部110は、管理装置200からの指示に基づいて、コンテナを作成、更新するための機能部であり、本実施の形態では、コンテナ管理ソフト、プロビジョニングスクリプト(プログラム)等により実現される機能部である。
As illustrated in FIG. 1, the
テンプレート格納部120は、コンテナテンプレートと、ユーザ領域テンプレートを格納している。本実施の形態のコンテナテンプレートは、コンテナイメージと呼んでもよく、コンテナ間で共通であり、コンテナのひな形となるデータ(モデルデータと呼んでもよい)である。テンプレートに基づいて各ユーザのコンテナが作成されるが、その際に、ユーザ個別の設定がなされる。
The
ユーザ領域テンプレートは、コンテナにおけるユーザ領域(ユーザが書き換え可能な領域)の初期設定、初期データ等からなる。ユーザ領域テンプレート自体は、コンテナ間で共通であるが、コンテナ作成時に、ユーザ個別の設定(設定ファイル格納等)がなされる。 The user area template includes initial settings, initial data, and the like of a user area (an area that can be rewritten by the user) in the container. The user area template itself is common between containers, but individual settings (setting file storage, etc.) are made when a container is created.
監視制御部130は、コンテナにおけるプロセスの実行に伴って発生するユーザデータの読み書きの頻度又はデータ量を監視して、当該頻度又はデータ量に応じて、ユーザデータを格納するストレージ等を使い分ける機能部である。なお、監視制御部130は、コンテナを構成するプログラム(つまり、コンテナテンプレートを構成するプログラム)により実現される機能部であってもよいし、コンテナの外部のプログラム(コンテナ収容装置100が実行するプログラム)で実現される機能部であってもよい。
The
また、監視制御部130は、ユーザのコンテナ利用に関するリソース制御の機能も有している。この機能は「fair share」の考えに基づくものであり、具体的には、監視制御部130に、各ユーザ(1コンテナ)が利用できるリソース(例:CPUリソース、メモリリソース)の相対値と最大値が設定され、監視制御部130は、これらの値に基づいてリソース制御を行う。
The
相対値は、1ユーザに割り当てられるリソースの量である。監視制御部130は、コンテナ収容装置100の全体負荷が高い場合には、各ユーザのリソースを相対値に制限するが、コンテナ収容装置100のリソースに余裕がある場合には、相対値以上のリソースの使用を許容する。ただし、最大値を超えることはできない。このようなリソース制御により、コンテナ収容装置100の全体のリソースを有効に活用できるとともに、複数コンテナ間で平等にリソースを利用できる。
The relative value is the amount of resources allocated to one user. The
最大値はコンテナ収容装置100のリソースに余裕がある状態で、1ユーザが利用できるリソース上限値を表す。このような上限値を設定することで1コンテナが暴走した場合でもコンテナ収容装置100全体のリソースを占有しないようにすることができる。
The maximum value represents a resource upper limit value that can be used by one user in a state where there is room in the resources of the container
すなわち、監視制御部130は、複数コンテナ間で平等にリソースを使用できるようにするとともに、全体のリソースに余裕がある場合でも、1コンテナが使用するリソースを所定の上限値に制限するリソース制御の機能を有する。
In other words, the
なお、監視制御部130におけるリソース制御の機能は、後述するOSにおけるコンテナ機能37を利用して実現してもよいし、コンテナ機能37とは別の機能として実現してもよい。また、リソース制御の機能を監視制御部130とは別の機能部として設けてもよい。
Note that the resource control function in the
本実施の形態に係るコンテナ収容装置100は、例えば、1つ又は複数のコンピュータに、本実施の形態で説明するコンテナ管理部110と監視制御部130における処理内容を記述したプログラムを実行させることにより実現可能である。すなわち、コンテナ収容装置100が有する機能は、当該コンピュータに内蔵されるCPUやメモリ、ハードディスクなどのハードウェア資源を用いて、コンテナ収容装置100で実施される処理に対応するプログラムを実行することによって実現することが可能である。上記プログラムは、コンピュータが読み取り可能な記録媒体(可搬メモリ等)に記録して、保存したり、配付したりすることが可能である。また、上記プログラムをインターネットや電子メールなど、ネットワークを通して提供することも可能である。
The container
<管理装置>
図1に示すように、管理装置200は、オーダー管理部210、コンテナ収容装置管理部220、テンプレート格納部230を有する。オーダー管理部210は、運用者等からのオーダーに従って、コンテナ収容装置100に対してコンテナ作成を指示する機能部である。コンテナ収容装置管理部220は、運用者からのアップデート命令を受けて、コンテナのアップデートを実行する。テンプレート格納部230は、各種のバージョンのテンプレートを格納しており、テンプレートをコンテナ収容装置100に配付する機能を有する。
<Management device>
As illustrated in FIG. 1, the
本実施の形態に係る管理装置200は、例えば、1つ又は複数のコンピュータに、本実施の形態で説明する処理内容を記述したプログラムを実行させることにより実現可能である。すなわち、管理装置200が有する機能は、当該コンピュータに内蔵されるCPUやメモリ、ハードディスクなどのハードウェア資源を用いて、管理装置200で実施される処理に対応するプログラムを実行することによって実現することが可能である。上記プログラムは、コンピュータが読み取り可能な記録媒体(可搬メモリ等)に記録して、保存したり、配付したりすることが可能である。また、上記プログラムをインターネットや電子メールなど、ネットワークを通して提供することも可能である。
The
(コンテナ収容装置100の詳細例)
図2は、ユーザ毎のコンテナが作成された状態のコンテナ収容装置100の構成例を示す図である。図2に示す例では、コンテナテンプレート10に基づき、各コンテナ(コンテナ1、コンテナ2、コンテナ3)が生成されている。各コンテナには、共通領域とユーザ領域が示されている。共通領域には、設定ファイル11、ライブラリ12、デーモン13が示されている。また、ユーザ領域には、設定ファイル21、ユーザデータ22が示されている。
(Detailed example of the container housing device 100)
FIG. 2 is a diagram illustrating a configuration example of the
「共通領域」に関して、アプリケーション(デーモン)やライブラリ等、コンテナ間で共通の機能を提供する領域(機能)であることから「共通領域」と呼んでいるが、その動作(プロセスとしての動作)は、コンテナ毎に独立である。設定ファイル11、ライブラリ12、デーモン(プログラム)13等の実体データは、コンテナテンプレート10(コンテナイメージ)である。コンテナの機能により、各ユーザにとっては、自分のみがこれらを使用するように認識される。なお、コンテナテンプレート10(コンテナイメージ)が格納される領域が実際の「共通領域」であり、図2に示す「共通領域」は、当該共通領域の内容と同等の内容を持つ領域であることを意味する。
Regarding "common area", it is called "common area" because it is an area (function) that provides common functions among containers such as applications (daemons) and libraries, but its operation (operation as a process) is Each container is independent. The entity data such as the setting
「ユーザ領域」は、ユーザが書き換え可能な領域である。ユーザ領域におけるファイルやデータの初期値はユーザ領域テンプレート20に基づいて設定されるものである。初期値設定後に、ユーザ個別の設定ファイル21等が格納(コピー)されることで、ユーザ個別の設定が行われる。また、ユーザにとっては、コンテナにより提供されるファイルシステムの所定のユーザデータ領域がユーザデータ22の格納領域として見えるが、外部領域のバンドマウントによって、当該外部領域がコンテナのユーザデータ領域に接続され、実際のユーザデータの読み書きは当該外部領域に対して行われる。つまり、ユーザデータ領域の実体は外部領域にある。なお、設定ファイル21は、バインドマウントにより外部領域に格納してもよいし、バインドマウントを行わずにコンテナの領域に格納してもよい。
The “user area” is an area that can be rewritten by the user. Initial values of files and data in the user area are set based on the
図3は、コンテナ収容装置100の構成をより具体的に示した図である。図3に示すように、ハードウェア36、OS30が存在する。OS30として、コンテナ機能を提供可能なOSであればどのようなOSでもよいが、例えばLinux(登録商標)を使用できる。OS30の機能としてドライバ31、コンテナ機能37が含まれる。
FIG. 3 is a diagram more specifically showing the configuration of the
コンテナ機能37は、コンテナの実現のために利用されるOSの機能であり、例えば、Namespaces、cgroups、selinux等がある。
The
管理インタフェース(management interface)34は、コンテナ管理ソフト(Docker等)に相当する。
A
本実施の形態では、コンテナイメージ33は、コンテナテンプレート10に相当する。コンテナイメージ33の内容がコンテナにおける共通領域の内容になるため、図3では、コンテナイメージ33の部分を共通領域と記載している。
In the present embodiment, the
図3の例では、コンテナ1とコンテナ2が起動している例を示している。図3に示すAUFSは、ファイルシステム機能の1つであり、親のファイルシステム(図3の例でコンテナイメージ33)をすべてリードオンリーにして、その上にライタブルなレイヤを重ねてレイヤを通して1つのファイルシステムのように扱うことを可能とする機能である。ただし、AUFSを使用することは一例に過ぎない。
In the example of FIG. 3, an example in which the
図3には、各コンテナ内に作成された共通的なファイルシステムのディレクトリに対して、ユーザ個別のユーザデータを格納した外部のユーザデータ領域35からバインドマウントを行うことが示されている。コンテナ外部のユーザデータ領域35は、コンテナ収容装置100内に備えられていてもよいし、別の装置に備えられていてもよい。このようなバインドマウントにより、ユーザは、外部のユーザデータ領域35を意識することなく、コンテナから各自のデータにアクセスすることができる。
FIG. 3 shows that bind mounting is performed from an external
なお、バインドマウントとは、マウントの一種であり、あるファイルパスを別のディレクトリにバインドしてマウントすることができる機能である。例えば、バインドマウントの命令の引数として「/ABC /XYZ」を指定した場合に、/XYZには、/ABCの中身がバインドされ、/XYZを使用するユーザには、/ABCの中身があたかも/XYZに存在するように見える。 The bind mount is a kind of mount, and is a function that allows a file path to be bound to another directory and mounted. For example, when "/ ABC / XYZ" is specified as an argument of a bind mount command, the contents of / ABC are bound to / XYZ, and the contents of / ABC are as if Looks like it exists in XYZ.
(コンテナの作成について)
図4は、コンテナ作成の概要を示す図である。図4に示すように、運用者からのGUIを介したオーダー(命令)、もしくは、オーダーサーバからのAPIを利用したオーダーに基づいて、管理装置200のオーダー管理部210が、コンテナを収容するサーバ(コンテナ収容装置100)を決定し、決定したコンテナ収容装置100のコンテナ管理部110に対してコンテナ作成を指示する。
(About container creation)
FIG. 4 is a diagram showing an outline of container creation. As shown in FIG. 4, based on an order (command) from an operator or an order using an API from an order server, the
これにより、コンテナ管理部110を構成するプロビジョニングスクリプトが実行され、コンテナテンプレート及びユーザ領域テンプレートを用いることで、コンテナが作成(起動)される。
As a result, the provisioning script constituting the
オーダー管理部210は、コンテナ管理DB(データベース)211を備えている。コンテナ管理DB211には、例えば、アカウント情報テーブル、ホスト情報テーブル、IPリソース情報テーブルが格納されている。アカウント情報テーブルは、例えば、アカウントID、収容ホスト名、IPアドレス、プロビジョニングステータス(Active,Holding)、ドメイン名、契約プラン、オプション契約等の情報を格納する。
The
ホスト情報テーブルは、ホスト名(コンテナ収容装置名)、ホストIPアドレス、空きリソース数、収容可能リソース上限等の情報を格納する。IPリソース情報テーブルは、ホストIPアドレス、ユーザ割り当て用IPアドレス、アカウントID等の情報を格納する。 The host information table stores information such as a host name (container accommodating device name), a host IP address, the number of free resources, an upper limit of accommodable resources, and the like. The IP resource information table stores information such as a host IP address, a user assignment IP address, and an account ID.
オーダー管理部210はオーダーを受け付けると、ホスト情報テーブル、IPリソース情報テーブルから、例えば、リソースの空き状況を考慮して、どのホスト(コンテナ収容装置)にアカウントを収容するかを決定し、決定したコンテナ収容装置100のコンテナ管理部110に、コンテナ作成指示と入力パラメータを与える。
Upon receiving the order, the
図5に、コンテナテンプレートとユーザ領域テンプレートの例を示す。なお、図5は、コンテナテンプレートとユーザ領域テンプレートのそれぞれに含まれるデータの一部を示すものである。図5(a)に示すコンテナテンプレートは、ライブラリ、アプリケーション、インストーラスクリプト等を含む。ライブラリは、OSのモジュール、各種プログラムのモジュール等である。アプリケーションは、認証サーバ、Webサーバ、Mailサーバ、メーリングリストサーバ、DBサーバ、監視サーバ等である。インストーラスクリプトは、提供アプリケーションのインストールパッケージである。 FIG. 5 shows an example of a container template and a user area template. FIG. 5 shows a part of data included in each of the container template and the user area template. The container template shown in FIG. 5A includes a library, an application, an installer script, and the like. The library is an OS module, various program modules, or the like. The application is an authentication server, Web server, Mail server, mailing list server, DB server, monitoring server, or the like. The installer script is an installation package of the provided application.
図5(b)に示すように、ユーザ領域テンプレートは、設定ファイル、データディレクトリ、データファイルを含む。設定ファイルについては、ユーザ毎にコンテナ作成時に、初期設定情報が格納される。データディレクトリは、各種のデータを格納するディレクトリである。また、データファイルには、初期データが格納されている。 As shown in FIG. 5B, the user area template includes a setting file, a data directory, and a data file. As for the setting file, initial setting information is stored when creating a container for each user. The data directory is a directory for storing various data. The data file stores initial data.
図6は、コンテナ作成の命令を受けたコンテナ管理部110の処理手順例を示すフローチャートである。この処理手順は、プロビジョニングスクリプトの内容に相当する。図6を参照してコンテナ管理部110の動作を説明する。
FIG. 6 is a flowchart illustrating an example of a processing procedure of the
コンテナ管理部110は、オーダー管理部210から、コンテナ作成命令の入力パラメータとして、アカウントID、パスワード、ドメイン名、IPアドレス、使用コンテナテンプレートID等を受信している。
The
コンテナ管理部110は、アカウントIDにより、アカウントを作成し(ステップS101)、コンテナを作成する(ステップS102)。ここでは、コンテナテンプレートIDで指定されたコンテナテンプレートに対応するコンテナが作成される。また、ステップS102において、コンテナにおける予め定めた領域に対して、予め定めたユーザデータ領域(例えばアカウントIDにより識別される領域)をバインドマウントする処理も実行される。
The
次に、ユーザ領域テンプレートの展開を行う(ステップS103)。これにより、ユーザが書き換え可能な領域における初期データの格納等がなされる。そして、コンテナの初期設定が行われる(ステップS104)。ここでは、例えば、LDAPエントリ作成、設定ファイル生成等が行われる。そして、コンテナのアクセス設定(ステップS105)、監視設定(ステップS106)、リソース制限設定(ステップS107)が行われる。 Next, the user area template is expanded (step S103). As a result, the initial data is stored in a user-rewritable area. Then, initial setting of the container is performed (step S104). Here, for example, LDAP entry creation, configuration file generation, and the like are performed. Then, container access setting (step S105), monitoring setting (step S106), and resource limit setting (step S107) are performed.
ステップS107のリソース制限設定においては、例えば、1コンテナが利用できるCPUリソース(例:単位時間当たりの割り当て時間)の上限値、メモリ容量の上限値等が設定される。 In the resource limit setting in step S107, for example, an upper limit value of a CPU resource (eg, allocated time per unit time) that can be used by one container, an upper limit value of a memory capacity, and the like are set.
(コンテナのアップデートについて)
本実施の形態では、コンテナ管理部110は、コンテナの更新機能(アップデート機能)を有している。図7を参照してアップデート処理を説明する。なお、アップデートとは、例えば、コンテナを、旧バージョンのものから新バージョンのものに入れ替えることである。また、コンテナのアップデートは、コンテナ収容装置100に収容される複数ユーザの複数コンテナに対して一括で行ってもよいし、個々のユーザ毎に行うこととしてもよい。
(Container update)
In the present embodiment, the
図7(a)は、コンテナの入れ替え前の状態を示す。ここで、例えば運用者からアップデート命令がコンテナ収容装置管理部220に入力されたとする。アップデート命令には、アップデート対象のコンテナを識別する情報(アカウントIDでもよいし、コンテナIDでもよい)、更新後のコンテナに対応するコンテナテンプレートを識別する情報(コンテナテンプレートID)が含まれる。なお、更新後のコンテナに対応するコンテナテンプレート(新コンテナテンプレート)は、予めコンテナ収容装置100に格納されていてもよいし、更新時に、テンプレート格納部230から取得することとしてもよい。
FIG. 7A shows a state before the container is replaced. Here, for example, it is assumed that an update command is input from the operator to the container storage
命令を受けたコンテナ収容装置管理部220は、対象のコンテナ収容装置100のコンテナ管理部110に対して、新コンテナテンプレートを指定したアップデート命令を送信する。
Upon receiving the command, the container storage
図7(b)に示すように、アップデート命令を受信したコンテナ管理部110は、現在のコンテナを削除(停止)し、コンテナテンプレートの更新を行う。コンテナテンプレートの更新とは、新コンテナテンプレートをダウンロードすることであってもよいし、コンテナ収容装置100に予め格納されている新コンテナテンプレートを読み出すことであってもよい。そして、図7(c)に示すように、新コンテナテンプレートによる新たなコンテナを作成する。
As illustrated in FIG. 7B, the
図8は、アップデート命令を受信したコンテナ管理部110の動作を示すフローチャートである。
FIG. 8 is a flowchart showing the operation of the
図8に示すように、まず、旧コンテナの停止を行う(ステップS201)。そして、新コンテナテンプレートを用いて、新コンテナを起動する(ステップS202)。前述したコンテナ作成の場合と同様に、バインドマウントの設定も行われる。また、前述したコンテナ作成の場合と同様に、コンテナのアクセス設定(ステップS203)、監視設定(ステップS204)、リソース制限設定(ステップS205)が行われる。 As shown in FIG. 8, first, the old container is stopped (step S201). Then, the new container is activated using the new container template (step S202). Similar to the container creation described above, the bind mount is also set. Similarly to the container creation described above, container access settings (step S203), monitoring settings (step S204), and resource limit settings (step S205) are performed.
上記のように、コンテナ(つまり共通領域)を別のテンプレートのイメージに入れ替えてもユーザのデータやカスタマイズされた設定は保持される。そのため、カスタマイズ性とソフトウェアのアップデート作業が容易になる。 As described above, user data and customized settings are retained even if the container (that is, the common area) is replaced with an image of another template. This facilitates customization and software update work.
(ユーザ領域テンプレートの配付処理例)
図9は、ユーザ領域テンプレートの配付処理例を示す図である。テンプレート格納部230には、各バージョンのコンテナテンプレートと各バージョンのユーザ領域テンプレートが格納されている。図9の例では、テンプレート格納部230から、例えば、新バージョンのユーザ領域テンプレートが、コンテナ収容装置100(A)に配付され、コンテナ収容装置100(A)において当該ユーザ領域テンプレートが適用される。また、ユーザ領域テンプレートにより設定された設定ファイルに対し、運用者からユーザ個別の設定ファイルがコピーされ、ユーザ個別の設定が行われることが示されている。
(User area template distribution processing example)
FIG. 9 is a diagram illustrating an example of a user area template distribution process. The
また、図9の例では、一例として、テンプレート格納部230から、コンテナ収容装置管理部220を経由して、新たなコンテナ収容装置100(B)にユーザ領域テンプレートが配付されることが示されている。
In the example of FIG. 9, as an example, it is shown that the user area template is distributed from the
(ユーザデータ領域のストレージを使い分ける例)
コンテナ収容装置100における監視制御部130は、ユーザデータの読み書きの頻度(例:単位時間当たりの読み書き回数)、読み書きされるデータ量(例:単位時間当たりのデータ量)等をファイル毎(ディレクトリ毎でもよい)に監視する。なお、「読み書き」とは、「読み」(read)のみでもよいし、「書き」(write)のみでもよいし、「読み」と「書き」の合計であってもよい。また、監視方法は特定の方法に限られない。例えば、コンテナにおいて設定されているファイルシステムのファイル/ディレクトリ(つまり、ユーザから見えるファイル/ディレクトリ)を監視してもよいし、バインドマウントの元の領域(外部領域)のファイル/ディレクトリを監視してもよい。
(Example of using different user data storage)
The
監視制御部130は、頻繁に読み書きのあるデータ(例:所定の閾値よりも高い読み書き頻度のファイル/ディレクトリ)をホットデータとし、あまりアクセスのないデータ(例:所定の閾値以下の読み書き頻度のファイル/ディレクトリ)をコールドデータとして、バインドマウントを行う対象ストレージを使い分ける。これにより、より高いI/Oパフォーマンスが要求されるデータに対してはSSDなどの高速なストレージを用い、ほとんど読み書きのないコールドデータには、高容量でコストの安いストレージを用いるといった要求I/Oに応じた使い分けが可能になる。つまり、ストレージリソースの制御を柔軟に行うことができる。
The
図10は、ストレージの使い分けを行っている例を示す図である。図10の例では、コンテナにおいて/home/user/mailのディレクトリにあるデータの読み書き頻度が高いため、/home/user/mailに対しては、高速なストレージであるストレージAのユーザデータ領域がバインドマウントされている。一方、/home/archive/filesのディレクトリにあるデータの読み書き頻度は低いため、/home/archive/filesに対しては、低速なストレージであるストレージBのユーザデータ領域がバインドマウントされている。監視制御部130は、バインドマウントの切り替えを動的に行うことが可能である。
FIG. 10 is a diagram illustrating an example in which storage is properly used. In the example of FIG. 10, since the data in the / home / user / mail directory is read and written frequently in the container, the user data area of the storage A, which is a high-speed storage, binds to / home / user / mail. Mounted. On the other hand, since the read / write frequency of data in the / home / archive / files directory is low, the user data area of storage B, which is a low-speed storage, is bind-mounted to / home / archive / files. The
(外部のサービスとの連携の例)
本実施の形態におけるコンテナにより、外部のサービスを利用することが可能である。図11はその手順を説明するための図である。
(Example of cooperation with external services)
An external service can be used by the container in this embodiment. FIG. 11 is a diagram for explaining the procedure.
図11に示すように、例えば、ユーザがSaaSなどの外部のクラウドのアプリケーションを契約する(ステップS301)。 As shown in FIG. 11, for example, the user contracts an external cloud application such as SaaS (step S301).
そして、ユーザあるいは運用者が、コンテナのユーザ領域(ユーザデータの領域)に対して、提供されるアプリケーションの領域(外部アプリケーションが提供されるサーバの領域)をバインドマウントする(ステップS302)。これにより、ユーザは外部サービスを意識することなく、あたかも自身のコンテナ内にアプリケーションがインストールされているかのように外部サービスを利用することができる(ステップS303)。 Then, the user or the operator bind-mounts the application area to be provided (server area to which the external application is provided) to the container user area (user data area) (step S302). As a result, the user can use the external service as if the application is installed in its own container without being aware of the external service (step S303).
また、コンテナ管理部110を構成するプロビジョニングスクリプトに、外部サービスからのバインドマウント処理を記述しておくことで、外部のサービスとの連携がなされた状態でコンテナを起動することができる。
In addition, by describing the bind mount processing from the external service in the provisioning script that configures the
(実施の形態の効果)
ユーザ間でプロセスを共用する従来技術においては、収容されている一部のユーザが大量のリソースを占有した場合、他の利用者がサービスを利用できないといった影響を受けたり、アカウントが乗っ取られる等のアブユースがあった場合に、ユーザ全体のレスポンスが低下するといった影響が発生する。また、ソフトウェアに権限昇格などの深刻なバグがあった場合に、セキュリティ面での懸念もある。
(Effect of embodiment)
In the conventional technology that shares processes among users, when some of the accommodated users occupy a large amount of resources, other users may not be able to use the service, and accounts may be hijacked. When there is an abuse, there is an effect that the response of the entire user is lowered. There is also a security concern if the software has serious bugs such as privilege escalation.
これらに対し、本実施の形態の技術によれば、サーバアプリケーション、ライブラリモジュール、共通設定等のテンプレートに基づいてコンテナを作成し、収容ユーザのプロセス空間の分離を行うこととしたので、リソース制御についてコンテナ単位で制御できるようになる。また、プロセス空間はコンテナ毎に独立するため、セキュリティの課題について、個々のプロセスが侵食された場合でも影響範囲をコンテナ内に留めることができる。 On the other hand, according to the technology of the present embodiment, a container is created based on a template such as a server application, a library module, a common setting, etc., and the process space of the accommodating user is separated. It becomes possible to control by container unit. In addition, since the process space is independent for each container, it is possible to keep the scope of influence within the container even when individual processes are eroded for security issues.
また、ユーザ間でプロセスを共用する従来技術においては、全ユーザで共通の設定を用いらなければならない。これは、ユーザの利用ユースケースを限定することになり、カスタマイズ性に欠ける。また、従来技術の中には、クラウドを用いて仮想サーバを立ち上げ、ホスティング事業者が管理することで、共用ホスティングと同様のユーザの利便性を実現するサービスがあるが、ソフトウェアアップデートをサーバ毎に個別に実施する必要があるため、作業量の増加により運用コストがプロセス共有型のホスティングよりも高くなるといった課題がある。 Moreover, in the prior art in which processes are shared among users, settings common to all users must be used. This limits the user use cases and lacks customization. In addition, among the conventional technologies, there is a service that realizes the same user convenience as shared hosting by setting up a virtual server using the cloud and managing it by a hosting company. Therefore, there is a problem that the operation cost becomes higher than the process sharing type hosting due to the increase in the amount of work.
これらの課題に対し、本実施の形態の技術によれば、ユーザが作成するデータやカスタマイズ可能な設定ファイルをコンテナとは別のストレージにデータ領域として確保し、データ領域をバインドマウントすることで、ユーザは共通領域とデータ領域の種別の境界を特に意識することなく透過的にファイルシステムを扱うことができる。これにより、共通領域を別のテンプレートに入れ替えてもユーザのデータやカスタマイズされた設定は保持されるため、カスタマイズ性とソフトウェアのアップデート作業が容易になり運用上の課題を解決することができる。 In response to these problems, according to the technology of the present embodiment, by securing data created by the user and a customizable setting file as a data area in a storage separate from the container, the data area is bind-mounted, The user can handle the file system transparently without being particularly aware of the boundary between the types of the common area and the data area. As a result, even if the common area is replaced with another template, user data and customized settings are retained, so customization and software update work are facilitated and operational problems can be solved.
すなわち、本実施の形態の技術により、ユーザごとにプロセスを分離することでユーザのリソース制御の独立性を担保することができる。これにより、ユーザごとの乗っ取り検知や、制限値を超えて利用するユーザのプロセスを落とす、権限の剥奪などの対処が個別に可能になる。 That is, the independence of the user's resource control can be ensured by separating the process for each user by the technique of the present embodiment. As a result, it is possible to individually deal with hijacking detection for each user, dropping a user process that exceeds the limit value, and depriving of authority.
また、ユーザデータ領域に設定ファイルを配置し、インクルードすることでユーザ個別に設定やオプションのカスタマイズが可能となる。また、ユーザ個別のプロセスがコンテナ毎に起動するが、ユーザが利用していない間は、プロセスがアイドル状態となるため、ボトルネックであるディスクIOやCPUリソースを消費しないため、リソースを効率よく利用することが可能になる。 In addition, by setting and including a setting file in the user data area, settings and options can be customized for each user. In addition, each user's process is started for each container, but since the process is idle while the user is not using it, the disk IO and CPU resources that are the bottleneck are not consumed, so resources are used efficiently. It becomes possible to do.
また、本実施の形態の技術により、複数バージョンのアプリケーションを提供し、ユーザが利用したいバージョンを選択できる。実行ファイルは共通領域(例:コンテナテンプレート(イメージ)の実体が格納される領域)にインストールされるが、設定ファイルはユーザ領域(例:バインドマウントするユーザデータ領域)に配置することで、設定をオーバーライドすることができる。つまり、ユーザデータ領域の設定を反映させることができる。 In addition, with the technology of the present embodiment, a plurality of versions of an application can be provided, and the version that the user wants to use can be selected. Executable files are installed in the common area (example: area where the entity of the container template (image) is stored), but the configuration file is placed in the user area (example: user data area to be bind-mounted). Can be overridden. That is, the setting of the user data area can be reflected.
また、ユーザデータ領域と共通領域を分け、共通領域のみを入れ替えることで、ソフトウェアのアップデートを容易に行うことができる。すなわち、ユーザデータ領域はファイルシステムに対して透過的に永続化され、共通領域の入替え前後で変化しない。また、共通領域はリリースごとにテンプレート化することでファイル差分やバージョン管理が可能である。 Also, the software update can be easily performed by dividing the user data area and the common area and replacing only the common area. That is, the user data area is perpetuated transparently to the file system and does not change before and after the replacement of the common area. Also, file differences and version management can be performed by creating a common area as a template for each release.
(実施の形態のまとめ)
以上、説明したように、本実施の形態によれば、特定のユーザのプロセスを他のユーザのプロセスと隔離して動作させる仮想的な環境であるコンテナを収容するコンテナ収容装置であって、前記特定のユーザのコンテナの作成指示を受信した場合に、各ユーザのコンテナ作成において共通に使用されるモデルデータを用いて、前記特定のユーザのコンテナを作成するコンテナ管理手段を備え、前記コンテナ管理手段は、前記コンテナの外部にある外部領域を、前記コンテナにおいて前記特定のユーザにより認識されるデータ領域に接続し、データが前記外部領域に格納されるようにすることを特徴とするコンテナ収容装置が提供される。
(Summary of embodiment)
As described above, according to the present embodiment, a container accommodation apparatus that accommodates a container that is a virtual environment that operates a specific user's process in isolation from other users' processes, Container management means for creating a container for the specific user by using model data commonly used in container creation for each user when receiving a container creation instruction for the specific user; The container storage device is characterized in that an external area outside the container is connected to a data area recognized by the specific user in the container so that data is stored in the external area. Provided.
前記コンテナ管理手段は、前記特定のユーザのコンテナを別のコンテナに更新することを指示する命令を受信した場合に、前記特定のユーザのコンテナを停止し、前記別のコンテナに対応するモデルデータを用いて、当該別のコンテナを作成することとしてもよい。 When the container management unit receives an instruction to update the container of the specific user to another container, the container management unit stops the container of the specific user, and stores model data corresponding to the other container. It is good also as making the said another container using.
また、前記コンテナ収容装置は、前記データ領域に対してデータが読み書きされる頻度又はデータ量を監視し、当該頻度又はデータ量に基づいて、当該データ領域に接続させる外部領域を決定する監視制御手段を備えることとしてもよい。 The container storage device monitors the frequency or amount of data read / written from / to the data area, and based on the frequency or amount of data, monitors and controls for determining an external area to be connected to the data area It is good also as providing.
前記監視制御手段は、前記頻度又はデータ量が所定の閾値よりも大きい場合に、前記データ領域に接続させる外部領域を高速なストレージにおける領域として決定し、前記頻度又はデータ量が所定の閾値以下である場合に、前記データ領域に接続させる外部領域を、前記高速なストレージよりも低速なストレージにおける領域として決定することとしてもよい。 The monitoring control means determines an external area to be connected to the data area as an area in a high-speed storage when the frequency or data amount is greater than a predetermined threshold, and the frequency or data amount is equal to or less than the predetermined threshold. In some cases, the external area to be connected to the data area may be determined as an area in a low-speed storage rather than the high-speed storage.
また、前記外部領域として、所定のアプリケーションサービスを提供するサーバ内の領域を使用してもよい。 Further, as the external area, an area in a server that provides a predetermined application service may be used.
また、コンテナ収容装置が、複数コンテナ間で平等にリソースを使用できるようにするとともに、全体のリソースに余裕がある場合でも、1コンテナが使用するリソースを所定の上限値に制限するリソース制御手段備えてもよい。 In addition, the container accommodating device can use resources evenly among a plurality of containers, and includes resource control means for limiting resources used by one container to a predetermined upper limit value even when there is a surplus in overall resources. May be.
本発明は、上記の実施の形態に限定されることなく、特許請求の範囲内において、種々変更・応用が可能である。 The present invention is not limited to the above-described embodiments, and various modifications and applications are possible within the scope of the claims.
100 コンテナ収容装置
110 コンテナ管理部
120 テンプレート格納部
130 監視制御部
200 管理装置
210 オーダー管理部
220 コンテナ収容装置管理部
230 テンプレート格納部
DESCRIPTION OF
Claims (8)
前記特定のユーザのコンテナの作成指示を受信した場合に、各ユーザのコンテナ作成において共通に使用されるモデルデータを用いて、前記特定のユーザのコンテナを作成するコンテナ管理手段を備え、
前記コンテナ管理手段は、前記コンテナの外部にある外部領域を、前記コンテナにおいて前記特定のユーザにより認識されるデータ領域に接続し、データが前記外部領域に格納されるようにする
ことを特徴とするコンテナ収容装置。 A container accommodating device that accommodates a container that is a virtual environment for operating a specific user process in isolation from other user processes,
A container management means for creating a container for the specific user by using model data commonly used in creating a container for each user when receiving the container creation instruction for the specific user;
The container management means connects an external area outside the container to a data area recognized by the specific user in the container so that data is stored in the external area. Container storage device.
ことを特徴とする請求項1に記載のコンテナ収容装置。 When the container management unit receives an instruction to update the container of the specific user to another container, the container management unit stops the container of the specific user, and stores model data corresponding to the other container. The container container according to claim 1, wherein the container is created using the container.
を更に備えることを特徴とする請求項1又は2に記載のコンテナ収容装置。 It further comprises monitoring control means for monitoring the frequency or amount of data that is read from or written to the data region, and determining an external region to be connected to the data region based on the frequency or data amount. The container accommodating device according to claim 1 or 2.
ことを特徴とする請求項3に記載のコンテナ収容装置。 The monitoring control means determines an external area to be connected to the data area as an area in a high-speed storage when the frequency or data amount is greater than a predetermined threshold, and the frequency or data amount is equal to or less than the predetermined threshold. 4. The container storage device according to claim 3, wherein in some cases, an external area to be connected to the data area is determined as an area in a low-speed storage than the high-speed storage.
ことを特徴とする請求項1ないし4のうちいずれか1項に記載のコンテナ収容装置。 The container storage device according to any one of claims 1 to 4, wherein the external area is an area in a server that provides a predetermined application service.
を更に備えることを特徴とする請求項1ないし5のうちいずれか1項に記載のコンテナ収容装置。 The resource control means is further provided for enabling the resources to be used equally among a plurality of containers and for limiting the resources used by one container to a predetermined upper limit value even when the entire resources are sufficient. The container accommodating device according to any one of claims 1 to 5.
前記特定のユーザのコンテナの作成指示を受信した場合に、各ユーザのコンテナ作成において共通に使用されるモデルデータを用いて、前記特定のユーザのコンテナを作成するコンテナ作成ステップを備え、
前記コンテナ作成ステップにおいて、前記コンテナ収容装置は、前記コンテナの外部にある外部領域を、前記コンテナにおいて前記特定のユーザにより認識されるデータ領域に接続し、データが前記外部領域に格納されるようにする
ことを特徴とするコンテナ作成方法。 A container creation method executed by a container accommodation device that accommodates a container that is a virtual environment for operating a specific user process isolated from other user processes,
A container creation step of creating a container for the specific user by using model data commonly used in creating a container for each user when the container creation instruction for the specific user is received;
In the container creation step, the container receiving device connects an external area outside the container to a data area recognized by the specific user in the container, so that data is stored in the external area. A container creation method characterized by
Priority Applications (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
JP2015247897A JP6749094B2 (en) | 2015-12-18 | 2015-12-18 | Container accommodation device, container creation method, and program |
Applications Claiming Priority (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
JP2015247897A JP6749094B2 (en) | 2015-12-18 | 2015-12-18 | Container accommodation device, container creation method, and program |
Publications (2)
Publication Number | Publication Date |
---|---|
JP2017111761A true JP2017111761A (en) | 2017-06-22 |
JP6749094B2 JP6749094B2 (en) | 2020-09-02 |
Family
ID=59081378
Family Applications (1)
Application Number | Title | Priority Date | Filing Date |
---|---|---|---|
JP2015247897A Active JP6749094B2 (en) | 2015-12-18 | 2015-12-18 | Container accommodation device, container creation method, and program |
Country Status (1)
Country | Link |
---|---|
JP (1) | JP6749094B2 (en) |
Cited By (13)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
JP2019066985A (en) * | 2017-09-29 | 2019-04-25 | 株式会社日立製作所 | Container management apparatus, container management method, and container management program |
JP2019133424A (en) * | 2018-01-31 | 2019-08-08 | 沖電気工業株式会社 | Communication system, communication method, management device, management program, management method, information processing device, information processing program, and information processing method |
WO2019181860A1 (en) * | 2018-03-23 | 2019-09-26 | 日本電気株式会社 | Application execution device, application execution method, and recording medium |
CN110430276A (en) * | 2019-08-12 | 2019-11-08 | 中国南方电网有限责任公司 | Communication control method, device, communication control unit and storage medium based on docker |
JP2020095547A (en) * | 2018-12-13 | 2020-06-18 | 株式会社日立製作所 | Container providing support system and container providing support method |
CN111492347A (en) * | 2018-01-30 | 2020-08-04 | 华睿泰科技有限责任公司 | System and method for updating containers |
JP2020527798A (en) * | 2017-07-19 | 2020-09-10 | インターナショナル・ビジネス・マシーンズ・コーポレーションInternational Business Machines Corporation | Runtime generation that recognizes compliance based on application patterns and risk assessments |
CN112068975A (en) * | 2020-08-31 | 2020-12-11 | 北京五八信息技术有限公司 | Information processing method and device |
JP2021535467A (en) * | 2018-08-30 | 2021-12-16 | インターナショナル・ビジネス・マシーンズ・コーポレーションInternational Business Machines Corporation | A secure shell container that facilitates inspection of virtual containers |
CN114510152A (en) * | 2022-04-18 | 2022-05-17 | 梯度云科技(北京)有限公司 | Method and device for constructing meta-universe system based on container |
KR102484914B1 (en) * | 2021-11-23 | 2023-01-06 | (주)글루시스 | Method for storing data in virtual environment |
JP7274057B1 (en) | 2022-04-13 | 2023-05-15 | 三菱電機株式会社 | Deduplication system, server device, deduplication method, and deduplication program |
JP7434342B2 (en) | 2018-10-22 | 2024-02-20 | コーニンクレッカ フィリップス エヌ ヴェ | Container builder for personalized network services |
Citations (5)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
JPH11252486A (en) * | 1998-02-27 | 1999-09-17 | Mitsubishi Electric Corp | Video server system |
JP2004171224A (en) * | 2002-11-19 | 2004-06-17 | Nec Corp | Contract storage proxy serving system and method |
JP2011113267A (en) * | 2009-11-26 | 2011-06-09 | Nomura Research Institute Ltd | Data center configuration management system |
JP2013543171A (en) * | 2010-09-21 | 2013-11-28 | アマゾン テクノロジーズ インコーポレーテッド | Method and system for dynamically managing demands on computing power |
WO2015049789A1 (en) * | 2013-10-04 | 2015-04-09 | 株式会社日立製作所 | Resource management system and resource management method |
-
2015
- 2015-12-18 JP JP2015247897A patent/JP6749094B2/en active Active
Patent Citations (5)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
JPH11252486A (en) * | 1998-02-27 | 1999-09-17 | Mitsubishi Electric Corp | Video server system |
JP2004171224A (en) * | 2002-11-19 | 2004-06-17 | Nec Corp | Contract storage proxy serving system and method |
JP2011113267A (en) * | 2009-11-26 | 2011-06-09 | Nomura Research Institute Ltd | Data center configuration management system |
JP2013543171A (en) * | 2010-09-21 | 2013-11-28 | アマゾン テクノロジーズ インコーポレーテッド | Method and system for dynamically managing demands on computing power |
WO2015049789A1 (en) * | 2013-10-04 | 2015-04-09 | 株式会社日立製作所 | Resource management system and resource management method |
Non-Patent Citations (1)
Title |
---|
阿佐 志保, プログラマのためのDOCKER教科書 初版, vol. 第1版, JPN6019025469, 19 November 2015 (2015-11-19), pages 42 - 43, ISSN: 0004189377 * |
Cited By (25)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
JP2020527798A (en) * | 2017-07-19 | 2020-09-10 | インターナショナル・ビジネス・マシーンズ・コーポレーションInternational Business Machines Corporation | Runtime generation that recognizes compliance based on application patterns and risk assessments |
US10514947B2 (en) | 2017-09-29 | 2019-12-24 | Hitachi, Ltd. | Container management apparatus, container management method, and nonvolatile recording medium |
JP2019066985A (en) * | 2017-09-29 | 2019-04-25 | 株式会社日立製作所 | Container management apparatus, container management method, and container management program |
JP2021509200A (en) * | 2018-01-30 | 2021-03-18 | ベリタス テクノロジーズ エルエルシー | Systems and methods for updating containers |
CN111492347B (en) * | 2018-01-30 | 2023-11-24 | 华睿泰科技有限责任公司 | System and method for updating a container |
CN111492347A (en) * | 2018-01-30 | 2020-08-04 | 华睿泰科技有限责任公司 | System and method for updating containers |
JP2019133424A (en) * | 2018-01-31 | 2019-08-08 | 沖電気工業株式会社 | Communication system, communication method, management device, management program, management method, information processing device, information processing program, and information processing method |
JP7151087B2 (en) | 2018-01-31 | 2022-10-12 | 沖電気工業株式会社 | Communication system, communication method, management device, management program, management method, information processing device, information processing program, and information processing method |
WO2019181860A1 (en) * | 2018-03-23 | 2019-09-26 | 日本電気株式会社 | Application execution device, application execution method, and recording medium |
US11226808B2 (en) | 2018-03-23 | 2022-01-18 | Nec Corporation | Application execution device, application execution method, and recording medium |
JPWO2019181860A1 (en) * | 2018-03-23 | 2021-02-04 | 日本電気株式会社 | Application execution device, application execution method, and program |
JP7228324B2 (en) | 2018-08-30 | 2023-02-24 | インターナショナル・ビジネス・マシーンズ・コーポレーション | A secure shell container that facilitates inspection of virtual containers |
US11659003B2 (en) | 2018-08-30 | 2023-05-23 | International Business Machines Corporation | Safe shell container facilitating inspection of a virtual container |
JP2021535467A (en) * | 2018-08-30 | 2021-12-16 | インターナショナル・ビジネス・マシーンズ・コーポレーションInternational Business Machines Corporation | A secure shell container that facilitates inspection of virtual containers |
US11914753B2 (en) | 2018-10-22 | 2024-02-27 | Koninklijke Philips N.V. | Container builder for individualized network services |
JP7434342B2 (en) | 2018-10-22 | 2024-02-20 | コーニンクレッカ フィリップス エヌ ヴェ | Container builder for personalized network services |
JP2020095547A (en) * | 2018-12-13 | 2020-06-18 | 株式会社日立製作所 | Container providing support system and container providing support method |
CN110430276A (en) * | 2019-08-12 | 2019-11-08 | 中国南方电网有限责任公司 | Communication control method, device, communication control unit and storage medium based on docker |
CN110430276B (en) * | 2019-08-12 | 2020-06-23 | 中国南方电网有限责任公司 | Communication control method and device based on docker, communication control equipment and storage medium |
CN112068975B (en) * | 2020-08-31 | 2023-07-21 | 北京五八信息技术有限公司 | Information processing method and device |
CN112068975A (en) * | 2020-08-31 | 2020-12-11 | 北京五八信息技术有限公司 | Information processing method and device |
KR102484914B1 (en) * | 2021-11-23 | 2023-01-06 | (주)글루시스 | Method for storing data in virtual environment |
JP7274057B1 (en) | 2022-04-13 | 2023-05-15 | 三菱電機株式会社 | Deduplication system, server device, deduplication method, and deduplication program |
CN114510152B (en) * | 2022-04-18 | 2022-07-26 | 梯度云科技(北京)有限公司 | Method and device for constructing meta-universe system based on container |
CN114510152A (en) * | 2022-04-18 | 2022-05-17 | 梯度云科技(北京)有限公司 | Method and device for constructing meta-universe system based on container |
Also Published As
Publication number | Publication date |
---|---|
JP6749094B2 (en) | 2020-09-02 |
Similar Documents
Publication | Publication Date | Title |
---|---|---|
JP6749094B2 (en) | Container accommodation device, container creation method, and program | |
US9760395B2 (en) | Monitoring hypervisor and provisioned instances of hosted virtual machines using monitoring templates | |
US10761826B2 (en) | Dynamic reconstruction of application state upon application re-launch | |
EP3857364B1 (en) | Multi-tenant support on virtual machines in cloud computing networks | |
US10659523B1 (en) | Isolating compute clusters created for a customer | |
JP5393515B2 (en) | Server image migration | |
US20160132214A1 (en) | Application delivery agents on virtual desktop instances | |
US11520919B2 (en) | Sharing of data among containers running on virtualized operating systems | |
US8463882B2 (en) | Server cloning in a computing-on-demand system | |
US11068136B1 (en) | Application fulfillment platform with automated license management mechanisms | |
US11363117B2 (en) | Software-specific auto scaling | |
US20170109190A1 (en) | Providing a custom virtual computing system | |
KR20160025606A (en) | Data processing | |
US20140067864A1 (en) | File access for applications deployed in a cloud environment | |
US10203976B2 (en) | Virtual appliance management in a virtualized computing environment based on operational modes associated with virtual appliance | |
US20140280914A1 (en) | System and method for creating, deploying, and administering distinct virtual computer networks | |
US11287982B2 (en) | Associating data management policies to portions of data using connection information | |
US10929166B2 (en) | Enhanced data storage of virtual nodes in a data processing environment | |
Sehgal | Introduction to openstack | |
JP5100883B2 (en) | Computer and computer control method | |
KR102035094B1 (en) | Method for automatically provisioning virtual desktop under virtual desktop infra, and virtualization system using the same | |
US20110060815A1 (en) | Automatic attachment of server hosts to storage hostgroups in distributed environment | |
Zacker | Exam Ref 70-410 Installing and Configuring Windows Server 2012 R2 (MCSA) | |
Barrett et al. | Constructing the z/VM Environment | |
Missbach et al. | How Private and Public Clouds Work |
Legal Events
Date | Code | Title | Description |
---|---|---|---|
A621 | Written request for application examination |
Free format text: JAPANESE INTERMEDIATE CODE: A621 Effective date: 20180725 |
|
A977 | Report on retrieval |
Free format text: JAPANESE INTERMEDIATE CODE: A971007 Effective date: 20190522 |
|
A131 | Notification of reasons for refusal |
Free format text: JAPANESE INTERMEDIATE CODE: A131 Effective date: 20190709 |
|
A521 | Request for written amendment filed |
Free format text: JAPANESE INTERMEDIATE CODE: A523 Effective date: 20190909 |
|
A02 | Decision of refusal |
Free format text: JAPANESE INTERMEDIATE CODE: A02 Effective date: 20200114 |
|
A521 | Request for written amendment filed |
Free format text: JAPANESE INTERMEDIATE CODE: A523 Effective date: 20200414 |
|
A911 | Transfer to examiner for re-examination before appeal (zenchi) |
Free format text: JAPANESE INTERMEDIATE CODE: A911 Effective date: 20200423 |
|
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: 20200804 |
|
A61 | First payment of annual fees (during grant procedure) |
Free format text: JAPANESE INTERMEDIATE CODE: A61 Effective date: 20200811 |
|
R150 | Certificate of patent or registration of utility model |
Ref document number: 6749094 Country of ref document: JP Free format text: JAPANESE INTERMEDIATE CODE: R150 |
|
R250 | Receipt of annual fees |
Free format text: JAPANESE INTERMEDIATE CODE: R250 |
|
R250 | Receipt of annual fees |
Free format text: JAPANESE INTERMEDIATE CODE: R250 |