(57)【特許請求の範囲】
【請求項１】
物理マシン上に構築した仮想マシンの運用を支援するシステムであって、
複数の前記物理マシンが共有する物理デバイスと各前記仮想マシンの間の利用関係の履歴を記述したシステム構成情報、および前記仮想マシンが前記物理デバイスを使用した実績を記録したリソース使用実績情報を格納するテーブル部と、
前記テーブル部から取得した情報を用いて処理を実施する演算処理部と、
を備え、
前記演算処理部は、
前記物理デバイスの利用状況を出力すべき前記仮想マシンに対する指定と、前記指定された仮想マシンの性能実績値を出力すべき２つの日時に対する指定とを受け付け、
前記システム構成情報と前記リソース使用実績情報の記述に基づき、前記指定された２つの日時それぞれにおいて前記指定された仮想マシンが利用していた前記物理デバイスの利用状況を特定し、特定した各前記日時における前記利用状況と各前記日時における前記仮想マシンの性能実績値を出力し、
前記演算処理部はさらに、
前記仮想マシンが指定された前記２つの日時それぞれにおいて使用していた前記物理デバイスと、その物理デバイスを使用していた他の全ての前記仮想マシンとについて、
各前記仮想マシンと前記物理デバイスの間の接続関係を示すシステム構成マップを、前記利用状況として出力する
ことを特徴とする仮想環境運用支援システム。
【請求項２】
前記演算処理部は、
前記リソース使用実績情報に基づき、前記物理デバイスの種別毎の前記仮想マシンの性能実績に関する統計情報を算出して出力し、
性能が低下した状態にある前記仮想マシンを特定するための性能閾値に対する指定を受け付け、
指定された前記性能閾値と前記統計情報に基づいて、性能が低下した状態にある前記仮想マシンを特定し、その仮想マシンの識別子を性能低下の深刻度に応じてランク付けして出力する
ことを特徴とする請求項１記載の仮想環境運用支援システム。
【請求項３】
前記演算処理部は、
前記統計情報として、所定期間における前記物理デバイスの種別毎の前記性能実績を前記所定期間にわたって平均し、
前記平均の値をデータ範囲とし、各前記データ範囲に収まる前記仮想マシンの台数を頻度とする度数分布を出力し、
前記度数分布上における前記データ範囲のうちいずれかの値を、前記性能閾値に対する指定として受け付ける
ことを特徴とする請求項２記載の仮想環境運用支援システム。
【請求項４】
前記演算処理部は、
前記性能閾値に対する指定を前記物理デバイスの種別毎に受け付け、
少なくともいずれかの前記物理デバイスの種別について前記性能閾値を超過した前記仮想マシンの識別子を出力する
ことを特徴とする請求項２または３記載の仮想環境運用支援システム。
【請求項５】
前記演算処理部は、
前記物理デバイスの種別毎の性能実績を基準として前記仮想マシンの性能低下の程度を順位付けし、性能低下の程度が高い方から数えて所定順位までの前記仮想マシンの識別子を出力する
ことを特徴とする請求項４記載の仮想環境運用支援システム。
【請求項６】
前記演算処理部は、
前記性能閾値を超過した前記物理デバイスの種別数が多く、かつ性能低下の程度が高い前記仮想マシンほど、性能低下の程度が高くなるように前記順位付けを実施する
ことを特徴とする請求項５記載の仮想環境運用支援システム。
【請求項７】
前記演算処理部は、
前記日時に対する指定を受け付けると、
指定された前記日時を含む期間における前記仮想マシンの性能実績値の時系列グラフと、前記時系列グラフ上における指定された前記日時の位置を示す情報とを出力する
ことを特徴とする請求項１から６のいずれか１項記載の仮想環境運用支援システム。
【請求項８】
前記演算処理部は、
前記２つの日時に対する指定として、現在日時と現在日時よりも前の日時を指示する指定を受け取り、現在日時と指定された前記日時それぞれにおける前記利用状況を特定して出力する
ことを特徴とする請求項１から７のいずれか１項記載の仮想環境運用支援システム。
【請求項９】
前記演算処理部は、
前記２つの日時に対する指定として、現在日時よりも前の２つの日時を指示する指定を受け取り、指定された前記２つの日時それぞれにおける前記利用状況を特定して出力する
ことを特徴とする請求項１から７のいずれか１項記載の仮想環境運用支援システム。
【請求項１０】
前記演算処理部は、
前記仮想マシンが指定された前記２つの日時それぞれにおいて使用していた前記物理デバイスと、その物理デバイスを使用していた他の全ての前記仮想マシンとについて、
各前記仮想マシンの電源状態を示す状態情報と、前記物理デバイスの使用実績値の大小を相対的に示す使用量情報とを算出し、前記利用状況として出力する
ことを特徴とする請求項１から９のいずれか１項記載の仮想環境運用支援システム。
【請求項１１】
前記演算処理部は、
前記仮想マシンが指定された前記２つの日時それぞれにおいて使用していた前記物理デバイスと、その物理デバイスを使用していた他の全ての前記仮想マシンとについて、
前記２つの日時の間に発生した前記利用関係の変化と各前記仮想マシンの電源状態の変化を記述したイベント情報を算出し、前記利用状況に代えてまたは前記利用状況とともに出力する
ことを特徴とする請求項１から１０のいずれか１項記載の仮想環境運用支援システム。
【請求項１２】
前記テーブル部は、
前記利用関係の変化履歴を記述した構成変更イベント情報を格納し、
前記演算処理部は、
前記システム構成情報から、前記指定された日時のうち古い方よりも前であってその日時に最も近い時点における前記利用関係を取得し、
取得した前記利用関係に対して、前記指定された２つの日時の間の期間における前記構成変更イベント情報を順次適用することによって、前記指定された２つの日時における前記利用状況を算出する
ことを特徴とする請求項１から１１のいずれか１項記載の仮想環境運用支援システム。
【請求項１３】
前記物理デバイスは、複数の前記物理マシンが共有するストレージ装置である
ことを特徴とする請求項１から１２のいずれか１項記載の仮想環境運用支援システム。
【請求項１４】
前記物理デバイスは、複数の前記物理マシンが共有するネットワーク装置である
ことを特徴とする請求項１から１２のいずれか１項記載の仮想環境運用支援システム。
【発明の詳細な説明】
【技術分野】
【０００１】
本発明は、仮想環境システムの運用に関し、仮想マシン性能の効率的な監視と、迅速な障害対処を支援する技術に関するものである。
【背景技術】
【０００２】
ＩＴ資産の有効活用を目的に仮想化技術の利用が進展している。仮想化技術を利用したシステム環境（仮想環境）では、１台の物理マシンをソフトウェア技術で分離し、複数台の仮想マシンを動作させることができる。従来複数台の物理マシンで動作させていたサーバ群を、仮想マシンに置き換えて１台の物理サーバ上に集約することにより、ＩＴ資産の利用効率を高めることができる。
【０００３】
一方で、仮想環境における仮想マシンの運用、特に仮想マシンの性能管理と障害対処においては、従来の物理マシン環境とは異なる仮想環境特有の課題がある。
【０００４】
図１は、仮想環境特有の障害例を示す図である。ここでは、各物理マシンが共有するリソースであるストレージ装置の使用状況が変化することに伴う仮想マシン性能の低下を示している。図１の仮想マシンａと仮想マシンｂは、物理マシンＡとストレージ１とを共有して動作している。この環境において、仮想マシンａがＣＰＵ・メモリ・ストレージＩ／Ｏなどのリソースを大量に消費すると、仮想マシンａとリソースを共有している仮想マシンｂには、物理マシンＡやストレージ１から十分な量のリソースが割り当てられず、仮想マシンｂの性能が低下してしまう。さらに、ストレージ１は物理マシンＢを介して仮想マシンｃと仮想マシンｄも利用しているため、仮想マシンｃと仮想マシンｄのストレージＩ／Ｏ性能も低下してしまう。
【０００５】
上述のような、共有リソースの使用状況の変化に伴う仮想マシン性能低下は、従来のマシン単位の性能監視では発見や原因特定が困難であり、迅速な障害対処のためには、システム構成情報の把握と組み合わせた性能監視が不可欠である。
【０００６】
例えば、図１の例では、仮に個々の仮想マシンに性能監視ツールを組み込み、仮想マシンｂの性能低下を検出できたとしても、検出対象となった仮想マシンｂだけの調査では性能低下の根本原因（仮想マシンａの共有リソース大量消費）が発見できないため、迅速な対処は難しい。迅速な障害対処のためには、仮想マシン・物理マシン・ストレージ・ネットワーク機器といったシステムの構成要素の依存関係を常時記録しておき、仮想マシンの性能低下など障害が発生した場合には、記録してあるシステム構成情報を基に、共有リソースの使用状況まで含めた障害原因を分析することが有効である。特に、システム構成が複雑化しシステム構成の変更頻度も高い大規模仮想環境においては、効率的なシステム構成情報の把握と活用が、仮想マシンの性能管理上重要になる。
【０００７】
仮想環境において、システム構成情報の記録機能を有し、仮想マシンの性能管理・障害対処に使用し得る既存技術として、例えば以下がある。
【０００８】
特許文献１には、管理者があらかじめ入力した業務・機器・ネットワークの構成情報を元に、障害原因を特定するための依存関係ルールを作成しておき、マシン性能の低下など異常発生時に、障害イベントにより通信された障害部位情報と、あらかじめ作成したおいた障害特定ルールとを突き合わせて、システム管理者に障害原因候補を提示する技術が開示されている。
【０００９】
特許文献２には、障害が発生した物理デバイスと当該物理デバイスが影響を及ぼす論理デバイスの範囲を格納した影響範囲特定テーブルとを備え、障害イベントが通知されたときに、当該障害イベントにより通知された障害部位情報を基に、障害影響範囲テーブルを参照して、障害により影響がある物理デバイスと仮想デバイスの関係を抽出し、障害影響範囲および障害原因候補を提示する技術が開示されている。
【先行技術文献】
【特許文献】
【００１０】
【特許文献１】特開２０１１−１１３１２２号公報
【特許文献２】特開２０１０−９４１１号公報
【発明の概要】
【発明が解決しようとする課題】
【００１１】
上述の従来技術においては以下の課題があり、大規模な仮想環境における仮想マシンの性能管理と障害対処においてこれらを利用するのは困難である。
【００１２】
特許文献１に記載されている技術においては、システムの動作に必要なシステム構成情報を管理者が手作業で入力する手間が大きい。仮想環境は物理環境と比較して構成変更の頻度が高い。これは、仮想環境においては、物理マシンやストレージなどの共有リソースの利用効率を向上させるために、リソース使用状況にあわせた仮想マシンの配置が頻繁に変更されるためである。大規模環境における利用を想定した仮想化ソフトの中には、こうした仮想マシンの再配置を自動実行する機能をもつものもある。仮想マシンの移動毎に、管理者がシステム構成情報を手作業で更新するのは非常に困難である。
【００１３】
特許文献２に記載されている技術においては、システム構成情報の作成は自動化されているため、特許文献１と比較して大規模仮想環境への適用は容易である。一方、自動生成するシステム構成情報は常に最新状態しか保持しないため、仮想マシン性能低下の根本原因を調査する際に、性能低下が発生した現在のシステム構成と、過去に正常稼働していた時点でのシステム構成とを突き合わせて、障害原因調査を行うのが困難である。
【００１４】
本発明は、上記のような課題に鑑みてなされたものであり、仮想マシンの構成変更が生じ得る仮想環境において、物理マシンをまたがって共有される物理デバイスに起因した障害検出を効率的に実施することを目的とする。
【課題を解決するための手段】
【００１５】
本発明に係る仮想環境運用支援システムは、複数の物理マシンが共有する物理デバイスと各仮想マシンの間の利用関係の履歴を記録しておき、その履歴に基づいて複数の日時における各仮想マシンの物理デバイスの利用状況を特定する。
【発明の効果】
【００１６】
本発明に係る仮想環境運用支援システムによれば、仮想マシンの構成変更が生じる仮想環境においても、物理マシンや物理デバイスをまたがって発生する障害を効率的に検出することができる。
【図面の簡単な説明】
【００１７】
【図１】仮想環境特有の障害例を示す図である。
【図２】実施形態１に係る仮想環境運用支援システム１０００の概略構成を示す図である。
【図３】仮想マシン性能管理サーバ２０２の構成を説明する図である。
【図４】リソース使用実績格納テーブル３１３の構成を示す図である。
【図５】構成情報格納テーブル３１４の構成を示す図である。
【図６】構成変更イベント格納テーブル３１５の構成を示す図である。
【図７】仮想マシン性能分析画面７０１のイメージ図である。
【図８】性能低下原因分析画面８０１のイメージ図である。
【図９】仮想環境運用支援システム１０００の全体処理フローを示す概念図である。
【図１０】データ収集プログラム２１１の処理フローを説明する図である。
【図１１】仮想マシン性能分析画面作成プログラム３０９の処理フローを説明する図である。
【図１２】性能低下原因分析画面作成プログラム３１０の処理フローを説明する図である。
【図１３】リソース使用実績分析プログラム２１２の処理フローを説明する図である。
【図１４】システム構成情報分析プログラム２１３の処理フローを説明する図である。
【発明を実施するための形態】
【００１８】
以下、添付図面を参照して本発明の実施形態について説明する。ただし、以下に説明する実施形態は本発明を実現するための一例に過ぎず、本発明の技術的範囲を限定するものではないことに注意すべきである。
【００１９】
＜実施の形態１＞
本発明の実施形態１では、物理マシンをまたがって共有されるリソースとして、ストレージ装置を例に説明する。ストレージ装置は常に稼働しており状態は変化しないものとする。ストレージ名・物理マシン名・仮想マシン名については同一の名称は存在せず、それぞれ一意に対象を特定できるものとする。
【００２０】
＜実施の形態１：システム構成＞
図２は、本発明の実施形態１に係る仮想環境運用支援システム１０００の概略構成を示す図である。仮想環境運用支援システム１０００は、仮想環境管理サーバ２０１、仮想マシン性能管理サーバ２０２、仮想マシン性能管理クライアント２０３、複数の物理マシン２０４が、管理ＬＡＮ（Ｌｏｃａｌ  Ａｒｅａ  Ｎｅｔｗｏｒｋ）２０５を介して接続した構成をとる。物理マシン２０４は、ストレージネットワーク２０７を介してストレージ２０６と接続されている。
【００２１】
物理マシン２０４は、仮想化ソフト２０８と仮想マシン２０９を動作させるコンピュータである。仮想化ソフト２０８は、物理マシン２０４のハードウェア構成をソフトウェア技術でエミュレートし、任意のハードウェア構成をもつ仮想マシン２０９を動作可能にするソフトウェアである。
【００２２】
仮想環境管理サーバ２０１は、仮想環境管理ソフト２１０を動作させるコンピュータである。仮想環境管理ソフト２１０は、仮想化ソフト２０８がインストールされた物理マシン２０４や仮想マシン２０９に関する情報を管理ＬＡＮ２０５経由で収集して一時的に保存する機能、保存した情報を外部ソフトウェアに提供するための仮想環境管理ＡＰＩ（Ａｐｐｌｉｃａｔｉｏｎ  Ｐｒｏｇｒａｍ  Ｉｎｔｅｒｆａｃｅ）を提供する機能をもつ。
【００２３】
仮想マシン性能管理サーバ２０２は、本発明の主たる処理を実行するコンピュータであって、データ収集プログラム２１１、リソース使用実績分析プログラム２１２、システム構成情報分析プログラム２１３、および図３に詳細を説明するその他サブプログラムとテーブルデータを格納し、これらを実行・管理する機能をもつ。
【００２４】
仮想マシン性能管理クライアント２０３は、仮想環境運用支援システム１０００の利用者が操作するコンピュータである。仮想マシン性能管理クライアント２０３は、少なくとも、利用者の入力情報を受け付ける入力部と、利用者に情報を提示するディスプレイなどの出力部と、管理ＬＡＮを介した通信を処理する通信処理部とを有し、入力部から受け付けた利用者のシステム利用要求に応じて、仮想マシン性能管理サーバ２０２にアクセスし、仮想マシン性能管理サーバ２０２が作成した画面データを出力部に表示する機能をもつ。
【００２５】
なお、仮想環境においては通常、物理マシン２０４は、仮想マシン２０９が外部ネットワークと通信するための、管理ＬＡＮ２０５とは異なるサービス提供用ＬＡＮが接続されるが、本発明の実施にあたりサービス提供用ＬＡＮは関与しないため説明を省略する。
【００２６】
＜実施の形態１：仮想マシン性能管理サーバの構成＞
図３は、仮想マシン性能管理サーバ２０２の構成を説明する図である。なお、仮想環境管理サーバ２０１と仮想マシン性能管理クライアント２０３の構成は、後述する補助記憶部３０６内の格納情報を除き図３と同様であるため説明を省略する。
【００２７】
仮想マシン性能管理サーバ２０２は、命令やデータの入力を行う入力部３０１と、システムの状態などを出力する出力部３０２と、プログラムの実行や演算を行う演算部３０３と、プログラムやデータをロードする主記憶部３０４と、他の通信機器とコネクションを確立する通信処理部３０５と、データやプログラムを格納する補助記憶部３０６とが、バス３０７で接続された構成をとる。
【００２８】
補助記憶部３０６には、データ収集プログラム２１１と、仮想マシン性能分析画面作成プログラム３０９と、性能低下原因分析画面作成プログラム３１０と、リソース使用実績分析プログラム２１２と、システム構成情報分析プログラム２１３と、リソース使用実績格納テーブル３１３と、構成情報格納テーブル３１４と、構成変更イベント格納テーブル３１５とが格納される。
【００２９】
データ収集プログラム２１１は、仮想環境管理ソフト２１０が提供する仮想環境管理ＡＰＩを利用して、仮想マシン２０９と物理マシン２０４とストレージ２０６のリソース使用実績情報やシステム構成情報を収集するプログラムである。リソース仕様実績情報は、仮想マシン２０９または物理マシン２０４がストレージ２０６を使用した実績を記述した情報である。システム構成情報は、仮想マシン２０９または物理マシン２０４とストレージ２０６の間の接続関係を記述した情報である。すなわち、仮想マシン２０９または物理マシン２０４がストレージ２０６を利用している状況を記述した情報である。
【００３０】
仮想マシン性能分析画面作成プログラム３０９は、図７に示す仮想マシン性能分析画面を作成するプログラムである。処理の過程で、リソース使用実績分析プログラム２１２とリソース使用実績情報格納テーブル３１３とを使用する。
【００３１】
性能低下原因分析画面作成プログラム３１０は、図８に示す性能低下原因分析画面を作成するプログラムである。処理の過程で、システム構成情報分析プログラム２１３、リソース使用実績情報格納テーブル３１３、構成情報格納テーブル３１４、および構成変更イベント格納テーブル３１５を使用する。
【００３２】
以下では、記載の便宜上、各プログラムを動作主体として説明する場合があるが、実際にこれらプログラムを実行するのは演算部３０３などの演算機能を有する機能部であることを付言しておく。
【００３３】
＜実施の形態１：リソース使用実績格納テーブル＞
図４は、リソース使用実績格納テーブル３１３の構成を示す図である。リソース使用実績格納テーブル３１３は、仮想マシン性能管理サーバ２０２が、データ収集プログラム２１１の実行により収集した、仮想マシン・物理マシン・ストレージのリソース使用実績情報を格納するテーブルである。
【００３４】
情報収集日時３１３１は、格納するリソース使用実績情報の収集日時を保持する。エンティティ名称３１３２は、格納するリソース使用実績情報の仮想環境における構成要素を一意に特定する情報を保持する。本実施形態１では、仮想マシン名、物理マシン名、ストレージ名のいずれかである。リソース種別３１３３は、格納するリソース使用実績情報のリソース種別を保持する。本実施形態１ではストレージ２０６のＩ／Ｏに関する値を対象としているが、これに限らずＣＰＵ使用率、メモリ使用量、ネットワーク帯域使用率などについても取り扱うことができる。実績値３１３４は、リソース種別３１３３の値で指定されるリソース使用実績情報のパフォーマンス値を保持する。
【００３５】
＜実施の形態１：構成情報格納テーブル＞
図５は、構成情報格納テーブル３１４の構成を示す図である。構成情報格納テーブル３１４は、仮想マシン性能管理サーバ２０２が、データ収集プログラム２１１を実行することにより収集した、ある一時点における仮想環境のシステム構成情報を格納するテーブルである。
【００３６】
情報収集日時３１４１は、格納するシステム構成情報の収集日時を保持する。ストレージ名称３１４２、物理マシン名称３１４３、仮想マシン名称３１４４は、格納するシステム構成情報の取得対象としたストレージ名、物理マシン名、仮想マシン名をそれぞれ保持する。仮想マシン状態３１４５と物理マシン状態３１４６は、仮想マシン名称３１４４と物理マシン名称３１４３とで指定される仮想マシンと物理マシンの取得時点における状態情報をそれぞれ保持する。状態情報としては、例えば電源オン・電源オフ・休止状態などがある。
【００３７】
＜実施の形態１：構成変更イベント格納テーブル＞
図６は、構成変更イベント格納テーブル３１５の構成を示す図である。構成変更イベント格納テーブル３１５は、仮想マシン性能管理サーバ２０２が、データ収集プログラム２１１を実行することにより収集した、仮想環境のシステム構成および状態の変更を記録したイベント情報を格納するテーブルである。例えば、仮想マシン２０９が他の物理マシン２０４に移動した、仮想マシン２０９や物理マシン２０４の電源オン・オフが実行された、休止状態への移行・再開が実行された、といったイベント情報が、発生日時とともに記録される。
【００３８】
イベント発生日時３１５１は、格納するイベント情報の収集日時を保持する。エンティティ名称３１５２は、格納するイベント情報の仮想環境における構成要素を一意に特定する情報を保持する。本実施形態１では、仮想マシン名、物理マシン名のいずれかである。発生イベント名称３１５３は、格納するイベントの種別を表すイベント名称を保持する。移動元エンティティ名称３１５４と移動先エンティティ名称３１５５は、仮想マシン２０９または物理マシン２０４が、他の物理マシン２０４やストレージ２０６へ移動する場合の、移動元と移動先のエンティティ名称をそれぞれ保持する。なお、移動が伴わないイベントの場合は、これらフィールドの値は同じになる。
【００３９】
＜実施の形態１：仮想マシン性能分析画面＞
図７は、仮想マシン性能分析画面７０１のイメージ図である。仮想マシン性能分析画面７０１は、大量の仮想マシン２０９の性能状態を効率的に監視し、性能が低下している仮想マシンを迅速に特定するために利用する画面である。仮想マシン性能分析画面７０１は、仮想マシン性能分析画面作成プログラム３０９を実行することにより作成される。
【００４０】
仮想マシン性能分析画面７０１は、仮想マシン性能傾向表示エリア７０２と、性能低下仮想マシン名表示エリア７０３と、データ更新ボタン７０４と、性能分析ボタン７０５とをもつ。仮想マシン性能傾向表示エリア７０２は、検出閾値入力欄７０６と検出閾値サイン７０７をもつ。性能低下仮想マシン名表示エリア７０３は、性能低下仮想マシン名ボタン７０８をもつ。
【００４１】
仮想マシン性能傾向表示エリア７０２は、仮想マシンの性能傾向の統計情報を表示するエリアである。本エリアを参照することにより、利用者は、性能が低下している仮想マシン（性能低下仮想マシン）の存在を確認することができる。なお、本実施形態１では、統計情報の例として、一定期間における仮想マシン毎およびリソース種別毎の性能実績値の平均を集計（平均ＣＰＵ割り当て待ち時間・平均メモリスワップ量・平均ネットワークパケットロス率・平均ストレージＩ／Ｏ処理待ち時間）し、横軸（データ範囲）をその平均値とし、縦軸（頻度）を各データ範囲内に収まる仮想マシンの個数とする、度数分布図を表示している。
【００４２】
検出閾値入力欄７０６と検出閾値サイン７０７と性能分析ボタン７０５は、性能低下仮想マシン名表示エリア７０３に表示する仮想マシンの抽出条件を指定するために使用する。利用者は、仮想マシン性能傾向確認エリア７０２に表示された統計情報を確認しながら、性能が低下している仮想マシンとして抽出したい性能値条件を検出閾値入力欄７０６に入力する。検出閾値入力欄７０６に値を入力すると、統計情報上には検出閾値の位置を示すように検出閾値サイン７０７が再描画される。利用者が、検出閾値入力欄７０６を入力した後に性能分析ボタン７０５を押下すると、性能低下仮想マシン名表示エリア７０３には、指定した条件によって抽出された仮想マシン名が表示される。
【００４３】
性能低下仮想マシン名表示エリア７０３は、仮想マシン性能傾向確認エリア７０２で指定した条件によって抽出された仮想マシン名を表示するエリアである。本エリアを参照することにより、利用者は、大量の仮想マシンの中から性能が低下している仮想マシンを特定することができる。なお、性能低下仮想マシン名の表示は、性能低下の深刻度を確認しやすくするため、性能低下の程度に応じたランク付けをした上で表示する。例えば、本実施形態１では、検出閾値を超えているリソース種別数が多い仮想マシンほど上位に表示している。検出閾値を超えているリソース種別数が同じであれば、超えている程度が大きいほど上位に表示する。
【００４４】
性能低下仮想マシン名表示エリア７０３に表示する仮想マシン名は、性能低下仮想マシン名ボタン７０８として提示される。性能低下仮想マシン名ボタン７０８は、性能低下仮想マシン名が記載されたボタンであり、押下すると当該仮想マシンの性能低下原因を調査するための性能低下原因分析画面（図８）に画面を遷移させるボタンである。
【００４５】
データ更新ボタン７０４は、押下すると、データ収集プログラム２１１を実行して仮想環境管理サーバ２０１から最新の情報を取得し、仮想マシン性能分析画面を再描画するボタンである。
【００４６】
検出閾値入力欄７０６については、例えば性能値の分布のうち性能値が低い方から順に上位１０％に相当する性能値を自動的に設定するなどの手法により、自動指定することもできる。
【００４７】
＜実施の形態１：性能低下原因分析画面＞
図８は、性能低下原因分析画面８０１のイメージ図である。性能低下原因分析画面８０１は、仮想マシン性能分析画面７０１で特定した性能低下仮想マシンが共有リソースを使用している状況を確認し、性能低下原因を調査するために利用する画面である。性能低下原因分析画面８０１は、性能低下原因分析画面作成プログラム３１０を実行することにより作成される。
【００４８】
性能低下原因分析画面８０１は、仮想マシン性能時系列表示エリア８０２と、共有リソース利用状況表示エリア８０３と、正常稼働日時入力欄８０４と、リソース種別入力欄８０５と、構成表示ボタン８０６と、戻るボタン８０７とをもつ。仮想マシン性能時系列表示エリア８０２は、仮想マシン名表示欄８０８と正常稼働日時サイン８０９をもつ。共有リソース利用状況表示エリア８０３は、正常稼働日時共有リソース利用状況表示欄８１０と、現在日時共有リソース利用状況表示欄８１１とをもつ。正常稼働日時共有リソース利用状況表示欄８１０および現在日時共有リソース利用状況表示欄８１１は、システム構成マップ８１２とリソース状態サイン８１３とリソース利用量表示サイン８１４とで構成される。
【００４９】
仮想マシン性能時系列表示エリア８０２は、指定された仮想マシンの性能値の時系列データを表示するエリアである。本エリアを参照することにより、利用者は、当該仮想マシン性能値の変動を確認し、性能低下が発生した日時を特定することができる。本実施形態１では、仮想マシン性能傾向表示エリア７０２に統計表示したものと同じ、一定期間における仮想マシン毎およびリソース種別毎の性能実績値の時系列変化をグラフ化して表示している。仮想マシン名表示欄８０８には、性能時系列を表示している仮想マシン名が表示される。
【００５０】
共有リソース使用状況表示エリア８０３は、指定した性能低下仮想マシンの正常稼働時の共有リソース利用状況と、異常時の共有リソース利用状況とを表示するエリアである。正常稼動時については、後述する正常稼働日時入力欄８０４内に、当該仮想マシンが過去に正常稼動していたと推定される日時を利用者が指定入力するものとする。異常時については、利用者が指定入力してもよいし現在日時をもってこれに代えて自動指定するようにしてもよい。本エリアを参照することにより、利用者は、性能低下仮想マシンが正常稼働時と異常時にそれぞれにおいて使用していた共有リソース、各リソースの状態、および各リソースの負荷状況を比較し、仮想マシン性能の低下原因を効率的に調査し、特定することができる。
【００５１】
正常稼働日時入力欄８０４、正常稼働日時サイン８０９、リソース種別入力欄８０５、および構成表示ボタン８０６は、共有リソース利用状況表示エリア８０３に表示する共有リソース利用状況の条件を指定するために使う。利用者は、仮想マシン性能時系列表示エリア８０２に表示された性能値の時系列を参照して、当該仮想マシンが正常稼働していた日時を特定し、この日時を正常稼働日時入力欄８０４に入力する。正常稼働日時は、例えば、性能実績値が悪化を示す前の日時を指定すればよい。正常稼働日時入力欄８０４に日時を入力すると、時系列上には正常稼働日時の位置を示すように正常稼働日時表示サイン８０９が再描画される。さらに、利用者は、リソース種別入力欄８０５に、共有リソース利用状況表示エリア８０３で比較したいリソース種別を入力し、構成表示ボタン８０６を押下する。構成表示ボタン８０６が押下されると、共有リソース利用状況表示エリア８０３には、正常稼働日時入力欄８０４に入力した日時における共有リソースの利用状況と、現在時刻（または別途指定した異常時）における共有リソースの利用状況とが、それぞれ正常稼働日時共有リソース利用状況表示欄８１０と現在日時共有リソース利用状況表示欄８１１に表示される。
【００５２】
システム構成マップ８１２は、指定された時刻における共有リソースの論理構成を示す。システム構成マップ８１２を参照することにより、利用者は、性能低下前には存在しなかった仮想マシンの追加などのような、性能低下原因の候補に関する情報を入手できる。
【００５３】
リソース状態サイン８１３は、指定された時刻における共有リソースの状態を示す。状態には例えば、電源オン/オフ、休止状態などがある。リソース状態サイン８１３を参照することにより、利用者は、性能低下前には停止していた仮想マシンの起動などのような、性能低下原因の候補に関する情報を入手できる。
【００５４】
リソース利用量表示サイン８１４は、リソース種別入力欄８０５に指定されたリソースの使用量を段階表示する。リソース利用量表示サイン８１４を参照することにより、利用者は、性能低下前には低負荷だった仮想マシンの共有リソース利用負荷の急増などのような、性能低下原因の候補に関する情報を入手できる。
戻るボタン８０７は、性能低下原因分析画面８０１の表示を終了し、仮想マシン性能分析画面７０１に遷移するボタンである。
【００５５】
＜実施の形態１：処理フロー説明のための初期条件＞
以降では、本発明の実施形態１に係る仮想環境運用支援システム１０００の処理フローを説明する。ただし、以下の説明にあたっては次の初期値が設定されているものとする。初期値はシステム設定パラメータ等で変更できるものとする。
【００５６】
図７の仮想マシン性能傾向表示エリア７０２の統計情報の集計期間は、仮想マシン性能分析画面作成プログラム３０９の実行時点から過去１時間までの期間とし、集計する性能値種別は、ＣＰＵ待ち時間・メモリスワップ量・ネットワークパケットロス率・ストレージＩ／Ｏコマンド処理待ち時間とする。検出閾値７０６は、何も指定されなかった場合は空文字をとる。
【００５７】
図８の仮想マシン性能時系列表示エリア８０２の時系列の表示期間と性能値種別の初期値は、仮想マシン性能傾向表示エリア７０２の統計情報と同じ期間と性能値種別とする。正常稼働日時８０４は、何も指定されなかった場合は、例えば性能低下原因分析画面作成プログラム３１０の実行日時から３日前の同時刻とする。リソース種別８０５は、あらかじめＣＰＵ利用率・メモリ利用率・ネットワーク通信量・ストレージＩ／Ｏ量を選択項目として登録しておき、何も指定されなかった場合は、例えばストレージＩ／Ｏ量を指定するものとする。
【００５８】
リソース利用量表示サイン８１４を段階分けして表示するための閾値は、リソース種別毎にあらかじめ指定しておくものとする。例えば、ＣＰＵ利用率であれば３０％未満、３０％以上６０％未満、６０％以上といった閾値を指定する。或いは、ＣＰＵ利用率を全ての仮想マシンについて集計し、利用率の高い仮想マシン上位３割をレベル３、中位３割をレベル３にするなど、仮想マシンの順位に基づいた閾値の生成ルールを登録しておいてもよい。
【００５９】
以下の説明において、仮想マシン性能分析画面作成プログラム３０９とデータ収集プログラム２１１は定期実行されるが、この実行周期はあらかじめ指定しておく。例えば、仮想マシン性能分析画面作成プログラム３０９の実行周期は１時間、データ収集プログラム２１１の実行周期は２４時間に指定する。
【００６０】
＜実施の形態１：全体処理概要＞
図９は、仮想環境運用支援システム１０００の全体処理フローを示す概念図である。仮想環境運用支援システム１０００は、利用者が仮想マシン性能管理クライアント２０３を操作し、仮想マシン性能管理サーバ２０２にアクセスして、仮想マシン性能分析画面を要求することにより起動する。この要求により、仮想マシン性能管理サーバ２０２は、仮想マシン性能分析画面作成プログラム３０９を実行する。
【００６１】
仮想マシン性能分析画面作成プログラム３０９は、仮想マシン性能管理クライアント２０３からの要求、あらかじめ指定された周期の定期実行、および利用者によるデータ更新ボタン７０４や性能分析ボタン７０５の押下によって起動し、仮想マシン性能分析画面７０１を作成して仮想マシン性能管理クライアント２０３に送信する。そして、データ更新ボタン７０４の押下や定期実行によってデータ収集プログラム２１１を呼び出し、性能低下仮想マシン名ボタン７０８の押下によって性能低下原因分析画面作成プログラム３１０を呼び出す。
【００６２】
データ収集プログラム２１１は、仮想マシン性能分析画面作成プログラム３０９からの呼び出しや、あらかじめ指定された周期の定期実行により起動し、仮想環境管理サーバ２０１から最新の情報を取得して、リソース使用実績格納テーブル３１３と構成情報格納テーブル３１４と構成変更イベント格納テーブル３１５の情報を更新する。
【００６３】
性能低下原因分析画面作成プログラム３１０は、性能低下仮想マシン名ボタン７０８や構成表示ボタン８０６の押下によって起動し、性能低下原因分析画面８０１を作成して仮想マシン性能管理クライアント２０３に送信する。そして、戻るボタン８０７の押下によって仮想マシン性能分析画面作成プログラム３０９を呼び出す。
【００６４】
＜実施の形態１：データ収集プログラム＞
図１０は、データ収集プログラム２１１の処理フローを説明する図である。以下、図１０の各ステップについて説明する。
【００６５】
データ収集プログラム２１１は、あらかじめ指定された周期による定期実行かをチェックし、定期実行であればステップＳ１００２へ進む、定期実行以外（本実施形態１では、仮想マシン性能分析画面作成プログラム３０９からの呼び出し）であればステップＳ１００３へ進む（ステップＳ１００１）。
【００６６】
データ収集プログラム２１１は、仮想環境管理サーバ２０１から、仮想環境管理サーバ２０１が管理している全ての仮想マシン・物理マシン・ストレージの構成および状態情報を取得し、構成情報格納テーブル３１４に格納する（ステップＳ１００２）。
【００６７】
データ収集プログラム２１１は、仮想環境管理サーバ２０１から、仮想環境管理サーバ２０１が管理している全ての仮想マシン・物理マシン・ストレージのリソース使用実績情報を取得し、リソース使用実績格納テーブル３１３に格納する（ステップＳ１００３）。なお、リソース使用実績情報の取得期間は、前回取得日時からデータ収集プログラム２１１実行時点までの期間とする。
【００６８】
データ収集プログラム２１１は、仮想環境管理サーバ２０１から、仮想環境管理サーバ２０１が管理している全ての仮想マシン・物理マシン・ストレージの構成および状態の変更に関わるイベント情報を取得し、構成変更イベント格納テーブル３１５に格納する（ステップＳ１００４）。なお、イベント情報の取得期間は、前回取得日時からデータ収集プログラム２１１実行時点までの期間とする。
【００６９】
＜実施の形態１：仮想マシン性能分析画面作成プログラム＞
図１１は、仮想マシン性能分析画面作成プログラム３０９の処理フローを説明する図である。以下、図１１の各ステップについて説明する。
【００７０】
仮想マシン性能分析画面作成プログラム３０９は、あらかじめ指定された周期による定期実行またはデータ更新ボタン７０４の押下による起動かをチェックし、定期実行またはデータ更新ボタン７０４の押下による起動であれば、ステップＳ１１０２に進む。データ更新ボタン７０４の押下以外の起動（本実施形態１では、性能分析ボタン７０５の押下）であれば、ステップＳ１１０３に進む（ステップＳ１１０１）。
【００７１】
仮想マシン性能分析画面作成プログラム３０９は、データ収集プログラム２１１を実行する（ステップＳ１１０２）。
【００７２】
仮想マシン性能分析画面作成プログラム３０９は、リソース使用実績格納テーブル３１３から、あらかじめ指定された分析期間分の全ての仮想マシンのリソース使用実績情報を取得し、変数に格納する（ステップＳ１１０３）。
【００７３】
仮想マシン性能分析画面作成プログラム３０９は、検出閾値入力欄７０６の入力があれば入力値を取得し、入力がなければ初期値を取得して、検出閾値情報として変数に格納する。そして、ステップＳ１１０３で取得した仮想マシンのリソース使用実績情報と、取得した検出閾値情報を引数に、リソース使用実績分析プログラム２１２を実行し、戻り値として性能統計情報と性能低下仮想マシン名情報とを取得する（ステップＳ１１０４）。ここで、性能統計情報は、多数の仮想マシンの性能状態を一覧把握するために統計処理された情報であり、本実施形態１では、指定期間における仮想マシン毎およびリソース種別毎の性能平均値を集計した度数分布である。また、性能低下仮想マシン名情報は、指定された検出閾値情報を基準として抽出した仮想マシン名と検出条件になったリソース種別名を含む情報である。
【００７４】
仮想マシン性能分析画面作成プログラム３０９は、ステップＳ１１０４で取得した性能統計情報と性能低下仮想マシン名情報を使用して、それぞれ、仮想マシン性能傾向表示エリア７０２と、性能低下仮想マシン名表示エリア７０３を作成し、仮想マシン性能分析画面７０１を作成する。そして、作成した仮想マシン性能分析画面７０１を仮想マシン性能管理クライアント２０３に送信して表示する。（ステップＳ１１０５）。なお、性能低下仮想マシン名情報は、性能低下仮想マシン名ボタン７０８として表示する。また、仮想マシン性能分析画面作成プログラム３０９は、本ステップの実行後、利用者の操作待ち状態になる。
【００７５】
利用者によりデータ更新ボタン７０４または性能分析ボタン７０５が押下されると、仮想マシン性能分析画面作成プログラム３０９は、検出閾値入力欄７０６の入力値を取得して変数に格納し、ステップＳ１１０１に戻る。この処理により、利用者は、任意の検出閾値における仮想マシン性能分析画面７０１を再表示できる。性能低下仮想マシン名ボタン７０８が押下されると、仮想マシン性能分析画面作成プログラム３０９は、押下したボタンの性能低下仮想マシン名を引数に、性能低下原因分析画面作成プログラム３１０を呼び出して終了する（ステップＳ１１０６）。
【００７６】
＜実施の形態１：性能低下原因分析画面作成プログラム＞
図１２は、性能低下原因分析画面作成プログラム３１０の処理フローを説明する図である。以下、図１２の各ステップについて説明する。
【００７７】
性能低下原因分析画面作成プログラム３１０は、引数で指定された仮想マシン名を取得し、性能低下仮想マシン名として変数に格納する（ステップＳ１２０１）。
【００７８】
性能低下原因分析画面作成プログラム３１０は、リソース使用実績格納テーブル３１３から、ステップＳ１２０１で取得した性能低下仮想マシン名のリソース使用実績情報を取得し、性能時系列グラフを作成する（ステップＳ１２０２）。ここで、取得するリソース使用実績の性能値種別は、ステップＳ１１０３で取得したものと同一とする。また、取得するリソース使用実績情報の取得期間は、正常稼働日時入力欄８０４に値が入力されていれば、入力された正常稼働日時の一定期間前（例えば５分前）から現在日時までの期間とし、値が入力されていなければ、ステップＳ１１０３で取得した期間と同一とする。
【００７９】
性能低下原因分析画面作成プログラム３１０は、正常稼働日時入力欄８０４とリソース種別入力欄８０５のそれぞれについて、入力があれば入力値を取得し、入力がなければ初期値を取得して、正常稼働日時情報とリソース種別情報として変数に格納する。そして、取得した正常稼働日時情報とリソース種別情報、およびステップＳ１２０１で取得した性能低下仮想マシン名を引数に、システム構成情報分析プログラム２１３を実行し、指定された正常稼働日時におけるシステム構成情報（以降、正常稼働時点システム構成情報と記載する）を取得する（ステップＳ１２０３）。ここで、システム構成情報は、性能低下仮想マシンが利用する共有リソースの構成マップ、電源状態、およびリソース使用負荷情報とを含む情報である。なお、リソース使用負荷情報は、リソース利用量表示サイン８１４の表示に使う情報であり、レベル１〜レベル３など、リソース使用負荷の程度をあらかじめ指定された閾値に従い段階表現した情報である。
【００８０】
性能低下原因分析画面作成プログラム３１０は、ステップＳ１２０１で取得した性能低下仮想マシン名と、現在日時およびステップＳ１２０３で取得したリソース種別情報を引数に、システム構成情報分析プログラム２１３を実行し、現在日時におけるシステム構成情報（以降、現時点システム構成情報と記載する）を取得する（ステップＳ１２０４）。
【００８１】
性能低下原因分析画面作成プログラム３１０は、ステップＳ１２０２で取得した性能時系列グラフを使用して仮想マシン性能時系列エリア８０２を描画し、さらにステップＳ１２０３で取得した正常稼働時点システム構成情報とステップＳ１２０４で取得した現時点システム構成情報とを使用して、共有リソース利用状況表示エリア８０３を描画し、性能低下原因分析画面８０１を作成する。性能低下原因分析画面作成プログラム３１０は、仮想マシン性能管理クライアント２０３に、作成した性能低下原因分析画面８０１を送信して表示する（ステップＳ１２０５）。性能低下原因分析画面作成プログラム３１０は、本ステップの実行後、利用者の操作待ち状態になる。なお、共有リソース利用状況表示エリア８０３の表示は、ステップＳ１２０１で取得した性能低下仮想マシンを強調表示するものとする。例えば、本実施例では性能低下仮想マシンをシステム構成マップ８１２の最上段に置き、他の仮想マシンと色を変えて表示している。
【００８２】
利用者により、構成表示ボタン８０６が押下されると、性能低下原因分析画面作成プログラム３１０は、正常稼働日時入力欄８０４とリソース種別入力欄８０５の入力値を取得して変数に格納し、ステップＳ１２０２へ戻る。この処理により、利用者は、任意正常稼働日時とリソース種別における性能低下原因分析画面８０１を再表示できる。戻るボタン８０７が押下されると、性能低下原因分析画面作成プログラム３１０は、仮想マシン性能監視画面作成プログラム３０９を呼び出して終了する（ステップＳ１２０６）。
【００８３】
＜実施の形態１：リソース使用実績分析プログラム＞
図１３は、リソース使用実績分析プログラム２１２の処理フローを説明する図である。以下、図１３の各ステップについて説明する。
【００８４】
リソース使用実績分析プログラム２１２は、引数から、仮想マシンのリソース使用実績情報と検出閾値情報を取得し、変数に格納する（ステップＳ１３０１）。
【００８５】
リソース使用実績分析プログラム２１２は、ステップＳ１３０１で取得した、仮想マシンのリソース使用実績情報を集計し、仮想マシン性能傾向集計情報を作成し、変数に格納する（ステップＳ１３０２）。なお、本実施形態１では、仮想マシン性能傾向集計情報として、一定期間における仮想マシン毎およびリソース種別毎の性能平均値を集計し、度数分布を作成している。
【００８６】
リソース使用実績分析プログラム２１２は、ステップＳ１３０２で取得した仮想マシン性能傾向集計情報をグラフ化し、性能統計情報を作成する（ステップＳ１３０３）。本実施形態１では、度数分布図を作成して画像データを作成している。
【００８７】
リソース使用実績分析プログラム２１２は、ステップＳ１３０２で作成した仮想マシン性能傾向集計情報のうち、集計値がステップＳ１３０１で取得した検出閾値情報の値を超えている仮想マシンの名前とリソース種別名を特定し、当該仮想マシン名とリソース種別名を、性能低下仮想マシン名情報として変数に格納する（ステップＳ１３０４）。なお、本ステップは、検出閾値情報に初期値である空文字が指定されていた場合は、次の動作をしてもよい。ステップＳ１３０２で作成した仮想マシン性能傾向集計情報から、リソース種別毎に性能値ワースト１０位までの仮想マシン名を特定し、当該仮想マシン名とリソース種別名を性能低下仮想マシン名情報として変数に格納する。
【００８８】
リソース使用実績分析プログラム２１２は、ステップＳ１３０３で取得した性能統計情報（度数分布データと度数分布図の画像データ）と、ステップＳ１３０４で取得した性能低下仮想マシン名情報を返却し、終了する（ステップＳ１３０５）。
【００８９】
＜実施の形態１：システム構成情報分析プログラム＞
図１４は、システム構成情報分析プログラム２１３の処理フローを説明する図である。システム構成情報分析プログラム２１３の処理は、大きく２つの処理に分けられる。ステップＳ１４０１〜ステップＳ１４０４は、引数で指定された日時における性能低下仮想マシンのシステム構成を再現し、当該仮想マシンが利用していた共有リソース（本実施形態１では、物理マシン２０４とストレージ２０６）を特定する処理である。ステップＳ１４０５〜ステップＳ１４０９は、ステップＳ１４０４までの処理で特定した共有リソース上で稼働していた、全ての物理マシン・仮想マシンの構成マップと電源状態およびリソース使用負荷状況を取得し、返却値を作成する処理である。
【００９０】
本実施形態１では、システム構成の再現に必要なデータの取得が仮想環境に与える影響を軽減するために、以下の工夫をしている。構成情報格納テーブル３１４は、ある時点のシステム全体構成のスナップショット的な情報を保持する。これに対して、構成変更イベント格納テーブル３１５は、前回データ取得以降にシステムに発生した構成変更イベントのみを保持する。構成情報格納テーブル３１４のみを用いて、任意の時点のシステム構成を再現するためには、構成情報格納テーブル３１４を短い時間間隔で高頻度に更新しなければならないが、このデータ更新処理は、仮想環境管理サーバ２０１が管理する全てのシステム構成要素の状態を参照するため、データ収集にあたり仮想環境管理サーバ２０１や物理マシン２０４に高い負荷をかけてしまう。そこで、本実施形態１では、構成情報格納テーブル３１４が保持する構成のスナップショットに対して、構成変更イベント格納テーブル３１５が保持するイベント情報を適用することにより、システム構成を再現することにした。本方式によれば、構成情報格納テーブル３１４のデータ更新頻度を抑えることができるため、仮想環境に高い負荷をかけることなく、任意の時刻におけるシステム構成を再現することができる。
【００９１】
システム構成情報分析プログラム２１３は、引数から、性能低下仮想マシン名と構成表示日時とリソース種別情報を取得して変数に格納する（ステップＳ１４０１）。本ステップで取得した構成表示日時を、以降本稿では構成表示日時Ｔ１と記載する。
【００９２】
システム構成情報分析プログラム２１３は、構成情報格納テーブル３１４から、仮想マシン名称３１４４がステップＳ１４０１で取得した性能低下仮想マシン名に一致し、かつ情報収集日時３１４１が構成表示日時Ｔ１以前で最も新しいレコードを検索し、これをベース構成情報Ｋ１として変数に格納する。また取得したベース構成情報Ｋ１の情報収集日時３１４１をベース日時Ｔ２として変数に格納する（ステップＳ１４０２）。 本ステップは、システム構成を表示しようとする日時Ｔ１の直近で構成情報格納テーブル３１４内に格納されているシステム構成情報を取得するためのものである。Ｔ２よりも後のシステム構成情報よりも後については、ベース構成情報Ｋ１に対して構成変更イベント情報を差分として適用すれば足りるので、まずは本ステップにおいて最新のシステム構成情報を取得することとした。ただし、日時Ｔ１におけるシステム構成情報が存在する場合は、これをそのまま用いればよいので、以下のステップは必要ない。
【００９３】
システム構成情報分析プログラム２１３は、構成変更イベント格納テーブル３１５から、エンティティ名称３１５２にステップＳ１４０１で取得した性能低下仮想マシン名が含まれ、かつイベント発生日時３１５１が、ベース日時Ｔ２から構成表示日時Ｔ１までの範囲にあるレコードを検索し、これらレコードを構成変更履歴情報Ｋ２として変数に格納する（ステップＳ１４０３）。
【００９４】
システム構成情報分析プログラム２１３は、ステップＳ１４０２で取得したベース構成情報Ｋ１と、ステップＳ１４０３で取得した構成変更履歴情報Ｋ２とをマージして、性能低下仮想マシンの構成情報Ｋ３を生成し、構成表示日時Ｔ１の時点で性能低下仮想マシンが利用していた共有リソース名（利用物理マシン名、利用ストレージ名）を特定する（ステップＳ１４０４）。
【００９５】
システム構成情報分析プログラム２１３は、構成情報格納テーブル３１４から、ストレージ名称３１４２がステップＳ１４０４で特定した利用ストレージ名と一致し、かつ情報収集日時３１４１が構成表示日時Ｔ１以前で最も新しいレコードを検索し、これを共有リソースベース構成情報Ｋ４として変数に格納する。また共有リソースベース構成情報Ｋ４に含まれる物理マシン名と仮想マシン名と情報収集日時を、それぞれ共有物理マシン名、共有仮想マシン名、共有リソースベース日時Ｔ３として変数に格納する（ステップＳ１４０５）。本ステップは、ストレージ２０６を利用していた物理マシンと仮想マシンを全て抽出するためのものである。すなわち、ストレージ２０６が物理マシンをまたがって共有されている場合でも、その利用関係を抽出する意義がある。
【００９６】
システム構成情報分析プログラム２１３は、構成変更イベント格納テーブル３１５から、エンティティ名称３１５２と移動元エンティティ名称３１５４と移動先エンティティ名称３１５５のいずれかに、ステップＳ１４０５で取得した共有物理マシン名または共有仮想マシン名が含まれ、かつイベント発生日時３１５１が、共有リソースベース日時Ｔ３から構成表示日時Ｔ１までの範囲にあるレコードを検索し、これらレコードを共有リソース構成変更履歴情報Ｋ５として変数に格納する（ステップＳ１４０６）。
【００９７】
システム構成情報分析プログラム２１３は、ステップＳ１４０５で取得した共有リソースベース構成情報Ｋ４と、ステップＳ１４０６で取得した共有リソース構成変更履歴情報Ｋ５をマージして、共有リソース構成情報Ｋ６を生成し、構成表示日時Ｔ１における、性能低下仮想マシンと共有物理マシンと共有仮想マシンの構成マップおよび電源状態を特定する（ステップＳ１４０７）。
【００９８】
システム構成情報分析プログラム２１３は、リソース使用実績格納テーブル３１３から、リソース種別３１３３がステップＳ１４０１で取得したリソース種別情報と一致し、かつエンティティ名称３１５２が共有リソース構成情報Ｋ６に含まれるリソース使用実績データを検索し、取得する。さらに、あらかじめ指定されたリソース利用量表示サイン８１３の閾値に従って当該データを集計し、リソース使用負荷情報を生成する（ステップＳ１４０８）。
【００９９】
システム構成情報分析プログラム２１３は、ステップＳ１４０７で生成した、共有リソース構成情報Ｋ６と、ステップＳ１４０８で生成したリソース使用負荷情報とを返却し、処理を終了する（ステップＳ１４０９）。 
【０１００】
＜実施の形態１：まとめ＞
以上のように、本実施形態１に係る仮想環境運用支援システム１０００は、物理マシン間でまたがって共有されるリソース（物理デバイス）と仮想マシンの間の利用関係の履歴をシステム構成情報として記録しておき、性能低下原因分析画面８０１において、複数の時点における仮想マシンとリソースの間の利用関係を、各時点における仮想マシンの性能実績値とともに表示する。これにより、リソースが物理マシン間でまたがって共有されている場合でも、システム構成の変化が仮想マシンの性能変化に与えた影響を特定することができる。
【０１０１】
＜実施の形態２＞
実施形態１では、共有リソースとして物理マシンとストレージを例に説明した。他の共有リソースの例として、例えばネットワーク機器について同様の管理を実施してもよい。ここでいうネットワーク機器とは、ルータ、ＬＡＮスイッチなどのように、ネットワーク上に存在し各物理マシンが共通して使用する機器のことである。
【０１０２】
この場合は、例えば、図５の構成情報格納テーブルのストレージ名称３１４２部分を、ネットワーク機器名称に変更したネットワーク機器管理用構成情報格納テーブルを追加し、データ収集プログラム２１１は、ネットワーク機器のリソース使用実績情報とシステム構成情報およびシステム構成変更イベント情報も取得する。また、仮想マシン性能分析画面７０１には、共有リソースとしてストレージ構成を表示するか、ネットワーク構成を表示するかを選択する入力欄を追加し、当該入力欄でストレージ構成が指定された場合は、図１２で説明したシステム構成情報分析プログラム２１３を実行し、当該入力欄でネットワーク構成が指定された場合は、構成情報格納テーブルの代わりにネットワーク機器管理用構成情報格納テーブルを参照して、システム構成情報分析プログラム２１３を実行するものとする。
【０１０３】
＜実施の形態３＞
図１２で説明した性能低下原因分析画面作成プログラム３１０では、正常稼働日時入力欄８０４に入力された日時と現在日時における共有リソース使用状況の比較を行うものとした。しかし、共有リソース使用状況の比較は、利用者が入力した任意の日時間で行えるようにしてもよい。
【０１０４】
この場合は、例えば、性能低下原因分析画面８０１には、正常稼働日時入力欄８０４と正常稼働日時サイン８０９と同様の機能をもつ、異常稼働日時入力欄と異常稼働日時サインを追加する。そして、性能低下原因分析画面作成プログラム３１０のステップＳ１２０４において、現在日時の代わりに異常稼働日時入力欄に入力された日時を使用して処理を実施し、システム構成情報（異常稼働時点システム構成情報）を取得するものとする。そして、ステップＳ１２０５は、現時点システム構成情報の代わりに異常稼働時点システム構成情報を使用して処理を実施する。また、ステップＳ１２０６は、正常稼働日時入力欄８０４とリソース種別入力欄８０５の入力値の他に、追加した異常稼働日時入力欄の値を加えて処理を実施する。
【０１０５】
＜実施の形態４＞
性能低下原因分析画面８０１には、共有リソース利用状況表示エリア８０３に表示したシステム構成情報の差異を、ログとして利用者に提示する構成差分ログ表示ボタンを追加してもよい。
【０１０６】
この場合は、例えば、性能低下原因分析画面作成プログラム３１０は、ステップＳ１２０６で構成差分ログ表示ボタンが押下された場合、構成変更イベント格納テーブル３１５から、イベント発生日時３１５１がステップＳ１２０３で指定された正常稼働日時からステップＳ１２０４で指定された日時までの範囲のレコードを検索し、これらレコードを利用者に提示する画面を作成・表示するものとする。
【符号の説明】
【０１０７】
２０１  仮想環境管理サーバ
２０２  仮想マシン性能管理サーバ
２０３  仮想マシン性能管理クライアント
２０４  物理マシン
２０６  ストレージ
２０９  仮想マシン
２１１  データ収集プログラム
３０９  仮想マシン性能分析画面作成プログラム
３１０  性能低下原因分析画面作成プログラム
２１２  リソース使用実績分析プログラム
２１３  システム構成情報分析プログラム
３１３  リソース使用実績格納テーブル
３１４  構成情報格納テーブル
３１５  構成変更イベント格納テーブル
１０００  仮想環境運用支援システム
【図１】
0005740338.tif 000002
【図２】
0005740338.tif 000003
【図３】
0005740338.tif 000004
【図４】
0005740338.tif 000005
【図５】
0005740338.tif 000006
【図６】
0005740338.tif 000007
【図７】
0005740338.tif 000008
【図８】
0005740338.tif 000009
【図９】
0005740338.tif 000010
【図１０】
0005740338.tif 000011
【図１１】
0005740338.tif 000012
【図１２】
0005740338.tif 000013
【図１３】
0005740338.tif 000014
【図１４】
0005740338.tif 000015