ポリシ型管理装置、方法、及び、プログラム
【課題】 ポリシ記述の適用により、問題が発生することを未然に防ぐことができるポリシ型管理装置を提供する。
【解決手段】 モデル管理器113は、管理対象システム13の状態を表す情報モデルを作成する。命令定義解釈器114は、ポリシ記述の適用条件が成立すると、管理対象システム13に対する作用を情報モデルに対する作用として記述した命令定義記述を情報モデルに対して適用する。モデル検査器115は、検査規則記憶部123を参照し、酩酊定義記述適用後の情報モデルが、検査規則を満たすか否かを判断する。検査規則を満たす場合には、命令実行器116は、ポリシ記述の作用を、管理対象システム13に適用する。
【解決手段】 モデル管理器113は、管理対象システム13の状態を表す情報モデルを作成する。命令定義解釈器114は、ポリシ記述の適用条件が成立すると、管理対象システム13に対する作用を情報モデルに対する作用として記述した命令定義記述を情報モデルに対して適用する。モデル検査器115は、検査規則記憶部123を参照し、酩酊定義記述適用後の情報モデルが、検査規則を満たすか否かを判断する。検査規則を満たす場合には、命令実行器116は、ポリシ記述の作用を、管理対象システム13に適用する。
【発明の詳細な説明】
【技術分野】
【0001】
本発明は、ポリシ型管理装置、方法、及び、プログラムに関し、更に詳しくは、操作等を実行すべき条件とその操作内容とを記述したポリシ記述を用いて、管理対象システムを管理・運用するポリシ型管理装置、方法、及び、プログラムに関する。
【背景技術】
【0002】
システム管理者の知識を、ポリシと呼ぶif-then型のルールとして記述し、それらポリシ記述に従って、管理対象システムを制御するポリシ型管理システムが知られている(例えば、特許文献1、非特許文献1)。ポリシ型管理システムでは、例えば、「あるサービスを提供しているサーバの負荷が高かったら、そのサービスを提供するサーバの台数を増やす。」という内容のポリシ記述があるときには、計測したサーバの負荷が高くなると、サーバの台数を増やすように動作する。ポリシ型管理システムは、従来人手で行っていた作業の一部をシステムによって自動化することにより、管理作業の手間の軽減と、問題発生時の迅速な対応とを実現することができる。
【0003】
図9は、従来の一般的なポリシ型管理システムの構成を示している。この従来のポリシ型管理システムは、ポリシ型管理装置91と、記憶装置92と、管理対象システム93とから構成される。ポリシ型管理装置91は、イベント処理器911、監視器912、モデル管理器913、及び、命令実行器914を備える。管理対象システム93は、ポリシ型管理システム90により管理される、複数台のコンピュータと、記憶装置と、それらを接続するネットワーク機器とを含む分散システムである。
【0004】
記憶装置92は、ポリシ記述を記憶するポリシ記憶部921と、管理対象システム93の各種情報を記憶するモデル記憶部922とを有する。図10は、ポリシ記述の一例を示している。ポリシ記述71は、ポリシ型管理システム内で重複することがない一意に定まる識別子と、どのような場合に当該ポリシを実行すべきかを示す条件節と、管理対象システム93に対してどのような操作を行うかを記した命令節とから構成される(ポリシ記述については、非特許文献3を参照)。ポリシ記憶部921は、複数のポリシ記述を、図11に示すようなポリシ表711として記憶する。
【0005】
モデル管理器913は、管理対象システム93の各種情報を取得し、取得した各種情報を、共通情報モデルとして、モデル記憶部922に格納する。共通情報モデルとは、管理対象システムを構成する各種機器の製造メーカ特有の情報を捨象し、メーカに依存しない共通部分を抽出したものである(共通情報モデルについては、非特許文献2を参照)。
【0006】
図12及び図13は、それぞれ、モデル記憶部922に格納される共通情報モデルの一例を示している。オブジェクトモデル731(図12)は、管理対象を表すデータ構造と手続きであり、関連モデル732(図13)は、管理対象間の関連を表すデータ構造である。関連モデル732は、内部にオブジェクトモデル731の識別子を2つ以上持ち、それらのオブジェクトモデル731が、関連モデル732が持つ名前で表現される関連を持つことを示す。モデル記憶部922には、管理対象システム93の状態を反映したデータが、オブジェクトモデル731や関連モデル732のデータ構造で、複数保存される。
【0007】
監視器912は、モデル管理器913から、管理対象システム93の状態を表すモデル情報を取得し、特定の条件が満たされると、イベント処理器911に、イベントの発行を通知する。イベント発行の条件は、あらかじめ人手で設定されている。イベントの一例を図14に示す。イベント72は、イベント名を示す名前と、イベント発生条件のパラメータの集合とから構成される。パラメータの一例を図15に示す。パラメータ79は、名前と値のペアである。イベント72に含まれるパラメータは、故障の箇所などを示す情報や、モデル記憶部922から取得したデータのうちでイベントに関連する特定の観測データなどを含む。
【0008】
イベント処理器911は、監視器912からイベント発行を受け取ると、ポリシ記憶部921を参照してポリシ表(図11)を取得し、イベントの発行により実行する必要があるポリシ記述が存在するか否かを検査する。イベント処理器911は、実行する必要があるポリシ記述を命令実行器914に受け渡し、命令実行器914は、受け取ったポリシ記述71に含まれる命令節に記述された操作を、管理対象システム93に対して実行する。このように、従来のポリシ管理システムは、管理対象システム93を監視して、ポリシ記述71に記述された条件が満たされたときに、当該ポリシ記述71の命令節に記述された操作を実行することにより、管理の自動化を実現する。
【0009】
【特許文献1】特開2002−111729号公報
【非特許文献1】エヌ・ダミノウ(N. Damianou)、他著、ザ ポンダー ポリシー スペシフィケーションランゲージ(The PONDER Policy Specification Language)、エル・エヌ・シー・エス1995(LNCS1995)、2001年、pp.18−39
【非特許文献2】“シー・アイ・エム コア モデル ホワイトペーパー(CIM Core Model White Paper)ver2.4”2000年8月30日[online][平成17年3月8日検索]、ディストリビューティッド・マネージメント・タスクフォース(Distributed Management Task Force)、インターネット<URL http://www.dmtf.org/standards/documents/CIM/DSP0111.pdf>
【非特許文献3】ビー・ムーア(B. Moore)、他著、ポリシ・コア・インフォメーション・モデル(Policy Core Information Model)、アールエフシー3060(RFC3060)、インターネット・エンジニアリング・タスクフォース(Internet Engineering Task Force)、2001年
【発明の開示】
【発明が解決しようとする課題】
【0010】
上記従来のポリシ型管理システムでは、ポリシが管理対象システムに与える作用により発生する問題を事前に検査する手段については特に考慮されていない。このため、管理対象システム93に対してポリシ記述71の命令節で定義された操作を実行することによって管理対象システム93に問題が発生する可能性があるか否かを、ポリシを実行する前に判定し、問題発生を未然に防止することができないという問題がある。
【0011】
特定のポリシの作用が管理対象システムに対して問題を引き起こす可能性があるか否かを精密に判定するためには、当該ポリシ記述71の命令節に記述された操作を適用する時点における管理対象システム93の状態を対象に検査を行うことが好ましい。仮に、従来のポリシ型管理システムと、ソフトウェア開発において一般に利用されるサンプルの値を用いて検査を行うテスト方式とを組み合わせた方式を利用したとしても、判定の精度の点で問題がある。
【0012】
本発明は、上記従来技術の問題点を解消し、管理対象システムに対して、ポリシ記述の命令節で定義された操作を実行することによって、管理対象システムに問題が発生する可能性があるか否かを、その命令節を実際に実行する前に判定し、問題発生を未然に防ぐことができるポリシ型管理装置、方法、及び、プログラムを提供することを目的とする。
【課題を解決するための手段】
【0013】
上記目的を達成するために、本発明のポリシ型管理装置は、管理対象の情報システムから状態情報を取得し、該取得した状態情報に基づいて、管理対象システムの状態を示す情報モデルを作成し、記憶装置に記憶するモデル管理部と、適用条件、管理対象の情報システムに対する作用、及び、該作用を前記情報モデルに対する作用として記述した命令定義記述を含むポリシ記述を記憶する記憶装置を参照し、前記管理対象の情報システムの状態に基づいて、前記ポリシ記述の適用条件が成立するか否かを判断し、前記適用条件が成立するポリシ記述を抽出するイベント処理部と、前記抽出されたポリシ記述について、前記記憶装置に記憶された情報モデルに対して命令定義記述を適用し、ポリシ記述適用後の情報モデルを作成して記憶装置に記憶する命令定義解釈部と、前記情報モデルにおいて満たされるべき条件を記述した検査規則を記憶する記憶装置を参照し、前記記憶されたポリシ記述適用後の情報モデルが、前記検査規則を満たすか否かを判断するモデル検査部と、前記モデル検査部で前記検査規則を満たすと判断されたポリシ記述について、該ポリシ記述の作用を、管理対象の情報システムに対して適用する命令実行部とを備えたことを特徴とする。
【0014】
本発明のポリシ型管理方法は、コンピュータを用いて、管理対象の情報システムを管理する方法であって、前記コンピュータが、管理対象の情報システムから状態情報を取得し、該取得した状態情報に基づいて、管理対象システムの状態を示す情報モデルを作成し、記憶装置に記憶するステップと、前記コンピュータが、適用条件、管理対象の情報システムに対する作用、及び、該作用を前記情報モデルに対する作用として記述した命令定義記述を含むポリシ記述を記憶する記憶装置を参照し、前記管理対象の情報システムの状態に基づいて、前記ポリシ記述の適用条件が成立するか否かを判断し、前記適用条件が成立するポリシ記述を抽出するステップと、前記コンピュータが、前記抽出されたポリシ記述について、前記記憶装置に記憶された情報モデルに対して命令定義記述を適用し、ポリシ記述適用後の情報モデルを作成して記憶装置に記憶するステップと、前記コンピュータが、前記情報モデルにおいて満たされるべき条件を記述した検査規則を記憶する記憶装置を参照し、前記記憶されたポリシ記述適用後の情報モデルが、前記検査規則を満たすか否かを判断するステップと、前記コンピュータが、前記モデル検査部で前記検査規則を満たすと判断されたポリシ記述について、該ポリシ記述の作用を、管理対象の情報システムに対して適用するステップとを含むことを特徴とする。
【0015】
本発明のプログラムは、管理対象の情報システムを管理するコンピュータのためのプログラムであって、前記コンピュータに、管理対象の情報システムから状態情報を取得し、該取得した状態情報に基づいて、管理対象システムの状態を示す情報モデルを作成し、記憶装置に記憶する処理と、適用条件、管理対象の情報システムに対する作用、及び、該作用を前記情報モデルに対する作用として記述した命令定義記述を含むポリシ記述を記憶する記憶装置を参照し、前記管理対象の情報システムの状態に基づいて、前記ポリシ記述の適用条件が成立するか否かを判断し、前記適用条件が成立するポリシ記述を抽出する処理と、前記抽出されたポリシ記述について、前記記憶装置に記憶された情報モデルに対して命令定義記述を適用し、ポリシ記述適用後の情報モデルを作成して記憶装置に記憶する処理と、前記情報モデルにおいて満たされるべき条件を記述した検査規則を記憶する記憶装置を参照し、前記記憶されたポリシ記述適用後の情報モデルが、前記検査規則を満たすか否かを判断する処理と、前記モデル検査部で前記検査規則を満たすと判断されたポリシ記述について、該ポリシ記述の作用を、管理対象の情報システムに対して適用する処理とを実行させることを特徴とする。
【0016】
本発明のポリシ型管理装置、方法、及び、プログラムでは、ポリシ記述の作用を管理対称の情報システムに適用する前に、管理対象の情報システムの状態を表す情報モデルに、ポリシ記述の作用を管理対象の情報システムに与える作用を情報モデルへの作用として表現した命令定義を適用して、命令定義適用後の情報システムが、管理対象の情報システムの情報モデルにおいて守られるべき条件を表す検査規則を満たすか否かを判断し、検査規則が満たされるときには、管理対象の情報システムにポリシ記述の作用を適用する。このようにすることで、検査規則を満たさない、すなわち問題を起こす可能性があるポリシ記述の管理対象の情報システムへの適用を中止することができ、問題発生を未然に回避することができる。
【0017】
本発明のポリシ型管理装置、方法、及び、プログラムは、前記ポリシ記述と前記検査規則とを対応付けて記憶し該ポリシ記述には前記検査規則を適用しない旨を例外規則として記憶する記憶装置を参照し、前記情報モデルに適用した命令定義記述を有するポリシ記述に対応する検査規則を除いた検査規則を用いて、前記ポリシ記述適用後の情報モデルが、検査規則を満たすか否かを判断する構成を採用できる。この場合、特定のポリシ記述について、実際には問題がない場合にも検査規則によって問題があると判定される誤検出を防ぐことができる。
【0018】
本発明のポリシ型管理装置、方法、及び、プログラムは、前記モデル検査部は、更に、前記ポリシ記述適用後の情報モデルが前記検査規則を満たさないときには、該検査規則違反を無視すべきか否かの入力を求め、無視すべき旨が入力されると、当該検査規則違反は発生しなかったものとみなし、前記情報モデルに適用した命令定義記述を有するポリシ記述と前記無視すべき検査規則違反が発生した検査規則とを対応付けて、前記例外規則として記憶装置に記憶する構成を採用できる。この場合、無視すべきと入力された検査規則違反については、検査規則違反が発生していないとみなすことで、管理対象の情報システムにポリシ記述の作用を適用することができる。また、記憶装置に、例外規則として記憶することで、そのポリシ記述と検査規則の組み合わせについては、次回から、検査規則を満たすか否かの検査から除外することができ、誤検出の発生を防ぐことができる。
【発明の効果】
【0019】
本発明のポリシ型管理装置、方法、及び、プログラムでは、管理対象の情報システムの状態を表す情報モデルを作成し、作成した情報モデル対して、管理対象の情報システムに与える作用を情報モデルへの作用として表現した命令定義を適用し、命令定義適用後の情報システムが、管理対象の情報システムの情報モデルにおいて守られるべき条件を表す検査規則を満たすか否かを判断する。検査規則が満たされるときには、管理対象の情報システムにポリシ記述の作用を適用する。このようにすることで、実際に、管理対象の情報システムに対してポリシ記述の作用を適用する前に、ポリシ記述の作用の適用によって、管理対象の情報システムに問題が発生するか否かを判断することができ、検査規則を満たさない、すなわち問題を起こす可能性があるポリシ記述の作用を、管理対象の情報システムに適用しないことで、問題発生を未然に回避することができる。
【発明を実施するための最良の形態】
【0020】
以下、図面を参照し、本発明の実施の形態を詳細に説明する。図1は、本発明の第1実施形態のポリシ型管理システムの構成を示している。ポリシ型管理システム10は、ポリシ型管理装置11と、記憶装置12と、管理対象システム13と、出力装置14とを有する。管理対象システム13は、複数台のコンピュータと、記憶装置と、それらを接続するネットワーク機器とを含む分散システムである。出力装置14は、ディスプレイ装置や印刷装置等の表示装置として構成される。
【0021】
記憶装置12は、ポリシ記憶部121と、モデル記憶部122と、検査規則記憶部123とを有する。ポリシ記憶部121は、管理対象システム13を管理するための方法を記したポリシ記述を記憶する。モデル記憶部122は、管理対象システム13の状態を反映させた情報モデルのデータを記憶する。モデル記憶部122は、管理対象システム13の状態を反映した情報モデルを検査するための規則を記した検査規則を記憶する。
【0022】
ポリシ型管理装置11は、管理対象システム13を、ポリシ記述に基づいて、管理運用する。ポリシ型管理装置11は、イベント処理器111と、監視器112と、モデル管理器113と、命令定義解釈器114と、モデル検査器115と、命令実行器116とを有する。モデル管理器113は、管理対象システム13に対応付けられた情報モデルを管理する。監視器112は、管理対象システム13の各機器の状態を、モデル管理器113を用いて監視する。イベント処理器111は、ポリシ記憶部121からポリシ記述を取得し、当該ポリシ記述の条件節を解釈し、必要に応じてポリシ記述を命令定義解釈器114に送信する。
【0023】
命令定義解釈器114は、モデル管理器113から、管理対象システム13の現在の状態を反映した情報モデルを取得し、イベント処理器111より送信されたポリシ記述の作用を当該情報モデルに反映させ、当該ポリシ記述の作用適用後の情報モデルを生成する。モデル検査器115は、検査規則記憶部123を参照して、命令定義解釈器114によって新たに生成された情報モデルに問題があるか否かを検査する。命令実行器116は、モデル検査器115により問題ないと判定された場合に、ポリシ記述の作用を、管理対象システム13に対して適用する。
【0024】
モデル管理器113によって作成され、モデル記憶部122に記憶される情報モデルのデータ構造は、図12及び図13に示すデータ構造とすることができる。オブジェクトモデル731(図12)は、管理対象システム13の対象物を表現するために利用される。オブジェクトモデル731は、情報モデル内で一意に定まる識別子と、その管理対象物の名称と、管理対象物の情報帯を示すパラメータの集合と、管理対象に対して作用を与えるための手続きとを含む。
【0025】
例えば、管理対象システム13に含まれる計算機のオペレーティングシステムを1つの管理対象物として取り扱う場合には、オブジェクトモデルに識別子を付与して、名前を「オペレーティングシステム」とする。このオブジェクトモデルにおけるパラメータの集合には、現在のオペレーティングシステムの平均負荷状況を示すLoadAveragePercentageという名前のパラメータや、オペレーティングシステムの種別を示すOSTypteという名前のパラメータなどが含まれる。また、このオブジェクトモデルにおける手続きには、オペレーティングシステムを再起動させるrebootなどが含まれる。
【0026】
関連モデル732(図13)は、管理対象物の間の関連を表現するために用いられる。関連モデル732は、オブジェクトモデル731の具体的なデータインスタンスを示す識別子を2つ以上内部に保存することにより、オブジェクト間の関係を表現する。このような情報モデルとしては、CIM(Common Information Base)を用いることができる。
【0027】
図2は、ポリシ記憶部121に記憶されるポリシ記述のデータ構造を示している。ポリシ記述61は、識別子と、条件節と、命令節と、命令定義とを有する。本実施形態におけるポリシ記述61と、従来のポリシ管理装置におけるポリシ記述71(図10)とを比較すると、ポリシ記述61は、命令定義を含む点で、従来のポリシ記述71と相違する。命令定義は、当該ポリシが管理システムに与える作用を、情報モデルへの作用として明示的に表現したものである。具体的には、外部より与えられた情報モデルへのオブジェクトモデル731と関連モデル732とのデータインスタンスの新規追加、与えられた情報モデル内の特定データインスタンスの値の変更又は削除などの手続きを表現したスクリプトである。
【0028】
命令定義では、命令定義を記述する際には決定されていない具体的な管理対象を指定する識別子やパラメータなどは、変数として記述されており、命令定義の引数として外部から与えられるように定義する。これにより、実行時の情報を用いて、情報モデルにどのような変更を加えるかを記述できる。このような命令定義をポリシ記述に含めることにより、当該ポリシ記述の命令節に定義された作用を、実際に管理対象システム13に適用する前に、当該ポリシ記述の命令定義を参考にして、管理対象システム13の状態を反映した情報モデルに、命令節に定義された作用を模擬した変更を加えることが可能となり、当該ポリシの作用を与えたときの変更を、情報モデルを用いて検査することにより、問題が発生する可能性があるポリシの適用を、未然に防止できる。
【0029】
図3は、検査規則記憶部123に記憶される検査規則のデータ構造の一例を示している。検査規則は、命令定義解釈器114により生成された、ポリシ記述の命令定義で指定された作用を与えた後の情報モデルを対象に、作用を実際に管理対象システム13に適用して問題がないかを検査するための、具体的な規則を表現したデータである。検査規則のデータ構造や検査方法には、特願2003−286850に記載されたソフトウェアのルール検査システムの手法と類似したものを利用することができる。
【0030】
検査規則62は、情報モデルの中から条件を満たすべき部分を指定するための対象指定部と、論理演算子で接続された述語の列からなる述語論理式とを含む。対象指定部は、情報モデルの中から特定の性質を満たす集合を算出する関数と、その集合に属することを示す変数とからなる。例として、情報モデルとしてCIMを利用し、対象指定部に、「instances = instanceOf(“CIM_SoftwareElement”)」と記述されている場合について説明する。ここで、“instances”は変数であり、“insntanceOf”は集合を求める関数、“CIM_SoftwareElement”は関数“instanceOf”に与えられる引数である。
【0031】
関数“instanceOf”が、引数で指定されたクラス(“CIM_SoftwareElement”)、及び、当該クラスを継承した全てのクラスに属する全てのインスタンスを返す関数であるとすると、“instances”には、情報モデルに含まれる前記条件を満たした集合が束縛される。この変数instancesは、検査規則62の述語論理式において使用される。対象指定部の式は、集合を求める関数と変数の他に、"∪","∩"などの和集合や積集合を計算する集合演算子を含めることもできる。また、対象指定部の式は、集合を求める関数と変数と集合演算子の他に、述語論理で利用される"∀"や"∃"などの限量子を含めることもできる。
【0032】
述語論理式(図3)は、モデル検査器115に含まれる解析機能に対応した述語と論理演算子によって構成される。例として、「compStrAttr (“Name”, “openssl”, i) -> !isOlderVersionThan(“3.2.2”, i)」という論理式を考える。述語compStrAttrは、第3引数の変数iで示される管理対象の情報モデルが、第1引数で指定された名前を持つパラメータ、すなわち上記の例では“Name”を含み、当該パラメータの名前に対応した値が2番目の引数で指定された文字列、すなわち上記の例では“openssl”と等しいことを宣言した述語である。この述語が成立するか否かを検査する機能は、あらかじめモデル検査器115に組み込まれている。
【0033】
述語isOlderVersionThanは、第2引数(変数i)で指定された変数で示される管理対象の情報モデルに、バージョンを示すパラメータが存在し、かつ当該パラメータのバージョンが第1引数(3.2.2)より古いバージョン番号であることを示す述語である。この述語isOlderVersionThanが成立するか否かを検査する機能についても、あらかじめモデル検査器115に組み込まれている。
【0034】
上記の2つの述語は、論理演算子“->”により結合されており、かつ、isOlderVersionThanの前には論理演算子“!”がついているため、「compStrAttrが真であるならばisOlderVersionThanは偽である」と解釈される。すなわち、opensslという名前を持った管理対象の情報モデルデータに含まれるバージョン番号に相当する値が3.2.2以上であることを宣言している。なお、変数iは、当該述語論理に対応する対象指定部(図3)において管理対象の集合の要素に束縛されているものとする。
【0035】
なお、検査規則は、ポリシ記述に埋め込むこともできる。図4は、検査規則を有するポリシ記述のデータ構造を示す。このポリシ記述61bは、図2に示すポリシ記述61に加えて、検査規則を有する。このような検査規則を有するポリシ記述61bの検査では、モデル検査器115は、検査規則記憶部123に記憶された検査規則だけでなく、ポリシ記述61bに含まれる検査規則を用いて検査を行う。これにより、特定のポリシ記述に特有の検査条件をモデル検査器115において検査することができる。
【0036】
ポリシに特有の検査規則とは、例えば、ポリシ記述の命令節に示された作用を管理対象システム13に与えた後に、管理対象システム13において満たされていなければならない後条件と呼ばれる条件が満たされるか否かを検査するための規則である。後条件を記述するためには、作用適用前と適用後の違いが明らかになっていることが好ましいため、ポリシ記述61bを適用しようとする場合は、命令定義解釈器114は、ポリシ記述61bの命令定義に記された作用を与える前の情報モデルと、与えた後の情報モデルの2つのデータをモデル検査器115に渡すことが好ましい。これにより、モデル検査器115は、作用の前後の差異に関する条件を検査できる。
【0037】
図5は、ポリシ型管理システム10の動作手順を示している。ポリシ型管理システム10の運用に当たって、前処理として、ポリシ型管理装置11の処理に必要なデータであるポリシ記述一式をポリシ記憶部121に記憶し、検査規則一式を検査規則記憶部123に記憶する(ステップA10)。監視器112は、所定のタイミングで、モデル管理器113に情報モデルデータを要求し、モデル管理器113から、オブジェクトモデル731(図12)のデータインスタンスと、関連モデル732(図13)のデータインスタンスとの集合を取得して、管理対象システム13を監視する(ステップA20)。
【0038】
モデル管理器113は、所定時間間隔で、或いは、監視器112から情報モデルデータの取得要求を受け取ると、管理対象システム13から情報を取得して、モデル記憶部122に記憶された情報モデルデータを更新する。例えば、CIMを情報モデルとして利用する場合、モデル管理器113には、情報モデルを管理するCIMOM(CIM Object Manager)と呼ばれるシステムを用いることができる。モデル管理器113は、ステップA20では、モデル記憶部122に記憶された情報モデルデータから、オブジェクトモデル731のデータインスタンスと、関連モデル732のデータインスタンスの集合とを取得して、これを監視器112に受け渡す。
【0039】
監視器112は、モデル管理器113から取得したデータインスタンスの集合を解析し、あらかじめ定められた条件が整うと、イベントを発行する(ステップA30)。監視器112には、例えば「単位時間当たりのCPU平均負荷が90%以上」で発行される“CPU_OverLoad”という名前のイベントが定義されており、モデル管理器113から取得したCPU平均負荷が90%以上であることを検出すると、その“CPU_OverLoad”のイベントを発行する。
【0040】
監視器112が発行したイベントは、イベント処理器111によって受信される。イベント処理器111は、イベントの発行を受信すると、ポリシ記憶部121から全てのポリシ記述を取り出し、その条件節に示された条件が、当該イベントの発行により満たされるか否かを検査する(ステップA40)。イベント処理器111は、条件節の条件が満たされるポリシ記述のリストを作成し、そのリストに含まれるポリシ記述を1つずつ命令定義解釈器114に送信する。イベント処理器111は、リストに含まれるポリシ記述を全て命令定義解釈器114に送信したか否かを調べ(ステップA50)、全て送信したときには、ステップA20に戻って、管理対象システム13の監視を継続する。
【0041】
ポリシ記述の条件節には、例えば“CPU_OverLoad”イベントの発行が、ポリシ記述を適用する際の条件として記述されている。また、イベントに加えて、例えば「負荷が高いサーバのCPUが特定のCPUであれば」、などの、具体的な内部の情報(パラメータ)に関する条件がされることもある。イベント処理器111は、ポリシ記述に、発行されたイベントが適用条件として記述されており、かつ、その他のパラメータが条件節で示される条件に合致する場合には、ステップA40で、ポリシ記述の条件節に示された条件が、当該イベントの発行により満たされると判断し、当該ポリシ記述を命令定義解釈器114に送信する。
【0042】
命令定義解釈器114は、イベント処理器111からポリシ記述を受信すると、モデル管理器113から情報モデルのデータを取得し、受信したポリシ記述の命令定義に示された作用を当該情報モデルに対して適用し、適用後の情報モデルのデータを生成する(ステップA60)。命令定義解釈器114は、生成したポリシ適用後の情報モデルのデータと、当該ポリシ記述とを、モデル検査器115に送信する。このとき、命令定義解釈器114は、ポリシ記述が検査規則を含むポリシ記述61b(図4)であるときには、生成した情報モデルデータ及びポリシ記述に加えて、命令定義の作用を与える前の情報モデルデータをモデル検査器115に送信する。
【0043】
モデル検査器115は、命令定義解釈器114から情報モデルデータとポリシ記述とを受信すると、検査規則記憶部123から検査規則を全て取り出して受信した情報モデルデータを検査し(ステップA70)、全ての検査規則を満たしているか否かを調べる(ステップA80)。モデル検査器115は、受信した情報モデルデータが何れかの検査規則に違反しているときには、出力装置14にエラー出力を送信し(ステップA100)、システム管理者などにエラーが起きた旨を報告する。エラー出力後、ステップA50に戻って、残りのポリシ記述についての処理を継続する。
【0044】
モデル検査器115は、ステップA80で、当該情報モデルが全ての規則を満たすと判断すると、命令定義解釈器114から受信したポリシ記述を命令実行器116に送信する。命令実行器116は、ポリシ記述を受信すると、当該ポリシ記述の命令節に定義された作用を、管理対象システム13に対して適用する(ステップA90)。その後、ステップA50に戻り、残りのポリシ記述についての処理を継続する。
【0045】
図6は、図5のステップA60〜A80の動作の詳細な手順を示している。命令定義解釈器114は、イベント処理器111から、条件節の条件が満たされたポリシ記述を受信する。このとき、命令定義解釈器114は、イベント発生のパラメータの集合を、ポリシ記述と共にイベント処理器111から受信してもよい。命令定義解釈器114は、ポリシ記述を受信すると、モデル管理器113から、情報モデルデータを取得する(ステップB10)。このとき、命令定義解釈器114は、当該ポリシ記述の命令節が作用を与える可能性がある対象をあらかじめ算出することにより、全情報モデルデータのうち、必要な部分の情報モデルデータだけを取得することが好ましい。
【0046】
命令定義解釈器114は、情報モデルデータを取得すると、受信したポリシ記述の命令定義に示された作用を、取得した情報モデルに対して適用する(ステップB20)。命令定義解釈器114は、命令定義の適用に成功し、適用後の新たな情報モデルが得られると、その新たな情報モデルデータと、ポリシ記述とをモデル検査器115に送信する。一方、命令定義解釈器114は、命令定義の記述文法が、命令定義解釈器114によって解釈可能な文法と異なっている、或いは、命令定義を情報モデルに適用する際に問題が発生したなどの理由により、命令定義の適用に失敗したときには、空の情報モデルデータを、モデル検査器115に送信する。
【0047】
モデル検査器115は、受信した情報モデルデータに基づいて、命令定義解釈器114において、命令定義を正常に適用できたか否かを判断する(ステップB30)。モデル検査器115は、受信した情報モデルデータが空であったときには、ステップA100(図5)に進み、出力装置14に、命令定義が正しく適用できなかった旨を示す文字列を送信して、システム管理者等にその旨を通知する。モデル検査器115は、受信した情報モデルデータが空でないときには、命令定義を正常に適用できたと判断し、検査規則記憶部123から検査規則を取得する(ステップB40)。モデル検査器115は、取得した検査規則が、受信した情報モデル上で守られているか否かを検査する(ステップB50)。
【0048】
検査規則記憶部123には、適用したポリシ記述の作用によって変化することがない性質の検査を行う検査規則も含まれており、このような検査規則については、ステップB50の検査の対象とする必要がない。例えば、ポリシ記述の作用がネットワーク構成に作用する性質のものである場合には、ソフトウェアのバージョンを検査するような検査規則については検査する必要がない。そこで、ポリシ記述と、そのポリシ記述の作用に関連した検査規則とを関連付けた表をあらかじめ用意しておき、ステップB40では、適用したポリシ記述に対応した検査規則のみを取得する。このようにすることで、ステップB50で、当該ポリシ記述の作用により変化することがない性質の検査を除外することができる。
【0049】
モデル検査器115は、ステップB50の検査の結果、規則違反が発生しているか否かを判断する(ステップB60)。例えば、検査規則として、正しくない状態ないし不正な状態を示す条件を記述したものを利用する場合、モデル検査器115は、ポリシ記述の作用を適用した後の情報モデルが、検査規則で示された不正な状態の条件を満たすときには、規則違反が発生していると判断する。モデル検査器115は、検査の結果、規則違反が発生した、つまり、情報モデルに問題がある場合には、ステップA100に進み、ポリシ記述の適用に問題がある旨を示す文字列を出力装置14に出力する。規則違反がない場合には、ステップA90に進んで、命令実行器116に、ポリシ記述を送信する。
【0050】
本実施形態では、ポリシ記述には、命令定義が含まれており、ポリシ型管理装置11は、ポリシを管理対象システム13に適用するのに先立って、管理対象システム13の現在の状態を示す情報モデルに対して、命令定義を適用する。その後、検査規則を用い、命令定義の適用後の情報モデルにおいて、規則違反が発生しているか否かを検査する。このように、本実施形態では、実際にポリシの作用を管理対象システム13に適用する前に、情報モデルを用いて問題があるか否かを検査しているため、管理対象システム13に問題を発生させる可能性があるポリシ記述の適用を、未然に防ぐことができる。
【0051】
図7は、本発明の第2実施形態のポリシ型管理システムの構成を示している。本実施形態のポリシ型管理システム10aは、記憶装置12aが、適用除外の検査規則を記憶する例外記憶部124を更に有する点で、図1に示す第1実施形態のポリシ型管理システム10と相違する。第1実施形態のポリシ型管理システム10において、検査規則を画一的に適用すると、特定のポリシ記述については、実際には問題がない場合にも、規則により問題があると判定される誤検出が発生する場合がある。本実施形態は、このような誤検出問題に対応する。
【0052】
例外記憶部124は、適用除外とすべき、ポリシ記述の識別子と検査規則の識別子との組み合わせを記憶する。モデル検査器115は、ステップB40(図6)で、検査規則記憶部123から検査規則を取得する際に、例外記憶部124を参照して、命令定義解釈器114から受信したポリシ記述と対応付けられた検査規則があるか否かを調査する。モデル検査器115は、当該ポリシ記述と対応付けられた検査規則が存在する場合には、その検査規則を、ステップB40で、検査規則記憶部123から取得する検査規則から除外する。
【0053】
モデル検査器115は、取得した検査規則に基づいて、情報モデルデータを検査する。モデル検査器115は、情報モデルデータが、何れかの検査規則に違反すると判断すると、違反が発生した各検査規則とポリシ記述とを、出力装置14に出力し、管理者に対して、その違反を無視するか否かを入力するように要求する。管理者は、出力装置14に表示されたポリシ記述と違反が発生した検査規則とを見て、キーボードやマウスなどの入力装置15を用い、違反が発生した検査規則のそれぞれについて、違反を無視して、当該ポリシ記述を適用すべきか否かを入力する。
【0054】
入力装置15より、違反を無視して当該ポリシ記述を適用すべきである旨が入力されると、モデル検査器115は、当該ポリシ記述の識別子と、違反が発生したものの無視すべき検査規則の識別子とを対応付けて、例外記憶部124に記憶する。また、発生した検査規則違反を無視して、命令実行器116に、当該ポリシ記述を送信する。これにより、特定のポリシ記述については、特定の検査規則が適用されず、適用しようとするポリシ記述が、その特定の検査規則以外の検査規則に違反しない場合には、命令実行器116にポリシ記述が送信され、管理対象システム13に対して、ポリシ記述の作用が適用される。
【0055】
本実施形態では、ポリシ記述の作用により、情報モデルデータが検査規則違反を起こした場合には、管理者により、その違反を無視するか否かを入力させる。管理者により、違反を無視する旨が入力されたときには、モデル検査器115は、違反がなかったものとしてポリシ記述を命令実行器116に送信すると共に、以後、同様の検査規則違反を検出しないように、無視すべき検査規則とポリシ記述との組み合わせを例外記憶部124に記憶する。これにより、検査規則記憶部123に、本来正しい状態であるのにもかかわらず誤りであると検出する誤検出を引き起こすような検査規則が含まれる場合でも、適切に管理処理を継続することができる。
【0056】
なお、第1実施形態のポリシ型管理装置11及び第2実施形態のポリシ型管理装置11aは、プログラム制御によって動作するコンピュータを用いて実現できる。図8は、図7に示すポリシ型管理システム10aを実現するコンピュータの構成を示している。このポリシ型管理システム20は、ポリシ型管理装置21と、記憶装置12bと、出力装置14と、入力装置15とを備える。ポリシ型管理装置21は、ポリシ型管理用プログラム22を読み込んで動作することにより、ポリシ型管理装置11aの各部の機能を実現する。
【0057】
上記各実施形態では、監視器112がイベントを発行した後に、イベント処理器111によってポリシ記述の条件節が満たされるか否かを調べたが、これに代えて、監視器112が、ポリシ記述の条件節を参照して、その条件節が満たされると、そのポリシ記述を命令定義解釈器114に送信する構成とすることもできる。この場合、例えば、条件節に「指定したコンピュータの単位時間当たりのCPUの平均負荷が90%以上」という条件が記述されたポリシ記述がある場合、監視器112は、その条件節の条件が満たされるか否かを判断し、満たされる場合には、ポリシを起動すべく、そのポリシ記述を命令定義解釈器114に送信する。
【0058】
以上、本発明をその好適な実施形態に基づいて説明したが、本発明のポリシ型管理装置、方法、及び、プログラムは、上記実施形態例にのみ限定されるものではなく、上記実施形態の構成から種々の修正及び変更を施したものも、本発明の範囲に含まれる。
【図面の簡単な説明】
【0059】
【図1】本発明の第1実施形態のポリシ型管理システムの構成を示すブロック図。
【図2】ポリシ記憶部121に記憶されるポリシ記述のデータ構造を示すブロック図。
【図3】検査規則記憶部123に記憶される検査規則のデータ構造の一例を示すブロック図。
【図4】検査規則を有するポリシ記述のデータ構造を示すブロック図。
【図5】ポリシ型管理システム10の動作手順を示すフローチャート。
【図6】図5のステップA60〜A80の動作の詳細な手順を示すフローチャート。
【図7】本発明の第2実施形態のポリシ型管理システムの構成を示すブロック図。
【図8】図7に示すポリシ型管理システム10aを実現するコンピュータの構成を示すブロック図。
【図9】従来の一般的なポリシ型管理システムの構成を示すブロック図。
【図10】ポリシ記述のデータ構造の一例を示すブロック図。
【図11】ポリシ記憶器921に記憶されるポリシ表を示すブロック図。
【図12】モデル記憶部922に格納されるオブジェクトモデルのデータ構造の一例を示すブロック図。
【図13】モデル記憶部922に格納される関連モデルのデータ構造の一例を示すブロック図。
【図14】イベントのデータ構造の一例を示すブロック図。
【図15】パラメータのデータ構造の一例を示すブロック図。
【符号の説明】
【0060】
11、21:ポリシ型管理装置
12:記憶装置
13:管理対象システム
14:出力装置
15:入力装置
22:ポリシ型管理用プログラム
61:ポリシ記述
62:検査規則
72:イベント
79:パラメータ
111:イベント処理器
112:監視器
113:モデル管理器
114:命令定義解釈器
115:モデル検査器
116:命令実行器
121:ポリシ記憶部
122:モデル記憶部
123:検査規則記憶部
124:例外記憶部
【技術分野】
【0001】
本発明は、ポリシ型管理装置、方法、及び、プログラムに関し、更に詳しくは、操作等を実行すべき条件とその操作内容とを記述したポリシ記述を用いて、管理対象システムを管理・運用するポリシ型管理装置、方法、及び、プログラムに関する。
【背景技術】
【0002】
システム管理者の知識を、ポリシと呼ぶif-then型のルールとして記述し、それらポリシ記述に従って、管理対象システムを制御するポリシ型管理システムが知られている(例えば、特許文献1、非特許文献1)。ポリシ型管理システムでは、例えば、「あるサービスを提供しているサーバの負荷が高かったら、そのサービスを提供するサーバの台数を増やす。」という内容のポリシ記述があるときには、計測したサーバの負荷が高くなると、サーバの台数を増やすように動作する。ポリシ型管理システムは、従来人手で行っていた作業の一部をシステムによって自動化することにより、管理作業の手間の軽減と、問題発生時の迅速な対応とを実現することができる。
【0003】
図9は、従来の一般的なポリシ型管理システムの構成を示している。この従来のポリシ型管理システムは、ポリシ型管理装置91と、記憶装置92と、管理対象システム93とから構成される。ポリシ型管理装置91は、イベント処理器911、監視器912、モデル管理器913、及び、命令実行器914を備える。管理対象システム93は、ポリシ型管理システム90により管理される、複数台のコンピュータと、記憶装置と、それらを接続するネットワーク機器とを含む分散システムである。
【0004】
記憶装置92は、ポリシ記述を記憶するポリシ記憶部921と、管理対象システム93の各種情報を記憶するモデル記憶部922とを有する。図10は、ポリシ記述の一例を示している。ポリシ記述71は、ポリシ型管理システム内で重複することがない一意に定まる識別子と、どのような場合に当該ポリシを実行すべきかを示す条件節と、管理対象システム93に対してどのような操作を行うかを記した命令節とから構成される(ポリシ記述については、非特許文献3を参照)。ポリシ記憶部921は、複数のポリシ記述を、図11に示すようなポリシ表711として記憶する。
【0005】
モデル管理器913は、管理対象システム93の各種情報を取得し、取得した各種情報を、共通情報モデルとして、モデル記憶部922に格納する。共通情報モデルとは、管理対象システムを構成する各種機器の製造メーカ特有の情報を捨象し、メーカに依存しない共通部分を抽出したものである(共通情報モデルについては、非特許文献2を参照)。
【0006】
図12及び図13は、それぞれ、モデル記憶部922に格納される共通情報モデルの一例を示している。オブジェクトモデル731(図12)は、管理対象を表すデータ構造と手続きであり、関連モデル732(図13)は、管理対象間の関連を表すデータ構造である。関連モデル732は、内部にオブジェクトモデル731の識別子を2つ以上持ち、それらのオブジェクトモデル731が、関連モデル732が持つ名前で表現される関連を持つことを示す。モデル記憶部922には、管理対象システム93の状態を反映したデータが、オブジェクトモデル731や関連モデル732のデータ構造で、複数保存される。
【0007】
監視器912は、モデル管理器913から、管理対象システム93の状態を表すモデル情報を取得し、特定の条件が満たされると、イベント処理器911に、イベントの発行を通知する。イベント発行の条件は、あらかじめ人手で設定されている。イベントの一例を図14に示す。イベント72は、イベント名を示す名前と、イベント発生条件のパラメータの集合とから構成される。パラメータの一例を図15に示す。パラメータ79は、名前と値のペアである。イベント72に含まれるパラメータは、故障の箇所などを示す情報や、モデル記憶部922から取得したデータのうちでイベントに関連する特定の観測データなどを含む。
【0008】
イベント処理器911は、監視器912からイベント発行を受け取ると、ポリシ記憶部921を参照してポリシ表(図11)を取得し、イベントの発行により実行する必要があるポリシ記述が存在するか否かを検査する。イベント処理器911は、実行する必要があるポリシ記述を命令実行器914に受け渡し、命令実行器914は、受け取ったポリシ記述71に含まれる命令節に記述された操作を、管理対象システム93に対して実行する。このように、従来のポリシ管理システムは、管理対象システム93を監視して、ポリシ記述71に記述された条件が満たされたときに、当該ポリシ記述71の命令節に記述された操作を実行することにより、管理の自動化を実現する。
【0009】
【特許文献1】特開2002−111729号公報
【非特許文献1】エヌ・ダミノウ(N. Damianou)、他著、ザ ポンダー ポリシー スペシフィケーションランゲージ(The PONDER Policy Specification Language)、エル・エヌ・シー・エス1995(LNCS1995)、2001年、pp.18−39
【非特許文献2】“シー・アイ・エム コア モデル ホワイトペーパー(CIM Core Model White Paper)ver2.4”2000年8月30日[online][平成17年3月8日検索]、ディストリビューティッド・マネージメント・タスクフォース(Distributed Management Task Force)、インターネット<URL http://www.dmtf.org/standards/documents/CIM/DSP0111.pdf>
【非特許文献3】ビー・ムーア(B. Moore)、他著、ポリシ・コア・インフォメーション・モデル(Policy Core Information Model)、アールエフシー3060(RFC3060)、インターネット・エンジニアリング・タスクフォース(Internet Engineering Task Force)、2001年
【発明の開示】
【発明が解決しようとする課題】
【0010】
上記従来のポリシ型管理システムでは、ポリシが管理対象システムに与える作用により発生する問題を事前に検査する手段については特に考慮されていない。このため、管理対象システム93に対してポリシ記述71の命令節で定義された操作を実行することによって管理対象システム93に問題が発生する可能性があるか否かを、ポリシを実行する前に判定し、問題発生を未然に防止することができないという問題がある。
【0011】
特定のポリシの作用が管理対象システムに対して問題を引き起こす可能性があるか否かを精密に判定するためには、当該ポリシ記述71の命令節に記述された操作を適用する時点における管理対象システム93の状態を対象に検査を行うことが好ましい。仮に、従来のポリシ型管理システムと、ソフトウェア開発において一般に利用されるサンプルの値を用いて検査を行うテスト方式とを組み合わせた方式を利用したとしても、判定の精度の点で問題がある。
【0012】
本発明は、上記従来技術の問題点を解消し、管理対象システムに対して、ポリシ記述の命令節で定義された操作を実行することによって、管理対象システムに問題が発生する可能性があるか否かを、その命令節を実際に実行する前に判定し、問題発生を未然に防ぐことができるポリシ型管理装置、方法、及び、プログラムを提供することを目的とする。
【課題を解決するための手段】
【0013】
上記目的を達成するために、本発明のポリシ型管理装置は、管理対象の情報システムから状態情報を取得し、該取得した状態情報に基づいて、管理対象システムの状態を示す情報モデルを作成し、記憶装置に記憶するモデル管理部と、適用条件、管理対象の情報システムに対する作用、及び、該作用を前記情報モデルに対する作用として記述した命令定義記述を含むポリシ記述を記憶する記憶装置を参照し、前記管理対象の情報システムの状態に基づいて、前記ポリシ記述の適用条件が成立するか否かを判断し、前記適用条件が成立するポリシ記述を抽出するイベント処理部と、前記抽出されたポリシ記述について、前記記憶装置に記憶された情報モデルに対して命令定義記述を適用し、ポリシ記述適用後の情報モデルを作成して記憶装置に記憶する命令定義解釈部と、前記情報モデルにおいて満たされるべき条件を記述した検査規則を記憶する記憶装置を参照し、前記記憶されたポリシ記述適用後の情報モデルが、前記検査規則を満たすか否かを判断するモデル検査部と、前記モデル検査部で前記検査規則を満たすと判断されたポリシ記述について、該ポリシ記述の作用を、管理対象の情報システムに対して適用する命令実行部とを備えたことを特徴とする。
【0014】
本発明のポリシ型管理方法は、コンピュータを用いて、管理対象の情報システムを管理する方法であって、前記コンピュータが、管理対象の情報システムから状態情報を取得し、該取得した状態情報に基づいて、管理対象システムの状態を示す情報モデルを作成し、記憶装置に記憶するステップと、前記コンピュータが、適用条件、管理対象の情報システムに対する作用、及び、該作用を前記情報モデルに対する作用として記述した命令定義記述を含むポリシ記述を記憶する記憶装置を参照し、前記管理対象の情報システムの状態に基づいて、前記ポリシ記述の適用条件が成立するか否かを判断し、前記適用条件が成立するポリシ記述を抽出するステップと、前記コンピュータが、前記抽出されたポリシ記述について、前記記憶装置に記憶された情報モデルに対して命令定義記述を適用し、ポリシ記述適用後の情報モデルを作成して記憶装置に記憶するステップと、前記コンピュータが、前記情報モデルにおいて満たされるべき条件を記述した検査規則を記憶する記憶装置を参照し、前記記憶されたポリシ記述適用後の情報モデルが、前記検査規則を満たすか否かを判断するステップと、前記コンピュータが、前記モデル検査部で前記検査規則を満たすと判断されたポリシ記述について、該ポリシ記述の作用を、管理対象の情報システムに対して適用するステップとを含むことを特徴とする。
【0015】
本発明のプログラムは、管理対象の情報システムを管理するコンピュータのためのプログラムであって、前記コンピュータに、管理対象の情報システムから状態情報を取得し、該取得した状態情報に基づいて、管理対象システムの状態を示す情報モデルを作成し、記憶装置に記憶する処理と、適用条件、管理対象の情報システムに対する作用、及び、該作用を前記情報モデルに対する作用として記述した命令定義記述を含むポリシ記述を記憶する記憶装置を参照し、前記管理対象の情報システムの状態に基づいて、前記ポリシ記述の適用条件が成立するか否かを判断し、前記適用条件が成立するポリシ記述を抽出する処理と、前記抽出されたポリシ記述について、前記記憶装置に記憶された情報モデルに対して命令定義記述を適用し、ポリシ記述適用後の情報モデルを作成して記憶装置に記憶する処理と、前記情報モデルにおいて満たされるべき条件を記述した検査規則を記憶する記憶装置を参照し、前記記憶されたポリシ記述適用後の情報モデルが、前記検査規則を満たすか否かを判断する処理と、前記モデル検査部で前記検査規則を満たすと判断されたポリシ記述について、該ポリシ記述の作用を、管理対象の情報システムに対して適用する処理とを実行させることを特徴とする。
【0016】
本発明のポリシ型管理装置、方法、及び、プログラムでは、ポリシ記述の作用を管理対称の情報システムに適用する前に、管理対象の情報システムの状態を表す情報モデルに、ポリシ記述の作用を管理対象の情報システムに与える作用を情報モデルへの作用として表現した命令定義を適用して、命令定義適用後の情報システムが、管理対象の情報システムの情報モデルにおいて守られるべき条件を表す検査規則を満たすか否かを判断し、検査規則が満たされるときには、管理対象の情報システムにポリシ記述の作用を適用する。このようにすることで、検査規則を満たさない、すなわち問題を起こす可能性があるポリシ記述の管理対象の情報システムへの適用を中止することができ、問題発生を未然に回避することができる。
【0017】
本発明のポリシ型管理装置、方法、及び、プログラムは、前記ポリシ記述と前記検査規則とを対応付けて記憶し該ポリシ記述には前記検査規則を適用しない旨を例外規則として記憶する記憶装置を参照し、前記情報モデルに適用した命令定義記述を有するポリシ記述に対応する検査規則を除いた検査規則を用いて、前記ポリシ記述適用後の情報モデルが、検査規則を満たすか否かを判断する構成を採用できる。この場合、特定のポリシ記述について、実際には問題がない場合にも検査規則によって問題があると判定される誤検出を防ぐことができる。
【0018】
本発明のポリシ型管理装置、方法、及び、プログラムは、前記モデル検査部は、更に、前記ポリシ記述適用後の情報モデルが前記検査規則を満たさないときには、該検査規則違反を無視すべきか否かの入力を求め、無視すべき旨が入力されると、当該検査規則違反は発生しなかったものとみなし、前記情報モデルに適用した命令定義記述を有するポリシ記述と前記無視すべき検査規則違反が発生した検査規則とを対応付けて、前記例外規則として記憶装置に記憶する構成を採用できる。この場合、無視すべきと入力された検査規則違反については、検査規則違反が発生していないとみなすことで、管理対象の情報システムにポリシ記述の作用を適用することができる。また、記憶装置に、例外規則として記憶することで、そのポリシ記述と検査規則の組み合わせについては、次回から、検査規則を満たすか否かの検査から除外することができ、誤検出の発生を防ぐことができる。
【発明の効果】
【0019】
本発明のポリシ型管理装置、方法、及び、プログラムでは、管理対象の情報システムの状態を表す情報モデルを作成し、作成した情報モデル対して、管理対象の情報システムに与える作用を情報モデルへの作用として表現した命令定義を適用し、命令定義適用後の情報システムが、管理対象の情報システムの情報モデルにおいて守られるべき条件を表す検査規則を満たすか否かを判断する。検査規則が満たされるときには、管理対象の情報システムにポリシ記述の作用を適用する。このようにすることで、実際に、管理対象の情報システムに対してポリシ記述の作用を適用する前に、ポリシ記述の作用の適用によって、管理対象の情報システムに問題が発生するか否かを判断することができ、検査規則を満たさない、すなわち問題を起こす可能性があるポリシ記述の作用を、管理対象の情報システムに適用しないことで、問題発生を未然に回避することができる。
【発明を実施するための最良の形態】
【0020】
以下、図面を参照し、本発明の実施の形態を詳細に説明する。図1は、本発明の第1実施形態のポリシ型管理システムの構成を示している。ポリシ型管理システム10は、ポリシ型管理装置11と、記憶装置12と、管理対象システム13と、出力装置14とを有する。管理対象システム13は、複数台のコンピュータと、記憶装置と、それらを接続するネットワーク機器とを含む分散システムである。出力装置14は、ディスプレイ装置や印刷装置等の表示装置として構成される。
【0021】
記憶装置12は、ポリシ記憶部121と、モデル記憶部122と、検査規則記憶部123とを有する。ポリシ記憶部121は、管理対象システム13を管理するための方法を記したポリシ記述を記憶する。モデル記憶部122は、管理対象システム13の状態を反映させた情報モデルのデータを記憶する。モデル記憶部122は、管理対象システム13の状態を反映した情報モデルを検査するための規則を記した検査規則を記憶する。
【0022】
ポリシ型管理装置11は、管理対象システム13を、ポリシ記述に基づいて、管理運用する。ポリシ型管理装置11は、イベント処理器111と、監視器112と、モデル管理器113と、命令定義解釈器114と、モデル検査器115と、命令実行器116とを有する。モデル管理器113は、管理対象システム13に対応付けられた情報モデルを管理する。監視器112は、管理対象システム13の各機器の状態を、モデル管理器113を用いて監視する。イベント処理器111は、ポリシ記憶部121からポリシ記述を取得し、当該ポリシ記述の条件節を解釈し、必要に応じてポリシ記述を命令定義解釈器114に送信する。
【0023】
命令定義解釈器114は、モデル管理器113から、管理対象システム13の現在の状態を反映した情報モデルを取得し、イベント処理器111より送信されたポリシ記述の作用を当該情報モデルに反映させ、当該ポリシ記述の作用適用後の情報モデルを生成する。モデル検査器115は、検査規則記憶部123を参照して、命令定義解釈器114によって新たに生成された情報モデルに問題があるか否かを検査する。命令実行器116は、モデル検査器115により問題ないと判定された場合に、ポリシ記述の作用を、管理対象システム13に対して適用する。
【0024】
モデル管理器113によって作成され、モデル記憶部122に記憶される情報モデルのデータ構造は、図12及び図13に示すデータ構造とすることができる。オブジェクトモデル731(図12)は、管理対象システム13の対象物を表現するために利用される。オブジェクトモデル731は、情報モデル内で一意に定まる識別子と、その管理対象物の名称と、管理対象物の情報帯を示すパラメータの集合と、管理対象に対して作用を与えるための手続きとを含む。
【0025】
例えば、管理対象システム13に含まれる計算機のオペレーティングシステムを1つの管理対象物として取り扱う場合には、オブジェクトモデルに識別子を付与して、名前を「オペレーティングシステム」とする。このオブジェクトモデルにおけるパラメータの集合には、現在のオペレーティングシステムの平均負荷状況を示すLoadAveragePercentageという名前のパラメータや、オペレーティングシステムの種別を示すOSTypteという名前のパラメータなどが含まれる。また、このオブジェクトモデルにおける手続きには、オペレーティングシステムを再起動させるrebootなどが含まれる。
【0026】
関連モデル732(図13)は、管理対象物の間の関連を表現するために用いられる。関連モデル732は、オブジェクトモデル731の具体的なデータインスタンスを示す識別子を2つ以上内部に保存することにより、オブジェクト間の関係を表現する。このような情報モデルとしては、CIM(Common Information Base)を用いることができる。
【0027】
図2は、ポリシ記憶部121に記憶されるポリシ記述のデータ構造を示している。ポリシ記述61は、識別子と、条件節と、命令節と、命令定義とを有する。本実施形態におけるポリシ記述61と、従来のポリシ管理装置におけるポリシ記述71(図10)とを比較すると、ポリシ記述61は、命令定義を含む点で、従来のポリシ記述71と相違する。命令定義は、当該ポリシが管理システムに与える作用を、情報モデルへの作用として明示的に表現したものである。具体的には、外部より与えられた情報モデルへのオブジェクトモデル731と関連モデル732とのデータインスタンスの新規追加、与えられた情報モデル内の特定データインスタンスの値の変更又は削除などの手続きを表現したスクリプトである。
【0028】
命令定義では、命令定義を記述する際には決定されていない具体的な管理対象を指定する識別子やパラメータなどは、変数として記述されており、命令定義の引数として外部から与えられるように定義する。これにより、実行時の情報を用いて、情報モデルにどのような変更を加えるかを記述できる。このような命令定義をポリシ記述に含めることにより、当該ポリシ記述の命令節に定義された作用を、実際に管理対象システム13に適用する前に、当該ポリシ記述の命令定義を参考にして、管理対象システム13の状態を反映した情報モデルに、命令節に定義された作用を模擬した変更を加えることが可能となり、当該ポリシの作用を与えたときの変更を、情報モデルを用いて検査することにより、問題が発生する可能性があるポリシの適用を、未然に防止できる。
【0029】
図3は、検査規則記憶部123に記憶される検査規則のデータ構造の一例を示している。検査規則は、命令定義解釈器114により生成された、ポリシ記述の命令定義で指定された作用を与えた後の情報モデルを対象に、作用を実際に管理対象システム13に適用して問題がないかを検査するための、具体的な規則を表現したデータである。検査規則のデータ構造や検査方法には、特願2003−286850に記載されたソフトウェアのルール検査システムの手法と類似したものを利用することができる。
【0030】
検査規則62は、情報モデルの中から条件を満たすべき部分を指定するための対象指定部と、論理演算子で接続された述語の列からなる述語論理式とを含む。対象指定部は、情報モデルの中から特定の性質を満たす集合を算出する関数と、その集合に属することを示す変数とからなる。例として、情報モデルとしてCIMを利用し、対象指定部に、「instances = instanceOf(“CIM_SoftwareElement”)」と記述されている場合について説明する。ここで、“instances”は変数であり、“insntanceOf”は集合を求める関数、“CIM_SoftwareElement”は関数“instanceOf”に与えられる引数である。
【0031】
関数“instanceOf”が、引数で指定されたクラス(“CIM_SoftwareElement”)、及び、当該クラスを継承した全てのクラスに属する全てのインスタンスを返す関数であるとすると、“instances”には、情報モデルに含まれる前記条件を満たした集合が束縛される。この変数instancesは、検査規則62の述語論理式において使用される。対象指定部の式は、集合を求める関数と変数の他に、"∪","∩"などの和集合や積集合を計算する集合演算子を含めることもできる。また、対象指定部の式は、集合を求める関数と変数と集合演算子の他に、述語論理で利用される"∀"や"∃"などの限量子を含めることもできる。
【0032】
述語論理式(図3)は、モデル検査器115に含まれる解析機能に対応した述語と論理演算子によって構成される。例として、「compStrAttr (“Name”, “openssl”, i) -> !isOlderVersionThan(“3.2.2”, i)」という論理式を考える。述語compStrAttrは、第3引数の変数iで示される管理対象の情報モデルが、第1引数で指定された名前を持つパラメータ、すなわち上記の例では“Name”を含み、当該パラメータの名前に対応した値が2番目の引数で指定された文字列、すなわち上記の例では“openssl”と等しいことを宣言した述語である。この述語が成立するか否かを検査する機能は、あらかじめモデル検査器115に組み込まれている。
【0033】
述語isOlderVersionThanは、第2引数(変数i)で指定された変数で示される管理対象の情報モデルに、バージョンを示すパラメータが存在し、かつ当該パラメータのバージョンが第1引数(3.2.2)より古いバージョン番号であることを示す述語である。この述語isOlderVersionThanが成立するか否かを検査する機能についても、あらかじめモデル検査器115に組み込まれている。
【0034】
上記の2つの述語は、論理演算子“->”により結合されており、かつ、isOlderVersionThanの前には論理演算子“!”がついているため、「compStrAttrが真であるならばisOlderVersionThanは偽である」と解釈される。すなわち、opensslという名前を持った管理対象の情報モデルデータに含まれるバージョン番号に相当する値が3.2.2以上であることを宣言している。なお、変数iは、当該述語論理に対応する対象指定部(図3)において管理対象の集合の要素に束縛されているものとする。
【0035】
なお、検査規則は、ポリシ記述に埋め込むこともできる。図4は、検査規則を有するポリシ記述のデータ構造を示す。このポリシ記述61bは、図2に示すポリシ記述61に加えて、検査規則を有する。このような検査規則を有するポリシ記述61bの検査では、モデル検査器115は、検査規則記憶部123に記憶された検査規則だけでなく、ポリシ記述61bに含まれる検査規則を用いて検査を行う。これにより、特定のポリシ記述に特有の検査条件をモデル検査器115において検査することができる。
【0036】
ポリシに特有の検査規則とは、例えば、ポリシ記述の命令節に示された作用を管理対象システム13に与えた後に、管理対象システム13において満たされていなければならない後条件と呼ばれる条件が満たされるか否かを検査するための規則である。後条件を記述するためには、作用適用前と適用後の違いが明らかになっていることが好ましいため、ポリシ記述61bを適用しようとする場合は、命令定義解釈器114は、ポリシ記述61bの命令定義に記された作用を与える前の情報モデルと、与えた後の情報モデルの2つのデータをモデル検査器115に渡すことが好ましい。これにより、モデル検査器115は、作用の前後の差異に関する条件を検査できる。
【0037】
図5は、ポリシ型管理システム10の動作手順を示している。ポリシ型管理システム10の運用に当たって、前処理として、ポリシ型管理装置11の処理に必要なデータであるポリシ記述一式をポリシ記憶部121に記憶し、検査規則一式を検査規則記憶部123に記憶する(ステップA10)。監視器112は、所定のタイミングで、モデル管理器113に情報モデルデータを要求し、モデル管理器113から、オブジェクトモデル731(図12)のデータインスタンスと、関連モデル732(図13)のデータインスタンスとの集合を取得して、管理対象システム13を監視する(ステップA20)。
【0038】
モデル管理器113は、所定時間間隔で、或いは、監視器112から情報モデルデータの取得要求を受け取ると、管理対象システム13から情報を取得して、モデル記憶部122に記憶された情報モデルデータを更新する。例えば、CIMを情報モデルとして利用する場合、モデル管理器113には、情報モデルを管理するCIMOM(CIM Object Manager)と呼ばれるシステムを用いることができる。モデル管理器113は、ステップA20では、モデル記憶部122に記憶された情報モデルデータから、オブジェクトモデル731のデータインスタンスと、関連モデル732のデータインスタンスの集合とを取得して、これを監視器112に受け渡す。
【0039】
監視器112は、モデル管理器113から取得したデータインスタンスの集合を解析し、あらかじめ定められた条件が整うと、イベントを発行する(ステップA30)。監視器112には、例えば「単位時間当たりのCPU平均負荷が90%以上」で発行される“CPU_OverLoad”という名前のイベントが定義されており、モデル管理器113から取得したCPU平均負荷が90%以上であることを検出すると、その“CPU_OverLoad”のイベントを発行する。
【0040】
監視器112が発行したイベントは、イベント処理器111によって受信される。イベント処理器111は、イベントの発行を受信すると、ポリシ記憶部121から全てのポリシ記述を取り出し、その条件節に示された条件が、当該イベントの発行により満たされるか否かを検査する(ステップA40)。イベント処理器111は、条件節の条件が満たされるポリシ記述のリストを作成し、そのリストに含まれるポリシ記述を1つずつ命令定義解釈器114に送信する。イベント処理器111は、リストに含まれるポリシ記述を全て命令定義解釈器114に送信したか否かを調べ(ステップA50)、全て送信したときには、ステップA20に戻って、管理対象システム13の監視を継続する。
【0041】
ポリシ記述の条件節には、例えば“CPU_OverLoad”イベントの発行が、ポリシ記述を適用する際の条件として記述されている。また、イベントに加えて、例えば「負荷が高いサーバのCPUが特定のCPUであれば」、などの、具体的な内部の情報(パラメータ)に関する条件がされることもある。イベント処理器111は、ポリシ記述に、発行されたイベントが適用条件として記述されており、かつ、その他のパラメータが条件節で示される条件に合致する場合には、ステップA40で、ポリシ記述の条件節に示された条件が、当該イベントの発行により満たされると判断し、当該ポリシ記述を命令定義解釈器114に送信する。
【0042】
命令定義解釈器114は、イベント処理器111からポリシ記述を受信すると、モデル管理器113から情報モデルのデータを取得し、受信したポリシ記述の命令定義に示された作用を当該情報モデルに対して適用し、適用後の情報モデルのデータを生成する(ステップA60)。命令定義解釈器114は、生成したポリシ適用後の情報モデルのデータと、当該ポリシ記述とを、モデル検査器115に送信する。このとき、命令定義解釈器114は、ポリシ記述が検査規則を含むポリシ記述61b(図4)であるときには、生成した情報モデルデータ及びポリシ記述に加えて、命令定義の作用を与える前の情報モデルデータをモデル検査器115に送信する。
【0043】
モデル検査器115は、命令定義解釈器114から情報モデルデータとポリシ記述とを受信すると、検査規則記憶部123から検査規則を全て取り出して受信した情報モデルデータを検査し(ステップA70)、全ての検査規則を満たしているか否かを調べる(ステップA80)。モデル検査器115は、受信した情報モデルデータが何れかの検査規則に違反しているときには、出力装置14にエラー出力を送信し(ステップA100)、システム管理者などにエラーが起きた旨を報告する。エラー出力後、ステップA50に戻って、残りのポリシ記述についての処理を継続する。
【0044】
モデル検査器115は、ステップA80で、当該情報モデルが全ての規則を満たすと判断すると、命令定義解釈器114から受信したポリシ記述を命令実行器116に送信する。命令実行器116は、ポリシ記述を受信すると、当該ポリシ記述の命令節に定義された作用を、管理対象システム13に対して適用する(ステップA90)。その後、ステップA50に戻り、残りのポリシ記述についての処理を継続する。
【0045】
図6は、図5のステップA60〜A80の動作の詳細な手順を示している。命令定義解釈器114は、イベント処理器111から、条件節の条件が満たされたポリシ記述を受信する。このとき、命令定義解釈器114は、イベント発生のパラメータの集合を、ポリシ記述と共にイベント処理器111から受信してもよい。命令定義解釈器114は、ポリシ記述を受信すると、モデル管理器113から、情報モデルデータを取得する(ステップB10)。このとき、命令定義解釈器114は、当該ポリシ記述の命令節が作用を与える可能性がある対象をあらかじめ算出することにより、全情報モデルデータのうち、必要な部分の情報モデルデータだけを取得することが好ましい。
【0046】
命令定義解釈器114は、情報モデルデータを取得すると、受信したポリシ記述の命令定義に示された作用を、取得した情報モデルに対して適用する(ステップB20)。命令定義解釈器114は、命令定義の適用に成功し、適用後の新たな情報モデルが得られると、その新たな情報モデルデータと、ポリシ記述とをモデル検査器115に送信する。一方、命令定義解釈器114は、命令定義の記述文法が、命令定義解釈器114によって解釈可能な文法と異なっている、或いは、命令定義を情報モデルに適用する際に問題が発生したなどの理由により、命令定義の適用に失敗したときには、空の情報モデルデータを、モデル検査器115に送信する。
【0047】
モデル検査器115は、受信した情報モデルデータに基づいて、命令定義解釈器114において、命令定義を正常に適用できたか否かを判断する(ステップB30)。モデル検査器115は、受信した情報モデルデータが空であったときには、ステップA100(図5)に進み、出力装置14に、命令定義が正しく適用できなかった旨を示す文字列を送信して、システム管理者等にその旨を通知する。モデル検査器115は、受信した情報モデルデータが空でないときには、命令定義を正常に適用できたと判断し、検査規則記憶部123から検査規則を取得する(ステップB40)。モデル検査器115は、取得した検査規則が、受信した情報モデル上で守られているか否かを検査する(ステップB50)。
【0048】
検査規則記憶部123には、適用したポリシ記述の作用によって変化することがない性質の検査を行う検査規則も含まれており、このような検査規則については、ステップB50の検査の対象とする必要がない。例えば、ポリシ記述の作用がネットワーク構成に作用する性質のものである場合には、ソフトウェアのバージョンを検査するような検査規則については検査する必要がない。そこで、ポリシ記述と、そのポリシ記述の作用に関連した検査規則とを関連付けた表をあらかじめ用意しておき、ステップB40では、適用したポリシ記述に対応した検査規則のみを取得する。このようにすることで、ステップB50で、当該ポリシ記述の作用により変化することがない性質の検査を除外することができる。
【0049】
モデル検査器115は、ステップB50の検査の結果、規則違反が発生しているか否かを判断する(ステップB60)。例えば、検査規則として、正しくない状態ないし不正な状態を示す条件を記述したものを利用する場合、モデル検査器115は、ポリシ記述の作用を適用した後の情報モデルが、検査規則で示された不正な状態の条件を満たすときには、規則違反が発生していると判断する。モデル検査器115は、検査の結果、規則違反が発生した、つまり、情報モデルに問題がある場合には、ステップA100に進み、ポリシ記述の適用に問題がある旨を示す文字列を出力装置14に出力する。規則違反がない場合には、ステップA90に進んで、命令実行器116に、ポリシ記述を送信する。
【0050】
本実施形態では、ポリシ記述には、命令定義が含まれており、ポリシ型管理装置11は、ポリシを管理対象システム13に適用するのに先立って、管理対象システム13の現在の状態を示す情報モデルに対して、命令定義を適用する。その後、検査規則を用い、命令定義の適用後の情報モデルにおいて、規則違反が発生しているか否かを検査する。このように、本実施形態では、実際にポリシの作用を管理対象システム13に適用する前に、情報モデルを用いて問題があるか否かを検査しているため、管理対象システム13に問題を発生させる可能性があるポリシ記述の適用を、未然に防ぐことができる。
【0051】
図7は、本発明の第2実施形態のポリシ型管理システムの構成を示している。本実施形態のポリシ型管理システム10aは、記憶装置12aが、適用除外の検査規則を記憶する例外記憶部124を更に有する点で、図1に示す第1実施形態のポリシ型管理システム10と相違する。第1実施形態のポリシ型管理システム10において、検査規則を画一的に適用すると、特定のポリシ記述については、実際には問題がない場合にも、規則により問題があると判定される誤検出が発生する場合がある。本実施形態は、このような誤検出問題に対応する。
【0052】
例外記憶部124は、適用除外とすべき、ポリシ記述の識別子と検査規則の識別子との組み合わせを記憶する。モデル検査器115は、ステップB40(図6)で、検査規則記憶部123から検査規則を取得する際に、例外記憶部124を参照して、命令定義解釈器114から受信したポリシ記述と対応付けられた検査規則があるか否かを調査する。モデル検査器115は、当該ポリシ記述と対応付けられた検査規則が存在する場合には、その検査規則を、ステップB40で、検査規則記憶部123から取得する検査規則から除外する。
【0053】
モデル検査器115は、取得した検査規則に基づいて、情報モデルデータを検査する。モデル検査器115は、情報モデルデータが、何れかの検査規則に違反すると判断すると、違反が発生した各検査規則とポリシ記述とを、出力装置14に出力し、管理者に対して、その違反を無視するか否かを入力するように要求する。管理者は、出力装置14に表示されたポリシ記述と違反が発生した検査規則とを見て、キーボードやマウスなどの入力装置15を用い、違反が発生した検査規則のそれぞれについて、違反を無視して、当該ポリシ記述を適用すべきか否かを入力する。
【0054】
入力装置15より、違反を無視して当該ポリシ記述を適用すべきである旨が入力されると、モデル検査器115は、当該ポリシ記述の識別子と、違反が発生したものの無視すべき検査規則の識別子とを対応付けて、例外記憶部124に記憶する。また、発生した検査規則違反を無視して、命令実行器116に、当該ポリシ記述を送信する。これにより、特定のポリシ記述については、特定の検査規則が適用されず、適用しようとするポリシ記述が、その特定の検査規則以外の検査規則に違反しない場合には、命令実行器116にポリシ記述が送信され、管理対象システム13に対して、ポリシ記述の作用が適用される。
【0055】
本実施形態では、ポリシ記述の作用により、情報モデルデータが検査規則違反を起こした場合には、管理者により、その違反を無視するか否かを入力させる。管理者により、違反を無視する旨が入力されたときには、モデル検査器115は、違反がなかったものとしてポリシ記述を命令実行器116に送信すると共に、以後、同様の検査規則違反を検出しないように、無視すべき検査規則とポリシ記述との組み合わせを例外記憶部124に記憶する。これにより、検査規則記憶部123に、本来正しい状態であるのにもかかわらず誤りであると検出する誤検出を引き起こすような検査規則が含まれる場合でも、適切に管理処理を継続することができる。
【0056】
なお、第1実施形態のポリシ型管理装置11及び第2実施形態のポリシ型管理装置11aは、プログラム制御によって動作するコンピュータを用いて実現できる。図8は、図7に示すポリシ型管理システム10aを実現するコンピュータの構成を示している。このポリシ型管理システム20は、ポリシ型管理装置21と、記憶装置12bと、出力装置14と、入力装置15とを備える。ポリシ型管理装置21は、ポリシ型管理用プログラム22を読み込んで動作することにより、ポリシ型管理装置11aの各部の機能を実現する。
【0057】
上記各実施形態では、監視器112がイベントを発行した後に、イベント処理器111によってポリシ記述の条件節が満たされるか否かを調べたが、これに代えて、監視器112が、ポリシ記述の条件節を参照して、その条件節が満たされると、そのポリシ記述を命令定義解釈器114に送信する構成とすることもできる。この場合、例えば、条件節に「指定したコンピュータの単位時間当たりのCPUの平均負荷が90%以上」という条件が記述されたポリシ記述がある場合、監視器112は、その条件節の条件が満たされるか否かを判断し、満たされる場合には、ポリシを起動すべく、そのポリシ記述を命令定義解釈器114に送信する。
【0058】
以上、本発明をその好適な実施形態に基づいて説明したが、本発明のポリシ型管理装置、方法、及び、プログラムは、上記実施形態例にのみ限定されるものではなく、上記実施形態の構成から種々の修正及び変更を施したものも、本発明の範囲に含まれる。
【図面の簡単な説明】
【0059】
【図1】本発明の第1実施形態のポリシ型管理システムの構成を示すブロック図。
【図2】ポリシ記憶部121に記憶されるポリシ記述のデータ構造を示すブロック図。
【図3】検査規則記憶部123に記憶される検査規則のデータ構造の一例を示すブロック図。
【図4】検査規則を有するポリシ記述のデータ構造を示すブロック図。
【図5】ポリシ型管理システム10の動作手順を示すフローチャート。
【図6】図5のステップA60〜A80の動作の詳細な手順を示すフローチャート。
【図7】本発明の第2実施形態のポリシ型管理システムの構成を示すブロック図。
【図8】図7に示すポリシ型管理システム10aを実現するコンピュータの構成を示すブロック図。
【図9】従来の一般的なポリシ型管理システムの構成を示すブロック図。
【図10】ポリシ記述のデータ構造の一例を示すブロック図。
【図11】ポリシ記憶器921に記憶されるポリシ表を示すブロック図。
【図12】モデル記憶部922に格納されるオブジェクトモデルのデータ構造の一例を示すブロック図。
【図13】モデル記憶部922に格納される関連モデルのデータ構造の一例を示すブロック図。
【図14】イベントのデータ構造の一例を示すブロック図。
【図15】パラメータのデータ構造の一例を示すブロック図。
【符号の説明】
【0060】
11、21:ポリシ型管理装置
12:記憶装置
13:管理対象システム
14:出力装置
15:入力装置
22:ポリシ型管理用プログラム
61:ポリシ記述
62:検査規則
72:イベント
79:パラメータ
111:イベント処理器
112:監視器
113:モデル管理器
114:命令定義解釈器
115:モデル検査器
116:命令実行器
121:ポリシ記憶部
122:モデル記憶部
123:検査規則記憶部
124:例外記憶部
【特許請求の範囲】
【請求項1】
管理対象の情報システムから状態情報を取得し、該取得した状態情報に基づいて、管理対象システムの状態を示す情報モデルを作成し、記憶装置に記憶するモデル管理部と、
適用条件、管理対象の情報システムに対する作用、及び、該作用を前記情報モデルに対する作用として記述した命令定義記述を含むポリシ記述を記憶する記憶装置を参照し、前記管理対象の情報システムの状態に基づいて、前記ポリシ記述の適用条件が成立するか否かを判断し、前記適用条件が成立するポリシ記述を抽出するイベント処理部と、
前記抽出されたポリシ記述について、前記記憶装置に記憶された情報モデルに対して命令定義記述を適用し、ポリシ記述適用後の情報モデルを作成して記憶装置に記憶する命令定義解釈部と、
前記情報モデルにおいて満たされるべき条件を記述した検査規則を記憶する記憶装置を参照し、前記記憶されたポリシ記述適用後の情報モデルが、前記検査規則を満たすか否かを判断するモデル検査部と、
前記モデル検査部で前記検査規則を満たすと判断されたポリシ記述について、該ポリシ記述の作用を、管理対象の情報システムに対して適用する命令実行部とを備えたことを特徴とするポリシ型管理装置。
【請求項2】
前記モデル検査部は、更に、前記ポリシ記述と前記検査規則とを対応付けて記憶し該ポリシ記述には前記検査規則を適用しない旨を例外規則として記憶する記憶装置を参照し、前記情報モデルに適用した命令定義記述を有するポリシ記述に対応する検査規則を除いた検査規則を用いて、前記ポリシ記述適用後の情報モデルが、検査規則を満たすか否かを判断する、請求項1に記載のポリシ型管理装置。
【請求項3】
前記モデル検査部は、更に、前記ポリシ記述適用後の情報モデルが前記検査規則を満たさないときには、該検査規則違反を無視すべきか否かの入力を求め、無視すべき旨が入力されると、当該検査規則違反は発生しなかったものとみなし、前記情報モデルに適用した命令定義記述を有するポリシ記述と前記無視すべき検査規則違反が発生した検査規則とを対応付けて、前記例外規則として記憶装置に記憶する、請求項2に記載のポリシ型管理装置。
【請求項4】
コンピュータを用いて、管理対象の情報システムを管理する方法であって、
前記コンピュータが、管理対象の情報システムから状態情報を取得し、該取得した状態情報に基づいて、管理対象システムの状態を示す情報モデルを作成し、記憶装置に記憶するステップと、
前記コンピュータが、適用条件、管理対象の情報システムに対する作用、及び、該作用を前記情報モデルに対する作用として記述した命令定義記述を含むポリシ記述を記憶する記憶装置を参照し、前記管理対象の情報システムの状態に基づいて、前記ポリシ記述の適用条件が成立するか否かを判断し、前記適用条件が成立するポリシ記述を抽出するステップと、
前記コンピュータが、前記抽出されたポリシ記述について、前記記憶装置に記憶された情報モデルに対して命令定義記述を適用し、ポリシ記述適用後の情報モデルを作成して記憶装置に記憶するステップと、
前記コンピュータが、前記情報モデルにおいて満たされるべき条件を記述した検査規則を記憶する記憶装置を参照し、前記記憶されたポリシ記述適用後の情報モデルが、前記検査規則を満たすか否かを判断するステップと、
前記コンピュータが、前記モデル検査部で前記検査規則を満たすと判断されたポリシ記述について、該ポリシ記述の作用を、管理対象の情報システムに対して適用するステップとを含むことを特徴とするポリシ型管理方法。
【請求項5】
前記判断ステップは、前記ポリシ記述と前記検査規則とを対応付けて記憶し該ポリシ記述には前記検査規則を適用しない旨を例外規則として記憶する記憶装置を参照し、前記情報モデルに適用した命令定義記述を有するポリシ記述に対応する検査規則を除いた検査規則を用いて、前記ポリシ記述適用後の情報モデルが、検査規則を満たすか否かを判断する、請求項4に記載のポリシ型管理方法。
【請求項6】
前記判断ステップは、前記ポリシ記述適用後の情報モデルが前記検査規則を満たさないときには、該検査規則違反を無視すべきか否かの入力を求め、無視すべき旨が入力されると、当該検査規則違反は発生しなかったものとみなし、前記情報モデルに適用した命令定義記述を有するポリシ記述と前記無視すべき検査規則違反が発生した検査規則とを対応付けて、前記例外規則として記憶装置に記憶する、請求項5に記載のポリシ型管理方法。
【請求項7】
管理対象の情報システムを管理するコンピュータのためのプログラムであって、前記コンピュータに、
管理対象の情報システムから状態情報を取得し、該取得した状態情報に基づいて、管理対象システムの状態を示す情報モデルを作成し、記憶装置に記憶する処理と、
適用条件、管理対象の情報システムに対する作用、及び、該作用を前記情報モデルに対する作用として記述した命令定義記述を含むポリシ記述を記憶する記憶装置を参照し、前記管理対象の情報システムの状態に基づいて、前記ポリシ記述の適用条件が成立するか否かを判断し、前記適用条件が成立するポリシ記述を抽出する処理と、
前記抽出されたポリシ記述について、前記記憶装置に記憶された情報モデルに対して命令定義記述を適用し、ポリシ記述適用後の情報モデルを作成して記憶装置に記憶する処理と、
前記情報モデルにおいて満たされるべき条件を記述した検査規則を記憶する記憶装置を参照し、前記記憶されたポリシ記述適用後の情報モデルが、前記検査規則を満たすか否かを判断する処理と、
前記モデル検査部で前記検査規則を満たすと判断されたポリシ記述について、該ポリシ記述の作用を、管理対象の情報システムに対して適用する処理とを実行させることを特徴とするプログラム。
【請求項8】
前記判断する処理は、前記ポリシ記述と前記検査規則とを対応付けて記憶し該ポリシ記述には前記検査規則を適用しない旨を例外規則として記憶する記憶装置を参照し、前記情報モデルに適用した命令定義記述を有するポリシ記述に対応する検査規則を除いた検査規則を用いて、前記ポリシ記述適用後の情報モデルが、検査規則を満たすか否かを判断する、請求項7に記載のプログラム。
【請求項9】
前記判断する処理は、前記ポリシ記述適用後の情報モデルが前記検査規則を満たさないときには、該検査規則違反を無視すべきか否かの入力を求め、無視すべき旨が入力されると、当該検査規則違反は発生しなかったものとみなし、前記情報モデルに適用した命令定義記述を有するポリシ記述と前記無視すべき検査規則違反が発生した検査規則とを対応付けて、前記例外規則として記憶装置に記憶する、請求項8に記載のプログラム。
【請求項1】
管理対象の情報システムから状態情報を取得し、該取得した状態情報に基づいて、管理対象システムの状態を示す情報モデルを作成し、記憶装置に記憶するモデル管理部と、
適用条件、管理対象の情報システムに対する作用、及び、該作用を前記情報モデルに対する作用として記述した命令定義記述を含むポリシ記述を記憶する記憶装置を参照し、前記管理対象の情報システムの状態に基づいて、前記ポリシ記述の適用条件が成立するか否かを判断し、前記適用条件が成立するポリシ記述を抽出するイベント処理部と、
前記抽出されたポリシ記述について、前記記憶装置に記憶された情報モデルに対して命令定義記述を適用し、ポリシ記述適用後の情報モデルを作成して記憶装置に記憶する命令定義解釈部と、
前記情報モデルにおいて満たされるべき条件を記述した検査規則を記憶する記憶装置を参照し、前記記憶されたポリシ記述適用後の情報モデルが、前記検査規則を満たすか否かを判断するモデル検査部と、
前記モデル検査部で前記検査規則を満たすと判断されたポリシ記述について、該ポリシ記述の作用を、管理対象の情報システムに対して適用する命令実行部とを備えたことを特徴とするポリシ型管理装置。
【請求項2】
前記モデル検査部は、更に、前記ポリシ記述と前記検査規則とを対応付けて記憶し該ポリシ記述には前記検査規則を適用しない旨を例外規則として記憶する記憶装置を参照し、前記情報モデルに適用した命令定義記述を有するポリシ記述に対応する検査規則を除いた検査規則を用いて、前記ポリシ記述適用後の情報モデルが、検査規則を満たすか否かを判断する、請求項1に記載のポリシ型管理装置。
【請求項3】
前記モデル検査部は、更に、前記ポリシ記述適用後の情報モデルが前記検査規則を満たさないときには、該検査規則違反を無視すべきか否かの入力を求め、無視すべき旨が入力されると、当該検査規則違反は発生しなかったものとみなし、前記情報モデルに適用した命令定義記述を有するポリシ記述と前記無視すべき検査規則違反が発生した検査規則とを対応付けて、前記例外規則として記憶装置に記憶する、請求項2に記載のポリシ型管理装置。
【請求項4】
コンピュータを用いて、管理対象の情報システムを管理する方法であって、
前記コンピュータが、管理対象の情報システムから状態情報を取得し、該取得した状態情報に基づいて、管理対象システムの状態を示す情報モデルを作成し、記憶装置に記憶するステップと、
前記コンピュータが、適用条件、管理対象の情報システムに対する作用、及び、該作用を前記情報モデルに対する作用として記述した命令定義記述を含むポリシ記述を記憶する記憶装置を参照し、前記管理対象の情報システムの状態に基づいて、前記ポリシ記述の適用条件が成立するか否かを判断し、前記適用条件が成立するポリシ記述を抽出するステップと、
前記コンピュータが、前記抽出されたポリシ記述について、前記記憶装置に記憶された情報モデルに対して命令定義記述を適用し、ポリシ記述適用後の情報モデルを作成して記憶装置に記憶するステップと、
前記コンピュータが、前記情報モデルにおいて満たされるべき条件を記述した検査規則を記憶する記憶装置を参照し、前記記憶されたポリシ記述適用後の情報モデルが、前記検査規則を満たすか否かを判断するステップと、
前記コンピュータが、前記モデル検査部で前記検査規則を満たすと判断されたポリシ記述について、該ポリシ記述の作用を、管理対象の情報システムに対して適用するステップとを含むことを特徴とするポリシ型管理方法。
【請求項5】
前記判断ステップは、前記ポリシ記述と前記検査規則とを対応付けて記憶し該ポリシ記述には前記検査規則を適用しない旨を例外規則として記憶する記憶装置を参照し、前記情報モデルに適用した命令定義記述を有するポリシ記述に対応する検査規則を除いた検査規則を用いて、前記ポリシ記述適用後の情報モデルが、検査規則を満たすか否かを判断する、請求項4に記載のポリシ型管理方法。
【請求項6】
前記判断ステップは、前記ポリシ記述適用後の情報モデルが前記検査規則を満たさないときには、該検査規則違反を無視すべきか否かの入力を求め、無視すべき旨が入力されると、当該検査規則違反は発生しなかったものとみなし、前記情報モデルに適用した命令定義記述を有するポリシ記述と前記無視すべき検査規則違反が発生した検査規則とを対応付けて、前記例外規則として記憶装置に記憶する、請求項5に記載のポリシ型管理方法。
【請求項7】
管理対象の情報システムを管理するコンピュータのためのプログラムであって、前記コンピュータに、
管理対象の情報システムから状態情報を取得し、該取得した状態情報に基づいて、管理対象システムの状態を示す情報モデルを作成し、記憶装置に記憶する処理と、
適用条件、管理対象の情報システムに対する作用、及び、該作用を前記情報モデルに対する作用として記述した命令定義記述を含むポリシ記述を記憶する記憶装置を参照し、前記管理対象の情報システムの状態に基づいて、前記ポリシ記述の適用条件が成立するか否かを判断し、前記適用条件が成立するポリシ記述を抽出する処理と、
前記抽出されたポリシ記述について、前記記憶装置に記憶された情報モデルに対して命令定義記述を適用し、ポリシ記述適用後の情報モデルを作成して記憶装置に記憶する処理と、
前記情報モデルにおいて満たされるべき条件を記述した検査規則を記憶する記憶装置を参照し、前記記憶されたポリシ記述適用後の情報モデルが、前記検査規則を満たすか否かを判断する処理と、
前記モデル検査部で前記検査規則を満たすと判断されたポリシ記述について、該ポリシ記述の作用を、管理対象の情報システムに対して適用する処理とを実行させることを特徴とするプログラム。
【請求項8】
前記判断する処理は、前記ポリシ記述と前記検査規則とを対応付けて記憶し該ポリシ記述には前記検査規則を適用しない旨を例外規則として記憶する記憶装置を参照し、前記情報モデルに適用した命令定義記述を有するポリシ記述に対応する検査規則を除いた検査規則を用いて、前記ポリシ記述適用後の情報モデルが、検査規則を満たすか否かを判断する、請求項7に記載のプログラム。
【請求項9】
前記判断する処理は、前記ポリシ記述適用後の情報モデルが前記検査規則を満たさないときには、該検査規則違反を無視すべきか否かの入力を求め、無視すべき旨が入力されると、当該検査規則違反は発生しなかったものとみなし、前記情報モデルに適用した命令定義記述を有するポリシ記述と前記無視すべき検査規則違反が発生した検査規則とを対応付けて、前記例外規則として記憶装置に記憶する、請求項8に記載のプログラム。
【図1】
【図2】
【図3】
【図4】
【図5】
【図6】
【図7】
【図8】
【図9】
【図10】
【図11】
【図12】
【図13】
【図14】
【図15】
【図2】
【図3】
【図4】
【図5】
【図6】
【図7】
【図8】
【図9】
【図10】
【図11】
【図12】
【図13】
【図14】
【図15】
【公開番号】特開2007−41677(P2007−41677A)
【公開日】平成19年2月15日(2007.2.15)
【国際特許分類】
【出願番号】特願2005−222716(P2005−222716)
【出願日】平成17年8月1日(2005.8.1)
【国等の委託研究の成果に係る記載事項】(出願人による申告)平成16年度、総務省、「ユビキタスネットワーク制御・管理技術の研究開発」委託研究、産業再生法第30条の適用を受ける特許出願
【出願人】(000004237)日本電気株式会社 (19,353)
【Fターム(参考)】
【公開日】平成19年2月15日(2007.2.15)
【国際特許分類】
【出願日】平成17年8月1日(2005.8.1)
【国等の委託研究の成果に係る記載事項】(出願人による申告)平成16年度、総務省、「ユビキタスネットワーク制御・管理技術の研究開発」委託研究、産業再生法第30条の適用を受ける特許出願
【出願人】(000004237)日本電気株式会社 (19,353)
【Fターム(参考)】
[ Back to top ]