JP2022135765A - Device and method for determining pod, terminal apparatus, edge server, server, container system, and program - Google Patents

Device and method for determining pod, terminal apparatus, edge server, server, container system, and program Download PDF

Info

Publication number
JP2022135765A
JP2022135765A JP2021035782A JP2021035782A JP2022135765A JP 2022135765 A JP2022135765 A JP 2022135765A JP 2021035782 A JP2021035782 A JP 2021035782A JP 2021035782 A JP2021035782 A JP 2021035782A JP 2022135765 A JP2022135765 A JP 2022135765A
Authority
JP
Japan
Prior art keywords
pod
network
resource
status
server
Prior art date
Legal status (The legal status is an assumption and is not a legal conclusion. Google has not performed a legal analysis and makes no representation as to the accuracy of the status listed.)
Granted
Application number
JP2021035782A
Other languages
Japanese (ja)
Other versions
JP7399427B2 (en
Inventor
亮 張
Liang Zhang
顕 熊倉
Akira Kumakura
敬介 前迫
Keisuke Maesako
孝裕 森田
Takahiro Morita
文男 寺岡
Fumio Teraoka
大記 渡邊
Hiroki Watanabe
賢郎 近藤
Kenro Kondo
涼 安森
Ryo Yasumori
勇佑 稲垣
Yusuke Inagaki
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)

Abstract

To allow the arrangement of a pod with network situations and resource situations taken in consideration.SOLUTION: A first local MANO(43) determines whether a first pod (81) is to be arranged in a first worker node (52) of a first MEC server (5) on the basis of a network situation regarding a first base and a resource situation of the first MEC server (5) stored in a first local data store (44) and a requirement item for a network required by the first pod (81) and a requirement item for a resource.SELECTED DRAWING: Figure 1

Description

本発明は、ポッド配置決定装置、ポッド配置決定方法、端末機器、エッジサーバ、サーバ、コンテナシステム、およびプログラムに関する。 The present invention relates to a pod placement determination device, a pod placement determination 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 personal computers and mobile phones, it is possible to efficiently execute the application by having the cloud server existing in the network execute the modules that make up the application and have a large load. It could work well. This form of execution is called offloading. However, the communication delay between the terminal device and the cloud server is generally large, so there is a possibility that the response time of the application will be long. 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 delivered to the MEC server. It has been proposed to reduce application response time by offloading some functions.

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

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

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

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

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

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

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

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

第1実施形態に係るコンテナシステムの構成例を示す図である。1 is a diagram illustrating a configuration example of a container system according to a first embodiment; FIG. コンテナシステムがネットワーク状況およびリソース状況を測定する際にコンテナシステムによって実行される一連の処理の流れを示すシーケンス図である。FIG. 4 is a sequence diagram showing the flow of a series of processes executed by the container system when the container system measures network conditions and resource conditions; ネットワーク状況通知メッセージの一例を示す図である。FIG. 10 is a diagram showing an example of a network status notification message; FIG. リソース状況通知メッセージの一例を示す図である。FIG. 10 is a diagram showing an example of a resource status notification message; FIG. 拠点状況通知メッセージの一例を示す図である。FIG. 10 is a diagram showing an example of a site status notification message; FIG. 端末機器がアプリケーションを起動する際にコンテナシステムによって実行される一連の処理の流れを示すシーケンス図である。FIG. 4 is a sequence diagram showing the flow of a series of processes executed by the container system when the terminal device activates the application; アプリ起動要求メッセージの一例を示す図である。FIG. 10 is a diagram showing an example of an application activation request message; FIG. アプリ構成情報要求メッセージの一例を示す図である。FIG. 10 is a diagram showing an example of an application configuration information request message; FIG. アプリ構成情報応答メッセージの一例を示す図である。FIG. 10 is a diagram showing an example of an application configuration information response message; ポッド配置決定要求メッセージの一例を示す図である。FIG. 10 is a diagram showing an example of a pod placement determination request message; ポッド配置決定要求メッセージの一例を示す図である。FIG. 10 is a diagram showing an example of a pod placement determination request message; ポッド配置決定応答メッセージの一例を示す図である。FIG. 10 is a diagram showing an example of a pod placement determination response message; ポッド配置決定応答メッセージの一例を示す図である。FIG. 10 is a diagram showing an example of a pod placement determination response message; ポッド配置要求メッセージの一例を示す図である。FIG. 10 is a diagram showing an example of a pod placement request message; ポッド配置要求メッセージの一例を示す図である。FIG. 10 is a diagram showing an example of a pod placement request message; ポッド配置応答メッセージの一例を示す図である。FIG. 10 is a diagram showing an example of a pod placement response message; ポッド配置要求メッセージの一例を示す図である。FIG. 10 is a diagram showing an example of a pod placement request message; ポッド配置応答メッセージの一例を示す図である。FIG. 10 is a diagram showing an example of a pod placement response message; ポッド配置要求メッセージの一例を示す図である。FIG. 10 is a diagram showing an example of a pod placement request message; ポッド配置応答メッセージの一例を示す図である。FIG. 10 is a diagram showing an example of a pod placement response message; ポッド配置応答メッセージの一例を示す図である。FIG. 10 is a diagram showing an example of a pod placement response message; アプリ起動応答メッセージの一例を示す図である。It is a figure which shows an example of an application starting response message. コンテナシステムがアプリケーションを停止する際に実行する一連の処理の流れを示すシーケンス図である。FIG. 4 is a sequence diagram showing a series of processes executed when the container system stops an application; アプリ停止要求メッセージの一例を示す図である。It is a figure which shows an example of an application stop request message. ポッド停止要求メッセージの一例を示す図である。FIG. 10 is a diagram showing an example of a pod stop request message; ポッド停止応答メッセージの一例を示す図である。FIG. 10 is a diagram showing an example of a pod stop response message; アプリ停止応答メッセージの一例を示す図である。It is a figure which shows an example of an application stop response message. 測定要求メッセージの一例を示す図である。FIG. 10 is a diagram showing an example of a measurement request message; FIG. 測定要求メッセージの一例を示す図である。FIG. 10 is a diagram showing an example of a measurement request message; FIG. 測定要求メッセージの一例を示す図である。FIG. 10 is a diagram showing an example of a measurement request message; FIG. 測定要求メッセージの一例を示す図である。FIG. 10 is a diagram showing an example of a measurement request message; FIG. 測定要求メッセージの一例を示す図である。FIG. 10 is a diagram showing an example of a measurement request message; FIG. 第2実施形態に係るコンテナシステムの構成を示すブロック図である。FIG. 11 is a block diagram showing the configuration of a container system according to a second embodiment; FIG. 端末機器がクライアントAppを起動する際にコンテナシステムによって実行される一連の処理の流れを示すシーケンス図である。FIG. 4 is a sequence diagram showing the flow of a series of processes executed by the container system when the terminal device activates the client App; アプリ要求メッセージの一例を示す図である。It is a figure which shows an example of an application request message. ポッド配置要求メッセージの一例を示す図である。FIG. 10 is a diagram showing an example of a pod placement request message; ポッド配置応答メッセージの一例を示す図である。FIG. 10 is a diagram showing an example of a pod placement response message; アプリ応答メッセージの一例を示す図である。It is a figure which shows an example of an application response message. サーバアプリケーションを停止する際にコンテナシステムによって実行される一連の処理の流れを示すシーケンス図である。FIG. 10 is a sequence diagram showing the flow of a series of processes executed by the container system when stopping the 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 determination device), a plurality of first MEC (Multi-access Edge Computing) servers 5 (second 1 edge server), a second base device 6 (second pod placement determination 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 arranged in the cloud. Two different first and second sites are illustrated in FIG. A site 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 site than to the second site. Assume that the identifiers of the first site and the second site are 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 reception unit, second server reception unit, second determination 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 equal to or greater than 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), a first local data store 44 (first receiver, storage, first transmitter), first local image repository 45 (image storage), and 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), first worker node 52, and 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 (m is an integer equal to or greater than 1) second MEC servers 7 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 department), 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 comprises a second resource monitor 71 (second resource status measuring section, second resource status transmitting section), 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 in the first base device 4 . Not limited to this, the first master node 41 may operate as an individual physical machine. Also, each first MEC server 5 is an independent physical machine. A first worker node 52 and a fourth worker node 53 as virtual machines are arranged in each first MEC server 5 . Not limited to this, the first worker node 52 and the fourth worker node 53 may operate as individual 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 in the second base device 6 . Not limited to this, the second master node 61 may operate as an individual physical machine. Also, each second MEC server 7 is an independent physical machine. A second worker node 72 and a fifth worker node 73 as virtual machines are arranged in each second MEC server 7 . Not limited to this, 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 constitute one container orchestration cluster as needed. 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. Also, although not shown, the second master node 61, the first worker node 52, and the 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 pods when the user of the terminal device 2 activates a predetermined application near the first site. In this example, an application as a container orchestration cluster consists of 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 inside and outside the container orchestration cluster.

端末機器2のユーザの識別子を、UsrID1とする。ユーザの認証認可のための情報を、CredUsr1とする。認証認可のための情報とは、パスワードや電子証明書等である。アプリケーションの識別子をAppID1とする。アプリケーションを構成する4つのポッドの各識別子を、それぞれPodID1、PodID2、PodID3およびRelayPodID1とする。 Assume that the identifier of the user of the terminal device 2 is UsrID1. Let CredUsr1 be the information for user authentication and authorization. Information for authentication and authorization includes passwords, electronic certificates, and the like. Assume that the application identifier is AppID1. Let PodID1, PodID2, PodID3, and RelayPodID1 be the identifiers of the four pods that make up the application, 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 perform relatively complicated processing among the plurality of pods that constitute the application. The third pod 83 is a pod responsible for the user interface of the application among the plurality of pods forming the application. A pod serving as a user interface must be placed on the terminal device 2 . Therefore, the third pod 83 is a pod that should always be arranged on the terminal device 2 .

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

(ネットワーク状況およびリソース状況の把握)
図2は、コンテナシステム1がネットワーク状況およびリソース状況を測定する際にコンテナシステム1によって実行される一連の処理の流れを示すシーケンス図である。ステップS1において、第1拠点の第1ネットワークモニタ42は、第2拠点の第2ネットワークモニタ62と通信することによって、第1拠点から第2拠点への通信時のネットワーク状況(第1ネットワーク状況)を測定する。ネットワーク状況は、例えば、第1ネットワークモニタ42から第2ネットワークモニタ62への通信の遅延時間である。あるいは、ネットワーク状況は、第1ネットワークモニタ42から第2ネットワークモニタ62に通信する際に利用可能な通信帯域である。ここでは、第1ネットワークモニタ42は、遅延時間および通信帯域の双方を、ネットワーク状況として測定する。
(Understanding of 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 network conditions and resource conditions. In step S1, the first network monitor 42 of the first base communicates with the second network monitor 62 of the second base to obtain a network status (first network status) during communication from the first base to the second base. to measure. The network status is, for example, the communication delay time from the first network monitor 42 to the second network monitor 62 . Alternatively, the network status is the communication band available for communication from first network monitor 42 to second network monitor 62 . Here, the first network monitor 42 measures both delay time and communication bandwidth 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 showing an example of a network status notification message. At step S2, the first network monitor 42 generates a network status notification message as shown in FIG. As shown in FIG. 3, the network status notification message contains several different fields. Specifically, the network status notification message includes at least Type field, Source ID field, and No of Destinations field. The Type field indicates the type of message containing this field. 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" to indicate the network status notification message. The Source ID field indicates the identifier of the network status measurement source. In FIG. 3, the value of the Source ID field is NmonID1. The No of Destinations field indicates the number of network status measurement partners. In FIG. 3, the No of Destinations field has a value of one.

ネットワーク状況通知メッセージは、さらに、ネットワーク状況の測定相手ごとに、対応する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 triple field of the corresponding Destination ID field, Delay field and Available Bandwidth field for each network status measurement partner. In FIG. 3, there is one measurement partner (the second network monitor 62), so the network status notification message contains one triplet 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, namely NmonID2. The Delay field indicates the communication delay time from the source of measurement (here, the first network monitor 42) indicated by the Source ID field to the destination of measurement (here, the second network monitor 62) indicated by the Destination ID. The Available Bandwidth field indicates a 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 partner (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 S<b>3 , 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 available in the first MEC server 5 . Here, the number of virtual CPUs, the memory capacity, the storage capacity, the number of GPUs, and the memory capacity of the GPUs possessed by the first MEC server 5 are measured as the resource status. Furthermore, as the resource status, the number of virtual CPUs being used by the first MEC server 5, the memory capacity, the storage capacity, the number of GPUs, and the memory capacity of the GPUs 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 showing an example of a resource status notification message. At step S4, the first resource monitor 51 generates a resource status notification message as shown in FIG. A network status notification message contains several different fields. In the example of FIG. 4, the resource status notification message includes at least Type field, Source ID field, and No of Nodes field. The value of the Type field is "resource status notification" indicating 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, namely RmonID1. The No of Nodes field indicates the number of worker nodes arranged on the first MEC server 5 . Since two worker nodes are allocated to 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メモリ容量を示す。 The resource status notification message further includes 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 for each worker node. and 11 sets of fields, including the In Use GPU Memory field. A Node ID field indicates the identifier of the worker node. The CPUs field indicates the number of virtual CPUs assigned to the worker node. A Memory field indicates the memory capacity allocated to the worker node. The Storage field indicates the storage capacity assigned to the worker node. A GPUs field indicates the number of GPUs assigned to the worker node. A GPU Memory field indicates the GPU memory capacity allocated to the worker node. The In Use CPUs field indicates the number of virtual CPUs that the worker node is using. The In Use Memory field indicates the memory capacity 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 contains two 11-tuple fields corresponding to the first worker node 52 and the fourth worker node 53 . In the first 11-tuple field, 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 . A Memory field indicates the memory capacity allocated to the first worker node 52 . A Storage field indicates the storage capacity allocated to the first worker node 52 . A GPUs field indicates the number of GPUs assigned to the first worker node 52 . A GPU Memory field indicates the GPU memory capacity allocated to the first worker node 52 . In Use CPUs indicates the number of virtual CPUs currently in use by the first worker node 52 . The In Use Memory field indicates the memory capacity being used by the first worker node 52 . The In Use Storage field indicates the storage capacity being used by the first worker node 52 . The In Use GPUs field indicates the number of GPUs being used by the first worker node 52 . The In Use GPU Memory field indicates the amount of GPU memory being used by the first worker node 52 .

2つ目の11組フィールドでは、Node IDフィールドの値はWnID4である。CPUsフィールド等の残りの10個のフィールドの値は、1つ目の11組フィールドと同様に、第4ワーカノード53に関する値を示す。 In the second 11-tuple field, the value of the Node ID field is WnID4. The values of the remaining 10 fields, such as the CPUs field, indicate values for the fourth worker node 53, similar to the first 11-tuple 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 another first MEC server 5 in the first base operates similarly to generate a resource status notification message and notify the first local data store 44 of it. In step S5, the first local data store 44 receives the resource status and network status notified from other first resource monitors 51 in the first site. In step S6, the first local data store 44 generates a site status notification message as shown in FIG. 5 by aggregating resource status and network status information of all first MEC servers 5 at the first site. At this time, the first local data store 44 saves 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 showing an example of a site status notification message. In step S7, the first local data store 44 notifies the global data store 32 of the site status notification message. In the example of FIG. 5, the site status notification message includes Type field, Base ID field, No of Destinations field, and 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. A Base ID field indicates the identifier of the base. 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 network status measurement partners. In FIG. 5, the value of the No of Destinations field is one. The site status notification message includes a triplet field of a Destination ID field, a Delay field, and an Available Bandwidth field corresponding to each measurement partner. The values of these fields are identical to the values 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 reported resource statuses. 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 site status notification message further includes two field groups (11×2 fields in total) below each Node ID field in FIG. 4, as many as the No of Resource Stats field values. 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 receives the network status of the first base and the resource status of the first worker node 52 and the fourth worker node 53 (first resource situation) in its own storage space. Thereafter, a series of processes of steps S1 to S7 are repeatedly executed periodically.

詳細な説明は省略するが、第2拠点においても、上述したステップS1~S7と同様の処理が実行される。これにより、グローバルデータストア32は、通知された拠点状況通知メッセージに含まれる、第2拠点のネットワーク状況(第2ネットワーク状況)および第2拠点の各第2MECサーバ7における第2ワーカノード72および第5ワーカノード73のリソース状況(第2リソース状況)をも、自身の記憶スペースに保存する。 Although detailed description is omitted, the same processing as steps S1 to S7 described above is also executed at the second site. As a result, the global data store 32 receives the network status of the second site (second network status) and the second worker node 72 and the fifth worker node 72 in each of the second MEC servers 7 of the second site, which are included in the notified site status notification message. It also saves the resource status (second resource status) of the worker node 73 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 processing)
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 activates the application. A user operates the terminal device 2 and inputs an operation to the terminal device 2 for activating a predetermined application. In step S11, when the terminal device 2 detects this operation, the terminal device 2 executes the activation App23 for activating the application. The activation App 23 is stored in advance in the image repository 22 within the terminal device 2 . Launch App 23 is a module used to launch and terminate applications. By executing the launch App 23, the first pod 81, the second pod 82, and the third pod 83 that constitute the application can be arranged in the container orchestration cluster. However, unlike the first pod 81, the second pod 82, and the third pod 83, the launch 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 preferences associated with the application. A preference is 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 a part of the application is desired to be offloaded to the first MEC Server 5 or the second MEC Server 7 . In this example, it is assumed that the user has specified in their preferences that they want to offload. Note that the contents of the preferences may be specified in advance by the cloud server 3 instead of 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 showing an example of an application activation request message. In step S12, the activation App 23 generates an application activation request message as shown in FIG. 7 and transmits it to the first AppAPI 46 in the first base. The application activation request message is a message for requesting activation of an application. In the example of FIG. 7, the application activation request message includes Type field, User ID field, Credential field, App ID field, and Preference field. The value of the Type field is "application activation request" indicating the message type of the application activation request message. A 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 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 to be executed. In the example of FIG. 8, the value of the App ID field is AppID1. The Preference field indicates information read from the preference repository 21 by the launch App 23 .

端末機器2は、ネットワークに接続する際、端末機器2の最寄りの第1拠点に配置される第1AppAPI46のアドレス等を取得する。ステップS13において、第1AppAPI46は、受信したアプリ起動要求メッセージに基づいて、端末機器2のユーザの認証および認可を実行する。その際、第1AppAPI46は、携帯電話網などのコントロールプレーンにアクセスしてもよい。 When the terminal device 2 connects to the network, the terminal device 2 acquires the address and the like of the first AppAPI 46 located at the first site closest to the terminal device 2 . In step S13, the first AppAPI 46 authenticates and authorizes the user of the terminal device 2 based on the received application activation request message. At that time, the first AppAPI 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である。
(Application configuration information request)
FIG. 8 is a diagram showing an example of an application configuration information request message. In step S14, the first AppAPI 46 generates an application configuration information request message as shown in FIG. 8 and transmits it to the first local image repository 45. FIG. 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 to be 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 a first pod 81, a second pod 82, and a third pod 83 that constitute an 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 configuration and content of the application configuration information request message transmitted here are the same as the configuration and content 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 showing an example of an application configuration information response message. All pod images of all applications executable by the container system 1 are stored in advance in the storage space of the origin image repository 33 . Upon receiving the application configuration information request message, the origin image repository 33 stores the images of the first pod 81, the second pod 82, and the third pod 83, which constitute the application indicated by the application configuration information request message, in its own storage space. read from At step S16, the origin image repository 33 generates an application configuration information response message as shown in FIG.

アプリ構成情報応答メッセージは、アプリケーションのポッド構成情報を応答するためのメッセージである。図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 Type field, App ID field, and 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 to be executed, specifically AppID1. The No of Pods field indicates the number of pods that compose 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 App Configuration Information Response message further includes, for one Pod, a 7-tuple field that includes 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. A Pod ID field indicates the identifier of the pod. The No of CPUs field indicates the number of virtual CPUs required by the pod. The Memory field indicates the memory capacity required by the pod. The Storage field indicates the storage capacity required by the pod. The No of GPUs field indicates the number of GPUs required by the Pod. The GPU Memory field indicates the amount of GPU memory required by the pod. The Net Req field indicates the network requirements that the pod needs.

図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 septetary field is PodID1. The No of CPUs field indicates the number of virtual CPUs required by the first pod 81 . A Memory field indicates the memory capacity required by the first pod 81 . A Storage field indicates the storage capacity required by the first pod 81 . A No of GPUs field indicates the number of GPUs required by the first pod 81 . A GPU Memory field indicates the GPU memory capacity required by the first pod 81 .

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

第1ローカルイメージリポジトリ45は、アプリ構成情報応答メッセージを受信すると、受信したアプリ構成情報応答メッセージに含まれるアプリ構成情報を、第1ローカルイメージリポジトリ45の記憶スペースに一時的に保持する。第1ローカルイメージリポジトリ45は、記憶スペースが不足した場合は、LRU(Least Recently Used)アルゴリズム等にしたがって、記憶スペースを確保する。ステップS17において、第1ローカルイメージリポジトリ45は、受信したアプリ構成情報応答メッセージを、第1AppAPI46に送信する。この際に送信されるアプリ構成情報応答メッセージの構成および内容は、図9に示すアプリ構成情報応答メッセージの構成および内容と同一である。 Upon receiving the application configuration information response message, the first local image repository 45 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, it secures storage space according to an LRU (Least Recently Used) algorithm or the like. In step S<b>17 , the first local image repository 45 transmits the received application configuration information response message to the first AppAPI 46 . The configuration and content of the application configuration information response message transmitted at this time are the same as the configuration and content 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 Decision Request)
FIG. 10 is a diagram showing an example of a pod placement determination request message. In step S18, the first AppAPI 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 Type field, App ID field, and No of Pods field. The value of the Type field is "pod placement determination request" indicating the message type of the pod placement determination request message. The value of the App ID field is the identifier of the application to be executed, specifically AppID1. The No of Pods field indicates the number of pods that compose the application. An application consists of three pods, one of which is placed in 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, a 7-tuple field that includes 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 decision request message contains two septuple fields. A Pod ID field indicates the identifier of the pod. The No of CPUs field indicates the number of virtual CPUs required by the pod. The Memory field indicates the memory capacity required by the pod. The Storage field indicates the storage capacity required by the pod. The No of GPUs field indicates the number of GPUs required by the Pod. The GPU Memory field indicates the amount of GPU memory required by the pod. The Net Req field indicates the network requirements that the pod needs.

図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 septetary 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 . A Memory field indicates the memory capacity required by the first pod 81 . A Storage field indicates the storage capacity required by the first pod 81 . A No of GPUs field indicates the number of GPUs required by the first pod 81 . A GPU Memory field indicates the GPU memory capacity required by the first pod 81 . The Net Req field indicates requirements for the network required by the first pod 81 . The remaining six fields, such as the No of CPUs field, indicate the resource requirements that the first pod 81 needs.

図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 septetary field indicates the identifier of the second pod 82 . Therefore, the value of the Pod ID field is PodID2. Values such as the No of CPUs field contained in the second septuple field are values for the second pod 82, similar to the first septetary 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 resource requirements that the second pod 82 needs.

(第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に関するリソース状況の要求事項を満たしているか否かを判定する。
(Arrangement determination of the 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 the second pod 82 indicated by the received pod placement determination request message on any worker node within the first site. Determine whether or not At that time, the first local MANO 43 stores the network status of the first site and the resource status of 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 for 81 , it decides whether to place the first pod 81 on the first worker node 52 . Specifically, it is first determined whether or not the network status regarding the first base satisfies the request information for the network regarding the first pod 81 included in the pod placement determination request message. If it is determined that it satisfies the requirements, then the resource status of any of the first MEC servers 5 within the first base stored in the first local data store 44 is the first pod included in the pod placement determination request message. Determine whether the resource status requirements for 81 are met.

ここでは、第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 site 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 is the resource 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 within the first location.

また、ここでは、第1拠点のネットワーク状況が、第2ポッド82に関するネットワーク状況の要求を満たしているが、すべての第1MECサーバ5の第1ワーカノード52および第4ワーカノード53の各リソース状況が、第2ポッド82に関するリソース状況の要求情報を満たしていないものとする。これにより、第1ローカルMANO43は、第2ポッド82については、第1拠点内の全ての第1MECサーバ5の第1ワーカノード52または第4ワーカノード53に配置できないと判定する。 Also, here, the network status of the first site satisfies the network status requirement for the second pod 82, but the resource status of the first worker nodes 52 and the fourth worker nodes 53 of all the first MEC servers 5 is Assume 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 in the first worker nodes 52 or the fourth worker nodes 53 of all the first MEC servers 5 within the first site.

図11は、ポッド配置決定要求メッセージの一例を示す図である。ステップS19において、第1ローカルMANO43は、第2ポッド82を第1拠点に配置することができない場合、第2ポッド82を第2拠点に配置するために、図11に示すようなポッド配置決定要求メッセージを生成し、グローバルMANO31に送信する。ここで送信されるポッド配置決定要求メッセージは、第2ポッド82の配置決定を要求するためのメッセージである。 FIG. 11 is a diagram showing an example of a pod placement determination request message. In step S19, if the second pod 82 cannot be placed at the first site, the first local MANO 43 sends a pod placement determination request as shown in FIG. 11 to place the second pod 82 at the second site. Create a message and send 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 .

(第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に関するリソース状況の要求事項を満たしているか否かを判定する。
(Arrangement determination of the second pod 82)
In step S20, upon receiving the pod placement determination request message, the global MANO 31 determines whether or not the second pod 82 can be placed in the second MEC server 7 at the second site. At that time, the global MANO 31 stores the network status of the second site (second network status) and the resource status of each second MEC server 7 stored in the global data store 32, and the second network status included in the received pod placement determination request message. Based on the network requirements and resource requirements for the second pod 82 , a decision is made whether to place the second pod 82 on the second worker node 72 . Specifically, it is first determined whether or not the network status regarding the second site satisfies the request information for the network regarding the second pod 82 included in the pod placement determination request message. If it is determined that it satisfies the requirements, then the resource status of any of the second MEC servers 7 in the second site 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 site 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 indicates that the resource status of the second pod 82 is not available. It shall meet the requirements. 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 within the second site.

(ポッド配置決定応答)
図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 showing an example of a pod placement decision 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 determination response message is a message for responding that the placement of the second pod 82 has been determined. In the example of FIG. 12, the pod placement determination response message includes Type field, App ID field, and No of Pods field. The value of the Type field is "pod placement determination response" indicating the message type of the pod placement determination response message. The value of the App ID field is the identifier of the application to be 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 triplet field that includes a Pod ID field, a Base ID field, and a Node ID field. Since there is one pod here, the pod placement decision response message further includes one triplet field. A Pod ID field indicates the identifier of the pod. 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 placed. In the example of FIG. 12, the value of the Base ID field is BaseID2 because the second pod 82 is located at the second base. A Node ID field indicates the identifier of the worker node where the pod is placed. In the example of FIG. 12, the Node ID field is WnID2 because the second pod 82 is placed on the second worker node 72 of the second MEC server 7 at the second site.

図13は、ポッド配置決定応答メッセージの一例を示す図である。ステップS21において、第1ローカルMANO43は、第2ポッド82に関するポッド配置決定応答メッセージを受信すると、図13に示すようなポッド配置決定応答メッセージを生成し、第1AppAPI46に送信する。図13に示すポッド配置決定応答メッセージの構成は、図12に示すポッド配置決定応答メッセージの構成に、第1ポッド81に関する項目を加えたものである。そのため、図13に示すポッド配置決定応答メッセージの詳細な説明は省略する。 FIG. 13 is a diagram showing an example of a pod placement decision response message. In step S21, when the first local MANO 43 receives the pod placement determination response message regarding the second pod 82, it generates a pod placement determination response message as shown in FIG. The configuration of the pod placement determination response message shown in FIG. 13 is obtained by adding an item regarding the first pod 81 to the configuration of the pod placement determination response message shown in FIG. Therefore, detailed description of the pod placement determination response message shown in FIG. 13 is 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 showing an example of a pod placement request message. In step S22, upon receiving the pod placement decision response message, the first AppAPI 46 generates a pod placement request message as shown in FIG. 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 Type field, App ID field, and 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 to be executed, specifically AppID1. The No of Pods field indicates the number of pods. In the example of FIG. 14, the No of Pods field has a value of 3 because the pod placement request message requests placement of three pods, the first pod 81, the second pod 82, and the third pod 83. In the example of FIG.

ポッド配置要求メッセージは、ポッドごとに、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 Deployment Request message further includes, for each Pod, a quadruple field: Pod ID field, Base ID field, Node ID field, and Repository ID field. In the example of FIG. 14, 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. A Pod ID field indicates the identifier of the pod. The Base ID field indicates the identifier of the base where the pod is placed. A 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 should 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 located, namely 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, 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 located, namely WnID2. The value of the Repository ID field is LirID2. The value of the Pod ID field in the third quartet field is the identifier of the third pod 83, PodID3. The value of the Base ID field is the identifier of the first site 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 located, 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 showing an example of a pod arrangement 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 arrangement request message shown in FIG. 15 is obtained by removing the items of the second pod 82 and the third pod 83 from the configuration of the pod arrangement request message shown in FIG. 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 showing 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 S<b>25 , the first worker node 52 generates a pod placement response message and transmits it to the first master node 41 after completing placement of the first pod 81 . The pod placement response message is a message for responding that the 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 deployment response", which indicates the message type of the pod deployment response message. The value of the App ID field is the identifier of the application to be executed, specifically AppID1.

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

(第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 showing 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 transmits it to the third worker node. The configuration of the pod placement request message shown in FIG. 17 is the same as the configuration of the pod placement request message shown in FIG. 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 showing an example of a pod placement response message. In step S26, the third worker node generates a pod placement response message as shown in FIG. The configuration of the pod placement response message shown in FIG. 18 is the same as the configuration of the pod placement response message shown in FIG. In the example of FIG. 18, the pod placement response message includes various pieces of 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 showing 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 configuration of the pod placement request message shown in FIG. 19 is the same as the configuration of the pod placement request message shown in FIG. In the example of FIG. 19, the pod placement request message contains 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 showing an example of a pod placement response message. In step S28, the second worker node 72, after completing the placement of the second pod 82, generates a pod placement response message as shown in FIG. The configuration of the pod placement response message shown in FIG. 20 is the same as the configuration of the pod placement response message shown in FIG. In the example of FIG. 20, the pod placement response message contains various information regarding the 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を配置してもよい。 The application is started by normally arranging the first pod 81, the second pod 82, and the third pod 83 as described above. 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 changed arbitrarily. For example, the third pod 83 may be placed first, the first pod 81 next, and the second pod 82 last.

(ポッド配置応答)
図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 showing an example of a pod arrangement response message. In step S29, the first master node 41 generates a pod placement response message as shown in FIG. 21 and transmits it to the first AppAPI 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 the completion of placement of each of the first pod 81, the second pod 82, and the third pod 83. FIG.

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

以上のようにして起動されたアプリケーションは、第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 run as the first pod 81, the second pod 82, and the third pod 83 cooperate to operate. By starting the application, the resources available in the first MEC server 5, the second MEC server 7, and the network are reduced by the resources consumed by the application. As shown in FIG. 2, the container system 1 maintains the status of the network between the first base and other bases, the resource status of each first MEC server 5, the second base and the other bases, even after starting the application. and the resource status of each second MEC server 7 are periodically measured. This periodically updates the network and resource conditions stored in the first local data store 44 , the second local data store 64 and the global data store 32 . Accordingly, the information stored in each of the first local data store 44, the second local data store 64, and the global data store 32 can be kept up-to-date.

(アプリケーションの停止)
図23は、コンテナシステム1がアプリケーションを停止する際に実行する一連の処理の流れを示すシーケンス図である。ユーザは、端末機器2を操作し、所定のアプリケーションを停止させるための操作を、端末機器2に入力する。端末機器2は、この操作を検出すると、起動App23にアプリケーションの停止を指示する。
(Stop application)
FIG. 23 is a sequence diagram showing a series of processes executed when the container system 1 stops an application. A 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 showing an example of an application stop request message. In step S31, upon receiving an application stop instruction from the terminal device 2, the startup App 23 generates an application stop request message as shown in FIG. The application stop request message includes Type field, User ID field, Credential field, and App ID field. The value of the Type field is "application stop request" indicating the message type of the application stop request message. A 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 contains the user's authentication 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 S<b>32 , the first AppAPI 46 performs authentication and authorization of the user of the terminal device 2 . At that time, the first AppAPI 46 may access a control plane such as a mobile phone network. In step S<b>33 , the first AppAPI 46 transmits the received application stop request message to the first master node 41 when the user authentication and authorization are successful.

図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 showing 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 transmits it to the first worker node 52. FIG. The pod stop request message shown in FIG. 25 is a message for requesting stop of the first pod 81 . In the example of FIG. 25, the pod stop request message includes Type field, App ID field, and 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. A Pod ID field indicates the identifier of the pod. 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 site where the first pod 81 is located, ie, BaseID1. A 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 located, namely 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 showing 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 pod 81 is successfully stopped, the first worker node 52 generates a pod stop response message as shown in FIG. 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 Type field, App ID field, and 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. 1 in this example.

ポッド停止応答メッセージは、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 2-tuple field consisting of a Pod ID field and a Status field. A Pod ID field indicates the identifier of the pod. In the example of FIG. 26, the value of the Pod ID field is the identifier of the first pod 81 to be stopped, namely PodID1. The Status field indicates the end status of processing. In the example of FIG. 26, it is "OK" indicating 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 transmits 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 transmits 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 detailed description thereof 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 S<b>38 , 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 S<b>39 , the second worker node 72 generates a pod stop response message for responding that the second pod 82 has been stopped, and transmits 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 detailed description thereof 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 S<b>40 , the first master node 41 generates an application stop response message and transmits it to the first AppAPI 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" indicating 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 end status of processing. In the example of FIG. 2, the value of the Status field is "OK" indicating normal termination of application stop.

ステップS41において、第1AppAPI46は、アプリ停止応答メッセージを受信すると、受信したアプリ停止応答メッセージを起動App23に送信する。ステップS42において、起動App23は、アプリ停止応答メッセージを受信すると、終了する。これにより、アプリケーションの終了が完了する。 In step S<b>41 , when the first AppAPI 46 receives the application stop response message, it transmits the received application stop response message to the startup App 23 . In step S42, when the startup App 23 receives the application stop response message, it ends. 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 AppAPI 46 generates a measurement request message as shown in FIG. 28 and transmits it to the first network monitor 42. FIG. The measurement request message shown in FIG. 28 is a message for requesting network status measurement. A 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, namely 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 AppAPI 46 generates a measurement request message as shown in FIG. 29 and transmits it to the first resource monitor 51. FIG. The measurement request message shown in FIG. 29 is a message for requesting resource status measurement. A 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, namely 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 AppAPI 46 generates a measurement request message as shown in FIG. 30 and transmits it to the second AppAPI 66. FIG. The measurement request message shown in FIG. 30 is a message for requesting measurement of network status and resource status. A 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, namely NmonID2. The value of the second Target ID field is the identifier of the second resource monitor 71, namely 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 AppAPI 66 generates a measurement request message as shown in FIG. 31 and transmits it to the second network monitor 62. FIG. The measurement request message shown in FIG. 31 is a message for requesting network status measurement. A 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, namely 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 AppAPI 66 generates a measurement request message as shown in FIG. 32 and transmits it to the second resource monitor 71. FIG. The measurement request message shown in FIG. 32 is a message for requesting resource status measurement. A 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, namely 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, the first resource monitor 51, the second network monitor 62, and the second resource monitor 71 execute the series of processing procedures shown in FIG. As a result, the latest network status and resource status after termination of the application are reflected in the first local data store 44, the second local data store 64, and the global data store 32. FIG.

(本実施形態による主要な効果)
第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 the result 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 or not to place the first pod 81 on the first MEC server 5 based on the network conditions and resource conditions stored in the first local data store 44 . As a result, it is possible to arrange the first pod 81 in consideration of the network conditions and resource conditions, so that the first pod 81 can be arranged in the optimum first worker node 52 .

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

第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 the result 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 decides whether to place the second pod 82 on the second worker node 72 of the second MEC server 7 by considering the network conditions and resource conditions for the second location stored in the global data store 32. . As a result, it is possible to arrange pods in consideration of network conditions, so that each pod can be arranged in each worker node in good network conditions such as little communication delay. Furthermore, it is possible to optimally arrange pods among widely distributed bases via a network.

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

同様に、第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. can be done. 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. , the resource status of all worker nodes can be correctly grasped.

コンテナオーケストレーションクラスタとして実行されるアプリケーションの起動後、コンテナオーケストレーションクラスタとして実行されるアプリケーションを構成する第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 executed as the container orchestration cluster, the first pod 81 constituting the application executed as the container orchestration cluster is arranged in the first MEC server 5 in the network to which the terminal device 2 is connected. . Also, the second pod 82 is arranged in the second MEC server 7 in the network to which the terminal device 2 is connected. Furthermore, the third pod 83 is arranged in the terminal device 2 . On the other hand, the launch App23 for launching the application does not belong to the container orchestration cluster. Therefore, during execution of the application, the starting 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. Furthermore, communication via relay pods is not performed among the first pod 81, the second pod 82, and the third pod 83 that configure the application. By doing so, it is possible to prevent communication paths between pods from becoming redundant at the time of application startup and at the time of execution after startup.

既存のコンテナオーケストレーションシステムに対してコンテナシステム1を新たに導入する際、既存のコンテナオーケストレーションシステムの部分に対する変更は必要としない。そのため、稼働中の既存のコンテナオーケストレーションシステムに対してコンテナシステム1を容易に導入することができる。 When the container system 1 is newly introduced into an existing container orchestration system, it is not necessary to change parts of 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 in the terminal equipment 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は、全てのワーカノードのリソース状況を正しく把握することができる。
(Modification)
In the container system 1, the first worker node 52 may belong to multiple different container orchestration clusters, and the second worker node 72 may belong to multiple different container orchestration clusters. Also in this case, the first MEC server 5 accurately measures the resource status of the first worker node 52 and the fourth worker node 53 by using the first resource monitor 51 . 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 the received status of each resource 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 arrangement of the first pods 81 instead of the first base device 4 . In this example, the first AppAPI 46 notifies the global MANO 31 instead of the first local MANO 43 of the pod placement determination request message shown in FIG. When the global MANO 31 receives the pod placement determination request message, the global MANO 31 determines at which of the first base and the second base all of the first pods 81 and the second pods 82 indicated by the received pod placement determination request message are to be placed. to decide.

具体的には、グローバル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 site, the resource status of each first MEC server 5, the network status of the second site, and the resource status of each second MEC server 7 stored in the global data store 32. and the network requirements and resource requirements for 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 site and the resource status of the first worker node 52 of the first MEC server 5 satisfy the network requirements and resource requirements for the first pod 81, the global MANO 31 to the first worker node 52 of the first MEC server 5 . Alternatively, if the network status of the second site and the resource status of the second worker node 72 of the second MEC server 7 satisfy the network requirements and resource requirements for the first pod 81, the global MANO 31 to the second worker node 72 of the second MEC server 5 . In this way, the global MANO 31 can select the optimum MEC server (worker node) on which the first pod 81 should be placed, considering the network conditions of each base and the network conditions 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からアプリ構成情報応答メッセージを受信したりする必要がなくなるため、通信遅延を低減することができる。さらには、クラウドと各拠点との間の通信トラフィックを削減することもできる。 When the first local image repository 45 receives the application configuration information request message, the first local image repository 45 stores the first pod 81, the second pod 82, and the third pod 83 constituting the application indicated by the received application configuration information request message. Images may be stored in advance. In this case, the first local image repository 45 does not send the received application configuration information request message to the origin image repository 33, and the first pod 81 and the second pod 82 configuring the application indicated by the application configuration information request message. , 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 transmits it to the first AppAPI 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 delay can be reduced. Furthermore, communication traffic between the cloud and each base can also 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 the 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 App 34 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 is composed of a first master node 41, a first worker node 52, a fourth worker node 53, and relay pods (not shown). 33, the server application corresponding to the server App 34 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. example. The identifier of each module shown in FIG. 34 is the same as each identifier 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 App 34 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 activates the client App24. The user operates the terminal device 2 and inputs an operation to the terminal device 2 for activating the client App 24 . In step S51, the terminal device 2A activates the client App 24 upon detecting this operation.

図35は、アプリ要求メッセージの一例を示す図である。ステップS52において、起動されたクライアントApp24は、サーバApp34にアプリ要求メッセージを送信する。アプリ要求メッセージは、サーバApp34に要求を送信するためのメッセージである。アプリ要求メッセージは、HTTPRequestメッセージでもよい。なお、サーバApp34は、端末機器2Aのアドレスから端末機器2Aに近い拠点が第1拠点であることを知ることができるものとする。 FIG. 35 is a diagram showing an example of an application request message. In step S52, the launched client App 24 sends an application request message to the server App 34. FIG. An application request message is a message for sending a request to the server App34. The app request message may be an HTTP Request message. It should be noted that the server App 34 can know 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 Type field, User ID field, Credential field, App ID field, and Request field. The value of the Type field is "application request" indicating the message type of the application request message. A 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 contains the user's authentication 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 App 34, specifically AppID1. A Request field indicates the request content of the client App 24 . In step S53, the server App 34 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, when the server App 34 successfully authenticates and authorizes the user, it generates a pod placement determination request message and transmits it to the first local MANO 43 in the first site. 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 App 34 . 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に示すポッド配置決定要求メッセージの構成および内容と同一である。
(Arrangement determination of the first pod 81)
Upon receiving the pod placement determination request message, the first local MANO 43 determines whether all of the first pods 81 and second pods 82 indicated by the received pod placement determination request message can be placed in each worker node within the first site. determine whether The details of the determination method are the same as those of the first embodiment, so detailed description is omitted. Here, it is assumed that the first local MANO 43 decides to place the first pod 81 on the first worker node 52 of the first MEC server 5 within the first site. Also, 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 any other first MEC server 5 within the first site. Accordingly, in step S55, the first local MANO 43 generates a pod placement determination request message and transmits it to the global MANO 31. FIG. The pod placement determination request message transmitted here is a message for requesting placement determination of the second pod 82 . Also, its configuration and content are the same as those 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に示すポッド配置決定応答メッセージの構成および内容と同一である。
(Arrangement determination of the second pod 82)
When the global MANO 31 receives the pod placement determination request message, the global MANO 31 determines whether or not to place the second pod 82 on the second MEC server 7 at the second site. Since the details of the determination method are the same as those of the first embodiment, detailed description 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 . As a result, 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. FIG. The configuration and content of the pod placement determination response message transmitted here are the same as the configuration and content of the pod placement determination response message shown in FIG.

ステップ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 content of the pod placement determination response message transmitted here are the same as the configuration and content of the pod placement determination response message shown in FIG.

図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 showing an example of a pod placement request message. In step S58, upon receiving the pod placement determination response message, the server App 34 generates a pod placement request message as shown in FIG. 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 Type field, App ID field, and 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 App 34, 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 three first pods 81 and three 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 Deployment Request message further includes, for each Pod, a quadruple field: Pod ID field, Base ID field, Node ID field, and Repository ID field. In the example of FIG. 36, placement of two first pods 81 and second pod 82 is requested, so 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 BaseID1 of the first base where the first pod 81 is arranged. The value of the Node ID field is the identifier of the first worker node 52 where the first pod 81 is located, namely 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, 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 located, namely 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 S<b>59 , 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 configuration and content of the pod placement request message sent here are the same as the configuration and content of the pod placement request message shown in FIG. Upon receiving the pod placement request message, the first worker node 52 places the first pod 81 in the first worker node 52 based on the received pod placement request message. In step S<b>60 , 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 configuration and content of the pod installation response message transmitted here are the same as the configuration and content 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 S<b>61 , 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 configuration and content of the pod placement request message transmitted here are the same as the configuration and content 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 S<b>62 , 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 configuration and content of the pod installation response message transmitted here are the same as the configuration and content of the pod installation response message shown in FIG.

図37は、ポッド配置応答メッセージの一例を示す図である。ステップS63において、第1マスターノード41は、図37に示すようなポッド配置応答メッセージを生成し、サーバApp34に送信する。図37に示すポッド配置応答メッセージの構成は、図16および図18にそれぞれ示す各ポッド配置応答メッセージを統合した構成である。すなわち、図21に示すポッド配置応答メッセージは、第1ポッド81および第2ポッド82のそれぞれの配置完了に関する情報を含んでいる。 FIG. 37 is a diagram showing an example of a pod placement response message. In step S63, the first master node 41 generates a pod arrangement response message as shown in FIG. 37 and transmits it to the server App34. The configuration of the pod placement response message shown in FIG. 37 is a configuration in which the pod placement response messages shown in FIGS. 16 and 18 are integrated. That is, the pod placement response message shown in FIG. 21 includes information regarding the 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 showing an example of an application response message. In step S64, the server App34 generates an application response message as shown in FIG. 38 and transmits it to the client App24. The application response message is a message for responding to activation of the server application corresponding to the server App34. In the example of FIG. 38, the application response message includes Type field, Status field, Redirect field, and 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 end status of processing. In this example, it is "OK" indicating normal termination of activation of the server application corresponding to the server App 34 . The Redirect field indicates the identifier of the destination module for subsequent application request messages. In the example of FIG. 38, it is the identifier of the relay pod, namely RelayPodID1. The Response field indicates the contents of the response.

以上のようにして起動された、コンテナオーケストレーションクラスタとしてのサーバアプリケーションは、第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 the container orchestration cluster activated as described above continues to run as the server App 34 through the cooperative operation of the first pod 81 and the second pod 82 . From now on, the communication partner of the client App 24 is not the server App 34 on the cloud server, but the server application as the container orchestration cluster built in the first and second bases. Therefore, in step S65, the client App24 sends a new application request message to the first worker node 52 where the first pod 81 is located, instead of the server App34 on the cloud server. When the first worker node 52 receives the application request message, the first pod 81 cooperates with the second pod 82 to perform the process requested by the application request message. At step 66, the first worker node 52 generates and sends an App Response message to the Client App 24 to respond to processing by the Server App 34 as the container orchestration cluster.

本実施形態では、コンテナオーケストレーションクラスタとしてのサーバアプリケーションが起動したことによって、第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 the container orchestration cluster, the resources available in the first MEC server 5, the second MEC server 7, and the network are consumed by the server application corresponding to the server App 34. Decrease by resources. Even after the server application corresponding to the server App 34 is activated, the container system 1A can maintain 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 The resource status of each second MEC server 7 is periodically measured. This periodically updates the network and resource conditions stored in the first local data store 44 , the second local data store 64 and the global data store 32 . Accordingly, the information stored in each of 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に示すアプリ終了要求メッセージの構成および内容と同一である。
(Stop 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 an operation to the terminal device 2A for terminating the server application that operates as the server App 34 . In step S<b>71 , when the terminal device 2</b>A detects this operation, the client App 24 generates an application termination request message for requesting termination of the server application, and transmits the message to the server App 34 . The configuration and content of the application termination request message transmitted here are the same as the configuration and content of the application termination request message shown in FIG.

サーバ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 App 34 authenticates and authorizes the user of the terminal device 2 based on the received application termination request message. In step S<b>73 , the server App 34 transmits the received application stop request message to the first master node 41 when the user authentication and authorization are successful.

第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 App 34 . In step S<b>74 , the first master node 41 generates a pod stop request message for requesting stop of the first pod 81 and transmits it to the first worker node 52 . The configuration and content of the pod stop request message transmitted here are the same as the configuration and content 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 S<b>75 , the first worker node 52 generates a pod stop response message for responding to the stop of the first pod 81 and transmits it to the first master node 41 . The configuration and content of the pod stop response message transmitted here are the same as the configuration and content of the pod stop response message shown in FIG.

第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 S<b>76 , the first master node 41 generates a pod stop request message for requesting stop of the second pod 82 and transmits it to the second worker node 72 . The configuration and content of the pod termination request message transmitted here are the same as the configuration and content of the pod termination request message shown in FIG. 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 stopping both the first pod 81 and the second pod 82, the server application corresponding to the server App 34 terminates.

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

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

ステップS80において、サーバApp34は、ネットワーク状況の測定を要求する測定要求メッセージを送信する。ここで送信される測定要求メッセージの構成および内容は、図28に示す測定要求メッセージの構成および内容と同一である。 In step S80, the server App 34 sends a measurement request message requesting measurement of network conditions. 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.

ステップ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. In step S<b>82 , the server App 34 generates a measurement request message requesting resource status measurement, and transmits the measurement request message to the first resource monitor 51 . The structure and contents of the measurement request message transmitted here are the same as those of the measurement request message shown in FIG. In step S<b>83 , the server App 34 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 those of the measurement request message shown in FIG. In step S<b>84 , the server App 34 generates a measurement request message requesting resource status measurement, and transmits it to the second resource monitor 71 . The structure and contents of the measurement request message transmitted here are the same as those of the measurement request message shown in FIG.

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

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

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

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

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

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

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

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

本発明の態様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 communicably connected to a pod placement determination device and a second pod placement determination device placed at the second site, wherein the pod placement determination device transmits and the second network status and the second resource of the second worker node during communication from the second site to the first site, which are transmitted from the second pod placement determining device. a server information storage unit for storing the received network status, resource status, second network status, and second resource status; a second server receiver for receiving a second request to the network requested by two pods and a second resource status for the resource requested by the second pod; and storing the second network status and the second resource status. and a second decision unit that decides whether to deploy the second pod on the second worker node based on the received second request for the network and the second request for the resource. It is a configuration with

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

本発明の態様9に係るコンテナシステムは、上記の態様1に係るポッド配置決定装置と、上記の態様7に係るサーバとを少なくとも備えている構成である。 A container system according to aspect 9 of the present invention includes at least the pod arrangement determination device according to aspect 1 and the server according to aspect 7 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 comprises a first edge server and a first base device arranged at a first base, a second edge server and a second base device arranged 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 for measuring a first resource status of the first worker node; a first resource status transmission unit that transmits the measured first resource status to the first base device, and the first base device is a first reception unit that receives the first resource status. a first transmission unit configured to transmit the received first resource status to the server; and the second edge server includes second worker nodes belonging to a plurality of different container orchestration clusters; 2 a second resource status measurement unit that measures resource status; and a second resource status transmission part that transmits the measured second resource status to the second base device, wherein the second base device comprises a second receiver that receives the second resource status, and a second transmitter that transmits the received second resource status to the server, wherein the server receives the first resource status and a first server reception section for receiving the second resource status, and a server information storage section for storing the received first resource status and the 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 aspect 10 above, the first base device measures a first network status during communication from the first base to the second base. section, wherein the first transmission section transmits the measured first network status and the received first resource status to the server; a second network condition measuring unit for measuring a second network condition during communication from the to the first base, the second transmitting unit measures the measured second network condition and the received second network condition; 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 the server information A storage unit stores the received first network status, first resource status, second network status, and second resource status, and the server configures an application as a container orchestration cluster. a second server receiving unit for receiving network requirements requested by one pod and resource requirements requested by the first pod; 2 network status, the second resource status, and the received request for the network and the received request for the resource, to which one of the first worker node and the second worker node the first worker node; It may be configured to determine whether to place one pod.

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

〔実現例〕
第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 on an integrated circuit (IC chip) or the like. , may be implemented by software.

後者の場合、第1拠点装置4は、各機能を実現するソフトウェアであるプログラムの命令を実行するコンピュータを備えている。このコンピュータは、例えば1つ以上のプロセッサを備えていると共に、前記プログラムを記憶したコンピュータ読み取り可能な記録媒体を備えている。そして、前記コンピュータにおいて、前記プロセッサが前記プログラムを前記記録媒体から読み取って実行することにより、本発明の目的が達成される。 In the latter case, the first base device 4 is equipped with a computer that executes instructions of programs, which are software for realizing each function. This computer includes, for example, one or more processors, and a computer-readable recording medium storing the program. 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, a "non-temporary tangible medium" such as a ROM (Read Only Memory), a tape, a disk, a card, a semiconductor memory, a programmable logic circuit, or the like can be used.

また、前記プログラムを展開するRAM(Random Access Memory)などをさらに備えていてもよい。また、前記プログラムは、該プログラムを伝送可能な任意の伝送媒体(通信ネットワークや放送波等)を介して前記コンピュータに供給されてもよい。なお、本発明の一態様は、前記プログラムが電子的な伝送によって具現化された、搬送波に埋め込まれたデータ信号の形態でも実現され得る。 Further, a RAM (Random Access Memory) for expanding the program may be further provided. Also, the program may be supplied to the computer via any transmission medium (communication network, broadcast wave, etc.) capable of transmitting the program. Note that one aspect of the present invention can also be implemented 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 are possible 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. A new technical feature can 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 apps
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 (12)

第1ワーカノードを備えている第1エッジサーバが配置される第1拠点から、第2ワーカノードを備えている第2エッジサーバが配置される第2拠点への通信時のネットワーク状況を測定する測定部と、
前記第1エッジサーバによって測定された前記第1ワーカノードのリソース状況を受信する第1受信部と、
測定されたネットワーク状況および受信されたリソース状況を保存する保存部と、
コンテナオーケストレーションクラスタとしてのアプリケーションを構成する第1ポッドが要求するネットワークへの要求事項および前記第1ポッドが要求するリソースへの要求事項を受信する第2受信部と、
保存された前記ネットワーク状況およびリソース状況と、受信された前記ネットワークへの要求事項および前記リソースへの要求事項とに基づいて、前記第1ポッドを前記第1ワーカノードに配置するか否かを決定する決定部とを備えている、ポッド配置決定装置。
A measurement unit that measures the network status during communication from a first location where a first edge server with a first worker node is located to a second location where a second edge server with a second worker node is located. When,
a first receiver that receives the resource status of the first worker node measured by the first edge server;
a storage unit for storing measured network conditions and received resource conditions;
a second receiver for receiving network requirements and resource requirements requested by the first pod, which constitutes an application as a container orchestration cluster;
determining whether to deploy the first pod on the first worker node based on the saved network and resource conditions and the received network and resource requirements; and a determining unit.
前記決定部は、前記ネットワーク状況が前記ネットワークへの要求事項を満たしており、かつ、前記リソース状況が前記リソースへの要求事項を満たしている場合、前記第1ポッドを前記第1ワーカノードに配置することを決定する、請求項1に記載のポッド配置決定装置。 The decision unit places the first pod on the first worker node when the network condition satisfies the requirements for the network and the resource condition satisfies the requirements for the resource. The pod placement determination device according to claim 1, wherein the pod placement determination device determines that: 前記第1ワーカノードは、異なる複数のコンテナオーケストレーションクラスタに属しており、
前記第1エッジサーバは、前記第1ワーカノードのリソース状況を測定するリソース状況測定部を備えている、請求項1または2に記載のポッド配置決定装置。
the first worker node belongs to a plurality of different container orchestration clusters;
3. The pod placement determination device according to claim 1, wherein said first edge server comprises a resource status measuring unit that measures resource status of said first worker node.
前記第1ポッドのイメージを保存するイメージ保存部をさらに備えている、請求項1~3のいずれか1項に記載のポッド配置決定装置。 The pod placement determination device according to any one of claims 1 to 3, further comprising an image storage unit that stores an image of said first pod. 第1ワーカノードを備えている第1エッジサーバが配置される第1拠点から、第2ワーカノードを備えている第2エッジサーバが配置される第2拠点への通信時のネットワーク状況を測定する測定ステップと、
前記第1エッジサーバによって測定された前記第1ワーカノードのリソース状況を受信する第1受信ステップと、
測定されたネットワーク状況および受信されたリソース状況を保存する保存部と、
コンテナオーケストレーションクラスタとしてのアプリケーションを構成する第1ポッドが要求するネットワークへの要求事項および前記第1ポッドが要求するリソースへの要求事項を受信する第2受信ステップと、
保存された前記ネットワーク状況およびリソース状況と、受信された前記ネットワークへの要求事項および前記リソースへの要求事項とに基づいて、前記第1ポッドを前記第1ワーカノードに配置するか否かを決定する決定ステップとを有する、ポッド配置決定方法。
A measuring step of measuring network conditions during communication from a first site where a first edge server having a first worker node is located to a second site where a second edge server having a second worker node is located. When,
a first receiving step of receiving the resource status of the first worker node measured by the first edge server;
a storage unit for storing measured network conditions and received resource conditions;
a second receiving step of receiving a network requirement and a resource requirement requested by a first pod constituting an application as a container orchestration cluster;
determining whether to deploy the first pod on the first worker node based on the saved network and resource conditions and the received network and resource requirements; A pod placement determination method, comprising: a determining step;
異なる複数のコンテナオーケストレーションクラスタに属するワーカノードと、
前記ワーカノードのリソース状況を測定する測定部と、
測定された前記リソース状況をポッド配置決定装置に送信する送信部とを備えている、エッジサーバ。
worker nodes belonging to different container orchestration clusters;
a measurement unit that measures the resource status of the worker node;
a transmitter that transmits the measured resource status to a pod placement determination device.
請求項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 server communicatively connected to the pod placement determination device according to claim 1 and a second pod placement determination device placed at the second base,
The network status and the resource status transmitted from the pod placement determination device, and the second network status and the resource status during communication from the second base to the first base, transmitted from the second pod placement determination device. a first server receiver for receiving a second resource status of a second worker node;
a server information storage unit that stores the received network status, resource status, second network status, and second resource status;
a second server receiver for receiving a second request for the network requested by the second pod constituting the application and a second resource status for the resource requested by the second pod;
transferring the second pod to the second worker node based on the saved second network status and second resource status and the received second request to the network and second request to the resource; and a second decision unit that decides whether or not to arrange.
端末機器であって、
コンテナオーケストレーションクラスタとしてのアプリケーションを構成する第1ポッドが、前記端末機器が接続されるネットワーク内のエッジサーバに配置されており、
前記アプリケーションを起動するための、前記コンテナオーケストレーションクラスタに属していない起動モジュールをさらに備えている、端末機器。
a terminal device,
A first pod configuring an application as a container orchestration cluster is arranged in an edge server in a network to which the terminal device is connected,
A terminal device, further comprising a launch module that does not belong to the container orchestration cluster, for launching the application.
請求項1に記載のポッド配置決定装置と、請求項7に記載のサーバとを少なくとも備えている、コンテナシステム。 A container system comprising at least the pod placement determination device according to claim 1 and the server according to claim 7. 第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 arranged at a first base; a second edge server and a second base device arranged at a second base; and a server,
The first edge server
a first worker node belonging to a plurality of different container orchestration clusters;
a first resource status measuring unit that measures a first resource status of the first worker node;
a first resource status transmission unit that transmits the measured first resource status to the first base device;
The first base device is
a first receiver that receives the first resource status;
a first transmission unit that transmits the received first resource status to the server;
The second edge server,
a second worker node belonging to a plurality of different container orchestration clusters;
a second resource status measuring unit that measures a second resource status of the second worker node;
a second resource status transmission unit that transmits the measured second resource status to the second base device;
The second base device is
a second receiver that receives the second resource status;
a second transmission unit configured to transmit the received second resource status to the server;
The server is
a first server receiver that receives the first resource status and the second resource status;
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ポッドを配置するかを決定する、請求項10に記載のコンテナシステム。
The first base device further comprises a first network status measurement unit that measures a first network status during communication from the first base to the second base,
The first transmission unit transmits the measured first network status and the received first resource status to the server;
The second base device further comprises a second network status measuring unit that measures a second network status during communication from the second base to the first base,
the second transmission 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 receiver for receiving network requirements and resource requirements requested by the first pod, which constitutes an application as a container orchestration cluster;
Based on the saved first network condition, the first resource condition, the second network condition, and the second resource condition, and the received request to the network and the request to the resource; 11. The container system according to claim 10, wherein it is determined to which one of the first worker node and the second worker node the first pod is placed.
請求項1に記載のポッド配置決定装置としてコンピュータを機能させるためのプログラムであって、前記測定部、前記保存部、前記第1受信部、前記第2受信部、および前記決定部としてコンピュータを機能させるためのプログラム。 A program for causing a computer to function as the pod arrangement determination device according to claim 1, wherein the computer functions as the measurement unit, the storage unit, the first reception unit, the second reception unit, and the determination unit. program to make
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 true JP2022135765A (en) 2022-09-15
JP7399427B2 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)

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

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
"通信ビルエッジを活用したGPU・データレイクの技術開発", NTT技術ジャーナル, vol. 第32巻 第12号, JPN6023009000, 1 December 2020 (2020-12-01), pages 66 - 70, ISSN: 0005006792 *
山中 広明 他: "実験環境構築が容易なエッジコンピューティングテストベッドの実装と評価", 電子情報通信学会技術研究報告, vol. 120, no. 314, JPN6023009002, 13 January 2021 (2021-01-13), pages 104 - 109, ISSN: 0005006793 *
羽原 拓哉 他: "データ収集基盤機能の動的配置手法に関する検討", 電気学会研究会資料, JPN6023008999, 1 September 2020 (2020-09-01), pages 27 - 32, ISSN: 0005006791 *

Also Published As

Publication number Publication date
JP7399427B2 (en) 2023-12-18

Similar Documents

Publication Publication Date Title
US20190356743A1 (en) Electronic device for performing network connection based on data transmission of application and method thereof
WO2018201856A1 (en) System and method for self organizing data center
CN111045816B (en) Performance optimization method and related device
US11119827B2 (en) Load balancing deterministically-subsetted processing resources using fractional loads
CN116048538B (en) Service grid deployment method and device for DPU
CN112433863A (en) Micro-service calling method and device, terminal equipment and storage medium
EP3813335B1 (en) Service processing methods and systems based on a consortium blockchain network
US10986172B2 (en) Configurable connection reset for customized load balancing
US20240147578A1 (en) Wireless communication service over an edge data network (edn) between a user equipment (ue) and an application server (as)
CN110515728A (en) Server scheduling method, apparatus, electronic equipment and machine readable storage medium
JP2022135765A (en) Device and method for determining pod, terminal apparatus, edge server, server, container system, and program
CN107306289B (en) Load balancing method and device based on cloud computing
KR20210127564A (en) Method and apparatus for dynamic and efficient load balancing in mobile communication network
US20230066929A1 (en) Dynamic Workspace Connectivity Management
CN111490997B (en) Task processing method, proxy system, service system and electronic equipment
US10778585B1 (en) Connection and application state migration for uninterrupted service availability
WO2020190189A1 (en) Management for managing resource allocation in an edge computing system
CN114064288B (en) Data link allocation method, device and equipment for distributed storage system
US20240111599A1 (en) Code execution on a distributed unit
US11245752B2 (en) Load balancing in a high-availability cluster
CN115412530B (en) Domain name resolution method and system for service under multi-cluster scene
US11683672B2 (en) Distributed ledger control over wireless network slices
US20220377146A1 (en) Apparatus and methods for dynamic scaling and orchestration
Schuhmann et al. Efficient resource-aware hybrid configuration of distributed pervasive applications
WO2019206025A1 (en) Method, device, and system for determining registration area

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