Deprecated: The each() function is deprecated. This message will be suppressed on further calls in /home/zhenxiangba/zhenxiangba.com/public_html/phproxy-improved-master/index.php on line 456
JP7399427B2 - Server and container systems - Google Patents
[go: Go Back, main page]

JP7399427B2 - Server and container systems - Google Patents

Server and container systems Download PDF

Info

Publication number
JP7399427B2
JP7399427B2 JP2021035782A JP2021035782A JP7399427B2 JP 7399427 B2 JP7399427 B2 JP 7399427B2 JP 2021035782 A JP2021035782 A JP 2021035782A JP 2021035782 A JP2021035782 A JP 2021035782A JP 7399427 B2 JP7399427 B2 JP 7399427B2
Authority
JP
Japan
Prior art keywords
pod
status
network
server
resource
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
JP2021035782A
Other languages
Japanese (ja)
Other versions
JP2022135765A (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.)
Keio University
SoftBank Corp
Original Assignee
Keio University
SoftBank 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 Keio University, SoftBank Corp filed Critical Keio University
Priority to JP2021035782A priority Critical patent/JP7399427B2/en
Publication of JP2022135765A publication Critical patent/JP2022135765A/en
Application granted granted Critical
Publication of JP7399427B2 publication Critical patent/JP7399427B2/en
Active legal-status Critical Current
Anticipated expiration legal-status Critical

Links

Images

Landscapes

  • Debugging And Monitoring (AREA)

Description

本発明は、ポッド配置決定装置、ポッド配置決定方法、端末機器、エッジサーバ、サーバ、コンテナシステム、およびプログラムに関する。 The present invention relates to a pod placement determining device, a pod placement determining method, a terminal device, an edge server, a server, a container system, and a program.

パーソナルコンピュータおよび携帯電話などの各種の端末機器においてアプリケーションを実行する際、当該アプリケーションを構成するモジュールの中で負荷が大きいものをネットワーク中に存在するクラウドサーバに実行させることにより、アプリケーションの実行を効率よく行える可能性がある。このような実行の形態はオフロードと呼ばれる。しかし端末機器とクラウドサーバとの間の通信遅延は一般的に大きいため、アプリケーションの応答時間が長くなってしまう可能性がある.そこで従来、端末機器のネットワーク接続地点付近(エッジ)にMEC(Multi-access Edge Computing)サーバを配置することによって、端末機器とMECサーバとの間の通信遅延を小さくし、かつMECサーバにアプリケーションの一部の機能をオフロードすることによって、アプリケーションの応答時間を小さくすることが提案されている。 When an application is executed on various terminal devices such as a personal computer and a mobile phone, the execution of the application can be made more efficient by having a cloud server located in the network execute the module that has a heavy load among the modules that make up the application. It may work well. This form of execution is called offloading. However, since the communication delay between the terminal device and the cloud server is generally large, the response time of the application may become longer. Therefore, conventionally, by placing an MEC (Multi-access Edge Computing) server near the network connection point (edge) of the terminal device, the communication delay between the terminal device and the MEC server can be reduced, and the application can be sent to the MEC server. It has been proposed to reduce application response time by offloading some functionality.

また、端末機器上で動作するアプリケーション(クライアント)と、クラウドサーバで動作するアプリケーション(サーバアプリケーション)とが通信するという形態のアプリケーション(クライアント・サーバ型アプリケーション)も、良く利用されている。このようなアプリケーションでも、クライアントはクラウドサーバと通信するよりもMECサーバと通信する方が、通信遅延を小さくすることができる。 Furthermore, applications in which an application (client) running on a terminal device and an application (server application) running on a cloud server communicate with each other (client-server type applications) are also often used. Even in such an application, communication delay can be reduced if the client communicates with the MEC server rather than with the cloud server.

また、物理コンピュータの仮想化技術には、ハイパーバイザ型とコンテナ型とがある。コンテナ型の仮想化技術は、コンテナ間でオペレーティングシステムのカーネルを共有するため、ハイパーバイザ型の仮想化技術と比較して軽量である。さらに、アプリケーションを構成するさまざまなモジュールをそれぞれコンテナとして実現し、アプリケーションを複数のコンテナの集合体として構成することが一般的になっている。 Further, virtualization technology for physical computers includes hypervisor type and container type. Container-based virtualization technology is lighter in weight than hypervisor-based virtualization technology because the operating system kernel is shared between containers. Furthermore, it has become common to implement various modules that make up an application as containers, and to configure an application as a collection of multiple containers.

コンテナの作成、配置、スケーリング、および状態監視などを自動的に行うシステムを、一般的にコンテナオーケストレーションシステムと呼ぶ。非特許文献1に、代表的なコンテナオーケストレーションシステムとして知られるKubernetesが開示されている。コンテナオーケストレーションシステムでは、1つ以上のコンテナを含むポッドを最小の管理対象とすることが多い。コンテナオーケストレーションシステムでは、データセンタなどのコンピュータクラスタ上に仮想マシンとしてマスターノードおよびワーカノードを配置し、1台のマスターノードと1台以上のワーカノードとによって、コンテナオーケストレーションクラスタを構成する。コンテナオーケストレーションクラスタ内では高可用性および負荷分散を考慮し、マスターノードがワーカノードにポッドを配置することによってポッドクラスタを構成する。 A system that automatically creates, deploys, scales, and monitors the status of containers is generally called a container orchestration system. Kubernetes, which is known as a typical container orchestration system, is disclosed in Non-Patent Document 1. In container orchestration systems, the minimum management target is often a pod containing one or more containers. In a container orchestration system, a master node and worker nodes are arranged as virtual machines on a computer cluster such as a data center, and one master node and one or more worker nodes constitute a container orchestration cluster. In a container orchestration cluster, a master node configures a pod cluster by placing pods on worker nodes, taking into account high availability and load balancing.

"Kubernetes (K8s)"、[online]、[令和3年2月25日検索]、インターネット〈https://kubernetes.io/ja/>"Kubernetes (K8s)", [online], [searched on February 25, 2021], Internet <https://kubernetes.io/ja/>

一般的なコンテナオーケストレーションシステムは、コンテナの配置を決定する際にワーカノードの負荷を考慮する。しかし、ネットワーク状況を考慮していないため、ネットワーク状況が悪い(通信遅延が大きい等)各ワーカノードに各ポッドを配置する恐れがある。また、ワーカノードのリソース状況を考慮していないため、ワーカノードへのポッドの設置に失敗する可能性がある。 Typical container orchestration systems consider the load on worker nodes when determining container placement. However, since it does not take network conditions into consideration, there is a risk that each pod may be placed on each worker node with poor network conditions (such as large communication delays). Additionally, since the resource status of worker nodes is not taken into account, there is a possibility that installation of pods on worker nodes will fail.

本発明は前記の課題を解決するためになされたものであり、その目的は、ネットワーク状況およびワーカノードのリソース状況の双方を考慮したポッド配置を可能とすることにある。 The present invention has been made to solve the above problems, and its purpose is to enable pod placement that takes into account both the network situation and the resource situation of worker nodes.

本発明の一態様に係るポッド配置決定装置は、前記の課題を解決するために、第1ワーカノードを備えている第1エッジサーバが配置される第1拠点から、第2ワーカノードを備えている第2エッジサーバが配置される第2拠点への通信時のネットワーク状況を測定する測定部と、前記第1エッジサーバによって測定された前記第1ワーカノードのリソース状況を受信する第1受信部と、測定されたネットワーク状況および受信されたリソース状況を保存する保存部と、コンテナオーケストレーションクラスタとしてのアプリケーションを構成する第1ポッドが要求するネットワークへの要求事項および前記第1ポッドが要求するリソースへの要求事項を受信する第2受信部と、保存された前記ネットワーク状況およびリソース状況と、受信された前記ネットワークへの要求事項および前記リソースへの要求事項とに基づいて、前記第1ポッドを前記第1ワーカノードに配置するか否かを決定する決定部とを備えている。 In order to solve the above-mentioned problem, a pod placement determining device according to an aspect of the present invention provides a pod placement determination device that connects a first edge server including a first worker node to a first edge server including a second worker node. a measuring unit that measures a network status during communication to a second base where two edge servers are arranged; a first receiving unit that receives the resource status of the first worker node measured by the first edge server; a storage unit that stores the received network status and the received resource status; network requirements requested by a first pod that constitutes an application as a container orchestration cluster; and resource requests requested by the first pod; a second receiving unit that receives information about the first pod, the stored network status and resource status, and the received requirements for the network and the received requirements for the resource; and a determining unit that determines whether or not to place the computer in a worker node.

本発明の一態様によれば、ネットワーク状況およびワーカノードのリソース状況の双方を考慮したポッド配置を可能とするという効果を奏する。 According to one aspect of the present invention, it is possible to arrange pods in consideration of both the network situation and the resource situation of worker nodes.

第1実施形態に係るコンテナシステムの構成例を示す図である。FIG. 1 is a diagram illustrating a configuration example of a container system according to a first embodiment. コンテナシステムがネットワーク状況およびリソース状況を測定する際にコンテナシステムによって実行される一連の処理の流れを示すシーケンス図である。FIG. 2 is a sequence diagram showing the flow of a series of processes executed by the container system when the container system measures network status and resource status. ネットワーク状況通知メッセージの一例を示す図である。FIG. 3 is a diagram illustrating an example of a network status notification message. リソース状況通知メッセージの一例を示す図である。FIG. 3 is a diagram illustrating an example of a resource status notification message. 拠点状況通知メッセージの一例を示す図である。It is a figure which shows an example of a base status notification message. 端末機器がアプリケーションを起動する際にコンテナシステムによって実行される一連の処理の流れを示すシーケンス図である。FIG. 2 is a sequence diagram showing the flow of a series of processes executed by the container system when a terminal device starts an application. アプリ起動要求メッセージの一例を示す図である。FIG. 3 is a diagram illustrating an example of an application startup request message. アプリ構成情報要求メッセージの一例を示す図である。FIG. 3 is a diagram illustrating an example of an application configuration information request message. アプリ構成情報応答メッセージの一例を示す図である。It is a figure which shows an example of an application configuration information response message. ポッド配置決定要求メッセージの一例を示す図である。FIG. 3 is a diagram illustrating an example of a pod placement determination request message. ポッド配置決定要求メッセージの一例を示す図である。FIG. 3 is a diagram illustrating an example of a pod placement determination request message. ポッド配置決定応答メッセージの一例を示す図である。FIG. 7 is a diagram illustrating an example of a pod placement determination response message. ポッド配置決定応答メッセージの一例を示す図である。FIG. 7 is a diagram illustrating an example of a pod placement determination response message. ポッド配置要求メッセージの一例を示す図である。FIG. 3 is a diagram showing an example of a pod placement request message. ポッド配置要求メッセージの一例を示す図である。FIG. 3 is a diagram showing an example of a pod placement request message. ポッド配置応答メッセージの一例を示す図である。FIG. 6 is a diagram illustrating an example of a pod placement response message. ポッド配置要求メッセージの一例を示す図である。FIG. 3 is a diagram showing an example of a pod placement request message. ポッド配置応答メッセージの一例を示す図である。FIG. 6 is a diagram illustrating an example of a pod placement response message. ポッド配置要求メッセージの一例を示す図である。FIG. 3 is a diagram showing an example of a pod placement request message. ポッド配置応答メッセージの一例を示す図である。FIG. 6 is a diagram illustrating an example of a pod placement response message. ポッド配置応答メッセージの一例を示す図である。FIG. 6 is a diagram illustrating an example of a pod placement response message. アプリ起動応答メッセージの一例を示す図である。FIG. 3 is a diagram illustrating an example of an application activation response message. コンテナシステムがアプリケーションを停止する際に実行する一連の処理の流れを示すシーケンス図である。FIG. 2 is a sequence diagram showing the flow of a series of processes executed by the container system when stopping an application. アプリ停止要求メッセージの一例を示す図である。It is a figure which shows an example of an application stop request message. ポッド停止要求メッセージの一例を示す図である。FIG. 3 is a diagram illustrating an example of a pod stop request message. ポッド停止応答メッセージの一例を示す図である。It is a figure which shows an example of a pod stop response message. アプリ停止応答メッセージの一例を示す図である。It is a figure which shows an example of an application stop response message. 測定要求メッセージの一例を示す図である。FIG. 3 is a diagram showing an example of a measurement request message. 測定要求メッセージの一例を示す図である。FIG. 3 is a diagram showing an example of a measurement request message. 測定要求メッセージの一例を示す図である。FIG. 3 is a diagram showing an example of a measurement request message. 測定要求メッセージの一例を示す図である。FIG. 3 is a diagram showing an example of a measurement request message. 測定要求メッセージの一例を示す図である。FIG. 3 is a diagram showing an example of a measurement request message. 第2実施形態に係るコンテナシステムの構成を示すブロック図である。FIG. 2 is a block diagram showing the configuration of a container system according to a second embodiment. 端末機器がクライアントAppを起動する際にコンテナシステムによって実行される一連の処理の流れを示すシーケンス図である。FIG. 2 is a sequence diagram showing the flow of a series of processes executed by the container system when a terminal device starts a client App. アプリ要求メッセージの一例を示す図である。FIG. 3 is a diagram illustrating an example of an application request message. ポッド配置要求メッセージの一例を示す図である。FIG. 3 is a diagram showing an example of a pod placement request message. ポッド配置応答メッセージの一例を示す図である。FIG. 6 is a diagram illustrating an example of a pod placement response message. アプリ応答メッセージの一例を示す図である。It is a figure which shows an example of an application response message. サーバアプリケーションを停止する際にコンテナシステムによって実行される一連の処理の流れを示すシーケンス図である。FIG. 2 is a sequence diagram showing the flow of a series of processes executed by the container system when stopping a server application.

〔実施形態1〕
(システムの構成)
図1は、第1実施形態に係るコンテナシステム1の構成例を示す図である。この図に示すように、コンテナシステム1は、端末機器2、クラウドサーバ3(サーバ)、第1拠点装置4(ポッド配置決定装置)、複数の第1MEC(Multi-access Edge Computing)サーバ5(第1エッジサーバ)、第2拠点装置6(第2ポッド配置決定装置)、および複数の第2MECサーバ7(第2エッジサーバ)を備えている。これらの装置は、ネットワークを介して互いに通信可能に接続されている。ネットワークには、いわゆるクラウドが配置されている。クラウドサーバ3は、クラウドに配置されている。図1には、2つの異なる第1拠点および第2拠点が図示されている。拠点とは、端末機器2が有線または無線でネットワークに接続する接続ポイント付近に位置する物理的な場所のことである。図1では、端末機器2は、第2拠点よりも第1拠点の近くに位置している。第1拠点および第2拠点の識別子を、それぞれBaseID1およびBaseID2とする。
[Embodiment 1]
(System configuration)
FIG. 1 is a diagram showing a configuration example of a container system 1 according to the first embodiment. As shown in this figure, the container system 1 includes a terminal device 2, a cloud server 3 (server), a first base device 4 (pod placement determining device), and a plurality of first MEC (Multi-access Edge Computing) servers 5 (first base device). 1 edge server), a second base device 6 (second pod placement determining device), and a plurality of second MEC servers 7 (second edge servers). These devices are communicably connected to each other via a network. A so-called cloud is arranged in the network. The cloud server 3 is located in the cloud. In FIG. 1, two different first and second locations are illustrated. A base is a physical location located near a connection point where the terminal device 2 connects to the network by wire or wirelessly. In FIG. 1, the terminal device 2 is located closer to the first base than the second base. Let the identifiers of the first base and second base be BaseID1 and BaseID2, respectively.

端末機器2は、プリファレンスリポジトリ21、イメージリポジトリ22、および起動App23(起動モジュール)を備えている。端末機器2は、第3ワーカノードとしても機能する。 The terminal device 2 includes a preference repository 21, an image repository 22, and a startup App 23 (startup module). The terminal device 2 also functions as a third worker node.

クラウドサーバ3は、グローバルMANO(Management and Orchestration)31(第1サーバ受信部、第2サーバ受信部、第2決定部)、グローバルデータストア32(サーバ情報保存部)、およびオリジンイメージリポジトリ33を備えている。 The cloud server 3 includes a global MANO (Management and Orchestration) 31 (first server receiving unit, second server receiving unit, second determining unit), a global data store 32 (server information storage unit), and an origin image repository 33. ing.

第1拠点に、第1拠点装置4と、n台(nは1以上の整数)の第1MECサーバ5とが配置されている。第1拠点装置4は、第1マスターノード41、第1ネットワークモニタ42(測定部、第1ネットワーク状況測定部)、第1ローカルMANO43(第2受信部、決定部)、第1ローカルデータストア44(第1受信部、保存部、第1送信部)、第1ローカルイメージリポジトリ45(イメージ保存部)、および第1AppAPI46を備えている。これらのモジュールの識別子を、それぞれMnID1、NmonID1、LManoID1、LdsID1、LirID1、およびAppApiID1とする。各第1MECサーバ5は、第1リソースモニタ51(測定部、リソース状況測定部、第1リソース状況測定部、第1リソース状況送信部)、第1ワーカノード52、および第4ワーカノード53を備えている。これらのモジュールの識別子を、それぞれRmonID1、WnID1、およびWnID4とする。 A first base device 4 and n (n is an integer greater than or equal to 1) first MEC servers 5 are arranged at the first base. The first base device 4 includes a first master node 41, a first network monitor 42 (measuring unit, first network status measuring unit), a first local MANO 43 (second receiving unit, determining unit), and a first local data store 44. (a first receiving unit, a storage unit, a first transmission unit), a first local image repository 45 (image storage unit), and a first App API 46. Let the identifiers of these modules be MnID1, NmonID1, LManoID1, LdsID1, LirID1, and AppApiID1, respectively. Each first MEC server 5 includes a first resource monitor 51 (measuring unit, resource status measuring unit, first resource status measuring unit, first resource status transmitting unit), a first worker node 52, and a fourth worker node 53. . Let the identifiers of these modules be RmonID1, WnID1, and WnID4, respectively.

第2拠点に、第2拠点装置6と、m台(mは1以上の整数)の第2MECサーバ7とが配置されている。第2拠点装置6は、第2マスターノード61、第2ネットワークモニタ62(第2ネットワーク状況測定部)、第2ローカルMANO63、第2ローカルデータストア64(第2受信部、保存部、第2送信部)、第2ローカルイメージリポジトリ65、および第2AppAPI66を備えている。これらのモジュールの識別子を、それぞれMnID2、NmonID2、LManoID2、LdsID2、LirID2、およびAppApiID2とする。各第2MECサーバ7は、第2リソースモニタ71(第2リソース状況測定部、第2リソース状況送信部)、第2ワーカノード72、および第5ワーカノード73を備えている。これらのモジュールの識別子を、それぞれRmonID2、WnID2、およびWnID5とする。 A second base device 6 and m second MEC servers 7 (m is an integer of 1 or more) are arranged at the second base. The second base device 6 includes a second master node 61, a second network monitor 62 (second network status measurement unit), a second local MANO 63, a second local data store 64 (second reception unit, storage unit, second transmission ), a second local image repository 65, and a second App API 66. Let the identifiers of these modules be MnID2, NmonID2, LManoID2, LdsID2, LirID2, and AppApiID2, respectively. Each second MEC server 7 includes a second resource monitor 71 (second resource status measuring unit, second resource status transmitting unit), a second worker node 72, and a fifth worker node 73. Let the identifiers of these modules be RmonID2, WnID2, and WnID5, respectively.

本実施形態では、第1拠点装置4は、1つの独立した物理マシンである。そして、第1拠点装置4内に、仮想マシンとしての第1マスターノード41が設定されている。これに限らず、第1マスターノード41は、個別の物理マシンとして動作してもよい。また、各第1MECサーバ5は、1つの独立した物理マシンである。そして、各第1MECサーバ5内に、仮想マシンとしての第1ワーカノード52および第4ワーカノード53が配置されている。これに限らず、第1ワーカノード52および第4ワーカノード53は、個別の物理マシンとして動作してもよい。 In this embodiment, the first base device 4 is one independent physical machine. A first master node 41 as a virtual machine is set within the first base device 4. However, the first master node 41 may operate as an individual physical machine. Further, each first MEC server 5 is one independent physical machine. In each first MEC server 5, a first worker node 52 and a fourth worker node 53 as virtual machines are arranged. However, the present invention is not limited to this, and the first worker node 52 and the fourth worker node 53 may operate as separate physical machines.

本実施形態では、第2拠点装置6は、1つの独立した物理マシンである。そして、第2拠点装置6内に、仮想マシンとしての第2マスターノード61が設定されている。これに限らず、第2マスターノード61は、個別の物理マシンとして動作してもよい。また、各第2MECサーバ7は、1つの独立した物理マシンである。そして、各第2MECサーバ7内に、仮想マシンとしての第2ワーカノード72および第5ワーカノード73が配置されている。これに限らず、第2ワーカノード72および第5ワーカノード73は、個別の物理マシンとして動作してもよい。 In this embodiment, the second base device 6 is one independent physical machine. A second master node 61 as a virtual machine is set within the second base device 6. However, the second master node 61 may operate as an individual physical machine. Furthermore, each second MEC server 7 is one independent physical machine. In each second MEC server 7, a second worker node 72 and a fifth worker node 73 as virtual machines are arranged. However, the present invention is not limited to this, and the second worker node 72 and the fifth worker node 73 may operate as separate physical machines.

上述した各マスターノードおよび各ワーカノードは、必要に応じて、1つのコンテナオーケストレーションクラスタを構成する。図1の例では、第1マスターノード41、第3ワーカノード(端末機器2)、第1ワーカノード52、および第2ワーカノード72が、ある1つのコンテナオーケストレーションクラスタを構成している。また、特に図示していないが、第2マスターノード61、第1ワーカノード52、および第5ワーカノード73が、他の1つのコンテナオーケストレーションクラスタを構成している。このように、第1ワーカノード52は、異なる2つのコンテナオーケストレーションクラスタに属している。 Each master node and each worker node described above configure one container orchestration cluster as necessary. In the example of FIG. 1, the first master node 41, the third worker node (terminal device 2), the first worker node 52, and the second worker node 72 constitute one container orchestration cluster. Although not particularly shown, the second master node 61, first worker node 52, and fifth worker node 73 constitute another container orchestration cluster. Thus, the first worker node 52 belongs to two different container orchestration clusters.

図1には、第1拠点の近傍で端末機器2のユーザが所定のアプリケーションを起動した際の、各ポッドの配置を示している。本例では、コンテナオーケストレーションクラスタとしてのアプリケーションは、第1ポッド81、第2ポッド82、第3ポッド83、および図示されない中継ポッドを含む4つのポッドによって構成されている。中継ポッドは、コンテナオーケストレーションクラスタ内外の通信を中継するポッドである。 FIG. 1 shows the arrangement of each pod when the user of the terminal device 2 starts a predetermined application near the first base. In this example, the application as a container orchestration cluster is configured by four pods including a first pod 81, a second pod 82, a third pod 83, and a relay pod (not shown). A relay pod is a pod that relays communication within and outside the container orchestration cluster.

端末機器2のユーザの識別子を、UsrID1とする。ユーザの認証認可のための情報を、CredUsr1とする。認証認可のための情報とは、パスワードや電子証明書等である。アプリケーションの識別子をAppID1とする。アプリケーションを構成する4つのポッドの各識別子を、それぞれPodID1、PodID2、PodID3およびRelayPodID1とする。 The user identifier of the terminal device 2 is assumed to be UsrID1. Let CredUsr1 be the information for user authentication and authorization. Information for authentication and authorization includes passwords, electronic certificates, and the like. Set the application identifier to AppID1. Let the identifiers of the four pods that make up the application be PodID1, PodID2, PodID3, and RelayPodID1, respectively.

アプリケーションにおける各ポッドの役割はそれぞれ異なる。第1ポッド81および第2ポッド82は、アプリケーションを構成する複数のポッドのうち、比較的複雑な処理を担うポッドである。第3ポッド83は、アプリケーションを構成する複数のポッドのうち、アプリケーションのユーザインタフェースを担うポッドである。ユーザインタフェースを担うポッドは、必ず端末機器2上に配置する必要がある。そのため、第3ポッド83は必ず端末機器2上に配置すべきポッドである。 Each pod has a different role in the application. The first pod 81 and the second pod 82 are pods that are responsible for relatively complex processing among the plurality of pods that constitute the application. The third pod 83 is a pod that is responsible for the user interface of the application among the plurality of pods that constitute the application. The pod responsible for the user interface must be placed on the terminal device 2. Therefore, the third pod 83 is a pod that must be placed on the terminal device 2.

端末機器2は、ネットワークに接続すると、最寄りの拠点において構成されるコンテナオーケストレーションクラスタに、自ノードである第3ワーカノードを登録する。図1の例では、端末機器2は第1拠点の近傍でネットワークに接続する。これにより端末機器2は、端末機器2の自ノードとしての第3ワーカノードを、第1マスターノード41が属するコンテナオーケストレーションクラスタに登録する。この結果、端末機器2は、第3ワーカノードとして、第1マスターノード41が属するコンテナオーケストレーションクラスタに同様に属することになる。 When the terminal device 2 connects to the network, it registers its own node, the third worker node, in a container orchestration cluster configured at the nearest base. In the example of FIG. 1, the terminal device 2 connects to the network near the first base. Thereby, the terminal device 2 registers the third worker node as its own node in the container orchestration cluster to which the first master node 41 belongs. As a result, the terminal device 2 similarly belongs to the container orchestration cluster to which the first master node 41 belongs, as a third worker node.

(ネットワーク状況およびリソース状況の把握)
図2は、コンテナシステム1がネットワーク状況およびリソース状況を測定する際にコンテナシステム1によって実行される一連の処理の流れを示すシーケンス図である。ステップS1において、第1拠点の第1ネットワークモニタ42は、第2拠点の第2ネットワークモニタ62と通信することによって、第1拠点から第2拠点への通信時のネットワーク状況(第1ネットワーク状況)を測定する。ネットワーク状況は、例えば、第1ネットワークモニタ42から第2ネットワークモニタ62への通信の遅延時間である。あるいは、ネットワーク状況は、第1ネットワークモニタ42から第2ネットワークモニタ62に通信する際に利用可能な通信帯域である。ここでは、第1ネットワークモニタ42は、遅延時間および通信帯域の双方を、ネットワーク状況として測定する。
(Understanding network status and resource status)
FIG. 2 is a sequence diagram showing the flow of a series of processes executed by the container system 1 when the container system 1 measures the network status and resource status. In step S1, the first network monitor 42 at the first base communicates with the second network monitor 62 at the second base to determine the network status at the time of communication from the first base to the second base (first network status). Measure. The network status is, for example, a communication delay time from the first network monitor 42 to the second network monitor 62. Alternatively, the network status is a communication band that can be used when communicating from the first network monitor 42 to the second network monitor 62. Here, the first network monitor 42 measures both delay time and communication band as network conditions.

図3は、ネットワーク状況通知メッセージの一例を示す図である。ステップS2において、第1ネットワークモニタ42は、測定したネットワーク状況を通知するための、図3に示すようなネットワーク状況通知メッセージを生成し、第1ローカルデータストア44に送信する。図3に示すように、ネットワーク状況通知メッセージは、複数の異なるフィールドを含んでいる。具体的には、ネットワーク状況通知メッセージは、Typeフィールド、Source IDフィールド、およびNo of Destinationsフィールドを少なくとも含んでいる。Typeフィールドは、このフィールドが含まれるメッセージの種類(タイプ)を示す。図3では、Typeフィールドはネットワーク状況通知メッセージに含まれるので、Typeフィールドの値はネットワーク状況通知メッセージを示す“ネットワーク状況通知”である。Source IDフィールドは、ネットワーク状況の測定元の識別子を示す。図3では、Source IDフィールドの値はNmonID1である。No of Destinationsフィールドは、ネットワーク状況の測定相手の数を示す。図3では、No of Destinationsフィールドの値は1である。 FIG. 3 is a diagram illustrating an example of a network status notification message. In step S2, the first network monitor 42 generates a network status notification message as shown in FIG. 3 to notify the measured network status, and sends it to the first local data store 44. As shown in FIG. 3, the network status notification message includes several different fields. Specifically, the network status notification message includes at least a Type field, a Source ID field, and a No of Destinations field. The Type field indicates the type of message that this field is included in. In FIG. 3, the Type field is included in the network status notification message, so the value of the Type field is "network status notification" indicating the network status notification message. The Source ID field indicates the identifier of the source from which the network status is measured. In FIG. 3, the value of the Source ID field is NmonID1. The No of Destinations field indicates the number of destinations for which the network status is being measured. In FIG. 3, the value of the No of Destinations field is 1.

ネットワーク状況通知メッセージは、さらに、ネットワーク状況の測定相手ごとに、対応するDestination IDフィールド、Delayフィールド、およびAvailable Bandwidthフィールドの3つ組フィールドを含んでいる。図3では、測定相手は1つ(第2ネットワークモニタ62)であるため、ネットワーク状況通知メッセージには1つの3つ組フィールドが含まれる。Destination IDフィールドは、ネットワーク状況の測定相手の識別子を表す。図3では、ネットワーク状況通知メッセージの値は、第2ネットワークモニタ62の識別子すなわちNmonID2である。Delayフィールドは、Source IDフィールドが示す測定元(ここでは第1ネットワークモニタ42)からDestination IDが示す測定相手(ここでは第2ネットワークモニタ62)への通信の遅延時間を示す。Available Bandwidthフィールドは、Source IDフィールドが示す測定元(ここでは第1ネットワークモニタ42)からDestination IDフィールドが示す測定相手(ここでは第2ネットワークモニタ62)への通信時に利用可能な通信帯域を示す。 The network status notification message further includes a corresponding triple field of a Destination ID field, a Delay field, and an Available Bandwidth field for each network status measurement target. In FIG. 3, since there is one measurement partner (second network monitor 62), the network status notification message includes one triple field. The Destination ID field represents the identifier of the network status measurement partner. In FIG. 3, the value of the network status notification message is the identifier of the second network monitor 62, ie, NmonID2. The Delay field indicates the delay time of communication from the measurement source (here, the first network monitor 42) indicated by the Source ID field to the measurement destination (here, the second network monitor 62) indicated by the Destination ID. The Available Bandwidth field indicates the communication band that can be used during communication from the measurement source (here, the first network monitor 42) indicated by the Source ID field to the measurement destination (here, the second network monitor 62) indicated by the Destination ID field.

ステップS3において、第1MECサーバ5の第1リソースモニタ51は、第1MECサーバ5のリソース状況を測定する。リソースとは、第1MECサーバ5において利用可能な計算資源のことである。ここでは、リソース状況として、第1MECサーバ5が有する仮想CPUの数、メモリ容量、ストレージ容量、GPUの数、およびGPUのメモリ容量を測定する。さらに、リソース状況として、第1MECサーバ5が使用中の仮想CPUの数、メモリ容量、ストレージ容量、GPUの数、GPUのメモリ容量をも測定する。 In step S3, the first resource monitor 51 of the first MEC server 5 measures the resource status of the first MEC server 5. A resource is a computational resource that can be used in the first MEC server 5. Here, the number of virtual CPUs, memory capacity, storage capacity, number of GPUs, and memory capacity of the GPUs that the first MEC server 5 has are measured as the resource status. Furthermore, as the resource status, the number of virtual CPUs, memory capacity, storage capacity, number of GPUs, and memory capacity of GPUs that are being used by the first MEC server 5 are also measured.

図4は、リソース状況通知メッセージの一例を示す図である。ステップS4において、第1リソースモニタ51は、測定したリソース状況を通知するための、図4に示すようなリソース状況通知メッセージを生成し、第1ローカルデータストア44に送信する。ネットワーク状況通知メッセージは、複数の異なるフィールドを含んでいる。図4の例では、リソース状況通知メッセージは、Typeフィールド、Source IDフィールド、およびNo of Nodesフィールドを少なくとも含んでいる。Typeフィールドの値は、リソース状況通知メッセージのメッセージタイプを示す“リソース状況通知”である。Source IDフィールドは、リソース状況の測定元の識別子を示す。この例では、Source IDフィールドの値は、第1リソースモニタ51の識別子すなわちRmonID1である。No of Nodesフィールドは、第1MECサーバ5に配置されているワーカノードの数を示す。第1MECサーバ5には2台のワーカノードが配置されているので、この例では、No of Nodesフィールドの値は2である。 FIG. 4 is a diagram illustrating an example of a resource status notification message. In step S4, the first resource monitor 51 generates a resource status notification message as shown in FIG. 4 to notify the measured resource status, and transmits it to the first local data store 44. A network status notification message includes several different fields. In the example of FIG. 4, the resource status notification message includes at least a Type field, a Source ID field, and a No of Nodes field. The value of the Type field is "resource status notification" which indicates the message type of the resource status notification message. The Source ID field indicates the identifier of the resource status measurement source. In this example, the value of the Source ID field is the identifier of the first resource monitor 51, ie, RmonID1. The No of Nodes field indicates the number of worker nodes located in the first MEC server 5. Since two worker nodes are arranged in the first MEC server 5, the value of the No of Nodes field is 2 in this example.

リソース状況通知メッセージは、さらに、ワーカノードごとに、Node IDフィールド、CPUsフィールド、Memoryフィールド、Storageフィールド、GPUsフィールド、GPU Memoryフィールド、In Use CPUsフィールド、In Use Memoryフィールド、In Use Storageフィールド、In Use GPUsフィールド、およびIn Use GPU Memoryフィールドを含む11組のフィールドを含んでいる。Node IDフィールドは、ワーカノードの識別子を示す。CPUsフィールドは、ワーカノードに割り当てられている仮想CPUの数を示す。Memoryフィールドは、ワーカノードに割り当てられているメモリ容量を示す。Storageフィールドは、ワーカノードに割り当てられているストレージ容量を示す。GPUsフィールドは、ワーカノードに割り当てられているGPUの個数を示す。GPU Memoryフィールドは、ワーカノードに割り当てられているGPUメモリ容量を示す。In Use CPUsフィールドは、ワーカノードが使用中の仮想CPUの数を示す。In Use Memoryフィールドは、ワーカノードが使用中のメモリ容量を示す。In Use Storageフィールドは、ワーカノードが使用中のストレージ容量を示す。In Use GPUsフィールドは、ワーカノードが使用中のGPUの個数を示す。In Use GPU Memoryフィールドは、ワーカノードが使用中のGPUメモリ容量を示す。 Resource status notification messages further include, for each worker node, Node ID field, CPUs field, Memory field, Storage field, GPUs field, GPU Memory field, In Use CPUs field, In Use Memory field, In Use Storage field, In Use GPUs field. It contains 11 sets of fields, including the In Use GPU Memory field and the In Use GPU Memory field. The Node ID field indicates the worker node identifier. The CPUs field indicates the number of virtual CPUs assigned to the worker node. The Memory field indicates the memory capacity allocated to the worker node. The Storage field indicates the storage capacity allocated to the worker node. The GPUs field indicates the number of GPUs assigned to the worker node. The GPU Memory field indicates the GPU memory capacity allocated to the worker node. The In Use CPUs field indicates the number of virtual CPUs in use by the worker node. The In Use Memory field indicates the amount of memory in use by the worker node. The In Use Storage field indicates the storage capacity in use by the worker node. The In Use GPUs field indicates the number of GPUs in use by the worker node. The In Use GPU Memory field indicates the GPU memory capacity in use by the worker node.

図4の例では、リソース状況通知メッセージは、第1ワーカノード52および第4ワーカノード53に対応する2つの11組フィールドを含んでいる。1つ目の11組フィールドでは、Node IDフィールドの値はWnID1である。CPUsフィールドの値は、第1ワーカノード52に割り当てられた仮想CPUの数を示す。Memoryフィールドは第1ワーカノード52に割り当てられたメモリ容量を示す。Storageフィールドは第1ワーカノード52に割り当てられたストレージ容量を示す。GPUsフィールドは第1ワーカノード52に割り当てられたGPUの数を示す。GPU Memoryフィールドは第1ワーカノード52に割り当てられたGPUメモリ容量を示す。In Use CPUsは第1ワーカノード52が現在使用中の仮想CPUの数を示す。In Use Memoryフィールドは第1ワーカノード52が使用中のメモリ容量を示す。In Use Storageフィールドは第1ワーカノード52が使用中のストレージ容量を示す。In Use GPUsフィールドは第1ワーカノード52が使用中のGPUの数を示す。In Use GPU Memoryフィールドは第1ワーカノード52が使用中のGPUメモリ容量を示す。 In the example of FIG. 4, the resource status notification message includes two 11-set fields corresponding to the first worker node 52 and the fourth worker node 53. In the first set of 11 fields, the value of the Node ID field is WnID1. The value of the CPUs field indicates the number of virtual CPUs assigned to the first worker node 52. The Memory field indicates the memory capacity allocated to the first worker node 52. The Storage field indicates the storage capacity allocated to the first worker node 52. The GPUs field indicates the number of GPUs assigned to the first worker node 52. The GPU Memory field indicates the GPU memory capacity allocated to the first worker node 52. In Use CPUs indicates the number of virtual CPUs that the first worker node 52 is currently using. The In Use Memory field indicates the memory capacity that the first worker node 52 is using. The In Use Storage field indicates the storage capacity that the first worker node 52 is using. The In Use GPUs field indicates the number of GPUs that the first worker node 52 is using. The In Use GPU Memory field indicates the GPU memory capacity that the first worker node 52 is using.

2つ目の11組フィールドでは、Node IDフィールドの値はWnID4である。CPUsフィールド等の残りの10個のフィールドの値は、1つ目の11組フィールドと同様に、第4ワーカノード53に関する値を示す。 In the second set of 11 fields, the value of the Node ID field is WnID4. The values of the remaining 10 fields, such as the CPUs field, indicate values related to the fourth worker node 53, similar to the first 11-set field.

第1拠点内の他の第1MECサーバ5が備える第1リソースモニタ51も、同様に動作することによって、リソース状況通知メッセージを生成し、第1ローカルデータストア44に通知する。ステップS5において、第1ローカルデータストア44は、第1拠点内の他の第1リソースモニタ51から通知されたリソース状況およびネットワーク状況を受信する。ステップS6において、第1ローカルデータストア44は、第1拠点における全第1MECサーバ5のリソース状況およびネットワーク状況の情報を集約することによって、図5に示すような拠点状況通知メッセージを生成する。この際、第1ローカルデータストア44は、集約したネットワーク状況および各リソース状況を、自身の記憶スペースに保存する。 The first resource monitor 51 provided in the other first MEC server 5 in the first base also operates in the same manner to generate a resource status notification message and notify it to the first local data store 44. In step S5, the first local data store 44 receives the resource status and network status notified from the other first resource monitors 51 within the first base. In step S6, the first local data store 44 generates a base status notification message as shown in FIG. 5 by collecting information on the resource status and network status of all the first MEC servers 5 at the first base. At this time, the first local data store 44 stores the aggregated network status and each resource status in its own storage space.

図5は、拠点状況通知メッセージの一例を示す図である。ステップS7において、第1ローカルデータストア44は、拠点状況通知メッセージをグローバルデータストア32に通知する。図5の例では、拠点状況通知メッセージは、Typeフィールド、Base IDフィールド、No of Destinationsフィールド、およびNo of Resource Statsフィールドを含む。Typeフィールドの値は、拠点状況通知メッセージのメッセージタイプを示す“拠点状況通知”である。Base IDフィールドは、拠点の識別子を示す。図4の例では、Base IDフィールドの値はBaseID1である。 FIG. 5 is a diagram illustrating an example of a base status notification message. In step S7, the first local data store 44 notifies the global data store 32 of a base status notification message. In the example of FIG. 5, the base status notification message includes a Type field, a Base ID field, a No of Destinations field, and a No of Resource Stats field. The value of the Type field is "base status notification" indicating the message type of the base status notification message. The Base ID field indicates the base identifier. In the example of FIG. 4, the value of the Base ID field is BaseID1.

No of Destinationsフィールドは、ネットワーク状況の測定相手の数を示す。図5では、No of Destinationsフィールドの値は1である。拠点状況通知メッセージは、測定相手ごとに、対応するDestination IDフィールド、Delayフィールド、およびAvailable Bandwidthフィールドの3つ組フィールドを含んでいる。これらのフィールドの各値は、図3に示す3つ組フィールドの各値と同一である。 The No of Destinations field indicates the number of destinations for which the network status is being measured. In FIG. 5, the value of the No of Destinations field is 1. The site status notification message includes a triple field of a corresponding Destination ID field, Delay field, and Available Bandwidth field for each measurement target. Each value of these fields is the same as each value of the triplet field shown in FIG.

No of Resource Statsフィールドは、通知されるリソース状況の個数を示す。この例では、n個の第1MECサーバ5におけるリソース状況が通知されるので、No of Resource Statsフィールドの値はnである。拠点状況通知メッセージは、さらに、図4の各Node IDフィールド以下の2つのフィールド群(全部で11×2フィールド)を、No of Resource Statsフィールドの値の数だけ含む。この例では、拠点状況通知メッセージは、n個のフィールド群を含む。 The No of Resource Stats field indicates the number of resource statuses to be notified. In this example, the resource status of n first MEC servers 5 is notified, so the value of the No of Resource Stats field is n. The base status notification message further includes two field groups (11×2 fields in total) following each Node ID field in FIG. 4, as many as the value of the No of Resource Stats field. In this example, the site status notification message includes n field groups.

グローバルデータストア32は、通知された拠点状況通知メッセージに含まれる、第1拠点のネットワーク状況および第1拠点の各第1MECサーバ5における第1ワーカノード52および第4ワーカノード53のリソース状況(第1リソース状況)を、自身の記憶スペースに保存する。これ以降、定期的に、ステップS1~S7の一連の処理が繰り返し実行される。 The global data store 32 stores the network status of the first base and the resource status of the first worker node 52 and fourth worker node 53 in each first MEC server 5 of the first base (first resource situation) in its own storage space. From this point on, the series of processes from steps S1 to S7 are repeatedly executed periodically.

詳細な説明は省略するが、第2拠点においても、上述したステップS1~S7と同様の処理が実行される。これにより、グローバルデータストア32は、通知された拠点状況通知メッセージに含まれる、第2拠点のネットワーク状況(第2ネットワーク状況)および第2拠点の各第2MECサーバ7における第2ワーカノード72および第5ワーカノード73のリソース状況(第2リソース状況)をも、自身の記憶スペースに保存する。 Although detailed explanation will be omitted, the same processing as steps S1 to S7 described above is executed at the second base as well. As a result, the global data store 32 stores the network status of the second base (second network status) included in the notified base status notification message, and the second worker node 72 and fifth worker node in each second MEC server 7 of the second base. The resource status of the worker node 73 (second resource status) is also saved in its own storage space.

(アプリケーションの起動処理)
図6は、端末機器2がアプリケーションを起動する際にコンテナシステム1によって実行される一連の処理の流れを示すシーケンス図である。ユーザは、端末機器2を操作し、所定のアプリケーションを起動するための操作を端末機器2に入力する。ステップS11において、端末機器2は、この操作を検出すると、アプリケーションを起動させるための起動App23を実行する。起動App23は、端末機器2内のイメージリポジトリ22に予め格納されている。起動App23は、アプリケーションを起動したり終了したりするために使用されるモジュールである。起動App23を実行することによって、アプリケーションを構成する第1ポッド81、第2ポッド82、および第3ポッド83を、コンテナオーケストレーションクラスタ内に配置することができる。しかし起動App23は、第1ポッド81、第2ポッド82、および第3ポッド83とは異なり、コンテナオーケストレーションクラスタに属していない。
(Application startup process)
FIG. 6 is a sequence diagram showing the flow of a series of processes executed by the container system 1 when the terminal device 2 starts an application. The user operates the terminal device 2 and inputs an operation to the terminal device 2 to start a predetermined application. In step S11, when the terminal device 2 detects this operation, it executes the startup App 23 for starting the application. The startup App 23 is stored in the image repository 22 in the terminal device 2 in advance. The startup App 23 is a module used to start and end an application. By executing the startup App 23, the first pod 81, the second pod 82, and the third pod 83 that constitute the application can be placed in the container orchestration cluster. However, unlike the first pod 81, the second pod 82, and the third pod 83, the startup App 23 does not belong to the container orchestration cluster.

実行された起動App23は、端末機器2のプリファレンスリポジトリ21にアクセスし、アプリケーションに関連付けられたプリファレンスを参照する。プリファレンスとは、アプリケーションを起動する際に参照されるパラメータ群である。プリファレンスの内容は、予めユーザによって指定されている。例えば、プリファレンスは、アプリケーションの一部を第1MECサーバ5または第2MECサーバ7にオフロードすることを希望するかどうかを指定している。本例では、ユーザがオフロードを希望することがプリファレンスにおいて指定されているものとする。なお、プリファレンスの内容は、ユーザではなく、クラウドサーバ3によって予め指定されていてもよい。 The executed startup App 23 accesses the preference repository 21 of the terminal device 2 and refers to the preferences associated with the application. Preferences are a group of parameters that are referenced when starting an application. The contents of the preferences are specified in advance by the user. For example, the preferences specify whether one wishes to offload part of the application to the first MEC server 5 or the second MEC server 7. In this example, it is assumed that the user has specified in his preferences that he desires offloading. Note that the contents of the preferences may be specified in advance by the cloud server 3 rather than by the user.

(アプリ起動要求)
図7は、アプリ起動要求メッセージの一例を示す図である。ステップS12において、起動App23は、図7に示すようなアプリ起動要求メッセージを生成し、第1拠点内の第1AppAPI46に送信する。アプリ起動要求メッセージは、アプリケーションの起動を要求するためのメッセージである。図7の例では、アプリ起動要求メッセージは、Typeフィールド、User IDフィールド、Credentialフィールド、App IDフィールド、およびPreferenceフィールドを含む。Typeフィールドの値は、アプリ起動要求メッセージのメッセージタイプを示す“アプリ起動要求”である。User IDフィールドは、端末機器2のユーザの識別子を示す。図8の例では、User IDフィールドの値はUsrID1である。Credentialフィールドは、端末機器2のユーザの認証認可情報を示す。図8の例では、Credentialフィールドの値はCredUsr1である。App IDフィールドは、実行されるアプリケーションの識別子を示す。図8の例では、App IDフィールドの値はAppID1である。Preferenceフィールドは、起動App23がプリファレンスリポジトリ21から読み取った情報を示す。
(Application launch request)
FIG. 7 is a diagram illustrating an example of an application startup request message. In step S12, the startup App 23 generates an application startup request message as shown in FIG. 7, and sends it to the first App API 46 in the first base. The application launch request message is a message for requesting the launch of an application. In the example of FIG. 7, the application launch request message includes a Type field, a User ID field, a Credential field, an App ID field, and a Preference field. The value of the Type field is "application launch request" indicating the message type of the application launch request message. The User ID field indicates the identifier of the user of the terminal device 2. In the example of FIG. 8, the value of the User ID field is UsrID1. The Credential field indicates authentication and authorization information of the user of the terminal device 2. In the example of FIG. 8, the value of the Credential field is CredUsr1. The App ID field indicates the identifier of the application being executed. In the example of FIG. 8, the value of the App ID field is AppID1. The Preference field indicates information that the startup App 23 reads from the preference repository 21.

端末機器2は、ネットワークに接続する際、端末機器2の最寄りの第1拠点に配置される第1AppAPI46のアドレス等を取得する。ステップS13において、第1AppAPI46は、受信したアプリ起動要求メッセージに基づいて、端末機器2のユーザの認証および認可を実行する。その際、第1AppAPI46は、携帯電話網などのコントロールプレーンにアクセスしてもよい。 When connecting to the network, the terminal device 2 acquires the address of the first AppAPI 46 located at the first base nearest to the terminal device 2 . In step S13, the first App API 46 authenticates and authorizes the user of the terminal device 2 based on the received application activation request message. At this time, the first App API 46 may access a control plane such as a mobile phone network.

(アプリ構成情報要求)
図8は、アプリ構成情報要求メッセージの一例を示す図である。ステップS14において、第1AppAPI46は、図8に示すようなアプリ構成情報要求メッセージを生成し、第1ローカルイメージリポジトリ45に送信する。アプリ構成情報要求メッセージは、アプリケーションのポッド構成情報を要求するためのメッセージである。図8の例では、アプリ構成情報要求メッセージは、TypeフィールドおよびApp IDフィールドを含む。Typeフィールドの値は、アプリ構成情報要求メッセージのメッセージタイプを示す“アプリ構成情報要求”である。App IDフィールドの値は、実行されるアプリケーションの識別子であり、具体的にはAppID1である。
(App configuration information request)
FIG. 8 is a diagram illustrating an example of an application configuration information request message. In step S14, the first App API 46 generates an application configuration information request message as shown in FIG. 8, and sends it to the first local image repository 45. The application configuration information request message is a message for requesting pod configuration information of an application. In the example of FIG. 8, the application configuration information request message includes a Type field and an App ID field. The value of the Type field is "application configuration information request" indicating the message type of the application configuration information request message. The value of the App ID field is the identifier of the application being executed, specifically AppID1.

第1ローカルイメージリポジトリ45は、アプリケーションを構成する第1ポッド81、第2ポッド82、および第3ポッド83のイメージを一時的に保持することができる。第1ローカルイメージリポジトリ45は、アプリ構成情報要求メッセージを受信した時点において、受信したアプリ構成情報要求メッセージによって示されるアプリケーションのポッドイメージをまだ保持していない。そこで第1ローカルイメージリポジトリ45は、ステップS15において、受信したアプリ構成情報要求メッセージをオリジンイメージリポジトリ33に送信する。ここで送信されるアプリ構成情報要求メッセージの構成および内容は、図8に示すアプリ構成情報要求メッセージの構成および内容と同一である。 The first local image repository 45 can temporarily hold images of the first pod 81, second pod 82, and third pod 83 that constitute the application. At the time of receiving the application configuration information request message, the first local image repository 45 does not yet hold the pod image of the application indicated by the received application configuration information request message. Therefore, the first local image repository 45 transmits the received application configuration information request message to the origin image repository 33 in step S15. The structure and contents of the application configuration information request message transmitted here are the same as the structure and contents of the application configuration information request message shown in FIG.

(アプリ構成情報応答)
図9は、アプリ構成情報応答メッセージの一例を示す図である。オリジンイメージリポジトリ33の記憶スペースには、コンテナシステム1によって実行可能な全アプリケーションの全ポッドイメージが、予め保存されている。オリジンイメージリポジトリ33は、アプリ構成情報要求メッセージを受信すると、アプリ構成情報要求メッセージによって示されるアプリケーションを構成する第1ポッド81、第2ポッド82、および第3ポッド83のイメージを、自身の記憶スペースから読み出す。オリジンイメージリポジトリ33は、ステップS16において、読み出した各ポッドイメージに基づいて、図9に示すようなアプリ構成情報応答メッセージを生成し、第1ローカルイメージリポジトリ45に送信する。
(App configuration information response)
FIG. 9 is a diagram illustrating an example of an application configuration information response message. In the storage space of the origin image repository 33, all pod images of all applications executable by the container system 1 are stored in advance. Upon receiving the application configuration information request message, the origin image repository 33 stores the images of the first pod 81, second pod 82, and third pod 83 that constitute the application indicated by the application configuration information request message in its own storage space. Read from. In step S16, the origin image repository 33 generates an application configuration information response message as shown in FIG. 9 based on each read pod image, and sends it to the first local image repository 45.

アプリ構成情報応答メッセージは、アプリケーションのポッド構成情報を応答するためのメッセージである。図9の例では、アプリ構成情報応答メッセージは、Typeフィールド、App IDフィールド、およびNo of Podsフィールドを含む。Typeフィールドの値は、アプリ構成情報応答メッセージのメッセージタイプを示す“アプリ構成情報応答”である。App IDフィールドの値は、実行されるアプリケーションの識別子であり、具体的にはAppID1である。No of Podsフィールドは、アプリケーションを構成するポッドの数を示す。図9の例では、No of Podsフィールドの値は3である。 The application configuration information response message is a message for responding with application pod configuration information. In the example of FIG. 9, the application configuration information response message includes a Type field, an App ID field, and a No of Pods field. The value of the Type field is "application configuration information response" indicating the message type of the application configuration information response message. The value of the App ID field is the identifier of the application being executed, specifically AppID1. The No of Pods field indicates the number of pods that make up the application. In the example of FIG. 9, the value of the No of Pods field is 3.

アプリ構成情報応答メッセージは、1つのポッドについて、Pod IDフィールド、No of CPUsフィールド、Memoryフィールド、Storageフィールド、No of GPUsフィールド、GPU MemoryフィールドおよびNet Reqフィールドを含む7つ組フィールドをさらに含む。Pod IDフィールドは、ポッドの識別子を示す。No of CPUsフィールドは、ポッドが必要とする仮想CPUの数を示す。Memoryフィールドは、ポッドが必要とするメモリ容量を示す。Storageフィールドは、ポッドが必要とするストレージ容量を示す。No of GPUsフィールドは、ポッドが必要とするGPUの数を示す。GPU Memoryフィールドは、ポッドが必要とするGPUメモリ容量を示す。Net Reqフィールドは、ポッドが必要とするネットワークへの要求事項を示す。 The application configuration information response message further includes, for one pod, septet fields including a Pod ID field, a No of CPUs field, a Memory field, a Storage field, a No of GPUs field, a GPU Memory field, and a Net Req field. The Pod ID field indicates the pod identifier. The No of CPUs field indicates the number of virtual CPUs the pod requires. The Memory field indicates how much memory the pod requires. The Storage field indicates how much storage the pod requires. The No of GPUs field indicates the number of GPUs the pod requires. The GPU Memory field indicates the GPU memory capacity required by the pod. The Net Req field indicates the network requirements required by the pod.

図9に示す例では、1つ目の7つ組フィールドに含まれるPod IDフィールドは、PodID1である。No of CPUsフィールドは、第1ポッド81が必要とする仮想CPUの数を示す。Memoryフィールドは、第1ポッド81が必要とするメモリ容量を示す。Storageフィールドは、第1ポッド81が必要とするストレージ容量を示す。No of GPUsフィールドは、第1ポッド81が必要とするGPUの数を示す。GPU Memoryフィールドは、第1ポッド81が必要とするGPUメモリ容量を示す。 In the example shown in FIG. 9, the Pod ID field included in the first septet field is PodID1. The No of CPUs field indicates the number of virtual CPUs required by the first pod 81. The Memory field indicates the memory capacity required by the first pod 81. The Storage field indicates the storage capacity required by the first pod 81. The No of GPUs field indicates the number of GPUs required by the first pod 81. The GPU Memory field indicates the GPU memory capacity required by the first pod 81.

アプリ構成情報応答メッセージは、さらに、第2ポッド82に関する7つ組フィールドと、第3ポッド83に関する7つ組フィールドとを含む。 The application configuration information response message further includes a septet field regarding the second pod 82 and a septet field regarding the third pod 83.

第1ローカルイメージリポジトリ45は、アプリ構成情報応答メッセージを受信すると、受信したアプリ構成情報応答メッセージに含まれるアプリ構成情報を、第1ローカルイメージリポジトリ45の記憶スペースに一時的に保持する。第1ローカルイメージリポジトリ45は、記憶スペースが不足した場合は、LRU(Least Recently Used)アルゴリズム等にしたがって、記憶スペースを確保する。ステップS17において、第1ローカルイメージリポジトリ45は、受信したアプリ構成情報応答メッセージを、第1AppAPI46に送信する。この際に送信されるアプリ構成情報応答メッセージの構成および内容は、図9に示すアプリ構成情報応答メッセージの構成および内容と同一である。 When the first local image repository 45 receives the application configuration information response message, it temporarily holds the application configuration information included in the received application configuration information response message in the storage space of the first local image repository 45. When the first local image repository 45 runs out of storage space, the first local image repository 45 secures storage space according to an LRU (Least Recently Used) algorithm or the like. In step S17, the first local image repository 45 transmits the received application configuration information response message to the first App API 46. The structure and contents of the application configuration information response message transmitted at this time are the same as the structure and contents of the application configuration information response message shown in FIG.

(ポッド配置決定要求)
図10は、ポッド配置決定要求メッセージの一例を示す図である。ステップS18において、第1AppAPI46は、受信したアプリ構成情報応答メッセージに基づいて、図10に示すようなポッド配置決定要求メッセージを生成し、第1ローカルMANO43に送信する。ポッド配置決定要求は、アプリケーションを構成する第1ポッド81および第2ポッド82の配置決定を要求するためのメッセージである。図10の例では、ポッド配置決定要求メッセージは、Typeフィールド、App IDフィールド、およびNo of Podsフィールドを含む。Typeフィールドの値は、ポッド配置決定要求メッセージのメッセージタイプを示す“ポッド配置決定要求”である。App IDフィールドの値は、実行されるアプリケーションの識別子であり、具体的にはAppID1である。No of Podsフィールドは、アプリケーションを構成するポッドの数を示す。アプリケーションは3個のポッドから構成され、そのうち1つは端末機器2に配置される。そのため図11の例では、No of Podsフィールドの値は2である。
(Pod placement determination request)
FIG. 10 is a diagram illustrating an example of a pod placement determination request message. In step S18, the first App API 46 generates a pod placement determination request message as shown in FIG. 10 based on the received application configuration information response message, and transmits it to the first local MANO 43. The pod placement determination request is a message for requesting placement determination of the first pod 81 and the second pod 82 that constitute the application. In the example of FIG. 10, the pod placement determination request message includes a Type field, an App ID field, and a No of Pods field. The value of the Type field is "Pod placement determination request" which indicates the message type of the Pod placement determination request message. The value of the App ID field is the identifier of the application being executed, specifically AppID1. The No of Pods field indicates the number of pods that make up the application. The application is composed of three pods, one of which is placed on the terminal device 2. Therefore, in the example of FIG. 11, the value of the No of Pods field is 2.

ポッド配置決定要求メッセージは、ポッドごとに、Pod IDフィールド、No of CPUsフィールド、Memoryフィールド、Storageフィールド、No of GPUsフィールド、GPU Memoryフィールド、およびNet Reqフィールドを含む7つ組フィールドをさらに含む。図10の例では、ポッド配置決定要求メッセージは、2つの7つ組フィールドを含んでいる。Pod IDフィールドは、ポッドの識別子を示す。No of CPUsフィールドは、ポッドが必要とする仮想CPUの数を示す。Memoryフィールドは、ポッドが必要とするメモリ容量を示す。Storageフィールドは、ポッドが必要とするストレージ容量を示す。No of GPUsフィールドは、ポッドが必要とするGPUの数を示す。GPU Memoryフィールドは、ポッドが必要とするGPUメモリ容量を示す。Net Reqフィールドは、ポッドが必要とするネットワークへの要求事項を示す。 The pod placement decision request message further includes, for each pod, septet fields including a Pod ID field, a No of CPUs field, a Memory field, a Storage field, a No of GPUs field, a GPU Memory field, and a Net Req field. In the example of FIG. 10, the pod placement determination request message includes two septet fields. The Pod ID field indicates the pod identifier. The No of CPUs field indicates the number of virtual CPUs the pod requires. The Memory field indicates how much memory the pod requires. The Storage field indicates how much storage the pod requires. The No of GPUs field indicates the number of GPUs the pod requires. The GPU Memory field indicates the GPU memory capacity required by the pod. The Net Req field indicates the network requirements required by the pod.

図10の例では、1つ目の7つ組フィールドに含まれるPod IDフィールドは、第1ポッド81の識別子を示す。したがって、Pod IDフィールドの値はPodID1である。No of CPUsフィールドは、第1ポッド81が必要とする仮想CPUの数を示す。Memoryフィールドは、第1ポッド81が必要とするメモリ容量を示す。Storageフィールドは、第1ポッド81が必要とするストレージ容量を示す。No of GPUsフィールドは、第1ポッド81が必要とするGPUの数を示す。GPU Memoryフィールドは、第1ポッド81が必要とするGPUメモリ容量を示す。Net Reqフィールドは、第1ポッド81が必要とするネットワークへの要求事項を示す。No of CPUsフィールド等の残りの6のフィールドは、第1ポッド81が必要とするリソースへの要求事項を示す。 In the example of FIG. 10, the Pod ID field included in the first septet field indicates the identifier of the first pod 81. Therefore, the value of the Pod ID field is PodID1. The No of CPUs field indicates the number of virtual CPUs required by the first pod 81. The Memory field indicates the memory capacity required by the first pod 81. The Storage field indicates the storage capacity required by the first pod 81. The No of GPUs field indicates the number of GPUs required by the first pod 81. The GPU Memory field indicates the GPU memory capacity required by the first pod 81. The Net Req field indicates the requirements for the network that the first pod 81 requires. The remaining six fields, such as the No of CPUs field, indicate the requirements for the resources that the first pod 81 requires.

図10の例では、2つ目の7つ組フィールドに含まれるPod IDフィールドは、第2ポッド82の識別子を示す。したがって、Pod IDフィールドの値は、PodID2である。2つ目の7つ組フィールドに含まれるNo of CPUsフィールド等の値は、1つ目の7つ組フィールドと同様に、第2ポッド82に関する値である。したがって、Net Reqフィールドは、第2ポッド82が必要とするネットワークへの要求事項(第2要求事項)を示す。No of CPUsフィールド等の残りの6のフィールドは、第2ポッド82が必要とするリソースへの要求事項を示す。 In the example of FIG. 10, the Pod ID field included in the second septet field indicates the identifier of the second pod 82. Therefore, the value of the Pod ID field is PodID2. The values of the No of CPUs field and the like included in the second septet field are values related to the second pod 82, similar to the first septet field. Therefore, the Net Req field indicates the network requirements (second requirements) required by the second pod 82. The remaining six fields, such as the No of CPUs field, indicate the requirements for resources needed by the second pod 82.

(第1ポッド81の配置決定)
第1ローカルMANO43は、ポッド配置決定要求メッセージを受信すると、受信したポッド配置決定要求メッセージによって示される第1ポッド81および第2ポッド82の全てを、第1拠点内のいずれかのワーカノードに配置できるか否かを判定する。その際、第1ローカルMANO43は、第1ローカルデータストア44に保存された、第1拠点に関するネットワーク状況および各第1MECサーバ5に関するリソース状況と、受信したポッド配置決定要求メッセージに含まれる第1ポッド81に関するネットワークへの要求事項およびリソースへの要求事項とに基づいて、第1ポッド81を第1ワーカノード52に配置するか否かを決定する。具体的には、第1拠点に関するネットワーク状況が、ポッド配置決定要求メッセージ内に含まれる第1ポッド81に関するネットワークへの要求情報を満たしているか否かを、まず判定する。満たしていると判定した場合、次に、第1ローカルデータストア44に保存された第1拠点内のいずれかの第1MECサーバ5のリソース状況が、ポッド配置決定要求メッセージ内に含まれる第1ポッド81に関するリソース状況の要求事項を満たしているか否かを判定する。
(Determination of placement of first pod 81)
Upon receiving the pod placement determination request message, the first local MANO 43 can place all of the first pod 81 and second pod 82 indicated by the received pod placement determination request message in any worker node within the first base. Determine whether or not. At this time, the first local MANO 43 stores the network status regarding the first base and the resource status regarding each first MEC server 5 stored in the first local data store 44, and the first pod included in the received pod placement determination request message. Based on the network requirements and resource requirements regarding pod 81, it is determined whether to place the first pod 81 on the first worker node 52. Specifically, it is first determined whether the network status regarding the first base satisfies the request information to the network regarding the first pod 81 included in the pod placement determination request message. If it is determined that the resource status of any one of the first MEC servers 5 in the first base stored in the first local data store 44 is satisfied, the resource status of any one of the first MEC servers 5 in the first base stored in the first local data store 44 is determined to be the first pod included in the pod placement determination request message. 81 is satisfied.

ここでは、第1拠点のネットワーク状況が、第1ポッド81に関するネットワーク状況への要求事項を満たしており、かつ、第1MECサーバ5の第1ワーカノード52のリソース状況が、第1ポッド81に関するリソースへの要求事項を満たしているものとする。これらの場合、第1ローカルMANO43は、第1ポッド81を、第1拠点内の第1MECサーバ5の第1ワーカノード52に配置することを決定する。 Here, the network status of the first base satisfies the requirements for the network status regarding the first pod 81, and the resource status of the first worker node 52 of the first MEC server 5 satisfies the requirements for the network status regarding the first pod 81. shall meet the requirements of In these cases, the first local MANO 43 decides to place the first pod 81 on the first worker node 52 of the first MEC server 5 in the first base.

また、ここでは、第1拠点のネットワーク状況が、第2ポッド82に関するネットワーク状況の要求を満たしているが、すべての第1MECサーバ5の第1ワーカノード52および第4ワーカノード53の各リソース状況が、第2ポッド82に関するリソース状況の要求情報を満たしていないものとする。これにより、第1ローカルMANO43は、第2ポッド82については、第1拠点内の全ての第1MECサーバ5の第1ワーカノード52または第4ワーカノード53に配置できないと判定する。 Further, here, although the network status of the first base satisfies the network status requirements regarding the second pod 82, the resource status of each of the first worker node 52 and fourth worker node 53 of all the first MEC servers 5 is It is assumed that the resource status request information regarding the second pod 82 is not satisfied. As a result, the first local MANO 43 determines that the second pod 82 cannot be placed on the first worker nodes 52 or fourth worker nodes 53 of all the first MEC servers 5 in the first base.

図11は、ポッド配置決定要求メッセージの一例を示す図である。ステップS19において、第1ローカルMANO43は、第2ポッド82を第1拠点に配置することができない場合、第2ポッド82を第2拠点に配置するために、図11に示すようなポッド配置決定要求メッセージを生成し、グローバルMANO31に送信する。ここで送信されるポッド配置決定要求メッセージは、第2ポッド82の配置決定を要求するためのメッセージである。 FIG. 11 is a diagram illustrating an example of a pod placement determination request message. In step S19, if the second pod 82 cannot be placed at the first base, the first local MANO 43 issues a pod placement determination request as shown in FIG. 11 in order to place the second pod 82 at the second base. A message is generated and sent to the global MANO 31. The pod placement determination request message transmitted here is a message for requesting placement determination of the second pod 82.

(第2ポッド82の配置決定)
ステップS20において、グローバルMANO31は、ポッド配置決定要求メッセージを受信すると、第2ポッド82を第2拠点の第2MECサーバ7に配置できるか否かを判定する。その際、グローバルMANO31は、グローバルデータストア32に保存された、第2拠点のネットワーク状況(第2ネットワーク状況)および各第2MECサーバ7のリソース状況と、受信したポッド配置決定要求メッセージに含まれる第2ポッド82に関するネットワークへの要求事項およびリソースに対する要求事項とに基づいて、第2ポッド82を第2ワーカノード72に配置するか否かを決定する。具体的には、第2拠点に関するネットワーク状況が、ポッド配置決定要求メッセージ内に含まれる第2ポッド82に関するネットワークへの要求情報を満たしているか否かを、まず判定する。満たしていると判定した場合、次に、グローバルデータストア32に保存された第2拠点内のいずれかの第2MECサーバ7のリソース状況が、ポッド配置決定要求メッセージ内に含まれる第2ポッド82に関するリソース状況の要求事項を満たしているか否かを判定する。
(Determination of placement of second pod 82)
In step S20, upon receiving the pod placement determination request message, the global MANO 31 determines whether the second pod 82 can be placed in the second MEC server 7 at the second base. At this time, the global MANO 31 stores the network status of the second base (second network status) and the resource status of each second MEC server 7 stored in the global data store 32, and the information contained in the received pod placement determination request message. Based on the network requirements and resource requirements regarding the two pods 82, it is determined whether or not to place the second pods 82 on the second worker nodes 72. Specifically, it is first determined whether the network status regarding the second base satisfies the request information to the network regarding the second pod 82 included in the pod placement determination request message. If it is determined that the resource status of any second MEC server 7 in the second base stored in the global data store 32 is satisfied, then the resource status of any second MEC server 7 in the second base stored in the global data store 32 is related to the second pod 82 included in the pod placement determination request message. Determine whether resource status requirements are met.

ここでは、第2拠点のネットワーク状況が、第2ポッド82に関するネットワークへの要求事項を満たしており、かつ、第2MECサーバ5の第2ワーカノード72のリソース状況が、第2ポッド82に関するリソースへの要求事項を満たしているものとする。これらの場合、グローバルMANO31は、第2ポッド82を、第2拠点内の第2MECサーバ7の第2ワーカノード72に配置することを決定する。 Here, the network status of the second base satisfies the requirements for the network regarding the second pod 82, and the resource status of the second worker node 72 of the second MEC server 5 satisfies the requirements for the network regarding the second pod 82. The requirements shall be met. In these cases, the global MANO 31 decides to place the second pod 82 on the second worker node 72 of the second MEC server 7 in the second base.

(ポッド配置決定応答)
図12は、ポッド配置決定応答メッセージの一例を示す図である。ステップS20において、グローバルMANO31は、図12に示すようなポッド配置決定応答メッセージを生成し、第1ローカルMANO43に送信する。ポッド配置決定応答メッセージは、第2ポッド82の配置を決定したことを応答するためのメッセージである。図12の例では、ポッド配置決定応答メッセージは、Typeフィールド、App IDフィールド、No of Podsフィールドを含む。Typeフィールドの値は、ポッド配置決定応答メッセージのメッセージタイプを示す“ポッド配置決定応答”である。App IDフィールドの値は、実行されるアプリケーションの識別子であり、具体的にはAppID1である。No of Podsフィールドは、ポッドの数を示す。図12の例では、No of Podsフィールドの値は1である。
(Pod placement decision response)
FIG. 12 is a diagram illustrating an example of a pod placement determination response message. In step S20, the global MANO 31 generates a pod placement determination response message as shown in FIG. 12, and transmits it to the first local MANO 43. The pod placement decision response message is a message for responding that the placement of the second pod 82 has been decided. In the example of FIG. 12, the pod placement determination response message includes a Type field, an App ID field, and a No of Pods field. The value of the Type field is “pod placement decision response” which indicates the message type of the pod placement decision response message. The value of the App ID field is the identifier of the application being executed, specifically AppID1. The No of Pods field indicates the number of pods. In the example of FIG. 12, the value of the No of Pods field is 1.

ポッド配置決定応答メッセージは、ポッドごとに、Pod IDフィールド、Base IDフィールド、およびNode IDを含む3つ組フィールドをさらに含む。ここでは、ポッドは1つであるため、ポッド配置決定応答メッセージは1つの3つ組フィールドをさらに含む。Pod IDフィールドは、ポッドの識別子を示す。図12の例では、Pod IDフィールドの値はPodID2である。Base IDフィールドは、ポッドが配置される拠点の識別子を示す。図12の例では、第2ポッド82が第2拠点に配置されるので、Base IDフィールドの値はBaseID2である。Node IDフィールドは、ポッドが配置されるワーカノードの識別子を示す。図12の例では、第2ポッド82が第2拠点の第2MECサーバ7の第2ワーカノード72に配置されるので、Node IDフィールドはWnID2である。 The pod placement decision response message further includes, for each pod, a triple field including a Pod ID field, a Base ID field, and a Node ID. Here, since there is one pod, the pod placement determination response message further includes one triplet field. The Pod ID field indicates the pod identifier. In the example of FIG. 12, the value of the Pod ID field is PodID2. The Base ID field indicates the identifier of the base where the pod is located. In the example of FIG. 12, the second pod 82 is placed at the second base, so the value of the Base ID field is BaseID2. The Node ID field indicates the identifier of the worker node where the pod is placed. In the example of FIG. 12, the second pod 82 is placed in the second worker node 72 of the second MEC server 7 at the second base, so the Node ID field is WnID2.

図13は、ポッド配置決定応答メッセージの一例を示す図である。ステップS21において、第1ローカルMANO43は、第2ポッド82に関するポッド配置決定応答メッセージを受信すると、図13に示すようなポッド配置決定応答メッセージを生成し、第1AppAPI46に送信する。図13に示すポッド配置決定応答メッセージの構成は、図12に示すポッド配置決定応答メッセージの構成に、第1ポッド81に関する項目を加えたものである。そのため、図13に示すポッド配置決定応答メッセージの詳細な説明は省略する。 FIG. 13 is a diagram illustrating an example of a pod placement determination response message. In step S21, upon receiving the pod placement determination response message regarding the second pod 82, the first local MANO 43 generates a pod placement determination response message as shown in FIG. 13 and transmits it to the first App API 46. The structure of the pod placement decision response message shown in FIG. 13 is the same as the structure of the pod placement decision response message shown in FIG. 12, with items related to the first pod 81 added. Therefore, a detailed explanation of the pod placement determination response message shown in FIG. 13 will be omitted.

(ポッド配置要求)
図14は、ポッド配置要求メッセージの一例を示す図である。ステップS22において、第1AppAPI46は、ポッド配置決定応答メッセージを受信すると、図15に示すようなポッド配置要求メッセージを生成し、第1マスターノード41に送信する。ポッド配置要求メッセージは、第1ポッド81、第2ポッド82、および第3ポッド83の配置を要求するためのメッセージである。図14の例では、ポッド配置要求メッセージは、Typeフィールド、App IDフィールド、およびNo of Podsフィールドを含む。Typeフィールドの値は、ポッド配置要求メッセージのメッセージタイプを示す“ポッド配置要求”である。App IDフィールドの値は、実行されるアプリケーションの識別子であり、具体的にはAppID1である。No of Podsフィールドは、ポッドの数を示す。図14の例では、ポッド配置要求メッセージによって3つの第1ポッド81、第2ポッド82、および第3ポッド83の配置が要求されるので、No of Podsフィールドの値は3である。
(Pod placement request)
FIG. 14 is a diagram illustrating an example of a pod placement request message. In step S22, upon receiving the pod placement determination response message, the first App API 46 generates a pod placement request message as shown in FIG. 15 and transmits it to the first master node 41. The pod placement request message is a message for requesting placement of the first pod 81, the second pod 82, and the third pod 83. In the example of FIG. 14, the pod placement request message includes a Type field, an App ID field, and a No of Pods field. The value of the Type field is “pod placement request” indicating the message type of the pod placement request message. The value of the App ID field is the identifier of the application being executed, specifically AppID1. The No of Pods field indicates the number of pods. In the example of FIG. 14, the value of the No of Pods field is 3 because the pod placement request message requests placement of the three first pods 81, second pods 82, and third pods 83.

ポッド配置要求メッセージは、ポッドごとに、Pod IDフィールド、Base IDフィールド、Node IDフィールド、およびRepository IDフィールドという4つ組フィールドをさらに含む。図14の例では、3つの第1ポッド81、第2ポッド82、および第3ポッド83の配置が要求されるので、ポッド配置要求メッセージは3つの4つ組フィールドをさらに含む。Pod IDフィールドは、ポッドの識別子を示す。Base IDフィールドは、ポッドが配置される拠点の識別子を示す。Node IDフィールドは、ポッドが配置されるワーカノードの識別子を示す。Repository IDフィールドは、ポッドのイメージを取得すべきイメージリポジトリ22の識別子を示す。 The pod placement request message further includes a quadruple field for each pod: a Pod ID field, a Base ID field, a Node ID field, and a Repository ID field. In the example of FIG. 14, the placement of three first pods 81, second pods 82, and third pods 83 is requested, so the pod placement request message further includes three quadruple fields. The Pod ID field indicates the pod identifier. The Base ID field indicates the identifier of the base where the pod is located. The Node ID field indicates the identifier of the worker node where the pod is placed. The Repository ID field indicates the identifier of the image repository 22 from which the pod image is to be obtained.

図14の例では、1つ目の4つ組フィールドにおけるPod IDフィールドの値は、第1ポッド81の識別子すなわちPodID1である。Base IDフィールドの値は、第1ポッド81が配置される第1拠点の識別子すなわちBaseID1である。Node IDフィールドの値は、第1ポッド81が配置される第1ワーカノード52の識別子すなわちWnID1である。Repository IDフィールドの値は、LirID1である。2つ目の4つ組フィールドにおけるPod IDフィールドの値は、第2ポッド82の識別子すなわちPodID2である。Base IDフィールドの値は、第2ポッド82が配置される第2拠点の識別子すなわちBaseID2である。Node IDフィールドの値は、第2ポッド82が配置される第2ワーカノード72の識別子すなわちWnID2である。Repository IDフィールドの値は、LirID2である。3つ目の4つ組フィールドにおけるPod IDフィールドの値は、第3ポッド83の識別子すなわちPodID3である。Base IDフィールドの値は、第3ポッド83が配置される第1拠点の識別子すなわちBaseID1である。Node IDフィールドの値は、第3ポッド83が配置される第3ワーカノードの識別子すなわちWnID3である。Repository IDフィールドの値は、LirID1である。 In the example of FIG. 14, the value of the Pod ID field in the first quadruple field is the identifier of the first pod 81, ie, PodID1. The value of the Base ID field is the identifier of the first base where the first pod 81 is located, ie, BaseID1. The value of the Node ID field is the identifier of the first worker node 52 where the first pod 81 is placed, ie, WnID1. The value of the Repository ID field is LirID1. The value of the Pod ID field in the second quadruple field is the identifier of the second pod 82, ie, PodID2. The value of the Base ID field is the identifier of the second base where the second pod 82 is located, ie, BaseID2. The value of the Node ID field is the identifier of the second worker node 72 where the second pod 82 is placed, ie, WnID2. The value of the Repository ID field is LirID2. The value of the Pod ID field in the third quadruple field is the identifier of the third pod 83, ie, PodID3. The value of the Base ID field is the identifier of the first base where the third pod 83 is located, ie, BaseID1. The value of the Node ID field is the identifier of the third worker node where the third pod 83 is placed, ie, WnID3. The value of the Repository ID field is LirID1.

(第1ポッド81の配置)
図15は、ポッド配置要求メッセージの一例を示す図である。ステップS23において、第1マスターノード41は、ポッド配置要求メッセージを受信すると、受信したポッド配置要求メッセージに基づいて、図15に示すようなポッド配置要求メッセージを生成し、第1ワーカノード52に送信する。ここで生成されるポッド配置要求メッセージは、第1ポッド81の配置を要求するためのメッセージである。図15に示すポッド配置要求メッセージの構成は、図14に示すポッド配置要求メッセージの構成から、第2ポッド82および第3ポッド83の項目を除いたものとなっている。図15に示す例では、ポッド配置要求メッセージに含まれるNo of Podsフィールドの値は1である。Pod IDフィールドの値は、PodID1である。Base IDフィールドの値は、BaseID1である。Node IDフィールドの値は、WnID1である。Repository IDフィールドの値は、LirID1である。
(Arrangement of first pod 81)
FIG. 15 is a diagram illustrating an example of a pod placement request message. In step S23, upon receiving the pod placement request message, the first master node 41 generates a pod placement request message as shown in FIG. 15 based on the received pod placement request message, and transmits it to the first worker node 52. . The pod placement request message generated here is a message for requesting placement of the first pod 81. The configuration of the pod placement request message shown in FIG. 15 is the same as the configuration of the pod placement request message shown in FIG. 14 except that the items for the second pod 82 and the third pod 83 are removed. In the example shown in FIG. 15, the value of the No of Pods field included in the pod placement request message is 1. The value of the Pod ID field is PodID1. The value of the Base ID field is BaseID1. The value of the Node ID field is WnID1. The value of the Repository ID field is LirID1.

図16は、ポッド配置応答メッセージの一例を示す図である。ステップS24において、第1ワーカノード52は、受信したポッド配置要求メッセージに基づいて、第1ポッド81を第1ワーカノード52に配置する。ステップS25において、第1ワーカノード52は、第1ポッド81の配置を終了すると、ポッド配置応答メッセージを生成し、第1マスターノード41に送信する。ポッド配置応答メッセージは、第1ポッド81の配置を完了したことを応答するためのメッセージである。図16に示すポッド配置応答メッセージは、TypeフィールドおよびApp IDフィールドを含む。Typeフィールドの値は、ポッド配置応答メッセージのメッセージタイプを示す“ポッド配置応答”である。App IDフィールドの値は、実行されるアプリケーションの識別子であり、具体的にはAppID1である。 FIG. 16 is a diagram illustrating an example of a pod placement response message. In step S24, the first worker node 52 places the first pod 81 on the first worker node 52 based on the received pod placement request message. In step S25, when the first worker node 52 finishes arranging the first pod 81, it generates a pod arrangement response message and transmits it to the first master node 41. The pod placement response message is a message for responding that placement of the first pod 81 has been completed. The pod placement response message shown in FIG. 16 includes a Type field and an App ID field. The value of the Type field is "Pod placement response" indicating the message type of the Pod placement response message. The value of the App ID field is the identifier of the application being executed, specifically AppID1.

ポッド配置応答メッセージは、1つのポッドについて、Pod IDフィールドおよびStatusフィールドからなる2つ組フィールドをさらに含む。Pod IDフィールドは、ポッドの識別子を示す。図16の例では、Pod IDフィールドの値はPodID1である。Statusフィールドは、ポッド配置処理の終了状況を示す。図16の例では、Statusフィールドの値は、第1ポッド81の配置の正常終了を示す“OK”である。 The pod placement response message further includes, for one pod, a double field consisting of a Pod ID field and a Status field. The Pod ID field indicates the pod identifier. In the example of FIG. 16, the value of the Pod ID field is PodID1. The Status field indicates the completion status of the pod placement process. In the example of FIG. 16, the value of the Status field is "OK" indicating that the arrangement of the first pod 81 has been successfully completed.

(第3ポッド83の配置)
図17は、ポッド配置要求メッセージの一例を示す図である。ステップS25において、第1マスターノード41は、図17に示すようなポッド配置要求メッセージを生成し、第3ワーカノードに送信する。図17に示すポッド配置要求メッセージの構成は、図15に示すポッド配置要求メッセージの構成と同一である。図17の例では、ポッド配置要求メッセージは、第3ポッド83の配置に関する各種の情報を含んでいる。第3ワーカノードは、ポッド配置要求メッセージを受信すると、受信したポッド配置要求メッセージに基づいて、第3ポッド83を第3ワーカノードに配置する。
(Arrangement of third pod 83)
FIG. 17 is a diagram illustrating an example of a pod placement request message. In step S25, the first master node 41 generates a pod placement request message as shown in FIG. 17, and sends it to the third worker node. The structure of the pod placement request message shown in FIG. 17 is the same as the structure of the pod placement request message shown in FIG. 15. In the example of FIG. 17, the pod placement request message includes various information regarding the placement of the third pod 83. Upon receiving the pod placement request message, the third worker node places the third pod 83 on the third worker node based on the received pod placement request message.

図18は、ポッド配置応答メッセージの一例を示す図である。ステップS26において、第3ワーカノードは、第3ポッド83の配置を終了すると、図18に示すようなポッド配置応答メッセージを生成し、第1マスターノード41に送信する。図18に示すポッド配置応答メッセージの構成は、図16に示すポッド配置応答メッセージの構成と同一である。図18の例では、ポッド配置応答メッセージは、第3ポッド83の配置完了に関する各種の情報を含んでいる。 FIG. 18 is a diagram illustrating an example of a pod placement response message. In step S26, when the third worker node finishes placing the third pod 83, it generates a pod placement response message as shown in FIG. 18 and sends it to the first master node 41. The structure of the pod placement response message shown in FIG. 18 is the same as the structure of the pod placement response message shown in FIG. 16. In the example of FIG. 18, the pod placement response message includes various information regarding completion of placement of the third pod 83.

(第2ポッド82の配置)
図19は、ポッド配置要求メッセージの一例を示す図である。ステップS27において、第1マスターノード41は、図19に示すようなポッド配置要求メッセージを生成し、第4ワーカノード53に送信する。図19に示すポッド配置要求メッセージの構成は、図15に示すポッド配置要求メッセージの構成と同一である。図19の例では、ポッド配置要求メッセージは、第2ポッド82の配置に関する各種の情報を含んでいる。第4ワーカノード53は、ポッド配置要求メッセージを受信すると、受信したポッド配置要求メッセージに基づいて、第2ポッド82を第2ワーカノード72に配置する。
(Arrangement of second pod 82)
FIG. 19 is a diagram illustrating an example of a pod placement request message. In step S27, the first master node 41 generates a pod placement request message as shown in FIG. 19, and transmits it to the fourth worker node 53. The structure of the pod placement request message shown in FIG. 19 is the same as the structure of the pod placement request message shown in FIG. 15. In the example of FIG. 19, the pod placement request message includes various information regarding the placement of the second pod 82. Upon receiving the pod placement request message, the fourth worker node 53 places the second pod 82 on the second worker node 72 based on the received pod placement request message.

図20は、ポッド配置応答メッセージの一例を示す図である。ステップS28において、第2ワーカノード72は、第2ポッド82の配置を終了すると、図20に示すようなポッド配置応答メッセージを生成し、第1マスターノード41に送信する。図20に示すポッド配置応答メッセージの構成は、図16に示すポッド配置応答メッセージの構成と同一である。図20の例では、ポッド配置応答メッセージは、第2ポッド82の配置完了に関する各種の情報を含んでいる。 FIG. 20 is a diagram illustrating an example of a pod placement response message. In step S28, when the second worker node 72 finishes placing the second pod 82, it generates a pod placement response message as shown in FIG. 20 and sends it to the first master node 41. The structure of the pod placement response message shown in FIG. 20 is the same as the structure of the pod placement response message shown in FIG. 16. In the example of FIG. 20, the pod placement response message includes various information regarding completion of placement of the second pod 82.

以上のようにして第1ポッド81、第2ポッド82、および第3ポッド83が正常に配置されることによって、アプリケーションが起動する。なお、第1ポッド81、第2ポッド82、および第3ポッド83の配置順は、図6に示す順番に限らず、任意に変更できる。例えば、第3ポッド83を最初に配置し、次に第1ポッド81を配置し、最後に第2ポッド82を配置してもよい。 As the first pod 81, second pod 82, and third pod 83 are properly arranged as described above, the application is started. Note that the arrangement order of the first pod 81, the second pod 82, and the third pod 83 is not limited to the order shown in FIG. 6, and can be arbitrarily changed. For example, the third pod 83 may be placed first, then the first pod 81, and finally the second pod 82.

(ポッド配置応答)
図21は、ポッド配置応答メッセージの一例を示す図である。ステップS29において、第1マスターノード41は、図21に示すようなポッド配置応答メッセージを生成し、第1AppAPI46に送信する。図21に示すポッド配置応答メッセージの構成は、図16、図18、および図20にそれぞれ示す各ポッド配置応答メッセージを統合した構成である。すなわち、図21に示すポッド配置応答メッセージは、第1ポッド81、第2ポッド82、および第3ポッド83のそれぞれの配置完了に関する情報を含んでいる。
(pod placement response)
FIG. 21 is a diagram illustrating an example of a pod placement response message. In step S29, the first master node 41 generates a pod placement response message as shown in FIG. 21 and sends it to the first App API 46. The configuration of the pod placement response message shown in FIG. 21 is a configuration that integrates the pod placement response messages shown in FIGS. 16, 18, and 20, respectively. That is, the pod placement response message shown in FIG. 21 includes information regarding completion of placement of each of the first pod 81, second pod 82, and third pod 83.

図22は、アプリ起動応答メッセージの一例を示す図である。ステップS30において、第1AppAPI46は、ポッド配置応答メッセージを受信すると、図22に示すようなアプリ起動応答メッセージを生成し、起動App23に送信する。アプリ起動応答メッセージは、アプリケーションが起動したことを応答するためのメッセージである。図22に示すアプリ起動応答メッセージは、Typeフィールド、App IDフィールド、およびStatusフィールドを含む。Typeフィールドの値は、アプリ起動応答メッセージのメッセージタイプを示す“アプリ起動応答”である。App IDフィールドの値は、実行されるアプリケーションの識別子であり、具体的にはAppID1である。Statusフィールドは、配置処理の終了状態を示す。図22の例では、配置処理の正常終了を示す“OK”である。 FIG. 22 is a diagram illustrating an example of an application activation response message. In step S30, upon receiving the pod placement response message, the first App API 46 generates an application activation response message as shown in FIG. 22 and sends it to the activation App 23. The application activation response message is a message for responding that an application has been activated. The application activation response message shown in FIG. 22 includes a Type field, an App ID field, and a Status field. The value of the Type field is "application launch response" indicating the message type of the application launch response message. The value of the App ID field is the identifier of the application being executed, specifically AppID1. The Status field indicates the completion status of the placement process. In the example of FIG. 22, "OK" indicates that the placement process has ended normally.

以上のようにして起動されたアプリケーションは、第1ポッド81、第2ポッド82、および第3ポッド83が連携して動作することによって、アプリケーションの実行を継続する。アプリケーションが起動したことによって、第1MECサーバ5、第2MECサーバ7、およびネットワークにおいて利用可能な各リソースが、アプリケーションによって消費されるリソース分だけ減少する。コンテナシステム1は、アプリケーションの起動後においても、図2に示すように、第1拠点と他の拠点との間のネットワークの状況、各第1MECサーバ5のリソース状況、第2拠点と他の拠点との間のネットワーク状況、および各第2MECサーバ7のリソース状況を定期的に測定する。これにより、第1ローカルデータストア44、第2ローカルデータストア64、およびグローバルデータストア32に保存されるネットワーク状況およびリソース状況を、定期的に更新する。しおたがって、第1ローカルデータストア44、第2ローカルデータストア64、およびグローバルデータストア32にそれぞれ格納される情報を最新の状態に維持することができる。 The application started as described above continues to be executed by the first pod 81, the second pod 82, and the third pod 83 working together. By starting the application, the resources available in the first MEC server 5, the second MEC server 7, and the network decrease by the amount of resources consumed by the application. Even after the application is started, the container system 1 keeps track of the network status between the first base and other bases, the resource status of each first MEC server 5, and the second base and other bases, as shown in FIG. The network status between the second MEC server 7 and the resource status of each second MEC server 7 is periodically measured. Thereby, the network status and resource status stored in the first local data store 44, the second local data store 64, and the global data store 32 are updated regularly. Therefore, the information stored in the first local data store 44, the second local data store 64, and the global data store 32, respectively, can be kept up to date.

(アプリケーションの停止)
図23は、コンテナシステム1がアプリケーションを停止する際に実行する一連の処理の流れを示すシーケンス図である。ユーザは、端末機器2を操作し、所定のアプリケーションを停止させるための操作を、端末機器2に入力する。端末機器2は、この操作を検出すると、起動App23にアプリケーションの停止を指示する。
(Stopping the application)
FIG. 23 is a sequence diagram showing the flow of a series of processes executed by the container system 1 when stopping an application. The user operates the terminal device 2 and inputs an operation to the terminal device 2 to stop a predetermined application. When the terminal device 2 detects this operation, it instructs the startup App 23 to stop the application.

図24は、アプリ停止要求メッセージの一例を示す図である。ステップS31において、起動App23は、端末機器2からアプリケーションの停止指示を受けると、図24に示すようなアプリ停止要求メッセージを生成し、第1AppAPI46に送信する。アプリ停止要求メッセージは、Typeフィールド、User IDフィールド、Credentialフィールド、およびApp IDフィールドを含む。Typeフィールドの値は、アプリ停止要求メッセージのメッセージタイプを示す“アプリ停止要求”である。User IDフィールドは、端末機器2のユーザの識別子を示す。図24の例では、User IDフィールドの値はUsrID1である。Credentialフィールドは、ユーザの認証認可情報を含む。図24の例では、Credentialフィールドの値は、CredUsr1である。App IDフィールドの値は、停止されるアプリケーションの識別子であり、具体的にはAppID1である。 FIG. 24 is a diagram illustrating an example of an application stop request message. In step S31, when the startup App 23 receives an application stop instruction from the terminal device 2, it generates an application stop request message as shown in FIG. 24, and sends it to the first App API 46. The application stop request message includes a Type field, a User ID field, a Credential field, and an App ID field. The value of the Type field is "application stop request" indicating the message type of the application stop request message. The User ID field indicates the identifier of the user of the terminal device 2. In the example of FIG. 24, the value of the User ID field is UsrID1. The Credential field includes user authentication and authorization information. In the example of FIG. 24, the value of the Credential field is CredUsr1. The value of the App ID field is the identifier of the application to be stopped, specifically AppID1.

ステップS32において、第1AppAPI46は、端末機器2のユーザの認証および認可を実行する。その際、第1AppAPI46は、携帯電話網などのコントロールプレーンにアクセスしてもよい。ステップS33において、第1AppAPI46は、ユーザの認証および認可に成功すると、受信したアプリ停止要求メッセージを第1マスターノード41に送信する。 In step S32, the first App API 46 performs authentication and authorization of the user of the terminal device 2. At this time, the first App API 46 may access a control plane such as a mobile phone network. In step S33, if the first App API 46 succeeds in user authentication and authorization, it transmits the received application stop request message to the first master node 41.

図25は、ポッド停止要求メッセージの一例を示す図である。ステップS34において、第1マスターノード41は、アプリ停止要求メッセージを受信すると、図25に示すようなポッド停止要求メッセージを生成し、第1ワーカノード52に送信する。図25に示すポッド停止要求メッセージは、第1ポッド81の停止を要求するためのメッセージである。図25の例では、ポッド停止要求メッセージは、Typeフィールド、App IDフィールド、およびNo of Podsフィールドを含む。Typeフィールドの値は、ポッド停止要求メッセージのメッセージタイプを示す“ポッド停止要求”である。App IDフィールドの値は、停止されるアプリケーションの識別子であり、具体的にはAppID1である。No of Podsフィールドは、停止されるポッドの数を示す。図25の例では、No of Podsフィールドの値は1である。 FIG. 25 is a diagram illustrating an example of a pod stop request message. In step S34, upon receiving the application stop request message, the first master node 41 generates a pod stop request message as shown in FIG. 25 and sends it to the first worker node 52. The pod stop request message shown in FIG. 25 is a message for requesting the first pod 81 to stop. In the example of FIG. 25, the pod stop request message includes a Type field, an App ID field, and a No of Pods field. The value of the Type field is “pod stop request” indicating the message type of the pod stop request message. The value of the App ID field is the identifier of the application to be stopped, specifically AppID1. The No of Pods field indicates the number of pods to be stopped. In the example of FIG. 25, the value of the No of Pods field is 1.

ポッド停止要求メッセージは、1つのポッドについて、Pod IDフィールド、Base IDフィールド、およびNode IDフィールドからなる3つ組フィールドをさらに含む。Pod IDフィールドは、ポッドの識別子を示す。図25の例では、Pod IDフィールドの値はPodID1である。Base IDフィールドは、ポッドが配置されている拠点の識別子を示す。図25の例では、Base IDフィールドの値は、第1ポッド81が配置されている第1拠点の識別子すなわちBaseID1である。Node IDフィールドは、ポッドが配置されているワーカノードの識別子を示す。図25の例では、Node IDフィールドの値は、第1ポッド81が配置されている第1ワーカノード52の識別子すなわちWnID1である。 The pod stop request message further includes, for one pod, a triple field consisting of a Pod ID field, a Base ID field, and a Node ID field. The Pod ID field indicates the pod identifier. In the example of FIG. 25, the value of the Pod ID field is PodID1. The Base ID field indicates the identifier of the base where the pod is located. In the example of FIG. 25, the value of the Base ID field is the identifier of the first base where the first pod 81 is located, ie, BaseID1. The Node ID field indicates the identifier of the worker node where the pod is located. In the example of FIG. 25, the value of the Node ID field is the identifier of the first worker node 52 where the first pod 81 is placed, ie, WnID1.

図26は、ポッド停止応答メッセージの一例を示す図である。第1ワーカノード52は、ポッド停止要求メッセージを受信すると、第1ポッド81を停止する。ステップS35において、第1ワーカノード52は、第1ポッド81の停止に成功すると、図26に示すようなポッド停止応答メッセージを生成し、第1マスターノード41に送信する。図26に示すポッド停止応答メッセージは、第1ポッド81の停止に成功したことを応答するためのメッセージである。図26の例では、ポッド停止応答メッセージは、Typeフィールド、App IDフィールド、およびNo of Podsフィールドを含む。Typeフィールドの値はメッセージタイプを示す“ポッド停止応答”である。App IDフィールドの値は、停止されるアプリケーションの識別子であり、具体的にはAppID1である。No of Podsフィールドはポッドの数を示す。この例では1である。 FIG. 26 is a diagram illustrating an example of a pod stop response message. The first worker node 52 stops the first pod 81 upon receiving the pod stop request message. In step S35, when the first worker node 52 successfully stops the first pod 81, it generates a pod stop response message as shown in FIG. 26 and sends it to the first master node 41. The pod stop response message shown in FIG. 26 is a message for responding that the first pod 81 has been successfully stopped. In the example of FIG. 26, the pod stop response message includes a Type field, an App ID field, and a No of Pods field. The value of the Type field is "Pod Stop Response" indicating the message type. The value of the App ID field is the identifier of the application to be stopped, specifically AppID1. The No of Pods field indicates the number of pods. In this example, it is 1.

ポッド停止応答メッセージは、1つのポッドについて、Pod IDフィールドおよびStatusフィールドからなる2つ組フィールドをさらに含む。Pod IDフィールドは、ポッドの識別子を示す。図26の例では、Pod IDフィールドの値は、停止される第1ポッド81の識別子すなわちPodID1である。Statusフィールドは、処理の終了状態を示す。図26の例では、正常終了を示す“OK”である。 The pod stop response message further includes, for one pod, a double field consisting of a Pod ID field and a Status field. The Pod ID field indicates the pod identifier. In the example of FIG. 26, the value of the Pod ID field is the identifier of the first pod 81 to be stopped, ie, PodID1. The Status field indicates the completion status of the process. In the example of FIG. 26, "OK" indicates normal termination.

ステップS36において、第1マスターノード41は、第3ポッド83を停止させるためのポッド停止要求メッセージを生成し、第3ワーカノードに送信する。第3ワーカノードは、ポッド停止要求メッセージを受信すると、第3ポッド83を停止する。ステップS37において、第3ワーカノードは、第3ポッド83を停止したことを応答するためのポッド停止応答メッセージを生成し、第1マスターノード41に送信する。第3ポッド83の停止時における各処理の手順は、第1ポッド81の停止時における各処理の手順と同様であるため、詳細な説明を省略する。 In step S36, the first master node 41 generates a pod stop request message for stopping the third pod 83, and sends it to the third worker node. The third worker node stops the third pod 83 upon receiving the pod stop request message. In step S<b>37 , the third worker node generates a pod stop response message for responding that the third pod 83 has been stopped, and sends it to the first master node 41 . The procedure of each process when the third pod 83 is stopped is the same as the procedure of each process when the first pod 81 is stopped, so a detailed explanation will be omitted.

ステップS38において、第2マスターノード61は、第2ポッド82を停止させるためのポッド停止要求メッセージを生成し、第2ワーカノード72に送信する。第2ワーカノード72は、ポッド停止要求メッセージを受信すると、第2ポッド82を停止する。ステップS39において、第2ワーカノード72は、第2ポッド82を停止したことを応答するためのポッド停止応答メッセージを生成し、第1マスターノード41に送信する。第2ポッド82の停止時における各処理の手順は、第1ポッド81の停止時における各処理の手順と同様であるため、詳細な説明を省略する。 In step S38, the second master node 61 generates a pod stop request message for stopping the second pod 82, and transmits it to the second worker node 72. The second worker node 72 stops the second pod 82 upon receiving the pod stop request message. In step S39, the second worker node 72 generates a pod stop response message for responding to the fact that the second pod 82 has been stopped, and sends it to the first master node 41. The procedure of each process when the second pod 82 is stopped is the same as the procedure of each process when the first pod 81 is stopped, so a detailed explanation will be omitted.

図27は、アプリ停止応答メッセージの一例を示す図である。ステップS40において、第1マスターノード41は、アプリ停止応答メッセージを生成し、第1AppAPI46に送信する。アプリ停止応答メッセージは、アプリケーションを停止したことを応答するためのメッセージである。図27の例では、アプリ停止応答メッセージは、Typeフィールド、App IDフィールド、およびStatusフィールドを含む。Typeフィールドの値は、アプリ停止応答メッセージのメッセージタイプを示す“アプリ停止応答”である。App IDフィールドの値は、停止されるアプリケーションの識別子であり、具体的にはAppID1である。Statusフィールドは、処理の終了状態を示す。図2の例では、Statusフィールドの値は、アプリケーション停止の正常終了を示す“OK”である。 FIG. 27 is a diagram illustrating an example of an application stop response message. In step S40, the first master node 41 generates an application stop response message and sends it to the first App API 46. The application stop response message is a message for responding that the application has been stopped. In the example of FIG. 27, the application stop response message includes a Type field, an App ID field, and a Status field. The value of the Type field is “application stop response” which indicates the message type of the application stop response message. The value of the App ID field is the identifier of the application to be stopped, specifically AppID1. The Status field indicates the completion status of the process. In the example of FIG. 2, the value of the Status field is "OK" indicating normal termination of the application.

ステップS41において、第1AppAPI46は、アプリ停止応答メッセージを受信すると、受信したアプリ停止応答メッセージを起動App23に送信する。ステップS42において、起動App23は、アプリ停止応答メッセージを受信すると、終了する。これにより、アプリケーションの終了が完了する。 In step S<b>41 , upon receiving the application stop response message, the first App API 46 transmits the received application stop response message to the startup App 23 . In step S42, the startup App 23 ends upon receiving the application stop response message. This completes the termination of the application.

図28は、測定要求メッセージの一例を示す図である。ステップS43において、第1AppAPI46は、図28に示すような測定要求メッセージを生成し、第1ネットワークモニタ42に送信する。図28に示す測定要求メッセージは、ネットワーク状況の測定を要求するためのメッセージである。測定要求メッセージは、Typeフィールド、およびNo of Targetsフィールドを含む。Typeフィールドの値は、測定要求メッセージのメッセージタイプを示す“測定要求”である。No of Targetsフィールドは、測定要求対象の個数を示す。図28の例では、No of Targetsフィールドの値は1である。測定要求メッセージは、1つの測定要求対象につき、1つのTarget IDフィールドをさらに含む。Target IDフィールドは、測定を要求するモジュールの識別子を示す。図28の例では、Target IDフィールドの値は、第1ネットワークモニタ42の識別子すなわちNmonID1である。 FIG. 28 is a diagram showing an example of a measurement request message. In step S43, the first App API 46 generates a measurement request message as shown in FIG. 28 and sends it to the first network monitor 42. The measurement request message shown in FIG. 28 is a message for requesting measurement of network status. The measurement request message includes a Type field and a No of Targets field. The value of the Type field is "measurement request" indicating the message type of the measurement request message. The No of Targets field indicates the number of measurement request targets. In the example of FIG. 28, the value of the No of Targets field is 1. The measurement request message further includes one Target ID field for one measurement request target. The Target ID field indicates the identifier of the module requesting measurement. In the example of FIG. 28, the value of the Target ID field is the identifier of the first network monitor 42, ie, NmonID1.

図29は、測定要求メッセージの一例を示す図である。ステップS44において、第1AppAPI46は、図29に示すような測定要求メッセージを生成し、第1リソースモニタ51に送信する。図29に示す測定要求メッセージは、リソース状況の測定を要求するためのメッセージである。測定要求メッセージは、Typeフィールド、およびNo of Targetsフィールドを含む。Typeフィールドの値は、測定要求メッセージのメッセージタイプを示す“測定要求”である。No of Targetsフィールドは、測定要求対象の個数を示す。図29の例では、No of Targetsフィールドの値は1である。測定要求メッセージは、1つの測定要求対象につき、1つのTarget IDフィールドをさらに含む。Target IDフィールドは、測定を要求するモジュールの識別子を示す。図29の例では、Target IDフィールドの値は、第1リソースモニタ51の識別子すなわちRmonID1である。 FIG. 29 is a diagram showing an example of a measurement request message. In step S44, the first App API 46 generates a measurement request message as shown in FIG. 29, and transmits it to the first resource monitor 51. The measurement request message shown in FIG. 29 is a message for requesting measurement of resource status. The measurement request message includes a Type field and a No of Targets field. The value of the Type field is "measurement request" indicating the message type of the measurement request message. The No of Targets field indicates the number of measurement request targets. In the example of FIG. 29, the value of the No of Targets field is 1. The measurement request message further includes one Target ID field for one measurement request target. The Target ID field indicates the identifier of the module requesting measurement. In the example of FIG. 29, the value of the Target ID field is the identifier of the first resource monitor 51, ie, RmonID1.

図30は、測定要求メッセージの一例を示す図である。ステップS45において、第1AppAPI46は、図30に示すような測定要求メッセージを生成し、第2AppAPI66に送信する。図30に示す測定要求メッセージは、ネットワーク状況およびリソース状況の測定を要求するためのメッセージである。測定要求メッセージは、TypeフィールドおよびNo of Targetsフィールドを含む。Typeフィールドの値は、測定要求メッセージのメッセージタイプを示す“測定要求”である。No of Targetsフィールドは、測定要求対象の個数を示す。図30の例では、No of Targetsフィールドの値は2である。測定要求メッセージは、1つの測定要求対象につき、1つのTarget IDフィールドをさらに含む。図30の例では、測定要求メッセージは、2つのTarget IDフィールドをさらに含む。Target IDフィールドは、測定を要求するモジュールの識別子を示す。図30の例では、1つ目のTarget IDフィールドの値は、第2ネットワークモニタ62の識別子すなわちNmonID2である。2つ目のTarget IDフィールドの値は、第2リソースモニタ71の識別子すなわちRmonID2である。 FIG. 30 is a diagram showing an example of a measurement request message. In step S45, the first App API 46 generates a measurement request message as shown in FIG. 30 and sends it to the second App API 66. The measurement request message shown in FIG. 30 is a message for requesting measurement of network status and resource status. The measurement request message includes a Type field and a No of Targets field. The value of the Type field is "measurement request" indicating the message type of the measurement request message. The No of Targets field indicates the number of measurement request targets. In the example of FIG. 30, the value of the No of Targets field is 2. The measurement request message further includes one Target ID field for one measurement request target. In the example of FIG. 30, the measurement request message further includes two Target ID fields. The Target ID field indicates the identifier of the module requesting measurement. In the example of FIG. 30, the value of the first Target ID field is the identifier of the second network monitor 62, ie, NmonID2. The value of the second Target ID field is the identifier of the second resource monitor 71, ie, RmonID2.

図31は、測定要求メッセージの一例を示す図である。ステップS46において、第2AppAPI66は、図31に示すような測定要求メッセージを生成し、第2ネットワークモニタ62に送信する。図31に示す測定要求メッセージは、ネットワーク状況の測定を要求するためのメッセージである。測定要求メッセージは、Typeフィールド、およびNo of Targetsフィールドを含む。Typeフィールドの値は、測定要求メッセージのメッセージタイプを示す“測定要求”である。No of Targetsフィールドは、測定要求対象の個数を示す。図31の例では、No of Targetsフィールドの値は1である。測定要求メッセージは、1つの測定要求対象につき、1つのTarget IDフィールドをさらに含む。Target IDフィールドは、測定を要求するモジュールの識別子を示す。図31の例では、Target IDフィールドの値は、第2ネットワークモニタ62の識別子すなわちNmonID2である。 FIG. 31 is a diagram showing an example of a measurement request message. In step S46, the second App API 66 generates a measurement request message as shown in FIG. 31 and sends it to the second network monitor 62. The measurement request message shown in FIG. 31 is a message for requesting measurement of the network status. The measurement request message includes a Type field and a No of Targets field. The value of the Type field is "measurement request" indicating the message type of the measurement request message. The No of Targets field indicates the number of measurement request targets. In the example of FIG. 31, the value of the No of Targets field is 1. The measurement request message further includes one Target ID field for one measurement request target. The Target ID field indicates the identifier of the module requesting measurement. In the example of FIG. 31, the value of the Target ID field is the identifier of the second network monitor 62, ie, NmonID2.

図32は、測定要求メッセージの一例を示す図である。ステップS47において、第2AppAPI66は、図32に示すような測定要求メッセージを生成し、第2リソースモニタ71に送信する。図32に示す測定要求メッセージは、リソース状況の測定を要求するためのメッセージである。測定要求メッセージは、Typeフィールド、およびNo of Targetsフィールドを含む。Typeフィールドの値は、測定要求メッセージのメッセージタイプを示す“測定要求”である。No of Targetsフィールドは、測定要求対象の個数を示す。図32の例では、No of Targetsフィールドの値は1である。測定要求メッセージは、1つの測定要求対象につき、1つのTarget IDフィールドをさらに含む。Target IDフィールドは、測定を要求するモジュールの識別子を示す。図32の例では、Target IDフィールドの値は、第2リソースモニタ71の識別子すなわちRmonID2である。 FIG. 32 is a diagram showing an example of a measurement request message. In step S47, the second App API 66 generates a measurement request message as shown in FIG. 32 and transmits it to the second resource monitor 71. The measurement request message shown in FIG. 32 is a message for requesting measurement of resource status. The measurement request message includes a Type field and a No of Targets field. The value of the Type field is "measurement request" indicating the message type of the measurement request message. The No of Targets field indicates the number of measurement request targets. In the example of FIG. 32, the value of the No of Targets field is 1. The measurement request message further includes one Target ID field for one measurement request target. The Target ID field indicates the identifier of the module requesting measurement. In the example of FIG. 32, the value of the Target ID field is the identifier of the second resource monitor 71, ie, RmonID2.

ステップS43~S47に基づいて、第1ネットワークモニタ42、第1リソースモニタ51、第2ネットワークモニタ62、および第2リソースモニタ71は、図3に示す一連の処理手順を実行する。これにより、アプリケーション終了後における最新のネットワーク状況およびリソース状況が、第1ローカルデータストア44、第2ローカルデータストア64、およびグローバルデータストア32に反映される。 Based on steps S43 to S47, the first network monitor 42, first resource monitor 51, second network monitor 62, and second resource monitor 71 execute a series of processing procedures shown in FIG. 3. As a result, the latest network status and resource status after the application ends are reflected in the first local data store 44, second local data store 64, and global data store 32.

(本実施形態による主要な効果)
第1MECサーバ5は、第1リソースモニタ51によって第1ワーカノード52のリソース状況を測定し、第1拠点装置4に送信する。第1拠点装置4は、第1ネットワークモニタ42を使用することによって、第1拠点から第2拠点への通信時のネットワーク状況(通信遅延等)を測定する。これらのネットワーク状況およびリソース状況は、第1ローカルデータストア44に保存する。第1ローカルMANO43は、第1ローカルデータストア44に保存されたネットワーク状況およびリソース状況に基づいて、第1ポッド81を第1MECサーバ5に配置するか否かを決定する。これにより、ネットワーク状況およびリソース状況を考慮した第1ポッド81の配置が可能になるため、第1ポッド81を最適な第1ワーカノード52に配置することができる。
(Main effects of this embodiment)
The first MEC server 5 measures the resource status of the first worker node 52 using the first resource monitor 51 and transmits it to the first base device 4 . The first base device 4 uses the first network monitor 42 to measure the network status (communication delay, etc.) during communication from the first base to the second base. These network conditions and resource conditions are stored in the first local data store 44. The first local MANO 43 determines whether to place the first pod 81 in the first MEC server 5 based on the network status and resource status stored in the first local data store 44 . This makes it possible to arrange the first pod 81 in consideration of the network situation and resource situation, so that the first pod 81 can be arranged on the optimal first worker node 52.

第1ローカルMANO43は、第1ローカルデータストア44に保存されたネットワーク状況およびリソース状況に基づいて、第1ポッド81が要求するネットワークへの要求事項およびリソースへの要求事項を満たす第1MECサーバ5に第1ポッド81を配置することを決定する。これにより、第1ポッド81を確実に配置することができる。 The first local MANO 43 sends the first MEC server 5 to the first MEC server 5 that satisfies the network requirements and resource requirements requested by the first pod 81 based on the network status and resource status stored in the first local data store 44. It is decided to place the first pod 81. Thereby, the first pod 81 can be reliably placed.

第2MECサーバ7は、第2リソースモニタ71によって第2ワーカノード72のリソース状況を測定し、第2拠点装置6に送信する。第2拠点装置6は、第2ネットワークモニタ62を使用することによって、第2拠点から第1拠点への通信時のネットワーク状況(通信遅延等)を測定し、第2ローカルデータストア64に保存する。これらのネットワーク状況およびリソース状況は、グローバルデータストア32にも保存される。グローバルMANO31は、グローバルデータストア32に保存された第2拠点に関するネットワーク状況およびリソース状況を考慮することによって、第2ポッド82を第2MECサーバ7の第2ワーカノード72に配置するか否かを決定する。この結果、ネットワーク状況を考慮したポッド配置が可能となるため、通信遅延が少ない等の良好なネットワーク状況にある各ワーカノードに各ポッドを配置することができる。さらに、ネットワークを介して広域分散した拠点間でのポッドの最適な配置が可能となる。 The second MEC server 7 measures the resource status of the second worker node 72 using the second resource monitor 71 and transmits it to the second base device 6 . The second base device 6 uses the second network monitor 62 to measure the network status (communication delay, etc.) during communication from the second base to the first base, and stores it in the second local data store 64. . These network conditions and resource conditions are also stored in the global data store 32. The global MANO 31 determines whether to place the second pod 82 on the second worker node 72 of the second MEC server 7 by considering the network status and resource status regarding the second base stored in the global data store 32. . As a result, it is possible to arrange pods in consideration of network conditions, so each pod can be placed in each worker node in a good network condition with little communication delay. Furthermore, it is possible to optimally place pods between widely distributed locations via the network.

第1MECサーバ5は、第1ワーカノード52が複数のコンテナオーケストレーションクラスタに属していたとしても、第1リソースモニタ51を使用することによって、第1ワーカノード52の正しいリソース状況を測定することができる。これにより、第1ワーカノード52の正しいリソース状況に基づいて第1ポッド81を第1ワーカノード52に配置するか否かを決定することができるため、第1ポッド81の配置に失敗する可能性を低下させることができる。 The first MEC server 5 can measure the correct resource status of the first worker node 52 by using the first resource monitor 51 even if the first worker node 52 belongs to multiple container orchestration clusters. This makes it possible to determine whether or not to place the first pod 81 on the first worker node 52 based on the correct resource status of the first worker node 52, thereby reducing the possibility of failure in placing the first pod 81. can be done.

同様に、第2MECサーバ7は、第2ワーカノード72が複数のコンテナオーケストレーションクラスタに属していたとしても、第2リソースモニタ71を使用することによって、第2ワーカノード72の正しいリソース状況を測定することができる。したがって、クラウドサーバ3は、第1拠点装置4から受信した各第1MECサーバ5のリソース状況および第2拠点装置6から受信した各第2MECサーバ7のリソース状況をグローバルデータストア32に保存することによって、全てのワーカノードのリソース状況を正しく把握することができる。 Similarly, the second MEC server 7 can measure the correct resource status of the second worker node 72 by using the second resource monitor 71 even if the second worker node 72 belongs to multiple container orchestration clusters. I can do it. Therefore, the cloud server 3 saves the resource status of each first MEC server 5 received from the first base device 4 and the resource status of each second MEC server 7 received from the second base device 6 in the global data store 32. , it is possible to accurately grasp the resource status of all worker nodes.

コンテナオーケストレーションクラスタとして実行されるアプリケーションの起動後、コンテナオーケストレーションクラスタとして実行されるアプリケーションを構成する第1ポッド81は、端末機器2が接続されるネットワーク内の第1MECサーバ5に配置されている。また、第2ポッド82は、端末機器2が接続されるネットワーク内の第2MECサーバ7に配置されている。さらに、第3ポッド83は、端末機器2に配置されている。一方、アプリケーションを起動させるための起動App23は、コンテナオーケストレーションクラスタに属していない。そのため、アプリケーションの実行中に、起動App23と第1ポッド81、第2ポッド82、および第3ポッド83のいずれかとが、中継ポッドを介して通信することはない。さらに、アプリケーションを構成する第1ポッド81、第2ポッド82、および第3ポッド83の間で、中継ポッドを介した通信が行われない。これらにより、アプリケーションの起動時および起動後の実行時において、ポッド間の通信経路が冗長になることを防止することができる。 After starting the application to be executed as a container orchestration cluster, the first pod 81 configuring the application to be executed as a container orchestration cluster is placed in the first MEC server 5 in the network to which the terminal device 2 is connected. . Further, the second pod 82 is placed in the second MEC server 7 in the network to which the terminal device 2 is connected. Furthermore, the third pod 83 is placed in the terminal device 2. On the other hand, the startup App 23 for starting an application does not belong to the container orchestration cluster. Therefore, during execution of the application, the startup App 23 and any one of the first pod 81, the second pod 82, and the third pod 83 do not communicate via the relay pod. Further, communication via the relay pod is not performed between the first pod 81, the second pod 82, and the third pod 83 that constitute the application. With these, it is possible to prevent communication paths between pods from becoming redundant when starting an application and when executing the application after starting.

既存のコンテナオーケストレーションシステムに対してコンテナシステム1を新たに導入する際、既存のコンテナオーケストレーションシステムの部分に対する変更は必要としない。そのため、稼働中の既存のコンテナオーケストレーションシステムに対してコンテナシステム1を容易に導入することができる。 When newly introducing the container system 1 into an existing container orchestration system, no changes are required to the existing container orchestration system. Therefore, the container system 1 can be easily introduced into an existing container orchestration system in operation.

端末機器2において実行されるアプリケーションの一部を、第1MECサーバ5および第2MECサーバ7に効率的にオフロードすることができる。 A part of the application executed on the terminal device 2 can be efficiently offloaded to the first MEC server 5 and the second MEC server 7.

(変形例)
コンテナシステム1では、第1ワーカノード52が複数の異なるコンテナオーケストレーションクラスタに属すると共に、第2ワーカノード72が複数の異なるコンテナオーケストレーションクラスタに属しても良い。この場合も、第1MECサーバ5は、第1リソースモニタ51を使用することによって、第1ワーカノード52および第4ワーカノード53のリソース状況を正確に測定する。測定された各第1MECサーバ5のリソース状況は、第1拠点装置4において集約され、かつクラウドサーバ3に送信される。同様に、測定された各第2MECサーバ7のリソース状況は、第2拠点装置6において集約され、かつクラウドサーバ3に送信される。クラウドサーバ3は、受信した各リソース状況を、グローバルデータストア32に保存する。したがって、クラウドサーバ3は、全てのワーカノードのリソース状況を正しく把握することができる。
(Modified example)
In the container system 1, the first worker node 52 may belong to a plurality of different container orchestration clusters, and the second worker node 72 may belong to a plurality of different container orchestration clusters. Also in this case, the first MEC server 5 uses the first resource monitor 51 to accurately measure the resource status of the first worker node 52 and the fourth worker node 53. The measured resource status of each first MEC server 5 is aggregated in the first base device 4 and transmitted to the cloud server 3. Similarly, the measured resource status of each second MEC server 7 is aggregated in the second base device 6 and transmitted to the cloud server 3. The cloud server 3 stores each received resource status in the global data store 32. Therefore, the cloud server 3 can correctly grasp the resource status of all worker nodes.

さらに、コンテナシステム1では、第1拠点装置4の代わりにクラウドサーバ3が、第1ポッド81の配置を決定してもよい。本例では、第1AppAPI46は、図10に示すポッド配置決定要求メッセージを、第1ローカルMANO43ではなく、グローバルMANO31に通知する。グローバルMANO31は、ポッド配置決定要求メッセージを受信すると、受信したポッド配置決定要求メッセージによって示される第1ポッド81および第2ポッド82の全てを、第1拠点および第2拠点のうちいずれに配置するのかを決定する。 Furthermore, in the container system 1, the cloud server 3 may determine the placement of the first pod 81 instead of the first base device 4. In this example, the first App API 46 notifies the global MANO 31 instead of the first local MANO 43 of the pod placement determination request message shown in FIG. Upon receiving the pod placement determination request message, the global MANO 31 determines which of the first base and the second base to place all of the first pod 81 and the second pod 82 indicated by the received pod placement determination request message. Determine.

具体的には、グローバルMANO31は、グローバルデータストア32に保存された、第1拠点のネットワーク状況、各第1MECサーバ5のリソース状況、第2拠点のネットワーク状況、および各第2MECサーバ7のリソース状況と、受信したポッド配置決定要求メッセージに含まれる第1ポッド81に関するネットワークへの要求事項およびリソースに対する要求事項とに基づいて、第1ポッド81を第1ワーカノード52および第2ワーカノード72のうちいずれのワーカノードに設置するのかを決定する。グローバルMANO31は、例えば、第1拠点のネットワーク状況および第1MECサーバ5の第1ワーカノード52のリソース状況が、第1ポッド81に関するネットワークへの要求事項およびリソースに対する要求事項を満たす場合、第1ポッド81を第1MECサーバ5の第1ワーカノード52に配置することを決定する。グローバルMANO31は、あるいは、第2拠点のネットワーク状況および第2MECサーバ7の第2ワーカノード72のリソース状況が、第1ポッド81に関するネットワークへの要求事項およびリソースに対する要求事項を満たす場合、第1ポッド81を第2MECサーバ5の第2ワーカノード72に配置することを決定する。このように、グローバルMANO31は、各拠点のネットワーク状況および各ワーカノードのネットワーク状況を考慮して、第1ポッド81を配置すべき最適なMECサーバ(ワーカノード)を選択することができる。 Specifically, the global MANO 31 stores the network status of the first base, the resource status of each first MEC server 5, the network status of the second base, and the resource status of each second MEC server 7, which are stored in the global data store 32. Based on the network requirements and resource requirements regarding the first pod 81 included in the received pod placement determination request message, the first pod 81 is assigned to either the first worker node 52 or the second worker node 72. Decide whether to install it on a worker node. For example, if the network status of the first base and the resource status of the first worker node 52 of the first MEC server 5 satisfy the network requirements and resource requirements regarding the first pod 81, the global MANO 31 It is decided to allocate it to the first worker node 52 of the first MEC server 5. Alternatively, if the network status of the second base and the resource status of the second worker node 72 of the second MEC server 7 satisfy the network requirements and resource requirements regarding the first pod 81, the global MANO 31 It is decided to allocate it to the second worker node 72 of the second MEC server 5. In this way, the global MANO 31 can select the optimal MEC server (worker node) in which the first pod 81 should be placed, taking into consideration the network situation of each base and the network situation of each worker node.

第1ローカルイメージリポジトリ45は、アプリ構成情報要求メッセージを受信した時点において、受信したアプリ構成情報要求メッセージによって示されるアプリケーションを構成する第1ポッド81、第2ポッド82、および第3ポッド83の各イメージを予め保存していてもよい。この場合、第1ローカルイメージリポジトリ45は、受信したアプリ構成情報要求メッセージをオリジンイメージリポジトリ33に送信することなく、アプリ構成情報要求メッセージによって示されるアプリケーションを構成する第1ポッド81、第2ポッド82、および第3ポッド83のイメージを、自身の記憶スペースから読み出す。第1ローカルイメージリポジトリ45は、読み出した各ポッドイメージに基づいて、図9に示すようなアプリ構成情報応答メッセージを生成し、第1AppAPI46に送信する。本例では、アプリ構成情報要求メッセージをオリジンイメージリポジトリ33に送信したり、オリジンイメージリポジトリ33からアプリ構成情報応答メッセージを受信したりする必要がなくなるため、通信遅延を低減することができる。さらには、クラウドと各拠点との間の通信トラフィックを削減することもできる。 At the time of receiving the application configuration information request message, the first local image repository 45 stores each of the first pod 81, second pod 82, and third pod 83 that constitute the application indicated by the received application configuration information request message. The image may be saved in advance. In this case, the first local image repository 45 does not transmit the received application configuration information request message to the origin image repository 33, but instead sends the first pod 81 and the second pod 82 that configure the application indicated by the application configuration information request message to the origin image repository 33. , and the image of the third pod 83 from its own storage space. The first local image repository 45 generates an application configuration information response message as shown in FIG. 9 based on each read pod image, and sends it to the first App API 46. In this example, there is no need to send an application configuration information request message to the origin image repository 33 or receive an application configuration information response message from the origin image repository 33, so communication delays can be reduced. Furthermore, communication traffic between the cloud and each location can be reduced.

〔実施形態2〕
(コンテナシステム1Aの構成)
図33は、第2実施形態に係るコンテナシステム1Aの構成を示すブロック図である。端末機器2Aは、クライアントApp24を実行している。クライアントApp24は、クライアント・サーバ型アプリケーションにおけるクライアントアプリケーションである。クラウドサーバ3Aは、サーバApp34を実行している。サーバApp34は、クライアント・サーバ型アプリケーションにおけるサーバアプリケーションである。
[Embodiment 2]
(Configuration of container system 1A)
FIG. 33 is a block diagram showing the configuration of a container system 1A according to the second embodiment. The terminal device 2A is running a client App24. The client App 24 is a client application in a client-server type application. The cloud server 3A is running the server App34. The server App34 is a server application in a client-server type application.

本実施形態では、コンテナオーケストレーションクラスタは、第1マスターノード41、第1ワーカノード52、第4ワーカノード53、および不図示の中継ポッドによって構成されている。図33は、サーバApp34に対応するサーバアプリケーションが、第1ワーカノード52上で動作する第1ポッド81と、第2ワーカノード72上で動作する第2ポッド82とによって構成されるコンテナオーケストレーションクラスタとして動作する例を示している。図34に示す各モジュールの識別子は、実施形態1で説明した各識別子と同一である。ただし、実施形態1では端末機器2で起動されたアプリケーションの識別子であるAppID1を、本実施形態ではサーバApp34に対応するサーバアプリケーションの識別子として扱う。 In this embodiment, the container orchestration cluster includes a first master node 41, a first worker node 52, a fourth worker node 53, and a relay pod (not shown). In FIG. 33, the server application corresponding to the server App34 operates as a container orchestration cluster composed of a first pod 81 operating on the first worker node 52 and a second pod 82 operating on the second worker node 72. An example is shown. The identifiers of each module shown in FIG. 34 are the same as those described in the first embodiment. However, in the first embodiment, AppID1, which is the identifier of the application started on the terminal device 2, is treated as the identifier of the server application corresponding to the server App34 in the present embodiment.

図34は、端末機器2がクライアントApp24を起動する際にコンテナシステム1Aによって実行される一連の処理の流れを示すシーケンス図である。ユーザは、端末機器2を操作し、クライアントApp24を起動するための操作を端末機器2に入力する。ステップS51において、端末機器2Aは、この操作を検出すると、クライアントApp24を起動する。 FIG. 34 is a sequence diagram showing the flow of a series of processes executed by the container system 1A when the terminal device 2 starts the client App 24. The user operates the terminal device 2 and inputs an operation to start the client App 24 into the terminal device 2 . In step S51, when the terminal device 2A detects this operation, it starts the client App24.

図35は、アプリ要求メッセージの一例を示す図である。ステップS52において、起動されたクライアントApp24は、サーバApp34にアプリ要求メッセージを送信する。アプリ要求メッセージは、サーバApp34に要求を送信するためのメッセージである。アプリ要求メッセージは、HTTPRequestメッセージでもよい。なお、サーバApp34は、端末機器2Aのアドレスから端末機器2Aに近い拠点が第1拠点であることを知ることができるものとする。 FIG. 35 is a diagram illustrating an example of an application request message. In step S52, the activated client App24 transmits an application request message to the server App34. The application request message is a message for transmitting a request to the server App34. The application request message may be an HTTPRequest message. It is assumed that the server App34 can learn from the address of the terminal device 2A that the base closest to the terminal device 2A is the first base.

アプリ要求メッセージは、Typeフィールド、User IDフィールド、Credentialフィールド、App IDフィールド、およびRequestフィールドを含む。Typeフィールドの値は、アプリ要求メッセージのメッセージタイプを示す“アプリ要求”である。User IDフィールドは、端末機器2のユーザの識別子を示す。図35の例では、User IDフィールドの値はUsrID1である。Credentialフィールドは、ユーザの認証認可情報を含む。図35の例では、Credentialフィールドの値は、CredUsr1である。App IDフィールドの値は、サーバApp34に対応するサーバアプリケーションの識別子であり、具体的にはAppID1である。Requestフィールドは、クライアントApp24の要求内容を示す。ステップS53において、サーバApp34は、受信したアプリ要求メッセージに基づいて、端末機器2のユーザを認証しかつ認可する。 The app request message includes a Type field, a User ID field, a Credential field, an App ID field, and a Request field. The value of the Type field is "application request" indicating the message type of the application request message. The User ID field indicates the identifier of the user of the terminal device 2. In the example of FIG. 35, the value of the User ID field is UsrID1. The Credential field includes user authentication and authorization information. In the example of FIG. 35, the value of the Credential field is CredUsr1. The value of the App ID field is the identifier of the server application corresponding to the server App34, specifically AppID1. The Request field indicates the content of the request from the client App24. In step S53, the server App34 authenticates and authorizes the user of the terminal device 2 based on the received application request message.

ステップS54において、サーバApp34は、ユーザの認証および認可に成功すると、ポッド配置決定要求メッセージを生成し、第1拠点内の第1ローカルMANO43に送信する。ポッド配置決定要求メッセージは、サーバApp34に対応するサーバアプリケーションを構成する第1ポッド81および第2ポッド82の配置決定を要求するためのメッセージである。このポッド配置決定要求メッセージは、図10に示すポッド配置決定要求メッセージと同一である。 In step S54, if the server App34 succeeds in user authentication and authorization, it generates a pod placement determination request message and transmits it to the first local MANO 43 in the first base. The pod placement determination request message is a message for requesting placement determination of the first pod 81 and the second pod 82 that constitute the server application corresponding to the server App34. This pod placement determination request message is the same as the pod placement determination request message shown in FIG.

(第1ポッド81の配置決定)
第1ローカルMANO43は、ポッド配置決定要求メッセージを受信すると、受信したポッド配置決定要求メッセージによって示される第1ポッド81および第2ポッド82の全てを、第1拠点内の各ワーカノードに配置できるか否かを決定する。決定方法の詳細は、第1実施形態のそれと同一であるため、詳細な説明を省略する。ここでは、第1ローカルMANO43は、第1ポッド81を第1拠点内の第1MECサーバ5の第1ワーカノード52に配置することを決定するものとする。また、第1ローカルMANO43はさらに、第2ポッド82については、第1拠点内の他の全ての第1MECサーバ5の第1ワーカノード52または第4ワーカノード53に配置できないと決定するものとする。これにより、ステップS55において、第1ローカルMANO43は、ポッド配置決定要求メッセージを生成し、グローバルMANO31に送信する。ここで送信されるポッド配置決定要求メッセージは、第2ポッド82の配置決定を要求するためのメッセージである。また、その構成および内容は、図11に示すポッド配置決定要求メッセージの構成および内容と同一である。
(Determination of placement of first pod 81)
Upon receiving the pod placement determination request message, the first local MANO 43 determines whether all of the first pod 81 and second pod 82 indicated by the received pod placement determination request message can be placed in each worker node within the first base. Decide whether The details of the determination method are the same as those of the first embodiment, so detailed explanation will be omitted. Here, it is assumed that the first local MANO 43 decides to place the first pod 81 in the first worker node 52 of the first MEC server 5 in the first base. Further, the first local MANO 43 further determines that the second pod 82 cannot be placed on the first worker node 52 or the fourth worker node 53 of all the other first MEC servers 5 in the first base. As a result, in step S55, the first local MANO 43 generates a pod placement determination request message and sends it to the global MANO 31. The pod placement determination request message transmitted here is a message for requesting placement determination of the second pod 82. Further, its structure and contents are the same as the structure and contents of the pod placement determination request message shown in FIG.

(第2ポッド82の配置決定)
グローバルMANO31は、ポッド配置決定要求メッセージを受信すると、第2ポッド82を第2拠点の第2MECサーバ7に配置するか否かを決定する。決定方法の詳細は、第1実施形態のそれと同一であるため、詳細な説明は省略する。ここでは、グローバルMANO31は、第2ポッド82を第2MECサーバ7の第2ワーカノード72に配置することを決定するものとする。これにより、ステップS56において、グローバルMANO31は、第1ポッド81の配置決定を応答するためのポッド配置決定応答メッセージを生成し、第1ローカルMANO43に送信する。ここで送信されるポッド配置決定応答メッセージの構成および内容は、図12に示すポッド配置決定応答メッセージの構成および内容と同一である。
(Determination of placement of second pod 82)
Upon receiving the pod placement determination request message, the global MANO 31 determines whether or not to place the second pod 82 in the second MEC server 7 at the second base. The details of the determination method are the same as those in the first embodiment, so a detailed explanation will be omitted. Here, it is assumed that the global MANO 31 decides to place the second pod 82 on the second worker node 72 of the second MEC server 7 . Thereby, in step S56, the global MANO 31 generates a pod placement decision response message for responding to the placement decision of the first pod 81, and transmits it to the first local MANO 43. The configuration and contents of the pod placement determination response message transmitted here are the same as the configuration and contents of the pod placement determination response message shown in FIG. 12.

ステップS57において、第1ローカルMANO43は、第1ポッド81および第2ポッド82の配置決定を応答するためのポッド配置決定応答メッセージを生成し、サーバApp34に送信する。ここで送信されるポッド配置決定応答メッセージの構成および内容は、図13に示すポッド配置決定応答メッセージの構成および内容と同一である。 In step S57, the first local MANO 43 generates a pod placement determination response message for responding to the placement determination of the first pod 81 and the second pod 82, and transmits it to the server App34. The configuration and contents of the pod placement determination response message transmitted here are the same as the configuration and contents of the pod placement determination response message shown in FIG. 13.

図36は、ポッド配置要求メッセージの一例を示す図である。ステップS58において、サーバApp34は、ポッド配置決定応答メッセージを受信すると、図36に示すようなポッド配置要求メッセージを生成し、第1マスターノード41に送信する。ポッド配置要求メッセージは、第1ポッド81および第2ポッド82の配置を要求するためのメッセージである。図36の例では、ポッド配置要求メッセージは、Typeフィールド、App IDフィールド、およびNo of Podsフィールドを含む。Typeフィールドの値は、ポッド配置要求メッセージのメッセージタイプを示す“ポッド配置要求”である。App IDフィールドの値は、サーバApp34に対応するサーバアプリケーションの識別子であり、具体的にはAppID1である。No of Podsフィールドは、ポッドの数を示す。図36の例では、ポッド配置要求メッセージによって3つの第1ポッド81および第2ポッド82の配置が要求されるので、No of Podsフィールドの値は2である。 FIG. 36 is a diagram illustrating an example of a pod placement request message. In step S58, upon receiving the pod placement determination response message, the server App generates a pod placement request message as shown in FIG. 36 and transmits it to the first master node 41. The pod placement request message is a message for requesting placement of the first pod 81 and the second pod 82. In the example of FIG. 36, the pod placement request message includes a Type field, an App ID field, and a No of Pods field. The value of the Type field is “pod placement request” indicating the message type of the pod placement request message. The value of the App ID field is the identifier of the server application corresponding to the server App34, specifically AppID1. The No of Pods field indicates the number of pods. In the example of FIG. 36, the value of the No of Pods field is 2 because the pod placement request message requests placement of the three first pods 81 and the second pods 82.

ポッド配置要求メッセージは、ポッドごとに、Pod IDフィールド、Base IDフィールド、Node IDフィールド、およびRepository IDフィールドという4つ組フィールドをさらに含む。図36の例では、2つの第1ポッド81および第2ポッド82の配置が要求されるので、ポッド配置要求メッセージは3つの4つ組フィールドをさらに含む。図36の例では、1つ目の4つ組フィールドにおけるPod IDフィールドの値は、第1ポッド81の識別子すなわちPodID1である。Base IDフィールドの値は、第1ポッド81が配置される第1拠点のBaseID1である。Node IDフィールドの値は、第1ポッド81が配置される第1ワーカノード52の識別子すなわちWnID1である。Repository IDフィールドの値は、LirID1である。2つ目の4つ組フィールドにおけるPod IDフィールドの値は、第2ポッド82の識別子すなわちPodID2である。Base IDフィールドの値は、第2ポッド82が配置される第2拠点の識別子すなわちBaseID2である。Node IDフィールドの値は、第2ポッド82が配置される第2ワーカノード72の識別子すなわちWnID2である。Repository IDフィールドの値は、LirID2である。 The pod placement request message further includes a quadruple field for each pod: a Pod ID field, a Base ID field, a Node ID field, and a Repository ID field. In the example of FIG. 36, since placement of two first pods 81 and second pods 82 is requested, the pod placement request message further includes three quadruple fields. In the example of FIG. 36, the value of the Pod ID field in the first quadruple field is the identifier of the first pod 81, ie, PodID1. The value of the Base ID field is Base ID1 of the first base where the first pod 81 is placed. The value of the Node ID field is the identifier of the first worker node 52 where the first pod 81 is placed, ie, WnID1. The value of the Repository ID field is LirID1. The value of the Pod ID field in the second quadruple field is the identifier of the second pod 82, ie, PodID2. The value of the Base ID field is the identifier of the second base where the second pod 82 is located, ie, BaseID2. The value of the Node ID field is the identifier of the second worker node 72 where the second pod 82 is placed, ie, WnID2. The value of the Repository ID field is LirID2.

(第1ポッド81の配置)
ステップS59において、第1マスターノード41は、ポッド配置要求メッセージを受信すると、第1ポッド81の配置を要求するためのポッド配置要求メッセージを生成し、第1ワーカノード52に送信する。ここで送信されるポッド配置要求メッセージの構成および内容は、図15に示すポッド配置要求メッセージの構成および内容と同一である。第1ワーカノード52は、ポッド配置要求メッセージを受信すると、受信したポッド配置要求メッセージに基づいて、第1ワーカノード52に第1ポッド81を配置する。ステップS60において、第1ワーカノード52は、第1ポッド81の配置を応答するためのポッド設置応答メッセージを生成し、第1マスターノード41に送信する。ここで送信されるポッド設置応答メッセージの構成および内容は、図16に示すポッド設置応答メッセージの構成および内容と同一である。
(Arrangement of first pod 81)
In step S59, upon receiving the pod placement request message, the first master node 41 generates a pod placement request message for requesting placement of the first pod 81, and transmits it to the first worker node 52. The structure and contents of the pod placement request message transmitted here are the same as the structure and contents of the pod placement request message shown in FIG. 15. Upon receiving the pod placement request message, the first worker node 52 places the first pod 81 on the first worker node 52 based on the received pod placement request message. In step S60, the first worker node 52 generates a pod installation response message for responding to the placement of the first pod 81, and transmits it to the first master node 41. The structure and contents of the pod installation response message transmitted here are the same as the structure and contents of the pod installation response message shown in FIG.

(第2ポッド82の配置)
ステップS61において、第1マスターノード41は、第2ポッド82の配置を要求するためのポッド配置要求メッセージを生成し、第2ワーカノード72に送信する。ここで送信されるポッド配置要求メッセージの構成および内容は、図16に示すポッド配置要求メッセージの構成および内容と同一である。第2ワーカノード72は、ポッド配置要求メッセージを受信すると、受信したポッド配置要求メッセージに基づいて、第2ワーカノード72に第2ポッド82を配置する。ステップS62において、第4ワーカノード53は、第2ポッド82の配置を応答するためのポッド設置応答メッセージを生成し、第1マスターノード41に送信する。ここで送信されるポッド設置応答メッセージの構成および内容は、図17に示すポッド設置応答メッセージの構成および内容と同一である。
(Arrangement of second pod 82)
In step S61, the first master node 41 generates a pod placement request message for requesting placement of the second pod 82, and transmits it to the second worker node 72. The structure and contents of the pod placement request message transmitted here are the same as the structure and contents of the pod placement request message shown in FIG. Upon receiving the pod placement request message, the second worker node 72 places the second pod 82 on the second worker node 72 based on the received pod placement request message. In step S62, the fourth worker node 53 generates a pod installation response message for responding to the placement of the second pod 82, and transmits it to the first master node 41. The structure and contents of the pod installation response message transmitted here are the same as the structure and contents of the pod installation response message shown in FIG. 17.

図37は、ポッド配置応答メッセージの一例を示す図である。ステップS63において、第1マスターノード41は、図37に示すようなポッド配置応答メッセージを生成し、サーバApp34に送信する。図37に示すポッド配置応答メッセージの構成は、図16および図18にそれぞれ示す各ポッド配置応答メッセージを統合した構成である。すなわち、図21に示すポッド配置応答メッセージは、第1ポッド81および第2ポッド82のそれぞれの配置完了に関する情報を含んでいる。 FIG. 37 is a diagram illustrating an example of a pod placement response message. In step S63, the first master node 41 generates a pod placement response message as shown in FIG. 37 and sends it to the server App34. The configuration of the pod placement response message shown in FIG. 37 is a configuration that integrates the pod placement response messages shown in FIGS. 16 and 18, respectively. That is, the pod placement response message shown in FIG. 21 includes information regarding completion of placement of each of the first pod 81 and the second pod 82.

図38は、アプリ応答メッセージの一例を示す図である。ステップS64において、サーバApp34は、図38に示すようなアプリ応答メッセージを生成し、クライアントApp24に送信する。アプリ応答メッセージは、サーバApp34に対応するサーバアプリケーションの起動を応答するためのメッセージである。図38の例では、アプリ応答メッセージは、Typeフィールド、Statusフィールド、Redirectフィールド、およびResponseフィールドを含む。Typeフィールドの値は、アプリ応答メッセージのメッセージタイプを示す“アプリ応答”である。Statusフィールドは、処理の終了状態を示す。この例では、サーバApp34に対応するサーバアプリケーションの起動の正常終了を示す“OK”である。Redirectフィールドは、これ以降のアプリ要求メッセージの送り先モジュールの識別子を示す。図38の例では、中継ポッドの識別子すなわちRelayPodID1である。Responseフィールドは、応答内容を示す。 FIG. 38 is a diagram illustrating an example of an application response message. In step S64, the server App34 generates an application response message as shown in FIG. 38 and sends it to the client App24. The application response message is a message for responding to the activation of the server application corresponding to the server App34. In the example of FIG. 38, the application response message includes a Type field, a Status field, a Redirect field, and a Response field. The value of the Type field is "application response" indicating the message type of the application response message. The Status field indicates the completion status of the process. In this example, "OK" indicates normal termination of startup of the server application corresponding to the server App34. The Redirect field indicates the identifier of the destination module for subsequent application request messages. In the example of FIG. 38, this is the relay pod identifier, ie, RelayPodID1. The Response field indicates the response content.

以上のようにして起動された、コンテナオーケストレーションクラスタとしてのサーバアプリケーションは、第1ポッド81および第2ポッド82が連携して動作することによって、サーバApp34としての実行を継続する。これ以降、クライアントApp24の通信相手は、クラウドサーバ上のサーバApp34ではなく、第1拠点および2に構築された、コンテナオーケストレーションクラスタとしてのサーバアプリケーションである。したがって、ステップS65において、クライアントApp24は、新たなアプリ要求メッセージを、クラウドサーバ上のサーバApp34ではなく、第1ポッド81が配置される第1ワーカノード52に送信する。第1ワーカノード52がアプリ要求メッセージを受信すると、第1ポッド81は第2ポッド82と連携して動作することによって、アプリ要求メッセージによって要求される処理を実行する。ステップ66において、第1ワーカノード52は、コンテナオーケストレーションクラスタとしてのサーバApp34による処理を応答するためのアプリ応答メッセージを生成し、クライアントApp24に送信する。 The server application as a container orchestration cluster started as described above continues to be executed as the server App 34 by the first pod 81 and the second pod 82 working together. From now on, the communication partner of the client App24 is not the server App34 on the cloud server, but the server application as a container orchestration cluster built at the first base and the second site. Therefore, in step S65, the client App24 sends a new application request message not to the server App34 on the cloud server but to the first worker node 52 where the first pod 81 is placed. When the first worker node 52 receives the application request message, the first pod 81 operates in cooperation with the second pod 82 to execute the process requested by the application request message. In step 66, the first worker node 52 generates an application response message for responding to the processing by the server App34 as a container orchestration cluster, and sends it to the client App24.

本実施形態では、コンテナオーケストレーションクラスタとしてのサーバアプリケーションが起動したことによって、第1MECサーバ5、第2MECサーバ7、およびネットワークにおいて利用可能な各リソースが、サーバApp34に対応するサーバアプリケーションによって消費されるリソース分だけ減少する。コンテナシステム1Aは、サーバApp34に対応するサーバアプリケーションの起動後においても、図2に示すように、第1拠点のネットワークの状況、各第1MECサーバ5のリソース状況、第2拠点のネットワーク状況、および各第2MECサーバ7のリソース状況を定期的に測定する。これにより、第1ローカルデータストア44、第2ローカルデータストア64、およびグローバルデータストア32に保存されるネットワーク状況およびリソース状況を、定期的に更新する。したがって、第1ローカルデータストア44、第2ローカルデータストア64、およびグローバルデータストア32にそれぞれ格納される情報を最新の状態に維持することができる。 In this embodiment, by starting the server application as a container orchestration cluster, each resource available in the first MEC server 5, the second MEC server 7, and the network is consumed by the server application corresponding to the server App34. Reduced by the amount of resources. Even after starting the server application corresponding to the server App34, the container system 1A keeps track of the network status of the first base, the resource status of each first MEC server 5, the network status of the second base, and The resource status of each second MEC server 7 is periodically measured. Thereby, the network status and resource status stored in the first local data store 44, the second local data store 64, and the global data store 32 are updated regularly. Therefore, the information stored in the first local data store 44, the second local data store 64, and the global data store 32 can be kept up to date.

(サーバアプリケーションの停止)
図39は、サーバアプリケーションを停止する際にコンテナシステム1Aによって実行される一連の処理の流れを示すシーケンス図である。ユーザは、端末機器2を操作し、サーバApp34として動作するサーバアプリケーションを終了させるための操作を、端末機器2Aに入力する。ステップS71において、クライアントApp24は、端末機器2Aがこの操作を検出すると、サーバアプリケーションの終了を要求のためのアプリ終了要求メッセージを生成し、サーバApp34に送信する。ここで送信されるアプリ終了要求メッセージの構成および内容は、図24に示すアプリ終了要求メッセージの構成および内容と同一である。
(Stopping the server application)
FIG. 39 is a sequence diagram showing the flow of a series of processes executed by the container system 1A when stopping the server application. The user operates the terminal device 2 and inputs into the terminal device 2A an operation for terminating the server application operating as the server App34. In step S71, when the terminal device 2A detects this operation, the client App24 generates an application termination request message for requesting termination of the server application, and transmits it to the server App34. The structure and contents of the application termination request message transmitted here are the same as the structure and contents of the application termination request message shown in FIG. 24.

サーバApp34は、クライアントApp24から送信されたアプリ終了要求メッセージを受信する。ステップS72において、サーバApp34は、受信したアプリ終了要求メッセージに基づいて、端末機器2のユーザの認証および認可を実行する。ステップS73において、サーバApp34は、ユーザの認証および認可に成功した場合、受信したアプリ停止要求メッセージを第1マスターノード41に送信する。 The server App34 receives the application termination request message sent from the client App24. In step S72, the server App34 authenticates and authorizes the user of the terminal device 2 based on the received application termination request message. In step S73, if the server App34 succeeds in user authentication and authorization, it transmits the received application stop request message to the first master node 41.

第1マスターノード41は、サーバApp34から送信されたアプリ停止要求メッセージを受信する。ステップS74において、第1マスターノード41は、第1ポッド81の停止を要求するためのポッド停止要求メッセージを生成し、第1ワーカノード52に送信する。ここで送信されるポッド停止要求メッセージの構成および内容は、図24に示すポッド停止要求メッセージの構成および内容と同一である。 The first master node 41 receives the application stop request message sent from the server App34. In step S74, the first master node 41 generates a pod stop request message for requesting to stop the first pod 81, and transmits it to the first worker node 52. The structure and contents of the pod stop request message transmitted here are the same as the structure and contents of the pod stop request message shown in FIG.

第1ワーカノード52は、第1マスターノード41から送信されたポッド停止要求メッセージを受信する。第1ワーカノード52は、ポッド停止要求メッセージを受信すると、第1ポッド81を停止する。ステップS75において、第1ワーカノード52は、第1ポッド81の停止を応答するためのポッド停止応答メッセージを生成し、第1マスターノード41に送信する。ここで送信されるポッド停止応答メッセージの構成および内容は、図26に示すポッド停止応答メッセージの構成および内容と同一である。 The first worker node 52 receives the pod stop request message sent from the first master node 41. The first worker node 52 stops the first pod 81 upon receiving the pod stop request message. In step S75, the first worker node 52 generates a pod stop response message for responding to the stop of the first pod 81, and sends it to the first master node 41. The structure and contents of the pod stop response message transmitted here are the same as the structure and contents of the pod stop response message shown in FIG. 26.

第1マスターノード41は、第1ワーカノード52から送信されたポッド停止応答メッセージを受信する。ステップS76において、第1マスターノード41は、第2ポッド82の停止を要求するためのポッド停止要求メッセージを生成し、第2ワーカノード72に送信する。ここで送信されるポッド停止要求メッセージの構成および内容は、図27に示すポッド停止要求メッセージの構成および内容と同一である。第2ワーカノード72は、第1マスターノード41から送信されたポッド停止要求メッセージを受信する。これにより、第4ワーカノード53は第2ポッド82を停止する。第1ポッド81および第2ポッド82の双方が停止された結果、サーバApp34に対応するサーバアプリケーションは終了する。 The first master node 41 receives the pod stop response message sent from the first worker node 52. In step S76, the first master node 41 generates a pod stop request message for requesting to stop the second pod 82, and sends it to the second worker node 72. The structure and contents of the pod stop request message transmitted here are the same as the structure and contents of the pod stop request message shown in FIG. 27. The second worker node 72 receives the pod stop request message sent from the first master node 41. As a result, the fourth worker node 53 stops the second pod 82. As a result of both the first pod 81 and the second pod 82 being stopped, the server application corresponding to the server App34 is terminated.

ステップS77において、第2ワーカノード72は、第2ポッド82の停止を応答するためのポッド停止応答メッセージを生成し、第1マスターノード41に送信する。ここで送信されるポッド停止応答メッセージの構成および内容は、図27に示すポッド停止応答メッセージの構成および内容と同一である。 In step S77, the second worker node 72 generates a pod stop response message for responding to the stop of the second pod 82, and sends it to the first master node 41. The structure and contents of the pod stop response message transmitted here are the same as the structure and contents of the pod stop response message shown in FIG. 27.

ステップS78において、第1マスターノード41は、サーバアプリケーションの停止を応答するためのアプリ停止応答メッセージを生成し、サーバApp34に送信する。ここで送信されるアプリ停止応答メッセージの構成および内容は、図27に示すアプリ停止応答メッセージと同一である。ステップS79において、サーバApp34は、受信したアプリ停止応答メッセージを生成し、クライアントApp24に送信する。クライアントApp24は、アプリ停止応答メッセージを受信すると終了する。 In step S78, the first master node 41 generates an application stop response message for responding to stop the server application, and sends it to the server App34. The configuration and contents of the application stop response message sent here are the same as the application stop response message shown in FIG. 27. In step S79, the server App34 generates the received application stop response message and sends it to the client App24. The client App24 terminates upon receiving the application stop response message.

ステップS80において、サーバApp34は、ネットワーク状況の測定を要求する測定要求メッセージを送信する。ここで送信される測定要求メッセージの構成および内容は、図28に示す測定要求メッセージの構成および内容と同一である。 In step S80, the server App34 transmits a measurement request message requesting measurement of the network status. The structure and contents of the measurement request message transmitted here are the same as the structure and contents of the measurement request message shown in FIG. 28.

ステップS81において、サーバApp34は、ネットワーク状況の測定を要求する測定要求メッセージを生成し、第1ネットワークモニタ42に送信する。ここで送信される測定要求メッセージの構成および内容は、図28に示す測定要求メッセージの構成および内容と同一である。ステップS82において、サーバApp34は、リソース状況の測定を要求する測定要求メッセージを生成し、第1リソースモニタ51に送信する。ここで送信される測定要求メッセージの構成および内容は、図29に示す測定要求メッセージの構成および内容と同一である。ステップS83において、サーバApp34は、ネットワーク状況の測定を要求する測定要求メッセージを生成し、第2ネットワークモニタ62に送信する。ここで送信される測定要求メッセージの構成および内容は、図30に示す測定要求メッセージの構成および内容と同一である。ステップS84において、サーバApp34は、リソース状況の測定を要求する測定要求メッセージを生成し、第2リソースモニタ71に送信する。ここで送信される測定要求メッセージの構成および内容は、図31に示す測定要求メッセージの構成および内容と同一である。 In step S<b>81 , the server App 34 generates a measurement request message requesting measurement of the network status, and transmits it to the first network monitor 42 . The structure and contents of the measurement request message transmitted here are the same as the structure and contents of the measurement request message shown in FIG. 28. In step S<b>82 , the server App 34 generates a measurement request message requesting measurement of the resource status, and transmits it to the first resource monitor 51 . The structure and contents of the measurement request message transmitted here are the same as the structure and contents of the measurement request message shown in FIG. 29. In step S83, the server App34 generates a measurement request message requesting measurement of the network status, and transmits it to the second network monitor 62. The structure and contents of the measurement request message transmitted here are the same as the structure and contents of the measurement request message shown in FIG. 30. In step S84, the server App34 generates a measurement request message requesting measurement of the resource status, and transmits it to the second resource monitor 71. The structure and contents of the measurement request message transmitted here are the same as the structure and contents of the measurement request message shown in FIG. 31.

ステップS79~S84に基づいて、第1ネットワークモニタ42、第1リソースモニタ51、第2ネットワークモニタ62、および第2リソースモニタ71は、図3に示す一連の処理手順を実行する。これにより、アプリケーション終了後における最新のネットワーク状況およびリソース状況が、第1ローカルデータストア44、第2ローカルデータストア64、およびグローバルデータストア32に反映される。 Based on steps S79 to S84, the first network monitor 42, first resource monitor 51, second network monitor 62, and second resource monitor 71 execute a series of processing procedures shown in FIG. 3. As a result, the latest network status and resource status after the application ends are reflected in the first local data store 44, second local data store 64, and global data store 32.

(本実施形態による主要な効果)
実施形態1のコンテナシステム1によって奏する各効果は、本実施形態においても同様に得られる。さらに、本実施形態では、クライアント・サーバ型アプリケーションを実行する際、サーバアプリケーションを、クライアントアプリケーションの近傍にある第1MECサーバ5および第2MECサーバ7に効率的に配置することができる。
(Main effects of this embodiment)
Each effect produced by the container system 1 of Embodiment 1 can be similarly obtained in this embodiment. Furthermore, in this embodiment, when executing a client-server type application, the server application can be efficiently placed in the first MEC server 5 and the second MEC server 7 near the client application.

〔まとめ〕
本発明の態様1に係るポッド配置決定装置は、第1ワーカノードを備えている第1エッジサーバが配置される第1拠点から、第2ワーカノードを備えている第2エッジサーバが配置される第2拠点への通信時のネットワーク状況を測定する測定部と、前記第1エッジサーバによって測定された前記第1ワーカノードのリソース状況を受信する第1受信部と、測定されたネットワーク状況および受信されたリソース状況を保存する保存部と、コンテナオーケストレーションクラスタとしてのアプリケーションを構成する第1ポッドが要求するネットワークへの要求事項および前記第1ポッドが要求するリソースへの要求事項を受信する第2受信部と、保存された前記ネットワーク状況およびリソース状況と、受信された前記ネットワークへの要求事項および前記リソースへの要求事項とに基づいて、前記第1ポッドを前記第1ワーカノードに配置するか否かを決定する決定部とを備えている構成である。
〔summary〕
A pod placement determining device according to aspect 1 of the present invention is arranged to move from a first base where a first edge server including a first worker node is located to a second base where a second edge server including a second worker node is located. a measuring unit that measures a network status during communication to a base; a first receiving unit that receives a resource status of the first worker node measured by the first edge server; and a measured network status and received resources. a storage unit that stores a status; and a second receiving unit that receives network requirements requested by a first pod and resource requests requested by the first pod that constitute an application as a container orchestration cluster. , determining whether to place the first pod on the first worker node based on the saved network status and resource status and the received network requirements and resource requirements; The configuration includes a determining section to

本発明の態様2に係るポッド配置決定装置は、上記の態様1において、前記決定部は、前記ネットワーク状況が前記ネットワークへの要求事項を満たしており、かつ、前記リソース状況が前記リソースへの要求事項を満たしている場合、前記第1ポッドを前記第1ワーカノードに配置することを決定する構成としてもよい。 In the pod placement determining device according to aspect 2 of the present invention, in the above aspect 1, the determining unit determines that the network status satisfies the requirements for the network, and that the resource status satisfies the requirements for the resource. If the conditions are met, the configuration may be such that it is determined to place the first pod on the first worker node.

本発明の態様3に係るポッド配置決定装置は、上記の態様1または2において、前記第1ワーカノードは、異なる複数のコンテナオーケストレーションクラスタに属しており、前記第1エッジサーバは、前記第1ワーカノードのリソース状況を測定するリソース状況測定部を備えている構成としてもよい。 In the pod placement determining device according to aspect 3 of the present invention, in the above aspect 1 or 2, the first worker node belongs to a plurality of different container orchestration clusters, and the first edge server The configuration may include a resource status measurement unit that measures the resource status of the resource status.

本発明の態様4に係るポッド配置決定装置は、上記の態様1~3のいずれかにおいて、前記第1ポッドのイメージを保存するイメージ保存部をさらに備えている構成としてもよい。 A pod placement determining device according to a fourth aspect of the present invention may be configured to further include an image storage unit that stores an image of the first pod in any of the above-mentioned aspects 1 to 3.

本発明の態様5に係るポッド配置決定方法は、第1ワーカノードを備えている第1エッジサーバが配置される第1拠点から、第2ワーカノードを備えている第2エッジサーバが配置される第2拠点への通信時のネットワーク状況を測定する測定ステップと、前記第1エッジサーバによって測定された前記第1ワーカノードのリソース状況を受信する第1受信ステップと、測定されたネットワーク状況および受信されたリソース状況を保存する保存部と、コンテナオーケストレーションクラスタとしてのアプリケーションを構成する第1ポッドが要求するネットワークへの要求事項および前記第1ポッドが要求するリソースへの要求事項を受信する第2受信ステップと、保存された前記ネットワーク状況およびリソース状況と、受信された前記ネットワークへの要求事項および前記リソースへの要求事項とに基づいて、前記第1ポッドを前記第1ワーカノードに配置するか否かを決定する決定ステップとを有する方法である。 A pod placement determining method according to aspect 5 of the present invention is arranged to move from a first base where a first edge server having a first worker node is located to a second base where a second edge server having a second worker node is located. a measuring step of measuring a network condition at the time of communication to a base; a first receiving step of receiving a resource condition of the first worker node measured by the first edge server; and a measured network condition and the received resource. a storage unit that stores a status; a second receiving step that receives network requirements requested by a first pod constituting an application as a container orchestration cluster and resource requirements requested by the first pod; , determining whether to place the first pod on the first worker node based on the saved network status and resource status and the received network requirements and resource requirements; and a step of determining.

本発明の態様6に係るエッジサーバは、異なる複数のコンテナオーケストレーションクラスタに属するワーカノードと、前記ワーカノードのリソース状況を測定する測定部と、測定された前記リソース状況をポッド配置決定装置に送信する送信部とを備えている構成である。 The edge server according to aspect 6 of the present invention includes worker nodes belonging to a plurality of different container orchestration clusters, a measuring unit that measures the resource status of the worker node, and a transmitter that transmits the measured resource status to a pod placement determination device. The configuration includes a section.

本発明の態様7に係るサーバは、ポッド配置決定装置と、前記第2拠点に配置される第2ポッド配置決定装置とそれぞれ通信可能に接続されるサーバであって、前記ポッド配置決定装置から送信された前記ネットワーク状況および前記リソース状況と、前記第2ポッド配置決定装置から送信された、前記第2拠点から前記第1拠点への通信時の第2ネットワーク状況および前記第2ワーカノードの第2リソース状況とを受信する第1サーバ受信部と、受信された前記ネットワーク状況、前記リソース状況、前記第2ネットワーク状況、および前記第2リソース状況を保存するサーバ情報保存部と、前記アプリケーションを構成する第2ポッドが要求するネットワークへの第2要求事項および前記第2ポッドが要求するリソースへの第2リソース状況を受信する第2サーバ受信部と、保存された前記第2ネットワーク状況および第2リソース状況と、受信された前記ネットワークへの第2要求事項および前記リソースへの第2要求事項とに基づいて、前記第2ポッドを前記第2ワーカノードに配置するか否かを決定する第2決定部とを備えている構成である。 A server according to aspect 7 of the present invention is a server that is communicably connected to a pod placement determining device and a second pod placement determining device located at the second base, and is configured to transmit information from the pod placement determining device. the second network status and the resource status of the second worker node at the time of communication from the second base to the first base, which were transmitted from the second pod placement determining device; a first server receiving unit that receives the network status, the resource status, the second network status, and the second resource status that have been received; a server information storage unit that stores the received network status, the resource status, the second network status, and the second resource status; a second server receiving unit that receives a second request for a network requested by two pods and a second resource status for a resource requested by the second pod; and the second network status and second resource status are stored. and a second determining unit that determines whether to place the second pod on the second worker node based on the received second request for the network and second request for the resource. The configuration is equipped with the following.

本発明の態様8に係る端末機器は、端末機器であって、コンテナオーケストレーションクラスタとしてのアプリケーションを構成する第1ポッドが、前記端末機器が接続されるネットワーク内のエッジサーバに配置されており、前記アプリケーションを起動するための、前記コンテナオーケストレーションクラスタに属していない起動モジュールをさらに備えている構成である。 A terminal device according to aspect 8 of the present invention is a terminal device in which a first pod constituting an application as a container orchestration cluster is placed in an edge server in a network to which the terminal device is connected, The configuration further includes a startup module that does not belong to the container orchestration cluster and is for starting the application.

本発明の態様9に係るコンテナシステムは、上記の態様1に係るポッド配置決定装置と、上記の態様7に係るサーバとを少なくとも備えている構成である。 A container system according to aspect 9 of the present invention is configured to include at least the pod placement determining device according to aspect 1 described above and the server according to aspect 7 described above.

本発明の態様10に係るコンテナシステムは、第1拠点に配置される第1エッジサーバおよび第1拠点装置と、第2拠点に配置される第2エッジサーバおよび第2拠点装置と、サーバとを備えているコンテナシステムであって、前記第1エッジサーバは、複数の異なるコンテナオーケストレーションクラスタに属する第1ワーカノードと、前記第1ワーカノードの第1リソース状況を測定する第1リソース状況測定部と、測定された前記第1リソース状況を、前記第1拠点装置に送信する第1リソース状況送信部と、を備えており、前記第1拠点装置は、前記第1リソース状況を受信する第1受信部と、受信された前記第1リソース状況を、前記サーバに送信する第1送信部と、前記第2エッジサーバは、複数の異なるコンテナオーケストレーションクラスタに属する第2ワーカノードと、前記第2ワーカノードの第2リソース状況を測定する第2リソース状況測定部と、測定された前記第2リソース状況を、前記第2拠点装置に送信する第2リソース状況送信部と、を備えており、前記第2拠点装置は、前記第2リソース状況を受信する第2受信部と、受信された前記第2リソース状況を、前記サーバに送信する第2送信部とを備えており、前記サーバは、前記第1リソース状況および前記第2リソース状況を受信する第1サーバ受信部と、受信された前記第1リソース状況および前記第2リソース状況を保存するサーバ情報保存部とを備えている構成である。 A container system according to aspect 10 of the present invention includes a first edge server and a first base device located at a first base, a second edge server and a second base device located at a second base, and a server. A container system comprising: a first worker node belonging to a plurality of different container orchestration clusters; a first resource status measurement unit that measures a first resource status of the first worker node; a first resource status transmitting unit that transmits the measured first resource status to the first base device, and the first base unit includes a first receiving unit that receives the first resource status. a first transmitting unit that transmits the received first resource status to the server; and the second edge server is configured to transmit the received first resource status to the server, and the second edge server is configured to transmit the received first resource status to the second worker node, and a second resource status measuring unit that measures the second resource status; and a second resource status transmitting unit that transmits the measured second resource status to the second base device; comprises a second receiving unit that receives the second resource status, and a second transmitting unit that transmits the received second resource status to the server, and the server is configured to receive the first resource status. and a first server reception unit that receives the second resource status, and a server information storage unit that stores the received first resource status and second resource status.

本発明の態様11に係るコンテナシステムは、上記の態様10において、前記第1拠点装置は、前記第1拠点から前記第2拠点への通信時の第1ネットワーク状況を測定する第1ネットワーク状況測定部をさらに備えており、前記第1送信部は、測定された前記第1ネットワーク状況および受信された前記第1リソース状況を、前記サーバに送信し、前記第2拠点装置は、前記第2拠点から前記第1拠点への通信時の第2ネットワーク状況を測定する第2ネットワーク状況測定部をさらに備えており、前記第2送信部は、測定された前記第2ネットワーク状況および受信された前記第2リソース状況を、前記サーバに送信し、前記第1サーバ受信部は、前記第1ネットワーク状況、前記第1リソース状況、前記第2ネットワーク状況、および前記第2リソース状況を受信し、前記サーバ情報保存部は、受信された前記第1ネットワーク状況、前記第1リソース状況、前記第2ネットワーク状況、および前記第2リソース状況を保存し、前記サーバは、コンテナオーケストレーションクラスタとしてのアプリケーションを構成する第1ポッドが要求するネットワークへの要求事項および前記第1ポッドが要求するリソースへの要求事項を受信する第2サーバ受信部と、保存された前記第1ネットワーク状況、前記第1リソース状況、前記第2ネットワーク状況、および前記第2リソース状況と、受信された前記ネットワークへの要求事項および前記リソースへの要求事項とに基づいて、前記第1ワーカノードおよび前記第2ワーカノードのうちいずれのワーカノードに前記第1ポッドを配置するかを決定する構成としてもよい。 In the container system according to aspect 11 of the present invention, in the above aspect 10, the first base device performs a first network status measurement that measures a first network status during communication from the first base to the second base. The first transmitting unit transmits the measured first network status and the received first resource status to the server, and the second base device transmits the measured first network status and the received first resource status to the server. further comprising a second network situation measuring unit that measures a second network situation during communication from the station to the first base, and the second transmitting unit measures the second network situation measured and the received second network situation. 2 resource status to the server, the first server receiving unit receives the first network status, the first resource status, the second network status, and the second resource status, and transmits the server information. The storage unit stores the received first network status, first resource status, second network status, and second resource status, and the server stores the first network status, the first resource status, the second network status, and the second resource status, and the server stores the first network status, the first resource status, the second network status, and the second resource status, and the server stores the first network status, the first resource status, the second network status, and the second resource status. a second server receiving unit that receives network requirements requested by one pod and resource requests requested by the first pod; Based on the second network status, the second resource status, and the received requirements for the network and the received requirements for the resource, which worker node among the first worker node and the second worker node is assigned the first A configuration may also be adopted in which it is determined whether to place one pod.

本発明の態様12に係るプログラムは、上記の態様1に係るポッド配置決定装置としてコンピュータを機能させるためのプログラムであって、前記測定部、前記保存部、前記第1受信部、前記第2受信部、および前記決定部としてコンピュータを機能させる構成である。 A program according to an aspect 12 of the present invention is a program for causing a computer to function as the pod placement determining device according to the above aspect 1, and includes the measuring section, the storage section, the first receiving section, and the second receiving section. The computer is configured to function as the determining section and the determining section.

〔実現例〕
第1拠点装置4の各機能ブロック(特に、第1ローカルMANO43および第1ローカルデータストア44)は、集積回路(ICチップ)等に形成された論理回路(ハードウェア)によって実現してもよいし、ソフトウェアによって実現してもよい。
[Example of implementation]
Each functional block of the first base device 4 (in particular, the first local MANO 43 and the first local data store 44) may be realized by a logic circuit (hardware) formed in an integrated circuit (IC chip) or the like. , may be realized by software.

後者の場合、第1拠点装置4は、各機能を実現するソフトウェアであるプログラムの命令を実行するコンピュータを備えている。このコンピュータは、例えば1つ以上のプロセッサを備えていると共に、前記プログラムを記憶したコンピュータ読み取り可能な記録媒体を備えている。そして、前記コンピュータにおいて、前記プロセッサが前記プログラムを前記記録媒体から読み取って実行することにより、本発明の目的が達成される。 In the latter case, the first base device 4 is equipped with a computer that executes instructions of a program that is software that implements each function. This computer includes, for example, one or more processors and a computer-readable recording medium storing the program. Then, in the computer, the processor reads the program from the recording medium and executes it, thereby achieving the object of the present invention.

前記プロセッサとしては、例えばCPU(Central Processing Unit)を用いることができる。前記記録媒体としては、「一時的でない有形の媒体」、例えば、ROM(Read Only Memory)等の他、テープ、ディスク、カード、半導体メモリ、プログラマブルな論理回路などを用いることができる。 As the processor, for example, a CPU (Central Processing Unit) can be used. As the recording medium, in addition to "non-temporary tangible media" such as ROM (Read Only Memory), tapes, disks, cards, semiconductor memories, programmable logic circuits, etc. can be used.

また、前記プログラムを展開するRAM(Random Access Memory)などをさらに備えていてもよい。また、前記プログラムは、該プログラムを伝送可能な任意の伝送媒体(通信ネットワークや放送波等)を介して前記コンピュータに供給されてもよい。なお、本発明の一態様は、前記プログラムが電子的な伝送によって具現化された、搬送波に埋め込まれたデータ信号の形態でも実現され得る。 Further, the computer may further include a RAM (Random Access Memory) for expanding the program. Further, the program may be supplied to the computer via any transmission medium (communication network, broadcast wave, etc.) that can transmit the program. Note that one aspect of the present invention can also be realized in the form of a data signal embedded in a carrier wave, in which the program is embodied by electronic transmission.

本発明は前述した各実施形態に限定されるものではなく、請求項に示した範囲で種々の変更が可能である。異なる実施形態にそれぞれ開示された技術的手段を適宜組み合わせて得られる実施形態も、本発明の技術的範囲に含まれる。各実施形態にそれぞれ開示された技術的手段を組み合わせることによって、新しい技術的特徴を形成することもできる。 The present invention is not limited to the embodiments described above, and various modifications can be made within the scope of the claims. Embodiments obtained by appropriately combining technical means disclosed in different embodiments are also included in the technical scope of the present invention. New technical features can also be formed by combining the technical means disclosed in each embodiment.

1、1A コンテナシステム
2、2A 端末機器
3、3A クラウドサーバ
4 第1拠点装置
5 クラウドサーバ
6 第2拠点装置
21 プリファレンスリポジトリ
22 イメージリポジトリ
23 起動App
24 クライアントApp
31 グローバルMANO
32 グローバルデータストア
33 オリジンイメージリポジトリ
34 サーバApp
41 第1マスターノード
42 第1ネットワークモニタ
43 第1ローカルMANO
44 第1ローカルデータストア
45 第1ローカルイメージリポジトリ
46 API
51 第1リソースモニタ
52 第1ワーカノード
53 第4ワーカノード
61 第2マスターノード
62 第2ネットワークモニタ
63 第2ローカルMANO
64 第2ローカルデータストア
65 第2ローカルイメージリポジトリ
66 API
71 第2リソースモニタ
72 第2ワーカノード
73 第5ワーカノード
81 第1ポッド
82 第2ポッド
83 第3ポッド
1, 1A Container system 2, 2A Terminal device 3, 3A Cloud server 4 First base device 5 Cloud server 6 Second base device 21 Preference repository 22 Image repository 23 Startup App
24 Client App
31 Global MANO
32 Global data store 33 Origin image repository 34 Server App
41 First master node 42 First network monitor 43 First local MANO
44 First local data store 45 First local image repository 46 API
51 First resource monitor 52 First worker node 53 Fourth worker node 61 Second master node 62 Second network monitor 63 Second local MANO
64 Second local data store 65 Second local image repository 66 API
71 Second resource monitor 72 Second worker node 73 Fifth worker node 81 First pod 82 Second pod 83 Third pod

Claims (4)

(1)第1ワーカノードを備えている第1エッジサーバが配置される第1拠点から、第2ワーカノードを備えている第2エッジサーバが配置される第2拠点への通信時のネットワーク状況を測定する測定部、(2)前記第1エッジサーバによって測定された前記第1ワーカノードのリソース状況を受信する第1受信部、(3)測定されたネットワーク状況および受信されたリソース状況を保存する保存部、(4)コンテナオーケストレーションクラスタとしてのアプリケーションを構成する第1ポッドが要求するネットワークへの要求事項および前記第1ポッドが要求するリソースへの要求事項を受信する第2受信部、及び、(5)保存された前記ネットワーク状況およびリソース状況と、受信された前記ネットワークへの要求事項および前記リソースへの要求事項とに基づいて、前記第1ポッドを前記第1ワーカノードに配置するか否かを決定する決定部を備えているポッド配置決定装置と、前記第2拠点に配置される第2ポッド配置決定装置とそれぞれ通信可能に接続されるサーバであって、
前記ポッド配置決定装置から送信された前記ネットワーク状況および前記リソース状況と、前記第2ポッド配置決定装置から送信された、前記第2拠点から前記第1拠点への通信時の第2ネットワーク状況および前記第2ワーカノードの第2リソース状況とを受信する第1サーバ受信部と、
受信された前記ネットワーク状況、前記リソース状況、前記第2ネットワーク状況、および前記第2リソース状況を保存するサーバ情報保存部と、
前記アプリケーションを構成する第2ポッドが要求するネットワークへの第2要求事項および前記第2ポッドが要求するリソースへの第2リソース状況を受信する第2サーバ受信部と、
保存された前記第2ネットワーク状況および第2リソース状況と、受信された前記ネットワークへの第2要求事項および前記リソースへの第2要求事項とに基づいて、前記第2ポッドを前記第2ワーカノードに配置するか否かを決定する第2決定部とを備えている、サーバ。
(1) Measure the network status during communication from the first base where the first edge server equipped with the first worker node is located to the second base where the second edge server equipped with the second worker node is located (2) a first receiving unit that receives the resource status of the first worker node measured by the first edge server; (3) a storage unit that stores the measured network status and the received resource status. , (4) a second receiving unit that receives network requirements requested by a first pod constituting an application as a container orchestration cluster and resource requirements requested by the first pod; ) determining whether to place the first pod on the first worker node based on the saved network status and resource status and the received network requirements and received resource requirements; a server that is communicably connected to a second pod placement determining device located at the second base;
the network status and the resource status transmitted from the pod placement determining device; the second network status at the time of communication from the second base to the first base and the second network status transmitted from the second pod placement determining device; a first server receiving unit that receives a second resource status of the second worker node;
a server information storage unit that stores the received network status, the resource status, the second network status, and the second resource status;
a second server receiving unit that receives a second request to the network requested by a second pod constituting the application and a second resource status of the resource requested by the second pod;
the second pod to the second worker node based on the stored second network status and second resource status and the received second requirements for the network and second requirements for the resources; A second determining unit that determines whether to deploy the server.
ポッド配置決定装置とサーバとを少なくとも備えているコンテナシステムであって、
前記ポッド配置決定装置は、
第1ワーカノードを備えている第1エッジサーバが配置される第1拠点から、第2ワーカノードを備えている第2エッジサーバが配置される第2拠点への通信時のネットワーク状況を測定する測定部と、
前記第1エッジサーバによって測定された前記第1ワーカノードのリソース状況を受信する第1受信部と、
測定されたネットワーク状況および受信されたリソース状況を保存する保存部と、
コンテナオーケストレーションクラスタとしてのアプリケーションを構成する第1ポッドが要求するネットワークへの要求事項および前記第1ポッドが要求するリソースへの要求事項を受信する第2受信部と、
保存された前記ネットワーク状況およびリソース状況と、受信された前記ネットワークへの要求事項および前記リソースへの要求事項とに基づいて、前記第1ポッドを前記第1ワーカノードに配置するか否かを決定する決定部と
を備えており、
前記サーバは、前記ポッド配置決定装置と前記第2拠点に配置される第2ポッド配置決定装置とそれぞれ通信可能に接続されるサーバであって、
前記ポッド配置決定装置から送信された前記ネットワーク状況および前記リソース状況と、前記第2ポッド配置決定装置から送信された、前記第2拠点から前記第1拠点への通信時の第2ネットワーク状況および前記第2ワーカノードの第2リソース状況とを受信する第1サーバ受信部と、
受信された前記ネットワーク状況、前記リソース状況、前記第2ネットワーク状況、および前記第2リソース状況を保存するサーバ情報保存部と、
前記アプリケーションを構成する第2ポッドが要求するネットワークへの第2要求事項および前記第2ポッドが要求するリソースへの第2リソース状況を受信する第2サーバ受信部と、
保存された前記第2ネットワーク状況および第2リソース状況と、受信された前記ネットワークへの第2要求事項および前記リソースへの第2要求事項とに基づいて、前記第2ポッドを前記第2ワーカノードに配置するか否かを決定する第2決定部とを備えているコンテナシステム。
A container system comprising at least a pod placement determining device and a server,
The pod placement determining device includes:
A measurement unit that measures the network status during communication from a first base where a first edge server equipped with a first worker node is located to a second base where a second edge server equipped with a second worker node is located. and,
a first receiving unit that receives the resource status of the first worker node measured by the first edge server;
a storage unit for storing the measured network status and the received resource status;
a second receiving unit that receives network requirements requested by a first pod constituting an application as a container orchestration cluster and resource requirements requested by the first pod;
determining whether to place the first pod on the first worker node based on the saved network status and resource status and the received network requirements and resource requirements; It is equipped with a decision section,
The server is a server that is communicably connected to the pod placement determining device and the second pod placement determining device located at the second base, and
the network status and the resource status transmitted from the pod placement determining device; the second network status at the time of communication from the second base to the first base and the second network status transmitted from the second pod placement determining device; a first server receiving unit that receives a second resource status of the second worker node;
a server information storage unit that stores the received network status, the resource status, the second network status, and the second resource status;
a second server receiving unit that receives a second request to the network requested by a second pod constituting the application and a second resource status of the resource requested by the second pod;
the second pod to the second worker node based on the stored second network status and second resource status and the received second requirements for the network and second requirements for the resources; A container system comprising: a second determining unit that determines whether or not to place the container.
第1拠点に配置される第1エッジサーバおよび第1拠点装置と、第2拠点に配置される第2エッジサーバおよび第2拠点装置と、サーバとを備えているコンテナシステムであって、
前記第1エッジサーバは、
複数の異なるコンテナオーケストレーションクラスタに属する第1ワーカノードと、
前記第1ワーカノードの第1リソース状況を測定する第1リソース状況測定部と、
測定された前記第1リソース状況を、前記第1拠点装置に送信する第1リソース状況送信部と、を備えており、
前記第1拠点装置は、
前記第1リソース状況を受信する第1受信部と、
受信された前記第1リソース状況を、前記サーバに送信する第1送信部と、
前記第2エッジサーバは、
複数の異なるコンテナオーケストレーションクラスタに属する第2ワーカノードと、
前記第2ワーカノードの第2リソース状況を測定する第2リソース状況測定部と、
測定された前記第2リソース状況を、前記第2拠点装置に送信する第2リソース状況送信部と、を備えており、
前記第2拠点装置は、
前記第2リソース状況を受信する第2受信部と、
受信された前記第2リソース状況を、前記サーバに送信する第2送信部とを備えており、
前記サーバは、
前記第1リソース状況および前記第2リソース状況を受信する第1サーバ受信部と、
受信された前記第1リソース状況および前記第2リソース状況を保存するサーバ情報保存部とを備えている、コンテナシステム。
A container system comprising a first edge server and a first base device located at a first base, a second edge server and second base device located at a second base, and a server,
The first edge server includes:
a first worker node belonging to a plurality of different container orchestration clusters;
a first resource status measurement unit that measures a first resource status of the first worker node;
a first resource status transmitter that transmits the measured first resource status to the first base device;
The first base device is
a first receiving unit that receives the first resource status;
a first transmitter that transmits the received first resource status to the server;
The second edge server includes:
a second worker node belonging to a plurality of different container orchestration clusters;
a second resource status measurement unit that measures a second resource status of the second worker node;
a second resource status transmitter that transmits the measured second resource status to the second base device,
The second base device is
a second receiving unit that receives the second resource status;
a second transmitting unit that transmits the received second resource status to the server,
The server is
a first server reception unit that receives the first resource status and the second resource status;
A container system comprising: a server information storage unit that stores the received first resource status and second resource status.
前記第1拠点装置は、前記第1拠点から前記第2拠点への通信時の第1ネットワーク状況を測定する第1ネットワーク状況測定部をさらに備えており、
前記第1送信部は、測定された前記第1ネットワーク状況および受信された前記第1リソース状況を、前記サーバに送信し、
前記第2拠点装置は、前記第2拠点から前記第1拠点への通信時の第2ネットワーク状況を測定する第2ネットワーク状況測定部をさらに備えており、
前記第2送信部は、測定された前記第2ネットワーク状況および受信された前記第2リソース状況を、前記サーバに送信し、
前記第1サーバ受信部は、前記第1ネットワーク状況、前記第1リソース状況、前記第2ネットワーク状況、および前記第2リソース状況を受信し、
前記サーバ情報保存部は、受信された前記第1ネットワーク状況、前記第1リソース状況、前記第2ネットワーク状況、および前記第2リソース状況を保存し、
前記サーバは、
コンテナオーケストレーションクラスタとしてのアプリケーションを構成する第1ポッドが要求するネットワークへの要求事項および前記第1ポッドが要求するリソースへの要求事項を受信する第2サーバ受信部と、
保存された前記第1ネットワーク状況、前記第1リソース状況、前記第2ネットワーク状況、および前記第2リソース状況と、受信された前記ネットワークへの要求事項および前記リソースへの要求事項とに基づいて、前記第1ワーカノードおよび前記第2ワーカノードのうちいずれのワーカノードに前記第1ポッドを配置するかを決定する、請求項に記載のコンテナシステム。
The first base device further includes a first network status measurement unit that measures a first network status during communication from the first base to the second base,
the first transmitting unit transmits the measured first network status and the received first resource status to the server;
The second base device further includes a second network status measurement unit that measures a second network status during communication from the second base to the first base,
the second transmitting unit transmits the measured second network status and the received second resource status to the server;
The first server receiving unit receives the first network status, the first resource status, the second network status, and the second resource status,
The server information storage unit stores the received first network status, first resource status, second network status, and second resource status,
The server is
a second server reception unit that receives network requirements requested by a first pod constituting an application as a container orchestration cluster and resource requirements requested by the first pod;
Based on the stored first network status, first resource status, second network status, and second resource status, and the received requirements for the network and the received requirements for the resource, The container system according to claim 3 , wherein the container system determines which worker node to place the first pod among the first worker node and the second worker node.
JP2021035782A 2021-03-05 2021-03-05 Server and container systems Active JP7399427B2 (en)

Priority Applications (1)

Application Number Priority Date Filing Date Title
JP2021035782A JP7399427B2 (en) 2021-03-05 2021-03-05 Server and container systems

Applications Claiming Priority (1)

Application Number Priority Date Filing Date Title
JP2021035782A JP7399427B2 (en) 2021-03-05 2021-03-05 Server and container systems

Publications (2)

Publication Number Publication Date
JP2022135765A JP2022135765A (en) 2022-09-15
JP7399427B2 true JP7399427B2 (en) 2023-12-18

Family

ID=83231114

Family Applications (1)

Application Number Title Priority Date Filing Date
JP2021035782A Active JP7399427B2 (en) 2021-03-05 2021-03-05 Server and container systems

Country Status (1)

Country Link
JP (1) JP7399427B2 (en)

Families Citing this family (1)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
WO2025177582A1 (en) * 2024-02-22 2025-08-28 ソフトバンク株式会社 Mec device, information processing method, and information processing program

Citations (2)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
JP2020160775A (en) 2019-03-26 2020-10-01 日本電気株式会社 Container activation host selection device, container activation host selection system, container activation host selection method and program
JP2021009604A (en) 2019-07-02 2021-01-28 ラトナ株式会社 System, system control method, computer program used to system control, and recording medium thereof

Family Cites Families (1)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
JP6455035B2 (en) * 2014-09-10 2019-01-23 富士通株式会社 Load balancing management device, control method, and program

Patent Citations (2)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
JP2020160775A (en) 2019-03-26 2020-10-01 日本電気株式会社 Container activation host selection device, container activation host selection system, container activation host selection method and program
JP2021009604A (en) 2019-07-02 2021-01-28 ラトナ株式会社 System, system control method, computer program used to system control, and recording medium thereof

Non-Patent Citations (3)

* Cited by examiner, † Cited by third party
Title
山中 広明 他,実験環境構築が容易なエッジコンピューティングテストベッドの実装と評価,電子情報通信学会技術研究報告,一般社団法人電子情報通信学会,2021年01月13日,Vol.120 No.314,第104頁-第109頁
羽原 拓哉 他,データ収集基盤機能の動的配置手法に関する検討,電気学会研究会資料,一般社団法人電気学会,2020年09月01日,第27頁-第32頁,CMN-20-38
通信ビルエッジを活用したGPU・データレイクの技術開発,NTT技術ジャーナル ,一般社団法人電気通信協会,2020年12月01日,第32巻 第12号,第66頁-第70頁

Also Published As

Publication number Publication date
JP2022135765A (en) 2022-09-15

Similar Documents

Publication Publication Date Title
US11809900B2 (en) Method and system for migration of containers in a container orchestration platform between compute nodes
US8190740B2 (en) Systems and methods for dynamically provisioning cloud computing resources
US6658473B1 (en) Method and apparatus for distributing load in a computer environment
US10592298B2 (en) Method for distributing load in a multi-core system
US12341843B1 (en) Method to determine use of local and remote applications in a distributed multiuser environment for shared file resources
JP3382953B2 (en) Client management flow control method and apparatus on finite memory computer system
EP3813335B1 (en) Service processing methods and systems based on a consortium blockchain network
US20180210752A1 (en) Accelerator virtualization method and apparatus, and centralized resource manager
US12518000B2 (en) Data processing methods and apparatus switchable between secure and non-secure environments
CN113382077A (en) Micro-service scheduling method and device, computer equipment and storage medium
WO2018201856A1 (en) System and method for self organizing data center
JP2007249445A (en) Method and apparatus for controlling load distribution in cluster system
WO2019160030A1 (en) Service provision system, resource allocation method, and resource allocation program
JP7755045B2 (en) Node for running container groups, and container group management system and method
US12294924B2 (en) Distributed ledger control over wireless network slices
US12452331B1 (en) File-sharing method, apparatus and system, electronic device, and storage medium
CN105612539A (en) Producer system partitioning among leasing agent systems
JP7399427B2 (en) Server and container systems
WO2024017285A1 (en) Cpu core allocation methods and system, device, and storage medium
CN115361271B (en) SSH server switching and connecting method, cloud server and storage medium
CN107306289A (en) A kind of load-balancing method and equipment based on cloud computing
US10649816B2 (en) Elasticity engine for availability management framework (AMF)
JP2006235837A (en) Load balancing system, load balancer management server, switching method for load balancer and program
CN112799849A (en) Data processing method, device, equipment and storage medium
CN117519911B (en) Automatic injection system, method, device, cluster and medium

Legal Events

Date Code Title Description
A621 Written request for application examination

Free format text: JAPANESE INTERMEDIATE CODE: A621

Effective date: 20220315

A977 Report on retrieval

Free format text: JAPANESE INTERMEDIATE CODE: A971007

Effective date: 20230222

A131 Notification of reasons for refusal

Free format text: JAPANESE INTERMEDIATE CODE: A131

Effective date: 20230307

A521 Request for written amendment filed

Free format text: JAPANESE INTERMEDIATE CODE: A523

Effective date: 20230424

A02 Decision of refusal

Free format text: JAPANESE INTERMEDIATE CODE: A02

Effective date: 20230801

A521 Request for written amendment filed

Free format text: JAPANESE INTERMEDIATE CODE: A523

Effective date: 20230928

A521 Request for written amendment filed

Free format text: JAPANESE INTERMEDIATE CODE: A821

Effective date: 20230928

A911 Transfer to examiner for re-examination before appeal (zenchi)

Free format text: JAPANESE INTERMEDIATE CODE: A911

Effective date: 20231019

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

A61 First payment of annual fees (during grant procedure)

Free format text: JAPANESE INTERMEDIATE CODE: A61

Effective date: 20231128

R150 Certificate of patent or registration of utility model

Ref document number: 7399427

Country of ref document: JP

Free format text: JAPANESE INTERMEDIATE CODE: R150