JP2015146148A - Virtual machine management device, virtual machine management method, and virtual machine management program - Google Patents

Virtual machine management device, virtual machine management method, and virtual machine management program Download PDF

Info

Publication number
JP2015146148A
JP2015146148A JP2014019115A JP2014019115A JP2015146148A JP 2015146148 A JP2015146148 A JP 2015146148A JP 2014019115 A JP2014019115 A JP 2014019115A JP 2014019115 A JP2014019115 A JP 2014019115A JP 2015146148 A JP2015146148 A JP 2015146148A
Authority
JP
Japan
Prior art keywords
virtual machine
log
information
resource
collection
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.)
Pending
Application number
JP2014019115A
Other languages
Japanese (ja)
Inventor
桂一 紀伊
Keiichi Kii
桂一 紀伊
Current Assignee (The listed assignees may be inaccurate. Google has not performed a legal analysis and makes no representation or warranty as to the accuracy of the list.)
NEC Corp
Original Assignee
NEC Corp
Priority date (The priority date is an assumption and is not a legal conclusion. Google has not performed a legal analysis and makes no representation as to the accuracy of the date listed.)
Filing date
Publication date
Application filed by NEC Corp filed Critical NEC Corp
Priority to JP2014019115A priority Critical patent/JP2015146148A/en
Publication of JP2015146148A publication Critical patent/JP2015146148A/en
Pending legal-status Critical Current

Links

Images

Landscapes

  • Debugging And Monitoring (AREA)

Abstract

PROBLEM TO BE SOLVED: To prevent processing that is normally performed by a virtual machine from being affected when the virtual machine collects log information according to an instruction from another specific virtual machine.SOLUTION: A virtual machine management device 3 includes: an instruction unit 31 that operates using resources for executing information processing which are included in an information processing device, selects a second virtual machine 42 out of a plurality of virtual machines on the basis of a predetermined reference according to a log collection instruction from a first virtual machine 41 out of a plurality of virtual machines for collecting log information in response to the log collection instruction to collect a log, and inputs the log collection instruction to the second virtual machine 42; and an allocation unit 32 that additionally allocates part of the resources to the second virtual machines when the instruction unit 31 inputs the log collection instruction to the second virtual machine 42.

Description

本願発明は、複数の仮想マシンが構築された環境において、仮想マシンに関するログ情報を採取する仮想マシン管理装置等に関する。   The present invention relates to a virtual machine management apparatus that collects log information about a virtual machine in an environment where a plurality of virtual machines are constructed.

近年、様々な業界におけるクラウドサービスが普及するにつれて、仮想化環境を利用したコンピュータシステムが増加してきている。また、コンピュータシステムにおけるハードウェア性能が向上するにつれて、係る仮想化環境における複数の仮想マシンが、物理サーバが有するCPU(Central Processing Unit)あるいはメモリ等のリソースを共有する方式が一般的となっている。このようなコンピュータシステムにおいては、物理サーバが有するリソースを共有する仮想マシン同士が、メモリバス帯域あるいはネットワークI/O(Input/Output)帯域等に関するリソース競合などにより、システム性能が低下する問題が発生することがある。   In recent years, as cloud services in various industries have become widespread, computer systems using virtual environments have increased. In addition, as the hardware performance of a computer system improves, a method in which a plurality of virtual machines in the virtual environment share resources such as a CPU (Central Processing Unit) or a memory of a physical server is becoming common. . In such a computer system, there is a problem that the virtual machine sharing the resources possessed by the physical server has a problem that the system performance deteriorates due to resource contention regarding the memory bus bandwidth or network I / O (Input / Output) bandwidth. There are things to do.

このような性能問題が発生した場合、当該仮想マシンを使用するユーザは、その仮想マシンにおいて動作するゲストOS(Operating System)が有するログ採取機能を使用して、問題を解析するために必要なログ情報を採取する。しかしながら、ゲストOSは、例えば、仮想化環境を構築するハードウェアレベルにおける競合状況を示すログ情報を採取することはできない。このため、当該ゲストOSが有するログ採取機能が採取したログ情報のみからでは、係る性能問題を十分に解析することはできないという問題がある。   When such a performance problem occurs, the user who uses the virtual machine logs necessary to analyze the problem using the log collection function of the guest OS (Operating System) operating in the virtual machine Collect information. However, for example, the guest OS cannot collect log information indicating a competition state at a hardware level for constructing a virtual environment. For this reason, there is a problem that the performance problem cannot be sufficiently analyzed only from the log information collected by the log collection function of the guest OS.

このような問題に対応するために、当該仮想マシンを使用するユーザは、他の仮想マシンにおいて動作するゲストOS、あるいは、仮想化環境を構築し管理するソフトウェアであるハイパーバイザが採取できるログ情報を外部から入手する。そして、係るユーザは、入手したログ情報を、自分が使用するゲストOSが採取したログ情報と時系列に突き合わせることによって、係る性能問題を解析することができる。   In order to deal with such problems, a user using the virtual machine can collect log information that can be collected by a guest OS that operates in another virtual machine or a hypervisor that is software for constructing and managing a virtual environment. Obtain from outside. The user can analyze the performance problem by matching the acquired log information with the log information collected by the guest OS used by the user in time series.

このような問題解析を行うことに関連する技術として、特許文献1には、各ゲストOSが採取した性能情報と、バーチャルコンソールが表示した画面(描画情報)をハイパーバイザが記録することにより、問題が仮想マシン特有の問題であるのか、あるいは、ゲストOSに関する問題であるのかを切り分ける技術が開示されている。   As a technique related to performing such problem analysis, Patent Document 1 discloses a problem that the hypervisor records performance information collected by each guest OS and a screen (drawing information) displayed by the virtual console. Discloses a technique for determining whether the problem is a problem specific to a virtual machine or a problem related to a guest OS.

また、特許文献2には、ゲストOSが採取できる性能情報を、リソース割り当て情報と関連付けることにより、仮想マシンに割り当てられたリソースが動的に変化した際の性能情報に関する変化を監視する技術が開示されている。   Patent Document 2 discloses a technique for monitoring changes related to performance information when resources allocated to a virtual machine change dynamically by associating performance information that can be collected by the guest OS with resource allocation information. Has been.

また、特許文献3には、仮想マシンにおける統計処理を最小のオーバーヘッドにより実行し、取得した統計情報をユーザが自由に加工して出力する技術が開示されている。係る技術では、トレースバッファに仮想化イベントに関する情報を記録して、別プロセスがトレースバッファを監視する。そして、係る技術は、ハイパーバイザが採取した統計情報を、ゲストOSが動作する環境において、ユーザが自由に加工して出力するインタフェースを提供している。   Patent Document 3 discloses a technique in which statistical processing in a virtual machine is executed with a minimum overhead, and a user freely processes and outputs acquired statistical information. In such a technique, information related to the virtualization event is recorded in the trace buffer, and another process monitors the trace buffer. Such a technique provides an interface for allowing a user to freely process and output statistical information collected by the hypervisor in an environment where the guest OS operates.

さらに、特許文献4には、管理対象である仮想マシンにおいて情報採取を行い、管理を行うサーバにおいて動作する管理マネージャに対して負荷をかけることをせずに、採取された情報にアクセスできるようにした技術が開示されている。   Furthermore, in Patent Document 4, information is collected in a virtual machine to be managed so that the collected information can be accessed without imposing a load on the management manager operating in the server that performs management. Have been disclosed.

特開2009-176228号公報JP 2009-176228 A 特開2012-108956号公報JP 2012-108956 A 特開2010-204972号公報JP 2010-204972 A 特開2011-159249号公報JP 2011-159249 A

特定の仮想マシンを使用するユーザが、性能問題等を解析するために、他の仮想マシンにより採取されたログ情報を入手する場合、係る他の仮想マシンは、割り当てられたリソースの一部を使用することにより、ログ情報を採取する。したがって、係る他の仮想マシンにおいて、本来行うべき処理を実行するリソースが一時的に減少することになるため、係る他の仮想マシンが本来行うべき処理に関して影響が出るという問題がある。特許文献1乃至4が開示した技術は、この問題を解決することはできない。   When a user using a specific virtual machine obtains log information collected by another virtual machine in order to analyze performance problems, the other virtual machine uses a part of the allocated resources. To collect log information. Therefore, in such other virtual machines, the resources for executing the processing that should be originally performed are temporarily reduced, so that there is a problem that the processing that the other virtual machines should perform is affected. The techniques disclosed in Patent Documents 1 to 4 cannot solve this problem.

本願発明の主たる目的は、この問題を解決した、仮想マシン管理装置、仮想マシン管理方法、及び、仮想マシン管理プログラムを提供することである。   The main object of the present invention is to provide a virtual machine management apparatus, a virtual machine management method, and a virtual machine management program that solve this problem.

本願発明に係る仮想マシン管理装置は、情報処理装置が有する、情報処理を実行するリソースを使用して動作し、ログ採取を指示するログ採取命令を受けてログ情報を採取する複数の仮想マシンの中の第一の仮想マシンからの前記ログ採取命令に従い、所定の基準に基づいて前記複数の仮想マシンの中から第二の仮想マシンを選択し、前記第二の仮想マシンに対して前記ログ採取命令を入力する指示手段と、前記指示手段が、前記第二の仮想マシンに対して前記ログ採取命令を入力したときに、前記第二の仮想マシンに対して、前記リソースを追加して割り当てる割り当て手段と、を備えることを特徴とする。   The virtual machine management device according to the present invention operates using resources for executing information processing that the information processing device has, and includes a plurality of virtual machines that collect log information in response to a log collection command instructing log collection. In accordance with the log collection command from the first virtual machine, a second virtual machine is selected from the plurality of virtual machines based on a predetermined criterion, and the log is collected for the second virtual machine An instruction unit for inputting an instruction, and an allocation in which the resource is added and allocated to the second virtual machine when the instruction unit inputs the log collection instruction to the second virtual machine. And means.

上記目的を達成する他の見地において、本願発明の仮想マシン管理方法は、第一の情報処理装置によって、前記第一の情報処理装置あるいは第二の情報処理装置が有する、情報処理を実行するリソースを使用して動作し、ログ採取を指示するログ採取命令を受けてログ情報を採取する複数の仮想マシンの中の第一の仮想マシンからの前記ログ採取命令に従い、所定の基準に基づいて前記複数の仮想マシンの中から第二の仮想マシンを選択し、前記第二の仮想マシンに対して前記ログ採取命令を入力し、前記第二の仮想マシンに対して前記ログ採取命令を入力したときに、前記第二の仮想マシンに対して、前記リソースを追加して割り当てることを特徴とする。   In another aspect of achieving the above object, the virtual machine management method of the present invention provides a resource for executing information processing by the first information processing apparatus, which the first information processing apparatus or the second information processing apparatus has. In accordance with the log collection command from the first virtual machine of the plurality of virtual machines that collect log information in response to the log collection command for instructing log collection based on a predetermined criterion When a second virtual machine is selected from a plurality of virtual machines, the log collection command is input to the second virtual machine, and the log collection command is input to the second virtual machine In addition, the resource is added and allocated to the second virtual machine.

また、上記目的を達成する更なる見地において、本願発明に係る仮想マシン管理プログラムは、情報処理装置が有する、情報処理を実行するリソースを使用して動作し、ログ採取を指示するログ採取命令を受けてログ情報を採取する複数の仮想マシンの中の第一の仮想マシンからの前記ログ採取命令に従い、所定の基準に基づいて前記複数の仮想マシンの中から第二の仮想マシンを選択し、前記第二の仮想マシンに対して前記ログ採取命令を入力する指示処理と、前記指示処理が、前記第二の仮想マシンに対して前記ログ採取命令を入力したときに、前記第二の仮想マシンに対して、前記リソースを追加して割り当てる割り当て処理と、をコンピュータに実行させることを特徴とする。   Further, in a further aspect of achieving the above object, the virtual machine management program according to the present invention operates using a resource that the information processing apparatus has to execute information processing, and issues a log collection command that instructs log collection. In accordance with the log collection command from the first virtual machine among the plurality of virtual machines receiving and collecting log information, a second virtual machine is selected from the plurality of virtual machines based on a predetermined criterion, An instruction process for inputting the log collection instruction to the second virtual machine, and the second virtual machine when the instruction process inputs the log collection instruction to the second virtual machine. On the other hand, it is characterized by causing a computer to execute allocation processing for adding and allocating the resource.

更に、本発明は、係る仮想マシン管理プログラム(コンピュータプログラム)が格納された、コンピュータ読み取り可能な、不揮発性の記憶媒体によっても実現可能である。   Furthermore, the present invention can be realized by a computer-readable non-volatile storage medium in which the virtual machine management program (computer program) is stored.

本願発明は、特定の仮想マシンからの指示にしたがって、他の仮想マシンがログ情報を採取する際に、係る他の仮想マシンが本来行う処理に影響が出ないようにすることを可能とする。   The present invention makes it possible to prevent the process originally performed by another virtual machine from affecting the process when the other virtual machine collects log information in accordance with an instruction from a specific virtual machine.

本願発明の第1の実施形態に係る仮想マシン管理装置の構成を示すブロック図である。It is a block diagram which shows the structure of the virtual machine management apparatus which concerns on 1st Embodiment of this invention. 本願発明の第1の実施形態に係る仮想マシン管理装置のハードウェアの構成を示すブロック図である。It is a block diagram which shows the hardware constitutions of the virtual machine management apparatus which concerns on 1st Embodiment of this invention. 本願発明の第1の実施形態に係る仮想マシン管理装置の動作を示すフローチャート(1/2)である。It is a flowchart (1/2) which shows operation | movement of the virtual machine management apparatus which concerns on 1st Embodiment of this invention. 本願発明の第1の実施形態に係る仮想マシン管理装置の動作を示すフローチャート(2/2)である。It is a flowchart (2/2) which shows operation | movement of the virtual machine management apparatus which concerns on 1st Embodiment of this invention. 本願発明の第1の実施形態に係るリソース割り当て情報の構成例を示す図である。It is a figure which shows the structural example of the resource allocation information which concerns on 1st Embodiment of this invention. 本願発明の第1の実施形態に係る競合リソース管理情報の構成例を示す図である。It is a figure which shows the structural example of the competition resource management information which concerns on 1st Embodiment of this invention. 本願発明の第1の実施形態に係る採取ログ管理情報の構成例を示す図である。It is a figure which shows the structural example of the collection log management information which concerns on 1st Embodiment of this invention. 本願発明の第2の実施形態に係る仮想マシン管理装置の構成を示すブロック図である。It is a block diagram which shows the structure of the virtual machine management apparatus which concerns on 2nd Embodiment of this invention.

以下、本願発明の実施の形態について図面を参照して詳細に説明する。   Hereinafter, embodiments of the present invention will be described in detail with reference to the drawings.

<第1の実施形態>
図1は、第1の実施形態に係る仮想マシン管理装置1の構成を概念的に示すブロック図である。本実施形態に係る仮想マシン管理装置1は、サーバ装置等の情報処理装置であり、仮想化環境を構築している。本実施形態に係る仮想マシン管理装置1は、ハイパーバイザ10、及び、ゲストOS20−1乃至nを実行している。ハイパーバイザ10は、仮想化環境を構築し、構築した仮想マシンを管理するソフトウェアである。ゲストOS20−1乃至nは、構築した各仮想マシンにおいて動作するOSである。
<First Embodiment>
FIG. 1 is a block diagram conceptually showing the structure of the virtual machine management apparatus 1 according to the first embodiment. The virtual machine management apparatus 1 according to the present embodiment is an information processing apparatus such as a server apparatus, and builds a virtual environment. The virtual machine management device 1 according to the present embodiment executes a hypervisor 10 and guest OSs 20-1 to 20-n. The hypervisor 10 is software that constructs a virtual environment and manages the constructed virtual machine. The guest OSs 20-1 to 20-n are OSes that operate in each constructed virtual machine.

本実施形態に係る仮想マシン管理装置1のハードウェアの構成を図2に例示する。以下に説明する実行環境は、本実施形態だけでなく、後述する各実施形態においても採用可能である。   FIG. 2 illustrates a hardware configuration of the virtual machine management apparatus 1 according to the present embodiment. The execution environment described below can be adopted not only in this embodiment but also in each embodiment described later.

図2に示す通り、仮想マシン管理装置1は、CPU(Central_Processing_Unit)901、ROM(Read_Only_Memory)902、RAM(Random_Access_Memory)903、ハードディスク904(記憶装置)、外部装置との通信インタフェース905(Interface:以降、「I/F」と称する)、CD−ROM(Compact_Disc_Read_Only_Memory)等の記憶媒体907に格納されたデータを読み書き可能なリーダライタ908、及び、入出力インタフェース909を備え、これらの構成がバス906(通信線)を介して接続された一般的なコンピュータである。入出力インタフェース909は、例えば、キーボード等の入力装置、モニタ等の出力装置を含む。尚、図2は、仮想マシン管理装置1がこれらの構成要素を1つずつ備えた例を示しているが、仮想マシン管理装置1がこれらの構成要素を複数備える場合もある。   As shown in FIG. 2, the virtual machine management apparatus 1 includes a CPU (Central_Processing_Unit) 901, a ROM (Read_Only_Memory) 902, a RAM (Random_Access_Memory) 903, a hard disk 904 (storage device), and a communication interface 905 (Interface: hereinafter referred to as “Interface”). A reader / writer 908 capable of reading and writing data stored in a storage medium 907 such as a CD-ROM (Compact_Disc_Read_Only_Memory), and an input / output interface 909, and the configuration thereof is a bus 906 (communication A general computer connected via a line). The input / output interface 909 includes, for example, an input device such as a keyboard and an output device such as a monitor. FIG. 2 shows an example in which the virtual machine management device 1 includes one of these components, but the virtual machine management device 1 may include a plurality of these components.

そして、仮想マシン管理装置1は、ハイパーバイザ10、及び、ゲストOS20−1乃至nをコンピュータプログラムとして提供されたのち、そのコンピュータプログラムを、当該ハードウェアのCPU901に読み出して解釈し実行する。また、係るコンピュータプログラムは、読み書き可能な揮発性の記憶メモリ(RAM903)またはハードディスク904等の不揮発性の記憶デバイスに格納すれば良い。   Then, the virtual machine management device 1 is provided with the hypervisor 10 and the guest OSs 20-1 to 20-n as computer programs, and then reads the computer programs into the CPU 901 of the hardware, interprets them, and executes them. The computer program may be stored in a volatile storage memory (RAM 903) that can be read and written or a nonvolatile storage device such as the hard disk 904.

また、前記の場合において、当該ハードウェア内へのコンピュータプログラムの供給方法は、CD−ROM等の各種記憶媒体907を介して当該装置内にインストールする方法や、インターネット等の通信回線を介して外部よりダウンロードする方法等のように、現在では一般的な手順を採用することができる。そして、このような場合において、本発明は、係るコンピュータプログラムを構成するコード或いは、そのコードが格納された記憶媒体907によって構成されると捉えることができる。   In the above-described case, the computer program can be supplied to the hardware by a method of installing in the apparatus via various storage media 907 such as a CD-ROM, or an external method via a communication line such as the Internet. A general procedure can be adopted at present, such as a method of downloading more. In such a case, it can be understood that the present invention is configured by a code constituting the computer program or a storage medium 907 in which the code is stored.

ゲストOS20−1乃至nは、それぞれ、採取ログ設定処理21−1乃至n、ログ採取処理22−1乃至n、及び、ログ読み出し処理23−1乃至nを実行する。   The guest OSs 20-1 to 20-n execute collection log setting processing 21-1 to n, log collection processing 22-1 to n, and log reading processing 23-1 to n, respectively.

採取ログ設定処理21−i(iは1乃至nの何れかの整数)は、ゲストOS20−iを使用するユーザに対して、モニタ画面等を通して、採取可能なログの種別に関する一覧情報を提示する。係る一覧情報としては、例えば、所定のログを採取するコマンド名一覧などがある。採取ログ設定処理21−iは、係るログの種別に関する一覧情報から、ユーザが選択した種別のログを採取することを指示する情報であるログ採取命令を、ハイパーバイザ10へ入力する。係るログ採取命令は、採取するログの種別を識別可能な識別子、及び、当該ログ採取命令を発行したゲストOS20−iを識別する識別子を包含している。   The collection log setting process 21-i (i is an integer from 1 to n) presents list information regarding the types of logs that can be collected to the user using the guest OS 20-i through a monitor screen or the like. . Such list information includes, for example, a list of command names for collecting predetermined logs. The collection log setting process 21-i inputs a log collection instruction, which is information for instructing collection of a log of the type selected by the user, from the list information regarding the type of the log to the hypervisor 10. The log collection command includes an identifier that can identify the type of log to be collected, and an identifier that identifies the guest OS 20-i that issued the log collection command.

ログ採取処理22−iは、ゲストOS20−iを使用するユーザ、あるいは、ハイパーバイザ10から指示された内容に基づき、ゲストOS20−iにおいて採取することが可能なログを採取する。ゲストOS20−iにおいて採取できるログとしては、UNIX(登録商標)系OSにおいて利用可能な“ps”、“top”、“sar”コマンド等の各種性能ツールが採取するログ、及び、“procfs”、“sysfs”等の疑似ファイルシステムに関するログなどがある。   The log collection process 22-i collects a log that can be collected by the guest OS 20-i based on the user using the guest OS 20-i or the content instructed by the hypervisor 10. Logs that can be collected in the guest OS 20-i include logs collected by various performance tools such as “ps”, “top”, and “sar” commands that can be used in a UNIX (registered trademark) OS, and “procs”, There is a log related to a pseudo file system such as “sysfs”.

ログ採取処理22−iは、採取したログを、ハイパーバイザ10により生成された共有バッファに格納する。係る共有バッファは、ゲストOS20−1乃至n、及び、ハイパーバイザ10からアクセス可能なバッファであり、例えば、図2に示す仮想マシン管理装置1におけるRAM903の一部領域を使用する。   The log collection process 22-i stores the collected log in the shared buffer generated by the hypervisor 10. The shared buffer is a buffer accessible from the guest OSs 20-1 to 20-n and the hypervisor 10, and uses, for example, a partial area of the RAM 903 in the virtual machine management apparatus 1 shown in FIG.

ログ読み出し処理23−iは、係る共有バッファから、採取されたログを読み出して、係るログの内容を、ゲストOS20−iに関する情報を出力するモニタ等の出力装置へ出力する。   The log reading process 23-i reads the collected log from the shared buffer, and outputs the content of the log to an output device such as a monitor that outputs information related to the guest OS 20-i.

ハイパーバイザ10は、指示処理11、割り当て処理12、算出処理13、採取ログ管理情報生成処理14、及び、ログ採取処理18を実行する。尚、指示処理11、割り当て処理12、算出処理13、採取ログ管理情報生成処理14、及び、ログ採取処理18は、専用のHW(ハードウェア)(電子回路)によっても実現することが可能である。すなわち、ハイパーバイザ10は、これらの処理と同等の機能を有するHWである、指示部、割り当て部、算出部、採取ログ管理情報生成部、及び、ログ採取部を備えたHWであってもよい。   The hypervisor 10 executes an instruction process 11, an allocation process 12, a calculation process 13, a collection log management information generation process 14, and a log collection process 18. The instruction process 11, the allocation process 12, the calculation process 13, the collection log management information generation process 14, and the log collection process 18 can be realized by a dedicated HW (hardware) (electronic circuit). . That is, the hypervisor 10 may be an HW having a function equivalent to these processes, and including an instruction unit, an allocation unit, a calculation unit, a collection log management information generation unit, and a log collection unit. .

ハイパーバイザ10は、仮想マシン管理装置1が備える競合リソース管理情報記憶部15に、競合リソース管理情報150を記憶する。ハイパーバイザ10は、仮想マシン管理装置1が備えるリソース割り当て情報記憶部16に、リソース割り当て情報160を記憶する。ハイパーバイザ10は、仮想マシン管理装置1が備える採取ログ管理情報記憶部17に、採取ログ管理情報170を記憶する。尚、仮想マシン管理装置1は、競合リソース管理情報記憶部15、リソース割り当て情報記憶部16、及び、採取ログ管理情報記憶部17を、図2に示すRAM903、あるいは、ハードディスク904の中に備える。   The hypervisor 10 stores the competing resource management information 150 in the competing resource management information storage unit 15 included in the virtual machine management device 1. The hypervisor 10 stores the resource allocation information 160 in the resource allocation information storage unit 16 included in the virtual machine management device 1. The hypervisor 10 stores the collection log management information 170 in the collection log management information storage unit 17 included in the virtual machine management apparatus 1. The virtual machine management device 1 includes the competing resource management information storage unit 15, the resource allocation information storage unit 16, and the collection log management information storage unit 17 in the RAM 903 or the hard disk 904 shown in FIG.

割り当て処理12は、ゲストOS20−1乃至nを実行する各仮想マシンに対して、仮想マシン管理装置1が備えるリソースを割り当てる。係るリソースは、具体的には、図2に示す、仮想マシン管理装置1が備える構成要素である。割り当て処理12は、各仮想マシンに対してリソースを割り当てた結果を、リソース割り当て情報160として、リソース割り当て情報記憶部16に格納する。割り当て処理12は、仮想マシン管理装置1においてシステム構成等に関する変更が生じた場合、必要に応じて、リソース割り当て情報160を更新する。   The allocation process 12 allocates the resources included in the virtual machine management apparatus 1 to each virtual machine that executes the guest OSs 20-1 to 20-n. Specifically, the resource is a component included in the virtual machine management apparatus 1 illustrated in FIG. The assignment process 12 stores the result of assigning resources to each virtual machine in the resource assignment information storage unit 16 as resource assignment information 160. The allocation process 12 updates the resource allocation information 160 as necessary when a change related to the system configuration or the like occurs in the virtual machine management apparatus 1.

本実施形態に係るリソース割り当て情報160の構成例を、図4に例示する。図4に示す通り、リソース割り当て情報160は、ゲストID161、リソースタイプ162、仮想リソース163、物理リソース164、及び、リソース割り当て量165を関連付けたレコードを包含している。   An example of the configuration of the resource allocation information 160 according to this embodiment is illustrated in FIG. As shown in FIG. 4, the resource allocation information 160 includes a record in which a guest ID 161, a resource type 162, a virtual resource 163, a physical resource 164, and a resource allocation amount 165 are associated.

ゲストID161は、ゲストOS20−1乃至nを識別可能な識別子である。図4に示す例の場合、ゲストID161が示すGuest1乃至3は、それぞれ、ゲストOS20−1乃至3を識別可能な識別子である。   The guest ID 161 is an identifier that can identify the guest OSs 20-1 to 20-n. In the example illustrated in FIG. 4, Guest 1 to 3 indicated by the guest ID 161 are identifiers that can identify the guest OSs 20-1 to 20-3, respectively.

リソースタイプ162は、当該レコードが、どのようなリソースに関する情報であるかを示す情報であり、例えば、CPUに関する情報である場合は“Cpu”、メモリに関する情報である場合は“Mem”、ディスクに関する情報である場合は、“Disk”となる。尚、図4には、便宜上、CPU、メモリ、及び、ディスクに関するレコードのみを示しているが、リソース割り当て情報160は、実際には、入出力インタフェース及びネットワークインタフェース等のリソースに関するレコードも包含している。   The resource type 162 is information indicating what kind of resource the record is, for example, “Cpu” when it is information about the CPU, “Mem” when it is information about the memory, and information about the disk. If it is information, it is “Disk”. Note that FIG. 4 shows only records related to the CPU, memory, and disk for convenience, but the resource allocation information 160 actually includes records related to resources such as input / output interfaces and network interfaces. Yes.

仮想リソース163は、ゲストOS20−1乃至nに割り当てられた仮想リソースを識別可能な識別子である。図4に示す例の場合、各仮想マシンが1つのゲストOSを実行している状態であり、ゲストOSごとに、CPU、メモリ、及び、ディスクに関して、異なる仮想リソースが割り当てられている。   The virtual resource 163 is an identifier that can identify the virtual resources allocated to the guest OSs 20-1 to 20-n. In the case of the example shown in FIG. 4, each virtual machine is executing one guest OS, and different virtual resources are assigned to the guest OS for the CPU, memory, and disk.

物理リソース164は、ゲストOS20−1乃至nに割り当てられた物理リソースを識別可能な識別子である。図4に示す例の場合、CPUに関しては、ゲストOS20−1及びゲストOS20−3が、同じ物理リソースであるCpu0を割り当てられている。また、メモリに関しては、ゲストOS20−1及びゲストOS20−2が、同じ物理リソースであるMem0が割り当てられている。   The physical resource 164 is an identifier that can identify the physical resource allocated to the guest OSs 20-1 to 20-n. In the case of the example shown in FIG. 4, regarding the CPU, the guest OS 20-1 and the guest OS 20-3 are assigned the same physical resource Cpu0. As for the memory, Mem0, which is the same physical resource, is allocated to the guest OS 20-1 and the guest OS 20-2.

リソース割り当て量165は、ゲストOS20−1乃至nに割り当てられた物理リソースに関する割り当て量を示している。リソース割り当て量165は、CPUに関してはCPU使用率により、メモリ及びディスクに関しては記憶容量により、係る割り当て量を示している。図4に示す例の場合、ゲストOS20−1に対しては、Cpu0に関する50%のCPU使用率、Mem0に関する2GB(ギガバイト)の記憶領域、及び、Sdaに関する20GBの記憶領域が割り当てられている。尚、リソース割り当て情報160は、CPU使用率及び記憶容量とは異なる基準を用いて、リソース割り当て量165を示してもよい。   The resource allocation amount 165 indicates an allocation amount related to physical resources allocated to the guest OSs 20-1 to 20-n. The resource allocation amount 165 indicates the allocation amount based on the CPU usage rate for the CPU and the storage capacity for the memory and the disk. In the case of the example shown in FIG. 4, a 50% CPU usage rate for Cpu0, a 2 GB (gigabyte) storage area for Mem0, and a 20 GB storage area for Sda are allocated to the guest OS 20-1. Note that the resource allocation information 160 may indicate the resource allocation amount 165 using a standard different from the CPU usage rate and the storage capacity.

割り当て処理12は、リソース割り当て情報160に基づき、競合リソース管理情報150を生成して、競合リソース管理情報150を、競合リソース管理情報記憶部15に格納する。   The allocation process 12 generates contention resource management information 150 based on the resource allocation information 160 and stores the contention resource management information 150 in the contention resource management information storage unit 15.

本実施形態に係る競合リソース管理情報150の構成例を、図5に例示する。図5に示す通り、競合リソース管理情報150は、競合リソースタイプ151、及び、リソース競合関係ゲストID152を関連付けたレコードを包含している。   An example of the configuration of the contention resource management information 150 according to this embodiment is illustrated in FIG. As shown in FIG. 5, the conflicting resource management information 150 includes a record in which a conflicting resource type 151 and a resource conflicting guest ID 152 are associated with each other.

競合リソースタイプ151は、リソース割り当て情報160におけるリソースタイプ162と同様に、当該レコードが、どのようなリソースに関する情報であるかを示す情報である。   Similar to the resource type 162 in the resource allocation information 160, the contention resource type 151 is information indicating what resource the record is related to.

リソース競合関係ゲストID152は、競合リソースタイプ151が示すリソースに関して、ゲストOS20−1乃至nの何れかが競合しているかを示す情報である。図4におけるリソース割り当て情報160が示す通り、ゲストOS20−1及びゲストOS20−3は、同じ物理リソースであるCpu0を割り当てられている。したがって、CPUに関して、ゲストOS20−1及びゲストOS20−3が競合することになるため、競合リソースタイプ151が示す値が“Cpu”であるレコードにおけるリソース競合関係ゲストID152は、“Guest1,Guest3”を示している。競合リソース管理情報150は、同様に、メモリに関しては、ゲストOS20−1及びゲストOS20−2が競合し、ディスクに関しては、ゲストOS20−1乃至3が競合することを示している。   The resource conflict guest ID 152 is information indicating whether any of the guest OSs 20-1 to 20-n is competing for the resource indicated by the conflict resource type 151. As the resource allocation information 160 in FIG. 4 indicates, the guest OS 20-1 and the guest OS 20-3 are allocated the same physical resource Cpu0. Therefore, since the guest OS 20-1 and the guest OS 20-3 compete for the CPU, the resource competition relation guest ID 152 in the record whose value indicated by the contention resource type 151 is “Cpu” is “Guest1, Guest3”. Show. Similarly, the conflicting resource management information 150 indicates that the guest OS 20-1 and the guest OS 20-2 compete for the memory, and the guest OSs 20-1 to 20-3 compete for the disk.

割り当て処理12は、ゲストOS20−iがハイパーバイザ10に入力したログ採取命令を、指示処理11を経由して入手する。割り当て処理12は、指示処理11が係るログ採取命令が示す情報を基にログ採取を依頼する依頼先として決定したゲストOS20−j(jは1乃至nの少なくとも1つ以上の整数)を識別可能な識別子を、指示処理11から入手する。割り当て処理12は、ゲストOS20−jが係るログ採取命令を実行する際に必要となるリソースの量が示す値を、算出処理13から入手する。割り当て処理11は、算出部13から入手したリソースの量が示す値分のリソースを、係るログ採取命令を発行したゲストOS20−iに割り当てていたリソースから切り出す。そして、割り当て処理12は、ゲストOS20−iに割り当てていたリソースからから切り出したリソースを、ゲストOS20−jに対して割り当てる。   The allocation process 12 obtains the log collection command input to the hypervisor 10 by the guest OS 20-i via the instruction process 11. The allocation process 12 can identify the guest OS 20-j (j is an integer of at least one of 1 to n) determined as a request destination to request log collection based on the information indicated by the log collection command related to the instruction process 11 A unique identifier is obtained from the instruction process 11. The allocation process 12 obtains a value indicating the amount of resources required when the guest OS 20-j executes the log collection command from the calculation process 13. The allocation process 11 cuts out the resources corresponding to the value indicated by the amount of resources obtained from the calculation unit 13 from the resources allocated to the guest OS 20-i that issued the log collection command. Then, the assignment process 12 assigns a resource cut out from the resource assigned to the guest OS 20-i to the guest OS 20-j.

算出処理13は、ゲストOS20−iがハイパーバイザ10に入力したログ採取命令を、指示処理11を経由して入手する。算出処理13は、係るログ採取命令が包含する、採取するログの種別を、採取ログ管理情報記憶部17に格納された採取ログ管理情報170と照合する。   The calculation process 13 obtains the log collection command input to the hypervisor 10 by the guest OS 20-i via the instruction process 11. The calculation process 13 collates the type of log to be collected included in the log collection command with the collection log management information 170 stored in the collection log management information storage unit 17.

本実施形態に係る採取ログ管理情報170の構成例を、図6に例示する。図6に示す通り、採取ログ管理情報170は、採取ログ171、ログ採取コスト172、リソースタイプ173、及び、ログ採取対象174を関連付けたレコードを包含している。   A configuration example of the collection log management information 170 according to this embodiment is illustrated in FIG. As illustrated in FIG. 6, the collection log management information 170 includes a record that associates the collection log 171, the log collection cost 172, the resource type 173, and the log collection target 174.

採取ログ171は、採取するログの内容を識別可能な識別子である。本実施形態に係る採取ログ管理情報170は、採取ログ171として、UNIX系OSにおけるログを採取するコマンドの名称である“sar”、“iostat”、及び、“netstat”等を示している。   The collection log 171 is an identifier that can identify the contents of the collected log. The collection log management information 170 according to the present embodiment indicates, as the collection log 171, “sar”, “iostat”, “netstat”, and the like, which are names of commands for collecting logs in the UNIX OS.

ログ採取コスト172は、ゲストOS20−1乃至nあるいはハイパーバイザ10が、当該レコードにおける採取ログ171が示すログを採取する場合に、使用するリソースの量を示した情報である。図6に示す例の場合、例えば、“sar”コマンドは、CPU使用率1%分と、メモリ使用量5MB(メガバイト)分のリソースを使用することを示している。   The log collection cost 172 is information indicating the amount of resources used when the guest OS 20-1 to n or the hypervisor 10 collects the log indicated by the collection log 171 in the record. In the case of the example illustrated in FIG. 6, for example, the “sar” command indicates that a resource corresponding to a CPU usage rate of 1% and a memory usage amount of 5 MB (megabytes) is used.

リソースタイプ173は、採取ログ171が示すログが、どのようなリソースに関するログであるかを示す情報である。例えば、“sar”コマンドは、システム全般に関する性能情報を採取するコマンドであるため、採取ログ171が“sar”であるレコードにおけるリソースタイプ173は、“System”と示している。また、“iostat”コマンドは、ディスクに関する性能情報を採取するコマンドであるため、採取ログ171が“iostat”であるレコードにおけるリソースタイプ173は、“Disk”と示している。   The resource type 173 is information indicating what kind of resource the log indicated by the collection log 171 is. For example, since the “sar” command is a command for collecting performance information related to the entire system, the resource type 173 in the record whose collection log 171 is “sar” is indicated as “System”. Further, since the “iostat” command is a command for collecting performance information about the disk, the resource type 173 in the record whose collection log 171 is “iostat” is indicated as “Disk”.

ログ採取対象174は、採取ログ171が示すログが、ゲストOS20−1乃至nにより採取されるのか、あるいは、ハイパーバイザ10により採取されるのかを示す情報である。   The log collection target 174 is information indicating whether the log indicated by the collection log 171 is collected by the guest OSs 20-1 to 20-n or by the hypervisor 10.

算出処理13は、係るログ採取命令が、例えば、“sar”コマンドによるログを採取することを指示している場合、採取ログ171が“sar”であるレコードにおけるログ採取コスト172が示す情報を、割り当て処理12へ入力する。したがってこの場合、算出処理13は、ゲストOS20−jが係るログ採取命令が指示したログを採取する際に、CPU使用率1%分と、メモリ使用量5MB(メガバイト)分のリソースを使用することを、割り当て処理12へ入力する。   For example, when the log collection instruction instructs to collect a log by the “sar” command, the calculation processing 13 indicates the information indicated by the log collection cost 172 in the record in which the collection log 171 is “sar”. Input to the allocation process 12. Therefore, in this case, the calculation process 13 uses resources corresponding to the CPU usage rate of 1% and the memory usage amount of 5 MB (megabytes) when collecting the log instructed by the log collection command related to the guest OS 20-j. Is input to the allocation process 12.

指示処理11は、ゲストOS20−iからハイパーバイザ10に入力されたログ採取命令が包含する採取するログの種別を識別可能な識別子を、採取ログ管理情報170における採取ログ171と照合する。指示処理11は、係るログ採取命令が包含する採取するログの種別を識別可能な識別子と値が等しい採取ログ171を包含するレコードにおけるリソースタイプ173が示す値を、競合リソース管理情報150における競合リソースタイプ151と照合する。そして、指示処理11は、競合リソースタイプ151が示す値がリソースタイプ173が示す値と関連する値であるレコードにおけるリソース競合関係ゲストID152が示す値を基に、ログ採取を依頼する依頼先であるゲストOS20−jを決定する。指示処理11は、また、係るログ採取命令が包含する採取するログの種別を識別可能な識別子と値が等しい採取ログ171を包含するレコードにおけるログ採取対象174が示す値が“ハイパーバイザ”を包含する場合は、ログ採取を依頼する依頼先を、ハイパーバイザ10とする。   The instruction process 11 collates an identifier that can identify the type of log to be collected included in the log collection command input to the hypervisor 10 from the guest OS 20-i with the collection log 171 in the collection log management information 170. The instruction processing 11 uses the value indicated by the resource type 173 in the record including the collection log 171 whose value is equal to the identifier that can identify the type of log to be collected included in the log collection command, as the contention resource in the contention resource management information 150. Match with type 151. The instruction process 11 is a request destination for requesting log collection based on the value indicated by the resource competition guest ID 152 in the record in which the value indicated by the conflict resource type 151 is a value related to the value indicated by the resource type 173. The guest OS 20-j is determined. The instruction process 11 also includes the value “Hypervisor” as the value indicated by the log collection target 174 in the record including the collection log 171 whose value is equal to the identifier that can identify the type of log to be collected included in the log collection command. In this case, the hypervisor 10 is the request destination for requesting log collection.

例えば、ゲストOS20−1からハイパーバイザ10に入力されたログ採取命令が包含する採取するログの種別が“sar”コマンドにより採取されるログである場合を考える。この場合、指示処理11は、採取ログ管理情報170を参照し、採取ログ171が示す値が“sar”であるレコードにおけるリソースタイプ173が示す値が“System”であり、ログ採取対象174が示す値が“ゲストOS”であることを確認する。   For example, consider a case where the type of log to be collected included in the log collection command input to the hypervisor 10 from the guest OS 20-1 is a log collected by the “sar” command. In this case, the instruction process 11 refers to the collection log management information 170, the value indicated by the resource type 173 in the record whose value indicated by the collection log 171 is “sar” is “System”, and the log collection target 174 indicates Confirm that the value is “Guest OS”.

指示処理11は、リソースタイプ173が示す値が“System”であることから、競合リソース管理情報150における競合リソースタイプ151が示す値が“Cpu”、“Mem”、及び、“Disk”であるレコードにおける、リソース競合関係ゲストID152が示す値を確認する。この場合、ゲストOS20−1とリソースが競合するゲストOSは、ゲストOS20−2乃至3であるため、指示処理11は、ゲストOS20−2乃至3を、ログ採取を依頼する依頼先に決定する。   In the instruction processing 11, since the value indicated by the resource type 173 is “System”, the value indicated by the contention resource type 151 in the contention resource management information 150 is “Cpu”, “Mem”, and “Disk”. The value indicated by the resource competition guest ID 152 is confirmed. In this case, since the guest OSs whose resources compete with the guest OS 20-1 are the guest OSs 20-2 to 3, the instruction process 11 determines the guest OSs 20-2 to 3 as request destinations for requesting log collection.

指示処理11は、ログ採取を依頼する依頼先として決定したゲストOS20−jを識別可能な識別子、及び、ゲストOS20−iが発行したログ採取命令を、割り当て処理12、及び、算出処理13へ入力する。そして、指示処理11は、ゲストOS20−jに対して、係るログ採取命令が指定するログ採取を指示する。   The instruction process 11 inputs an identifier that can identify the guest OS 20-j determined as a request destination for log collection and a log collection command issued by the guest OS 20-i to the allocation process 12 and the calculation process 13. To do. Then, the instruction process 11 instructs the guest OS 20-j to collect a log specified by the log collection command.

採取ログ管理情報生成処理14は、ゲストOS20−1乃至nの何れか、あるいは、ハイパーバイザ10が特定のログを採取した際に使用したリソースの量を計測する。係るリソースの量に関する計測結果としては、ログを採取するために要したCPU使用率、あるいは、採取したログをメモリに格納するために要したメモリ容量などがある。採取ログ管理情報生成処理14は、その計測結果をログ採取コスト172が示す値とする。採取ログ管理情報生成処理14は、係る特定のログに関する採取ログ171と、リソースタイプタイプ173と、ログ採取対象174とを、ログ採取コスト172と関連付けたレコードを、採取ログ管理情報170におけるレコードとして、採取ログ管理情報記憶部17に格納する。   The collection log management information generation process 14 measures the amount of resources used when any one of the guest OSs 20-1 to 20-n or the hypervisor 10 collects a specific log. The measurement result related to the amount of the resource includes the CPU usage rate required for collecting the log or the memory capacity required for storing the collected log in the memory. The collection log management information generation process 14 sets the measurement result to a value indicated by the log collection cost 172. The collection log management information generation process 14 uses, as a record in the collection log management information 170, a record in which the collection log 171 related to the specific log, the resource type type 173, and the log collection target 174 are associated with the log collection cost 172. And stored in the collection log management information storage unit 17.

ログ採取処理18は、ゲストOS20−iを使用するユーザ、あるいは、ハイパーバイザ10から指示された内容に基づき、ハイパーバイザ10において採取することが可能なログを採取する。ハイパーバイザ10において採取できるログとしては、ハイパーバイザ10内で発生する仮想化関連のイベントに関するログがある。ログ採取処理18は、採取したログを、ハイパーバイザ10により生成された共有バッファに格納する。   The log collection process 18 collects logs that can be collected by the hypervisor 10 based on the contents of the user using the guest OS 20-i or the instruction from the hypervisor 10. Examples of logs that can be collected in the hypervisor 10 include logs related to virtualization-related events that occur in the hypervisor 10. The log collection process 18 stores the collected log in the shared buffer generated by the hypervisor 10.

次に図2A乃至2Bのフローチャートを参照して、本実施形態に係る仮想マシン管理装置1の動作(処理)について詳細に説明する。   Next, the operation (processing) of the virtual machine management apparatus 1 according to the present embodiment will be described in detail with reference to the flowcharts of FIGS. 2A to 2B.

採取ログ設定処理21−iは、ゲストOS20−iにおいて、ユーザが入力した、収集するログの種別を指定するログ採取命令を受け付けて、係るログ採取命令を、ハイパーバイザ10へ入力する(ステップS101)。指示処理11は、係るログ採取命令を、競合リソース管理情報150及び採取ログ管理情報170と照合することにより、ログ採取を依頼するゲストOS20−jを決定し、ゲストOS20−jを識別可能な識別子、及び、ログ採取命令を、割り当て処理12、及び、算出処理13へ入力する(ステップS102)。   The collection log setting process 21-i accepts a log collection instruction specifying the type of log to be collected, which is input by the user, in the guest OS 20-i, and inputs the log collection instruction to the hypervisor 10 (step S101). ). The instruction processing 11 determines the guest OS 20-j that requests log collection by comparing the log collection command with the conflicting resource management information 150 and the collection log management information 170, and can identify the guest OS 20-j. The log collection command is input to the allocation process 12 and the calculation process 13 (step S102).

算出処理13は、ログ採取コストが示す値を、割り当て処理12へ入力する。係るログ採取コストが示す値は、算出処理13が、係るログ採取命令が包含する、収集するログの種別を、採取ログ管理情報170と照合することによって算出した値である(ステップS103)。割り当て処理12は、算出処理13から入力されたログ採取コストが示す値が示すリソースを、ゲストOS20−iに割り当てていたリソースから切り出す(ステップS104)。割り当て処理12は、指示処理11から識別子を入力されたゲストOS20−jに対して、ゲストOS20−iから切り出したリソースを、割り当てる(ステップS105)。   The calculation process 13 inputs the value indicated by the log collection cost to the allocation process 12. The value indicated by the log collection cost is a value calculated by the calculation process 13 by collating the type of log to be collected included in the log collection command with the collection log management information 170 (step S103). The allocation process 12 cuts out the resource indicated by the value indicated by the log collection cost input from the calculation process 13 from the resources allocated to the guest OS 20-i (step S104). The allocation process 12 allocates the resource cut out from the guest OS 20-i to the guest OS 20-j to which the identifier is input from the instruction process 11 (step S105).

指示処理11は、ゲストOS20−jに対して、ログ採取命令が指定するログ採取を指示する(ステップS106)。ログ採取処理22−jは、ゲストOS20−jにおいて、指定されたログを採取し、採取したログを、ハイパーバイザ10により生成された共有バッファに格納する(ステップS107)。ログ読み出し処理23−iは、共有バッファから、採取されたログを読み出して、係るログの内容を、ゲストOS20−iに関する情報を出力するモニタ等の出力装置へ出力し(ステップS108)、全体の処理は終了する。   The instruction process 11 instructs the guest OS 20-j to collect a log specified by the log collection command (step S106). The log collection process 22-j collects the designated log in the guest OS 20-j and stores the collected log in the shared buffer generated by the hypervisor 10 (step S107). The log reading process 23-i reads the collected log from the shared buffer and outputs the contents of the log to an output device such as a monitor that outputs information on the guest OS 20-i (step S108). The process ends.

本実施形態に係る仮想マシン管理装置1は、特定の仮想マシンからの指示にしたがって、他の仮想マシンがログ情報を採取する際に、係る他の仮想マシンが本来行う処理に影響が出ないようにすることができる。その理由は、指示処理11がゲストOS20−iからの依頼に基づいてログ採取を依頼する依頼先として決定したゲストOS20−jに対して、割り当て処理12が、係るログ採取を行うために必要となるリソースを、追加して割り当てるからである。   The virtual machine management device 1 according to the present embodiment does not affect processing originally performed by another virtual machine when the other virtual machine collects log information in accordance with an instruction from the specific virtual machine. Can be. The reason is that the allocation process 12 is necessary for the instruction processing 11 to perform log collection for the guest OS 20-j determined as a request destination for requesting log collection based on a request from the guest OS 20-i. This is because a resource to be added is allocated.

複数の仮想マシンが構築されたシステムにおいては、仮想マシン間においてCPUあるいはメモリ等のリソースを共有することにより、性能問題が発生することがある。この場合、特定の仮想マシンを使用するユーザは、自分が使用する仮想マシンにおいて採取できるログ情報のみからでは、性能問題を十分に解析することができないため、他の仮想マシンあるいはハイパーバイザにログ情報の採取を依頼する。ログ情報の採取を依頼された他の仮想マシンは、係る依頼に従い、割り当てられているリソースの一部を使用して、ログ情報を採取する。したがって、この際、係る他の仮想マシンが本来行うべき処理を実行するリソースが一時的に減少することになるため、係る他の仮想マシンが本来行うべき処理に関して影響が出ることになる。   In a system in which a plurality of virtual machines are constructed, performance problems may occur by sharing resources such as a CPU or memory between virtual machines. In this case, a user who uses a specific virtual machine cannot fully analyze performance problems from log information that can be collected from the virtual machine that he or she uses. Request collection. Other virtual machines requested to collect log information collect log information using a part of the allocated resources in accordance with the request. Therefore, at this time, the resource for executing the process that should be originally performed by the other virtual machine is temporarily reduced, and thus the process that should be performed by the other virtual machine is affected.

これに対して、本実施形態に係る仮想マシン管理装置1は、ゲストOS20−iからの依頼に基づいてゲストOS20−jに対してログ採取を依頼する際に、ゲストOS20−jに対して、係るログ採取を行うために必要となるリソースを、追加して割り当てる。したがって、ゲストOS20−jが、追加して割り当てられたリソースを使用してログ採取を行うことにより、仮想マシン管理装置1は、ゲストOS20−jが本来行うべき処理に影響が出ることを回避できる。   On the other hand, when the virtual machine management device 1 according to the present embodiment requests the guest OS 20-j to collect logs based on a request from the guest OS 20-i, Allocate additional resources that are necessary to perform such log collection. Therefore, when the guest OS 20-j performs log collection using the additionally allocated resource, the virtual machine management apparatus 1 can avoid affecting the processing that the guest OS 20-j should originally perform. .

本実施形態においては、割り当て処理12は、ゲストOS20−jに追加して割り当てる分のリソースを、ゲストOS20−iに割り当てられていたリソースから切り出しているが、未使用状態であるリソースが存在する場合は、係る未使用状態であるリソースの少なくとも一部を切り出してもよい。これにより、仮想マシン管理装置1は、ゲストOS20−jに加えてゲストOS20−iに対しても影響を与えることなく、ゲストOS20−jがログ採取を行うようにすることができる。   In this embodiment, the allocation process 12 cuts out the resources allocated to the guest OS 20-j from the resources allocated to the guest OS 20-i, but there are resources that are not in use. In this case, at least a part of the resource that is not in use may be cut out. Thereby, the virtual machine management apparatus 1 can cause the guest OS 20-j to collect logs without affecting the guest OS 20-i in addition to the guest OS 20-j.

また、本実施形態に係る割り当て処理12は、リソース割り当て情報160を基に、ゲストOS20−1乃至nの中で、特定のリソースに関して競合状態にあるゲストOS同士を関連付けることにより、競合リソース管理情報150を生成する。したがって、本実施形態に係る仮想マシン管理装置1では、ユーザが、競合リソース管理情報150を作成する必要がないため、ユーザの負担を軽減することができる。   In addition, the allocation processing 12 according to the present embodiment associates the guest OSs in a competition state with respect to a specific resource among the guest OSs 20-1 to 20 -n based on the resource allocation information 160, so 150 is generated. Therefore, in the virtual machine management device 1 according to the present embodiment, the user does not need to create the competing resource management information 150, so the burden on the user can be reduced.

また、本実施形態に係る指示処理11は、ゲストOS20−iから入力されたログ採取命令を、競合リソース管理情報150及び採取ログ管理情報170と照合する。これにより、指示処理11は、ログ採取命令が採取を指示するログ情報に関係してリソースがゲストOS20−iと競合するゲストOS20−jを選び出すことができる。したがって、本実施形態に係る仮想マシン管理装置1では、ゲストOS20−iを使用するユーザが、ゲストOS20−jを指定する必要がないため、ユーザの負担を軽減することができる。   Further, the instruction processing 11 according to the present embodiment collates the log collection command input from the guest OS 20-i with the conflicting resource management information 150 and the collection log management information 170. As a result, the instruction process 11 can select the guest OS 20-j whose resource competes with the guest OS 20-i in relation to the log information instructed by the log collection command. Therefore, in the virtual machine management device 1 according to the present embodiment, the user using the guest OS 20-i does not need to specify the guest OS 20-j, so the burden on the user can be reduced.

さらに、本実施形態に係る算出処理13は、採取ログ管理情報170に基づき、ゲストOS20−jがログ採取命令により指示されたログ採取を行うために必要となるリソースの量を詳細に算出し、算出した結果を割り当て処理12に入力する。したがって、本実施形態に係る仮想マシン管理装置1は、ゲストOS20−jに対してログ採取を行うために必要となるリソースを、効率よく割り当てることができる。尚、本実施形態においては、算出処理13は、採取ログ管理情報170に基づき係るリソースの量を算出しているが、算出処理13が、別の基準を用いて係るリソースの量を算出してもよい。例えば、算出処理13は、仮想マシン管理装置1に関するシステム状態を示す情報等から、所定の算出式を用いて係るリソースの量を算出してもよい。   Furthermore, the calculation processing 13 according to the present embodiment calculates in detail the amount of resources required for the guest OS 20-j to perform log collection instructed by the log collection command based on the collection log management information 170, The calculated result is input to the assignment process 12. Therefore, the virtual machine management apparatus 1 according to the present embodiment can efficiently allocate resources necessary for log collection to the guest OS 20-j. In the present embodiment, the calculation process 13 calculates the amount of the resource based on the collection log management information 170. However, the calculation process 13 calculates the amount of the resource using another criterion. Also good. For example, the calculation process 13 may calculate the amount of the resource by using a predetermined calculation formula from information indicating the system state related to the virtual machine management device 1 or the like.

また、本実施形態に係る採取ログ管理情報生成処理14は、ゲストOS20−1乃至nの何れか、あるいは、ハイパーバイザ10が特定のログを採取した際に使用したリソースの量を計測し、その計測結果に基づき、採取ログ管理情報170を生成する。したがって、本実施形態に係る仮想マシン管理装置1は、算出処理13がリソースの量を算出する際に基準とする値を、より正確に設定することができる。また、仮想マシン管理装置1では、ユーザが採取ログ管理情報170を作成する必要が無いので、ユーザの負担を軽減することができる。   In addition, the collection log management information generation process 14 according to the present embodiment measures the amount of resources used when any of the guest OSs 20-1 to n or the hypervisor 10 collects a specific log. Collection log management information 170 is generated based on the measurement result. Therefore, the virtual machine management device 1 according to the present embodiment can set the reference value when the calculation process 13 calculates the amount of resources more accurately. Further, in the virtual machine management device 1, since the user does not need to create the collection log management information 170, the burden on the user can be reduced.

尚、本実施形態に係る仮想マシン管理装置1が、ゲストOS20−jに対して採取を指示するログ情報は、性能情報に関するログ情報に限定されない。例えば障害が発生したゲストOS−iが他のゲストOSに対して障害ログの採取を要求する場合においても、本実施形態に係る仮想マシン管理装置1は、上述した処理と同様の処理を実行することができる。   Note that the log information that the virtual machine management apparatus 1 according to the present embodiment instructs the guest OS 20-j to collect is not limited to the log information related to the performance information. For example, even when a guest OS-i in which a failure has occurred requests another guest OS to collect a failure log, the virtual machine management device 1 according to the present embodiment performs the same processing as described above. be able to.

<第2の実施形態>
図7は第2の実施形態の仮想マシン管理装置3の構成を概念的に示すブロック図である。
<Second Embodiment>
FIG. 7 is a block diagram conceptually showing the structure of the virtual machine management device 3 of the second embodiment.

本実施形態の仮想マシン管理装置3は、指示部31、及び、割り当て部32を備えている。   The virtual machine management device 3 of this embodiment includes an instruction unit 31 and an allocation unit 32.

指示部31は、情報処理装置が有する、情報処理を実行するリソースを使用して動作し、ログ採取を指示するログ採取命令を受けてログ情報を採取する複数の仮想マシンの中の第1の仮想マシン41から、係るログ採取命令を受け取る。指示部31は、係るログ採取命令にしたがって、所定の基準に基づいて係る複数の仮想マシンの中から第2の仮想マシン42を選択し、第2の仮想マシン42に対して係るログ採取命令を入力する。   The instruction unit 31 operates using a resource that the information processing apparatus has to execute information processing, receives a log collection instruction that instructs log collection, and collects log information in a first virtual machine among a plurality of virtual machines The log collection command is received from the virtual machine 41. The instruction unit 31 selects the second virtual machine 42 from among the plurality of virtual machines based on a predetermined criterion according to the log collection command, and issues the log collection command to the second virtual machine 42. input.

割り当て部32は、指示部31が、第2の仮想マシン42に対して係るログ採取命令を入力したときに、第2の仮想マシン42に対して、係るリソースを追加して割り当てる。   The allocation unit 32 adds and allocates the resource to the second virtual machine 42 when the instruction unit 31 inputs the log collection command to the second virtual machine 42.

本実施形態に係る仮想マシン管理装置3は、特定の仮想マシンからの指示にしたがって、他の仮想マシンがログ情報を採取する際に、係る他の仮想マシンが本来行う処理に影響が出ないようにすることができる。その理由は、指示部31が第1の仮想マシン41からの依頼に基づいてログ採取を依頼する依頼先として決定した第2の仮想マシン42に対して、割り当て部32が、係るログ採取を行うために必要となるリソースを、追加して割り当てるからである。   The virtual machine management apparatus 3 according to the present embodiment does not affect processing originally performed by another virtual machine when the other virtual machine collects log information in accordance with an instruction from the specific virtual machine. Can be. The reason is that the allocating unit 32 performs the log collection for the second virtual machine 42 that is determined as the request destination from which the instruction unit 31 requests log collection based on the request from the first virtual machine 41. This is because the resources necessary for this are added and allocated.

尚、指示部31、及び、割り当て部32は、ソフトウェアプログラムの機能(処理)単位(ソフトウェアモジュール)と捉えることができる。この場合のハードウェア環境は、図2に示した仮想マシン管理装置1と同様である。   The instruction unit 31 and the assigning unit 32 can be regarded as a function (processing) unit (software module) of the software program. The hardware environment in this case is the same as that of the virtual machine management apparatus 1 shown in FIG.

以上、上述した実施形態を模範的な例として本発明を説明した。しかしながら、本発明は、上述した実施形態には限定されない。即ち、本発明は、本発明のスコープ内において、当業者が理解し得る様々な態様を適用することができる。   The present invention has been described above using the above-described embodiment as an exemplary example. However, the present invention is not limited to the above-described embodiment. That is, the present invention can apply various modes that can be understood by those skilled in the art within the scope of the present invention.

1 仮想マシン管理装置
10 ハイパーバイザ
11 指示処理
12 割り当て処理
13 算出処理
14 採取ログ管理情報生成処理
15 競合リソース管理情報記憶部
150 競合リソース管理情報
151 競合リソースタイプ
152 リソース競合関係ゲストID
16 リソース割り当て情報記憶部
160 リソース割り当て情報
161 ゲストID
162 リソースタイプ
163 仮想リソース
164 物理リソース
165 リソース割り当て量
17 採取ログ管理情報記憶部
170 採取ログ管理情報
171 採取ログ
172 ログ採取コスト
173 リソースタイプ
174 ログ採取対象
18 ログ採取処理
20−1乃至n ゲストOS
21−1乃至n 採取ログ設定処理
22−1乃至n ログ採取処理
23−1乃至n ログ読み出し処理
3 仮想マシン管理装置
31 指示部
32 割り当て部
41 第1の仮想マシン
42 第2の仮想マシン
901 CPU
902 ROM
903 RAM
904 ハードディスク
905 通信インタフェース
906 バス
907 記憶媒体
908 リーダライタ
909 入出力インタフェース
DESCRIPTION OF SYMBOLS 1 Virtual machine management apparatus 10 Hypervisor 11 Instruction process 12 Assignment process 13 Calculation process 14 Collection log management information generation process 15 Competing resource management information storage part 150 Competing resource management information 151 Competing resource type 152 Resource competition relation guest ID
16 Resource allocation information storage unit 160 Resource allocation information 161 Guest ID
162 Resource type 163 Virtual resource 164 Physical resource 165 Resource allocation 17 Collection log management information storage 170 Collection log management information 171 Collection log 172 Log collection cost 173 Resource type 174 Log collection target 18 Log collection processing 20-1 to n Guest OS
21-1 to n Collection log setting processing 22-1 to n Log collection processing 23-1 to n Log read processing 3 Virtual machine management device 31 Instruction unit 32 Allocation unit 41 First virtual machine 42 Second virtual machine 901 CPU
902 ROM
903 RAM
904 Hard disk 905 Communication interface 906 Bus 907 Storage medium 908 Reader / writer 909 Input / output interface

Claims (10)

情報処理装置が有する、情報処理を実行するリソースを使用して動作し、ログ採取を指示するログ採取命令を受けてログ情報を採取する複数の仮想マシンの中の第一の仮想マシンからの前記ログ採取命令に従い、所定の基準に基づいて前記複数の仮想マシンの中から第二の仮想マシンを選択し、前記第二の仮想マシンに対して前記ログ採取命令を入力する指示手段と、
前記指示手段が、前記第二の仮想マシンに対して前記ログ採取命令を入力したときに、前記第二の仮想マシンに対して、前記リソースを追加して割り当てる割り当て手段と、
を備える仮想マシン管理装置。
The information processing apparatus operates using a resource for executing information processing, receives the log collection command for instructing log collection, and collects log information from the first virtual machine among the plurality of virtual machines. In accordance with a log collection instruction, an instruction means for selecting a second virtual machine from the plurality of virtual machines based on a predetermined criterion and inputting the log collection instruction to the second virtual machine;
When the instruction means inputs the log collection command to the second virtual machine, an assigning means for additionally assigning the resource to the second virtual machine;
A virtual machine management device.
前記割り当て手段は、前記第一の仮想マシンに割り当てていた前記リソースの一部を、前記第二の仮想マシンに対して割り当てる、
請求項1に記載の仮想マシン管理装置。
The assigning means assigns a part of the resource assigned to the first virtual machine to the second virtual machine,
The virtual machine management apparatus according to claim 1.
前記ログ採取命令を受けて前記第二の仮想マシンが前記ログ情報を採取するために必要となる前記リソースに関する割り当て量を、所定の基準に基づいて算出する算出手段
をさらに備え、
前記割り当て手段は、前記算出手段が算出した前記割り当て量が示す前記リソースを、前記第二の仮想マシンに対して割り当てる、
請求項1または2に記載の仮想マシン管理装置。
A calculation means for calculating an allocation amount related to the resource necessary for the second virtual machine to collect the log information in response to the log collection command based on a predetermined criterion;
The allocation unit allocates the resource indicated by the allocation amount calculated by the calculation unit to the second virtual machine.
The virtual machine management apparatus according to claim 1 or 2.
採取する前記ログ情報の内容を識別可能な識別子と、当該ログ情報を採取するために必要となる前記割り当て量と、を関連付けた採取ログ管理情報を記憶する採取ログ管理情報記憶手段
をさらに備え、
前記算出手段は、前記ログ採取命令が包含する、採取する前記ログ情報の内容を示す情報を、前記採取ログ管理情報と照合することにより、前記割り当て量を算出する、
請求項3に記載の仮想マシン管理装置。
A collection log management information storage unit for storing collection log management information in which an identifier that can identify the content of the log information to be collected and the allocated amount necessary to collect the log information are associated with each other;
The calculation means calculates the allocated amount by comparing information indicating the content of the log information to be collected included in the log collection instruction with the collection log management information.
The virtual machine management apparatus according to claim 3.
前記仮想マシンが前記ログ情報を採取した際に使用した前記リソースの量を計測し、その計測結果を前記割り当て量とした前記採取ログ管理情報を生成する採取ログ管理情報生成手段をさらに備える、
請求項4に記載の仮想マシン管理装置。
The virtual machine further includes a collection log management information generation unit that measures the amount of the resource used when collecting the log information and generates the collection log management information using the measurement result as the allocated amount.
The virtual machine management apparatus according to claim 4.
同一の前記リソースを共用する2以上の前記仮想マシンを識別可能な識別子同士を関連付けた競合リソース管理情報を記憶する競合リソース管理情報記憶手段をさらに備え、
前記指示手段は、前記競合リソース管理情報において、前記第一の仮想マシンを識別可能な識別子に関連付けられた識別子により識別された仮想マシンを、前記第二の仮想マシンとする、
請求項1乃至5のいずれかに記載の仮想マシン管理装置。
Comprising resource management information storage means for storing contention resource management information in which identifiers capable of identifying two or more virtual machines sharing the same resource are associated with each other;
The instruction means sets the virtual machine identified by the identifier associated with the identifier capable of identifying the first virtual machine in the contention resource management information as the second virtual machine.
The virtual machine management apparatus according to claim 1.
前記競合リソース管理情報記憶手段は、2以上の前記仮想マシンが共用する前記リソースの種別を識別可能な識別子を、当該仮想マシンを識別可能な識別子とさらに関連付けた、前記競合リソース管理情報を記憶し、
前記指示手段は、前記ログ採取命令が包含する、採取する前記ログ情報の内容を示す情報と、前記競合リソース管理情報と、に基づき、前記第二の仮想マシンを選択する、
請求項6に記載の仮想マシン管理装置。
The contention resource management information storage unit stores the contention resource management information in which an identifier capable of identifying the type of the resource shared by two or more virtual machines is further associated with an identifier capable of identifying the virtual machine. ,
The instruction means selects the second virtual machine based on information indicating the content of the log information to be collected included in the log collection command and the contention resource management information.
The virtual machine management apparatus according to claim 6.
前記割り当て手段は、前記仮想マシンを識別可能な識別子と、当該仮想マシンに割り当てた前記リソースを識別可能な識別子と、を関連付けたリソース割り当て情報を生成し、前記リソース割り当て情報に基づき、前記競合リソース管理情報を生成する、
請求項6または7に記載の仮想マシン管理装置。
The allocation unit generates resource allocation information in which an identifier capable of identifying the virtual machine and an identifier capable of identifying the resource allocated to the virtual machine are generated, and based on the resource allocation information, the contention resource Generate management information,
The virtual machine management apparatus according to claim 6 or 7.
第一の情報処理装置によって、
前記第一の情報処理装置あるいは第二の情報処理装置が有する、情報処理を実行するリソースを使用して動作し、ログ採取を指示するログ採取命令を受けてログ情報を採取する複数の仮想マシンの中の第一の仮想マシンからの前記ログ採取命令に従い、所定の基準に基づいて前記複数の仮想マシンの中から第二の仮想マシンを選択し、前記第二の仮想マシンに対して前記ログ採取命令を入力し、
前記第二の仮想マシンに対して前記ログ採取命令を入力したときに、前記第二の仮想マシンに対して、前記リソースを追加して割り当てる、
仮想マシン管理方法。
By the first information processing device
A plurality of virtual machines that operate using resources for executing information processing, and that collect log information in response to a log collection command for instructing log collection of the first information processing apparatus or the second information processing apparatus A second virtual machine is selected from the plurality of virtual machines based on a predetermined criterion in accordance with the log collection command from the first virtual machine in the first virtual machine, and the log for the second virtual machine is selected. Enter the collection command,
When the log collection command is input to the second virtual machine, the resource is added and allocated to the second virtual machine.
Virtual machine management method.
情報処理装置が有する、情報処理を実行するリソースを使用して動作し、ログ採取を指示するログ採取命令を受けてログ情報を採取する複数の仮想マシンの中の第一の仮想マシンからの前記ログ採取命令に従い、所定の基準に基づいて前記複数の仮想マシンの中から第二の仮想マシンを選択し、前記第二の仮想マシンに対して前記ログ採取命令を入力する指示処理と、
前記指示処理が、前記第二の仮想マシンに対して前記ログ採取命令を入力したときに、前記第二の仮想マシンに対して、前記リソースを追加して割り当てる割り当て処理と、
をコンピュータに実行させる、仮想マシン管理プログラム。
The information processing apparatus operates using a resource for executing information processing, receives the log collection command for instructing log collection, and collects log information from the first virtual machine among the plurality of virtual machines. In accordance with a log collection instruction, an instruction process for selecting a second virtual machine from the plurality of virtual machines based on a predetermined criterion and inputting the log collection instruction to the second virtual machine;
When the instruction process inputs the log collection command to the second virtual machine, an allocation process for adding and allocating the resource to the second virtual machine;
A virtual machine management program that causes a computer to execute.
JP2014019115A 2014-02-04 2014-02-04 Virtual machine management device, virtual machine management method, and virtual machine management program Pending JP2015146148A (en)

Priority Applications (1)

Application Number Priority Date Filing Date Title
JP2014019115A JP2015146148A (en) 2014-02-04 2014-02-04 Virtual machine management device, virtual machine management method, and virtual machine management program

Applications Claiming Priority (1)

Application Number Priority Date Filing Date Title
JP2014019115A JP2015146148A (en) 2014-02-04 2014-02-04 Virtual machine management device, virtual machine management method, and virtual machine management program

Publications (1)

Publication Number Publication Date
JP2015146148A true JP2015146148A (en) 2015-08-13

Family

ID=53890342

Family Applications (1)

Application Number Title Priority Date Filing Date
JP2014019115A Pending JP2015146148A (en) 2014-02-04 2014-02-04 Virtual machine management device, virtual machine management method, and virtual machine management program

Country Status (1)

Country Link
JP (1) JP2015146148A (en)

Cited By (2)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
CN109491881A (en) * 2018-11-01 2019-03-19 郑州云海信息技术有限公司 A kind of method, apparatus of collector journal, equipment and readable storage medium storing program for executing
CN110045931A (en) * 2017-11-21 2019-07-23 佳能株式会社 Information processing equipment, information processing method and recording medium

Cited By (4)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
CN110045931A (en) * 2017-11-21 2019-07-23 佳能株式会社 Information processing equipment, information processing method and recording medium
CN110045931B (en) * 2017-11-21 2023-08-08 佳能株式会社 Information processing apparatus, information processing method, and recording medium
CN109491881A (en) * 2018-11-01 2019-03-19 郑州云海信息技术有限公司 A kind of method, apparatus of collector journal, equipment and readable storage medium storing program for executing
CN109491881B (en) * 2018-11-01 2021-10-29 郑州云海信息技术有限公司 Method, device and equipment for collecting logs and readable storage medium

Similar Documents

Publication Publication Date Title
US8826290B2 (en) Method of monitoring performance of virtual computer and apparatus using the method
US10225333B2 (en) Management method and apparatus
JP5400482B2 (en) Management computer, resource management method, resource management program, recording medium, and information processing system
JP4240062B2 (en) Computer system, performance measurement method, and management server device
JP5305626B2 (en) Method and apparatus for managing resources of a central processing unit in a logically partitioned computing environment without accessing shared memory
JP5754440B2 (en) Configuration information management server, configuration information management method, and configuration information management program
WO2012066640A1 (en) Computer system, migration method, and management server
JP4577384B2 (en) Management machine, management system, management program, and management method
WO2009029496A1 (en) Virtualization planning system
US20180176289A1 (en) Information processing device, information processing system, computer-readable recording medium, and information processing method
JP6519111B2 (en) Data processing control method, data processing control program and data processing control device
JP5515889B2 (en) Virtual machine system, automatic migration method and automatic migration program
JP5597293B2 (en) Computer system and program
JP2015146148A (en) Virtual machine management device, virtual machine management method, and virtual machine management program
JP6279816B2 (en) Storage monitoring system and monitoring method thereof
WO2015049771A1 (en) Computer system
JP5879117B2 (en) Information processing system and operation management method
US9742687B2 (en) Management system and method for execution of virtual machines
JP2005208922A (en) Job assignment method for grid system, grid mediation apparatus, and resource computer
JP5218548B2 (en) Job allocation apparatus, control program and control method for job allocation apparatus
JP6244496B2 (en) Server storage system management system and management method
KR101508273B1 (en) Method for assigning resource using cloud application programming interface key and apparatus therefor
CN110928679A (en) Resource allocation method and device
JP5867499B2 (en) Virtual server system, management server device, and system management method
JP4870790B2 (en) Clustering system