本発明の実施形態について、図面を参照して説明する。なお、以下に説明する実施形態は特許請求の範囲にかかる発明を限定するものではなく、また実施形態の中で説明されている諸要素及びその組み合わせの全てが発明の解決手段に必須であるとは限らない。これらの図面において、複数の図を通じて同一の符号は同一の構成要素を示している。
なお、以後の説明では「aaaテーブル」、「aaaリスト」等の表現にて本発明の情報を説明するが、これら情報はテーブル、リスト、DB、キュー等のデータ構造以外で表現されていてもよい。そのため、データ構造に依存しないことを示すために「aaaテーブル」、「aaaリスト」等について「aaa情報」と呼ぶことがある。
また、各情報の内容を説明する際に、「識別情報」、「識別子」、「名」、「名前」、「ID」という表現を用いるが、これらについては互いに置換が可能である。
以後の説明では「プログラム」を主語として説明を行う場合があるが、プログラムは、プロセッサによって実行されることで定められた処理をメモリ及び通信ポート(通信I/F)を用いながら行うため、プロセッサを主語とした説明としてもよい。また、プログラムを主語として開示された処理は管理計算機等の計算機が行う処理としてもよい。また、プログラムの一部または全ては専用ハードウェアによって実現されてもよい。また、各種プログラムはプログラム配布サーバや、計算機が読み取り可能な記憶メディアによって各計算機にインストールされてもよい。
以後、計算機システムを管理し、本願発明の表示用情報を表示する一つ以上の計算機の集合を管理システムと呼ぶことがある。管理計算機が表示用情報を表示する場合は管理計算機が管理システムである、また、管理計算機と表示用計算機の組み合わせも管理システムである。また、管理処理の高速化や高信頼化のために複数の計算機で管理計算機と同等の処理を実現してもよく、この場合は当該複数の計算機(表示を表示用計算機が行う場合は表示用計算機も含め)が管理システムである。
図1は、課題の一例を説明する図である。
計算機システム100は、ストレージのインフラを提供するIaaSのシステムである。テナント管理者は、ストレージのインフラを利用する者であり、計算機システム100が提供するリソース(図1の例では、ストレージシステム2のボリュームを利用可能に設定された仮想マシン(VM)6)を利用してサーバプログラムを実行し、ユーザに対して所定の業務サービスを提供する。テナント管理者は、ストレージのインフラ側の構成を知らないため、性能障害が発生した場合に、その原因がストレージのインフラの利用側、すなわち業務サービス側、例えばテナント管理者が実行するサーバプログラムにあるのか、ストレージのインフラの提供側、すなわちリソースの提供側、例えばストレージシステム2等にあるのかを特定することができない。テナント管理者は、通常、障害の原因をDC(データセンター)管理者に問い合わせることになる。
DC管理者は、計算機システム100の管理者である。DC管理者は、ストレージシステム2の利用率を向上させ、特定のストレージシステム2に負荷が集中した場合には、負荷分散を行う責任がある。また、DC管理者は、テナント管理者からの性能障害に関する問い合わせを受ける前に、負荷が集中しているストレージシステム2を特定して対策することで、性能障害が顕在化するのを防ぎたいと考えている。しかし、DC管理者は、テナント管理者の管理領域側の構成、例えば、仮想マシン6上でどのようなサーバプログラムが稼働しているか等を知らず、テナント管理者がどの程度の性能を必要としているのかを知らない。また、DC管理者は、テナント管理者が利用している仮想マシン6やその仮想マシン6を利用して実行しているサーバプログラムから必要な情報を取得することができず、その仮想マシン6等の状態を直接監視することができない。そのため、DC管理者が、計算機システム100内で性能障害が発生しているか否かを判定すること、性能障害が発生した場合にその原因が業務サービス側にあるのか、リソースの提供側にあるのかを特定することは困難である。なお、H/W(ハードウェア)管理者は、ストレージシステム2等のハードウェアの管理の担当者である。
以下、このような課題を解決する実施形態について説明する。
図2は、実施形態に係る計算機システムの一例の構成図である。
計算機システム100は、管理計算機1と、1以上のストレージシステム2(2A、2B、2C等)と、1以上のホスト計算機3(3A、3B等)と、管理端末7と、SAN(Storage Area Network)40と、LAN(Local Area Network)50とを有する。SAN40は、FC(Fibre Channel)の接続方式を採用し、1以上のFC接続装置4を含む。LAN50は、1以上のLAN接続装置5を含む。ストレージシステム2及びホスト計算機3は、SAN40を介して相互に接続される。また、管理計算機1、管理端末7、ストレージシステム2及びホスト計算機3は、LAN50を介して相互に接続される。なお、SAN40は、iSCSI(Internet Small Computer System Interface)の接続方式を採用してもよい。
図3Aは、実施形態に係る管理計算機の一例の構成図である。
管理計算機1は、計算機システム100の管理を行う計算機である。管理計算機1は、プロセッサ11と、プログラムメモリ12と、キャッシュメモリ13と、1以上の不揮発記憶デバイス14と、入力デバイス15と、画像出力デバイス16と、管理用通信I/F(インターフェース)(以下、単に「管理I/F」という)17と、内部バス18とを有する。プロセッサ11、プログラムメモリ12、キャッシュメモリ13、不揮発記憶デバイス14、入力デバイス15、画像出力デバイス16及び管理I/F17は、内部バス18を介して相互に接続される。プロセッサ11は、不揮発記憶デバイス14からプログラムメモリ12にロードされた各種プログラムを実行する。不揮発記憶デバイス14は、メモリであってもよいし、ハードディスクドライブ(HDD)等の二次記憶装置であってもよいし、メモリ及び二次記憶装置の組み合わせであってもよい。不揮発記憶デバイス14は、プロセッサ11によって実行されるプログラムや、プロセッサ11に利用される各種情報を記憶する。管理I/F17は、LAN50に接続するためのインターフェースデバイスである。入力デバイス15は、DC管理者が管理計算機1に情報を入力するためのデバイスであり、例えば、キーボード、マウス等である。画像出力デバイス16は、管理計算機1が実行した処理の結果等を出力するためのデバイスであり、例えば、ディスプレイ等である。なお、管理計算機1は、入力デバイス15及び画像出力デバイス16の代わりに入出力I/Fを有し、入出力I/Fを介して接続された表示用計算機が、入力デバイス15及び画像出力デバイス16の機能を実現してもよい。
図3Bは、実施形態に係る管理端末の一例の構成図である。
管理端末7は、管理計算機1にアクセスするために利用する計算機である。管理端末7は、プロセッサ71と、プログラムメモリ72と、キャッシュメモリ73と、1以上の不揮発記憶デバイス74と、入力デバイス75と、画像出力デバイス76と、管理I/F77と、内部バス78とを有する。プロセッサ71、プログラムメモリ72、キャッシュメモリ73、不揮発記憶デバイス74、入力デバイス75、画像出力デバイス76及び管理I/F77は、内部バス78を介して相互に接続される。プロセッサ71は、不揮発記憶デバイス74からプログラムメモリ72にロードされた各種プログラムを実行する。不揮発記憶デバイス74は、メモリであってもよいし、ハードディスクドライブ(HDD)等の二次記憶装置であってもよいし、メモリ及び二次記憶装置の組み合わせであってもよい。不揮発記憶デバイス74は、プロセッサ71によって実行されるプログラムや、プロセッサ71に利用される各種情報を記憶する。管理I/F77は、LAN50に接続するためのインターフェースデバイスである。入力デバイス75は、テナント管理者が管理端末7に情報を入力するためのデバイスであり、例えば、キーボード、マウス等である。画像出力デバイス76は、管理端末7が実行した処理の結果等を出力するためのデバイスであり、例えば、ディスプレイ等である。
図4Aは、実施形態に係る管理計算機の不揮発記憶デバイスの内部構成の一例を示す図である。
管理計算機1の不揮発記憶デバイス14は、セルフサービスポータルプログラム1401と、デプロイ処理プログラム1402と、性能情報収集プログラム1403と、性能障害箇所推定プログラム1404と、推定障害箇所通知プログラム1405とを記憶する。
セルフサービスポータルプログラム1401は、計算機システム100が提供可能なリソースの内容を示すカタログデータをテナント管理者に提示し、テナント管理者が利用するリソースの選択をテナント管理者から受け付ける処理を行うプログラムである。ここで、計算機システム100が提供可能なリソースとは、例えば、ストレージシステム2のボリューム、ストレージシステム2のボリュームを利用可能に設定されたサーバマシン等であり、本実施形態では、ストレージシステム2のボリュームを利用可能に設定されたサーバマシンである。また、サーバマシン(以下、単に「マシン」ということがある)とは、ホスト計算機3が物理サーバとして機能する場合は、ホスト計算機3それ自体である物理マシンを意味し、ホスト計算機3が仮想サーバとして機能する場合は、ホスト計算機3上で稼働する仮想マシン6を意味する。デプロイ処理プログラム1402は、テナント管理者が選択したサーバマシンをデプロイする処理(以下「デプロイ処理」という)を行うプログラムである。性能情報収集プログラム1403は、サーバマシンについて測定された性能測定値を収集する処理を行うプログラムである。性能障害箇所推定プログラム1404は、収集した性能測定値に基づいて性能障害の有無を判定し、性能障害が発生していると判定した場合にその性能障害の原因箇所を推定する処理(性能障害箇所推定処理)を行うプログラムである。推定障害箇所通知プログラム1405は、性能障害箇所推定処理の結果に基づいて、性能障害の原因箇所の管理者に性能障害の発生を通知する処理を行うプログラムである。
図4Bは、実施形態に係る管理端末の不揮発記憶デバイスの内部構成の一例を示す図である。管理端末7の不揮発記憶デバイス74はセルフサービスポータルアクセスプログラム7401を記憶する。
セルフサービスポータルアクセスプログラム7401は、管理計算機1のセルフサービスポータルプログラム1401が提供するセルフサービスポータルにアクセスするためのプログラムである。テナント管理者は、管理端末7を使用して、管理計算機1にアクセスして、サービステンプレートリスト1407を取得及び閲覧し、そこからテンプレートを選択することで、サーバマシンのデプロイ指示を実施する。
また、管理計算機1の不揮発記憶デバイス14は、サービステンプレート1406と、サービステンプレートリスト1407と、マシン管理テーブル1408と、マシングループ管理テーブル1409と、マシン性能管理テーブル1410と、サーバ管理テーブル1411と、ストレージ管理テーブル1412とを記憶する。サービステンプレート1406は、テナント管理者に提供可能な複数のリソースのそれぞれについて、少なくとも当該リソースの用途を示すデータを含むデータ(カタログ元データ)である。不揮発記憶デバイス14に格納された各種情報1406〜1412については、後述する。
図5は、実施形態に係るストレージシステムの一例の構成図である。
ストレージシステム2は、ホスト計算機3等にボリュームを提供する装置である。ストレージシステム2は、プロセッサ21と、プログラムメモリ22と、キャッシュメモリ23と、複数の不揮発記憶デバイス24と、入力デバイス25と、画像出力デバイス26と、管理I/F(管理用通信I/F)27と、1以上のデータI/O(入出力)用通信I/F(以下、単に「データI/F」という)28と、内部バス29とを有する。プロセッサ21、プログラムメモリ22、キャッシュメモリ23、不揮発記憶デバイス24、入力デバイス25、画像出力デバイス26、管理I/F27及びデータI/F28は、内部バス29を介して相互に接続される。プロセッサ21は、不揮発記憶デバイス24からプログラムメモリ22にロードされた各種プログラムを実行する。不揮発記憶デバイス24は、HDD(Hard Disk Drive)、ソリッドステート記憶媒体、又は光記憶媒体のいずれであってもよく、また、他の種類の記憶媒体であってもよい。本実施形態に係るストレージシステム2は、複数種類の不揮発記憶デバイス24、例えば、SSD(Solid State Drive)メディア、SAS(Serial Attached SCSI)メディア、SATA(Serial ATA)メディア等を含む。ストレージシステム2は、不揮発記憶デバイス24の記憶領域に基づいて生成したボリュームを、ホスト計算機3等に提供する。管理I/F27は、LAN50に接続するためのインターフェースデバイスであり、主に管理用データ(例えば、性能情報等)の入出力を行う際に利用される。データI/F28は、SAN40に接続するためのインターフェースデバイスであり、主にユーザデータ(例えば、ストレージシステム2のボリュームに書き込まれるデータ、ストレージシステム2のボリュームから読み出されるデータ等)の入出力を行う際に利用される。
図6は、実施形態に係るストレージシステムのボリューム構成の一例を示す図である。
本実施形態において、ストレージシステム2が提供するボリュームは、シンプロビジョニングボリューム(仮想的な論理ボリューム)242である。性能(アクセス性能)の異なる不揮発記憶デバイス群(例えばRAIDグループ)に基づく複数のボリューム244でシンプロビジョニングプール243が構成されている。以下、プール243の要素としてのボリューム244をプールボリューム244と言う。プールボリューム244が複数のページ2431に分割されている。プロセッサ21(例えば後述のデータI/Oプログラム2411)は、ホスト計算機3からライト要求を受け、そのライト要求に従うライト先(シンプロビジョニングボリューム242におけるライト先)に、プール243からページ2431を割り当て、割り当てたページ2431に、ライト要求に従うデータを書き込む。アクセス性能の異なる複数のボリューム244として、SSDボリューム(SSD群に基づく論理ボリューム)244A、SASボリューム(SAS−HDD群に基づく論理ボリューム)244B、SATAボリューム(SATA−HDD群に基づく論理ボリューム)244Cがある。なお、以下の説明において、単に「ボリューム」という場合は、シンプロビジョニングボリューム242を意味することがある。
また、プロセッサ21(例えば後述のプール管理プログラム2412)は、ボリューム242における各領域(仮想ページ)のアクセス状況(仮想ページに割り当てられているページ(実ページ)2431のアクセス状況)に基づき、或るページ2431から別のページ2431にデータを移動し、別のページ2431を、或るページ2431に代えて、或るページ2431の割当て先の仮想ページに割り当てる。例えば、ページ2431の基になっている不揮発記憶デバイスの性能(例えば許容アクセス頻度範囲)が、そのページ2431のアクセス状況(例えばアクセス頻度)に相応しくない場合に(例えばそのアクセス頻度が許容アクセス頻度外である場合に)、そのページ2431内のデータが、そのアクセス状況に相応しい性能の不揮発記憶デバイスに基づいているページに移動される。
図7は、実施形態に係るストレージシステムの不揮発記憶デバイスの内部構成の一例を示す図である。
ストレージシステム2の不揮発記憶デバイス24の記憶領域は、ストレージ管理情報格納部241と、ボリューム242とに割当てられる。ストレージ管理情報格納部241は、データI/Oプログラム2411と、プール管理プログラム2412と、ボリューム管理プログラム2413と、運用管理プログラム2414と、オペレーティングシステム2415と、性能監視プログラム2416と、ボリューム性能情報格納テーブル2417とを記憶する。
データI/Oプログラム2411は、ボリューム242に対するユーザデータの入出力の制御を行うプログラムである。プール管理プログラム2412は、ボリューム242に割当てられる記憶領域のプール(本実施形態では、シンプロビジョニングプール243)の管理を行うプログラムである。ボリューム管理プログラム2413は、ボリューム242の管理を行うプログラムである。運用管理プログラム2414は、ストレージシステム2全体の運用管理を行うプログラムである。オペレーティングシステム2415は、他のプログラム、すなわち、データI/Oプログラム2411、プール管理プログラム2412、ボリューム管理プログラム2413、運用管理プログラム2414及び性能監視プログラム2416をストレージシステム2上で動作させるための基本プログラムである。性能監視プログラム2416は、ストレージシステム2内の性能、例えば、ボリューム242に対するI/Oの性能の監視を行うプログラムである。ボリューム性能情報格納テーブル2417については、後述する。
ボリューム242には、管理計算機1が仮想マシン6をデプロイする際に利用するイメージデータである仮想マシンデータ61が記憶される。仮想マシンデータ61は、オペレーティングシステム62と、アプリケーション63と、データ64とを含む。
図8は、実施形態に係るホスト計算機の一例の構成図である。
ホスト計算機3は、サーバプログラム等を実行し、ユーザに対して通信ネットワークを介した所定のネットワークサービス、例えば、Webサービス、アプリケーションサービス、データベース(DB)の提供サービス(以下「DBサービス」という)等を提供するサーバとして機能する計算機である。ホスト計算機3は、物理サーバとして機能することもできるし、仮想マシンを稼働させることで仮想サーバとして機能することもできる。以下、ホスト計算機3を「サーバ」ということがある。ホスト計算機3は、プロセッサ31と、プログラムメモリ32と、キャッシュメモリ33と、1以上の不揮発記憶デバイス34と、入力デバイス35と、画像出力デバイス36と、管理I/F(管理用通信I/F)37と、1以上のデータI/F(データI/O用通信I/F)38と、内部バス39とを有する。プロセッサ31、プログラムメモリ32、キャッシュメモリ33、不揮発記憶デバイス34、入力デバイス35、画像出力デバイス36、管理I/F37及びデータI/F38は、内部バス39を介して相互に接続される。プロセッサ31は、不揮発記憶デバイス34からプログラムメモリ32にロードされた各種プログラムを実行する。不揮発記憶デバイス34は、メモリであってもよいし、ハードディスクドライブ(HDD)等の二次記憶装置であってもよいし、メモリ及び二次記憶装置の組み合わせであってもよい。管理I/F37は、LAN50に接続するためのインターフェースデバイスであり、主に管理用データの入出力を行う際に利用される。データI/F38は、SAN40に接続するためのインターフェースデバイスであり、主にユーザデータの入出力を行う際に利用される。
図9は、実施形態に係るホスト計算機の不揮発記憶デバイスの内部構成の第1の例を示す図である。
同図は、ホスト計算機3が仮想サーバとして機能する場合における不揮発記憶デバイス34の内部構成を示している。ホスト計算機3の不揮発記憶デバイス34は、性能監視プログラム342を含むハイパーバイザ341と、仮想マシン性能情報格納テーブル343とを記憶する。ハイパーバイザ341は、仮想マシン6を稼働させるためのプログラムである。ハイパーバイザ341上には、1以上の仮想マシン6が作成される。各仮想マシン6は、サーバプログラム等を実行し、ユーザに対して所定のネットワークサービスを提供する。仮想マシン性能情報格納テーブル343については、後述する。
図10は、実施形態に係るホスト計算機の不揮発記憶デバイスの内部構成の第2の例を示す図である。
同図は、ホスト計算機3が物理サーバとして機能する場合における不揮発記憶デバイス34の内部構成を示している。ホスト計算機3の不揮発記憶デバイス34は、サーバプログラムに相当するアプリケーション344と、アプリケーション344を動作させるための基本プログラムであるオペレーティングシステム345とを記憶する。
図11は、実施形態に係るFC接続装置の一例の構成図である。
FC接続装置4は、例えば、FCスイッチである。FC接続装置4は、プロセッサ41と、プログラムメモリ42と、キャッシュメモリ43と、1以上の不揮発記憶デバイス44と、管理I/F(管理用通信I/F)45と、1以上のデータI/F(データI/O用通信I/F)46と、各データI/F46に接続されるリンクランプ47と、内部バス48とを有する。プロセッサ41、プログラムメモリ42、キャッシュメモリ43、不揮発記憶デバイス44、管理I/F45及びデータI/F46は、内部バス48を介して相互に接続される。プロセッサ41は、不揮発記憶デバイス44からプログラムメモリ42にロードされた各種プログラムを実行する。管理I/F45は、LAN50に接続するためのインターフェースデバイスであり、主に管理用データの入出力を行う際に利用される。データI/F46は、SAN40内の通信線を接続するためのインターフェースデバイスであり、主にユーザデータの入出力を行う際に利用される。
図12は、実施形態に係るFC接続装置の不揮発記憶デバイスの内部構成の一例を示す図である。
FC接続装置4の不揮発記憶デバイス44は、データI/Oプログラム441と、管理プログラム442と、オペレーティングシステム443と、性能監視プログラム444と、Disk I/O性能情報格納テーブル445と、ポート接続管理テーブル446とを記憶する。
データI/Oプログラム441は、FC接続装置4に対するユーザデータの入出力の制御を行うプログラムである。管理プログラム442は、FC接続装置4の管理を行うプログラムである。オペレーティングシステム443は、他のプログラム、すなわち、データI/Oプログラム441、管理プログラム442及び性能監視プログラム444をFC接続装置4上で動作させるための基本プログラムである。性能監視プログラム444は、サーバからのボリューム242に対するI/Oの性能の監視を行うプログラムである。Disk I/O性能情報格納テーブル445及びポート接続管理テーブル446については、後述する。
図13は、実施形態に係るLAN接続装置の一例の構成図である。
LAN接続装置5は、例えば、IPスイッチ、ルータである。LAN接続装置5は、プロセッサ51と、プログラムメモリ52と、キャッシュメモリ53と、1以上の不揮発記憶デバイス54と、管理I/F(管理用通信I/F)55と、1以上のデータI/F(データI/O用通信I/F)56と、1以上のリンクランプ57と、内部バス58とを有する。プロセッサ51、プログラムメモリ52、キャッシュメモリ53、不揮発記憶デバイス54、管理I/F55及びデータI/F56は、内部バス58を介して相互に接続される。プロセッサ51は、不揮発記憶デバイス54からプログラムメモリ52にロードされた各種プログラムを実行する。管理I/F55は、LAN50に接続するためのインターフェースデバイスであり、主に管理用データの入出力を行う際に利用される。データI/F56は、LAN50内の通信線を接続するためのインターフェースデバイスであり、主に、ネットワークサービスの提供を受けるユーザが利用する計算機とホスト計算機3との間で送受信されるデータ(ユーザデータを含む)の入出力を行う際に利用される。
図14は、実施形態に係るLAN接続装置の不揮発記憶デバイスの内部構成の一例を示す図である。
LAN接続装置5の不揮発記憶デバイス54は、データI/Oプログラム541と、管理プログラム542と、オペレーティングシステム543と、性能監視プログラム544と、ネットワーク性能情報格納テーブル545と、ポート接続管理テーブル546とを記憶する。
データI/Oプログラム541は、LAN接続装置5に対するユーザデータの入出力の制御を行うプログラムである。管理プログラム542は、LAN接続装置5の管理を行うプログラムである。オペレーティングシステム543は、他のプログラム、すなわち、データI/Oプログラム541、管理プログラム542及び性能監視プログラム544をLAN接続装置5上で動作させるための基本プログラムである。性能監視プログラム544は、サーバからのLAN50に対するI/Oの性能の監視を行うプログラムである。ネットワーク性能情報格納テーブル545及びポート接続管理テーブル546については、後述する。
次に、管理計算機1の不揮発記憶デバイス14に格納される各種情報について説明する。
図15Aは、実施形態に係るサービステンプレートの第1の例の構成図である。図15Bは、実施形態に係るサービステンプレートの第2の例の構成図である。図15Cは、実施形態に係るサービステンプレートの第3の例の構成図である。
サービステンプレート1406は、計算機システム100が提供可能なグループ化された1以上のサーバマシンの組み合わせ(以下「マシングループ」という)(リソースグループ)に関する情報を含むデータである。マシングループに含まれる1以上のサーバマシンは、全体が一組としてテナント管理者に提供される。サービステンプレート1406は、図15A、図15B及び図15Cに示すように、マシングループごとに作成される。サービステンプレート1406は、そのマシングループに含まれる1以上のサーバマシンのそれぞれに関する情報を含む。サービステンプレート1406は、少なくともマシングループに含まれる1以上のサーバマシンのそれぞれの用途を示すデータを含む。
管理計算機1は、サービステンプレート1406に基づいて、各マシングループの内容、すなわち、各マシングループに含まれる1以上のサーバマシンのそれぞれの内容をテナント管理者に提示するためのカタログデータを生成する。カタログデータが示すサーバマシンの内容には、サーバマシンの用途が含まれる。テナント管理者は、提示されたカタログデータに基づいて、業務サービスに利用するマシングループ、すなわち、提供を受けるマシングループを選択することができる。このため、テナント管理者は、業務サービスに適した用途のマシングループを選択することができる。本実施形態において、テナント管理者が提供する業務サービスは、1以上のネットワークサービスが組み合わされたサービスである。テナント管理者は、業務サービスを構成する1以上のネットワークサービスのそれぞれに適した用途のサーバマシンの組み合わせであるマシングループを選択することができる。なお、管理計算機1は、サービステンプレート1406の内容を、そのままカタログデータとしてテナント管理者に提示してもよい。本実施形態では、管理計算機1は、サービステンプレート1406及び後述するサービステンプレートリスト1407(図16参照)の内容を、カタログデータとしてテナント管理者に提示する。
サービステンプレート1406は、例えば、テーブルで構成され、イメージ1406a、仮想/物理1406b、CPU1406c、メモリ1406d、デプロイ台数1406e、ディスク1406f、NW I/O応答閾値1406g、Disk I/O応答閾値1406h、CPU利用率閾値1406i及びメモリ使用量閾値1406jのフィールドを含む。また、サービステンプレート1406は、マシングループに含まれる1以上のサーバマシンのそれぞれに関するエントリ1406yと、マシングループ全体に関するエントリ1406zを含む。以下、サーバマシンに関するエントリ1406yの各フィールド1406a〜1406jに格納されるデータについて説明する。
イメージ1406aには、管理計算機1が、サーバマシンをデプロイする際に利用するサーバマシンのイメージデータ、例えば、サーバマシンが仮想マシン6である場合は仮想マシンデータ61の名称が格納される。本実施形態において、サーバマシンのイメージデータの名称は、そのサーバマシンの用途を示している。例えば、同図の「Web1.ovf」は、サーバマシンの用途がWebサービスであることを示している。また、「App1.ovf」は、サーバマシンの用途がアプリケーションサービスであることを示している。また、「DB1.ovf」は、サーバマシンの用途がDBサービスであることを示している。
仮想/物理1406bには、サーバマシンが仮想マシン6であるか物理マシンであるかを示すデータが格納される。CPU1406cには、サーバマシンに割当てられるCPUの性能値(具体的には、クロック数)が格納される。メモリ1406dには、サーバマシンに割当てられるメモリのサイズが格納される。デプロイ台数1406eには、サーバマシンのデプロイに利用されるホスト計算機3の台数が格納される。ディスク1406fには、サーバマシンに割当てられるボリューム242、すなわち、サーバマシンから利用可能となるボリューム242の容量及び種類が格納される。ここで、サーバマシンに割当てられるボリューム242の種類は、サーバマシンに割当てられるボリューム242の基となるメディア上のボリューム244の種類に対応する。サーバマシンに割当てられるボリューム242の種類は、そのサーバマシンのグレードを示している。例えば、SSDメディア24Aに基づいて生成されたボリューム242が割当てられるサーバマシンは、ボリューム242のアクセス速度が高速であり、ハイグレードとなる。また、SASメディア24Bに基づいて生成されたボリューム242が割当てられるサーバマシンは、ボリューム242のアクセス速度が中速であり、ミドルグレードとなる。また、SATAメディア24Cに基づいて生成されたボリューム242が割当てられるサーバマシンは、ボリューム242のアクセス速度が低速であり、ローグレードとなる。
フィールド1406g〜1406jは、サーバマシン上で実行される処理、すなわち、ネットワークサービスを提供するためのサーバプログラムの処理の性能に関わる、管理計算機1が監視可能な測定値(以下「性能測定値」)について、その性能測定値が正常であるか否かを判定するための閾値(以下「性能閾値」という)を格納するためのフィールドである。
性能測定値としては、例えば、サーバマシン上で実行される処理のネットワークI/O、すなわちLAN50に対するI/Oに関係する測定値(例えば、ネットワークI/Oの応答時間、帯域、頻度等)、サーバマシン上で実行される処理のディスクI/O、すなわちボリューム242に対するI/Oに関係する測定値(例えば、ディスクI/Oの応答時間、帯域、頻度等)、サーバマシンに割当てられているCPUに関係する測定値(例えば、CPUの利用率等)、サーバマシンに割当てられているメモリに関係する測定値(例えば、メモリの使用量、メモリの最大使用量、ページングサイズ等)がある。仮想マシン6であるサーバマシンについての性能測定値については、管理計算機1は、そのサーバマシンを稼働させているハイパーバイザ341から取得することができる。一方、物理マシンであるサーバマシンについての性能測定値については、管理計算機1は、LAN接続装置5、FC接続装置4又はストレージシステム2から取得することができる。具体的には、管理計算機1は、ネットワークI/Oに関係する測定値についてはLAN接続装置5から取得することができ、ディスクI/Oに関係する測定値についてはFC接続装置4又はストレージシステム2から取得することができる。ちなみに、サーバマシンが仮想マシン6である場合は、仮想マシン6がテナント管理者の管理領域に属し、ハイパーバイザ341等のサーバの仮想マシン6以外の部分はDC管理者の管理領域に属する。従って、管理計算機1は、ハイパーバイザ341から、そのハイパーバイザ341が有している仮想マシン6に関する情報を取得することができる。
NW I/O応答閾値1406gには、サーバマシン上で実行される処理のネットワークI/Oに関係する測定値(本実施形態では、ネットワークI/Oの応答時間)についての性能閾値が格納される。Disk I/O応答閾値1406hには、サーバマシン上で実行される処理のディスクI/Oに関係する測定値(本実施形態では、ディスクI/Oの応答時間)についての性能閾値が格納される。CPU利用率閾値1406iには、サーバマシンに割当てられているCPUに関係する測定値(本実施形態では、CPUの利用率)についての性能閾値が格納される。メモリ使用量閾値1406jには、サーバマシンに割当てられているメモリに関係する測定値(本実施形態では、メモリの使用量)についての性能閾値が格納される。
フィールド1406g〜1406jに格納される各性能閾値は、例えば、サーバマシンの用途やグレードに基づいて設定される。例えば、Webサービスの場合は、ユーザが利用する計算機とWebサービスを提供するサーバとの間で送受信されるデータ量、すなわちネットワークI/Oの量が多いため、ネットワークI/Oの応答性能が重要であると考えられる。一方で、Webサービスを提供するサーバがボリューム242にアクセスする量、すなわちディスクI/Oの量はそれ程多くはない。従って、DC管理者は、例えば、用途がWebサービスであるサーバマシンについては、ネットワークI/Oに関係する性能測定値(ネットワークI/Oの応答時間)についての性能閾値を低めに設定、すなわち性能に対する要求を厳しめに設定し、ディスクI/Oに関係する性能測定値(ディスクI/Oの応答時間)についての性能閾値を高めに設定、すなわち性能に対する要求を緩めに設定することができる。また、DBサービスの場合は、DBサービスを提供するサーバがボリューム242にアクセスする量、すなわちディスクI/Oの量が多いため、ディスクI/Oの応答性能が重要であると考えられる。従って、DC管理者は、例えば、用途がDBサービスであるサーバマシンについては、ディスクI/Oに関係する性能測定値(ディスクI/Oの応答時間)についての性能閾値を低めに設定することができる。また、アプリケーションサービスの場合は、ネットワークI/Oの量及びディスクI/Oの量は、Webサービスの場合のI/O量及びDBサービスの場合のI/O量の中間程度のI/O量であると考えられる。従って、DC管理者は、例えば、用途がアプリケーションサービスであるサーバマシンについては、性能閾値を、Webサービスの場合の性能閾値及びDBサービスの場合の性能閾値の中間程度の値に設定することができる。また、DC管理者は、例えば、グレードの高いサーバマシンについては、ディスクI/Oに関係する性能測定値(ディスクI/Oの応答時間)についての性能閾値を低めに設定し、グレードの低いサーバマシンについては、ディスクI/Oに関係する性能測定値(ディスクI/Oの応答時間)についての性能閾値を高めに設定することができる。
マシングループ全体に関するエントリ1406zについては、フィールド1406g〜1406jに、マシングループ全体に関する性能閾値が格納される。ここで、マシングループ全体に関する性能閾値とは、マシングループを利用する業務サービスの業務処理、すなわち、業務サービスを構成する1以上のネットワークサービスを提供するための1以上のサーバプログラムの全体の処理に関する性能閾値のことをいう。具体的には、エントリ1406zのNW I/O応答閾値1406gには、業務処理のネットワークI/Oに関係する測定値(本実施形態では、ネットワークI/Oの応答時間)についての性能閾値が格納される。エントリ1406zのDisk I/O応答閾値1406hには、業務処理のディスクI/Oに関係する測定値(本実施形態では、ディスクI/Oの応答時間)についての性能閾値が格納される。エントリ1406zのCPU利用率閾値1406iには、業務処理に割当てられているCPUに関係する測定値(本実施形態では、CPUの利用率)についての性能閾値が格納される。エントリ1406zのメモリ使用量閾値1406jには、業務処理に割当てられているメモリに関係する測定値(本実施形態では、メモリの使用量)についての性能閾値が格納される。
例えば、図15Aのサービステンプレート1406(サービステンプレートA)は、3つのサーバマシン、すなわち、イメージデータの名称がそれぞれ「Web1.ovf」、「App1.ovf」及び「DB1.ovf」であるサーバマシンを含むマシングループを示している。テナント管理者は、このサービステンプレートAを参照することで、サービステンプレートAが示すマシングループは、Webサービス、アプリケーションサービス及びDBサービスの3つのサービスを組み合わせた業務サービスの利用に適していることを知ることができる。また、テナント管理者は、各サーバマシンの仕様を知ることができる。
図16は、実施形態に係るサービステンプレートリストの一例の構成図である。
サービステンプレートリスト1407は、計算機システム100が提供可能な1以上のマシングループについて、それぞれに関する情報を示すサービステンプレート1406の名称をリストとして表したデータである。サービステンプレートリスト1407は、例えば、テーブルで構成され、番号(図面上“#”で表記)1407a、サービステンプレート名1407b、用途1407c、及び品質1407dのフィールドを含む。番号1407aには、リストの番号が格納される。サービステンプレート名1407bには、サービステンプレート1406の名称が格納される。用途1407cには、サービステンプレートによりデプロイされるアプリケーションの用途、品質1407dにはアプリケーションの品質が記述される。テナント管理者は、サービステンプレートリスト1407を参照することで、選択可能な1以上のマシングループのそれぞれに関する情報を示すサービステンプレート1406の名称を知ることができる。
図17は、実施形態に係るマシン管理テーブルの一例の構成図である。
マシン管理テーブル1408は、計算機システム100で稼働しているサーバマシンに関する情報を管理するためのテーブルである。マシン管理テーブル1408は、マシン名1408a、構成1408b、Hypervisor1408c及びDatastore1408dのフィールドを含む。マシン名1408aには、サーバマシンの名称が格納される。構成1408bには、サーバマシンが仮想マシン6であるか物理マシンであるかを示すデータが格納される。Hypervisor1408cには、サーバマシンを稼働させているハイパーバイザ341を有するサーバ(ホスト計算機3)の識別子が格納される。Datastore1408dには、サーバマシンに割当てられているボリューム242の識別子が格納される。例えば、図17の上から1番目のエントリから、「WebVM1」という名称の仮想マシン6が、サーバ「Sv1」上で稼働しており、その仮想マシン6にはボリューム「Vol1」が割当てられていることがわかる。
図18は、実施形態に係るマシングループ管理テーブルの一例の構成図である。
マシングループ管理テーブル1409は、テナント管理者に提供されたマシングループに関する情報を管理するためのテーブルである。マシングループ管理テーブル1409は、Group1409a、VM name1409b、NW I/O応答閾値1409c、Disk I/O応答閾値1409d、CPU利用率閾値1409e、メモリ使用量閾値1409f及び状態1409gのフィールドを含む。マシングループ管理テーブル1409は、マシングループに含まれるサーバマシンに関するエントリ1409yと、マシングループ全体に関するエントリ1409zとの2種類のエントリを格納する。Group1409aには、マシングループの識別子が格納される。VM name1409bには、エントリ1409yにおいては、マシングループに含まれるサーバマシンの名称が格納され、エントリ1409zにおいては、マシングループ全体を示すデータ(図18の例では「グループ全体」)が格納される。
フィールド1409c〜1409fは、性能閾値を格納するためのフィールドである。マシングループに含まれるサーバマシンに関するエントリ1409yについては、フィールド1409c〜1409fには、マシングループに含まれるサーバマシンに関する性能閾値が格納される。具体的には、NW I/O応答閾値1409cには、サーバマシン上で実行される処理のネットワークI/Oに関係する測定値(ネットワークI/Oの応答時間)についての性能閾値が格納される。Disk I/O応答閾値1409dには、サーバマシン上で実行される処理のディスクI/Oに関係する測定値(ディスクI/Oの応答時間)についての性能閾値が格納される。CPU利用率閾値1409eには、サーバマシンに割当てられているCPUに関係する測定値(CPUの利用率)についての性能閾値が格納される。メモリ使用量閾値1409fには、サーバマシンに割当てられているメモリに関係する測定値(メモリの使用量)についての性能閾値が格納される。一方、マシングループ全体に関するエントリ1409zについては、フィールド1409c〜1409fには、マシングループ全体に関する性能閾値が格納される。具体的には、NW I/O応答閾値1409cには、業務処理のネットワークI/Oに関係する測定値(ネットワークI/Oの応答時間)についての性能閾値が格納される。Disk I/O応答閾値1409dには、業務処理のディスクI/Oに関係する測定値(ディスクI/Oの応答時間)についての性能閾値が格納される。CPU利用率閾値1409eには、業務処理に割当てられているCPUに関係する測定値(CPUの利用率)についての性能閾値が格納される。メモリ使用量閾値1409fには、業務処理に割当てられているメモリに関係する測定値(メモリの使用量)についての性能閾値が格納される。
マシングループに含まれるサーバマシンに関するエントリ1409yの状態1409gには、そのサーバマシンについて取得された性能測定値が正常であるか否かを示すデータが格納される。マシングループ全体に関するエントリ1409zの状態1409gには、そのマシングループ全体について取得された性能測定値が正常であるか否かを示すデータが格納される。例えば、フィールド1409c〜1409fに格納されている各性能閾値に対応する性能測定値のうちのいずれかが異常である場合、すなわち対応する性能閾値を超えている場合に、性能測定値が異常であることを示すデータが状態1409gに格納される。一方、フィールド1409c〜1409fに格納されている各性能閾値に対応する性能測定値のいずれもが正常である場合、すなわち対応する性能閾値を超えていない場合に、性能測定値が正常であることを示すデータが状態1409gに格納される。なお、性能閾値に対応する性能測定値とは、その性能閾値に基づいて判定される性能測定値のことである。なお、性能測定値が正常であるか否かの判断は、対応する性能閾値を超えているか否かだけでなく、例えば、対応する性能閾値を超えている時間が所定時間以上経過しているか否かに基づいて行われてもよい。
図19Aは、実施形態に係るマシン性能管理テーブルの第1の例の構成図である。図19Bは、実施形態に係るマシン性能管理テーブルの第2の例の構成図である。
マシン性能管理テーブル1410は、計算機システム100で稼働しているサーバマシンについて取得された性能測定値を管理するためのテーブルである。マシン性能管理テーブル1410は、例えば、計算機システム100で稼働しているサーバマシンごとに作成される。サーバマシンが仮想マシン6である場合のマシン性能管理テーブル1410は、図19Aに示すサーバマシン「Web VM1」に関するマシン性能管理テーブル1410のように、Time1410a、NW I/O応答1410b、Disk I/O応答1410c、CPU利用率1410d及びメモリ使用量1410eのフィールドを含む。
また、サーバマシンが物理マシンである場合のマシン性能管理テーブル1410は、図19Bに示すサーバマシン「DB PM2」に関するマシン性能管理テーブル1410のように、Time1410a、NW I/O応答1410b及びDisk I/O応答1410cのフィールドを含む。
Time1410aには、取得された性能測定値が測定された時刻が格納される。フィールド1410b〜1410eは、サーバマシンについて取得された性能測定値を格納するためのフィールドである。具体的には、NW I/O応答1410bには、サーバマシン上で実行される処理のネットワークI/Oに関係する測定値(ネットワークI/Oの応答時間)が格納される。Disk I/O応答1410cには、サーバマシン上で実行される処理のディスクI/Oに関係する測定値(ディスクI/Oの応答時間)が格納される。CPU利用率1410dには、サーバマシンに割当てられているCPUに関係する測定値(CPUの利用率)が格納される。メモリ使用量1410eには、サーバマシンに割当てられているメモリに関係する測定値(メモリの使用量)が格納される。
図20は、実施形態に係るサーバ管理テーブルの一例の構成図である。
サーバ管理テーブル1411は、計算機システム100内のサーバを管理するためのテーブルである。サーバ管理テーブル1411は、サーバ名1411a、仮想/物理1411b、CPU1411c、割当済みCPU1411d、メモリ1411e及び割当済みメモリ1411fのフィールドを含む。サーバ名1411aには、サーバの識別子が格納される。仮想/物理1411bには、サーバが仮想サーバであるか物理サーバであるか(サーバであるホスト計算機3が仮想サーバとして機能しているか物理サーバとして機能しているか)を示すデータが格納される。CPU1411cには、サーバが有するCPU、すなわちプロセッサ31の性能値(クロック数)が格納される。割当済みCPU1411dには、サーバがサーバマシンに割当てたCPUの性能値(クロック数)が格納される。メモリ1411eには、サーバが有するメモリ、すなわちキャッシュメモリ33のサイズが格納される。割当済みメモリ1411fには、サーバがサーバマシンに割当てたメモリのサイズが格納される。管理計算機1は、サーバ管理テーブル1411を参照することで、計算機システム100内の各サーバについて、どの程度の性能のCPU、どの程度のサイズのメモリを有しており、そのうちのどの程度の性能のCPU、どの程度のサイズのメモリがサーバマシンに割当てられているかを知ることができる。
図21は、実施形態に係るストレージ管理テーブルの一例の構成図である。
ストレージ管理テーブル1412は、計算機システム100内のストレージシステム2に生成されているボリューム242を管理するためのテーブルである。ストレージ管理テーブル1412は、ボリューム名1412a、仮想/物理1412b、容量1412c、割当済み容量1412d及びアクセス可能なサーバ1412eのフィールドを含む。ボリューム名1412aには、ボリューム242の識別子が格納される。仮想/物理1412bには、ボリューム242にアクセス可能なサーバが仮想サーバであるか物理サーバであるかを示すデータが格納される。容量1412cには、ボリューム242の全体の容量が格納される。割当済み容量1412dには、ボリューム242のうちのサーバマシンに割当てられた部分の容量が格納される。アクセス可能なサーバ1412eには、ボリューム242にアクセス可能なサーバの識別子が格納される。管理計算機1は、ストレージ管理テーブル1412を参照することで、計算機システム100内のストレージシステム2に生成されている各ボリューム242について、その全体の容量、割当済みの容量がどの程度であるかを知ることができる。
次に、ストレージシステム2の不揮発記憶デバイス24に格納されるボリューム性能情報格納テーブル2417について説明する。
図22Aは、実施形態に係るボリューム性能情報格納テーブルの第1の例の構成図である。図22Bは、実施形態に係るボリューム性能情報格納テーブルの第2の例の構成図である。図22Aは、ボリューム「Vol1」に関するボリューム性能情報格納テーブル2417であり、図22Bは、ボリューム「Vol2」に関するボリューム性能情報格納テーブル2417である。
ボリューム性能情報格納テーブル2417は、当該ボリューム性能情報格納テーブル2417を記憶するストレージシステム2内のボリューム242(以下、図22の説明において「対象ボリューム」という)について測定された、対象ボリュームに対するディスクI/Oに関係する測定値を管理するためのテーブルである。ボリューム性能情報格納テーブル2417は、例えば、対象ボリュームごとに作成される。ボリューム性能情報格納テーブル2417は、Time2417a、IOPS2417b及び応答時間2417cのフィールドを含む。Time2417aには、測定値が測定された時刻が格納される。IOPS2417b及び応答時間2417cは、対象ボリュームについて測定された、対象ボリュームに対するディスクI/Oに関係する測定値を格納するためのフィールドである。具体的には、IOPS2417bには、対象ボリュームに対するI/OのIOPS(Input Output Per Second)が格納される。応答時間2417cには、対象ボリュームに対するI/Oの応答時間が格納される。
ストレージシステム2の性能監視プログラム2416は、定期的に又は不定期的(例えば、対象ボリュームに対するI/Oが発生した場合)に、対象ボリュームに対するディスクI/Oに関係する測定値(IOPS2417b及び応答時間2417cに格納される測定値)を測定し、測定した測定値に関するエントリをボリューム性能情報格納テーブル2417に登録する。対象ボリュームに対するディスクI/Oに関係する測定値は、対象ボリュームにアクセスするサーバマシン、すなわち、対象ボリュームが割当てられているサーバマシンについてのディスクI/Oに関係する性能測定値に対応する。管理計算機1は、ストレージシステム2から、そのストレージシステム2内のボリューム242が割当てられているサーバマシンについてのディスクI/Oに関係する性能測定値を取得することができる。
次に、仮想サーバとして機能しているホスト計算機3の不揮発記憶デバイス34に格納される仮想マシン性能情報格納テーブル343について詳細に説明する。
図23Aは、実施形態に係る仮想マシン性能情報格納テーブルの第1の例の構成図である。図23Bは、実施形態に係る仮想マシン性能情報格納テーブルの第2の例の構成図である。
仮想マシン性能情報格納テーブル343は、当該仮想マシン性能情報格納テーブル343を記憶するサーバ上で稼働している仮想マシン6(以下、図23A、図23Bの説明において「対象マシン」という)について測定された性能測定値を管理するためのテーブルである。仮想マシン性能情報格納テーブル343は、例えば、対象マシンごとに作成される。図23Aは、仮想マシン「VM1」に関する仮想マシン性能情報格納テーブル343の例を示し、図23Bは、仮想マシン「VM2」に関する仮想マシン性能情報格納テーブル343の例を示す。仮想マシン性能情報格納テーブル343は、Time343a、NW I/O応答343b、Disk I/O応答343c、CPU利用率343d及びメモリ使用量343eのフィールドを含む。
Time343aには、性能測定値が測定された時刻が格納される。NW I/O応答343b〜メモリ使用量343eは、対象マシンについて測定された性能測定値を格納するためのフィールドである。具体的には、NW I/O応答343bには、対象マシン上で実行される処理のネットワークI/Oに関係する測定値(ネットワークI/Oの応答時間)が格納される。Disk I/O応答343cには、対象マシン上で実行される処理のディスクI/Oに関係する測定値(ディスクI/Oの応答時間)が格納される。CPU利用率343dには、対象マシンに割当てられているCPUに関係する測定値(CPUの利用率)が格納される。メモリ使用量343eには、対象マシンに割当てられているメモリに関係する測定値(メモリの使用量)が格納される。
サーバのハイパーバイザ341(より正確には、ハイパーバイザ341内の性能監視プログラム342)は、定期的に又は不定期的(例えば、ボリューム242に対するI/O、LAN50に対するI/Oが発生した場合)に、対象マシンについての性能測定値(NW I/O応答343b〜メモリ使用量343eに格納される性能測定値)を測定し、測定した性能測定値に関するエントリを仮想マシン性能情報格納テーブル343に登録する。管理計算機1は、サーバから、そのサーバ上で稼働している仮想マシン6についての性能測定値を取得することができる。
次に、FC接続装置4の不揮発記憶デバイス44に格納される各種情報について説明する。
図24は、実施形態に係るDisk I/O性能情報格納テーブルの一例の構成図である。
Disk I/O性能情報格納テーブル445は、当該Disk I/O性能情報格納テーブル445を記憶するFC接続装置4(以下、図24の説明において「対象FC接続装置」という)が測定したディスクI/Oに関係する測定値を管理するためのテーブルである。Disk I/O性能情報格納テーブル445は、例えば、対象FC接続装置内のポート、すなわちデータI/F46ごとに作成される。Disk I/O性能情報格納テーブル445は、Time445a及びDisk I/O応答445bのフィールドを含む。Time445aには、測定値が測定された時刻が格納される。Disk I/O応答445bには、対象FC接続装置が測定したディスクI/Oに関係する測定値(ディスクI/Oの応答時間)が格納される。
FC接続装置4の性能監視プログラム444は、ポートごとに、定期的に又は不定期的(例えば、サーバからのボリューム242に対するI/Oが発生した場合)に、ディスクI/Oに関係する測定値(ディスクI/Oの応答時間)を測定し、測定した測定値に関するエントリをDisk I/O性能情報格納テーブル445に登録する。ポートごとに測定された、ディスクI/Oに関係する測定値は、対応するポートを利用しているサーバマシンについて測定された、ディスクI/Oに関係する性能測定値に対応する。管理計算機1は、FC接続装置4から、そのFC接続装置4内のポートを利用しているサーバマシンについてのディスクI/Oに関係する性能測定値を取得することができる。
図25は、実施形態に係るFC接続装置のポート接続管理テーブルの一例の構成図である。
ポート接続管理テーブル446は、当該ポート接続管理テーブル446を記憶するFC接続装置4(以下、図25の説明において「対象FC接続装置」という)内のポートを利用しているサーバを管理するためのテーブルである。ポート接続管理テーブル446は、Port446a及びServer446bのフィールドを含む。Port446aには、対象FC接続装置が有するポートの番号が格納される。Server446bには、Port446aが示す番号のポートを利用しているサーバの識別子が格納される。例えば、図25の上から1番目のエントリから、サーバ「Sv1」が1番目のポートを利用していることがわかる。
次に、LAN接続装置5の不揮発記憶デバイス54に格納される各種情報について説明する。
図26は、実施形態に係るネットワーク性能情報格納テーブルの一例の構成図である。
ネットワーク性能情報格納テーブル545は、当該ネットワーク性能情報格納テーブル545を記憶するLAN接続装置5(以下、図26の説明において「対象LAN接続装置」という)が測定したネットワークI/Oに関係する測定値を管理するためのテーブルである。ネットワーク性能情報格納テーブル545は、例えば、対象LAN接続装置内のポート、すなわちデータI/F56ごとに作成される。ネットワーク性能情報格納テーブル545は、Time545a及びNW I/O応答545bのフィールドを含む。Time545aには、測定値が測定された時刻が格納される。NW I/O応答545bには、対象LAN接続装置が測定したネットワークI/Oに関係する測定値(ネットワークI/Oの応答時間)が格納される。
LAN接続装置5の性能監視プログラム544は、ポートごとに、定期的に又は不定期的(例えば、サーバからのLAN50に対するI/Oが発生した場合)に、ネットワークI/Oに関係する測定値(ネットワークI/Oの応答時間)を測定し、測定した測定値に関するエントリをネットワーク性能情報格納テーブル545に登録する。ポートごとに測定された、ネットワークI/Oに関係する測定値は、対応するポートを利用しているサーバマシンについて測定された、ネットワークI/Oに関係する性能測定値に対応する。管理計算機1は、LAN接続装置5から、そのLAN接続装置5内のポートを利用しているサーバマシンについてのネットワークI/Oに関係する性能測定値を取得することができる。
図27は、実施形態に係るLAN接続装置のポート接続管理テーブルの一例の構成図である。
ポート接続管理テーブル546は、当該ポート接続管理テーブル546を記憶するLAN接続装置5(以下、図27の説明において「対象LAN接続装置」という)内のポートを利用しているサーバを管理するためのテーブルである。ポート接続管理テーブル546は、Port546a及びServer546bのフィールドを含む。Port546aには、対象LAN接続装置が有するポートの番号が格納される。Server546bには、Port546aが示す番号のポートを利用しているサーバの識別子が格納される。例えば、図27の上から1番目のエントリから、サーバ「Sv1」が1番目のポートを利用していることがわかる。
次に、本実施形態に係る管理計算機1の動作を説明する。
図28は、実施形態に係る閾値設定/更新処理のフローチャートである。
この閾値設定/更新処理は、計算機システム100が提供可能なマシングループのそれぞれを対象に行われる。
まず、DC管理者は、管理計算機1により、閾値設定/更新処理の対象となるマシングループ(以下、図28の説明において「対象マシングループ」という)について、そのマシングループに含まれるサーバマシンに関する性能閾値を評価するための、そのマシングループを利用するアプリケーション(以下「評価アプリケーション」という)を作成する(ステップS101)。
次に、DC管理者は、ステップS101で作成した評価アプリケーションを対象となるマシングループに実行させることにより、性能閾値を評価するための性能テストを実施する(ステップS102)。そして、DC管理者は、管理計算機1を用いて、評価アプリケーションの応答時間が一定値、例えば要求される値以上となる状況における、対象マシングループに含まれるサーバマシンについての性能測定値(ネットワークI/Oの応答時間、ディスクI/Oの応答時間、CPUの利用率及びメモリの使用量)を確認する。この評価アプリケーションの応答時間が一定値以上になるような状況における性能測定値は、対象マシングループに含まれるサーバマシンに関する性能閾値(ネットワークI/Oの応答時間、ディスクI/Oの応答時間、CPUの利用率及びメモリの使用量のそれぞれについての性能閾値)の基準値とすることができる。
その後、DC管理者は、対象マシングループに含まれるサーバマシンの用途を考慮して、ステップS102で得られた性能閾値の基準値を調整し、対象マシングループに含まれるサーバマシンに関する性能閾値を決定する。また、DC管理者は、対象マシングループに含まれるサーバマシンに関して決定した性能閾値に基づいて、対象マシングループ全体に関する性能閾値を決定する。DC管理者は、例えば、対象マシングループに含まれるサーバマシンに関する性能閾値のそれぞれを合計、平均等した値を対象マシングループ全体に関する性能閾値と決定することができる。そして、DC管理者は、管理計算機1により、決定した性能閾値を、対象マシングループに関するサービステンプレート1406の対応するフィールド1406g〜1406jに格納する(ステップS103)。
その後、テナント管理者による対象マシングループの選択を受け付けた場合に、管理計算機1は、対象マシングループについてのデプロイ処理(図29参照)を行う(ステップS104)。このデプロイ処理により、対象マシングループがテナント管理者に利用可能に提供され、テナント管理者が対象マシングループを利用して業務サービスを行えるようになる。また、対象マシングループに関するサービステンプレート1406に登録されている性能閾値が、マシングループ管理テーブル1409に格納される。
その後、管理計算機1は、定期的に又は不定期的に対象マシングループに含まれるサーバマシンについての性能測定値を取得し、対応する性能閾値に基づいて取得した性能測定値が正常か否かを判定する(ステップS105)。管理計算機1は、性能測定値が異常である場合、すなわち、性能測定値が性能閾値を超えている場合に、その旨を示すアラートをDC管理者に通知する(ステップS106)。
DC管理者は、アラートの発生状況、すなわち、アラートが通知される頻度、アラートが通知された際に計算機システム100で実際に性能障害が発生しているか否か等に基づいて、現在設定されている性能閾値を調整し、より適切な性能閾値に更新する(ステップS107)。例えば、DC管理者は、アラートが通知される頻度が高すぎる場合に、性能閾値をより高く、すなわち性能に対する要求がより緩くなるように設定するようにしてもよい。DC管理者は、マシングループ管理テーブル1409に登録されている性能閾値だけを更新してもよいし、マシングループ管理テーブル1409に登録されている性能閾値及びサービステンプレート1406に登録されている性能閾値の両方を更新してもよい。
ステップS105〜ステップS107の処理が繰り返し行われ、対象マシングループに含まれるサーバマシンに関する性能閾値がより適切な値に更新される。この閾値設定/更新処理を、計算機システム100が提供可能なマシングループのそれぞれについて行うことにより、計算機システム100のすべてのマシングループに含まれるサーバマシンに関する性能閾値の設定及び更新が行われる。
図29は、実施形態に係るデプロイ処理のフローチャートである。
管理計算機1のセルフサービスポータルプログラム1401は、テナント管理者の操作する管理端末7のセルフサービスポータルアクセスプログラム7401から送信される要求に応じて、計算機システム100が提供可能なマシングループの内容を示すサービステンプレートの一覧を提供する(ステップS200)。管理端末7は受信したサービステンプレートの一覧テーブルを画像出力デバイス76により表示してテナント管理者に提示する。提示されるテーブルは、例えば図16に示されるテーブルであって、少なくとも用途の情報を含む。その後、テナント管理者が、表示されたテーブルを介して、利用するマシングループを選択(入力)し、セルフサービスポータルプログラム1401が、利用するマシングループの選択を受け付ける。セルフサービスポータルプログラム1401は、テナント管理者から入力デバイス15によるマシングループの選択を受け付けた場合、管理計算機1のデプロイ処理プログラム1402に、テナント管理者が選択したマシングループ(以下、図29の説明において「対象マシングループ」という)をデプロイすることを指示する(ステップS201)。
対象マシングループのデプロイを指示されたデプロイ処理プログラム1402は、サーバ管理テーブル1411を参照し、対象マシングループのデプロイ先のサーバ、より正確には、対象マシングループに含まれる1以上のサーバマシンのそれぞれのデプロイ先のサーバを決定する(ステップS202)。デプロイ処理プログラム1402は、例えば、CPUの性能値及びメモリのサイズに余裕のあるサーバを、デプロイ先のサーバと決定することができる。CPUの性能値及びメモリのサイズに余裕のあるサーバとしては、例えば、割当済みのCPUの性能値及び割当済みのメモリのサイズが小さいサーバとしてもよい。
次に、デプロイ処理プログラム1402は、ストレージ管理テーブル1412を参照し、対象マシングループに割当てるボリューム242、より正確には、対象マシングループに含まれる1以上のサーバマシンのそれぞれに割当てるボリューム242を決定する(ステップS203)。デプロイ処理プログラム1402は、例えば、空き容量に余裕のあるボリューム242を、対象マシングループに割当てるボリューム242と決定することができる。
その後、デプロイ処理プログラム1402は、対象マシングループに関する、マシングループ管理テーブル1409のエントリ(対象マシングループに含まれるサーバマシンに関するエントリ及び対象マシングループ全体に関するエントリ)を作成し、作成したエントリをマシングループ管理テーブル1409に登録する(ステップS204)。対象マシングループに関するエントリのフィールド1409c〜1409fには、対象マシングループに関するサービステンプレート1406における、対応するエントリの対応するフィールド1406g〜1406jに登録されている性能閾値がそれぞれ格納される。
その後、デプロイ処理プログラム1402は、対象マシングループをステップS202で決定したデプロイ先のサーバに、より正確には、対象マシングループに含まれるサーバマシンのそれぞれをステップS202で決定したそれぞれのデプロイ先のサーバにデプロイする(ステップS205)。以下、対象マシングループに含まれる、仮想マシン6である1つのサーバマシン(以下、ステップS205の説明において「対象マシン」という)のデプロイについて具体的に説明する。まず、デプロイ処理プログラム1402は、ステップS203で決定した、対象マシンに割当てるボリューム242に、対象マシンの仮想マシンデータ61を記憶させることを、対象マシンに割当てるボリューム242を有するストレージシステム2に指示する。そして、デプロイ処理プログラム1402は、デプロイ先のサーバに、対象マシンに割当てるボリューム242、すなわち、対象マシンの仮想マシンデータ61が記憶されているボリューム242へのアクセスパスを通知する。デプロイ先のサーバは、通知されたアクセスパスに従って対象マシンの仮想マシンデータ61を読み込んで、そのサーバ上に対象マシンを作成する。これにより、デプロイ先のサーバ上で対象マシンが稼働され、テナント管理者は、対象マシン上でサーバプログラムを実行することができるようになる。
その後、デプロイ処理プログラム1402は、デプロイ処理を終了する。
次に、仮想マシン6であるサーバマシンについての性能測定値を取得する第1の性能情報収集処理について説明する。
図30は、実施形態に係る第1の性能情報収集処理のシーケンス図である。
テナント管理者によって仮想マシン6を利用したネットワークサービスの提供が開始されると、ネットワークサービスの提供を受けるユーザが利用する計算機とサーバとの間、サーバとストレージシステム2との間で、データの送受信が行われるようになる(ステップ301)。例えば、仮想マシン6上で実行されているサーバプログラムがボリューム242に対するI/Oを行う場合、仮想マシン6は、その仮想マシン6を稼働させているハイパーバイザ341へI/O要求を発行する。仮想マシン6からI/O要求を受信したハイパーバイザ341は、その仮想マシン6に割当てられているボリューム242を有するストレージシステム2へ受信したI/O要求を転送する。ハイパーバイザ341が送信したI/O要求は、FC接続装置4を経由してストレージシステム2へ到達する。その後、I/O要求を受信したストレージシステム2は、受信したI/O要求に対する応答であるI/O応答を、I/O要求を送信してきたハイパーバイザ341へ送信する。ストレージシステム2が送信したI/O応答は、FC接続装置4を経由してハイパーバイザ341へ到達する。I/O応答を受信したハイパーバイザ341は、I/O要求を発行した仮想マシン6へ受信したI/O応答を転送する。
サーバのハイパーバイザ341(より正確には、ハイパーバイザ341内の性能監視プログラム342)は、定期的に又は不定期的(例えば、ボリューム242に対するI/O、及び/又はLAN50に対するI/Oが発生した場合)に、仮想マシン6についての性能測定値を測定し、測定した性能測定値に関するエントリを仮想マシン性能情報格納テーブル343に登録する(ステップS302)。
管理計算機1の性能情報収集プログラム1403は、定期的に又は不定期的に仮想マシン6についての性能測定値をハイパーバイザ341から取得し、取得した性能測定値をマシン性能管理テーブル1410に格納する(ステップS303)。具体的には、管理計算機1の性能情報収集プログラム1403は、サーバのハイパーバイザ341に性能測定値の取得要求を送信する。性能測定値の取得要求を受信したハイパーバイザ341は、そのハイパーバイザ341が稼働させている仮想マシン6についての性能測定値を、仮想マシン性能情報格納テーブル343から取得し、取得した性能測定値を管理計算機1へ送信する。管理計算機1の性能情報収集プログラム1403は、ハイパーバイザ341から取得した性能測定値に関するエントリをマシン性能管理テーブル1410に登録する。
なお、ステップS301〜ステップS303の処理は、テナント管理者に提供された仮想マシン6のそれぞれについて行われ、テナント管理者に提供された仮想マシン6のそれぞれについての性能測定値が取得される。
その後、管理計算機1の性能障害箇所推定プログラム1404は、後述する性能情報解析処理(図32の第1の性能情報解析処理、図33の第2の性能情報解析処理)を行う(ステップS304)。
次に、物理マシンであるサーバマシンについての性能測定値を取得する第2の性能情報収集処理について説明する。
図31は、実施形態に係る第2の性能情報収集処理のシーケンス図である。
テナント管理者によって物理マシンを利用したネットワークサービスの提供が開始されると、ネットワークサービスの提供を受けるユーザが利用する計算機とサーバとの間、サーバとストレージシステム2との間で、データの送受信が行われるようになる(ステップ401)。例えば、物理マシンで実行されているサーバプログラムがボリューム242に対するI/Oを行う場合、物理マシンは、その物理マシンに割当てられているボリューム242を有するストレージシステム2へI/O要求を発行する。物理マシンが発行したI/O要求は、FC接続装置4を経由してストレージシステム2へ到達する。その後、I/O要求を受信したストレージシステム2は、受信したI/O要求に対する応答であるI/O応答を、I/O要求を送信してきた物理マシンへ送信する。ストレージシステム2が送信したI/O応答は、FC接続装置4を経由して物理マシンへ到達する。
LAN接続装置5の性能監視プログラム544は、物理マシンが利用しているポートについて、定期的に又は不定期的(例えば、物理マシンのLAN50に対するI/Oが発生した場合)に、ネットワークI/Oに関係する測定値を測定し、測定した測定値に関するエントリをネットワーク性能情報格納テーブル545に登録する(ステップS402a)。物理マシンが利用しているポートについて測定された、ネットワークI/Oに関係する測定値は、その物理マシンについてのネットワークI/Oに関係する性能測定値に対応する。
FC接続装置4の性能監視プログラム444は、物理マシンが利用しているポートについて、定期的に又は不定期的(例えば、物理マシンのボリューム242に対するI/Oが発生した場合)に、ディスクI/Oに関係する測定値を測定し、測定した測定値に関するエントリをDisk I/O性能情報格納テーブル445に登録する(ステップS402b)。物理マシンが利用しているポートについて測定された、ディスクI/Oに関係する測定値は、その物理マシンについてのディスクI/Oに関係する性能測定値に対応する。
ストレージシステム2の性能監視プログラム2416は、定期的に又は不定期的(例えば、ボリューム242に対するI/Oが発生した場合)に、物理マシンに割当てられているボリューム242に対するディスクI/Oに関係する測定値を測定し、測定した測定値に関するエントリをボリューム性能情報格納テーブル2417に登録する(ステップS402c)。物理マシンに割当てられているボリューム242に対するディスクI/Oに関係する、ストレージシステム2が測定した測定値は、その物理マシンについてのディスクI/Oに関係する性能測定値に対応する。
管理計算機1の性能情報収集プログラム1403は、定期的に又は不定期的に物理マシンについての性能測定値をLAN接続装置5及びFC接続装置4から取得し、取得した性能測定値をマシン性能管理テーブル1410に格納する(ステップS403)。具体的には、管理計算機1の性能情報収集プログラム1403は、物理マシンについてのネットワークI/Oに関係する性能測定値の取得要求をLAN接続装置5に送信する。性能測定値の取得要求を受信したLAN接続装置5は、物理マシンについてのネットワークI/Oに関係する性能測定値を、ネットワーク性能情報格納テーブル545から取得し、取得した性能測定値を管理計算機1へ送信する。管理計算機1の性能情報収集プログラム1403は、LAN接続装置5から取得した、ネットワークI/Oに関係する性能測定値を、マシン性能管理テーブル1410に格納する。また、管理計算機1の性能情報収集プログラム1403は、物理マシンについてのディスクI/Oに関係する性能測定値の取得要求をFC接続装置4に送信する。性能測定値の取得要求を受信したFC接続装置4は、物理マシンについてのディスクI/Oに関係する性能測定値を、Disk I/O性能情報格納テーブル445から取得し、取得した性能測定値を管理計算機1へ送信する。管理計算機1の性能情報収集プログラム1403は、FC接続装置4から取得した、ディスクI/Oに関係する性能測定値を、マシン性能管理テーブル1410に格納する。なお、管理計算機1の性能情報収集プログラム1403は、物理マシンについてのディスクI/Oに関係する性能測定値を、ストレージシステム2から取得してもよい。
なお、ステップS401〜ステップS403の処理は、テナント管理者に提供された物理マシンのそれぞれについて行われ、テナント管理者に提供された物理マシンのそれぞれについての性能測定値が取得される。
その後、管理計算機1の性能障害箇所推定プログラム1404は、後述する性能情報解析処理(図32の第1の性能情報解析処理、図33の第2の性能情報解析処理)を行う(ステップS404)。
図32は、実施形態に係る第1の性能情報解析処理のフローチャートである。
第1の性能情報解析処理は、図30のステップS304及び図31のステップS404において行われる処理である。
まず、管理計算機1の性能障害箇所推定プログラム1404は、マシン管理テーブル1408で管理されているサーバマシンのうちの一つ(以下、図32の説明において「対象マシン」という)を選択する(ステップS501)。
次に、性能障害箇所推定プログラム1404は、マシングループ管理テーブル1409に登録されている対象マシンに関するエントリから、対象マシンに関する性能閾値を取得する(ステップS502)。本実施形態では、対象マシンが仮想マシン6である場合、性能障害箇所推定プログラム1404は、ネットワークI/Oに関係する性能測定値についての性能閾値、ディスクI/Oに関係する性能測定値についての性能閾値、CPUに関係する性能測定値についての性能閾値、及びメモリに関係する性能測定値についての性能閾値の4種類の対象マシンに関する性能閾値を取得することができる。一方、対象マシンが物理マシンである場合、性能障害箇所推定プログラム1404は、ネットワークI/Oに関係する性能測定値についての性能閾値、及びディスクI/Oに関係する性能測定値についての性能閾値の2種類の対象マシンに関する性能閾値を取得することができる。
次に、性能障害箇所推定プログラム1404は、対象マシンに関するマシン性能管理テーブル1410から、対象マシンについて取得された性能測定値を取得する(ステップS503)。本実施形態では、対象マシンが仮想マシン6である場合、性能障害箇所推定プログラム1404は、ネットワークI/Oに関係する性能測定値、ディスクI/Oに関係する性能測定値、CPUに関係する性能測定値、及びメモリに関係する性能測定値の4種類の対象マシンについての性能測定値を取得することができる。一方、対象マシンが物理マシンである場合、性能障害箇所推定プログラム1404は、ネットワークI/Oに関係する性能測定値、及びディスクI/Oに関係する性能測定値の2種類の対象マシンについての性能測定値を取得することができる。また、性能障害箇所推定プログラム1404は、性能測定値の各種類について複数の性能測定値を取得することができる。
その後、性能障害箇所推定プログラム1404は、ステップS502で取得した性能閾値に基づいて、ステップS503で取得した性能測定値が正常であるか否かを判定する(ステップS504)。例えば、性能障害箇所推定プログラム1404は、各種類の性能測定値のいずれもが正常である場合、すなわち対応する性能閾値を超えていない場合に、性能測定値が正常であると判定することができる。一方、性能障害箇所推定プログラム1404は、各種類の性能測定値のうちのいずれかが異常である場合、すなわち対応する性能閾値を超えている場合に、性能測定値が異常であると判定することができる。また、性能障害箇所推定プログラム1404は、例えば、或る種類の複数の性能測定値について、そのうちのいずれか所定数以上が異常である場合に、その種類の性能測定値が異常であると判定することができる。
性能測定値が正常である場合(ステップS504:正常)、性能障害箇所推定プログラム1404は、マシングループ管理テーブル1409における、対象マシンに関するエントリの状態1409gに、性能測定値が正常であることを示すデータを格納する(ステップS505)。そして、性能障害箇所推定プログラム1404は、ステップS501へ処理を進める。その後、マシン管理テーブル1408で管理されているサーバマシンのうちの未だ選択されていないサーバマシンについて、ステップS501〜ステップS506の処理が行われる。
一方、性能測定値が異常である場合(ステップS504:異常)、性能障害箇所推定プログラム1404は、マシングループ管理テーブル1409における、対象マシンに関するエントリの状態1409gに、性能測定値が異常であることを示すデータを格納する(ステップS506)。そして、管理計算機1の推定障害箇所通知プログラム1405は、異常となっている性能測定値があることをDC管理者に通知する。そして、性能障害箇所推定プログラム1404は、ステップS501へ処理を進める。その後、マシン管理テーブル1408で管理されているサーバマシンのうちの未だ選択されていないサーバマシンについて、ステップS501〜ステップS506の処理が行われる。
図33は、実施形態に係る第2の性能情報解析処理のフローチャートである。
第2の性能情報解析処理は、図30のステップS304及び図31のステップS404において行われる処理である。管理計算機1は、例えば、第1の性能情報解析処理を終えた後に、第2の性能情報解析処理を行ってもよい。
まず、管理計算機1の性能障害箇所推定プログラム1404は、マシングループ管理テーブル1409で管理されているマシングループのうちの一つ(以下、図33の説明において「対象マシングループ」という)を選択する(ステップS601)。
次に、性能障害箇所推定プログラム1404は、マシングループ管理テーブル1409のエントリのうちの対象マシングループに含まれるサーバマシンに関するエントリのそれぞれの状態1409gを参照し、対象マシングループに含まれるサーバマシンのうちの性能測定値が異常となっているサーバマシン(以下「異常マシン」という)(第1のリソース)の数(以下「グループ内異常マシン数」という)が、所定の閾値以下であるか否かを判定する(ステップS602)。
グループ内異常マシン数が閾値以下でない場合(ステップS602:NO)、性能障害箇所推定プログラム1404は、対象マシングループに含まれるサーバマシンの数に対するグループ内異常マシン数の割合が、所定の閾値以下であるか否かを判定する(ステップS603)。
対象マシングループに含まれるサーバマシンの数に対するグループ内異常マシン数の割合が閾値以下でない場合(ステップS603:NO)、性能障害箇所推定プログラム1404は、対象マシングループ全体に関する性能閾値に基づいて、対象マシングループ全体について取得された性能測定値が正常であるか否かを判定する(ステップS604)。この時、個々のサーバマシンの性能情報は、管理計算機1がホスト計算機3のハイパーバイザ341で動作する性能監視プログラム342に対して要求して取得したり、管理計算機1がFC接続装置4の性能監視プログラム444に対して要求しDisk I/O性能情報格納テーブル445の情報を取得したり、管理計算機1がLAN接続装置5の性能監視プログラム544に対して要求しネットワーク性能情報格納テーブル545の情報を取得したりすることにより収集される。
対象マシングループ全体についての性能測定値が正常である場合(ステップS604:正常)、性能障害箇所推定プログラム1404は、性能障害は発生していないと判定し、ステップS601へ処理を進める。その後、マシングループ管理テーブル1409で管理されているマシングループのうちの未だ選択されていないマシングループについて、ステップS601〜ステップS608の処理が行われる。
一方、対象マシングループ全体についての性能測定値が異常である場合(ステップS604:異常)、性能障害箇所推定プログラム1404は、性能障害が発生しており、その性能障害の原因が業務サービス側、すなわちテナント管理者の業務処理にあると判定する。そして、管理計算機1の推定障害箇所通知プログラム1405は、テナント管理者の業務処理に原因がある性能障害が発生している旨を、テナント管理者に通知する。具体的には管理計算機1の推定障害箇所通知プログラム1405は、当該テナント管理者が提供サービスを管理するためのセルフサービスポータルプログラムへ障害を通知する。これにより、テナント管理者が管理端末7からセルフサービスポータルアクセスプログラム7401を介して自分のセルフサービスポータルにアクセスした際に障害情報を確認できるようにする(ステップS605)。そして、性能障害箇所推定プログラム1404は、ステップS601へ処理を進める。その後、マシングループ管理テーブル1409で管理されているマシングループのうちの未だ選択されていないマシングループについて、ステップS601〜ステップS608の処理が行われる。
ステップS602においてグループ内異常マシン数が閾値以下であると判定された場合(ステップS602:YES)、又はステップS603において対象マシングループに含まれるサーバマシンの数に対するグループ内異常マシン数の割合が閾値以下であると判定された場合(ステップS603:YES)、性能障害箇所推定プログラム1404は、マシン管理テーブル1408及びマシングループ管理テーブル1409を参照し、対象マシングループとは異なるマシングループ内に、異常マシンに割当てられているボリューム242と関係のあるボリューム242(異常マシンに割当てられているボリューム242と同一のボリューム242を含む)が割当てられているサーバマシン(以下「関係マシン」という)(第2のリソース)が存在するか否かを判定する(ステップS606)。ここで、異常マシンに割当てられているボリューム242と関係マシンに割当てられているボリューム242とが関係があるとは、例えば、両ボリューム242が、同一のストレージシステム2が有する記憶領域に基づいて生成されていることをいう。すなわち、異常マシン及び関係マシンは、両サーバマシンの提供に関わる装置であるストレージシステム2が互いに同一である。
関係マシンが存在しない場合(ステップS606:NO)、性能障害箇所推定プログラム1404は、性能障害は発生していないと判定し、ステップS601へ処理を進める。その後、マシングループ管理テーブル1409で管理されているマシングループのうちの未だ選択されていないマシングループについて、ステップS601〜ステップS608の処理が行われる。
一方、関係マシンが存在する場合(ステップS606:YES)、性能障害箇所推定プログラム1404は、マシングループ管理テーブル1409のエントリのうちの関係マシンに関するエントリの状態1409gを参照し、関係マシンについての性能測定値が正常であるか否かを判定する(ステップS607)。
関係マシンについての性能測定値が正常である場合(ステップS607:正常)、性能障害箇所推定プログラム1404は、処理をステップS605へ進める。すなわち、この場合、性能障害箇所推定プログラム1404は、性能障害が発生しており、その性能障害の原因がテナント管理者の業務処理にあると判定する。
一方、関係マシンについての性能測定値が異常である場合(ステップS607:異常)、性能障害箇所推定プログラム1404は、性能障害が発生しており、その性能障害の原因が異常マシンの提供に関わる装置、例えば、異常マシンに割当てられているボリューム242を有するストレージシステム2にあると判定する。そして、管理計算機1の推定障害箇所通知プログラム1405は、異常マシンの提供に関わる装置に原因がある性能障害が発生している旨を、原因の装置の担当者に通知するため、ストレージシステム2が性能障害の原因であればストレージシステム2の運用管理プログラム2414に通知し、ストレージシステム2の管理者がストレージシステム2の画像出力デバイス26から確認ができるようにする。ホスト計算機3が原因であればホスト計算機のハイパーバイザ341に通知し、ホスト計算機の管理者が画像出力デバイス36から確認できるようにする。また、FC接続装置4が原因であれば管理プログラム442に、LAN接続装置5が原因であれば管理プログラム542に通知し、それぞれの管理者が管理用通信I/F経由で確認ができるようにする(ステップS608)。そして、性能障害箇所推定プログラム1404は、ステップS601へ処理を進める。その後、マシングループ管理テーブル1409で管理されているマシングループのうちの未だ選択されていないマシングループについて、ステップS601〜ステップS608の処理が行われる。このように障害箇所に応じて当該障害箇所の管理プログラムに障害を通知することで、当該障害箇所の管理権限を有する管理者への適切な通知が可能となる。
以上が、実施形態の説明である。管理計算機1は、テナント管理者に対してサーバマシンの用途を示すデータを含むカタログデータを提示してマシングループを選択させることで、テナント管理者が利用するマシングループに含まれるサーバマシンのそれぞれの用途を知ることができる。すなわち、管理計算機1は、テナント管理者に提供したサーバマシン上でどのようなサーバプログラムが実行されるかを或る程度予測できるようになる。管理計算機1は、各サーバマシンについて、そのサーバマシンの用途に基づいて、すなわち、そのサーバマシン上でどのようなサーバプログラムが実行されるのかを考慮して、そのサーバマシンについて取得される性能測定値を評価するための性能閾値を設定することができる。そして、管理計算機1は、テナント管理者に提供されたマシングループに含まれるサーバマシンのそれぞれについて性能測定値を取得し、取得した性能測定値が正常か否かを性能閾値に基づいて判定する。管理計算機1は、テナント管理者に提供されたマシングループに含まれるサーバマシンのうちの性能測定値が異常となっているサーバマシンの数等に基づいて、性能障害が発生しているか否かを判定し、また、性能障害の原因が業務サービス側にあるのかリソースの提供側にあるのかを判定することができる。このように、管理計算機1は、テナント管理者の管理領域に属するサーバマシンやそのサーバマシン上で実行されているサーバプログラムの状態を直接監視することはできないが、性能測定値の取得と、性能閾値に基づく取得した性能測定値の評価とを行うことにより、計算機システム100内で性能障害が発生しているか否かを判定すること、及び性能障害が発生した場合にその原因が業務サービス側にあるのかリソースの提供側にあるのかを特定することが可能となる。
なお、本発明は、以上説明した実施例に限定されるものでなく、その趣旨を逸脱しない範囲で種々変更可能であることはいうまでもない。
例えば、第2の性能情報解析処理において、どのような場合に性能障害が発生していると判定し、その性能障害の原因が、どのような場合に業務サービス側にあり、また、どのような場合にリソースの提供側にあると判定するかについては、本実施形態は一例にすぎず、図33に示す判定方法に限られるものではない。例えば、計算機1は、グループ内異常数が閾値以下でない場合に、又は、対象マシングループに含まれるサーバマシンの数に対するグループ内異常数の割合が閾値以下でない場合に、性能障害の原因がテナント管理者の業務処理にあると判定してもよい。