JP2006107126A - ストレージネットワーク性能情報の収集・保存方法及び計算機システム並びにプログラム - Google Patents

ストレージネットワーク性能情報の収集・保存方法及び計算機システム並びにプログラム Download PDF

Info

Publication number
JP2006107126A
JP2006107126A JP2004292849A JP2004292849A JP2006107126A JP 2006107126 A JP2006107126 A JP 2006107126A JP 2004292849 A JP2004292849 A JP 2004292849A JP 2004292849 A JP2004292849 A JP 2004292849A JP 2006107126 A JP2006107126 A JP 2006107126A
Authority
JP
Japan
Prior art keywords
performance
application
storage
period
collection target
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.)
Granted
Application number
JP2004292849A
Other languages
English (en)
Other versions
JP4560367B2 (ja
Inventor
Hiroyuki Ochi
啓之 越智
Hideo Ohata
秀雄 大畑
Akira Takeda
景 武田
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.)
Hitachi Ltd
Original Assignee
Hitachi 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 Hitachi Ltd filed Critical Hitachi Ltd
Priority to JP2004292849A priority Critical patent/JP4560367B2/ja
Priority to US10/998,749 priority patent/US7143008B2/en
Publication of JP2006107126A publication Critical patent/JP2006107126A/ja
Priority to US11/586,617 priority patent/US7277821B2/en
Application granted granted Critical
Publication of JP4560367B2 publication Critical patent/JP4560367B2/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
    • G06F11/00Error detection; Error correction; Monitoring
    • G06F11/30Monitoring
    • G06F11/34Recording or statistical evaluation of computer activity, e.g. of down time, of input/output operation ; Recording or statistical evaluation of user activity, e.g. usability assessment
    • G06F11/3466Performance evaluation by tracing or monitoring
    • G06F11/3495Performance evaluation by tracing or monitoring for systems
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F11/00Error detection; Error correction; Monitoring
    • G06F11/30Monitoring
    • G06F11/34Recording or statistical evaluation of computer activity, e.g. of down time, of input/output operation ; Recording or statistical evaluation of user activity, e.g. usability assessment
    • G06F11/3409Recording or statistical evaluation of computer activity, e.g. of down time, of input/output operation ; Recording or statistical evaluation of user activity, e.g. usability assessment for performance assessment
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F2201/00Indexing scheme relating to error detection, to error correction, and to monitoring
    • G06F2201/88Monitoring involving counting
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F3/00Input arrangements for transferring data to be processed into a form capable of being handled by the computer; Output arrangements for transferring data from processing unit to output unit, e.g. interface arrangements
    • G06F3/06Digital input from, or digital output to, record carriers, e.g. RAID, emulated record carriers or networked record carriers
    • G06F3/0601Interfaces specially adapted for storage systems
    • G06F3/0628Interfaces specially adapted for storage systems making use of a particular technique
    • G06F3/0653Monitoring storage devices or systems
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F3/00Input arrangements for transferring data to be processed into a form capable of being handled by the computer; Output arrangements for transferring data from processing unit to output unit, e.g. interface arrangements
    • G06F3/06Digital input from, or digital output to, record carriers, e.g. RAID, emulated record carriers or networked record carriers
    • G06F3/0601Interfaces specially adapted for storage systems
    • G06F3/0668Interfaces specially adapted for storage systems adopting a particular infrastructure
    • G06F3/067Distributed or networked storage systems, e.g. storage area networks [SAN], network attached storage [NAS]

Abstract

【課題】アプリケーションの性能劣化の原因を確実に追究可能にするストレージネットワーク性能情報の収集・保存方法を提供する。
【解決手段】ホストサーバ205及びストレージ装置224を含むストレージネットワーク2の構成要素から収集・保存した性能情報を、アプリケーション240の性能劣化の調査に用いられる可能性の有無を自動的に判別し、この判別結果に応じて重要度を決定する。そして、重要度が高い性能情報の保存期間を長く設定し、重要度の低い性能情報の保存期間を短く設定する。そして、性能情報毎に設定された保存期間が過ぎると、該当する性能情報を削除する。
【選択図】図1

Description

本発明は、ストレージネットワークを構成するハードウェア装置ならびに同装置で稼動するソフトウェアに関する性能情報を収集し、保存する方法に係り、特にネットワークが大規模となり性能情報の収集対象となる構成要素の数が膨大になる場合に好適なストレージネットワーク性能情報の収集・保存方法に関する。
ネットワークを経由して複数のホストサーバから統合化されたストレージ装置にアクセスする構成をとるストレージネットワーク(SAN)は、大規模化が進むストレージの利用効率を高め管理コストを削減するためのデータセンタ用アーキテクチャとして広く普及しつつある。このようなストレージネットワーク環境(以下、SAN環境)で業務システムの性能監視やチューニングを行うには、ネットワークを構成するさまざまなハードウェア装置ならびにソフトウェアに関する性能情報を包括的に収集して、その相互間の関係や時間的な推移を把握することが必要になる。
計算機と外部記憶装置が直結されたサーバ単位で各業務システムが独立していた従来のアーキテクチャと異なり、SAN環境ではネットワーク装置やストレージ装置等を複数の計算機で共有する。SANの共用部分では各計算機で実行される業務システム間で性能上の干渉が生じる可能性がある。このため性能情報を包括的に収集して、計算機、ネットワーク装置、ストレージ装置の相互間の関係や時間的な性能の推移を把握する。
SANを対象にした従来の性能管理ソフトウェアでは、性能監視対象となるハードウェア装置やソフトウェアごとにネットワーク内に配置したエージェントと、ネットワーク全体の性能情報を一元管理する管理ソフト(ストレージ管理ソフトウェア)からなる構成をとって上記要求に応えている。
各エージェントはそれぞれの監視対象と直接通信して性能情報を取得し、一方、管理ソフトウェアは、各エージェントが取得した性能情報を収集・保存し、ストレージネットワーク管理者等からの要求に応じて性能情報を提供する。
SANを基盤にしたストレージ統合の普及とともに、大規模化したネットワークの構成要素(リソース)の数が膨大となり、その相互関係も複雑化する傾向にある。このリソースの増大と複雑化に伴い、ストレージ管理ソフトが保存対象とする性能情報も膨大になる。しかし、ストレージ装置の限られた記憶容量内で、効果的に性能情報を保存するため、次のような方法が採られている。
方法1:一度収集した性能情報を、ストレージ管理者が指定した一定期間のみ保存し、一定期間が過ぎると削除する方法。
方法2:保存容量の上限値を決め、上限値を超える都度、過去の性能情報から削除する方法。
方法3:収集した粒度の細かい性能情報を、より粒度の荒い値に時系列方向に集約し、粒度の荒い性能情報ほど長期間保存する方法。例えば、毎分の性能情報を60回取得した後、それらの値の平均値といった統計情報を計算し、毎時の性能情報を得る。毎分の性能情報に比べ粒度の荒い毎時の性能情報を長期間保存する。なお、粒度とは、単位時間当たりの性能情報のサンプル数を示し、単位時間当たりのサンプル数が多ければ粒度は細かくなり、単位時間当たりのサンプル数が少なければ粒度は荒くなる。
上記方法3を、ネットワークのトラフィックデータに対して適用した例として、特許文献1が知られている。
米国特許第5231593号
SANに対するI/O実行を行うアプリケーションに性能劣化が発生した場合、SANの管理者は、性能劣化の原因を調査する必要がある。性能劣化原因の調査は、ストレージ管理ソフトウェアが保存している性能情報のうち、アプリケーションが性能劣化を起こした時刻前後に、アプリケーションの発行するI/O命令の実行に関わった装置の性能情報を閲覧することで行う。性能劣化の原因調査には、粒度の細かい性能情報が必要とされる。
しかしながら、アプリケーションに性能劣化が起きてから、性能劣化が発覚し、SAN管理者が性能劣化原因の調査を開始するまでに、数日のブランクがあることがある。このような場合には、上記した方法1〜3を用いても、調査開始時には粒度の細かい性能情報が消去されていることがあり、性能劣化原因を追究できない、という問題があった。
そこで、本発明は、アプリケーションの性能劣化の原因を確実に追究可能にするストレージネットワーク性能情報の収集・保存方法を提供することを目的とする。
本発明は、計算機及びストレージ装置を含むストレージネットワークの構成要素から収集・保存した性能情報を、アプリケーションの性能劣化の調査に用いられる可能性の有無を自動的に判別し、この判別結果に応じて重要度を決定する。そして、重要度が高い性能情報の保存期間を長く設定し、重要度の低い性能情報の保存期間を短く設定する。そして、性能情報毎に設定された保存期間が過ぎると、該当する性能情報を削除する。
したがって、本発明は、ストレージネットワークに対しI/O実行を行うアプリケーションで性能劣化が発生した場合、性能劣化の原因調査に必要となる性能情報を自動的に絞込み、この絞込結果に限定して所定の時間保存することが可能となり、性能情報を格納するためのデータ記憶容量の増大を抑制しながら、性能劣化の原因追及に必要な性能情報についてのみ長期に渡って保存でき、性能劣化の調査が可能となる。
以下、本発明の一実施形態を添付図面に基づいて説明する。
図1は、本発明を適用するシステム構成図である。ローカルエリアネットワーク(LAN)204には、ホストサーバ205〜207と業務クライアント201〜203が接続される。各業務クライアント201〜203は、ホストサーバ205〜207上で実行されるアプリケーション240のサービス(業務の提供)を受ける。
各ホストサーバ205〜207は、ストレージネットワーク(SAN)2を介してストレージサブシステム224〜226に接続され、データなどの読み書きを行う。SAN2は、例えば、ファイバーチャネル等で構成されており、複数のSANスイッチ320〜323がホストサーバ205〜207とストレージサブシステム224〜226に接続される。なお、LAN204には、図示しないSAN管理用のサーバが接続され、各SANスイッチ320〜323の設定を行う。このため、LAN204はSANスイッチ320〜323にも接続される。
LAN204には、SAN2とストレージサブシステム224〜226の性能情報を収集する性能情報収集サーバ230と、性能情報収集サーバ230及び後述するようにホストサーバの各監視エージェントが収集した性能情報を管理する性能管理サーバ234と、性能管理サーバ234を操作するための性能管理クライアント144も接続される。
性能情報収集サーバ230は、SAN2とストレージサブシステム224〜226の性能を監視するため、SANスイッチ320〜323にも接続される。また、性能管理サーバ234は、LAN204だけではなく、SAN2のSANスイッチ320〜323のいずれかと接続するポートを有し、ストレージサブシステム224〜226へアクセス可能としてもよい。
次に、SAN2を介して接続されたホストサーバ205〜207とストレージサブシステム224〜226を監視して、性能情報を監視、収集する性能管理システムの概要について説明する。
図1において、ホストサーバ205〜207では、それぞれOS209、ファイルシステム208及びアプリケーション240が稼動し、さらにホストサーバ205〜207を監視して性能情報を収集するホスト監視エージェント210と、各アプリケーション240を監視して性能情報を収集するアプリケーション監視エージェント241が稼動する。
ホスト監視エージェント210は、各ホストサーバ205〜207上でそれぞれ実行されて、各ホストサーバ205〜207を監視して性能情報を収集する。ホスト監視エージェント210は、収集した性能情報をストレージサブシステム224〜226の予め設定された領域に格納する。そして、ホスト監視エージェント210は、性能管理サーバ234との間で通信を行って、後述するように取得した性能情報を、性能管理サーバ234のSAN性能管理ソフトウェア107に提供する。
ここで、ホスト監視エージェント210が監視する対象としては、例えば、ホストサーバ205〜207のファイルシステム208のI/O回数、各ホストサーバ205〜207に割り当てられたボリュームのI/O回数、ホストサーバ205〜207に設けたSAN2と通信するポートのI/O回数などを性能の監視対象とし、これら監視対象の性能情報を収集し、ストレージシステムの所定の領域に格納する。
アプリケーション監視エージェント241は、各ホストサーバ205〜207上のアプリケーション240をそれぞれ監視して性能情報を収集するもので、各ホストサーバ205〜207上のアプリケーション240毎に実行される。
アプリケーション監視エージェント241は、収集した性能情報をストレージサブシステム224〜226の予め設定された領域に格納する。そして、ホスト監視エージェント210は、性能管理サーバ234との間で通信を行って、SAN性能管理ソフトウェア234に取得した性能情報を提供する。
ここで、アプリケーション監視エージェント241が監視する対象としては、例えば、各アプリケーション240のレスポンスタイム(ターンアラウンドタイム)であり、各業務クライアント201〜203からの要求を受信してからこの要求に応答するまでのレスポンスタイムを監視する。
さらに、アプリケーション監視エージェント241は、後述するように、レスポンスタイムが予め設定した値よりも悪化した場合には、アプリケーション240の性能劣化を判定し、性能が劣化した期間を検出する。そして、アプリケーション監視エージェント241は、アプリケーション240の性能が劣化した期間を、ストレージサブシステム224〜226の予め設定された領域に格納する。そして、アプリケーション監視エージェント241は、性能管理サーバ234との間で通信を行って、格納した性能情報を提供する。
性能情報収集サーバ230では、SAN2のSANスイッチ320〜323を監視して性能情報を収集するSANスイッチ監視エージェント231と、ストレージサブシステム224〜226を監視して性能情報を収集するストレージサブシステム監視エージェント232が稼動する。
SANスイッチ監視エージェント231は、各SANスイッチ320〜323をそれぞれ監視して性能情報を収集するものである。
SANスイッチ監視エージェント231は、収集した性能情報をストレージサブシステム224〜226の予め設定された領域に格納する。そして、SANスイッチ監視エージェント231は、性能管理サーバ234との間で通信を行って、取得した性能情報をSAN性能管理ソフトウェア107に提供する。
ここで、SANスイッチ監視エージェント231が監視する対象としては、例えば、各SANスイッチ320〜323の単位時間あたりのI/O回数であり、この監視対象の性能情報を収集し、ストレージシステムの所定の領域に格納する。
ストレージサブシステム監視エージェント232は、各ストレージサブシステム224〜226をそれぞれ監視して性能情報を収集するものである。
ストレージサブシステム監視エージェント232は、収集した性能情報をストレージサブシステム224〜226の予め設定された領域に格納する。そして、ストレージサブシステム監視エージェント232は、性能管理サーバ234との間で通信を行って、収集した性能情報をSAN性能管理ソフトウェア107に提供する。
ここで、ストレージサブシステム監視エージェント232が監視する対象としては、例えば、各ストレージサブシステムの単位時間あたりのI/O回数であり、より具体的には、後述するように、各ストレージサブシステムのポートの単位時間あたりのI/O回数、各ボリューム(論理ボリューム)の単位時間あたりのI/O回数、RAIDグループ毎の単位時間あたりのI/O回数等から構成される。
そして、性能管理サーバ234上では、上記各エージェントが収集した性能情報を管理するストレージネットワーク(SAN)性能管理ソフトウェア107が実行される。
SAN性能管理ソフトウェア107は、後述する図41のように、アプリケーション監視エージェント241が性能の悪化を検出した場合には、該当するアプリケーション240の性能が劣化した期間について、このアプリケーション240に関連するSAN2上のリソースの性能情報について、保存期間を重要データとして延長する。
なお、性能の劣化に関与しないリソースの性能情報については、通常データとして所定の保存期間を設定する。
そして、通常の保存期間と重要データの保存期間が経過した性能情報について削除を行う。
つまり、本性能管理システムでは、SAN2上の障害や設定の不具合などを、アプリケーション240の性能情報(レスポンスタイム)から判定し、後述するように性能劣化が生じたアプリケーション240が利用するI/Oパス(経路情報)に係わるSAN2上のリソースの性能情報を、重要データとして通常よりも長い保存期間に設定し、後に障害等の追究が可能とする。
一方、アプリケーション240の性能劣化に関連しないSAN2上のリソースの性能情報については、重要データに比して期間の短い通常の保存期間まで保存し、通常の保存期間が経過した後に削除する。
これにより、性能情報を格納する記憶領域が膨大になるのを防ぎながらも、アプリケーション240に性能の劣化が生じてから、通常データの保存期間が過ぎた後であっても、アプリケーション240のI/Oパスに関連するリソースについては、粒度の細かい性能情報が保存されているので、アプリケーション240の性能劣化の原因を追究することが可能となるのである。
図2は、上記図1に示した性能管理システムの機能の概要を示す説明図である。この図2において、ストレージネットワーク構成装置・ソフトは、上記図1に示した、SAN2、ストレージサブシステム224〜226、ホストサーバ205〜207のハードウェア及びOS、ファイルシステム等のSAN2に関連するリソースを示す。
また、装置管理エージェント20は、上記図1のSANスイッチ監視エージェント231、ストレージサブシステム監視エージェント232、ホスト監視エージェント210の総称であり、SAN2上のリソースのそれぞれを監視して性能情報を収集し格納するものである。
各ストレージネットワーク構成装置・ソフトは、SAN2上の各リソースの性能情報を取得する性能情報取得機能108と、各リソースの構成情報を取得する構成情報取得機能114を持つ。
各装置監視エージェント20は、SAN2上のリソースの性能情報を収集する性能情報収集機能109と、収集した性能情報をメトリクス値に変換するメトリクス値テーブル110と、SAN性能管理ソフトウェア107に対して性能情報(メトリクス値)の通知等を行う性能情報応答機能111、SAN2上のリソースから構成情報を取得する構成情報収集機能115、SAN2上のリソースをアプリケーション240のI/Oパスに基づいて、リソース間の関連を記憶するリソース間関連情報記憶部116、取得した構成情報をSAN性能管理ソフトウェア107に応答する構成情報応答機能117を持つ。
ホストサーバ205〜207で実行される各アプリケーション240は、各アプリケーション240が利用するSAN2上のリソースを取得する構成情報取得機能126を持ち、各アプリケーション240の性能(例えば、レスポンスタイム)をログ130に出力する。
アプリケーション監視エージェント241は、アプリケーション240が利用するSAN2上のリソースの構成情報を収集する構成情報収集機能127、アプリケーション240が利用するSAN2上のリソースの関連を保存するリソース間関連情報記憶部128、上記構成情報が取得した構成情報をSAN性能管理ソフトウェア107に応答する構成情報応答機能129、ログ130を読み込んでアプリケーション240の劣化を検出するアプリケーション性能劣化期間検出機能131、アプリケーション240の劣化の判定を行うための情報を示すアプリケーション性能劣化期間決定ルール132、上記劣化が検出された期間を性能劣化として記憶するアプリケーション性能劣化期間テーブル134と、アプリケーション性能劣化期間テーブル134の情報をSAN性能管理ソフトウェア107に応答するアプリケーション性能劣化情報応答機能135を持つ。
SAN性能管理ソフト107は、各装置監視エージェント20からSAN2上のリソースの性能情報を収集する性能情報収集機能112と、性能情報として収集したメトリクス値を格納するメトリクス値テーブル119と、SAN2上のリソースの構成情報を収集する構成情報収集機能118と、SAN2上のリソースの関係を記憶するリソース間関連情報記憶部119と、アプリケーション監視エージェント241から性能劣化に関する情報を収集するアプリケーション性能劣化情報収集機能136と、アプリケーション毎に性能劣化期間を保存するアプリケーション性能劣化期間テーブル137と、通常データと重要データの識別を行ってアプリケーションの性能劣化に関する性能情報の保存期間を延長する削除非対象リソース算出機能138及び削除データ制御テーブル139と、保存期間を過ぎたメトリクス値(性能情報)をストレージサブシステム224〜226の所定の領域から削除するメトリクス削除機能140と、SAN2上のリソース毎にメトリクス値の保存期間を設定するメトリクス保存期間テーブル141と、アプリケーション240の劣化を判定するための目標値を設定するアプリケーション目標性能設定機能133と、性能情報と収集したメトリクス値の保存期間を設定するメトリクス保存期間設定機能142と、SAN2上のリソースのメトリクス値から性能を分析する性能分析表示機能143を持つ。
アプリケーション監視エージェント241は、各ホストサーバ205〜207上で実行され、各ホストサーバのアプリケーション240の性能劣化を検出するソフトウェアである。アプリケーション監視エージェント241は、アプリケーションおよびアプリケーションが利用するファイルシステムとの対応関係も検出する。
SAN2の性能情報の収集と監視は以下のように行なわれる。装置監視エージェント21の性能情報収集機能109は、予め設定したスケジューリング設定に従い定期的にタイマーによって起動されるか、SAN性能管理ソフトウェア107の要求で起動されると、自エージェントが担当するストレージネットワーク構成装置・ソフト21が持つ性能情報取得機能108に対し、メトリクスの測定値の送信を要求する。ストレージネットワーク構成要素(リソース)の個々の性能情報で、性能監視の候補となるものをメトリクスと呼ぶ。そして、このメトリクスは収集した性能情報を示し、例えば、種類の異なる各性能情報を相互に比較可能とするため、性能情報を変換したものである。
上記装置監視エージェント20からの要求に応えて、SAN2上のリソースの性能情報取得機能108から返信されたメトリック値は、装置監視エージェント20の性能情報収集機能109によってメトリクス値テーブル110に格納される。
SAN性能管理ソフトウェア107の性能情報収集機能112も同様に、予め設定したスケジューリング設定に従い定期的に起動され、装置監視エージェント20の性能情報応答機能111に対してメトリクス値の送信を要求する。この要求を受けた装置監視エージェント20は、性能情報応答機能111から要求されたメトリクス値をメトリクス値テーブル110から検索し、SAN性能管理ソフトウェア107の性能情報収集機能112に返信する。SAN性能管理ソフトウェア107は、装置監視エージェント20の性能情報応答機能111から返信されたメトリクス値を、性能情報収集機能112によってメトリクス値テーブル113に格納する。
SAN2の構成要素で、ひとまとまりのメトリクス値を取得する単位となるものをリソースと呼ぶ。リソースとリソース間の関連については、後述の図3で説明する。また、SAN性能管理ソフトウェア107の性能分析表示機能143が性能管理クライアント144に表示する画面の具体例を図9で説明する。
リソース間の関連情報の収集は、上記性能情報の場合と同様、以下のように行なわれる。
装置監視エージェント20の構成情報収集機能115は、予め設定されたスケジューリング設定で定期的に起動されるか、SAN性能管理ソフトウェア107の要求で起動され、自エージェント20が担当するストレージネットワーク構成装置・ソフト21の構成情報取得機能114に対しリソース間関連情報の送信を要求し、要求した情報が返信されるとリソース間の構成情報に基づくリソース間の関連情報をリソース間関連情報記憶部116に格納する。
SAN性能管理ソフトウェア107の構成情報収集機能118は、予め設定したスケジューリング設定で定期的に起動され、監視エージェント20の構成情報応答機能117に対し各エージェント20が収集したリソース間関連情報の送信を要求し、要求した情報が各装置監視エージェント20のリソース間関連情報記憶部116から検索されて返信されると、この情報をリソース間関連情報記憶部119に格納する。
リソース間の関連情報の収集は、アプリケーション監視エージェント241に対しても同様に行う。アプリケーション監視エージェント241の構成情報収集機能127は、予め設定されたスケジューリング設定で定期的に起動されるか、SAN性能管理ソフトウェア107の要求に基づいて起動され、自エージェント241が担当するアプリケーション240の構成情報取得機能126に対しリソース間関連情報の送信を要求し、要求した情報がSAN性能管理ソフトウェア107に返信されると、SAN性能管理ソフトウェア107はリソース間関連情報記憶部128に格納する。
SAN性能管理ソフトウェア107の構成情報収集機能118は、アプリケーション監視エージェント241の構成情報応答機能129に対しても、各エージェント241が収集したリソース間関連情報の送信を要求する。アプリケーション監視エージェント241では、要求した情報がSAN性能管理ソフトウェア107から返信されると、これらの情報をリソース間関連情報記憶部128から検索されて返信されるとリソース間関連情報記憶部119に格納する。
SAN性能管理ソフトウェア107の性能分析表示機能143は、性能管理クライアント144からの要求に応答し、メトリクス値テーブル113中のメトリック値を検索して返信する。性能管理クライアント144からの性能分析の要求に応えるため、性能分析表示機能143はネットワーク構成要素間の関係を利用する場合があるが、これに関する情報はリソース間関連情報記憶部119から検索される。
アプリケーション監視エージェント241によるアプリケーション240の性能劣化期間の検出および格納は以下のように行われる。
アプリケーション監視エージェント241のアプリケーション性能劣化期間検出機能131は、予め設定したスケジューリング設定で定期的に起動されるか、SAN性能管理ソフトウェア107のアプリケーション性能劣化情報収集機能136の要求で起動され、自エージェント241が担当するアプリケーション240のログ130を収集する。
アプリケーション240は、性能劣化検出に必要な情報をログに書き込む。アプリケーション監視エージェント241のアプリケーション性能劣化期間検出機能127は、ログ130を読み込んで解析し、アプリケーション性能劣化期間決定ルール132に基づいて、アプリケーション128の性能劣化期間を検出し、アプリケーション性能劣化期間テーブル134に書き込む。アプリケーション性能劣化期間決定ルール132は、ストレージネットワーク管理ソフト107のアプリケーション目標性能設定機能133によって設定される。アプリケーション目標性能設定機能133は、性能管理クライアント144から操作される。SAN性能管理ソフトウェア107のアプリケーション性能劣化情報収集機能136は、予め設定されたスケジューリング設定で定期的に起動され、監視エージェント20のアプリケーション性能劣化情報応答機能129に対し各エージェントが検出したアプリケーション性能劣化期間の送信を要求し、要求した情報がアプリケーション性能劣化期間テーブル134から検索されて返信されると、アプリケーション性能劣化期間テーブル137に格納する。
SAN性能管理ソフトウェア107のアプリケーション目標性能設定機能133の詳細は、図35を用いて詳しく説明する。アプリケーション性能劣化期間検出機能131の詳細は、図37を用いて詳しく説明する。
SAN性能管理ソフトウェア107が収集したメトリクスの削除は以下のように行われる。
はじめに、SAN性能管理ソフトウェア107の削除非対象リソース算出機能138は、アプリケーション性能劣化期間テーブル137を参照し、アプリケーションの性能劣化期間を得る。その後、リソース間関連記憶部119を参照し、該アプリケーション240の性能劣化期間中に、該アプリケーションと関連のあったリソースを検出する。そして、検出したリソースの結果を、削除データ制御テーブル139に格納する。
次に、SAN性能管理ソフトウェア107のメトリクス削除機能140は、削除データ制御テーブル139に基づき、メトリクス値テーブル113に格納されたメトリクスを削除する。削除の際、メトリクス保存期間テーブル141を参照し、メトリクス保存期間を得る。メトリクス保存期間テーブル141の値はメトリクス保存期間設定機能142により設定される。メトリクス保存期間設定機能142は、性能管理クライアント144から操作される。
削除非対象リソース算出機能138の詳細は、図38、図39、図40を用いて詳しく説明する。メトリクス削除機能140の詳細は、図41、図42を用いて詳しく説明する。
図3は、リソースならびにリソース間の性能に関する依存関係の具体例を示すソフトウェア及びハードウェアの説明図である。ストレージネットワークを構成する具体的なハードウェア装置やソフトウェアごとにさまざまな種類のリソースがある。個々のストレージネットワーク中のリソースは互いに性能上の影響を及ぼし合う関係にある。
図3において、ホストサーバAは図1のホストサーバ205であり、ホストサーバBは図1のホストサーバ206であり、これらホストサーバA、Bは、SAN2を構成するSANスイッチ320〜323を経由してストレージサブシステムA(図1のストレージサブシステム224)にアクセスする例を示す。
ホストサーバAのSAN2側にはポートA(318)が設けられ、SANスイッチ320のポートC(325)、ポートD(326)、SANスイッチ322のポートH(332)、ポートI(334)を介して、ストレージサブシステムAのポートN(341)に接続される。また、ポートAは、SANスイッチのポートC(325)、ポートE(327)からSANスイッチ323のポートJ(336)、ポートL(338)を経由してストレージサブシステムAのポートO(342)に接続される。
ホストサーバBのSAN2側にはポートB(319)が設けられ、SANスイッチ321のポートF(329)、ポートG(331)、SANスイッチ323のポートK(337)、ポートM(339)を介して、ストレージサブシステムAのポートP(343)に接続される。なお、図中SANスイッチ320〜323のうち、ホストサーバA、B側に配置されたポートをホスト側ポートとし、ストレージサブシステム224側に配置されたポートをストレージ側ポートとする。
ホストサーバA(205)では、アプリケーションA(240a)とアプリケーションB(240b)が稼働している。また、ホストサーバA(205)は、ファイルシステムA(208a)〜ファイルシステムF(208f)とボリュームA(314)〜ボリュームC(316)を有する。
ボリュームA(314)は、後に説明するストレージサブシステムAの論理ボリュームA(344)に対しI/O命令を発行できるようにホストサーバAのOSにマウントした仮想ディスクである。ボリュームB(315)とボリュームC(316)についても同様で、それぞれ、ストレージサブシステムAの論理ボリュームB(345)と論理ボリュームC(346)をホストサーバAにマウントした仮想ディスクである。
ホストサーバB(206)では、ホストサーバAと同様に、アプリケーションC(240c)が稼働しており、ホストサーバB(206)は、ファイルシステムG(208g)、ファイルシステムH(208h)とボリュームD(317)を持つ。
SANスイッチA(320)はポート(324)〜(327)を備える。SANスイッチAが持つポートのうち、番号(325)をポートC、番号(326)をポートD、番号(327)をポートEと呼ぶこととする。
SANスイッチB(321)〜SANスイッチD(323)についても同様で、SANスイッチBはポート(328)〜(331)を、SANスイッチCはポート(332)〜(335)を、SANスイッチDはポート(336)〜(339)を持つ。番号(329、331、332、334、336、337、338、339)のポートをそれぞれ、ポートF、ポートG、ポートH、ポートI、ポートJ、ポートK、ポートL、ポートMと呼ぶこととする。
ストレージサブシステムAは、物理ディスク350〜357を有する。物理ディスク350〜353をRAID構成した仮想ディスクが、RAIDグループA(348)で、物理ディスク(354)〜(357)によるRAID構成された仮想ディスクがRAIDグループB(349)である。RAIDグループA(348)を、上位のサーバが使いやすい大きさにスライスし、スライスされた結果が論理ボリュームA(344)と論理ボリュームB(345)である。同様に、RAIDグループB(349)をスライスした結果が論理ボリュームC(346)と論理ボリュームD(347)である。
サーバAでは、アプリケーションの性能劣化検出および構成情報監視のためのアプリケーション監視エージェント241と、ホストサーバAのハードならびにOSの性能情報を取得するためのホスト監視エージェント210が上記図1と同様に稼動しているものとする。ファイルシステムA(304)〜ファイルシステムF(309)と、ボリュームA(312)〜ボリュームC(314)、ポートA(316)は、ホストサーバA(205)で稼働するホスト監視エージェント210が、性能情報取得の対象とするリソースの一例である。ファイルシステムA〜Hは、各ホストサーバA、BのOS209がデータの入出力管理を行う一つの単位であり、各ボリュームA〜Dは、ファイルシステム上に作成されるファイルをマウントした外部記憶装置に格納する領域としてOS209で管理されるものである。
図3において、リソース間に引かれた線は、性能の依存関係を表わす。図3の例では、アプリケーションA(240a)はファイルシステムA(208a)〜ファイルシステムD(208d)に対しI/O処理を行う。この場合、アプリケーションA(240a)は、ファイルシステムA(208a)〜ファイルシステムD(208d)に対しI/O上の負荷をかけることとなり、アプリケーションA(240a)は、ファイルシステムA(208a)〜ファイルシステムD(208d)に性能上の負荷について依存関係があることとなる。なお、性能の依存関係とは、アプリケーション240が発行するI/O命令を処理する一連の装置およびソフトウェアがある場合に、これらの一連の装置およびソフトウェアの接続関係をいう。
図3において、ファイルシステムA及びファイルシステムBとボリュームAを結ぶ線は、ファイルシステムA、BがボリュームA上に配置される関係を表わしているが、この関係はまた、アプリケーション240aがファイルシステムAやファイルシステムBに対して操作を行った場合に、ボリュームAへ操作がつながるため、性能上の負荷について依存関係があることも表わしている。ボリュームA〜ボリュームCとホストサーバAポートAの間の線も同様に、性能の依存関係がある。
ホストサーバBでは、同様にアプリケーション監視エージェント241とホスト監視エージェント210が稼動しているものとする。ホストサーバBのホスト監視エージェント210が性能情報取得対象とするリソースには、ファイルシステムG(208g)〜ファイルシステムH(208h)と、ボリュームD(315)、ポートB(317)がある。
SANスイッチA〜SANスイッチDの性能情報を取得するため性能収集ソフトウェア。SANスイッチ管理エージェント231が稼動しているものとする。このSANスイッチ管理エージェント231が性能情報の取得対象とするリソースには、SANスイッチAのポート(322、323、326、327)、スイッチBのポート(324、325、328、329)、スイッチCのポート(322、323、326、327)、スイッチDのポート(324、325、328、329)がある。
ストレージサブシステムAでは、ストレージサブシステムAの性能情報を取得するためストレージサブシステム管理エージェント232が稼動しているものとする。このストレージサブシステム管理エージェント230が情報取得対象とするリソースには、ポートN(341)〜ポートP(343)と、論理ボリュームA(344)〜論理ボリュームD(347)、RAIDグループA(348)、RAIDグループB(349)、物理ディスク(350〜357)がある。
各論理ボリュームは予めRAIDグループに割り当てられ、また、RAIDグループは物理ディスクに割り当てられるため、これらリソース間には性能の依存関係がある。また、ホストサーバA、Bのボリュームと、同ボリュームが割り当てられるストレージサブシステムの論理ボリュームの対が決まると、この両者の間でやり取りされる入出力データの転送経路として、ホストバスアダプタ(ホストサーバA、B)のポート(AまたはB)から、SANスイッチの各ポートを経て、ストレージサブシステムのポートまでが決まる。従って、ホストサーバA、Bのボリュームにかかる入出力の負荷は経路上のポートに対する通信の負荷となるため、ボリュームおよび論理ボリュームの対と、経路上のポートの間には性能の依存関係がある。
図3の例では、ホストサーバAのボリュームAは論理ボリュームAに割り当てられ、論理ボリュームAはRAIDグループAに割り当てられ、RAIDグループAは物理ディスク350〜357に割り当てられ、ボリュームAと論理ボリュームAの対にポートAからポートC、ポートD、ポートH、ポートI、ポートNまでの経路が対応し、これらリソース間に性能の依存関係がある。
アプリケーション240a〜240cに近い側のリソースを性能の依存関係の上流と呼び、物理ディスクに近い側のリソースを性能の依存関係の下流と呼ぶこととする。図3の例では、アプリケーションAはファイルシステムAに対して上流にあたり、ファイルシステムAはボリュームAに対して上流にあたる。
図4(A)のテーブルは、装置監視エージェント21(ホスト監視エージェント210、SANスイッチ監視エージェント231、ストレージサブシステム監視エージェント232の各々)が持つメトリクス値テーブル110の構造の一例を示す図である。
メトリクス値テーブル110は、リソース識別子格納欄411とメトリクス識別子格納欄412とメトリクス値格納欄413と、T1格納欄414と、T2格納欄415からなる。
リソース識別子格納欄411には、装置監視エージェント20が収集対象とするリソースの識別子が格納され、メトリクス識別子格納欄412には、収集するメトリクスの種別を示す識別子が格納される。装置監視エージェント20がメトリクス値格納欄413に保存するメトリクス値は、T1格納欄414で指定された時刻を開始時刻とし、T2格納欄415で指定された時刻を終了時刻とする期間内に、リソース識別子格納欄411で指定されたリソースから取得した、メトリクス識別子格納欄412で指定されたメトリクスの値が装置監視エージェント20により設定される。
装置監視エージェント20が監視するメトリクス種別には、レスポンスタイム、スループット、リソース使用量、リソース使用率の4カテゴリがあり、毎秒I/O回数は、スループットの一例である。本実施例では、毎秒I/O回数をメトリクス識別子としてあげているが、装置やソフトウェアの性能を表わす他のメトリクス識別子に対する本実施例の適用を制限するものではない。
図4(B)のテーブルは、本実施形態における装置監視エージェント20の一例である、ホストサーバA(205)を監視するホスト監視エージェントA(図1の210)が持つメトリクス値テーブル401の内容を示している。
メトリクス値テーブル401は、ホスト監視エージェントAが、該ホスト監視エージェントの監視対象であるファイルシステムAや、ボリュームA、ポートA等から1時間おきにメトリクスを収集・保存していることを示している。
メトリクス値テーブル401の第1行目には、2000年1月11日10時から2000年1月11日11時の間に、ファイルシステムAから収集した毎秒I/O回数の値が1,214.5であったことが記録されている。
図5、図6、図7に示すメトリクス値テーブル501、601、701は、ホスト監視エージェントAが持つメトリクス値テーブル401と同様に、ホストサーバB(206)のホスト監視エージェントBが持つメトリクス値テーブル、ストレージ監視エージェント232が持つメトリクス値テーブル、SANスイッチ監視エージェント231が持つメトリクス値テーブルをそれそれ示している。各装置監視エージェント20が持つメトリクス値テーブルの構造は全て共通であり、リソースの種別を格納するリソース識別子格納欄(502、602、702)、メトリクスの種別を示す値を格納するメトリクス識別子格納欄(503、603、703)、性能情報に応じたメトリクス値を格納するメトリクス値格納欄(504、604、704)、開始日時を格納するT1格納欄(505、605、705)、終了日時を格納するT2格納欄(506、606、706)からなる。各格納欄の内容も同様である。
図8は、SAN性能管理ソフトウェア107が使用するメトリクス値テーブル113の構造の一例を示す図である。このテーブルの内容は、性能情報収集機能112を使って、すべての装置監視エージェント20から各々が持つメトリクス値テーブルの内容を集めて作成される。メトリクス値テーブル113は、メトリクス値テーブル110と共通の構造を持っており、リソース識別子格納欄(801)、メトリクス識別子格納欄(802)、メトリクス値格納欄(803)、T1格納欄(804)、T2格納欄(805)からなる。SAN性能管理ソフトウェア107が使用するメトリクス値テーブル113が格納する情報は、性能情報収集機能112による収集の時間遅れの期間を除けば、全ての装置監視エージェントが持つアプリケーション・ファイルシステム間関連テーブルの全ての行を合わせたものと一致する。具体的には、メトリクス値テーブル401、501、601、701の全行をマージしたものとなる。
図9は、グラフ形式による性能情報の表示画面の一例を示す図であり、SAN性能管理ソフトウェア107のメトリクス値テーブル113が持つ情報に基づいて、メトリクス値の時間的な推移を表示する。本画面は、SAN性能管理ソフトウェア107の性能分析表示機能143によって性能管理クライアント144に表示される。グラフの横軸(904)と縦軸(905)はそれぞれ時刻とメトリクス「毎秒I/O回数」(902)の値であり、表示内容は、複数のリソース(903)のメトリクス値の時間的な推移を示している。
図10は、アプリケーション監視エージェント241が持つリソース間関連情報記憶部128にはアプリケーション・ファイルシステム間関連テーブル1001が含まれることを示している。リソース間関連情報記憶部128は、リソース間の性能情報の依存関係を記憶する1つまたは複数のテーブルを格納するための記憶部である。アプリケーション・ファイルシステム間関連テーブル1001については図14にて詳しく説明する。
図11は、図10と同様に、装置監視エージェントの一つであるホスト監視エージェント210が持つリソース間関連情報記憶部116にはファイルシステム・ボリューム間関連テーブル1101と、ボリューム・論理ボリューム・RAIDグループ・ポート間関連テーブル1102が含まれることを示している。ファイルシステム・ボリューム間関連テーブル1101については図18を用いて詳しく説明する。また、ストレージサブシステムに関連するボリューム・論理ボリューム・RAIDグループ・ポート間関連テーブル1102については図21を用いて詳しく説明する。
図12は、図10と同様に、装置監視エージェント20の一つであるSANスイッチ監視エージェント231が持つリソース間関連情報記憶部116にはポート間通信経路テーブル1201が含まれることを示している。ポート間通信経路テーブル1201については図24を用いて詳しく説明する。
図13は、SAN性能管理ソフトウェア107が持つリソース間関連情報記憶部119にはアプリケーション・ファイルシステム間関連テーブル1301とファイルシステム・ボリューム間関連テーブル1302と、ボリューム・論理ボリューム・RAIDグループ・ポート間関連テーブル1303とポート間通信経路テーブル1304が含まれることを示している。SAN性能管理ソフトウェア107が持つリソース間関連情報記憶部119は、全ての装置監視エージェント20が収集したリソース間関連情報を収集し、蓄えるための記憶部であり、リソース間関連情報記憶部119に含まれるテーブルの内容は、各監視エージェントが持つリソース間関連情報記憶部が持つ、対応したテーブル内の行の合計となる。なお、アプリケーション・ファイルシステム間関連テーブル1301については図17を用いて詳しく説明する。
ファイルシステム・ボリューム間関連テーブル1302については図20を用いて詳しく説明する。ボリューム・論理ボリューム・RAIDグループ・ポート間関連テーブル1303については図23を用いて詳しく説明する。ポート間通信経路テーブル1304については図25を用いて詳しく説明する。
図14(A)のテーブルは、アプリケーション監視エージェント241の各々が持つリソース間関連情報記憶部128に格納され、アプリケーション・ファイルシステム間関連テーブル1001の構造の一例を示す図である。
アプリケーション・ファイルシステム間関連テーブル1001は、図3で説明したアプリケーションとファイルシステムとの間の性能の依存関係を記録するためのものであり、アプリケーションの識別子を格納するアプリケーション識別子格納欄1411、ファイルシステムの識別子を格納するファイルシステム識別子格納欄1412、有効期間の開始日時を格納する有効期間開始時刻格納欄1413、有効期間の終了日時を格納する有効期間終了時刻格納欄1414からなる。テーブルの各行は、依存関係があったアプリケーションとファイルシステムの組と、その組に依存関係があった期間1つに対応する。
アプリケーション監視エージェント241および装置監視エージェント20が持つ構成情報収集機能は、予め設定したスケジューリング設定に従い定期的にタイマーによって起動されるか、SAN性能管理ソフトウェア107の要求で起動されると、監視対象のアプリケーション240および装置が持つ構成情報取得機能に対し、該アプリケーションおよび装置に関する性能の依存関係の送信を要求する。例えば、図3に示すホストサーバAのアプリケーションAが監視対象であれば、アプリケーションAが利用するファイルシステム一覧の送信を要求する。アプリケーションAから受信した性能の依存関係が、前回の収集時に得た関係と変化していなければ、アプリケーション監視エージェント241は、有効期間終了時刻を現在時刻で更新する。前回の収集時から性能の依存関係が変化していれば、新たな性能の依存関係を意味する行を追加する。追加する行の有効期間開始時刻は前回の収集時刻とし、有効期間終了時刻は今回の収集時刻とする。初回の収集時の場合、「前回の収集時刻」が存在しないため、その場合は、追加する行の有効期間開始時刻を過去の任意の時刻としてよい。
図14(B)のテーブルは、本実施例におけるアプリケーション監視エージェントの一例である、ホストサーバA(205)上で稼働するアプリケーションA(240a)を監視するアプリケーション監視エージェントA(241)が持つリソース間関連情報記憶部に格納される、アプリケーション・ファイルシステム間関連テーブル1401の内容を示している。アプリケーション・ファイルシステム間関連テーブル1401は、テーブル1001と共通の構造をしており、アプリケーション識別子格納欄1402、ファイルシステム識別子格納欄1403、有効期間開始時刻格納欄1404、有効期間終了時刻格納欄1405からなる。アプリケーション・ファイルシステム間関連テーブル1401の第1行目には、2000年1月01日00:00〜2000年1月14日13:00の間に、アプリケーションAがファイルシステムAと性能の依存関係があったことが記録されている。
図15と図16に示したアプリケーション・ファイルシステム間関連テーブル1501、1602は、テーブル1401と同様に、ホストサーバA(205)上で稼働するアプリケーションB(240b)を監視するアプリケーション監視エージェントBと、ホストサーバB(206)上で稼働するアプリケーションC(240c)を監視するアプリケーション監視エージェントCが各々持つリソース間関連情報記憶部128に格納される、アプリケーション・ファイルシステム間関連テーブルの例である。
このテーブル1501、1601の構造は、アプリケーション・ファイルシステム間関連テーブル1401と同様にアプリケーション識別子格納欄(1502、1602)、ファイルシステム識別子格納欄(1503、1603)、有効期間開始時刻格納欄(1504、1604)、有効期間終了時刻格納欄(1505、1605)からなる。各格納欄の内容も同様である。
図17のアプリケーション・ファイルシステム間関連テーブル1301は、SAN性能管理ソフトウェア107が持つリソース間関連情報記憶部119が格納するアプリケーション・ファイルシステム間関連テーブルの構造の一例であり、全てのアプリケーション監視エージェントから収集したアプリケーション・ファイルシステム間の依存関係を格納する。該テーブル1301の構造は、アプリケーション・ファイルシステム間関連テーブル1401と同様にアプリケーション識別子格納欄1701、ファイルシステム識別子格納欄1702、有効期間開始時刻格納欄1703、有効期間終了時刻格納欄1704からなる。該テーブル1301が格納する情報は、構成情報収集機能118による収集の時間遅れの期間を除けば、全アプリケーション監視エージェントが持つアプリケーション・ファイルシステム間関連テーブルの全行をマージしたものと一致する。具体的には、アプリケーション・ファイルシステム間関連テーブル1401、1501、1601の全行をマージしたものとなる。
図18(A)のテーブルは、ホスト監視エージェント210が持つリソース間関連情報記憶部に格納される、ファイルシステム・ボリューム間関連テーブル1101の構造の一例である。ファイルシステム・ボリューム間関連テーブル1101は、図3で説明したファイルシステムとボリュームとの間の性能の依存関係を記録するためのものであり、ファイルシステム識別子格納欄1811とボリューム識別子格納欄1812、有効期間開始時刻格納欄1813、有効期間終了時刻格納欄1814からなる。テーブルの各行は、依存関係があったファイルシステムとボリュームの組と、その組に依存関係があった期間1つに対応する。ホスト監視エージェントが持つファイルシステム・ボリューム間関連テーブルの更新方法は、図14で説明した方法と同様である。
図18(B)のテーブルは、本実施例におけるホスト監視エージェント210の一例である、ホストサーバA(205)を監視するホスト監視エージェントAが持つリソース間関連情報記憶部に格納される、ファイルシステム・ボリューム間関連テーブル1801の内容を示している。ファイルシステム・ボリューム間関連テーブル1801は、テーブル1101と共通の構造をしており、ファイルシステム識別子格納欄1802とボリューム識別子格納欄1803、有効期間開始時刻格納欄1804、有効期間終了時刻格納欄1805からなる。ファイルシステム・ボリューム間関連テーブル1801の第1行目には、2000年1月01日00:00〜2000年1月14日13:00の間に、ファイルシステムAがボリュームAと性能の依存関係があったことが記録されている。
図19は、テーブル1801と同様に、ホストサーバB(206)を監視するホスト監視エージェントBが持つリソース間関連情報記憶部に格納される、ファイルシステム・ボリューム間関連テーブル1901の例である。ファイルシステム・ボリューム間関連テーブル1901の構造は、テーブル1801と同様に、ファイルシステム識別子格納欄1902、ボリューム識別子格納欄1903、有効期間開始時刻格納欄1904、有効期間終了時刻格納欄1905からなる。各格納欄の内容も同様である。
図20は、SAN性能管理ソフトウェア107が持つリソース間関連情報記憶部119が格納するファイルシステム・ボリューム間関連テーブル1302の例であり、全てのホスト監視エージェントから収集したファイルシステム・ボリューム間の依存関係を格納する。ファイルシステム・ボリューム間関連テーブル1302の構造は、テーブル1801と共通の構造をしており、ファイルシステム識別子格納欄2001、ボリューム識別子格納欄2002、有効期間開始時刻格納欄2003、有効期間終了時刻格納欄2004からなる。
ファイルシステム・ボリューム間関連テーブル1302が格納する情報は、構成情報収集機能118による収集の時間遅れの期間を除けば、全ホスト管理エージェントが持つファイルシステム・ボリューム間関連テーブルの全行をマージしたものと一致する。具体的には、ファイルシステム・ボリューム間関連テーブル1801、1901の全行をマージしたものとなる。
図21(A)のテーブルは、ホスト監視エージェント210が持つリソース間関連情報記憶部に格納される、ボリューム・論理ボリューム・RAIDグループ・ポート間関連テーブル1102の構造の一例である。
ボリューム・論理ボリューム・RAIDグループ・ポート間関連テーブル1102は、図3で説明したボリューム・論理ボリューム・RAIDグループ・ホスト側ポート・ストレージ側ポート間の性能の依存関係を記録するためのものであり、ボリュームの識別子を格納するボリューム識別子格納欄2111、論理ボリュームの識別子を格納する論理ボリューム識別子格納欄2112、所属するRAIDグループを格納するRAIDグループ識別子格納欄2113、SANスイッチのホスト側ポートを格納するホスト側ポート識別子格納欄2114、SANスイッチのストレージ側のポートを格納するストレージ側ポート識別子格納欄2115、有効期間開始時刻格納欄2116、有効期間終了時刻格納欄2117からなる。テーブルの各行は、依存関係があったボリューム・論理ボリューム・RAIDグループ・ポートの組と、その組に依存関係があった期間1つに対応する。ホスト監視エージェントが持つボリューム・論理ボリューム・RAIDグループ・ポート間関連テーブルの更新方法は、図14で説明した方法と同様である。
図21(B)のテーブルは、本実施例におけるホスト監視エージェントの一例である、ホストサーバA(205)を監視するホスト監視エージェントAが持つリソース間関連情報記憶部に格納される、ボリューム・論理ボリューム・RAIDグループ・ポート間関連テーブル2101の内容を示している。ボリューム・論理ボリューム・RAIDグループ・ポート間関連テーブル2101は、テーブル1102と共通の構造をしており、ボリューム識別子格納欄2102、論理ボリューム識別子格納欄2103、RAIDグループ識別子格納欄2104、ホスト側ポート識別子格納欄2105、ストレージ側ポート識別子格納欄2106、有効期間開始時刻格納欄2107、有効期間終了時刻格納欄2108からなる。ボリューム・論理ボリューム・RAIDグループ・ポート間関連テーブル2101の第1行目には、2000年1月01日00:00〜2000年1月14日13:00の間に、ボリュームAが論理ボリュームA、RAIDグループA、ポートA、ポートNと性能の依存関係があったことが記録されている。
図22は、テーブル2101と同様に、ホストサーバB(206)を監視するホスト監視エージェントが持つボリューム・論理ボリューム・RAIDグループ・ポート間関連テーブル2201の例である。テーブル2201の構造は、テーブル2101と同様に、ボリューム識別子格納欄2202、論理ボリューム識別子格納欄2203、RAIDグループ識別子格納欄2204、ホスト側ポート識別子格納欄2205、ストレージ側ポート識別子格納欄22065、有効期間開始時刻格納欄2207、有効期間終了時刻格納欄2208からなる。各格納欄の内容も同様である。
図23は、SAN性能管理ソフトウェア107が持つリソース間関連情報記憶部119が格納するボリューム・論理ボリューム・RAIDグループ・ポート間関連テーブル1303の例であり、全てのホスト監視エージェントから収集したボリューム・論理ボリューム・RAIDグループ・ホスト側ポート・ストレージ側ポート間の依存関係を格納する。図23に示すテーブルの構造は、テーブル2101と同様に、ボリューム識別子格納欄2301、論理ボリューム識別子格納欄2302、RAIDグループ識別子格納欄2303、ホスト側ポート識別子格納欄2304、ストレージ側ポート識別子格納欄2305、有効期間開始時刻格納欄2208a、有効期間終了時刻格納欄2307からなる。
図23に示したテーブルが格納する情報は、構成情報収集機能118による収集の時間遅れの期間を除けば、全ホスト監視エージェントが持つボリューム・論理ボリューム・RAIDグループ・ポート間関連テーブルの全行をマージしたものと一致する。具体的には、ボリューム・論理ボリューム・RAIDグループ・ポート間関連テーブル2101、2201の全行をマージしたものとなる。
図24(A)のテーブルは、ストレージネットワーク上のSANスイッチ(320〜323)を監視するSANスイッチ監視エージェント231が持つリソース間関連情報記憶部116に格納される、ポート間通信経路テーブル1201の例である。ポート間通信経路テーブル1201は、図3で説明したホスト側ポートからストレージ側ポートまでの経路上にあるポート間の性能の依存関係を記録するためのものであり、SANスイッチのホスト側ポートの識別子を格納するホスト側ポート識別子格納欄2411、同じくストレージ側ポートの識別子を格納するストレージ側ポート識別子格納欄2412、SAN2内の通信経路上のポートの識別子を複数格納する通信経路上ポート群識別子格納欄2413、有効期間の開始日時を格納する有効期間開始時刻格納欄2414、有効期間の終了日時を格納する有効期間終了時刻格納欄2415からなる。
テーブルの各行は、依存関係があったホスト側ポート・ストレージ側ポート・ホスト側ポートとストレージ側ポートが指定された場合の通信経路上のポート群・左記全ポートの間に依存関係があった期間1つに対応する。SANスイッチ監視エージェント231が持つポート間通信経路テーブルの更新方法は、上記図14で説明した方法と同様である。
図24(B)のテーブルは、本実施例におけるSANスイッチ監視エージェント231の一例が持つリソース間関連情報記憶部116に格納される、ポート間通信経路テーブル2401の内容を示している。ポート間通信経路テーブル2401は、テーブル1201と共通の構造をしており、ホスト側ポート識別子格納欄2402、ストレージ側ポート識別子格納欄2403、通信経路上ポート群識別子格納欄2404、有効期間開始時刻格納欄2405、有効期間終了時刻格納欄2406からなる。ボリューム・論理ボリューム・RAIDグループ・ポート間関連テーブル2401の第1行目には、2000年1月01日00:00〜2000年1月14日13:00の間に、ポートA、ポートC、ポートD、ポートH、ポートI、ポートNの間に性能の依存関係があったことが記録されている。
図25は、SAN性能管理ソフトウェア107が持つリソース間関連情報記憶部119が格納するポート間通信経路テーブル1304の例であり、全てのSANスイッチ監視エージェント231から収集したホスト側ポートからストレージ側ポートまでの経路上にあるポート間の性能の依存関係を格納する。図25に示すテーブルの構造は、テーブル2401と同様に、ホスト側ポート識別子格納欄2501、ストレージ側ポート識別子格納欄2502、通信経路上ポート群識別子格納欄2503、有効期間開始時刻格納欄2504、有効期間終了時刻格納欄2505からなる。
図25に示したテーブルが格納する内容は、構成情報収集機能118による収集の時間遅れの期間を除けば、全SANスイッチ監視エージェント231が持つポート間通信経路テーブルの全ての行を合わせたものと一致する。本実施例では、単一のSANスイッチ監視エージェント231が全SANスイッチを監視する構成をとっているため、ポート間通信経路テーブル1304の内容は、テーブル2401と等しくなる。
図26は、アプリケーションの性能劣化判定ルールを設定するための画面の一例であり、アプリケーション目標性能設定機能133により性能管理クライアント144に表示される。当画面はアプリケーション選択領域2601と目標性能入力領域2602、設定ボタン2603からなる。ユーザは、アプリケーション選択領域2602からアプリケーションを選択し、目標性能入力領域2603にて目標ターンアラウンドタイム(レスポンスタイム)を入力し、設定ボタン2603を押下(あるいはクリック)する。設定ボタンが押下されると、アプリケーション目標性能設定機能133は、選択されたアプリケーションを監視するアプリケーション監視エージェント241が持つアプリケーション性能劣化期間決定ルール132を更新する。
図27のアプリケーション性能劣化期間決定ルール132は、アプリケーション性能劣化期間決定ルールを格納するテーブルの構造の一例である。アプリケーション性能劣化決定ルール132は、アプリケーションの識別子を格納するアプリケーション識別子格納欄2711と、アプリケーションの目標応答時間である目標ターンアラウンド時間を格納する目標ターンアラウンドタイム格納欄2712からなる。アプリケーション識別子格納欄2711にはユーザが選択したアプリケーションの識別子が格納され、目標ターンアラウンドタイム格納欄2712にはユーザが入力した目標ターンアラウンドタイムが格納される。
図27のアプリケーション性能劣化期間決定ルール2701は、本実施例におけるアプリケーション監視エージェントの一例である、ホストサーバA(205)上で稼働するアプリケーションA(240a)を監視する、アプリケーション監視エージェントAが持つアプリケーション性能劣化期間決定ルールの内容を示している。アプリケーション性能劣化期間決定ルール2701、テーブル132と共通の構造をしており、アプリケーション識別子格納欄2702と、目標ターンアラウンドタイム格納欄2703からなる。アプリケーション性能劣化期間決定ルール2701には、アプリケーションA(240a)の目標ターンアラウンドタイムとして1800秒が指定されたことが記録されている。
図28、図29に示すアプリケーション性能劣化期間決定ルール2801、2901は、アプリケーションBを監視するアプリケーション監視エージェントBが持つアプリケーション性能劣化期間決定ルールとアプリケーションCを監視するアプリケーション監視エージェントCが持つアプリケーション性能劣化期間決定ルールの例である。
アプリケーション性能劣化期間決定ルール2801、2901は、テーブル2701と共通の構造を持ち、アプリケーション識別子格納欄(2801、2901)と、目標ターンアラウンドタイム格納欄(2802、2902)からなる。各格納欄の内容も同様である。
図30(A)のテーブルは、アプリケーション監視エージェントが持つアプリケーション性能劣化期間テーブル134の構造の一例であり、アプリケーション監視エージェント241が、監視対象のアプリケーション240の性能劣化期間を検出し、格納した結果を示している。図30(A)はアプリケーションの識別子を格納するアプリケーション識別子格納欄3011、性能劣化の開始日時を格納する性能劣化開始時刻格納欄3012、性能劣化の終了日時を格納する性能劣化性能劣化終了時刻格納欄3013からなる。
アプリケーション監視エージェント241が持つアプリケーション性能劣化期間検出機能131は、上記したアプリケーション性能劣化期間決定ルール132と、アプリケーションが出力するログ130を参照し、自らが監視するアプリケーションの性能劣化期間を検出する。
ここで、アプリケーション監視エージェント241で行われる性能劣化期間検出のフローチャートを図37を用いて詳しく説明する。本実施形態では、アプリケーションの性能劣化を検出するために、アプリケーションが出力するログの情報を用いているが、その他の方法にも、アプリケーションと通信を行い、アプリケーションから性能劣化検出に必要な情報を受け取る方法や、アプリケーション自身が性能劣化を判定し、性能劣化期間テーブルに書き込む方法等もある。本実施例は、それらの方法を制限するものではない。
図30(B)のテーブルは、アプリケーションA(240a)を監視するアプリケーション監視エージェントAが持つアプリケーション性能劣化期間テーブル3001を示している。アプリケーション性能劣化期間テーブル3001は、テーブル134と共通の構造を持ち、アプリケーション識別子格納欄3002、性能劣化開始時刻格納欄3003、性能劣化終了時刻3004からなる。アプリケーション性能劣化期間テーブル3001の一行目には、アプリケーションAが2000年01月11日10:30〜2000年01月11日11:10の間に、性能劣化を起こしたことが示されている。
図31、図32は、テーブル3001と同様に、アプリケーションB(240b)、アプリケーションC(240c)を監視するアプリケーション監視エージェントB、Cが持つアプリケーション性能劣化期間テーブル3101、3201を示している。図31、図32の構造はテーブル134と共通で、アプリケーション識別子格納欄(3102、3202)、性能劣化開始時刻格納欄(3103、3203)、性能劣化終了時刻格納欄(3104、3204)からなる。各格納欄の内容も同様である。
図33は、SAN性能管理ソフトウェア107が持つアプリケーション性能劣化期間テーブル137の例であり、アプリケーション監視エージェントA、Bから収集したアプリケーション性能劣化期間を格納する。図33に示すテーブルの構造はテーブル134と同様で、アプリケーション識別子格納欄(3301)、性能劣化開始時刻格納欄(3302)、性能劣化終了時刻格納欄(3303)からなる。図33に示したテーブルが格納する内容は、アプリケーション性能劣化情報収集機能による収集の時間遅れの期間を除けば、全アプリケーション監視エージェントが持つアプリケーション性能劣化期間テーブルの全行をマージしたものと一致する。具体的には、アプリケーション性能劣化期間テーブル3101、3201、3301の全行をマージしたものとなる。
図34は、SAN性能管理ソフトウェア107が持つ削除データ制御テーブル139の一例を示している。削除データ制御テーブル139は、アプリケーション240の性能劣化の開始日時を格納する性能劣化開始時刻格納欄3401、同じく性能劣化の終了日時を格納する性能劣化終了時刻格納欄3402、アプリケーション240に関連するリソースの識別子を格納する性能依存リソース格納欄3403から構成される。当テーブルの一行は、性能劣化開始時刻格納欄3401と性能劣化終了時刻格納欄3402で決定される性能劣化期間内に、性能劣化を起こしたアプリケーションが、性能依存リソース格納欄3403で決定されるリソースと性能上の依存関係があったことを表わす。SAN性能管理ソフトウェア107が持つ削除非対象リソース算出機能138が、削除データ制御テーブル139を更新する。削除データ制御テーブル139の更新方法は、図38、39に示すフローチャートを用いて詳しく説明する。
図34に示す削除データ制御テーブル139の例では、SAN性能管理ソフトウェア107が持つリソース間関連情報記憶部119内の4つのテーブル{アプリケーション・ファイルシステム間関連テーブル1301、ファイルシステム・ボリューム間関連テーブル1302、ボリューム・論理ボリューム・RAIDグループ・ポート間関連テーブル1303、ポート間通信経路テーブル1304}と、アプリケーション劣化期間テーブル137とを入力として、削除非対象リソース算出機能138が処理を行い、削除データ制御テーブルを作成した例である。ただし、図34に示す削除データ制御テーブル139の例では、アプリケーションAの性能劣化期間についての情報のみ掲載している。アプリケーションBおよびアプリケーションCについて、処理を行わないわけではない。
図35はメトリクスの保存期間を設定するための画面の一例であり、メトリクス保存期間設定機能142により性能管理クライアント144に送信され、性能管理クライアント144の表示装置上に表示される。当画面は、通常データ保存期間入力領域3501と、重要データ保存期間入力領域3502と、設定ボタン3503からなる。重要データとは、性能劣化が起きたアプリケーションの性能劣化期間中に依存関係があったリソースから収集したメトリクスを意味する。通常データは、重要データに該当しないメトリクスである。ユーザが通常データ保存期間入力領域3501と、重要データ保存期間入力領域3502にそれぞれ保存期間を入力し設定ボタン3503を押下すると、メトリクス保存期間設定機能142は、メトリクス保存期間設定テーブル141に通常データ保存期間と重要データ保存期間を格納する。
図36は、メトリクス保存期間設定テーブル141の一例であり、通常データおよび重要データの保存期間を格納する。メトリクス保存期間設定テーブル141は、保存期間種類格納欄3601と保存期間(時間)格納欄3602からなり、通常データ保存期間の値3603と、重要データ保存期間の値3604を格納する。
図37は、アプリケーション監視エージェント241が持つアプリケーション性能劣化期間検出機能131のフローチャートである。該フローチャートは、初期化処理(3701)とループ処理(3702〜3707)からなる。以下、該フローチャートについて説明する。
まず、ステップ3701で、アプリケーション性能劣化期間決定ルール132からアプリケーションの目標ターンアラウンドタイムを取得して変数「TA」の値とし、ステップ3702に進む。
ステップ3702では、ログ130から未処理の処理開始時刻と処理終了時刻の組を取得し、取得した組それぞれについてループ処理を開始する。ループ内処理の開始ステップであるステップ3703に進む。
ステップ3703では、処理開始時刻を変数「T1」の値とし、ステップ3404に進む。
ステップ3704では、処理終了時刻を変数「T2」の値とし、ステップ3405に進む。
ステップ3705では、処理終了時刻をT2―T1とTAとを比較する。T2−T1がTAより大きければ、性能劣化が起きたと判定し、ステップ3706に進む。T2−T1がTA以下であれば、性能劣化が起きていないと判定し、ステップ3707に進む。
ステップ3706では、性能劣化検出対象のアプリケーション識別子、ステップ3703で決定したT1、ステップ3704で決定したT2からなる組をアプリケーション性能劣化期間テーブル134に追加する。の性能に追加する。性能劣化検出対象のアプリケーション識別子は列3011に、T1は列3012に、T2は列3013にそれぞれ格納する。格納後、ステップ3407に進む。
ステップ3707では、ループ処理対象の行がある限り、ステップ3702に戻る。
上記処理により、アプリケーション監視エージェント241はアプリケーション性能劣化期間テーブル134を作成する。
図38は、SAN性能管理ソフトウェア107で実行される削除非対象リソース算出機能138のフローチャートである。該フローチャートは、性能劣化を起こしたアプリケーションを起点とし、RAIDグループを終点とするI/O命令が処理される経路(I/Oパス)上のリソース群を、性能が劣化したアプリケーションと性能の依存関係にあったリソースとして検出する処理を示す。
以下では、アプリケーションから物理ディスクまでのI/O命令が処理される経路をI/Oパスと呼ぶこととする。また、I/Oパスにおいてアプリケーションに近い側を上流と呼び、物理ディスクに近い側を下流と呼ぶこととする。図38のフローチャートは、初期化処理(3801)とループ処理(3802〜3805)からなる。以下、該フローチャートについて説明する。
始めに、ステップ3801では、削除データ制御テーブル139の内容をクリアする初期化を実施する。クリア後、ステップ3802に進む。
ステップ3802では、アプリケーション性能劣化期間テーブル137を参照し、該アプリケーション性能劣化期間テーブル137内の各行についてループ処理を開始する。ループ内処理の開始ステップであるステップ3803に進む。
ステップ3803では、性能劣化を起こしたアプリケーションと性能劣化期間中に性能の依存関係のあったリソースを検出するため、性能劣化を起こしたアプリケーションを起点とするI/Oパスを検出する。
I/Oパス検出のため、図39で詳しく説明するI/Oパス算出サブルーチン3901を呼び出す。該I/Oパス算出サブルーチンを呼び出し、該I/Oパスを検出し、ステップ3804に進む。
ステップ3804では、ステップ3803で検出したI/Oパス上の各リソースを、性能劣化開始期間と性能劣化終了時刻の組とともに、重複を除いて削除データ制御テーブル139に格納する。格納後、ステップ3805に進む。
ステップ3805では、アプリケーション性能劣化期間テーブル137に処理対象の行がある限り、ステップ3802に戻る。
上記処理により、性能劣化を起こしたアプリケーション240を起点とする全I/Oパス上の収集対象要素を、アプリケーション240と性能の依存関係のあった収集要素対象とする。
図39は、アプリケーション識別子と性能劣化期間を受け取り、性能劣化期間中に、該アプリケーション識別子で指定されたアプリケーションを起点とするI/Oパスを算出する、I/Oパス算出サブルーチン3901である。以下、SAN性能管理ソフトウェア107で実行されるI/Oパス算出サブルーチン3901について説明する。
まず、始めのステップ3902では、I/Oパス算出対象のアプリケーション識別子を受け取り、識別子をAPへ代入する。演算後、ステップ3903に進む。
ステップ3903では、I/Oパス算出対象の性能劣化期間を受け取り、ステップ3904に進む。
ステップ3904では、アプリケーション・ファイルシステム間関連テーブル1301を走査し、ステップ3902で決定したAPと、ステップ3903で決定した性能劣化期間中に、性能の依存関係があったファイルシステムを検出する。
具体的には、アプリケーション・ファイルシステム間関連テーブル1301の全行から、アプリケーション識別子格納欄1701の値がAPと等しく、かつ、有効期間開始時刻1703と有効期間終了時刻1704で決定される期間が、性能劣化期間の少なくとも一部を含む行を絞込み、絞込みで残った全行のファイルシステム識別子格納欄1702で指定されたファイルシステムを検出する。検出したファイルシステムをF1〜Fiとする。演算後、ステップ3905に進む。
ステップ3905では、ステップ3904で検出したファイルシステムの数だけ、リソースリストを作成する。各リソースリストは、一本のI/Oパスを表わす。各リソースリストの第一要素に、検出したファイルシステムを追加する。演算後、ステップ3906に進む。
ステップ3906では、ファイルシステム・ボリューム間関連テーブル1302を走査し、アプリケーション240の性能劣化期間中に、ステップ3904で検出したファイルシステムF1〜Fiのいずれかと性能の依存関係があったボリュームを検出し、リソースリストに追加する。具体的には、ファイルシステム・ボリューム間関連テーブル1302の全行から、ファイルシステム識別子格納欄2001の値がF1〜Fiのいずれかと等しく、かつ、有効期間開始時刻2003と有効期間終了時刻2004で決定される期間が、性能劣化期間の少なくとも一部を含む行を絞込み、絞込みで残った全行のボリューム識別子格納欄2002で指定されたボリュームを検出する。検出したボリュームをV1〜Vjとする。検出後、ステップ3907に進む。
ステップ3907では、ステップ3906で検出したボリュームを、該ボリュームと対応するファイルシステムをリストの第一要素として持つリソースリストに追加する。追加後、ステップ3908に進む。
ステップ3908では、ボリューム・論理ボリューム・RAIDグループ・ポート間関連テーブル1303を走査し、性能劣化期間中に、ステップ3906で検出したボリュームV1〜Vjのいずれかと性能の依存関係があった論理ボリューム・RAIDグループ・ホスト側ポート・ストレージ側ポートの組を検出し、リソースリストに追加する。具体的には、ボリューム・論理ボリューム・RAIDグループ・ポート間関連テーブル1303の全行から、ボリューム識別子格納欄2301の値がV1〜Vjのいずれかと等しく、かつ、有効期間開始時刻2208aと有効期間終了時刻2307で決定される期間が、性能劣化期間の少なくとも一部を含む行を絞込み、絞込みで残った全行論理ボリューム識別子格納欄2302で指定された論理ボリューム、RAIDグループ識別子格納欄2303で指定されたボリューム、ホスト側ポート格納欄2304で指定されたホスト側ポート、ストレージ側ポート格納欄2305で指定されたストレージ側ポート格納欄を検出する。検出した情報が持つ、ホスト側ポートとストレージ側ポートの各組をP1〜Pkとする。検出後、ステップ3909に進む。
ステップ3909では、ステップ3908で検出した論理ボリューム・RAIDグループ・ホスト側ポート・ストレージ側ポートの組を、該組と対応する論理ボリュームをリストの第二要素として持つリソースリストに追加する。追加後、ステップ3910に進む。
ステップ3910では、ポート間通信経路テーブル1304を走査し、性能劣化期間中に、ステップ3908で検出したホスト側ポートとストレージ側ポートの組P1〜Pkいずれかと性能の依存関係があった通信経路を検出し、リソースリストに追加する。具体的には、ポート間通信経路テーブル1304の全行から、ホスト側ポート識別子格納欄2501で指定されたホスト側ポートとストレージ側ポート識別子格納欄2502で指定されたストレージ側ポートの組が、P1〜Pkのいずれかと等しく、かつ、有効期間開始時刻2504と有効期間終了時刻2505で決定される期間が、性能劣化期間の少なくとも一部を含む行を絞込み、絞込みで残った全行の通信経路上ポート群識別子格納欄2503で指定されたポート群を検出する。検出後、ステップ3911に進む。
ステップ3911では、ステップ3910で検出した通信経路上ポート群を、該ポート群と対応するホスト側ポートとストレージ側ポートを要素に含むリソースリストに追加する。ここで、該ポート群を、ホスト側ポートとストレージ側ポートの間に追加する。追加後、ステップ3912に進む。
ステップ3912では、全てのリソースリストを返却する。
本実施形態では、I/Oパス算出サブルーチン3901が作成するリソースリストの要素順序を、I/Oパスの上流から下流に向かうようにした。しかしながら、下流から上流に向かうようにもでき、本実施例はそのような場合を制限するものではない。また、本実施例では、I/Oパスを、アプリケーションが用いるファイルシステムを第一要素とするリソースリストによって実現しているが、さまざまな実現手法がある。本実施形態は、そのような場合を制限するものではない。
図40は、SAN性能管理ソフトウェア107が持つ削除非対象リソース算出機能138の他の例を示すフローチャートである。該フローチャートは、性能劣化を起こしたアプリケーションを起点とし、RAIDグループを終点とするI/Oパス上のリソース群を検出し、検出した各リソースをI/Oパスの構成リソースとする全I/Oパスを検出し、検出したI/Oパスを上流および下流に辿ることで得たリソースを性能劣化アプリケーションと性能の依存関係にあったリソースに含める処理である。該フローチャートは、初期化処理(4001)とメインループ処理(4002〜4011)からなる。メインループ処理の内部には、2つのループ(4004〜4006)と(4007〜4009)がある。以下、該フローチャートについて説明する。
始めに、ステップ4001では、削除データ制御テーブル139の内容をクリアする。クリア後、ステップ4002に進む。
ステップ4002では、アプリケーション性能劣化期間テーブル137を参照し、該アプリケーション性能劣化期間テーブル137内の各行についてループ処理を開始する。以下では、当該行が持つ性能劣化アプリケーション識別子格納欄3301の値を性能劣化アプリケーションとし、性能劣化開始時刻3302および性能劣化終了時刻3303からなる期間を性能劣化期間とする。ループ内処理の開始ステップであるステップ4003に進む。
ステップ4003では、性能劣化を起こしたアプリケーションと性能劣化期間中に性能の依存関係のあったリソースを検出するため、性能劣化を起こしたアプリケーションを起点とするI/Oパスを検出する。I/Oパス検出のため、I/Oパス算出サブルーチン3901を呼び出す。該I/Oパス算出サブルーチンを呼び出し、該I/Oパスを検出し、ステップ4004に進む。
ステップ4004は、全てのアプリケーションについて、I/Oパスを検出するためのループ処理の開始ステップである。ステップ4004では、アプリケーション・ファイルシステム間関連テーブル1301のアプリケーション識別子格納欄から、重複を除いた全てのアプリケーション識別子を取得し、取得した全アプリケーション識別子についてループ処理を開始する。アプリケーション識別子を取得すると、ループ内の次のステップである。ステップ4005に進む。
ステップ4005では、ステップ4004でループ対象としたアプリケーションと性能劣化期間中に性能の依存関係のあったリソースを検出するため、性能劣化を起こしたアプリケーションを起点とするI/Oパスを検出する。I/Oパス検出のため、I/Oパス算出サブルーチン3901を呼び出す。該I/Oパス算出サブルーチンを呼び出し、該I/Oパスを検出し、ステップ4006に進む。
ステップ4006では、ステップ4005で検出したアプリケーション毎のI/Oパスを記憶する。記憶し、ステップ4007に進む。
ステップ4007では、ループ処理対象のアプリケーションがある限り、ステップ4004に戻る。なければ、ステップ4008に進む。
ステップ4008では、ステップ4003で得た、性能劣化を起こしたアプリケーションを起点とするI/Oパス上の全リソースについて、ループ処理を開始する。つまり、性能劣化ループ内の始めのステップであるステップ4009に移る。
ステップ4009では、ステップ4006で記憶した、アプリケーション毎のI/Oパスについて、ループ処理を開始する。ループ内の始めのステップであるステップ4010に移る。
ステップ4010では、繰り返し対象のI/Oパスがステップ4008で繰り返し対象とするリソースを含むか否かを検出する。具体的には、I/Oパスを意味するリソースリスト内に、ステップ4008で繰り返し対象とするリソースが含まれるか否かを検出する。検査し、含まれていれば、ステップ4011に進む。含まれていなければ、ステップ4013に進む。
ステップ4011では、ステップ4008で繰り返し対象とするリソースを起点とし、I/Oパスを上流および下流に辿ることでリソースを検出する。本実施例では、上流および下流の両方に辿るが、上流のみ、あるいは下流のみに辿ることもでき、本実施例は、それらの辿り方を制限するものではない。リソースを検出後、ステップ4012に進む。
ステップ4012では、検出したリソースを記憶する。記憶後、ステップ4013に進む。
ステップ4013では、繰り返し処理対象のI/Oパスがある限り、ステップ4009に戻る。なければステップ4014に進む。
ステップ4014では、繰り返し処理対象のリソースがある限り、ステップ4008に戻る。なければステップ4015に進む。
ステップ4015では、性能劣化期間・ステップ4003で検出したI/Oパス上リソースの組および、性能劣化期間・ステップ4012で検出したリソースの組を、重複を除いて削除データ制御テーブル139に追加する。追加後、ステップ4016に進む。
ステップ4016では、アプリケーション性能劣化期間テーブル137の未処理の行がある限り、ステップ4002に戻る。なければ終了する。
すなわち、ステップ4002〜4007のループで、性能劣化が生じたアプリケーション240に関連するI/Oパスを検出し、ステップ4008〜4016のループにより検出したI/Oパスの上流と下流のリソースを検出し、削除データ制御テーブル139が作成される。
図41は、メトリクス削除機能140が削除するデータの種類についての説明図である。図41は、時間軸を表わす矢印4101と、時間軸上の3つの点(現在時刻4102、通常データ保存期限4103、重要データ保存期限4104)と、現在時刻から通常データ保存期限までの期間である通常データ保存期間3603と、現在時刻4102から重要データ保存期限4103までの期間である重要データ保存期間3604と、各期間内においてメトリクス値に対する処理方法の概念を表わすブロック(4105〜4107)からなる。
ブロック4105〜4107が示す通り、メトリクス削除機能140は、通常データ保存期間3603内は全てのメトリクスを保存する(4105)。そして、通常データ保存期間3603経過後で重要データ保存期間3604内である期間は、重要データに該当するメトリクスのみ保存し、通常データは削除する(4106)。そして、重要データ保存期間3604が過ぎると、全てのメトリクスを削除する(4107)。
図42は、図41で説明したメトリクス削除機能140の削除方法の一例を示したフローチャートである。該フローチャートは、初期化処理(4201〜4204)とループ処理(4205〜4211)からなる。
まず、ステップ4201では、現在時刻4102を取得する。取得後、4202に進む。
ステップ4202では、メトリクス保存期間テーブル141より通常データ保存期間3603と重要データ保存期間3604を取得する。取得後、ステップ4203に進む。
ステップ4203では、現在時刻4102から、通常データ保存期間3603だけ過去に遡った時刻を、通常データ保存期限4103とする。演算後、ステップ4204に進む。
ステップ4204では、現在時刻4102から重要データ保存期間3604だけ過去に遡った時刻を、重要データ保存期限4104とする。演算後、ステップ4205に進む。
ステップ4205では、メトリクス保存テーブル113が持つ全行についてループ処理を開始する。ループ内処理の開始ステップであるステップ4206に進む。以下、ループ内処理(ステップ4206〜4210)では、ループ処理対象行が持つT2の値に応じて削除処理の実行を制御する。T2の値は、メトリクスを収集・保存した時刻を意味する。
ステップ4206では、ループ処理対象行のT2の値と通常データ保存期限4103とを比較する。T2の値が通常データ保存期限4103以上であった場合、すなわち、メトリクス保存時刻が通常データ保存期間3603内であった場合、ステップ4211に進む。逆に、T2の値が通常データ保存期限4103より小さかった場合、すなわち、メトリクス保存時刻が通常データ保存期間3603を過ぎていた場合、ステップ4207に進む。
ステップ4207では、ループ処理対象行のT2の値と重要データ保存期限4104とを比較する。T2の値が重要データ保存期限4104以上であった場合、すなわち、メトリクス保存時刻が重要データ保存期間3604内であった場合、ステップ4209に進む。逆に、T2の値が重要データ保存期限4104より小さかった場合、すなわち、メトリクス保存時刻が重要データ保存期間3604を過ぎていた場合、ステップ4208に進む。
ステップ4208では、メトリクス削除テーブル113から、ループ処理対象行の削除処理を実行する。削除後、ステップ4211に進む。
ステップ4209では、当該行が重要データであるか否かの判定を行う。該判定処理では、削除データ制御テーブル139を利用して、ループ対象行に対し次の2つの検査を実施する。両検査に当てはまれば、ループ対象行を重要データであるとする。
(検査1)当該行のリソース識別子が、削除データ制御テーブル139が持つ性能依存リソース識別子格納欄3403に存在する。
(検査2)当該行のT1〜T2で指定される範囲の少なくとも一部が、(検査1)で存在を確認した削除データ制御テーブル139の行が持つ性能劣化開始時刻格納欄3401〜性能劣化終了時刻格納欄3402の範囲に含まれる。
上記検査1、検査2を行った結果、ループ処理対象行を重要データと判定した場合は、ステップ4211に進む。逆に、重要データでないと判定した場合は、ステップ4208へ進む。
ステップ4211では、ループ処理対象の行がある限り、ステップ3802に戻る。
上記処理により、メトリクス保存期間テーブル141より通常データについては、第1の保存期間(72時間)が経過したものについては削除され、重要データについては第2の保存期間(10日間)が経過するまで保持される。
したがって、アプリケーション240に性能劣化が生じてから10日間以内であれば、重要データとして保存された性能劣化の起きたアプリケーション240が使用するI/Oパスと、このI/Oパスの上流及び下流のメトリクス値を参照できる。これにより、アプリケーション240の性能劣化の原因を、詳細なメトリクス値(性能情報)に基づいて追究することが可能となるのである。
一方、性能劣化に無関係なI/Oパスのメトリクス値は、通常の保存期間が経過すると自動的に削除されるため、多数のホストサーバ205〜207と多数のSANスイッチ及びストレージサブシステムからなるSAN2上の膨大な性能情報のうち必要なものだけを保存することができるので、性能情報(メトリクス値)を格納するためのストレージサブシステムの領域が増大するのを抑制できるのである。
なお、上記実施形態においては、ホストサーバ205〜207にアプリケーション監視エージェント241とホスト監視エージェント210や、SANスイッチ監視エージェント231、ストレージサブシステム監視エージェント232を備えたが、これらエージェントを介さず、SAN性能管理ソフトウェア107が直接、監視対象の装置やソフトウェアと通信し、性能情報を取得するようにしてもよい。
また、上記本実施形態ではSAN2経由で性能情報を取得しているが、ストレージサブシステム224〜226がLAN204に接続されている場合、ストレージサブシステム監視エージェント232は、LAN204経由でストレージサブシステム224〜226およびそのポート227〜229の性能情報を取得してもよい。同様に、SANスイッチ監視エージェント231も、監視対象のSANスイッチ214〜216から性能情報を取得するために、LAN204を経由して通信してもよい。また、本実施例では、SANスイッチ監視エージェント231とストレージサブシステム監視エージェント232は専用の性能情報収集サーバ230上で稼動しているが、どの計算機上で稼働してもよい。アプリケーション監視エージェントおよびホスト監視エージェントについても同様で、本実施例では、ホストサーバ205上で稼働しているが、他の計算機上で稼働し、通信を用いてアプリケーションの性能情報を取得しても良い。
なお、上記図40のステップ4011において、I/Oパスの探索を上流に辿り、性能劣化を起こしたアプリケーション240を起点とする全I/Oパス上の収集対象要素を検出し、検出した収集対象要素をI/Oパス上の装置またはソフトウェアとする全アプリケーションを検出する。そして各収集対象要素を起点として、検出した各アプリケーションのI/Oパスを上流に辿った場合の経路上の収集対象要素を、該アプリケーションと性能の依存関係のあった収集要素対象とすることができる。
また、上記図40のステップ4011において、I/Oパスの探索を下流に辿り、性能劣化を起こしたアプリケーション240を起点とする全I/Oパス上の収集対象要素を検出し、検出した該収集対象要素をI/Oパス上の装置またはソフトウェアとする全アプリケーションを検出する。収集対象要素を起点として、検出した各アプリケーションのI/Oパスを下流に辿った場合の経路上の収集対象要素を、アプリケーション240と性能の依存関係のあった収集要素対象としてもよい。
また、上記実施形態においては、所定の保存期間が経過したメトリクス値をSAN性能管理ソフトウェア107が削除する例を示したが、SAN性能管理ソフトウェア107が各エージェントに対して、削除するメトリクス値を指示するようにしても良い。
本発明の一実施形態を示すシステム構成図である。 同じく、本発明の性能管理ソフトウェアの機能ブロック図である。 図1の構成図のうち、代表的なホストサーバとSANスイッチ及びストレージサブシステムの通信状態を示す説明図である。 装置監視エージェントおよびストレージネットワーク性能管理ソフトが持つメトリクス値テーブルの構造の一例を示す図と、ホスト監視エージェントAが持つメトリクス値テーブルの内容の一例を示した図である。 ホスト監視エージェントBが持つメトリクス値テーブルの内容の一例を示した説明図である。 ストレージサブシステム監視エージェントが持つメトリクス値テーブルの内容の一例を示した説明図である。 SANスイッチ監視エージェントが持つメトリクス値テーブルの内容の一例を示した説明図である。 ストレージネットワーク性能管理ソフトが持つメトリクス値テーブルの内容の一例を示した説明図である。 グラフ形式による性能情報の表示画面の一例を示す説明図である。 アプリケーション監視エージェントにおける、リソース間関連情報記憶部のテーブル構成の一例を示す説明図である。 ホスト監視エージェントにおける、リソース間関連情報記憶部のテーブル構成の一例を示す説明図である。 SANスイッチ監視エージェントにおける、リソース間関連情報記憶部のテーブル構成の一例を示す図である。 ストレージネットワーク性能管理ソフトウェアにおける、リソース間関連情報記憶部のテーブル構成の一例を示す説明図である。 (A)はアプリケーション監視エージェントおよびストレージネットワーク性能管理ソフトが持つアプリケーション・ファイルシステム間関連テーブルの構造の一例を示す説明図、(B)はアプリケーション監視エージェントAが持つアプリケーション・ファイルシステム間関連テーブルの内容の一例を示す説明図である。 アプリケーション監視エージェントBが持つアプリケーション・ファイルシステム間関連テーブルの内容の一例を示す説明図である。 アプリケーション監視エージェントCが持つアプリケーション・ファイルシステム間関連テーブルの内容の一例を示す説明図である。 ストレージネットワーク性能管理ソフトが持つアプリケーション・ファイルシステム間関連テーブルの内容の一例を示す説明図である。 (A)はホスト監視エージェントおよびストレージネットワーク性能管理ソフトが持つファイルシステム・ボリューム間関連テーブルの構造の一例を示す説明図、(B)はホスト監視エージェントAが持つファイルシステム・ボリューム間関連テーブルの内容の一例を示す説明図である。 ホスト監視エージェントBが持つファイルシステム・ボリューム間関連テーブルの内容の一例を示す説明図である。 ストレージネットワーク性能管理ソフトが持つファイルシステム・ボリューム間関連テーブルの内容の一例を示す説明図である。 (A)はホスト監視エージェントおよびストレージネットワーク性能管理ソフトが持つボリューム・論理ボリューム・RAIDグループ・ポート間関連テーブルの構造の一例を示す図、(B)はホスト監視エージェントAが持つボリューム・論理ボリューム・RAIDグループ・ポート間関連テーブルの内容の一例を示す説明図である。 ホスト監視エージェントBが持つボリューム・論理ボリューム・RAIDグループ・ポート間関連テーブルの内容の一例を示す説明図である。 ストレージネットワーク性能管理ソフトが持つボリューム・論理ボリューム・RAIDグループ・ポート間関連テーブルの内容の一例を示す説明図である。 (A)はSANスイッチ監視エージェントおよびストレージネットワーク性能管理ソフトが持つポート間通信経路テーブルの構造の一例を示す図、(B)SANスイッチ監視エージェントが持つポート間通信経路テーブルの内容の一例を示す図である。 ストレージネットワーク性能管理ソフトが持つポート間通信経路テーブルの内容の一例を示す説明図である。 アプリケーションの目標性能を設定するための画面の一例を示す説明図である。 (A)はアプリケーションの目標性能を保存する、アプリケーション性能劣化期間決定ルールテーブルの構成の一例を示す図、(B)はアプリケーション監視エージェントAが持つアプリケーション性能劣化期間決定ルールの内容の一例を示す図である。 アプリケーション監視エージェントBが持つアプリケーション性能劣化期間決定ルールの内容の一例を示す説明図である。 アプリケーション監視エージェントCが持つアプリケーション性能劣化期間決定ルールの内容の一例を示す図である。 (A)はアプリケーション監視エージェントおよびストレージネットワーク性能管理ソフトが使用するアプリケーション性能劣化期間テーブルの構造の一例を示す説明図、(B)はアプリケーション監視エージェントAが持つアプリケーション性能劣化期間テーブルの内容の一例を示す説明図である。 アプリケーション監視エージェントBが持つアプリケーション性能劣化期間テーブルの内容の一例を示す説明図である。 アプリケーション監視エージェントCが持つアプリケーション性能劣化期間テーブルの内容の一例を示す説明図である。 ストレージネットワーク性能管理ソフトが持つアプリケーション性能劣化期間テーブルの内容の一例を示す説明図である。 ストレージネットワーク性能管理ソフトが持つ、メトリクスの削除を制御するためのテーブルの構造および内容の一例を示す説明図である。 メトリクス保存期間設定のための画面の一例を示す説明図である。 ストレージネットワーク性能管理ソフトが持つ、メトリクス保存期間を格納するためのテーブルの構造および内容の一例を示す説明図である。 アプリケーションの性能劣化期間を決定する処理の一例を示すフローチャートである。 性能劣化期間中に、性能劣化を起こしたアプリケーションと性能の依存関係があったリソースを検出し、メトリクスの削除をコントロールするためのテーブルを更新する処理を示したフローチャートの一例である。 性能劣化期間中に、性能劣化を起こしたアプリケーションを起点とするI/Oパス上リソースを検出するためのフローチャートの一例を示す図である。 図38の他の例を示し、性能劣化期間中に、性能劣化を起こしたアプリケーションと性能の依存関係があったリソースを検出し、メトリクスの削除をコントロールするためのテーブルを更新する処理を示したフローチャートの一例である。 データ保存期間毎の、保存するメトリクスの種類を表わした説明図である。 メトリクスの削除処理の一例を示すフローチャートである。
符号の説明
107 SAN性能管理ソフトウェア
205〜207 ホストサーバ
210 ホスト監視エージェント
320〜323 SANスイッチ
224〜226 ストレージサブシステム
230 性能情報収集サーバ
231 SANスイッチ監視エージェント
232 ストレージサブシステム監視エージェント
234 性能管理サーバ
240 アプリケーション
241 アプリケーション監視エージェント

Claims (15)

  1. 計算機とストレージ装置との間で入出力データを送受信するネットワーク装置を有するストレージネットワークのリソースについて性能情報を収集し、保存するストレージネットワーク性能情報の収集・保存方法であって、
    前記ストレージネットワークとストレージ装置及び計算機のリソースのうち、予め設定した収集対象要素から性能情報を収集し、保存する性能情報収集ステップと、
    前記収集対象要素間に成り立つ性能の依存関係を収集し、保存する性能依存関係収集ステップと、
    前記計算機で実行されるアプリケーションの性能劣化期間を検出し、当該性能劣化期間を保存するアプリケーション性能劣化期間検出ステップと、
    前記検出したアプリケーション性能劣化期間中に、性能劣化を起こしたアプリケーションと性能の依存関係にあった収集対象要素を検出する性能劣化時依存関係検出ステップと、
    前記性能劣化時依存関係検出ステップで検出された収集対象要素の性能情報について通常の保存期間よりも延長した第2の保存期間を設定し、前記抽出対象外の性能情報について通常の保存期間を設定するステップと、
    前記通常または第2の保存期間が過ぎた性能情報を削除する削除ステップと、
    を含むことを特徴とするストレージネットワーク性能情報の収集・保存方法。
  2. 前記性能劣化時依存関係検出ステップは、前記収集対象要素間の性能の依存関係に基づいて、前記性能劣化を起こしたアプリケーションを起点として、当該性能劣化が起きた期間中に、当該アプリケーションが性能上の負荷をかけるストレージネットワークの下流側に前記依存関係を辿った経路上の収集対象要素を、当該アプリケーションと性能の依存関係にあった収集対象要素とすることを特徴とする請求項1に記載のストレージネットワーク性能情報の収集・保存方法。
  3. 前記性能劣化時依存関係検出ステップは、前記収集対象要素間の性能の依存関係に基づいて、前記性能劣化を起こしたアプリケーションを起点として、当該性能劣化が起きた期間中に、当該アプリケーションが性能上の負荷をかけるストレージネットワークの下流側に前記依存関係を辿った経路上の収集対象要素を検出し、検出された各収集要素から見て性能上の負荷をかける上流側に前記依存関係を辿った経路上の収集要素を、当該アプリケーションと性能の依存関係にあった収集対象要素とすることを特徴とする請求項1に記載のストレージネットワーク性能情報の収集・保存方法。
  4. 前記性能劣化時依存関係検出ステップは、前記収集対象要素間の性能の依存関係に基づいて、前記性能劣化を起こしたアプリケーションを起点として、当該性能劣化が起きた期間中に、当該アプリケーションが性能上の負荷をかけるストレージネットワークの下流側に前記依存関係を辿った経路上の収集対象要素を検出し、検出された各収集要素から見て性能上の負荷をかける下流側に前記依存関係を辿った経路上の収集対象要素を、当該アプリケーションと性能の依存関係にあった収集対象要素とすることを特徴とする請求項1に記載のストレージネットワーク性能情報の収集・保存方法。
  5. 前記性能劣化時依存関係検出ステップは、前記収集対象要素間の性能の依存関係に基づいて、前記性能劣化を起こしたアプリケーションを起点として、当該性能劣化が起きた期間中に、当該アプリケーションが性能上の負荷をかけるストレージネットワークの下流側に前記依存関係を辿った経路上の収集対象要素を検出し、検出された各収集要素から見て性能上の負荷をかける下流側及び上流側に前記依存関係を辿った経路上の収集対象要素を、当該アプリケーションと性能の依存関係にあった収集対象要素とすることを特徴とする請求項1に記載のストレージネットワーク性能情報の収集・保存方法。
  6. 計算機とストレージ装置との間で入出力データを通信するネットワーク装置を有するストレージネットワークのリソースについて性能情報を収集し、保存するプログラムであって、
    前記ストレージネットワークとストレージ装置及び計算機のリソースのうち、予め設定した収集対象要素から性能情報を収集し、保存する処理と、
    前記収集対象要素間に成り立つ性能の依存関係を収集し、保存する処理と、
    前記計算機で実行されるアプリケーションの性能劣化期間を検出し、当該性能劣化期間を保存する処理と、
    前記検出したアプリケーション性能劣化期間中に、性能劣化を起こしたアプリケーションと性能の依存関係にあった収集対象要素を検出する性能劣化時依存関係検出処理と、
    前記性能劣化時依存関係検出処理で検出された収集対象要素の性能情報について通常の保存期間よりも延長した第2の保存期間を設定し、前記抽出対象外の性能情報について通常の保存期間を設定する処理と、
    前記通常または第2の保存期間が過ぎた性能情報を削除する削除処理と、
    をコンピュータに機能させることを特徴とするプログラム。
  7. 前記性能劣化時依存関係検出処理は、前記収集対象要素間の性能の依存関係に基づいて、前記性能劣化を起こしたアプリケーションを起点として、当該性能劣化が起きた期間中に、当該アプリケーションが性能上の負荷をかけるストレージネットワークの下流側に前記依存関係を辿った経路上の収集対象要素を、当該アプリケーションと性能の依存関係にあった収集対象要素とすることを特徴とする請求項6に記載のプログラム。
  8. 前記性能劣化時依存関係検出処理は、前記収集対象要素間の性能の依存関係に基づいて、前記性能劣化を起こしたアプリケーションを起点として、当該性能劣化が起きた期間中に、当該アプリケーションが性能上の負荷をかけるストレージネットワークの下流側に前記依存関係を辿った経路上の収集対象要素を検出し、検出された各収集要素から見て性能上の負荷をかける上流側に前記依存関係を辿った経路上の収集要素を、当当該アプリケーションと性能の依存関係にあった収集対象要素とすることを特徴とする請求項6に記載のプログラム。
  9. 前記性能劣化時依存関係検出処理は、前記収集対象要素間の性能の依存関係に基づいて、前記性能劣化を起こしたアプリケーションを起点として、当該性能劣化が起きた期間中に、当該アプリケーションが性能上の負荷をかけるストレージネットワークの下流側に前記依存関係を辿った経路上の収集対象要素を検出し、検出された各収集要素から見て性能上の負荷をかける下流側に前記依存関係を辿った経路上の収集対象要素を、当該アプリケーションと性能の依存関係にあった収集対象要素とすることを特徴とする請求項6に記載のプログラム。
  10. 前記性能劣化時依存関係検出処理は、前記収集対象要素間の性能の依存関係に基づいて、前記性能劣化を起こしたアプリケーションを起点として、当該性能劣化が起きた期間中に、当該アプリケーションが性能上の負荷をかけるストレージネットワークの下流側に前記依存関係を辿った経路上の収集対象要素を検出し、検出された各収集要素から見て性能上の負荷をかける下流側及び上流側に前記依存関係を辿った経路上の収集対象要素を、当該アプリケーションと性能の依存関係にあった収集対象要素とすることを特徴とする請求項6に記載のプログラム。
  11. アプリケーションを実行する計算機と、
    前記計算機とストレージ装置との間で入出力データを送受信するネットワーク装置を含むストレージネットワークと、を備えた計算機システムにおいて、
    前記計算機とストレージ装置及びストレージネットワークのリソースのうち、予め設定した収集対象から性能情報を収集し、この性能情報を予め設定した記憶領域へ格納する性能情報収集部と、
    前記収集対象要素間に成り立つ性能の依存関係を前記ストレージネットワークの構成に基づいて収集し、当該収集した性能の依存関係を保存する性能依存関係収集部と、
    前記アプリケーションの性能の劣化を検出し、当該アプリケーションの性能劣化期間を保存する劣化検出部と、
    前記アプリケーションの性能劣化期間中に、性能劣化を起こしたアプリケーションと性能の依存関係にあった収集対象要素を検出する性能劣化時依存関係検出部と、
    前記性能劣化時依存関係検出部で検出された収集対象要素の性能情報について通常の保存期間よりも延長した第2の保存期間を設定し、前記抽出対象外の性能情報について通常の保存期間を設定する保存期間設定部と、
    前記通常または第2の保存期間が過ぎた性能情報を検出し、前記記憶領域から削除する削除部と、
    を備えたことを特徴とする計算機システム。
  12. 前記性能劣化時依存関係検出部は、前記収集対象要素間の性能の依存関係に基づいて、前記性能劣化を起こしたアプリケーションを起点として、当該性能劣化が起きた期間中に、当該アプリケーションが性能上の負荷をかけるストレージネットワークの下流側に前記依存関係を辿った経路上の収集対象要素を、当該アプリケーションと性能の依存関係にあった収集対象要素とすることを特徴とする請求項11に記載の計算機システム。
  13. 前記性能劣化時依存関係検出部は、前記収集対象要素間の性能の依存関係に基づいて、前記性能劣化を起こしたアプリケーションを起点として、当該性能劣化が起きた期間中に、当該アプリケーションが性能上の負荷をかけるストレージネットワークの下流側に前記依存関係を辿った経路上の収集対象要素を検出し、検出された各収集要素から見て性能上の負荷をかける上流側に前記依存関係を辿った経路上の収集対象要素を、当該アプリケーションと性能の依存関係にあった収集対象要素とすることを特徴とする請求項11に記載の計算機システム。
  14. 前記性能劣化時依存関係検出部は、前記収集対象要素間の性能の依存関係に基づいて、前記性能劣化を起こしたアプリケーションを起点として、当該性能劣化が起きた期間中に、当該アプリケーションが性能上の負荷をかけるストレージネットワークの下流側に前記依存関係を辿った経路上の収集対象要素を検出し、検出された各収集要素から見て性能上の負荷をかける下流側に前記依存関係を辿った経路上の収集対象要素を、当該アプリケーションと性能の依存関係にあった収集対象要素とすることを特徴とする請求項11に記載の計算機システム。
  15. 前記性能劣化時依存関係検出部は、前記収集対象要素間の性能の依存関係に基づいて、前記性能劣化を起こしたアプリケーションを起点として、当該性能劣化が起きた期間中に、当該アプリケーションが性能上の負荷をかけるストレージネットワークの下流側に前記依存関係を辿った経路上の収集対象要素を検出し、検出された各収集要素から見て性能上の負荷をかける下流側及び上流側に前記依存関係を辿った経路上の収集対象要素を、当該アプリケーションと性能の依存関係にあった収集対象要素とすることを特徴とする請求項11に記載の計算機システム。
JP2004292849A 2004-10-05 2004-10-05 ストレージネットワーク性能情報の収集・保存方法及び計算機システム並びにプログラム Expired - Fee Related JP4560367B2 (ja)

Priority Applications (3)

Application Number Priority Date Filing Date Title
JP2004292849A JP4560367B2 (ja) 2004-10-05 2004-10-05 ストレージネットワーク性能情報の収集・保存方法及び計算機システム並びにプログラム
US10/998,749 US7143008B2 (en) 2004-10-05 2004-11-30 Method of collecting and storing storage network performance information, computer system, and program
US11/586,617 US7277821B2 (en) 2004-10-05 2006-10-26 Method of collecting and storing storage network performance information, computer system, and program

Applications Claiming Priority (1)

Application Number Priority Date Filing Date Title
JP2004292849A JP4560367B2 (ja) 2004-10-05 2004-10-05 ストレージネットワーク性能情報の収集・保存方法及び計算機システム並びにプログラム

Publications (2)

Publication Number Publication Date
JP2006107126A true JP2006107126A (ja) 2006-04-20
JP4560367B2 JP4560367B2 (ja) 2010-10-13

Family

ID=36181842

Family Applications (1)

Application Number Title Priority Date Filing Date
JP2004292849A Expired - Fee Related JP4560367B2 (ja) 2004-10-05 2004-10-05 ストレージネットワーク性能情報の収集・保存方法及び計算機システム並びにプログラム

Country Status (2)

Country Link
US (2) US7143008B2 (ja)
JP (1) JP4560367B2 (ja)

Cited By (13)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
JP2007323560A (ja) * 2006-06-05 2007-12-13 Hitachi Ltd 性能監視方法、計算機及び計算機システム
JP2007328396A (ja) * 2006-06-06 2007-12-20 Hitachi Ltd 記憶システム並びに管理装置及び方法
JP2008108120A (ja) * 2006-10-26 2008-05-08 Hitachi Ltd エージェントを使用して性能を監視する計算機システム及びその方法
JP2008152663A (ja) * 2006-12-19 2008-07-03 Hitachi Ltd ストレージネットワークの性能管理方法、並びに、その方法を用いた計算機システム及び管理計算機
JP2008271050A (ja) * 2007-04-18 2008-11-06 Hitachi Ltd 通信負荷取得装置および通信負荷取得方法
JP2010049573A (ja) * 2008-08-22 2010-03-04 Hitachi Ltd ストレージ管理装置、ストレージ管理方法およびストレージ管理プログラム
JP2010049613A (ja) * 2008-08-25 2010-03-04 Nec Corp ストレージ装置、ストレージ性能管理方法及びストレージ性能管理プログラム
JP2010515121A (ja) * 2006-12-21 2010-05-06 アコリ ネットワークス,インコーポレイテッド アプリケーションシステムのストレージリソースを識別する方法およびシステム
JP2010205159A (ja) * 2009-03-05 2010-09-16 Hitachi Ltd 情報処理装置、及びストレージシステムから取得した構成情報の管理方法
JP2011090639A (ja) * 2009-10-26 2011-05-06 Hitachi Ltd 情報処理システム、及びストレージ監視サーバの管理方法
JP2013542476A (ja) * 2010-08-20 2013-11-21 インターナショナル・ビジネス・マシーンズ・コーポレーション ファブリックに対する情報を集めるためにエージェントの等価サブセットを定める方法、およびそのシステム。
WO2015145671A1 (ja) * 2014-03-27 2015-10-01 株式会社日立製作所 ストレージ管理システム
US9418088B1 (en) 2015-12-02 2016-08-16 International Business Machines Corporation Identification of storage system elements causing performance degradation

Families Citing this family (41)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US7519504B2 (en) * 2004-03-31 2009-04-14 Emc Corporation Method and apparatus for representing, managing and problem reporting in surveillance networks
US20050278704A1 (en) * 2004-06-10 2005-12-15 Xiotech Corporation Method, apparatus, and program storage device for detecting failures in data flow in high-availability storage systems
US8108510B2 (en) * 2005-01-28 2012-01-31 Jds Uniphase Corporation Method for implementing TopN measurements in operations support systems
JP4920898B2 (ja) * 2005-03-24 2012-04-18 株式会社日立製作所 計算機システム、データ管理方法およびプログラム
US20060271579A1 (en) * 2005-05-10 2006-11-30 Arun Batish Storage usage analysis
JP4626852B2 (ja) * 2005-07-11 2011-02-09 日本電気株式会社 通信網の障害検出システム、通信網の障害検出方法及び障害検出プログラム
JP4686305B2 (ja) * 2005-08-26 2011-05-25 株式会社日立製作所 ストレージ管理システムおよびその方法
US7546312B1 (en) * 2005-09-23 2009-06-09 Emc Corporation System and methods for modeling a report query database
JP4584853B2 (ja) * 2006-03-17 2010-11-24 富士通株式会社 被疑箇所特定装置および処理方法
US20070282837A1 (en) * 2006-05-31 2007-12-06 International Business Machines Corporation Measuring the Performance of Database Stored Procedures in a Multi-Tasking Execution Environment
US8386732B1 (en) * 2006-06-28 2013-02-26 Emc Corporation Methods and apparatus for storing collected network management data
US7908593B2 (en) * 2007-01-04 2011-03-15 International Business Machines Corporation Technique for evaluating software performance online to support online tuning
US20090265451A1 (en) * 2008-04-17 2009-10-22 E.S.I. Software Ltd. Assisted application definition
US8572226B2 (en) * 2008-12-17 2013-10-29 Sap Ag Enhancing network details using network monitoring scripts
GB2473194A (en) * 2009-09-02 2011-03-09 1E Ltd Monitoring the performance of a computer based on the value of a net useful activity metric
US20110179303A1 (en) * 2010-01-15 2011-07-21 Microsoft Corporation Persistent application activation and timer notifications
US8671265B2 (en) 2010-03-05 2014-03-11 Solidfire, Inc. Distributed data storage system providing de-duplication of data using block identifiers
US8868676B2 (en) * 2010-10-11 2014-10-21 International Business Machines Corporation Methods and systems for verifying server-storage device connectivity
JP5546686B2 (ja) 2011-06-28 2014-07-09 株式会社日立製作所 監視システム、及び監視方法
KR101596606B1 (ko) 2011-08-19 2016-03-07 가부시끼가이샤 도시바 정보 프로세싱 장치, 정보 프로세싱 장치를 제어하는 방법, 제어 도구를 저장하는 비일시적 기록 매체, 호스트 디바이스, 성능 평가 도구를 저장하는 비일시적 기록 매체, 및 외부 메모리 디바이스를 위한 성능 평가 방법
US9838269B2 (en) 2011-12-27 2017-12-05 Netapp, Inc. Proportional quality of service based on client usage and system metrics
US9054992B2 (en) 2011-12-27 2015-06-09 Solidfire, Inc. Quality of service policy sets
US8751757B1 (en) * 2011-12-30 2014-06-10 Emc Corporation Acquisition and kernel memory storage of I/O metrics
GB2502571A (en) * 2012-05-31 2013-12-04 Ibm Modifying the lifespan of metrics in response to detecting a fault
US9432270B2 (en) * 2013-07-30 2016-08-30 Draios Inc. Performance and security management of applications deployed in hosted computing environments
US9246773B2 (en) * 2013-07-30 2016-01-26 Draios Inc. System, method, and graphical user interface for application topology mapping in hosted computing environments
US10489266B2 (en) * 2013-12-20 2019-11-26 Micro Focus Llc Generating a visualization of a metric at one or multiple levels of execution of a database workload
US20150244795A1 (en) 2014-02-21 2015-08-27 Solidfire, Inc. Data syncing in a distributed system
US20160077945A1 (en) * 2014-09-11 2016-03-17 Netapp, Inc. Storage system statistical data storage and analysis
US10133511B2 (en) 2014-09-12 2018-11-20 Netapp, Inc Optimized segment cleaning technique
US9836229B2 (en) 2014-11-18 2017-12-05 Netapp, Inc. N-way merge technique for updating volume metadata in a storage I/O stack
JP6320563B2 (ja) * 2014-11-28 2018-05-09 三菱電機株式会社 通信機器、通信アダプタ、通信システム、通信パラメータ応答方法及びプログラム
US10496277B1 (en) * 2015-12-30 2019-12-03 EMC IP Holding Company LLC Method, apparatus and computer program product for storing data storage metrics
US10929022B2 (en) 2016-04-25 2021-02-23 Netapp. Inc. Space savings reporting for storage system supporting snapshot and clones
US10642763B2 (en) 2016-09-20 2020-05-05 Netapp, Inc. Quality of service policy sets
KR102474596B1 (ko) 2017-12-06 2022-12-05 삼성전자주식회사 반도체 장치
US10446254B1 (en) * 2018-05-03 2019-10-15 Western Digital Technologies, Inc. Method for maximizing power efficiency in memory interface block
JP6878369B2 (ja) * 2018-09-03 2021-05-26 株式会社日立製作所 ボリューム配置管理装置、ボリューム配置管理方法、及びボリューム配置管理プログラム
US11226880B2 (en) 2018-12-07 2022-01-18 International Business Machines Corporation Communication of diagnostic parameters of a data mirroring configuration from a storage controller to a host
US11157375B2 (en) * 2018-12-07 2021-10-26 International Business Machines Corporation Generation of host requests to a storage controller for read diagnostic parameters for a data mirroring configuration
US11797217B2 (en) * 2020-01-06 2023-10-24 Kioxia Corporation Systems and methods for collecting storage device statistics

Citations (2)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
JP2003273951A (ja) * 2002-03-15 2003-09-26 Hitachi Ltd 情報処理装置および通信路選択方法
JP2003316522A (ja) * 2002-04-26 2003-11-07 Hitachi Ltd 計算機システムおよび計算機システムの制御方法

Family Cites Families (3)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US5231593A (en) * 1991-01-11 1993-07-27 Hewlett-Packard Company Maintaining historical lan traffic statistics
JP4391265B2 (ja) * 2004-02-26 2009-12-24 株式会社日立製作所 ストレージサブシステムおよび性能チューニング方法
JP2005266933A (ja) * 2004-03-16 2005-09-29 Fujitsu Ltd ストレージ管理システム及びストレージ管理方法

Patent Citations (2)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
JP2003273951A (ja) * 2002-03-15 2003-09-26 Hitachi Ltd 情報処理装置および通信路選択方法
JP2003316522A (ja) * 2002-04-26 2003-11-07 Hitachi Ltd 計算機システムおよび計算機システムの制御方法

Cited By (21)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
JP2007323560A (ja) * 2006-06-05 2007-12-13 Hitachi Ltd 性能監視方法、計算機及び計算機システム
US7647450B2 (en) 2006-06-05 2010-01-12 Hitachi, Ltd. Method, computer and computer system for monitoring performance
JP2007328396A (ja) * 2006-06-06 2007-12-20 Hitachi Ltd 記憶システム並びに管理装置及び方法
JP2008108120A (ja) * 2006-10-26 2008-05-08 Hitachi Ltd エージェントを使用して性能を監視する計算機システム及びその方法
US8255518B2 (en) 2006-10-26 2012-08-28 Hitachi, Ltd. Computer system and method for monitoring performance of the computer system
JP2008152663A (ja) * 2006-12-19 2008-07-03 Hitachi Ltd ストレージネットワークの性能管理方法、並びに、その方法を用いた計算機システム及び管理計算機
US8489739B2 (en) 2006-12-19 2013-07-16 Hitachi, Ltd. Method, computer system and management computer for managing performance of a storage network
JP2010515121A (ja) * 2006-12-21 2010-05-06 アコリ ネットワークス,インコーポレイテッド アプリケーションシステムのストレージリソースを識別する方法およびシステム
JP2008271050A (ja) * 2007-04-18 2008-11-06 Hitachi Ltd 通信負荷取得装置および通信負荷取得方法
JP2010049573A (ja) * 2008-08-22 2010-03-04 Hitachi Ltd ストレージ管理装置、ストレージ管理方法およびストレージ管理プログラム
JP2010049613A (ja) * 2008-08-25 2010-03-04 Nec Corp ストレージ装置、ストレージ性能管理方法及びストレージ性能管理プログラム
JP2010205159A (ja) * 2009-03-05 2010-09-16 Hitachi Ltd 情報処理装置、及びストレージシステムから取得した構成情報の管理方法
US8135882B2 (en) 2009-03-05 2012-03-13 Hitachi, Ltd. Apparatus and managing method using a preset policy based on an invalidated I/O path by using configuration information acquired from storage system
US8386669B2 (en) 2009-03-05 2013-02-26 Hitachi, Ltd. Apparatus and managing method using a preset policy based on an invalidated I/O path by using configuration information acquired from storage system
US8612645B2 (en) 2009-03-05 2013-12-17 Hitachi, Ltd. Apparatus and managing method using a preset policy based on an invalidated I/O path by using configuration information acquired from storage system
JP2011090639A (ja) * 2009-10-26 2011-05-06 Hitachi Ltd 情報処理システム、及びストレージ監視サーバの管理方法
US8843613B2 (en) 2009-10-26 2014-09-23 Hitachi, Ltd. Information processing system, and management method for storage monitoring server
JP2013542476A (ja) * 2010-08-20 2013-11-21 インターナショナル・ビジネス・マシーンズ・コーポレーション ファブリックに対する情報を集めるためにエージェントの等価サブセットを定める方法、およびそのシステム。
WO2015145671A1 (ja) * 2014-03-27 2015-10-01 株式会社日立製作所 ストレージ管理システム
US9418088B1 (en) 2015-12-02 2016-08-16 International Business Machines Corporation Identification of storage system elements causing performance degradation
US10223190B2 (en) 2015-12-02 2019-03-05 International Business Machines Corporation Identification of storage system elements causing performance degradation

Also Published As

Publication number Publication date
US7277821B2 (en) 2007-10-02
US20060085166A1 (en) 2006-04-20
US7143008B2 (en) 2006-11-28
JP4560367B2 (ja) 2010-10-13
US20070043537A1 (en) 2007-02-22

Similar Documents

Publication Publication Date Title
JP4560367B2 (ja) ストレージネットワーク性能情報の収集・保存方法及び計算機システム並びにプログラム
JP4782100B2 (ja) ストレージシステムの性能を監視する管理計算機、その管理計算機を含む計算機システム、及び、その制御方法
US9870330B2 (en) Methods and systems for filtering collected QOS data for predicting an expected range for future QOS data
JP4516306B2 (ja) ストレージネットワークの性能情報を収集する方法
US10291463B2 (en) Large-scale distributed correlation
US8255518B2 (en) Computer system and method for monitoring performance of the computer system
US11093349B2 (en) System and method for reactive log spooling
US20160378389A1 (en) Methods and systems for trouble shooting performance issues in networked storage systems
US20150081871A1 (en) Actively responding to data storage traffic
US9146793B2 (en) Management system and management method
US20030188085A1 (en) Clustered storage system and its control method
US10069753B2 (en) Relationship-based resource-contention analysis system and method
US20160378583A1 (en) Management computer and method for evaluating performance threshold value
EP2674865A1 (en) MANAGEMENT COMPUTER AND METHOD FOR ROOT CAUSE ANALYSiS
US6269410B1 (en) Method and apparatus for using system traces to characterize workloads in a data storage system
US10216432B1 (en) Managing backup utilizing rules specifying threshold values of backup configuration parameters and alerts written to a log
US10756947B2 (en) Batch logging in a distributed memory
JP5222876B2 (ja) 計算機システムにおけるシステム管理方法、及び管理システム
US20150205696A1 (en) Logging handler
US20030014507A1 (en) Method and system for providing performance analysis for clusters
US7962692B2 (en) Method and system for managing performance data
Dai et al. A performance study of lustre file system checker: Bottlenecks and potentials
DE112021006772T5 (de) Speicherarrayfehler-minderung
US9817864B1 (en) Flexible pivot querying of monitoring data with zero setup
Sandeep et al. CLUEBOX: A Performance Log Analyzer for Automated Troubleshooting.

Legal Events

Date Code Title Description
A621 Written request for application examination

Free format text: JAPANESE INTERMEDIATE CODE: A621

Effective date: 20070709

A131 Notification of reasons for refusal

Free format text: JAPANESE INTERMEDIATE CODE: A131

Effective date: 20100309

A521 Request for written amendment filed

Free format text: JAPANESE INTERMEDIATE CODE: A523

Effective date: 20100414

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

A01 Written decision to grant a patent or to grant a registration (utility model)

Free format text: JAPANESE INTERMEDIATE CODE: A01

A61 First payment of annual fees (during grant procedure)

Free format text: JAPANESE INTERMEDIATE CODE: A61

Effective date: 20100726

R150 Certificate of patent or registration of utility model

Free format text: JAPANESE INTERMEDIATE CODE: R150

FPAY Renewal fee payment (event date is renewal date of database)

Free format text: PAYMENT UNTIL: 20130730

Year of fee payment: 3

LAPS Cancellation because of no payment of annual fees