説明

インストールに関連するアプリケーションの管理

【課題】本発明は、インストールに関連するアプリケーションを管理するために提供される。
【解決手段】インストールに関連するアプリケーションをどのように管理するかを定めることをインストール管理システムに可能にさせる命令が受け取られる。命令は、インストール管理システムの知識を必要とすることなく、2つ以上のアプリケーションの命令を記述するのに使用できる定義を指定するアプリケーションモデリング言語に準拠している。命令が解析されることにより、インストール管理システムは、アプリケーションをどのように管理するかを定めることが可能になる。

【発明の詳細な説明】
【技術分野】
【0001】
本発明の実施の形態は、アプリケーションの管理に関する。より詳細には、本発明の実施の形態は、インストールに関連するアプリケーションの管理に関する。
【背景技術】
【0002】
企業は、通常、異なるタイプの処理を行うための多くの異なるタイプのアプリケーションを有する。これらのアプリケーションは、通常は互いにネットワーク接続されたコンピュータシステム上で実行される。アプリケーション、それらのアプリケーションが実行されるコンピュータシステム、及びそれらのコンピュータシステム間で通信を行うのに使用されるネットワークは、特に、企業の「インストール」として一般に知られているものの一部である。
【0003】
インストールは、ルータ、ファイアウォール、ロードバランサ等の他のタイプのデバイスを含むことができる。コンピュータシステム及びさまざまなデバイスは、一般に「ノード」とも呼ばれる。
【0004】
インストールの複雑さが増加するにつれて、インストールを管理するシステム(以下「インストール管理システム」という)の必要性が増大してきている。インストール管理システムの一例は、Hewlett Packard(商標)のオープンビューオペレーションズ(Openview Operations)(OVO)である。
【0005】
インストール管理システムによって行われる管理のタイプの例には、特に、プロセス、ノード、又はソフトウェアが実行されているか否かを判断すること、ノードが有するメモリ量を求めること、ノードのコンピュータ処理ユニット(CPU)の稼働率を求めること、アプリケーションの応答時間を求めること、並びにこれらの判断及び求値に基づいて動作を行うことが含まれる。動作を行うことの例には、特に、より多くのメモリをノードに追加すること、ワークロードを再バランスさせること、又は、アプリケーションを再構成することが含まれ得る。
【発明の開示】
【課題を解決するための手段】
【0006】
添付図面は、本明細書に組み込まれて、本明細書の一部を成す。添付図面は、その説明と共に本発明の実施形態を示し、本発明の原理を説明する役割を果たす。
【0007】
この説明で参照される図面は、特に注記されている場合を除いて、一律の縮尺で描かれているものと理解されるべきではない。
【発明を実施するための最良の形態】
【0008】
次に、本発明のさまざまな実施形態を詳細に参照する。
【0009】
これらのさまざまな実施形態の例は、添付図面に示されている。本発明は、これらの実施形態と共に説明されるが、実施形態は、本発明をこれらの実施形態に限定することを目的とするものではないことが理解されよう。その逆に、本発明は、代替形態、変更形態、及び均等物をカバーすることを目的としている。これらの代替的なもの、変更したもの、及び均等なものは、添付の特許請求の範囲によって画定された本発明の精神及び範囲内に含めることができる。
【0010】
さらに、本発明の以下の説明では、本発明の徹底した理解を提供するために、多数の具体的な詳細が述べられる。それ以外の場合には、本発明の態様を不必要に分かりにくくしないように、既知の方法、手順、コンポーネント、及び回路は詳細に説明されていない。
【0011】
概観
従来のインストール管理システムは、インストールに関連するデバイス及びアプリケーションを管理するように「構成」されている。たとえば、開発者は、従来のインストール管理システムを構成する目的でそのインストール管理システムが受け取ることができるポリシー及びテンプレートを作成することができる。開発者は、特に、アプリケーションに関連するさまざまなメトリック(metric)を監視するためのメトリック収集ポリシー及びしきい値ポリシーを作成することができる。また、開発者は、従来のインストール管理システムがタスクのスケジューリングの一部として使用するスケジューリングポリシー、及び、従来のインストール管理システムが収集されたメトリック等のグラフを作成するのに使用するグラフテンプレートを作成することもできる。ポリシー及びテンプレートは、一般に「アーティファクト(artifact)」と呼ばれるものの例である。
【0012】
従来のインストール管理システムを構成する従来の方法には不利な点がいくつかある。1つ目は、アーティファクトを作成するのに、従来のインストール管理システムについての深い知識が必要とされることである。2つ目は、アーティファクトが特定の従来のインストール管理システムに特有であり、したがって、企業が、異なる従来のインストール管理システムへの切り換えを決定した場合にそれを再利用することができないことである。3つ目は、従来のインストール管理システムが提供するインターフェースが一致しない場合があることである。これによって、アーティファクトを作成する開発者の作業はさらに複雑になる。4つ目は、開発者が、適切なアーティファクトを作成するために冗長な手作業の構成作業を行わなければならない場合があることである。たとえば、特定のメトリックを監視するために、開発者は、特に、冗長な内容を含むスケジュールポリシー、しきい値ポリシー、グラフテンプレートを手作業で作成しなければならない場合がある。上記の理由から、従来のインストール管理システムは、開発者が、異なるアプリケーションに対する一貫した管理ソリューションを作成することを困難にしている。
【0013】
一実施形態によれば、インストール管理システムにインストールに関連するアプリケーションをどのように管理するかを定めることを可能にさせる命令を記述するための定義を含むアプリケーションモデリング言語が提供される。この定義は、一実施形態によれば、開発者がインストール管理システムについて知る必要なく2つ以上のアプリケーションに対する命令を記述するのに使用することができる。アプリケーションモデリング言語は、「ニュートラルモデリング言語(neutral modeling language)」とも呼ばれる。アプリケーションモデリング言語は、開発者がインストール管理システムについて知る必要がないため、2つ以上のタイプのインストール管理システムの命令を記述するのに使用することができる。
【0014】
インストール管理システム
インストール管理システムの例には、HP(商標)のオープンビューオペレーションズ(OpenView Operations)(OVO)、HP(商標)のオープンビューパーフォーマンスマネージャ(OpenView Performance Manager)(OVOU)、及びBMC(商標)のレメディ(Remedy)が含まれるが、これらに限定されるものではない。異なるインストール管理システムの他の例には、Unix(登録商標)用のHP(商標)のオープンビューオペレーションズのバージョン6やバージョン7等、インストール管理システムの異なるバージョンが含まれる。
【0015】
HP(商標)のオープンビューオペレーションズ(OVO)、HP(商標)のオープンビューパーフォーマンスマネージャ(OVOU)、及びBMC(商標)のレメディは、異なる製品の例である。Unix(登録商標)用のHP(商標)のオープンビューオペレーションズのバージョン6及びバージョン7は、同じ製品の異なるバージョンの例である。
【0016】
アプリケーション
本発明のさまざまな実施形態を使用して監視できるアプリケーションの例には、Oracle(商標)データベース、BEA(登録商標)(Bill Edward Alfred Systems(登録商標))ウェブロジックアプリケーションサーバ(WebLogic Application Server)、及びMicrosoft(商標)エクスチェンジサーバ(Exchange Server)が含まれるが、これらに限定されるものではない。
【0017】
インストールに関連するアプリケーションを管理するためのシステム
図1は、インストール管理システムの知識を必要としない、一実施形態によるインストールに関連するアプリケーションを管理するためのシステムを示している。図1の機能を表すブロックは、図示したものとは異なって配置することができ、機能を追加して実施することもできるし、本明細書で説明するものよりも少ない機能を実施することもできる。さらに、図1のブロックによって表された機能は、さまざまな方法で組み合わせることができる。システム100は、ソフトウェア、ハードウェア、ファームウェア、又はこれらの組み合わせを使用して実施することができる。
【0018】
図1は、人160、エディタ120、命令130、インストール管理システム140、及びインストール150を示している。インストール管理システム140は、命令アナライザ142を含む。命令アナライザ142は、インストール管理システム140の外部に存在することができることが十分理解される。インストール150は、特に、アプリケーション152及び154を含む。人160は開発者とすることができる。開発者160は、エディタ120を使用して、インストール管理システム140が受け取る命令130を記述することができる。エディタ120は、特に、テキストエディタ又は拡張可能マークアップ言語(XML)エディタとすることができる。
【0019】
一実施形態によれば、開発者120は、アプリケーションモデリング言語の定義を使用して命令130を記述する。このアプリケーションモデリング言語の定義は、インストール管理システム140の知識を必要としない。この定義は、開発者がインストール管理システム140を構成するための命令130をどのように記述できるかを示すことができる。たとえば、定義は、メトリックを指定できること、メトリックの名前を指定できること、メトリックの値をどれくらいの頻度で取得するか、メトリックの値をどこから取得するか、たとえば特にメトリックのしきい値を指定することによってアプリケーションが監視されることに関連する問題が存在することをメトリックの値が示しているか否か、及び、メトリックの値が問題が存在すること示している場合に何を行うかを示すことができる。また、定義は、内容を指定するためのシンタックス(syntax)を含むこともできる。一実施形態によれば、命令130は、XMLで記述され、1つ又は2つ以上のXMLスキーマは、アプリケーションモデリング言語の定義を指定するのに使用される。XMLスキーマは、非独占的なフォーマットの一例である。
【0020】
インストール管理システム140は、定義に従って記述された命令130を受け取ることができる。インストール管理システム140は、命令130を使用して、インストール150をどのように管理するかを定める。たとえば、インストールアナライザ142は、命令を解析して、インストール150をどのように管理するかを定めることをインストール管理システム140に可能にさせる。
【0021】
アプリケーションモデリング言語及び定義
どのインストール管理システム140が使用されても、物事のタイプ及びそれらの物事を監視する方法は基本的に同じである。たとえば、Oracle(商標)データベースについては、インストール管理システム140がHP(商標)のOVOであるのか、又はBMC(商標)のレメディであるのかにかかわらず、監視されてグラフ化される一定のメトリックがある。したがって、一実施形態によれば、特定のインストール管理システム140に特有の構成の細部は、水面下でハンドリングされる。たとえば、開発者160は、OVOWが「プロセス監視ポリシー(Process Monitoring Policy)」を使用するのに対して、OVOUが「監視ポリシー(Monitor Policy)」を使用することを知る必要はない。開発者が知る必要のあるすべては、Oracle(商標)データベース等について、たとえば、開発者が、一実施形態に従って、特定のアプリケーションプロセスのどのような監視を欲するのかである。
【0022】
インストール管理システム140を構成する実施詳細を隠蔽することによって、一実施形態によれば、アプリケーションモデリング言語は、2つ以上のインストール管理システム140を構成するのに使用することができる。たとえば、さまざまな実施形態を使用して記述された、Oracle(商標)データベースを監視するための命令130は、HP(商標)のOVO又はBMC(商標)のレメディのいずれを構成するのにも容易に使用することができる。
【0023】
すでに述べたように、一実施形態によれば、インストール150に関連するアプリケーション152、154をどのように管理するかを定めることをインストール管理システム140に可能にさせる命令130を記述するための定義を含むアプリケーションモデリング言語が提供される。一実施形態によれば、定義は、1つ又は2つ以上のXMLスキーマで提供され、命令130はXMLで記述される。XMLは、開発者160に広く知られており、したがって、開発者160がインストール管理システム140を構成することをより容易にする。
【0024】
図2は、一実施形態によるメトリック収集のスキーマを示している。メトリック収集スキーマは、どのメトリックを監視するかを指定する命令130をどのように記述するかの情報、メトリックをどのように監視するかの情報、問題が存在することをメトリックの値が示している場合に何を行うかの情報等を提供する。たとえば、メトリック収集スキーマは、メトリックの名前(たとえば、「収集名(CollectionName)」)、メトリックの値を収集するためのスケジュール(たとえば、「スケジュール(Schedule)」)、及びメトリックの値を収集するためのコマンドライン(たとえば、「コマンドライン(CommandLine)」)が指定可能であることを示す。また、メトリック収集スキーマは、オプションとして、メトリックの値を収集するための、メトリックの説明(たとえば、「説明(Description)」)及びユーザパスワード等のそのクレデンシャル(credentials)(たとえば、「クレデンシャル(Credentials)」)が指定可能であることも示す。
【0025】
図3は、一実施形態によるタスクをスケジューリングするためのスキーマを示している。一実施形態によれば、タスクは、開発者160がインストール管理システム140に規則的なスケジュールで実行して欲しいと思っている或るアクティビティであり、サーバが毎夜アクティブであるか又はタスクを実行しているかを調べて、アプリケーションサーバの任意の新しいインスタンスがデバイスに対して配備されたか否かを調べるためにサーバをピングすること等である。スケジューリングされたタスクスキーマは、たとえば、どのタスクを監視するか、タスクをどのように監視するか等を指定する命令130をどのように記述するかについての情報を提供する。たとえば、スケジューリングされたタスクスキーマは、スケジュールの名前(たとえば、「スケジュール(Schedule)」)及びタスクの名前(たとえば、「タスク(Task)」)が指定可能であることを示す。開始メッセージ(StartMessage)、失敗メッセージ(FailureMessage)、成功メッセージ(SuccessMessage)によって、開発者160は、たとえば、スケジューリングされたタスクが開始された時、失敗した時、又は成功した時にインストール管理システム140のオペレータに向けて表示できるテキストを指定することが可能になる。
【0026】
図4は、一実施形態によるグラフのスキーマを示している。このグラフスキーマは、グラフがどのように現れるかを指定する命令130をどのように記述するかについての情報を提供する。たとえば、グラフスキーマは、クラス(たとえば、クラス(Class))、メトリックの名前(たとえば、メトリック名(MetricName))、メトリックのラベル(たとえば、メトリックラベル(MetricLabel))、及びメトリックの説明(たとえば、メトリック説明(MetricDescription))が指定可能であることを示す。このクラスは、「クラス」、又は、グラフ上に表示されることになるデータが格納されるデータベースに定義されたデータベーステーブルを指す。メトリック名は、グラフ化されるメトリックの名前であり、メトリックラベルは、グラフ上のメトリックにどのラベルを使用するかを示し、メトリック説明は、グラフに使用するメトリックの説明である。2つ以上のメトリックがグラフスキーマにより指定可能である。
【0027】
また、グラフスキーマは、一実施形態によれば、グラフ名(GraphName)、グラフ説明(GraphDescription)、グラフタイトル(GraphTitle)、グラフカテゴリー(GraphCategory)、グラフメトリック(GraphMetrics)、Y軸タイトル(YAxixTitles)、及びグラフ日付範囲(GraphDateRange)を指定するのに使用することもできる。グラフ名はグラフの名前である。グラフ説明はグラフの説明である。グラフタイトルはグラフのタイトルである。グラフカテゴリーは、グラフが、インストール管理システムに関連するユーザインターフェースを使用して表示されるときにたとえば「グループ」で現れるようにグラフを編成することを可能にする。グラフメトリックはグラフ化されるメトリックである。Y軸タイトルは、Y軸のためのタイトルの指定を可能にする。グラフ日付範囲は、グラフ上に現れる日付の範囲の指定を可能にする。2つ以上のグラフがグラフスキーマによって指定可能であり、2つ以上のメトリックが特定のグラフ上に表示可能である。
【0028】
グラフが、異なる背景色及びさまざまな線の色を使用することはしばしば行われる。さらに、グラフは、特に、線グラフの場合もあるか又は棒グラフの場合もある。しかしながら、一実施形態によれば、グラフスキーマは、開発者が、たとえば、背景色、線の色、又はグラフのタイプ等の一定のタイプの情報を指定することを必要としない。これは、インストール管理システム140全体にわたって一貫性を保証するために、命令アナライザ142によって遂行可能であることが十分理解される。
【0029】
例示の目的で、スキーマの簡単化されたバージョンが図2〜図4に示されている。図2〜図4に示すものよりも多くのエレメントを、図2〜図4に示すスキーマに関連付けることができる。たとえば、メトリック収集スキーマは、しきい値、頻度、及びメトリックの値を得るためのソースを指定することができる。しきい値は、問題が存在することをメトリックの値が示しているか否か判断するのに使用することができ、たとえば、その値がしきい値と一致するか又はしきい値を超えているときを判断するのに使用することができる。頻度は、たとえばソースからメトリックの値をどれくらいの頻度で取得するかを定めるのに使用することができる。別の例では、スケジューリングされたタスクスキーマは、特に、タスクがどれくらいの頻度で実行されるかを指定することができる。さらに別の例では、グラフスキーマは、グラフに現れる可能性のあるデータのインスタンス名についてグラフをフィルタリングするためにフィルタを指定することを可能にすることができる。
【0030】
さらに、図2〜図4は、ごく僅かなアプリケーションモデリング言語定義を示している。本発明のさまざまな実施形態を使用して実施できる他の多数の定義がある。たとえば、パッケージスキーマは、Microsoft(商標)Windows(登録商標)等のプラットフォームにインストールされるソフトウェアをどのようにパッケージするかについての命令を記述するのに使用することができる。パッケージスキーマは、どのファイルが、パッケージされるソフトウェアを含むか、それらのファイルのロケーション、及びファイルがインストールされるプラットフォームを指定することができる。別の例では、インストール管理システムのシンプルネットワーク管理プロトコル(SNMP)処理を構成する命令をどのように記述するかを指定するスキーマ(SNMPスキーマ)が存在し得る。スキーマについてより多くの情報を得るには、以下に含まれる「スキーマについてのより多くの情報」の副題を参照されたい。
【0031】
すでに述べたように、従来のインストール管理システムでは、開発者は、適切なアーティファクトを作成するために、冗長な手作業の構成作業を行わなければならない場合がある。たとえば、従来のインストール管理システムを使用して特定のメトリックを監視するために、開発者は、特に、冗長な内容を含むスケジュールポリシー、しきい値ポリシー、グラフテンプレートを手作業で作成しなければならない場合がある。しかしながら、一実施形態によれば、インストール管理システムの特定の態様を構成するための内容は、一箇所で指定される。したがって、開発者は、冗長な手作業の構成作業を行う必要はない。たとえば、ポリシーがメトリックについての情報を必要とする場合、そのメトリックについての内容は、ポリシーのための一組の命令に冗長な内容を含めるのではなく、メトリック収集スキーマに基づいて記述された一組の命令から取得することができる。
【0032】
命令
例示の目的で、図1は、一実施形態による一組の命令130を示している。異なる組の命令130を使用して、異なるアプリケーション152、154を管理するようにインストール管理システム140を構成することができる。さらに、より明らかになるように、2組以上の命令を使用して、同じアプリケーションの異なる態様を管理するようにインストール管理システム140を構成することができる。たとえば、Oracle(商標)データベースアプリケーション及びMicrosoft(商標)のExchange Serverの双方は、開発者160が監視したい場合があるメトリックを有する。したがって、複数の組の命令130を、さまざまなメトリックのメトリック収集スキーマ(図2)に基づいて記述することができる。
【0033】
一実施形態によれば、定義を使用して、その定義に基づき記述された一組の命令を検証することができる。たとえば、図2に示すメトリック収集スキーマに基づいて記述された一組の命令は、インストール管理システム140がメトリック収集スキーマを使用して検証することができる。一組の命令は、「モデルインスタンス」又は「モデルのインスタンス」とも呼ばれる。
【0034】
インストールに関連するアプリケーションを管理する方法の動作例
図5は、本発明の一実施形態による、インストールに関連するアプリケーションを管理するための方法を説明するフローチャート500を示している。特定のステップがフローチャート500に開示されているが、このようなステップは例示である。すなわち、本発明の実施形態は、さまざまな他のステップ又はフローチャート500に列挙されたステップの変形を実行することによく適している。フローチャート500のステップは、提示されたものとは異なる順序で実行することができ、フローチャート500のステップのすべてが実行されるとは限らない場合もあることが十分理解される。
【0035】
フローチャート500によって説明される実施形態の全部又は一部は、コンピュータ可読で且つコンピュータ実行可能な命令を使用して実施することができる。これらの命令は、たとえば、コンピュータシステム又は同様のデバイスのコンピュータ使用可能媒体に存在する。上述したように、本発明の一定のプロセス及びステップは、一実施形態では、一連の命令(たとえば、ソフトウェアプログラム)として実現される。この一連の命令は、コンピュータシステムのコンピュータ可読メモリ内に存在し、コンピュータシステムによって実行される。これらの命令は、実行されると、後述するような本発明の機能をコンピュータシステムに実施させる。
【0036】
ステップ510において、この方法は開始する。
【0037】
ステップ520において、インストールに関連するアプリケーションをどのように管理するかを定めることをインストール管理システムに可能にさせる命令が受け取られる。命令130は、インストール管理システム140の知識を必要とすることなく、2つ以上のアプリケーション152及び154の命令130を記述するのに使用できる定義を指定するアプリケーションモデリング言語に準拠している。図2〜図4に示すスキーマは、命令130を記述するのに使用できるアプリケーションモデリング言語によって提供される定義の例である。例示の目的で、一組の命令130が、図2に示すスキーマに基づいて特定のアプリケーション152の特定のメトリックについて記述され、別の一組の命令130が、その同じアプリケーション152の別のメトリックの同じスキーマ(図2)に基づいて記述されるものと仮定する。それらの二組の命令は、異なるインストール管理システム140を構成するのに使用することができる。たとえば、それらの二組の命令は、HP(商標)のOVO又はBMC(商標)のレメディのいずれを構成するのにも使用することができ、これは、アプリケーションモデリング言語は、開発者160がどのインストール管理システム140についても知ることを必要としないからである。
【0038】
開発者160は、エディタ160を使用して数組の命令130を作成することができる。一実施形態によるエディタ160はXMLエディタであり、命令130はXML命令である。インストール管理システム140は、数組の命令130を含むファイルを受け取ることができる。
【0039】
ステップ530において、命令が解析されて、それによって、インストール管理システムは、アプリケーションをどのように管理するかを定めることが可能になる。たとえば、ステップ520で受け取られた数組の命令130が解析される。このように、インストール管理システム140は、数組の命令が記述されたアプリケーション152を監視することが可能になる。
【0040】
ステップ540において、この方法は終了する。
【0041】
スキーマについてのより多くの情報
以下は、他の可能なスキーマ及びスキーマに関連することができる内容を説明する。たとえば、以下は、さまざまなスキーマに関連することができるさまざまな属性及びタイプを説明する。スキーマの1つは、一実施形態によれば、マスタモデル(MasterModel)である。SPI情報(SPIInformation)、グラフファイル(GraphFiles)、ポリシー(Policies)、Pkgファイル(PkgFiles)、製品(Products)等の一実施形態によるスキーマエレメントは、マスタモデルスキーマの子とすることができる。グラフファイルは、図4に示すグラフスキーマの一例である。ポリシーは、ポリシースキーマの一例である。Pkgファイルは、パッケージスキーマの一例である。SNMPポリシー(SNMPPolicy)は、SNMPスキーマの一例である。スケジュールドタスクポリシー(ScheduledTaskPolicy)は、図3に示すスケジューリングタスクスキーマの一例である。外部メトリック収集は、図2に示すメトリック収集スキーマの一例である。
【0042】
また、一実施形態によるルートスキーマのブロック図を示す図6も参照されたい。図6を参照して、一実施形態によれば、ルートエレメントは、すべてのポリシーに使用される。一実施形態によれば、SPI情報は、ファイル名のプレフィックス(prefix)等のSPIアーティファクトに使用される。一実施形態によれば、ポリシー名は、SPIモデル内で一意であり、収集名(CollectionName)は、ポリシーの名前である。
【0043】
アプリケーション管理言語の例:
本発明の実施形態によるアプリケーション管理言語の例が、以下のパラグラフで説明される。
【0044】
メトリックエレメントは、本発明の実施形態によるアプリケーションについて監視されているメトリックについての情報を定義する。この情報は、1)メトリックの名前及び説明、2)メトリックのソース、並びに3)測定の単位を含むが、これらに限定されるものではない。
【0045】
メトリックエレメントの例:
【0046】
[表1]
- e policy:Metric(e ポリシー:メトリック)
e policy:MetricName(e ポリシー:メトリック名)
e policy:MetricDescription(e ポリシー:メトリック説明)
e policy:MetricUnit(e ポリシー:メトリック単位)
+ e policy:MetricSource(e ポリシー:メトリックソース)
【0047】
監視ポリシーエレメントは、本発明の実施形態による管理システムにアプリケーションにより提供される、応答時間又は入力ワークロード等、データの監視についての情報を定義する。この情報は、1)ポリシーの名前及び説明、2)データを監視する間隔、3)状態を判断する数値しきい値又はスクリプトを含む監視する状態、4)監視されるメトリック、5)監視されるオブジェクトインスタンス、並びに6)イベントの重大度(severity)及び問題を処理するために何を行うかについての命令を含む、エラー状態が発生した場合に行う動作を含むが、これらに限定されるものではない。
【0048】
監視ポリシーエレメントの例:
【0049】
[表2]
- e policy:MonitorPolicy(e ポリシー:監視ポリシー)
e policy:PolicyName(e ポリシー:ポリシー名)
e policy:PolicyDescription(e ポリシー:ポリシー説明)
- e policy:MinMaxMonitor(e ポリシー:最小最大監視)
a Type(a タイプ)
+ e policy:PolicyMetric(e ポリシー:ポリシーメトリック)
- e policy:Rules(e ポリシー:ルール)
- e policy:MinMaxMessageRule(e ポリシー:最小最大メッセージルール)
a UUID
e policy:Description(e ポリシー:説明)
- e policy:Conditions(e ポリシー:状態)
- e policy:Condition(e ポリシー:状態)
e policy:Description(e ポリシー:説明)
- e policy:Actions(e ポリシー:動作)
- e policy:StartAction(e ポリシー:動作開始)
+ e policy:Message(e ポリシー:メッセージ)
e policy:Severity(e ポリシー:重大度)
+ e policy:Instructions(e ポリシー:命令)
+ e policy:ContinueAction(e ポリシー:動作継続)
e policy:EndAction(e ポリシー:動作終了)
e policy:ThresholdLimitValue(e ポリシー:しきい値制限値)
【0050】
外部収集エレメントは、本発明の実施形態によるインストール管理システムの外部のコレクタからメトリックを収集するのに必要な情報を定義する。この情報は、1)ポリシーの名前及び説明、2)データを収集する間隔、3)データを収集するために実行するコマンドライン、並びに4)収集に必要とされるユーザ/パスワードを含むが、これらに限定されるものではない。
【0051】
外部収集エレメントの例:
【0052】
[表3]
- e policy:ExternalMetricCollection(e ポリシー:外部メトリック収集)
e policy:CollectionName(e ポリシー:収集名)
e policy:Description(e ポリシー:説明)
+ e policy:Schedule(e ポリシー:スケジュール)
e policy:CommandLine(e ポリシー:コマンドライン)
+ e policy:Credentials(e ポリシー:クレデンシャル)
【0053】
ポリシーエレメントを監視するプロセスは、本発明の実施形態による監視するプロセスまたはサービスについての情報を定義する。この情報は、1)ポリシーの名前及び説明、2)プロセスを監視する間隔、3)プロセスの名前、並びに4)イベントの重大度及び問題を処理するために何を行うかについての命令を含む、エラー状態が発生した場合に行う動作を含むが、これらに限定されるものではない。
【0054】
プロセス監視ポリシーエレメントの例:
【0055】
[表4]
- e policy:Policies(e ポリシー:ポリシー)
- e policy:ProcessMonitoringPolicy(e ポリシー:プロセス監視ポリシー)
e policy:PolicyName(e ポリシー:ポリシー名)
e policy:PolicyDescription(e ポリシー:ポリシー説明)
+ e policy:ExecutionInterval(e ポリシー:実行間隔)
- e policy:Processes(e ポリシー:プロセス)
- e policy:Process(e ポリシー:プロセス)
+ e policy:ProcessDetail(e ポリシー:プロセス詳細)
+ e policy:ErrorCondition(e ポリシー:エラー状態)
【0056】
スケジューリングされたタスクポリシーエレメントは、本発明の実施形態による管理システムによって実行されるスクリプト又は実行可能ファイル(executable)についての情報を定義する。この情報は、1)ポリシーの名前及び説明、2)実行を行う間隔(繰り返し間隔又は具体的な時間若しくは具体的な日として定義される)、並びに3)イベントの重大度及び問題を処理するために何を行うかについての命令を含む、タスク実行の開始時、成功時、又は失敗時にオペレータコンソールへ送信されるべきメッセージを含むが、これらに限定されるものではない。
【0057】
スケジューリングされたタスクポリシーエレメントの例:
【0058】
[表5]
- e policy:ScheduledTaskPolicy(e ポリシー:スケジュールドタスクポリシー)
e policy:PolicyName(e ポリシー:ポリシー名)
e policy:PolicyDescription(e ポリシー:ポリシー説明)
+ e policy:Schedule(e ポリシー:スケジュール)
+ e policy:Task(e ポリシー:タスク)
- e policy:StartMessage(e ポリシー:開始メッセージ)
+ e policy:Message(e ポリシー:メッセージ)
e policy:Severity(e ポリシー:重大度)
+ e policy:Instrucitons(e ポリシー:命令)
+ e policy:FailureMessage(e ポリシー:失敗メッセージ)
+ e policy:SuccessMessage(e ポリシー:成功メッセージ)
【0059】
SNMPポリシーエレメントは、本発明の実施形態によるメトリックの収集元のSNMPトラップを定義する。この情報は、1)ポリシーの名前及び説明、2)SNMPトラップID及び監視するトラップをさらに識別する追加SNMP変数、並びに3)監視する状況又は状態及びエラー状態が見つかった場合に行う動作を指定する一組のルールを含むが、これらに限定されるものではない。この動作には、状態の重大度、及び問題を処理するために何を行うかについての命令のような物事が含まれる。
【0060】
SNMPポリシーエレメントの例:
【0061】
[表6]
- e policy:SNMPPolicy(e ポリシー:SNMPポリシー)
e policy:PolicyName(e ポリシー:ポリシー名)
e policy:PolicyDescription(e ポリシー:ポリシー説明)
- e policy:Rules(e ポリシー:ルール)
- e policy:MessageRule(e ポリシー:メッセージルール)
e policy:Description(e ポリシー:説明)
- e policy:Condition(e ポリシー:状態)
e policy:EventObjectId(e ポリシー:イベントオブジェクトId)
+ e policy:VariableBinding(e ポリシー:変数バインディング)
- e policy:Action(e ポリシー:動作)
+ e policy:Message(e ポリシー:メッセージ)
e policy:Severity(e ポリシー:重大度)
+ e policy:Instrucitons(e ポリシー:命令)
【0062】
ログファイル(Logfile)エレメントは、本発明の実施形態によるアプリケーションログファイルを監視することについての情報を定義する。この情報は、1)ポリシーの名前及び説明、2)ログファイルロケーション、並びに3)監視する状態を指定する1つ又は2つ以上のルール(ログファイル内のテキストパターンの存在)、並びに3)状態の重大度、及び問題を処理するために何を行うかについての命令のようなものを含む、エラー状態が見つかった場合に行う動作を含むが、これらに限定されるものではない。
【0063】
ログファイルエレメントの例:
【0064】
[表7]
- e policy:LogPolicy(e ポリシー:ログポリシー)
e policy:PolicyName(e ポリシー:ポリシー名)
e policy:PolicyDescription(e ポリシー:ポリシー説明)
+ e policy:LogFile(e ポリシー:ログファイル)
- e policy:Rules(e ポリシー:ルール)
- e policy:MessageRule(e ポリシー:メッセージルール)
e policy:Description(e ポリシー:説明)
e policy:PatternToMatch(e ポリシー:一致するパターン)
- e policy:Action(e ポリシー:動作)
+ e policy:Message(e ポリシー:メッセージ)
e policy:Severity(e ポリシー:重大度)
+ e policy:Instrucitons(e ポリシー:命令)
【0065】
グラフエレメントは、本発明の実施形態による性能解析の経時的なメトリック値を表示するグラフについての情報を定義する。これは、以下のもの、すなわち、1)グラフの名前、説明、又は軸タイトル等のグラフの表示に使用される情報、2)傾向グラフ又は比較グラフ等の所定のグラフパターンの選択肢から選ばれたグラフタイプ、並びに3)グラフに現れるメトリック及び適用されるべきあらゆるインスタンスフィルタを含むが、これらに限定されるものではない。
【0066】
グラフエレメントの例:
【0067】
[表8]
- e graph:Graph(e グラフ:グラフ)
a Pattern(a パターン)
e graph:GraphName(e グラフ:グラフ名)
e graph:GraphDescription(e グラフ:グラフ説明)
e graph:GraphTitle(e グラフ:グラフタイトル)
- e graph:GraphMetrics(e グラフ:グラフメトリック)
- e graph:GraphMetric(e グラフ:グラフメトリック)
e graph:Class(e グラフ:クラス)
e graph:MetricName(e グラフ:メトリック名)
+ e graph:InstanceFilter(e グラフ:インスタンスフィルタ)
+ e graph:YAxisTitles(e グラフ:Y軸タイトル)
+ e graph:GraphDateRange(e グラフ:グラフ日付範囲)
【0068】
多くの場合に、命令アナライザは、開発者側のいくつかの作業を軽減する妥当なデフォルトを提供できることが十分理解される。たとえば、SNMPポリシーでは、命令アナライザは、開発者用の標準的なエラーメッセージを提供することができる。
【0069】
結論
本発明の実施形態の多くの例を、企業のインストールの文脈で説明したが、さまざまな実施形態は、企業であるか否かにかかわらずあらゆるタイプの組織のインストールに適用される。
【0070】
アプリケーションの管理に関する内容を指定し、且つ、インストール管理システムの実施詳細を隠蔽することによって、開発者は、インストール管理システムの知識を必要とすることなく、インストール管理システムを構成することが可能になる。アプリケーションの管理に関する内容を指定し、且つ、インストール管理システムの実施詳細を隠蔽することによって、企業が、異なるインストール管理システムに切り換えることを決定した場合にも、アプリケーションを管理することをインストール管理システムに可能にさせる命令が使用されうる。さらに、さまざまな実施形態によって、開発者には、インストール管理システムを構成する一貫した方法が提供される。インストール管理システムの特定の態様を構成する内容を一箇所で指定することによって、開発者は、冗長な手作業の構成作業を行う必要がない。したがって、さまざまな実施形態によって、開発者は、異なるアプリケーションの一貫した管理ソリューションを迅速且つ容易に作成することが可能になる。
【図面の簡単な説明】
【0071】
【図1】一実施形態によるインストールに関連するアプリケーションを管理するためのシステムを示す図である。
【図2】一実施形態によるメトリック収集のスキーマを示す図である。
【図3】一実施形態によるタスクをスケジューリングするためのスキーマを示す図である。
【図4】一実施形態によるグラフのスキーマを示す図である。
【図5】本発明の一実施形態による、インストールに関連するアプリケーションを管理するための方法を説明するフローチャートである。
【図6】一実施形態によるルートスキーマのブロック図である。
【符号の説明】
【0072】
100 システム
120 エディタ
130 命令
140 インストール管理システム
142 命令アナライザ
150 インストール
152、154 アプリケーション
160 人

【特許請求の範囲】
【請求項1】
インストールに関連するアプリケーションを管理する方法であって、
前記インストールに関連するアプリケーションをどのように管理するかを定めることをインストール管理システムに可能にさせる命令を受け取ることであって、該命令は、前記インストール管理システムの知識を必要とすることなく、2つ以上のアプリケーションの命令を記述するのに使用できる定義を指定するアプリケーションモデリング言語に準拠していることと、
前記命令を解析することであって、それによって、前記アプリケーションをどのように管理するかを定めることを前記インストール管理システムに可能にさせることと
を含む方法。
【請求項2】
前記インストール管理システムは、第1のインストール管理システムであり、
前記インストールに関連する前記アプリケーションをどのように管理するかを定める第2のインストール管理システムにおいて前記命令を受け取ることと、
前記命令を解析することであって、それによって、前記アプリケーションをどのように管理するかを定めることを前記第2のインストール管理システムに可能にさせることと
をさらに含む請求項1に記載の方法。
【請求項3】
前記第1のインストール管理システム及び前記第2のインストール管理システムは、同じ製品の異なるバージョン又は異なる製品の1つである
請求項2に記載の方法。
【請求項4】
前記インストールに関連する前記アプリケーションをどのように管理するかを定めることを前記インストール管理システムに可能にさせる前記命令を前記受け取ることであって、該命令は前記定義を指定する前記アプリケーションモデリング言語に準拠していることは、
前記定義を指定する前記アプリケーションモデリング言語に準拠している前記命令を受け取ることであって、該定義は、拡張可能マークアップ言語(XML)スキーマであること
をさらに含む
請求項1に記載の方法。
【請求項5】
前記命令を確かめるために前記命令を使用すること
をさらに含む請求項1に記載の方法。
【請求項6】
前記インストールに関連する前記アプリケーションをどのように管理するかを定めることを前記インストール管理システムに可能にさせる前記命令を前記受け取ることであって、該命令は前記定義を指定する前記アプリケーションモデリング言語に準拠していることは、
前記定義を指定する前記アプリケーションモデリング言語に準拠している前記命令を受け取ることであって、前記アプリケーションモデリング言語の特定の態様を構成するための内容が1つの定義において指定されること
をさらに含む
請求項1に記載の方法。
【請求項7】
前記インストールに関連する前記アプリケーションをどのように管理するかを定めることを前記インストール管理システムに可能にさせる前記命令を前記受け取ることであって、該命令は定義を指定する前記アプリケーションモデリング言語に準拠していることは、
前記定義を指定する前記アプリケーションモデリング言語に準拠している前記命令を受け取ることであって、該定義は、前記インストール管理システムの実施詳細を隠蔽しながら前記アプリケーションに関する内容をどのように指定できるかを示すこと
をさらに含む
請求項1に記載の方法。
【請求項8】
アプリケーションモデリング言語であって、
インストールに関連するアプリケーションをどのように管理するかを定めることをインストール管理システムに可能にさせる命令を記述するための定義
を含み、
前記定義は、前記インストール管理システムの知識を必要とすることなく、2つ以上のアプリケーションの命令を記述するのに使用することができる
アプリケーションモデリング言語。
【請求項9】
前記定義は、拡張可能マークアップ言語(XML)スキーマである
請求項8に記載のアプリケーションモデリング言語。
【請求項10】
前記定義は、
別の定義
を含む
請求項8に記載のアプリケーションモデリング言語。
【請求項11】
前記定義は、メトリック収集、監視ポリシー、外部収集エレメント、プロセス監視ポリシー、スケジューリングされたタスクポリシー、SNMPポリシー、ログファイルエレメント、グラフエレメント、及びスケジューリングされたタスクから成る群から選択される
請求項8に記載のアプリケーションモデリング言語。
【請求項12】
前記定義は、前記アプリケーションモデリング言語の特定の態様を構成するための内容を指定することを可能にし、
別の定義は、同じ内容を指定することを必要とされない
請求項8に記載のアプリケーションモデリング言語。
【請求項13】
前記定義は、前記インストール管理システムの実施詳細を隠蔽しながら前記アプリケーションに関する内容をどのように指定できるかを示す
請求項8に記載のアプリケーションモデリング言語。
【請求項14】
インストールに関連するアプリケーションを管理する方法をコンピュータシステムに実行させるためのコンピュータ可読プログラムコードが具現化されるコンピュータ使用可能媒体であって、
前記方法は、
前記インストールに関連するアプリケーションをどのように管理するかを定めることをインストール管理システムに可能にさせる命令を受け取ることであって、該命令は、前記インストール管理システムの知識を必要とすることなく、2つ以上のアプリケーションの命令を記述するのに使用できる定義を指定するアプリケーションモデリング言語に準拠していることと、
前記命令を解析することであって、それによって、前記アプリケーションをどのように管理するかを定めることを前記インストール管理システムに可能にさせることと
を含む
コンピュータ使用可能媒体。
【請求項15】
前記コンピュータ使用可能媒体に具現化される前記コンピュータ可読プログラムコードは、前記コンピュータシステムに前記方法を実行させ、前記インストール管理システムは第1のインストール管理システムであり、
前記方法は、
前記インストールに関連する前記アプリケーションをどのように管理するかを定める第2のインストール管理システムにおいて前記命令を受け取ること、及び
前記命令を解析することであって、それによって、前記アプリケーションをどのように管理するかを定めることを前記第2のインストール管理システムに可能にさせること
をさらに含む
請求項14に記載の方法。
【請求項16】
前記コンピュータ使用可能媒体に具現化される前記コンピュータ可読プログラムコードは、前記コンピュータシステムに前記方法を実行させ、
前記第1のインストール管理システム及び前記第2のインストール管理システムは、同じ製品の異なるバージョン又は異なる製品の1つである
請求項15に記載の方法。
【請求項17】
前記コンピュータ使用可能媒体に具現化される前記コンピュータ可読プログラムコードは、コンピュータシステムに前記方法を実行させ、
前記インストールに関連する前記アプリケーションをどのように管理するかを定めることを前記インストール管理システムに可能にさせる前記命令を前記受け取ることであって、該命令は前記定義を指定する前記アプリケーションモデリング言語に準拠していることは、
前記定義を指定する前記アプリケーションモデリング言語に準拠している前記命令を受け取ることであって、該定義は、非独占的なフォーマットであること
をさらに含む
請求項14に記載の方法。
【請求項18】
前記コンピュータ使用可能媒体に具現化される前記コンピュータ可読プログラムコードは、コンピュータシステムに前記方法を実行させ、
前記方法は、
前記命令を確かめるために前記定義を使用すること
をさらに含む
請求項14に記載の方法。
【請求項19】
前記コンピュータ使用可能媒体に具現化される前記コンピュータ可読プログラムコードは、コンピュータシステムに前記方法を実行させ、
前記インストールに関連する前記アプリケーションをどのように管理するかを定めることを前記インストール管理システムに可能にさせる前記命令を前記受け取ることであって、該命令は前記定義を指定する前記アプリケーションモデリング言語に準拠していることは、
前記定義を指定する前記アプリケーションモデリング言語に準拠している前記命令を受け取ることであって、前記アプリケーションモデリング言語の特定の態様を構成するための内容が1つの定義において指定されること
をさらに含む
請求項14に記載の方法。
【請求項20】
前記コンピュータ使用可能媒体に具現化される前記コンピュータ可読プログラムコードは、コンピュータシステムに前記方法を実行させ、
前記インストールに関連する前記アプリケーションをどのように管理するかを定めることを前記インストール管理システムに可能にさせる前記命令を前記受け取ることであって、該命令は前記定義を指定する前記アプリケーションモデリング言語に準拠していることは、
前記定義を指定する前記アプリケーションモデリング言語に準拠している前記命令を受け取ることであって、該定義は、前記インストール管理システムの実施詳細を隠蔽しながら前記アプリケーションに関する内容をどのように指定できるかを示すこと
をさらに含む
請求項14に記載の方法。

【図1】
image rotate

【図2】
image rotate

【図3】
image rotate

【図4】
image rotate

【図5】
image rotate

【図6】
image rotate


【公開番号】特開2008−108241(P2008−108241A)
【公開日】平成20年5月8日(2008.5.8)
【国際特許分類】
【外国語出願】
【出願番号】特願2007−246431(P2007−246431)
【出願日】平成19年9月25日(2007.9.25)
【出願人】(503003854)ヒューレット−パッカード デベロップメント カンパニー エル.ピー. (1,145)
【Fターム(参考)】