JP2021101278A - Information processing device, information processing system, information processing method, and program - Google Patents
Information processing device, information processing system, information processing method, and program Download PDFInfo
- Publication number
- JP2021101278A JP2021101278A JP2019232537A JP2019232537A JP2021101278A JP 2021101278 A JP2021101278 A JP 2021101278A JP 2019232537 A JP2019232537 A JP 2019232537A JP 2019232537 A JP2019232537 A JP 2019232537A JP 2021101278 A JP2021101278 A JP 2021101278A
- Authority
- JP
- Japan
- Prior art keywords
- virtual machine
- operation information
- correlation
- information
- virtual
- 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
Links
Images
Abstract
Description
本発明は情報処理装置、情報処理システム、情報処理方法およびプログラムに関する。 The present invention relates to an information processing device, an information processing system, an information processing method and a program.
物理的なコンピュータである物理マシンに、仮想的なコンピュータである仮想マシンを配置して実行させるコンピュータ仮想化技術がある。コンピュータ仮想化技術によれば、仮想マシンの動的な追加や削除や移動が可能であり、情報処理の運用管理が容易となる。仮想マシンが配置される物理マシンは、データセンタなどの大規模情報処理施設が有するものであることもあり、いわゆるクラウドシステムが有するものであることもある。 There is a computer virtualization technology in which a virtual machine, which is a virtual computer, is placed and executed on a physical machine, which is a physical computer. According to computer virtualization technology, virtual machines can be dynamically added, deleted, and moved, facilitating the operation management of information processing. The physical machine in which the virtual machine is placed may be owned by a large-scale information processing facility such as a data center, or may be owned by a so-called cloud system.
異なる物理マシンに配置された複数の仮想マシンが分散してアプリケーションプログラムを実行し、それら複数の仮想マシンが連携して、ユーザからの要求に応じた情報処理サービスを提供するようにすることもできる。複数の仮想マシンを、異なるデータセンタや異なるクラウドシステムに分割して配置することも可能である。複数の仮想マシンを利用した情報処理サービスの運用管理では、プロセッサやメモリなどのリソースの使用状況を示す稼働情報を各仮想マシンから収集することが好ましい。収集した稼働情報に基づいて、新たな仮想マシンの追加、一部の仮想マシンの削除、仮想マシンに割り当てるリソースの増強、仮想マシンを配置するクラウドシステムの変更などを検討することができる。 Multiple virtual machines located on different physical machines can be distributed to execute application programs, and these multiple virtual machines can work together to provide information processing services in response to user requests. .. It is also possible to divide and arrange multiple virtual machines in different data centers and different cloud systems. In the operation management of an information processing service using a plurality of virtual machines, it is preferable to collect operation information indicating the usage status of resources such as processors and memories from each virtual machine. Based on the collected operation information, it is possible to consider adding new virtual machines, deleting some virtual machines, increasing the resources allocated to virtual machines, and changing the cloud system in which virtual machines are placed.
例えば、物理マシン全体のリソース使用率と仮想マシン毎のリソース使用率とを示す測定データを収集し、リソース不足を検出した場合に一部の仮想マシンを他の物理マシンに移動する仮想マシン管理装置が提案されている。また、ある物理マシンから別の物理マシンに2つの仮想マシンを移動する場合に、2つの仮想マシンの移動を並行して行うか否か決定する仮想マシン制御装置が提案されている。提案の仮想マシン制御装置は、一方の仮想マシンの移動を開始したとき、2つの仮想マシンの処理状況を監視して相関係数を算出し、相関係数が正である場合、他方の仮想マシンの移動も開始する。 For example, a virtual machine management device that collects measurement data showing the resource usage rate of the entire physical machine and the resource usage rate of each virtual machine, and moves some virtual machines to other physical machines when a resource shortage is detected. Has been proposed. Further, when moving two virtual machines from one physical machine to another, a virtual machine control device for determining whether or not to move the two virtual machines in parallel has been proposed. When the proposed virtual machine controller starts moving one virtual machine, it monitors the processing status of the two virtual machines and calculates the correlation coefficient. If the correlation coefficient is positive, the other virtual machine The movement of is also started.
収集する稼働情報の精度という観点からは、短い周期で複数の仮想マシンの稼働情報を収集することが好ましい。しかし、情報処理サービスで使用されている全ての仮想マシンと短い周期で通信すると、稼働情報を収集する際の通信量が多くなってしまうという問題がある。例えば、複数の仮想マシンの少なくとも一部がデータセンタやクラウドシステムに配置されている場合、インターネットなどの広域データ通信ネットワークを介して短い周期で通信することになり、その通信負荷が問題となる。 From the viewpoint of the accuracy of the operation information to be collected, it is preferable to collect the operation information of a plurality of virtual machines in a short cycle. However, if communication is performed with all the virtual machines used in the information processing service in a short cycle, there is a problem that the amount of communication when collecting operation information increases. For example, when at least a part of a plurality of virtual machines is arranged in a data center or a cloud system, communication is performed in a short cycle via a wide area data communication network such as the Internet, and the communication load becomes a problem.
1つの側面では、本発明は、稼働情報を収集する際の通信量を削減できる情報処理装置、情報処理システム、情報処理方法およびプログラムを提供することを目的とする。 In one aspect, it is an object of the present invention to provide an information processing device, an information processing system, an information processing method and a program capable of reducing the amount of communication when collecting operation information.
1つの態様では、通信部と記憶部と処理部とを有する情報処理装置が提供される。通信部は、第1の仮想マシンから第1の仮想マシンにおけるリソースの使用状況を示す第1の稼働情報を受信し、第2の仮想マシンから第2の仮想マシンにおけるリソースの使用状況を示す第2の稼働情報を受信する。記憶部は、受信された第1の稼働情報および第2の稼働情報の履歴を記憶する。処理部は、履歴に基づいて、第1の仮想マシンと第2の仮想マシンとの間のリソースの使用状況の相関関係を判定し、相関関係が所定条件を満たす場合、第2の稼働情報の受信頻度が第1の稼働情報の受信頻度よりも低くなるよう制御する。処理部は、第1の仮想マシンから受信された第1の稼働情報と相関関係とに基づいて、第2の仮想マシンにおけるリソースの使用状況を推定する。 In one aspect, an information processing device having a communication unit, a storage unit, and a processing unit is provided. The communication unit receives the first operation information indicating the resource usage status in the first virtual machine from the first virtual machine, and indicates the resource usage status in the second virtual machine from the second virtual machine. Receive the operation information of 2. The storage unit stores the received first operation information and the history of the second operation information. The processing unit determines the correlation of the resource usage status between the first virtual machine and the second virtual machine based on the history, and if the correlation satisfies a predetermined condition, the second operation information The reception frequency is controlled to be lower than the reception frequency of the first operation information. The processing unit estimates the resource usage status in the second virtual machine based on the first operation information received from the first virtual machine and the correlation.
また、1つの態様では、第1の仮想マシンを実行する第1の情報処理装置と第2の仮想マシンを実行する第2の情報処理装置と第3の情報処理装置とを有する情報処理システムが提供される。また、1つの態様では、コンピュータが実行する情報処理方法が提供される。また、1つの態様では、コンピュータに実行させるプログラムが提供される。 Further, in one embodiment, an information processing system having a first information processing device that executes a first virtual machine, a second information processing device that executes a second virtual machine, and a third information processing device. Provided. Also, in one aspect, an information processing method executed by a computer is provided. Also, in one aspect, a program to be executed by a computer is provided.
1つの側面では、稼働情報を収集する際の通信量を削減できる。 On one side, the amount of communication when collecting operation information can be reduced.
以下、本実施の形態を図面を参照して説明する。
[第1の実施の形態]
第1の実施の形態を説明する。
Hereinafter, the present embodiment will be described with reference to the drawings.
[First Embodiment]
The first embodiment will be described.
図1は、第1の実施の形態の情報処理システムの例を説明する図である。
第1の実施の形態の情報処理システムは、複数の仮想マシンを異なる情報処理装置に配置し、それら複数の仮想マシンそれぞれのリソースの使用状況を監視する。第1の実施の形態の情報処理システムは、情報処理装置10,20,20aを含む。
FIG. 1 is a diagram illustrating an example of an information processing system according to the first embodiment.
In the information processing system of the first embodiment, a plurality of virtual machines are arranged in different information processing devices, and the resource usage status of each of the plurality of virtual machines is monitored. The information processing system of the first embodiment includes
情報処理装置10は、仮想マシンにおけるリソースの使用状況を示す稼働情報を収集して、仮想マシンを監視するコンピュータである。情報処理装置10は、クライアントコンピュータでもよいしサーバコンピュータでもよい。
The
情報処理装置20,20aは、仮想マシンを実行可能なサーバコンピュータである。情報処理装置20,20aは、情報処理装置10とネットワークを介して通信することができる。情報処理装置20,20aは、データセンタのコンピュータでもよく、クラウド事業者が所有するパブリッククラウドシステムのコンピュータでもよい。また、情報処理装置20,20aは、仮想マシンを利用してユーザにサービスを提供するサービス事業者が所有するプライベートクラウドシステムまたはオンプレミスシステムのコンピュータでもよい。情報処理装置20と情報処理装置20aとは、異なるシステムに属していてもよい。情報処理装置20,20aと情報処理装置10とが、インターネットなどの広域データ通信ネットワークを介して通信するようにしてもよい。
The
情報処理装置20には、仮想マシン21(第1の仮想マシン)が配置されている。情報処理装置20aには、仮想マシン22(第2の仮想マシン)が配置されている。情報処理装置10は、仮想マシン21,22それぞれのリソースの使用状況を監視する。例えば、情報処理装置10は、仮想マシン21,22におけるリソースの使用状況を、表示装置に表示するなどの方法によってサービス管理者に提示する。リソースの使用状況を監視することで、新たな仮想マシンの追加、一部の仮想マシンの削除、仮想マシンに割り当てるリソースの増強、仮想マシンを配置するシステムの変更などの構成変更を検討できる。
A virtual machine 21 (first virtual machine) is arranged in the information processing device 20. A virtual machine 22 (second virtual machine) is arranged in the
リソースは、仮想マシンに割り当てられて情報処理に用いられるハードウェア資源である。リソースの使用状況として、CPU(Central Processing Unit)などのプロセッサの使用率、RAM(Random Access Memory)などのメモリの使用量、HDD(Hard Disk Drive)などのストレージのアクセス量、ネットワーク帯域使用率などが挙げられる。 A resource is a hardware resource that is allocated to a virtual machine and used for information processing. Resource usage includes processor usage such as CPU (Central Processing Unit), memory usage such as RAM (Random Access Memory), storage access such as HDD (Hard Disk Drive), and network bandwidth usage. Can be mentioned.
仮想マシン21は、仮想マシン21におけるリソースの使用状況を示す稼働情報23(第1の稼働情報)を送信することができる。仮想マシン22は、仮想マシン22におけるリソースの使用状況を示す稼働情報24(第2の稼働情報)を送信することができる。仮想マシン21,22は、情報処理装置10からの要求に応じて稼働情報を送信してもよいし、情報処理装置10から直接的または間接的に指定された頻度で自律的に稼働情報を送信してもよい。後述する送信頻度の低下には、稼働情報の送信を停止することも含まれる。なお、仮想マシン21,22は、それぞれゲストオペレーティングシステム(OS:Operating System)を実行する狭義の仮想マシンでもよいし、コンテナ型コンピュータ仮想化技術におけるコンテナなどゲストOSを実行しない仮想情報処理主体でもよい。
The
情報処理装置10は、通信部11、記憶部12および処理部13を有する。通信部11は、情報処理装置20,20aとネットワークを介して通信する通信インタフェースである。通信部11は、スイッチやルータなどの有線通信装置に接続される有線通信インタフェースでもよいし、アクセスポイントや無線基地局などの無線通信装置に接続される無線通信インタフェースでもよい。記憶部12は、RAMなどの揮発性半導体メモリでもよいし、HDDやフラッシュメモリなどの不揮発性ストレージでもよい。
The
処理部13は、例えば、CPU、GPU(Graphics Processing Unit)、DSP(Digital Signal Processor)などのプロセッサである。ただし、処理部13は、ASIC(Application Specific Integrated Circuit)やFPGA(Field Programmable Gate Array)などの特定用途の電子回路を含んでもよい。プロセッサは、RAMなどのメモリ(記憶部12でもよい)に記憶されたプログラムを実行する。複数のプロセッサの集合を「マルチプロセッサ」または単に「プロセッサ」と言うこともある。
The
通信部11は、仮想マシン21から稼働情報23を受信し、仮想マシン22から稼働情報24を受信する。記憶部12は、仮想マシン21から受信された稼働情報23および仮想マシン22から受信された稼働情報24の履歴を記憶する。稼働情報23,24の履歴は、異なる複数の時刻それぞれのリソースの使用状況を示す。記憶部12に十分な履歴が蓄積されるまでは、例えば、通信部11は、低い所定頻度(例えば、1分間隔)で仮想マシン21,22それぞれから稼働情報を受信する。処理部13は、送信頻度の初期値を仮想マシン21,22に通知することで、仮想マシン21,22に定期的に稼働情報を送信させるようにしてもよい。また、通信部11は、所定頻度で仮想マシン21,22に稼働情報を要求することで、稼働情報を収集するようにしてもよい。
The
処理部13は、記憶部12に記憶された履歴に基づいて、仮想マシン21と仮想マシン22との間のリソースの使用状況の相関関係14を判定する。稼働情報23,24が2以上の種類のリソースの使用状況を示す場合、処理部13は、リソースの種類毎に相関関係14を判定してもよい。例えば、処理部13は、記憶部12に記憶された履歴の中から、時刻が近い稼働情報23と稼働情報24とを対応付け、複数のペアに基づいて、稼働情報23に含まれる数値と稼働情報24に含まれる数値の間の相関係数を算出する。また、例えば、処理部13は、直近の一定期間の稼働情報23,24に基づいて、稼働情報23に含まれる数値に対する稼働情報24に含まれる数値の平均倍率を算出する。
The
相関関係14が所定条件を満たす場合、処理部13は、仮想マシン22の稼働情報24の受信頻度が、仮想マシン21の稼働情報23の受信頻度よりも低くなるよう制御する。所定条件は、例えば、相関係数の絶対値が閾値(例えば、0.8)より大きいことである。このとき、処理部13は、稼働情報24の受信頻度を、相関関係14を判定する前の初期値より低くしてもよく、仮想マシン22からの稼働情報24の受信を停止してもよい。また、処理部13は、稼働情報23の受信頻度を、1分間隔をその半分の30秒間隔にするなど、相関関係14を判定する前の初期値より高くしてもよい。
When the
受信頻度の制御では、処理部13は、仮想マシン22に関する情報を仮想マシン21に通知することで、仮想マシン21を通じて仮想マシン22に稼働情報24の送信頻度の低下を指示するようにしてもよい。また、処理部13は、稼働情報24の送信頻度の低下を仮想マシン22に直接指示するようにしてもよい。仮想マシン22に対して直接的または間接的に行われる指示は、送信停止の指示であってもよい。また、通信部11から仮想マシン22に稼働情報24を要求する頻度を下げるようにしてもよい。
In the control of the reception frequency, the
相関関係14が所定条件を満たす場合に受信頻度を低くする仮想マシンは、仮想マシン21,22のうちデータフローの下流側に位置する仮想マシンとしてもよい。例えば、通信部11がテストリクエストを送信し、仮想マシン21,22の通信ログを収集するなどの方法により、処理部13が複数の仮想マシンの間のメッセージ通信の順序を検出する。仮想マシン21がメッセージの送信元であり仮想マシン22が当該メッセージの送信先である場合、処理部13は、仮想マシン21,22のうちデータフローの下流側に位置する仮想マシン22の受信頻度を低くすることが考えられる。
The virtual machine whose reception frequency is lowered when the
稼働情報24の受信頻度が稼働情報23の受信頻度より低くなると、仮想マシン21のリソースの使用状況を示す稼働情報23は収集される一方、仮想マシン22のリソースの使用状況を示す稼働情報24は収集されない期間が生じる。そこで、処理部13は、稼働情報24が収集されない期間について、仮想マシン22のリソースの使用状況を推定する。具体的には、処理部13は、仮想マシン21から受信された稼働情報23と相関関係14とに基づいて、仮想マシン22のリソースの使用状況を推定する。例えば、処理部13は、稼働情報23に含まれる数値に、相関関係14を判定する際に算出しておいた倍率を乗じたものを、仮想マシン22のリソースの使用状況を示す数値と推定する。
When the reception frequency of the
処理部13は、稼働情報23に含まれる数値と推定した数値とを混在させてサービス管理者に提示してもよい。例えば、処理部13は、仮想マシン21のリソースの使用状況については、最新の稼働情報23に含まれる数値を表示し、仮想マシン22のリソースの使用状況については、相関関係14に基づいて推定した数値を表示する。
The
第1の実施の形態の情報処理装置10によれば、仮想マシン21から受信された稼働情報23および仮想マシン22から受信された稼働情報24の履歴が蓄積される。その履歴に基づいて、仮想マシン21と仮想マシン22との間のリソースの使用状況の相関関係14が判定され、相関関係14が所定条件を満たす場合、仮想マシン22の稼働情報24の受信頻度が低くなる。そして、仮想マシン21から受信された稼働情報23と相関関係14とに基づいて、仮想マシン22のリソースの使用状況が推定される。
According to the
これにより、一部の仮想マシンからの稼働情報の収集頻度が低くなり、全ての仮想マシンから高頻度で稼働情報を収集する場合と比べて通信量を削減することができる。特に、複数の仮想マシンが異なるシステム(例えば、異なるクラウドシステム)に配置されている場合においては、インターネットなどの広域データ通信ネットワークのトラフィックを削減することができる。また、収集頻度が高い仮想マシンの稼働情報と相関関係から、収集頻度が低い仮想マシン(収集を停止している仮想マシンを含む)の稼働情報が推定される。よって、全ての仮想マシンの収集頻度を一律に低くする場合と比べて、リソースの使用状況を監視する監視精度を向上させることができる。 As a result, the frequency of collecting operation information from some virtual machines becomes low, and the amount of communication can be reduced as compared with the case of collecting operation information from all virtual machines at high frequency. In particular, when a plurality of virtual machines are arranged in different systems (for example, different cloud systems), it is possible to reduce the traffic of a wide area data communication network such as the Internet. In addition, the operation information of virtual machines with low collection frequency (including virtual machines for which collection is stopped) is estimated from the correlation with the operation information of virtual machines with high collection frequency. Therefore, it is possible to improve the monitoring accuracy of monitoring the resource usage status as compared with the case where the collection frequency of all virtual machines is uniformly reduced.
なお、第1の実施の形態の情報処理システムでは、仮想マシン22のリソースの使用状況を推定する推定処理が行われており、推定処理の追加は情報処理システムの負荷を若干増大させる可能性がある。一方、推定処理の採用によって、仮想マシン22から情報処理装置10に稼働情報24を送信して稼働情報24を処理する監視処理が減少し、監視処理の減少は情報処理システムの負荷を大きく低減させる。よって、推定処理の負荷増大よりも監視処理の負荷減少の効果が大きく、情報処理システムの全体的負荷は低減する。
In the information processing system of the first embodiment, an estimation process for estimating the resource usage status of the
また、仮想マシン21を通じて仮想マシン22に各種の指示を送信するなど、収集頻度を下げた仮想マシン22を仮想マシン21に従属させ、仮想マシン22の監視を仮想マシン21に委ねる分散管理を採用することもできる。これにより、情報処理装置10と仮想マシン22との間の通信を削減できる。例えば、仮想マシン21,22が同一のクラウドシステムに配置され、情報処理装置10が当該クラウドシステムの外部に存在する場合、広域データ通信ネットワークの通信を削減することができる。
Further, a distributed management is adopted in which the
[第2の実施の形態]
次に、第2の実施の形態を説明する。
図2は、第2の実施の形態の情報処理システムの例を示す図である。
[Second Embodiment]
Next, a second embodiment will be described.
FIG. 2 is a diagram showing an example of the information processing system of the second embodiment.
第2の実施の形態の情報処理システムは、サービス提供に用いられる複数の仮想マシンを、異なるシステムに分散して配置するマルチクラウドシステムである。広義のマルチクラウドシステムは、狭義のマルチクラウドシステムとハイブリッドクラウドシステムを含む。狭義のマルチクラウドシステムは、複数の仮想マシンを、2以上のパブリッククラウドシステムに分散して配置するものである。ハイブリッドクラウドシステムは、複数の仮想マシンを、パブリッククラウドシステムと自社システム(オンプレミスシステム)に分散して配置するものである。複数のシステムを利用することで、サービス停止リスクを低減できると共に、システム特有の機能を活用することができる。 The information processing system of the second embodiment is a multi-cloud system in which a plurality of virtual machines used for providing services are distributed and arranged in different systems. A broad-sense multi-cloud system includes a narrow-sense multi-cloud system and a hybrid cloud system. A multi-cloud system in a narrow sense is a system in which a plurality of virtual machines are distributed and arranged in two or more public cloud systems. In the hybrid cloud system, a plurality of virtual machines are distributed and arranged in a public cloud system and an in-house system (on-premises system). By using multiple systems, it is possible to reduce the risk of service outages and utilize system-specific functions.
第2の実施の形態の情報処理システムは、クラウドシステム31,32、自社システム33および情報収集サーバ100を含む。クラウドシステム31,32、自社システム33および情報収集サーバ100は、ネットワーク30に接続されている。ネットワーク30は、インターネットなどの広域データ通信ネットワークである。
The information processing system of the second embodiment includes
クラウドシステム31は、あるクラウド事業者によって所有され、そのクラウド事業者との契約に従ってサービス事業者が仮想マシンを配置することができるパブリッククラウドシステムである。クラウドシステム31は、仮想マシンを実行する物理マシンであるサーバ200,200aなどの複数のサーバを含む。
The
クラウドシステム32は、クラウドシステム31とは異なるクラウド事業者によって所有され、そのクラウド事業者との契約に従ってサービス事業者が仮想マシンを配置することができるパブリッククラウドシステムである。クラウドシステム32は、仮想マシンを実行する物理マシンであるサーバ200b,200cなどの複数のサーバを有する。
The
自社システム33は、仮想マシンを用いてサービスを提供するサービス事業者によって所有されるオンプレミスシステムである。自社システム33は、仮想マシンを実行するサーバ200d,200eなどの複数のサーバを含む。サービス事業者は、複数の仮想マシンを、クラウドシステム31,32および自社システム33のうちの2以上のシステムに分散して配置する。それら複数の仮想マシンは、ユーザからのリクエストに応じて連携して情報処理を行い、ユーザに対してレスポンスを送信する。例えば、1つの仮想マシンがリクエストを受信し、複数の仮想マシンがメッセージを木構造に転送しながら分散してデータ処理を行い、当該1つの仮想マシンが最終結果を集約してレスポンスを送信する。サービスの管理者によって、それら複数の仮想マシンの配置が決定される。
The in-
情報収集サーバ100は、サービスに用いられる複数の仮想マシンにおけるリソースの使用状況を監視するサーバコンピュータである。情報収集サーバ100は、クラウドシステム31,32の外側に位置する。情報収集サーバ100は、サービス事業者によって所有されてもよく、自社システム33に含まれていてもよい。
The
情報収集サーバ100は、複数の仮想マシンのうちの少なくとも一部から、ネットワーク30を介して、リソースの使用状況を示す稼働情報を定期的に受信する。リソースの使用状況は、仮想マシンに割り当てられたハードウェア資源の使用状況である。リソースの使用状況として、CPU使用率、RAM使用量、HDDなどのストレージのアクセス量、ネットワーク帯域使用率などが挙げられる。情報収集サーバ100は、複数の仮想マシンにおけるリソースの使用状況を、サービスの管理者に対して報告する。例えば、情報収集サーバ100は、複数の仮想マシンのリソースの使用状況を列挙した画面を表示する。
The
複数の仮想マシンのリソースの使用状況は、サービスの運用管理のために参照される。例えば、新たな仮想マシンの追加、一部の仮想マシンの削除、仮想マシンに割り当てるリソースの増強、仮想マシンを配置するシステムの変更などの構成変更が検討される。なお、サーバ200は、第1の実施の形態の情報処理装置20に対応する。サーバ200bは、第1の実施の形態の情報処理装置20aに対応する。情報収集サーバ100は、第1の実施の形態の情報処理装置10に対応する。
The resource usage status of multiple virtual machines is referred to for service operation management. For example, configuration changes such as adding new virtual machines, deleting some virtual machines, increasing resources allocated to virtual machines, and changing the system in which virtual machines are placed are considered. The
図3は、情報収集サーバのハードウェア例を示すブロック図である。
情報収集サーバ100は、CPU101、RAM102、HDD103、画像インタフェース104、入力インタフェース105、媒体リーダ106および通信インタフェース107を有する。情報収集サーバ100が有するこれらのユニットは、バスに接続されている。CPU101は、第1の実施の形態の処理部13に対応する。RAM102またはHDD103は、第1の実施の形態の記憶部12に対応する。通信インタフェース107は、第1の実施の形態の通信部11に対応する。サーバ200,200a,200b,200c,200d,200eも、情報収集サーバ100と同様のハードウェアを有する。
FIG. 3 is a block diagram showing a hardware example of the information collection server.
The
CPU101は、プログラムの命令を実行するプロセッサである。CPU101は、HDD103に記憶されたプログラムやデータの少なくとも一部をRAM102にロードし、プログラムを実行する。CPU101は複数のプロセッサコアを備えてもよく、情報収集サーバ100は複数のプロセッサを備えてもよい。複数のプロセッサの集合を「マルチプロセッサ」または単に「プロセッサ」と言うことがある。
The
RAM102は、CPU101が実行するプログラムやCPU101が演算に使用するデータを一時的に記憶する揮発性半導体メモリである。情報収集サーバ100は、RAM以外の種類のメモリを備えてもよく、複数のメモリを備えてもよい。
The
HDD103は、OS(Operating System)やミドルウェアやアプリケーションソフトウェアなどのソフトウェアのプログラム、および、データを記憶する不揮発性ストレージである。情報収集サーバ100は、フラッシュメモリやSSD(Solid State Drive)など他の種類のストレージを備えてもよく、複数のストレージを備えてもよい。
The
画像インタフェース104は、CPU101からの命令に従って、情報収集サーバ100に接続された表示装置111に画像を出力する。表示装置111として、CRT(Cathode Ray Tube)ディスプレイ、液晶ディスプレイ(LCD:Liquid Crystal Display)、有機EL(OEL:Organic Electro-Luminescence)ディスプレイ、プロジェクタなど、任意の種類の表示装置を使用することができる。情報収集サーバ100に、プリンタなど表示装置111以外の出力デバイスが接続されてもよい。
The
入力インタフェース105は、情報収集サーバ100に接続された入力デバイス112から入力信号を受け付ける。入力デバイス112として、マウス、タッチパネル、タッチパッド、キーボードなど、任意の種類の入力デバイスを使用することができる。情報収集サーバ100に複数種類の入力デバイスが接続されてもよい。
The
媒体リーダ106は、記録媒体113に記録されたプログラムやデータを読み取る読み取り装置である。記録媒体113として、フレキシブルディスク(FD:Flexible Disk)やHDDなどの磁気ディスク、CD(Compact Disc)やDVD(Digital Versatile Disc)などの光ディスク、半導体メモリなど、任意の種類の記録媒体を使用することができる。媒体リーダ106は、例えば、記録媒体113から読み取ったプログラムやデータを、RAM102やHDD103などの他の記録媒体にコピーする。読み取られたプログラムは、例えば、CPU101によって実行される。なお、記録媒体113は可搬型記録媒体であってもよく、プログラムやデータの配布に用いられることがある。また、記録媒体113やHDD103を、コンピュータ読み取り可能な記録媒体と言うことがある。
The
通信インタフェース107は、ネットワーク30に接続され、ネットワーク30を介してサーバ200,200a,200b,200c,200d,200eと通信する。通信インタフェース107は、例えば、スイッチやルータなどの有線通信装置に接続される有線通信インタフェースである。ただし、通信インタフェース107が、基地局やアクセスポイントなどの無線通信装置に接続される無線通信インタフェースであってもよい。
The
次に、複数の仮想マシンの配置および接続関係について説明する。
図4は、サービスと仮想マシンとシステムの対応例を示す図である。
第2の実施の形態で運用されるサービスの1つの例は、プロセス41,42,43,44,45,46を含む。プロセス41,42,43,44,45,46の間の通信のトポロジは木構造である。プロセス41は、ユーザからリクエストを受信する。プロセス41は、プロセス42,43にそれぞれメッセージを送信して、プロセス42,43にデータ処理を要求する。プロセス43は、プロセス41からメッセージを受信した後、プロセス44にメッセージを送信して、プロセス44にデータ処理を要求する。プロセス44は、プロセス43からメッセージを受信した後、プロセス45にメッセージを送信して、プロセス45にデータ処理を要求する。プロセス42は、プロセス41からメッセージを受信した後、プロセス46にメッセージを送信して、プロセス46にデータ処理を要求する。
Next, the arrangement and connection relationship of a plurality of virtual machines will be described.
FIG. 4 is a diagram showing an example of correspondence between a service, a virtual machine, and a system.
One example of a service operated in the second embodiment includes
プロセス45は、要求されたデータ処理を行う。プロセス44は、送信したメッセージに対する応答として、プロセス45からデータ処理結果を受信し、自身のデータ処理を行う。プロセス43は、送信したメッセージに対する応答として、プロセス44からデータ処理結果を受信し、自身のデータ処理を行う。プロセス46は、要求されたデータ処理を行う。プロセス42は、送信したメッセージに対する応答として、プロセス46からデータ処理結果を受信し、自身のデータ処理を行う。プロセス41は、送信したメッセージに対する応答として、プロセス42,43からデータ処理結果を受信する。最後に、プロセス41は、自身のデータ処理を行い、ユーザにレスポンスを送信する。
プロセス41は、仮想マシン51で実行される。プロセス42は、仮想マシン52で実行される。プロセス43は、仮想マシン53で実行される。プロセス44は、仮想マシン54で実行される。プロセス45は、仮想マシン55で実行される。プロセス46は、仮想マシン56で実行される。プロセス41,42,43,44,45,46の処理手順は、アプリケーションプログラムによって規定される。第2の実施の形態の仮想マシン51,52,53,54,55,56は、ゲストOSおよびアプリケーションプログラムを実行する狭義の仮想マシンである。ただし、仮想マシン51,52,53,54,55,56を、コンテナ型コンピュータ仮想化技術のコンテナとしてもよく、仮想マシン51,52,53,54,55,56がゲストOSを実行していなくてもよい。
The
仮想マシン51,53,54,55は、クラウドシステム31に配置される。クラウドシステム31の中では、仮想マシン51,53,54,55が互いに異なるサーバに配置されてもよいし、仮想マシン51,53,54,55のうちの2つ以上が同一のサーバに配置されてもよい。仮想マシン52,56は、クラウドシステム32に配置される。クラウドシステム32の中では、仮想マシン52,56が異なるサーバに配置されてもよいし同一のサーバに配置されてもよい。この例では、仮想マシン51,52,53,54,55,56が2つのパブリッククラウドシステムに分割して配置されている。ただし、仮想マシン51,52,53,54,55,56の一部を、自社システム33に配置することも可能である。なお、仮想マシン51は、第1の実施の形態の仮想マシン21に対応する。仮想マシン52は、第1の実施の形態の仮想マシン22に対応する。
The
ここで、情報収集サーバ100は、仮想マシン51,52,53,54,55,56におけるリソースの使用状況を監視する。リソースの使用状況の監視精度を高くし、監視情報のリアルタイム性を確保するには、情報収集サーバ100が高頻度で稼働情報を受信することが好ましい。しかし、情報収集サーバ100が仮想マシン51,52,53,54,55,56の全てから高頻度で稼働情報を受信すると、広域データ通信ネットワークであるネットワーク30のトラフィックが多くなるという問題がある。
Here, the
そこで、第2の実施の形態の情報処理システムは、仮想マシン51,52,53,54,55,56のうち、一部の仮想マシンから情報収集サーバ100への稼働情報の送信を停止する。稼働情報の送信を停止する仮想マシンは、リソースの使用状況が他の特定の仮想マシンと強い相関をもつ仮想マシンとする。稼働情報を収集しない仮想マシンのリソースの使用状況は、情報収集サーバ100が、稼働情報を収集する仮想マシンのリソースの使用状況と予め算出しておいた相関関係とに基づいて推定する。これにより、監視精度を維持しつつネットワーク30のトラフィックを削減できる。
Therefore, the information processing system of the second embodiment stops the transmission of operation information from some of the
図5は、情報収集サーバと仮想マシンの通信例を示すシーケンス図である。
ここでは、仮想マシン51,52,53,54,55,56のうち、代表して仮想マシン51,53の通信について説明する。図5のシーケンス例では、仮想マシン51が情報収集サーバ100への稼働情報の送信を継続し、仮想マシン53が情報収集サーバ100への稼働情報の送信を一時的に停止している。
FIG. 5 is a sequence diagram showing an example of communication between the information collection server and the virtual machine.
Here, among the
まず、情報収集サーバ100は、仮想マシン51,53にテスト開始通知を送信する(S100)。テスト開始通知を受けて、仮想マシン51,53は、他の仮想マシンとの通信の監視を開始する。通信の監視は、パケットレベルの送信パケットの監視でもよいし、アプリケーションレベルの送信メッセージの監視でもよい。仮想マシン51,53は、送信メッセージの宛先および時刻を少なくとも含む通信ログを採取する。
First, the
情報収集サーバ100は、サービスの入り口である仮想マシン51にテストリクエストを送信する(S101)。仮想マシン51は、テストリクエストを受けて、テストメッセージを仮想マシン53に送信して仮想マシン53にデータ処理を要求する(S102)。このとき、仮想マシン51は、仮想マシン53へのテストメッセージの送信を検出し、仮想マシン53へのテストメッセージの送信を示す通信ログを採取している。テストリクエストの処理が完了すると、仮想マシン51,53は、情報収集サーバ100に通信ログを送信する(S103)。仮想マシン51,53は、自律的に通信ログを送信する。ただし、情報収集サーバ100が仮想マシン51,53に通信ログを要求してもよい。
The
情報収集サーバ100は、他の仮想マシンからも同様に通信ログを受信する。情報収集サーバ100は、これらの通信ログに基づいて仮想マシン間のメッセージ送信の順序を判定し、図4に示すようなサービスのデータフローを判定する。また、情報収集サーバ100は、稼働情報の収集頻度の初期値として、低い収集頻度を決定する。低い収集頻度は、例えば、1分間隔とする。情報収集サーバ100は、サービスに参加する仮想マシンの総数に応じて収集頻度の初期値を決定してもよい。その場合、仮想マシンの総数が少ないほど収集頻度を高くし、仮想マシンの総数が多いほど収集頻度を低くする。後述のグループ分類の前は、情報収集サーバ100が低い収集頻度で稼働情報を収集することで、情報処理システム全体の通信量が一時的に過大になるのを抑制することができる。
The
情報収集サーバ100は、仮想マシン51,53に収集頻度の初期値を通知する(S104)。仮想マシン51,53は、情報収集サーバ100から通知された低い頻度で、リソースの使用状況を取得して情報収集サーバ100に稼働情報を送信することを開始する(S105)。リソースの使用状況としては、CPU使用率、RAM使用量、HDDアクセス量、ネットワーク帯域使用率などが挙げられる。第2の実施の形態では、リソースとして主にCPUとRAMに着目するものとする。
The
情報収集サーバ100は、仮想マシン51,53から受信する稼働情報を履歴として少なくとも一定期間保持する。一定期間の稼働情報の履歴が蓄積されると、情報収集サーバ100は、稼働情報の履歴と複数の仮想マシンの間のデータフローに基づいて、それら複数の仮想マシンをグループに分類する。2つの仮想マシンがデータフロー上で親子関係にあり、当該2つの仮想マシンのリソースの使用状況に強い相関がある場合、当該2つの仮想マシンが同一グループに分類される。2つの仮想マシンの間で、稼働情報に含まれる計測値の相関係数の絶対値が所定の閾値(例えば、0.8)より大きい場合、強い相関があると判断される。親子関係は、一方の仮想マシンが他方の仮想マシンにメッセージを送信する関係である。図4の例によれば、仮想マシン51,53に着目すると、仮想マシン51が親仮想マシンであり仮想マシン53が子仮想マシンである。
The
子仮想マシンと更に親子関係にある孫仮想マシンのリソースの使用状況が、親仮想マシンと強い相関をもつ場合、孫仮想マシンも連続的に親仮想マシンと同一グループに分類される。情報収集サーバ100は、各グループの中で最も上流側の仮想マシンを代表仮想マシンとして選択し、代表仮想マシン以外の仮想マシンを従属仮想マシンとして扱う。後述するように、代表仮想マシンのみが情報収集サーバ100に稼働情報を送信し、従属仮想マシンは情報収集サーバ100に稼働情報を送信しないことになる。なお、情報収集サーバ100は、同一グループに分類する仮想マシンを、クラウドシステム31,32および自社システム33のうち同一のシステムに配置された仮想マシンに限定してもよい。
If the resource usage of the grandchild virtual machine that has a parent-child relationship with the child virtual machine has a strong correlation with the parent virtual machine, the grandchild virtual machine is also continuously classified into the same group as the parent virtual machine. The
仮想マシンのグループ化は、リソースの種類毎に行われる。よって、2つの仮想マシンが、CPU使用率については強い相関をもつため同一グループに分類される一方、RAM使用量については相関が低いため別グループに分類されることが有り得る。ここでは、仮想マシン51が代表仮想マシンであり、仮想マシン53が従属仮想マシンであるとする。また、情報収集サーバ100は、従属仮想マシンについて、代表仮想マシンのリソースの使用状況に対する倍率を算出する。倍率は、例えば、一定期間の従属仮想マシンの計測値の平均を代表仮想マシンの計測値の平均で割ることで算出できる。ただし、倍率は、代表仮想マシンの計測値を表す変数を用いた関数として表現されてもよい。
Virtual machines are grouped by resource type. Therefore, two virtual machines may be classified into the same group because they have a strong correlation with respect to CPU usage, while they may be classified into different groups because they have a low correlation with respect to RAM usage. Here, it is assumed that the
情報収集サーバ100は、代表仮想マシンである仮想マシン51に、グループ通知を送信する(S106)。グループ通知は、従属仮想マシンである仮想マシン53の識別情報と、仮想マシン51の計測値に対する仮想マシン53の計測値の倍率とを含む。グループ通知を受信すると、仮想マシン51は、仮想マシン51と同一グループに属する従属仮想マシンである仮想マシン53に、停止通知を送信する(S107)。仮想マシン53は、停止通知を受信すると、情報収集サーバ100への稼働情報の送信を停止する。
The
また、仮想マシン51は、稼働情報を情報収集サーバ100に送信する頻度を初期値よりも高く変更する。仮想マシン51は、変更後の高い収集頻度で、リソースの使用状況を取得して情報収集サーバ100に稼働情報を送信することを開始する(S108)。
Further, the
変更後の収集頻度は、同一グループに属する従属仮想マシンの数に応じて決定される。グループ内の仮想マシンの総数をn、従属仮想マシンの数をmとすると、代表仮想マシンの送信頻度を、初期値のn÷(n−m)×α倍になるよう上げる。すなわち、代表仮想マシンの送信間隔を、初期値の(n−m)÷n÷α倍になるよう短縮する。稼働情報を送信しない従属仮想マシンが多いほど、代表仮想マシンの送信頻度が高くなる。調整パラメータαは、1より小さい正の実数である。これにより、グループ内の稼働情報の総データ量を削減しつつ代表仮想マシンの収集頻度を上げることができる。 The changed collection frequency depends on the number of dependent virtual machines that belong to the same group. Assuming that the total number of virtual machines in the group is n and the number of dependent virtual machines is m, the transmission frequency of the representative virtual machine is increased so as to be n ÷ (nm) × α times the initial value. That is, the transmission interval of the representative virtual machine is shortened so as to be (nm) ÷ n ÷ α times the initial value. The more dependent virtual machines that do not send operation information, the higher the frequency of sending the representative virtual machine. The adjustment parameter α is a positive real number less than 1. As a result, it is possible to increase the collection frequency of representative virtual machines while reducing the total amount of operation information in the group.
ただし、収集頻度を高くし過ぎることは、監視精度の向上に寄与しない上に、ネットワーク負荷を無駄に高くしてしまう。そこで、代表仮想マシンの収集頻度は、所定の上限より高くならないようにする。収集頻度の上限は、例えば、1秒間隔とする。仮想マシン51,53の2つの仮想マシンが1つのグループを形成する場合、例えば、代表仮想マシンである仮想マシン51の収集頻度が30秒と1分の間で調整される。
However, if the collection frequency is too high, it does not contribute to the improvement of monitoring accuracy and the network load is unnecessarily increased. Therefore, the collection frequency of the representative virtual machine should not be higher than the predetermined upper limit. The upper limit of the collection frequency is, for example, an interval of 1 second. When two virtual machines of
情報収集サーバ100は、仮想マシン51からは稼働情報を受信する一方、仮想マシン53からは稼働情報を受信しなくなる。そこで、情報収集サーバ100は、仮想マシン51から受信した最新の稼働情報が示す計測値に、予め算出しておいた仮想マシン53の倍率を乗じることで、仮想マシン53の最新のリソースの使用状況を推定する。倍率の算出およびリソースの使用状況の推定は、リソースの種類毎に行われる。
The
また、仮想マシン51は、同一グループに属する従属仮想マシンである仮想マシン53のリソースの使用状況を監視する。仮想マシン51は、低い所定頻度で仮想マシン53に稼働情報を要求する(S109)。低い所定頻度は、ステップS104で通知された収集頻度の初期値と同じでもよく、例えば、1分間隔とする。仮想マシン53は、仮想マシン51からの要求に応じて仮想マシン53におけるリソースの使用状況を取得し、仮想マシン51に稼働情報を送信する(S110)。
In addition, the
仮想マシン51は、仮想マシン53から稼働情報を受信すると、仮想マシン51と仮想マシン53との間でリソースの使用状況に強い相関が維持されているか判定する。強い相関が維持されているかは、直近の複数回の仮想マシン53の稼働情報とそれに対応する仮想マシン51の稼働情報とを対比して判断される。
When the
例えば、仮想マシン51は、仮想マシン53からの稼働情報の受信時刻に最も近い仮想マシン51の稼働情報を履歴から抽出し、仮想マシン51の稼働情報に含まれる計測値と仮想マシン53の稼働情報に含まれる計測値とのペアを作成する。仮想マシン51は、複数のペアから相関係数を算出し、相関係数の絶対値が閾値より大きい場合は強い相関が維持されていると判断し、相関係数の絶対値が閾値以下である場合は相関が低くなったと判断する。また、仮想マシン51は、強い相関が維持されていると判断した場合、仮想マシン51に対する仮想マシン53のリソースの使用状況の倍率を再計算する。例えば、仮想マシン51は、直近の複数回の仮想マシン53の計測値の平均を、それに対応する仮想マシン51の計測値の平均で割ることで算出する。
For example, the
ここでは、仮想マシン51と仮想マシン53との間に強い相関が維持されているとする。すると、仮想マシン51は、再計算した倍率を含む相関更新通知を情報収集サーバ100に送信する(S111)。また、仮想マシン51は、引き続き高い収集頻度で、リソースの使用状況を取得して情報収集サーバ100に稼働情報を送信する(S112)。情報収集サーバ100は、引き続き、仮想マシン53から稼働情報を受信しない。そこで、情報収集サーバ100は、ステップS111で通知された最新の倍率を用いて、仮想マシン53におけるリソースの使用状況を推定する。
Here, it is assumed that a strong correlation is maintained between the
再び、仮想マシン51は、仮想マシン53に稼働情報を要求し(S113)、仮想マシン53から稼働情報を受信する(S114)。ここでは、相関係数の絶対値が閾値以下になり、仮想マシン51と仮想マシン53との間の相関が失われたとする。すると、仮想マシン51は、仮想マシン53に再開通知を送信する(S115)。再開通知を受信すると、仮想マシン53は、定期的にリソースの使用状況を取得して情報収集サーバ100に送信することを再開する。このときの仮想マシン53の収集頻度は、低い頻度でよく、例えば、ステップS104で通知された初期値とする。
Again, the
仮想マシン51は、情報収集サーバ100に、仮想マシン53がグループから外れたことを示すグループ解除通知を送信する(S116)。情報収集サーバ100は、グループ解除通知を受信すると、グループから外れた仮想マシン53のリソースの使用状況を、推定値ではなく計測値に基づいて把握するように切り替える。
The
また、仮想マシン51は、グループに属する従属仮想マシンが減少したことに伴い、仮想マシン51が稼働情報を情報収集サーバ100に送信する頻度を再計算する。これにより、仮想マシン51の収集頻度が低下する。その結果、仮想マシン51,53は、低い頻度で、リソースの使用状況を取得して情報収集サーバ100に稼働情報を送信するようになる(S117)。収集頻度は、例えば、1分間隔に戻る。
Further, the
このように、サービスの中でメッセージを送信する親仮想マシンと当該メッセージを受信してデータ処理を行う子仮想マシンとの間には、CPUやRAMなどのリソースの使用状況に強い相関があることがある。この場合、子仮想マシンの稼働情報の収集を停止し、親仮想マシンの稼働情報から子仮想マシンのリソースの使用状況を推定することで、ネットワーク30のトラフィックを削減することができる。また、ネットワーク30の総トラフィックが削減される範囲で、親仮想マシンの収集頻度を高くすることで、リソースの使用状況をリアルタイムに監視することができ、監視精度を向上させることができる。
In this way, there is a strong correlation between the parent virtual machine that sends a message in the service and the child virtual machine that receives the message and processes data, in terms of resource usage such as CPU and RAM. There is. In this case, the traffic of the
なお、情報収集サーバ100は、従属仮想マシンの稼働情報の収集を停止した後も、稼働情報を収集している代表仮想マシンの間で相関関係を定期的に判定する。新たに2つの代表仮想マシンの間で強い相関が検出された場合、情報収集サーバ100は、データフローの下流側の代表仮想マシンを従属仮想マシンに変更する。その場合、情報収集サーバ100は、ステップS106と同様に、上流側の代表仮想マシンに対して、従属仮想マシンが追加されたことを示すグループ通知を送信する。
The
図6は、仮想マシンのグループ化例を示す図である。
前述のように、情報収集サーバ100は、仮想マシン51にテストリクエストを送信する。すると、図4に示す構造に従い、仮想マシン51は仮想マシン52,53にテストメッセージを送信する。仮想マシン53は仮想マシン54にテストメッセージを送信し、仮想マシン54は仮想マシン55にテストメッセージを送信する。仮想マシン52は仮想マシン56にテストメッセージを送信する。この間、仮想マシン51,52,53,54,55,56は、パケットを監視するなどの方法により、テストメッセージの送信先の仮想マシンおよびテストメッセージの送信時刻を含む通信ログを採取する。
FIG. 6 is a diagram showing an example of grouping virtual machines.
As described above, the
仮想マシン51,52,53,54,55,56は、通信ログを情報収集サーバ100に送信する。情報収集サーバ100は、受信した通信ログに基づいて、仮想マシン51,52,53,54,55,56の間のメッセージ送信の順序を判定してデータフローを把握する。また、情報収集サーバ100は、仮想マシン51,52,53,54,55,56から低頻度(例えば、1分間隔)で、CPU使用率を示す稼働情報であるCPU情報と、RAM使用量を示す稼働情報であるRAM情報の両方を受信する。
The
図7は、仮想マシンのグループ化例を示す図(続き1)である。
情報収集サーバ100は、リソースの種類毎、すなわち、CPUとRAMそれぞれについて、仮想マシン51,52,53,54,55,56をグループ化する。
FIG. 7 is a diagram (continuation 1) showing an example of grouping virtual machines.
The
CPUについて、情報収集サーバ100は、低頻度で仮想マシン51,52,53,54,55,56から受信したCPU情報を用いて、データフローの先頭の仮想マシン51から下流に向かって相関関係を順に判定する。
Regarding the CPU, the
まず、情報収集サーバ100は、仮想マシン51と仮想マシン53の間のCPU使用率の相関係数を算出する。ここでは、相関係数の絶対値が閾値より大きいとする。すると、情報収集サーバ100は、仮想マシン53を仮想マシン51と同一グループに分類する。次に、情報収集サーバ100は、データフローを下流に向かって辿り、仮想マシン51と仮想マシン54の間のCPU使用率の相関係数を算出する。ここでは、相関係数の絶対値が閾値より大きいとする。すると、情報収集サーバ100は、仮想マシン54を仮想マシン51,53と同一グループに分類する。
First, the
次に、情報収集サーバ100は、データフローを下流に向かって辿り、仮想マシン51と仮想マシン55の間のCPU使用率の相関係数を算出する。ここでは、相関係数の絶対値が閾値以下であるとする。すると、情報収集サーバ100は、仮想マシン55を仮想マシン51,53,54と別グループに分類する。また、情報収集サーバ100は、仮想マシン51と仮想マシン52の間のCPU使用率の相関係数を算出する。ここでは、相関係数の絶対値が閾値以下であるとする。すると、情報収集サーバ100は、仮想マシン52を仮想マシン51と別グループに分類する。次に、情報収集サーバ100は、データフローを下流に向かって辿り、仮想マシン52と仮想マシン56の間のCPU使用率の相関係数を算出する。ここでは、相関係数の絶対値が閾値より大きいとする。すると、情報収集サーバ100は、仮想マシン56を仮想マシン52と同一グループに分類する。
Next, the
これにより、CPUについては、仮想マシン51,52,55が代表仮想マシンになり、仮想マシン53,54,56が従属仮想マシンになる。仮想マシン51,52,55は、情報収集サーバ100に定期的にCPU情報を送信する。仮想マシン53,54,56は、情報収集サーバ100へのCPU情報の送信を停止する。また、仮想マシン53,54がCPU情報の送信を停止したことに伴い、初期値の3倍を上限として(例えば、送信間隔の下限を20秒として)、仮想マシン51の収集頻度が高くなる。また、仮想マシン56がCPU情報の送信を停止したことに伴い、初期値の2倍を上限として(例えば、送信間隔の下限を30秒として)、仮想マシン52の収集頻度が高くなる。
As a result, with respect to the CPU, the
同様に、RAMについて、情報収集サーバ100は、低頻度で仮想マシン51,52,53,54,55,56から受信したRAM情報を用いて、データフローの先頭の仮想マシン51から下流に向かって相関関係を順に判定する。
Similarly, with respect to the RAM, the
まず、情報収集サーバ100は、仮想マシン51と仮想マシン53の間のRAM使用量の相関係数を算出する。ここでは、相関係数の絶対値が閾値より大きいとする。すると、情報収集サーバ100は、仮想マシン53を仮想マシン51と同一グループに分類する。次に、情報収集サーバ100は、データフローを下流に向かって辿り、仮想マシン51と仮想マシン54の間のRAM使用量の相関係数を算出する。ここでは、相関係数の絶対値が閾値以下であるとする。すると、情報収集サーバ100は、仮想マシン54を仮想マシン51,53と別グループに分類する。
First, the
次に、情報収集サーバ100は、データフローを下流に向かって辿り、仮想マシン54と仮想マシン55の間のRAM使用量の相関係数を算出する。ここでは、相関係数の絶対値が閾値より大きいとする。すると、情報収集サーバ100は、仮想マシン55を仮想マシン54と同一グループに分類する。また、情報収集サーバ100は、仮想マシン51と仮想マシン52の間のRAM使用量の相関係数を算出する。ここでは、相関係数の絶対値が閾値以下であるとする。すると、情報収集サーバ100は、仮想マシン52を仮想マシン51と別グループに分類する。次に、情報収集サーバ100は、データフローを下流に向かって辿り、仮想マシン52と仮想マシン56の間のRAM使用量の相関係数を算出する。ここでは、相関係数の絶対値が閾値以下であるとする。すると、情報収集サーバ100は、仮想マシン56を仮想マシン52と別グループに分類する。
Next, the
これにより、RAMについては、仮想マシン51,52,54,56が代表仮想マシンになり、仮想マシン53,55が従属仮想マシンになる。仮想マシン51,52,54,56は、情報収集サーバ100に定期的にRAM情報を送信する。仮想マシン53,55は、情報収集サーバ100へのRAM情報の送信を停止する。また、仮想マシン53がRAM情報の送信を停止したことに伴い、初期値の2倍を上限として、仮想マシン51の収集頻度が高くなる。また、仮想マシン55がRAM情報の送信を停止したことに伴い、初期値の2倍を上限として、仮想マシン54の収集頻度が高くなる。
As a result, with respect to RAM,
図8は、仮想マシンのグループ化例を示す図(続き2)である。
ここでは、CPU情報のグループ変更について説明する。RAM情報については、CPU情報とは独立にグループ変更が行われる。代表仮想マシンである仮想マシン51は、低い頻度で、同一グループに属する従属仮想マシンである仮想マシン53,54にCPU情報を要求し、仮想マシン53,54からCPU情報を受信する。また、代表仮想マシンである仮想マシン52は、低い頻度で、同一グループに属する従属仮想マシンである仮想マシン56にCPU情報を要求し、仮想マシン56からCPU情報を受信する。
FIG. 8 is a diagram (continuation 2) showing an example of grouping virtual machines.
Here, the group change of CPU information will be described. The RAM information is group-changed independently of the CPU information. The
仮想マシン51は、仮想マシン51と仮想マシン53の間のCPU使用率の相関係数を算出し、仮想マシン51と仮想マシン54の間のCPU使用率の相関係数を算出する。ここでは、何れの相関係数の絶対値も閾値より大きいとする。すると、仮想マシン53,54は、引き続き仮想マシン51に対する従属仮想マシンとして動作する。また、仮想マシン52は、仮想マシン52と仮想マシン56の間のCPU使用率の相関係数を算出する。ここでは、相関係数の絶対値が閾値以下に低下したとする。すると、仮想マシン56は、仮想マシン52のグループから外れ、代表仮想マシンとして動作する。よって、仮想マシン56は、情報収集サーバ100へのCPU情報の送信を再開する。また、仮想マシン56の送信再開に伴い、仮想マシン52の収集頻度が低下する。
The
一方、情報収集サーバ100は、仮想マシン51,52,55から定期的に受信するCPU情報の相関関係を監視する。情報収集サーバ100は、データフローに従い、仮想マシン51とそのグループに隣接する仮想マシン55とを選択する。情報収集サーバ100は、仮想マシン51と仮想マシン55の間のCPU使用率の相関係数を算出する。ここでは、相関係数の絶対値が閾値より大きくなったとする。すると、仮想マシン55は、仮想マシン51,53,54のグループに入り、従属仮想マシンとして動作する。よって、仮想マシン55は、情報収集サーバ100へのCPU情報の送信を停止する。
On the other hand, the
また、情報収集サーバ100は、データフローに従い、仮想マシン51とそのグループに隣接する仮想マシン52とを選択する。情報収集サーバ100は、仮想マシン51と仮想マシン52の間のCPU使用率の相関係数を算出する。ここでは、相関係数の絶対値が引き続き閾値以下であるとする。すると、仮想マシン52は、引き続き代表仮想マシンとして動作し、情報収集サーバ100へのCPU情報の送信を継続する。
Further, the
このように、情報収集サーバ100の判断により、既存の代表仮想マシンが従属仮想マシンに変更されることがある。また、代表仮想マシンの判断により、既存の従属仮想マシンが代表仮想マシンに変更されることがある。
In this way, the existing representative virtual machine may be changed to the subordinate virtual machine at the discretion of the
次に、情報収集サーバ100および各仮想マシンの機能について説明する。
図9は、情報収集サーバと仮想マシンの機能例を示すブロック図である。
情報収集サーバ100は、構造情報記憶部121、稼働履歴記憶部122および相関情報記憶部123を有する。これらの記憶部は、例えば、RAM102またはHDD103の記憶領域を用いて実現される。また、情報収集サーバ100は、テスト実行部124、稼働情報受信部125、相関検出部126、相関更新部127および稼働状況表示部128を有する。これらの処理部は、例えば、プログラムを用いて実現される。
Next, the functions of the
FIG. 9 is a block diagram showing a functional example of the information collection server and the virtual machine.
The
構造情報記憶部121は、サービスに用いられる複数の仮想マシンの間のデータフローを表すサービス構造情報を記憶する。サービス構造情報は、複数の仮想マシンを木構造に接続したトポロジを表すものである。稼働履歴記憶部122は、仮想マシン51,52,53,54,55,56から受信された稼働情報の履歴を記憶する。稼働履歴記憶部122は、時刻と仮想マシンとリソースの組に対応付けて計測値を記録する。稼働履歴記憶部122は、受信された稼働情報を少なくとも一定期間履歴として保持しておく。相関情報記憶部123は、リソースの使用状況が強い相関をもつ代表仮想マシンと従属仮想マシンとの間の関係を示す相関情報を記憶する。相関情報は、代表仮想マシンの計測値から従属仮想マシンの数値を推定するための倍率を含む。
The structure
テスト実行部124は、仮想マシン51,52,53,54,55,56のデータフローを判定するためのテストを実行する。テスト実行部124は、仮想マシン51,52,53,54,55,56にテスト開始通知し、サービスの入り口である仮想マシン51にテストリクエストを送信する。テスト実行部124は、仮想マシン51,52,53,54,55,56から、テストメッセージの送信先の仮想マシンおよび送信時刻を示す通信ログを収集し、通信ログを分析してデータフローを判定する。テスト実行部124は、データフローを示す構造情報を生成して構造情報記憶部121に格納する。
The
稼働情報受信部125は、仮想マシン51,52,53,54,55,56の少なくとも一部が定期的に送信する稼働情報を受信する。稼働情報はリソースの種類毎に分けられており、何れのリソースについての稼働情報を送信するかは仮想マシンによって異なる。初期状態では、仮想マシン51,52,53,54,55,56の全てが全てのリソースについての稼働情報を低頻度で送信する。稼働情報受信部125は、受信した稼働情報に含まれる最新の計測値を相関情報記憶部123に上書きする。また、稼働情報受信部125は、受信した稼働情報に含まれる計測値を、送信元の仮想マシンの識別情報と受信時刻と計測値が示すリソースの組に対応付けて、稼働履歴記憶部122に追記する。
The operation
相関検出部126は、定期的に、構造情報記憶部121に記憶された構造情報と、稼働履歴記憶部122に記憶された稼働情報の履歴とに基づいて、リソース毎に、稼働情報を送信する仮想マシンの間の相関関係を判定する。相関検出部126は、強い相関が検出された2つの仮想マシンのうち、上流側の仮想マシンを代表仮想マシンに指定し、下流側の仮想マシンを従属仮想マシンに指定する。また、相関検出部126は、代表仮想マシンに対する従属仮想マシンのリソースの使用状況の倍率を算出する。相関検出部126は、代表仮想マシンと従属仮想マシンの関係および倍率を、相関情報記憶部123に記録する。
The
具体的には、相関検出部126は、リソースの種類を選択し、データフローの上流と下流の関係にある2つの仮想マシンを選択し、当該リソースおよび当該2つの仮想マシンに関する直近の一定期間の稼働情報を稼働履歴記憶部122から抽出する。相関検出部126は、一方の仮想マシンの計測値と、受信時刻が最も近い他方の仮想マシンの計測値とを対応付け、異なるタイミングの複数の計測値ペアから相関係数を算出する。相関検出部126は、相関係数の絶対値が閾値より大きい場合は相関が強いと判断し、相関係数の絶対値が閾値以下である場合は相関が弱いと判断する。相関が強い場合、相関検出部126は、代表仮想マシンの直近の一定期間の計測値の平均と、従属仮想マシンの直近の一定期間の計測値の平均とを算出し、後者を前者で割って倍率を算出する。
Specifically, the
相関更新部127は、代表仮想マシンから、倍率が更新されたことを示す相関更新通知を受信する。すると、相関更新部127は、更新された倍率を相関情報記憶部123に記録する。また、相関更新部127は、代表仮想マシンから、ある従属仮想マシンがグループから外れたことを示すグループ解除通知を受信する。すると、相関更新部127は、相関情報記憶部123に記録された相関関係を変更する。
The
稼働状況表示部128は、ユーザからの要求に応じて、仮想マシン51,52,53,54,55,56のリソースの使用状況を列挙した管理画面を表示装置111に表示する。このとき、稼働状況表示部128は、相関情報記憶部123に計測値が記録されている仮想マシンとリソースの組については、その計測値を表示すればよい。一方、稼働状況表示部128は、相関情報記憶部123に計測値が記録されていない仮想マシンとリソースの組については、関連する代表仮想マシンの計測値に倍率を乗じて推定値を算出し、計測値に代えて推定値を表示する。なお、稼働状況表示部128は、ユーザからの要求を待たずに継続的に管理画面を表示するようにしてもよい。また、稼働状況表示部128は、リソースの使用状況を列挙した管理情報を、HDD103などのストレージ装置に保存してもよく、他の情報処理装置に送信してもよい。
The operation
仮想マシン51は、グループ情報記憶部221を有する。グループ情報記憶部221は、例えば、RAMまたはHDDの記憶領域を用いて実現される。また、仮想マシン51は、サービス処理部222、通信ログ取得部223、稼働情報取得部224およびグループ制御部225を有する。これらの処理部は、例えば、プログラムを用いて実現される。他の仮想マシンも、仮想マシン51と同様の機能を有する。
The
グループ情報記憶部221は、仮想マシン51が代表仮想マシンである場合に、同一グループに属する従属仮想マシンを管理するためのグループ情報を記憶する。グループ情報は、情報収集サーバ100から通知された従属仮想マシンの識別情報を含む。また、グループ情報は、従属仮想マシンから収集した計測値を含む。また、グループ情報は、情報収集サーバ100から通知された倍率または更新された最新の倍率を含む。
The group
サービス処理部222は、アプリケーションプログラムに従ってサービスのデータ処理を実行する。仮想マシン51がサービスの入り口に相当する場合、サービス処理部222は、情報収集サーバ100からテストリクエストを受信する。サービス処理部222は、他の仮想マシンにメッセージを送信することがある。また、サービス処理部222は、他の仮想マシンからメッセージを受信することがある。
The
通信ログ取得部223は、情報収集サーバ100からテスト開始の通知を受信すると、仮想マシン51が送信するパケットを監視する。または、通信ログ取得部223は、アプリケーションレベルの送信メッセージを監視する。通信ログ取得部223は、テスト実行時におけるメッセージの送信先の仮想マシンと送信時刻を検出し、送信先の仮想マシンおよび送信時刻を示す通信ログを生成して情報収集サーバ100に送信する。
When the communication
稼働情報取得部224は、仮想マシン51における現在のリソースの使用状況を示す計測値を取得する。計測値として、CPU使用率、RAM使用量、HDDアクセス量、ネットワーク帯域使用率などが挙げられる。仮想マシン51でゲストOSが実行されている場合、稼働情報取得部224は、ゲストOSから計測値を取得してもよい。
The operation
情報収集サーバ100から収集頻度の初期値が通知されると、稼働情報取得部224は、指定された収集頻度で、全てのリソースの計測値を取得して情報収集サーバ100に送信する。グループ制御部225によって、あるリソースの収集頻度の変更が決定されると、稼働情報取得部224は、変更後の収集頻度で計測値の取得および送信を行う。あるリソースについて他の仮想マシンから停止通知を受信すると、稼働情報取得部224は、計測値の取得および送信を停止する。あるリソースについて他の仮想マシンから再開通知を受信すると、稼働情報取得部224は、計測値の取得および送信を再開する。あるリソースについて他の仮想マシンから稼働情報が要求されると、稼働情報取得部224は、計測値を取得して当該他の仮想マシンに返信する。
When the
グループ制御部225は、仮想マシン51が代表仮想マシンである場合に、従属仮想マシンを管理する。グループ制御部225は、情報収集サーバ100から通知された従属仮想マシンの識別情報および倍率を、グループ情報記憶部221に記録する。また、グループ制御部225は、従属仮想マシンに停止通知を送信する。また、グループ制御部225は、従属仮想マシンの数に応じて、仮想マシン51の収集頻度を変更する。
The
また、グループ制御部225は、定期的に従属仮想マシンに稼働情報を要求して、従属仮想マシンの稼働情報を収集する。グループ制御部225は、仮想マシン51の稼働情報と従属仮想マシンの稼働情報との間に強い相関が維持されているか判定する。強い相関が維持されている場合、グループ制御部225は、最新の倍率を算出し、グループ情報記憶部221に記録された倍率を更新すると共に、最新の倍率を含む相関更新通知を情報収集サーバ100に送信する。強い相関が維持されていない場合、グループ制御部225は、その従属仮想マシンに再開通知を送信し、グループ情報記憶部221のグループ情報を更新し、グループ解除通知を情報収集サーバ100に送信する。
Further, the
図10は、サービス構造テーブルと稼働履歴テーブルの例を示す図である。
サービス構造テーブル131は、構造情報記憶部121に記憶される。サービス構造テーブル131は、仮想マシンID、親仮想マシンおよび子仮想マシンの項目を含む。仮想マシンIDの項目には、仮想マシンの識別情報が登録される。親仮想マシンの項目には、当該仮想マシンにメッセージを送信する送信元である上流側の仮想マシンの識別情報が登録される。子仮想マシンの項目には、当該仮想マシンがメッセージを送信する宛先である下流側の仮想マシンの識別情報が登録される。
FIG. 10 is a diagram showing an example of a service structure table and an operation history table.
The service structure table 131 is stored in the structure
サービス構造テーブル131によって、図4に示すような仮想マシン51,52,53,54,55,56の間の木構造のデータフローが表現される。例えば、仮想マシン51(VM1)の子仮想マシンは、仮想マシン52(VM2)および仮想マシン53(VM3)である。仮想マシン52(VM2)の親仮想マシンは、仮想マシン51(VM1)である。仮想マシン52(VM2)の子仮想マシンは、仮想マシン56(VM6)である。
The service structure table 131 represents a tree-structured data flow between
稼働履歴テーブル132は、稼働履歴記憶部122に記憶される。稼働履歴テーブル132は、時刻、仮想マシンID、リソースおよび計測値の項目を含む。時刻の項目には、情報収集サーバ100が稼働情報を受信した時刻が登録される。ただし、時刻として、稼働情報に含まれている時刻を用いてもよく、仮想マシンが計測値を取得した時刻や稼働情報を送信した時刻を用いてもよい。仮想マシンIDの項目には、稼働情報を送信した仮想マシンの識別情報が登録される。リソースの項目には、計測値が示すリソースの種類が登録される。リソースの種類として、CPU、RAM、ストレージ、ネットワークなどが挙げられる。計測値の項目には、稼働情報に含まれる計測値が登録される。
The operation history table 132 is stored in the operation
図11は、相関関係テーブルと稼働状況テーブルの例を示す図である。
相関関係テーブル133は、相関情報記憶部123に記憶される。相関関係テーブル133は、仮想マシンID、リソース、計測値、従属仮想マシンおよび倍率の項目を含む。仮想マシンIDの項目には、稼働情報を送信している代表仮想マシンの識別情報が登録される。リソースの項目には、CPUやRAMなどのリソースの種類が登録される。計測値の項目には、当該代表仮想マシンおよび当該リソースについて受信された最新の稼働情報に含まれる計測値が登録される。従属仮想マシンの項目には、当該リソースについて当該代表仮想マシンと強い相関のある従属仮想マシンの識別情報が登録される。倍率は、代表仮想マシンの計測値に対する従属仮想マシンの数値の倍率が登録される。
FIG. 11 is a diagram showing an example of a correlation table and an operation status table.
The correlation table 133 is stored in the correlation
例えば、相関関係テーブル133には、仮想マシン51の最新のCPUの計測値が50であり、仮想マシン51に対する仮想マシン53のCPUの倍率が0.50であり、仮想マシン51に対する仮想マシン54のCPUの倍率が0.30であることが登録される。また、例えば、仮想マシン51の最新のRAMの計測値が30であり、仮想マシン51に対する仮想マシン53のRAMの倍率が0.40であることが登録される。また、例えば、仮想マシン52の最新のCPUの計測値が70であり、仮想マシン52に対する仮想マシン56のCPUの倍率が1.20であることが登録される。
For example, in the correlation table 133, the latest CPU measurement value of the
稼働状況テーブル134は、稼働状況表示部128によって生成されて表示装置111に表示される。稼働状況テーブル134は、仮想マシンID、リソースおよび現在値の項目を含む。仮想マシンIDの項目には、仮想マシンの識別情報が登録される。リソースの項目には、CPUやRAMなどのリソースの種類が登録される。現在値の項目には、最新のリソースの使用状況を示す数値が登録される。現在値の項目に登録される数値は、代表仮想マシンについては最新の計測値であり、従属仮想マシンについては推定値である。稼働状況テーブル134は、推定値については推定値である旨を付記してもよい。
The operation status table 134 is generated by the operation
例えば、仮想マシン51のCPU使用率として、計測値である「50」が表示される。また、仮想マシン51のRAM使用量として、計測値である「30」が表示される。一方、仮想マシン53のCPU使用率として、仮想マシン51のCPUの計測値である50に倍率0.50を乗じて算出される推定値である「25」が表示される。また、仮想マシン53のRAM使用量として、仮想マシン51のRAMの計測値である30に倍率0.40を乗じて算出される推定値である「12」が表示される。
For example, the measured value "50" is displayed as the CPU usage rate of the
図12は、グループ管理テーブルの例を示す図である。
グループ管理テーブル231は、グループ情報記憶部221に記憶される。グループ管理テーブル231は、リソース、自計測値、従属仮想マシン、他計測値および倍率の項目を含む。リソースの項目には、CPUやRAMなどのリソースの種類が登録される。自計測値の項目には、仮想マシン51で計測された当該リソースの使用状況を示す数値が登録される。従属仮想マシンの項目には、仮想マシン51と同一グループに属する従属仮想マシンの識別情報が登録される。他計測値の項目には、従属仮想マシンで計測された当該リソースの使用状況を示す数値が登録される。倍率の項目には、仮想マシン51の計測値に対する従属仮想マシンの計測値の最新の平均倍率が登録される。
FIG. 12 is a diagram showing an example of a group management table.
The group management table 231 is stored in the group
次に、情報収集サーバ100および代表仮想マシンの処理手順について説明する。
図13は、サーバ開始処理の手順例を示すフローチャートである。
(S10)テスト実行部124は、所定の仮想マシンにテストリクエストを送信する。テストリクエストに応じて、複数の仮想マシンの間でメッセージが送信される。
Next, the processing procedure of the
FIG. 13 is a flowchart showing a procedure example of the server start process.
(S10) The
(S11)テスト実行部124は、各仮想マシンから通信ログを受信する。通信ログは、メッセージの送信先の仮想マシンと送信時刻とを含んでいる。
(S12)テスト実行部124は、ステップS11で受信した通信ログに基づいて、複数の仮想マシンの間のデータフローを判定し、サービス構造テーブル131を生成する。
(S11) The
(S12) The
(S13)稼働情報受信部125は、サービスに参加する仮想マシンの総数に応じて、稼働情報を収集する収集頻度の初期値を決定する。
(S14)稼働情報受信部125は、収集頻度を各仮想マシンに通知する。これにより、稼働情報受信部125は、通知した頻度で各仮想マシンから稼働情報を受信する。稼働情報受信部125は、受信した稼働情報を稼働履歴テーブル132に保存する。
(S13) The operation
(S14) The operation
(S15)相関検出部126は、サービス構造テーブル131および稼働履歴テーブル132に基づいて、リソース毎に複数の仮想マシンをグループ分けする。グループ内の1つの仮想マシンが稼働情報を送信する代表仮想マシンとなり、他の仮想マシンが稼働情報を送信しない従属仮想マシンとなる。グループ判定の詳細は後述する。
(S15) The
(S16)相関検出部126は、ステップS15で判定された代表仮想マシンに、同一グループに属する従属仮想マシンの識別情報およびその倍率を通知する。グループ分けはリソース毎に行われるため、当該通知もリソース毎に行われる。
(S16) The
図14は、グループ判定の手順例を示すフローチャートである。
グループ判定は、上記のステップS15および後述するステップS64で実行される。
(S20)相関検出部126は、リソースを1つ選択する。監視対象のリソースは、CPU、RAM、HDD、ネットワークなど予め決まっている。
FIG. 14 is a flowchart showing an example of a procedure for group determination.
The group determination is executed in step S15 described above and step S64 described later.
(S20) The
(S21)相関検出部126は、サービス構造テーブル131が示す木構造のデータフローの中でルート(始点)の仮想マシンを選択し、代表仮想マシンに指定する。
(S22)相関検出部126は、木構造のデータフローの中で、稼働情報を収集中の仮想マシンが残っているか判断する。該当する仮想マシンが残っている場合はステップS23に進み、該当する仮想マシンが残っていない場合はステップS29に進む。
(S21) The
(S22) The
(S23)相関検出部126は、現在選択している仮想マシンからデータフローを下流方向に辿り、次の仮想マシンを選択する。データフローが分岐している場合、何れか1つの分岐方向を辿ればよい。木構造の末端まで到達した場合、相関検出部126は、直前の分岐点まで戻った上で未選択の分岐方向を辿るようにする。
(S23) The
(S24)相関検出部126は、稼働履歴テーブル132から、ステップS23で選択した仮想マシンについて、ステップS20で選択したリソースの稼働履歴を抽出する。また、相関検出部126は、稼働履歴テーブル132から、当該仮想マシンの上流側にある直前の代表仮想マシンについて、ステップS20で選択したリソースの稼働履歴を抽出する。相関検出部126は、直前の代表仮想マシンと選択した仮想マシンとの間で、抽出した稼働情報に含まれる計測値の相関係数を算出する。
(S24) The
(S25)相関検出部126は、ステップS24で算出した相関係数の絶対値と所定の閾値とを比較する。相関係数の絶対値が閾値より大きい場合はステップS26に進み、相関係数の絶対値が閾値以下である場合はステップS28に進む。
(S25) The
(S26)相関検出部126は、ステップS23で選択した仮想マシンを、直前の代表仮想マシンと同一グループに分類し、従属仮想マシンに指定する。
(S27)相関検出部126は、ステップS24で稼働履歴テーブル132から抽出した稼働情報を用いて、代表仮想マシンの計測値に対する従属仮想マシンの計測値の倍率を算出する。相関検出部126は、代表仮想マシンと従属仮想マシンとが強い相関をもつ旨および倍率を、相関関係テーブル133に登録する。そして、ステップS22に戻る。
(S26) The
(S27) The
(S28)相関検出部126は、ステップS23で選択した仮想マシンを代表仮想マシンに指定する。そして、ステップS22に戻る。
(S29)相関検出部126は、ステップS20において全てのリソースを選択したか判断する。全てのリソースを選択した場合はグループ判定が終了し、未選択のリソースが残っている場合はステップS20に戻る。
(S28) The
(S29) The
図15は、仮想マシン開始処理の手順例を示すフローチャートである。
(S30)通信ログ取得部223は、テスト実行中に通信ログを取得する。通信ログは、仮想マシン51が送信するメッセージの宛先と送信時刻とを含む。
FIG. 15 is a flowchart showing a procedure example of the virtual machine start process.
(S30) The communication
(S31)通信ログ取得部223は、情報収集サーバ100に通信ログを送信する。
(S32)稼働情報取得部224は、情報収集サーバ100から収集頻度通知を受信する。収集頻度通知は、収集頻度の初期値として、所定の低い収集頻度を示している。
(S31) The communication
(S32) The operation
(S33)稼働情報取得部224は、ステップS32で通知された低い収集頻度で、全てのリソースの稼働情報を取得して情報収集サーバ100に送信することを開始する。
(S34)グループ制御部225は、情報収集サーバ100からグループ通知を受信したか判断する。グループ通知は、同一グループに属する従属仮想マシンの識別情報とその倍率を含む。グループ通知を受信した場合はステップS35に進み、グループ通知を受信しなかった場合はステップS38に進む。
(S33) The operation
(S34) The
(S35)グループ制御部225は、グループ通知に基づいて、グループ内の仮想マシンの収集対象比率を算出する。グループに属する仮想マシンの総数をn、稼働情報を収集しない従属仮想マシンの数をmとすると、収集対象比率は(n−m)÷nとなる。
(S35) The
(S36)グループ制御部225は、ステップS35で算出した収集対象比率に応じて、稼働情報取得部224の収集頻度を、ステップS32で通知された初期値から上げる。収集対象比率が小さいほど、収集頻度が高くなるようにする。変更後の収集頻度は、初期値をn÷(n−m)×α倍したものである。よって、変更後の送信間隔は、初期の送信間隔を(n−m)÷n÷α倍したものに短縮される。ただし、この計算式で算出される収集頻度が所定の上限を超える場合、当該上限を収集頻度とする。
(S36) The
(S37)グループ制御部225は、従属仮想マシンに停止通知を送信する。
(S38)稼働情報取得部224は、代表仮想マシンから停止通知を受信したか判断する。停止通知を受信した場合はステップS39に進み、停止通知を受信しなかった場合は仮想マシン開始処理が終了する。なお、代表仮想マシンと従属仮想マシンの分類は、リソース毎に行われる。よって、仮想マシン51は、あるリソースについては代表仮想マシンに指定され、別のリソースについては従属仮想マシンに指定されることがある。その場合、仮想マシン51は、あるリソースについては情報収集サーバ100からグループ通知を受信し、別のリソースについては代表仮想マシンから停止通知を受信することがある。
(S37) The
(S38) The operation
(S39)稼働情報取得部224は、稼働情報の取得および送信を停止する。
図16は、仮想マシン継続処理の手順例を示すフローチャートである。
(S40)グループ制御部225は、仮想マシン51が代表仮想マシンであるか判断する。代表仮想マシンである場合はステップS41に進み、代表仮想マシンでない場合はステップS50に進む。なお、代表仮想マシンであるか否かは、リソース毎に判断される。
(S39) The operation
FIG. 16 is a flowchart showing a procedure example of virtual machine continuous processing.
(S40) The
(S41)グループ制御部225は、グループ管理テーブル231を参照して、仮想マシン51と同一グループに属する従属仮想マシンを特定する。グループ制御部225は、特定した従属仮想マシンに稼働情報を要求し、稼働情報を受信する。
(S41) The
(S42)グループ制御部225は、ステップS41で受信した従属仮想マシンの稼働情報に含まれる計測値と、稼働情報取得部224で取得された仮想マシン51の最新の計測値とを対応付けて記録する。グループ制御部225は、直近の一定期間の記録に基づいて、仮想マシン51の計測値と従属仮想マシンの計測値との間の相関係数を算出する。
(S42) The
(S43)グループ制御部225は、ステップS42で算出した相関係数の絶対値と所定の閾値とを比較する。相関係数の絶対値が閾値より大きい場合はステップS44に進み、相関係数の絶対値が閾値以下である場合はステップS46に進む。
(S43) The
(S44)グループ制御部225は、直近の一定期間の記録に基づいて、仮想マシン51の計測値に対する従属仮想マシンの計測値の倍率を算出する。グループ制御部225は、グループ管理テーブル231に記録された倍率を更新する。
(S44) The
(S45)グループ制御部225は、ステップS44で更新した倍率を含む相関更新通知を、情報収集サーバ100に送信する。そして、ステップS50に進む。
(S46)グループ制御部225は、従属仮想マシンに再開通知を送信する。
(S45) The
(S46) The
(S47)グループ制御部225は、1つの従属仮想マシンがグループから外れたことに伴って、グループ内の仮想マシンの収集対象比率を更新する。直前の時点のグループに属する仮想マシンの総数をn、直前の時点の稼働情報を収集しない従属仮想マシンの数をmとすると、収集対象比率は(n−m)÷(n−1)に増大する。
(S47) The
(S48)グループ制御部225は、ステップS47で算出した収集対象比率に応じて、稼働情報取得部224の収集頻度を直前よりも下げる。
(S49)グループ制御部225は、グループから外れた仮想マシンの識別情報を含むグループ解除通知を、情報収集サーバ100に送信する。
(S48) The
(S49) The
(S50)稼働情報取得部224は、代表仮想マシンから再開通知を受信したか判断する。再開通知を受信した場合はステップS51に進み、再開通知を受信しなかった場合は仮想マシン継続処理が終了する。なお、仮想マシン51は、あるリソースについて代表仮想マシンに指定され、別のリソースについて従属仮想マシンに指定されることがある。よって、仮想マシン51は、あるリソースについて従属仮想マシンを監視する一方、別のリソースについて代表仮想マシンから再開通知を受信することがある。
(S50) The operation
(S51)稼働情報取得部224は、稼働情報の取得および送信を再開する。再開後の収集頻度は、例えば、ステップS32で通知された低頻度の初期値とする。
図17は、サーバ継続処理の手順例を示すフローチャートである。
(S51) The operation
FIG. 17 is a flowchart showing an example of a procedure for continuous server processing.
(S60)相関更新部127は、各代表仮想マシンから相関更新通知を受信する。相関更新通知は、従属仮想マシンの識別情報および更新後の倍率を含む。
(S61)相関更新部127は、相関関係テーブル133の倍率を更新する。
(S60) The
(S61) The
(S62)相関更新部127は、何れかの代表仮想マシンからグループ解除通知を受信したか判断する。グループ解除通知を受信した場合はステップS63に進み、グループ解除通知を受信していない場合はステップS64に進む。
(S62) The
(S63)相関更新部127は、相関関係テーブル133から、グループ解除通知を送信した代表仮想マシンと通知された従属仮想マシンとの間の相関関係を削除する。
(S64)相関検出部126は、図14に示すフローチャートに従い、現在の代表仮想マシンの中にグループ化できるものがあるか再判定する。
(S63) The
(S64) The
(S65)相関検出部126は、ステップS63の再判定により、代表仮想マシンが従属仮想マシンに変更されることで従属仮想マシンが増加したか判断する。従属仮想マシンが増加した場合はステップS66に進み、増加していない場合はステップS67に進む。
(S65) The
(S66)相関検出部126は、相関関係テーブル133を更新する。また、相関検出部126は、新たな従属仮想マシンが属するグループの代表仮想マシンに、当該従属仮想マシンの識別情報およびその倍率を含むグループ通知を送信する。
(S66) The
(S67)稼働状況表示部128は、ユーザから稼働状況の要求を受け付けたか判断する。稼働状況の要求を受け付けた場合はステップS68に進み、稼働状況の要求を受け付けていない場合はサーバ継続処理が終了する。
(S67) The operation
(S68)稼働状況表示部128は、従属仮想マシンの稼働状況を示す数値を、相関関係テーブル133に登録された代表仮想マシンの計測値に倍率を乗じることで推定する。
(S69)稼働状況表示部128は、各仮想マシンの稼働状況の数値を列挙した稼働状況テーブル134を生成し、表示装置111に表示する。稼働状況テーブル134の数値には、収集された計測値とステップS68で算出された推定値とが含まれる。
(S68) The operation
(S69) The operation
第2の実施の形態の情報処理システムによれば、一部の仮想マシンからの稼働情報の収集が停止され、全体のデータ通信量が減少する範囲で、残った仮想マシンからの稼働情報の収集頻度が引き上げられる。稼働情報を収集しない仮想マシンについては、稼働情報を収集する仮想マシンとの相関関係に基づいて、リソースの使用状況が推定される。これにより、ネットワークトラフィックを削減しつつ、仮想マシンの監視のリアルタイム性を確保し監視精度を向上させることができる。特に、マルチクラウド環境において、インターネットなどの広域データ通信ネットワークのトラフィックを削減することができる。よって、仮想マシンの監視コストを削減し、監視の遅延を抑制することができる。 According to the information processing system of the second embodiment, the collection of operation information from some virtual machines is stopped, and the collection of operation information from the remaining virtual machines is collected within the range in which the total data communication volume is reduced. The frequency will be increased. For virtual machines that do not collect operation information, resource usage is estimated based on the correlation with the virtual machines that collect operation information. As a result, it is possible to ensure real-time monitoring of virtual machines and improve monitoring accuracy while reducing network traffic. In particular, in a multi-cloud environment, it is possible to reduce the traffic of a wide area data communication network such as the Internet. Therefore, it is possible to reduce the monitoring cost of the virtual machine and suppress the delay in monitoring.
また、テストリクエストを用いて、サービス内での複数の仮想マシンの間のデータフローが判定され、データフローに沿って親仮想マシンと子仮想マシンとの間で相関関係が判定される。サービスでは親仮想マシンから子仮想マシンにメッセージが送信されているため、親仮想マシンの負荷と子仮想マシンの負荷の間には強い相関がある可能性が高い。そのため、複数の仮想マシンの中で相関関係を効率的に判定することができる。また、代表仮想マシンと従属仮想マシンとの間の相関関係の変化は、代表仮想マシンによって分散して監視される。よって、広域データ通信ネットワークのトラフィックを削減できる。 In addition, the test request is used to determine the data flow between a plurality of virtual machines in the service, and the correlation between the parent virtual machine and the child virtual machine is determined along the data flow. Since the service sends messages from the parent virtual machine to the child virtual machine, there is likely a strong correlation between the load on the parent virtual machine and the load on the child virtual machine. Therefore, the correlation can be efficiently determined among a plurality of virtual machines. Also, changes in the correlation between the representative virtual machine and the dependent virtual machines are distributed and monitored by the representative virtual machines. Therefore, the traffic of the wide area data communication network can be reduced.
10,20,20a 情報処理装置
11 通信部
12 記憶部
13 処理部
14 相関関係
21,22 仮想マシン
23,24 稼働情報
10, 20, 20a
Claims (13)
受信された前記第1の稼働情報および前記第2の稼働情報の履歴を記憶する記憶部と、
前記履歴に基づいて、前記第1の仮想マシンと前記第2の仮想マシンとの間のリソースの使用状況の相関関係を判定し、前記相関関係が所定条件を満たす場合、前記第2の稼働情報の受信頻度が前記第1の稼働情報の受信頻度よりも低くなるよう制御し、前記第1の仮想マシンから受信された前記第1の稼働情報と前記相関関係とに基づいて、前記第2の仮想マシンにおけるリソースの使用状況を推定する処理部と、
を有する情報処理装置。 A second operation information indicating the resource usage status in the first virtual machine is received from the first virtual machine, and a second operation information indicating the resource usage status in the second virtual machine is received from the second virtual machine. Communication unit that receives operation information and
A storage unit that stores the received history of the first operation information and the second operation information, and
Based on the history, the correlation of the resource usage status between the first virtual machine and the second virtual machine is determined, and when the correlation satisfies a predetermined condition, the second operation information Is controlled so that the reception frequency of the first operation information is lower than the reception frequency of the first operation information, and based on the first operation information received from the first virtual machine and the correlation, the second operation information A processing unit that estimates resource usage in a virtual machine,
Information processing device with.
請求項1記載の情報処理装置。 When the correlation satisfies the predetermined condition, the transmission of the second operation information from the second virtual machine to the information processing device is controlled to be stopped.
The information processing device according to claim 1.
請求項1記載の情報処理装置。 When the correlation satisfies the predetermined condition, it is instructed to reduce the frequency of transmitting the second operation information to the second virtual machine through the first virtual machine.
The information processing device according to claim 1.
請求項1記載の情報処理装置。 Before determining the correlation, the processing unit receives the first operation information and the first operation information at a predetermined frequency lower than the reception frequency of the first operation information when the correlation satisfies the predetermined condition. Control so that the operation information of 2 is received,
The information processing device according to claim 1.
請求項1記載の情報処理装置。 When the correlation satisfies the predetermined condition, the reception frequency of the second operation information is lower than that before the correlation is determined, and the reception frequency of the first operation information is before the correlation is determined. Controlled to be higher than
The information processing device according to claim 1.
前記第1の稼働情報の変更後の受信頻度は、前記複数の仮想マシンの個数に対する前記他の仮想マシンの個数の割合に基づいて決定される、
請求項5記載の情報処理装置。 Of the plurality of virtual machines including the first virtual machine and the second virtual machine, the frequency of receiving operation information of some of the virtual machines including the second virtual machine is higher than before the correlation is determined. Also, the frequency of receiving operation information of other virtual machines including the first virtual machine becomes higher than before the correlation is determined.
The reception frequency after the change of the first operation information is determined based on the ratio of the number of the other virtual machines to the number of the plurality of virtual machines.
The information processing device according to claim 5.
請求項1記載の情報処理装置。 The reception frequency of the second operation information is updated according to the change in the correlation.
The information processing device according to claim 1.
請求項7記載の情報処理装置。 The change in the correlation is monitored by the first virtual machine, and the first virtual machine notifies the information processing apparatus.
The information processing device according to claim 7.
請求項1記載の情報処理装置。 The processing unit detects the order of message communication between the first virtual machine and a plurality of virtual machines including the second virtual machine by sending a test request, and the virtual machine from which the message is sent. Is selected as the first virtual machine, and the virtual machine to which the message is sent is selected as the second virtual machine.
The information processing device according to claim 1.
請求項1記載の情報処理装置。 Based on the first operation information and the second operation information within a predetermined time included in the history, the processing unit has a time series of resource usage status in the first virtual machine as the correlation. A correlation coefficient between the change and the time-series change of the resource usage in the second virtual machine is calculated, and it is determined whether the correlation coefficient is larger than the threshold value.
The information processing device according to claim 1.
第2の仮想マシンを実行する第2の情報処理装置と、
前記第1の仮想マシンおよび前記第2の仮想マシンと通信する第3の情報処理装置と、
を有し、前記第3の情報処理装置は、
前記第1の仮想マシンから前記第1の仮想マシンにおけるリソースの使用状況を示す第1の稼働情報を受信し、前記第2の仮想マシンから前記第2の仮想マシンにおけるリソースの使用状況を示す第2の稼働情報を受信し、
受信された前記第1の稼働情報および前記第2の稼働情報の履歴を保持し、
前記履歴に基づいて、前記第1の仮想マシンと前記第2の仮想マシンとの間のリソースの使用状況の相関関係を判定し、前記相関関係が所定条件を満たす場合、前記第2の稼働情報の受信頻度が前記第1の稼働情報の受信頻度よりも低くなるよう制御し、
前記第1の仮想マシンから受信された前記第1の稼働情報と前記相関関係とに基づいて、前記第2の仮想マシンにおけるリソースの使用状況を推定する、
情報処理システム。 The first information processing device that executes the first virtual machine,
A second information processing device that executes the second virtual machine,
A third information processing device that communicates with the first virtual machine and the second virtual machine,
The third information processing apparatus has
The first operation information indicating the resource usage status in the first virtual machine is received from the first virtual machine, and the resource usage status in the second virtual machine is shown from the second virtual machine. Received the operation information of 2 and
The received history of the first operation information and the second operation information is retained, and the history is retained.
Based on the history, the correlation of the resource usage status between the first virtual machine and the second virtual machine is determined, and when the correlation satisfies a predetermined condition, the second operation information Is controlled so that the reception frequency of the first operation information is lower than the reception frequency of the first operation information.
Based on the first operation information received from the first virtual machine and the correlation, the resource usage status in the second virtual machine is estimated.
Information processing system.
第1の仮想マシンから受信された前記第1の仮想マシンにおけるリソースの使用状況を示す第1の稼働情報と、第2の仮想マシンから受信された前記第2の仮想マシンにおけるリソースの使用状況を示す第2の稼働情報との履歴を取得し、
前記履歴に基づいて、前記第1の仮想マシンと前記第2の仮想マシンとの間のリソースの使用状況の相関関係を判定し、前記相関関係が所定条件を満たす場合、前記第2の稼働情報の受信頻度が前記第1の稼働情報の受信頻度よりも低くなるよう制御し、
前記第1の仮想マシンから受信された前記第1の稼働情報と前記相関関係とに基づいて、前記第2の仮想マシンにおけるリソースの使用状況を推定する、
情報処理方法。 The computer
The first operation information indicating the resource usage status in the first virtual machine received from the first virtual machine and the resource usage status in the second virtual machine received from the second virtual machine are shown. Acquire the history with the second operation information shown,
Based on the history, the correlation of the resource usage status between the first virtual machine and the second virtual machine is determined, and when the correlation satisfies a predetermined condition, the second operation information Is controlled so that the reception frequency of the first operation information is lower than the reception frequency of the first operation information.
Based on the first operation information received from the first virtual machine and the correlation, the resource usage status in the second virtual machine is estimated.
Information processing method.
第1の仮想マシンから受信された前記第1の仮想マシンにおけるリソースの使用状況を示す第1の稼働情報と、第2の仮想マシンから受信された前記第2の仮想マシンにおけるリソースの使用状況を示す第2の稼働情報との履歴を取得し、
前記履歴に基づいて、前記第1の仮想マシンと前記第2の仮想マシンとの間のリソースの使用状況の相関関係を判定し、前記相関関係が所定条件を満たす場合、前記第2の稼働情報の受信頻度が前記第1の稼働情報の受信頻度よりも低くなるよう制御し、
前記第1の仮想マシンから受信された前記第1の稼働情報と前記相関関係とに基づいて、前記第2の仮想マシンにおけるリソースの使用状況を推定する、
処理を実行させるプログラム。 On the computer
The first operation information indicating the resource usage status in the first virtual machine received from the first virtual machine and the resource usage status in the second virtual machine received from the second virtual machine are shown. Acquire the history with the second operation information shown,
Based on the history, the correlation of the resource usage status between the first virtual machine and the second virtual machine is determined, and when the correlation satisfies a predetermined condition, the second operation information Is controlled so that the reception frequency of the first operation information is lower than the reception frequency of the first operation information.
Based on the first operation information received from the first virtual machine and the correlation, the resource usage status in the second virtual machine is estimated.
A program that executes processing.
Priority Applications (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
JP2019232537A JP7360036B2 (en) | 2019-12-24 | 2019-12-24 | Information processing device, information processing system, information processing method and program |
Applications Claiming Priority (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
JP2019232537A JP7360036B2 (en) | 2019-12-24 | 2019-12-24 | Information processing device, information processing system, information processing method and program |
Publications (2)
Publication Number | Publication Date |
---|---|
JP2021101278A true JP2021101278A (en) | 2021-07-08 |
JP7360036B2 JP7360036B2 (en) | 2023-10-12 |
Family
ID=76651357
Family Applications (1)
Application Number | Title | Priority Date | Filing Date |
---|---|---|---|
JP2019232537A Active JP7360036B2 (en) | 2019-12-24 | 2019-12-24 | Information processing device, information processing system, information processing method and program |
Country Status (1)
Country | Link |
---|---|
JP (1) | JP7360036B2 (en) |
Cited By (1)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
WO2023238438A1 (en) * | 2022-06-10 | 2023-12-14 | パナソニックIpマネジメント株式会社 | Monitoring device and monitoring method |
Family Cites Families (4)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
US7444263B2 (en) | 2002-07-01 | 2008-10-28 | Opnet Technologies, Inc. | Performance metric collection and automated analysis |
JP2007207173A (en) | 2006-02-06 | 2007-08-16 | Fujitsu Ltd | Performance analysis program, performance analysis method, and performance analysis device |
JP5527324B2 (en) | 2009-10-08 | 2014-06-18 | 日本電気株式会社 | Operation monitoring apparatus, operation monitoring method, and program storage medium |
JP5267681B2 (en) | 2009-12-24 | 2013-08-21 | 富士通株式会社 | Performance data collection method, performance data collection device, and performance data management system |
-
2019
- 2019-12-24 JP JP2019232537A patent/JP7360036B2/en active Active
Cited By (1)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
WO2023238438A1 (en) * | 2022-06-10 | 2023-12-14 | パナソニックIpマネジメント株式会社 | Monitoring device and monitoring method |
Also Published As
Publication number | Publication date |
---|---|
JP7360036B2 (en) | 2023-10-12 |
Similar Documents
Publication | Publication Date | Title |
---|---|---|
US8484650B2 (en) | Resource management system, resource information providing method and program for providing resource information relating to a plurality of resources | |
JP4170302B2 (en) | Load control device and load control program | |
US7930344B2 (en) | Incremental run-time session balancing in a multi-node system | |
EP2904491B1 (en) | Method, node and computer program for enabling automatic adaptation of resource units | |
TWI553472B (en) | Scheduling and management in a personal datacenter | |
CN107239336B (en) | Method and device for realizing task scheduling | |
US20160216960A1 (en) | Managing update deployment | |
US20100162259A1 (en) | Virtualization-based resource management apparatus and method and computing system for virtualization-based resource management | |
KR20060084040A (en) | Apparatus and method for dynamic qos management | |
JP2001084195A (en) | Network managing system with event control means | |
CN105700908A (en) | Management system and control method for management system | |
KR20130083032A (en) | Management method of service level agreement for guarantee of quality of service in cloud environment | |
CN105703927A (en) | Resource allocation method, network device and network system | |
CN109960579B (en) | Method and device for adjusting service container | |
JP7360036B2 (en) | Information processing device, information processing system, information processing method and program | |
US20130166751A1 (en) | Distributed resource management systems and methods for resource management thereof | |
JP2016146020A (en) | Data analysis system and analysis method | |
EP3340534A1 (en) | A local sdn controller and corresponding method of performing network control and management functions | |
JP2001202318A (en) | Data distribution system | |
EP4241404A1 (en) | Geographic scaling in a container based cloud infrastructure | |
JP2012141671A (en) | Method for migrating virtual computer, virtual computer system and control server | |
US10812390B2 (en) | Intelligent load shedding of traffic based on current load state of target capacity | |
WO2017017774A1 (en) | Storage monitoring system and monitoring method therefor | |
US9742687B2 (en) | Management system and method for execution of virtual machines | |
CN105659218A (en) | Communication system, shared service control unit, data transmission method, and non-transitory computer-readable medium |
Legal Events
Date | Code | Title | Description |
---|---|---|---|
A621 | Written request for application examination |
Free format text: JAPANESE INTERMEDIATE CODE: A621 Effective date: 20220809 |
|
A977 | Report on retrieval |
Free format text: JAPANESE INTERMEDIATE CODE: A971007 Effective date: 20230621 |
|
A131 | Notification of reasons for refusal |
Free format text: JAPANESE INTERMEDIATE CODE: A131 Effective date: 20230627 |
|
A521 | Request for written amendment filed |
Free format text: JAPANESE INTERMEDIATE CODE: A523 Effective date: 20230822 |
|
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: 20230829 |
|
A61 | First payment of annual fees (during grant procedure) |
Free format text: JAPANESE INTERMEDIATE CODE: A61 Effective date: 20230911 |
|
R150 | Certificate of patent or registration of utility model |
Ref document number: 7360036 Country of ref document: JP Free format text: JAPANESE INTERMEDIATE CODE: R150 |