JP6958726B2 - アプリケーション実行装置、アプリケーション実行方法、およびプログラム - Google Patents
アプリケーション実行装置、アプリケーション実行方法、およびプログラム Download PDFInfo
- Publication number
- JP6958726B2 JP6958726B2 JP2020507792A JP2020507792A JP6958726B2 JP 6958726 B2 JP6958726 B2 JP 6958726B2 JP 2020507792 A JP2020507792 A JP 2020507792A JP 2020507792 A JP2020507792 A JP 2020507792A JP 6958726 B2 JP6958726 B2 JP 6958726B2
- Authority
- JP
- Japan
- Prior art keywords
- container
- definition file
- update
- application execution
- build
- Prior art date
- Legal status (The legal status is an assumption and is not a legal conclusion. Google has not performed a legal analysis and makes no representation as to the accuracy of the status listed.)
- Active
Links
- 238000000034 method Methods 0.000 title claims description 33
- 238000001514 detection method Methods 0.000 claims description 20
- 230000008569 process Effects 0.000 claims description 19
- 238000005516 engineering process Methods 0.000 claims description 16
- 230000008859 change Effects 0.000 claims description 13
- 238000012545 processing Methods 0.000 claims description 13
- 238000007726 management method Methods 0.000 description 26
- 238000010586 diagram Methods 0.000 description 17
- 238000011161 development Methods 0.000 description 9
- 238000013500 data storage Methods 0.000 description 6
- 230000015654 memory Effects 0.000 description 6
- 238000004458 analytical method Methods 0.000 description 4
- 238000005259 measurement Methods 0.000 description 4
- 238000004590 computer program Methods 0.000 description 3
- 230000000694 effects Effects 0.000 description 3
- 238000012423 maintenance Methods 0.000 description 3
- 238000004891 communication Methods 0.000 description 1
- 238000012217 deletion Methods 0.000 description 1
- 230000037430 deletion Effects 0.000 description 1
- 230000010354 integration Effects 0.000 description 1
- 238000004519 manufacturing process Methods 0.000 description 1
- 230000007246 mechanism Effects 0.000 description 1
- 230000003287 optical effect Effects 0.000 description 1
- 230000008520 organization Effects 0.000 description 1
- 238000005192 partition Methods 0.000 description 1
- 230000004044 response Effects 0.000 description 1
- 239000004065 semiconductor Substances 0.000 description 1
Images
Classifications
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR COUNTING
- G06F—ELECTRIC DIGITAL DATA PROCESSING
- G06F8/00—Arrangements for software engineering
- G06F8/60—Software deployment
- G06F8/65—Updates
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR COUNTING
- G06F—ELECTRIC DIGITAL DATA PROCESSING
- G06F9/00—Arrangements for program control, e.g. control units
- G06F9/06—Arrangements for program control, e.g. control units using stored programs, i.e. using an internal store of processing equipment to receive or retain programs
- G06F9/44—Arrangements for executing specific programs
- G06F9/455—Emulation; Interpretation; Software simulation, e.g. virtualisation or emulation of application or operating system execution engines
- G06F9/45533—Hypervisors; Virtual machine monitors
- G06F9/45558—Hypervisor-specific management and integration aspects
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR COUNTING
- G06F—ELECTRIC DIGITAL DATA PROCESSING
- G06F9/00—Arrangements for program control, e.g. control units
- G06F9/06—Arrangements for program control, e.g. control units using stored programs, i.e. using an internal store of processing equipment to receive or retain programs
- G06F9/44—Arrangements for executing specific programs
- G06F9/455—Emulation; Interpretation; Software simulation, e.g. virtualisation or emulation of application or operating system execution engines
- G06F9/45533—Hypervisors; Virtual machine monitors
- G06F9/45558—Hypervisor-specific management and integration aspects
- G06F2009/45575—Starting, stopping, suspending or resuming virtual machine instances
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR COUNTING
- G06F—ELECTRIC DIGITAL DATA PROCESSING
- G06F9/00—Arrangements for program control, e.g. control units
- G06F9/06—Arrangements for program control, e.g. control units using stored programs, i.e. using an internal store of processing equipment to receive or retain programs
- G06F9/44—Arrangements for executing specific programs
- G06F9/455—Emulation; Interpretation; Software simulation, e.g. virtualisation or emulation of application or operating system execution engines
- G06F9/45533—Hypervisors; Virtual machine monitors
- G06F9/45558—Hypervisor-specific management and integration aspects
- G06F2009/45595—Network integration; Enabling network access in virtual machine instances
Landscapes
- Engineering & Computer Science (AREA)
- Software Systems (AREA)
- Theoretical Computer Science (AREA)
- General Engineering & Computer Science (AREA)
- Physics & Mathematics (AREA)
- General Physics & Mathematics (AREA)
- Computer Security & Cryptography (AREA)
- Stored Programmes (AREA)
Description
図1は、本発明の第1の実施形態に係るアプリケーション実行装置500の構成例を示すブロック図である。
[第2の実施形態]
(構成の説明)
図3は、本発明の第2の実施形態に係る業務システム100の構成例を示すブロック図である。業務システム100は、アプリケーション実行装置1と、データストレージ200と、を備える。
(動作の説明)
以下、本実施形態の業務システム100におけるデプロイ環境の更新動作について説明する。
(効果の説明)
以上説明した第2の実施形態によれば、コンテナへのアプリケーションの反映に必要なコンテナ定義ファイルの作成や更新の度に発生する、ビルドからコンテナへのデプロイまでの作業のすべてはアプリケーション実行装置1にて自動的に実行される。従って、更新に費やされる時間の増大を回避するために、業務システムの運用者自身によって定期的に実行されるメンテナンス作業を不要とすることができる。
[第3の実施形態]
図11は、本発明の第3の実施形態に係る業務システム550の構成例を示すブロック図である。業務システム550は、マスタとして動作するマスタ側アプリケーション実行装置560と、スレーブとして動作するスレーブ側アプリケーション実行装置570と、を備える。
[第4の実施形態]
図12は、本発明の第4の実施形態に係るアプリケーション実行装置600の構成例を示すブロック図であり、詳細には、図1に示すアプリケーション実行装置500、または図3に示すアプリケーション実行装置1を、コンピュータによって実現したアプリケーション実行装置600のブロック図である。
10 更新検出部
20 コンテナイメージ生成部
21 ビルド実行部
22 ビルド時間計測部
23 コンテナ定義ファイル解析部
24 コンテナ定義ファイル書替部
25 コンテナイメージ書替部
30 コンテナイメージ管理部
40 コンテナ管理部
41 リソース制御部
42 上限時間超過判定部
50 記憶部
60 コンテナ
500 アプリケーション実行装置
501 更新検出部
502 内容変更部
550 業務システム
560 マスタ側アプリケーション実行装置
570 スレーブ側アプリケーション実行装置
580 ネットワーク
600 アプリケーション実行装置
602 記憶装置
604 演算装置
650 コンピュータプログラム
Claims (7)
- コンテナ型仮想化技術を用いて構築される業務システムに含まれるアプリケーション実行装置であって、
コンテナ上で動作するアプリケーションを定義するコンテナ定義ファイルの更新を検出する更新検出手段と、
更新が検出された場合、前記コンテナ定義ファイルをビルドすることにより生成されるコンテナイメージのデータ量を軽減させるために、前記コンテナ定義ファイルおよび前記コンテナイメージの各内容を変更する内容変更手段と
を備え、
前記内容変更手段は、更新が検知された前記コンテナ定義ファイルを解析してビルド命令を特定し、更新が検知された前記コンテナ定義ファイルに、特定された前記ビルド命令が実行された後に、実行に使用されたソースファイルを削除する削除命令を書き加え、前記削除命令が書き加えられた前記コンテナ定義ファイルのビルドを実行し、
前記コンテナ定義ファイルが更新されてから更新についてのデプロイが完了するまでの全体時間を算出し、前記全体時間が、予め決定された上限時間を超えるか否かを判定し、前記全体時間が前記上限時間を超える場合、前記コンテナイメージに含まれるレイヤの構造を再構築する
ことを特徴とするアプリケーション実行装置。 - 前記再構築は、古い前記構造を一旦取り払うとともにメタデータを排除することにより複数の前記レイヤを1つの前記レイヤに統合する処理であることを特徴とする請求項1に記載のアプリケーション実行装置。
- 前記内容変更手段は、
前記削除命令が書き加えられた前記コンテナ定義ファイルのビルドを実行する際、前記ビルドの時間であるビルド時間を計測し、
コンテナの起動時間を計測し、前記起動時間と前記ビルド時間とを用いて前記全体時間を算出する
ことを特徴とする請求項1または2に記載のアプリケーション実行装置。 - 前記上限時間は、前記業務システムに要求される性能に基づいて決定されることを特徴とする請求項1から3のいずれか1項に記載のアプリケーション実行装置。
- マスタとして動作するマスタ側アプリケーション実行装置と、
前記マスタ側アプリケーション実行装置と接続され、スレーブとして動作するスレーブ側アプリケーション実行装置と、を備え、
前記マスタ側アプリケーション実行装置および前記スレーブ側アプリケーション実行装置は、請求項1から4のいずれか1項に記載される前記アプリケーション実行装置である
ことを特徴とする業務システム。 - コンテナ型仮想化技術を用いて構築される業務システムに含まれるアプリケーション実行装置におけるアプリケーション実行方法であって、
コンテナ上で動作するアプリケーションを定義するコンテナ定義ファイルの更新を検出し、
更新が検出された場合、前記コンテナ定義ファイルをビルドすることにより生成されるコンテナイメージのデータ量を軽減させるために、前記コンテナ定義ファイルおよび前記コンテナイメージの各内容を変更し、
各内容の変更が、更新が検知された前記コンテナ定義ファイルを解析してビルド命令を特定し、更新が検知された前記コンテナ定義ファイルに、特定された前記ビルド命令が実行された後に、実行に使用されたソースファイルを削除する削除命令を書き加え、前記削除命令が書き加えられた前記コンテナ定義ファイルのビルドを実行し、
前記コンテナ定義ファイルが更新されてから更新についてのデプロイが完了するまでの全体時間を算出し、前記全体時間が、予め決定された上限時間を超えるか否かを判定し、前記全体時間が前記上限時間を超える場合、前記コンテナイメージに含まれるレイヤの構造を再構築する
ことを特徴とするアプリケーション実行方法。 - コンテナ型仮想化技術を用いて構築される業務システムに含まれるアプリケーション実行装置のコンピュータに、
コンテナ上で動作するアプリケーションを定義するコンテナ定義ファイルの更新を検出する更新検出処理と、
更新が検出された場合、前記コンテナ定義ファイルをビルドすることにより生成されるコンテナイメージのデータ量を軽減させるために、前記コンテナ定義ファイルおよび前記コンテナイメージの各内容を変更する内容変更処理と
を実行させるためのプログラムであって、
前記内容変更処理は、更新が検知された前記コンテナ定義ファイルを解析してビルド命令を特定し、更新が検知された前記コンテナ定義ファイルに、特定された前記ビルド命令が実行された後に、実行に使用されたソースファイルを削除する削除命令を書き加え、前記削除命令が書き加えられた前記コンテナ定義ファイルのビルドを実行する処理と、
前記コンテナ定義ファイルが更新されてから更新についてのデプロイが完了するまでの全体時間を算出し、前記全体時間が、予め決定された上限時間を超えるか否かを判定し、前記全体時間が前記上限時間を超える場合、前記コンテナイメージに含まれるレイヤの構造を再構築する処理と
であるプログラム。
Applications Claiming Priority (3)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
JP2018055456 | 2018-03-23 | ||
JP2018055456 | 2018-03-23 | ||
PCT/JP2019/011197 WO2019181860A1 (ja) | 2018-03-23 | 2019-03-18 | アプリケーション実行装置、アプリケーション実行方法、および記録媒体 |
Publications (2)
Publication Number | Publication Date |
---|---|
JPWO2019181860A1 JPWO2019181860A1 (ja) | 2021-02-04 |
JP6958726B2 true JP6958726B2 (ja) | 2021-11-02 |
Family
ID=67987242
Family Applications (1)
Application Number | Title | Priority Date | Filing Date |
---|---|---|---|
JP2020507792A Active JP6958726B2 (ja) | 2018-03-23 | 2019-03-18 | アプリケーション実行装置、アプリケーション実行方法、およびプログラム |
Country Status (3)
Country | Link |
---|---|
US (1) | US11226808B2 (ja) |
JP (1) | JP6958726B2 (ja) |
WO (1) | WO2019181860A1 (ja) |
Families Citing this family (4)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
US11669334B2 (en) * | 2019-11-08 | 2023-06-06 | Google Llc | Just-in-time containers |
WO2021172429A1 (ja) * | 2020-02-28 | 2021-09-02 | 日本電気株式会社 | 検証制御装置、システム及び方法並びに非一時的なコンピュータ可読媒体 |
CN111596932B (zh) | 2020-06-22 | 2021-03-02 | 腾讯科技(深圳)有限公司 | 一种镜像文件生成方法、装置和计算机可读存储介质 |
JPWO2023112230A1 (ja) * | 2021-12-15 | 2023-06-22 |
Family Cites Families (7)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
US9355248B1 (en) * | 2015-01-26 | 2016-05-31 | Red Hat, Inc. | Container and image scanning for a platform-as-a-service system |
US20160350081A1 (en) * | 2015-05-27 | 2016-12-01 | Runnable Inc. | Automatic container definition |
JP6749094B2 (ja) | 2015-12-18 | 2020-09-02 | エヌ・ティ・ティ・コミュニケーションズ株式会社 | コンテナ収容装置、コンテナ作成方法、及びプログラム |
US10430378B1 (en) * | 2016-09-19 | 2019-10-01 | Tintri By Ddn, Inc. | Fast container distribution with storage acceleration |
US10503712B2 (en) * | 2016-09-30 | 2019-12-10 | International Business Machines Corporation | Container repository optimization |
US10528366B2 (en) * | 2017-06-05 | 2020-01-07 | International Business Machines Corporation | Facilitating multi-inheritance within a single inheritance container-based environment |
US10838702B2 (en) * | 2018-11-09 | 2020-11-17 | International Business Machines Corporation | Analyzing and optimizing container images in cloud computing |
-
2019
- 2019-03-18 WO PCT/JP2019/011197 patent/WO2019181860A1/ja active Application Filing
- 2019-03-18 US US16/964,408 patent/US11226808B2/en active Active
- 2019-03-18 JP JP2020507792A patent/JP6958726B2/ja active Active
Also Published As
Publication number | Publication date |
---|---|
WO2019181860A1 (ja) | 2019-09-26 |
US11226808B2 (en) | 2022-01-18 |
US20210049001A1 (en) | 2021-02-18 |
JPWO2019181860A1 (ja) | 2021-02-04 |
Similar Documents
Publication | Publication Date | Title |
---|---|---|
JP6958726B2 (ja) | アプリケーション実行装置、アプリケーション実行方法、およびプログラム | |
US11425194B1 (en) | Dynamically modifying a cluster of computing nodes used for distributed execution of a program | |
US10725769B2 (en) | Automated deployment and servicing of distributed applications | |
JP6790835B2 (ja) | ネットワーク機能仮想化管理およびオーケストレーション方法と装置とプログラム | |
JP6819296B2 (ja) | 仮想化管理・オーケストレーション装置、仮想化管理・オーケストレーション方法、および、プログラム | |
US20190026085A1 (en) | Intelligent cloud engineering platform | |
US8321558B1 (en) | Dynamically monitoring and modifying distributed execution of programs | |
US8850423B2 (en) | Assisting server migration | |
US20140372533A1 (en) | Apparatus, systems, and methods for cloud agnostic multi-tier application modeling and deployment | |
US11086662B2 (en) | Method and system of migrating applications to a cloud-computing environment | |
US20140181817A1 (en) | Methods and apparatus to manage execution of virtual machine workflows | |
US20090077090A1 (en) | Method and apparatus for specifying an order for changing an operational state of software application components | |
US20120151198A1 (en) | System and Method for Instantiation of Distributed Applications from Disk Snapshots | |
US11588698B2 (en) | Pod migration across nodes of a cluster | |
US20120222004A1 (en) | Publishing and updating of multidimensional models using orchestration tools for software offerings | |
Leite et al. | Automating resource selection and configuration in inter-clouds through a software product line method | |
JPWO2017017937A1 (ja) | 配備装置、配備方法、及び、記録媒体 | |
JP2011034137A (ja) | 分散処理装置及び分散処理方法 | |
Prassanna et al. | A review of existing cloud automation tools | |
CN112256287A (zh) | 一种应用部署方法及装置 | |
JP6922670B2 (ja) | リソース決定装置、リソース決定方法およびリソース決定処理プログラム | |
CN114064054A (zh) | 一种微服务发布方法、装置、设备及存储介质 | |
KR20230067257A (ko) | Ai 모델 서빙 시스템 및 방법 | |
Fortuna et al. | On-premise artificial intelligence as a service for small and medium size setups | |
US12079610B2 (en) | Dynamic software provisioning |
Legal Events
Date | Code | Title | Description |
---|---|---|---|
A521 | Request for written amendment filed |
Free format text: JAPANESE INTERMEDIATE CODE: A523 Effective date: 20200710 |
|
A621 | Written request for application examination |
Free format text: JAPANESE INTERMEDIATE CODE: A621 Effective date: 20200710 |
|
A131 | Notification of reasons for refusal |
Free format text: JAPANESE INTERMEDIATE CODE: A131 Effective date: 20210706 |
|
A521 | Request for written amendment filed |
Free format text: JAPANESE INTERMEDIATE CODE: A523 Effective date: 20210811 |
|
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: 20210907 |
|
A61 | First payment of annual fees (during grant procedure) |
Free format text: JAPANESE INTERMEDIATE CODE: A61 Effective date: 20210920 |
|
R150 | Certificate of patent or registration of utility model |
Ref document number: 6958726 Country of ref document: JP Free format text: JAPANESE INTERMEDIATE CODE: R150 |