(57)【特許請求の範囲】
【請求項１】
クライアント計算機に接続されたネットワーク装置と、
前記ネットワーク装置に接続されて前記クライアント計算機にサービスを提供するサーバ計算機と、
前記ネットワーク装置とサーバ計算機に接続された性能低下要因特定装置と、を備え、
前記サーバ計算機は、
演算を行うプロセッサと、
情報を格納する記憶部と、
前記ネットワーク装置に接続されるネットワークインタフェースと、
前記サーバ計算機の物理資源を仮想化する仮想化部と、
前記仮想化された物理資源上でＯＳ及び前記サービスを提供するアプリケーションを稼動させる複数の仮想マシンと、を有し、
前記ネットワーク装置は、
前記クライアント計算機からの処理要求を前記仮想マシンに転送し、当該処理要求に対する処理応答を前記仮想マシンから受信して前記クライアント計算機に転送し、前記性能低下要因特定装置から設定された監視条件を満たす通信について、前記処理要求の転送から前記処理要求に対する処理応答を転送するまでの遅延時間を監視し、前記遅延時間が所定の閾値を超えたときに、前記性能低下要因特定装置に遅延が増大したことを示す遅延通知を送信する遅延監視部を有し、
前記性能低下要因特定装置は、
前記ネットワーク装置が送受信する情報のうち、監視対象とする通信の前記監視条件と前記サーバ計算機と仮想マシンの対応関係を設定した通信フロー情報と、
前記サーバ計算機の計算機資源及び前記サーバ計算機に接続された計算機資源について前記仮想マシン間で共有する計算機資源を特定する共有資源情報と、
前記ネットワーク装置から前記遅延通知を受信したときに、前記通信フロー情報を参照して遅延が増大した仮想マシン及びサーバ計算機を特定する遅延増大特定部と、
前記共有資源情報を参照して前記遅延が増大した仮想マシンと計算機資源を共有する他の仮想マシンを抽出する情報収集範囲特定部と、
前記抽出された仮想マシン及びサーバ計算機と、前記遅延が増大した仮想マシン及びサーバ計算機について、物理的な計算機資源の性能情報と、仮想的な計算機資源の性能情報を取得して、前記遅延が増大した部位を特定する要因特定部と、
を備えたことを特徴とする仮想計算機システム。
【請求項２】
請求項１に記載の仮想計算機システムであって、
前記クライアント計算機とネットワーク装置は、広域ネットワークを介して接続されたことを特徴とする仮想計算機システム。
【請求項３】
請求項２に記載の仮想計算機システムであって、
前記ネットワーク装置は、
前記サーバ計算機と前記広域ネットワークに接続された第１のネットワーク装置と、
前記クライアント計算機と前記広域ネットワークに接続された第２のネットワーク装置と、を含み、
前記第１のネットワーク装置は、
前記性能低下要因特定装置から設定された監視条件を満たす通信について、前記処理要求の転送から前記処理要求に対する処理応答を転送するまでの遅延時間を監視し、前記遅延時間が予め設定された第１の閾値を超えたときに、前記性能低下要因特定装置に遅延が増大したことを示す遅延通知を送信する第１の遅延監視部を有し、
前記第２のネットワーク装置は、
前記性能低下要因特定装置から設定された監視条件を満たす通信について、前記処理要求の転送から前記処理要求に対する処理応答を転送するまでの遅延時間を監視し、前記遅延時間が予め設定された第２の閾値を超えたときに、前記性能低下要因特定装置に遅延が増大したことを示す遅延通知を送信する第２の遅延監視部を有することを特徴とする仮想計算機システム。
【請求項４】
請求項３に記載の仮想計算機システムであって、
前記第１のネットワーク装置は、前記性能低下要因特定装置を含むことを特徴とする仮想計算機システム。
【請求項５】
請求項１に記載の仮想計算機システムであって、
前記サーバ計算機の追加または削除を管理する管理計算機をさらに有し、
前記性能低下要因特定装置は、
前記管理計算機が前記サーバ計算機の変更を実施したときに、前記通信フロー情報と前記共有資源情報を前記サーバ計算機の変更に対応して更新することを特徴とする仮想計算機システム。
【請求項６】
請求項１に記載の仮想計算機システムであって、
前記仮想マシンの追加または削除あるいは移動を管理する管理計算機をさらに有し、
前記性能低下要因特定装置は、
前記管理計算機が前記仮想マシンの変更を実施したときに、前記通信フロー情報と前記共有資源情報を前記仮想マシンの変更に対応して更新することを特徴とする仮想計算機システム。
【請求項７】
請求項１に記載の仮想計算機システムであって、
前記仮想化部は、
前記プロセッサを仮想化した仮想プロセッサを前記仮想マシンに割り当て、前記ネットワークインタフェースを仮想化した仮想ネットワークインターフェースを前記仮想マシンに割り当て、
前記プロセッサの性能情報を物理的なプロセッサの性能情報として取得し、前記仮想プロセッサの性能情報を仮想的なプロセッサの性能情報として取得するプロセッサ性能情報取得部と、
前記ネットワークインターフェースの性能情報を物理的なネットワークインターフェースの性能情報として取得し、前記仮想ネットワークインターフェースの性能情報を仮想的なネットワークインターフェースの性能情報として取得するネットワークインターフェース性能情報取得部と、を有し、
前記要因特定部は、
前記物理的な計算機資源の性能情報と仮想的な計算機資源の性能情報と、を前記プロセッサ性能情報取得部と前記ネットワークインターフェース性能情報取得部からそれぞれ取得することを特徴とする仮想計算機システム。
【請求項８】
クライアント計算機に接続されたネットワーク装置と、前記ネットワーク装置に接続されて前記クライアント計算機にサービスを提供するサーバ計算機と、前記ネットワーク装置とサーバ計算機に接続された性能低下要因特定装置と、を備えた仮想計算機システムの監視方法であって、
前記サーバ計算機は、演算を行うプロセッサと、情報を格納する記憶部と、前記ネットワーク装置に接続されるネットワークインタフェースと、前記サーバ計算機の物理資源を仮想化する仮想化部と、前記仮想化された物理資源上でＯＳ及び前記サービスを提供するアプリケーションを稼動させる複数の仮想マシンと、を有し、
前記監視方法は、
前記性能低下要因特定装置が、前記ネットワーク装置に通信の監視条件を設定する第１のステップと、
前記ネットワーク装置が、前記クライアント計算機からの処理要求を前記仮想マシンに転送し、当該処理要求に対する処理応答を前記仮想マシンから受信して前記クライアント計算機に転送し、前記監視条件を満たす通信について、前記処理要求の転送から前記処理要求に対する処理応答を転送するまでの遅延時間を監視する第２のステップと、
前記ネットワーク装置が、前記遅延時間が所定の閾値を超えたときに、前記性能低下要因特定装置に対して遅延が増大したことを示す遅延通知を送信する第３のステップと、
前記性能低下要因特定装置が、前記ネットワーク装置から前記遅延通知を受信したときに、監視対象とする通信の前記監視条件と前記サーバ計算機と仮想マシンの対応関係を設定した通信フロー情報を参照して遅延が増大した仮想マシン及びサーバ計算機を特定する第４のステップと、
前記性能低下要因特定装置が、前記サーバ計算機の計算機資源及び前記サーバ計算機に接続された計算機資源について前記仮想マシン間で共有する計算機資源を特定する共有資源情報を参照して、前記遅延が増大した仮想マシンと計算機資源を共有する他の仮想マシンを抽出する第５のステップと、
前記性能低下要因特定装置が、前記抽出された仮想マシン及びサーバ計算機と、前記遅延が増大した仮想マシン及びサーバ計算機について、物理的な計算機資源の性能情報と、仮想的な計算機資源の性能情報を取得して、前記遅延が増大した部位を特定する第６のステップと、
を含むことを特徴とする仮想計算機システムの監視方法。
【請求項９】
請求項８に記載の仮想計算機の監視方法であって、
前記クライアント計算機とネットワーク装置は、広域ネットワークを介して接続されたことを特徴とする仮想計算機システムの監視方法。
【請求項１０】
請求項９に記載の仮想計算機システムの監視方法であって、
前記ネットワーク装置は、前記サーバ計算機と前記広域ネットワークに接続された第１のネットワーク装置と、前記クライアント計算機と前記広域ネットワークに接続された第２のネットワーク装置と、を含み、
前記第３のステップは、
前記第１のネットワーク装置が、前記遅延時間が予め設定された第１の閾値を超えたときに、前記性能低下要因特定装置に対して遅延が増大したことを示す遅延通知を送信するステップと、
前記第２のネットワーク装置が、前記遅延時間が予め設定された第２の閾値を超えたときに、前記性能低下要因特定装置に遅延が増大したことを示す遅延通知を送信するステップと、
を含むことを特徴とする仮想計算機システムの監視方法。
【請求項１１】
請求項１０に記載の仮想計算機システムの監視方法であって、
前記第１のネットワーク装置は、前記性能低下要因特定装置を含むことを特徴とする仮想計算機の監視方法。
【請求項１２】
請求項８に記載の仮想計算機システムの監視方法であって、
前記サーバ計算機の追加または削除を管理する管理計算機をさらに有し、
前記性能低下要因特定装置は、前記管理計算機が前記サーバ計算機の変更を実施したときに、前記通信フロー情報と前記共有資源情報を前記サーバ計算機の変更に対応して更新するステップをさらに含むことを特徴とする仮想計算機システムの監視方法。
【請求項１３】
請求項８に記載の仮想計算機システムの監視方法であって、
前記仮想マシンの追加または削除あるいは移動を管理する管理計算機をさらに有し、
前記性能低下要因特定装置は、前記管理計算機が前記仮想マシンの変更を実施したときに、前記通信フロー情報と前記共有資源情報を前記仮想マシンの変更に対応して更新するステップをさらに含むことを特徴とする仮想計算機システムの監視方法。
【請求項１４】
請求項８に記載の仮想計算機システムの監視方法であって、
前記仮想化部は、
前記プロセッサを仮想化した仮想プロセッサを前記仮想マシンに割り当て、前記ネットワークインタフェースを仮想化した仮想ネットワークインターフェースを前記仮想マシンに割り当て、前記プロセッサの性能情報を物理的なプロセッサの性能情報として取得し、前記仮想プロセッサの性能情報を仮想的なプロセッサの性能情報として取得するプロセッサ性能情報取得部と、前記ネットワークインターフェースの性能情報を物理的なネットワークインターフェースの性能情報として取得し、前記仮想ネットワークインターフェースの性能情報を仮想的なネットワークインターフェースの性能情報として取得するネットワークインターフェース性能情報取得部と、を有し、
前記第６のステップは、
前記性能低下要因特定装置が、前記物理的な計算機資源の性能情報と仮想的な計算機資源の性能情報と、を前記プロセッサ性能情報取得部と前記ネットワークインターフェース性能情報取得部からそれぞれ取得することを特徴とする仮想計算機システムの監視方法。
【請求項１５】
クライアント計算機とサービスを提供するサーバ計算機との間で送受信を行うネットワーク装置であって、
前記サーバ計算機は、
前記サーバ計算機の物理資源を仮想化する仮想化部と、
前記仮想化された物理資源上でＯＳ及び前記サービスを提供するアプリケーションを稼動させる複数の仮想マシンと、を有し、
前記ネットワーク装置は、
前記クライアント計算機からの処理要求を前記仮想マシンに転送し、当該処理要求に対する処理応答を前記仮想マシンから受信して前記クライアント計算機に転送する通信処理部と、
予め設定された監視条件を満たす通信について、前記処理要求の転送から前記処理要求に対する処理応答を転送するまでの遅延時間を監視し、前記遅延時間が所定の閾値を超えたときに、性能低下要因特定部に遅延が増大したことを示す遅延通知を送信する遅延監視部と、
前記性能低下要因特定部は、
前記通信処理部が送受信する情報のうち、監視対象とする通信の前記監視条件と前記サーバ計算機と仮想マシンの対応関係を設定した通信フロー情報と、
前記サーバ計算機の計算機資源及び前記サーバ計算機に接続された計算機資源について前記仮想マシン間で共有する計算機資源を特定する共有資源情報と、
前記遅延監視部から前記遅延通知を受信したときに、前記通信フロー情報を参照して遅延が増大した仮想マシン及びサーバ計算機を特定する遅延増大特定部と、
前記共有資源情報を参照して前記遅延が増大した仮想マシンと計算機資源を共有する他の仮想マシンを抽出する情報収集範囲特定部と、
前記抽出された仮想マシン及びサーバ計算機と、前記遅延が増大した仮想マシン及びサーバ計算機について、物理的な計算機資源の性能情報と、仮想的な計算機資源の性能情報を取得して、前記遅延が増大した部位を特定する要因特定部と、
を備えたことを特徴とするネットワーク装置。
【発明の詳細な説明】
【技術分野】
【０００１】
本発明は、複数の仮想計算機で実行するサービスを、ネットワークを介して提供する仮想計算機システムにおいて、処理能力が低下した部位を特定する技術に関し、特に、クラウドコンピューティングを提供する仮想計算機システムの改良に関する。
【背景技術】
【０００２】
経済のグローバル化と競争激化に伴い、企業は絶え間ない変革を求められている。企業活動を支えるＩＴシステムにおいても、１〜２ヵ月程度の超短期間でシステム構築とサービスの提供開始が要求されることも珍しくなくなっており、企業がＩＴシステムを自社（インハウス）で構築して所有し続けるコストが重荷となっている。そこで、近年広帯域化が著しいワイドエリアネットワーク（ＷＡＮ）を活用したサービスとして、ＩＴシステムをデータセンタの事業者にアウトソースして、企業は必要な期間のみ計算機資源を利用可能なクラウドコンピューティングが台頭している。
【０００３】
クラウドコンピューティングが提供するサービスの形態は、提供するＩＴリソースの柔軟度に応じて、ＩａａＳ（Infrastructure as a Service）、ＰａａＳ（Platform as a Service）、ＳａａＳ（Software as a Service）の３種類のクラウドサービスに大別される。ＩａａＳは電力や設置場所、ネットワークバックボーン等のインフラを貸し出すクラウドサービスであり、ＰａａＳはインフラに加えてＩＴ機器のハードウェアと仮想マシンモニタ（Virtual Machine Monitor＝ＶＭＭ）、仮想マシン、ＯＳまでをデータセンタ事業者が準備して、企業に仮想マシン（Virtual Machine）を貸し出すクラウドサービスである。ＳａａＳは更に仮想マシンに加えて業務アプリケーションまでもデータセンタ事業者が準備し、企業は時間貸しで業務アプリケーションを利用するサービス形態となる。
【０００４】
グローバルで先行するクラウドベンダは、ＰａａＳやＳａａＳ相当のビジネスを行っている。これらのベンダのサービスは俗にパブリッククラウドと呼ばれ、インターネット経由でサービスが提供される。パブリッククラウドは非常に低価格かつ迅速なサービス提供開始が可能である一方、インターネットでの一時的な通信の混雑や切断が生じるため、エンドｔｏエンド（クライアントの端末から業務アプリケーション）での安定的なサービス提供が難しいという性質を有する。そのため信頼性に対する不安から、企業の中核的なＩＴシステムに対してはパブリッククラウドの適用が進んでいない。
【０００５】
一方、インターネットではなく，キャリアが提供する専用線，ＩＰ−ＶＰＮ，広域イーサネット（登録商標）等の回線サービスを利用するＷＡＮサービスは、インターネットに比して信頼性及び通信品質が高く、企業の中核的なＩＴシステムに適している。ＷＡＮを利用したクラウドサービスとしては、ＰａａＳに相当する仮想マシン単位でのサーバリソースの貸出を行うサービスが知られている（例えば、Harmonious Cloud（http://www.hitachi.co.jp/products/it/harmonious/cloud/solution/paas.html）。ＷＡＮを用いたＰａａＳは、パブリッククラウドとは異なり高い信頼性を特長としており安定的なクラウドサービスの提供が可能である。
【０００６】
ＷＡＮとＰａａＳを組み合わせたクラウドサービス（以下、当該クラウドサービスという）では、通信インフラ（ＷＡＮ、ＬＡＮ）、サーバハードウェア、仮想マシン（または仮想サーバ）までをデータセンタ事業者がワンストップで提供し、顧客となる企業は仮想マシンで稼動させる業務アプリケーションを準備するのみで利用できる。当該クラウドサービスでは、顧客企業は拠点のクライアントからデータセンタ事業者と提携したキャリアのＷＡＮを介して、データセンタ内の仮想マシンにアクセスするものである。
【０００７】
当該クラウドサービスでは、サービスを提供するＷＡＮやデータセンタ内のＬＡＮ機器、仮想マシンモニタ、物理計算機が複数の企業で共用されている。このため、ある企業で利用している業務アプリケーション等で処理能力低下等の問題が発生した場合に、処理能力が低下した部位を迅速に特定する必要がある。データセンタ事業者は問題の生じた部位に応じて、問題の生じた部位の運用管理を担当する部門に通知を行って業務の処理能力低下を回避または修復する。例えば、業務の処理能力低下の要因がＷＡＮであれば、事業者は提携先のキャリアに問題の発生を通知し、データセンタ内のＬＡＮ機器やＶＭＭが業務の処理能力低下の要因であれば、データセンタのＰａａＳの運用管理部門に通知し、仮想マシン上の業務アプリケーション自体が業務の処理能力低下の要因であればデータセンタ事業者は業務アプリケーションを開発した顧客の企業に迅速に通知する必要がある。
【０００８】
計算機システムにおいて処理能力低下の要因を特定する技術としては、特許文献１〜４が知られている。
【０００９】
特許文献１は、複数のキャリアでネットワークが構成される場合、キャリア間の中継ノードで通信品質を監視して利用者に通知を行うもので、ＷＡＮの障害を検知することができる。
【００１０】
特許文献２には、ネットワークと業務サーバ間で障害の切り分けを行う技術が開示され、データセンタ内のＬＡＮの障害やＷＡＮの障害を検知可能である。
【００１１】
特許文献３には、仮想計算機を構成するＶＭＭで物理サーバの性能情報を取得し、仮想マシンにエージェントを稼動させて仮想マシンの性能情報を取得する技術が開示され、仮想計算機内の処理能力低下の部位を特定することができる。
【００１２】
特許文献４には、サーバとＬＡＮ機器を含む計算機システムにおいて、サーバで稼動するアプリケーション及びネットワークトラフィックの性能情報を収集し、収集した情報を多変量解析して、所定の相関関係に基づいて障害部位の推定を行う技術が開示される。
【先行技術文献】
【特許文献】
【００１３】
【特許文献１】特開２００２−３７４３０１号公報
【特許文献２】特開２００６−６５６１９号公報
【特許文献３】米国特許出願公開第２００９／０２４９９４号明細書
【特許文献４】特開２００１−１９５２８５号公報
【発明の概要】
【発明が解決しようとする課題】
【００１４】
上記特許文献１では、ＷＡＮに起因する通信遅延増などの障害の検出が可能となる。しかし、特許文献１の技術では、データセンタ内のＬＡＮ機器とサーバ、およびサーバ内部のＯＳや業務アプリケーションについて障害を検出することができない。
【００１５】
上記特許文献２では、データセンタ内のＬＡＮ機器に起因する業務の処理能力低下などの障害を検出できる。しかし、特許文献２の技術では、ＶＭＭと仮想マシンのソフトウェア間のように、サーバ内部については障害が発生した部位を特定することはできない。
【００１６】
上記特許文献３では、エージェントを用いてＶＭＭおよび仮想マシン上のゲストＯＳの双方から性能監視情報を取得して、サーバ内部の障害が発生した部位を特定することができる。しかし、上記特許文献３では、サーバ外部のＷＡＮやＬＡＮが障害発生の要因を特定できない。
【００１７】
上記特許文献４では、サーバとＬＡＮ機器を含む計算機システムから取得する性能監視情報を詳細化することで原理的にはＷＡＮ〜サーバ内部の任意の粒度で障害が発生した部位を特定することが可能である。しかしながら、上記特許文献４の技術をデータセンタの事業者が導入した場合、ＬＡＮ機器やサーバなど個別の機器から発生する大量の性能情報を予め収集して多変量解析を行う必要があり、障害が発生した部位を特定するまでに多大な時間を要し、迅速に障害発生の検出を行うことができない、という問題がある。
【００１８】
また、上記特許文献１〜３を組み合わせた場合も、上記特許文献４と同様に、ＷＡＮ〜サーバ内部で障害が発生した部位を特定するためには、クラウドコンピューティングを構成する全ての機器から性能監視情報を取得して、解析を行う必要があるため多大な時間を要し、迅速に障害発生の検出を行うことができない、という問題がある。
【００１９】
特に、上述したクラウドコンピューティングのように、ＷＡＮを用いたＰａａＳの場合、データセンタの事業者は、障害が発生した部位がＷＡＮであれば速やかにキャリアへ通知し、業務アプリケーションに障害が発生した場合は顧客企業へ速やかに通知する必要がある。無論、障害が発生した部位がデータセンタ内のＬＡＮ機器や物理サーバまたはＶＭＭ、仮想マシンであれば、データセンタの事業者は速やかに機器運用管理担当者に通知を行って、修復を行う。このようにＷＡＮを用いたＰａａＳでは、パブリッククラウドに比して高い信頼性を提供するために、障害が発生した部位を迅速に特定し、障害が発生した部位に応じて速やかに通知を行うことが安定したサービスを提供する要件となる。
【００２０】
そこで本発明は、上記問題点に鑑みてなされたもので、クラウドコンピューティングを構成するＷＡＮと、データセンタ内のＬＡＮ機器と、サーバのＶＭＭと、ＶＭＭ上の仮想マシンで発生する処理の遅延増大を検知し、かつ、遅延増大の要因となった部位を迅速に特定することで信頼性の高いサービスを提供することを目的とする。
【課題を解決するための手段】
【００２１】
本発明は、クライアント計算機に接続されたネットワーク装置と、前記ネットワーク装置に接続されて前記クライアント計算機にサービスを提供するサーバ計算機と、前記ネットワーク装置とサーバ計算機に接続された性能低下要因特定装置と、を備え、前記サーバ計算機は、演算を行うプロセッサと、情報を格納する記憶部と、前記ネットワーク装置に接続されるネットワークインタフェースと、前記サーバ計算機の物理資源を仮想化する仮想化部と、前記仮想化された物理資源上でＯＳ及び前記サービスを提供するアプリケーションを稼動させる複数の仮想マシンと、を有し、前記ネットワーク装置は、前記クライアント計算機からの処理要求を前記仮想マシンに転送し、当該処理要求に対する処理応答を前記仮想マシンから受信して前記クライアント計算機に転送し、前記性能低下要因特定装置から設定された監視条件を満たす通信について、前記処理要求の転送から前記処理要求に対する処理応答を転送するまでの遅延時間を監視し、前記遅延時間が所定の閾値を超えたときに、前記性能低下要因特定装置に遅延が増大したことを示す遅延通知を送信する遅延監視部を有し、前記性能低下要因特定装置は、前記ネットワーク装置が送受信する情報のうち、監視対象とする通信の前記監視条件と前記サーバ計算機と仮想マシンの対応関係を設定した通信フロー情報と、前記サーバ計算機の計算機資源及び前記サーバ計算機に接続された計算機資源について前記仮想マシン間で共有する計算機資源を特定する共有資源情報と、前記ネットワーク装置から前記遅延通知を受信したときに、前記通信フロー情報を参照して遅延が増大した仮想マシン及びサーバ計算機を特定する遅延増大特定部と、
前記共有資源情報を参照して前記遅延が増大した仮想マシンと計算機資源を共有する他の仮想マシンを抽出する情報収集範囲特定部と、前記抽出された仮想マシン及びサーバ計算機と、前記遅延が増大した仮想マシン及びサーバ計算機について、物理的な計算機資源の性能監視情報と、仮想的な計算機資源の性能監視情報を取得して、前記遅延が増大した部位を特定する要因特定部と、を備える。
【発明の効果】
【００２２】
したがって、本発明は、仮想計算機システムを運用するデータセンタ内のネットワークと、サーバ計算機の仮想化部と、仮想マシンで発生する処理の遅延増大を検知し、かつ、遅延増大の要因となった部位を迅速に特定することができる。
【図面の簡単な説明】
【００２３】
【図１】本発明の第１の実施形態を示し、ＷＡＮを用いたクラウドサービスを提供する計算機システムの一例を示すブロック図である。
【図２】本発明の第１の実施形態を示し、業務サーバ１１５ａの構成を示すブロック図である。
【図３】本発明の第１の実施形態を示し、ネットワーク監視サーバ１１８の構成を示すブロック図である。
【図４】本発明の第１の実施形態を示し、ネットワーク監視サーバ１１８が保持する通信フロー情報３０１の一例を示す説明図である。
【図５】本発明の第１の実施形態を示し、ネットワーク監視サーバ１１８が保持する共有資源情報３０２の一例を示す説明図である。
【図６】本発明の第１の実施形態を示し、顧客サイトからデータセンタの業務サーバで稼動するＯＳにアクセスする際の処理の遅延を示すタイムチャートである。
【図７】本発明の第１の実施形態を示し、ネットワーク監視サーバ１１８で実行される処理の一例を示すフローチャートである。
【図８】本発明の第１の実施形態を示し、ネットワーク監視端末１１９のディスプレイで遅延増大が発生した部位を表示するインターフェースの一例を示す画面イメージである。
【図９】本発明の第１の実施形態を示し、図８に示した遅延増大が発生した部位を特定する処理のシーケンス図である。
【図１０Ａ】本発明の第１の実施形態を示し、ネットワーク監視サーバの業務サーバ監視部とＶＭ監視部及び情報更新処理部で行われる処理の一例を示すフローチャートの前半部である。
【図１０Ｂ】本発明の第１の実施形態を示し、ネットワーク監視サーバの業務サーバ監視部とＶＭ監視部及び情報更新処理部で行われる処理の一例を示すフローチャートの後半部である。
【図１１】本発明の第２の実施形態を示し、業務サーバ１１５のブロック図である。
【図１２】第３の実施形態を示し、ルータ１２００のブロック図である。
【発明を実施するための形態】
【００２４】
以下、本発明の一実施形態を添付図面に基づいて説明する。
【００２５】
図１は、本発明の第１の実施形態を示し、ＷＡＮを用いたクラウドサービスを提供する計算機システムの一例を示すブロック図である。
【００２６】
クラウドサービスを提供するデータセンタ１１０は、広域ネットワーク（以下、ＷＡＮ：Wide Area Network）１５０を介して顧客サイト１０１ａ、１０１ｂ、１０１ｃに接続される。データセンタ１１０のクラウドサービスを利用する顧客サイト１０１ａは、ＷＡＮ１５０に接続されてパケットの送受信を行うルータ１０２ａと、ルータ１０２ａに接続されてデータセンタ１１０のクラウドサービスを受けるクライアント端末１０４ａから構成される。他の顧客サイト１０１ｂ、１０１ｃも同様にＷＡＮ１５０に接続されたルータ１０２ｂ、１０２ｃとクラウドサービスを受けるクライアント端末１０４ｂ、１０４ｃが接続される。なお、顧客サイト１０１ａ〜１０１ｃは、同様の構成であるので、以下の説明では、顧客サイト１０１ａのみについて説明し、他の顧客サイト１０１ｂ、１０１ｃの説明を省略する。
【００２７】
本実施形態では、ＷＡＮ１５０からデータセンタ１１０の仮想マシンまでを顧客（顧客サイト）に貸し出すＰａａＳ（Platform as a Service）の例を示し、顧客は仮想マシン上で所望の業務アプリケーションをインストールし、実行する。データセンタ１１０の事業者は、データセンタ１１０内のネットワークと、ハードウェア資源から仮想マシンまでの業務サーバを管理し、ＷＡＮ１５０は通信事業者が管理し、仮想マシン上の業務アプリケーションは顧客が管理する例を示す。
【００２８】
顧客サイト１０１ａのルータ１０２ａは、予め設定した監視条件に基づいて、クライアント端末１０４ａからデータセンタ１１０あての処理要求を受信した時刻と、この処理要求に対してデータセンタ１１０が応答した処理結果を受信し、クライアント端末１０４ａへ送信した時刻との差分を処理（または通信）の遅延時間として求め、この遅延時間が所定の閾値ＴＨ２を超えたときに処理（または通信）の遅延が増大したことを検出する遅延監視部１０３ａを含む。遅延監視部１０３ａは、管理用回線１５１を介してデータセンタ１１０のネットワーク監視サーバ１１８に接続される。そして、遅延監視部１０３ａは、処理の遅延時間が、所定の閾値ＴＨ２を超えたときには、障害などにより処理の遅延の増大が発生したと判定し、ネットワーク監視サーバ１１８に対して遅延の増大が発生したことを通知する。なお、ＷＡＮ１５０とは独立した管理用回線１５１を利用できない場合は、遅延監視部１０３ａとネットワーク監視サーバ１１８をＷＡＮ１５０により接続することができる。なお、上記遅延時間は、クライアント端末１０４ａ〜１０４ｃから観測したときの処理及び通信の遅延時間（応答時間）を示す。
【００２９】
また、顧客サイト１０１ａのクライアント端末１０４ａは、プロセッサとメモリ及びストレージ装置を備えた計算機で構成され、ルータ１０２ａ及びＷＡＮ１５０を介してデータセンタ１１０からサービスを受ける。
【００３０】
データセンタ１１０内には、ＷＡＮ１５０に接続されたルータ（ネットワーク装置）１２０と、顧客サイト１０１ａのクライアント端末１０４ａ等にサービスを提供する業務サーバ１１５ａ〜１１５ｄ（＃１〜＃４）と、業務サーバ１１５ａ〜１１５ｄとルータ１２０を接続する業務ネットワークを構成するＬ２（Layer 2）スイッチ１１４ａ、１１４ｂと、業務サーバ１１５ａ〜１１５ｄとストレージ装置１１６を接続するＳＡＮ（Storage Area Network）と、管理ネットワークを構成する管理用スイッチ１２２ａ、１２２ｂに接続されて業務サーバ１１５ａ〜１１５ｄの仮想化部２１１を管理する仮想化管理サーバ１３０と、管理ＬＡＮネットワークを構成する管理用スイッチ１２２ａ、１２２ｂと管理用回線１５１に接続されて、処理の遅延増大を検知したときには、データセンタ１１０内の計算機資源から性能監視情報を収集して、遅延が増大した部位と、遅延増大の要因となった部位を特定してネットワーク監視端末１１９に通知するネットワーク監視サーバ１１８とを主体にして構成される。なお、仮想化部２１１は、ハイパーバイザやＶＭＭ（Virtual Machine Monitor）で構成することができる。
【００３１】
ＷＡＮ１５０に接続されるルータ１２０は、業務ネットワークのＬ２スイッチ１１４ａ、１１４ｂに接続されて、顧客サイト１０１ａ〜１０１ｃから処理要求を受信し、処理要求に含まれる通信フロー情報からあて先となる業務サーバ１１５ａ〜１１５ｄに処理要求を転送する。そして、ルータ１２０は、業務サーバ１１５ａ〜１１５ｄが送信した処理結果を、当該処理結果に含まれる通信フロー情報からあて先となる顧客サイト１０１ａ〜１０１ｃに処理結果を転送する。なお、通信フロー情報は、ＷＡＮ１５０、業務ネットワークにＴＣＰ／ＩＰを用いる場合では、あて先ＩＰアドレス、ポート番号、発信元ＩＰアドレスを含む情報である。
【００３２】
また、ルータ１２０は、データセンタ１１０内部の処理の遅延の増大を検知してネットワーク監視サーバ１１８に通知する遅延監視部１２１を有する。遅延監視部１２１は、予め設定した監視条件に基づいて、顧客サイト１０１ａ〜１０１ｃから受信した処理要求の時刻と、この処理要求に対して業務サーバ１１５ａ〜１１５ｄが応答した処理結果の送信時刻と、所定の閾値ＴＨ１から、データセンタ１１０内における処理の遅延が増大したこと検出する。遅延監視部１２１は、処理要求の受信時刻と、処理結果の送信時刻の差が、所定時間である閾値ＴＨ１を超えたときには、データセンタ１１０内部で障害などによる遅延の増大が発生したと判定してネットワーク監視サーバ１１８に遅延の発生を通知する。
【００３３】
ネットワーク監視サーバ１１８と遅延監視部１２１及び業務サーバ１１５ａ〜１１５ｄはスイッチ１２２ａ、１２２ｂからなる管理ネットワークを介して接続される。ネットワーク監視サーバ１１８は、管理ネットワークを経由して遅延監視部１２１からの遅延増大の通知を受信し、管理用回線１５１を経由して顧客サイト１０１ａ〜１０１ｃの遅延監視部１０３ａ〜１０３ｃからの遅延増大の通知を受信する。また、ネットワーク監視サーバ１１８は、管理ネットワークを介して業務サーバ１１５ａ〜１１５ｄに接続され、遅延の増大の発生が疑われる業務サーバ１１５ａ〜１１５ｄ及び仮想マシンから性能監視情報を収集する。
【００３４】
ネットワーク監視サーバ１１８は、顧客サイト１０１ａ〜１０１ｃのルータ１０２ａ〜〜１０２ｃやデータセンタ１１０内のルータ１２０から遅延増大発生の通知を受信すると、複数の業務サーバ１１５ａ〜１１５ｄのうち、遅延が発生した業務サーバ１１５ａ〜１１５ｄ及び仮想マシンを通信フロー情報から特定して、検査対象の物理サーバ（業務サーバ１１５ａ〜１１５ｄ）及び仮想マシンを絞り込む。そして、ネットワーク監視サーバ１１８は、遅延の増大発生が特定された業務サーバ１１５ａ〜１１５ｄ及び仮想マシンの性能監視情報を収集し、遅延増大の要因となった部位（性能低下要因）を特定する。特に、ネットワーク監視サーバ１１８は、遅延の増大が発生した部位が仮想マシンの場合には、当該仮想マシンと計算機資源を共有する他の仮想マシンの性能監視情報を収集して、遅延の増大の要因となった部位を性能低下要因として特定する。
【００３５】
ネットワーク監視サーバ１１８は、上記特定した遅延増大が発生した部位と、遅延増大の要因となった部位をネットワーク監視端末１１９に通知する。ネットワーク監視端末１１９は、ネットワーク監視サーバ１１８から受信した通知から、遅延増大が発生した部位と、遅延増大の要因となった部位を、計算機システムの業務の処理能力が低下した要因として表示装置上に表示する。なお、遅延増大が発生した部位と、遅延増大の要因となった部位が同一の部位（例えば、仮想マシン）である場合と、遅延増大が発生した部位と、遅延増大の要因となった部位が異なる部位の場合が存在する。
【００３６】
仮想化管理サーバ１３０はスイッチ１２２ａ、１２２ｂからなる管理ネットワークを介して業務サーバ１１５ａ〜１１５ｄに接続される。仮想化管理サーバ１３０は、業務サーバ１１５ａ〜１１５ｄの仮想化部２１１を管理して、仮想マシンの生成、削除や移動を実施する。また、本実施形態では、仮想化管理サーバ１３０が業務業務サーバ１１５ａ〜１１５ｄの追加や削除を管理する。
【００３７】
ストレージ装置１１６はＳＡＮ１１７に接続され、業務サーバ１１５ａ〜１１５ｄがアクセスする論理ユニット（ＬＵ）＃１０１、＃１０２、＃２０１を備える。なお、各ＬＵ＃１０１〜＃２０１は、図６で示すように、ストレージ装置１１６内のＲＡＩＤグループの識別子に対応付けられていてもよい。
【００３８】
なお、以下の説明では、顧客サイト１０１ａ〜１０１ｃの総称を顧客サイト１０１とし、ルータ１０２ａ〜１０２ｃの総称をルータ１０２とし、遅延監視部１０３ａ〜１０３ｃの総称を遅延監視部１０３とし、クライアント端末１０４ａ〜１０４ｃの総称をクライアント端末１０４とする。
【００３９】
図２は、業務サーバ１１５ａの構成を示すブロック図である。なお、業務サーバ１１５ｂ〜１１５ｄも同一の構成であるので、重複する説明は省略する。
【００４０】
業務サーバ１１５ａは、顧客サイト１０１に所定のサービスを提供する。業務サーバ１１５ａは、ハードウェア資源２１０として、演算処理を行う物理ＣＰＵ（または物理プロセッサ）２２２と、データやプログラム及び仮想化部や仮想マシンを格納するメモリ２２３と、複数の物理ＮＩＣ（または物理ネットワークＩ／Ｆ）２２１と、ＳＡＮ１１７に接続されるＨＢＡ（Host Bus Adopter）２２４とを備える。なお、複数の物理ＮＩＣ２２１は、Ｌ２スイッチ１１４ａ、１１４ｂで構成された業務ネットワークと、管理用スイッチ１２２ａ、１２２ｂで構成された管理ネットワークにそれぞれ接続される。
【００４１】
業務サーバ１１５ａでは、仮想化部（ＶＭＭ）２１１が実行され、仮想化部２１１は仮想化管理サーバ１３０の指令に応じて業務サーバ１１５ａの物理的な計算機リソースを複数の仮想マシン２１２−１〜２１２ｎに割り当てて、各仮想マシンを実行する。
【００４２】
仮想化部２１１上ではｎ個の仮想マシン２１２−１〜２１２−ｎが実行される。各仮想マシン２１２−１〜２１２−ｎでは、それぞれＯＳ２６１−１〜２６１−ｎが実行され、各ＯＳ（ゲストＯＳ）上では業務アプリケーション２６２−１〜２６２−ｎが実行されて顧客サイト１０１に対してサービスを提供する。各仮想マシン２１２−１〜２１２−ｎには仮想化部２１１によって識別子（ＶＭ＃１〜ＶＭ＃ｎ）が付与される。また、仮想化部２１１は、ＣＰＵ制御部２３４とＮＩＣ制御部２３２により各仮想マシン２１２−１〜２１２−ｎに仮想ＣＰＵ＃１〜＃ｎと、仮想ＮＩＣ＃１〜＃ｎを割り当てる。なお、以下の説明では、ＯＳ２６１−１〜２６１−ｎの総称をＯＳ２６１とし、業務アプリケーション２６２−１〜２６２−ｎの総称を業務アプリケーション２６２とし、仮想マシン２１２−１〜２１２−ｎの総称を仮想マシン２１２とする。
【００４３】
仮想化部２１１は、ハードウェア資源２１０を仮想化して各仮想マシン２１２に割り当てる。ハードウェア資源２１０の仮想化及び仮想化された資源を仮想マシン２１２へ割り当てる手法については、公知又は周知の手法を用いることができるので、ここでは詳述しない。
【００４４】
仮想化部２１１は、物理ＣＰＵ２２２を仮想化した仮想ＣＰＵを仮想マシン２１２に提供するＣＰＵ制御部２３４と、物理ＮＩＣ２２１を仮想化した仮想ＮＩＣを仮想マシン２１２に提供するＮＩＣ制御部２３２と、を備える。なお、図示はしないが、仮想化部２１１はＨＢＡを仮想化した仮想ＨＢＡを提供する制御部も備える。
【００４５】
ＣＰＵ制御部２３４は、各仮想マシン２１２に割り当てた仮想ＣＰＵを仮想ＣＰＵインスタンス２３５として管理する。仮想ＣＰＵインスタンス２３５は、各仮想マシン２１２に対応する仮想ＣＰＵ＃１〜＃ｎが実行する処理と、物理ＣＰＵ２２２が実行する処理を調停する。また、仮想ＣＰＵインスタンス２３５は、仮想ＣＰＵ＃１〜＃ｎ毎に性能監視情報（例えば、ＣＰＵ使用率またはビジー率）を取得する。なお、仮想ＣＰＵ＃１〜＃ｎの性能監視情報は、仮想マシン２１２−１〜２１２−ｎのＯＳ２６１−１〜２６１−ｎから取得するようにしてもよい。
【００４６】
ＮＩＣ制御部２３２は、仮想マシン２１２−１〜２１２−ｎにそれぞれ割り当てた仮想ＮＩＣを仮想ＮＩＣインスタンス２３３として管理する。仮想ＮＩＣインスタンス２３３は、各仮想マシン２１２−１〜２１２−ｎに対応する仮想ＮＩＣ＃１〜＃ｎと物理ＮＩＣ２２１の通信を調停する。また、ＮＩＣ制御部２３２は、仮想ＮＩＣ＃１〜＃ｎ毎に性能監視情報を取得する。仮想ＮＩＣ＃１〜＃ｎ毎に性能監視情報は、例えば、単位時間当たりのデータ転送量、パケットのレイテンシなどで構成される。ＴＣＰ／ＩＰの例では、Ｌ２（第２層）の性能監視情報としては単位時間当たりのパケット転送量とパケットの種別（ＡＲＰ、ＴＣＰ、ＵＤＰなど）であり、Ｌ３（第３層）の性能監視情報としては、ＴＣＰコネクション毎の単位時間当たりのパケット転送量またはレイテンシなどを用いることができる。これらのうち予め設定した単位時間当たりのデータ転送量やパケットのレイテンシを性能監視情報として用いればよい。なお、仮想ＮＩＣ＃１〜＃ｎの性能監視情報は、仮想マシン２１２−１〜２１２−ｎのＯＳ２６１−１〜２６１−ｎから取得するようにしてもよい。
【００４７】
仮想化部２１１は、遅延の増大が発生した要因を特定するために、ＣＰＵの性能監視情報を収集するＣＰＵ性能情報収集部２４２と、ＮＩＣの性能監視情報を収集するＮＩＣ性能情報収集部２４１と、所定の周期でＣＰＵ性能情報収集部２４２及びＮＩＣ性能情報収集部２４１を機能させるためのタイマ割り込みハンドラ２３１を備える。
【００４８】
タイマ割り込みハンドラ２３１は、所定の周期（例えば、１０msec）となる度にＣＰＵ性能情報収集部２４２及びＮＩＣ性能情報収集部２４１へトリガを送信する。ＣＰＵ性能情報収集部２４２及びＮＩＣ性能情報収集部２４１はタイマ割り込みハンドラ２３１からのトリガを受信する度に性能監視情報を収集する。
【００４９】
ＣＰＵ性能情報収集部２４２は、物理ＣＰＵ２２２から性能監視情報（例えば、ＣＰＵ使用率）を収集し、ＣＰＵ制御部２３４の仮想ＣＰＵインスタンス２３５から各仮想ＣＰＵ＃１〜＃ｎの性能監視情報を収集し、ＣＰＵ性能統計情報２４４に格納する。なお、ＣＰＵ性能統計情報２４４には性能監視情報を収集した時刻のタイムスタンプを保持してもよい。
【００５０】
ＣＰＵ性能情報収集部２４２は、ＣＰＵ性能統計情報２４４に物理ＣＰＵ２２２の識別子または仮想ＣＰＵの識別子と上記収集した性能監視情報を対応付けて格納する。ここで、ＣＰＵ性能統計情報２４４は、所定時間（例えば、１０分間または２０分間）の物理ＣＰＵ２２２及び仮想ＣＰＵの性能監視情報が所定の周期毎に格納される。
【００５１】
最新の物理ＣＰＵ２２２及び仮想ＣＰＵの性能監視情報を格納する際に、ＣＰＵ性能統計情報２４４のＴ＿tailに格納された最も古いデータを削除し、Ｔ＿head以降のデータをＴ＿tail側にシフトしてから最新のデータをＴ＿headに格納する。あるいは、ＣＰＵ性能統計情報２４４の記憶領域をリングバッファで構成し、最も古いデータＴ＿tailに最新のデータを書き込むようにポインタを移動させてもよい。
【００５２】
ＮＩＣ性能情報収集部２４１は、物理ＮＩＣ２２１から性能監視情報（例えば、仮想ＮＩＣと同様の、単位時間当たりのデータ転送量またはパケットのレイテンシなど）を収集し、また、ＮＩＣ制御部２３２の仮想ＮＩＣインスタンス２３３から各仮想ＮＩＣ＃１〜＃ｎの性能監視情報を収集し、ＮＩＣ性能統計情報２４３に格納する。なお、ＮＩＣ性能統計情報２４３には性能監視情報を収集した時刻のタイムスタンプを保持してもよい。
【００５３】
ＮＩＣ性能情報収集部２４１は、ＮＩＣ性能統計情報２４３に物理ＮＩＣ２２１の識別子または仮想ＮＩＣの識別子と上記収集した性能監視情報を対応付けて格納する。なお、物理ＮＩＣ２２１または仮想ＮＩＣの識別子としてはＭＡＣアドレスを用いることができ、仮想ＮＩＣのＭＡＣアドレスは、仮想化部２１１または仮想化管理サーバ１３０が付与した値である。ここで、ＮＩＣ性能統計情報２４３は、所定時間（例えば、１０分間または２０分間）の物理ＮＩＣ２２１及び仮想ＮＩＣの性能監視情報が所定の周期毎に格納される。最新の物理ＮＩＣ２２１及び仮想ＮＩＣの性能監視情報を格納する際に、ＮＩＣ性能統計情報２４３のＴ＿tailに格納された最も古いデータを削除し、Ｔ＿head以降のデータをＴ＿tail側にシフトしてから最新のデータをＴ＿headに格納する。あるいは、ＮＩＣ性能統計情報２４３の記憶領域をリングバッファで構成し、最も古いデータＴ＿tailに最新のデータを書き込むようにポインタを移動させてもよい。
【００５４】
仮想化部２１１は、遅延の増大が発生した要因を特定するために、情報切り出し部２５１を備える。情報切り出し部２５１は、ネットワーク監視サーバ１１８から性能監視情報取得要求３１３を受信すると、ＣＰＵ性能統計情報２４４と、ＮＩＣ性能統計情報２４３を取得して、性能監視情報通知２５２として、ネットワーク監視サーバ１１８に送信する。
【００５５】
なお、仮想化部２１１は仮想化管理サーバ１３０の指令に応じて、業務サーバ１１５ａ〜１１５ｄの物理資源を仮想化して各仮想マシン２１２−１〜２１２−ｎに割り当てるが、仮想マシンへの物理資源の割り当てについては公知または周知の手法を用いればよいので、個々では詳述しない。
【００５６】
図３は、ネットワーク監視サーバ１１８の構成を示すブロック図である。ネットワーク監視サーバ１１８は、顧客サイト１０１のルータ１０２と、データセンタ１１０内のルータ１２０を監視し、データセンタ１１０が提供するサービスに遅延の増大が発生した場合、遅延増大が発生した部位を特定し、また、遅延増大の要因と推定される部位を特定して、ネットワーク監視端末１１９に出力する。すなわち、ネットワーク監視サーバ１１８は、ルータ１２０およびルータ１０２における遅延増大の発生を検知したときに、処理能力の低下要因を特定するシステム性能低下要因特定装置として機能する。
【００５７】
ネットワーク監視サーバ１１８は、ハードウェア資源３４０として、演算処理を行う物理ＣＰＵ（または物理プロセッサ）３４２と、物理ＣＰＵ３４２が実行するプログラム及びデータを格納するメモリ３４３と、複数の物理ＮＩＣ（または物理ネットワークＩ／Ｆ）３４１と、プログラムを格納する記憶媒体として不揮発性の記憶装置３４４を備える。なお、複数の物理ＮＩＣ３４１は、管理用回線１５１と、ネットワーク監視端末１１９と、管理用スイッチ１２２ａ、１２２ｂで構成された管理ネットワークにそれぞれ接続される。また、ネットワーク監視サーバ１１８は、記憶装置３４４としてストレージ装置１１６を利用するようにＨＢＡを備えてもよい。
【００５８】
ネットワーク監視サーバ１１８は、ネットワーク監視端末１１９から受け付けた通信フロー情報３０１と共有資源情報３０２をメモリ３４３に格納する。ネットワーク監視サーバ１１８は、通信フロー情報３０１と共有資源情報３０２に基づいて処理を行うモジュールとして、監視条件設定部３０３、情報収集範囲特定部３０４、情報取得指示部３０５、要因特定部３０６を実行する。これらのモジュールは、プログラムとして記憶装置３４４に格納され、物理ＣＰＵ３４２がメモリ３４３にロードして実行する。
【００５９】
通信フロー情報３０１と共有資源情報３０２は、管理者などがネットワーク監視端末１１９から入力した初期設定情報３３３に含まれる情報である。
【００６０】
通信フロー情報３０１は後述するように、顧客サイト１０１からの処理要求に含まれる通信先のＩＰアドレスと、業務サーバ１１５ａ〜１１５ｄの識別子と、仮想マシン２１２−１〜２１２−ｎの識別子との対応関係を設定したテーブルである。
【００６１】
共有資源情報３０２は後述するように、業務サーバ１１５ａ〜１１５ｄの識別子と、仮想マシン２１２−１〜２１２−ｎの識別子と、業務サーバ１１５ａ〜１１５ｄが利用するストレージ装置１１６の識別子及び記憶領域の識別子の対応関係を設定したテーブルである。なお、本実施形態では、ストレージ装置１１６内の記憶領域の識別子を論理ユニット（ＬＵ）＃１０１、＃１０２、＃２０１で示すが、これに限定されるものではない。
【００６２】
業務サーバ監視部３２１は、業務サーバの追加または削除を監視する。業務サーバ監視部３２１は、仮想化管理サーバ１３０等から業務サーバの変更通知（追加または削除）３３１を受信したときに追加または削除された業務サーバを検出し、情報更新処理部３２３へ通知する。なお、業務サーバの変更通知３３１には、変更内容（追加、削除のいずれか）と、業務サーバ１１５の識別子などが含まれる。
【００６３】
ＶＭ監視部３２２は、業務サーバ１１５ａ〜１１５ｄの仮想マシン２１２の追加、移動または削除を監視する。ＶＭ監視部３２２は、仮想化管理サーバ１３０から仮想マシン（ＶＭ）の変更通知（追加、移動または削除）３３２を受信し、当該通知に含まれる仮想マシンの追加、移動または削除を情報更新処理部３２３へ通知する。なお、仮想マシンの変更通知３３２には、変更内容（追加、削除、移動のいずれか）と、仮想マシン２１２の識別子とＩＰアドレス、業務サーバ１１５の識別子、他の仮想マシン２１２と共有する計算機資源の識別子などが含まれる。
【００６４】
情報更新処理部３２３は、業務サーバや仮想マシンの構成変更に応じて、通信フロー情報３０１と共有資源情報３０２を更新する（図中通信フロー再設定３３４，共有資源情報再設定３３５）。
【００６５】
監視条件設定部３０３は、通信フロー情報３０１に基づいて、顧客サイト１０１のルータ１０２の遅延監視部１０３ａ〜１０３ｃとデータセンタ１１０内のルータ１２０の遅延監視部１２１に遅延増大の発生について監視すべき通信の条件（監視条件）を設定する。本実施形態では、監視条件として、顧客サイト１０１からの処理要求に含まれる通信先のＩＰアドレスと、処理要求の受信から処理応答の送信までの時間の閾値を用いる例を示す。なお、監視条件としては、顧客サイト１０１のクライアント端末１０４が要求した処理に対して、データセンタ１１０からの応答が閾値を超えて遅延したことを検知できればよいので、ＩＰアドレスに限定されるものではなく、また、ＴＣＰ／ＩＰに限定されるものではない。
【００６６】
クライアント端末からの処理要求から処理応答までの時間の閾値は、データセンタ１１０内のルータ１２０の遅延監視部１２１に設定する閾値ＴＨ１（第１の閾値）と、顧客サイト１０１のルータ１０２の遅延監視部１０３に設定する閾値ＴＨ２（第２の閾値）をそれぞれネットワーク監視端末１１９から設定する。
【００６７】
ルータ１０２、ルータ１２０の遅延監視部１０３、１２１は、監視条件設定部３０３から設定されたＩＰアドレスを含む通信（パケット）について、処理要求を受信した時刻から応答するまでの時刻を監視し、処理要求から応答までの時間が閾値ＴＨ１またはＴＨ２を超えたときに、ネットワーク監視サーバ１１８に対して処理の遅延の増大が発生したことを示す遅延通知３１２を送信する。
【００６８】
ルータ１２０の遅延監視部１２１に設定される閾値ＴＨ１は、データセンタ１１０内の処理時間に対する閾値で、例えば、数msecに設定される。ルータ１２０の遅延監視部１２１は、クライアント端末１０４からの処理要求に対して応答するまでの時間が閾値ＴＨ１を超えると、ルータ１２０の遅延監視部１２１は、データセンタ１１０内で処理の遅延の増大が発生したと判定して、通信先のＩＰアドレスとルータ１２０の識別子を含む遅延通知３１２をネットワーク監視サーバ１１８に送信する。
【００６９】
ルータ１０２の閾値ＴＨ２は、データセンタ１１０内の処理時間にＷＡＮ１５０の回線遅延を加味した閾値である。この閾値ＴＨ２の値は、ＷＡＮ１５０の通信速度及び顧客サイト１０１とデータセンタ１１０の距離に応じて適宜設定される。例えば、顧客サイト１０１とデータセンタ１１０の所在が共に国内であれば閾値ＴＨ２は、１０〜２０msecに設定し、顧客サイト１０１が国内で、データセンタ１１０の所在が海外であれば閾値ＴＨ２は、１００〜１２０msecに設定する。なお、閾値ＴＨ１、閾値ＴＨ２は、ネットワーク監視サーバ１１８を操作する管理者などが初期設定情報３３３等によって設定することができる。
【００７０】
クライアント端末１０４からの処理要求に対して応答するまでの時間が第２の閾値ＴＨ２を超えると、ルータ１０２の遅延監視部１０３は、ＷＡＮ１５０またはデータセンタ１１０で処理の遅延の増大が発生したと判定してネットワーク監視サーバ１１８に対してクライアント端末からの通信先のＩＰアドレスとルータ１０２の識別子を含む遅延通知３１２を送信する。
【００７１】
ここで、ルータ１０２及びルータ１２０の遅延監視部１０３、１２１は、顧客サイト１０１とデータセンタ１１０間の全ての通信について監視を行う必要がなく、遅延監視部１２１で指定された通信先ＩＰアドレスを含む通信のみについて遅延の増大の発生を監視すればよい。これにより、ルータ１０２及びルータ１２０の監視処理に要する負荷の増大を抑制できる。
【００７２】
監視条件設定部３０３は、通信フロー情報３０１が更新される度に、各ルータ１０２ａ〜１０２ｃ及びルータ１２０の遅延監視部１０３ａ〜１０３ｃ、１２１に監視条件を通知し、更新させる。
【００７３】
情報収集範囲特定部３０４は、ルータ１０２ａ〜１０２ｃまたはルータ１２０の何れかより遅延通知３１２を受信すると、通信フロー情報３０１及び共有資源情報３０２を参照して遅延の増大が発生した要因について検査すべき計算機資源の範囲を特定する。遅延通知３１２には、処理の遅延の増大が発生した通信先のＩＰアドレスが含まれる。
【００７４】
情報収集範囲特定部３０４は、遅延通知３１２に含まれる通信先のＩＰアドレスから、業務サーバ１１５ｘと仮想マシン２１２−ｙを処理の遅延増大が発生した被擬対象として特定する。業務サーバ１１５ｘは、図１の業務サーバ１１５ａ〜１１５ｄの何れかであり、仮想マシン２１２−ｙは図２の仮想マシン２１２−１〜２１２−ｎの何れかを示す。
【００７５】
次に、情報収集範囲特定部３０４は、処理の遅延増大の発生部位として特定された業務サーバ１１５ｘ上の仮想マシン２１２−ｘと計算機資源を共有している仮想マシン２１２−ｚを性能監視情報の収集範囲として設定する。つまり、被擬対象の仮想マシン２１２−ｙの遅延が増大した要因が、被擬対象の仮想マシン２１２−ｙのみであるのか、あるいは、仮想マシン２１２−ｙが他の仮想マシンと共有する計算機資源に処理能力の低下が発生した結果、当該仮想マシン２１２−ｙの遅延が増大したのか、を判定する必要がある。
【００７６】
この遅延大の発生の要因としては、物理サーバである業務サーバ１１５ｘまたは仮想化部２１１に処理能力の低下が生じた場合と、仮想マシン２１２−ｙが他の仮想マシン２１２−ｚと共有している計算機資源に処理能力の低下が発生した場合が考えられる。仮想マシン２１２−ｙが他の仮想マシン２１２−ｚと共有する計算機資源としては業務サーバ１１５ｘのハードウェア資源２１０、仮想化部２１１やストレージ装置１１６及びＳＡＮ１１７などである。
【００７７】
このように、性能監視情報の収集範囲を、被擬対象部位と計算機資源を共有する仮想マシン２１２−ｚまで広げることで、処理の遅延増大が発生した要因がデータセンタ１１０内の何れの部位であるかを正確に特定できる。
【００７８】
情報収集範囲特定部３０４は、処理の遅延増大が発生した被擬対象として特定した業務サーバ１１５ｘ、仮想マシン２１２−ｙ及び計算機資源を共有している仮想マシン２１２−ｚを性能監視情報の収集範囲として情報取得指示部３０５に通知する。
【００７９】
情報取得指示部３０５は、情報収集範囲特定部３０４が特定した業務サーバ１１５ｘに対して性能監視情報取得要求３１３を送信する。この性能監視情報取得要求３１３は、業務サーバ１１５ｘと仮想マシン２１２−ｙ及び仮想マシン２１２−ｚの性能監視情報として、ＣＰＵ性能統計情報２４４とＮＩＣ性能統計情報２４３を要求する。なお、後述するように、情報取得指示部３０５は、ＮＩＣ性能統計情報２４３とＣＰＵ性能統計情報２４４を個別に要求してもよい。個別に要求する場合には，性能監視情報取得要求に、取得対象がＣＰＵあるいはＮＩＣなのか識別可能な情報が含まれる。あるいはＣＰＵ性能監視情報性能監視情報取得要求とＮＩＣ性能監視情報性能監視情報取得要求のように複数の性能監視情報性能監視情報取得要求を備えてもよい。
【００８０】
業務サーバ１１５ｘの情報切り出し部２５１は、性能監視情報取得要求３１３に対してＣＰＵ性能統計情報２４４とＮＩＣ性能統計情報２４３をネットワーク監視サーバ１１８に応答する。
【００８１】
ネットワーク監視サーバ１１８では、要因特定部３０６が業務サーバ１１５ｘからのＣＰＵ性能統計情報２４４とＮＩＣ性能統計情報２４３を受け付ける。なお、被擬対象の業務サーバ１１５ｘは、ＣＰＵ性能統計情報２４４とＮＩＣ性能統計情報２４３をそのまま送信してもよいし、要求された仮想マシン２１２−ｙ、ｚと業務サーバ１１５ｘのＣＰＵ性能統計情報２４４とＮＩＣ性能統計情報２４３を業務サーバ１１５ｘが抽出してから送信してもよい。業務サーバ１１５ｘが、ＣＰＵ性能統計情報２４４とＮＩＣ性能統計情報２４３をそのまま送信した場合は、要因特定部３０６がＣＰＵ性能統計情報２４４とＮＩＣ性能統計情報２４３から被擬対象の仮想マシン２１２−ｙ、ｚと業務サーバ１１５ｘの性能監視情報を抽出すればよい。
【００８２】
要因特定部３０６は、後述するように、遅延通知３１２の送信元と、通信先ＩＰアドレスから処理の遅延増大が発生した部位を被擬対象部位として特定する。そして、要因特定部３０６は、被擬対象部位のＮＩＣ性能統計情報２４３から取得した業務サーバ１１５ｘにおける処理遅延の有無と、ＣＰＵ性能統計情報２４４から仮想ＣＰＵの使用率の増加の有無から、処理の遅延増大の要因として、処理能力の低下が発生した部位を特定する。被擬対象部位及び処理能力の低下を生じた部位としてはＷＡＮ１５０、データセンタ１１０内のネットワーク、仮想化部２１１または業務サーバ１１５ｘ、仮想マシン２１２−ｙ上の業務アプリケーション２６２である。
【００８３】
要因特定部３０６は、上記特定した被擬対象部位と処理能力が低下した部位をネットワーク監視端末１１９に出力する。データセンタ１１０の管理者は、処理能力の低下が発生した部位がＷＡＮ１５０であればＷＡＮ１５０の運営会社に通知する。データセンタ１１０の管理者は、被擬対象部位または処理能力の低下が発生した部位がＷＡＮ１５０であればＷＡＮ１５０の運営会社に通知する。
【００８４】
また、被擬対象部位または処理能力が低下した部位が仮想化部２１１であれば、管理者は仮想化部２１１のベンダに通知する。また、被擬対象部位または処理能力が低下した部位がデータセンタ１１０内のネットワークであれば、管理者はデータセンタ内のネットワークの運用管理担当者に修復を指示する。また、被擬対象部位または処理能力が低下した部位が業務サーバ１１５ｘであれば、管理者は業務サーバ１１５ａ〜１１５ｄの担当者に修復またはリソースの増強を指示する。また、被擬対象部位または処理能力が低下した部位が仮想マシン２１２−ｙであれば、当該仮想マシン２１２−ｙ上の業務アプリケーションを運用している顧客に遅延増大の発生を通知する。
【００８５】
本実施形態のネットワーク監視サーバ１１８は、ルータ１０２またはルータ１２０から遅延通知３１２を受信すると、まず、遅延増大の発生した部位がＷＡＮ１５０とデータセンタ１１０内のいずれであるかを判定する。
【００８６】
ネットワーク監視サーバ１１８は、遅延増大の発生した部位がＷＡＮ１５０であれば、ネットワーク監視端末１１９から管理者に対してＷＡＮ１５０を管理する通信事業者に修復を依頼するように警告する。
【００８７】
遅延増大が発生した部位がデータセンタ１１０内であれば、ネットワーク監視サーバ１１８は、処理遅延の増大が発生したＩＰアドレスに対応する仮想マシン２１２−ｙ及び業務サーバ１１５ｘを被擬対象（遅延増大の発生）の部位として特定する。ネットワーク監視サーバ１１８は、さらに、被擬対象の仮想マシン２１２−ｙと計算機資源を共有する仮想マシン２１２−ｚにまで性能監視情報の収集範囲を広げることで、仮想化部２１１の処理能力低下（または障害発生）や物理計算機（業務サーバ１１５ｘ）の処理能力の低下を迅速に特定して、処理能力の低下（遅延増大）の要因となった部位を特定することができる。これにより、顧客サイト１０１から通信のない業務サーバ１１５ａ〜１１５ｄと仮想マシン２１２を監視の対象から除外して、性能監視情報を取得する計算機資源を絞り込むことでネットワーク監視サーバ１１８の処理負荷が過大になるのを抑制し、処理の遅延増大の要因となった部位を極めて迅速に特定することが可能となるのである。
【００８８】
ネットワーク監視端末１１９は、プロセッサとメモリ及び記憶装置を備えた計算機で構成され、ネットワーク監視サーバ１１８に接続される。
【００８９】
図４は、ネットワーク監視サーバ１１８が保持する通信フロー情報３０１の一例を示す説明図である。
【００９０】
通信フロー情報３０１は、顧客サイト１０１のクライアント端末１０４に対してサービスを提供する業務サーバ１１５ａ〜１１５ｄの通信に関する情報と、物理計算機（業務サーバ）に関する情報と、仮想マシンに関する情報を関連づけるテーブルである。通信フロー情報３０１は、ネットワーク監視端末１１９から管理者が入力した初期設定情報３３３によって生成され、業務サーバ１１５ａ〜１１５ｄや仮想マシン２１２の変更に応じて情報更新処理部３２３によって更新される。
【００９１】
通信フロー情報３０１は、サービスを提供する仮想マシン２１２に割り当てられたＩＰアドレスを格納する通信先ＩＰアドレス５０１と、仮想マシン２１２を実行する業務サーバ１１５ａ〜１１５ｄの識別子を格納する業務サーバ番号５０２と、当該仮想マシンに設定された識別子を格納するＶＭ番号５０３から一つのエントリが構成される。
【００９２】
通信先ＩＰアドレス５０１は、顧客サイト１０１のクライアント端末１０４が宛先ＩＰアドレスとして使用するアドレスで、管理者などがネットワーク監視端末１１９から設定した値である。
【００９３】
業務サーバ番号５０２は、データセンタ１１０内で業務サーバ１１５ａ〜１１５ｄを識別するために、管理者などがネットワーク監視端末１１９から設定した値である。
【００９４】
ＶＭ番号５０３は、業務サーバ１１５ａ〜１１５ｄ内で仮想マシン２１２−１〜２１２−ｎを識別するために、仮想化部２１１が設定した値である。
【００９５】
図示の例では、エントリ５１１、５１２が業務サーバ１１５ａ（ＡＰｓｅｒｖ＃１）で２つの仮想マシンＶＭ＃１とＶＭ＃２が稼動してそれぞれサービスを提供することを示し、エントリ５１３は、業務サーバ１１５ｂ（ＡＰｓｅｒｖ＃２）で１つの仮想マシンＶＭ＃１が稼動してサービスを提供することを示す。
【００９６】
図５は、ネットワーク監視サーバ１１８が保持する共有資源情報３０２の一例を示す説明図である。
【００９７】
共有資源情報３０２は、仮想マシン２１２−１〜２１２−ｎが共有するデータセンタ１１０内の物理リソースの設定情報を格納するテーブルである。共有資源情報３０２は、ネットワーク監視端末１１９から管理者が入力した初期設定情報３３３によって生成され、業務サーバ１１５ａ〜１１５ｄや仮想マシン２１２の変更に応じて情報更新処理部３２３によって更新される。
【００９８】
共有資源情報３０２は、業務サーバ１１５ａ〜１１５ｄの識別子を格納する業務サーバ番号６０１と、仮想マシンに設定された識別子を格納するＶＭ番号６０２と、当該仮想マシンに割り当てられたストレージ装置１１６の識別子を格納するストレージ装置番号６０３と、ストレージ装置１１６内の記憶領域の識別子を格納するＬＵ番号６０４から一つのエントリが構成される。
【００９９】
業務サーバ番号６０１は、通信フロー情報３０１の業務サーバ番号５０２と同様であり、データセンタ１１０内で業務サーバ１１５ａ〜１１５ｄを識別するために、管理者などがネットワーク監視端末１１９から設定した値である。
【０１００】
ＶＭ番号６０２は、通信フロー情報３０１のＶＭ番号５０３と同様であり、業務サーバ１１５ａ〜１１５ｄ内で仮想マシン２１２−１〜２１２−ｎを識別するために、仮想化部２１１が設定した値である。
【０１０１】
ストレージ装置番号６０３は、データセンタ１１０内でストレージ装置を特定するために、管理者などがネットワーク監視端末１１９から設定した値である。
【０１０２】
ＬＵ番号６０４は、ストレージ装置１１６内で記憶領域を識別するために、管理者などがネットワーク監視端末１１９から設定した値である。
【０１０３】
図示の例では、エントリ６１１、６１２が業務サーバ１１５ａ（ＡＰｓｅｒｖ＃１）で２つの仮想マシンＶＭ＃１とＶＭ＃２が稼動し、仮想マシンＶＭ＃１にはストレージ装置１１６（ＲＡＩＤ＃１）のＬＵ＃１０１が割り当てられ、仮想マシンＶＭ＃２にはストレージ装置１１６（ＲＡＩＤ＃１）のＬＵ＃１０２が割り当てられた例を示す。すなわち、業務サーバ１１５ａ（仮想化部２１１）とストレージ装置１１６が業務サーバ１１５ａ（ＡＰｓｅｒｖ＃１）上の仮想マシンＶＭ＃１とＶＭ＃２で共有されることを示す。
【０１０４】
図６は、顧客サイト１０１ａからデータセンタ１１０の業務サーバ１１５ａ（ＡＰｓｅｒｖ＃１）で稼動するＯＳ２６１−１にアクセスする際の処理の遅延を示すタイムチャートである。図示の例では、顧客サイト１０１ａのクライアント端末１０４ａがＯＳ２６１−１（仮想マシン２１２−１（ＶＭ＃１））上の業務アプリケーション２６２−１にアクセスする例を示す。
【０１０５】
顧客サイト１０１ａのクライアント端末１０４ａが、データセンタ１１０の業務サーバ１１５ａで実行されるＯＳ２６１−１（仮想マシン２１２−１）上の業務アプリケーションに対して処理要求を送信し、図中時刻Ｔ１で顧客サイト１０１ａのルータ１０２ａが処理要求を受信する。
【０１０６】
ルータ１０２ａの遅延監視部１０３ａは、予めデータセンタ１１０の監視条件設定部３０３から監視条件として通信先ＩＰアドレス５０１を受信して保持する。そして、ルータ１０２ａの遅延監視部１０３ａは、クライアント端末１０４ａから受信した処理要求に対する応答をデータセンタ１１０から受信するまでの時間の監視を開始する。ルータ１０２ａは、クライアント端末１０４ａから受信した処理要求を、ＷＡＮ１５０を介してデータセンタ１１０のルータ１２０に送信する。
【０１０７】
なお、図示の例では、処理要求がＨＴＴＰリクエストであり、処理応答がＨＴＴＰレスポンスの例を示す。ＨＴＴＰリクエストまたはＨＴＴＰレスポンスは、ＴＣＰの通信端点点（発信元ＩＰアドレス、発信元ポート番号、通信先ＩＰアドレス、通信先ポート番号）毎に１つの要求に対して１つの応答が送受信されるため、ＨＴＴＰリクエストに対するＨＴＴＰレスポンスを監視することで、通信を含む処理の遅延時間を測定することができる。
【０１０８】
時刻Ｔ２では、データセンタ１１０のルータ１２０が、ＷＡＮ１５０を介して顧客サイト１０１ａのルータ１０２ａから処理要求を受信する。
【０１０９】
ルータ１２０の遅延監視部１２１は、顧客サイト１０１ａから受信した処理要求に対する応答を業務サーバ１１５ａから受信し、顧客サイト１０１ａに返信するまでの時間の監視を開始する。ルータ１２０は、ＷＡＮ１５０から受信した処理要求を、業務ネットワーク（Ｌ２スイッチ１１４ａ）を介して通信先ＩＰアドレスの業務サーバ１１５ａに送信する。
【０１１０】
時刻Ｔ３では、業務サーバ１１５ａの物理ＮＩＣ２２１が業務ネットワークから処理要求を受信し、仮想化部２１１が当該処理要求を通信先ＩＰアドレスに対応するＯＳ２６１−１（仮想マシン２１２−１）に送信する。時刻Ｔ４ではＯＳ２６１−１が物理ＮＩＣ２２１を制御する仮想化部２１１から処理要求を受信し、ＯＳ上で稼動する業務アプリケーション２６２−１で処理を開始、時刻Ｔ５で処理を完了する。ＯＳ２６１−１は、時刻Ｔ５で、処理要求に対する処理結果を処理応答として仮想化部２１１を介して物理ＮＩＣ２２１から顧客サイト１０１ａに送信する。
【０１１１】
時刻Ｔ６では、ＯＳ２６１−１から処理要求を受信した仮想化部２１１が、物理ＮＩＣ２２１を介して業務ネットワーク（Ｌ２スイッチ１１４ａ）に処理応答を送信する。時刻Ｔ７では、データセンタ１１０のルータ１２０が、業務ネットワークから受信した業務サーバ１１５ａからの処理応答を受信し、時刻Ｔ７で処理応答をＷＡＮ１５０に送信する。
【０１１２】
時刻Ｔ７において、ルータ１２０の遅延監視部１２１は、顧客サイト１０１ａから受け付けた処理要求に含まれる通信先ＩＰアドレスＸと送信元ＩＰアドレスＹを受信した時刻Ｔ２と、業務サーバ１１５ａから受信した処理応答の通信先ＩＰアドレスがＹ、送信元ＩＰアドレスがＸの場合、この処理応答を顧客サイト１０１ａへ送信した時刻Ｔ７との差分をデータセンタ１１０内の処理の遅延時間として求める。
【０１１３】
そして、ルータ１２０の遅延監視部１２１は、処理の遅延時間が予め設定された閾値ＴＨ１を超えていれば、ネットワーク監視サーバ１１８に遅延時間の増大が発生したことを通知する。
【０１１４】
時刻Ｔ８では、顧客サイト１０１ａのルータ１０２ａが、ＷＡＮ１５０を介してデータセンタ１１０から処理応答を受信する。
【０１１５】
また、ルータ１０２ａの遅延監視部１０３ａは、時刻Ｔ１で受信したクライアント端末１０４ａからの処理要求に含まれる通信先ＩＰアドレスＸと送信元ＩＰアドレスＹを保持し、データセンタ１１０から受信した処理応答の通信先ＩＰアドレスがＹ、送信元ＩＰアドレスがＸの場合、この処理応答をクライアント端末１０４ａへ送信した時刻Ｔ８とし、時刻Ｔ８とＴ１の差分を顧客サイト１０１ａから見た処理（または通信）の遅延時間として求める。
【０１１６】
そして、ルータ１０２ａの遅延監視部１０３ａは、処理の遅延時間が予め設定された閾値ＴＨ２を超えていれば、管理用回線１５１を介してネットワーク監視サーバ１１８に遅延の増大が発生したことを通知する。
【０１１７】
図６において、顧客サイト１０１ａのクライアント端末１０４ａから見た処理の遅延時間１００１は、顧客サイト１０１ａのルータ１０２ａで観測される時刻Ｔ８−Ｔ１となる。また、データセンタ１１０内の処理の遅延時間１００２は、時刻Ｔ７−Ｔ２となる。また、業務サーバ１１５ａ内の処理の遅延時間（または処理時間）１００３は、時刻Ｔ６−Ｔ３となる。そして、ＯＳ２６１−１上の処理の遅延時間（または処理時間）は、時刻Ｔ５−Ｔ４となる。また、顧客サイト１０１ａのクライアント端末１０４ａから観測したＷＡＮ１５０の通信に伴う遅延時間１００５は、時刻Ｔ８−Ｔ１−Ｔ７＋Ｔ２となる。
【０１１８】
以上のように、顧客サイト１０１ａのルータ１０２ａでは、顧客サイト１０１ａから見た、処理の遅延時間１００１を閾値ＴＨ２により監視し、データセンタ１１０のルータ１２０では、データセンタ１１０内の処理の遅延時間１００２を閾値ＴＨ１により監視する。そして各ルータ１０２ａ、１２０は、処理の遅延時間が閾値ＴＨ１またはＴＨ２を超えると、ネットワーク監視サーバ１１８に処理の遅延が増大したことを、通信先のＩＰアドレスを含めて通知する。
【０１１９】
なお、図６では、顧客サイト１０１ａのクライアント端末１０４ａの例について説明したが、顧客サイト１０１ｂ〜１０１ｃについても同様である。
【０１２０】
図７は、ネットワーク監視サーバ１１８で実行される処理の一例を示すフローチャートである。この処理は、ネットワーク監視サーバ１１８の情報収集範囲特定部３０４が、顧客サイト１０１ａ〜１０１ｃのルータ１０２ａ〜１０２ｃまたはデータセンタ１１０のルータ１２０からの何れかひとつから遅延検知３１２を受信したときに実行される。
【０１２１】
ステップＳ４０２では、情報収集範囲特定部３０４が処理の遅延増大が発生した部位がＷＡＮ１５０であるか否かを判定する。この判定は、情報収集範囲特定部３０４が遅延通知３１２を受信したルータの識別子が顧客サイト１０１のルータ１０２ａ〜１０２ｃまたはデータセンタ１１０のルータ１２０の何れであるかを判定し、顧客サイト１０１のルータ１０２ａ〜１０２ｃのいずれかから遅延通知３１２受信した場合には、ＷＡＮ１５０に遅延の増大が発生したと判定して、ステップＳ４０９に進む。ステップＳ４０９では、情報収集範囲特定部３０４が要因特定部３０６に、処理の遅延の増大が発生した部位がＷＡＮ１５０であることを通知する。そして、要因特定部３０６はネットワーク監視端末１１９にＷＡＮ１５０に処理の遅延増大が発生したことをシステム性能低下要因通知３１４として通知する。システム性能低下要因通知３１４を受信したネットワーク監視端末１１９では、ＷＡＮ１５０の障害などによる遅延の増大が生じたことをディスプレイ（図示省略）に表示する。
【０１２２】
一方、情報収集範囲特定部３０４がデータセンタ１１０のルータ１２０から遅延通知３１２を受信した場合、または、データセンタ１１０のルータ１２０と顧客サイト１０１のルータ１０２の双方から遅延通知３１２を受信した場合には、データセンタ１１０内で遅延の増大の要因を探索するため、ステップＳ４０３へ進む。
【０１２３】
ステップＳ４０３では、ネットワーク監視サーバ１１８の情報収集範囲特定部３０４が、遅延通知３１２に含まれるＩＰアドレスで通信フロー情報３０１を検索し、通信先ＩＰアドレス５０１と一致する業務サーバ番号５０２とＶＭ番号５０３から、処理の遅延増大が発生した部位として、業務サーバ１１５ｘと仮想マシン２１２−ｙを特定する。
【０１２４】
ステップＳ４０４では、ネットワーク監視サーバ１１８は、遅延増大の要因となった部位を特定するため、被擬対象の業務サーバ１１５ｘ及び仮想マシン２１２−ｙから性能監視情報を取得する。この処理は、情報収集範囲特定部３０４が情報取得指示部３０５に対して被擬対象の業務サーバ１１５ｘと仮想マシン２１２−ｙのＮＩＣに関する性能監視情報を取得する指令を通知する。情報取得指示部３０５は指令された被擬対象の業務サーバ１１５ｘの情報切り出し部２５１に対してＮＩＣの性能監視情報を要求する性能監視情報取得要求３１３を送信する。被擬対象の業務サーバ１１５ｘでは、情報切り出し部２５１がＮＩＣ性能統計情報２４３を取得し、性能監視情報通知２５２としてネットワーク監視サーバ１１８に返信する。
【０１２５】
ネットワーク監視サーバ１１８は、業務サーバ１１５ｘからＮＩＣに関する性能監視情報通知２５２を受信すると、ステップＳ４０５で業務サーバ１１５ｘ内のＮＩＣ（物理ＮＩＣ２２１及び仮想ＮＩＣ）で処理の遅延増大が発生したか否かを判定する。この判定は、要因特定部３０６で行われる。要因特定部３０６は、性能監視情報通知２５２のＮＩＣの性能監視情報のうち、レイテンシが所定の閾値を超えたデータ（パケット）またはデータ転送量が所定の閾値を超えたデータがある場合には、被擬対象の業務サーバ１１５ｘまたは仮想マシン２１２−ｙのＮＩＣで処理の遅延増大が発生したと判定し、ステップＳ４０６に進む。一方、要因特定部３０６はＮＩＣの性能監視情報に処理の遅延増大がない場合にはステップＳ４１０へ進む。
【０１２６】
ステップＳ４１０では、要因特定部３０６は、被擬対象の業務サーバ１１５ｘに処理の遅延増大の要因がないと判定し、かつ、データセンタ１１０のルータ１２０で処理の遅延増大が発生していることから、データセンタ１１０内の業務ネットワークに障害が発生したと判定する。要因特定部３０６は、ネットワーク監視端末１１９に対して、データセンタ１１０内の業務ネットワークに障害が発生した可能性がある旨をシステム性能低下要因通知３１４として通知する。システム性能低下要因通知３１４を受信したネットワーク監視端末１１９では、データセンタ１１０内の業務ネットワークに障害などによる遅延の増大が生じたことをディスプレイ（図示省略）に表示する。
【０１２７】
ステップＳ４０６では、被擬対象の業務サーバ１１５ｘまたは仮想マシン２１２−ｙのＮＩＣに処理の遅延増大が発生しているため、さらに、遅延増大の要因を特定する。このため、情報収集範囲特定部３０４は、共有資源情報３０２を参照して、被擬対象の仮想マシン２１２−ｙと物理的な計算機資源を共有する仮想化部２１１と仮想マシンを抽出する。
【０１２８】
ステップＳ４０７では、情報収集範囲特定部３０４が、上記ステップＳ４０６で抽出した被擬対象の仮想マシン２１２−ｙと物理的な計算機資源を共有する仮想化部２１１及び仮想マシン２１２を実行する業務サーバ１１５ｘからＣＰＵに関する性能監視情報を取得する指令を情報取得指示部３０５に通知する。情報取得指示部３０５は、被擬対象の業務サーバ１１５ｘに対して性能監視情報取得要求３１３を送信し、上記抽出した仮想化部２１１及び仮想マシン２１２のＣＰＵの性能監視情報を要求する。
【０１２９】
業務サーバ１１５ｘの情報切り出し部２５１は、性能監視情報取得要求３１３に対するＣＰＵ性能統計情報２４４を取得し、性能監視情報通知２５２としてネットワーク監視サーバ１１８に返信する。
【０１３０】
ネットワーク監視サーバ１１８は、業務サーバ１１５ｘからＣＰＵに関する性能監視情報通知２５２を受信すると、ステップＳ４０７で業務サーバ１１５ｘの仮想マシン２１２−ｙに割り当てられた仮想ＣＰＵの使用率が増大したか否かを判定する。この判定は、要因特定部３０６で行われる。要因特定部３０６は、性能監視情報通知２５２のＣＰＵの性能監視情報のうち、被擬対象の仮想マシン２１２−ｙの仮想ＣＰＵの使用率と、物理的な計算機資源を共有する他の仮想マシン２１２の仮想ＣＰＵの使用率を抽出し、各仮想ＣＰＵの使用率が増加したか否かを判定する。この判定は、仮想ＣＰＵの使用率を時系列的に比較して使用率の増加を検知してもよいし、あるいは、仮想ＣＰＵの使用率が所定の閾値（例えば、９０％）を超えていればＣＰＵの使用率が増加したと判定してもよい。
【０１３１】
要因特定部３０６は、仮想ＣＰＵの使用率が所定の閾値を超えて増加したと判定した場合は、ステップＳ４１２へ進んで、仮想マシン２１２上の業務アプリケーション２６２に障害またはエラーが発生して、処理の遅延増大が発生したことをネットワーク監視端末１１９にシステム性能低下要因通知３１４として通知する。ネットワーク監視端末１１９は、ネットワーク監視サーバ１１８からのシステム性能低下要因通知３１４に基づいて、仮想マシン２１２−ｙ上で稼動している業務アプリケーション２６２に障害が発生している通知をディスプレイ（図示省略しない）等に表示し、業務アプリケーション２６２を運用及び管理している顧客に連絡することを促す。
【０１３２】
一方、要因特定部３０６は、仮想ＣＰＵの使用率が増加していないと判定した場合は、ステップＳ４１１へ進んで、仮想マシン２１２を稼動させる仮想化部２１１に障害が発生して、処理の遅延増大が発生したと判定してネットワーク監視端末１１９にシステム性能低下要因通知３１４を通知する。すなわち、仮想ＣＰＵの使用率が増大せず、業務サーバ１１５ｘで処理の遅延増大が発生している場合は、仮想化部２１１の障害、あるいは業務サーバ１１５ｘのハードウェア資源２１０に障害が発生していることが考えられる。このため、ネットワーク監視サーバ１１８からシステム性能低下要因通知３１４を受けたネットワーク監視端末１１９は、データセンタ１１０の管理者に仮想化部２１１のベンダへの連絡や、業務サーバ１１５ｘの増強を検討することを促す警告を図示しないディスプレイなどに表示する。
【０１３３】
以上の処理によって、顧客サイト１０１のルータ１０２と、データセンタ１１０のルータ１２０で、予め設定した通信先ＩＰアドレスのみについて遅延時間を監視し、遅延の増大が発生した場合には該当するＩＰアドレスとともに遅延通知３１２としてネットワーク監視サーバ１１８に通知する。ネットワーク監視サーバ１１８は、遅延通知３１２を受信すると、ＷＡＮ１５０の障害であるか否かを特定する。ＷＡＮ１５０の障害でない場合には、ネットワーク監視サーバ１１８は、遅延通知３１２に含まれるＩＰアドレスから被擬対象の業務サーバ１１５ｘと仮想マシン２１２−ｙを遅延増大が発生した部位として特定する。そして、ネットワーク監視サーバ１１８は、これらの被擬対象（遅延増大が発生した部位）についてＮＩＣの性能監視情報を収集して、遅延の増大の要因がデータセンタ１１０内の業務ネットワークであるか否かを特定する。遅延の増大の要因が業務ネットワークでない場合には、ネットワーク監視サーバ１１８は被擬対象の仮想マシン２１２−ｙと物理的な計算機資源を共有するリソースも被擬対象に加えてＣＰＵの性能監視情報を取得し、遅延の増大の要因が仮想化部２１１と仮想マシン２１２−ｙ上の業務アプリケーション２６２の何れであるかを特定する。
【０１３４】
そして、ネットワーク監視サーバ１１８は、上記のように遅延の増大の要因となった部位を特定してネットワーク監視端末１１９に通知し、ネットワーク監視端末１１９では遅延の増大が発生した部位をディスプレイなどに表示する。ネットワーク監視端末１１９を使用する管理者は、ディスプレイの表示から、遅延の増大の要因として特定された部位に応じて障害の復旧を指示する相手を迅速に判断することができる。
【０１３５】
このように、業務アプリケーション２６２を実際に利用している通信のみを監視し、通信先ＩＰアドレス５０１からデータセンタ１１０内で遅延の増大が発生した部位を絞り込み、絞り込んだ業務サーバ１１５ｘ、仮想マシン２１２−ｙから性能監視情報を取得し、遅延の増大が発生した部位を特定する。さらに、被擬対象の仮想マシン２１２−ｙと物理的な計算機資源を共有する部位（物理計算機、仮想化部２１１、他の仮想マシン２１２）についても性能監視情報を取得して遅延増大の要因となった部位を特定することができる。
【０１３６】
これにより、前記従来例のようにネットワーク監視サーバ１１８が、すべての業務サーバ１１５及び仮想マシン２１２の性能監視情報を収集する必要はなく、また、遅延の増大が発生した部位の特定や、遅延増大の要因となった部位を特定するために取得する性能監視情報のデータ量を前記従来例よりも大幅に低減でき、遅延増大が発生した部位を迅速に特定し、さらに、遅延増大の要因となった部位も迅速に特定することが可能となる。
【０１３７】
以上より、クラウドコンピューティングを構成するＷＡＮ１５０と、データセンタ内の業務ネットワークを構成する機器と、業務サーバ１１５の仮想化部２１１と、仮想化部２１１上の仮想マシン２１２で発生する障害を検知し、かつ、処理能力（システム性能）が低下した要因を迅速に特定することで信頼性の高いサービスを提供することが可能となる。
【０１３８】
図８は、ネットワーク監視端末１１９のディスプレイで遅延の増大が発生した部位を表示するインターフェースの一例を示す画面イメージである。
【０１３９】
ネットワーク監視端末１１９のインターフェースは、計算機システムの構成を示す領域７１０と、システム性能低下要因通知３１４を表示する領域７２０の２つに大別される。領域７１０では、処理の遅延増大が検出された通信経路７０１が枠によって表示される。そして、領域７１０には、上記図７の処理によって処理の遅延増大が検知された部位として仮想マシン（ＶＭ＃１）に注意を喚起するアイコン７０３が表示される。また、領域７１０には、上記図７の処理によって遅延増大の要因と判定された部位として他の仮想マシン（ＶＭ＃１）に動作の異常を示すアイコン７０４が表示される。さらに、領域７１０では、処理の遅延増大が検出された仮想マシン２１２と物理的な計算機資源を共有する要素が枠内に表示される。
【０１４０】
システム性能低下要因通知３１４を表示する領域７２０は、遅延の増大の種類として、通信経路の領域７１１、通信エンドポイントの領域７１２、資源共有範囲の領域７１３及びＶＭ処理能力低下の領域７１４の４種類で構成した例を示す。そして、システム性能低下要因通知３１４に含まれる遅延増大の要因には、チェックマーク７１５、７１６が表示される。
【０１４１】
図示の例では、通信経路の領域７１１と、資源共有範囲の領域７１３にチェックマーク７１５、７１６が設定される。これらの、領域７１１、７１３のアラート内容としては、領域７１０に対応したテキストが表示される。領域７１１のアラート内容には、通信経路７０１で遅延増大が発生したことが表示され、領域７１３のアラート内容には、遅延増大が発生した部位として特定された業務サーバ（ＡＰＳｅｒｖ＃１）及び仮想マシン（ＶＭ＃１）と計算機資源を共有する装置の範囲７０２が表示される。
【０１４２】
データセンタ１１０の管理者は、計算機システムの構成をグラフィックで示す領域７１０の注意及び警告と、領域７２０のテキストによる詳細な表示により、遅延増大が発生した部位を迅速かつ容易に理解することができる。
【０１４３】
図９は、図８に示した遅延増大が発生した部位を特定する処理のシーケンス図である。
【０１４４】
ステップ１では、ネットワーク監視サーバ１１８が顧客サイト１０１ａのルータ１０２ａとデータセンタ１１０のルータ１２０からそれぞれ遅延通知３１２を受信する。
【０１４５】
ステップ２では、ネットワーク監視サーバ１１８が、遅延増大が発生した部位が、ＷＡＮ１５０とデータセンタ１１０の何れであるかを判定する。この処理は、図７のステップＳ４０２である。この例では、顧客サイト１０１ａのルータ１０２ａとデータセンタ１１０のルータ１２０が共に遅延増大を検知しているので、ネットワーク監視サーバ１１８は、データセンタ１１０内に遅延増大の要因が存在すると判定する。ネットワーク監視サーバ１１８は、ルータからの遅延通知３１２に含まれるＩＰアドレスから、遅延増大の発生した部位の被擬対象が、業務サーバが業務サーバ１１５ａで、被擬対象の仮想マシン２１２−１（ＶＭ＃１）であると特定する。この処理は、図７のステップＳ４０３である。
【０１４６】
ステップ３では、ネットワーク監視サーバ１１８が、被擬対象の業務サーバ１１５ａからＮＩＣの性能監視情報を取得する。この処理は、図７のステップＳ４０４である。
【０１４７】
ステップ４では、ネットワーク監視サーバ１１８が、取得したＮＩＣの性能監視情報から遅延増大の要因が業務ネットワークと業務サーバ１１５ａの何れであるかを判定する。この処理は、図７のステップＳ４０５である。この例では、ＮＩＣの性能監視情報にシステム性能低下要因を検知したため、業務サーバ１１５ａに遅延増大の要因があると判定する。
【０１４８】
ステップ５では、ネットワーク監視サーバ１１８が共有資源情報３０２を参照して、被擬対象の仮想マシン２１２−１と物理的な計算機資源を共有する仮想化部２１１と他の仮想マシン２１２を抽出する。この処理は、図７のステップＳ４０６である。この例では、業務サーバ１１５ｂの仮想マシン２１２とストレージ装置１１６のＬＵを共有している場合を示す。
【０１４９】
ステップ６では、ネットワーク監視サーバ１１８が被擬対象の業務サーバ１１５ａの仮想化部２１１及び仮想マシン２１２−１のＣＰＵの性能監視情報を取得し、ステップ７では、被擬対象の仮想マシン２１２−１が実行される業務サーバ１１５ａ上の他の仮想マシン２１２のＣＰＵの性能監視情報を取得する。また、ステップ８、ステップ９では、ネットワーク監視サーバ１１８が、被擬対象の仮想マシン２１２−１と物理的な計算機資源を共有する業務サーバ１１５ｂの仮想化部２１１及び仮想マシン２１２のＣＰＵの性能監視情報を取得する。これら処理は、図７のステップＳ４０７である。
【０１５０】
ステップ１０では、上記取得したＣＰＵの性能監視情報から、ネットワーク監視サーバ１１８は業務サーバ１１５ｂの仮想マシン（＃ＶＭ１）で仮想ＣＰＵの使用率が増大したことを検出し、当該仮想マシンが遅延増大の要因となった部位であると特定する。
【０１５１】
こうして、業務アプリケーション２６２を実際に利用している通信から顧客サイト１０１とデータセンタ１１０のルータで処理の遅延増大をそれぞれ検知し、検知した通信に含まれる宛先アドレス（通信先ＩＰアドレス５０１）からネットワーク監視サーバ１１８が処理の遅延が増大した業務サーバ１１５（物理計算機）と仮想マシン２１２（仮想計算機）を特定する。
【０１５２】
そして、被擬対象の仮想マシン２１２−ｙと物理的な計算機資源を共有する他の仮想マシン２１２、他の業務サーバ１１５からもＣＰＵの性能監視情報を取得することで、業務サーバ１１５ｂの仮想マシン＃ＶＭ１が遅延増大の要因となった部位であることを特定できる。
【０１５３】
この例では、業務サーバ１１５ａ（ＡＰＳｅｒｖ＃１）の仮想マシン＃ＶＭ１と、業務サーバ１１５ｂ（ＡＰＳｅｒｖ＃２）の仮想マシン＃ＶＭ１がストレージ装置１１６のＬＵを共有している。ルータによって遅延増大を検知されたのは業務サーバＡＰＳｅｒｖ＃１の仮想マシン＃ＶＭ１であるが、ストレージ装置１１６のＬＵを共有する業務サーバＡＰＳｅｒｖ＃２の仮想マシン＃ＶＭ１に障害が発生したため、業務サーバＡＰＳｅｒｖ＃１の仮想マシン＃ＶＭ１のアクセスが遅延したことが推測できる。また、データセンタ１１０のストレージ装置１１６の管理者に対しては、業務サーバＡＰＳｅｒｖ＃１、＃２の仮想マシン２１２が共有するＬＵに障害がないかを確認する契機を提供することができる。
【０１５４】
このように、本発明では、処理の遅延増大を検知した仮想マシン２１２−ｙと、実際に障害等が発生した仮想マシン＃ＶＭ１（ＡＰＳｅｒｖ＃２）を特定することが可能となる。
【０１５５】
図１０Ａ、図１０Ｂはネットワーク監視サーバ１１８の業務サーバ監視部３２１と、ＶＭ監視部３２２及び情報更新処理部３２３で行われる処理の一例を示すフローチャートである。この処理は、ネットワーク監視サーバ１１８が、仮想化管理サーバ１３０から業務サーバの変更通知（追加または削除）３３１や仮想マシン２１２の変更通知（追加、移動または削除）３３２を受信したときに実行される。図１０ＡのステップＳ９０１〜Ｓ９０７の処理が業務サーバ監視部３２１及び情報更新処理部３２３の処理に相当し、図１０ＢのステップＳ９０８〜Ｓ９１９の処理がＶＭ監視部３２２及び情報更新処理部３２３の処理に相当する。
【０１５６】
ステップＳ９０１では、業務サーバ監視部３２１が、業務サーバの変更通知３３１を受信したか否かを判定する。業務サーバの変更通知３３１を受信していなければ図１０ＢのステップＳ９０８に進む。一方、業務サーバの変更通知３３１が業務サーバ１１５の追加であればステップＳ９０２へ進み、削除であればステップＳ９０５に進む。
【０１５７】
ステップＳ９０２では、業務サーバ監視部３２１が業務サーバの変更通知３３１から追加された業務サーバ１１５を特定し、当該業務サーバ１１５の仮想化部２１１から定義されている仮想マシン２１２に関する情報を取得する。
【０１５８】
ステップＳ９０３では、業務サーバ監視部３２１が業務サーバ１１５から取得した仮想マシン２１２のＩＰアドレス、仮想マシン２１２の識別子（番号）、業務サーバ１１５の識別子（番号）を、通信フロー情報３０１に設定する。
【０１５９】
ステップＳ９０４では、業務サーバ監視部３２１は、業務サーバ１１５から取得した仮想マシン２１２が共有する計算機資源の情報を共有資源情報３０２に設定する。
【０１６０】
上記ステップＳ９０２〜Ｓ９０４により、ネットワーク監視サーバ１１８が受信した業務サーバ変更通知３３１で追加された業務サーバ１１５の一つについて、ルータの監視対象となる仮想マシン２１２の通信先ＩＰアドレス５０１等が通信フロー情報３０１に加えられ、追加された業務サーバ１１５上の仮想マシン２１２が共有する計算機資源が共有資源情報３０２に加えられる。
【０１６１】
ステップＳ９０５では、業務サーバ監視部３２１が、業務サーバの変更通知３３１から削除された業務サーバ１１５の識別子（番号）を取得する。
【０１６２】
ステップＳ９０６では、業務サーバ監視部３２１が、業務サーバ１１５の識別子と一致する業務サーバ番号５０２を含むエントリを、通信フロー情報３０１から検索し、当該エントリを削除する。
【０１６３】
ステップＳ９０６では、業務サーバ監視部３２１が、業務サーバ１１５の識別子と一致する業務サーバ番号６０１を含むエントリを、共有資源情報３０２から検索し、当該エントリを削除する。
【０１６４】
上記ステップＳ９０５〜Ｓ９０７により、ネットワーク監視サーバ１１８は、受信した業務サーバ変更通知３３１に含まれる削除された業務サーバ１１５の一つについて、通信フロー情報３０１と共有資源情報３０２から削除する。
【０１６５】
次に、業務サーバの変更通知３３１を受信していなければ図１０ＢのステップＳ９０８では、ＶＭ監視部３２２が、仮想マシン２１２の変更通知３３２を受信したか否かを判定する。仮想マシン２１２の変更通知３３２を受信していなければステップＳ９２０に進む。一方、仮想マシン２１２の変更通知３３２が仮想マシン２１２の追加であればステップＳ９０９へ進み、削除であればステップＳ９１２へ進み、移動であればステップＳ９１５へ進む。
【０１６６】
ステップＳ９０９では、ＶＭ監視部３２２が仮想マシン２１２の変更通知３３２で追加された仮想マシン２１２と、当該仮想マシン２１２が稼動する業務サーバ１１５の識別子を特定し、当該業務サーバ１１５の仮想化部２１１から追加された仮想マシン２１２に関する情報を取得する。
【０１６７】
ステップＳ９１０では、ＶＭ監視部３２２が業務サーバ１１５から取得した仮想マシン２１２のＩＰアドレス、仮想マシン２１２の識別子（番号）、業務サーバ１１５の識別子（番号）を、通信フロー情報３０１に設定する。
【０１６８】
ステップＳ９１１では、ＶＭ監視部３２２は、業務サーバ１１５から取得した仮想マシン２１２の情報から他の仮想マシン２１２と共有する計算機資源の情報を共有資源情報３０２に設定する。
【０１６９】
上記ステップＳ９０９〜Ｓ９１１により、ネットワーク監視サーバ１１８が受信した仮想マシン変更通知３３２で追加された仮想マシン２１２の一つについて、ルータの監視対象となる仮想マシン２１２の通信先ＩＰアドレス５０１等が通信フロー情報３０１に加えられ、追加された仮想マシン２１２が共有する計算機資源が共有資源情報３０２に加えられる。
【０１７０】
次に、ステップＳ９１２では、ＶＭ監視部３２２が仮想マシンの変更通知３３２で削除された仮想マシン２１２の識別子と、当該仮想マシン２１２が稼動する業務サーバ１１５の識別子を取得する。
【０１７１】
ステップＳ９１３では、ＶＭ監視部３２２が、業務サーバ１１５の識別子及び仮想マシン２１２の識別子が一致する業務サーバ番号５０２及びＶＭ番号５０３を含むエントリを、通信フロー情報３０１から検索し、当該エントリを削除する。
【０１７２】
ステップＳ９１４では、ＶＭ監視部３２２が、業務サーバ１１５の識別子及び仮想マシン２１２の識別子と一致する業務サーバ番号６０１及びＶＭ番号６０２を含むエントリを、共有資源情報３０２から検索し、当該エントリを削除する。
【０１７３】
上記ステップＳ９１２〜Ｓ９１４により、ネットワーク監視サーバ１１８は、受信した仮想マシンの変更通知３３２に含まれる削除された仮想マシン２１２の一つについて、通信フロー情報３０１と共有資源情報３０２から削除する。
【０１７４】
次に、ステップＳ９１５では、ＶＭ監視部３２２が仮想マシンの変更通知３３２で移動された仮想マシン２１２の識別子と、当該仮想マシン２１２が稼動する業務サーバ１１５の識別子を取得する。これらの識別子は、移動元の仮想マシン及び業務サーバの識別子と、移動先の仮想マシン２１２及び業務サーバ１１５の識別子を含む。
【０１７５】
ステップＳ９１６では、ＶＭ監視部３２２が、移動元の業務サーバ１１５の識別子及び仮想マシン２１２の識別子が一致する業務サーバ番号５０２及びＶＭ番号５０３を含むエントリを、通信フロー情報３０１から検索し、当該エントリを削除する。
【０１７６】
ステップＳ９１７では、ＶＭ監視部３２２が、移動元の業務サーバ１１５の識別子及び仮想マシン２１２の識別子と一致する業務サーバ番号６０１及びＶＭ番号６０２を含むエントリを、共有資源情報３０２から検索し、当該エントリを削除する。
【０１７７】
上記ステップＳ９１６〜Ｓ９１７により、ネットワーク監視サーバ１１８は、受信した仮想マシンの変更通知３３２に含まれる移動された仮想マシン２１２の一つについて、移動元の仮想マシン２１２の情報を通信フロー情報３０１と共有資源情報３０２から削除する。
【０１７８】
ステップＳ９１８では、ＶＭ監視部３２２が仮想マシンの変更通知３３２から取得した移動先の業務サーバ１１５の仮想化部２１１から、移動先の仮想マシン２１２のＩＰアドレス、仮想マシン２１２の識別子（番号）、業務サーバ１１５の識別子、移動先の仮想マシン２１２が他の仮想マシンと共有する計算機資源の識別子を取得する。そして、ＶＭ監視部３２２が、移動先の仮想マシン２１２のＩＰアドレス、仮想マシン２１２の識別子（番号）、業務サーバ１１５の識別子を、通信フロー情報３０１に設定する。
【０１７９】
ステップＳ９１９では、ＶＭ監視部３２２は、移動先の仮想マシン２１２を実行する業務サーバ１１５から取得した他の仮想マシンと共有する計算機資源の識別子を共有資源情報３０２に設定する。
【０１８０】
上記ステップＳ９１５〜Ｓ９１９により、ネットワーク監視サーバ１１８は、受信した仮想マシン変更通知３３２で移動された仮想マシン２１２の一つについて、通信フロー情報３０１と共有資源情報３０２を更新し、移動元の情報を移動先の情報に書き換える。
【０１８１】
次に、ステップＳ９２０では、ネットワーク監視サーバ１１８が、業務サーバの変更通知３３１または仮想マシンの変更通知３３２に含まれる全ての仮想マシン２１２について処理が完了したか否かを判定する。未処理の仮想マシン２１２があれば、ステップＳ９０１に戻って上記処理を繰り返す。一方、全ての仮想マシン２１２について処理が完了していれば当該フローチャートを終了する。
【０１８２】
上記処理により、データセンタ１１０内で業務サーバ１１５や仮想マシン２１２の変更があった場合には、ネットワーク監視サーバ１１８が通信フロー情報３０１及び共有資源情報３０２を更新する。そして、ネットワーク監視サーバ１１８は、更新した通信フロー情報３０１を顧客サイト１０１のルータ１０２とデータセンタ１１０のルータ１２０に送信し、監視対象の通信を更新させる。
【０１８３】
以上のように、本実施形態によれば、業務サーバ１１５や仮想マシン２１２の構成が変更されると、通信フロー情報３０１と共有資源情報３０２を更新し、常に最新の監視条件をルータ１０２、１２０に設定することができる。
【０１８４】
そして、ネットワーク監視サーバ１１８は、ルータ１０２、１２０の監視部１０３、１２１から遅延通知３１２を受信すると、通信フロー情報３０１を参照して遅延が増大した業務サーバ１１５ｘと仮想マシン２１２−ｙを被擬対象として特定する。そして、ネットワーク監視サーバ１１８は、被擬対象の仮想化部２１１から、物理的な計算機資源（ＣＰＵ、ＮＩＣ）の性能監視情報と、仮想的な計算機資源（仮想ＣＰＵ、仮想ＮＩＣ）の性能監視情報を取得し、遅延が増大した要因を特定する。さらに、ネットワーク監視サーバ１１８は、被擬対象仮想マシン２１２−ｙと物理的な計算機資源を共有する他の仮想マシンについても、当該他の仮想マシンの仮想化部２１１から、物理的な計算機資源の性能監視情報と、仮想的な計算機資源の性能監視情報を取得し、遅延が増大した要因を特定する。
【０１８５】
これにより、ネットワーク監視サーバ１１８は、ＷＡＮ１５０、データセンタ１１０内の業務ネットワーク、業務サーバ１１５、業務アプリケーション２６２の何れに遅延が増大した要因が存在するのかを迅速かつ高精度で検出することが可能となる。
【０１８６】
＜第２の実施形態＞
図１１は第２の実施形態を示し、業務サーバ１１５のブロック図である。第２の実施形態の業務サーバ１１５は、前記第１の実施形態の仮想化部２１１内のＣＰＵ性能情報収集部２４２を、仮想マシン２１２のＯＳ２６１上で実行される仮想ＣＰＵエージェントとしたもので、前記第１実施形態のＣＰＵ性能情報収集部２４２を仮想化部２１１からＯＳ２６１上に移動した変形例である。なお、その他の構成は前記第１の実施形態と同様である。
【０１８７】
各仮想マシン２１２−１〜２１２−ｎのＯＳ２６１−１〜２６１−ｎ上では、前記第１実施形態の業務アプリケーション２６２−１〜２６２−ｎが実行されるのに加え、本第２実施形態では、仮想ＣＰＵ監視エージェント１１０１−１〜１１０１−ｎが実行される。仮想ＣＰＵ監視エージェント１１０１−１〜１１０１−ｎは同一の構成であるので、以下では図示の仮想ＣＰＵ監視エージェント１１０１−ｎについてのみ説明する。なお、仮想マシン２１２−１〜２１２−ｎ及びＯＳ２６１−１〜２６１−ｎの総称は、それぞれ仮想マシン２１２、ＯＳ２６１とする。
【０１８８】
仮想ＣＰＵ監視エージェント１１０１−ｎは、各仮想マシン２１２のＯＳ２６１に割り当てられた仮想ＣＰＵの性能監視情報を収集するＣＰＵ性能情報収集部２４２と、収集した仮想ＣＰＵの性能監視情報を格納するＣＰＵ性能統計情報２４４と、性能監視情報取得要求３１３からの指令に応じてＣＰＵ性能統計情報２４４を取得し、性能監視情報通知１１０４ｂとしてネットワーク監視サーバ１１８に送信する情報切り出し部２５１０と、を含む。
【０１８９】
ＣＰＵ性能情報収集部２４２は、所定の周期（例えば、１０msec）で仮想ＣＰＵの性能監視情報（例えば、使用率）を取得する。仮想ＣＰＵの性能監視情報は、ＯＳ２６１から取得してもよいし、ＯＳ２６１のログ（図中ｓａｒ  ｌｏｇ）から取得してもよい。
【０１９０】
そして、ＣＰＵ性能情報収集部２４２は、取得した仮想ＣＰＵの性能監視情報をＣＰＵ性能統計情報２４４に格納する。なお、ＣＰＵ性能統計情報２４４には性能監視情報を収集した時刻のタイムスタンプを保持してもよい。また、ＣＰＵ性能統計情報２４４は、前記第１実施形態と同様に、所定時間（例えば、１０分間または２０分間）の仮想ＣＰＵの性能監視情報が所定の周期毎に格納される。
【０１９１】
ネットワーク監視サーバ１１８が性能監視情報取得要求３１３を送信すると、業務サーバ１１５では、情報切り出し部２５１あるいは情報切り出し部２５１０が受信する。情報切り出し部２５１は、性能監視情報取得要求３１３の収集対象がＮＩＣの場合に、前記第１の実施形態と同様にしてＮＩＣ稼働統計情報２４３を性能監視情報通知１１０４としてネットワーク監視サーバ１１８に送信する。情報切り出し部２５１０は、性能監視情報取得要求３１３の収集対象がＣＰＵである場合に、ＣＰＵの性能監視情報を送信するように指令する。指令を受けた仮想マシン２１２−１〜２１２−ｎの情報切り出し部２５１０は、ＣＰＵ稼働統計情報２４４を性能監視情報通知１１０４ｂとしてネットワーク監視サーバ１１８に送信する。    各仮想マシン２１２−１〜２１２−ｎでは、仮想ＣＰＵエージェント１１０１−１〜１１０１−ｎがそれぞれ仮想ＣＰＵの性能監視情報を取得してＣＰＵ性能統計情報２４４に格納する。ネットワーク監視サーバ１１８は、ＣＰＵの性能監視情報を取得する仮想マシン２１２の識別子を性能監視情報取得要求３１３で指定して業務サーバ１１５の仮想マシン２１２の情報切り出し部２５１０に通知する。仮想マシン２１２の仮想ＣＰＵエージェント１１０１は、情報切り出し部２５１０からＣＰＵ性能統計情報２４４を応答する。
【０１９２】
以上のように、各仮想マシン２１２に仮想ＣＰＵエージェント１１０１−１〜１１０１−ｎをそれぞれ配置することで、ネットワーク監視サーバ１１８は、指定した仮想マシン２１２のみのＣＰＵの性能監視情報を取得することが可能となる。なお、物理ＣＰＵ２２２の性能監視情報については、仮想化部２１１に物理ＣＰＵ専用の性能情報収集部を設けてもよい。
【０１９３】
本第２実施形態においても、前記第１実施形態と同様に、ネットワーク監視サーバ１１８が、業務アプリケーション２６２を実際に利用している通信のみを監視し、通信先ＩＰアドレス５０１からデータセンタ１１０内で遅延の増大が発生した部位（業務サーバ１１５ｘ及び仮想マシン２１２−ｙ）を特定する。さらに、ネットワーク監視サーバ１１８は、被擬対象の仮想マシン２１２−ｙと物理的な計算機資源を共有する部位（物理計算機、仮想化部２１１、他の仮想マシン２１２）についても性能監視情報を取得して遅延増大の要因となった部位（性能低下部位）を特定することができる。
【０１９４】
なお、上記第２実施形態では、ネットワーク監視サーバ１１８が性能監視情報取得要求３１３を送信すると、業務サーバ１１５では、情報切り出し部２５１あるいは情報切り出し部２５１０が受信する例を示したが、情報切り出し部２５１が性能監視情報取得要求３１３を情報切り出し部２５１０に転送するようにしてもよい。すなわち、情報切り出し部２５１は、性能監視情報取得要求３１３がＣＰＵであれば、要求された仮想マシン２１２−１〜２１２−ｎの情報切り出し部２５１０に対してＣＰＵの性能情報を送信するように指令する。指令を受けた仮想マシン２１２−１〜２１２−ｎの情報切り出し部２５１０は、ＣＰＵ性能統計情報２４４を性能監視情報通知１１０４ｂとしてネットワーク監視サーバ１１８に送信する。なお、情報切り出し部２５１は、性能監視情報取得要求３１３がＮＩＣであれば、前記第１実施形態と同様にしてＮＩＣ性能統計情報２４３を性能監視情報通知１１０４としてネットワーク監視サーバ１１８に送信する。
【０１９５】
＜第３の実施形態＞
図１２は第３の実施形態を示し、ルータ１２００のブロック図である。本第３の実施形態のルータ１２００は、前記第１実施形態の図３に示したネットワーク監視サーバ１１８の機能要素を、ルータ１２０に含めたもので、処理能力低下の要因特定部を備えたネットワーク装置として機能させることができる。
【０１９６】
ルータ１２００のハードウェア資源１２１０は、ＣＰＵ１２２１、メモリ１２２３、記憶装置１２２４及び複数のポートを備えた通信処理部１２２２から構成される。
【０１９７】
前記第１実施形態の通信監視部１２１と図３に示したネットワーク監視サーバ１１８の各機能要素は、ルータ１２００の内部で接続されており、前記第１実施形態と同一のものに同一の符号を付して、前記第１実施形態と重複する説明は省略する。
【０１９８】
本第３実施形態においても、前記第１実施形態と同様に、ルータ１２００が業務アプリケーション２６２を実際に利用している通信のみを監視し、通信先ＩＰアドレス５０１からデータセンタ１１０内で遅延の増大が発生した部位（業務サーバ１１５ｘ及び仮想マシン２１２−ｙ）を特定する。さらに、ルータ１２００は、被擬対象の仮想マシン２１２−ｙと物理的な計算機資源を共有する部位（物理計算機、仮想化部２１１、他の仮想マシン２１２）についても性能監視情報を取得して遅延増大の要因となった部位（処理能力低下部位）を特定することができる。
【０１９９】
なお、上記各実施形態では、ルータ１０２ａ〜１０２ｃ及びルータ１２０で処理の遅延増大の発生を監視する例を示したが、通信先のＩＰアドレスと閾値ＴＨ１、ＴＨ２により処理の遅延増大の発生を検知可能なネットワーク装置であればよい。この種のネットワーク装置としては、Ｌ３スイッチやロードバランサなどを用いることができる。
【０２００】
また、上記各実施形態では、Ｐａａｓに本発明を適用した例を示したがＳａａＳ（Software as a Service）やＩａａＳ（Infrastructure as a Service）に適用することができる。
【０２０１】
また、上記各実施形態では、処理要求を受信した時刻から処理応答を受信して転送した時刻までを遅延時間として算出したが、処理要求を受信した時刻から処理応答を受信した時刻までを遅延時間として算出してもよく、あるいは、処理要求を転送した時刻から処理応答を受信して転送した時刻までを遅延時間として算出してもよい。
【０２０２】
また、上記各実施形態では、顧客サイト１０１のルータ１０２とデータセンタ１１０のルータ１２０の双方で遅延増大の検出を行う例を示したが、データセンタ１１０のルータ１２０のみで遅延増大の検出を行って、データセンタ１１０内の処理能力の低下要因を特定するようにしてもよい。
【産業上の利用可能性】
【０２０３】
以上のように、本発明はＷＡＮを介してクラウドコンピューティングを提供する計算機システム及びクラウドコンピューティングの管理方法及び管理プログラムに適用することができる。また、クラウドコンピューティングを提供する計算機システム内の処理能力低下要因特定装置として提供することもできる。
【符号の説明】
【０２０４】
１０１ａ〜１０１ｃ  顧客サイト
１０２ａ〜１０２ｃ  ルータ
１０３ａ〜１０３ｃ  遅延監視部
１０４ａ〜１０４ｃ  クライアント端末
１１０  データセンタ
１２０  ルータ
１２１  遅延監視部
１１４ａ、１１４ｂ  Ｌ２スイッチ
１１５ａ〜１１５ｄ  業務サーバ
１１６  ストレージ装置
１１８  ネットワーク監視サーバ
１１９  ネットワーク監視端末
２１０  ハードウェア資源
２１１  仮想化部
２１２−１〜２１２−ｎ  仮想マシン
２４１  ＮＩＣ性能情報収集部
２４２  ＣＰＵ性能情報収集部
２５１  情報切り出し部
２６１−１〜２６１−ｎ  ＯＳ
２６２−１〜２６２−ｎ  業務アプリケーション
３０１  通信フロー情報
３０２  共有資源情報
３０３  監視条件設定部
３０４  情報収集範囲特定部
３０５  情報取得指示部
３０６  要因特定部
【図４】
0005458308.tif 000002
【図５】
0005458308.tif 000003
【図７】
0005458308.tif 000004
【図１０Ａ】
0005458308.tif 000005
【図１０Ｂ】
0005458308.tif 000006
【図１】
0005458308.tif 000007
【図２】
0005458308.tif 000008
【図３】
0005458308.tif 000009
【図６】
0005458308.tif 000010
【図８】
0005458308.tif 000011
【図９】
0005458308.tif 000012
【図１１】
0005458308.tif 000013
【図１２】
0005458308.tif 000014