JP7234702B2 - Information processing device, container placement method, and container placement program - Google Patents

Information processing device, container placement method, and container placement program Download PDF

Info

Publication number
JP7234702B2
JP7234702B2 JP2019041590A JP2019041590A JP7234702B2 JP 7234702 B2 JP7234702 B2 JP 7234702B2 JP 2019041590 A JP2019041590 A JP 2019041590A JP 2019041590 A JP2019041590 A JP 2019041590A JP 7234702 B2 JP7234702 B2 JP 7234702B2
Authority
JP
Japan
Prior art keywords
placement
time
computer environment
container
containers
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
Application number
JP2019041590A
Other languages
Japanese (ja)
Other versions
JP2020144669A (en
Inventor
陽太 小暮
Current Assignee (The listed assignees may be inaccurate. Google has not performed a legal analysis and makes no representation or warranty as to the accuracy of the list.)
NEC Corp
Original Assignee
NEC Corp
Priority date (The priority date 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 date listed.)
Filing date
Publication date
Application filed by NEC Corp filed Critical NEC Corp
Priority to JP2019041590A priority Critical patent/JP7234702B2/en
Publication of JP2020144669A publication Critical patent/JP2020144669A/en
Application granted granted Critical
Publication of JP7234702B2 publication Critical patent/JP7234702B2/en
Active legal-status Critical Current
Anticipated expiration legal-status Critical

Links

Images

Landscapes

  • Debugging And Monitoring (AREA)

Description

本発明は、情報処理装置、コンテナ配置方法及びコンテナ配置プログラムに関し、特に、複数のコンテナを配置するための情報処理装置、コンテナ配置方法及びコンテナ配置プログラムに関する。 The present invention relates to an information processing device, a container placement method, and a container placement program, and more particularly to an information processing device, a container placement method, and a container placement program for arranging a plurality of containers.

近年、モノのインターネット(IoT(Internet of Things))の発展に伴い、SaaS(Software as a Service)やPasS(Platform as a Service)などといったクラウドシステム上にサービスを展開することが増えている。ここで、可用性の高いサービスを実現する方法の一つとして、コンテナ型仮想化が挙げられる。コンテナ型仮想化を用いることで、利用者数などに応じてコンテナを増加させ、柔軟にキャパシティを増やすことができる。そのため、可用性の高いサービスを実現し易くなる。 In recent years, with the development of the Internet of Things (IoT), services are increasingly deployed on cloud systems such as SaaS (Software as a Service) and PasS (Platform as a Service). Here, container-type virtualization is mentioned as one of the methods for realizing services with high availability. By using container-based virtualization, it is possible to flexibly increase capacity by increasing the number of containers according to the number of users. Therefore, it becomes easier to realize a service with high availability.

ここで、コンテナ型仮想化は、仮想化の一種であり、1つのOS(Operating System)に、コンテナといわれる「独立したサーバと同様の振る舞いをする区画」を複数作り、それを個別のユーザ/サービスに割り当てるものである。 Here, container-type virtualization is a kind of virtualization, in which a plurality of "partitions that behave like independent servers" called containers are created in one OS (Operating System), and these are used by individual users/servers. It is what you assign to a service.

サービスの発展に合わせて柔軟にリソースを増強するため、また耐障害性を考えた場合に、この「1つのOS」も論理的及び物理的に増加可能であることが望ましい。即ち、1つのインスタンス(1つのOS)に複数のコンテナが格納された環境が複数セット存在することになる。 In order to flexibly reinforce resources according to the development of services, and considering fault tolerance, it is desirable that this "single OS" can also be increased logically and physically. That is, there are multiple sets of environments in which multiple containers are stored in one instance (one OS).

特許文献1には、仮想インスタンスを複数のサーバに再配置するための技術が開示されている。特許文献1にかかる管理サーバは、複数の稼働サーバからリソース使用状況を収集し、コンテナ配置先の決定を行い、決定結果に応じて各稼働サーバにコンテナ起動又は消去命令を送信する。 Patent Literature 1 discloses a technique for relocating virtual instances to multiple servers. The management server according to Patent Literature 1 collects resource usage statuses from a plurality of operating servers, determines container placement destinations, and transmits a container activation or deletion command to each operating server according to the determination result.

特許文献2には、分散型コンテナ最適配置システムに関する技術が開示されている。特許文献2にかかるシステムは、サーバ資源上のコンテナ数が最少であるため最もリソースが空いていると判断されると、エージェントは、当該サーバ資源へ他のサーバ資源上で動作していたコンテナの作成を要求する。 Patent Literature 2 discloses a technique related to a distributed container optimal placement system. In the system according to Patent Document 2, when the number of containers on a server resource is the smallest and it is determined that the resource is the most vacant, the agent sends the container running on another server resource to the server resource. Request creation.

特許文献3には、論理的に区分された環境においてリソースを自動的に監視及び割り当てるための技術が開示されている。特許文献3では、各区画のリソース利用率が収集され、これらを利用率ゾーンにカテゴリ化し、低利用率ゾーンにある区画からのリソースを高利用率ゾーンにある区画に再割り当てする。 Patent Document 3 discloses a technique for automatically monitoring and allocating resources in a logically partitioned environment. In US Pat. No. 5,200,000, the resource utilization of each partition is collected, categorized into utilization zones, and resources from partitions in low utilization zones are reallocated to partitions in high utilization zones.

特開2017-146791号公報JP 2017-146791 A 特開2018-156465号公報JP 2018-156465 A 特開2006-164281号公報JP 2006-164281 A

しかしながら、特許文献1から3にかかる技術には、コンテナの配置の最適化が不十分であるという問題点がある。その理由は、特許文献1から3にかかる技術には、測定時のリソース使用状況に基づいて再配置を判定しており、一時点ではリソース使用状況が適切であっても、時系列的な変化傾向ではリソース使用状況が好ましくない場合については考慮されていないためである。 However, the techniques according to Patent Literatures 1 to 3 have a problem that the optimization of the arrangement of containers is insufficient. The reason for this is that the technologies disclosed in Patent Documents 1 to 3 determine reallocation based on the resource usage at the time of measurement. This is because trends do not take into account cases where resource usage is not favorable.

本開示は、このような問題点を解決するためになされたものであり、時系列的な負荷傾向の特徴を考慮してコンテナの配置を最適化するための情報処理装置、コンテナ配置方法及びコンテナ配置プログラムを提供することを目的とする。 The present disclosure has been made to solve such problems. The purpose is to provide a placement program.

本開示の第1の態様にかかる情報処理装置は、
複数のコンテナが配置された計算機環境からリソース使用量の測定値を定期的に収集する収集部と、
前記測定値を時系列の分析処理により規則変動データと不規則変動データとに分解する時系列分析部と、
前記規則変動データに基づいて、現在から所定期間後までの前記計算機環境におけるリソース使用量の予測値を算出する予測部と、
前記予測値に基づいて前記計算機環境におけるコンテナの配置候補を算出する配置候補算出部と、
前記配置候補に基づいて前記計算機環境におけるコンテナの再配置を行う再配置部と、
を備える。
An information processing device according to a first aspect of the present disclosure includes:
a collection unit that periodically collects measured values of resource usage from a computer environment in which a plurality of containers are arranged;
a time-series analysis unit that decomposes the measured values into regular fluctuation data and irregular fluctuation data by time-series analysis processing;
a prediction unit that calculates a predicted value of resource usage in the computer environment from now until a predetermined period from now based on the rule fluctuation data;
a placement candidate calculation unit that calculates a placement candidate for containers in the computer environment based on the predicted value;
a rearrangement unit that rearranges containers in the computer environment based on the placement candidates;
Prepare.

本開示の第2の態様にかかるコンテナ配置方法は、
コンピュータが、
複数のコンテナが配置された計算機環境からリソース使用量の測定値を定期的に収集し、
前記測定値を時系列の分析処理により規則変動データと不規則変動データとに分解し、
前記規則変動データに基づいて、現在から所定期間後までの前記計算機環境におけるリソース使用量の予測値を算出し、
前記予測値に基づいて前記計算機環境におけるコンテナの配置候補を算出し、
前記配置候補に基づいて前記計算機環境におけるコンテナの再配置を行う。
A container arrangement method according to a second aspect of the present disclosure includes:
the computer
Periodically collect resource usage measurements from a multi-container computing environment,
Decomposing the measured values into regular fluctuation data and irregular fluctuation data by time-series analysis processing,
calculating a predicted value of resource usage in the computer environment from now until a predetermined period from now based on the rule fluctuation data;
calculating placement candidates for the container in the computer environment based on the predicted value;
Based on the placement candidates, the containers are rearranged in the computer environment.

本開示の第3の態様にかかるコンテナ配置プログラムは、
複数のコンテナが配置された計算機環境からリソース使用量の測定値を定期的に収集する処理と、
前記測定値を時系列の分析処理により規則変動データと不規則変動データとに分解する処理と、
前記規則変動データに基づいて、現在から所定期間後までの前記計算機環境におけるリソース使用量の予測値を算出する処理と、
前記予測値に基づいて前記計算機環境におけるコンテナの配置候補を算出する処理と、
前記配置候補に基づいて前記計算機環境におけるコンテナの再配置を行う処理と、
をコンピュータに実行させる。
A container placement program according to a third aspect of the present disclosure includes:
a process of periodically collecting resource usage measurements from a computer environment in which a plurality of containers are arranged;
a process of decomposing the measured values into regular fluctuation data and irregular fluctuation data by time-series analysis;
a process of calculating a predicted value of resource usage in the computer environment from now until a predetermined period from now based on the rule fluctuation data;
a process of calculating placement candidates for containers in the computer environment based on the predicted values;
a process of rearranging containers in the computer environment based on the placement candidates;
run on the computer.

本開示により、時系列的な負荷傾向の特徴を考慮してコンテナの配置を最適化するための情報処理装置、コンテナ配置方法及びコンテナ配置プログラムを提供することができる。 According to the present disclosure, it is possible to provide an information processing device, a container placement method, and a container placement program for optimizing container placement in consideration of time-series load trend characteristics.

本実施形態1にかかる情報処理装置の構成を示すブロック図である。1 is a block diagram showing the configuration of an information processing apparatus according to a first embodiment; FIG. 本実施形態1にかかるコンテナ配置方法の流れを示すフローチャートである。4 is a flow chart showing the flow of a container arrangement method according to the first embodiment; 本実施形態2にかかるクラウドシステムの全体構成を示すブロック図である。FIG. 11 is a block diagram showing the overall configuration of a cloud system according to a second embodiment; FIG. 本実施形態2にかかるコンテナ配置装置の構成を示すブロック図である。FIG. 7 is a block diagram showing the configuration of a container placement device according to a second embodiment; 本実施形態2にかかるコンテナ配置方法の流れを示すフローチャートである。9 is a flow chart showing the flow of a container arrangement method according to the second embodiment;

以下では、本開示の実施形態について、図面を参照しながら詳細に説明する。各図面において、同一又は対応する要素には同一の符号が付されており、説明の明確化のため、必要に応じて重複説明は省略される。 Embodiments of the present disclosure are described in detail below with reference to the drawings. In each drawing, the same reference numerals are given to the same or corresponding elements, and redundant description will be omitted as necessary for clarity of description.

<実施形態1>
図1は、本実施形態1にかかる情報処理装置10の構成を示すブロック図である。情報処理装置10は、計算機環境に複数のコンテナを配置、監視、再配置等を管理するための1以上のコンピュータである。ここで、計算機環境とは、1台以上のコンピュータにより構成され、複数のコンテナに区画を分けて、コンテナごとに指定されたアプリケーションを独立に実行させて、コンテナごとにサービスを提供するものである。計算機環境は、例えば、クラウドシステム等の計算機の集合であってもよい。ここで、情報処理装置10は、収集部11と、時系列分析部12と、予測部13と、配置候補算出部14と、再配置部15とを備える。
<Embodiment 1>
FIG. 1 is a block diagram showing the configuration of an information processing apparatus 10 according to the first embodiment. The information processing device 10 is one or more computers for managing placement, monitoring, rearrangement, etc. of a plurality of containers in a computer environment. Here, the computer environment is composed of one or more computers, partitioned into a plurality of containers, independently executing applications specified for each container, and providing services for each container. . The computer environment may be, for example, a collection of computers such as a cloud system. Here, the information processing apparatus 10 includes a collection unit 11 , a time series analysis unit 12 , a prediction unit 13 , a placement candidate calculation unit 14 and a rearrangement unit 15 .

収集部11は、計算機環境からリソース使用量の測定値を定期的に収集する。ここで、測定値は、計算機環境内外からセンサ等により、計算機環境におけるリソース(例えば、CPU(Central Processing Unit)、メモリ、ディスク、ネットワーク帯域)の使用量を測定した値であり、測定時刻が対応付けられたものである。例えば、収集部11は、測定値を収集する度に、記憶装置(不図示)に蓄積することで、当該記憶装置には、測定値の時系列データ(測定値の集合)が蓄積されることになる。尚、測定値は、2以上の測定項目(リソースの種類)による測定データを含む。また、測定値は、コンテナ単位のリソース使用量を測定した値であってもよい。 The collection unit 11 periodically collects measured values of resource usage from the computer environment. Here, the measured value is a value obtained by measuring the amount of usage of a resource (e.g., CPU (Central Processing Unit), memory, disk, network bandwidth) in the computer environment by a sensor or the like from inside or outside the computer environment, and the measurement time corresponds to It is attached. For example, every time the collection unit 11 collects measured values, it accumulates them in a storage device (not shown). become. Note that the measurement value includes measurement data of two or more measurement items (resource types). Also, the measured value may be a value obtained by measuring the amount of resource usage for each container.

時系列分析部12は、測定値を時系列の分析処理により規則変動データと不規則変動データとに分解する。ここで、時系列の分析処理には公知の技術を用いることができる。また、規則変動データとは、測定値の集合のうち、測定値の時系列に沿った変動パターンに一定の規則性を見出せるデータ群である。一定の規則性には、傾向(trend)変動や季節的な(seasonal)変動を含む。また、不規則変動データとは、測定値の集合のうち、規則変動データ以外のデータ群である。 The time-series analysis unit 12 decomposes the measured values into regular fluctuation data and irregular fluctuation data by time-series analysis processing. Here, a known technique can be used for time-series analysis processing. Moreover, the regular fluctuation data is a data group in which a certain regularity can be found in the fluctuation pattern along the time series of the measured values among the set of the measured values. Constant regularity includes trend variation and seasonal variation. Further, the irregular fluctuation data is a data group other than the regular fluctuation data in the set of measured values.

予測部13は、規則変動データに基づいて、現在から所定期間後までの計算機環境におけるリソース使用量の予測値を算出する。ここで、予測値は、上述した測定値の測定項目に対応するリソース使用量についての1以上の将来の時刻における値の集合である。また、予測値は、計算機環境全体に対して将来発生し得る負荷の予測値を含む。負荷とは、例えば、計算機環境により提供されるサービスに対する処理要求の数、処理要求に伴うアプリケーションの処理時間、処理要求に応じた処理に要するリソースの使用量等を含むものである。また、所定期間は、少なくとも収集部11による収集間隔に対応する。尚、予測部13は、算出した予測値を時刻と対応付けて上記記憶装置に格納してもよい。 The prediction unit 13 calculates a predicted value of resource usage in the computer environment from now until a predetermined period from now based on the rule variation data. Here, the predicted value is a set of values at one or more future times for the resource usage corresponding to the measurement items of the measurement values described above. The predicted value also includes a predicted value of the load that may occur in the future on the entire computer environment. The load includes, for example, the number of processing requests for services provided by the computer environment, the processing time of the application accompanying the processing requests, and the usage amount of resources required for processing according to the processing requests. Also, the predetermined period corresponds to at least the collection interval by the collection unit 11 . Note that the prediction unit 13 may store the calculated prediction value in the storage device in association with the time.

配置候補算出部14は、予測値に基づいて計算機環境におけるコンテナの配置候補を算出する。すなわち、配置候補算出部14は、予測値が示すリソース使用量を満たすようなコンテナの最適な配置パターンを求める。例えば、計算機環境上で複数のサービスに対応するアプリケーションを実行しているものとする。この場合、予測値が示す負荷が発生した場合に、各サービスに割り当てるコンテナ数に応じたリソース使用量をシミュレートし、当該負荷に対する処理が実現できるように、サービスごとのコンテナの割当数を配置候補として求めることができる。また、計算機環境に複数のインスタンスが含まれる場合には、予測値が示す負荷が発生した場合に、インスタンスに割り当てるコンテナ数に応じたリソース使用量をシミュレートする。そして、当該負荷に対する処理が実現できるように、また、インスタンス数が少なくなるように、インスタンスごとのコンテナの割当数を配置候補として求めることができる。また、複数のサービス及び複数のインスタンスにおける最適な配置候補も同様に求めることができる。 The placement candidate calculation unit 14 calculates placement candidates of containers in the computer environment based on the predicted values. That is, the placement candidate calculation unit 14 obtains an optimal placement pattern of containers that satisfies the resource usage indicated by the predicted value. For example, it is assumed that applications corresponding to multiple services are running on a computer environment. In this case, when the load indicated by the forecast value occurs, the resource usage amount corresponding to the number of containers allocated to each service is simulated, and the allocated number of containers for each service is arranged so that the processing for the load can be realized. Candidates can be requested. Also, in the case where the computer environment includes a plurality of instances, when the load indicated by the predicted value occurs, the resource usage is simulated according to the number of containers assigned to the instances. Then, the allocated number of containers for each instance can be obtained as a placement candidate so that the processing for the load can be realized and the number of instances can be reduced. Optimal placement candidates for multiple services and multiple instances can also be similarly determined.

再配置部15は、配置候補に基づいて計算機環境におけるコンテナの再配置を行う。再配置部15は、計算機環境に対して、配置候補が示すインスタンス、コンテナ、サービスを割り当てるように指示する。 The rearrangement unit 15 rearranges the containers in the computer environment based on the placement candidates. The rearrangement unit 15 instructs the computer environment to allocate the instances, containers, and services indicated by the placement candidates.

図2は、本実施形態1にかかるコンテナ配置方法の流れを示すフローチャートである。まず、収集部11は、複数のコンテナが配置された計算機環境からリソース使用量の測定値を定期的に収集する(S11)。次に、時系列分析部12は、測定値を時系列の分析処理により規則変動データと不規則変動データとに分解する(S12)。 FIG. 2 is a flow chart showing the flow of the container arrangement method according to the first embodiment. First, the collection unit 11 periodically collects resource usage measurement values from a computer environment in which a plurality of containers are arranged (S11). Next, the time-series analysis unit 12 decomposes the measured values into regular fluctuation data and irregular fluctuation data by time-series analysis processing (S12).

そして、予測部13は、規則変動データに基づいて、現在から所定期間後までの計算機環境におけるリソース使用量の予測値を算出する(S13)。続いて、配置候補算出部14は、予測値に基づいて計算機環境におけるコンテナの配置候補を算出する(S14)。その後、再配置部15は、配置候補に基づいて計算機環境におけるコンテナの再配置を行う(S15)。 Based on the rule variation data, the prediction unit 13 then calculates a predicted value of resource usage in the computer environment from now until a predetermined period from now (S13). Subsequently, the placement candidate calculation unit 14 calculates a placement candidate of the container in the computer environment based on the predicted value (S14). After that, the rearrangement unit 15 rearranges the containers in the computer environment based on the arrangement candidates (S15).

このように、本実施形態では、まず、計算機環境において定期的に測定された時系列データから抽出された規則変動データを用いて、将来のリソース使用量の予測値を算出する。時系列に沿った変動パターンから、一時点でのリソースの需要だけでなく、長期的な負荷の変動傾向を検出でき、特に、不規則変動データが除かれて予測されているため、予測の精度が向上する。精度の高い予測値を用いてコンテナの配置候補を導出できるため、計算機環境においてより適切なコンテナの配置を実現できる。そのため、本実施形態により、時系列的な負荷傾向の特徴を考慮した最適なコンテナの配置を提供することができる。 As described above, in this embodiment, first, a predicted value of future resource usage is calculated using regular fluctuation data extracted from time-series data periodically measured in a computer environment. From the fluctuation pattern along the time series, it is possible to detect not only the resource demand at one point in time, but also the long-term fluctuation trend of the load. improves. Since highly accurate prediction values can be used to derive container placement candidates, more appropriate container placement can be realized in a computer environment. Therefore, according to the present embodiment, it is possible to provide the optimum arrangement of containers in consideration of the characteristics of the chronological load trend.

尚、情報処理装置10は、図示しない構成としてプロセッサ、メモリ及び記憶装置を備えるものである。また、当該記憶装置には、本実施形態にかかるコンテナ配置方法の処理が実装されたコンピュータプログラムが記憶されている。そして、当該プロセッサは、記憶装置からコンピュータプログラムを前記メモリへ読み込み、当該コンピュータプログラムを実行する。これにより、前記プロセッサは、収集部11、時系列分析部12、予測部13、配置候補算出部14及び再配置部15の機能を実現する。 The information processing apparatus 10 includes a processor, a memory, and a storage device (not shown). Further, the storage device stores a computer program in which processing of the container arrangement method according to the present embodiment is implemented. The processor then loads the computer program from the storage device into the memory and executes the computer program. Thereby, the processor implements the functions of the collection unit 11 , the time series analysis unit 12 , the prediction unit 13 , the placement candidate calculation unit 14 and the rearrangement unit 15 .

または、収集部11、時系列分析部12、予測部13、配置候補算出部14及び再配置部15は、それぞれが専用のハードウェアで実現されていてもよい。また、各装置の各構成要素の一部又は全部は、汎用または専用の回路(circuitry)、プロセッサ等やこれらの組合せによって実現されもよい。これらは、単一のチップによって構成されてもよいし、バスを介して接続される複数のチップによって構成されてもよい。各装置の各構成要素の一部又は全部は、上述した回路等とプログラムとの組合せによって実現されてもよい。また、プロセッサとして、CPU(Central Processing Unit)、GPU(Graphics Processing Unit)、FPGA(field-programmable gate array)等を用いることができる。 Alternatively, the collection unit 11, the time-series analysis unit 12, the prediction unit 13, the placement candidate calculation unit 14, and the rearrangement unit 15 may each be realized by dedicated hardware. Also, part or all of each component of each device may be realized by general-purpose or dedicated circuitry, processors, etc., or combinations thereof. These may be composed of a single chip, or may be composed of multiple chips connected via a bus. A part or all of each component of each device may be implemented by a combination of the above-described circuits and the like and programs. As the processor, a CPU (Central Processing Unit), GPU (Graphics Processing Unit), FPGA (field-programmable gate array), or the like can be used.

また、情報処理装置10の各構成要素の一部又は全部が複数の情報処理装置や回路等により実現される場合には、複数の情報処理装置や回路等は、集中配置されてもよいし、分散配置されてもよい。例えば、情報処理装置や回路等は、クライアントサーバシステム、クラウドコンピューティングシステム等、各々が通信ネットワークを介して接続される形態として実現されてもよい。また、情報処理装置10の機能がSaaS(Software as a Service)形式で提供されてもよい。 Further, when part or all of each component of the information processing device 10 is realized by a plurality of information processing devices, circuits, etc., the plurality of information processing devices, circuits, etc. may be centrally arranged, They may be distributed. For example, the information processing device, circuits, and the like may be implemented as a form in which each is connected via a communication network, such as a client-server system, a cloud computing system, or the like. Also, the functions of the information processing apparatus 10 may be provided in a SaaS (Software as a Service) format.

<実施形態2>
ここで、本実施形態が解決しようとする課題について詳述する。複数のインスタンスそれぞれにコンテナを配置することを考えたとき、コンテナが効率的に配置されないと無駄なインスタンスの増減が発生することとなる。例えば、ある特定の時間帯に負荷が集中するコンテナが、あるインスタンスに偏って配置された場合、その時間帯にはインスタンスを増やす必要が出てくる。そのような余計なリソースの確保はサービス運用側の費用等にも影響がでる。
<Embodiment 2>
Here, the problem to be solved by this embodiment will be described in detail. When it comes to arranging containers in each of a plurality of instances, if the containers are not efficiently arranged, the number of instances will increase or decrease in vain. For example, if a container whose load is concentrated during a specific time period is disproportionately allocated to a certain instance, it becomes necessary to increase the number of instances during that time period. Securing such unnecessary resources also affects the cost of the service operation side.

ここで、コンテナ型仮想環境のオーケストレーションツールであるkubernetesなどでは、コンテナを配置するインスタンス(Node)を指定する設定が存在する。しかし、IoTを用いたサービスでは対象とする業種毎に、ある時間帯やある季節などに負荷が集中することが考えられる。そのため、都度、設定するなどといった運用が必要になる。 Here, in kubernetes, which is an orchestration tool for container-type virtual environments, there is a setting that specifies the instance (node) where the container is placed. However, in services using IoT, it is conceivable that the load is concentrated in a certain time period or a certain season for each target industry. Therefore, an operation such as setting each time is required.

また、その季節的(Seasonal)な変動もユーザの増加やサービスの成長(例えば、対象とするセンサの追加)によって変化すると考えられることから、最新の傾向にもとづき配置される必要がある。ところが、毎回傾向を分析するのは時間的なコストがかかる。 In addition, the seasonal fluctuations are expected to change due to the increase in users and the growth of services (for example, the addition of target sensors), so it is necessary to arrange based on the latest trends. However, analyzing trends each time is time-consuming.

そこで、本実施形態2は、上述した実施形態1の具体的な一実施例であり、以下では上述した課題の少なくとも一部を解決するものについて説明する。図3は、本実施形態2にかかるクラウドシステム1000の全体構成を示すブロック図である。クラウドシステム1000は、計算機環境20と、コンテナ配置装置30とを備える。 Accordingly, Embodiment 2 is a specific example of Embodiment 1 described above, and will be described below to solve at least part of the above-described problems. FIG. 3 is a block diagram showing the overall configuration of the cloud system 1000 according to the second embodiment. A cloud system 1000 includes a computer environment 20 and a container placement device 30 .

計算機環境20は、複数のインスタンス21、22、・・・2n(nは自然数。)を含む。ここで、インスタンス21から2nのそれぞれは、例えば、物理的又は仮想的なサーバ装置である。また、各インスタンスは、1以上のコンテナに区画を分けて各コンテナにインスタンスのリソースを割り当てて、それぞれ、サービスに対応する処理を行うアプリケーションをコンテナ単位で独立して実行可能とする。例えば、インスタンス21は、コンテナ211、212・・・に区画が分けられ、例えば、コンテナ211にはサービス2111、コンテナ212にはサービス2121等が割り当てられていることを示す。同様に、インスタンス22は、コンテナ221、222・・・に区画が分けられ、例えば、コンテナ221にはサービス2211、コンテナ222にはサービス2221等が割り当てられていることを示す。また、インスタンス2nは、コンテナ2n1、2n2・・・に区画が分けられ、例えば、コンテナ2n1にはサービス2n11、コンテナ2n2にはサービス2n21等が割り当てられていることを示す。 A computer environment 20 includes a plurality of instances 21, 22, . . . 2n (n is a natural number). Here, each of the instances 21 to 2n is, for example, a physical or virtual server device. Also, each instance is partitioned into one or more containers, and instance resources are allocated to each container so that an application that performs processing corresponding to a service can be independently executed on a container-by-container basis. For example, the instance 21 is partitioned into containers 211, 212, . Similarly, the instance 22 is partitioned into containers 221, 222, . Also, the instance 2n is partitioned into containers 2n1, 2n2, .

計算機環境20は、複数のサービスを提供するIoTシステムのサーバ側の環境である。複数のサービスは、例えば、農地、コンビニエンスストア等の店舗、ビル等の空調設備といった異なる業種に対して提供されるものである。例えば、農地、店舗、空調設備のそれぞれに設置されたセンサ(IoTデバイス)により測定された測定値がネットワークNを介して計算機環境20に収集される。そして、各サービスは業種が異なるため、負荷が集中する時間帯や季節の傾向が異なり、必要とされるリソースを集中させるタイミングや量も異なるものとする。つまり、各サービスは、データ処理負荷の時系列的変動に異なる特徴を持つといえる。 The computer environment 20 is a server-side environment of an IoT system that provides multiple services. A plurality of services are provided to different types of business such as farmland, stores such as convenience stores, and air conditioners such as buildings. For example, measured values measured by sensors (IoT devices) installed in farmlands, stores, and air conditioning equipment are collected in the computer environment 20 via the network N. Since each service is in a different industry, it is assumed that the time zones and seasons in which loads are concentrated are different, and the timing and amount of concentration of required resources are also different. In other words, it can be said that each service has different characteristics in the time-series variation of the data processing load.

インスタンス21から2nのそれぞれとコンテナ配置装置30とはネットワークNを介して接続されている。ネットワークNは、インターネット、LAN(Local Area Network)等の通信ネットワークである。 Each of the instances 21 to 2n and the container placement device 30 are connected via a network N. The network N is a communication network such as the Internet or a LAN (Local Area Network).

コンテナ配置装置30は、上述した情報処理装置10の一例であり、1以上の情報処理装置により実現されるコンテナ配置システムともいえる。図4は、本実施形態2にかかるコンテナ配置装置30の構成を示すブロック図である。コンテナ配置装置30は、記憶装置31と、制御部32と、メモリ33と、通信部34とを備える。 The container placement device 30 is an example of the information processing device 10 described above, and can be said to be a container placement system realized by one or more information processing devices. FIG. 4 is a block diagram showing the configuration of the container placement device 30 according to the second embodiment. The container placement device 30 includes a storage device 31 , a control section 32 , a memory 33 and a communication section 34 .

記憶装置31は、ハードディスク、フラッシュメモリ等の記憶装置である。記憶装置31は、設定情報311と、配置情報312と、測定値313と、予測値314と、残差315と、コンテナ配置プログラム316とを記憶する。 The storage device 31 is a storage device such as a hard disk or flash memory. The storage device 31 stores setting information 311 , placement information 312 , measured values 313 , predicted values 314 , residuals 315 and a container placement program 316 .

設定情報311は、本実施形態にかかるコンテナ配置処理を行うために用いられる各種設定値である。設定情報311は、例えば、各リソース使用量の上限値、測定値を収集する収集間隔、コンテナ配置間隔、時系列分析に用いる単位と周期、規則性の有無を判定する際の閾値、強制的に予測モデルを見直す間隔を含む。ここで、リソース使用量の種類(測定項目)には、CPU、メモリ、ディスクI/O、ネットワーク帯域(通信速度等)が挙げられるがこれらに限定されない。尚、規則性の有無を判定する際の閾値とは、予測モデルが適用できなくなってきたことを判断する閾値ということもできる。また、計算機環境20の運用者は、設定情報311を記憶装置31に予め設定(格納)するものとする。 The setting information 311 is various setting values used for performing container placement processing according to this embodiment. The setting information 311 includes, for example, the upper limit of each resource usage, the collection interval for collecting measured values, the container placement interval, the unit and cycle used for time series analysis, the threshold for determining the presence or absence of regularity, and the Contains the interval for reviewing the forecast model. Here, the resource usage types (measurement items) include, but are not limited to, CPU, memory, disk I/O, and network bandwidth (communication speed, etc.). The threshold for determining the presence or absence of regularity can also be said to be the threshold for determining that the predictive model is no longer applicable. Also, the operator of the computer environment 20 preliminarily sets (stores) the setting information 311 in the storage device 31 .

配置情報312は、計算機環境20内の各インスタンスに配置されたコンテナとサービスを示す情報であり、例えば、インスタンスID、コンテナID、サービス(テナント)IDの組合せである。配置情報312は、実際の運用中のコンテナ配置が定期的に収集されたものである。尚、後述する配置候補の形式は、配置情報312に対応するものであってもよい。 The arrangement information 312 is information indicating containers and services arranged in each instance in the computer environment 20, and is, for example, a combination of an instance ID, a container ID, and a service (tenant) ID. The placement information 312 is the regularly collected container placement during actual operation. It should be noted that the format of the layout candidate, which will be described later, may correspond to the layout information 312 .

測定値313は、コンテナごとに複数の測定項目における測定値と測定時刻との組の集合である。予測値314は、コンテナごとに測定値313の測定項目に対応するリソース使用量についての将来の時刻における予測値の集合である。また、予測値314は、計算機環境20全体において提供されるサービスごとの負荷の予測値を含む。残差315は、測定値313と予測値314とで対応するコンテナ、測定項目及び(測定・予測)時刻における差分値の集合である。 The measured value 313 is a set of pairs of measured values and measurement times for a plurality of measurement items for each container. Forecasts 314 are a set of forecasts at future times for resource usage corresponding to the metrics in measurements 313 for each container. The predicted value 314 also includes a predicted value of load for each service provided in the entire computer environment 20 . The residual 315 is a set of difference values between the corresponding container, measurement item, and (measured/predicted) time between the measured value 313 and the predicted value 314 .

コンテナ配置プログラム316は、本実施形態2にかかるコンテナ配置方法の処理が実装されたコンピュータプログラムである。 The container placement program 316 is a computer program in which processing of the container placement method according to the second embodiment is implemented.

メモリ33は、例えば、RAM(Random Access Memory)等の揮発性記憶装置である。通信部34は、コンテナ配置装置30の外部との通信を行うインタフェースである。 The memory 33 is, for example, a volatile storage device such as a RAM (Random Access Memory). The communication unit 34 is an interface for communicating with the outside of the container placement device 30 .

制御部32は、コンテナ配置装置30の各構成を制御するプロセッサであり、例えば、CPUである。制御部32は、記憶装置31からコンテナ配置プログラム316をメモリ33へ読み込み、コンテナ配置プログラム316を実行する。これにより、制御部32は、収集部321、時系列分析部322、予測部323、配置候補算出部324及び再配置部325の機能を実現する。 The control unit 32 is a processor, such as a CPU, that controls each component of the container placement device 30 . The control unit 32 loads the container placement program 316 from the storage device 31 into the memory 33 and executes the container placement program 316 . Thereby, the control unit 32 implements the functions of the collection unit 321 , the time series analysis unit 322 , the prediction unit 323 , the placement candidate calculation unit 324 and the rearrangement unit 325 .

収集部321は、上述した収集部11の一例であり、稼働中のサービス2111等のそれぞれから収集間隔ごとに測定値313を収集し、記憶装置31に格納する。 The collection unit 321 is an example of the collection unit 11 described above, collects the measured values 313 from each of the services 2111 and the like in operation at each collection interval, and stores them in the storage device 31 .

時系列分析部322は、上述した時系列分析部12の一例であり、測定値313に対する時系列の分析処理により傾向変動(Trend)データと季節変動(Seasonal)データと不規則変動(Irregular)データとに分解する。傾向変動データとは、特定期間における時系列データの単調増加、単調減少、周期的な変動、所定期間で一定値(変動なし)といった時系列に沿った変化傾向を示す測定値の集合である。季節変動データとは、季節ごとに発生するデータの増減といった、ある程度、長期間の周期性(規則性)として変化傾向を示す測定値の集合である。尚、傾向変動データと季節変動データとは、規則変動データの一例である。不規則変動データとは、傾向変動や季節変動の規則性が見出せなかった期間の測定値の集合である。つまり、不規則変動データは、測定値313の時系列データのうち傾向変動データ及び季節変動データ以外の測定値の集合である。ここで、時系列データを傾向、季節及び不規則変動データに分解する手法としては、例えば、統計開発向けのR言語(https://www.r-project.org/)のstl関数等が挙げられるが、これに限定されない。 The time-series analysis unit 322 is an example of the time-series analysis unit 12 described above, and performs time-series analysis processing on the measured value 313 to analyze trend data, seasonal data, and irregular data. and Trend fluctuation data is a set of measured values that indicate the trend of change along the time series, such as monotonous increase, monotonous decrease, periodic fluctuation, and constant value (no fluctuation) in a predetermined period of time series data in a specific period. Seasonal variation data is a collection of measured values that show a trend of change as a certain degree of long-term periodicity (regularity), such as an increase or decrease in data that occurs seasonally. Note that trend fluctuation data and seasonal fluctuation data are examples of regular fluctuation data. Irregular data is a set of measurements taken during periods in which no regularity of trend or seasonal variation was found. In other words, the irregular fluctuation data is a set of measured values other than the trend fluctuation data and the seasonal fluctuation data among the time-series data of the measured values 313 . Here, as a method of decomposing time series data into trend, seasonal and irregular fluctuation data, for example, the stl function of R language (https://www.r-project.org/) for statistical development can be cited. but not limited to.

また、時系列分析部322は、測定値313と予測値314の時系列における変動傾向が所定条件を満たす場合に、測定値313に対する上記時系列の分析処理を実行する。これにより、測定値の収集の度に毎回、時系列の分析処理を実行するのではなくなり、コンテナ配置装置30における計算処理のコストを低減できる。併せて、分析処理以降の配置候補の算出処理、再配置処理も回避される。 Also, the time-series analysis unit 322 executes the time-series analysis process for the measured value 313 when the time-series fluctuation tendency of the measured value 313 and the predicted value 314 satisfies a predetermined condition. As a result, time-series analysis processing is not executed each time measurement values are collected, and the cost of calculation processing in the container placement device 30 can be reduced. At the same time, calculation processing of arrangement candidates after analysis processing and rearrangement processing are also avoided.

特に、時系列分析部322は、測定値313と予測値314について対応する時刻における差分を算出し、差分の時系列における変動傾向に規則性がある場合に、上記時系列の分析処理を実行する。これにより、当初は不規則変動とみなされて、予測値の算出時点では加味されていなかった未知の変動成分について、新たな規則性として検出し、当該新たな規則性をさらに加味することで予測精度を向上できる。特に、測定データの件数が少量であっても、不規則変動データの中から規則性をより早く検出する可能性が高まる。 In particular, the time series analysis unit 322 calculates the difference between the measured value 313 and the predicted value 314 at corresponding times, and if there is regularity in the fluctuation trend in the time series of the difference, the time series analysis process is performed. . As a result, unknown fluctuation components that were initially regarded as irregular fluctuations and were not taken into account at the time of calculation of the predicted values are detected as new regularities, and the new regularities are further taken into account to make predictions. Can improve accuracy. In particular, even if the number of measurement data is small, the possibility of detecting regularity in irregular fluctuation data more quickly increases.

予測部323は、上述した予測部13の一例であり、時系列分析部322により分解された傾向変動データと季節変動データを用いて、現時点から次回の収集時点までの所定期間における、各サービスに対する負荷を予測する。所定期間は、例えば、今回の収集時刻から開始し、設定情報311に含まれる収集間隔を経過した時刻(次回の収集時点)までの期間又はそれ以上であってもよい。ここでは、特に、予測部323は、計算機環境20全体において提供されるサービスごとの負荷の予測値を算出する。また、予測部323は、例えば、傾向変動データと季節変動データから、インスタンス、コンテナ及びサービスの組合せにおけるリソース使用量の予測値を算出する予測モデルを学習してもよい。そして、予測部323は、学習済みの予測モデルを用いて、現時点のコンテナ配置に対応する各コンテナのそれぞれのリソース使用量の予測値を算出し、これらの予測値をサービスごとに合算して、負荷を求めても良い。 The prediction unit 323 is an example of the prediction unit 13 described above, and uses the trend change data and seasonal change data decomposed by the time series analysis unit 322 to predict each service for a predetermined period from the current time to the next collection time. Anticipate load. The predetermined period may be, for example, a period from the current collection time to the time when the collection interval included in the setting information 311 has passed (the time of the next collection) or longer. Here, in particular, the prediction unit 323 calculates a predicted load value for each service provided in the entire computer environment 20 . Also, the prediction unit 323 may learn, for example, a prediction model that calculates a predicted value of resource usage in a combination of instances, containers, and services from trend variation data and seasonal variation data. Then, the prediction unit 323 uses the learned prediction model to calculate the predicted value of the resource usage of each container corresponding to the current container arrangement, adds up these predicted values for each service, You can ask for the load.

配置候補算出部324は、上述した配置候補算出部14の一例であり、予測部323により算出された負荷の予測値に基づいて、インスタンス、コンテナ及びサービスの割当、つまりコンテナの配置候補を算出する。例えば、配置候補算出部324は、負荷の予測値を満たすような複数の配置候補を算出し、算出された複数の配置候補の中から所定の優先度条件に基づいて再配置対象の配置候補を選択する。ここで、優先度条件は、各配置候補に選択すべき優先度を付与するための条件であり、記憶装置31に予め格納されているものとする。優先度条件は、例えば、コンテナの配置状態に応じたリソース使用量の予測値がより少ないものほど高い優先度を与えること等である。これにより、予測された将来の負荷を満たすように最適化した配置候補を求められる。 The placement candidate calculation unit 324 is an example of the above-described placement candidate calculation unit 14, and calculates allocation of instances, containers, and services, that is, container placement candidates, based on the load prediction values calculated by the prediction unit 323. . For example, the placement candidate calculation unit 324 calculates a plurality of placement candidates that satisfy the predicted value of the load, and selects a placement candidate to be rearranged from among the calculated plurality of placement candidates based on a predetermined priority condition. select. Here, the priority condition is a condition for assigning a priority to be selected to each placement candidate, and is stored in the storage device 31 in advance. The priority condition is, for example, to give a higher priority to a container having a smaller estimated value of resource usage according to the arrangement state of containers. Thus, placement candidates optimized to meet the predicted future load can be obtained.

より詳細には、配置候補算出部324は、複数の配置候補のそれぞれについて、コンテナごとのリソース使用量の個別予測値を算出する。そして、配置候補算出部324は、個別予測値の合計値が計算機環境20におけるリソース使用量の上限値を超えないものをより高い優先度と判定する。そして、配置候補算出部324は、優先度が最も高いものを再配置対象の配置候補として選択する。このとき、配置候補算出部324は、上述した学習済みの予測モデルを用いて配置候補におけるインスタンス、コンテナ、サービスの組におけるリソース使用量の予測値を個別予測値として算出してもよい。これにより、予測された将来の負荷を満たすように最適化した配置候補を求められる確率が上がる。 More specifically, the placement candidate calculation unit 324 calculates an individual predicted value of resource usage for each container for each of the plurality of placement candidates. Then, the placement candidate calculation unit 324 determines that the total value of the individual prediction values does not exceed the upper limit of the resource usage in the computer environment 20 as higher priority. Then, the placement candidate calculation unit 324 selects the one with the highest priority as a placement candidate to be rearranged. At this time, the placement candidate calculation unit 324 may use the above-described learned prediction model to calculate the predicted value of the resource usage amount for the set of instance, container, and service in the placement candidate as an individual predicted value. This increases the probability of finding placement candidates that are optimized to meet the predicted future load.

さらに、配置候補算出部324は、複数の配置候補の中に前記合計値が前記上限値を超えないものが存在しない場合、所定期間内において追加されるインスタンス数と追加時間との積が最小となる配置候補を再配置対象として選択するとよい。 Further, when there is no placement candidate whose total value does not exceed the upper limit value among the plurality of placement candidates, the placement candidate calculation unit 324 determines that the product of the number of instances added within a predetermined period and the addition time is the minimum. It is preferable to select a placement candidate that is the target of rearrangement.

また、配置候補算出部324は、複数の配置候補の中に前記所定の優先度条件に基づいて優先度が最も高いものが複数存在する場合、当該優先度が最も高い複数の配置候補のうちインスタンスごとのリソース使用量の予測値の合計値に基づいて、再配置対象の配置候補を選択することが望ましい。 Further, when there are a plurality of placement candidates with the highest priority based on the predetermined priority condition, the placement candidate calculation unit 324 selects an instance among the plurality of placement candidates with the highest priority. It is desirable to select a placement candidate to be relocated based on the total value of predicted values of resource usage for each.

また、配置候補算出部324は、複数のサービスのそれぞれを複数のコンテナのいずれかに割り当てて配置候補を算出する。 Further, the arrangement candidate calculation unit 324 calculates arrangement candidates by allocating each of the plurality of services to one of the plurality of containers.

再配置部325は、上述した再配置部15の一例であり、配置候補算出部324により再配置対象として選択された配置候補に基づいて、計算機環境20におけるコンテナの再配置を行う。 The rearrangement unit 325 is an example of the rearrangement unit 15 described above, and rearranges the containers in the computer environment 20 based on the placement candidates selected as the rearrangement targets by the placement candidate calculation unit 324 .

図5は、本実施形態2にかかるコンテナ配置方法の流れを示すフローチャートである。まず、収集部321は、記憶装置31を参照し、設定情報311に含まれる収集間隔が到来したか否かを判定する(S201)。到来していない場合、一定時間、待機し(S202)、再度ステップS201を実行する。 FIG. 5 is a flow chart showing the flow of the container arrangement method according to the second embodiment. First, the collection unit 321 refers to the storage device 31 and determines whether or not the collection interval included in the setting information 311 has arrived (S201). If not, it waits for a certain period of time (S202), and executes step S201 again.

ステップS201で収集間隔が到来したと判定した場合、収集部321は、計算機環境20における全コンテナの配置情報312及びリソース使用量の測定値313を収集し、配置情報312及び測定値313を記憶装置31に蓄積する(S203)。 When it is determined in step S201 that the collection interval has arrived, the collection unit 321 collects the allocation information 312 and the resource usage measurement values 313 of all containers in the computer environment 20, and stores the allocation information 312 and the measurement values 313 in the storage device. 31 (S203).

次に、時系列分析部322は、今回の測定値313と前回算出された予測値314との残差315を算出し、記憶装置31に蓄積する(S204)。すなわち、時系列分析部322は、ステップS203で収集された(今回の)測定値313の測定時刻と同じ予測時刻に対応付けられた予測値314を記憶装置31の中から特定する。そして、時系列分析部322は、コンテナ及びリソースの種別が対応する、今回の測定値313と特定された予測値314との差分を残差315として算出する。 Next, the time-series analysis unit 322 calculates a residual 315 between the current measured value 313 and the last calculated predicted value 314, and stores it in the storage device 31 (S204). That is, the time-series analysis unit 322 identifies, from the storage device 31, the predicted value 314 associated with the same predicted time as the measurement time of the (current) measured value 313 collected in step S203. Then, the time-series analysis unit 322 calculates, as a residual 315, the difference between the current measured value 313 and the specified predicted value 314 corresponding to the type of container and resource.

そして、時系列分析部322は、残差315の時系列の変動傾向を分析する(S205)。例えば、時系列分析部322は、任意の統計解析処理により残差315の変動パターンを分析する。 Then, the time-series analysis unit 322 analyzes the time-series fluctuation trend of the residual 315 (S205). For example, the time series analysis unit 322 analyzes the variation pattern of the residual 315 by arbitrary statistical analysis processing.

続いて、時系列分析部322は、残差315の時系列の変動傾向に規則性があるか否かを判定する(S206)。例えば、残差315が一定値を継続、又は、残差315の変動パターンが単調増加、単調減少、周期性があるといった場合には、規則性があると判定する。また、規則性の判定には、設定情報311に含まれる、上述した「規則性の有無を判定する際の閾値」を用いても良い。 Subsequently, the time-series analysis unit 322 determines whether or not there is regularity in the time-series fluctuation trend of the residual 315 (S206). For example, if the residual 315 continues to be a constant value, or if the fluctuation pattern of the residual 315 is monotonically increasing, monotonically decreasing, or periodic, it is determined that there is regularity. Further, the above-described “threshold for determining the presence or absence of regularity” included in the setting information 311 may be used for determination of regularity.

ステップS206において規則性があると判定した場合、時系列分析部322は、設定情報311に含まれる「時系列分析に用いる単位と周期」に対応する期間における測定値313を、記憶装置31から読み出し、時系列分析を行う(S207)。時系列分析部322は、「時系列分析に用いる単位と周期」に基づき時系列分析により、読み出された期間の測定値313から、傾向変動データ、季節変動データ及び不規則変動データに分解する。そして、時系列分析部322は、分解された傾向変動データ、季節変動データ及び不規則変動データを記憶装置31に格納する。尚、設定情報311に含まれる「強制的に予測モデルを見直す間隔」に到来した場合、ステップS206においてYESと判定されるものとする。また、当該コンテナ配置方法は、ループの「初回」においても、ステップS206においてYESと判定されるものとする。 If it is determined in step S206 that there is regularity, the time-series analysis unit 322 reads the measured value 313 in the period corresponding to the “unit and cycle used for time-series analysis” included in the setting information 311 from the storage device 31. , time-series analysis is performed (S207). The time-series analysis unit 322 decomposes the measured values 313 of the read period into trend fluctuation data, seasonal fluctuation data, and irregular fluctuation data by time-series analysis based on the "unit and period used for time-series analysis". . Then, the time-series analysis unit 322 stores the decomposed trend fluctuation data, seasonal fluctuation data, and irregular fluctuation data in the storage device 31 . It should be noted that if the "forced prediction model review interval" included in the setting information 311 has arrived, it is determined as YES in step S206. Also, in the "first time" of the loop, the container arrangement method is determined to be YES in step S206.

尚、ステップS207の時系列分析処理では、直前のステップS206において残差の時系列の変動傾向に規則性があると判定されている。そのため、前回の時系列分析処理では、不規則変動データとみなされていた成分について、傾向変動又は季節変動データとみなされる可能性が高い。つまり、前回までは検出できなかった規則性について、新たに検出される場合がある。そして、新たに規則性が検出されたデータが傾向変動又は季節変動データに含まれた状態で、予測モデルを学習することで、予測精度が向上し得る。そして、ステップS206でYESの場合にだけステップS207が実行されるため、計算コストを低減できる。 In the time-series analysis process in step S207, it is determined in step S206 immediately before that there is regularity in the trend of variation in the time-series of residuals. Therefore, in the previous time-series analysis process, there is a high possibility that the components that were regarded as irregular fluctuation data are regarded as trend fluctuation or seasonal fluctuation data. In other words, there is a case where the regularity that could not be detected until the previous time is newly detected. Then, the prediction accuracy can be improved by learning the prediction model in a state where the data in which the newly detected regularity is included in the trend fluctuation or seasonal fluctuation data. And since step S207 is performed only when it is YES in step S206, calculation cost can be reduced.

その後、予測部323は、ステップS207で分解された傾向変動データ及び季節変動データを用いて、現在から所定期間後までのサービスごとのリソース使用量の予測値(負荷の予測値)を算出する(S208)。 After that, the prediction unit 323 uses the trend change data and the seasonal change data decomposed in step S207 to calculate the predicted value of resource usage (predicted value of load) for each service from the present to the next predetermined period ( S208).

そして、配置候補算出部324は、ステップS208で算出された予測値から、配置候補を算出する(S209)。その後、配置候補算出部324は、配置候補の中から優先度条件に基づき、配置候補を選択する(S210)。 Then, the placement candidate calculation unit 324 calculates placement candidates from the predicted values calculated in step S208 (S209). After that, the placement candidate calculation unit 324 selects a placement candidate from among the placement candidates based on the priority condition (S210).

ここで、ステップS209及びS210の具体的な処理例を以下に説明する。まず、配置候補算出部324は、計算機環境20内のインスタンス数と各インスタンスに割当可能なコンテナ数と提供対象のサービス種別から、インスタンス、コンテナ及びサービスの組の集合(配置候補)を導出する。そして、配置候補算出部324は、各配置候補内の各組について、上述した予測モデルを用いてリソース使用量の個別予測値を算出する。例えば、配置候補算出部324は、各配置候補について、予測モデルを用いてシミュレートして、個別予測値を取得する。そして、配置候補算出部324は、配置候補ごとに、個別予測値の合計値を算出する。配置候補算出部324は、合計値が負荷の予測値を満たす配置候補を配置候補群に追加する。そのため、配置候補群には複数の配置候補が含まれる場合がある。 A specific processing example of steps S209 and S210 will be described below. First, the placement candidate calculation unit 324 derives a set (placement candidate) of pairs of instances, containers, and services from the number of instances in the computer environment 20, the number of containers that can be assigned to each instance, and the type of service to be provided. Then, the placement candidate calculation unit 324 calculates an individual predicted value of resource usage for each pair in each placement candidate using the prediction model described above. For example, the placement candidate calculation unit 324 obtains an individual prediction value by simulating each placement candidate using a prediction model. Then, the placement candidate calculation unit 324 calculates the total value of the individual prediction values for each placement candidate. The placement candidate calculation unit 324 adds a placement candidate whose total value satisfies the load prediction value to the placement candidate group. Therefore, the placement candidate group may include a plurality of placement candidates.

その場合、配置候補算出部324は、配置候補群内の各配置候補について優先度条件に基づいて優先度を付与する。まず、配置候補算出部324は、配置候補内の個別予測値が、設定情報311に含まれる各リソース使用量の上限値を超過するか否かを判定する。配置候補内の全ての個別予測値が上限値を超過しない場合、配置候補算出部324は、当該配置候補に最高の優先度を付与する。一方、配置候補内の一部又は全部の個別予測値が上限値を超過した場合、配置候補算出部324は、当該配置候補に、超過した個別予測値の数(リソース数、コンテナ数)に応じた優先度を付与する。例えば、配置候補算出部324は、上記シミュレートに応じて追加されるインスタンス数、追加される時間(追加時間)を取得し、配置候補ごとに、追加されるインスタンス数と追加時間の積を算出する。そして、配置候補算出部324は、当該積が大きいほど優先度を高く付与する。 In this case, the placement candidate calculation unit 324 assigns priority to each placement candidate in the placement candidate group based on the priority condition. First, the placement candidate calculation unit 324 determines whether or not the individual prediction value in the placement candidate exceeds the upper limit value of each resource usage included in the setting information 311 . If none of the individual prediction values in the placement candidate exceeds the upper limit, the placement candidate calculation unit 324 gives the placement candidate the highest priority. On the other hand, if some or all of the individual prediction values in the placement candidate exceed the upper limit, the placement candidate calculation unit 324 adds given priority. For example, the placement candidate calculation unit 324 acquires the number of instances to be added and the time to add (additional time) according to the simulation, and calculates the product of the number of instances to be added and the additional time for each placement candidate. do. Then, the placement candidate calculation unit 324 assigns a higher priority to the larger product.

複数の配置候補の全てについて優先度を付与した後、最高の優先度が1つであった場合、配置候補算出部324は、最高の優先度が付与された配置候補を再配置対象として選択し、ステップS211へ進む。 After assigning priority to all of the plurality of placement candidates, if the highest priority is one, the placement candidate calculation unit 324 selects the placement candidate to which the highest priority is assigned as a rearrangement target. , the process proceeds to step S211.

また、最高の優先度が複数であった場合、配置候補算出部324は、各配置候補における各インスタンスの個別予測値の合計値を算出し、インスタンスのリソース上限値と当該合計値との差分を算出する。そして、配置候補算出部324は、配置候補ごとに、差分の積を算出し、差分の積が最も大きくなる配置候補を再配置対象として選択し、ステップS211へ進む。つまり、リソース上限内の配置候補の中から、インスタンス間のリソース使用率のバラつきがより少ないものが選択される。 Further, when there are multiple highest priorities, the placement candidate calculation unit 324 calculates the total value of the individual prediction values of each instance in each placement candidate, and calculates the difference between the resource upper limit value of the instance and the total value. calculate. Then, the placement candidate calculation unit 324 calculates the product of differences for each placement candidate, selects the placement candidate with the largest product of differences as a rearrangement target, and proceeds to step S211. In other words, among the placement candidates within the resource upper limit, the one with the least variation in resource usage rate between instances is selected.

また、最高の優先度が付与された配置候補が存在しなかった場合、配置候補算出部324は、付与された優先度の中で最高の優先度が付与された配置候補を再配置対象として選択し、ステップS211へ進む。つまり、リソース上限を超過した配置候補の中から、追加されるインスタンス数と追加時間の積が最も大きいものが選択される。 Also, if there is no placement candidate given the highest priority, the placement candidate calculation unit 324 selects the placement candidate given the highest priority among the given priorities as a rearrangement target. and proceed to step S211. That is, from among the placement candidates exceeding the resource upper limit, the one with the largest product of the number of added instances and the added time is selected.

ステップS210の後、再配置部325は、選択された配置候補に基づいて計算機環境20内の各インスタンスにコンテナ及びサービスの再配置を行う(S211)。尚、ステップS210の後、時系列分析部322は、選択された配置候補におけるインスタンス、コンテナ及びサービスの組について予測モデルによりリソース使用量の予測値を算出し、予測時刻と予測値とを対応付けて、記憶装置31に格納してもよい。そして、これらを次回のステップS204における前回の予測値として用いても良い。 After step S210, the rearrangement unit 325 rearranges the containers and services to each instance in the computer environment 20 based on the selected placement candidates (S211). After step S210, the time-series analysis unit 322 calculates the resource usage forecast value for the set of the instance, container, and service in the selected placement candidate using the forecast model, and associates the forecast time with the forecast value. may be stored in the storage device 31. Then, these may be used as the previous predicted values in the next step S204.

ステップS206でNO又はステップS211の後、ステップS202へ進み、当該コンテナ配置方法を繰り返す。 After NO in step S206 or step S211, the process advances to step S202 to repeat the container arrangement method.

このように、本実施形態により、例えばIoTを対象としたコンテナ型仮想化を用いたサービスにおけるコンテナ配置を最適化することができる。すなわち、本実施形態では、コンテナ毎の時系列的なリソース使用状況を監視し、リソース使用状況の傾向変動及び季節変動に基づいてコンテナ配置の最適な組み合わせを求めるものである。その結果、CPU使用率やメモリ使用量といったリソース使用量を最適化するコンテナ配置を実現できる。また、季節変動の分析を傾向が変化したタイミング及びユーザ指定の間隔でのみ実施することで、再配置を素早く実施することができる。 As described above, according to the present embodiment, for example, it is possible to optimize the arrangement of containers in a service using container-type virtualization targeting IoT. That is, in this embodiment, the time-series resource usage status of each container is monitored, and the optimum combination of container placement is obtained based on the trend and seasonal fluctuations in the resource usage status. As a result, container placement that optimizes resource usage such as CPU usage and memory usage can be realized. In addition, by performing seasonal variation analysis only at the timing when the trend changes and at user-designated intervals, the rearrangement can be performed quickly.

<その他の実施形態>
尚、上述の実施形態では、ハードウェアの構成として説明したが、これに限定されるものではない。本開示は、任意の処理を、CPUにコンピュータプログラムを実行させることにより実現することも可能である。
<Other embodiments>
In the above-described embodiment, the hardware configuration is described, but the configuration is not limited to this. The present disclosure can also implement arbitrary processing by causing a CPU to execute a computer program.

上述の例において、プログラムは、様々なタイプの非一時的なコンピュータ可読媒体(non-transitory computer readable medium)を用いて格納され、コンピュータに供給することができる。非一時的なコンピュータ可読媒体は、様々なタイプの実体のある記録媒体(tangible storage medium)を含む。非一時的なコンピュータ可読媒体の例は、磁気記録媒体(例えばフレキシブルディスク、磁気テープ、ハードディスクドライブ)、光磁気記録媒体(例えば光磁気ディスク)、CD-ROM(Read Only Memory)、CD-R、CD-R/W、DVD(Digital Versatile Disc)、半導体メモリ(例えば、マスクROM、PROM(Programmable ROM)、EPROM(Erasable PROM)、フラッシュROM、RAM(Random Access Memory))を含む。また、プログラムは、様々なタイプの一時的なコンピュータ可読媒体(transitory computer readable medium)によってコンピュータに供給されてもよい。一時的なコンピュータ可読媒体の例は、電気信号、光信号、及び電磁波を含む。一時的なコンピュータ可読媒体は、電線及び光ファイバ等の有線通信路、又は無線通信路を介して、プログラムをコンピュータに供給できる。 In the above examples, the programs can be stored and delivered to computers using various types of non-transitory computer readable media. Non-transitory computer-readable media include various types of tangible storage media. Examples of non-transitory computer-readable media include magnetic recording media (eg, flexible discs, magnetic tapes, hard disk drives), magneto-optical recording media (eg, magneto-optical discs), CD-ROMs (Read Only Memory), CD-Rs, CD-R/W, DVD (Digital Versatile Disc), semiconductor memory (eg, mask ROM, PROM (Programmable ROM), EPROM (Erasable PROM), flash ROM, RAM (Random Access Memory)). The program may also be delivered to the computer on various types of transitory computer readable medium. Examples of transitory computer-readable media include electrical signals, optical signals, and electromagnetic waves. Transitory computer-readable media can deliver the program to the computer via wired channels, such as wires and optical fibers, or wireless channels.

なお、本開示は上記実施形態に限られたものではなく、趣旨を逸脱しない範囲で適宜変更することが可能である。また、本開示は、それぞれの実施形態を適宜組み合わせて実施されてもよい。 It should be noted that the present disclosure is not limited to the above embodiments, and can be modified as appropriate without departing from the spirit of the present disclosure. In addition, the present disclosure may be implemented by appropriately combining each embodiment.

上記の実施形態の一部又は全部は、以下の付記のようにも記載され得るが、以下には限られない。
(付記A1)
複数のコンテナが配置された計算機環境からリソース使用量の測定値を定期的に収集する収集部と、
前記測定値を時系列の分析処理により規則変動データと不規則変動データとに分解する時系列分析部と、
前記規則変動データに基づいて、現在から所定期間後までの前記計算機環境におけるリソース使用量の予測値を算出する予測部と、
前記予測値に基づいて前記計算機環境におけるコンテナの配置候補を算出する配置候補算出部と、
前記配置候補に基づいて前記計算機環境におけるコンテナの再配置を行う再配置部と、
を備える情報処理装置。
(付記A2)
前記時系列分析部は、
前記測定値と前記予測値の時系列における変動傾向が所定条件を満たす場合に、前記時系列の分析処理を実行する
付記A1に記載の情報処理装置。
(付記A3)
前記時系列分析部は、
前記測定値と前記予測値について対応する時刻における差分を算出し、
前記差分の時系列における変動傾向に規則性がある場合に、前記時系列の分析処理を実行する
付記A2に記載の情報処理装置。
(付記A4)
前記配置候補算出部は、
複数の前記配置候補を算出し、
前記算出された複数の配置候補の中から所定の優先度条件に基づいて、再配置対象の配置候補を選択し、
前記再配置部は、前記選択された配置候補に基づいて前記再配置を行う
付記A1乃至A3のいずれか1項に記載の情報処理装置。
(付記A5)
前記配置候補算出部は、
前記複数の配置候補のそれぞれについて、コンテナごとのリソース使用量の個別予測値を算出し、
前記個別予測値の合計値が前記計算機環境におけるリソース使用量の上限値を超えないものをより高い優先度と判定し、
前記優先度が最も高いものを前記再配置対象の配置候補として選択する
付記A4に記載の情報処理装置。
(付記A6)
前記配置候補算出部は、
前記複数の配置候補の中に前記合計値が前記上限値を超えないものが存在しない場合、前記所定期間内において追加されるインスタンス数と追加時間との積が最小となる配置候補を前記再配置対象として選択する
付記A5に記載の情報処理装置。
(付記A7)
前記配置候補算出部は、
前記複数の配置候補の中に前記所定の優先度条件に基づいて優先度が最も高いものが複数存在する場合、当該優先度が最も高い複数の配置候補のうちインスタンスごとのリソース使用量の予測値の合計値に基づいて、前記再配置対象の配置候補を選択する
付記A4乃至A6のいずれか1項に記載の情報処理装置。
(付記A8)
前記配置候補算出部は、
複数のサービスのそれぞれを前記複数のコンテナのいずれかに割り当てて前記配置候補を算出する
付記A1乃至A7のいずれか1項に記載の情報処理装置。
(付記B1)
コンピュータが、
複数のコンテナが配置された計算機環境からリソース使用量の測定値を定期的に収集し、
前記測定値を時系列の分析処理により規則変動データと不規則変動データとに分解し、
前記規則変動データに基づいて、現在から所定期間後までの前記計算機環境におけるリソース使用量の予測値を算出し、
前記予測値に基づいて前記計算機環境におけるコンテナの配置候補を算出し、
前記配置候補に基づいて前記計算機環境におけるコンテナの再配置を行う
コンテナ配置方法。
(付記C1)
複数のコンテナが配置された計算機環境からリソース使用量の測定値を定期的に収集する処理と、
前記測定値を時系列の分析処理により規則変動データと不規則変動データとに分解する処理と、
前記規則変動データに基づいて、現在から所定期間後までの前記計算機環境におけるリソース使用量の予測値を算出する処理と、
前記予測値に基づいて前記計算機環境におけるコンテナの配置候補を算出する処理と、
前記配置候補に基づいて前記計算機環境におけるコンテナの再配置を行う処理と、
をコンピュータに実行させるコンテナ配置プログラム。
Some or all of the above embodiments may also be described in the following additional remarks, but are not limited to the following.
(Appendix A1)
a collection unit that periodically collects measured values of resource usage from a computer environment in which a plurality of containers are arranged;
a time-series analysis unit that decomposes the measured values into regular fluctuation data and irregular fluctuation data by time-series analysis processing;
a prediction unit that calculates a predicted value of resource usage in the computer environment from now until a predetermined period from now based on the rule fluctuation data;
a placement candidate calculation unit that calculates a placement candidate for containers in the computer environment based on the predicted value;
a rearrangement unit that rearranges containers in the computer environment based on the placement candidates;
Information processing device.
(Appendix A2)
The time series analysis unit
The information processing apparatus according to appendix A1, wherein the time-series analysis process is executed when the fluctuation tendency of the measured value and the predicted value in the time series satisfies a predetermined condition.
(Appendix A3)
The time series analysis unit
calculating a difference between the measured value and the predicted value at corresponding times;
The information processing apparatus according to appendix A2, wherein the time-series analysis process is performed when there is regularity in the fluctuation trend in the time-series of the differences.
(Appendix A4)
The placement candidate calculation unit
calculating a plurality of placement candidates;
selecting a placement candidate to be rearranged from among the plurality of calculated placement candidates based on a predetermined priority condition;
The information processing apparatus according to any one of Appendixes A1 to A3, wherein the rearrangement unit performs the rearrangement based on the selected arrangement candidate.
(Appendix A5)
The placement candidate calculation unit
calculating an individual predicted value of resource usage for each container for each of the plurality of placement candidates;
determining that the total value of the individual prediction values does not exceed the upper limit of resource usage in the computer environment as a higher priority;
The information processing apparatus according to appendix A4, wherein the one with the highest priority is selected as a placement candidate for the rearrangement target.
(Appendix A6)
The placement candidate calculation unit
If none of the plurality of placement candidates has a total value that does not exceed the upper limit, the placement candidate that minimizes the product of the number of instances added within the predetermined period and the additional time is rearranged. The information processing apparatus according to appendix A5, which is selected as a target.
(Appendix A7)
The placement candidate calculation unit
when there are a plurality of placement candidates with the highest priority based on the predetermined priority condition, a predicted resource usage amount for each instance among the plurality of placement candidates with the highest priority; The information processing apparatus according to any one of appendices A4 to A6, wherein the arrangement candidate for the rearrangement is selected based on the total value of .
(Appendix A8)
The placement candidate calculation unit
The information processing apparatus according to any one of Appendixes A1 to A7, wherein each of a plurality of services is assigned to one of the plurality of containers to calculate the placement candidate.
(Appendix B1)
the computer
Periodically collect resource usage measurements from a multi-container computing environment,
Decomposing the measured values into regular fluctuation data and irregular fluctuation data by time-series analysis processing,
calculating a predicted value of resource usage in the computer environment from now until a predetermined period from now based on the rule fluctuation data;
calculating placement candidates for the container in the computer environment based on the predicted value;
A container placement method for rearranging containers in the computer environment based on the placement candidates.
(Appendix C1)
a process of periodically collecting resource usage measurements from a computer environment in which a plurality of containers are arranged;
a process of decomposing the measured values into regular fluctuation data and irregular fluctuation data by time-series analysis;
a process of calculating a predicted value of resource usage in the computer environment from now until a predetermined period from now based on the rule fluctuation data;
a process of calculating placement candidates for containers in the computer environment based on the predicted values;
a process of rearranging containers in the computer environment based on the placement candidates;
A container placement program that causes a computer to run a .

以上、実施形態(及び実施例)を参照して本願発明を説明したが、本願発明は上記実施形態(及び実施例)に限定されものではない。本願発明の構成や詳細には、本願発明のスコープ内で当業者が理解し得る様々な変更をすることができる。 Although the present invention has been described with reference to the embodiments (and examples), the present invention is not limited to the above-described 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.

10 情報処理装置
11 収集部
12 時系列分析部
13 予測部
14 配置候補算出部
15 再配置部
1000 クラウドシステム
20 計算機環境
21 インスタンス
211 コンテナ
2111 サービス
212 コンテナ
2121 サービス
22 インスタンス
221 コンテナ
2211 サービス
222 コンテナ
2221 サービス
2n インスタンス
2n1 コンテナ
2n11 サービス
2n2 コンテナ
2n21 サービス
N ネットワーク
30 コンテナ配置装置
31 記憶装置
311 設定情報
312 配置情報
313 測定値
314 予測値
315 残差
316 コンテナ配置プログラム
32 制御部
321 収集部
322 時系列分析部
323 予測部
324 配置候補算出部
325 再配置部
33 メモリ
34 通信部
10 information processing device 11 collection unit 12 time series analysis unit 13 prediction unit 14 placement candidate calculation unit 15 rearrangement unit 1000 cloud system 20 computer environment 21 instance 211 container 2111 service 212 container 2121 service 22 instance 221 container 2211 service 222 container 2221 service 2n instance 2n1 container 2n11 service 2n2 container 2n21 service N network 30 container placement device 31 storage device 311 setting information 312 placement information 313 measured value 314 prediction value 315 residual 316 container placement program 32 control unit 321 collection unit 322 time series analysis unit 323 Prediction unit 324 Placement candidate calculation unit 325 Rearrangement unit 33 Memory 34 Communication unit

Claims (9)

複数のコンテナが配置された計算機環境からリソース使用量の測定値を定期的に収集する収集部と、
前記測定値を時系列の分析処理により規則変動データと不規則変動データとに分解する時系列分析部と、
前記規則変動データに基づいて、現在から所定期間後までの前記計算機環境におけるリソース使用量の予測値を算出する予測部と、
前記予測値に基づいて前記計算機環境におけるコンテナの配置候補を算出する配置候補算出部と、
前記配置候補に基づいて前記計算機環境におけるコンテナの再配置を行う再配置部と、
を備え
前記時系列分析部は、
前記測定値と前記予測値の時系列における変動傾向が所定条件を満たす場合に、前記時系列の分析処理をさらに実行す
情報処理装置。
a collection unit that periodically collects measured values of resource usage from a computer environment in which a plurality of containers are arranged;
a time-series analysis unit that decomposes the measured values into regular fluctuation data and irregular fluctuation data by time-series analysis processing;
a prediction unit that calculates a predicted value of resource usage in the computer environment from now until a predetermined period from now based on the rule fluctuation data;
a placement candidate calculation unit that calculates a placement candidate for containers in the computer environment based on the predicted value;
a rearrangement unit that rearranges containers in the computer environment based on the placement candidates;
with
The time series analysis unit
When the trend of variation in the time series of the measured values and the predicted values satisfies a predetermined condition, the time series analysis process is further executed.
Information processing equipment.
前記時系列分析部は、
前記測定値と前記予測値について対応する時刻における差分を算出し、
前記差分の時系列における変動傾向に規則性がある場合に、前記時系列の分析処理を実行する
請求項に記載の情報処理装置。
The time series analysis unit
calculating a difference between the measured value and the predicted value at corresponding times;
The information processing apparatus according to claim 1 , wherein the time-series analysis process is performed when there is regularity in the fluctuation tendency in the time-series of the differences.
前記配置候補算出部は、
複数の前記配置候補を算出し、
前記算出された複数の配置候補の中から所定の優先度条件に基づいて、再配置対象の配置候補を選択し、
前記再配置部は、前記選択された配置候補に基づいて前記再配置を行う
請求項1又は2に記載の情報処理装置。
The placement candidate calculation unit
calculating a plurality of placement candidates;
selecting a placement candidate to be rearranged from among the plurality of calculated placement candidates based on a predetermined priority condition;
The information processing apparatus according to Claim 1 or 2 , wherein the rearrangement unit performs the rearrangement based on the selected arrangement candidate.
前記配置候補算出部は、
前記複数の配置候補のそれぞれについて、コンテナごとのリソース使用量の個別予測値を算出し、
前記個別予測値の合計値が前記計算機環境におけるリソース使用量の上限値を超えないものをより高い優先度と判定し、
前記優先度が最も高いものを前記再配置対象の配置候補として選択する
請求項に記載の情報処理装置。
The placement candidate calculation unit
calculating an individual predicted value of resource usage for each container for each of the plurality of placement candidates;
determining that the total value of the individual prediction values does not exceed the upper limit of resource usage in the computer environment as a higher priority;
The information processing apparatus according to claim 3 , wherein the one with the highest priority is selected as a placement candidate for the rearrangement.
前記配置候補算出部は、
前記複数の配置候補の中に前記合計値が前記上限値を超えないものが存在しない場合、前記所定期間内において追加されるインスタンス数と追加時間との積が最小となる配置候補を前記再配置対象として選択する
請求項に記載の情報処理装置。
The placement candidate calculation unit
If none of the plurality of placement candidates has a total value that does not exceed the upper limit, the placement candidate that minimizes the product of the number of instances added within the predetermined period and the additional time is rearranged. The information processing apparatus according to claim 4 , which is selected as an object.
前記配置候補算出部は、
前記複数の配置候補の中に前記所定の優先度条件に基づいて優先度が最も高いものが複数存在する場合、当該優先度が最も高い複数の配置候補のうちインスタンスごとのリソース使用量の予測値の合計値に基づいて、前記再配置対象の配置候補を選択する
請求項乃至のいずれか1項に記載の情報処理装置。
The placement candidate calculation unit
when there are a plurality of placement candidates with the highest priority based on the predetermined priority condition, a predicted resource usage amount for each instance among the plurality of placement candidates with the highest priority; 6. The information processing apparatus according to any one of claims 3 to 5 , wherein the arrangement candidate for the rearrangement is selected based on the total value of .
前記配置候補算出部は、
複数のサービスのそれぞれを前記複数のコンテナのいずれかに割り当てて前記配置候補を算出する
請求項1乃至のいずれか1項に記載の情報処理装置。
The placement candidate calculation unit
The information processing apparatus according to any one of claims 1 to 6 , wherein each of a plurality of services is assigned to one of the plurality of containers to calculate the placement candidate.
コンピュータが、
複数のコンテナが配置された計算機環境からリソース使用量の測定値を定期的に収集し、
前記測定値を時系列の分析処理により規則変動データと不規則変動データとに分解し、
前記規則変動データに基づいて、現在から所定期間後までの前記計算機環境におけるリソース使用量の予測値を算出し、
前記予測値に基づいて前記計算機環境におけるコンテナの配置候補を算出し、
前記配置候補に基づいて前記計算機環境におけるコンテナの再配置を行い、
前記測定値と前記予測値の時系列における変動傾向が所定条件を満たす場合に、前記時系列の分析処理をさらに実行する
コンテナ配置方法。
the computer
Periodically collect resource usage measurements from a multi-container computing environment,
Decomposing the measured values into regular fluctuation data and irregular fluctuation data by time-series analysis processing,
calculating a predicted value of resource usage in the computer environment from now until a predetermined period from now based on the rule fluctuation data;
calculating placement candidates for the container in the computer environment based on the predicted value;
rearranging the containers in the computer environment based on the placement candidates ;
When the trend of variation in the time series of the measured values and the predicted values satisfies a predetermined condition, the time series analysis process is further executed.
Container placement method.
複数のコンテナが配置された計算機環境からリソース使用量の測定値を定期的に収集する処理と、
前記測定値を時系列の分析処理により規則変動データと不規則変動データとに分解する処理と、
前記規則変動データに基づいて、現在から所定期間後までの前記計算機環境におけるリソース使用量の予測値を算出する処理と、
前記予測値に基づいて前記計算機環境におけるコンテナの配置候補を算出する処理と、
前記配置候補に基づいて前記計算機環境におけるコンテナの再配置を行う処理と、
前記測定値と前記予測値の時系列における変動傾向が所定条件を満たす場合に、前記時系列の分析処理をさらに実行する処理と、
をコンピュータに実行させるコンテナ配置プログラム。
a process of periodically collecting resource usage measurements from a computer environment in which a plurality of containers are arranged;
a process of decomposing the measured values into regular fluctuation data and irregular fluctuation data by time-series analysis;
a process of calculating a predicted value of resource usage in the computer environment from now until a predetermined period from now based on the rule fluctuation data;
a process of calculating placement candidates for containers in the computer environment based on the predicted values;
a process of rearranging containers in the computer environment based on the placement candidates;
a process of further executing a process of analyzing the time series when the trend of variation in the time series of the measured values and the predicted values satisfies a predetermined condition;
A container placement program that causes a computer to run a .
JP2019041590A 2019-03-07 2019-03-07 Information processing device, container placement method, and container placement program Active JP7234702B2 (en)

Priority Applications (1)

Application Number Priority Date Filing Date Title
JP2019041590A JP7234702B2 (en) 2019-03-07 2019-03-07 Information processing device, container placement method, and container placement program

Applications Claiming Priority (1)

Application Number Priority Date Filing Date Title
JP2019041590A JP7234702B2 (en) 2019-03-07 2019-03-07 Information processing device, container placement method, and container placement program

Publications (2)

Publication Number Publication Date
JP2020144669A JP2020144669A (en) 2020-09-10
JP7234702B2 true JP7234702B2 (en) 2023-03-08

Family

ID=72353682

Family Applications (1)

Application Number Title Priority Date Filing Date
JP2019041590A Active JP7234702B2 (en) 2019-03-07 2019-03-07 Information processing device, container placement method, and container placement program

Country Status (1)

Country Link
JP (1) JP7234702B2 (en)

Families Citing this family (4)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
CN112187894B (en) * 2020-09-17 2022-06-10 杭州谐云科技有限公司 Container dynamic scheduling method based on load correlation prediction
KR102427473B1 (en) * 2020-09-29 2022-08-01 한국전자기술연구원 Method for increased workload prediction accuracy based on available resource status in the micro data center
WO2023148795A1 (en) * 2022-02-01 2023-08-10 三菱電機株式会社 Resource management device and resource management method
CN117931094B (en) * 2024-03-21 2024-06-14 山东奥斯瑞特检验检测有限公司 Block chain-based reliable storage method for ambient air monitoring data

Citations (8)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
JP2015152984A (en) 2014-02-12 2015-08-24 日本電信電話株式会社 Virtual machine distribution device, method and program
JP2016212609A (en) 2015-05-08 2016-12-15 株式会社日立製作所 Virtual machine operation support system and virtual machine operation support method
US20170012834A1 (en) 2013-04-11 2017-01-12 Oracle International Corporation Predictive diagnosis of sla violations in cloud services by seasonal trending and forecasting with thread intensity analytics
JP2017037645A (en) 2015-08-07 2017-02-16 タタ コンサルタンシー サービシズ リミテッドTATA Consultancy Services Limited System and method for smart alerts
JP2017146791A (en) 2016-02-17 2017-08-24 日本電信電話株式会社 In-cluster migration management system, in-cluster migration management method, management server and program
JP2018028746A (en) 2016-08-16 2018-02-22 富士通株式会社 Virtual machine management program, virtual machine management method, and virtual machine management device
JP2018109973A (en) 2016-12-29 2018-07-12 ブル・エス・アー・エス Mechanism for monitoring and alerting computer system applications
JP2018181062A (en) 2017-04-17 2018-11-15 富士通株式会社 Management apparatus, control method for information processing system, and management program for management apparatus

Patent Citations (8)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US20170012834A1 (en) 2013-04-11 2017-01-12 Oracle International Corporation Predictive diagnosis of sla violations in cloud services by seasonal trending and forecasting with thread intensity analytics
JP2015152984A (en) 2014-02-12 2015-08-24 日本電信電話株式会社 Virtual machine distribution device, method and program
JP2016212609A (en) 2015-05-08 2016-12-15 株式会社日立製作所 Virtual machine operation support system and virtual machine operation support method
JP2017037645A (en) 2015-08-07 2017-02-16 タタ コンサルタンシー サービシズ リミテッドTATA Consultancy Services Limited System and method for smart alerts
JP2017146791A (en) 2016-02-17 2017-08-24 日本電信電話株式会社 In-cluster migration management system, in-cluster migration management method, management server and program
JP2018028746A (en) 2016-08-16 2018-02-22 富士通株式会社 Virtual machine management program, virtual machine management method, and virtual machine management device
JP2018109973A (en) 2016-12-29 2018-07-12 ブル・エス・アー・エス Mechanism for monitoring and alerting computer system applications
JP2018181062A (en) 2017-04-17 2018-11-15 富士通株式会社 Management apparatus, control method for information processing system, and management program for management apparatus

Also Published As

Publication number Publication date
JP2020144669A (en) 2020-09-10

Similar Documents

Publication Publication Date Title
JP7234702B2 (en) Information processing device, container placement method, and container placement program
US10346203B2 (en) Adaptive autoscaling for virtualized applications
US9396008B2 (en) System and method for continuous optimization of computing systems with automated assignment of virtual machines and physical machines to hosts
Beloglazov et al. Managing overloaded hosts for dynamic consolidation of virtual machines in cloud data centers under quality of service constraints
US10977086B2 (en) Workload placement and balancing within a containerized infrastructure
WO2021036936A1 (en) Method and apparatus for allocating resources and tasks in distributed system, and system
JP6241300B2 (en) Job scheduling apparatus, job scheduling method, and job scheduling program
Vazquez Time series forecasting of cloud data center workloads for dynamic resource provisioning
US10956230B2 (en) Workload placement with forecast
US9921861B2 (en) Virtual machine management method and information processing apparatus
US20140019964A1 (en) System and method for automated assignment of virtual machines and physical machines to hosts using interval analysis
KR20190070659A (en) Cloud computing apparatus for supporting resource allocation based on container and cloud computing method for the same
JP2016042284A (en) Parallel computer system, management device, method for controlling parallel computer system, and management device control program
US10944645B2 (en) Node of a network and a method of operating the same for resource distribution
US20140282540A1 (en) Performant host selection for virtualization centers
JP2010244181A (en) Virtual machine management system, and virtual machine arrangement setting method and program
JPWO2015001850A1 (en) Task assignment determination device, control method, and program
WO2016178316A1 (en) Computer procurement predicting device, computer procurement predicting method, and program
JP2021056955A (en) Distributed storage system and data migration method
Xue et al. Managing data center tickets: Prediction and active sizing
US20230229486A1 (en) Virtual machine workload prediction method, virtual machine management method having the same and virtual machine management system implementing the same
JP2016024612A (en) Data processing control method, data processing control program, and data processing control apparatus
Mohammadi Bahram Abadi et al. Self-adaptive architecture for virtual machines consolidation based on probabilistic model evaluation of data centers in Cloud computing
US11212174B2 (en) Network management device and network management method
KR102612841B1 (en) Method for applying workload prediction model by operation service in micro data center

Legal Events

Date Code Title Description
A621 Written request for application examination

Free format text: JAPANESE INTERMEDIATE CODE: A621

Effective date: 20220203

A977 Report on retrieval

Free format text: JAPANESE INTERMEDIATE CODE: A971007

Effective date: 20221027

A131 Notification of reasons for refusal

Free format text: JAPANESE INTERMEDIATE CODE: A131

Effective date: 20221108

A521 Request for written amendment filed

Free format text: JAPANESE INTERMEDIATE CODE: A523

Effective date: 20230104

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: 20230124

A61 First payment of annual fees (during grant procedure)

Free format text: JAPANESE INTERMEDIATE CODE: A61

Effective date: 20230206

R151 Written notification of patent or utility model registration

Ref document number: 7234702

Country of ref document: JP

Free format text: JAPANESE INTERMEDIATE CODE: R151