JP7360036B2 - 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 PDF

Info

Publication number
JP7360036B2
JP7360036B2 JP2019232537A JP2019232537A JP7360036B2 JP 7360036 B2 JP7360036 B2 JP 7360036B2 JP 2019232537 A JP2019232537 A JP 2019232537A JP 2019232537 A JP2019232537 A JP 2019232537A JP 7360036 B2 JP7360036 B2 JP 7360036B2
Authority
JP
Japan
Prior art keywords
virtual machine
information
operating information
correlation
resource usage
Prior art date
Legal status (The legal status is an assumption and is not a legal conclusion. Google has not performed a legal analysis and makes no representation as to the accuracy of the status listed.)
Active
Application number
JP2019232537A
Other languages
Japanese (ja)
Other versions
JP2021101278A (en
Inventor
公敬 山崎
Current Assignee (The listed assignees may be inaccurate. Google has not performed a legal analysis and makes no representation or warranty as to the accuracy of the list.)
Fujitsu Ltd
Original Assignee
Fujitsu Ltd
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 Fujitsu Ltd filed Critical Fujitsu Ltd
Priority to JP2019232537A priority Critical patent/JP7360036B2/en
Publication of JP2021101278A publication Critical patent/JP2021101278A/en
Application granted granted Critical
Publication of JP7360036B2 publication Critical patent/JP7360036B2/en
Active legal-status Critical Current
Anticipated expiration legal-status Critical

Links

Images

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, it is possible to dynamically add, delete, and move virtual machines, making it easier to manage information processing operations. A physical machine on which a virtual machine is placed may be one owned by a large-scale information processing facility such as a data center, or a so-called cloud system.

異なる物理マシンに配置された複数の仮想マシンが分散してアプリケーションプログラムを実行し、それら複数の仮想マシンが連携して、ユーザからの要求に応じた情報処理サービスを提供するようにすることもできる。複数の仮想マシンを、異なるデータセンタや異なるクラウドシステムに分割して配置することも可能である。複数の仮想マシンを利用した情報処理サービスの運用管理では、プロセッサやメモリなどのリソースの使用状況を示す稼働情報を各仮想マシンから収集することが好ましい。収集した稼働情報に基づいて、新たな仮想マシンの追加、一部の仮想マシンの削除、仮想マシンに割り当てるリソースの増強、仮想マシンを配置するクラウドシステムの変更などを検討することができる。 Multiple virtual machines located on different physical machines can execute application programs in a distributed manner, 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 place multiple virtual machines in different data centers or different cloud systems. In operational management of an information processing service using a plurality of virtual machines, it is preferable to collect operating information indicating the usage status of resources such as processors and memory from each virtual machine. Based on the collected operating information, you can consider adding new virtual machines, deleting some virtual machines, increasing resources allocated to virtual machines, changing the cloud system where virtual machines are placed, etc.

例えば、物理マシン全体のリソース使用率と仮想マシン毎のリソース使用率とを示す測定データを収集し、リソース不足を検出した場合に一部の仮想マシンを他の物理マシンに移動する仮想マシン管理装置が提案されている。また、ある物理マシンから別の物理マシンに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. is proposed. Furthermore, a virtual machine control device has been proposed that determines whether or not to move two virtual machines in parallel when moving two virtual machines from one physical machine to another. When the proposed virtual machine control device starts moving one virtual machine, it monitors the processing status of two virtual machines and calculates a correlation coefficient, and if the correlation coefficient is positive, it moves the other virtual machine. will also start moving.

国際公開第2008/062864号International Publication No. 2008/062864 特開2012-88808号公報JP2012-88808A

収集する稼働情報の精度という観点からは、短い周期で複数の仮想マシンの稼働情報を収集することが好ましい。しかし、情報処理サービスで使用されている全ての仮想マシンと短い周期で通信すると、稼働情報を収集する際の通信量が多くなってしまうという問題がある。例えば、複数の仮想マシンの少なくとも一部がデータセンタやクラウドシステムに配置されている場合、インターネットなどの広域データ通信ネットワークを介して短い周期で通信することになり、その通信負荷が問題となる。 From the viewpoint of accuracy of the collected operating information, it is preferable to collect operating information of a plurality of virtual machines at short intervals. However, there is a problem in that communicating with all the virtual machines used in the information processing service in short cycles increases the amount of communication when collecting operating information. For example, when at least some of a plurality of virtual machines are located in a data center or a cloud system, they communicate in short cycles via a wide area data communication network such as the Internet, and the communication load becomes a problem.

1つの側面では、本発明は、稼働情報を収集する際の通信量を削減できる情報処理装置、情報処理システム、情報処理方法およびプログラムを提供することを目的とする。 In one aspect, the present invention aims to provide an information processing device, an information processing system, an information processing method, and a program that can reduce the amount of communication when collecting operating information.

1つの態様では、通信部と記憶部と処理部とを有する情報処理装置が提供される。通信部は、第1の仮想マシンから第1の仮想マシンにおけるリソースの使用状況を示す第1の稼働情報を受信し、第2の仮想マシンから第2の仮想マシンにおけるリソースの使用状況を示す第2の稼働情報を受信する。記憶部は、受信された第1の稼働情報および第2の稼働情報の履歴を記憶する。処理部は、履歴に基づいて、第1の仮想マシンと第2の仮想マシンとの間のリソースの使用状況の相関関係を判定し、相関関係が所定条件を満たす場合、第2の稼働情報の受信頻度が第1の稼働情報の受信頻度よりも低くなるよう制御する。処理部は、第1の仮想マシンから受信された第1の稼働情報と相関関係とに基づいて、第2の仮想マシンにおけるリソースの使用状況を推定する。 In one aspect, an information processing device is provided that includes a communication section, a storage section, and a processing section. The communication unit receives first operating information from the first virtual machine indicating the resource usage status in the first virtual machine, and receives first operating information indicating the resource usage status in the second virtual machine from the second virtual machine. 2 operation information is received. The storage unit stores a history of the received first operating information and second operating 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 when the correlation satisfies a predetermined condition, the processing unit determines the correlation of the resource usage status between the first virtual machine and the second virtual machine, and when the correlation satisfies a predetermined condition, the processing unit determines the correlation of the resource usage status between the first virtual machine and the second virtual machine. The reception frequency is controlled to be lower than the reception frequency of the first operating information. The processing unit estimates the resource usage status of the second virtual machine based on the first operating information and the correlation received from the first virtual machine.

また、1つの態様では、第1の仮想マシンを実行する第1の情報処理装置と第2の仮想マシンを実行する第2の情報処理装置と第3の情報処理装置とを有する情報処理システムが提供される。また、1つの態様では、コンピュータが実行する情報処理方法が提供される。また、1つの態様では、コンピュータに実行させるプログラムが提供される。 Further, in one aspect, an information processing system includes 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. Further, in one aspect, an information processing method executed by a computer is provided. Further, in one aspect, a program to be executed by a computer is provided.

1つの側面では、稼働情報を収集する際の通信量を削減できる。 One aspect is that the amount of communication when collecting operating information can be reduced.

第1の実施の形態の情報処理システムの例を説明する図である。FIG. 1 is a diagram illustrating an example of an information processing system according to a first embodiment. 第2の実施の形態の情報処理システムの例を示す図である。FIG. 3 is a diagram illustrating an example of an information processing system according to a second embodiment. 情報収集サーバのハードウェア例を示すブロック図である。FIG. 2 is a block diagram showing an example of hardware of an information collection server. サービスと仮想マシンとシステムの対応例を示す図である。FIG. 2 is a diagram illustrating an example of correspondence between services, virtual machines, and systems. 情報収集サーバと仮想マシンの通信例を示すシーケンス図である。FIG. 2 is a sequence diagram showing an example of communication between an information collection server and a virtual machine. 仮想マシンのグループ化例を示す図である。FIG. 3 is a diagram illustrating an example of grouping virtual machines. 仮想マシンのグループ化例を示す図(続き1)である。FIG. 3 is a diagram (continued 1) illustrating an example of grouping virtual machines. 仮想マシンのグループ化例を示す図(続き2)である。FIG. 3 is a diagram (continued 2) illustrating an example of grouping virtual machines. 情報収集サーバと仮想マシンの機能例を示すブロック図である。FIG. 2 is a block diagram showing an example of functions of an information collection server and a virtual machine. サービス構造テーブルと稼働履歴テーブルの例を示す図である。It is a figure which shows the example of a service structure table and an operation history table. 相関関係テーブルと稼働状況テーブルの例を示す図である。It is a figure which shows the example of a correlation table and an operation status table. グループ管理テーブルの例を示す図である。FIG. 3 is a diagram showing an example of a group management table. サーバ開始処理の手順例を示すフローチャートである。3 is a flowchart illustrating an example of a procedure for server start processing. グループ判定の手順例を示すフローチャートである。3 is a flowchart illustrating an example of a procedure for group determination. 仮想マシン開始処理の手順例を示すフローチャートである。3 is a flowchart illustrating an example of a procedure for virtual machine start processing. 仮想マシン継続処理の手順例を示すフローチャートである。3 is a flowchart illustrating an example of a procedure for virtual machine continuation processing. サーバ継続処理の手順例を示すフローチャートである。3 is a flowchart illustrating an example of a procedure for server continuation processing.

以下、本実施の形態を図面を参照して説明する。
[第1の実施の形態]
第1の実施の形態を説明する。
The present embodiment will be described below with reference to the drawings.
[First embodiment]
A 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.
The information processing system according to the first embodiment arranges a plurality of virtual machines in different information processing apparatuses and monitors the resource usage status of each of the plurality of virtual machines. The information processing system of the first embodiment includes information processing devices 10, 20, and 20a.

情報処理装置10は、仮想マシンにおけるリソースの使用状況を示す稼働情報を収集して、仮想マシンを監視するコンピュータである。情報処理装置10は、クライアントコンピュータでもよいしサーバコンピュータでもよい。 The information processing device 10 is a computer that monitors virtual machines by collecting operating information indicating the usage status of resources in virtual machines. The information processing device 10 may be a client computer or a server computer.

情報処理装置20,20aは、仮想マシンを実行可能なサーバコンピュータである。情報処理装置20,20aは、情報処理装置10とネットワークを介して通信することができる。情報処理装置20,20aは、データセンタのコンピュータでもよく、クラウド事業者が所有するパブリッククラウドシステムのコンピュータでもよい。また、情報処理装置20,20aは、仮想マシンを利用してユーザにサービスを提供するサービス事業者が所有するプライベートクラウドシステムまたはオンプレミスシステムのコンピュータでもよい。情報処理装置20と情報処理装置20aとは、異なるシステムに属していてもよい。情報処理装置20,20aと情報処理装置10とが、インターネットなどの広域データ通信ネットワークを介して通信するようにしてもよい。 The information processing devices 20 and 20a are server computers capable of executing virtual machines. The information processing devices 20 and 20a can communicate with the information processing device 10 via a network. The information processing devices 20 and 20a may be computers in a data center or computers in a public cloud system owned by a cloud provider. Furthermore, the information processing devices 20 and 20a may be computers in a private cloud system or on-premises system owned by a service provider that provides services to users using virtual machines. The information processing device 20 and the information processing device 20a may belong to different systems. The information processing devices 20, 20a and the information processing device 10 may communicate via a wide area data communication network such as the Internet.

情報処理装置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 information processing device 20a. The information processing device 10 monitors the resource usage status of each of the virtual machines 21 and 22. For example, the information processing device 10 presents the resource usage status of the virtual machines 21 and 22 to the service administrator by displaying it on a display device or the like. By monitoring resource usage, you can consider configuration changes such as adding new virtual machines, deleting some virtual machines, increasing the resources allocated to virtual machines, and changing the system in which virtual machines are placed.

リソースは、仮想マシンに割り当てられて情報処理に用いられるハードウェア資源である。リソースの使用状況として、CPU(Central Processing Unit)などのプロセッサの使用率、RAM(Random Access Memory)などのメモリの使用量、HDD(Hard Disk Drive)などのストレージのアクセス量、ネットワーク帯域使用率などが挙げられる。 Resources are hardware resources allocated to virtual machines and used for information processing. Resource usage includes the usage rate of processors such as CPU (Central Processing Unit), memory usage such as RAM (Random Access Memory), access amount of storage such as HDD (Hard Disk Drive), network bandwidth usage rate, etc. can be mentioned.

仮想マシン21は、仮想マシン21におけるリソースの使用状況を示す稼働情報23(第1の稼働情報)を送信することができる。仮想マシン22は、仮想マシン22におけるリソースの使用状況を示す稼働情報24(第2の稼働情報)を送信することができる。仮想マシン21,22は、情報処理装置10からの要求に応じて稼働情報を送信してもよいし、情報処理装置10から直接的または間接的に指定された頻度で自律的に稼働情報を送信してもよい。後述する送信頻度の低下には、稼働情報の送信を停止することも含まれる。なお、仮想マシン21,22は、それぞれゲストオペレーティングシステム(OS:Operating System)を実行する狭義の仮想マシンでもよいし、コンテナ型コンピュータ仮想化技術におけるコンテナなどゲストOSを実行しない仮想情報処理主体でもよい。 The virtual machine 21 can transmit performance information 23 (first performance information) indicating the usage status of resources in the virtual machine 21 . The virtual machine 22 can transmit performance information 24 (second performance information) indicating the usage status of resources in the virtual machine 22 . The virtual machines 21 and 22 may transmit operating information in response to a request from the information processing device 10, or may autonomously transmit operating information at a frequency specified directly or indirectly by the information processing device 10. You may. Reducing the transmission frequency, which will be described later, also includes stopping the transmission of operating information. Note that the virtual machines 21 and 22 may be virtual machines in a narrow sense that each executes a guest operating system (OS), or may be a virtual information processing entity that does not execute a guest OS, such as a container in container-type computer virtualization technology. .

情報処理装置10は、通信部11、記憶部12および処理部13を有する。通信部11は、情報処理装置20,20aとネットワークを介して通信する通信インタフェースである。通信部11は、スイッチやルータなどの有線通信装置に接続される有線通信インタフェースでもよいし、アクセスポイントや無線基地局などの無線通信装置に接続される無線通信インタフェースでもよい。記憶部12は、RAMなどの揮発性半導体メモリでもよいし、HDDやフラッシュメモリなどの不揮発性ストレージでもよい。 The information processing device 10 includes a communication section 11, a storage section 12, and a processing section 13. The communication unit 11 is a communication interface that communicates with the information processing devices 20 and 20a via a network. The communication unit 11 may be a wired communication interface connected to a wired communication device such as a switch or a router, or a wireless communication interface connected to a wireless communication device such as an access point or a wireless base station. The storage unit 12 may be a volatile semiconductor memory such as a RAM, or a nonvolatile storage such as an HDD or flash memory.

処理部13は、例えば、CPU、GPU(Graphics Processing Unit)、DSP(Digital Signal Processor)などのプロセッサである。ただし、処理部13は、ASIC(Application Specific Integrated Circuit)やFPGA(Field Programmable Gate Array)などの特定用途の電子回路を含んでもよい。プロセッサは、RAMなどのメモリ(記憶部12でもよい)に記憶されたプログラムを実行する。複数のプロセッサの集合を「マルチプロセッサ」または単に「プロセッサ」と言うこともある。 The processing unit 13 is, for example, a processor such as a CPU, a GPU (Graphics Processing Unit), or a DSP (Digital Signal Processor). However, the processing unit 13 may include a specific purpose electronic circuit such as an ASIC (Application Specific Integrated Circuit) or an FPGA (Field Programmable Gate Array). The processor executes a program stored in a memory such as a RAM (which may also be the storage unit 12). A collection of multiple processors is sometimes referred to as a "multiprocessor" or simply "processor."

通信部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 communication unit 11 receives operating information 23 from the virtual machine 21 and receives operating information 24 from the virtual machine 22. The storage unit 12 stores a history of the performance information 23 received from the virtual machine 21 and the performance information 24 received from the virtual machine 22. The history of the operating information 23 and 24 indicates the resource usage status at each of a plurality of different times. Until sufficient history is accumulated in the storage unit 12, for example, the communication unit 11 receives operation information from each of the virtual machines 21 and 22 at a low predetermined frequency (for example, every minute). The processing unit 13 may cause the virtual machines 21 and 22 to periodically transmit the operating information by notifying the virtual machines 21 and 22 of the initial value of the transmission frequency. Further, the communication unit 11 may collect the operating information by requesting the operating information from the virtual machines 21 and 22 at a predetermined frequency.

処理部13は、記憶部12に記憶された履歴に基づいて、仮想マシン21と仮想マシン22との間のリソースの使用状況の相関関係14を判定する。稼働情報23,24が2以上の種類のリソースの使用状況を示す場合、処理部13は、リソースの種類毎に相関関係14を判定してもよい。例えば、処理部13は、記憶部12に記憶された履歴の中から、時刻が近い稼働情報23と稼働情報24とを対応付け、複数のペアに基づいて、稼働情報23に含まれる数値と稼働情報24に含まれる数値の間の相関係数を算出する。また、例えば、処理部13は、直近の一定期間の稼働情報23,24に基づいて、稼働情報23に含まれる数値に対する稼働情報24に含まれる数値の平均倍率を算出する。 The processing unit 13 determines the correlation 14 of the resource usage status between the virtual machine 21 and the virtual machine 22 based on the history stored in the storage unit 12. When the operating information 23 and 24 indicate the usage status of two or more types of resources, the processing unit 13 may determine the correlation 14 for each type of resource. For example, the processing unit 13 associates the operating information 23 and the operating information 24 that are close in time from the history stored in the storage unit 12, and based on the plurality of pairs, the processing unit 13 associates the operating information 23 and the operating information 24 with the numerical value included in the operating information 23 and the operating information 24, based on the plurality of pairs. A correlation coefficient between numerical values included in the information 24 is calculated. Further, for example, the processing unit 13 calculates the average magnification of the numerical value included in the operating information 24 with respect to the numerical value included in the operating information 23, based on the operating information 23 and 24 for the most recent fixed period.

相関関係14が所定条件を満たす場合、処理部13は、仮想マシン22の稼働情報24の受信頻度が、仮想マシン21の稼働情報23の受信頻度よりも低くなるよう制御する。所定条件は、例えば、相関係数の絶対値が閾値(例えば、0.8)より大きいことである。このとき、処理部13は、稼働情報24の受信頻度を、相関関係14を判定する前の初期値より低くしてもよく、仮想マシン22からの稼働情報24の受信を停止してもよい。また、処理部13は、稼働情報23の受信頻度を、1分間隔をその半分の30秒間隔にするなど、相関関係14を判定する前の初期値より高くしてもよい。 When the correlation 14 satisfies the predetermined condition, the processing unit 13 controls the reception frequency of the operation information 24 of the virtual machine 22 to be lower than the reception frequency of the operation information 23 of the virtual machine 21. The predetermined condition is, for example, that the absolute value of the correlation coefficient is greater than a threshold (eg, 0.8). At this time, the processing unit 13 may lower the reception frequency of the operating information 24 than the initial value before determining the correlation 14, or may stop receiving the operating information 24 from the virtual machine 22. Further, the processing unit 13 may set the reception frequency of the operating information 23 to be higher than the initial value before determining the correlation 14, such as by changing the reception frequency of the operating information 23 to half the one minute interval, that is, 30 seconds.

受信頻度の制御では、処理部13は、仮想マシン22に関する情報を仮想マシン21に通知することで、仮想マシン21を通じて仮想マシン22に稼働情報24の送信頻度の低下を指示するようにしてもよい。また、処理部13は、稼働情報24の送信頻度の低下を仮想マシン22に直接指示するようにしてもよい。仮想マシン22に対して直接的または間接的に行われる指示は、送信停止の指示であってもよい。また、通信部11から仮想マシン22に稼働情報24を要求する頻度を下げるようにしてもよい。 In controlling the reception frequency, the processing unit 13 may instruct the virtual machine 22 to reduce the frequency of transmission of the operating information 24 through the virtual machine 21 by notifying the virtual machine 21 of information regarding the virtual machine 22. . Furthermore, the processing unit 13 may directly instruct the virtual machine 22 to reduce the frequency of transmission of the operating information 24. The instruction given directly or indirectly to the virtual machine 22 may be an instruction to stop transmission. Further, the frequency with which the communication unit 11 requests the operating information 24 from the virtual machine 22 may be reduced.

相関関係14が所定条件を満たす場合に受信頻度を低くする仮想マシンは、仮想マシン21,22のうちデータフローの下流側に位置する仮想マシンとしてもよい。例えば、通信部11がテストリクエストを送信し、仮想マシン21,22の通信ログを収集するなどの方法により、処理部13が複数の仮想マシンの間のメッセージ通信の順序を検出する。仮想マシン21がメッセージの送信元であり仮想マシン22が当該メッセージの送信先である場合、処理部13は、仮想マシン21,22のうちデータフローの下流側に位置する仮想マシン22の受信頻度を低くすることが考えられる。 The virtual machine whose reception frequency is lowered when the correlation 14 satisfies a predetermined condition may be a virtual machine located on the downstream side of the data flow among the virtual machines 21 and 22. For example, the processing unit 13 detects the order of message communication between the plurality of virtual machines by a method such as the communication unit 11 transmitting a test request and collecting communication logs of the virtual machines 21 and 22. When the virtual machine 21 is the sender of a message and the virtual machine 22 is the sender of the message, the processing unit 13 calculates the reception frequency of the virtual machine 22 located on the downstream side of the data flow among the virtual machines 21 and 22. It is possible to lower it.

稼働情報24の受信頻度が稼働情報23の受信頻度より低くなると、仮想マシン21のリソースの使用状況を示す稼働情報23は収集される一方、仮想マシン22のリソースの使用状況を示す稼働情報24は収集されない期間が生じる。そこで、処理部13は、稼働情報24が収集されない期間について、仮想マシン22のリソースの使用状況を推定する。具体的には、処理部13は、仮想マシン21から受信された稼働情報23と相関関係14とに基づいて、仮想マシン22のリソースの使用状況を推定する。例えば、処理部13は、稼働情報23に含まれる数値に、相関関係14を判定する際に算出しておいた倍率を乗じたものを、仮想マシン22のリソースの使用状況を示す数値と推定する。 When the reception frequency of the operation information 24 becomes lower than the reception frequency of the operation information 23, the operation information 23 indicating the resource usage status of the virtual machine 21 is collected, while the operation information 24 indicating the resource usage status of the virtual machine 22 is collected. There will be periods when data is not collected. Therefore, the processing unit 13 estimates the resource usage status of the virtual machine 22 for the period in which the operating information 24 is not collected. Specifically, the processing unit 13 estimates the resource usage status of the virtual machine 22 based on the operation information 23 and the correlation 14 received from the virtual machine 21 . For example, the processing unit 13 estimates that the numerical value included in the operating information 23 is multiplied by the magnification factor calculated when determining the correlation 14 as the numerical value indicating the resource usage status of the virtual machine 22. .

処理部13は、稼働情報23に含まれる数値と推定した数値とを混在させてサービス管理者に提示してもよい。例えば、処理部13は、仮想マシン21のリソースの使用状況については、最新の稼働情報23に含まれる数値を表示し、仮想マシン22のリソースの使用状況については、相関関係14に基づいて推定した数値を表示する。 The processing unit 13 may present a mixture of the numerical values included in the operating information 23 and the estimated numerical values to the service manager. For example, the processing unit 13 displays the numerical value included in the latest operation information 23 regarding the resource usage status of the virtual machine 21, and estimates the resource usage status of the virtual machine 22 based on the correlation 14. Display numbers.

第1の実施の形態の情報処理装置10によれば、仮想マシン21から受信された稼働情報23および仮想マシン22から受信された稼働情報24の履歴が蓄積される。その履歴に基づいて、仮想マシン21と仮想マシン22との間のリソースの使用状況の相関関係14が判定され、相関関係14が所定条件を満たす場合、仮想マシン22の稼働情報24の受信頻度が低くなる。そして、仮想マシン21から受信された稼働情報23と相関関係14とに基づいて、仮想マシン22のリソースの使用状況が推定される。 According to the information processing apparatus 10 of the first embodiment, the history of the performance information 23 received from the virtual machine 21 and the performance information 24 received from the virtual machine 22 is accumulated. Based on the history, the correlation 14 of the resource usage status between the virtual machine 21 and the virtual machine 22 is determined, and if the correlation 14 satisfies a predetermined condition, the reception frequency of the operating information 24 of the virtual machine 22 is determined. It gets lower. Then, based on the performance information 23 and the correlation 14 received from the virtual machine 21, the resource usage status of the virtual machine 22 is estimated.

これにより、一部の仮想マシンからの稼働情報の収集頻度が低くなり、全ての仮想マシンから高頻度で稼働情報を収集する場合と比べて通信量を削減することができる。特に、複数の仮想マシンが異なるシステム(例えば、異なるクラウドシステム)に配置されている場合においては、インターネットなどの広域データ通信ネットワークのトラフィックを削減することができる。また、収集頻度が高い仮想マシンの稼働情報と相関関係から、収集頻度が低い仮想マシン(収集を停止している仮想マシンを含む)の稼働情報が推定される。よって、全ての仮想マシンの収集頻度を一律に低くする場合と比べて、リソースの使用状況を監視する監視精度を向上させることができる。 As a result, the frequency of collecting operating information from some virtual machines becomes lower, and the amount of communication can be reduced compared to the case where operating information is frequently collected from all virtual machines. In particular, when multiple virtual machines are located in different systems (eg, different cloud systems), traffic on a wide area data communication network such as the Internet can be reduced. Further, based on the correlation with the performance information of virtual machines that are collected frequently, the performance information of virtual machines that are collected less frequently (including virtual machines for which collection has been stopped) is estimated. Therefore, compared to the case where the collection frequency of all virtual machines is uniformly lowered, it is possible to improve the monitoring accuracy of monitoring the resource usage status.

なお、第1の実施の形態の情報処理システムでは、仮想マシン22のリソースの使用状況を推定する推定処理が行われており、推定処理の追加は情報処理システムの負荷を若干増大させる可能性がある。一方、推定処理の採用によって、仮想マシン22から情報処理装置10に稼働情報24を送信して稼働情報24を処理する監視処理が減少し、監視処理の減少は情報処理システムの負荷を大きく低減させる。よって、推定処理の負荷増大よりも監視処理の負荷減少の効果が大きく、情報処理システムの全体的負荷は低減する。 Note that in the information processing system of the first embodiment, estimation processing is performed to estimate the resource usage status of the virtual machine 22, and adding the estimation processing may slightly increase the load on the information processing system. be. On the other hand, by adopting the estimation process, the monitoring process of transmitting the operating information 24 from the virtual machine 22 to the information processing device 10 and processing the operating information 24 is reduced, and the reduction in the monitoring process greatly reduces the load on the information processing system. . Therefore, the effect of reducing the load on the monitoring process is greater than increasing the load on the estimation process, and the overall load on the information processing system is reduced.

また、仮想マシン21を通じて仮想マシン22に各種の指示を送信するなど、収集頻度を下げた仮想マシン22を仮想マシン21に従属させ、仮想マシン22の監視を仮想マシン21に委ねる分散管理を採用することもできる。これにより、情報処理装置10と仮想マシン22との間の通信を削減できる。例えば、仮想マシン21,22が同一のクラウドシステムに配置され、情報処理装置10が当該クラウドシステムの外部に存在する場合、広域データ通信ネットワークの通信を削減することができる。 In addition, distributed management is adopted in which the virtual machine 22 is subordinated to the virtual machine 21, and the monitoring of the virtual machine 22 is entrusted to the virtual machine 21, such as by sending various instructions to the virtual machine 22 through the virtual machine 21. You can also do that. Thereby, communication between the information processing device 10 and the virtual machine 22 can be reduced. For example, if the virtual machines 21 and 22 are placed in the same cloud system and the information processing device 10 is located outside the cloud system, communication in the wide area data communication network can be reduced.

[第2の実施の形態]
次に、第2の実施の形態を説明する。
図2は、第2の実施の形態の情報処理システムの例を示す図である。
[Second embodiment]
Next, a second embodiment will be described.
FIG. 2 is a diagram illustrating an example of an information processing system according to 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 service provision are distributed and arranged in different systems. Multi-cloud systems in a broad sense include multi-cloud systems in a narrow sense and hybrid cloud systems. A multi-cloud system in a narrow sense is one in which multiple virtual machines are distributed and arranged in two or more public cloud systems. A hybrid cloud system is one in which multiple virtual machines are distributed and placed in a public cloud system and an in-house system (on-premises system). By using multiple systems, the risk of service outages can be reduced, and system-specific functions can be utilized.

第2の実施の形態の情報処理システムは、クラウドシステム31,32、自社システム33および情報収集サーバ100を含む。クラウドシステム31,32、自社システム33および情報収集サーバ100は、ネットワーク30に接続されている。ネットワーク30は、インターネットなどの広域データ通信ネットワークである。 The information processing system of the second embodiment includes cloud systems 31 and 32, an in-house system 33, and an information collection server 100. Cloud systems 31 and 32, in-house system 33, and information collection server 100 are connected to network 30. Network 30 is a wide area data communications network such as the Internet.

クラウドシステム31は、あるクラウド事業者によって所有され、そのクラウド事業者との契約に従ってサービス事業者が仮想マシンを配置することができるパブリッククラウドシステムである。クラウドシステム31は、仮想マシンを実行する物理マシンであるサーバ200,200aなどの複数のサーバを含む。 The cloud system 31 is a public cloud system owned by a certain cloud provider and in which a service provider can deploy virtual machines according to a contract with the cloud provider. The cloud system 31 includes a plurality of servers such as servers 200 and 200a, which are physical machines that execute virtual machines.

クラウドシステム32は、クラウドシステム31とは異なるクラウド事業者によって所有され、そのクラウド事業者との契約に従ってサービス事業者が仮想マシンを配置することができるパブリッククラウドシステムである。クラウドシステム32は、仮想マシンを実行する物理マシンであるサーバ200b,200cなどの複数のサーバを有する。 The cloud system 32 is a public cloud system owned by a cloud provider different from the cloud system 31, and in which a service provider can deploy virtual machines according to a contract with the cloud provider. The cloud system 32 includes a plurality of servers such as servers 200b and 200c, which are physical machines that execute virtual machines.

自社システム33は、仮想マシンを用いてサービスを提供するサービス事業者によって所有されるオンプレミスシステムである。自社システム33は、仮想マシンを実行するサーバ200d,200eなどの複数のサーバを含む。サービス事業者は、複数の仮想マシンを、クラウドシステム31,32および自社システム33のうちの2以上のシステムに分散して配置する。それら複数の仮想マシンは、ユーザからのリクエストに応じて連携して情報処理を行い、ユーザに対してレスポンスを送信する。例えば、1つの仮想マシンがリクエストを受信し、複数の仮想マシンがメッセージを木構造に転送しながら分散してデータ処理を行い、当該1つの仮想マシンが最終結果を集約してレスポンスを送信する。サービスの管理者によって、それら複数の仮想マシンの配置が決定される。 The in-house system 33 is an on-premises system owned by a service provider that provides services using virtual machines. The in-house system 33 includes multiple servers such as servers 200d and 200e that execute virtual machines. The service provider distributes and arranges a plurality of virtual machines in two or more of the cloud systems 31 and 32 and the in-house system 33. The plurality of virtual machines cooperate to process information in response to a request from a user, and send a response to the user. For example, one virtual machine receives a request, multiple virtual machines perform distributed data processing while transferring the message in a tree structure, and the one virtual machine aggregates the final results and transmits a response. The placement of these multiple virtual machines is determined by the service administrator.

情報収集サーバ100は、サービスに用いられる複数の仮想マシンにおけるリソースの使用状況を監視するサーバコンピュータである。情報収集サーバ100は、クラウドシステム31,32の外側に位置する。情報収集サーバ100は、サービス事業者によって所有されてもよく、自社システム33に含まれていてもよい。 The information collection server 100 is a server computer that monitors resource usage in a plurality of virtual machines used for services. The information collection server 100 is located outside the cloud systems 31 and 32. The information collection server 100 may be owned by a service provider or may be included in its own system 33.

情報収集サーバ100は、複数の仮想マシンのうちの少なくとも一部から、ネットワーク30を介して、リソースの使用状況を示す稼働情報を定期的に受信する。リソースの使用状況は、仮想マシンに割り当てられたハードウェア資源の使用状況である。リソースの使用状況として、CPU使用率、RAM使用量、HDDなどのストレージのアクセス量、ネットワーク帯域使用率などが挙げられる。情報収集サーバ100は、複数の仮想マシンにおけるリソースの使用状況を、サービスの管理者に対して報告する。例えば、情報収集サーバ100は、複数の仮想マシンのリソースの使用状況を列挙した画面を表示する。 The information collection server 100 periodically receives operation information indicating resource usage status from at least some of the plurality of virtual machines via the network 30. The resource usage status is the usage status of hardware resources allocated to the virtual machine. Examples of resource usage include CPU usage, RAM usage, access to storage such as HDD, and network bandwidth usage. The information collection server 100 reports the usage status of resources in a plurality of virtual machines to a service administrator. For example, the information collection server 100 displays a screen listing the resource usage status of multiple virtual machines.

複数の仮想マシンのリソースの使用状況は、サービスの運用管理のために参照される。例えば、新たな仮想マシンの追加、一部の仮想マシンの削除、仮想マシンに割り当てるリソースの増強、仮想マシンを配置するシステムの変更などの構成変更が検討される。なお、サーバ200は、第1の実施の形態の情報処理装置20に対応する。サーバ200bは、第1の実施の形態の情報処理装置20aに対応する。情報収集サーバ100は、第1の実施の形態の情報処理装置10に対応する。 The resource usage status of multiple virtual machines is referenced 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. Note that the server 200 corresponds to the information processing device 20 of the first embodiment. The server 200b corresponds to the information processing device 20a of the first embodiment. The information collection server 100 corresponds to the information processing device 10 of the first embodiment.

図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 an example of hardware of the information collection server.
The information collection server 100 includes a CPU 101, a RAM 102, an HDD 103, an image interface 104, an input interface 105, a media reader 106, and a communication interface 107. These units included in the information collection server 100 are connected to a bus. The CPU 101 corresponds to the processing unit 13 of the first embodiment. RAM 102 or HDD 103 corresponds to storage unit 12 in the first embodiment. The communication interface 107 corresponds to the communication unit 11 of the first embodiment. The servers 200, 200a, 200b, 200c, 200d, and 200e also have the same hardware as the information collection server 100.

CPU101は、プログラムの命令を実行するプロセッサである。CPU101は、HDD103に記憶されたプログラムやデータの少なくとも一部をRAM102にロードし、プログラムを実行する。CPU101は複数のプロセッサコアを備えてもよく、情報収集サーバ100は複数のプロセッサを備えてもよい。複数のプロセッサの集合を「マルチプロセッサ」または単に「プロセッサ」と言うことがある。 The CPU 101 is a processor that executes program instructions. The CPU 101 loads at least part of the program and data stored in the HDD 103 into the RAM 102, and executes the program. The CPU 101 may include multiple processor cores, and the information collection server 100 may include multiple processors. A collection of multiple processors is sometimes referred to as a "multiprocessor" or simply "processor."

RAM102は、CPU101が実行するプログラムやCPU101が演算に使用するデータを一時的に記憶する揮発性半導体メモリである。情報収集サーバ100は、RAM以外の種類のメモリを備えてもよく、複数のメモリを備えてもよい。 The RAM 102 is a volatile semiconductor memory that temporarily stores programs executed by the CPU 101 and data used by the CPU 101 for calculations. The information collection server 100 may include a type of memory other than RAM, or may include a plurality of memories.

HDD103は、OS(Operating System)やミドルウェアやアプリケーションソフトウェアなどのソフトウェアのプログラム、および、データを記憶する不揮発性ストレージである。情報収集サーバ100は、フラッシュメモリやSSD(Solid State Drive)など他の種類のストレージを備えてもよく、複数のストレージを備えてもよい。 The HDD 103 is a nonvolatile storage that stores software programs such as an OS (Operating System), middleware, and application software, and data. The information collection server 100 may include other types of storage such as flash memory and SSD (Solid State Drive), or may include multiple storages.

画像インタフェース104は、CPU101からの命令に従って、情報収集サーバ100に接続された表示装置111に画像を出力する。表示装置111として、CRT(Cathode Ray Tube)ディスプレイ、液晶ディスプレイ(LCD:Liquid Crystal Display)、有機EL(OEL:Organic Electro-Luminescence)ディスプレイ、プロジェクタなど、任意の種類の表示装置を使用することができる。情報収集サーバ100に、プリンタなど表示装置111以外の出力デバイスが接続されてもよい。 The image interface 104 outputs an image to the display device 111 connected to the information collection server 100 according to instructions from the CPU 101. As the display device 111, any type of display device can be used, such as a CRT (Cathode Ray Tube) display, a Liquid Crystal Display (LCD), an Organic Electro-Luminescence (OEL) display, or a projector. . An output device other than the display device 111, such as a printer, may be connected to the information collection server 100.

入力インタフェース105は、情報収集サーバ100に接続された入力デバイス112から入力信号を受け付ける。入力デバイス112として、マウス、タッチパネル、タッチパッド、キーボードなど、任意の種類の入力デバイスを使用することができる。情報収集サーバ100に複数種類の入力デバイスが接続されてもよい。 The input interface 105 receives input signals from the input device 112 connected to the information collection server 100. Any type of input device can be used as the input device 112, such as a mouse, touch panel, touch pad, keyboard, etc. A plurality of types of input devices may be connected to the information collection server 100.

媒体リーダ106は、記録媒体113に記録されたプログラムやデータを読み取る読み取り装置である。記録媒体113として、フレキシブルディスク(FD:Flexible Disk)やHDDなどの磁気ディスク、CD(Compact Disc)やDVD(Digital Versatile Disc)などの光ディスク、半導体メモリなど、任意の種類の記録媒体を使用することができる。媒体リーダ106は、例えば、記録媒体113から読み取ったプログラムやデータを、RAM102やHDD103などの他の記録媒体にコピーする。読み取られたプログラムは、例えば、CPU101によって実行される。なお、記録媒体113は可搬型記録媒体であってもよく、プログラムやデータの配布に用いられることがある。また、記録媒体113やHDD103を、コンピュータ読み取り可能な記録媒体と言うことがある。 The medium reader 106 is a reading device that reads programs and data recorded on the recording medium 113. As the recording medium 113, any type of recording medium can be used, such as a magnetic disk such as a flexible disk (FD) or HDD, an optical disk such as a compact disc (CD) or a digital versatile disc (DVD), or a semiconductor memory. I can do it. For example, the media reader 106 copies programs and data read from the recording medium 113 to other recording media such as the RAM 102 and the HDD 103. The read program is executed by the CPU 101, for example. Note that the recording medium 113 may be a portable recording medium, and may be used for distributing programs and data. Further, the recording medium 113 and the HDD 103 are sometimes referred to as computer-readable recording media.

通信インタフェース107は、ネットワーク30に接続され、ネットワーク30を介してサーバ200,200a,200b,200c,200d,200eと通信する。通信インタフェース107は、例えば、スイッチやルータなどの有線通信装置に接続される有線通信インタフェースである。ただし、通信インタフェース107が、基地局やアクセスポイントなどの無線通信装置に接続される無線通信インタフェースであってもよい。 The communication interface 107 is connected to the network 30 and communicates with the servers 200, 200a, 200b, 200c, 200d, and 200e via the network 30. The communication interface 107 is, for example, a wired communication interface connected to a wired communication device such as a switch or a router. However, the communication interface 107 may be a wireless communication interface connected to a wireless communication device such as a base station or an access point.

次に、複数の仮想マシンの配置および接続関係について説明する。
図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 relationships of multiple virtual machines will be explained.
FIG. 4 is a diagram showing an example of correspondence between services, virtual machines, and systems.
One example of a service operated in the second embodiment includes processes 41, 42, 43, 44, 45, and 46. The topology of communication between processes 41, 42, 43, 44, 45, and 46 is a tree structure. Process 41 receives a request from a user. Process 41 sends messages to processes 42 and 43, respectively, requesting data processing from processes 42 and 43. After receiving the message from process 41, process 43 sends a message to process 44 to request data processing from process 44. After process 44 receives the message from process 43, process 44 sends a message to process 45 to request data processing from process 45. After receiving the message from process 41, process 42 sends a message to process 46 requesting process 46 to process the data.

プロセス45は、要求されたデータ処理を行う。プロセス44は、送信したメッセージに対する応答として、プロセス45からデータ処理結果を受信し、自身のデータ処理を行う。プロセス43は、送信したメッセージに対する応答として、プロセス44からデータ処理結果を受信し、自身のデータ処理を行う。プロセス46は、要求されたデータ処理を行う。プロセス42は、送信したメッセージに対する応答として、プロセス46からデータ処理結果を受信し、自身のデータ処理を行う。プロセス41は、送信したメッセージに対する応答として、プロセス42,43からデータ処理結果を受信する。最後に、プロセス41は、自身のデータ処理を行い、ユーザにレスポンスを送信する。 Process 45 performs the requested data processing. The process 44 receives the data processing result from the process 45 as a response to the sent message, and performs its own data processing. The process 43 receives the data processing result from the process 44 as a response to the transmitted message, and performs its own data processing. Process 46 performs the requested data processing. Process 42 receives data processing results from process 46 in response to the sent message and performs its own data processing. Process 41 receives data processing results from processes 42 and 43 as a response to the transmitted message. Finally, process 41 performs its own data processing and sends the response to the user.

プロセス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を実行していなくてもよい。 Process 41 is executed in virtual machine 51. Process 42 is executed in virtual machine 52. Process 43 is executed in virtual machine 53. Process 44 is executed in virtual machine 54 . Process 45 is executed in virtual machine 55. Process 46 is executed in virtual machine 56. The processing procedures of the processes 41, 42, 43, 44, 45, and 46 are defined by the application program. The virtual machines 51, 52, 53, 54, 55, and 56 of the second embodiment are virtual machines in a narrow sense that execute a guest OS and application programs. However, the virtual machines 51, 52, 53, 54, 55, and 56 may be used as containers using container-type computer virtualization technology, and the virtual machines 51, 52, 53, 54, 55, and 56 may not be running a guest OS. It's okay.

仮想マシン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に対応する。 Virtual machines 51, 53, 54, and 55 are placed in the cloud system 31. In the cloud system 31, the virtual machines 51, 53, 54, and 55 may be placed on different servers, or two or more of the virtual machines 51, 53, 54, and 55 may be placed on the same server. It's okay. The virtual machines 52 and 56 are placed in the cloud system 32. In the cloud system 32, the virtual machines 52 and 56 may be placed on different servers or may be placed on the same server. In this example, virtual machines 51, 52, 53, 54, 55, and 56 are divided and arranged in two public cloud systems. However, it is also possible to arrange some of the virtual machines 51, 52, 53, 54, 55, and 56 in the company's system 33. Note that the virtual machine 51 corresponds to the virtual machine 21 of the first embodiment. The virtual machine 52 corresponds to the virtual machine 22 of the first embodiment.

ここで、情報収集サーバ100は、仮想マシン51,52,53,54,55,56におけるリソースの使用状況を監視する。リソースの使用状況の監視精度を高くし、監視情報のリアルタイム性を確保するには、情報収集サーバ100が高頻度で稼働情報を受信することが好ましい。しかし、情報収集サーバ100が仮想マシン51,52,53,54,55,56の全てから高頻度で稼働情報を受信すると、広域データ通信ネットワークであるネットワーク30のトラフィックが多くなるという問題がある。 Here, the information collection server 100 monitors the usage status of resources in the virtual machines 51, 52, 53, 54, 55, and 56. In order to increase the accuracy of monitoring the resource usage status and ensure the real-time nature of the monitoring information, it is preferable that the information collection server 100 receives operation information at high frequency. However, if the information collection server 100 receives operating information from all of the virtual machines 51, 52, 53, 54, 55, and 56 with high frequency, there is a problem that traffic on the network 30, which is a wide area data communication network, increases.

そこで、第2の実施の形態の情報処理システムは、仮想マシン51,52,53,54,55,56のうち、一部の仮想マシンから情報収集サーバ100への稼働情報の送信を停止する。稼働情報の送信を停止する仮想マシンは、リソースの使用状況が他の特定の仮想マシンと強い相関をもつ仮想マシンとする。稼働情報を収集しない仮想マシンのリソースの使用状況は、情報収集サーバ100が、稼働情報を収集する仮想マシンのリソースの使用状況と予め算出しておいた相関関係とに基づいて推定する。これにより、監視精度を維持しつつネットワーク30のトラフィックを削減できる。 Therefore, the information processing system according to the second embodiment stops sending operation information from some of the virtual machines 51, 52, 53, 54, 55, and 56 to the information collection server 100. The virtual machine whose operation information is to be stopped from being sent is a virtual machine whose resource usage status has a strong correlation with other specific virtual machines. The information collection server 100 estimates the resource usage status of a virtual machine for which operating information is not collected, based on the resource usage status of the virtual machine for which operating information is collected and a pre-calculated correlation. Thereby, traffic on the network 30 can be reduced while maintaining monitoring accuracy.

図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, communication between the virtual machines 51 and 53 as a representative among the virtual machines 51, 52, 53, 54, 55, and 56 will be explained. In the sequence example shown in FIG. 5, the virtual machine 51 continues to send operation information to the information collection server 100, and the virtual machine 53 temporarily stops sending operation information to the information collection server 100.

まず、情報収集サーバ100は、仮想マシン51,53にテスト開始通知を送信する(S100)。テスト開始通知を受けて、仮想マシン51,53は、他の仮想マシンとの通信の監視を開始する。通信の監視は、パケットレベルの送信パケットの監視でもよいし、アプリケーションレベルの送信メッセージの監視でもよい。仮想マシン51,53は、送信メッセージの宛先および時刻を少なくとも含む通信ログを採取する。 First, the information collection server 100 sends a test start notification to the virtual machines 51 and 53 (S100). Upon receiving the test start notification, the virtual machines 51 and 53 start monitoring communication with other virtual machines. Communication monitoring may be performed by monitoring transmitted packets at the packet level or by monitoring transmitted messages at the application level. The virtual machines 51 and 53 collect communication logs that include at least the destination and time of the sent message.

情報収集サーバ100は、サービスの入り口である仮想マシン51にテストリクエストを送信する(S101)。仮想マシン51は、テストリクエストを受けて、テストメッセージを仮想マシン53に送信して仮想マシン53にデータ処理を要求する(S102)。このとき、仮想マシン51は、仮想マシン53へのテストメッセージの送信を検出し、仮想マシン53へのテストメッセージの送信を示す通信ログを採取している。テストリクエストの処理が完了すると、仮想マシン51,53は、情報収集サーバ100に通信ログを送信する(S103)。仮想マシン51,53は、自律的に通信ログを送信する。ただし、情報収集サーバ100が仮想マシン51,53に通信ログを要求してもよい。 The information collection server 100 transmits a test request to the virtual machine 51, which is the entrance to the service (S101). Upon receiving the test request, the virtual machine 51 sends a test message to the virtual machine 53 to request data processing from the virtual machine 53 (S102). At this time, the virtual machine 51 detects the transmission of the test message to the virtual machine 53 and collects a communication log indicating the transmission of the test message to the virtual machine 53. When the test request processing is completed, the virtual machines 51 and 53 transmit communication logs to the information collection server 100 (S103). The virtual machines 51 and 53 autonomously transmit communication logs. However, the information collection server 100 may request communication logs from the virtual machines 51 and 53.

情報収集サーバ100は、他の仮想マシンからも同様に通信ログを受信する。情報収集サーバ100は、これらの通信ログに基づいて仮想マシン間のメッセージ送信の順序を判定し、図4に示すようなサービスのデータフローを判定する。また、情報収集サーバ100は、稼働情報の収集頻度の初期値として、低い収集頻度を決定する。低い収集頻度は、例えば、1分間隔とする。情報収集サーバ100は、サービスに参加する仮想マシンの総数に応じて収集頻度の初期値を決定してもよい。その場合、仮想マシンの総数が少ないほど収集頻度を高くし、仮想マシンの総数が多いほど収集頻度を低くする。後述のグループ分類の前は、情報収集サーバ100が低い収集頻度で稼働情報を収集することで、情報処理システム全体の通信量が一時的に過大になるのを抑制することができる。 The information collection server 100 similarly receives communication logs from other virtual machines. The information collection server 100 determines the order of message transmission between virtual machines based on these communication logs, and determines the data flow of the service as shown in FIG. 4. Furthermore, the information collection server 100 determines a low collection frequency as the initial value of the performance information collection frequency. A low collection frequency may be, for example, every minute. The information collection server 100 may determine the initial value of the collection frequency according to the total number of virtual machines participating in the service. In that case, the smaller the total number of virtual machines, the higher the collection frequency, and the larger the total number of virtual machines, the lower the collection frequency. Before group classification, which will be described later, the information collection server 100 collects operation information at a low collection frequency, so that it is possible to suppress the communication traffic of the entire information processing system from becoming temporarily excessive.

情報収集サーバ100は、仮想マシン51,53に収集頻度の初期値を通知する(S104)。仮想マシン51,53は、情報収集サーバ100から通知された低い頻度で、リソースの使用状況を取得して情報収集サーバ100に稼働情報を送信することを開始する(S105)。リソースの使用状況としては、CPU使用率、RAM使用量、HDDアクセス量、ネットワーク帯域使用率などが挙げられる。第2の実施の形態では、リソースとして主にCPUとRAMに着目するものとする。 The information collection server 100 notifies the virtual machines 51 and 53 of the initial value of the collection frequency (S104). The virtual machines 51 and 53 start acquiring resource usage status and transmitting operating information to the information gathering server 100 at a low frequency notified from the information gathering server 100 (S105). Examples of resource usage include CPU usage, RAM usage, HDD access, and network bandwidth usage. In the second embodiment, we will mainly focus on the CPU and RAM as resources.

情報収集サーバ100は、仮想マシン51,53から受信する稼働情報を履歴として少なくとも一定期間保持する。一定期間の稼働情報の履歴が蓄積されると、情報収集サーバ100は、稼働情報の履歴と複数の仮想マシンの間のデータフローに基づいて、それら複数の仮想マシンをグループに分類する。2つの仮想マシンがデータフロー上で親子関係にあり、当該2つの仮想マシンのリソースの使用状況に強い相関がある場合、当該2つの仮想マシンが同一グループに分類される。2つの仮想マシンの間で、稼働情報に含まれる計測値の相関係数の絶対値が所定の閾値(例えば、0.8)より大きい場合、強い相関があると判断される。親子関係は、一方の仮想マシンが他方の仮想マシンにメッセージを送信する関係である。図4の例によれば、仮想マシン51,53に着目すると、仮想マシン51が親仮想マシンであり仮想マシン53が子仮想マシンである。 The information collection server 100 retains the operating information received from the virtual machines 51 and 53 as a history for at least a certain period of time. When the history of operating information for a certain period of time is accumulated, the information collection server 100 classifies the plurality of virtual machines into groups based on the history of operating information and the data flow between the plurality of virtual machines. If two virtual machines have a parent-child relationship on the data flow and there is a strong correlation between the resource usage statuses of the two virtual machines, the two virtual machines are classified into the same group. If the absolute value of the correlation coefficient between the measured values included in the operating information is larger than a predetermined threshold (for example, 0.8) between two virtual machines, it is determined that there is a strong correlation. A parent-child relationship is one in which one virtual machine sends a message to another virtual machine. According to the example of FIG. 4, focusing on the virtual machines 51 and 53, the virtual machine 51 is the parent virtual machine and the virtual machine 53 is the child virtual machine.

子仮想マシンと更に親子関係にある孫仮想マシンのリソースの使用状況が、親仮想マシンと強い相関をもつ場合、孫仮想マシンも連続的に親仮想マシンと同一グループに分類される。情報収集サーバ100は、各グループの中で最も上流側の仮想マシンを代表仮想マシンとして選択し、代表仮想マシン以外の仮想マシンを従属仮想マシンとして扱う。後述するように、代表仮想マシンのみが情報収集サーバ100に稼働情報を送信し、従属仮想マシンは情報収集サーバ100に稼働情報を送信しないことになる。なお、情報収集サーバ100は、同一グループに分類する仮想マシンを、クラウドシステム31,32および自社システム33のうち同一のシステムに配置された仮想マシンに限定してもよい。 If the resource usage status of a grandchild virtual machine that has a parent-child relationship with a 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 information collection server 100 selects the most upstream virtual machine in each group as the representative virtual machine, and treats virtual machines other than the representative virtual machine as dependent virtual machines. As will be described later, only the representative virtual machine transmits operation information to the information collection server 100, and the subordinate virtual machines do not transmit operation information to the information collection server 100. Note that the information collection server 100 may limit the virtual machines classified into the same group to virtual machines placed in the same system among the cloud systems 31 and 32 and the in-house system 33.

仮想マシンのグループ化は、リソースの種類毎に行われる。よって、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 their CPU usage rates have a strong correlation, but they may be classified into different groups because their RAM usage amounts have a low correlation. Here, it is assumed that the virtual machine 51 is a representative virtual machine and the virtual machine 53 is a dependent virtual machine. Furthermore, the information collection server 100 calculates a magnification of the resource usage status of the representative virtual machine for the dependent virtual machine. The magnification can be calculated, for example, by dividing the average measured value of the dependent virtual machine over a certain period by the average measured value of the representative virtual machine. However, the magnification may be expressed as a function using a variable representing the measured value of the representative virtual machine.

情報収集サーバ100は、代表仮想マシンである仮想マシン51に、グループ通知を送信する(S106)。グループ通知は、従属仮想マシンである仮想マシン53の識別情報と、仮想マシン51の計測値に対する仮想マシン53の計測値の倍率とを含む。グループ通知を受信すると、仮想マシン51は、仮想マシン51と同一グループに属する従属仮想マシンである仮想マシン53に、停止通知を送信する(S107)。仮想マシン53は、停止通知を受信すると、情報収集サーバ100への稼働情報の送信を停止する。 The information collection server 100 transmits a group notification to the virtual machine 51, which is the representative virtual machine (S106). The group notification includes identification information of the virtual machine 53, which is a dependent virtual machine, and a magnification of the measured value of the virtual machine 53 relative to the measured value of the virtual machine 51. Upon receiving the group notification, the virtual machine 51 transmits a stop notification to the virtual machine 53, which is a subordinate virtual machine belonging to the same group as the virtual machine 51 (S107). When the virtual machine 53 receives the stop notification, it stops sending the operating information to the information collection server 100.

また、仮想マシン51は、稼働情報を情報収集サーバ100に送信する頻度を初期値よりも高く変更する。仮想マシン51は、変更後の高い収集頻度で、リソースの使用状況を取得して情報収集サーバ100に稼働情報を送信することを開始する(S108)。 Furthermore, the virtual machine 51 changes the frequency of transmitting operating information to the information collection server 100 to be higher than the initial value. The virtual machine 51 acquires the resource usage status and starts transmitting the operating information to the information collection server 100 at a high collection frequency after the change (S108).

変更後の収集頻度は、同一グループに属する従属仮想マシンの数に応じて決定される。グループ内の仮想マシンの総数をn、従属仮想マシンの数をmとすると、代表仮想マシンの送信頻度を、初期値のn÷(n-m)×α倍になるよう上げる。すなわち、代表仮想マシンの送信間隔を、初期値の(n-m)÷n÷α倍になるよう短縮する。稼働情報を送信しない従属仮想マシンが多いほど、代表仮想マシンの送信頻度が高くなる。調整パラメータαは、1より小さい正の実数である。これにより、グループ内の稼働情報の総データ量を削減しつつ代表仮想マシンの収集頻度を上げることができる。 The collection frequency after the change is determined according to the number of dependent virtual machines belonging to the same group. When the total number of virtual machines in a group is n and the number of dependent virtual machines is m, the transmission frequency of the representative virtual machine is increased to be n÷(n−m)×α times the initial value. That is, the transmission interval of the representative virtual machine is shortened to (n−m)÷n÷α times the initial value. The more dependent virtual machines that do not send operating information, the more frequently the representative virtual machine sends information. The adjustment parameter α is a positive real number smaller than 1. As a result, it is possible to increase the frequency of collection of representative virtual machines while reducing the total data amount of operating information within a group.

ただし、収集頻度を高くし過ぎることは、監視精度の向上に寄与しない上に、ネットワーク負荷を無駄に高くしてしまう。そこで、代表仮想マシンの収集頻度は、所定の上限より高くならないようにする。収集頻度の上限は、例えば、1秒間隔とする。仮想マシン51,53の2つの仮想マシンが1つのグループを形成する場合、例えば、代表仮想マシンである仮想マシン51の収集頻度が30秒と1分の間で調整される。 However, increasing the collection frequency too much does not contribute to improving monitoring accuracy and also increases the network load unnecessarily. Therefore, the collection frequency of the representative virtual machine is set not to be higher than a predetermined upper limit. The upper limit of the collection frequency is, for example, an interval of 1 second. When two virtual machines 51 and 53 form one group, for example, the collection frequency of virtual machine 51, which is the representative virtual machine, is adjusted to between 30 seconds and 1 minute.

情報収集サーバ100は、仮想マシン51からは稼働情報を受信する一方、仮想マシン53からは稼働情報を受信しなくなる。そこで、情報収集サーバ100は、仮想マシン51から受信した最新の稼働情報が示す計測値に、予め算出しておいた仮想マシン53の倍率を乗じることで、仮想マシン53の最新のリソースの使用状況を推定する。倍率の算出およびリソースの使用状況の推定は、リソースの種類毎に行われる。 The information collection server 100 receives operation information from the virtual machine 51, but no longer receives operation information from the virtual machine 53. Therefore, the information collection server 100 multiplies the measurement value indicated by the latest operation information received from the virtual machine 51 by a pre-calculated magnification factor for the virtual machine 53 to determine the latest resource usage status of the virtual machine 53. Estimate. Calculation of magnification and estimation of resource usage status are performed for each type of resource.

また、仮想マシン51は、同一グループに属する従属仮想マシンである仮想マシン53のリソースの使用状況を監視する。仮想マシン51は、低い所定頻度で仮想マシン53に稼働情報を要求する(S109)。低い所定頻度は、ステップS104で通知された収集頻度の初期値と同じでもよく、例えば、1分間隔とする。仮想マシン53は、仮想マシン51からの要求に応じて仮想マシン53におけるリソースの使用状況を取得し、仮想マシン51に稼働情報を送信する(S110)。 Furthermore, the virtual machine 51 monitors the resource usage status of the virtual machine 53, which is a subordinate virtual machine belonging to the same group. The virtual machine 51 requests operation information from the virtual machine 53 at a low predetermined frequency (S109). The low predetermined frequency may be the same as the initial value of the collection frequency notified in step S104, for example, at one minute intervals. The virtual machine 53 acquires the usage status of resources in the virtual machine 53 in response to a request from the virtual machine 51, and transmits operation information to the virtual machine 51 (S110).

仮想マシン51は、仮想マシン53から稼働情報を受信すると、仮想マシン51と仮想マシン53との間でリソースの使用状況に強い相関が維持されているか判定する。強い相関が維持されているかは、直近の複数回の仮想マシン53の稼働情報とそれに対応する仮想マシン51の稼働情報とを対比して判断される。 When the virtual machine 51 receives the operation information from the virtual machine 53, it determines whether a strong correlation is maintained in the resource usage status between the virtual machine 51 and the virtual machine 53. Whether a strong correlation is maintained is determined by comparing the most recent operation information of the virtual machine 53 and the corresponding operation information of the virtual machine 51.

例えば、仮想マシン51は、仮想マシン53からの稼働情報の受信時刻に最も近い仮想マシン51の稼働情報を履歴から抽出し、仮想マシン51の稼働情報に含まれる計測値と仮想マシン53の稼働情報に含まれる計測値とのペアを作成する。仮想マシン51は、複数のペアから相関係数を算出し、相関係数の絶対値が閾値より大きい場合は強い相関が維持されていると判断し、相関係数の絶対値が閾値以下である場合は相関が低くなったと判断する。また、仮想マシン51は、強い相関が維持されていると判断した場合、仮想マシン51に対する仮想マシン53のリソースの使用状況の倍率を再計算する。例えば、仮想マシン51は、直近の複数回の仮想マシン53の計測値の平均を、それに対応する仮想マシン51の計測値の平均で割ることで算出する。 For example, the virtual machine 51 extracts the operating information of the virtual machine 51 closest to the reception time of the operating information from the virtual machine 53 from the history, and extracts the measured value included in the operating information of the virtual machine 51 and the operating information of the virtual machine 53. Create a pair with measurements contained in . The virtual machine 51 calculates the correlation coefficient from the plurality of pairs, and determines that a strong correlation is maintained if the absolute value of the correlation coefficient is greater than the threshold, and if the absolute value of the correlation coefficient is less than or equal to the threshold. If so, it is determined that the correlation has become low. Furthermore, when the virtual machine 51 determines that a strong correlation is maintained, it recalculates the magnification of the resource usage status of the virtual machine 53 relative to the virtual machine 51. For example, the virtual machine 51 is calculated by dividing the average of the most recent measured values of the virtual machine 53 by the average of the corresponding measured values of the virtual machine 51.

ここでは、仮想マシン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 virtual machines 51 and 53. Then, the virtual machine 51 transmits a correlation update notification including the recalculated magnification to the information collection server 100 (S111). Furthermore, the virtual machine 51 continues to acquire the resource usage status at a high collection frequency and transmits the operating information to the information collection server 100 (S112). The information collection server 100 does not continue to receive operation information from the virtual machine 53. Therefore, the information collection server 100 estimates the resource usage status of the virtual machine 53 using the latest magnification notified in step S111.

再び、仮想マシン51は、仮想マシン53に稼働情報を要求し(S113)、仮想マシン53から稼働情報を受信する(S114)。ここでは、相関係数の絶対値が閾値以下になり、仮想マシン51と仮想マシン53との間の相関が失われたとする。すると、仮想マシン51は、仮想マシン53に再開通知を送信する(S115)。再開通知を受信すると、仮想マシン53は、定期的にリソースの使用状況を取得して情報収集サーバ100に送信することを再開する。このときの仮想マシン53の収集頻度は、低い頻度でよく、例えば、ステップS104で通知された初期値とする。 The virtual machine 51 requests operation information from the virtual machine 53 again (S113), and receives the operation information from the virtual machine 53 (S114). Here, it is assumed that the absolute value of the correlation coefficient becomes equal to or less than the threshold value, and the correlation between the virtual machines 51 and 53 is lost. Then, the virtual machine 51 transmits a restart notification to the virtual machine 53 (S115). Upon receiving the restart notification, the virtual machine 53 resumes periodically acquiring the resource usage status and transmitting it to the information collection server 100. The collection frequency of the virtual machine 53 at this time may be a low frequency, for example, the initial value notified in step S104.

仮想マシン51は、情報収集サーバ100に、仮想マシン53がグループから外れたことを示すグループ解除通知を送信する(S116)。情報収集サーバ100は、グループ解除通知を受信すると、グループから外れた仮想マシン53のリソースの使用状況を、推定値ではなく計測値に基づいて把握するように切り替える。 The virtual machine 51 transmits a group cancellation notification to the information collection server 100 indicating that the virtual machine 53 has left the group (S116). When the information collection server 100 receives the group cancellation notification, the information collection server 100 switches to grasping the resource usage status of the virtual machine 53 that is removed from the group based on the measured value instead of the estimated value.

また、仮想マシン51は、グループに属する従属仮想マシンが減少したことに伴い、仮想マシン51が稼働情報を情報収集サーバ100に送信する頻度を再計算する。これにより、仮想マシン51の収集頻度が低下する。その結果、仮想マシン51,53は、低い頻度で、リソースの使用状況を取得して情報収集サーバ100に稼働情報を送信するようになる(S117)。収集頻度は、例えば、1分間隔に戻る。 Further, the virtual machine 51 recalculates the frequency with which the virtual machine 51 transmits operating information to the information collection server 100 as the number of dependent virtual machines belonging to the group decreases. This reduces the collection frequency of the virtual machine 51. As a result, the virtual machines 51 and 53 acquire resource usage status and transmit operating information to the information collection server 100 at a low frequency (S117). The collection frequency reverts to, for example, one minute intervals.

このように、サービスの中でメッセージを送信する親仮想マシンと当該メッセージを受信してデータ処理を行う子仮想マシンとの間には、CPUやRAMなどのリソースの使用状況に強い相関があることがある。この場合、子仮想マシンの稼働情報の収集を停止し、親仮想マシンの稼働情報から子仮想マシンのリソースの使用状況を推定することで、ネットワーク30のトラフィックを削減することができる。また、ネットワーク30の総トラフィックが削減される範囲で、親仮想マシンの収集頻度を高くすることで、リソースの使用状況をリアルタイムに監視することができ、監視精度を向上させることができる。 In this way, there is a strong correlation in the usage status of resources such as CPU and RAM between the parent virtual machine that sends messages in a service and the child virtual machine that receives the messages and processes the data. There is. In this case, the traffic on the network 30 can be reduced by stopping the collection of operation information of the child virtual machine and estimating the resource usage status of the child virtual machine from the operation information of the parent virtual machine. Furthermore, by increasing the frequency of collection of parent virtual machines within the range in which the total traffic of the network 30 is reduced, resource usage status can be monitored in real time, and monitoring accuracy can be improved.

なお、情報収集サーバ100は、従属仮想マシンの稼働情報の収集を停止した後も、稼働情報を収集している代表仮想マシンの間で相関関係を定期的に判定する。新たに2つの代表仮想マシンの間で強い相関が検出された場合、情報収集サーバ100は、データフローの下流側の代表仮想マシンを従属仮想マシンに変更する。その場合、情報収集サーバ100は、ステップS106と同様に、上流側の代表仮想マシンに対して、従属仮想マシンが追加されたことを示すグループ通知を送信する。 Note that even after stopping the collection of operation information of dependent virtual machines, the information collection server 100 periodically determines the correlation between the representative virtual machines for which operation information is being collected. If a strong correlation is newly detected between two representative virtual machines, the information collection server 100 changes the representative virtual machine on the downstream side of the data flow to a dependent virtual machine. In that case, the information collection server 100 transmits a group notification indicating that a dependent virtual machine has been added to the upstream representative virtual machine, as in step S106.

図6は、仮想マシンのグループ化例を示す図である。
前述のように、情報収集サーバ100は、仮想マシン51にテストリクエストを送信する。すると、図4に示す構造に従い、仮想マシン51は仮想マシン52,53にテストメッセージを送信する。仮想マシン53は仮想マシン54にテストメッセージを送信し、仮想マシン54は仮想マシン55にテストメッセージを送信する。仮想マシン52は仮想マシン56にテストメッセージを送信する。この間、仮想マシン51,52,53,54,55,56は、パケットを監視するなどの方法により、テストメッセージの送信先の仮想マシンおよびテストメッセージの送信時刻を含む通信ログを採取する。
FIG. 6 is a diagram illustrating an example of grouping virtual machines.
As described above, the information collection server 100 sends a test request to the virtual machine 51. Then, according to the structure shown in FIG. 4, the virtual machine 51 transmits a test message to the virtual machines 52 and 53. Virtual machine 53 sends a test message to virtual machine 54, and virtual machine 54 sends a test message to virtual machine 55. Virtual machine 52 sends a test message to virtual machine 56. During this time, the virtual machines 51, 52, 53, 54, 55, and 56 collect communication logs including the virtual machine to which the test message is sent and the time at which the test message was sent, by monitoring packets or the like.

仮想マシン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 virtual machines 51, 52, 53, 54, 55, and 56 transmit communication logs to the information collection server 100. The information collection server 100 determines the order of message transmission among the virtual machines 51, 52, 53, 54, 55, and 56 based on the received communication log, and grasps the data flow. In addition, the information collection server 100 collects CPU information, which is operating information indicating the CPU usage rate, and RAM usage from the virtual machines 51, 52, 53, 54, 55, and 56 at low frequency (for example, every 1 minute). RAM information, which is the operating information shown, is received.

図7は、仮想マシンのグループ化例を示す図(続き1)である。
情報収集サーバ100は、リソースの種類毎、すなわち、CPUとRAMそれぞれについて、仮想マシン51,52,53,54,55,56をグループ化する。
FIG. 7 is a diagram (continued 1) illustrating an example of grouping virtual machines.
The information collection server 100 groups virtual machines 51, 52, 53, 54, 55, and 56 for each type of resource, that is, CPU and RAM.

CPUについて、情報収集サーバ100は、低頻度で仮想マシン51,52,53,54,55,56から受信したCPU情報を用いて、データフローの先頭の仮想マシン51から下流に向かって相関関係を順に判定する。 Regarding the CPU, the information collection server 100 uses CPU information received from the virtual machines 51, 52, 53, 54, 55, and 56 at low frequency to calculate the correlation downstream from the virtual machine 51 at the beginning of the data flow. Judge in order.

まず、情報収集サーバ100は、仮想マシン51と仮想マシン53の間のCPU使用率の相関係数を算出する。ここでは、相関係数の絶対値が閾値より大きいとする。すると、情報収集サーバ100は、仮想マシン53を仮想マシン51と同一グループに分類する。次に、情報収集サーバ100は、データフローを下流に向かって辿り、仮想マシン51と仮想マシン54の間のCPU使用率の相関係数を算出する。ここでは、相関係数の絶対値が閾値より大きいとする。すると、情報収集サーバ100は、仮想マシン54を仮想マシン51,53と同一グループに分類する。 First, the information collection server 100 calculates the correlation coefficient of the CPU usage rate between the virtual machine 51 and the virtual machine 53. Here, it is assumed that the absolute value of the correlation coefficient is larger than the threshold value. Then, the information collection server 100 classifies the virtual machine 53 and the virtual machine 51 into the same group. Next, the information collection server 100 follows the data flow downstream and calculates the correlation coefficient of the CPU usage rates between the virtual machines 51 and 54. Here, it is assumed that the absolute value of the correlation coefficient is larger than the threshold value. Then, the information collection server 100 classifies the virtual machine 54 into the same group as the virtual machines 51 and 53.

次に、情報収集サーバ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 information collection server 100 follows the data flow downstream and calculates the correlation coefficient of the CPU usage rates between the virtual machines 51 and 55. Here, it is assumed that the absolute value of the correlation coefficient is less than or equal to the threshold value. Then, the information collection server 100 classifies the virtual machine 55 into a different group from the virtual machines 51, 53, and 54. The information collection server 100 also calculates a correlation coefficient of CPU usage rates between the virtual machines 51 and 52. Here, it is assumed that the absolute value of the correlation coefficient is less than or equal to the threshold value. Then, the information collection server 100 classifies the virtual machine 52 into a different group from the virtual machine 51. Next, the information collection server 100 follows the data flow downstream and calculates the correlation coefficient of the CPU usage rates between the virtual machines 52 and 56. Here, it is assumed that the absolute value of the correlation coefficient is larger than the threshold value. Then, the information collection server 100 classifies the virtual machine 56 and the virtual machine 52 into the same group.

これにより、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, for the CPU, the virtual machines 51, 52, and 55 become representative virtual machines, and the virtual machines 53, 54, and 56 become dependent virtual machines. The virtual machines 51, 52, and 55 periodically transmit CPU information to the information collection server 100. The virtual machines 53, 54, and 56 stop sending CPU information to the information collection server 100. Furthermore, as the virtual machines 53 and 54 stop transmitting CPU information, the collection frequency of the virtual machine 51 increases with an upper limit of three times the initial value (for example, a lower limit of the transmission interval of 20 seconds). Further, as the virtual machine 56 stops transmitting CPU information, the collection frequency of the virtual machine 52 increases with an upper limit of twice the initial value (for example, a lower limit of the transmission interval of 30 seconds).

同様に、RAMについて、情報収集サーバ100は、低頻度で仮想マシン51,52,53,54,55,56から受信したRAM情報を用いて、データフローの先頭の仮想マシン51から下流に向かって相関関係を順に判定する。 Similarly, regarding RAM, the information collection server 100 uses RAM information received from the virtual machines 51, 52, 53, 54, 55, and 56 at low frequency to move downstream from the virtual machine 51 at the beginning of the data flow. Determine correlations in order.

まず、情報収集サーバ100は、仮想マシン51と仮想マシン53の間のRAM使用量の相関係数を算出する。ここでは、相関係数の絶対値が閾値より大きいとする。すると、情報収集サーバ100は、仮想マシン53を仮想マシン51と同一グループに分類する。次に、情報収集サーバ100は、データフローを下流に向かって辿り、仮想マシン51と仮想マシン54の間のRAM使用量の相関係数を算出する。ここでは、相関係数の絶対値が閾値以下であるとする。すると、情報収集サーバ100は、仮想マシン54を仮想マシン51,53と別グループに分類する。 First, the information collection server 100 calculates the correlation coefficient of RAM usage between the virtual machine 51 and the virtual machine 53. Here, it is assumed that the absolute value of the correlation coefficient is larger than the threshold value. Then, the information collection server 100 classifies the virtual machine 53 and the virtual machine 51 into the same group. Next, the information collection server 100 follows the data flow downstream and calculates the correlation coefficient of RAM usage between the virtual machines 51 and 54. Here, it is assumed that the absolute value of the correlation coefficient is less than or equal to the threshold value. Then, the information collection server 100 classifies the virtual machine 54 into a different group from the virtual machines 51 and 53.

次に、情報収集サーバ100は、データフローを下流に向かって辿り、仮想マシン54と仮想マシン55の間のRAM使用量の相関係数を算出する。ここでは、相関係数の絶対値が閾値より大きいとする。すると、情報収集サーバ100は、仮想マシン55を仮想マシン54と同一グループに分類する。また、情報収集サーバ100は、仮想マシン51と仮想マシン52の間のRAM使用量の相関係数を算出する。ここでは、相関係数の絶対値が閾値以下であるとする。すると、情報収集サーバ100は、仮想マシン52を仮想マシン51と別グループに分類する。次に、情報収集サーバ100は、データフローを下流に向かって辿り、仮想マシン52と仮想マシン56の間のRAM使用量の相関係数を算出する。ここでは、相関係数の絶対値が閾値以下であるとする。すると、情報収集サーバ100は、仮想マシン56を仮想マシン52と別グループに分類する。 Next, the information collection server 100 follows the data flow downstream and calculates the correlation coefficient of RAM usage between the virtual machines 54 and 55. Here, it is assumed that the absolute value of the correlation coefficient is larger than the threshold value. Then, the information collection server 100 classifies the virtual machine 55 and the virtual machine 54 into the same group. The information collection server 100 also calculates a correlation coefficient of RAM usage between the virtual machine 51 and the virtual machine 52. Here, it is assumed that the absolute value of the correlation coefficient is less than or equal to the threshold value. Then, the information collection server 100 classifies the virtual machine 52 into a different group from the virtual machine 51. Next, the information collection server 100 follows the data flow downstream and calculates the correlation coefficient of RAM usage between the virtual machines 52 and 56. Here, it is assumed that the absolute value of the correlation coefficient is less than or equal to the threshold value. Then, the information collection server 100 classifies the virtual machine 56 and the virtual machine 52 into a different group.

これにより、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, regarding the RAM, the virtual machines 51, 52, 54, and 56 become representative virtual machines, and the virtual machines 53 and 55 become dependent virtual machines. The virtual machines 51, 52, 54, and 56 periodically transmit RAM information to the information collection server 100. The virtual machines 53 and 55 stop sending RAM information to the information collection server 100. Furthermore, as the virtual machine 53 stops sending RAM information, the collection frequency of the virtual machine 51 increases, with the upper limit being twice the initial value. Furthermore, as the virtual machine 55 stops sending RAM information, the collection frequency of the virtual machine 54 increases, with the upper limit being twice the initial value.

図8は、仮想マシンのグループ化例を示す図(続き2)である。
ここでは、CPU情報のグループ変更について説明する。RAM情報については、CPU情報とは独立にグループ変更が行われる。代表仮想マシンである仮想マシン51は、低い頻度で、同一グループに属する従属仮想マシンである仮想マシン53,54にCPU情報を要求し、仮想マシン53,54からCPU情報を受信する。また、代表仮想マシンである仮想マシン52は、低い頻度で、同一グループに属する従属仮想マシンである仮想マシン56にCPU情報を要求し、仮想マシン56からCPU情報を受信する。
FIG. 8 is a diagram (continued 2) illustrating an example of grouping virtual machines.
Here, changing the group of CPU information will be explained. Regarding RAM information, group change is performed independently of CPU information. The virtual machine 51, which is the representative virtual machine, requests CPU information from the virtual machines 53 and 54, which are subordinate virtual machines belonging to the same group, at low frequency, and receives the CPU information from the virtual machines 53 and 54. Further, the virtual machine 52, which is the representative virtual machine, requests CPU information from the virtual machine 56, which is a subordinate virtual machine belonging to the same group, at low frequency, and receives the CPU information from the virtual machine 56.

仮想マシン51は、仮想マシン51と仮想マシン53の間のCPU使用率の相関係数を算出し、仮想マシン51と仮想マシン54の間のCPU使用率の相関係数を算出する。ここでは、何れの相関係数の絶対値も閾値より大きいとする。すると、仮想マシン53,54は、引き続き仮想マシン51に対する従属仮想マシンとして動作する。また、仮想マシン52は、仮想マシン52と仮想マシン56の間のCPU使用率の相関係数を算出する。ここでは、相関係数の絶対値が閾値以下に低下したとする。すると、仮想マシン56は、仮想マシン52のグループから外れ、代表仮想マシンとして動作する。よって、仮想マシン56は、情報収集サーバ100へのCPU情報の送信を再開する。また、仮想マシン56の送信再開に伴い、仮想マシン52の収集頻度が低下する。 The virtual machine 51 calculates a correlation coefficient of CPU usage rates between the virtual machines 51 and 53, and calculates a correlation coefficient of CPU usage rates between the virtual machines 51 and 54. Here, it is assumed that the absolute value of any correlation coefficient is larger than the threshold value. Then, the virtual machines 53 and 54 continue to operate as subordinate virtual machines to the virtual machine 51. Furthermore, the virtual machine 52 calculates a correlation coefficient of CPU usage rates between the virtual machines 52 and 56. Here, it is assumed that the absolute value of the correlation coefficient has decreased below the threshold value. Then, the virtual machine 56 leaves the group of virtual machines 52 and operates as a representative virtual machine. Therefore, the virtual machine 56 resumes sending the CPU information to the information collection server 100. Furthermore, as the virtual machine 56 resumes transmission, the collection frequency of the virtual machine 52 decreases.

一方、情報収集サーバ100は、仮想マシン51,52,55から定期的に受信するCPU情報の相関関係を監視する。情報収集サーバ100は、データフローに従い、仮想マシン51とそのグループに隣接する仮想マシン55とを選択する。情報収集サーバ100は、仮想マシン51と仮想マシン55の間のCPU使用率の相関係数を算出する。ここでは、相関係数の絶対値が閾値より大きくなったとする。すると、仮想マシン55は、仮想マシン51,53,54のグループに入り、従属仮想マシンとして動作する。よって、仮想マシン55は、情報収集サーバ100へのCPU情報の送信を停止する。 On the other hand, the information collection server 100 monitors the correlation of CPU information periodically received from the virtual machines 51, 52, and 55. The information collection server 100 selects the virtual machine 51 and the virtual machines 55 adjacent to the group according to the data flow. The information collection server 100 calculates a correlation coefficient of CPU usage rates between the virtual machines 51 and 55. Here, it is assumed that the absolute value of the correlation coefficient has become larger than the threshold value. Then, the virtual machine 55 joins the group of virtual machines 51, 53, and 54 and operates as a subordinate virtual machine. Therefore, the virtual machine 55 stops sending CPU information to the information collection server 100.

また、情報収集サーバ100は、データフローに従い、仮想マシン51とそのグループに隣接する仮想マシン52とを選択する。情報収集サーバ100は、仮想マシン51と仮想マシン52の間のCPU使用率の相関係数を算出する。ここでは、相関係数の絶対値が引き続き閾値以下であるとする。すると、仮想マシン52は、引き続き代表仮想マシンとして動作し、情報収集サーバ100へのCPU情報の送信を継続する。 Further, the information collection server 100 selects the virtual machine 51 and the virtual machines 52 adjacent to the group according to the data flow. The information collection server 100 calculates the correlation coefficient of the CPU usage rate between the virtual machine 51 and the virtual machine 52. Here, it is assumed that the absolute value of the correlation coefficient continues to be less than or equal to the threshold value. Then, the virtual machine 52 continues to operate as a representative virtual machine and continues to send CPU information to the information collection server 100.

このように、情報収集サーバ100の判断により、既存の代表仮想マシンが従属仮想マシンに変更されることがある。また、代表仮想マシンの判断により、既存の従属仮想マシンが代表仮想マシンに変更されることがある。 In this way, an existing representative virtual machine may be changed to a dependent virtual machine based on the judgment of the information collection server 100. Additionally, an existing dependent virtual machine may be changed to the representative virtual machine based on the judgment of the representative virtual machine.

次に、情報収集サーバ100および各仮想マシンの機能について説明する。
図9は、情報収集サーバと仮想マシンの機能例を示すブロック図である。
情報収集サーバ100は、構造情報記憶部121、稼働履歴記憶部122および相関情報記憶部123を有する。これらの記憶部は、例えば、RAM102またはHDD103の記憶領域を用いて実現される。また、情報収集サーバ100は、テスト実行部124、稼働情報受信部125、相関検出部126、相関更新部127および稼働状況表示部128を有する。これらの処理部は、例えば、プログラムを用いて実現される。
Next, the functions of the information collection server 100 and each virtual machine will be explained.
FIG. 9 is a block diagram showing an example of functions of an information collection server and a virtual machine.
The information collection server 100 includes a structure information storage section 121, an operation history storage section 122, and a correlation information storage section 123. These storage units are realized using, for example, a storage area of the RAM 102 or the HDD 103. The information collection server 100 also includes a test execution section 124, an operation information reception section 125, a correlation detection section 126, a correlation update section 127, and an operation status display section 128. These processing units are realized using, for example, a program.

構造情報記憶部121は、サービスに用いられる複数の仮想マシンの間のデータフローを表すサービス構造情報を記憶する。サービス構造情報は、複数の仮想マシンを木構造に接続したトポロジを表すものである。稼働履歴記憶部122は、仮想マシン51,52,53,54,55,56から受信された稼働情報の履歴を記憶する。稼働履歴記憶部122は、時刻と仮想マシンとリソースの組に対応付けて計測値を記録する。稼働履歴記憶部122は、受信された稼働情報を少なくとも一定期間履歴として保持しておく。相関情報記憶部123は、リソースの使用状況が強い相関をもつ代表仮想マシンと従属仮想マシンとの間の関係を示す相関情報を記憶する。相関情報は、代表仮想マシンの計測値から従属仮想マシンの数値を推定するための倍率を含む。 The structure information storage unit 121 stores service structure information representing data flows between a plurality of virtual machines used for a service. The service structure information represents a topology in which a plurality of virtual machines are connected in a tree structure. The operation history storage unit 122 stores the history of operation information received from the virtual machines 51, 52, 53, 54, 55, and 56. The operation history storage unit 122 records measured values in association with time, virtual machine, and resource pairs. The operation history storage unit 122 retains the received operation information as a history for at least a certain period of time. The correlation information storage unit 123 stores correlation information indicating a relationship between a representative virtual machine and a dependent virtual machine whose resource usage status is strongly correlated. The correlation information includes a magnification for estimating the numerical value of the dependent virtual machine from the measured value of the representative virtual machine.

テスト実行部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 test execution unit 124 executes a test to determine the data flow of the virtual machines 51, 52, 53, 54, 55, and 56. The test execution unit 124 notifies the virtual machines 51, 52, 53, 54, 55, and 56 of the test start, and sends a test request to the virtual machine 51, which is the entrance to the service. The test execution unit 124 collects communication logs indicating the destination virtual machine and transmission time of the test message from the virtual machines 51, 52, 53, 54, 55, and 56, analyzes the communication log, and determines the data flow. do. The test execution unit 124 generates structural information indicating a data flow and stores it in the structural information storage unit 121.

稼働情報受信部125は、仮想マシン51,52,53,54,55,56の少なくとも一部が定期的に送信する稼働情報を受信する。稼働情報はリソースの種類毎に分けられており、何れのリソースについての稼働情報を送信するかは仮想マシンによって異なる。初期状態では、仮想マシン51,52,53,54,55,56の全てが全てのリソースについての稼働情報を低頻度で送信する。稼働情報受信部125は、受信した稼働情報に含まれる最新の計測値を相関情報記憶部123に上書きする。また、稼働情報受信部125は、受信した稼働情報に含まれる計測値を、送信元の仮想マシンの識別情報と受信時刻と計測値が示すリソースの組に対応付けて、稼働履歴記憶部122に追記する。 The performance information receiving unit 125 receives performance information periodically transmitted by at least some of the virtual machines 51, 52, 53, 54, 55, and 56. The operating information is divided by resource type, and which resource's operating information is to be sent differs depending on the virtual machine. In the initial state, all of the virtual machines 51, 52, 53, 54, 55, and 56 transmit operating information about all resources at low frequency. The performance information receiving unit 125 overwrites the correlation information storage unit 123 with the latest measurement value included in the received performance information. Additionally, the performance information receiving unit 125 associates the measured value included in the received performance information with the resource set indicated by the identification information of the source virtual machine, the reception time, and the measured value, and stores it in the performance history storage unit 122. Append.

相関検出部126は、定期的に、構造情報記憶部121に記憶された構造情報と、稼働履歴記憶部122に記憶された稼働情報の履歴とに基づいて、リソース毎に、稼働情報を送信する仮想マシンの間の相関関係を判定する。相関検出部126は、強い相関が検出された2つの仮想マシンのうち、上流側の仮想マシンを代表仮想マシンに指定し、下流側の仮想マシンを従属仮想マシンに指定する。また、相関検出部126は、代表仮想マシンに対する従属仮想マシンのリソースの使用状況の倍率を算出する。相関検出部126は、代表仮想マシンと従属仮想マシンの関係および倍率を、相関情報記憶部123に記録する。 The correlation detection unit 126 periodically transmits operation information for each resource based on the structure information stored in the structure information storage unit 121 and the history of operation information stored in the operation history storage unit 122. Determine the correlation between virtual machines. Of the two virtual machines for which a strong correlation has been detected, the correlation detection unit 126 designates the upstream virtual machine as the representative virtual machine, and designates the downstream virtual machine as the dependent virtual machine. Further, the correlation detection unit 126 calculates the magnification of the resource usage status of the dependent virtual machine with respect to the representative virtual machine. The correlation detection unit 126 records the relationship and magnification between the representative virtual machine and the dependent virtual machine in the correlation information storage unit 123.

具体的には、相関検出部126は、リソースの種類を選択し、データフローの上流と下流の関係にある2つの仮想マシンを選択し、当該リソースおよび当該2つの仮想マシンに関する直近の一定期間の稼働情報を稼働履歴記憶部122から抽出する。相関検出部126は、一方の仮想マシンの計測値と、受信時刻が最も近い他方の仮想マシンの計測値とを対応付け、異なるタイミングの複数の計測値ペアから相関係数を算出する。相関検出部126は、相関係数の絶対値が閾値より大きい場合は相関が強いと判断し、相関係数の絶対値が閾値以下である場合は相関が弱いと判断する。相関が強い場合、相関検出部126は、代表仮想マシンの直近の一定期間の計測値の平均と、従属仮想マシンの直近の一定期間の計測値の平均とを算出し、後者を前者で割って倍率を算出する。 Specifically, the correlation detection unit 126 selects the type of resource, selects two virtual machines that are in an upstream and downstream relationship in the data flow, and calculates the most recent certain period of time regarding the resource and the two virtual machines. Operation information is extracted from the operation history storage section 122. The correlation detection unit 126 correlates the measured value of one virtual machine with the measured value of the other virtual machine whose reception time is closest, and calculates a correlation coefficient from a plurality of pairs of measured values at different timings. The correlation detection unit 126 determines that the correlation is strong if the absolute value of the correlation coefficient is greater than the threshold, and determines that the correlation is weak if the absolute value of the correlation coefficient is less than or equal to the threshold. If the correlation is strong, the correlation detection unit 126 calculates the average of the measured values of the representative virtual machine over the most recent certain period and the average of the measured values of the dependent virtual machines over the most recent certain period, and divides the latter by the former. Calculate the magnification.

相関更新部127は、代表仮想マシンから、倍率が更新されたことを示す相関更新通知を受信する。すると、相関更新部127は、更新された倍率を相関情報記憶部123に記録する。また、相関更新部127は、代表仮想マシンから、ある従属仮想マシンがグループから外れたことを示すグループ解除通知を受信する。すると、相関更新部127は、相関情報記憶部123に記録された相関関係を変更する。 The correlation update unit 127 receives a correlation update notification indicating that the magnification has been updated from the representative virtual machine. Then, the correlation update unit 127 records the updated magnification in the correlation information storage unit 123. The correlation update unit 127 also receives a group cancellation notification from the representative virtual machine indicating that a certain dependent virtual machine has left the group. Then, the correlation update unit 127 changes the correlation recorded in the correlation information storage unit 123.

稼働状況表示部128は、ユーザからの要求に応じて、仮想マシン51,52,53,54,55,56のリソースの使用状況を列挙した管理画面を表示装置111に表示する。このとき、稼働状況表示部128は、相関情報記憶部123に計測値が記録されている仮想マシンとリソースの組については、その計測値を表示すればよい。一方、稼働状況表示部128は、相関情報記憶部123に計測値が記録されていない仮想マシンとリソースの組については、関連する代表仮想マシンの計測値に倍率を乗じて推定値を算出し、計測値に代えて推定値を表示する。なお、稼働状況表示部128は、ユーザからの要求を待たずに継続的に管理画面を表示するようにしてもよい。また、稼働状況表示部128は、リソースの使用状況を列挙した管理情報を、HDD103などのストレージ装置に保存してもよく、他の情報処理装置に送信してもよい。 The operating status display unit 128 displays a management screen listing the resource usage status of the virtual machines 51, 52, 53, 54, 55, and 56 on the display device 111 in response to a request from a user. At this time, the operating status display unit 128 may display the measured value for the virtual machine and resource pair whose measured value is recorded in the correlation information storage unit 123. On the other hand, for pairs of virtual machines and resources for which measured values are not recorded in the correlation information storage unit 123, the operating status display unit 128 calculates estimated values by multiplying the measured values of the related representative virtual machines by a multiplier, Display estimated values instead of measured values. Note that the operating status display unit 128 may continuously display the management screen without waiting for a request from the user. Further, the operating status display unit 128 may store management information listing resource usage status in a storage device such as the HDD 103, or may transmit it to another information processing device.

仮想マシン51は、グループ情報記憶部221を有する。グループ情報記憶部221は、例えば、RAMまたはHDDの記憶領域を用いて実現される。また、仮想マシン51は、サービス処理部222、通信ログ取得部223、稼働情報取得部224およびグループ制御部225を有する。これらの処理部は、例えば、プログラムを用いて実現される。他の仮想マシンも、仮想マシン51と同様の機能を有する。 The virtual machine 51 has a group information storage section 221. The group information storage unit 221 is realized using, for example, a storage area of a RAM or an HDD. The virtual machine 51 also includes a service processing section 222, a communication log acquisition section 223, an operation information acquisition section 224, and a group control section 225. These processing units are realized using, for example, a program. Other virtual machines also have the same functions as the virtual machine 51.

グループ情報記憶部221は、仮想マシン51が代表仮想マシンである場合に、同一グループに属する従属仮想マシンを管理するためのグループ情報を記憶する。グループ情報は、情報収集サーバ100から通知された従属仮想マシンの識別情報を含む。また、グループ情報は、従属仮想マシンから収集した計測値を含む。また、グループ情報は、情報収集サーバ100から通知された倍率または更新された最新の倍率を含む。 The group information storage unit 221 stores group information for managing dependent virtual machines belonging to the same group when the virtual machine 51 is a representative virtual machine. The group information includes identification information of the subordinate virtual machine notified from the information collection server 100. The group information also includes measurement values collected from dependent virtual machines. Further, the group information includes the magnification notified from the information collection server 100 or the latest updated magnification.

サービス処理部222は、アプリケーションプログラムに従ってサービスのデータ処理を実行する。仮想マシン51がサービスの入り口に相当する場合、サービス処理部222は、情報収集サーバ100からテストリクエストを受信する。サービス処理部222は、他の仮想マシンにメッセージを送信することがある。また、サービス処理部222は、他の仮想マシンからメッセージを受信することがある。 The service processing unit 222 executes service data processing according to an application program. When the virtual machine 51 corresponds to a service entrance, the service processing unit 222 receives a test request from the information collection server 100. The service processing unit 222 may send messages to other virtual machines. Additionally, the service processing unit 222 may receive messages from other virtual machines.

通信ログ取得部223は、情報収集サーバ100からテスト開始の通知を受信すると、仮想マシン51が送信するパケットを監視する。または、通信ログ取得部223は、アプリケーションレベルの送信メッセージを監視する。通信ログ取得部223は、テスト実行時におけるメッセージの送信先の仮想マシンと送信時刻を検出し、送信先の仮想マシンおよび送信時刻を示す通信ログを生成して情報収集サーバ100に送信する。 Upon receiving the test start notification from the information collection server 100, the communication log acquisition unit 223 monitors packets transmitted by the virtual machine 51. Alternatively, the communication log acquisition unit 223 monitors transmission messages at the application level. The communication log acquisition unit 223 detects the destination virtual machine and transmission time of the message during test execution, generates a communication log indicating the destination virtual machine and the transmission time, and transmits it to the information collection server 100.

稼働情報取得部224は、仮想マシン51における現在のリソースの使用状況を示す計測値を取得する。計測値として、CPU使用率、RAM使用量、HDDアクセス量、ネットワーク帯域使用率などが挙げられる。仮想マシン51でゲストOSが実行されている場合、稼働情報取得部224は、ゲストOSから計測値を取得してもよい。 The performance information acquisition unit 224 acquires a measured value indicating the current resource usage status of the virtual machine 51. Measured values include CPU usage rate, RAM usage amount, HDD access amount, network bandwidth usage rate, and the like. When a guest OS is being executed on the virtual machine 51, the performance information acquisition unit 224 may acquire measured values from the guest OS.

情報収集サーバ100から収集頻度の初期値が通知されると、稼働情報取得部224は、指定された収集頻度で、全てのリソースの計測値を取得して情報収集サーバ100に送信する。グループ制御部225によって、あるリソースの収集頻度の変更が決定されると、稼働情報取得部224は、変更後の収集頻度で計測値の取得および送信を行う。あるリソースについて他の仮想マシンから停止通知を受信すると、稼働情報取得部224は、計測値の取得および送信を停止する。あるリソースについて他の仮想マシンから再開通知を受信すると、稼働情報取得部224は、計測値の取得および送信を再開する。あるリソースについて他の仮想マシンから稼働情報が要求されると、稼働情報取得部224は、計測値を取得して当該他の仮想マシンに返信する。 When the information collection server 100 notifies the initial value of the collection frequency, the operating information acquisition unit 224 acquires the measured values of all resources at the specified collection frequency and transmits them to the information collection server 100. When the group control unit 225 decides to change the collection frequency of a certain resource, the performance information acquisition unit 224 acquires and transmits measured values at the changed collection frequency. When receiving a stop notification for a certain resource from another virtual machine, the performance information acquisition unit 224 stops acquiring and transmitting measured values. When receiving a restart notification for a certain resource from another virtual machine, the performance information acquisition unit 224 resumes acquisition and transmission of measured values. When performance information about a certain resource is requested from another virtual machine, the performance information acquisition unit 224 acquires a measured value and sends it back to the other virtual machine.

グループ制御部225は、仮想マシン51が代表仮想マシンである場合に、従属仮想マシンを管理する。グループ制御部225は、情報収集サーバ100から通知された従属仮想マシンの識別情報および倍率を、グループ情報記憶部221に記録する。また、グループ制御部225は、従属仮想マシンに停止通知を送信する。また、グループ制御部225は、従属仮想マシンの数に応じて、仮想マシン51の収集頻度を変更する。 The group control unit 225 manages dependent virtual machines when the virtual machine 51 is a representative virtual machine. The group control unit 225 records the identification information and magnification of the subordinate virtual machine notified from the information collection server 100 in the group information storage unit 221. The group control unit 225 also sends a stop notification to the dependent virtual machines. Furthermore, the group control unit 225 changes the collection frequency of the virtual machines 51 according to the number of dependent virtual machines.

また、グループ制御部225は、定期的に従属仮想マシンに稼働情報を要求して、従属仮想マシンの稼働情報を収集する。グループ制御部225は、仮想マシン51の稼働情報と従属仮想マシンの稼働情報との間に強い相関が維持されているか判定する。強い相関が維持されている場合、グループ制御部225は、最新の倍率を算出し、グループ情報記憶部221に記録された倍率を更新すると共に、最新の倍率を含む相関更新通知を情報収集サーバ100に送信する。強い相関が維持されていない場合、グループ制御部225は、その従属仮想マシンに再開通知を送信し、グループ情報記憶部221のグループ情報を更新し、グループ解除通知を情報収集サーバ100に送信する。 The group control unit 225 also periodically requests operational information from the dependent virtual machines and collects the operational information of the dependent virtual machines. The group control unit 225 determines whether a strong correlation is maintained between the operation information of the virtual machine 51 and the operation information of the subordinate virtual machines. If a strong correlation is maintained, the group control unit 225 calculates the latest magnification, updates the magnification recorded in the group information storage unit 221, and sends a correlation update notification including the latest magnification to the information collection server 100. Send to. If a strong correlation is not maintained, the group control unit 225 sends a restart notification to the subordinate virtual machine, updates the group information in the group information storage unit 221, and sends a group cancellation notification to the information collection server 100.

図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 information storage section 121. The service structure table 131 includes items for virtual machine ID, parent virtual machine, and child virtual machine. Identification information of a virtual machine is registered in the virtual machine ID field. In the parent virtual machine item, identification information of an upstream virtual machine that is a sender that sends a message to the virtual machine is registered. Identification information of a downstream virtual machine to which the virtual machine sends a message is registered in the child virtual machine item.

サービス構造テーブル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 the virtual machines 51, 52, 53, 54, 55, and 56 as shown in FIG. For example, child virtual machines of the virtual machine 51 (VM1) are the virtual machine 52 (VM2) and the virtual machine 53 (VM3). The parent virtual machine of the virtual machine 52 (VM2) is the virtual machine 51 (VM1). A child virtual machine of the virtual machine 52 (VM2) is the virtual machine 56 (VM6).

稼働履歴テーブル132は、稼働履歴記憶部122に記憶される。稼働履歴テーブル132は、時刻、仮想マシンID、リソースおよび計測値の項目を含む。時刻の項目には、情報収集サーバ100が稼働情報を受信した時刻が登録される。ただし、時刻として、稼働情報に含まれている時刻を用いてもよく、仮想マシンが計測値を取得した時刻や稼働情報を送信した時刻を用いてもよい。仮想マシンIDの項目には、稼働情報を送信した仮想マシンの識別情報が登録される。リソースの項目には、計測値が示すリソースの種類が登録される。リソースの種類として、CPU、RAM、ストレージ、ネットワークなどが挙げられる。計測値の項目には、稼働情報に含まれる計測値が登録される。 The operation history table 132 is stored in the operation history storage section 122. The operation history table 132 includes items such as time, virtual machine ID, resource, and measured value. In the time item, the time when the information collection server 100 receives the operating information is registered. However, as the time, the time included in the operating information may be used, or the time when the virtual machine acquires the measured value or the time when the operating information is transmitted may be used. Identification information of the virtual machine that transmitted the operating information is registered in the virtual machine ID field. In the resource item, the type of resource indicated by the measured value is registered. Types of resources include CPU, RAM, storage, network, etc. Measured values included in the operating information are registered in the measured value item.

図11は、相関関係テーブルと稼働状況テーブルの例を示す図である。
相関関係テーブル133は、相関情報記憶部123に記憶される。相関関係テーブル133は、仮想マシンID、リソース、計測値、従属仮想マシンおよび倍率の項目を含む。仮想マシンIDの項目には、稼働情報を送信している代表仮想マシンの識別情報が登録される。リソースの項目には、CPUやRAMなどのリソースの種類が登録される。計測値の項目には、当該代表仮想マシンおよび当該リソースについて受信された最新の稼働情報に含まれる計測値が登録される。従属仮想マシンの項目には、当該リソースについて当該代表仮想マシンと強い相関のある従属仮想マシンの識別情報が登録される。倍率は、代表仮想マシンの計測値に対する従属仮想マシンの数値の倍率が登録される。
FIG. 11 is a diagram showing an example of a correlation table and an operating status table.
The correlation table 133 is stored in the correlation information storage unit 123. The correlation table 133 includes items of virtual machine ID, resource, measured value, dependent virtual machine, and magnification. Identification information of the representative virtual machine transmitting the operating information is registered in the virtual machine ID field. In the resource item, types of resources such as CPU and RAM are registered. In the measured value item, measured values included in the latest operating information received for the representative virtual machine and the resource are registered. In the dependent virtual machine item, identification information of a dependent virtual machine that has a strong correlation with the representative virtual machine for the resource is registered. As the magnification, the magnification of the numerical value of the dependent virtual machine with respect to the measured value of the representative virtual machine is registered.

例えば、相関関係テーブル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 virtual machine 51 is 50, the CPU magnification of the virtual machine 53 to the virtual machine 51 is 0.50, and the CPU magnification of the virtual machine 54 to the virtual machine 51 is 0.50. It is registered that the CPU magnification is 0.30. Further, for example, it is registered that the latest measured value of the RAM of the virtual machine 51 is 30, and that the ratio of the RAM of the virtual machine 53 to that of the virtual machine 51 is 0.40. Further, for example, it is registered that the latest CPU measurement value of the virtual machine 52 is 70, and that the CPU magnification of the virtual machine 56 with respect to the virtual machine 52 is 1.20.

稼働状況テーブル134は、稼働状況表示部128によって生成されて表示装置111に表示される。稼働状況テーブル134は、仮想マシンID、リソースおよび現在値の項目を含む。仮想マシンIDの項目には、仮想マシンの識別情報が登録される。リソースの項目には、CPUやRAMなどのリソースの種類が登録される。現在値の項目には、最新のリソースの使用状況を示す数値が登録される。現在値の項目に登録される数値は、代表仮想マシンについては最新の計測値であり、従属仮想マシンについては推定値である。稼働状況テーブル134は、推定値については推定値である旨を付記してもよい。 The operating status table 134 is generated by the operating status display unit 128 and displayed on the display device 111. The operating status table 134 includes items of virtual machine ID, resource, and current value. Identification information of a virtual machine is registered in the virtual machine ID field. In the resource item, types of resources such as CPU and RAM are registered. In the current value field, a numerical value indicating the latest resource usage status is registered. The numerical value registered in the item of current value is the latest measured value for the representative virtual machine, and the estimated value for the dependent virtual machine. The operating status table 134 may include a note indicating that estimated values are estimated values.

例えば、仮想マシン51のCPU使用率として、計測値である「50」が表示される。また、仮想マシン51のRAM使用量として、計測値である「30」が表示される。一方、仮想マシン53のCPU使用率として、仮想マシン51のCPUの計測値である50に倍率0.50を乗じて算出される推定値である「25」が表示される。また、仮想マシン53のRAM使用量として、仮想マシン51のRAMの計測値である30に倍率0.40を乗じて算出される推定値である「12」が表示される。 For example, a measured value of “50” is displayed as the CPU usage rate of the virtual machine 51. Further, as the RAM usage amount of the virtual machine 51, the measured value “30” is displayed. On the other hand, as the CPU usage rate of the virtual machine 53, "25" is displayed, which is an estimated value calculated by multiplying the measured value of the CPU of the virtual machine 51, 50, by a magnification factor of 0.50. Further, as the RAM usage amount of the virtual machine 53, "12" is displayed, which is an estimated value calculated by multiplying the measured value of the RAM of the virtual machine 51, 30, by a magnification factor of 0.40.

図12は、グループ管理テーブルの例を示す図である。
グループ管理テーブル231は、グループ情報記憶部221に記憶される。グループ管理テーブル231は、リソース、自計測値、従属仮想マシン、他計測値および倍率の項目を含む。リソースの項目には、CPUやRAMなどのリソースの種類が登録される。自計測値の項目には、仮想マシン51で計測された当該リソースの使用状況を示す数値が登録される。従属仮想マシンの項目には、仮想マシン51と同一グループに属する従属仮想マシンの識別情報が登録される。他計測値の項目には、従属仮想マシンで計測された当該リソースの使用状況を示す数値が登録される。倍率の項目には、仮想マシン51の計測値に対する従属仮想マシンの計測値の最新の平均倍率が登録される。
FIG. 12 is a diagram showing an example of a group management table.
Group management table 231 is stored in group information storage section 221. The group management table 231 includes items such as resources, self-measured values, dependent virtual machines, other measured values, and magnification. In the resource item, types of resources such as CPU and RAM are registered. In the self-measured value item, a numerical value indicating the usage status of the resource measured by the virtual machine 51 is registered. Identification information of a dependent virtual machine belonging to the same group as the virtual machine 51 is registered in the item of dependent virtual machine. In the item of other measured values, a numerical value indicating the usage status of the resource measured by the dependent virtual machine is registered. In the magnification field, the latest average magnification of the measured value of the dependent virtual machine with respect to the measured value of the virtual machine 51 is registered.

次に、情報収集サーバ100および代表仮想マシンの処理手順について説明する。
図13は、サーバ開始処理の手順例を示すフローチャートである。
(S10)テスト実行部124は、所定の仮想マシンにテストリクエストを送信する。テストリクエストに応じて、複数の仮想マシンの間でメッセージが送信される。
Next, the processing procedures of the information collection server 100 and the representative virtual machine will be explained.
FIG. 13 is a flowchart illustrating an example of a procedure for server start processing.
(S10) The test execution unit 124 transmits a test request to a predetermined virtual machine. Messages are sent between multiple virtual machines in response to test requests.

(S11)テスト実行部124は、各仮想マシンから通信ログを受信する。通信ログは、メッセージの送信先の仮想マシンと送信時刻とを含んでいる。
(S12)テスト実行部124は、ステップS11で受信した通信ログに基づいて、複数の仮想マシンの間のデータフローを判定し、サービス構造テーブル131を生成する。
(S11) The test execution unit 124 receives communication logs from each virtual machine. The communication log includes the destination virtual machine of the message and the time of transmission.
(S12) The test execution unit 124 determines the data flow between the plurality of virtual machines based on the communication log received in step S11, and generates the service structure table 131.

(S13)稼働情報受信部125は、サービスに参加する仮想マシンの総数に応じて、稼働情報を収集する収集頻度の初期値を決定する。
(S14)稼働情報受信部125は、収集頻度を各仮想マシンに通知する。これにより、稼働情報受信部125は、通知した頻度で各仮想マシンから稼働情報を受信する。稼働情報受信部125は、受信した稼働情報を稼働履歴テーブル132に保存する。
(S13) The performance information receiving unit 125 determines the initial value of the collection frequency for collecting performance information according to the total number of virtual machines participating in the service.
(S14) The performance information receiving unit 125 notifies each virtual machine of the collection frequency. Thereby, the performance information receiving unit 125 receives the performance information from each virtual machine at the notified frequency. The operation information receiving unit 125 stores the received operation information in the operation history table 132.

(S15)相関検出部126は、サービス構造テーブル131および稼働履歴テーブル132に基づいて、リソース毎に複数の仮想マシンをグループ分けする。グループ内の1つの仮想マシンが稼働情報を送信する代表仮想マシンとなり、他の仮想マシンが稼働情報を送信しない従属仮想マシンとなる。グループ判定の詳細は後述する。 (S15) The correlation detection unit 126 groups the plurality of virtual machines for each resource based on the service structure table 131 and the operation history table 132. One virtual machine in the group becomes a representative virtual machine that transmits operating information, and other virtual machines serve as dependent virtual machines that do not transmit operating information. Details of group determination will be described later.

(S16)相関検出部126は、ステップS15で判定された代表仮想マシンに、同一グループに属する従属仮想マシンの識別情報およびその倍率を通知する。グループ分けはリソース毎に行われるため、当該通知もリソース毎に行われる。 (S16) The correlation detection unit 126 notifies the representative virtual machine determined in step S15 of the identification information of the dependent virtual machines belonging to the same group and its magnification. Since grouping is performed for each resource, the notification is also performed for each resource.

図14は、グループ判定の手順例を示すフローチャートである。
グループ判定は、上記のステップS15および後述するステップS64で実行される。
(S20)相関検出部126は、リソースを1つ選択する。監視対象のリソースは、CPU、RAM、HDD、ネットワークなど予め決まっている。
FIG. 14 is a flowchart showing an example of a procedure for group determination.
Group determination is performed in step S15 described above and step S64, which will be described later.
(S20) The correlation detection unit 126 selects one resource. Resources to be monitored are determined in advance, such as the CPU, RAM, HDD, and network.

(S21)相関検出部126は、サービス構造テーブル131が示す木構造のデータフローの中でルート(始点)の仮想マシンを選択し、代表仮想マシンに指定する。
(S22)相関検出部126は、木構造のデータフローの中で、稼働情報を収集中の仮想マシンが残っているか判断する。該当する仮想マシンが残っている場合はステップS23に進み、該当する仮想マシンが残っていない場合はステップS29に進む。
(S21) The correlation detection unit 126 selects a root (starting point) virtual machine in the tree-structured data flow indicated by the service structure table 131, and designates it as the representative virtual machine.
(S22) The correlation detection unit 126 determines whether there are any virtual machines whose operating information is being collected remaining in the tree-structured data flow. If the applicable virtual machine remains, the process advances to step S23; if the applicable virtual machine does not remain, the process advances to step S29.

(S23)相関検出部126は、現在選択している仮想マシンからデータフローを下流方向に辿り、次の仮想マシンを選択する。データフローが分岐している場合、何れか1つの分岐方向を辿ればよい。木構造の末端まで到達した場合、相関検出部126は、直前の分岐点まで戻った上で未選択の分岐方向を辿るようにする。 (S23) The correlation detection unit 126 traces the data flow downstream from the currently selected virtual machine and selects the next virtual machine. If the data flow is branched, it is sufficient to follow any one branch direction. When the end of the tree structure is reached, the correlation detection unit 126 returns to the previous branch point and then traces the unselected branch direction.

(S24)相関検出部126は、稼働履歴テーブル132から、ステップS23で選択した仮想マシンについて、ステップS20で選択したリソースの稼働履歴を抽出する。また、相関検出部126は、稼働履歴テーブル132から、当該仮想マシンの上流側にある直前の代表仮想マシンについて、ステップS20で選択したリソースの稼働履歴を抽出する。相関検出部126は、直前の代表仮想マシンと選択した仮想マシンとの間で、抽出した稼働情報に含まれる計測値の相関係数を算出する。 (S24) The correlation detection unit 126 extracts the operation history of the resource selected in step S20 for the virtual machine selected in step S23 from the operation history table 132. Furthermore, the correlation detection unit 126 extracts the operation history of the resource selected in step S20 for the immediately preceding representative virtual machine on the upstream side of the virtual machine from the operation history table 132. The correlation detection unit 126 calculates the correlation coefficient of the measured values included in the extracted operating information between the immediately preceding representative virtual machine and the selected virtual machine.

(S25)相関検出部126は、ステップS24で算出した相関係数の絶対値と所定の閾値とを比較する。相関係数の絶対値が閾値より大きい場合はステップS26に進み、相関係数の絶対値が閾値以下である場合はステップS28に進む。 (S25) The correlation detection unit 126 compares the absolute value of the correlation coefficient calculated in step S24 with a predetermined threshold value. If the absolute value of the correlation coefficient is greater than the threshold, the process proceeds to step S26, and if the absolute value of the correlation coefficient is less than or equal to the threshold, the process proceeds to step S28.

(S26)相関検出部126は、ステップS23で選択した仮想マシンを、直前の代表仮想マシンと同一グループに分類し、従属仮想マシンに指定する。
(S27)相関検出部126は、ステップS24で稼働履歴テーブル132から抽出した稼働情報を用いて、代表仮想マシンの計測値に対する従属仮想マシンの計測値の倍率を算出する。相関検出部126は、代表仮想マシンと従属仮想マシンとが強い相関をもつ旨および倍率を、相関関係テーブル133に登録する。そして、ステップS22に戻る。
(S26) The correlation detection unit 126 classifies the virtual machine selected in step S23 into the same group as the immediately preceding representative virtual machine, and designates it as a dependent virtual machine.
(S27) The correlation detection unit 126 uses the operation information extracted from the operation history table 132 in step S24 to calculate the magnification of the measured value of the dependent virtual machine with respect to the measured value of the representative virtual machine. The correlation detection unit 126 registers in the correlation table 133 the fact that the representative virtual machine and the dependent virtual machine have a strong correlation and the magnification. Then, the process returns to step S22.

(S28)相関検出部126は、ステップS23で選択した仮想マシンを代表仮想マシンに指定する。そして、ステップS22に戻る。
(S29)相関検出部126は、ステップS20において全てのリソースを選択したか判断する。全てのリソースを選択した場合はグループ判定が終了し、未選択のリソースが残っている場合はステップS20に戻る。
(S28) The correlation detection unit 126 designates the virtual machine selected in step S23 as the representative virtual machine. Then, the process returns to step S22.
(S29) The correlation detection unit 126 determines whether all resources have been selected in step S20. If all resources have been selected, the group determination ends, and if unselected resources remain, the process returns to step S20.

図15は、仮想マシン開始処理の手順例を示すフローチャートである。
(S30)通信ログ取得部223は、テスト実行中に通信ログを取得する。通信ログは、仮想マシン51が送信するメッセージの宛先と送信時刻とを含む。
FIG. 15 is a flowchart illustrating an example of a procedure for virtual machine start processing.
(S30) The communication log acquisition unit 223 acquires a communication log during test execution. The communication log includes the destination and sending time of messages sent by the virtual machine 51.

(S31)通信ログ取得部223は、情報収集サーバ100に通信ログを送信する。
(S32)稼働情報取得部224は、情報収集サーバ100から収集頻度通知を受信する。収集頻度通知は、収集頻度の初期値として、所定の低い収集頻度を示している。
(S31) The communication log acquisition unit 223 transmits the communication log to the information collection server 100.
(S32) The operation information acquisition unit 224 receives the collection frequency notification from the information collection server 100. The collection frequency notification indicates a predetermined low collection frequency as the initial value of the collection frequency.

(S33)稼働情報取得部224は、ステップS32で通知された低い収集頻度で、全てのリソースの稼働情報を取得して情報収集サーバ100に送信することを開始する。
(S34)グループ制御部225は、情報収集サーバ100からグループ通知を受信したか判断する。グループ通知は、同一グループに属する従属仮想マシンの識別情報とその倍率を含む。グループ通知を受信した場合はステップS35に進み、グループ通知を受信しなかった場合はステップS38に進む。
(S33) The operation information acquisition unit 224 starts acquiring operation information of all resources and transmitting it to the information collection server 100 at the low collection frequency notified in step S32.
(S34) The group control unit 225 determines whether a group notification has been received from the information collection server 100. The group notification includes identification information of dependent virtual machines belonging to the same group and their magnification. If a group notification has been received, the process proceeds to step S35, and if a group notification has not been received, the process proceeds to step S38.

(S35)グループ制御部225は、グループ通知に基づいて、グループ内の仮想マシンの収集対象比率を算出する。グループに属する仮想マシンの総数をn、稼働情報を収集しない従属仮想マシンの数をmとすると、収集対象比率は(n-m)÷nとなる。 (S35) The group control unit 225 calculates the collection target ratio of virtual machines in the group based on the group notification. If the total number of virtual machines belonging to a group is n, and the number of dependent virtual machines whose operating information is not collected is m, then the collection target ratio is (n−m)÷n.

(S36)グループ制御部225は、ステップS35で算出した収集対象比率に応じて、稼働情報取得部224の収集頻度を、ステップS32で通知された初期値から上げる。収集対象比率が小さいほど、収集頻度が高くなるようにする。変更後の収集頻度は、初期値をn÷(n-m)×α倍したものである。よって、変更後の送信間隔は、初期の送信間隔を(n-m)÷n÷α倍したものに短縮される。ただし、この計算式で算出される収集頻度が所定の上限を超える場合、当該上限を収集頻度とする。 (S36) The group control unit 225 increases the collection frequency of the operating information acquisition unit 224 from the initial value notified in step S32 according to the collection target ratio calculated in step S35. The smaller the collection target ratio, the higher the collection frequency. The collection frequency after the change is the initial value multiplied by n÷(n−m)×α. Therefore, the transmission interval after the change is shortened to the initial transmission interval multiplied by (n−m)÷n÷α. However, if the collection frequency calculated using this calculation formula exceeds a predetermined upper limit, the collection frequency is determined to be the upper limit.

(S37)グループ制御部225は、従属仮想マシンに停止通知を送信する。
(S38)稼働情報取得部224は、代表仮想マシンから停止通知を受信したか判断する。停止通知を受信した場合はステップS39に進み、停止通知を受信しなかった場合は仮想マシン開始処理が終了する。なお、代表仮想マシンと従属仮想マシンの分類は、リソース毎に行われる。よって、仮想マシン51は、あるリソースについては代表仮想マシンに指定され、別のリソースについては従属仮想マシンに指定されることがある。その場合、仮想マシン51は、あるリソースについては情報収集サーバ100からグループ通知を受信し、別のリソースについては代表仮想マシンから停止通知を受信することがある。
(S37) The group control unit 225 sends a stop notification to the dependent virtual machine.
(S38) The operation information acquisition unit 224 determines whether a stop notification has been received from the representative virtual machine. If the stop notification is received, the process advances to step S39, and if the stop notification is not received, the virtual machine start process ends. Note that classification of representative virtual machines and dependent virtual machines is performed for each resource. Therefore, the virtual machine 51 may be designated as a representative virtual machine for a certain resource, and designated as a dependent virtual machine for another resource. In that case, the virtual machine 51 may receive a group notification from the information collection server 100 for a certain resource, and receive a stop notification from the representative virtual machine for another resource.

(S39)稼働情報取得部224は、稼働情報の取得および送信を停止する。
図16は、仮想マシン継続処理の手順例を示すフローチャートである。
(S40)グループ制御部225は、仮想マシン51が代表仮想マシンであるか判断する。代表仮想マシンである場合はステップS41に進み、代表仮想マシンでない場合はステップS50に進む。なお、代表仮想マシンであるか否かは、リソース毎に判断される。
(S39) The performance information acquisition unit 224 stops acquiring and transmitting the performance information.
FIG. 16 is a flowchart illustrating an example of a procedure for virtual machine continuation processing.
(S40) The group control unit 225 determines whether the virtual machine 51 is a representative virtual machine. If the virtual machine is the representative virtual machine, the process advances to step S41; if it is not the representative virtual machine, the process advances to step S50. Note that whether or not a virtual machine is a representative virtual machine is determined for each resource.

(S41)グループ制御部225は、グループ管理テーブル231を参照して、仮想マシン51と同一グループに属する従属仮想マシンを特定する。グループ制御部225は、特定した従属仮想マシンに稼働情報を要求し、稼働情報を受信する。 (S41) The group control unit 225 refers to the group management table 231 and identifies subordinate virtual machines that belong to the same group as the virtual machine 51. The group control unit 225 requests operational information from the identified dependent virtual machine and receives the operational information.

(S42)グループ制御部225は、ステップS41で受信した従属仮想マシンの稼働情報に含まれる計測値と、稼働情報取得部224で取得された仮想マシン51の最新の計測値とを対応付けて記録する。グループ制御部225は、直近の一定期間の記録に基づいて、仮想マシン51の計測値と従属仮想マシンの計測値との間の相関係数を算出する。 (S42) The group control unit 225 associates and records the measurement value included in the operation information of the dependent virtual machine received in step S41 and the latest measurement value of the virtual machine 51 acquired by the operation information acquisition unit 224. do. The group control unit 225 calculates the correlation coefficient between the measured value of the virtual machine 51 and the measured value of the dependent virtual machine based on the records of the most recent certain period.

(S43)グループ制御部225は、ステップS42で算出した相関係数の絶対値と所定の閾値とを比較する。相関係数の絶対値が閾値より大きい場合はステップS44に進み、相関係数の絶対値が閾値以下である場合はステップS46に進む。 (S43) The group control unit 225 compares the absolute value of the correlation coefficient calculated in step S42 with a predetermined threshold value. If the absolute value of the correlation coefficient is greater than the threshold, the process proceeds to step S44, and if the absolute value of the correlation coefficient is less than or equal to the threshold, the process proceeds to step S46.

(S44)グループ制御部225は、直近の一定期間の記録に基づいて、仮想マシン51の計測値に対する従属仮想マシンの計測値の倍率を算出する。グループ制御部225は、グループ管理テーブル231に記録された倍率を更新する。 (S44) The group control unit 225 calculates the magnification of the measured value of the dependent virtual machine with respect to the measured value of the virtual machine 51, based on the records of the most recent certain period. The group control unit 225 updates the magnification recorded in the group management table 231.

(S45)グループ制御部225は、ステップS44で更新した倍率を含む相関更新通知を、情報収集サーバ100に送信する。そして、ステップS50に進む。
(S46)グループ制御部225は、従属仮想マシンに再開通知を送信する。
(S45) The group control unit 225 transmits a correlation update notification including the magnification updated in step S44 to the information collection server 100. Then, the process advances to step S50.
(S46) The group control unit 225 sends a restart notification to the dependent virtual machine.

(S47)グループ制御部225は、1つの従属仮想マシンがグループから外れたことに伴って、グループ内の仮想マシンの収集対象比率を更新する。直前の時点のグループに属する仮想マシンの総数をn、直前の時点の稼働情報を収集しない従属仮想マシンの数をmとすると、収集対象比率は(n-m)÷(n-1)に増大する。 (S47) The group control unit 225 updates the collection target ratio of the virtual machines in the group as one dependent virtual machine has left the group. If the total number of virtual machines belonging to the group at the most recent point in time is n, and the number of dependent virtual machines whose operating information is not collected at the most recent point in time is m, the collection target ratio will increase to (n-m) ÷ (n-1). do.

(S48)グループ制御部225は、ステップS47で算出した収集対象比率に応じて、稼働情報取得部224の収集頻度を直前よりも下げる。
(S49)グループ制御部225は、グループから外れた仮想マシンの識別情報を含むグループ解除通知を、情報収集サーバ100に送信する。
(S48) The group control unit 225 lowers the collection frequency of the operating information acquisition unit 224 from the previous one according to the collection target ratio calculated in step S47.
(S49) The group control unit 225 transmits to the information collection server 100 a group cancellation notification including the identification information of the virtual machine that has left the group.

(S50)稼働情報取得部224は、代表仮想マシンから再開通知を受信したか判断する。再開通知を受信した場合はステップS51に進み、再開通知を受信しなかった場合は仮想マシン継続処理が終了する。なお、仮想マシン51は、あるリソースについて代表仮想マシンに指定され、別のリソースについて従属仮想マシンに指定されることがある。よって、仮想マシン51は、あるリソースについて従属仮想マシンを監視する一方、別のリソースについて代表仮想マシンから再開通知を受信することがある。 (S50) The operation information acquisition unit 224 determines whether a restart notification has been received from the representative virtual machine. If a restart notification is received, the process advances to step S51, and if a restart notification is not received, the virtual machine continuation process ends. Note that the virtual machine 51 may be designated as a representative virtual machine for a certain resource, and designated as a dependent virtual machine for another resource. Therefore, while the virtual machine 51 monitors the dependent virtual machine for a certain resource, it may receive a restart notification from the representative virtual machine for another resource.

(S51)稼働情報取得部224は、稼働情報の取得および送信を再開する。再開後の収集頻度は、例えば、ステップS32で通知された低頻度の初期値とする。
図17は、サーバ継続処理の手順例を示すフローチャートである。
(S51) The operating information acquisition unit 224 resumes acquiring and transmitting operating information. The collection frequency after restarting is, for example, the initial value of the low frequency notified in step S32.
FIG. 17 is a flowchart illustrating an example of a procedure for server continuation processing.

(S60)相関更新部127は、各代表仮想マシンから相関更新通知を受信する。相関更新通知は、従属仮想マシンの識別情報および更新後の倍率を含む。
(S61)相関更新部127は、相関関係テーブル133の倍率を更新する。
(S60) The correlation update unit 127 receives correlation update notifications from each representative virtual machine. The correlation update notification includes the identification information of the dependent virtual machine and the updated magnification.
(S61) The correlation update unit 127 updates the magnification of the correlation table 133.

(S62)相関更新部127は、何れかの代表仮想マシンからグループ解除通知を受信したか判断する。グループ解除通知を受信した場合はステップS63に進み、グループ解除通知を受信していない場合はステップS64に進む。 (S62) The correlation update unit 127 determines whether a group cancellation notification has been received from any representative virtual machine. If the group cancellation notification has been received, the process proceeds to step S63, and if the group cancellation notification has not been received, the process proceeds to step S64.

(S63)相関更新部127は、相関関係テーブル133から、グループ解除通知を送信した代表仮想マシンと通知された従属仮想マシンとの間の相関関係を削除する。
(S64)相関検出部126は、図14に示すフローチャートに従い、現在の代表仮想マシンの中にグループ化できるものがあるか再判定する。
(S63) The correlation update unit 127 deletes the correlation between the representative virtual machine that sent the group cancellation notification and the notified subordinate virtual machine from the correlation table 133.
(S64) The correlation detection unit 126 re-determines whether any of the current representative virtual machines can be grouped, according to the flowchart shown in FIG.

(S65)相関検出部126は、ステップS63の再判定により、代表仮想マシンが従属仮想マシンに変更されることで従属仮想マシンが増加したか判断する。従属仮想マシンが増加した場合はステップS66に進み、増加していない場合はステップS67に進む。 (S65) The correlation detection unit 126 determines whether the number of dependent virtual machines has increased by changing the representative virtual machine to a dependent virtual machine through the re-determination in step S63. If the number of dependent virtual machines has increased, the process advances to step S66; if the number has not increased, the process advances to step S67.

(S66)相関検出部126は、相関関係テーブル133を更新する。また、相関検出部126は、新たな従属仮想マシンが属するグループの代表仮想マシンに、当該従属仮想マシンの識別情報およびその倍率を含むグループ通知を送信する。 (S66) The correlation detection unit 126 updates the correlation table 133. Further, the correlation detection unit 126 transmits a group notification including the identification information of the new dependent virtual machine and its magnification to the representative virtual machine of the group to which the new dependent virtual machine belongs.

(S67)稼働状況表示部128は、ユーザから稼働状況の要求を受け付けたか判断する。稼働状況の要求を受け付けた場合はステップS68に進み、稼働状況の要求を受け付けていない場合はサーバ継続処理が終了する。 (S67) The operating status display unit 128 determines whether a request for operating status has been received from the user. If the request for the operating status has been accepted, the process advances to step S68, and if the request for the operating status has not been accepted, the server continuation process ends.

(S68)稼働状況表示部128は、従属仮想マシンの稼働状況を示す数値を、相関関係テーブル133に登録された代表仮想マシンの計測値に倍率を乗じることで推定する。
(S69)稼働状況表示部128は、各仮想マシンの稼働状況の数値を列挙した稼働状況テーブル134を生成し、表示装置111に表示する。稼働状況テーブル134の数値には、収集された計測値とステップS68で算出された推定値とが含まれる。
(S68) The operating status display unit 128 estimates a numerical value indicating the operating status of the dependent virtual machine by multiplying the measured value of the representative virtual machine registered in the correlation table 133 by a magnification.
(S69) The operating status display unit 128 generates an operating status table 134 listing numerical values of the operating status of each virtual machine, and displays it on the display device 111. The numerical values in the operating status table 134 include the collected measured values and the estimated values calculated in step S68.

第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 continued to the extent that the overall amount of data communication is reduced. The frequency will be increased. For virtual machines for which operating information is not collected, the resource usage status is estimated based on the correlation with virtual machines for which operating information is collected. This makes it possible to ensure real-time monitoring of virtual machines and improve monitoring accuracy while reducing network traffic. Particularly in a multi-cloud environment, traffic on wide area data communication networks such as the Internet can be reduced. Therefore, it is possible to reduce the cost of monitoring virtual machines and suppress delays in monitoring.

また、テストリクエストを用いて、サービス内での複数の仮想マシンの間のデータフローが判定され、データフローに沿って親仮想マシンと子仮想マシンとの間で相関関係が判定される。サービスでは親仮想マシンから子仮想マシンにメッセージが送信されているため、親仮想マシンの負荷と子仮想マシンの負荷の間には強い相関がある可能性が高い。そのため、複数の仮想マシンの中で相関関係を効率的に判定することができる。また、代表仮想マシンと従属仮想マシンとの間の相関関係の変化は、代表仮想マシンによって分散して監視される。よって、広域データ通信ネットワークのトラフィックを削減できる。 The test request is also used to determine the data flow between the plurality of virtual machines within the service, and the correlation between the parent virtual machine and the child virtual machine along the data flow. Since messages are sent from the parent virtual machine to the child virtual machine in the service, there is likely to be a strong correlation between the load on the parent virtual machine and the load on the child virtual machine. Therefore, correlations among multiple virtual machines can be efficiently determined. Further, changes in the correlation between the representative virtual machine and the dependent virtual machines are monitored in a distributed manner by the representative virtual machine. Therefore, traffic on the wide area data communication network can be reduced.

10,20,20a 情報処理装置
11 通信部
12 記憶部
13 処理部
14 相関関係
21,22 仮想マシン
23,24 稼働情報
10, 20, 20a Information processing device 11 Communication unit 12 Storage unit 13 Processing unit 14 Correlation 21, 22 Virtual machine 23, 24 Operation information

Claims (12)

第1の仮想マシンから前記第1の仮想マシンにおけるリソースの使用状況を示す第1の稼働情報を受信し、第2の仮想マシンから前記第2の仮想マシンにおけるリソースの使用状況を示す第2の稼働情報を受信する通信部と、
受信された前記第1の稼働情報および前記第2の稼働情報の履歴を記憶する記憶部と、
前記履歴に基づいて、前記第1の仮想マシンと前記第2の仮想マシンとの間のリソースの使用状況の相関関係を判定し、前記相関関係が所定条件を満たす場合、前記第2の稼働情報の受信頻度が前記第1の稼働情報の受信頻度よりも低くなるように、前記第1の仮想マシンを通じて前記第2の仮想マシンに前記第2の稼働情報の送信頻度の低下を指示し、前記第1の仮想マシンから受信された前記第1の稼働情報と前記相関関係とに基づいて、前記第2の仮想マシンにおけるリソースの使用状況を推定する処理部と、
を有する情報処理装置。
receiving first operating information indicating resource usage status in the first virtual machine from a first virtual machine; and receiving second operating information indicating resource usage status in the second virtual machine from a second virtual machine; a communications department that receives operating information;
a storage unit that stores a history of the received first operating information and second operating information;
Based on the history, determine the correlation of the resource usage status between the first virtual machine and the second virtual machine, and if the correlation satisfies a predetermined condition, the second operating information instructing the second virtual machine through the first virtual machine to reduce the frequency of sending the second operating information so that the frequency of receiving the second operating information is lower than the frequency of receiving the first operating information, and a processing unit that estimates resource usage status in the second virtual machine based on the first operating information received from the first virtual machine and the correlation;
An information processing device having:
前記相関関係が前記所定条件を満たす場合、前記第2の仮想マシンから前記情報処理装置への前記第2の稼働情報の送信が停止するよう制御される、
請求項1記載の情報処理装置。
If the correlation satisfies the predetermined condition, the transmission of the second operating 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の仮想マシンから前記第1の仮想マシンにおけるリソースの使用状況を示す第1の稼働情報を受信し、第2の仮想マシンから前記第2の仮想マシンにおけるリソースの使用状況を示す第2の稼働情報を受信する通信部と、
受信された前記第1の稼働情報および前記第2の稼働情報の履歴を記憶する記憶部と、
前記履歴に基づいて、前記第1の仮想マシンと前記第2の仮想マシンとの間のリソースの使用状況の相関関係を判定し、前記相関関係が所定条件を満たす場合、前記第2の稼働情報の受信頻度が前記第1の稼働情報の受信頻度よりも低くなるよう制御し、前記第1の仮想マシンから受信された前記第1の稼働情報と前記相関関係とに基づいて、前記第2の仮想マシンにおけるリソースの使用状況を推定する処理部と、
を有し、
前記相関関係を判定する前は、前記処理部は、前記相関関係が前記所定条件を満たす場合の前記第1の稼働情報の受信頻度よりも低い所定頻度で、前記第1の稼働情報および前記第2の稼働情報が受信されるよう制御する情報処理装置。
receiving first operating information indicating resource usage status in the first virtual machine from a first virtual machine; and receiving second operating information indicating resource usage status in the second virtual machine from a second virtual machine; a communications department that receives operating information;
a storage unit that stores a history of the received first operating information and second operating information;
Based on the history, determine the correlation of the resource usage status between the first virtual machine and the second virtual machine, and if the correlation satisfies a predetermined condition, the second operating information control so that the reception frequency of the first operating information is lower than the receiving frequency of the first operating information, and based on the first operating information received from the first virtual machine and the correlation a processing unit that estimates resource usage in the virtual machine;
has
Before determining the correlation, the processing unit receives the first performance information and the first performance information at a predetermined frequency that is lower than the reception frequency of the first performance information when the correlation satisfies the predetermined condition. an information processing device that controls the operation information of No. 2 to be received ;
第1の仮想マシンから前記第1の仮想マシンにおけるリソースの使用状況を示す第1の稼働情報を受信し、第2の仮想マシンから前記第2の仮想マシンにおけるリソースの使用状況を示す第2の稼働情報を受信する通信部と、
受信された前記第1の稼働情報および前記第2の稼働情報の履歴を記憶する記憶部と、
前記履歴に基づいて、前記第1の仮想マシンと前記第2の仮想マシンとの間のリソースの使用状況の相関関係を判定し、前記相関関係が所定条件を満たす場合、前記第2の稼働情報の受信頻度が前記第1の稼働情報の受信頻度よりも低くなり、前記第2の稼働情報の受信頻度が前記相関関係を判定する前よりも低くなり、前記第1の稼働情報の受信頻度が前記相関関係を判定する前よりも高くなるよう制御し、前記第1の仮想マシンから受信された前記第1の稼働情報と前記相関関係とに基づいて、前記第2の仮想マシンにおけるリソースの使用状況を推定する処理部と、
を有する情報処理装置。
receiving first operating information indicating resource usage status in the first virtual machine from a first virtual machine; and receiving second operating information indicating resource usage status in the second virtual machine from a second virtual machine; a communications department that receives operating information;
a storage unit that stores a history of the received first operating information and second operating information;
Based on the history, determine the correlation of the resource usage status between the first virtual machine and the second virtual machine, and if the correlation satisfies a predetermined condition, the second operating information is lower than the reception frequency of the first operation information, the reception frequency of the second operation information is lower than before determining the correlation, and the reception frequency of the first operation information is lower than the reception frequency of the first operation information. Resource usage in the second virtual machine is controlled so that the correlation is higher than before the determination , and based on the first operating information received from the first virtual machine and the correlation. a processing unit that estimates the situation;
An information processing device having:
前記第1の仮想マシンおよび前記第2の仮想マシンを含む複数の仮想マシンのうち、前記第2の仮想マシンを含む一部の仮想マシンの稼働情報の受信頻度が前記相関関係を判定する前よりも低くなり、前記第1の仮想マシンを含む他の仮想マシンの稼働情報の受信頻度が前記相関関係を判定する前よりも高くなり、
前記第1の稼働情報の変更後の受信頻度は、前記複数の仮想マシンの個数に対する前記他の仮想マシンの個数の割合に基づいて決定される、
請求項記載の情報処理装置。
Among the plurality of virtual machines including the first virtual machine and the second virtual machine, the reception frequency of operation information of some virtual machines including the second virtual machine is higher than before determining the correlation. also becomes lower, and the reception frequency of operation information of other virtual machines including the first virtual machine becomes higher than before determining the correlation,
The reception frequency after the first operating information is changed 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 4 .
第1の仮想マシンから前記第1の仮想マシンにおけるリソースの使用状況を示す第1の稼働情報を受信し、第2の仮想マシンから前記第2の仮想マシンにおけるリソースの使用状況を示す第2の稼働情報を受信する通信部と、
受信された前記第1の稼働情報および前記第2の稼働情報の履歴を記憶する記憶部と、
前記履歴に基づいて、前記第1の仮想マシンと前記第2の仮想マシンとの間のリソースの使用状況の相関関係を判定し、前記相関関係が所定条件を満たす場合、前記第2の稼働情報の受信頻度が前記第1の稼働情報の受信頻度よりも低くなるよう制御し、前記第2の稼働情報の受信頻度を、前記相関関係の変化に応じて更新し、前記第1の仮想マシンから受信された前記第1の稼働情報と前記相関関係とに基づいて、前記第2の仮想マシンにおけるリソースの使用状況を推定する処理部と、
を有する情報処理装置。
receiving first operating information indicating resource usage status in the first virtual machine from a first virtual machine; and receiving second operating information indicating resource usage status in the second virtual machine from a second virtual machine; a communications department that receives operating information;
a storage unit that stores a history of the received first operating information and second operating information;
Based on the history, determine the correlation of the resource usage status between the first virtual machine and the second virtual machine, and if the correlation satisfies a predetermined condition, the second operating information control the reception frequency of the first operating information to be lower than the receiving frequency of the first operating information, update the receiving frequency of the second operating information according to the change in the correlation, and update the receiving frequency of the second operating information from the first virtual machine. a processing unit that estimates a resource usage status in the second virtual machine based on the received first operating information and the correlation;
An information processing device having:
前記相関関係の変化は、前記第1の仮想マシンによって監視され、前記第1の仮想マシンから前記情報処理装置に通知される、
請求項記載の情報処理装置。
The change in the correlation is monitored by the first virtual machine, and the first virtual machine notifies the information processing device.
The information processing device according to claim 6 .
第1の仮想マシンから前記第1の仮想マシンにおけるリソースの使用状況を示す第1の稼働情報を受信し、第2の仮想マシンから前記第2の仮想マシンにおけるリソースの使用状況を示す第2の稼働情報を受信する通信部と、
受信された前記第1の稼働情報および前記第2の稼働情報の履歴を記憶する記憶部と、
前記第1の仮想マシンおよび前記第2の仮想マシンを含む複数の仮想マシンの間のメッセージ通信の順序を、テストリクエストを送信することで検出し、メッセージの送信元の仮想マシンを前記第1の仮想マシンとして選択し、当該メッセージの送信先の仮想マシンを前記第2の仮想マシンとして選択し、前記履歴に基づいて、前記第1の仮想マシンと前記第2の仮想マシンとの間のリソースの使用状況の相関関係を判定し、前記相関関係が所定条件を満たす場合、前記第2の稼働情報の受信頻度が前記第1の稼働情報の受信頻度よりも低くなるよう制御し、前記第1の仮想マシンから受信された前記第1の稼働情報と前記相関関係とに基づいて、前記第2の仮想マシンにおけるリソースの使用状況を推定する処理部と、
を有する情報処理装置。
receiving first operating information indicating resource usage status in the first virtual machine from a first virtual machine; and receiving second operating information indicating resource usage status in the second virtual machine from a second virtual machine; a communications department that receives operating information;
a storage unit that stores a history of the received first operating information and second operating information;
The order of message communication between a plurality of virtual machines including the first virtual machine and the second virtual machine is detected by sending a test request, and the message transmission source virtual machine is detected by the first virtual machine. a virtual machine to which the message is to be sent as the second virtual machine; and based on the history, the resource allocation between the first virtual machine and the second virtual machine is determined. Determine the correlation of the usage status, and if the correlation satisfies a predetermined condition, control the reception frequency of the second operation information to be lower than the reception frequency of the first operation information, and a processing unit that estimates resource usage status in the second virtual machine based on the first operating information and the correlation received from the virtual machine;
An information processing device having:
第1の仮想マシンから前記第1の仮想マシンにおけるリソースの使用状況を示す第1の稼働情報を受信し、第2の仮想マシンから前記第2の仮想マシンにおけるリソースの使用状況を示す第2の稼働情報を受信する通信部と、
受信された前記第1の稼働情報および前記第2の稼働情報の履歴を記憶する記憶部と、
前記履歴に含まれる所定時間内の前記第1の稼働情報および前記第2の稼働情報から、対応する受信時刻をもつ前記第1の稼働情報と前記第2の稼働情報とを対応付けた複数のペアを特定し、前記複数のペアに基づいて、前記第1の仮想マシンと前記第2の仮想マシンとの間のリソースの使用状況の相関関係として、前記第1の稼働情報と前記第2の稼働情報との間の相関係数を算出し、前記相関係数の絶対値が閾値より大きい場合、前記第2の稼働情報の受信頻度が前記第1の稼働情報の受信頻度よりも低くなるよう制御し、前記第1の仮想マシンから受信された前記第1の稼働情報と前記相関関係とに基づいて、前記第2の仮想マシンにおけるリソースの使用状況を推定する処理部と、
を有する情報処理装置。
receiving first operating information indicating resource usage status in the first virtual machine from a first virtual machine; and receiving second operating information indicating resource usage status in the second virtual machine from a second virtual machine; a communications department that receives operating information;
a storage unit that stores a history of the received first operating information and second operating information;
From the first operation information and the second operation information within a predetermined time included in the history, a plurality of pieces of information are obtained in which the first operation information and the second operation information having corresponding reception times are associated with each other. pairs are identified, and based on the plurality of pairs , the first operating information and the second virtual machine are determined as a correlation of resource usage between the first virtual machine and the second virtual machine. Calculate a correlation coefficient with the operating information, and if the absolute value of the correlation coefficient is larger than a threshold , the frequency of receiving the second operating information is lower than the frequency of receiving the first operating information. a processing unit that controls and estimates the resource usage status of the second virtual machine based on the first operating information received from the first virtual machine and the correlation;
An information processing device having:
第1の仮想マシンを実行する第1の情報処理装置と、
第2の仮想マシンを実行する第2の情報処理装置と、
前記第1の仮想マシンおよび前記第2の仮想マシンと通信する第3の情報処理装置と、
を有し、前記第3の情報処理装置は、
前記第1の仮想マシンから前記第1の仮想マシンにおけるリソースの使用状況を示す第1の稼働情報を受信し、前記第2の仮想マシンから前記第2の仮想マシンにおけるリソースの使用状況を示す第2の稼働情報を受信し、
受信された前記第1の稼働情報および前記第2の稼働情報の履歴を保持し、
前記履歴に基づいて、前記第1の仮想マシンと前記第2の仮想マシンとの間のリソースの使用状況の相関関係を判定し、前記相関関係が所定条件を満たす場合、前記第2の稼働情報の受信頻度が前記第1の稼働情報の受信頻度よりも低くなるように、前記第1の仮想マシンを通じて前記第2の仮想マシンに前記第2の稼働情報の送信頻度の低下を指示し、
前記第1の仮想マシンから受信された前記第1の稼働情報と前記相関関係とに基づいて、前記第2の仮想マシンにおけるリソースの使用状況を推定する、
情報処理システム。
a first information processing device that executes a first virtual machine;
a second information processing device that executes a second virtual machine;
a third information processing device that communicates with the first virtual machine and the second virtual machine;
The third information processing device has:
receiving first operation information indicating the resource usage status in the first virtual machine from the first virtual machine, and receiving first operation information indicating the resource usage status in the second virtual machine from the second virtual machine; Receive the operation information of 2,
retaining a history of the received first operating information and second operating information;
Based on the history, determine the correlation of the resource usage status between the first virtual machine and the second virtual machine, and if the correlation satisfies a predetermined condition, the second operating information instructing the second virtual machine through the first virtual machine to reduce the frequency of transmission of the second operating information so that the frequency of receiving the second operating information is lower than the frequency of receiving the first operating information;
estimating resource usage status in the second virtual machine based on the first operating information received from the first virtual machine and the correlation;
Information processing system.
コンピュータが、
第1の仮想マシンから受信された前記第1の仮想マシンにおけるリソースの使用状況を示す第1の稼働情報と、第2の仮想マシンから受信された前記第2の仮想マシンにおけるリソースの使用状況を示す第2の稼働情報との履歴を取得し、
前記履歴に基づいて、前記第1の仮想マシンと前記第2の仮想マシンとの間のリソースの使用状況の相関関係を判定し、前記相関関係が所定条件を満たす場合、前記第2の稼働情報の受信頻度が前記第1の稼働情報の受信頻度よりも低くなるように、前記第1の仮想マシンを通じて前記第2の仮想マシンに前記第2の稼働情報の送信頻度の低下を指示し、
前記第1の仮想マシンから受信された前記第1の稼働情報と前記相関関係とに基づいて、前記第2の仮想マシンにおけるリソースの使用状況を推定する、
情報処理方法。
The computer is
first operating information indicating the resource usage status in the first virtual machine received from the first virtual machine; and first operation information indicating the resource usage status in the second virtual machine received from the second virtual machine. obtain the history with the second operating information shown;
Based on the history, determine the correlation of the resource usage status between the first virtual machine and the second virtual machine, and if the correlation satisfies a predetermined condition, the second operating information instructing the second virtual machine through the first virtual machine to reduce the frequency of transmission of the second operating information so that the frequency of receiving the second operating information is lower than the frequency of receiving the first operating information;
estimating resource usage status in the second virtual machine based on the first operating information received from the first virtual machine and the correlation;
Information processing method.
コンピュータに、
第1の仮想マシンから受信された前記第1の仮想マシンにおけるリソースの使用状況を示す第1の稼働情報と、第2の仮想マシンから受信された前記第2の仮想マシンにおけるリソースの使用状況を示す第2の稼働情報との履歴を取得し、
前記履歴に基づいて、前記第1の仮想マシンと前記第2の仮想マシンとの間のリソースの使用状況の相関関係を判定し、前記相関関係が所定条件を満たす場合、前記第2の稼働情報の受信頻度が前記第1の稼働情報の受信頻度よりも低くなるように、前記第1の仮想マシンを通じて前記第2の仮想マシンに前記第2の稼働情報の送信頻度の低下を指示し、
前記第1の仮想マシンから受信された前記第1の稼働情報と前記相関関係とに基づいて、前記第2の仮想マシンにおけるリソースの使用状況を推定する、
処理を実行させるプログラム。
to the computer,
first operating information indicating the resource usage status in the first virtual machine received from the first virtual machine; and first operation information indicating the resource usage status in the second virtual machine received from the second virtual machine. obtain the history with the second operating information shown;
Based on the history, determine the correlation of the resource usage status between the first virtual machine and the second virtual machine, and if the correlation satisfies a predetermined condition, the second operating information instructing the second virtual machine through the first virtual machine to reduce the frequency of transmission of the second operating information so that the frequency of receiving the second operating information is lower than the frequency of receiving the first operating information;
estimating resource usage status in the second virtual machine based on the first operating information received from the first virtual machine and the correlation;
A program that executes processing.
JP2019232537A 2019-12-24 2019-12-24 Information processing device, information processing system, information processing method and program Active JP7360036B2 (en)

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 JP2021101278A (en) 2021-07-08
JP7360036B2 true 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)

Families Citing this family (1)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
WO2023238438A1 (en) * 2022-06-10 2023-12-14 パナソニックIpマネジメント株式会社 Monitoring device and monitoring method

Citations (4)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
JP2007207173A (en) 2006-02-06 2007-08-16 Fujitsu Ltd Performance analysis program, performance analysis method, and performance analysis device
US20080016412A1 (en) 2002-07-01 2008-01-17 Opnet Technologies, Inc. Performance metric collection and automated analysis
WO2011043447A1 (en) 2009-10-08 2011-04-14 日本電気株式会社 Operational surveillance device, operational surveillance method and program storage medium
WO2011077533A1 (en) 2009-12-24 2011-06-30 富士通株式会社 Performance data collecting method, performance data collecting device, and performance data management system

Patent Citations (4)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US20080016412A1 (en) 2002-07-01 2008-01-17 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
WO2011043447A1 (en) 2009-10-08 2011-04-14 日本電気株式会社 Operational surveillance device, operational surveillance method and program storage medium
WO2011077533A1 (en) 2009-12-24 2011-06-30 富士通株式会社 Performance data collecting method, performance data collecting device, and performance data management system

Also Published As

Publication number Publication date
JP2021101278A (en) 2021-07-08

Similar Documents

Publication Publication Date Title
US7930344B2 (en) Incremental run-time session balancing in a multi-node system
EP2972746B1 (en) Storage unit selection for virtualized storage units
US10248404B2 (en) Managing update deployment
JP4170302B2 (en) Load control device and load control program
US8589558B2 (en) Method and system for efficient deployment of web applications in a multi-datacenter system
US8087025B1 (en) Workload placement among resource-on-demand systems
US7644161B1 (en) Topology for a hierarchy of control plug-ins used in a control system
KR101941282B1 (en) Method of allocating a virtual machine for virtual desktop service
SE1251125A1 (en) Method, node and computer program to enable automatic adaptation of resource units
EP2707795A1 (en) Allocation of virtual machines in datacenters
JP2001084195A (en) Network managing system with event control means
KR20130083032A (en) Management method of service level agreement for guarantee of quality of service in cloud environment
JP5596716B2 (en) Resource management apparatus, resource management system, resource management method, and resource management program
WO2013037619A1 (en) Method and system for managing an elastic server farm
US7437459B2 (en) Calculation of service performance grades in a multi-node environment that hosts the services
CN109960579B (en) Method and device for adjusting service container
US10554510B2 (en) Enabling additional metrics in a monitoring system to diagnose problems
JP7360036B2 (en) Information processing device, information processing system, information processing method and program
Rolik et al. Dynamie management of data center resources using reinforcement learning
CN109815204A (en) A kind of metadata request distribution method and equipment based on congestion aware
JP6279816B2 (en) Storage monitoring system and monitoring method thereof
JP7176633B2 (en) VIRTUALIZATION BASE CONTROL DEVICE, VIRTUALIZATION BASE CONTROL METHOD AND VIRTUALIZATION BASE CONTROL PROGRAM
JP2001202318A (en) Data distribution system
EP2775400B1 (en) Ressource management system a method
US10812390B2 (en) Intelligent load shedding of traffic based on current load state of target capacity

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