JP5742125B2 - プログラム、情報生成装置及び情報生成方法 - Google Patents

プログラム、情報生成装置及び情報生成方法 Download PDF

Info

Publication number
JP5742125B2
JP5742125B2 JP2010164248A JP2010164248A JP5742125B2 JP 5742125 B2 JP5742125 B2 JP 5742125B2 JP 2010164248 A JP2010164248 A JP 2010164248A JP 2010164248 A JP2010164248 A JP 2010164248A JP 5742125 B2 JP5742125 B2 JP 5742125B2
Authority
JP
Japan
Prior art keywords
application
virtual machine
information
performance
virtual
Prior art date
Legal status (The legal status is an assumption and is not a legal conclusion. Google has not performed a legal analysis and makes no representation as to the accuracy of the status listed.)
Expired - Fee Related
Application number
JP2010164248A
Other languages
English (en)
Other versions
JP2012027614A (ja
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 JP2010164248A priority Critical patent/JP5742125B2/ja
Priority to US13/184,069 priority patent/US8756600B2/en
Publication of JP2012027614A publication Critical patent/JP2012027614A/ja
Application granted granted Critical
Publication of JP5742125B2 publication Critical patent/JP5742125B2/ja
Expired - Fee Related legal-status Critical Current
Anticipated expiration legal-status Critical

Links

Images

Classifications

    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F9/00Arrangements for program control, e.g. control units
    • G06F9/06Arrangements for program control, e.g. control units using stored programs, i.e. using an internal store of processing equipment to receive or retain programs
    • G06F9/44Arrangements for executing specific programs
    • G06F9/455Emulation; Interpretation; Software simulation, e.g. virtualisation or emulation of application or operating system execution engines
    • G06F9/45533Hypervisors; Virtual machine monitors
    • G06F9/45558Hypervisor-specific management and integration aspects
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F9/00Arrangements for program control, e.g. control units
    • G06F9/06Arrangements for program control, e.g. control units using stored programs, i.e. using an internal store of processing equipment to receive or retain programs
    • G06F9/44Arrangements for executing specific programs
    • G06F9/455Emulation; Interpretation; Software simulation, e.g. virtualisation or emulation of application or operating system execution engines
    • G06F9/45533Hypervisors; Virtual machine monitors
    • G06F9/45558Hypervisor-specific management and integration aspects
    • G06F2009/4557Distribution of virtual machine instances; Migration and load balancing

Landscapes

  • Engineering & Computer Science (AREA)
  • Software Systems (AREA)
  • Theoretical Computer Science (AREA)
  • Physics & Mathematics (AREA)
  • General Engineering & Computer Science (AREA)
  • General Physics & Mathematics (AREA)
  • Debugging And Monitoring (AREA)

Description

本発明は、仮想マシンにアプリケーションを導入する際の情報を提供するプログラム、情報生成装置及び情報生成方法に関する。
近年、データセンタや大規模なITシステムなどを中心に、それぞれの仮想マシンでデプロイしたアプリケーションを実行する仮想マシンの利用が進んでいる。
アプリケーションのデプロイに関して、例えば特許文献1には、アプリケーションのデプロイや設定を簡便化するための仮想マシンの利用方法に関する技術が開示されている。また、特許文献2には、主としてシンクアイアントサービスを提供する場合において、各ユーザ毎のアプリケーションをデプロイする対象となるマスタを効率的に管理する技術が開示されている。
特開2008−090840号公報 特開2009−259046号公報
しかしながら、同一の物理マシンで複数の仮想マシンが動作する場合、同一物理マシン上に存在する仮想マシンが影響を考慮する必要があり、同一物理マシン上に存在する他の仮想マシンの影響により、運用開始後に想定した性能がでないといった問題が発生する場合がある。
本願は、上記の課題を解決するため、運用開始後に想定した性能がでない仮想マシンにアプリケーションを導入してしまうことを抑制するプログラム、情報生成装置及び情報生成方法を提供することを目的とする。
本願に開示するプログラムは、コンピュータに、実計算機上で動作する複数の仮想計算機の1つである第1の仮想計算機に対する、第1のアプリケーションの導入要求に関する情報を受け付け、取得した前記複数の仮想計算機に導入されたアプリケーションに関する情報に基づき、前記第1のアプリケーションまたは前記第1のアプリケーションに類似する類似アプリケーションの導入実績のある仮想計算機の有無を判別し、前記第1のアプリケーションまたは前記類似アプリケーションの導入実績のある第2の仮想計算機が存在する場合に、取得した前記第1の仮想計算機および前記第2の仮想計算機の性能に関する情報、前記第2の仮想計算機における前記第1のアプリケーションまたは前記類似アプリケーションの動作時リソースに関する情報、および、前記実計算機の性能に関する情報に基づき、前記第1の仮想計算機における前記第1のアプリケーションの動作に関する、前記第2の仮想計算機における前記第1アプリケーションまたは前記類似アプリケーションの動作性能と対応付けられた動作性能情報を算出する、処理を実行させることを特徴とする。
本願によれば、運用開始後に想定した性能がでない仮想マシンにアプリケーションを導入してしまうことを抑制することができる。
本実施の形態に係るシステムの全体構成を示す模式図である。 検証装置の内部構成を説明するブロック図である。 検証装置の機能的構成を説明するブロック図である。 検証装置が実行する処理の手順を説明するフローチャートである。 アプリケーションの基礎値及び基礎値計測時のマシン情報の一例を示す図である。 アプリケーションの導入先仮想マシンの情報の一例を示す図である。 導入先仮想マシンが存在する物理マシンの情報の一例を示す図である。 同居している仮想マシンの情報の一例を示す図である。 予測使用リソースの算出手順の一例を示すフローチャートである。 類似アプリケーションの検索手順の一例を示すフローチャートである。 同一アプリケーションが導入された物理マシン及び仮想マシンの情報の一例を示す図である。 アプリケーションの導入可否の検証手順の一例を示すフローチャートである。 期間ピーク値での比較手順の一例を示すフローチャートである。 それぞれ同一アプリケーション、同居仮想マシン上アプリケーションの負荷ピークの検出例を示す図である。 それぞれ同一アプリケーション、同居仮想マシン上アプリケーションの負荷ピークの検出例を示す図である。 負荷ピークタイミングでのパフォーマンスと導入先仮想マシンでのパフォーマンスとの比較手順の一例を示すフローチャートである。 負荷ピークタイミングでのパフォーマンスと導入先仮想マシンでのパフォーマンスとの比較手順の一例を示すフローチャートである。 他の仮想マシンへの影響を検証する手順の一例を示すフローチャートである。 他の仮想マシンへの影響を検証する手順の一例を示すフローチャートである。 検証結果の一例を示す図である。
以下、本発明をその実施の形態を示す図面に基づいて具体的に説明する。
図1は本実施の形態に係るシステムの全体構成を示す模式図である。図1に示しシステムは、アプリケーションのデプロイ先での動作を検証する検証装置10、及びアプリケーションのデプロイ対象である情報処理装置20を含む。
情報処理装置20は、例えば、パーソナルコンピュータ、サーバ装置等であり、本実施の形態では、アプリケーションの導入対象となる。図1に例示した情報処理装置20は、1つの物理マシン21と3つの仮想マシン22a〜22cとにより構成されている。物理マシン21は、CPU、メモリ、ハードディスクを含むハードウェア及び情報処理装置20において仮想マシン22a〜22cを実現するためのハイパーバイザを含む。仮想マシン22a、22bは、例えば、オペレーションシステム(OS)、ミドルウェア、アプリケーションが既に導入され、稼働中の仮想マシンであり、仮想マシン22cは、新たにアプリケーションを導入しようとしている仮想マシンである。
なお、図1に示した例では、1つの物理マシン21に対して3つの仮想マシン22a〜22cを備える構成としたが、物理マシン及び仮想マシンの台数は上記に限定されるものでなく、本システムの管理者又は情報処理装置20のユーザが適宜設定し得るものである。
ここで、仮想マシン22a〜22cに導入されるアプリケーションとは、単一のアプリケーションソフトウェア、複数のプログラムが協同して動作する統合的なアプリケーションソフトウェア等を意味する。アプリケーションには、これらのアプリケーションソフトウェアで利用する各種の設定やデータが含まれていてもよい。
アプリケーションの導入(デプロイ)は、必ずしも検証装置10を利用して行うものではなく、CD−ROM、DVD−ROM、USBメモリ等の可搬型記録媒体を利用して管理者が行う構成としてもよく、また、インターネットなどの通信回線を通じて外部のサーバから行う構成であってもよい。
検証装置10は、パーソナルコンピュータ、サーバ装置等であり、アプリケーションを情報処理装置20に新たに導入する際に、アプリケーションの動作検証や、導入した場合の物理マシン21及び仮想マシン22a〜22cの動作検証を行うことにより、アプリケーションの導入可否を検証する。
図2は検証装置10の内部構成を説明するブロック図である。検証装置10は、制御部11、記憶部12、情報取得部13、検証部14、操作部15、及び表示部16を備える。
制御部11は、例えば、MPU(Micro Processing Unit)、ROM(Read Only Memory)、RAM(Random Access Memory)を備える。記憶部12は、HDD(Hard Disk Drive)、フラッシュメモリ等の記憶手段であり、本願のプログラム121が格納されている。また、記憶部12は、導入対象のアプリケーションの情報、導入先の物理マシン21の情報、導入先の物理マシンが備える仮想マシン22a〜22cの情報等を記憶するための管理用データベース(管理用DB)122を備える。
制御部11は、記憶部12から本願のプログラム121を読み込んで実行することにより、上述したハードウェア各部の動作を制御し、本願の検証装置として機能させる。
情報取得部13は、検証に必要な情報を検証装置10の外部より取得する。具体的には、導入予定アプリケーションの基礎値、基礎値採取時のマシン情報、導入先仮想マシンの情報、導入先の物理マシンの情報、同居仮想マシンの情報、同一アプリケーションの情報、単位期間当たりのリソース(計算機資源)の使用状況(仮想マシンに対する負荷)に関する情報等を取得する。各情報の詳細については後に詳述することとする。
検証部14は、情報取得部13で取得した情報を基に、アプリケーションの動作検証や、導入した場合の物理マシン21及び仮想マシン22a〜22cの動作検証を行い、アプリケーションの導入可否を検証する。
操作部15は、管理者からの操作指示を受付けるためのキーボード、マウス等の入力デバイスである。表示部16は、管理者に通知すべき情報、情報取得部13で取得した情報、検証部14での検証結果等を表示する液晶ディスプレイ等の表示デバイスである。
図3は検証装置10の機能的構成を説明するブロック図である。検証装置10は、第1取得部101、第2取得部102、算出部103、検索部104、判断部105、及び出力部106を備える。
第1取得部101は、例えば、単位期間当たりの仮想マシンに対する負荷に係る情報を取得する。また、第2取得部102は、仮想マシンに導入されるアプリケーションに関する情報を取得する。第1取得部101及び第2取得部102の機能は、図2に示す情報取得部13が備える機能である。
算出部103は、アプリケーションを仮想マシンに導入したときの当該仮想マシンの負荷についての予測値を算出する。検索部104は、前記アプリケーションと同一又は類似のアプリケーションが導入された他の仮想マシンを検索する。算出部103及び検索部104の機能は、図2に示す制御部11が備える機能である。
判断部105は、第1取得部101で取得した情報と算出部103が算出した予測値との比較結果に基づいて、アプリケーションの導入の可否を判断する。判断部105の機能は、図2に示す検証部14が備える機能である。
出力部106は、第1取得部101で取得した情報と算出部103が算出した予測値との比較結果等の情報を出力する。出力部106の機能は、図2に示す表示部16が備える機能である。なお、検証装置10に通信手段を設け、この通信手段により前記比較結果等の情報を検証装置10の外部へ送信する構成としてもよい。
以下、検証装置10が実行する処理について説明する。図4は検証装置10が実行する処理の手順を説明するフローチャートである。検証装置10は、情報取得部13を通じて、導入しようとしているアプリケーションの基礎値及び基礎値計測時のマシン情報を取得する(S11)。ここで、アプリケーションの基礎値とは、適宜のマシンで当該アプリケーションを稼働させた際のリソースの使用状況を表し、メモリ使用量、ディスクサイズ、CPU使用率等の情報を表す。アプリケーションを稼働するマシン、アプリケーションの基礎値を計測するマシンは適宜のものを使用すればよく、検証装置10にて基礎値を計測してもよく、他のコンピュータ、サーバ装置を用いて計測してもよい。S11では、アプリケーションの基礎値だけでなく、アプリケーションを稼働するマシンの情報(CPU、ディスクサイズ、メモリサイズの情報)を取得する。図5は、アプリケーションの基礎値及び基礎値計測時のマシン情報の一例を示す。
次いで、検証装置10は、情報取得部13を通じて、導入先として指定された仮想マシンの情報、及び導入先として指定された仮想マシンが存在する物理マシンの情報を取得する(S12、S13)。図1に示した例では、アプリケーションの導入先を仮想マシン22cとしているため、S12では仮想マシン22cの情報を取得し、S13では物理マシン21の情報を取得する。図6はアプリケーションの導入先仮想マシンの情報の一例を示す図であり、図7は導入先仮想マシンが存在する物理マシンの情報の一例を示す図である。取得する仮想マシンの情報には、計算機資源(リソース)の情報と、稼働時のパフォーマンスデータとが含まれる。ここで、仮想マシンのリソースの値は、この仮想マシンの作成時に割り当てられたリソースの値であり、CPUのクロック数、ディスクサイズ、メモリサイズ等が含まれる。パフォーマンスデータは、仮想マシンが動作している間のリソースの使用状況を表し、メモリ使用量、ディスクサイズ、CPU使用率、ディスクビジー率等が含まれる。
一方、物理マシンのリソースの値は、情報処理装置20が備えるハードウェアによって規定される値であり、仮想マシンのリソースの値と同様に、CPUのクロック数、ディスクサイズ、メモリサイズ等が含まれる。物理マシンのパフォーマンスデータは、物理マシンが動作している間のリソースの使用状況を表し、メモリ使用量、ディスクサイズ、CPU使用率、ディスクビジー率等が含まれる。
次いで、検証装置10は、情報取得部13を通じて、導入先として指定された仮想マシンと同居する仮想マシンの情報を取得する(S14)。図1に示した例では、アプリケーションの導入先を仮想マシン22cとしているため、S14では、情報処理装置20に同居している仮想マシン22a及び22bの情報を取得する。図8は同居している仮想マシンの情報の一例を示す図である。取得する仮想マシンの情報には、計算機資源(リソース)の情報と、稼働時のパフォーマンスデータとが含まれる。ここで、仮想マシンのリソースの値は、この仮想マシンの作成時に割り当てられたリソースの値であり、CPUのクロック数、ディスクサイズ、メモリサイズ等が含まれる。パフォーマンスデータは、仮想マシンが動作している間のリソースの使用状況を表し、メモリ使用量、ディスクサイズ、CPU使用率、ディスクビジー率等が含まれる。なお、図8には一台分の仮想マシン情報を示しているが、同居する仮想マシンが複数台存在する場合には、複数の仮想マシン情報を取得する。ここで、同居する仮想マシンは、情報処理装置20内でアプリケーションの導入先として指定された仮想マシン以外の仮想マシンを指す。
次いで、検証装置10の検証部14は、導入しようとしているアプリケーションの予測使用リソースを算出する(S15)。図9は予測使用リソースの算出手順の一例を示すフローチャートである。S11にて、導入しようとしているアプリケーションの基礎値及び基礎値計測時のマシン情報を取得し、S12及びS13にて、導入先として指定された仮想マシンの情報、及び物理マシンの情報を取得しているため、検証部14は、これらの情報を用いて、アプリケーションの基礎値を取得したマシンと導入先の仮想マシンとのCPUを比較し(S151)、両者の比率を算出する。そして、検証部14は、算出した比率を用いて、導入先仮想マシンでのCPU使用率予測値を算出し(S152)、物理マシンの使用率予測値を算出する(S153)。
S15で予測使用リソースを算出した後、検証部14は、予測使用リソースを仮想マシン及び物理マシンで確保できるか否かを判断する(S16)。すなわち、算出した予測使用リソースの値と、S12及びS13で取得した仮想マシン及び物理マシンの情報とを比較し、予測使用リソースを確保できるか否かを判断する。
予想使用リソースを確保できない場合には(S16:NO)、検証部14は、表示部16に検証結果を表示する(S22)。ここでは、リソースを確保できないため、アプリケーションの導入が不可である旨の検証結果を表示する。
予想使用リソースを確保できると判断した場合(S16:YES)、検証部14は、既に他の仮想マシンに導入され、動作している同一アプリケーションを検索し(S17)、同一アプリケーションが存在するか否かを判断する(S18)。同一アプリケーションが存在しないと判断した場合には(S18:NO)、検証部14は、類似アプリケーションの検索を行う(S19)。なお、S19において類似アプリケーションが見つからない場合、アプリケーションの導入の可否を検証できない旨を通知するか、又は、本システムの管理者又は情報処理装置20のユーザに適宜のアプリケーションを選択させる構成としてもよい。
図10は類似アプリケーションの検索手順の一例を示すフローチャートである。検証部14は、まず、導入するアプリケーションと同じレベルのスループットを要求するアプリケーションを情報処理装置20から検索し(S191)、検索されたアプリケーション(すなわち、導入するアプリケーションと同じレベルのスループットを要求するアプリケーション)の単体性能情報より、ディスクIO平均値を算出する(S192)。
そして、 検索されたアプリケーションのディスクIO平均値と、導入対象となるアプリケーションのディスクIO平均値とを比較し(S193)、アプリケーションの類比判定を行う(S194)。例えば、両者のディスクIO平均値の差異が5%以内である場合、検索されたアプリケーションは類似アプリケーションと判断し、差異が5%より大きい場合、非類似のアプリケーションと判断する。
S18で同一アプリケーションが存在すると判断した場合(S18:YES)、又はS19の類似アプリケーションの検索の後、検証部14は、検索されたアプリケーションの稼働時の物理マシン及び仮想マシンの情報を取得する(S20)。図11は同一アプリケーションが導入された物理マシン及び仮想マシンの情報の一例を示す図である。本実施の形態では、導入先の仮想マシンと同居する仮想マシンから同一アプリケーションを検索する構成としており、物理マシンについては共通であるため、物理マシンのリソースの情報及びパフォーマンスデータは、図7に示す物理マシンの情報と全く同様である。一方、仮想マシンの情報は、検索されたアプリケーションが導入されている仮想マシンについて計測されたリソースの情報及びパフォーマンスデータが取得される。
なお、図11では同一アプリケーションが導入された物理マシン及び仮想マシンの情報を示したが、検索されたアプリケーションが類似アプリケーションである場合、同一アプリケーションと同様にして、類似アプリケーションが導入された仮想マシンの情報と、物理マシンの情報とがS20で取得される。
S20で検索されたアプリケーションの稼働時の物理マシン及び仮想マシンの情報を取得した後、検証部14は、アプリケーションの導入可否を検証し(S21)、検証結果を表示部16に表示させる(S22)。
以下、S21でのアプリケーションの導入可否を検証する手順について説明する。図12はアプリケーションの導入可否の検証手順の一例を示すフローチャートである。検証部14は、導入先の仮想マシンと同一又は類似アプリケーションが導入されている仮想マシンとのマシンスペックの比較を行い(S31)、同一又は類似アプリケーションのパフォーマンスを導入先の仮想マシンで確保できるか否かを検証する(S32)。
次いで、検証部14は、期間ピーク値での比較を行う(S33)。詳細な手順については後述することとするが、ここでは、一定期間毎(例えば、日次毎、月次毎、四半期毎、年次ごと)にパフォーマンスを調べ、リソースへの負荷が最大となる期間を求め、その期間でのパフォーマンスと比較を行う。
次いで、検証部14は、他の仮想マシンへの影響を検証する(S34)。詳細な手順については後述することとするが、ここでは、アプリケーションを実際に仮想マシンに導入した場合の他の仮想マシンへの影響を検証する。
図13は期間ピーク値での比較手順の一例を示すフローチャートである。検証部14は、まず、同一又は類似アプリケーションのパフォーマンスより、日次、月次、四半期、年次の負荷ピークとなるタイミングとパフォーマンス値とを検出する(S41)。図14及び図15は、それぞれ同一アプリケーション、同居仮想マシン上アプリケーションの負荷ピークの検出例を示す図である。
次いで、S41で取得した日次、月次、四半期、年次の負荷ピークとなるタイミングでのパフォーマンスと、導入先仮想マシンでのパフォーマンスとの比較を行う(S42〜S45)。
一例として、日次の負荷ピークタイミングとなるパフォーマンスと導入先仮想マシンでのパフォーマンスとの比較手順について説明する。図16及び図17は、負荷ピークタイミングでのパフォーマンスと導入先仮想マシンでのパフォーマンスとの比較手順の一例を示すフローチャートである。検証部14は、まず、負荷ピーク時刻でのメモリ使用量(aとする)を取得すると共に、導入先仮想マシンでのメモリ使用量(bとする)を取得する(S421及びS422)。
次いで、検証部14は、負荷ピーク時刻でのメモリ使用量と導入先仮想マシンでのメモリ使用量との大小関係を判断し(S423)、導入先仮想マシンでのメモリ使用量の方が大きい場合には(S423:YES)、メモリ量の差分を算出する(S424)。算出されたメモリ量の差分は検証結果として記憶される。
導入先仮想マシンでのメモリ使用量の方が小さい場合(S423:NO)、又はS424でメモリ量の差分を算出した場合(S424)、検証部14は、負荷ピーク時刻でのCPU使用率(fとする)を取得すると共に、同一アプリケーションが導入されている仮想マシンでのCPUクロック数(cとする)、及び導入先仮想マシンでのCPUクロック数(dとする)を取得する(S425〜S427)。
次いで、検証部14は、同一アプリケーションが導入されている仮想マシンでのCPUクロック数(c)を導入先仮想マシンでのCPUクロック数(d)により除算した値(eとする)と、負荷ピーク時刻でのCPU使用率(f)との乗算することにより、導入先でのCPU使用率の予測値を算出する(S428)。検証部14は算出した予測値が100を越えるか否かを判断し(S429)、導入先でのCPU使用率の予測値(e×f)が100を越える場合には(S429:YES)、CPU使用率の差分を算出する(S430)。算出されたCPU使用率の差分は検証結果として記憶される。
導入先でのCPU使用率の予測値(e×f)が100を越えない場合(S429:NO)、S430でCPU使用率の差分を算出した場合(S430)、検証部14は、同一アプリケーションのディスクビジー率(gとする)を取得する(S431)。
次いで、検証部14は、同一アプリケーションのディスクビジー率gが90%より小さく、かつ、ディスクドライブ型番が同一であるか否かを判断する(S432)。同一アプリケーションのディスクビジー率gが90%より小さく、かつ、ディスクドライブ型番が同一である場合には(S432:YES)、ディスクアクセス待機中のシステム要求数を取得する(S433)。
S432で、同一アプリケーションのディスクビジー率gが90%以上であるか、若しくは、ディスクドライブ型番が同一でないと判断した場合(S432:NO)、又はS433でシステム要求数を取得した場合(S433)、検証部14は、CPU使用率、ディスクIO負荷、メモリ使用量のそれぞれについて結果を収集し、記憶する(S434)。
なお、図16及び図17に示したフローチャートでは、日次の負荷ピークタイミングとなるパフォーマンスと導入先仮想マシンでのパフォーマンスとの比較手順について説明したが、月次、四半期、年次の負荷ピークタイミングについても同様の手順でパフォーマンスの比較を行うことが可能である。
図18及び図19は、他の仮想マシンへの影響を検証する手順の一例を示すフローチャートである。検証部14は、導入対象の仮想マシンと同居する別の仮想マシンが存在するか否かを判断する(S341)。同居する他の仮想マシンが存在しない場合には(S341:NO)、本フローチャートによる処理を終了する。
導入対象の仮想マシンと同居する他の仮想マシンが存在すると判断した場合(S341:YES)、検証部14は、その仮想マシンでの日次、月次、四半期、年次における負荷ピークタイミングを算出する(S342)。そして、導入先の仮想マシンにおける負荷ピークタイミングと同一のピークタイミングが存在するか否かを判断する(S343)。同一のピークタイミングが存在しない場合には(S343:NO)、本フローチャートによる処理を終了する。
同一のピークタイミングが存在すると判断した場合(S343:YES)、検証部14は、ピークタイミングとなる期間での物理マシンのパフォーマンスデータを取得する(S344)。
次いで、検証部14は、物理マシンでのCPU使用率(pとする)と、仮想マシンでのCPU使用率(qとする)とを比較し(S345)、p+q<100であるか否かを判断する(S346)。p+qが100以上であれば(S346:NO)、検証部14は、CPU使用率の差分を算出する(S347)。
S346で、p+q<100の関係を満たすと判断した場合(S346:YES)、又はS347で、CPU使用率の差分を算出した場合(S347)、物理マシンのメモリ使用量(rとする)、仮想マシンの予測メモリ使用量(sとする)、及び物理マシンの搭載メモリ量(tとする)を取得する(S348)。
次いで、検証部14は、物理マシンのメモリ使用量rと仮想マシンの予測メモリ使用量sとの和が、物理マシンの搭載メモリ量tより小さいか否かを判断する(S349)。物理マシンのメモリ使用量rと仮想マシンの予測メモリ使用量sとの和が、物理マシンの搭載メモリ量t以上であれば(S349:NO)、検証部14は、メモリ量の差分を算出する(S350)。
S349で、物理マシンのメモリ使用量rと仮想マシンの予測メモリ使用量sとの和が、物理マシンの搭載メモリ量tより小さいと判断した場合(S349:YES)、又はS350でメモリ量の差分を算出した場合(S350)、検証部14は、同一アプリケーションのディスクビジー率を取得する(S351)。
次いで、検証部14は、仮想マシンを格納してあるディスクが同一のディスクであるか否かを判断し(S352)、同一のディスクであると判断した場合(S352:YES)、ディスクアクセス待機中のシステム要求数を取得する(S353)。
S352で、仮想マシンを格納してあるディスクが同一のディスクでないと判断した場合(S352:NO)、又はS353でディスクアクセス待機中のシステム要求数を取得した場合(S353)、検証部14は、CPU使用率、ディスクIO負荷、メモリ使用量のそれぞれについて結果を収集し、記憶する(S354)。
図20は検証結果の一例を示す図である。検証結果としては、導入対象のアプリケーションを仮想マシンに導入した場合の性能予測値(単体性能予測値)、各期間におけるパフォーマンスの予測値、他のアプリケーションへの影響が含まれる。このような、検証結果は、図16及び図17に示すような比較処理を行う都度、図18及び図19に示すような検証処理を行う都度、検証部14によって作成される情報である。検証結果は、例えば、表示部16に表示される。
システム運用者や管理者は、表示部16に表示された検証結果に基づき、アプリケーションの導入の可否を決定することができる。また、検証結果の1つ以上の項目(例えば、CPU使用率)に対して閾値を設定しておき、検証部14が、検証結果で得た値と閾値とを比較することにより、導入の可否を判定し、システム運用者や管理者に通知する構成としてもよい。
以上のように、本実施の形態では、仮想マシンの利用時に発生しやすい性能問題を予め検証結果として表示することができるため、アプリケーションの導入可否を決定し、性能問題の発生を事前に回避させることができる。また、アプリケーションを導入するのに最適な仮想マシンであるか否かを判断できるので、余剰リソースの最適化を図ることができる。
更に、検証装置10が、検証に必要な物理マシンや仮想マシンの情報を自動的に収集し、検証を行うため、システム運用者や管理者がリリース作業に費やす作業負担を軽減することができる。また、システム運用者や管理者による作業を大幅に削減することできるため、迅速かつ少ないリソースでサービスの提供が可能となる。
以上の実施の形態に関し、更に以下の付記を開示する。
(付記1)
複数の仮想計算機と、各仮想計算機の負荷を計測する計測部とを備える実計算機から、前記計測部が計測した負荷に係る情報を取得する第1の取得部、
前記複数の仮想計算機のうち所定の仮想計算機に新たに導入するアプリケーションに関する情報を取得する第2の取得部、
該第2の取得部が取得した情報に基づき、前記アプリケーションを前記所定の仮想計算機に導入した際の該所定の仮想計算機の負荷についての予測値を算出する算出部、及び
前記第1の取得部が取得した情報と該算出部が算出した予測値とを比較し、比較結果を出力する出力部
を備えることを特徴とする情報提供装置。
(付記2)
前記アプリケーションと同一又は類似のアプリケーションを導入した他の仮想計算機を検索する検索部を更に備え、
前記出力部が、
前記他の仮想計算機の負荷と前記算出部が算出した予測値とを比較し、比較結果を出力する
ことを特徴とする付記1に記載の情報提供装置。
(付記3)
前記計測部が、
所定期間毎に各仮想計算機の負荷を計測し、
前記出力部が、
前記他の仮想計算機の負荷が最も高い期間の負荷と前記算出部が算出した予測値とを比較し、比較結果を出力する
ことを特徴とする付記1又は付記2に記載の情報提供装置。
(付記4)
前記比較結果に基づいて、前記アプリケーションの導入の可否を判断する判断部を更に備えることを特徴とする付記1から付記3の何れか1つに記載の情報提供装置。
(付記5)
前記検索部は、前記他の仮想計算機の負荷が近似するアプリケーションを類似のアプリケーションとして検索するようにしてあることを特徴とする付記2に記載の情報提供装置。
(付記6)
複数の仮想計算機と、各仮想計算機の負荷を計測する計測部とを備える実計算機から、前記計測部が計測した負荷に係る情報を取得し、
前記複数の仮想計算機のうち所定の仮想計算機に新たに導入するアプリケーションに関する情報を取得し、
取得した前記アプリケーションに関する情報に基づき、該アプリケーションを前記所定の仮想計算機に導入した際の該所定の仮想計算機の負荷についての予測値を算出し、
算出した予測値と前記実計算機から取得した負荷に係る情報とを比較し、比較結果を出力する
ことを特徴とする情報提供方法。
(付記7)
コンピュータに、
複数の仮想計算機と、各仮想計算機の負荷を計測する計測部とを備える実計算機から、前記計測部が計測した負荷に係る情報を取得し、
前記複数の仮想計算機のうち所定の仮想計算機に新たに導入するアプリケーションに関する情報を取得し、
取得した前記アプリケーションに関する情報に基づき、該アプリケーションを前記所定の仮想計算機に導入した際の該所定の仮想計算機の負荷についての予測値を算出し、
算出した予測値と前記実計算機から取得した負荷に係る情報とを比較し、比較結果を出力すること
を実行させるプログラム。
10 検証装置
11 制御部
12 記憶部
13 情報取得部
14 検証部
15 操作部
16 表示部
17 操作部
121 プログラム
122 管理用DB

Claims (5)

  1. コンピュータに、
    実計算機上で動作する複数の仮想計算機の1つである第1の仮想計算機に対する、第1のアプリケーションの導入要求に関する情報を受け付け、
    取得した前記複数の仮想計算機に導入されたアプリケーションに関する情報に基づき、前記第1のアプリケーションまたは前記第1のアプリケーションに類似する類似アプリケーションの導入実績のある仮想計算機の有無を判別し、
    前記第1のアプリケーションまたは前記類似アプリケーションの導入実績のある第2の仮想計算機が存在する場合に、取得した前記第1の仮想計算機および前記第2の仮想計算機の性能に関する情報、前記第2の仮想計算機における前記第1のアプリケーションまたは前記類似アプリケーションの動作時リソースに関する情報、および、前記実計算機の性能に関する情報に基づき、前記第1の仮想計算機における前記第1のアプリケーションの動作に関する、前記第2の仮想計算機における前記第1アプリケーションまたは前記類似アプリケーションの動作性能と対応付けられた動作性能情報を算出する、
    処理を実行させることを特徴とするプログラム。
  2. 請求項1記載のプログラムであって、前記第2の仮想計算機における前記第1のアプリケーションまたは前記類似アプリケーションの動作タイミングに関する情報に基づき、前記第1の仮想計算機における前記第1のアプリケーションの動作に関する前記動作性能情報を算出する、ことを特徴とするプログラム。
  3. 請求項1または請求項2記載のプログラムであって、前記第1の仮想計算機における前記第1のアプリケーションの動作に関する前記動作性能情報に基づき、前記第1の仮想計算機に対する前記第1のアプリケーションの導入可否を判定する、ことを特徴とするプログラム。
  4. 実計算機上で動作する複数の仮想計算機の1つである第1の仮想計算機に対する、第1のアプリケーションの導入要求に関する情報を受け付ける受付部と、
    前記複数の仮想計算機に導入されたアプリケーションに関する情報、前記複数の仮想計算機の性能に関する情報、前記複数の仮想計算機におけるアプリケーションの動作時リソースに関する情報、および、前記実計算機の性能に関する情報を取得する取得部と、
    該取得部が取得した前記複数の仮想計算機に導入されたアプリケーションに関する情報に基づき、前記第1のアプリケーションまたは前記第1のアプリケーションに類似する類似アプリケーションの導入実績のある仮想計算機の有無を判別する判別部と、
    前記第1のアプリケーションまたは前記類似アプリケーションの導入実績のある第2の仮想計算機が存在する場合に、前記取得部が取得した前記第1の仮想計算機および前記第2の仮想計算機の性能に関する情報、前記第2の仮想計算機における前記第1のアプリケーションまたは前記類似アプリケーションの動作時リソースに関する情報、および、前記実計算機の性能に関する情報に基づき、前記第1の仮想計算機における前記第1のアプリケーションの動作に関する、前記第2の仮想計算機における前記第1アプリケーションまたは前記類似アプリケーションの動作性能と対応付けられた動作性能情報を算出する算出部と
    を備える情報生成装置。
  5. 実計算機上で動作する複数の仮想計算機の1つである第1の仮想計算機に対する、第1のアプリケーションの導入要求に関する情報を受け付け、
    取得した前記複数の仮想計算機に導入されたアプリケーションに関する情報に基づき、前記第1のアプリケーションまたは前記第1のアプリケーションに類似する類似アプリケーションの導入実績のある仮想計算機の有無を判別し、
    前記第1のアプリケーションまたは前記類似アプリケーションの導入実績のある第2の仮想計算機が存在する場合に、取得した前記第1の仮想計算機および前記第2の仮想計算機の性能に関する情報、前記第2の仮想計算機における前記第1のアプリケーションまたは前記類似アプリケーションの動作時リソースに関する情報、および、前記実計算機の性能に関する情報に基づき、前記第1の仮想計算機における前記第1のアプリケーションの動作に関する、前記第2の仮想計算機における前記第1アプリケーションまたは前記類似アプリケーションの動作性能と対応付けられた動作性能情報を算出する、
    処理をコンピュータが実行する情報生成方法。
JP2010164248A 2010-07-21 2010-07-21 プログラム、情報生成装置及び情報生成方法 Expired - Fee Related JP5742125B2 (ja)

Priority Applications (2)

Application Number Priority Date Filing Date Title
JP2010164248A JP5742125B2 (ja) 2010-07-21 2010-07-21 プログラム、情報生成装置及び情報生成方法
US13/184,069 US8756600B2 (en) 2010-07-21 2011-07-15 Judging apparatus, method, and recording medium of program for estimating the effect of deployment of an application in a virtual machine environment

Applications Claiming Priority (1)

Application Number Priority Date Filing Date Title
JP2010164248A JP5742125B2 (ja) 2010-07-21 2010-07-21 プログラム、情報生成装置及び情報生成方法

Publications (2)

Publication Number Publication Date
JP2012027614A JP2012027614A (ja) 2012-02-09
JP5742125B2 true JP5742125B2 (ja) 2015-07-01

Family

ID=45494600

Family Applications (1)

Application Number Title Priority Date Filing Date
JP2010164248A Expired - Fee Related JP5742125B2 (ja) 2010-07-21 2010-07-21 プログラム、情報生成装置及び情報生成方法

Country Status (2)

Country Link
US (1) US8756600B2 (ja)
JP (1) JP5742125B2 (ja)

Families Citing this family (15)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US8490092B2 (en) 2011-07-06 2013-07-16 Microsoft Corporation Combined live migration and storage migration using file shares and mirroring
US9116803B1 (en) * 2011-09-30 2015-08-25 Symantec Corporation Placement of virtual machines based on page commonality
DE102012217202B4 (de) * 2011-10-12 2020-06-18 International Business Machines Corporation Verfahren und System zum Optimieren des Platzierens virtueller Maschinen in Cloud-Computing-Umgebungen
US9223607B2 (en) * 2012-01-17 2015-12-29 Microsoft Technology Licensing, Llc System for replicating or migrating virtual machine operations log by throttling guest write iOS based on destination throughput
US9600206B2 (en) 2012-08-01 2017-03-21 Microsoft Technology Licensing, Llc Request ordering support when switching virtual disk replication logs
US9608933B2 (en) * 2013-01-24 2017-03-28 Hitachi, Ltd. Method and system for managing cloud computing environment
JP5807732B2 (ja) * 2013-04-09 2015-11-10 日本電気株式会社 性能予測装置、性能予測方法および性能予測プログラム
JP6079476B2 (ja) * 2013-06-26 2017-02-15 富士通株式会社 分析支援プログラム、分析支援装置、および分析支援方法
JP6495645B2 (ja) * 2014-12-19 2019-04-03 株式会社東芝 リソース制御装置、方法、及びプログラム
JP6669172B2 (ja) 2015-07-03 2020-03-18 富士通株式会社 仮想マシン管理プログラム,仮想マシン管理装置および仮想マシン管理方法
JP6771874B2 (ja) * 2015-09-16 2020-10-21 キヤノン株式会社 情報処理装置、その制御方法及びプログラム
CN107608781B (zh) * 2016-07-11 2021-06-22 华为技术有限公司 一种负载预测方法、装置以及网元
US10528374B2 (en) 2016-08-25 2020-01-07 International Business Machines Corporation Volume management by virtual machine affiliation auto-detection
CN107885545B (zh) * 2017-10-31 2021-06-01 Oppo广东移动通信有限公司 应用管理方法、装置、存储介质及电子设备
WO2022018466A1 (en) * 2020-07-22 2022-01-27 Citrix Systems, Inc. Determining server utilization using upper bound values

Family Cites Families (18)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
JP2005149283A (ja) * 2003-11-18 2005-06-09 Hitachi Ltd 情報処理システム、情報処理システムの制御方法及びプログラム
US8336054B2 (en) * 2006-07-20 2012-12-18 Hewlett-Packard Development Company, L. P. System and method for allocating capacity of shared resources to a workload
US8112756B2 (en) * 2006-07-20 2012-02-07 Hewlett-Packard Development Company, L.P. System and method for evaluating a workload and its impact on performance of a workload manager
WO2007148371A1 (ja) * 2006-06-19 2007-12-27 Nec Corporation 仮想マシンのための性能管理システムと性能管理方法
US8046765B2 (en) * 2006-07-25 2011-10-25 Hewlett-Packard Development Company, L.P. System and method for determining allocation of resource access demands to different classes of service based at least in part on permitted degraded performance
US20080082976A1 (en) 2006-09-29 2008-04-03 Matthias Steinwagner Usage of virtualization software for shipment of software products
US20080104589A1 (en) * 2006-11-01 2008-05-01 Mccrory Dave Dennis Adaptive, Scalable I/O Request Handling Architecture in Virtualized Computer Systems and Networks
US8046767B2 (en) * 2007-04-30 2011-10-25 Hewlett-Packard Development Company, L.P. Systems and methods for providing capacity management of resource pools for servicing workloads
US8543711B2 (en) * 2007-04-30 2013-09-24 Hewlett-Packard Development Company, L.P. System and method for evaluating a pattern of resource demands of a workload
JP2009116380A (ja) * 2007-11-01 2009-05-28 Nec Corp 仮想サーバ移動制御装置、仮想サーバ移動制御方法およびプログラム
JP4724730B2 (ja) * 2008-04-09 2011-07-13 株式会社日立製作所 情報処理システムの運用管理方法、運用管理プログラム、および運用管理装置、ならびに情報処理システム
JP5047870B2 (ja) 2008-04-17 2012-10-10 株式会社日立製作所 マスタ管理システム、マスタ管理方法、およびマスタ管理プログラム
US9244732B2 (en) * 2009-08-28 2016-01-26 Vmware, Inc. Compensating threads for microarchitectural resource contentions by prioritizing scheduling and execution
WO2010050335A1 (ja) * 2008-10-27 2010-05-06 株式会社 日立製作所 リソース管理方法と組込み装置
EP2343649B1 (en) * 2008-10-30 2017-10-25 Hitachi, Ltd. Operation management apparatus of information processing system
US9021046B2 (en) * 2010-01-15 2015-04-28 Joyent, Inc Provisioning server resources in a cloud resource
US8433802B2 (en) * 2010-01-26 2013-04-30 International Business Machines Corporation System and method for fair and economical resource partitioning using virtual hypervisor
US8434088B2 (en) * 2010-02-18 2013-04-30 International Business Machines Corporation Optimized capacity planning

Also Published As

Publication number Publication date
US20120023493A1 (en) 2012-01-26
JP2012027614A (ja) 2012-02-09
US8756600B2 (en) 2014-06-17

Similar Documents

Publication Publication Date Title
JP5742125B2 (ja) プログラム、情報生成装置及び情報生成方法
US10225333B2 (en) Management method and apparatus
US7849180B2 (en) Load balanced storage provisioning
Lo et al. Dynamic management of TurboMode in modern multi-core chips
Carlson et al. Barrierpoint: Sampled simulation of multi-threaded applications
Apparao et al. Characterization & analysis of a server consolidation benchmark
KR100992209B1 (ko) 데이터 처리 시스템 상에서 소프트웨어 제품의 사용량을 측정하는 방법
US20120226478A1 (en) Promotion of performance parameters in distributed data processing environment
JP4572251B2 (ja) 計算機システム、計算機システムの障害の予兆検知方法及びプログラム
RU2015114568A (ru) Автоматизированное профилирование использования ресурса
US9336055B2 (en) Apparatus and method for predicting processing performance
US20190108088A1 (en) Compute resource monitoring system and method associated with benchmark tasks and conditions
JP2014032674A (ja) 仮想マシンのリソース配置システム及びその方法
JP2020003929A (ja) 運用管理装置、移動先推奨方法及び移動先推奨プログラム
US9880879B1 (en) Identifying task instance outliers based on metric data in a large scale parallel processing system
WO2017123271A1 (en) Performance-based migration among data storage devices
US8555290B2 (en) Apparatus and method for dynamic control of the number of simultaneously executing tasks based on throughput
JP2005135130A (ja) 負荷監視条件決定プログラム,負荷監視条件決定システム,負荷監視条件決定方法および負荷監視プログラム
Agelastos et al. Continuous whole-system monitoring toward rapid understanding of production HPC applications and systems
US9535704B2 (en) System and method to quantify digital data sharing in a multi-threaded execution
Willnecker et al. Optimization of deployment topologies for distributed enterprise applications
US12056478B2 (en) Application hosting, monitoring, and management within a container hosting environment
Bartalos et al. Green web services: Models for energy-aware web services and applications
US20220222164A1 (en) Computer-readable recording medium storing information collection program, information collection method, and information processing apparatus
JP5342660B2 (ja) 管理システム及びシステム管理方法及びプログラム

Legal Events

Date Code Title Description
A621 Written request for application examination

Free format text: JAPANESE INTERMEDIATE CODE: A621

Effective date: 20130507

A977 Report on retrieval

Free format text: JAPANESE INTERMEDIATE CODE: A971007

Effective date: 20140206

A131 Notification of reasons for refusal

Free format text: JAPANESE INTERMEDIATE CODE: A131

Effective date: 20140225

A521 Request for written amendment filed

Free format text: JAPANESE INTERMEDIATE CODE: A523

Effective date: 20140428

A131 Notification of reasons for refusal

Free format text: JAPANESE INTERMEDIATE CODE: A131

Effective date: 20141007

A521 Request for written amendment filed

Free format text: JAPANESE INTERMEDIATE CODE: A523

Effective date: 20141205

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

A61 First payment of annual fees (during grant procedure)

Free format text: JAPANESE INTERMEDIATE CODE: A61

Effective date: 20150420

R150 Certificate of patent or registration of utility model

Ref document number: 5742125

Country of ref document: JP

Free format text: JAPANESE INTERMEDIATE CODE: R150

LAPS Cancellation because of no payment of annual fees