以下、図面に基づいて本発明の実施の形態を説明する。図1は、本実施形態が適用される既存データベースの仮想統合の例を説明するための図である。同図には、MDR502a〜502cの三つのMDRと、FCMDB501とが示されている。MDR502aは、ITシステムを構成するサーバコンピュータ(以下、単に「サーバ」という。)やその他の構成要素(例えば、ネットワーク機器等)に関する情報(例えば、CIの名前、ハードウェアなのかソフトウェアなのか文書データなのかを分類するカテゴリ、設置場所、費用、責任者、現在のステータス等)を管理する構成情報DBに対するエージェントである。MDR502bは、各サーバにインストールされているソフトウェアの情報を管理するソフト情報DBに対するエージェントである。MDR502cは、各サーバの性能に関する情報を管理する性能情報DBに対するエージェントである。なお、構成情報DB、ソフト情報DB、及び性能情報DBは、既存データベースの一例である。
FCMDB501は、MDR502a〜502cから登録されるCI及びCI間の関係(依存関係)に関する情報を統合する。同図において、CI間を接続する線分は、CI間の関係を示す。例えば、構成情報DB、ソフト情報DB、又は性能情報DBにおいて管理されている各サーバや、ソフト情報DBにおいて管理されている各ソフトウェアは、それぞれCIとしてFCMDBに登録される。
また、ソフト情報DBにおいて管理されているサーバとソフトウェアとの関係情報に基づいて、サーバに関するCIとソフトウェアに関するCIとの間の関係情報がFCMDBに登録される。
例えば、MDR502bから登録されるデータについて、具体例を図2に示す。
図2は、MDRから登録されるデータの具体例を示す図である。同図において、データDは、MDR502bより登録されるデータである。データDは、特定のサーバの情報、当該特定のサーバにインストールされているソフトウェアの情報、及び当該サーバと当該ソフトウェアとの関係情報等を含む。
データDに基づいて、FCMDB501には、当該特定のサーバに対応するCIと、当該サーバにインストールされているソフトウェアに対応するCIとが登録される。また、当該サーバと当該ソフトウェア間との関係を示す関係情報R1もFCMDB501に登録される。
FCMDBは、各MDRより登録されるデータに関して、同じ実体(例えば、特定のサーバ)に対する複数のデータについては、統合して一つのCIとして格納する。例えば、一台のサーバ(以下、「サーバA」という。)が増設された場合、当該サーバに関するデータは、管理者等によって、図1の構成情報DB、ソフト情報DB、及び性能情報DBのそれぞれに登録される。各既存データベースに対応するMDR502a〜502cは、サーバAに関して登録された各データをFCMDB501に登録する。FCMDB501は、登録された各データについて、同じ実体(サーバA)に対するデータであることを判定し、一つのCIに統合して格納する。このように、同じ実体に対するデータの一つのCIへの統合を、リコンシリエーションという。
図3は、リコンシリエーションの一例を説明するための図である。同図において、データD1a、データD1b、及びデータD1cは、それぞれ同一のサーバAに関して、構成情報DB、ソフト情報DB、又は性能情報DBが管理しているデータである。各データベースの構造(スキーマ)は、必ずしも同じではない。したがって、同一のサーバAに関するデータであっても、各データベースにおいて管理されているデータ形式は異なる。例えば、データD1aには、サーバに関するデータの種別(データ種別)は、「ノード」であり、IPアドレスを示す属性項目は、「IP」であることが示されている。また、データD1bには、サーバに関するデータ種別は、「サーバ」であり、IPアドレスを示す属性項目は、「ID」であることが示されている。また、データD1cには、サーバに関するデータ種別は、「ホスト」であり、IPアドレスを示す属性項目は、「IP_ADDR」であることが示されている。
MDR502a〜502cは、それぞれが対応するデータベースのデータD1a〜D1cを、FCMDB501に応じた形式(FCMDB形式)に変換する。すなわち、MDR502aは、データD1aをデータC1aに変換する。MDR502bは、データD1bをデータC1bに変換する。MDR502cは、データD1cをデータC1cに変換する。その結果、データD1a〜D1cは、同じデータ形式(FCMDB形式)を有するデータC1a〜C1cに変換される。例えば、データC1a〜C1cにおいて、サーバを示すCIの種別(CIタイプ)は、「サーバ」である。また、IPドレスを示す属性項目は、「ipAdress」である。MDR502a〜503cは、変換後のFCMDB形式のデータC1a〜C1cを、FCMD501に登録する。
FCMDB501は、データC1a〜C1cが、同一の実体に対応するデータであることを判定し、データC1a〜C1cを一つのCIに統合して格納する。実体の同一性を判定するための用いられる属性項目は、リコンサイルキーと呼ばれる。同図の例において、CIタイプがサーバであるCIに関するリコンサイルキーは、「ipAddress」である。すなわち、FCMDB501は、データC1a〜C1cの「ipAddress」の値の同一性に基づいて、データC1a〜C1cが対象とする実体を同定する。
各MDRからのFCMDBへのデータの登録は、それぞれ独立して行われる。例えば、MDR502aは、MDR502b及び503c等に関与せず、FCMDB501に対してデータの登録を行う。MDR502b及び503cについても同様である。したがって、例えば、既存データベースの不具合等によって、各既存データベース間に不整合が存在していた場合、各MDRが当該不整合を検知するのは困難である。また、FDMDBについても、MDRからのデータを正しいものとしてCIの登録を行うため、当該不整合を検知するのは困難である。その結果、FCMDBには、既存データベース間の不整合がそのまま反映されてしまうという問題がある。
図4は、FCMDBにおける不整合の発生例を示す図である。同図において、構成情報DBには、サーバAに関するデータD1aと、サーバBに関するデータD2aとが正常に登録されている。構成情報DBの更新に応じ、MDR502aは、データD1a、データD2aを、それぞれ、サーバAを示すFCMDB形式のデータC1a、サーバBを示すFCMDB形式のデータC2aに変換する。MDR502aは、データC1a及びC2aをFCMDB501に登録する。
ソフト情報DBには、サーバAに関するデータD1bと、サーバBに関するデータD2bとが正常に登録されている。また、ソフト情報DBのなんらかの異常によって、実体の無いサーバCに関するデータD3bがソフト情報DBに登録されてしまっている。ソフト情報DBの更新に応じ、MDR502bは、データD1b、データD2b、データDcを、それぞれ、サーバAを示すFCMDB形式のデータC1b、サーバBを示すFCMDB形式のデータC2b、サーバCを示すデータC2bに変換する。MDR502bは、データC1b、C2b、及びC3bをFCMDB501に登録する。
性能情報DBには、サーバAに関するデータD1が登録されている。また、性能情報DBのなんらかの異常によって、サーバBに関してIPアドレスが誤っているデータD2cが登録されている。IPアドレスが誤った結果、データD2cは、サーバB’に関するデータとなっている。性能情報DBの更新に応じ、MDR502cは、データD1c及びデータD2cを、それぞれ、サーバAを示すFCMDB形式のデータC1c、サーバB’を示すFCMDB形式のデータC2cに変換する。MDR502cは、データC1c及びC2cをFCMDB501に登録する。
以上のようなデータを登録されたFCMD501は、サーバAに関するデータC1a、C1b、及びC1cに関しては、実体の同一性を判定することができ、一つのCIに統合することができる。また、サーバBに関するデータC2a及びC2bに関しても、一つのCIに統合することができる。但し、本来であればサーバBに関するデータであるデータC2cは、サーバBに関するCIに統合することはできない。その結果、サーバB’に関するCIがFCMDB501に登録されてしまう。また、本来であれば、存在しないはずのサーバCに関するデータC3bに対応するCIも、FCMDB501に登録されてしまう。
以上の結果、FCMDB501は、サーバB’に関するCIがサーバBに関するCIに統合されず、本来であれば存在しないサーバCに関するCIが登録されているといった、誤った状態となってしまう。その結果、ユーザは、FCMDB501を参照しても、正しい構成情報を把握することが困難となる。そこで、本実施の形態の構成管理支援システムは、以下に説明する構成及び処理等によって、斯かる不整合の可能性を検出可能とする。
図5は、本発明の実施の形態における構成管理支援システムの構成例を示す図である。同図の構成管理支援システム1において、統合情報管理装置10、構成情報管理装置20a、ソフト情報管理装置20b、及び性能情報管理装置20c等は、LAN(Local Area Network)又はインターネット等のネットワークを介して接続されている。ネットワークは、一部又は全部において無線通信の経路を含んでいてもよい。なお、構成情報管理装置20a、ソフト情報管理装置20b、及び性能情報管理装置20cを区別しない場合、単に、「情報管理装置20」という。
統合情報管理装置10は、FCMDB(Federating Configuration Management Database)121を有するコンピュータである。FCMDB121は、同図における各情報管理装置20のデータベース22(構成情報DB22a、ソフト情報DB22b、性能情報DB22c)に管理されているデータを、仮想的に統合して格納するデータベースである。すなわち、FCMDB121は、統合されたCI(Configuration Item)を格納する。一つのCIは、FCMDB121の一つのレコード(データ)に相当する。
構成情報管理装置20aは、構成情報DB21a及びMDR21a等を有するコンピュータである。構成情報DB21aは、ITシステムを構成するサーバコンピュータ(以下、単に「サーバ」という。)やその他の構成要素(例えば、ネットワーク機器等)に関する情報(例えば、CIの名前、ハードウェアなのかソフトウェアなのか文書データなのかを分類するカテゴリ、設置場所、費用、責任者、現在のステータス等)を管理するデータベース22である。MDR21aは、構成情報DB21aの更新に応じ、更対象とされたデータを、FCMDB121に応じた形式(以下、「FCMDB形式」という。)に変換し、変換後のデータをFCMDB121に登録するソフトウェアである。
ソフト情報管理装置20bは、ソフト情報DB21b及びMDR21b等を有するコンピュータである。ソフト情報DB21bは、各サーバにインストールされているソフトウェアの情報を管理するデータベース22である。MDR21bは、ソフト情報DB21bの更新に応じ、更新対象とされたデータを、FCMDB形式に変換し、変換後のデータをFCMDB121に登録するソフトウェアである。
性能情報管理装置20cは、性能情報DB21c及びMDR21c等を有するコンピュータである。性能情報DB21cは、各サーバの性能に関する情報を管理するデータベース22である。MDR21cは、性能情報DB21cの更新に応じ、更新対象とされたデータを、FCMDB形式に変換し、変換後のデータをFCMDB121に登録するソフトウェアである。
各情報管理装置のデータベース22には、同一の実体に対するデータが管理されうる。例えば、特定のサーバAに関する情報が、構成情報DB21a、ソフト情報DB21b、及び性能情報DB21cのそれぞれにおいて管理されうる。
なお、同図において、各情報管理装置が管理するデータは、一例である。すなわち、FCMDB121に統合されるデータは、特定のデータベースにおいて管理されているデータに限定されない。或るデータベースに管理されているデータを、FCMDB121への統合対象としたい場合、当該データに対応するMDR21を実装すればよい。
図6は、本発明の実施の形態における統合情報管理装置のハードウェア構成例を示す図である。図6の統合情報管理装置10は、それぞれバスBで相互に接続されているドライブ装置100、補助記憶装置102、メモリ装置103、CPU104、及びインタフェース装置105等を有する。
統合情報管理装置10での処理を実現するプログラムは、記録媒体101によって提供される。プログラムを記録した記録媒体101がドライブ装置100にセットされると、プログラムが記録媒体101からドライブ装置100を介して補助記憶装置102にインストールされる。但し、プログラムのインストールは必ずしも記録媒体101より行う必要はなく、ネットワークを介して他のコンピュータよりダウンロードするようにしてもよい。補助記憶装置102は、インストールされたプログラムを格納すると共に、必要なファイルやデータ等を格納する。
メモリ装置103は、プログラムの起動指示があった場合に、補助記憶装置102からプログラムを読み出して格納する。CPU104は、メモリ装置103に格納されたプログラムに従って統合情報管理装置10に係る機能を実行する。インタフェース装置105は、ネットワークに接続するためのインタフェースとして用いられる。
なお、記録媒体101の一例としては、CD−ROM、DVDディスク、又はUSBメモリ等の可搬型の記録媒体が挙げられる。また、補助記憶装置102の一例としては、HDD(Hard Disk Drive)又はフラッシュメモリ等が挙げられる。記録媒体101及び補助記憶装置102のいずれについても、コンピュータ読み取り可能な記録媒体に相当する。
なお、各情報管理装置も、図6に示されるハードウェアを有していてもよい。
図7は、本発明の実施の形態における統合情報管理装置の機能構成例を示す図である。同図において、統合情報管理装置10は、登録部111、検索部112、関係パターン生成部113、整合性判定部114、登録待ち確認部115、及び不整合予備群確認部116等を有する。これら各部は、統合情報管理装置10にインストールされたプログラムが、CPU104に実行させる処理により実現される。統合情報管理装置10は、更に、FCMDB121、関係パターン記憶部122、登録元情報記憶部123、登録待ちチェックリスト記憶部124、及び不整合予備群記憶部125等を有する。これらデータベース22又は各記憶部は、補助記憶装置102又は統合情報管理装置10とネットワークを介して接続される記憶装置を用いて実現することができる。
登録部111は、各MDR21より登録が要求されるFCMDB形式のデータを、CIとしてFCMDB121に登録する。登録部111は、また、登録要求に係るデータ間の関係(依存関係)を、CI間の関係としてFCMDB121に登録する。検索部112は、検索要求に指定された検索条件に合致するCIをFCMDB121より検索し、検索結果を応答する。
関係パターン生成部113は、FCMDB121に登録されているCI及びCI間の関係に基づいて、CIタイプ間の関係のパターン(以下、「関係パターン」という。)を生成(又は抽出)し、関係パターン記憶部122に記録する。CIタイプ間の関係のパターンとは、各CIタイプのCIが、いずれのCIタイプのCIと関係を有するかを示す情報をいう。但し、一つのCIタイプの関係パターンは、一つであるとは限らない。同一のCIタイプに属するCIであっても、異なる関係のパターンを形成する場合があるからである。なお、CIタイプとは、CIの種別又はデータ型をいう。CIタイプは、例えば、CIが対象とする、ITシステムの構成要素の種別に依存する。
関係パターン生成部113は、また、各関係パターンの生成元となったCI間の関係の登録元のMDR21と、関係パターンとの対応情報を生成(又は抽出)する。関係パターン生成部113は、当該対応情報を登録元情報記憶部123に記録する。
整合性判定部114は、FCMDB121に登録されたCIに関して、関係パターン記憶部122及び登録元情報記憶部123等を参照して、整合性の有無を判定する。換言すれば、整合性判定部114は、整合性が欠如している可能性のあるCIを抽出する。FCMDB121に登録されたCIとは、関係パターンの生成に利用されなかったCIをいう。すなわち、関係パターンは、或る程度の数のCIがFCMDB121に登録された後に生成されるのが好適である。関係パターンは、FCMDB121に登録されているCIがどのような関係を有するかに基づいて生成されるものであるため、サンプル数が多ければ多いほど、その信頼性は高くなるからである。したがって、整合性判定部114は、関係パターンの生成後に登録されたCIに関して、整合性の判定を行う。なお、ここでいう整合性の一例は、或るCIに関して、当該CIを登録予定である全てのMDR21から登録が行われていることをいう。各CIを登録予定のMDR21は、各CIがいずれの関係パターンを形成するCIであるかを判定し、当該関係パターンとMDR21との対応情報に基づいて特定される。
整合性判定部114は、登録予定のMDR21のうちの一部からの登録が行われていないCIを、登録待ちチェックリスト記憶部124又は不整合予備群記憶部125に登録する。
不整合予備群記憶部125には、登録予定のMDR21のうちの一部からの登録が行われていないCIの中で、今後当該一部のMDR21から登録される可能性が低いCIが登録される。
登録待ちチェックリスト記憶部124には、登録予定のMDR21のうちの一部からの登録が行われていないCIの中で、不整合予備群記憶部125への登録対象となるCI以外のCIが登録される。すなわち、登録待ちチェックリスト記憶部124には、登録予定のMDR21のうちの一部からの登録が行われていないCIの中で、今後当該一部のMDR21から登録される可能性が低いとは確定されていないCIが登録される。
登録待ち確認部115は、登録待ちチェックリスト記憶部124に登録されたCIについて、所定時間経過後に、改めて整合性の有無を判定し、整合性の無いCIを特定する。すなわち、登録待ち確認部115は、所定時間経過中に、登録を行っていない一部のMDR21からの登録が行われているかを確認する。
不整合予備群確認部116は、不整合予備群記憶部125に登録されたCIに関する整合性の有無について、最終的な確認を行う。具体的には、不整合予備群確認部116は、当該CIの登録を行っていない一部のMDR21に対応するデータベース22に、当該CIに対応するデータが存在するか否かを確認する。該当するデータが存在しない場合、不整合予備群確認部116は、当該CIに関して不整合が発生していると確定する。
以下、統合情報管理装置10が実行する処理手順について説明する。まず、FCMDB121へのCIの登録時に実行される処理手順について説明する。
図8は、CIの登録処理の処理手順の一例を説明するためのフローチャートである。
ステップS101において、登録部111は、いずれかのMDR21よりデータの登録要求を受け付ける。当該データ(以下、「登録データ」という。)は、登録要求元のMDR21によって、各データベース22の独自の形式からFCMDB形式に変換されている。
続いて、登録部111は、登録データに設定されているCIタイプ及びリコンサイルキーの値に基づいて、登録データに対応するCIをFCMDB121より検索する(S102)。なお、リコンサイルキーとは、FCMDB形式のデータに設定されている属性項目の中で、登録データが対象とするITシステムの構成要素の実体(又は個体)の同一性を識別するために用いられる属性項目をいう。いずれの属性項目がリコンサイルキーであるかは、CIタイプに応じて異なりうる。
登録データに対応するCIが検索されない場合(S103でNo)、登録部111は、登録データに対応するCIタイプのCIを、FCMDB121内に新たに生成する(S104)。
図9は、本実施の形態のCIの構成例を示す図である。同図において、CIは、ID51、CIタイプ52、属性情報53、新規登録時刻54、登録元情報55、関係パターン56、及び完全状態フラグ57等の項目を有する。
ID51は、各CIを識別する識別子である。ID51の値は、CIの生成時(ステップS104)に、CIに設定される。CIタイプ52は、CIのCIタイプである。属性情報53は、CIに統合されたデータに対して設定されていた属性情報が統合されたものである。
新規登録時刻54は、CIが生成された時刻、すなわち、CIが新規にFCMDB121に登録された時刻、又は当該データベース22において管理されているデータが最初に当該CIに統合された時刻(時期)である。
登録元情報55は、CIの登録元ごとに、登録元MDR名及び登録時間を含む。登録元MDR名は、CIに統合されたデータをFCMDB121に登録したMDR21の名前(MDR名)である。登録時間は、新規登録時刻54を起点として、当該MDR21が登録したデータが当該CIに統合されるまでの経過時間である。
関係パターン56は、FCMDB121内においてCIが有する関係が当てはまる関係パターンの名前である。
完全状態フラグ57は、CIが完全状態であるか(「true」)否か(「false」)を示すフラグである。完全状態とは、CIを登録予定の全てのMDR21から当該CIの登録が行われた状態をいう。すなわち、一つのCIに関しては、複数のMDR21から登録が行われうる。完全状態フラグ57の初期値(CIの生成時の値)は、falseである。
なお、ステップS104の時点において、属性情報53、新規登録時刻54、登録元情報55、関係パターン56の値は設定されていない。
続いて、登録部111は、生成されたCIの新規登録時刻54に、現在時刻を設定する(S105)。続いて、登録部111は、登録データに設定されている属性情報を、生成されたCIの属性情報53に設定する(S106)。続いて、登録部111は、生成されたCIの登録元情報55を設定する(S107)。具体的には、登録データの登録要求元のMDR21のMDR名を登録元MDR名とし、新規登録時刻54からの経過時間(ここでは、0秒)を登録時間とするレコードが、当該CIの登録元情報55に設定される。
続いて、登録部111は、登録データに付随している関係情報をCIの関係情報としてFCMDB121に登録する(S108)。
図10は、本実施の形態のCIの関係情報の構成例を示す図である。同図に示されるように、関係情報は、参照元及び参照先等の項目を含む。参照元の値は、当該関係において、関係相手のCIを参照する側のCIのIDである。参照先の値は、当該関係において、関係相手のCIから参照される側のCIのIDである。参照先又は参照先という用語より類推可能なように、関係には方向がある。参照元から参照先への方向が関係の順方向であり、参照元から参照先への方向が関係の逆方向である。
なお、同図では、図9に示されるCIが登録対象のCIであり、当該CIを参照元とし、IDが「id0002」であり、CIタイプが「ソフト」であるCIを参照先とする関係情報が登録された例が示されている。
一方、登録データに対応するCIが検索された場合(S103でYes)、登録部111は、検索されたCIに関して、ステップS106〜S108を実行する。したがって、登録データに設定されている属性情報が、当該CIの属性情報53に追加される(S106)。また、登録要求元のMDR21のMDR名を登録元MDR名とし、新規登録時刻54からの経過時間を登録時間とするレコードが、当該CIの登録元情報55に追加される。なお、登録データに対応するCIが検索された場合とは、当該CIの登録元として予定されている他のMDR21によって既にCIが新規に登録されている場合である。
続いて、関係パターンの生成処理について説明する。図11は、関係パターンの生成処理の処理手順の一例を説明するためのフローチャートである。
関係パターン生成部113は、FCMDB121に登録されているCIの総数が、予め設定されている閾値を超えるまで待機する(S201)。或る程度の数のCIが登録された状態でないと、FCMDB121に基づいて生成される関係パターンの信頼性を確保できないからである。例えば、ステップS201は、FCMDB121へのCIの登録(図8の処理)が実行されるたびに実行されてもよい。
FCMDB121に登録されているCIの総数が、予め設定されている閾値を超えると(S201でYes)、関係パターン生成部113は、FCMDB121に登録されているCIの中で、当該CIに関する関係情報が一定期間変化していないCIを抽出する(S202)。該当するCIの判定は、例えば、当該一定期間ごとに各CIに関する関係情報をFCMDB121より抽出し、前回抽出された関係情報と今回抽出された関係情報とが異なるか否かに基づいて行われてもよい。なお、CIに関する関係情報とは、当該CIが、参照元又は参照先とされている関係情報をいう。また、CIに関する関係情報が変化していないとは、当該CIに関して、既存の関係情報の更新若しくは削除、又は新たな関係情報の追加等が行われていないことをいう。すなわち、ステップS201では、他のCIとの関係が安定しているCIが抽出される。
続いて、ステップS203〜S208は、抽出されたCIごとのループ処理である。以下、ループ処理において処理対象とされているCIを「対象CI」という。
ステップS203において、関係パターン生成部113は、対象CIと、対象CIと関係を有する全てのCI(以下、「関係CI」という。)との関係に基づいて関係パターンを生成する。すなわち、対象CIと各関係CIとの関係が、対象CIのCIタイプと、各関係CIのCIタイプとの関係としてパターン化されたものが関係パターンとされる。換言すれば、対象CIのCIタイプと、各関係CIのCIタイプとの組み合わせが関係パターンであると言える。但し、当該組み合わせには、関係の方向が含まれる。なお、対象CIと関係を有するCIとは、対象CIと参照元又は参照先とするCIをいう。
続いて、関係パターン生成部113は、生成された関係パターンと一致する関係パターンは、関係パターン記憶部122に未登録であるか否かを判定する(S204)。すなわち、生成された関係パターンが新規の関係パターンであるか、又は既存の関係パターンであるかが判定される。
図12は、関係パターン記憶部の構成例を示す図である。同図において、関係パターン記憶部122は、CIタイプごとに、CIタイプ名と、当該CIタイプに関する一以上の関係パターンの情報(関係パターン情報)とを記憶する。CIタイプ名は、CIタイプの識別名である。関係パターン情報は、パターン名と、当該CIタイプと関係パターンを形成する他のCIタイプ(以下、「関係CIタイプ」という。)ごとの区分及びCIタイプ名とを含む。区分は、当該関係CIタイプが参照元であるか参照先であるかの区別である。
例えば、同図の関係パターン情報Ra及びRbは、図13に示されるような関係パターンに関する関係パターン情報である。
図13は、関係パターンの一例を示す図である。同図において、関係パターンAは、サーバにとって、物理サーバ及びサービスが参照元であり、ソフトウェア(図中では「ソフト」と表記)が参照先である関係パターンである。関係パターンAが示す関係は、図12の関係パターン情報Raによって示されている。
また、図13において、関係パターンBは、サーバにとって、ドメインが参照元であり、パッチ及びソフトウェアが参照先である関係パターンである。関係パターンBが示す関係は、図12の関係パターン情報Rbによって示されている。
ステップS204では、生成された関係パターンの関係パターン情報と一致する関係パターン情報が関係パターン記憶部122に登録されていなければ、生成された関係パターンは未登録(すなわち、新規の関係パターン)であると判定される。生成された関係パターンの関係パターン情報と一致する関係パターン情報が関係パターン記憶部122に登録されていれば、生成された関係パターンは、既存の関係パターンであると判定される。
生成された関係パターンが未登録である場合(S204でYes)、関係パターン生成部113は、対象CIのCIタイプに関して、生成された関係パターンに関する関係パターン情報を関係パターン記憶部122に登録(記録)する(S205)。関係パターン情報の登録に伴って、当該関係パターンのパターン名も決定される。
続いて、関係パターン生成部113は、生成された関係パターンのパターン名又は生成された関係パターンと一致する既存の関係パターンのパターン名(以下、双方を区別しない場合、「対象関係パターン」という。)を対象CIの関係パターン56の値として設定する(S206)。
続いて、関係パターン生成部113は、対象CIの登録元情報55を取得する(S207)。すなわち、対象CIを登録した各MDR21のMDR名と、各MDR21の登録時間とが取得される。続いて、関係パターン生成部113は、取得されたMDR名及び登録時間に基づいて、登録元情報記憶部123の記憶内容を更新する(S208)。
図14は、登録元情報記憶部の構成例を示す図である。同図において、登録元情報記憶部123は、CIタイプごとに、CIタイプ名と、当該CIタイプに関する一以上の関係パターンのそれぞれの統計情報とを記憶する。統計情報とは、当該関係パターンの元となった、CI及びCI間の関係の登録に関する統計情報である。関係パターンの統計情報は、総数と、登録MDRごとの統計情報を含む。
総数は、当該関係パターンに合致するCI間の関係の総数である。すなわち、対象関係パターンが新規の関係パターンである場合、ステップS208では、当該関係パターンに対する統計情報を記憶するためのレコード(行)が、対象CIのCIタイプに対して追加され、当該レコードの総数に「1」が記録される。
一方、対象関係パターンが、既存の関係パターンである場合、ステップS208では、当該関係パターンに対する総数に「1」が加算される。
登録元MDRごとの統計情報は、当該関係パターンの元となったCI間の関係を登録したMDR21(登録元MDR)ごとに、登録MDR名、平均登録時間、及び登録数等を含む。
登録MDR名は、登録元MDRのMDR名である。平均登録時間は、当該登録元MDRが、当該関係パターンに関して当該CIタイプのCIを登録するまでの平均時間である。登録数は、当該登録元MDRが、当該関係パターンに関して当該CIタイプのCIを登録した数である。
すなわち、対象関係パターンが新規の関係パターンである場合、ステップS208では、当該関係パターンに対する統計情報を記憶するために新たに生成されたレコードに対して、ステップS207において取得されたMDR名の個数分のMDR21ごとのレコードが生成される。MDR21ごとのレコードの登録MDR名、平均登録時間対して、ステップS207において取得されたMDR名、登録時間が記録される。更に、当該MDR21ごとのレコードの登録数に対して「1」が記録される。
一方、対象関係パターンが、既存の関係パターンである場合、ステップS208では、当該関係パターンに対する統計情報を記憶するためのレコード内のMDR21ごとのレコードの平均登録時間及び登録数がMDR21ごとに更新される。すなわち、平均登録時間は、ステップS207において取得された値に基づいて更新される。登録数には、1が加算される。平均登録時間についてより詳しく説明すると、既存の平均登録時間に既存の登録数を乗じた値に、ステップS207において取得された値が加算される。加算の結果が、既存の登録数+1によって除された値が新たな平均登録時間とされる。なお、平均登録時間は、同一の実体に対するデータを登録する各MDR21の間における、データの登録のタイミングのずれを示す情報である。すなわち、同一のCIに統合される複数のデータは、必ずしも同時に登録されるとは限らない。各データベース22の運用等に応じて、各MDR22がデータを登録するタイミングは異なりうる。図14においては、当該ずれに関して、平均値が採用されているが、他の統計量が採用されてもよい。例えば、現在までの登録時間の最大値が平均登録時間の代わりに登録元情報記憶部123に記録されるようにしてもよい。
このように、登録元情報記憶部123には、関係パターンの形成の元となったCI及びCI間の関係を登録したMDR21ごとに、当該登録に関する統計情報が記録される。
上記のステップS203〜S208が、ステップS202において抽出された全てのCIに関して実行されると、図11の処理は終了する。
続いて、関係パターン記憶部122及び登録元情報記憶部123等を用いて実行される、CIの整合性の有無のチェック処理の処理手順について説明する。
図15は、整合性チェック処理の処理手順の一例を説明するためのフローチャートである。同図の処理は、関係パターンの生成後にFCMDB121に登録された各CIに関して実行される。実行のタイミングは、CIの登録時が好適である。但し、一定周期等、CIの登録とは非同期のタイミングで実行されてもよい。一定周期等のタイミングで実行される場合、完全状態フラグ57の値がfalseである各CIに関して、図15が繰り返し実行されればよい。なお、同図において処理対象とされる一つのCIを、「対象CI」という。
ステップS301において、整合性判定部114は、対象CIに関するレコードを登録待ちチェックリスト記憶部124より削除する。但し、対象CIが登録待ちチェックリスト記憶部124に登録されていない場合、何も実行されない。後述されるように、図15の処理において、対象CIを登録予定であるMDR21の中で、対象CIをまだ登録していないMDR21が有ることが判明した場合、対象CI及び当該MDR21に関するレコードが登録待ちチェックリスト記憶部124に登録される。したがって、ステップS301では、対象CIに関して図15の処理が前回実行された際に登録されたレコードが登録待ちチェックリスト記憶部124より削除される。
続いて、整合性判定部114は、対象CIのCIタイプと、現時点のFCMDB121内において対象CIと関係を有するCIのCIタイプとの組み合わせを示す関係パターンを生成する(S302)。以下、生成された関係パターンを、「対象関係パターン」という。但し、この時点において、対象関係パターンに関する情報は、関係パターン記憶部122には登録されない。対象関係パターンは、関係パターン記憶部122に登録されている関係パターンと比較対象とされる関係パターンであるからである。
続いて、整合性判定部114は、対象関係パターンと一致する関係パターンが、関係パターン記憶部122(図12)に記憶されているか否かを判定する(S303)。すなわち、整合性判定部114は、対象関係パターンの参照元のCIタイプと参照先のCIタイプとの組み合わせと完全に一致する参照元のCIタイプ及び参照先のCIタイプを含む関係パターンを、関係パターン記憶部122より検索する。
対象関係パターンと完全に一致する関係パターン(以下、「一致パターン」という。)が関係パターン記憶部122に記憶されている場合(S303でYes)、一致パターンのパターン名を対象CIの関係パターン56の値として設定する(S304)。続いて、整合性判定部114は、登録元情報記憶部123より、一致パターンに対して登録されている登録MDR名の一覧と平均登録時間の一覧とを取得する(S305)。
続いて、整合性判定部114は、対象CIを登録予定である全てのMDR21から対象CIの登録が行われているか否かを判定する(S306)。具体的には、整合性判定部114は、ステップS305において取得された登録MDR名の一覧と、対象CIに設定されているMDR名の一覧とを比較し、両者が一致するか否かを判定する。
但し、一致パターンに対して登録されている登録MDR名のうち、以下の式(1)で算出される登録元存在度が閾値(例えば、100%)未満である登録MDR名は、比較の対象から除外されてもよい。
登録元存在度=登録数÷総数 ・・・(1)
ここで、登録数及び総数は、登録元情報記憶部123に記憶されている値である。なお、図14には、各関係パターンの登録MDR名ごとに、登録元存在度の算出結果が示されている。
すなわち、登録元存在度が閾値未満である登録MDR名に係るMDR21は、一致パターンを形成するCIを常に登録するとは限らない、又は一致パターンを形成するCIを登録する可能性は低い。したがって、対象CIに関して、このようなMDR21から登録が行われていることが整合性の認められる条件とされるのは、整合性の判定として妥当性に欠けると考えられるからである。
具体的には、例えば、一致パターンが、図14の関係パターンAであるとすると、MDR214は、比較対象から除外され、MDR211、MDR212、及びMDR213が、対象CIに登録されているか否かが判定される。
また、登録元情報記憶部123に記憶されている、一致パターンの総数が、予め設定された閾値未満である場合は、ステップS306以降は実行されず、図15の処理は終了するようにしてもよい。すなわち、総数が小さいということは、関係パターンの信頼性が確立されていないことを意味する。したがって、信頼性の低い関係パターンに基づいて整合性の有無を判定するのを回避しようという趣旨ある。この場合、対象CIに関する整合性の有無は断定されない。
登録予定である全てのMDR21から対象CIの登録が行われている場合(S306でYes)、すなわち、ステップS305において取得された登録MDR名の一覧と、対象CIに設定されているMDR名の一覧とが一致する場合、ステップS307に進む。ステップS307において、整合性判定部114は、対象CIの完全状態フラグ57に「true」を設定する。すなわち、整合性判定部114は、対象CIの登録状態に関して、完全状態である(整合性が有る状態である)と判定する。この場合、対象CIは、そのままFCMDB121において記憶される。
一方、登録予定であるMDR21のうちの少なくとも一部から対象CIの登録が行われていない場合(S306でNo)、すなわち、ステップS305において取得された登録MDR名の一覧に対して、対象CIに設定されているMDR名の一覧に不足が有る場合、ステップS308に進む。ステップS308において、整合性判定部114は、不足分のMDR21に関して、登録予定時刻を過ぎているものが有るか否かを判定する。登録予定時刻は、不足分のMDR21ごとに、以下の式(2)によって算出される。
登録予定時刻=新規登録時刻+平均登録時間×総数÷登録数 ・・・(2)
新規登録時刻は、対象CIから取得される。平均登録時間、総数、及び登録数は、一致パターンのうちの不足分のMDR21のそれぞれについて、登録元情報記憶部123に記憶されている値である。なお、(総数÷登録数)の項は、登録元存在度に応じて、平均登録時間、すなわち、整合性の有無を確定するまでの待ち時間を短縮させるための項である。対象CIを登録するとは限らないMDR21からの登録を待機する時間を短縮するためである。但し、ステップS306の判定において、登録元存在度が100%未満であるMDR21が比較対象から除外される場合、(総数÷登録数)は、常に「1」となるため、式(2)から除去されてもよい。
不足分のMDR21のうち、登録予定時刻が過ぎているものがある場合(S308でYes)、対象CIのIDを、不整合予備群記憶部125に追加する(S309)。すなわち、不整合が発生する可能性の高いCIが、不整合予備群記憶部125に抽出される。
不足分のMDR21の全てについて登録予定時刻が過ぎていない場合(S308でNo)、不整合判定部は、登録予定時刻と、不足分のMDR21のMDR名と、対象CIのIDとを登録待ちチェックリスト記憶部124に記録する(S310)。すなわち、不整合が発生しているとは限らないが、整合性が有るとも言えないCIが、登録待ちチェックリスト記憶部124に抽出される。したがって、不整合の発生の可能性が検出されたといえる。
図16は、登録待ちチェックリスト記憶部の構成例を示す図である。同図において、登録待ちチェックリスト記憶部124は、図15の処理において対象CIとされたCIごとに、登録予定時刻、登録待ちMDR、当該CIのIDを記憶する。
登録予定時刻は、不足分のMDR21が複数有る場合、登録予定時刻が最も遅いMDR21の登録予定時刻である。換言すれば、登録予定時刻は、不足分のMDR21の登録を待機する期限である。登録待ちMDRは、不足分のMDR21のMDR名の一覧である。
一方、対象関係パターンと一致する関係パターンが関係パターン記憶部122に記憶されていない場合(S303でNo)、不整合判定部は、対象関係パターンをその一部に含む関係パターン(以下、「包括パターン」という。)が、関係パターン記憶部122に記憶されているか否かを判定する(S311)。
図17は、包括パターンの一例を説明するための図である。同図において、関係パターンP1は、対象関係パターンであるとする。対象関係パターンP1は、サーバが参照元であり、ソフトウェアが参照先である関係パターンである。この場合、関係パターンP2及び関係パターンP3は、それぞれ、対象関係パターンP1の包括パターンに該当する。すなわち、関係パターンP2及び関係パターンP3のいずれもが、サーバを参照元とし、ソフトウェアを参照先とする関係を、その一部に含んでいるからである。
なお、包括パターンは、対象CIが完全状態となった際に形成するであろうと予想される関係パターンである。すなわち、ステップS311の判定は、対象CIが現時点で形成している対象関係パターンは、既存の関係パターンの形成途中の形態であるか否かの判定に相当する。各MDR21からのCIの登録は、時間的にずれが有るため、当該ずれと、図15の処理が実行されるタイミングとの関係とによっては、対象CIに関して不整合が発生しているわけではないが、対象CIが完全状態にはなっていない可能性が有る。そこで、対象CIが完全状態に近づきつつあるのかそうでないのかを判定するために、包括パターンの存否が判定されるのである。
対象関係パターンの包括パターンが関係パターン記憶部122に記憶されている場合(S311でYes)、整合性判定部114は、対象CIに対応するレコードを登録待ちチェックリスト記憶部124に記録する(S312)。この際、整合性判定部114は、包括パターンごとに、登録元情報記憶部123に記憶されている平均登録時間が最短のMDR21のMDR名と平均登録時間とを取得する。整合性判定部114は、取得されたMDR名を当該レコードの登録待ちMDRに登録する。整合性判定部114は、また、当該登録待ちMDRのそれぞれの平均登録時間の中で最長の平均登録時間に基づいて、当該レコードの登録予定時刻を算出する。
一方、対象関係パターンの包括パターンが関係パターン記憶部122に記憶されていない場合(S311でNo)、整合性判定部114は、対象関係パターンを新規な関係パターンであると判断し、対象関係パターンに関するレコードを関係パターン記憶部122に記録する(S312)。この際、登録元情報記憶部123の内容も更新される。続いて、整合性判定部114は、対象関係パターンのパターン名を対象CIの関係パターン56の値として設定する(S313)。
このように、本実施の形態では、関係パターンに基づいて、登録予定のMDR21が判定される。ここで、関係パターンに基づいて登録予定のMDR21を判定することの妥当性又は合理性について説明する。
図11により明らかなように、関係パターンは、FCMDB121に登録されたCI及びCI間の関係に基づいて生成される。ここで、CI及びCI間の関係は、各データベース22のデータ及びデータ間の関係が統合されたものである。したがって、関係パターンは、当該関係パターンの形成元となるデータ及びデータ間の関連を記憶するデータベース22の組み合わせを特定可能な情報であるといえる。そして、各MDR21と各データベース22とは一対一に対応する。したがって、関係パターンは、当該関係パターンに合致する関係を形成するCI及びCI間の関係を登録予定であるMDR21の組み合わせを特定可能な情報であるといえる。したがって、FCMDB121に登録されたCIが他のCIとの間に有する関係が、いずれの関係パターンに合致するかを特定することができれば、当該関係パターンに基づいて、当該CIを登録予定の関係パターンを特定することができるといえる。
続いて、登録待ちチェックリスト記憶部124に登録されたCIに関する整合性のチェック処理について説明する。
図18は、登録待ちチェックリストに登録されたCIの整合性のチェック処理の処理手順の一例を説明するためのフローチャートである。例えば、同図の処理は、図15の処理とは非同期に実行される。したがって、図15の処理と並列的に実行されうる。但し、図15の処理が、一定周期等、CIの登録とは非同期のタイミングで実行される場合、図15の処理に続いて、図18の処理が実行されてもよい。
ステップS401において、登録待ち確認部115は、登録待ちチェックリスト記憶部124を監視して、登録予定時刻が経過しているCIの有無を判定する。例えば、登録待ち確認部115は、定期的に登録待ちチェックリスト記憶部124を参照し、その時の時刻(現在時刻)と、登録待ちチェックリスト記憶部124に登録されている各CIの登録予定時刻とを比較して、登録予定時刻が経過したCIの存在を検知する。
該当するCIが存在する場合(S401でYes)、登録待ち確認部115は、当該CIのIDを、不整合予備群記憶部125に追加する(S402)。すなわち、当該CIが登録待ちチェックリスト記憶部124に登録された後、当該CIに関して登録が行われれば、図15の整合性チェック処理が実行される。整合性チェック処理が実行されれば、ステップS301において、当該CIに関するレコードは、登録待ちチェックリスト記憶部124から削除される。そして、当該CIに関して整合性が無いことが再度検知された場合に限って、当該CIのレコードが登録待ちチェックリスト記憶部124に登録される。
それにも拘わらず、当該CIのレコードが、登録待ちチェックリスト記憶部124に登録されており、登録予定時刻が経過しているということは、当該CIを登録予定の少なくとも一部のMDR21が対応するデータベース22において異常が発生している可能性が高いと考えられる。したがって、当該CIは、不整合が発生している可能性の高いCIとして特定され、そのIDが不整合予備群記憶部125に登録される。
続いて、登録待ち確認部115は、当該CIに関するレコードを登録待ちチェックリスト記憶部124より削除する(S403)。
続いて、不整合予備群記憶部125に登録されたCIに関する整合性のチェック処理について説明する。
図19は、不整合予備群記憶部に登録されたCIの整合性のチェック処理の処理手順の一例を説明するためのフローチャートである。同図の処理は、不整合予備群記憶部125にCIが登録されたタイミング、又は一定周期等のタイミングで実行されればよい。一定周期等のタイミングで実行される場合、当該周期内に不整合予備群記憶部125に登録された各CIに関して、図19の処理が実行されればよい。
ステップS501において、不整合予備群確認部116は、不整合予備群記憶部125より一つのIDを取得し、当該IDに対応するCI(の情報)をFCMDB121より取得する。続いて、不整合予備群確認部116は、当該CI(以下、「対象CI」という。)を登録予定のMDR21の中で、対象CIを登録していない一以上のMDR21(以下、「未登録MDR」という。)が対応する各データベース22より、対象CIに対応する各データの取得を試みる(S502)。当該データベース22からのデータの取得は、当該データベース22に対応するMDR21を介して行われる。
なお、対象CIを登録予定のMDR21は、対象CIに設定されている関係パターンに関して、登録元情報記憶部123の登録MDRの項目を参照することによりそのMDR名を特定することができる。また、未登録MDRは、対象CIを登録予定のMDR21のMDR名と、対象CIに設定されているMDR名とを比較することにより特定することができる。
取得が試みられた全てのデータを取得できた場合(S503でYes)、不整合予備群確認部116は、取得された各データに基づくCIをFCMDB121に登録する(S504)。当該CIは、対象CIに統合される。続いて、不整合予備群確認部116は、対象CIのIDを、不整合予備群記憶部125より削除する(S505)。続いて、整合性判定部114は、図15において説明した整合性のチェック処理を対象CIに関して実行する(S506)。対象CIに関して新たに登録が行われたため、登録後の状態における整合性濃有無を判定するためである。
一方、取得が試みられたデータのうちの少なくとも一つを取得できなかった場合(S503でNo)、不整合予備群確認部116は、対象CIに関係パターンのパターン名は設定されているか否かを判定する(S507)。対象CIに、関係パターンのパターン名が設定されていない場合(S507でNo)、不整合予備群確認部116は、対象CIが完全状態であるか否かをユーザに問い合わせる(S508)。例えば、不整合予備群確認部116は、対象CIの各項目(図9参照)に設定されている値を含み、対象CIが完全状態であるか否かの入力を受け付けるためのボタン等を含む画面を表示装置106に表示させる。
すなわち、関係パターンのパターン名が設定されていない状態で不整合予備群記憶部125に登録されているCIは、当該CIの現時点の関係パターンに関して包括パターンが存在し(図15:S311でYes)。登録待ちチェックリスト記憶部124に登録されたCIである(S312)。その後、登録予定時刻の経過により、不整合予備群記憶部125に登録されたCIである。一方、FCMDB121に統合されるデータを記憶するデータベース22群の構成は、ITシステムの構成の変化に応じて変化しうる。その結果、新たな関係パターンが発生する可能性もある。したがって、対象CIの現時点の関係パターンが新たな関係パターンであるかもしれない。そこで、対象CIに関係パターンのパターン名が設定されていない場合には、対象CIの現時点の関係パターンが正当な関係パターンであるか否かについてユーザに判断を委ねようという趣旨である。
対象CIが完全状態であることを示す入力がユーザによって行われた場合(S509でYes)、不整合予備群確認部116は、対象CIのIDを、不整合予備群記憶部125より削除する(S510)。続いて、不整合予備群確認部116は、対象CIの完全状態フラグ57に「true」を設定する(S511)。続いて、不整合予備群確認部116は、対象関係パターンを新規な関係パターンであると判断し、対象関係パターンに関するレコードを関係パターン記憶部122に記録する(S512)。この際、登録元情報記憶部123の内容も更新される。続いて、不整合予備群確認部116は、対象関係パターンのパターン名を対象CIの関係パターン56の値として設定する(S513)。これによって、対象CIは、完全状態のCIとして扱われる。
一方、対象CIに、関係パターンのパターン名が設定されている場合(S507でYes)、不整合予備群確認部116は、対象CIに関して何もしない。この場合は、対象CIの現時点の関係パターンと一致する関係パターンが存在するにも拘わらず、一部のMDR21からの登録が行われていない場合である。したがって、対象CIに関して、不整合が発生している可能性が高い。よって、対象CIのIDは、不整合予備群記憶部125に登録されたままとなる。すなわち、対象CIは、不整合が発生しているCIとして確定される。
図19の処理の終了時点において、不整合予備群記憶部125にIDが記憶されているCIは、不整合の発生している可能性が高いCIとして特定されたものである。当該CIに関しては、その一覧情報が表示装置106に表示されてもよいし、所定のファイルに出力されてもよい。ユーザは、当該一覧情報を参照して、不整合の発生しているCIの存在を確認することができる。
また、例えば、或るCIに不整合の発生が検出された場合(すなわち、図19の処理の終了時点において、不整合予備群記憶部125にIDが記憶されていることが検出された場合)、以降においては、当該CIの不整合の原因となったMDR21からのCIの登録を正当なものとして扱わないようにしてもよい。この場合、当該MDR21又は当該MDR21が対応するデータベース22に異常が発生している可能性が高い。したがって、不整合の検出後に、仮に当該CI又は他のCIに関して当該MDR21からデータの登録要求があったとしても、当該登録要求の内容は正常でない可能性が有るからである。
なお、不整合の原因となってMDR21とは、当該CIを登録予定であるにも拘わらず、登録予定時刻を経過しても登録を行っていないMDR21である。不整合の原因となったMDR21からのCIの登録を正当なものとして扱わないとことの一例としては、当該MDR21からのデータの登録要求を拒否することが挙げられる。また、登録要求は受け付けて、当該データをCIに統合した結果、当該CIが完全状態となったとしても、完全状態フラグを「true」にしないようにしてもよい。
また、各CIタイプの属性情報53(図9参照)の項目ごとに、いずれのMDR21が登録元であるかが管理されてもよい。例えば、図9の例では、属性情報53には、サーバ名、IP Address、CPU等の項目が含まれている。このうち、サーバ名を登録するMDR21のMDR名、IP Addressを登録するMDR21のMDR名、CPUを登録するMDR21のMDR名が管理されてもよい。項目の中には、複数のMDR21から重複して値が登録されるものもある。例えば、サーバ名は、MDR21a、MDR21b、及びMDR21cから登録されることとする。この場合、MDR21bが原因となってCIの不整合が検出された場合、MDR21b又はMDR21bが対応するソフト情報DB21bの復旧時に、当該CIに登録されている情報が用いられてもよい。具体的には、当該CIのサーバ名に関しては、MDR21a及びMDR21cから正しい値が登録されている。したがって、当該値が、MDR21bを介してソフト情報DB21bに登録されてもよい。
なお、上記では、図19の処理の実行後に、不整合の発生しているCIが特定される例を説明したが、図19の処理は実行されずに、不整合予備群記憶部125に登録されたCIが、不整合の発生しているCIとして特定されてもよい。
上述したように、本実施の形態では、整合性の判定対象のCIが他のCIとの間に有する関係に関して、既存の関係パターンと一致しない関係を有するCIについては、登録待ちチェックリスト記憶部124に抽出される。したがって、不整合の可能性を検出することができる。
また、本実施の形態では、整合性の判定対象のCIが他のCIとの間に有する関係に合致する関係パターンを介して、CIを登録予定のMDR21が判定される。その結果、CIタイプのみでは登録予定のMDR21が一義的に定まらないケースに関して、各CIを登録予定のMDR21を判定することができる。
CIタイプのみでは登録予定のMDR21が一義的に定まらないケースとは、同一のCIタイプに属するCIに関して、登録予定のMDR21の組み合わせが2以上あるケースをいう。例えば、構成情報管理装置20a、ソフト情報管理装置20b、及び性能情報管理装置20cは、部署ごとに設置されているとする。この場合、部署Aの「サーバA1」に関するCIは、部署Aの構成情報管理装置20a、ソフト情報管理装置20b、及び性能情報管理装置20cのそれぞれのMDR21によってFCMDB121への登録が実行される。一方、部署Bの「サーバB1」に関するCIは、部署Aの構成情報管理装置20a、ソフト情報管理装置20b、及び性能情報管理装置20cのそれぞれのMDR21によってFCMDB121への登録が実行される。ここで、「サーバA1」に関するCIのCIタイプと、「サーバB1」に関するCIのCIタイプとは、「サーバ」として共通するが、双方のCIの登録元のMDR21は異なる。このように、CIタイプだけでは、登録元のMDR21を特定することはできない。
本実施の形態によれば、例えば、サーバA1に関しては、部署Aの他のサーバに関して既に登録されているCIに基づいて生成されている関係パターンに基づいて、部署Aの構成情報管理装置20a、ソフト情報管理装置20b、及び性能情報管理装置20cのそれぞれのMDR21が登録予定のMDR21であると特定することができる。同様に、サーバB1に関しては、部署Bの他のサーバに関して既に登録されているCIに基づいて生成されている関係パターンに基づいて、部署Bの構成情報管理装置20a、ソフト情報管理装置20b、及び性能情報管理装置20cのそれぞれのMDR21が登録予定のMDR21であると特定することができる。
なお、部署ごとに、構成情報管理装置20a、ソフト情報管理装置20b、及び性能情報管理装置20cが設置されている例は、CIタイプのみでは登録予定のMDR21が一義的に定まらないケースの一例に過ぎない。他の事情によってCIタイプのみでは登録予定のMDR21が一義的に定まらない場合であっても、本実施の形態によれば、同一のCIタイプに係る各CIに関して、登録予定のMDR21を判定することができる。
以上、本発明の実施例について詳述したが、本発明は斯かる特定の実施形態に限定されるものではなく、特許請求の範囲に記載された本発明の要旨の範囲内において、種々の変形・変更が可能である。
以上の説明に関し、更に以下の項を開示する。
(付記1)
コンピュータに、
システムに含まれる構成要素についての複数の種別について、種別同士の依存関係を定める第1の情報を記憶手段に記憶し、
管理対象のシステムに含まれる複数の構成要素同士の依存関係を示す関係情報と、前記複数の構成要素それぞれの種別を示す種別情報と、を格納する複数のデータベースから、前記関係情報及び前記種別情報を取得し、
前記複数の構成要素に含まれるある構成要素と、前記複数の構成要素のうち、取得した前記関係情報に前記ある構成要素との依存関係が示される構成要素群のそれぞれと、についての依存関係を示す第2の情報を生成し、
取得した前記種別情報に基づいて、前記ある構成要素と前記構成要素群のそれぞれとの種別が、生成した前記第2の情報に示される依存関係を有する旨を示す第3の情報を生成し、
生成した前記第3の情報が前記記憶手段に記憶した前記第1の情報と合致するか否かを判定する、
ことを実行させることを特徴とする判定プログラム。
(付記2)
前記種別は、少なくとも前記複数の構成要素に含まれる各構成要素がハードウェアであるかソフトウェアであるかにより異なる、
ことを特徴とする付記1に記載の判定プログラム。
(付記3)
前記複数の構成要素のそれぞれは、ハードウェア、ソフトウェアおよび文書データのいずれかである、
ことを特徴とする付記1又は付記2に記載の判定プログラム。
(付記4)
前記コンピュータに、
前記第3の情報が前記第1の情報に合致しない場合に、さらに、前記ある構成要素を抽出する、
ことを実行させることを特徴とする付記1〜付記3のいずれか1項に記載の判定プログラム。
(付記5)
前記コンピュータに、
前記第3の情報が前記第1の情報に合致しない場合に、さらに、指定された期間経過した後に、前記第3の情報が前記第1の情報に合致するか否かを再判定する、
ことを実行させることを特徴とする付記1〜付記4のいずれか1項に記載の判定プログラム。
(付記6)
前記コンピュータに、さらに、
前記第3の情報が前記第1の情報に合致する場合に、前記複数のデータベースのうち、前記ある構成要素及び前記構成要素群についての前記関係情報及び前記種別情報を格納したデータベースを識別する識別情報を、前記記憶手段に、前記前記第1の情報に関連付けて記憶し、
前記ある構成要素と異なる構成要素と、前記複数の構成要素のうち、取得した前記関係情報に前記異なる構成要素との依存関係が示される他の構成要素群のそれぞれと、についての依存関係を示す第4の情報を生成し、
取得した前記種別情報に基づいて、前記異なる構成要素と前記他の構成要素群のそれぞれとの種別が、生成した前記第4の情報に示される依存関係を有する旨を示す第5の情報を生成し、
生成した前記第5の情報が前記第1の情報と合致する場合に、前記異なる構成要素及び前記他の構成要素群を取得されたデータベースを識別する識別情報と、前記記憶手段に記憶された前記データベースを識別する識別情報とが合致するか否かを判断する、
ことを実行させることを特徴とする付記1〜付記5のいずれか1項に記載の判定プログラム。
(付記7)
前記コンピュータに、
前記記憶手段に、さらに、前記識別情報に関連付けて期限を示す情報を記憶し、
前記異なる構成要素及び前記他の構成要素群を取得されたデータベースを識別する識別情報と、前記記憶手段に記憶された前記識別情報とが合致しない場合に、さらに、前記記憶手段に記憶された前記識別情報のうち、前記前記異なる構成要素及び前記他の構成要素群を取得されたデータベースを識別する情報に含まれない識別情報に関連付けて前記記憶手段に記憶された情報に示される期限を経過した後に、再度前記異なる構成要素及び前記他の構成要素群を取得されたデータベースを識別する識別情報と、前記記憶手段に記憶された前記識別情報と、が合致するか否かを判断する、
ことを実行させることを特徴とする付記1〜付記6のいずれか1項に記載の判定プログラム。
(付記8)
コンピュータに、
システムに含まれる構成要素についての複数の種別について、種別同士の依存関係を定める第1の情報を記憶手段に記憶し、
管理対象のシステムに含まれる複数の構成要素同士の依存関係を示す関係情報と、前記複数の構成要素それぞれの種別を示す種別情報と、を格納する複数のデータベースから、前記関係情報及び前記種別情報を取得し、
前記複数の構成要素に含まれるある構成要素と、前記複数の構成要素のうち、取得した前記関係情報に前記ある構成要素との依存関係が示される構成要素群のそれぞれと、の依存関係を示す第2の情報を生成し、
取得した前記種別情報に基づいて、前記ある構成要素と前記構成要素群のそれぞれとの種別が、生成した前記第2の情報に示される依存関係を有する旨を示す第3の情報を生成し、
生成した前記第3の情報が前記記憶手段に記憶した前記第1の情報と合致するか否かを判定する、
ことを実行させることを特徴とする判定方法。
(付記9)
前記種別は、少なくとも前記複数の構成要素に含まれる各構成要素がハードウェアであるかソフトウェアであるかにより異なる、
ことを特徴とする付記8に記載の判定方法。
(付記10)
前記複数の構成要素のそれぞれは、ハードウェア、ソフトウェアおよび文書データのいずれかである、
ことを特徴とする付記8又は付記9に記載の判定方法。
(付記11)
前記コンピュータに、
前記第3の情報が前記第1の情報に合致しない場合に、さらに、前記ある構成要素を抽出する、
ことを実行させることを特徴とする付記8〜付記10のいずれか1項に記載の判定方法。
(付記12)
前記コンピュータに、
前記第3の情報が前記第1の情報に合致しない場合に、さらに、指定された期間経過した後に、前記第3の情報が前記第1の情報に合致するか否かを再判定する、
ことを実行させることを特徴とする付記8〜付記11のいずれか1項に記載の判定方法。
(付記13)
前記コンピュータに、さらに、
前記第3の情報が前記第1の情報に合致する場合に、前記複数のデータベースのうち、前記ある構成要素及び前記構成要素群についての前記関係情報及び前記種別情報を格納したデータベースを識別する識別情報を、前記記憶手段に、前記前記第1の情報に関連付けて記憶し、
前記ある構成要素と異なる構成要素と、前記複数の構成要素のうち、取得した前記関係情報に前記異なる構成要素との依存関係が示される他の構成要素群のそれぞれと、についての依存関係を示す第4の情報を生成し、
取得した前記種別情報に基づいて、前記異なる構成要素と前記他の構成要素群のそれぞれとの種別が、生成した前記第4の情報に示される依存関係を有する旨を示す第5の情報を生成し、
生成した前記第5の情報が前記第1の情報と合致する場合に、前記異なる構成要素及び前記他の構成要素群を取得されたデータベースを識別する識別情報と、前記記憶手段に記憶された前記データベースを識別する識別情報とが合致するか否かを判断する、
ことを実行させることを特徴とする付記8〜付記12のいずれか1項に記載の判定方法。
(付記14)
前記コンピュータに、
前記記憶手段に、さらに、前記識別情報に関連付けて期限を示す情報を記憶し、
前記異なる構成要素及び前記他の構成要素群を取得されたデータベースを識別する識別情報と、前記記憶手段に記憶された前記識別情報とが合致しない場合に、さらに、前記記憶手段に記憶された前記識別情報のうち、前記前記異なる構成要素及び前記他の構成要素群を取得されたデータベースを識別する情報に含まれない識別情報に関連付けて前記記憶手段に記憶された情報に示される期限を経過した後に、再度前記異なる構成要素及び前記他の構成要素群を取得されたデータベースを識別する識別情報と、前記記憶手段に記憶された前記識別情報と、が合致するか否かを判断する、
ことを実行させることを特徴とする付記8〜付記13のいずれか1項に記載の判定方法。
(付記15)
システムに含まれる構成要素についての複数の種別について、種別同士の依存関係を定める第1の情報を記憶する記憶手段と、
管理対象のシステムに含まれる複数の構成要素同士の依存関係を示す関係情報と、前記複数の構成要素それぞれの種別を示す種別情報と、を格納する複数のデータベースから、前記関係情報及び前記種別情報を取得する取得手段と、
前記複数の構成要素に含まれるある構成要素と、前記複数の構成要素のうち、取得した前記関係情報に前記ある構成要素との依存関係が示される構成要素群のそれぞれと、の依存関係を示す第2の情報を生成する第1の生成手段と、
取得した前記種別情報に基づいて、前記ある構成要素と前記構成要素群のそれぞれとの種別が、生成した前記第2の情報に示される依存関係を有する旨を示す第3の情報を生成する第2の生成手段と、
生成した前記第3の情報が前記記憶手段に記憶した前記第1の情報と合致するか否かを判定する判定手段と、
を含むことを特徴とする判定装置。
(付記16)
前記種別は、少なくとも前記複数の構成要素に含まれる各構成要素がハードウェアであるかソフトウェアであるかにより異なる、
ことを特徴とする付記15に記載の判定装置。
(付記17)
前記複数の構成要素のそれぞれは、ハードウェア、ソフトウェアおよび文書データのいずれかである、
ことを特徴とする付記15又は付記16に記載の判定装置。
(付記18)
前記第3の情報が前記第1の情報に合致しない場合に、さらに、前記ある構成要素を抽出する手段を有することを特徴とする付記15〜付記17のいずれか1項に記載の判定装置。
(付記19)
前記第3の情報が前記第1の情報に合致しない場合に、さらに、指定された期間経過した後に、前記第3の情報が前記第1の情報に合致するか否かを再判定する手段を有することを特徴とする付記15〜付記18のいずれか1項に記載の判定装置。
(付記20)
前記第3の情報が前記第1の情報に合致する場合に、前記複数のデータベースのうち、前記ある構成要素及び前記構成要素群についての前記関係情報及び前記種別情報を格納したデータベースを識別する識別情報を、前記記憶手段に、前記前記第1の情報に関連付けて記憶し、
前記ある構成要素と異なる構成要素と、前記複数の構成要素のうち、取得した前記関係情報に前記異なる構成要素との依存関係が示される他の構成要素群のそれぞれと、についての依存関係を示す第4の情報を生成する手段と、
取得した前記種別情報に基づいて、前記異なる構成要素と前記他の構成要素群のそれぞれとの種別が、生成した前記第4の情報に示される依存関係を有する旨を示す第5の情報を生成する手段と、
生成した前記第5の情報が前記第1の情報と合致する場合に、前記異なる構成要素及び前記他の構成要素群を取得されたデータベースを識別する識別情報と、前記記憶手段に記憶された前記データベースを識別する識別情報とが合致するか否かを判断する手段とを有することを特徴とする付記15〜付記19のいずれか1項に記載の判定装置。
(付記21)
前記記憶手段に、さらに、前記識別情報に関連付けて期限を示す情報を記憶し、
前記異なる構成要素及び前記他の構成要素群を取得されたデータベースを識別する識別情報と、前記記憶手段に記憶された前記識別情報とが合致しない場合に、さらに、前記記憶手段に記憶された前記識別情報のうち、前記前記異なる構成要素及び前記他の構成要素群を取得されたデータベースを識別する情報に含まれない識別情報に関連付けて前記記憶手段に記憶された情報に示される期限を経過した後に、再度前記異なる構成要素及び前記他の構成要素群を取得されたデータベースを識別する識別情報と、前記記憶手段に記憶された前記識別情報と、が合致するか否かを判断する手段を有することを特徴とする付記15〜付記20のいずれか1項に記載の判定装置。