(57)【要約】【課題】  今後、より複雑になるシステム構成や増加していくことが確実な仮想化環境の物理リソースおよび論理リソースをシステム利用者側で加工することが現実的に不可能になると想定される。【解決手段】  具体的には、ユーザＩＤ毎に、サービスメニューを設定し、サービスメニューに合わせた情報提供範囲/提供する量を決定する。最終的に、低価格でかつ高品質のサービスを提供するために、基盤（ハード、ソフトウェア）は、「ベンダロックイン」を目指ことが、一般的に選択肢の一つとしてあげられており、製品単位で取得している情報を、一旦纏め上げ、目的別（画面単位）で、複数の情報を同一レベルで整理し、目的にあった情報に整理しなおし、ユーザに提供することで、適切なキャパシティプランニングができる。【選択図】  図１
2014115684.tif 000002
【特許請求の範囲】
【請求項１】
複数の利用者が利用する仮想システムのシステムリソース管理方法において、
前記利用者を識別するユーザＩＤ毎に、当該利用者の享受可能なサービスのサービスメニューを記録し、
前記サービスメニューに応じた、当該仮想システムに関する情報であって提供可能な情報の範囲および量を対応付けて記録し、
前記利用者から情報提供要求を受付けた場合、当該利用者に対して提供可能な情報について、前記対応付けて記録された内容に従って纏め上げ処理を実行し、
前記纏め挙げ処理が実行された情報を、前記利用者に対して出力することを特徴とする仮想システムのシステムリソース管理方法。
【請求項２】
請求項１に記載の仮想システムのシステムリソース管理方法において、
前記仮想システムに関する情報は、当該仮想システムを構成する複数の製品それぞれ毎に生成されるものであって、
前記纏め挙げ処理は、前記製品それぞれ毎の情報を、前記利用者に関わる製品で纏め上げることを特徴とする仮想システムのシステムリソース管理方法。
【請求項３】
請求項１または２のいずれかに記載の仮想システムのシステムリソース管理方法において、
前記纏め上げされた情報について、複数の情報を目的別の情報に整理して出力することを特徴とする仮想システムのシステムリソース管理方法。
【請求項４】
請求項３に記載の仮想システムのシステムリソース管理方法において、
前記目的別の情報とは、前記仮想システムの利用の際に用いる画面に関わる情報であることを特徴とする仮想システムのシステムリソース管理方法。
【発明の詳細な説明】
【技術分野】
【０００１】
本発明は、仮想化環境のシステム管理、特にリソースの配分等を管理する技術に関する。
【背景技術】
【０００２】
仮想化技術によりコンピュータシステムを構成する物理リソース（サーバ、ストレージ、CPU、メモリなど）を抽象化し、論理的なリソース単位で仮想化システムを柔軟に構成することが可能となっている。この技術をベースとして、リソースの利用率により重量課金できるサービス提供が可能となっている。
【０００３】
この際、仮想システムの管理を行うためには、アクセス権限もしくは、管理権限を特定する必要がある。このような管理権限について、仮想リソースＩＤごとに管理権限の有無の情報を決めることで、仮想マシンのリソースに対する管理権限を設定することが特許文献１に開示されている。それにより、ユーザは仮想マシンのリソースを管理することができる。
【先行技術文献】
【特許文献】
【０００４】
【特許文献１】特開２００５−２０８９９９号公報
【発明の概要】
【発明が解決しようとする課題】
【０００５】
仮想化システムは様々な製品から構成されるが、製品ごとに取得できる稼動情報のレベル（範囲や深さ）は異なる。そのため、仮想化システムを利用するユーザ及び、システム管理者側で稼動情報を加工しなければならない。今後、より複雑になるシステム構成や増加していくことが確実な仮想化環境の物理リソースおよび論理リソースをシステム利用者側で加工することが現実的に不可能になると想定される。
【課題を解決するための手段】
【０００６】
運用管理ソフトウェアと個別製品（ハードウェア、ＯＳ、データベースなど）の稼動情報を連携させ、仮想化システムの利用者へリソースを横断的且つ効率的に管理する機能を提供する。より具体的には、ユーザＩＤ毎に、サービスメニューを設定し、サービスメニューに合わせた情報提供範囲/提供する量を決定する。最終的に、低価格でかつ高品質のサービスを提供するために、基盤（ハード、ソフトウェア）は、「ベンダロックイン」を目指ことが、一般的に選択肢の一つとしてあげられており、製品単位で取得している情報を、一旦纏め上げ、目的別（画面単位）で、複数の情報を同一レベルで整理し、目的にあった情報に整理しなおし、ユーザに提供する。このことで、適切なキャパシティプランニングができ、システムに対する投資コストが他社と比較し低く抑えられることが信頼につながり、将来に向かい受注拡大につながる。
【発明の効果】
【０００７】
ユーザにとってはリクエストに合わせた精緻なシステムモニタリング、柔軟なリソース管理機能により、リソース不足による機械損失の防止、システム利用コストの最適化がより一層可能となる。またシステム管理・運営者にとってもランニングコストの低減が図れる。
【図面の簡単な説明】
【０００８】
【図１】本発明の一実施形態の装置・機能の一例
【図２】本発明の一実施形態における管理対象の一例
【図３】本発明の一実施形態で用いられる会社管理テーブル
【図４】本発明の一実施形態で用いられるユーザ管理テーブル
【図５】本発明の一実施形態で用いられるセンタ管理テーブル
【図６】本発明の一実施形態で用いられる物理ノード管理テーブル
【図７】本発明の一実施形態で用いられるマシンスペック管理テーブル
【図８】本発明の一実施形態で用いられるジョブ管理テーブル
【図９】本発明の一実施形態で用いられる仮想ノード管理テーブル１
【図１０】仮想ノード管理テーブル２
【図１１】本発明の一実施形態で用いられる仮想ノード管理テーブル３
【図１２】本発明の一実施形態で用いられるサービス管理テーブル
【図１３】本発明の一実施形態で用いられる稼動統計管理テーブル
【図１４】本発明の一実施形態で用いられるシステム管理テーブル
【図１５】本発明の一実施形態で用いられるシステム変更管理テーブル
【図１６】本発明の一実施形態で用いられる稼動履歴管理テーブル
【図１７】本発明の一実施形態における稼動状況取得処理フロー
【図１８（１）】本発明の一実施形態における稼動状況確認（編集）処理フロー（１）
【図１８（２）】本発明の一実施形態における稼動状況確認（編集）処理フロー（２）
【図１９】本発明の一実施形態におけるシミュレーション（リソース追加）処理フロー
【図２０】本発明の一実施形態におけるシミュレーション（ジョブ追加）処理フロー
【図２１】本発明の一実施形態における動的監視（レスポンス）処理フロー
【図２２】本発明の一実施形態における動的監視（リソース）処理フロー
【図２３】本発明の一実施形態における動的監視（稼動条件）処理フロー
【図２４】本発明の一実施形態における静的監視処理フロー
【発明を実施するための形態】
【０００９】
添付図面を参照し、本発明を実施するための形態について詳細に説明する。以下の実施形態は例示であり、本発明は下記内容に限定されない。
【００１０】
・装置・機能構成<図1>
図1は本発明の実施形態に係る装置と機能を示す。センタ管理ノード<101>は仮想化システム全体の管理者が利用するノードであり、ユーザ管理<1011>、ノード管理（物理・仮想）<1012>、ジョブ実行・管理<1013>、障害検知・通知＜1014＞、稼動状況分析・蓄積<1015>、稼動状況未来予測<1016>、システム変更・管理（物理・仮想）<1017>の機能を持つ。また管理用テーブルとして、会社管理テーブル<1018>、ユーザ管理テーブル<1019>、センタ管理テーブル<1020>、物理ノード管理テーブル<1021>、マシンスペック管理テーブル<1022>、ジョブ管理テーブル＜1023＞、仮想ノード管理テーブル1〜3<1024>、サービス管理テーブル<1025>、稼動統計管理テーブル<1026>、システム変更管理テーブル<1027>を持つ。
【００１１】
仮想ノード<1031>は仮想化されたリソースを基に作成されたシステム単位であり、ジョブ実行<1032>、稼動状況取得・通知<1033>機能を持つ。なお、仮想ノード<1034>は物理ノード<103>、物理ノード<105>を跨ぐ形で作成されている。
【００１２】
ユーザ管理ノード<107>は仮想化システムを利用するユーザ用にシステム管理<1071>、システム変更・管理（仮想・システム）<1072>、稼動状況分析結果参照<1073>、稼動状況未来予測結果参照<1074>機能と、システム管理テーブル<1075>、システム変更管理テーブル<1076>を持つ。
【００１３】
次に本発明における主な処理について説明する。なお処理開始前の段階で、会社管理テーブル<図3>、ユーザ管理テーブル<図4>、センタ管理テーブル<図5>、物理ノード管理テーブル<図6>、マシンスペック管理テーブル<図7>、ジョブ管理テーブル＜図8＞、仮想ノード管理テーブル1〜3<図9、図10、図11>、サービス管理テーブル<図12>、稼動統計管理テーブル<図13>、システム管理テーブル<図14>、システム変更管理テーブル<図15>、稼動履歴管理テーブル<図16>の各パラメータには値が設定されている。
【００１４】
・稼動状況取得処理<図17>
稼動状況取得処理は通常、60秒間隔で24時間実行される。取得間隔は物理ノード管理テーブル<図6>の取得レベル<608>、仮想ノード管理テーブル2<図10>の取得レベル<1009>に日時・間隔を設定することで変更することが可能である。
【００１５】
センタ管理ノードは情報を取得したい対象を上記タイミングにて物理ノード管理テーブル<図6>の物理ノードID<602>もしくは仮想ノード管理テーブル2の仮想ノードID<1003>をキーに仮想ノード管理テーブル1から対象物理ノードID<904>を特定する。
稼動統計管理テーブル<図13>に設定されている、特定したノードの情報取得レベル<1309、1311、1313>と管理対象範囲<1302、1303、1304、1305、1306、1307>に従い、
稼動情報取得命令を出す<ステップ1701>。管理対象<図2>には処理（ジョブ）単位<201>、業務（ジョブグループ）単位<202>、プロダクト（システム）単位<203>、仮想ＯＳ単位<204>、物理サーバ単位<205>の指定が可能である。また、稼動状況は通常24時間60秒間隔で取得するが、取得間隔の変更も可能である。
【００１６】
対象ノードは<ステップ1701>で指定された条件に従い、稼動状況を取得し、センタ管理ノードへ結果を通知する<ステップ1702>。
【００１７】
センタ管理ノードは対象ノードから受け取った情報を稼動統計管理テーブル<図13>のCPU使用率<1310>、メモリ使用率<1312>、ジョブ処理時間<1314>、レスポンス時間<1315>に格納する<ステップ1703>。
【００１８】
・稼動状況確認（編集）処理<図18（１）（２）>
システム利用者はユーザ管理ノードのシステム管理テーブル<図14>から、ユーザコード<1402>に紐付く仮想ノードのID<1404>を取得し、当該ノードに対して稼動状況取得命令を出す<ステップ1801>。取得命令時に指定された確認単位別に、センタ管理ノードにて稼動統計の編集処理が行われる<ステップ1802>。
（１）確認単位がジョブIDの場合、稼動統計管理テーブル<図13>より該当するジョブのCPU利用率<1310>、メモリ使用率<1312>を取得する<ステップ1803>。
（２）確認単位がジョブグループIDの場合、稼動統計管理テーブル<図13>より対象ジョブグループ<1306>に含まれるジョブID<1307>を抽出する。抽出されたジョブIDごとのCPU利用率<1310>、メモリ使用率<1312>を取得し、各利用率を合計値を算出する<ステップ1804>。
（３）確認単位がシステムIDの場合、稼動統計管理テーブル<図13>より指定されたシステムID<1305>に該当するジョブのCPU利用率<1310>、メモリ使用率<1312>を取得し、合計値を算出する<ステップ1805>。
（４）確認単位が仮想ノードIDの場合、稼動統計管理テーブル<図13>より指定され仮想ノードID<1304>に該当するジョブのCPU利用率<1310>、メモリ使用率<1312>を取得し、合計値を算出する<ステップ1806>。
（５）確認単位が物理ノードIDの場合、以下の処理を行う。例として図1の物理ノードA<103>が指定された場合の処理を以下に示す<ステップ1807>。
【００１９】
(ア)仮想ノードA<1031>に含まれるジョブのCPU利用率を(4)と同様の手順で求める。
【００２０】
(イ)仮想ノードB<1034>に含まれるジョブのCPU利用率を(4)と同様の手順で求める。ただし取得する範囲は物理ノードAに該当する物理ノードID<1304>を持つ統計情報に限る。
【００２１】
(ウ)物理ノード管理テーブル<図6>より、物理ノードAのCPU<604>とメモリ<605>を取得する。物理ノードA上で仮想ノードA及び仮想ノードBに割り当てられたCPU<905>、メモリ<906>を仮想ノード管理テーブル1<図9>より取得する。
(エ)下式により物理ノードAのCPU利用率とメモリ利用率を算出する。
【００２２】
・CPU利用率＝(ア)×（仮想ノードAのCPU/物理ノードAのCPU）＋(イ)×（物理ノードA上の仮想ノードBのCPU/物理ノードAのCPU）
・メモリ利用率＝(ア)×（仮想ノードAのメモリ/物理ノードAのメモリ）＋(イ)×（物理ノードA上の仮想ノードBのメモリ/物理ノードAのメモリ）
ユーザ管理ノードから指定された確認単位に従い、ステップ<1803、1804、1805、1806、1807>にて算出した稼動情報をユーザ管理ノードに表示する<ステップ1808>。なお、センタ管理ノードは同一確認単位での過去情報を算出することも可能である。ユーザ管理ノードより指示された過去期間の情報を稼動統計管理テーブル<図13>より取得し、対象期間中の最小・最大・平均値を算出・表示することができる。
【００２３】
・シミュレーション（リソース追加）処理<図19>
ユーザ管理ノードにてシステム管理テーブル<図14>より、システムID<1403>または仮想ノードID<1404>を指定し、リソース追加対象を特定する。管理対象システムに関する稼動状況を前期の稼動状況確認（編集）処理<図18（１）（２）>にて確認後、追加するリソース(CPU、メモリ)を指定し、シミュレーション命令またはリソース追加実施命令を出す。センタ管理ノードは指定された追加リソース情報をシステム変更管理テーブル<図15>の各カラムに格納する<ステップ1901>。
【００２４】
リソース追加指示の分類によって以下の処理を実施する<ステップ1902>。
【００２５】
（１）シミュレーション
センタ管理ノードにて、対象システムのリソース変更前・変更後の性能情報（CPU使用率<1310>、メモリ使用率<1312>、  ジョブ処理時間<1314>、レスポンス時間<1315>）を稼動統計テーブル<図13>より取得し、性能比を算出する<ステップ1903>。
【００２６】
(ア)スループット（単位時間当たりに処理するジョブ数またはトランザクション件数）
・スループット＝（CPU性能×利用率）÷1トランザクションのステップ数
CPU性能はマシンスペック管理テーブル<図7>の性能<706>から、利用率は稼動統計管理テーブル<図13>のCPU利用率<1310>から取得する。1トランザクションのステップ数についてはシミュレーション用の数値を処理パターンに応じてあらかじめ設定しておく。リソース追加後のCPU利用率は利用CPU÷（割当CPU＋追加CPU）で算出する。
【００２７】
(イ)レスポンス（入力終了から出力開始までの時間）
レスポンスについては稼動統計管理テーブル<図13>のレスポンス時間<1315>から取得する。リソース追加後のレスポンス時間はレスポンス時間<1315>×（リソース追加後スループット÷リソース追加前スループット）にて算出する。リソース追加後のジョブ処理時間（ジョブ投入から出力終了まで）はI/F(LAN、FC)の追加がなければ、リソース追加後のレスポンスと同等と考える。
【００２８】
その他として、リソース追加後のメモリ使用率は、使用メモリ÷（割当メモリ＋追加メモリ）にて算出する<ステップ1904>。
【００２９】
（２）システム変更（リソース追加実施）
センタ管理ノードのシステム変更管理テーブルのCPU<1505>、メモリ<1506>へ追加リソース情報を格納する。センタ管理ノードにて指定された日時<1507>に対象ノードのリソース変更を実施する。変更後情報を仮想ノード管理テーブル1の各カラムに反映する<ステップ1905>。
【００３０】
ユーザ管理ノードにシミュレーション結果またはリソース追加実施結果を表示する<ステップ1906>。
【００３１】
・シミュレーション（ジョブ追加）処理<図20>
開発機にて追加対象ジョブをプレ稼動させ性能情報を取得する。センタ管理ノードのジョブ管理テーブル<図8>項目である、 ジョブID<802>、CPU<810>、メモリ<811>に情報を格納する<ステップ2001>。 
ユーザ管理ノードにてシステム管理テーブル<図14>より、システムID<1403>を指定し、ジョブ  追加対象を特定する。 ユーザ管理ノードにてシステムIDと追加するジョブを指定し、シミュレーション命令またはジョブ追加実施命令を出す<ステップ2002>。 
ジョブ追加指示の分類によって以下の処理を実施する<ステップ2003>。
（１）シミュレーション
センタ管理ノードにて、開発機の性能情報と、ジョブを追加する本番環境ノードの性能比を以下のテーブルから取得し算出する<ステップ2004>。（物理ノード管理テーブル<図6>のCPU<604>、メモリ<605>、または仮想ノード管理テーブル1<図9>の割当CPU<905>、割当メモリ<906>、IF<911>）
センタ管理ノードにて、対象システムのジョブ追加前稼動状況を稼動統計管理テーブル<図13>のCPU使用率<1310>、メモリ使用率<1312>を取得し、ステップ1903にて算出した性能比から、ジョブ追加後のCPU利用率、メモリ利用率、ジョブ処理時間を算出する<ステップ2005>。
・シミュレーション値＝リソース追加前性能値＋開発機上の性能値×開発機と本番環境ノード間の性能比
なお性能値はCPU利用率、メモリ利用率、ジョブ処理時間を指す。
（２）システム変更（ジョブ追加実施）
センタ管理ノードにてシステム変更管理テーブルのCPU<1505>、メモリ<1506>へ追加するリソース情報を格納する。センタ管理ノードにて指定された日時<1507>に対象ノードのリソース変更を実施し、変更後情報を仮想ノード管理テーブル1<図9>の各カラムに反映する<ステップ2006>。
【００３２】
ユーザ管理ノードにシミュレーション結果またはリソース追加実施結果を表示する<ステップ2007>。
【００３３】
・動的監視（レスポンス）処理<図21>
センタ管理ノードが、稼動統計管理テーブル<図13>の日時<1308>に取得されたレスポンス時間<1315>にされた時間と、仮想ノード管理テーブル1<図9>のレスポンス閾値<910>を比較する<ステップ2101>。
【００３４】
稼動情報が閾値以内であれば、監視処理を終了する<ステップ2102>。稼動情報が閾値を超過している場合、稼動履歴管理テーブル<図16>のユーザコード<1602>、システムID<1603>、仮想ノードID<1604>、ジョブID<1605>、警告種別<1606>、日時<1608>に情報を格納する。 ユーザ管理ノードに<図16>に格納した内容を通知する<ステップ2103>。 
・動的監視（リソース）処理<図22>
センタ管理ノードが、稼動統計管理テーブル<図13>の日時<1308>に情報取得を行い、CPU使用率<1310>、 メモリ使用率<1312>に値を格納する。取得した値と、仮想ノード管理テーブル1<図9>のCPU閾値<907>、メモリ閾値<908>を比較する<ステップ2201>。
【００３５】
稼動情報が閾値以内であれば、監視処理を終了する<ステップ2202>。
稼動情報が閾値を超過している場合、センタ管理ノードのシステム管理テーブル<図14>の自動割当フラグ<1405、1409>を確認する<ステップ2203>。
【００３６】
自動リソース割当モードでなければ、稼動履歴管理テーブル<図16>のユーザコード<1602>、システムID<1603>、仮想ノードID<1604>、ジョブID<1605>、警告種別<1606>、日時<1608>に情報を格納し、ユーザ管理ノードに内容を通知する<ステップ2205>。 
自動リソース割当モードの場合、2テーブル（稼動統計管理テーブル<図13>のCPU利用率<1310>、メモリ利用率<1312>と、物理ノード管理テーブル<図6>のCPU<604>、メモリ<605>）を参照し、操作対象である物理ノードの空きリソースを算出する<ステップ2206>。
【００３７】
システム管理テーブル<図14>にあらかじめ設定されている割当CPU<1408>、割当メモリ<1412>を対象ノードに追加する。ただし、割当容量の限界は<ステップ2206>で求めた空き容量以下かつ、システム管理テーブル<図14>の自動割当上限<1407、1411>以内となる。なお、自動割当されたリソースはシステム管理テーブル<図14>の割当期間<1406、1410>を過ぎると開放される。 
・自動割当の記録を稼動履歴管理テーブル<図16>の自動割当<1607>、日時<1608>に情報を格納し、ユーザ管理ノードに内容を通知する<ステップ2207>。 
・自動的監視（稼動条件）処理<図23>
センタ管理ノードが、ジョブ管理テーブル<図8>の起動条件<806>、起動時刻<807>、終了時刻<808>、最早起動時刻<809>に指定された条件で、監視対象ジョブの稼動状況確認を行う<ステップ2301>。稼動条件を満たしていれば、当該監視処理を終了する<ステップ2302>。
【００３８】
稼動条件を満たしていない場合、稼動履歴管理テーブル<図16>のユーザコード<1602>、システムID<1603>、仮想ノードID<1604>、ジョブID<1605>、警告種別<1606>、日時<1608>に情報を格納し、ユーザ管理ノードに<図16>に格納した内容を通知する<ステップ2303>。
【００３９】
・静的監視処理<図24>
センタ管理ノードと、ユーザ管理ノードの管理テーブル間で不整合がないか、仮想ノード管理テーブル３<図11>の整合性 確認日時<1105>のタイミングで2テーブル（仮想ノード管理テーブル３<図11>のシステムID<1102>、仮想ノードID<1104>と、ユーザ管理ノードのシステム管理テーブル<図14>のシステムID<1403>、仮想ノードID<1404>）
を比較する<ステップ2401>。
【００４０】
比較結果を仮想ノード管理テーブル３<図11>の整合性確認結果<1106>に情報を格納する<ステップ2402>。整合であれば静的監視処理を終了する<ステップ2403>。不整合であれば、センタ管理ノード及び、ユーザ管理ノードに不整合情報<ステップ2402>を通知する。 仮想化システムの管理者が調査・対策を行う<ステップ2404>。
【符号の説明】
【００４１】
１０１…センタ管理ノード、１０３、１０５…物理ノード、１０７…ユーザ管理ノード
【図１】
2014115684.tif 000003
【図２】
2014115684.tif 000004
【図３】
2014115684.tif 000005
【図４】
2014115684.tif 000006
【図５】
2014115684.tif 000007
【図６】
2014115684.tif 000008
【図７】
2014115684.tif 000009
【図８】
2014115684.tif 000010
【図９】
2014115684.tif 000011
【図１０】
2014115684.tif 000012
【図１１】
2014115684.tif 000013
【図１２】
2014115684.tif 000014
【図１３】
2014115684.tif 000015
【図１４】
2014115684.tif 000016
【図１５】
2014115684.tif 000017
【図１６】
2014115684.tif 000018
【図１７】
2014115684.tif 000019
【図１８（１）】
2014115684.tif 000020
【図１８（２）】
2014115684.tif 000021
【図１９】
2014115684.tif 000022
【図２０】
2014115684.tif 000023
【図２１】
2014115684.tif 000024
【図２２】
2014115684.tif 000025
【図２３】
2014115684.tif 000026
【図２４】
2014115684.tif 000027