JP2017174158A - Monitoring system, monitoring method, and monitoring program - Google Patents

Monitoring system, monitoring method, and monitoring program Download PDF

Info

Publication number
JP2017174158A
JP2017174158A JP2016059528A JP2016059528A JP2017174158A JP 2017174158 A JP2017174158 A JP 2017174158A JP 2016059528 A JP2016059528 A JP 2016059528A JP 2016059528 A JP2016059528 A JP 2016059528A JP 2017174158 A JP2017174158 A JP 2017174158A
Authority
JP
Japan
Prior art keywords
monitoring
communication
container
service
containers
Prior art date
Legal status (The legal status is an assumption and is not a legal conclusion. Google has not performed a legal analysis and makes no representation as to the accuracy of the status listed.)
Granted
Application number
JP2016059528A
Other languages
Japanese (ja)
Other versions
JP6680028B2 (en
Inventor
英男 長谷川
Hideo Hasegawa
英男 長谷川
Current Assignee (The listed assignees may be inaccurate. Google has not performed a legal analysis and makes no representation or warranty as to the accuracy of the list.)
NEC Corp
Original Assignee
NEC Corp
Priority date (The priority date is an assumption and is not a legal conclusion. Google has not performed a legal analysis and makes no representation as to the accuracy of the date listed.)
Filing date
Publication date
Application filed by NEC Corp filed Critical NEC Corp
Priority to JP2016059528A priority Critical patent/JP6680028B2/en
Publication of JP2017174158A publication Critical patent/JP2017174158A/en
Application granted granted Critical
Publication of JP6680028B2 publication Critical patent/JP6680028B2/en
Active legal-status Critical Current
Anticipated expiration legal-status Critical

Links

Images

Abstract

PROBLEM TO BE SOLVED: To provide a monitoring system capable of detecting unauthorized operation by using a monitoring result of communication performed between containers.SOLUTION: A monitoring system 10 includes monitoring means 11 for monitoring communication performed between a plurality of instances that each have one of division spaces into which a user space in an operating system on a server is virtually divided and share a kernel space in the operating system.SELECTED DRAWING: Figure 1

Description

本発明は、監視システム、監視方法および監視プログラムに関し、特にコンテナの機密性を向上させる監視システム、監視方法および監視プログラムに関する。   The present invention relates to a monitoring system, a monitoring method, and a monitoring program, and more particularly to a monitoring system, a monitoring method, and a monitoring program for improving the confidentiality of a container.

仮想ソフトウェア単位の1つにコンテナがある。コンテナ型仮想化では、サーバのOS(Operating System)内のユーザ空間が仮想的に分割された空間をそれぞれ有し、OS内のカーネル空間を共用する複数のインスタンスがサーバで実行される。なお、起動したコンテナを特にインスタンスと呼ぶこともある。   One virtual software unit is a container. In container-type virtualization, a user space in an OS (Operating System) of a server has a virtually divided space, and a plurality of instances that share a kernel space in the OS are executed on the server. Note that the activated container is sometimes called an instance.

各インスタンスは、それぞれが他の環境と完全に独立した環境で実行される。よって、インスタンスが自身のコンテナ以外のコンテナのファイルにアクセスする可能性がないため、コンテナ型仮想化が導入されたサーバの機密性は、通常のサーバに比べて高い。また、コンテナ型仮想化では全てのインスタンスが同じカーネル空間を共用するため、他の仮想化に比べてリソースの利用効率が高い。   Each instance runs in an environment that is completely independent of the other environment. Therefore, since there is no possibility that an instance accesses a file in a container other than its own container, the confidentiality of a server in which container-type virtualization is introduced is higher than that of a normal server. In addition, since all instances share the same kernel space in container-type virtualization, resource utilization efficiency is higher than in other virtualization.

コンテナは、例えばLinux(登録商標)コンテナ技術とaufs(AnotherUnionFS)のような特殊なファイルシステムが利用されたコンテナ型仮想化で実現される。コンテナ型仮想化には、ハードウェアまで含めた完全な仮想化であるハイパーバイザー型仮想化に比べて、ディスク使用量が少ない、インスタンスの作成やインスタンスの起動に係る時間が短い、性能劣化が少ないという利点がある。   The container is realized by, for example, container type virtualization using a Linux (registered trademark) container technology and a special file system such as aufs (AnotherUnionFS). Container virtualization requires less disk usage, less time to create and start instances, and less performance degradation than hypervisor virtualization, which is complete virtualization including hardware. There is an advantage.

コンテナは、データを永続的に保持しない一時的なオブジェクトである。すなわちコンテナ型仮想化では、コンテナが起動すると実行中に限りインスタンス内に情報が保持される。また、コンテナの停止と共にインスタンス内に保持されていた情報は破棄される。   A container is a temporary object that does not hold data permanently. In other words, in container-type virtualization, when a container is started, information is held in the instance only during execution. In addition, the information held in the instance when the container is stopped is discarded.

コンテナを配備してサービスを提供する主体であるサービスプロバイダは、1個以上のコンテナを組み合わせることによって1つのサービスを構成する。図16は、データセンタに配備されるコンテナの例を示す説明図である。図16に示すデータセンタ100には、コンテナ20、コンテナ30、およびコンテナ40が含まれている。   A service provider, which is a subject that provides services by deploying containers, configures one service by combining one or more containers. FIG. 16 is an explanatory diagram showing an example of containers deployed in the data center. A data center 100 shown in FIG. 16 includes a container 20, a container 30, and a container 40.

図16に示すデータセンタ100は、コンテナを起動させるためのプラットフォームである。データセンタ100は、PaaS(Platform as a Service)とも呼ばれる。データセンタ100は、例えばPaaSを構築するための基盤ソフトウェアの1つであるCloud Foundryに基づいて構築されていてもよい。   A data center 100 shown in FIG. 16 is a platform for starting containers. The data center 100 is also called PaaS (Platform as a Service). The data center 100 may be constructed based on Cloud Foundry, which is one of base software for constructing PaaS, for example.

また、データセンタ100は、Cloud Foundry等がIaaS(Infrastructure as a Service)において実行されることによって構築されていてもよい。コンテナには、プライベートなIP(Internet Protocol)アドレス、またはパブリックなIPアドレスが割り当てられる。   Further, the data center 100 may be constructed by executing Cloud Foundry or the like in IaaS (Infrastructure as a Service). A private IP (Internet Protocol) address or a public IP address is assigned to the container.

データセンタ100は、外部と通信ネットワークを介して通信可能に接続されたコンテナ実行サーバを1つ以上有する。データセンタ100は、コンテナ実行サーバにおいてコンテナを起動させる。コンテナの配備および実行には利用可能なコンテナ実行環境を要するため、コンテナ実行サーバには、OSの他にコンテナ実行環境が導入されている。   The data center 100 has one or more container execution servers that are communicably connected to the outside via a communication network. The data center 100 activates the container in the container execution server. Since a container execution environment that can be used is required for container deployment and execution, a container execution environment is introduced in addition to the OS on the container execution server.

コンテナを配備する際、データセンタ100は、コンテナが配備された領域を他のコンテナが配備された領域等と物理的に、または仮想的に分離してもよい。以下の説明において、データセンタ100における領域の区画の存在を明記しないが、データセンタ100に領域の区画が存在すると解釈してもよい。   When deploying containers, the data center 100 may physically or virtually separate an area where containers are deployed from areas where other containers are deployed. In the following description, the presence of a region partition in the data center 100 is not specified, but it may be interpreted that a region partition exists in the data center 100.

サービスプロバイダは、例えばサービスプロバイダに与えられたデータセンタ100の区画に1つ以上のコンテナを配備できる。サービスプロバイダは、データセンタ100に配備対象のコンテナのコンテナイメージを与える。なお、コンテナイメージは、実行されているコンテナから生成されたイメージファイルである。   The service provider can deploy one or more containers in a section of the data center 100 given to the service provider, for example. The service provider gives the data center 100 a container image of a container to be deployed. The container image is an image file generated from the container being executed.

データセンタ100は、与えられたコンテナイメージを用いて、コンテナを起動できる。データセンタ100は、コンテナ実行サーバでコンテナを起動させる。コンテナが起動することによって、コンテナが有するコードに基づいた様々なアプリケーション機能が提供される。   The data center 100 can start a container using a given container image. The data center 100 activates the container on the container execution server. When the container is activated, various application functions based on the code of the container are provided.

図16に示すコンテナ20は、ウェブサーバの機能を提供する。また、コンテナ30は、アプリケーションサーバの機能を提供する。また、コンテナ40は、ストレージに接続されたデータベースの機能を提供する。例えば、コンテナ20とコンテナ30とコンテナ40とを組み合わせることによって、サービスプロバイダは、ウェブサービスを構成できる。   The container 20 shown in FIG. 16 provides the function of a web server. Further, the container 30 provides the function of the application server. The container 40 also provides a database function connected to the storage. For example, by combining the container 20, the container 30, and the container 40, the service provider can configure the web service.

ウェブサーバの機能を提供するコンテナ20は、通信ネットワーク等を介してクライアント端末と通信可能に接続されている。また、コンテナ同士も、通信ネットワーク等を介して通信可能に接続されている。図16に示す例において、クライアント端末からのリクエストは、例えばゲートウェイを介してコンテナ20に受信される。   The container 20 that provides the web server function is communicably connected to a client terminal via a communication network or the like. The containers are also communicably connected via a communication network or the like. In the example shown in FIG. 16, a request from a client terminal is received by the container 20 via a gateway, for example.

ウェブサーバの機能を提供するコンテナ20は、コンテンツをクライアント端末に提供する機能を有する。提供されるコンテンツの少なくとも一部は、クライアント端末からのリクエストに応じたアプリケーションロジックの実行結果である。アプリケーションロジックは、例えば、HTML(HyperText Markup Language)内の記載や、各種スクリプトプログラムの記載に基づいて定義されている。   The container 20 that provides the function of the web server has a function of providing content to the client terminal. At least a part of the provided content is an execution result of application logic in response to a request from the client terminal. The application logic is defined based on, for example, descriptions in HTML (HyperText Markup Language) and descriptions of various script programs.

アプリケーションロジックは、アプリケーションサーバの機能を提供するコンテナ30で実行される。図16に示す例において、アプリケーションロジックの少なくとも一部は、データベースを利用するロジックである。データベースを利用するアプリケーションロジックを実行する場合、コンテナ30は、データベースの機能を提供するコンテナ40に通信ネットワーク等を介して問い合わせる。   The application logic is executed in the container 30 that provides the function of the application server. In the example shown in FIG. 16, at least a part of the application logic is logic that uses a database. When executing application logic using a database, the container 30 inquires the container 40 that provides the database function via a communication network or the like.

上記のように、コンテナ同士が通信を行うことによって、クライアント端末への応答内容が作成される。なお、本明細書において起動したコンテナであるインスタンス間で行われる通信を、便宜的にコンテナ間で行われる通信という。   As described above, when the containers communicate with each other, the response content to the client terminal is created. Note that communication performed between instances that are activated containers in this specification is referred to as communication performed between containers for convenience.

図16に示すデータセンタ100の構成は、(ウェブサーバの機能を提供するコンテナ:アプリケーションサーバの機能を提供するコンテナ:データベースの機能を提供するコンテナ)=(1:1:1)の構成である。しかし、データセンタ100には、データベースの機能を提供するコンテナが複数含まれてもよい。   The configuration of the data center 100 illustrated in FIG. 16 is (container that provides the function of the web server: container that provides the function of the application server: container that provides the function of the database) = (1: 1: 1). . However, the data center 100 may include a plurality of containers that provide database functions.

また、データセンタ100の構成は、(ウェブサーバの機能を提供するコンテナ:アプリケーションサーバの機能を提供するコンテナ:データベースの機能を提供するコンテナ)=(n:m:k)の構成でもよい。なお、n、m、kは、それぞれ1以上の整数である。   The configuration of the data center 100 may be (container that provides the function of the web server: container that provides the function of the application server: container that provides the function of the database) = (n: m: k). Note that n, m, and k are each an integer of 1 or more.

図17は、データセンタに配備されるコンテナの他の例を示す説明図である。図17に示すように、データセンタ100には、コンテナ20〜コンテナ20、コンテナ30〜コンテナ30、コンテナ40〜コンテナ40が含まれている。 FIG. 17 is an explanatory diagram showing another example of containers deployed in the data center. As illustrated in FIG. 17, the data center 100 includes containers 20 1 to 20 n , containers 30 1 to 30 m , and containers 40 1 to 40 k .

コンテナ20〜コンテナ20は、全て同じ機能を提供する。コンテナ30〜コンテナ30、コンテナ40〜コンテナ40もそれぞれ同様である。ただし、コンテナ20〜コンテナ20が提供する機能、コンテナ30〜コンテナ30が提供する機能、コンテナ40〜コンテナ40が提供する機能は異なる。 The containers 20 1 to 20 n all provide the same function. The same applies to the containers 30 1 to 30 m and the containers 40 1 to 40 k . However, the functions provided by the containers 20 1 to 20 n , the functions provided by the containers 30 1 to 30 m , and the functions provided by the containers 40 1 to 40 k are different.

図17に示すコンテナ間で行われる通信は、負荷分散の対象である。例えば、コンテナ30〜コンテナ30が提供する機能を機能Aとする。また、コンテナ間で行われる通信が、ラウンドロビンで分散されるとする。図17に示す例において、コンテナ20がコンテナ30と通信を行った後、機能Aを提供するコンテナと通信を再度行う場合、コンテナ20は、コンテナ30と通信を行う。 Communication performed between containers shown in FIG. 17 is a target of load distribution. For example, a function provided by the containers 30 1 to 30 m is assumed to be a function A. Further, it is assumed that communication performed between containers is distributed by round robin. In the example shown in FIG. 17, after the container 20 1 makes a communication with the container 30 1, when communicating with the container to provide a function A again, the container 20 1 communicates with the container 30 2.

また、コンテナ実行サーバは、コンテナをスケールアウトすることによって、コンテナが処理可能な処理量を増やすことができる。また、コンテナ実行サーバは、コンテナをスケールインすることによって、コンテナが処理可能な処理量を減らすことができる。すなわち、スケールアウトおよびスケールインは、コンテナの並列度の制御処理である。   In addition, the container execution server can increase the processing amount that can be processed by the container by scaling out the container. Further, the container execution server can reduce the processing amount that can be processed by the container by scaling in the container. That is, scale-out and scale-in are control processes for the degree of parallelism of containers.

スケールアウトは、コンテナで実行可能な処理を実行できるインスタンス(すなわち、典型的には実行中のインスタンスのコピー)を、同一または異なるコンピューティングリソースに配備し、処理要求を配備されたインスタンスに分散させる制御処理である。スケールアウトが実行された場合、コンテナが処理可能な処理量が増大する。   Scale-out deploys instances that can perform processing that can be performed in a container (ie, typically a copy of a running instance) to the same or different computing resources, and distributes processing requests to the deployed instances. Control processing. When the scale-out is executed, the processing amount that can be processed by the container increases.

スケールインは、スケールアウトで配備されたインスタンスの配備を解除する処理である。スケールインが実行された場合、例えばコンピューティングリソースの消費量が処理量に対して適正な量に調整される。すなわち、リソースの消費量が抑えられる。   Scale-in is a process of canceling the deployment of an instance deployed in scale-out. When the scale-in is executed, for example, the consumption amount of the computing resource is adjusted to an appropriate amount with respect to the processing amount. That is, resource consumption is reduced.

後述のように、メッセージングサービスは、スケールインおよびスケールアウトによるインスタンスの増減に合わせてインスタンス間で負荷分散を行う。インスタンス間で負荷分散が行われる場合、高負荷に耐久可能なサービスが提供される。   As will be described later, the messaging service distributes load among instances in accordance with the increase / decrease of instances due to scale-in and scale-out. When load balancing is performed between instances, a service that can withstand high loads is provided.

例えば、実行時にリソースを多く消費するアプリケーションロジックを含むウェブサービスを構成するアプリケーションサーバの機能を提供するコンテナを考える。コンテナに対応するインスタンスの数が単位時間当たりのリクエスト数に応じて1から複数に増やされることによって、クライアント端末からの全てのリクエストに即座に応答可能な高負荷対応型サービスが提供される。   For example, consider a container that provides a function of an application server that constitutes a web service including application logic that consumes a lot of resources during execution. By increasing the number of instances corresponding to the container from one to a plurality according to the number of requests per unit time, a high-load compatible service that can immediately respond to all requests from client terminals is provided.

1つの組織には、1つ以上のコンテナグループが含まれる。また、コンテナグループには、1つ以上のインスタンスが含まれる。同じグループに属する各コンテナに対応するインスタンスは、通常同じコンテナイメージから生成されたインスタンスであるコピーインスタンスである。さらに、コンテナまたはコンテナグループを束ねる上位の単位として、サービスが定義される。   One organization includes one or more container groups. In addition, the container group includes one or more instances. An instance corresponding to each container belonging to the same group is a copy instance that is an instance normally generated from the same container image. Furthermore, a service is defined as an upper unit that bundles containers or container groups.

米国特許出願公開第2012/0159523号明細書US Patent Application Publication No. 2012/0159523 米国特許出願公開第2014/0283045号明細書US Patent Application Publication No. 2014/0283045

コンテナ間で行われる通信を監視し、監視結果を用いてコンテナに対応するインスタンス等の不正動作を検出する手段は提供されていない。   No means is provided for monitoring communications performed between containers and detecting unauthorized operations such as instances corresponding to the containers using the monitoring results.

特許文献1には、多重テナント用の多数のミドルウェア構成要素を間貸し(ホスト)する手法が記載されている。特許文献1に記載されている手法では、サンドボックスで実行されるコンテナの通信に処理を追加することが想定されている。なお、サンドボックスは、プログラムがシステムの他の部分に悪影響を及ぼすことがないように設計された環境である。しかし、特許文献1に記載されている手法では、メッセージングサービスがコンテナの通信を監視することは想定されていない。   Japanese Patent Application Laid-Open No. 2004-228561 describes a method of renting (hosting) a large number of middleware components for multiple tenants. In the method described in Patent Document 1, it is assumed that processing is added to container communication executed in the sandbox. A sandbox is an environment designed so that programs do not adversely affect other parts of the system. However, in the technique described in Patent Document 1, it is not assumed that the messaging service monitors container communication.

また、特許文献2には、通信監視の結果に基づいて通信の異常の有無を判定する手法が記載されている。しかし、特許文献2に記載されている手法では、コンテナ間で行われる通信が監視対象に含まれていない。   Patent Document 2 describes a method for determining the presence or absence of communication abnormality based on the result of communication monitoring. However, in the method described in Patent Document 2, communication performed between containers is not included in the monitoring target.

そこで、本発明は、コンテナ間で行われる通信の監視結果を用いて不正動作を検出できる監視システム、監視方法および監視プログラムを提供することを目的とする。   Accordingly, an object of the present invention is to provide a monitoring system, a monitoring method, and a monitoring program that can detect an unauthorized operation using a monitoring result of communication performed between containers.

本発明による監視システムは、サーバのオペレーティングシステム内のユーザ空間が仮想的に分割された空間をそれぞれ有しオペレーティングシステム内のカーネル空間を共用する複数のインスタンス間で行われる通信を監視する監視手段を含むことを特徴とする。   The monitoring system according to the present invention includes monitoring means for monitoring communications performed between a plurality of instances each sharing a kernel space in an operating system, each of which has a user space in a server operating system virtually divided. It is characterized by including.

本発明による監視方法は、サーバのオペレーティングシステム内のユーザ空間が仮想的に分割された空間をそれぞれ有しオペレーティングシステム内のカーネル空間を共用する複数のインスタンス間で行われる通信を監視することを特徴とする。   The monitoring method according to the present invention monitors communications performed between a plurality of instances each sharing a kernel space in an operating system, each of which has a user space in a server operating system virtually divided. And

本発明による監視プログラムは、コンピュータに、サーバのオペレーティングシステム内のユーザ空間が仮想的に分割された空間をそれぞれ有しオペレーティングシステム内のカーネル空間を共用する複数のインスタンス間で行われる通信を監視する監視処理を実行させることを特徴とする。   The monitoring program according to the present invention monitors communication performed between a plurality of instances each having a space in which a user space in a server operating system is virtually divided and sharing a kernel space in the operating system. A monitoring process is executed.

本発明によれば、コンテナ間で行われる通信の監視結果を用いて不正動作を検出できる。   According to the present invention, an unauthorized operation can be detected using a monitoring result of communication performed between containers.

本発明による監視システムの第1の実施形態の構成例を示すブロック図である。It is a block diagram which shows the structural example of 1st Embodiment of the monitoring system by this invention. 第1の実施形態の監視システム10による監視処理の動作を示すフローチャートである。It is a flowchart which shows the operation | movement of the monitoring process by the monitoring system 10 of 1st Embodiment. 本発明による監視システムの第2の実施形態の構成例を示すブロック図である。It is a block diagram which shows the structural example of 2nd Embodiment of the monitoring system by this invention. Publish/Subscribe型のメッセージキューが用いられた場合のメッセージの伝送処理の例を示す説明図である。FIG. 10 is an explanatory diagram illustrating an example of message transmission processing when a Publish / Subscribe type message queue is used. データセンタ100の構成例を示すブロック図である。2 is a block diagram illustrating a configuration example of a data center 100. FIG. 第2の実施形態のメッセージングサービス140による通信監視設定処理の動作を示すフローチャートである。It is a flowchart which shows the operation | movement of the communication monitoring setting process by the messaging service 140 of 2nd Embodiment. サービスの構成情報の例を示す説明図である。It is explanatory drawing which shows the example of the structure information of a service. PublisherリストとSubscriberリストの例を示す説明図である。It is explanatory drawing which shows the example of a Publisher list and a Subscriber list. サービスとコンテナの対応関係の例を示す説明図である。It is explanatory drawing which shows the example of the correspondence of a service and a container. 監視対象が選択されるサービス選択画面の例を示す説明図である。It is explanatory drawing which shows the example of the service selection screen from which the monitoring object is selected. 第2の実施形態の通信解析サービス160による監視結果解析処理の動作を示すフローチャートである。It is a flowchart which shows the operation | movement of the monitoring result analysis process by the communication analysis service 160 of 2nd Embodiment. メッセージングサービス140が生成した監視結果の例を示す説明図である。It is explanatory drawing which shows the example of the monitoring result which the messaging service 140 produced | generated. メッセージングサービス140が生成した監視結果の他の例を示す説明図である。It is explanatory drawing which shows the other example of the monitoring result which the messaging service 140 produced | generated. メッセージングサービス140によるウェブ画面での報告の例を示す説明図である。It is explanatory drawing which shows the example of the report by the web screen by the messaging service 140. FIG. データセンタ100の他の構成例を示すブロック図である。4 is a block diagram showing another configuration example of the data center 100. FIG. データセンタに配備されるコンテナの例を示す説明図である。It is explanatory drawing which shows the example of the container arrange | positioned at a data center. データセンタに配備されるコンテナの他の例を示す説明図である。It is explanatory drawing which shows the other example of the container arrange | positioned at a data center.

実施形態1.
以下、本発明の実施形態を、図面を参照して説明する。図1は、本発明による監視システムの第1の実施形態の構成例を示すブロック図である。本発明による監視システム10は、サーバのオペレーティングシステム内のユーザ空間が仮想的に分割された空間をそれぞれ有しオペレーティングシステム内のカーネル空間を共用する複数のインスタンス(例えば、起動したコンテナ)間で行われる通信を監視する監視手段11(例えば、メッセージングサービス140)を含む。
Embodiment 1. FIG.
Embodiments of the present invention will be described below with reference to the drawings. FIG. 1 is a block diagram showing a configuration example of a first embodiment of a monitoring system according to the present invention. The monitoring system 10 according to the present invention performs a process between a plurality of instances (for example, activated containers) each having a space in which a user space in a server operating system is virtually divided and sharing a kernel space in the operating system. Monitoring means 11 (e.g. messaging service 140) for monitoring incoming communications.

以下、監視システム10による監視処理を説明する。図2は、第1の実施形態の監視システム10による監視処理の動作を示すフローチャートである。   Hereinafter, the monitoring process by the monitoring system 10 will be described. FIG. 2 is a flowchart illustrating the operation of the monitoring process by the monitoring system 10 according to the first embodiment.

監視手段11は、監視対象のコンテナが起動したインスタンス間で行われる通信を監視する(ステップS11)。監視した後、監視システム10は、監視処理を終了する。   The monitoring unit 11 monitors communication performed between instances activated by the monitoring target container (step S11). After monitoring, the monitoring system 10 ends the monitoring process.

そのような構成により、監視システムは、コンテナ間で行われる通信の監視結果を用いて不正動作を検出できる。   With such a configuration, the monitoring system can detect an unauthorized operation using a monitoring result of communication performed between containers.

また、監視システム10は、監視手段11が通信を監視した結果である監視結果を用いて複数のインスタンス間で行われる通信のうち異常な通信を検出する検出手段(例えば、通信解析サービス160)を含んでもよい。   In addition, the monitoring system 10 includes a detection unit (for example, a communication analysis service 160) that detects abnormal communication among communication performed between a plurality of instances using a monitoring result that is a result of monitoring the communication by the monitoring unit 11. May be included.

そのような構成により、監視システムは、コンテナ間で行われる異常な通信を検出できる。   With such a configuration, the monitoring system can detect abnormal communication performed between containers.

また、監視手段11は、複数のインスタンス間で行われる通信におけるメッセージ量を集計し、メッセージ量が集計された結果を監視結果に含めてもよい。   In addition, the monitoring unit 11 may total the message amount in communication performed between a plurality of instances, and may include the result of totaling the message amount in the monitoring result.

そのような構成により、監視システムは、コンテナ間で行われる通信におけるメッセージ数またはバイト数の集計値を用いて異常な通信を検出できる。   With such a configuration, the monitoring system can detect abnormal communication using the total value of the number of messages or the number of bytes in communication performed between containers.

また、検出手段は、メッセージ量が集計された結果が示す値が所定の閾値を超えている通信を異常な通信として検出してもよい。   Further, the detecting means may detect a communication in which a value indicated by a result of totaling the message amount exceeds a predetermined threshold as an abnormal communication.

そのような構成により、監視システムは、正常な通信の範囲に対応する所定の閾値を用いて異常な通信を検出できる。   With such a configuration, the monitoring system can detect abnormal communication using a predetermined threshold corresponding to the range of normal communication.

また、検出手段は、メッセージ量が集計された結果が示す複数の値が所定の関係式を満たさない通信を異常な通信として検出してもよい。   Further, the detecting means may detect a communication in which a plurality of values indicated by a result of totaling the message amount do not satisfy a predetermined relational expression as an abnormal communication.

そのような構成により、監視システムは、正常な通信に対応する所定の関係式を用いて異常な通信を検出できる。   With such a configuration, the monitoring system can detect abnormal communication using a predetermined relational expression corresponding to normal communication.

また、監視手段11は、検出手段により検出された異常な通信の内容を所定の方法で報告してもよい。   Moreover, the monitoring means 11 may report the content of the abnormal communication detected by the detection means by a predetermined method.

そのような構成により、監視システムは、コンテナの利用者に発生した異常な通信の内容を報告できる。   With such a configuration, the monitoring system can report the contents of abnormal communication that has occurred to the container user.

また、監視手段11は、複数のインスタンス間で行われる通信のうち所定の条件を満たす通信を監視してもよい。   The monitoring unit 11 may monitor communication that satisfies a predetermined condition among communication performed between a plurality of instances.

また、所定の条件を満たす通信は、予め定義されたPublisherリスト、またはSubscriberリストに示されているコンテナに対応するインスタンス間で行われる通信でもよい。   Further, the communication satisfying the predetermined condition may be communication performed between instances corresponding to containers defined in a predefined Publisher list or Subscriber list.

また、所定の条件を満たす通信は、予め定義されたサービスを構成するコンテナに対応するインスタンス間で行われる通信でもよい。   Further, the communication that satisfies the predetermined condition may be communication performed between instances corresponding to containers that constitute a predefined service.

そのような構成により、監視システムは、通信の監視に係る負担を軽減できる。   With such a configuration, the monitoring system can reduce the burden on communication monitoring.

また、監視手段11は、予め定義されたサンプリングルールに基づいてサンプリングされた監視結果を検出手段に入力してもよい。   In addition, the monitoring unit 11 may input a monitoring result sampled based on a predefined sampling rule to the detection unit.

そのような構成により、監視システムは、所定の条件を満たす監視結果を用いて異常な通信を検出できる。   With such a configuration, the monitoring system can detect abnormal communication using a monitoring result that satisfies a predetermined condition.

実施形態2.
[構成の説明]
次に、本発明の第2の実施形態を、図面を参照して説明する。図3は、本発明による監視システムの第2の実施形態の構成例を示すブロック図である。図3に示すように、本実施形態の監視システム10は、データセンタ100と、クライアント端末201〜クライアント端末20Kと、通信ネットワーク300とを含む。なお、Kは1以上の整数である。
Embodiment 2. FIG.
[Description of configuration]
Next, a second embodiment of the present invention will be described with reference to the drawings. FIG. 3 is a block diagram showing a configuration example of the second embodiment of the monitoring system according to the present invention. As shown in FIG. 3, the monitoring system 10 of this embodiment includes a data center 100, client terminals 201 to 20 </ b> K, and a communication network 300. K is an integer of 1 or more.

また、図3に示すように、データセンタ100は、ゲートウェイ110と、コンテナ実行サーバ121〜コンテナ実行サーバ12Mと、コンテナ131〜コンテナ13Nと、メッセージングサービス140と、構成管理手段150と、通信解析サービス160とを含む。なお、M、Nは、それぞれ1以上の整数である。   As shown in FIG. 3, the data center 100 includes a gateway 110, a container execution server 121 to a container execution server 12M, a container 131 to a container 13N, a messaging service 140, a configuration management unit 150, and a communication analysis service. 160. M and N are each an integer of 1 or more.

ゲートウェイ110は、クライアント端末からの接続を受け付ける機能を有する。ゲートウェイ110は、例えばTLS(Transport Layer Security)を用いてクライアント端末からの接続を受け付けることによって、クライアント端末が通信ネットワーク300を介して送受信するデータを暗号化してもよい。   The gateway 110 has a function of accepting a connection from a client terminal. The gateway 110 may encrypt data transmitted and received by the client terminal via the communication network 300 by accepting a connection from the client terminal using, for example, TLS (Transport Layer Security).

また、ゲートウェイ110は、物理的な装置でもよいし、VM(Virtual Machine:仮想マシン)でもよい。また、ゲートウェイ110は、冗長に構成されていてもよく、さらにクライアント端末からの接続が負荷分散されるように構成されていてもよい。さらに、ゲートウェイ110は、他のデータセンタと接続可能なインタフェースでもよい。   The gateway 110 may be a physical device or a VM (Virtual Machine). The gateway 110 may be configured to be redundant, and may be configured to load balance connections from client terminals. Further, the gateway 110 may be an interface that can be connected to another data center.

コンテナ実行サーバ121〜コンテナ実行サーバ12Mには、コンテナを配備し、コンテナを実行するためのプラットフォームソフトウェアが含まれる。プラットフォームソフトウェアは、例えばDockerである。   The container execution server 121 to the container execution server 12M include platform software for deploying containers and executing the containers. The platform software is Docker, for example.

コンテナ実行サーバは、例えばクラスタサーバである。また、コンテナ実行サーバは、物理サーバでもよいし、仮想サーバでもよい。また、コンテナ実行サーバ121〜コンテナ実行サーバ12Mは、通信ネットワーク等を介して通信可能に接続されている。   The container execution server is, for example, a cluster server. The container execution server may be a physical server or a virtual server. Further, the container execution server 121 to the container execution server 12M are communicably connected via a communication network or the like.

コンテナ実行サーバは、CPU(Central Processing Unit)、メモリ、ディスク、ネットワーク等のリソースを物理的、または仮想的に有する。コンテナ実行サーバで実行されるOSに、コンテナ実行サーバが有するリソースが提供される。   The container execution server physically or virtually has resources such as a CPU (Central Processing Unit), a memory, a disk, and a network. Resources that the container execution server has are provided to the OS executed by the container execution server.

OSは、プラットフォームソフトウェアにリソースを提供する。OSからリソースを提供されると、プラットフォームソフトウェアは、コンテナ実行環境にコンテナを配備し、配備されたコンテナを実行する。   The OS provides resources to the platform software. When resources are provided from the OS, the platform software deploys the container in the container execution environment and executes the deployed container.

メッセージングサービス140は、コンテナ131〜コンテナ13N間で行われる通信を媒介する機能を有する。すなわち、メッセージングサービス140は、コンテナ131〜コンテナ13Nに対してメッセージバスとして振る舞う。また、メッセージングサービス140は、受け付けられたクライアント端末からのリクエストをコンテナへ伝送してもよい。   The messaging service 140 has a function of mediating communication performed between the containers 131 to 13N. That is, the messaging service 140 behaves as a message bus for the containers 131 to 13N. Further, the messaging service 140 may transmit a request from the accepted client terminal to the container.

本実施形態においてコンテナ間で行われる通信は、メッセージングサービス140を介したメッセージ交換形式で行われる。なお、コンテナ間で行われる通信は、他の形式で行われてもよい。   Communication performed between containers in the present embodiment is performed in a message exchange format via the messaging service 140. Note that communication performed between containers may be performed in other formats.

また、信頼性の向上等を目的として、メッセージの伝送には、Publish/Subscribe型のメッセージキューが用いられてもよい。Publish/Subscribe型のメッセージキューが用いられる場合、メッセージを送信するコンテナは、メッセージバスにPublishの処理を行った後にメッセージバスにメッセージを送る。メッセージを受信するコンテナは、メッセージバスにSubscribeの処理を予め行い、所定の条件を満たすメッセージの受信を予約する。   For the purpose of improving reliability, a Publish / Subscribe type message queue may be used for message transmission. When a Publish / Subscribe type message queue is used, a container that sends a message sends a message to the message bus after performing a Publish process on the message bus. A container that receives a message performs a Subscribe process on the message bus in advance and reserves reception of a message that satisfies a predetermined condition.

図4は、Publish/Subscribe型のメッセージキューが用いられた場合のメッセージの伝送処理の例を示す説明図である。図4に示すように、メッセージを送信するコンテナ131は、メッセージバスにPublish”aaa”の処理を行った後にメッセージバスにメッセージを送る。また、メッセージを受信するコンテナ133は、メッセージバスにSubscribe”aaa”の処理を予め行う。従って、コンテナ131からコンテナ133に、”aaa”に関するメッセージが確実に伝送される。   FIG. 4 is an explanatory diagram showing an example of message transmission processing when a Publish / Subscribe type message queue is used. As shown in FIG. 4, the container 131 that transmits a message sends a message to the message bus after performing a Publish “aaa” process on the message bus. Further, the container 133 that receives the message performs the process of Subscribe “aaa” in advance on the message bus. Therefore, the message regarding “aaa” is reliably transmitted from the container 131 to the container 133.

メッセージングサービス140は、メッセージが宛先のコンテナに届けられるために使用されるコンテナの配備先に関する情報を保持している。なお、メッセージングサービス140は、コンテナがメッセージバスにSubscribeの処理を行った際にコンテナの配備先に関する情報を取得してもよい。   The messaging service 140 maintains information about where the container is deployed that is used to deliver the message to the destination container. Note that the messaging service 140 may acquire information regarding the container deployment destination when the container performs a Subscribe process on the message bus.

メッセージングサービス140は、例えばデータベースにコンテナ131〜コンテナ13Nの配備先に関する情報を保持する。データベースは、例えばオンメモリデータベースである。   For example, the messaging service 140 holds information on the deployment destinations of the containers 131 to 13N in a database. The database is, for example, an on-memory database.

後述のように、コンテナに対してスケールアウトの処理が実行され、複数のインスタンスが実行されている場合、コンテナグループが形成される。データベースには、コンテナグループに含まれるコンテナに対応するインスタンスそれぞれの配備先に関する情報が保持される。   As will be described later, when a scale-out process is executed for a container and a plurality of instances are executed, a container group is formed. The database holds information related to the deployment destinations of the instances corresponding to the containers included in the container group.

クライアント端末からのアクセス要求に含まれるURL(Uniform Resource Locator)がスケールアウトの処理が実行されたコンテナに対応するインスタンスを示す場合、メッセージングサービス140は、例えばコンテナグループに含まれるいずれかのインスタンスを所定の規則に従って選択する。次いで、メッセージングサービス140は、選択されたインスタンスにアクセス要求を振り分ける。所定の規則は、例えばラウンドロビンである。   When the URL (Uniform Resource Locator) included in the access request from the client terminal indicates an instance corresponding to the container on which the scale-out process has been executed, the messaging service 140 specifies one of the instances included in the container group, for example. Select according to the rules. The messaging service 140 then routes the access request to the selected instance. The predetermined rule is, for example, round robin.

また、メッセージングサービス140は、メッセージを監視する機能を有する。メッセージングサービス140は、所定のメッセージを監視対象にすることができる。   The messaging service 140 has a function of monitoring messages. The messaging service 140 can target a predetermined message.

例えば、メッセージングサービス140は、全てのメッセージを監視対象にすることができる。全てのメッセージが監視対象である場合、メッセージングサービス140は、漏れなくメッセージを監視できる。   For example, the messaging service 140 can target all messages. If all messages are monitored, the messaging service 140 can monitor the messages without omission.

また、例えばメッセージングサービス140は、Publisherリスト、またはSubscriberリストのうち少なくとも1つのリストを有してもよい。リストを有する場合、メッセージングサービス140は、リストに含まれるPublisherに関するメッセージ、またはSubscriberに関するメッセージを監視対象にすることができる。リストに関連するメッセージが監視対象である場合、メッセージングサービス140の監視に係る負荷が軽減される。   For example, the messaging service 140 may have at least one list of a Publisher list or a Subscriber list. In the case of having a list, the messaging service 140 can monitor messages regarding Publishers or messages regarding Subscribers included in the list. When the message related to the list is the monitoring target, the load related to the monitoring of the messaging service 140 is reduced.

また、例えばメッセージングサービス140は、サービスを構成するコンテナに対応するインスタンスのリストを有してもよい。リストを有する場合、メッセージングサービス140は、管理者等が予め指定したサービスを構成するコンテナに対応するインスタンスに関するメッセージを監視対象にすることができる。   Also, for example, the messaging service 140 may have a list of instances corresponding to the containers that make up the service. In the case of having a list, the messaging service 140 can monitor a message related to an instance corresponding to a container constituting a service designated in advance by an administrator or the like.

リストに関連するメッセージが監視対象である場合、メッセージングサービス140の監視に係る負荷が軽減されつつ、重要なサービス等の所望のサービスを構成するコンテナに関するメッセージが監視される。   When a message related to the list is a monitoring target, a message related to a container constituting a desired service such as an important service is monitored while a load related to monitoring of the messaging service 140 is reduced.

また、メッセージングサービス140は、監視対象のメッセージを監視した際、様々な処理を行うことによって監視結果を作成する。   In addition, when the message to be monitored is monitored, the messaging service 140 creates a monitoring result by performing various processes.

例えば、メッセージングサービス140は、メッセージ数を集計することによって監視結果を作成してもよい。メッセージングサービス140が通信解析サービス160に監視結果であるメッセージ数の集計値を提供する場合、通信解析サービス160は、コンテナ間で行われる通信の粗密の度合いを解析できる。例えば、通信解析サービス160は、通常殆ど通信が行われないコンテナ間で通信が多く行われている特殊な事象を抽出できる。   For example, the messaging service 140 may create the monitoring result by counting the number of messages. When the messaging service 140 provides the communication analysis service 160 with the total value of the number of messages as a monitoring result, the communication analysis service 160 can analyze the degree of density of communication performed between containers. For example, the communication analysis service 160 can extract a special event in which a large amount of communication is performed between containers that normally do not perform communication.

また、例えばメッセージングサービス140は、ポリシに基づいて抽出されたメッセージを取得することによって監視結果を作成してもよい。ポリシにはアクセスポリシ、セキュリティポリシ等が含まれる。例えば、他の情報に比べて機密性の高い情報が格納されているデータソースへの不正なアクセスを禁じるポリシが予めメッセージングサービス140に与えられる場合を想定する。   Further, for example, the messaging service 140 may create a monitoring result by acquiring a message extracted based on a policy. The policy includes an access policy, a security policy, and the like. For example, assume that the messaging service 140 is preliminarily given a policy that prohibits unauthorized access to a data source in which highly confidential information is stored compared to other information.

不正なアクセスを禁じるポリシが予め与えられると、メッセージングサービス140は、例えばポリシが示すデータソースへのアクセス要求を取得する。データソースへのアクセス要求は、例えば所定のURLへのアクセス要求、所定のファイルへのアクセス要求、または所定のテーブルへのアクセス要求である。メッセージングサービス140は、例えばデータソースへのアクセス回数やアクセス頻度を取得する。   If a policy prohibiting unauthorized access is given in advance, the messaging service 140 acquires an access request to the data source indicated by the policy, for example. The access request to the data source is, for example, an access request to a predetermined URL, an access request to a predetermined file, or an access request to a predetermined table. The messaging service 140 acquires, for example, the number of accesses to the data source and the access frequency.

メッセージングサービス140は、監視結果を通信解析サービス160に送信できる。監視結果が提供されると、通信解析サービス160は、例えば、通信が行われたコンテナ間に関するコンテキストに基づいて監視結果を解析できる。例えば、通信解析サービス160は、通常より高い頻度で所定のテーブルへのアクセスが行われている事象を検出できる。   The messaging service 140 can send the monitoring result to the communication analysis service 160. When the monitoring result is provided, the communication analysis service 160 can analyze the monitoring result based on, for example, a context regarding containers in which communication has been performed. For example, the communication analysis service 160 can detect an event in which a predetermined table is accessed more frequently than usual.

構成管理手段150は、コンテナイメージを保存および管理する機能を有する。構成管理手段150は、サービスの状況、コンテナグループの状況、およびコンテナの状況をそれぞれ把握した上でコンテナイメージを管理する。   The configuration management unit 150 has a function of storing and managing container images. The configuration management unit 150 manages the container image after grasping the service status, the container group status, and the container status.

なお、構成管理手段150は、コンテナに対応するインスタンスの配備先に関する情報を保持してもよい。インスタンスの配備先に関する情報を保持する場合、構成管理手段150は、保持されている情報をメッセージングサービス140に提供してもよい。また、構成管理手段150は、後述するサービスの構成情報を管理してもよい。   Note that the configuration management unit 150 may hold information related to the deployment destination of the instance corresponding to the container. When the information regarding the instance deployment destination is retained, the configuration management unit 150 may provide the retained information to the messaging service 140. In addition, the configuration management unit 150 may manage service configuration information, which will be described later.

通信解析サービス160は、メッセージングサービス140から受信した監視結果を解析する機能を有する。通信解析サービス160は、例えば以下の方法のうち少なくともいずれか1つの方法で監視結果を解析する。   The communication analysis service 160 has a function of analyzing the monitoring result received from the messaging service 140. For example, the communication analysis service 160 analyzes the monitoring result by at least one of the following methods.

例えば、通信解析サービス160は、コンテナに関するネットワークトラフィック(通信量)の状況を示すプロファイル(分析結果)を作成し、作成されたプロファイルから悪意のあるソフトウェア(マルウェアともいう。)、ウィルス、または異常事象を特定する。   For example, the communication analysis service 160 creates a profile (analysis result) indicating the status of the network traffic (communication volume) related to the container, and malicious software (also referred to as malware), virus, or abnormal event from the created profile. Is identified.

また、例えば、通信解析サービス160は、ポリシに反する操作を特定する。ポリシに反する操作は、例えば標準ポート以外のポートを用いたアプリケーションの実行、コンテナやユーザによる重要なコンテナやサーバへの平文のユーザ名とパスワードでのログオン、ネットワーク内の機密領域での非暗号化プロトコルの使用である。   Further, for example, the communication analysis service 160 identifies an operation that violates the policy. Operations that violate the policy include, for example, execution of applications using ports other than the standard port, logon of important containers and servers by containers and users with plain text user names and passwords, and unencryption in confidential areas within the network Use of the protocol.

また、例えば、通信解析サービス160は、コンテナに関する通信データと、セキュリティデバイスから送信されたイベントを示すログを比較することによって、発見されない可能性がある重大な脅威を発見する。   In addition, for example, the communication analysis service 160 finds a serious threat that may not be detected by comparing communication data related to the container with a log indicating an event transmitted from the security device.

具体的には、通信解析サービス160は、例えば以下のように通信状態を分析できる。   Specifically, the communication analysis service 160 can analyze the communication state as follows, for example.

例えば、通信解析サービス160は、メッセージングサービス140から提供されたメッセージ数の集計値に基づいて異常事象を検出できる。絶対量や頻度等のコンテナ間の通信量は、クライアント端末からのアクセスの種別およびアクセス頻度にほぼ依存する。   For example, the communication analysis service 160 can detect an abnormal event based on the total value of the number of messages provided from the messaging service 140. The amount of communication between containers such as the absolute amount and the frequency almost depends on the type of access from the client terminal and the access frequency.

上記のコンテナ間の通信量の性質を用いて、通信解析サービス160は、コンテナ間の通信量の正常な範囲を定義できる。定義された正常な範囲を超えたコンテナ間の通信量が検出された場合、通信解析サービス160は、監視結果に関連するコンテナに関する異常を通知する。   The communication analysis service 160 can define the normal range of the traffic between containers using the property of the traffic between containers. When the communication amount between containers exceeding the defined normal range is detected, the communication analysis service 160 notifies an abnormality related to the container related to the monitoring result.

コンテナ間の通信量の正常な範囲は、例えば以下のいずれかの方法で定義される。正常な範囲は、以下のいずれかの方法が単独で利用された上で定義されてもよいし、複数の方法が組み合わせられて利用された上で定義されてもよい。   The normal range of communication volume between containers is defined by, for example, one of the following methods. The normal range may be defined after any one of the following methods is used alone, or may be defined after a plurality of methods are used in combination.

1)閾値型;例えば、通信解析サービス160は、コンテナの組み合わせ毎、送信コンテナ毎、または受信コンテナ毎に、コンテナ間の通信量の上限または下限を定義する。コンテナ間の通信量が定義された上限または下限を超えた場合、通信解析サービス160は、例えば組み合わせられたコンテナ、送信コンテナ、または受信コンテナのいずれかに関する警報を通知する。なお、通信解析サービス160は、通信量の上限と下限の両方を定義してもよい。   1) Threshold type: For example, the communication analysis service 160 defines an upper limit or a lower limit of the communication amount between containers for each combination of containers, for each transmission container, or for each reception container. When the amount of communication between containers exceeds a defined upper limit or lower limit, the communication analysis service 160 notifies an alarm regarding, for example, a combined container, transmission container, or reception container. Note that the communication analysis service 160 may define both an upper limit and a lower limit of the traffic.

2)ベースライン型;例えば、通信解析サービス160は、コンテナの組み合わせ毎、送信コンテナ毎、または受信コンテナ毎に、コンテナ間の通信量の、時刻、曜日、月、年等の周期的単位毎の正常な範囲(以下、ベースラインという。)を定義する。すなわち、通信解析サービス160は、周期的に変化する閾値を定義する。   2) Baseline type; for example, the communication analysis service 160 is provided for each periodic unit such as time, day of the week, month, year, etc. Define the normal range (hereinafter referred to as the baseline). That is, the communication analysis service 160 defines a threshold value that changes periodically.

メッセージのメッセージ数またはバイト数の集計結果は、サービスが安定して提供されている間、リクエスト数に応じた範囲で推移する。通信解析サービス160は、例えば所定の期間が1周期であるベースラインをN周期分の平均値を用いて作成する。所定の期間は、例えば1日である。   The result of counting the number of messages or the number of bytes of the message changes within a range corresponding to the number of requests while the service is stably provided. The communication analysis service 160 creates, for example, a baseline having a predetermined period of one cycle using an average value for N cycles. The predetermined period is, for example, one day.

コンテナ間の通信量がベースラインを超えた場合、通信解析サービス160は、例えば組み合わせられたコンテナ、送信コンテナ、または受信コンテナのいずれかに関する警報を通知する。   When the amount of communication between containers exceeds the baseline, the communication analysis service 160 notifies, for example, an alarm regarding any of the combined container, transmission container, or reception container.

3)統計型;例えば、通信解析サービス160は、コンテナの組み合わせ毎、送信コンテナ毎、または受信コンテナ毎に、コンテナ間の通信量の2以上の値に対して相関関係を定義する。   3) Statistical type; For example, the communication analysis service 160 defines a correlation with respect to two or more values of the traffic between containers for each combination of containers, for each transmission container, or for each reception container.

通信解析サービス160は、所定期間における時系列の値を用いて相関関係を定義してもよい。モデル化された相関関係を定義するために、通信解析サービス160は、線形関数、自己回帰線形関数、確率分布等を用いてもよいし、マハラノビス距離等の統計手法を用いてもよい。なお、マハラノビス距離は、マハラノビスモデルにおける距離である。   The communication analysis service 160 may define the correlation using time-series values in a predetermined period. In order to define the modeled correlation, the communication analysis service 160 may use a linear function, an autoregressive linear function, a probability distribution, or the like, or may use a statistical method such as Mahalanobis distance. The Mahalanobis distance is a distance in the Mahalanobis model.

定義された相関関係が維持されなくなった時、通信解析サービス160は、例えば相関関係を維持しない値に関連するコンテナに関する警報を通知する。相関関係に線形関数、または自己回帰線形関数が用いられた場合、通信解析サービス160は、例えば相関関係に基づいて一方の通信量から予測される他方の通信量の予測値が、観測値と所定値以上乖離した場合に警報を通知する。   When the defined correlation is no longer maintained, the communication analysis service 160 notifies an alert regarding a container related to a value that does not maintain the correlation, for example. When a linear function or an autoregressive linear function is used for the correlation, the communication analysis service 160 determines that, for example, the predicted value of the other communication amount predicted from one communication amount based on the correlation is the observed value and the predetermined value. An alarm is notified when the value deviates more than the value.

また、相関関係に確率分布が用いられた場合、通信解析サービス160は、例えば一方の通信量に対して他方の通信量の観測値が得られる確率が所定値以下である場合に警報を通知する。すなわち、通信解析サービス160は、他方の通信量の観測値が通常観測されない値である場合に警報を通知する。   In addition, when a probability distribution is used for the correlation, the communication analysis service 160 notifies an alarm when, for example, the probability that an observed value of the other communication amount is obtained for one communication amount is equal to or less than a predetermined value. . That is, the communication analysis service 160 notifies an alarm when the observed value of the other traffic is a value that is not normally observed.

また、相関関係にマハラノビス距離が用いられた場合、通信解析サービス160は、例えばコンテナ間の通信量の2以上の値を用いて算出されるマハラノビス距離が所定値以上である場合に警報を通知する。   In addition, when the Mahalanobis distance is used for the correlation, the communication analysis service 160 notifies an alarm when the Mahalanobis distance calculated using, for example, two or more values of the traffic between containers is equal to or greater than a predetermined value. .

[動作の説明]
以下、本実施形態の監視システム10の動作を図5〜図14を参照して説明する。
[Description of operation]
Hereinafter, the operation of the monitoring system 10 of the present embodiment will be described with reference to FIGS.

図5は、データセンタ100の構成例を示すブロック図である。図5に示すように、コンテナ実行サーバ121は、コンテナ131とコンテナ132を実行している。また、コンテナ実行サーバ122は、コンテナ133とコンテナ134を実行している。なお、コンテナ131、コンテナ132、コンテナ133、およびコンテナ134の各名称は、それぞれContainer_101、Container_102、Container_200、Container_300である。   FIG. 5 is a block diagram illustrating a configuration example of the data center 100. As shown in FIG. 5, the container execution server 121 executes a container 131 and a container 132. Further, the container execution server 122 executes the container 133 and the container 134. The names of the container 131, the container 132, the container 133, and the container 134 are Container_101, Container_102, Container_200, and Container_300, respectively.

また、図5に示すように、Container_101とContainer_102は、コンテナグループであるContainer_Group_1に属している。また、図5に示すように、Container_101は、通信経路171を介してContainer_200と通信可能に接続されている。また、Container_102は、通信経路172を介してContainer_200と通信可能に接続されている。また、Container_200は、通信経路173を介してContainer_300と通信可能に接続されている。   Further, as shown in FIG. 5, Container_101 and Container_102 belong to Container_Group_1 which is a container group. As shown in FIG. 5, Container_101 is communicably connected to Container_200 via a communication path 171. Further, Container_102 is communicably connected to Container_200 via a communication path 172. Container_200 is communicably connected to Container_300 via a communication path 173.

本例におけるデータセンタ100の構成が図5に示すような構成であることを前提に、監視システム10の動作を説明する。最初に、メッセージングサービス140がコンテナ間で行われる通信の監視の設定を行う処理を説明する。図6は、第2の実施形態のメッセージングサービス140による通信監視設定処理の動作を示すフローチャートである。   The operation of the monitoring system 10 will be described on the assumption that the configuration of the data center 100 in this example is the configuration shown in FIG. First, a process for setting the monitoring of communication performed between the containers by the messaging service 140 will be described. FIG. 6 is a flowchart illustrating the operation of the communication monitoring setting process by the messaging service 140 according to the second embodiment.

メッセージングサービス140は、ユーザから指定されたサービスの構成情報を取得する(ステップS101)。   The messaging service 140 acquires service configuration information designated by the user (step S101).

図7は、サービスの構成情報の例を示す説明図である。ステップS101で、メッセージングサービス140は、図7に示すような構成情報を取得する。   FIG. 7 is an explanatory diagram illustrating an example of service configuration information. In step S101, the messaging service 140 acquires configuration information as shown in FIG.

図7に示すように、サービスの構成情報は、コンテナの階層構造を示す。コンテナの階層構造において、サービスは、最上位の構成単位である。また、サービスは、サービス詳細を含む。すなわち、サービスは、サービス詳細の検索キーとして用いられる。   As shown in FIG. 7, the service configuration information indicates a hierarchical structure of containers. In the container hierarchical structure, a service is the highest-level constituent unit. The service also includes service details. That is, the service is used as a service detail search key.

また、図7に示すように、サービス詳細は、コンテナグループおよびコンテナを含む。また、コンテナグループは、コンテナグループ詳細を含む。すなわち、コンテナグループは、コンテナグループ詳細の検索キーとして用いられる。   As shown in FIG. 7, the service details include a container group and a container. The container group includes details of the container group. That is, the container group is used as a search key for container group details.

また、図7に示すように、コンテナグループ詳細は、コンテナを含む。メッセージングサービス140は、ユーザから指定されたサービスを検索キーとして用いることによって、サービスを構成するコンテナの情報を得ることができる。   Further, as shown in FIG. 7, the container group details include containers. The messaging service 140 can obtain information on containers constituting the service by using the service designated by the user as a search key.

次いで、メッセージングサービス140は、各通信経路にコンテナ間で行われる通信に対する監視設定を行う(ステップS102)。なお、メッセージングサービス140は、設定対象の通信経路が削除された監視設定が存在する場合、ステップS102で対象の監視設定を削除する。   Next, the messaging service 140 performs monitoring setting for communication performed between containers on each communication path (step S102). Note that if there is a monitoring setting in which the setting target communication path is deleted, the messaging service 140 deletes the target monitoring setting in step S102.

例えば、全てのメッセージを監視する場合、メッセージングサービス140は、メッセージングサービス140に入力された全てのメッセージが監視対象になるような監視設定を行う。   For example, when all messages are monitored, the messaging service 140 performs monitoring setting so that all messages input to the messaging service 140 are monitored.

また、例えば、Publisherリスト、またはSubscriberリストに基づいて監視する場合、メッセージングサービス140は、Publisherリスト、またはSubscriberリストを予め取得する。図8は、PublisherリストとSubscriberリストの例を示す説明図である。   For example, when monitoring based on a Publisher list or a Subscriber list, the messaging service 140 acquires the Publisher list or the Subscriber list in advance. FIG. 8 is an explanatory diagram illustrating an example of a Publisher list and a Subscriber list.

Publisherリスト、またはSubscriberリストが与えられた場合、メッセージングサービス140は、入力されたメッセージの送信元、またはメッセージの宛先を与えられたリストと照合する。照合することによって、メッセージングサービス140は、入力されたメッセージが監視対象のメッセージであるか否かを判断する。   Given a Publisher list or Subscriber list, the messaging service 140 checks the source of the input message or the destination of the message against the provided list. By matching, the messaging service 140 determines whether the input message is a message to be monitored.

また、管理者等が予め指定したサービスが監視対象になる場合、メッセージングサービス140は、サービスとコンテナの対応関係を示すリストを予め取得する。また、メッセージングサービス140は、監視対象のサービスのリストも予め取得する。メッセージングサービス140は、監視対象のサービスを構成するコンテナに関するメッセージであるか否かを判断する。   Further, when a service designated in advance by an administrator or the like is to be monitored, the messaging service 140 obtains a list indicating the correspondence between the service and the container in advance. The messaging service 140 also acquires a list of services to be monitored in advance. The messaging service 140 determines whether the message is related to a container constituting the service to be monitored.

図9は、サービスとコンテナの対応関係の例を示す説明図である。図9に示すサービス名は、図7に示す定義されたサービス名である。また、図9に示す監視は、監視対象のサービスと監視対象外のサービスのいずれであるかを示す。Trueは、監視対象のサービスであることを意味する。また、Falseは、監視対象外のサービスであることを意味する。また、図9に示すコンテナリストには、サービス名が示すサービスにおける監視対象のコンテナが含まれる。   FIG. 9 is an explanatory diagram illustrating an example of a correspondence relationship between a service and a container. The service name shown in FIG. 9 is the defined service name shown in FIG. Further, the monitoring shown in FIG. 9 indicates whether the service is a monitoring target service or a non-monitoring target service. True means it is a monitored service. Further, False means that the service is not monitored. Further, the container list shown in FIG. 9 includes containers to be monitored in the service indicated by the service name.

また、ユーザは、画面インタフェースを介して監視対象のサービスおよびコンテナをメッセージングサービス140に入力してもよい。図10は、監視対象が選択されるサービス選択画面の例を示す説明図である。図10には、サービス選択画面と、コンテナ選択画面が示されている。   In addition, the user may input the monitored service and container to the messaging service 140 via the screen interface. FIG. 10 is an explanatory diagram illustrating an example of a service selection screen on which a monitoring target is selected. FIG. 10 shows a service selection screen and a container selection screen.

図10に示すサービス選択画面を用いる場合、ユーザは、サービスが列挙されたリストの中から監視対象のサービスを選択し、「OK」ボタンを押下して選択内容を確定させる。次いで、コンテナ選択画面が表示される。   When the service selection screen shown in FIG. 10 is used, the user selects a service to be monitored from the list in which the services are listed, and presses an “OK” button to confirm the selection contents. Next, a container selection screen is displayed.

コンテナ選択画面が表示された後、ユーザは、サービスを構成する全コンテナが監視対象になるようにコンテナを選択し、「OK」ボタンを押下して選択内容を確定させる。または、コンテナ選択画面が表示された後、ユーザは、サービスを構成する全コンテナのうちの一部のコンテナが監視対象になるようにコンテナをさらに選択し、「OK」ボタンを押下して選択内容を確定させてもよい。   After the container selection screen is displayed, the user selects a container so that all containers constituting the service are to be monitored, and presses an “OK” button to confirm the selection. Alternatively, after the container selection screen is displayed, the user further selects a container so that a part of all the containers constituting the service becomes a monitoring target, and presses an “OK” button to select the content. May be confirmed.

次いで、メッセージングサービス140は、監視設定を行う対象の通信経路、および通信経路が存在しない削除対象の監視設定があるか否かを確認する(ステップS103)。まだ監視設定が行われていない通信経路、および削除されていない監視設定がある場合(ステップS103におけるYes)、メッセージングサービス140は、再度ステップS102の処理を行う。   Next, the messaging service 140 checks whether or not there is a communication path to be monitored and a deletion target monitoring setting for which no communication path exists (step S103). If there is a communication path that has not been set for monitoring and a monitoring setting that has not been deleted (Yes in step S103), the messaging service 140 performs the process of step S102 again.

監視設定が行われていない通信経路、および削除されていない監視設定がない場合(ステップS103におけるNo)、メッセージングサービス140は、通信監視設定処理を終了する。   If there is no communication path for which monitoring setting has not been performed and no monitoring setting has not been deleted (No in step S103), the messaging service 140 ends the communication monitoring setting process.

メッセージングサービス140は、例えばコンテナグループに対してスケールアウトが実行された場合、すなわちインスタンスが追加された場合、追加されたインスタンスを監視対象に追加するために図6に示す通信監視設定処理を実行する。   For example, when the scale-out is performed on the container group, that is, when an instance is added, the messaging service 140 executes the communication monitoring setting process illustrated in FIG. 6 in order to add the added instance to the monitoring target. .

また、メッセージングサービス140は、例えばコンテナグループに対してスケールインが実行された場合、すなわちインスタンスが削除された場合、削除されたインスタンスを監視対象から削除するために図6に示す通信監視設定処理を実行する。   Further, for example, when the scale-in is performed on the container group, that is, when the instance is deleted, the messaging service 140 performs the communication monitoring setting process shown in FIG. 6 in order to delete the deleted instance from the monitoring target. Run.

次に、通信解析サービス160がコンテナ間で行われた通信の監視結果を解析する処理を説明する。図11は、第2の実施形態の通信解析サービス160による監視結果解析処理の動作を示すフローチャートである。   Next, a process in which the communication analysis service 160 analyzes a monitoring result of communication performed between containers will be described. FIG. 11 is a flowchart illustrating the operation of the monitoring result analysis process by the communication analysis service 160 according to the second embodiment.

メッセージングサービス140は、監視設定に基づいてコンテナ間で行われる通信の監視を開始する(ステップS201)。   The messaging service 140 starts monitoring communication performed between containers based on the monitoring setting (step S201).

コンテナ間で行われる通信の監視が開始された後、メッセージングサービス140は、例えばメッセージ数を集計することによって、監視結果を作成する。例えば、Container_101がPublishの処理を100回行い、Container_200が全てのPublishの処理に対してSubscribeの処理を行う場合、メッセージングサービス140は、メッセージ数として「100」を取得する。   After monitoring of communication performed between containers is started, the messaging service 140 creates a monitoring result by, for example, counting the number of messages. For example, when Container_101 performs Publish processing 100 times and Container_200 performs Subscribe processing for all Publish processing, the messaging service 140 acquires “100” as the number of messages.

図12は、メッセージングサービス140が生成した監視結果の例を示す説明図である。図12に示す監視結果は、メッセージ数の取得結果の例である。   FIG. 12 is an explanatory diagram illustrating an example of a monitoring result generated by the messaging service 140. The monitoring result shown in FIG. 12 is an example of the result of acquiring the number of messages.

図12に示すPublisherは、Publisherであるコンテナを示す。また、Subscriberは、Subscriberであるコンテナを示す。また、Countは、取得されたメッセージの量を示す。Countには、数、バイト数、または頻度(=数/時間)のいずれが記録されてもよい。なお、通信が観測されなかったPublisherとSubscriberの組み合わせに関する監視結果は、作成されなくてもよい。   The Publisher shown in FIG. 12 indicates a container that is a Publisher. Subscriber indicates a container that is a Subscriber. Count indicates the amount of acquired messages. In Count, any number, number of bytes, or frequency (= number / time) may be recorded. Note that the monitoring result regarding the combination of Publisher and Subscriber for which communication has not been observed need not be created.

また、コンテナ間で行われる通信の監視が開始された後、メッセージングサービス140は、例えばポリシが示す取得対象のメッセージを取得することによって、監視結果を作成してもよい。   In addition, after monitoring of communication performed between containers is started, the messaging service 140 may create a monitoring result by, for example, acquiring a message to be acquired indicated by a policy.

図13は、メッセージングサービス140が生成した監視結果の他の例を示す説明図である。図13に示す監視結果は、メッセージ数の取得結果の他の例である。   FIG. 13 is an explanatory diagram illustrating another example of the monitoring result generated by the messaging service 140. The monitoring result shown in FIG. 13 is another example of the message number acquisition result.

図13に示すPublisherは、Publisherであるコンテナを示す。また、データソースは、アクセスされたデータソースを示す。データソースは、例えばSubscriberであるコンテナと、Subscriberであるコンテナ内のテーブルの組み合わせで表記される。   The Publisher shown in FIG. 13 indicates a container that is a Publisher. The data source indicates the accessed data source. For example, the data source is represented by a combination of a container that is a Subscriber and a table in the container that is a Subscriber.

また、Countは、取得されたメッセージの量を示す。Countには、数、バイト数、または頻度(=数/時間)のいずれが記録されてもよい。なお、通信が観測されなかったPublisherとデータソースの組み合わせに関する監視結果は、作成されなくてもよい。   Count indicates the amount of acquired messages. In Count, any number, number of bytes, or frequency (= number / time) may be recorded. Note that the monitoring result regarding the combination of the Publisher and the data source for which communication has not been observed need not be created.

次いで、メッセージングサービス140は、監視結果を通信解析サービス160に送信する(ステップS202)。メッセージングサービス140は、例えば予め与えられた時間間隔で監視結果を送信する。時間間隔は、例えば5分である。   Next, the messaging service 140 transmits the monitoring result to the communication analysis service 160 (step S202). For example, the messaging service 140 transmits the monitoring result at a predetermined time interval. The time interval is, for example, 5 minutes.

次いで、通信解析サービス160は、送信された監視結果を受信し、受信された監視結果を解析する(ステップS203)。具体的には、通信解析サービス160は、上述した閾値型、ベースライン型、統計型のいずれかの方法で監視結果を解析する。なお、通信解析サービス160は、他の方法で監視結果を解析してもよい。   Next, the communication analysis service 160 receives the transmitted monitoring result and analyzes the received monitoring result (step S203). Specifically, the communication analysis service 160 analyzes the monitoring result by any one of the above-described threshold type, baseline type, and statistical type methods. Note that the communication analysis service 160 may analyze the monitoring result by other methods.

以下、線形関数が用いられた統計型の解析方法を説明する。メッセージのメッセージ数またはバイト数に関する集計結果は、サービスが安定して提供されている間、リクエスト数に応じた範囲で推移する。   Hereinafter, a statistical analysis method using a linear function will be described. The aggregation result regarding the number of messages or the number of bytes of the message changes within a range corresponding to the number of requests while the service is stably provided.

例えば、所定の時間内の単位時間当たりの通信経路173におけるメッセージバイト数(X)は、データベースへのアクセス回数に比例した数である。また、同じ所定の時間内の通信経路171および通信経路172におけるメッセージバイト数(Y)は、データベースからの応答行数に比例した数である。すなわち、Y=a*Xの関係が成り立つ。なお、aは比例定数である。   For example, the number of message bytes (X) in the communication path 173 per unit time within a predetermined time is a number proportional to the number of accesses to the database. The number of message bytes (Y) in the communication path 171 and the communication path 172 within the same predetermined time is a number proportional to the number of response rows from the database. That is, the relationship Y = a * X is established. A is a proportionality constant.

通信解析サービス160は、上記のような関係を予め線形モデルとして確立する。所定の時間以後の時間内の単位時間当たりのXとYとの関係が確立された線形モデルが示す関係から大きく外れた場合、通信解析サービス160は、XとYのうち少なくとも1つを外れ値として検出する。外れ値が検出された場合、通信解析サービス160は、異常通信の存在を確定する。   The communication analysis service 160 establishes the above relationship as a linear model in advance. If the relationship between the X and Y per unit time within the predetermined time and the linear model that has been established greatly deviates from the relationship indicated by the established linear model, the communication analysis service 160 outliers at least one of X and Y. Detect as. If an outlier is detected, the communication analysis service 160 determines the presence of abnormal communication.

通信解析サービス160は、ステップS203において閾値型、ベースライン型、統計型のいずれかの方法で解析した監視結果から異常な内容が検出されたか否かを確認する(ステップS204)。異常な内容が検出されなかった場合(ステップS204におけるNo)、通信解析サービス160は、再度ステップS203の処理を行う。   The communication analysis service 160 confirms whether or not abnormal contents are detected from the monitoring result analyzed by any one of the threshold type, baseline type, and statistical type in step S203 (step S204). If no abnormal content is detected (No in step S204), the communication analysis service 160 performs the process of step S203 again.

異常な内容が検出された場合(ステップS204におけるYes)、通信解析サービス160は、異常通信の存在を確定する。異常通信の存在が確定された場合、メッセージングサービス140は、異常通信の存在の事実を報告する(ステップS205)。具体的には、メッセージングサービス140は、メール、SMS(Short Message Service)、ウェブ画面表示等の方法で異常通信の存在の事実を報告する。   If abnormal content is detected (Yes in step S204), the communication analysis service 160 determines the presence of abnormal communication. When the presence of abnormal communication is determined, the messaging service 140 reports the fact of the presence of abnormal communication (step S205). Specifically, the messaging service 140 reports the fact of the presence of abnormal communication by a method such as mail, SMS (Short Message Service), or web screen display.

図14は、メッセージングサービス140によるウェブ画面での報告の例を示す説明図である。図14に示す画面は、「PaaS異常検出」画面である。サービスプロバイダは、例えばPaaS管理画面に設けられた管理メニューを介して、「PaaS異常検出」画面を表示できる。   FIG. 14 is an explanatory diagram showing an example of a report on the web screen by the messaging service 140. The screen shown in FIG. 14 is a “PaaS abnormality detection” screen. For example, the service provider can display a “PaaS abnormality detection” screen via a management menu provided on the PaaS management screen.

図14に示す「PaaS異常検出」画面の「検出されたアクティビティ」欄には、異常が検出された時刻、および検出された異常の重要度が表示されている。具体的には、2015/12/25の9:02にContainer_300からContainer_200に向けて行われた通信等に異常が発生していたことが図14に示されている。   In the “Detected activity” column of the “PaaS abnormality detection” screen shown in FIG. 14, the time when the abnormality is detected and the importance of the detected abnormality are displayed. Specifically, FIG. 14 shows that an abnormality has occurred in communication or the like performed from Container_300 to Container_200 at 9:02 on 2015/12/25.

すなわち、サービスプロバイダは、指定されたサービスに関する異常検出結果を「PaaS異常検出」画面で参照できる。なお、「検出されたアクティビティ」欄には、検出された異常の内容がより具体的に、またはより多くの情報と共に表示されてもよい。   That is, the service provider can refer to the abnormality detection result regarding the designated service on the “PaaS abnormality detection” screen. In the “detected activity” column, the details of the detected abnormality may be displayed more specifically or together with more information.

なお、データセンタ100には、コンテナ131〜コンテナ13N、メッセージングサービス140、および通信解析サービス160のみが含まれてもよい。図15は、データセンタ100の他の構成例を示すブロック図である。   The data center 100 may include only the containers 131 to 13N, the messaging service 140, and the communication analysis service 160. FIG. 15 is a block diagram illustrating another configuration example of the data center 100.

また、データセンタ100には、メッセージングサービス140のみが含まれてもよい。メッセージングサービス140のみを含むデータセンタ100は、外部に存在するコンテナ実行サーバで実行されているコンテナ間で行われる通信を監視し、監視結果を通信可能に接続されている通信解析サーバに送信してもよい。   Further, the data center 100 may include only the messaging service 140. The data center 100 including only the messaging service 140 monitors communication performed between containers executed by an external container execution server, and transmits a monitoring result to a communication analysis server connected to be communicable. Also good.

[効果の説明]
本実施形態の監視システム10は、コンテナ間で行われる通信の監視結果を用いて不正動作を検出できる。その理由は、メッセージングサービス140がコンテナ間で行われる通信を監視し、監視結果を通信解析サービス160に入力し、通信解析サービス160が入力された監視結果を解析することによって、不正動作を起因とする異常な事象が検出されるためである。
[Description of effects]
The monitoring system 10 of this embodiment can detect an unauthorized operation using a monitoring result of communication performed between containers. The reason is that the messaging service 140 monitors communication performed between containers, inputs a monitoring result to the communication analysis service 160, and the communication analysis service 160 analyzes the input monitoring result, thereby causing an illegal operation. This is because an abnormal event is detected.

なお、本実施形態のデータセンタ100は、例えば、記憶媒体に格納されているプログラムに従って処理を実行するCPUによって実現される。すなわちゲートウェイ110、メッセージングサービス140、および通信解析サービス160は、例えば、プログラム制御に従って処理を実行するCPUによって実現される。   Note that the data center 100 of this embodiment is realized by, for example, a CPU that executes processing according to a program stored in a storage medium. That is, the gateway 110, the messaging service 140, and the communication analysis service 160 are realized by a CPU that executes processing according to program control, for example.

また、構成管理手段150は、例えばRAM(Random Access Memory)で実現される。   The configuration management unit 150 is realized by, for example, a RAM (Random Access Memory).

また、本実施形態のデータセンタ100における各部は、ハードウェア回路によって実現されてもよい。   In addition, each unit in the data center 100 according to the present embodiment may be realized by a hardware circuit.

10 監視システム
11 監視手段
20、20〜20、30、30〜30、40、40〜40、131〜13N コンテナ
100 データセンタ
110 ゲートウェイ
121〜12M コンテナ実行サーバ
140 メッセージングサービス
150 構成管理手段
160 通信解析サービス
171〜173 通信経路
201〜20K クライアント端末
300 通信ネットワーク
10 monitoring system 11 monitoring means 20,20 1 ~20 n, 30,30 1 ~30 m, 40,40 1 ~40 k, 131~13N container 100 data center 110 Gateway 121~12M container executing server 140 messaging service 150 configuration Management means 160 Communication analysis service 171 to 173 Communication path 201 to 20K Client terminal 300 Communication network

Claims (10)

サーバのオペレーティングシステム内のユーザ空間が仮想的に分割された空間をそれぞれ有し前記オペレーティングシステム内のカーネル空間を共用する複数のインスタンス間で行われる通信を監視する監視手段を含む
ことを特徴とする監視システム。
And a monitoring unit that monitors communications performed between a plurality of instances each of which has a virtually divided user space in the operating system of the server and shares the kernel space in the operating system. Monitoring system.
監視手段が通信を監視した結果である監視結果を用いて複数のインスタンス間で行われる通信のうち異常な通信を検出する検出手段を含む
請求項1記載の監視システム。
The monitoring system according to claim 1, further comprising detection means for detecting abnormal communication among communication performed between a plurality of instances using a monitoring result which is a result of monitoring the communication by the monitoring means.
監視手段は、複数のインスタンス間で行われる通信におけるメッセージ量を集計し、前記メッセージ量が集計された結果を監視結果に含める
請求項2記載の監視システム。
The monitoring system according to claim 2, wherein the monitoring unit totals a message amount in communication performed between a plurality of instances, and includes a result obtained by totalizing the message amount in a monitoring result.
検出手段は、メッセージ量が集計された結果が示す値が所定の閾値を超えている通信を異常な通信として検出する
請求項3記載の監視システム。
The monitoring system according to claim 3, wherein the detection unit detects communication in which a value indicated by a result of summing up message amounts exceeds a predetermined threshold as abnormal communication.
検出手段は、メッセージ量が集計された結果が示す複数の値が所定の関係式を満たさない通信を異常な通信として検出する
請求項3または請求項4記載の監視システム。
5. The monitoring system according to claim 3, wherein the detection unit detects, as abnormal communication, communication in which a plurality of values indicated by a result of summing up message amounts do not satisfy a predetermined relational expression.
監視手段は、検出手段により検出された異常な通信の内容を所定の方法で報告する
請求項2から請求項5のうちのいずれか1項に記載の監視システム。
The monitoring system according to any one of claims 2 to 5, wherein the monitoring unit reports the contents of the abnormal communication detected by the detection unit by a predetermined method.
サーバのオペレーティングシステム内のユーザ空間が仮想的に分割された空間をそれぞれ有し前記オペレーティングシステム内のカーネル空間を共用する複数のインスタンス間で行われる通信を監視する
ことを特徴とする監視方法。
A monitoring method characterized by monitoring communication performed between a plurality of instances each having a user space in a server operating system virtually divided and sharing a kernel space in the operating system.
通信が監視された結果である監視結果を用いて複数のインスタンス間で行われる通信のうち異常な通信を検出する
請求項7記載の監視方法。
The monitoring method according to claim 7, wherein abnormal communication is detected among communication performed between a plurality of instances using a monitoring result that is a result of monitoring communication.
コンピュータに、
サーバのオペレーティングシステム内のユーザ空間が仮想的に分割された空間をそれぞれ有し前記オペレーティングシステム内のカーネル空間を共用する複数のインスタンス間で行われる通信を監視する監視処理
を実行させるための監視プログラム。
On the computer,
A monitoring program for executing a monitoring process for monitoring communication performed between a plurality of instances each having a user space in the operating system of the server that is virtually divided and sharing the kernel space in the operating system .
コンピュータに、
通信が監視された結果である監視結果を用いて複数のインスタンス間で行われる通信のうち異常な通信を検出する検出処理を実行させる
請求項9記載の監視プログラム。
On the computer,
The monitoring program according to claim 9, wherein a detection process for detecting abnormal communication among communication performed between a plurality of instances is executed using a monitoring result that is a result of monitoring communication.
JP2016059528A 2016-03-24 2016-03-24 Monitoring system, monitoring method, and monitoring program Active JP6680028B2 (en)

Priority Applications (1)

Application Number Priority Date Filing Date Title
JP2016059528A JP6680028B2 (en) 2016-03-24 2016-03-24 Monitoring system, monitoring method, and monitoring program

Applications Claiming Priority (1)

Application Number Priority Date Filing Date Title
JP2016059528A JP6680028B2 (en) 2016-03-24 2016-03-24 Monitoring system, monitoring method, and monitoring program

Related Child Applications (1)

Application Number Title Priority Date Filing Date
JP2020047490A Division JP2020115358A (en) 2020-03-18 2020-03-18 Communication system, communication method, and communication program

Publications (2)

Publication Number Publication Date
JP2017174158A true JP2017174158A (en) 2017-09-28
JP6680028B2 JP6680028B2 (en) 2020-04-15

Family

ID=59973106

Family Applications (1)

Application Number Title Priority Date Filing Date
JP2016059528A Active JP6680028B2 (en) 2016-03-24 2016-03-24 Monitoring system, monitoring method, and monitoring program

Country Status (1)

Country Link
JP (1) JP6680028B2 (en)

Cited By (4)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
JP2020536319A (en) * 2017-09-30 2020-12-10 オラクル・インターナショナル・コーポレイション Dynamic migration of groups of containers
WO2021111692A1 (en) * 2019-12-05 2021-06-10 パナソニックIpマネジメント株式会社 Information processing device, anomaly detection method, and computer program
CN113342606A (en) * 2021-06-07 2021-09-03 平安证券股份有限公司 Data monitoring method, device, equipment and storage medium based on message middleware
JP7455197B2 (en) 2019-09-23 2024-03-25 インターナショナル・ビジネス・マシーンズ・コーポレーション Mutation event detection for integrity monitoring

Cited By (8)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
JP2020536319A (en) * 2017-09-30 2020-12-10 オラクル・インターナショナル・コーポレイション Dynamic migration of groups of containers
US11681573B2 (en) 2017-09-30 2023-06-20 Oracle International Corporation API registry in a container platform providing property-based API functionality
US11755393B2 (en) 2017-09-30 2023-09-12 Oracle International Corporation API registry in a container platform for automatically generating client code libraries
JP7455197B2 (en) 2019-09-23 2024-03-25 インターナショナル・ビジネス・マシーンズ・コーポレーション Mutation event detection for integrity monitoring
WO2021111692A1 (en) * 2019-12-05 2021-06-10 パナソニックIpマネジメント株式会社 Information processing device, anomaly detection method, and computer program
CN114868365A (en) * 2019-12-05 2022-08-05 松下知识产权经营株式会社 Information processing apparatus, abnormality detection method, and computer program
JP7411895B2 (en) 2019-12-05 2024-01-12 パナソニックIpマネジメント株式会社 Information processing device, abnormality detection method and computer program
CN113342606A (en) * 2021-06-07 2021-09-03 平安证券股份有限公司 Data monitoring method, device, equipment and storage medium based on message middleware

Also Published As

Publication number Publication date
JP6680028B2 (en) 2020-04-15

Similar Documents

Publication Publication Date Title
US10708289B2 (en) Secured event monitoring leveraging blockchain
US10511637B2 (en) Automated mitigation of electronic message based security threats
US9787697B2 (en) Providing security services within a cloud computing environment
CN110798472B (en) Data leakage detection method and device
Hamad et al. Managing intrusion detection as a service in cloud networks
US20130086241A1 (en) Validation of conditional policy attachments
US11683349B2 (en) Dynamic security policy management
US9912682B2 (en) Aggregation of network traffic source behavior data across network-based endpoints
JP6680028B2 (en) Monitoring system, monitoring method, and monitoring program
US8938680B2 (en) Methods and apparatus for E-mail-based management of virtualized environments
US11799892B2 (en) Methods for public cloud database activity monitoring and devices thereof
US20230247039A1 (en) Techniques for cloud computing forensics utilizing a security graph
US10628591B2 (en) Method for fast and efficient discovery of data assets
US20220129541A1 (en) Containers system auditing through system call emulation
US20230247040A1 (en) Techniques for cloud detection and response from cloud logs utilizing a security graph
Araújo et al. Virtualization in intrusion detection systems: a study on different approaches for cloud computing environments
US11704364B2 (en) Evaluation of security policies in real-time for entities using graph as datastore
JP2020115358A (en) Communication system, communication method, and communication program
WO2022241939A1 (en) Network security management method and computer device
US11716323B1 (en) Adaptive step-up authentication for privileged interface invocations
US20230039162A1 (en) Automated external ip address discovery of services in a public cloud environment
US20230325478A1 (en) Instrumenting applications to prevent abuse by privileged users

Legal Events

Date Code Title Description
A621 Written request for application examination

Free format text: JAPANESE INTERMEDIATE CODE: A621

Effective date: 20190207

A977 Report on retrieval

Free format text: JAPANESE INTERMEDIATE CODE: A971007

Effective date: 20191122

A131 Notification of reasons for refusal

Free format text: JAPANESE INTERMEDIATE CODE: A131

Effective date: 20191210

A521 Written amendment

Free format text: JAPANESE INTERMEDIATE CODE: A523

Effective date: 20200131

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

A61 First payment of annual fees (during grant procedure)

Free format text: JAPANESE INTERMEDIATE CODE: A61

Effective date: 20200302

R150 Certificate of patent or registration of utility model

Ref document number: 6680028

Country of ref document: JP

Free format text: JAPANESE INTERMEDIATE CODE: R150